bvoq / puzzlescriptmis

8 stars 0 forks source link

difference in behaviour between puzzlescript.net and mixedaim #5

Closed increpare closed 3 years ago

increpare commented 5 years ago

this level - press right and notice it behaves differently in puzzlescript.net (correctly) vs in the puzzlescriptmis, where the snake head detaches

author David Skinner
homepage www.puzzlescript.net

run_rules_on_level_start

========
OBJECTS
========

Background
darkgreen

Target
red

mauer
BROWN 

Player
white white white white
.....
.111.
.111.
.111.
.....

schlange_oben q
lightgreen red yellow
.....
.....
.000.
.202.
.000.

schlange_mitte a 
green red white
.000.
.000.
.000.
.000.
.000.

schlange_unten z
lightgreen red white brown
.000.
.000.
.000.
..0..
.....

leiter_oben w
yellow 
.....
.0.0.
.000.
.0.0.
.000.

leiter_mitte s
orange
.0.0.
.000.
.0.0.
.000.
.0.0.

leiter_unten x
yellow
.000.
.0.0.
.000.
.0.0.
.....

=======
LEGEND
=======

. = Background
# = mauer
P = Player
O = Target

leiter = leiter_oben or leiter_unten or leiter_mitte
schlange = schlange_oben or schlange_unten or schlange_mitte

mitte = leiter_mitte or schlange_mitte
oben = leiter_oben or schlange_oben
unten = leiter_unten or schlange_unten

stueck = leiter or schlange

obstacle = stueck or mauer or player
0 = target and schlange_oben

=======
SOUNDS
=======

================
COLLISIONLAYERS
================

Background
Target
leiter, schlange
Player, mauer

======
RULES
======

horizontal [ > player | mitte ] -> [ > player | > mitte ]

vertical [ left schlange_mitte | schlange ] -> [ left schlange_mitte | left schlange ] 
vertical [ right schlange_mitte | schlange ] -> [ right schlange_mitte | right schlange ] 

vertical [ left leiter_mitte | leiter ] -> [ left leiter_mitte | left leiter ] 

vertical [ right leiter_mitte | leiter ] -> [ right leiter_mitte | right leiter ] 

[> stueck | stueck] -> cancel
[> stueck | mauer] -> cancel

late up [ Player leiter_unten | ] -> [ leiter_unten | player ]
late up [ player leiter_mitte | ] -> [ leiter_mitte | player ]

late down [ Player schlange_oben | ] -> [ schlange_oben | player ]
late down [ player schlange_mitte | ] -> [ schlange_mitte | player ]

==============
WINCONDITIONS
==============

all player on target

=======
LEVELS
=======

#######
#..w.w#
#..s.s#
#q.x0x#
#a..a.#
#z.pa.#
#...z.#
#######

(it also happens when I replace the rules directly with the decompiled rules, if that helps...

RIGHT [ mitte | left player ] -> [ left mitte | left player ] 
RIGHT [ right player | mitte ] -> [ right player | right mitte ] 
DOWN [ schlange | left schlange_mitte ] -> [ left schlange | left schlange_mitte ] 
DOWN [ left schlange_mitte | schlange ] -> [ left schlange_mitte | left schlange ] 
DOWN [ schlange | right schlange_mitte ] -> [ right schlange | right schlange_mitte ] 
DOWN [ right schlange_mitte | schlange ] -> [ right schlange_mitte | right schlange ] 
DOWN [ leiter | left leiter_mitte ] -> [ left leiter | left leiter_mitte ] 
DOWN [ left leiter_mitte | leiter ] -> [ left leiter_mitte | left leiter ] 
DOWN [ leiter | right leiter_mitte ] -> [ right leiter | right leiter_mitte ] 
DOWN [ right leiter_mitte | leiter ] -> [ right leiter_mitte | right leiter ] 
DOWN [ stueck | up stueck ] -> cancel
DOWN [ down stueck | stueck ] -> cancel
RIGHT [ stueck | left stueck ] -> cancel
RIGHT [ right stueck | stueck ] -> cancel
DOWN [ mauer | up stueck ] -> cancel
DOWN [ down stueck | mauer ] -> cancel
RIGHT [ mauer | left stueck ] -> cancel
RIGHT [ right stueck | mauer ] -> cancel
LATE DOWN [ | player leiter_unten ] -> [ player | leiter_unten ] 
LATE DOWN [ | player leiter_mitte ] -> [ player | leiter_mitte ] 
LATE DOWN [ player schlange_oben | ] -> [ schlange_oben | player ]
LATE DOWN [ player schlange_mitte | ] -> [ schlange_mitte | player ] 

)

increpare commented 5 years ago

i thought it might be the cancel command, but I replaced it with something equivalent, and that didn't help. y

title Simple Block Pushing Game
author David Skinner
homepage www.puzzlescript.net

run_rules_on_level_start

========
OBJECTS
========

Background
darkgreen

Target
red

mauer
BROWN 

Player
white white white white
.....
.111.
.111.
.111.
.....

stop 
purple

schlange_oben q
lightgreen red yellow
.....
.....
.000.
.202.
.000.

schlange_mitte a 
green red white
.000.
.000.
.000.
.000.
.000.

schlange_unten z
lightgreen red white brown
.000.
.000.
.000.
..0..
.....

leiter_oben w
yellow 
.....
.0.0.
.000.
.0.0.
.000.

leiter_mitte s
orange
.0.0.
.000.
.0.0.
.000.
.0.0.

leiter_unten x
yellow
.000.
.0.0.
.000.
.0.0.
.....

=======
LEGEND
=======

. = Background
# = mauer
P = Player
O = Target

leiter = leiter_oben or leiter_unten or leiter_mitte
schlange = schlange_oben or schlange_unten or schlange_mitte

mitte = leiter_mitte or schlange_mitte
oben = leiter_oben or schlange_oben
unten = leiter_unten or schlange_unten

stueck = leiter or schlange

obstacle = stueck or mauer or player
0 = target and schlange_oben

=======
SOUNDS
=======

================
COLLISIONLAYERS
================

Background
Target
leiter, schlange
Player, mauer
stop

======
RULES
======

down [ no schlange_mitte | schlange_mitte ] -> [ schlange_oben | schlange_mitte ]

up [ no schlange_mitte | schlange_mitte ] -> [ schlange_unten | schlange_mitte ]

down [ no leiter_mitte | leiter_mitte ] -> [ leiter_oben | leiter_mitte ]

up [ no leiter_mitte | leiter_mitte ] -> [ leiter_unten | leiter_mitte ]

horizontal [ > player | mitte ] -> [ > player | > mitte ]

vertical [ left schlange_mitte | schlange ] -> [ left schlange_mitte | left schlange ] 
vertical [ right schlange_mitte | schlange ] -> [ right schlange_mitte | right schlange ] 

vertical [ left leiter_mitte | leiter ] -> [ left leiter_mitte | left leiter ] 

vertical [ right leiter_mitte | leiter ] -> [ right leiter_mitte | right leiter ] 

[> stueck | stueck] [player] -> [ stueck | stueck] [ player stop]
[> stueck | mauer] [player] -> [ stueck | mauer] [ player stop ]

[stop] [moving stueck] -> [ stop] [ stueck]
[moving player stop]->[player ]

late up [ Player leiter_unten | ] -> [ leiter_unten | player ]
late up [ player leiter_mitte | ] -> [ leiter_mitte | player ]

late down [ Player schlange_oben | ] -> [ schlange_oben | player ]
late down [ player schlange_mitte | ] -> [ schlange_mitte | player ]

==============
WINCONDITIONS
==============

all player on target

=======
LEVELS
=======

#######
#..w.w#
#..s.s#
#q.x0x#
#a..a.#
#z.pa.#
#...z.#
#######

(

choose 2 option 0.5 [ no player no mauer no target ] -> [ mauer ]
or option 0.5 [] -> []

choose 1 [target ] [no player no mauer no target ] -> [ ] [ target]
choose 1 [player ] [no player no mauer no target ] -> [ ] [ player]

choose 5 option 0.5 down [no obstacle | no obstacle | no obstacle ] -> [ | schlange_mitte | ]
or option 0.5 down [no obstacle | no obstacle | no obstacle ] -> [ | leiter_mitte | ]
or option 0.1 []->[]

choose 3 option 0.5 down [mitte | no mitte ] -> [ mitte | mitte]
or option  0.5 []->[]

down [ schlange | leiter ] -> [ | leiter ]
down [ leiter | schlange ] -> [ | schlange ]
down [ schlange | | leiter ] -> [ | | leiter ]
down [ leiter | | schlange ] -> [ | | schlange ]

down [ schlange | no schlange| schlange ] -> [ | | schlange ]
down [ leiter | no leiter | leiter ] -> [ | | leiter ]

up [ mauer | mitte] -> [ mauer | ]
down [ mauer | mitte] -> [ mauer | ]

up [ schlange_mitte | no schlange_mitte ] -> [ schlange_mitte | schlange_oben ]
down [ schlange_mitte | no schlange_mitte ] -> [ schlange_mitte | schlange_unten ]

up [ leiter_mitte | no leiter_mitte ] -> [ leiter_mitte | leiter_oben ]
down [ leiter_mitte | no leiter_mitte ] -> [ leiter_mitte | leiter_unten ]

)
bvoq commented 5 years ago

I'll try to look at it in 10 days, unfortunately I can't do it sooner but I can replicate the issue.

increpare commented 5 years ago

ah, no rush, just thought I'd report things as they come up :)

Am Di., 20. Aug. 2019 um 16:43 Uhr schrieb Kevin De Keyser < notifications@github.com>:

I'll try to look at it in 10 days, sorry I can't do it sooner but I can replicate the issue.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/bvoq/mixedaim/issues/5?email_source=notifications&email_token=AADRVYDSRAMV5EWEEEWXPQLQFP7JTA5CNFSM4INWNC4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4WREIY#issuecomment-523047459, or mute the thread https://github.com/notifications/unsubscribe-auth/AADRVYDS5E5MMELFUICWSJTQFP7JTANCNFSM4INWNC4A .

bvoq commented 3 years ago

fixed in 1.2 already i think, def. in 1.3