2 Player
Jump to navigation
Jump to search
2 Player is a esolang created by User:Yayimhere. its a 2d esolang with two pointers: the data and code pointer. they both move starting going left in the upper left corner of the program. for the data pointer the grid is topologically the same as a donut, but for the code pointer if it goes to the edge it halts
commands
command | description | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
^ |
move the pointer up unless its the data pointer | ||||||||||||||||||
* |
if whats at the data pointer move the code pointer:
| ||||||||||||||||||
? |
move the code pointer to the data pointer location | ||||||||||||||||||
/ and \ |
mirror unless the code pointer has already been at a mirror(both pointers) | ||||||||||||||||||
x |
skip the command in pointer direction | ||||||||||||||||||
X |
this command function depends on code pointer direction(for the data pointer it turns 90 degress clockwise):
| ||||||||||||||||||
! |
turn 90 degrees clockwise | ||||||||||||||||||
; |
make the data pointer stop moving | ||||||||||||||||||
~ |
apply the * transition to the data pointer command, also not running the command at data pointer
|
everything else is a NOP
examples
infinite loop(not including the data pointer):
\ /x \ ^/ \ x/ \;
with data pointer:
\ x /\ \/
oscillator(at data pointer):
\/ \ \^\x / \ x\~/ / \ \x/