[BUG][EXP-Player] RR changes/assignments are not saved correctly in replay +more

Started by IchoTolot, October 09, 2017, 12:59:19 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

IchoTolot

So I've converted my packs again with the new version and run a quick replay check. They all pass but one: "It's closing time at the Mall" (Ultra-Violence 11 or 04 11).

Ivestigation started: I've noticed that 2 floaters aren't assigned properly at the top right after the bash -- quick fix I thought -- replayed the level, saved over the old replay.
New mass check: Undetermined this time ---- the RR change at the start is now missing -- replayed the level, saved over the old replay.
New mass check: Undetermined -- still RR change is missing! -- replayed the level, saved a new replay ----> still RR is missing!

Replayed the level in the stable version (level file should be the same as the nxp I used for conversion is the same) and saved the replay --- loaded it in in the new version ---> This time the floaters are missing again!

I've noticed that the terrain piece under the exit is moved ~ 8 pixels to the left in the conversion which shouldn't influence the solution at all, but maybe this hints at something else even.....
---> Editor investigation: I've compared this with the old editor and it seems the coordinates are still the same but the chopped off blank space at the left of that piece isn't compensated for! (Should be Terrain_03 of snow [or terrain 03 in the old christmas set] but please double check that!)
Maybe the conversion from Christmas tiles to snow tiles did not take the chopped of space into account as only 1 of my levels is hit by that?

Still something is really wrong here and I bet that it has something to do with saving replays in the new version.

I did one additional test: Played a level, assigned a skill and turned up the RR, then saved the replay. Loaded in that replay: The skill is assigned, but the RR change is still missing! So my theory that RR changes are not saved in a replay in the new player is confirmed.

I've attached:

- The replay with the missing floaters. This solves the level in the stable version!
- The replay with the missing RR change. This normally should solve the converted version, but the RR seems to be left out.
- The pack nxp which I used for the conversion and the included 04 11 is solved by the missing floater version.
- The converted single level, which should be solved by a new replay in the end.

Also the background in the city tilesets are still missing and would need to be set manually, but I bet this is still a bug in the conversion tables and with general backgrounds themselves, so I leave that up to fix as well ;)
The tiles are coreect now though. :)

nin10doadict

I was wondering how the change to the new RR setup would affect release rates in replays. Unless the RR in old replays was converted to fit the new formula, then levels requiring specific RR at specific times would all have their replays break.
Then again, this problem seems to be that the replay just refuses to touch the RR at all, which is even worse.

Nepster

Quote from: IchoTolot on October 09, 2017, 12:59:19 PM
Still something is really wrong here and I bet that it has something to do with saving replays in the new version.
You just lost a bet. :P

The bugs were:
1) RR-changes were saved in replays under the header "spawn-interval" (which is correct), but when loading them the game looked for the header "release-rate" (which is incorrect).
2) The translation table for the xmas style does not yet have the offsets due to cropping of the sprites in the onho-snow style.
3) The loading code for old levels seems to ignore backgrounds completely. I just made a test level with one hatch and a background, and the new-formats player just loaded the hatch. As I have no idea how the old level files are structured, I cannot fix this.

Regarding the floater replay bug: The floaters were simply assigned after the lemmings already crashed into the ground.
Regarding RR-handling in new-formats: The conversion of old RR-values to new ones should be done automatically. At least it's in the code...