This is fantastic, thank you for putting this together!
-
RE: FAF Statistics Megathread 3: FAF Statistics Megathread 3: The stats are at it again
-
Replay filter for average player rating ?
I'd like to be able to search for replays that have an average player rating of my choosing. Is it possible to implement this or is there a way to do it already?

-
Why am I unable to view local replays from a few years ago?
They simply won't load - is it due to the version changes in FaF? Is there a way around it?
-
Request: Allow lobbies to restrict by # of games played
I like that we can restrict by rank, but would there be an option to restrict access to lobbies based on the # of games played, or a combination of the two?
-
RE: Why am I unable to view local replays from a few years ago?
@Nombringer Why can I find the unofficial client??
-
fafscore.nl no longer working? Is there an alternative?
I used to use fafscore.nl to track rating changes but it seems it is no longer working (it cannot find my faf handle). Are there alternatives out there that serve the same function?
-
RE: FAF Statistics Megathread 3: FAF Statistics Megathread 3: The stats are at it again
Would there be any stats on the highest ranked players throughout the years? Who was the highest rank ever, etc?
-
How will you know when your game will be unrated due to desync?
It was my understanding if you get a desync early in-game that it will unrate your match, however I am unable to predict when it will/wont rate your match. I've seen early desyncs happen on astro and the match still gets rated, and I've seen the opposite too. What's the criteria for when a match is unranked due to a desync?
-
Attached user profile notes - how to view all of them?
Is there a way to view all players you have attached notes to? Is it stored in individual files or is there a central repository stored locally that I can extract them?
-
RE: Mystery power draws - how to pinpoint?
Economic Overlay - for having played so long I didn't even know about that! Wow. Thanks!
-
Mystery power draws - how to pinpoint?
Sometimes I go through the same build order 1000x and in some instances there's a huge power draw where there shouldn't be and I can't pinpoint where it's coming from. Are there any economy mods that show you the power draw from specific units? Or something to that affect?
-
RE: 4z0t's ScoreBoard
@maudlin27 I don't see a "4z0t's ScoreBoard" in the Mods tab. He calls it ReUI.Score (on the github page and here). This is what I've selected before creating a game:

-
RE: 4z0t's ScoreBoard
Are there instructions for install? I put this in my mods directory, selected it before creating the lobby and in-game it does not materialize. I still see the default score board.
-
RE: Historical Replays and 404'd Links
@ZLO That worked, thank you! Seems no one is seeding, but that doesn't surprise me.
-
RE: Historical Replays and 404'd Links
@ZLO That magnet link doesn't seem to be valid - I tried it with uTorrent and with a torrent checker and both come up with an error.
-
RE: Historical Replays and 404'd Links
I have downloaded them onto my server and they will be used for Vindex's faftracker to get even more results and things you can search for. In theory I can even offer to make them downloadable via a UI (this already exists) but I am hesitant to make it public so my internet doesnt go to shit if 10 people randomly decide "yeah i want everything" and starts to download everything.
Maybe I can limit it somehow, but havent figured it out yet.Would definitely be interested in acquiring the file! Would there be a way to split it up into chunks maybe?
-
Replay filter for average player rating ?
I'd like to be able to search for replays that have an average player rating of my choosing. Is it possible to implement this or is there a way to do it already?

-
ICE Adapter down? Cant create a game
Error details:
Client Version: 2026.4.1
java.util.concurrent.ExecutionException: org.springframework.web.reactive.function.client.WebClientResponseException$InternalServerError: 500 Internal Server Error from GET https://api.faforever.com/ice/session/game/27409847
at java.base/java.util.concurrent.CompletableFuture.wrapInExecutionException(CompletableFuture.java:345)
at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:440)
at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2094)
at com.faforever.client.task.SimpleTask.call(SimpleTask.java:25)
at javafx.concurrent.Task$TaskCallable.call(Task.java:1407)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
at java.base/java.lang.Thread.run(Thread.java:1474)
Caused by: org.springframework.web.reactive.function.client.WebClientResponseException$InternalServerError: 500 Internal Server Error from GET https://api.faforever.com/ice/session/game/27409847
at org.springframework.web.reactive.function.client.WebClientResponseException.create(WebClientResponseException.java:319)
Suppressed: The stacktrace has been enhanced by Reactor, refer to additional information below:
Error has been observed at the following site(s):
*__checkpoint ⇢ 500 INTERNAL_SERVER_ERROR from GET https://api.faforever.com/ice/session/game/27409847 [DefaultWebClient]
Original Stack Trace:
at org.springframework.web.reactive.function.client.WebClientResponseException.create(WebClientResponseException.java:319)
at org.springframework.web.reactive.function.client.DefaultClientResponse.lambda$createException$1(DefaultClientResponse.java:214)
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:106)
at reactor.core.publisher.FluxOnErrorReturn$ReturnSubscriber.onNext(FluxOnErrorReturn.java:159)
at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:122)
at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:130)
at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onNext(FluxContextWrite.java:109)
at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onNext(FluxMapFuseable.java:300)
at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onNext(FluxFilterFuseable.java:338)
at reactor.core.publisher.Operators$BaseFluxToMonoOperator.completePossiblyEmpty(Operators.java:2093)
at reactor.core.publisher.MonoCollect$CollectSubscriber.onComplete(MonoCollect.java:144)
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144)
at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:263)
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144)
at reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:419)
at reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:467)
at reactor.netty.channel.ChannelOperations.terminate(ChannelOperations.java:521)
at reactor.netty.http.client.HttpClientOperations.onInboundNext(HttpClientOperations.java:956)
at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:115)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:434)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:361)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:325)
at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:249)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355)
at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1526)
at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1384)
at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1435)
at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:545)
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:484)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1429)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:918)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:176)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.handle(AbstractNioChannel.java:445)
at io.netty.channel.nio.NioIoHandler$DefaultNioRegistration.handle(NioIoHandler.java:388)
at io.netty.channel.nio.NioIoHandler.processSelectedKey(NioIoHandler.java:596)
at io.netty.channel.nio.NioIoHandler.processSelectedKeysPlain(NioIoHandler.java:541)
at io.netty.channel.nio.NioIoHandler.processSelectedKeys(NioIoHandler.java:514)
at io.netty.channel.nio.NioIoHandler.run(NioIoHandler.java:484)
at io.netty.channel.SingleThreadIoEventLoop.runIo(SingleThreadIoEventLoop.java:225)
at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:196)
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1195)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:1474) -
RE: Filters not working?
@nomander I can add a bit more here - if you enter the filter details, search, and THEN save the query it will remember the filter details for that saved Favorite.
