Allow watching replays while in queue

The reason in lobby works is because the files are already updated and also in use so they can't be changed.

Allowing to run on the current version is possible but also annoying to implement. Would rather move forward with having files for replays and files for games so they are independent, but that is not super high on the priority list at the moment.

Can't we force a download of a patch as you queue? Then it would work the same as you were in the lobby.

It already does update when you hit the queue button. The issue is the replay would then try to update the patch when you play it. And since the files are not in use it would overwrite them

so it should lock files while you are in queue? and that way you would not be able to shoot yourself in the leg?

TA4Life: "At the very least we are not slaves to the UI" | http://www.youtube.com/user/dimatularus | http://www.twitch.tv/zlo_rd

There is a potential that the file lock could prevent the game from launching. But not sure as I have never tested it.

Keeping separate files for replay watching seems less error prone. It will take a while until it's implemented though. As Sheikah said it is not a priority at the moment

Have been playing a bit more tmm, and being able to watch a replay while in queue would make the entire experience so much more enjoyable.

I know it's dangerous in that you can accidentally load the wrong game files and crash, but making it an experimental feature in the settings with some warnings, explaining the danger seems to me preferable to not allowing it at all.

@sheikah said in Allow watching replays while in queue:

The reason in lobby works is because the files are already updated and also in use so they can't be changed.
Allowing to run on the current version is possible but also annoying to implement. Would rather move forward with having files for replays and files for games so they are independent, but that is not super high on the priority list at the moment.

I'd prefer to see the client support having multiple installed versions simultaneously (i.e. store game files under $FAF/$VER/gamedata etc.). This would make it much easier to watch old replays and to try experimental versions.

Sure that is possible from a file storage perspective but doesn't necessarily account for the different mod versions and settings in the game.prefs file which are shared even across versions but can still conflict with each other

Let alone that the game instances lock files, and because of that it can cause the renderer of the game to crash.

A work of art is never finished, merely abandoned

I was launching 10 game instances at a time and it was ok πŸ˜‰

β€œBe a yardstick of quality. Some people aren’t used to an environment where excellence is expected.”
β€” Steve Jobs.
My UI Mods
Support me

While I'd love to have a safe, well implemented, and user friendly way to watch replays while in queue, this sounds like a lot of work that's honestly probably quite hard to justify considering what else that time could be used for.

Hence that's not what I'm requesting here.

What I'd like is just an advanced/experimental/hidden setting that allows me to watch replays while in queue at my own risk.

Doing so is already possible if you really want: Leave your TMM party, start the replay, close the client, restart the client, rejoin the TMM party, join the TMM queue.

Similarly, the checks for the already existing watch-replay-while-in-lobby feature is a bit safer than no checks at all, as, while it tries to prevent you from loading incompatible replays sometimes, it doesn't always do so. That's very much fine though, because if you close the offending replay in time, everything runs as you'd expect. (If you don't, the game does crash though.)

So instead of a popup straight up preventing me from starting any replay, even compatible ones, while in queue, I'd suggest an advanced setting that replaces the popup with one that warns me about the potential crash, but then lets me proceed anyway.

I am not willing to implement a feature that is known to lead to potential crashes or desyncs when launching a matchmaker game.

You have framed it as if it would only affect you, but it also affects all the other players you were matched with who had no option. And would result in a failed match for them.

I wonder if there might be a sufficient solution involving adding functionality that basically automatically force quits any local replay instance(s) when you find a match in queue.

pfp credit to gieb

@sheikah said in Allow watching replays while in queue:

I am not willing to implement a feature that is known to lead to potential crashes or desyncs when launching a matchmaker game.

You have framed it as if it would only affect you, but it also affects all the other players you were matched with who had no option. And would result in a failed match for them.

Well, it'd also make sitting in long queues more enjoyable, potentially leading to faster matches and a better experience for everyone down the road.

That being said, I can totally understand the philosophy that a bad solution is worse than no solution.
My proposed approach of "just let me do it, even if it's dangerous" would certainly fall under the former category after all.

@cheeseberry dude, when I will have time you will be able to watch replays while being in queue, even playing. Right now you can watch live replays only

@fft said in Allow watching replays while in queue:

I was launching 10 game instances at a time and it was ok πŸ˜‰

And I launch two instances every now and then and half the time one or the other shows a black screen with the logs telling me the driver crashed πŸ™‚

A work of art is never finished, merely abandoned

@jip said in Allow watching replays while in queue:

@fft said in Allow watching replays while in queue:

I was launching 10 game instances at a time and it was ok πŸ˜‰

And I launch two instances every now and then and half the time one or the other shows a black screen with the logs telling me the driver crashed πŸ™‚

Meanwhile I have this happen all the time with single instance lol. Funnily enough ctrl+alt+del and then focusing on the window twice always fixes it.

@sheikah Is there a way to implement the feature to avoid these problems?

If replays had a built-in "kill switch" that can be triggered by the FAF client, then it would be possible to terminate all replays whenever a matchmaker match is found.

This should solve the problems, right? The new matchmaker game would not be started until the replay was terminated, so you wouldn't get desyncs? And because the replay is terminated, you wouldn't have the problem of a player being AFK from his matchmaker game because he was watching the replay when it started

How hard would it be to add that? Is that something we could even do with LUA or would we need the source code?

Fork the client and delete the code restricting you from launching the replay. Don't let the authoritarian java developers tell you what you can and can't do with your game. You are smart enough to see if it crashes your game or not, and use it accordingly.