??????
You are not logged in.
Pages: 1
I know Cordial Minuet currently logs your matches as text files and saves them in the "recordedGames" folder. Will there ever be a way to review these games? I have a lot of games that I would like to review more carefully to check the effectiveness of various strategies, and I also have some games I would like to post on the forums with commentary.
Offline
Drop one of those recordings into playbackGame and then run the game. You can watch your every mouse move.
If this is boring/slow to watch, you may want to enable "enableSpeedControlKeys" in the settings folder. Then ^&*() keys control framerate, wtih & being normal, ) being fastest. That can help you speed through some of the more boring parts.
Matches are currently NOT recorded on the server. I have thought about that, because that was an important aspect of some of my other games (Primrose and The Castle Doctrine). I've also thought about spectator modes. My instinct is to keep the game simple, though.
Offline
I would be completely in favor of a built in replay feature on the server. But I can work with the replay files for now. The only problem is, I tend to leave the client open in the background, and the replay files include all that idle time as well. My solution for now is to run the entire replay through a video capture program at the highest speed so I can easily browse though it and take screen-shots.
Offline
There's a lot of development overhead in supporting client-server game history review. You know, menus in the client, speed control buttons, and all that. It really feels like a "someday" feature, like if this game really takes off.
Offline
Matches are currently NOT recorded on the server.
In other words, only the amount of coins won each round is recorded? Or is it even coarser, at the level of the amount won in each game?
Would it be easier to just store recorded games client-side?
I wrote a Python script to parse recordedGame files and specifically game_state messages (from which you can work backwards non-trivially to determine player actions). I've actually been thinking about using it to write a little script to remove all the waits, though some would have to be left in to ensure that animations are skipped over before the next action.
Offline
The only thing recorded right now is how much they buy in for and how much they cash out for. I'm tracking whenever money moves in the game, but that's it. This ledger allows us to recalculate a player's balance from scratch using their full money-movement history (and I actually do this, as a sanity check, before letting them withdraw or even buy-in to a game).
The server does log text messages about each move made, but this is just for debugging later (like, if someone gets DENIED BY SERVER I can manually look at these messages and see who made what move at what time to trigger it). Those logs are discarded after a few weeks and wouldn't be useful for reconstructing games automatically.
Storing move lists and chip movement wouldn't be too hard on the server---I'd just have to come up with a format for it---and that would really be the way to do it. Playback on the client would require several weeks of work, though, I imagine.
In The Castle Doctrine, it was a core part of the game thematically (watching security tapes), so it was worth it. It was also necessary to document exploits, because everything was happening on the client.
In Primrose, it was likewise necessary to prove and verify high scores that were submitted (that was the initial motivation, until I discovered that the recordings were really interesting to watch).
Here, where everything happens on the server, there's no security motivation, and there's also not a particularly strong thematic motivation. In fact, the fleeting nature of the games adds to the experience thematically, I think.
As a lone developer, I've got to pick my battles.
I also believe that a third-party tool could do this pretty well, either by parsing the recordedGame files or by acting as a proxy to scrape the protocol directly. Not so easy to have the playback happen directly in the client, but I don't think that's necessary. Maybe web-based playback. Maybe the third-party tool could automatically upload the recordings to the web. By scraping the protocol live, a web-based spectatior mode could also be possible.
Offline
Pages: 1