Jump to content

SLR - Replay Checker Website


Ultralord

Recommended Posts

Hello there, People of the Sky,

Since the first Battle of Tactics I provide a website, on which you could check your replay if it is valid for the event. But why stop there!

So let me share with you the: Skylords Rebore Replay Checker:
--> https://www.t1421.de <--


On this page you can upload a replay and all information which can be read out of the file will be shown on the page.
At the moment I tested a lot with PvE replays, but PvP should work as well.

There are tree tabs:
1. Head:
Here you can find the main information about the game
Map name, time, game version, etc.

2. Deck:
Here you can see the cards from the decks.
The replay files only contain the full deck of the player who saved the file
For that player, cards which has not been played will be shown in gray.
For the other players only played cards a visible.

3. Acti: (Actions)
Here you can see all actions of all players.
In short, an action is every time you click. Like play a card, switch the gate, move a unit,…
You can filter by player and action type.

 

Please keep in mind, this is not an official website and I’m not part of the SLR-Team.
Some of the date could be wrong because in never encounter that specific scenario.

I will continue working on the website at some point, but I’d like to share this first version with you, since some gave me feedback, that this early version is already very useful.

I what to give a BIG THANK YOU to @Maze
I´m using his API from the SMJ-Website for Card information’s, as well as for the card images.

If you encounter a bug, feel free to contact me.
You also can request features, but implementations may take a long time.
(keep in mind I can only read date from the replay file, so stuff like “How many units died?” is not possible, because it’s calculated while you are watching the replay on your PC)

See you in the Forge 😊

Volin, Dutchy, Mynoduesp and 5 others like this
Link to comment
Share on other sites

I start preparing something like this (as downloadable open source application), is it worth finishing?

few bugs:

- "DifficultyID:" is not filled for rPvE
- "GroupCount:", "DifficultyID2:", "Playtime2:", "PlayModeID2:", "PMVPlayerID2:", "ActionBlock:", "Unknow3:", "Unknow4:", "MatrixCount:", "TeamCount:" seems useless and confusing
- What even is "Unknow3:", and "Unknow4:"? I was not able to find matching values in the file
- "GameVersion:" should be 4 bytes earlier, and these 4 bytes should be "Client files version" (if you would like to match terminology used by the team)
- "WinningTeam:" shows loosing team for me
- "MapID:" using actual map name instead of ID seems like an good idea.
- 🤔 generating "not existing actions like "Build orb" seems weird
- What is action "Cant get Gold"?
- Renaming surrender to "Leave game" seems weird, because I do not need to leave the game yet
- showing "players" like "pl_Enemy1", "pl_EnemySpawned", "pl_Player1", "pl_Player2", "pl_Player4" seems confusing, because it shows no actions for them, so maybe filter out players without actions out? or maybe better, list only human players?
- movie_deck.pmv This replay causes error 520 which is not shown to the user, but the page is just reloaded after some time.

I hope the "bug"/"suggestion"/"question" list isn't too long 🙂

Hirooo, Metagross31 and Ultralord like this
Link to comment
Share on other sites

4 hours ago, Kubik said:

I start preparing something like this (as downloadable open source application), is it worth finishing?

few bugs:

- "DifficultyID:" is not filled for rPvE
- "GroupCount:", "DifficultyID2:", "Playtime2:", "PlayModeID2:", "PMVPlayerID2:", "ActionBlock:", "Unknow3:", "Unknow4:", "MatrixCount:", "TeamCount:" seems useless and confusing
- What even is "Unknow3:", and "Unknow4:"? I was not able to find matching values in the file
- "GameVersion:" should be 4 bytes earlier, and these 4 bytes should be "Client files version" (if you would like to match terminology used by the team)
- "WinningTeam:" shows loosing team for me
- "MapID:" using actual map name instead of ID seems like an good idea.
- 🤔 generating "not existing actions like "Build orb" seems weird
- What is action "Cant get Gold"?
- Renaming surrender to "Leave game" seems weird, because I do not need to leave the game yet
- showing "players" like "pl_Enemy1", "pl_EnemySpawned", "pl_Player1", "pl_Player2", "pl_Player4" seems confusing, because it shows no actions for them, so maybe filter out players without actions out? or maybe better, list only human players?
- movie_deck.pmv This replay causes error 520 which is not shown to the user, but the page is just reloaded after some time.

I hope the "bug"/"suggestion"/"question" list isn't too long 🙂

xD yeah nice,

i should had to add in the first post that its currently in debug mode.
So it shows more information then you normally need + stuff which is still in development like WinningTeam

I think i will add an option so "normal" mode is default.

Unknow3 and Unknow4 are 8 bytes each, before the MapID. Do you know what they are?

im not sure what you mean with GameVersion 
My called GameVersion field is the current Patch level like 400039
The 4 bytes before that are call FileVersion in my code and is not show on the website at the moment, value something like 259

"Cant get Gold" is when click on a chest, but your units is occupied.

 

4 hours ago, Kubik said:

I start preparing something like this (as downloadable open source application), is it worth finishing?

 

You most certainly should continue / finish in my opinion.
As you have seen first hand, my website is by fare not good and needs some more fixing and polishing.
Having a tool form someone with insight, how BF is creating the replay files makes a way trustworthy applications, then a page made by a random guy.

THX for you feed back

 

Link to comment
Share on other sites

Spoiler

char PMV[3;
uint32 GameVersion;
uint32 GameBuild_nowClientFilesVersion;
uint32 PlaytimeFinalStep;
uint32 MapFileCheckSum; // game seems to not care about this value
CString MapFileName;
uint32 HeaderSizeUntilActions; // the byte distance between Seed (after this 32 bits) and first action
uint16 Seed;
uint32 MapID;
byte Difficulty;

8 bytes each would mean they overlap quite a lot with map file name, so no way they would be 162/153 in my example.
oh you mean 8 bits, not bytes... well these 16 bits are seed.

"Cant get Gold" appears for opening the chest.

Link to comment
Share on other sites

11 hours ago, Kubik said:

I start preparing something like this (as downloadable open source application), is it worth finishing?

I think so, yes, as this would also allow to modify the source to do things like check multiple replays at once and get statistics from them.

Link to comment
Share on other sites

11 hours ago, Kubik said:

8 bytes each would mean they overlap quite a lot with map file name, so no way they would be 162/153 in my example.
oh you mean 8 bits, not bytes... well these 16 bits are seed.

 

interesting 😮 my interpretation looks like this 
 

Spoiler

image.png.0853720fb5d2c506b884aba79f06a1d0.png

 

And for the Gold:
Cant get gold is Action-ID: 4043
Opening Gold is Action-ID: 4006

Metagross31 likes this
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Terms of Use