Page 1 of 1

Infinite/arcade level feature in MnMS 0.5.1 dev build

PostPosted: 26 Jan 2019, 14:05
by acme_pjz
Hello all,

After some months of inactive the new version of script API is half finished, the v0.5.1 development branch is merged into master branch and the travis/appveyor nightly build is re-enabled.

Here I'd like to present my first attempt to make an infinite/arcade level:

random_test_1_ver2.zip
arcade level test, version 2 compatible with record playback
(915 Bytes) Downloaded 287 times


It's only a simple level with a moving spike walls and with randomly-generated platforms and collectibles. Please help me to test whether the v0.5.1 development versions works on your computer and whether the test level and the level random seed mechanism works.

Here are some records for the above level. The record file contains random seed used when playing the level, in order to reproduce the level during level replay. I don't know if the MSVC/GCC/Clang's implementations of C++11 MT19937 in random library are consistent. Please test if the record works (the best time is 92.50s and the best collectible is 4) on your computer.

random_test_1_records_ver2.zip
(2.74 KiB) Downloaded 267 times


Also it's welcome to make new random levels by either improve my example or make a new one from scratch.

Re: Infinite/arcade level feature in MnMS 0.5.1 dev build

PostPosted: 18 Jun 2019, 22:23
by Wuzzy
I just tested it, and the level seems to work. It spawns random blocks like you describe and I can score highscores. After each start, the level is randomized.

However, the records do not work. The player just jumps into the death in both recordings. But I guess this is because this thread is now old, am I right? Do you still need testing?

In the console, I also got this message: “WARNING: The record file doesn't provide a random seed! Will use a default random seed! This may breaks the behavior pseudo-random number generator in script!”

Tested in: 863701ba64464b7a7a139a8cf11c903e942bd000

Re: Infinite/arcade level feature in MnMS 0.5.1 dev build

PostPosted: 19 Jun 2019, 16:20
by acme_pjz
Wuzzy {l Wrote}:However, the records do not work. The player just jumps into the death in both recordings. But I guess this is because this thread is now old, am I right? Do you still need testing?


Well, this is because the level as well as the replay presented in this thread are not compatible with the replay playback control :| More precisely, the save/load script API is changed. However, as long as you don't drag the time slider, it should works.

In fact it still works on my computer (of course if you hit 'R' or drag the time slider backwards, it breaks). So I think there are some platform-specific bugs?

Anyway I'll upload a new version of this level which is compatible with the replay playback control. And then you can help me to test.

Wuzzy {l Wrote}:In the console, I also got this message: “WARNING: The record file doesn't provide a random seed! Will use a default random seed! This may breaks the behavior pseudo-random number generator in script!”


But this shouldn't happen :| Can you help me to debug it (set a breakpoint and watching what is going on, etc)?