MININIM - Standard Legacy Level Set (replayable)

Post Reply
User avatar
oitofelix
Wise Scribe
Wise Scribe
Posts: 227
Joined: February 17th, 2016, 1:59 pm
Location: Brazil
Contact:

MININIM - Standard Legacy Level Set (replayable)

Post by oitofelix »

This thread is intended to demonstrate how MININIM's replays aid in sharing walkthroughs and mechanically validating solutions for entire level sets. All videos made available here were recorded from replay playbacks and are grouped in a dedicated YouTube playlist at my channel. The replay chain provided here is distributed alongside the latest MININIM release in data/replays directory. For a user level description of MININIM's replay feature see its announcement. For a technical perspective of its design decisions see this post.

Replay: 01.mrp


Replay: 02.mrp


Replay: 03.mrp


Replay: 04.mrp


Replay: 05.mrp


Replay: 06.mrp


Replay: 07.mrp


Replay: 08.mrp


Replay: 09.mrp


Replay: 10.mrp


Replay: 11.mrp


Replay: 12.mrp


Replay: 13.mrp


Replay: 14.mrp


Replay Chain Validation
A MININIM replay file corresponds to one and only one level and possibly presents a solution thereof. A replay chain is a sequence of replays sorted by increasing level order, which possibly present a solution to an entire level set. In this case we say the replay chain is complete and valid. MININIM can be used to mechanically verify the validity of replay chains. When replays are specified in the command line (as opposed to loading them in-game using F7), the error status returned by MININIM indicates the validness of the provided replay chain.

Notice that a null value for --time-frequency disables time frequency constraint, allowing MININIM to use all the CPU power available for replaying as fast as possible. Probably, invoking MININIM like this in your own computer will yield a much faster and smoother playback than what's shown in the videos below, for two reasons:
  1. Capturing video consumes a significant slice of CPU time, as does uploading to YouTube in the background :P.
  2. My video capturing software is setup for 12 frames per second (to match the default MININIM time frequency).
Naturally, more demanding rendering settings (like high multi-room resolutions) slow down replays considerably for sufficiently high time frequencies. Providing --rendering=none, which disables video and audio rendering altogether, is then ideal for batch processing of replays.

Wildcards are useful for specifying entire replay chains at once in command line invocation. In GNU/Linux the job of expanding them are performed by the shell. In Windows, MININIM has to take care of it using C's glob function. Therefore, there might be differences on what is accepted by each port. For instance, data/replays/{01..14}.mrp has to be replaced by the ad-hoc equivalent data/replays/??.mrp under Windows (this latter being usable on both platforms).

This replay chain has been verified to be valid on both GNU/Linux 64-bit and Windows XP 32-bit, confirming the architecturally neutral replay format design and MININIM's consistency in replay reproducibility.

Code: Select all

./mininim --time-frequency=0 --multi-room-fit-mode=ratio --fullscreen data/replays/{01..14}.mrp

Code: Select all

./mininim --time-frequency=0 --multi-room=1x1 --fullscreen data/replays/{01..14}.mrp

Code: Select all

./mininim --time-frequency=0 --rendering=none --window-position=2048,0 data/replays/{01..14}.mrp


Replay Summary

Code: Select all

===============================================================================
REPLAY CHAIN BEGINNING
===============================================================================
File: data/replays/01.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=1 --start-time=0 --time-limit=43200 \
  --total-lives=3 --kca=0 --kcd=0
Random seed: 0x91019D52
Cycles: 1500
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=2 --start-time=1500 --time-limit=43200 \
  --total-lives=3 --kca=7 --kcd=0
===============================================================================
File: data/replays/02.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=2 --start-time=1653 --time-limit=43200 \
  --total-lives=3 --kca=7 --kcd=0
Random seed: 0x6798D603
Cycles: 2271
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=3 --start-time=3924 --time-limit=43200 \
  --total-lives=4 --kca=14 --kcd=43
===============================================================================
File: data/replays/03.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=3 --start-time=4075 --time-limit=43200 \
  --total-lives=4 --kca=14 --kcd=43
Random seed: 0xF98E2FCD
Cycles: 1916
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=4 --start-time=5991 --time-limit=43200 \
  --total-lives=5 --kca=14 --kcd=43
===============================================================================
File: data/replays/04.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=4 --start-time=5991 --time-limit=43200 \
  --total-lives=5 --kca=14 --kcd=43
Random seed: 0xB2C31CEE
Cycles: 1908
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=5 --start-time=7899 --time-limit=43200 \
  --total-lives=6 --kca=14 --kcd=51
===============================================================================
File: data/replays/05.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=5 --start-time=7899 --time-limit=43200 \
  --total-lives=6 --kca=14 --kcd=51
Random seed: 0x6403AE3F
Cycles: 2135
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=6 --start-time=10034 --time-limit=43200 \
  --total-lives=6 --kca=14 --kcd=51
===============================================================================
File: data/replays/06.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=6 --start-time=10034 --time-limit=43200 \
  --total-lives=6 --kca=14 --kcd=51
Random seed: 0x4BB669E9
Cycles: 521
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=7 --start-time=10555 --time-limit=43200 \
  --total-lives=6 --kca=16 --kcd=53
===============================================================================
File: data/replays/07.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=7 --start-time=10555 --time-limit=43200 \
  --total-lives=6 --kca=16 --kcd=53
Random seed: 0xFAD17FF6
Cycles: 1999
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=8 --start-time=12554 --time-limit=43200 \
  --total-lives=7 --kca=16 --kcd=53
===============================================================================
File: data/replays/08.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=8 --start-time=12554 --time-limit=43200 \
  --total-lives=7 --kca=16 --kcd=53
Random seed: 0x3CD93FEB
Cycles: 2916
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=9 --start-time=15470 --time-limit=43200 \
  --total-lives=7 --kca=24 --kcd=67
===============================================================================
File: data/replays/09.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=9 --start-time=15470 --time-limit=43200 \
  --total-lives=7 --kca=24 --kcd=67
Random seed: 0xE592923
Cycles: 3436
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=10 --start-time=18906 --time-limit=43200 \
  --total-lives=8 --kca=24 --kcd=67
===============================================================================
File: data/replays/10.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=10 --start-time=19058 --time-limit=43200 \
  --total-lives=8 --kca=24 --kcd=67
Random seed: 0xACA97EFA
Cycles: 3297
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=11 --start-time=22355 --time-limit=43200 \
  --total-lives=8 --kca=24 --kcd=67
===============================================================================
File: data/replays/11.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=11 --start-time=22507 --time-limit=43200 \
  --total-lives=8 --kca=24 --kcd=67
Random seed: 0x295A4ED2
Cycles: 1899
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=12 --start-time=24406 --time-limit=43200 \
  --total-lives=9 --kca=24 --kcd=67
===============================================================================
File: data/replays/12.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=12 --start-time=24557 --time-limit=43200 \
  --total-lives=9 --kca=24 --kcd=67
Random seed: 0x25ADB587
Cycles: 1514
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=13 --start-time=26071 --time-limit=43200 \
  --total-lives=10 --kca=24 --kcd=67
===============================================================================
File: data/replays/13.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=13 --start-time=26071 --time-limit=43200 \
  --total-lives=10 --kca=24 --kcd=67
Random seed: 0x84B11343
Cycles: 1597
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=14 --start-time=27668 --time-limit=43200 \
  --total-lives=10 --kca=36 --kcd=67
===============================================================================
File: data/replays/14.mrp
Signature: MININIM REPLAY
Version: 1
Initial: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=14 --start-time=27668 --time-limit=43200 \
  --total-lives=10 --kca=36 --kcd=67
Random seed: 0x572C35A2
Cycles: 209
Complete: YES
Reason: NONE
Final: --mirror-level=FALSE --immortal-mode=FALSE --movements=NATIVE \
  --semantics=NATIVE --start-level=15 --start-time=27877 --time-limit=43200 \
  --total-lives=10 --kca=36 --kcd=67
===============================================================================
REPLAY CHAIN END
===============================================================================
Bruno Félix Rezende Ribeiro (oitofelix)
MININIM author
User avatar
yourantumayel69
Calif
Calif
Posts: 565
Joined: November 12th, 2019, 9:53 am
Location: Indonesia
Contact:

Re: MININIM - Standard Legacy Level Set (replayable)

Post by yourantumayel69 »

Thanks for video.😃
Personally, I only play using DOS and SDLPoP port.
Pengkhotbah 3:1 (TB) Untuk segala sesuatu ada masanya, untuk apa pun di bawah langit ada waktunya.
Post Reply