Supaplex engine bugs

Found a bug in R'n'D? Report it here!

Moderators: Flumminator, Zomis

User avatar
Martijn
Posts: 794
Joined: Sat Jun 19, 2004 10:54 am
Location: the Netherlands (Holland)
Contact:

Supaplex engine bugs

Post by Martijn »

OK, I'm the first to report bugs (or things that should be different) of the new Supaplex engine...


1. when infotrons fall, you hear the sound of a falling emerald...

2. with the EMC levels, Holger decided to have no music playing (unless you select custom music), since there was no music in the original EMC levels either. Now, with Supaplex levels you still hear the classic music set, which sounds very awkward. Can't you make that you hear either the original Supaplex song (which I prefer, I have suggested this somewhere else) or that it is just silent? But no classic music... it does not belong to Supaplex!

3. the timer to the right side of the screen runs twice as fast... normally, it goes up (or down, with time limit) 1 per second, but now it seems to be about 2 per second...
Visit my Boulder Dash website at:
http://www.bd-fans.com

Watch my avatar! That orange little thing is Murphy, the Supaplex star!
User avatar
Holger
Site Admin
Posts: 4081
Joined: Fri Jun 18, 2004 4:13 pm
Location: Germany
Contact:

Post by Holger »

> 1. when infotrons fall, you hear the sound of a falling emerald...

Unfortunately, I have no sounds/music in Supaplex/SpeedFix neither in the Windows emulator (VMware) nor on a native Windows XP. From looking at the Supaplex source code, the "zonk" sound is played when a falling infotron hits something -- is this right? Sounds a bit strange to me...

> 2. [...]

This is the same for the EM and SP levels in the classic section -- they both play with the R'n'D standard music. The "original behaviour" (no music) is only configured for the EMC level collection, as they try to be as close to the original as possible, which the classic section does not try in the same way. The upcoming Supaplex level collection will also try to be as close to the original, and will use no music or the Supaplex tune instead of the "standard" music. BTW: When does the Supaplex song exactly play in the original Supaplex game? As mentioned, I cannot test this at the moment...

> 3. the timer to the right side of the screen runs twice as fast...

Yes, right. This is already fixed in my working version.
User avatar
bojster
Posts: 458
Joined: Fri Jun 18, 2004 7:42 pm
Location: Poland
Contact:

Post by bojster »

Hello!

I just got the news that RnD with original Supaplex engine is out (something I have been waiting for for *some* time), and I rush to report that classic level 93 is finally solvable! Previously it was impossible to run between two rows of falling bombs, now it works just fine, thus making the entire classic Supaplex levelset solvable (though I only checked this one level now, but all the rest were right before, so they should still be). I can't wait to check all the extra levels that were mostly unplayable before, due to such lacks as scissors not exploding to infotrons in a chain reaction triggered by smashing electrons etc etc.

There is one bug however, ie. a behaviour that I don't remember being present in the original Supaplex (and I'm pretty sure of that, after playing zillion of hours and times), when I run into (not under!) a falling bomb from the side, Murphy gets killed. This should not be. A falling bomb when approached from the side should act like a wall, as it was in the previous engine. This breaks many tapes, including my old (partial) 093.tape. You can test this behaviour in level 93 at the very beginning.

Level 93 tapes:
old -> http://rnd.bojster.net/tapes/classic_su ... 3.tape_old
new (solved) -> http://rnd.bojster.net/tapes/classic_supaplex/093.tape


PS. Also, I'm not sure if it's a correct behaviour, maybe it is, but it is pretty annoying - when walking e.g. right, when I press down still holding right, Murphy goes straight down or, if walking by the wall, stops. As a result of that it is impossible to go in zig-zag, like in the old engine, which makes some levels (particularly gravity levels) much harder than they should(?) be. Actually there seems to be some key order that gives some arrows priority over others, ie.
Walking right and pressing:
down = turns down (or stops if the new direction is blocked - this applies to all 'turns')
up = turns up
left = turns left
Walking left and pressing:
down = continues left
up = turns up
right = continues left
Walking up and pressing:
right = continues up
left = continues up
down = continues up
Walking down and pressing:
right = continues down
left = turns left
up = turns up
So the priority seems to be up > left > down > right

Now this makes it inconsistent and unpredictable, are you sure it should be that way? I think preserving the old way (going in zig-zag in open space or continuing in 'old' direction when walking along the wall), even if slightly incompatible with the original engine(?) would be much much better.
Anonycat
Posts: 47
Joined: Thu Mar 27, 2008 4:45 am

Post by Anonycat »

I claim that 93 was completable on the old engine, even if not in a way you'd want to play. From my TAS tapes folder...

This tape completes on the RnD engine: http://soniccenter.org/sm/rnd/supaplex32_093_38.tape
And this one completes on the SP engine: http://soniccenter.org/sm/rnd/supaplex_093_37.tape
User avatar
Martijn
Posts: 794
Joined: Sat Jun 19, 2004 10:54 am
Location: the Netherlands (Holland)
Contact:

Post by Martijn »

@Holger:

Bug #1: this is true indeed. When infotrons fall on the ground, you hear a zonk sound and not an emerald sound.

Bug #2: well, actually I already play with extra Supaplex level collections in the original format. Shouldn't the SP engine automatically detect that these are native sets and thus play NO music at all, or rather (which I prefer): the original Supaplex song?

In the original Supaplex game, you hear the song in the main menu and it starts playing again when you start a level, immediately at the start of the level.

Bug #3: OK great. Solved.
Visit my Boulder Dash website at:
http://www.bd-fans.com

Watch my avatar! That orange little thing is Murphy, the Supaplex star!
User avatar
Holger
Site Admin
Posts: 4081
Joined: Fri Jun 18, 2004 4:13 pm
Location: Germany
Contact:

Post by Holger »

> new (solved) -> http://rnd.bojster.net/tapes/classic_supaplex/093.tape

Oops! It's not there! Could you have a look if you can find it again? I really would like to check that "run into bomb" thingie...

More on the rest of your post will follow! :-)
User avatar
Martijn
Posts: 794
Joined: Sat Jun 19, 2004 10:54 am
Location: the Netherlands (Holland)
Contact:

Post by Martijn »

ok some other sound bug in the SUPAPLEX engine. Sorry, it sounds like nagging about sounds again, but I think that levels using the SP engine at least should follow the same behaviour as the original game - including its sounds.

#5: when you place a red disk, you shouldn't hear a high beep sound, but another sound
Visit my Boulder Dash website at:
http://www.bd-fans.com

Watch my avatar! That orange little thing is Murphy, the Supaplex star!
User avatar
Martijn
Posts: 794
Joined: Sat Jun 19, 2004 10:54 am
Location: the Netherlands (Holland)
Contact:

Post by Martijn »

new bug:

see tape recording, included in this package: http://www.2shared.com/file/30tRLwCP/Su ... tion_.html
(sorry Zomis, forgot my password for your archive, otherwise I would use that)

(I already made out my own package of original level sets and created one of the original levels.)

now, bug #6 is that at the end of this recording, when Murphy dies, you hear a muted kind of explosion. This is something from RnD - not from Supaplex!
Visit my Boulder Dash website at:
http://www.bd-fans.com

Watch my avatar! That orange little thing is Murphy, the Supaplex star!
User avatar
Holger
Site Admin
Posts: 4081
Joined: Fri Jun 18, 2004 4:13 pm
Location: Germany
Contact:

Post by Holger »

> now, bug #6 is that at the end of this recording, when Murphy dies, you
> hear a muted kind of explosion.

What do you mean with "when Murphy dies"?

When I play level 011 with the corresponding tape from your archive, the level gets solved correctly and Murphy enters the exit (with the usual "Supaplex level solved" sound).
User avatar
Martijn
Posts: 794
Joined: Sat Jun 19, 2004 10:54 am
Location: the Netherlands (Holland)
Contact:

Post by Martijn »

well, I don't know. But I heard a soft sound which is the same as when you throw a boulder on a bug, but softer.

I came it across again: see this tape of the same level collection linked to above. at the end you hear this sound again (somewhere at about 0.43 or so)

http://www.2shared.com/file/Y7BuSIgR/011.html


I got a new bug:

bug#7: in level 12 of the original level collection (download link, see my post above), the level starts with Murphy next to a detonator. Now, without doing anything, the detonator is automatically activated before I press a key! This may be a bug in the SP engine...
Visit my Boulder Dash website at:
http://www.bd-fans.com

Watch my avatar! That orange little thing is Murphy, the Supaplex star!
User avatar
Martijn
Posts: 794
Joined: Sat Jun 19, 2004 10:54 am
Location: the Netherlands (Holland)
Contact:

Post by Martijn »

bug #8: this is not really a bug, but something that I noticed: when you start a level it is black and then it takes about half a second to place the elements of a level at the right place. Not that this is disturbing, but I thought 'let's mention it'.

bug #9: in the original Supaplex, the music stops playing at the moment you enter the exit. So then you only hear the exit sound and the music should have stopped then already.
Visit my Boulder Dash website at:
http://www.bd-fans.com

Watch my avatar! That orange little thing is Murphy, the Supaplex star!
User avatar
Holger
Site Admin
Posts: 4081
Joined: Fri Jun 18, 2004 4:13 pm
Location: Germany
Contact:

Post by Holger »

(The following was all tested with the current, official version 3.3.0.1.)

> I came it across again: see this tape of the same level collection linked to
> above. at the end you hear this sound again (somewhere at about 0.43 or
> so)

I replayed it again with your new tape. But I did not notice any unusual sound.

Are there any other unusual sounds or artefacts when you test this on your system?

> bug#7: in level 12 of the original level collection (download link, see my
> post above), the level starts with Murphy next to a detonator. Now, without
> doing anything, the detonator is automatically activated before I press a
> key! This may be a bug in the SP engine...

I played that level, and waited next to the terminal (I think this is what you meant by "detonator"), but it did not get activated by itself.

> bug #8: this is not really a bug, but something that I noticed: when you
> start a level it is black and then it takes about half a second to place the
> elements of a level at the right place. Not that this is disturbing, but I
> thought 'let's mention it'.

I cannot acknowledge this. I have tested the following two cases:

1st test case:
If you disable fading, the game screen instantly appears without delay or black screen, you immediately see the playfield and can start playing.

2nd test case:
If you enable fading (which is the default setting), the game screen appears softly by fading in, there is no delay or black screen, you immediately see the playfield and can start playing.

Maybe you either have a very slow system, or some malware is hugging your CPU? Have a look at the CPU usage in your task manager before you start playing a game from the main menu. (The main menu itself should eat up only marginal CPU.) (For myself, I tested it on a rather slow and outdated PC from the year 2005...)

> bug #9: in the original Supaplex, the music stops playing at the moment
> you enter the exit. So then you only hear the exit sound and the music
> should have stopped then already.

This could be added as a special artwork (sound) setting for the dedicated Supaplex level collection, but in this case the music should abruptly stop when entering the exit, else it would still mix a bit with the exit sound. Does the music stop immediately in the original Supaplex, or does it fade?

Summary: There seem to be a number of problems which I cannot reproduce here at all. Maybe you should do all these tests with a clean installation of R'n'D 3.3.0.1 (after renaming both the old R'n'D installation folder and personal levels folder), just to be sure...
User avatar
bojster
Posts: 458
Joined: Fri Jun 18, 2004 7:42 pm
Location: Poland
Contact:

Post by bojster »

Holger wrote:> new (solved) -> http://rnd.bojster.net/tapes/classic_supaplex/093.tape

Oops! It's not there! Could you have a look if you can find it again? I really would like to check that "run into bomb" thingie...

More on the rest of your post will follow! :-)
Sorry, I put it in the wrong dir, check now. BTW, I'm playing Linux 64bit X11 RnD, I cannot check the behaviour with the supplied binary as it's 32bit. Anyhow, by "You can test this behaviour in level 93 at the very beginning." I meant that you can check it by just playing the level, not the tape, but it is also visible in the *old* 093 tape, when Muprhy dies at the very beginning while simply standing next to the falling bomb (in reality it is the very moment when the right arrow is pressed and normally it should result in Murphy "pushing" then falling bomb (acting as a wall atm) and going to its place right after it becomes free (it is a common way of solving the 'bomb rain' situation, exploding here is wrong behaviour. If it's not visible when playing my old tape., I can record a video if someone points me to some easy Linux soft for screen stream grabbing.
User avatar
Holger
Site Admin
Posts: 4081
Joined: Fri Jun 18, 2004 4:13 pm
Location: Germany
Contact:

Post by Holger »

OK, now some more comments on bojster's post (and also his second one a few minutes ago -- in fact, it just showed up on this "post reply" screen, but not on the page before -- good evening, bojster :-) ).

> I just got the news that RnD with original Supaplex engine is out
> (something I have been waiting for for *some* time)

Ummm, well, yes. Apparently it took me a few days longer than expected one or two decades ago. ;-)

> and I rush to report that classic level 93 is finally solvable!

Yes, it should indeed be solvable, as the SP engine in R'n'D is based on the exact original source code of Supaplex. All original levels/demos I tested so far (over 1000) were solvable, so, unless proven otherwise, I claim that this engine is 100% compatible to the original engine. I know that this is quite a strong claim, but it is easy to falsify it by providing just one single level/demo that is solved by the original game, but not by R'n'D's Supaplex engine, so feel free to try it. :-)

> though I only checked this one level now, but all the rest were right before,
> so they should still be

Well, you never know -- it's a completely different game engine! But you're right, all 111 classic levels are still solvable (by their solution demos).

> I can't wait to check all the extra levels that were mostly unplayable
> before, due to such lacks as scissors not exploding to infotrons in a chain
> reaction triggered by smashing electrons etc etc.

Well, at least the following original sets are guaranteed to be solvable now:

--- snip ---
LEVELDIR 'sp_supaplex_original', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_01', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_02', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_03', SOLVED 110/110 (100%)
LEVELDIR 'sp_level_collection_04', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_05', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_06', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_07', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_08', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_09', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_10', SOLVED 70/70 (100%)
LEVELDIR 'sp_level_collection_11', SOLVED 40/40 (100%)
LEVELDIR 'sp_level_collection_12', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_77', SOLVED 110/110 (100%)
LEVELDIR 'sp_level_collection_92', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_93', SOLVED 30/30 (100%)
LEVELDIR 'sp_level_collection_94', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_95', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_96', SOLVED 111/111 (100%)
LEVELDIR 'sp_level_collection_97', SOLVED 90/90 (100%)
LEVELDIR 'sp_level_collection_98', SOLVED 73/73 (100%)
--- snip ---

(Note: The R'n'D level set identifiers may not be the final ones.)

> There is one bug however, ie. a behaviour that I don't remember being
> present in the original Supaplex (and I'm pretty sure of that, after playing
> zillion of hours and times), when I run into (not under!) a falling bomb from
> the side, Murphy gets killed. This should not be. A falling bomb when
> approached from the side should act like a wall, as it was in the previous
> engine.

To be honest, I was just as surprised as you were when I tested the native SP engine and encountered that exact behaviour. I couldn't believe it, and have tested it several times so far (and still can't believe it), but it is indeed the exact behaviour of the original DOS version of the game (well, I'm talking of the SpeedFix variant created by Herman perk, which is identical to the original, engine-wise). May it be possible that you played the Amiga version, and that it differs in that regard?

And it's not only bombs, but all falling objects (as far as I was able to test it). Try to run into a falling zonk, and you die, too. Or falling Infotron. Or...

Very strange indeed!

Please tell me if I completely missed the point here! :-o

> This breaks many tapes, including my old (partial) 093.tape.

Well, at least this is expected behaviour -- replaying a tape that was recorded with one engine with a different engine is almost surely expected to break, due to subtle element and timing differences.

> PS. Also, I'm not sure if it's a correct behaviour, maybe it is,

Indeed it is correct ...

> but it is pretty annoying

... and it definitely is annoying! :-o

> - when walking e.g. right, when I press down still holding right, Murphy
> goes straight down or, if walking by the wall, stops. As a result of that it is
> impossible to go in zig-zag, like in the old engine, which makes some
> levels (particularly gravity levels) much harder than they should(?) be.

Indeed you cannot run in zig-zag in the original game. But ...

> So the priority seems to be up > left > down > right

... I'm very surprised to find out just right now that the priority in the original game is exactly the other way round than in R'n'D's SP engine (and probably MegaPlex, from which the code was taken): up < left < down < right (which means that direction "right" has the highest priority and "up" the lowest, if more than one key is pressed at the same time). Of course, that should not have any impact on the solvability of any level (it may only be a question of convenience or familiarisation of the original behaviour). But to be closer to the original, I should reverse that input key priority order.

> Now this makes it inconsistent and unpredictable,

Unfortunately, that's right.

> are you sure it should be that way?

Well, it depends on how close to the original the engine should be. I had the same problem with the Emerald Mine engine, which had the same kind of input key priority issue, but I just changed this right away to the more convenient R'n'D behaviour, which was no problem, as there do not exist any tapes for EM levels, as the original EM does not have such a feature. But as the original Supaplex has a similar tape recording facility (tapes are called "demos" there), changing the input key processing will most probably invalidate correct tapes/demos due to the different interpretation of key order, as it does not store movements, but raw input key events.

This is especially an issue as tapes recorded with the current SP engine in R'n'D are fully backwards compatible with the classic original game -- you can save a level/tape combination to a Supaplex "*.sp" file and replay it in the original game! Changing the key processing style would break this.

> I think preserving the old way (going in zig-zag in open space or continuing
> in 'old' direction when walking along the wall), even if slightly incompatible
> with the original engine(?) would be much much better.

Principally, I fully agree here! The least I could do would be a setup option for the Supaplex engine like "allow zig-zag movement: on/off". Maybe "on" should even be the default, as most people who play native Supaplex levels in R'n'D most probably don't care at all if they can be played in the original game. And those few who do could enable it in the setup. Hmmm...

> BTW, I'm playing Linux 64bit X11 RnD, I cannot check the behaviour with
> the supplied binary as it's 32bit.

No problem, a self-compiled binary should work just fine, regardless of 32, 64 or 128 bit systems! BTW: Why not building the SDL version? It supports full-screen modes and MOD music! :-)

> in reality it is the very moment when the right arrow is pressed and
> normally it should result in Murphy "pushing" then falling bomb (acting as
> a wall atm) and going to its place right after it becomes free (it is a
> common way of solving the 'bomb rain' situation, exploding here is wrong
> behaviour

I'm still near to being convinced that you're right here, even though the original DOS game tells me otherwise. Still can't believe it! Can anybody test this please with the original DOS version (which runs more or less fine on Windows, using the SpeedFix patch), or even with the Amiga version (be it inside an emulator or on original hardware) and tell what they observed for this case?
User avatar
bojster
Posts: 458
Joined: Fri Jun 18, 2004 7:42 pm
Location: Poland
Contact:

Post by bojster »

LEVELDIR 'sp_supaplex_original', SOLVED 111/111 (100%)
Umm, but the original Supalex leveldir in the vanilla RnD 3.3.0.1 is classic_supaplex, right where the old engine Supaplex used to be, right? That's more or less the mess I was talking about in the other thread. :P
To be honest, I was just as surprised as you were when I tested the native SP engine and encountered that exact behaviour. I couldn't believe it, and have tested it several times so far (and still can't believe it), but it is indeed the exact behaviour of the original DOS version of the game (well, I'm talking of the SpeedFix variant created by Herman perk, which is identical to the original, engine-wise). May it be possible that you played the Amiga version, and that it differs in that regard?
I just checked the DOS version in dosbox and you are right! The arrow craziness as well as run-into-the-bomb-from-the-side-and-die are both valid. BTW, by 'bomb' I mean zonk and dot the orange disk. Though it works the same for the disk. As for the scissors, it does and should work this way - they are harmless unless you get in front of them or run into them by yourself (from any side). Well, it seems it's also true for falling objects. Unfortunately I was not able to run Amiga version - WHD installed Supaplex is messed up and disk-image version stops loading on yellowish screen. So I cannot check this behaviour. Amiga version relied on joystick instead of arrow keys, so the behaviour *could* be different, but as for the zig-zag movement I would probably not notice anyway.
> I think preserving the old way (going in zig-zag in open space or continuing
> in 'old' direction when walking along the wall), even if slightly incompatible
> with the original engine(?) would be much much better.

Principally, I fully agree here! The least I could do would be a setup option for the Supaplex engine like "allow zig-zag movement: on/off". Maybe "on" should even be the default, as most people who play native Supaplex levels in R'n'D most probably don't care at all if they can be played in the original game. And those few who do could enable it in the setup. Hmmm...
I think that giving people a choice is always the best option, at least if it doesn't mean too many extra hours you'd have to spend on this!
> BTW, I'm playing Linux 64bit X11 RnD, I cannot check the behaviour with
> the supplied binary as it's 32bit.

No problem, a self-compiled binary should work just fine, regardless of 32, 64 or 128 bit systems! BTW: Why not building the SDL version? It supports full-screen modes and MOD music! :-)
Compilation of SDL version breaks on SMPEG dependency, which I did not manage to correctly compile on my system (this might be due to the fact that smpeg was last updated in 2003 :roll: ). [edit] I just compiled the latest svn from icculus and it worked fine, finally. Now I can play in fullscreen - as the the music, I rarely use speakers anyway. ;-)
I'm still near to being convinced that you're right here, even though the original DOS game tells me otherwise. Still can't believe it! Can anybody test this please with the original DOS version (which runs more or less fine on Windows, using the SpeedFix patch), or even with the Amiga version (be it inside an emulator or on original hardware) and tell what they observed for this case?
I remember that on Amiga in some cases it was even possible to push a falling bomb when it stopped for a little while (e.g. when many bombs were falling in a tunnel and there was an explosion below, then some of the falling ones would stop in the mid air waiting for the empty space), and it was pretty acrobatic, and remember that there was not possible to save game in-level, so when you put it all together it seems near to impossible that this behaviour (exploding when running into falling bomb or disk) was present in Amiga version of the game. I will try to find a working version and double-check it, and let you know.


[edit] I just played some levels with the new engine and well, the weird arrow behaviour is something one can get accustomed to, I just have to fiddle with fingers some more, almost like it was a mini-joystick and not a keyboard. ;-)
Post Reply