~sebsite/ultimate-syobon-action

An enhanced version of the unforgiving Japanese parody of Super Mario Bros.
Fix x_repeat_level on castle levels
Save PBs in time attack
Fix game.write text size consistency

refs

main
browse  log 

clone

read-only
https://git.sr.ht/~sebsite/ultimate-syobon-action
read/write
git@git.sr.ht:~sebsite/ultimate-syobon-action

You can also use your local clone with git send-email.

Ultimate Syobon Action

yup this is a thing that exists now i guess

this is a fork of Open Syobon Action by Matthew Velasquez:
https://sourceforge.net/projects/opensyobon/

this codebase is dogshit but i'm making it work.
stuff new to ultimate syobon action:
- lua API. haven't written docs yet but i'll get around to it i'm sure
- debug overlay
- variables to tweak (as options, on debug page 1)
- save states (which you can use to save options)
- an actual pause button
- fixed some bugs and quirks (nothing that changes actual gameplay though)

feel free to send patches :)

dependencies: SDL, SDL_image, SDL_mixer, SDL_ttf, SDL_gfx

game controls:
z, up, semicolon, button 1 (joystick) - jump
left, right - movement
down - enter warp pipe
return - pause
escape - quit
space - double the game's speed (while held down)
1-9 (on title screen) - level select
0 (on title screen) - mystery dungeon
o - suicide

save state controls:
	keys f1-f12 load a save state from any of 12 slots. holding shift and
	pressing f1-f12 saves a state in said slot. holding ctrl and pressing
	f1-f12 deletes the saved state from said slot. if the player tries to
	load a slot that doesn't have anything saved, all values are reset to
	their defaults (as though the game had just launched, basically). when
	the game launches, it automatically loads slot 1 (which does nothing if
	nothing is saved there). that's the means by which you can have your
	options persist across sessions: first set the options (as detailed
	below), then press shift+f1. then everytime you launch the game, so long
	as the slot isn't overwritten or deleted, your options will
	automatically be applied. also note that "x_pause" (which stores whether
	or not the game is paused) isn't saved nor loaded. this is so the player
	can pause the game before they make a save state if they wish, but the
	state will still work as though the game were never paused

debug controls:
ctrl + 0-9 on title screen; 0-9 everywhere else:
	view debug overlay. the number is the page to view. hold down shift when
	pressing 0-9 to add 10 to the page number. in total there are 20 pages,
	but page 0 is empty, so there are really 19 actual debug pages. page 1
	is options which are new to Ultimate Syobon Action; everything else is
	stuff that stores the game's state. the variable names are awful and
	tell you nothing about what they do, don't blame me lol, good luck. all
	variables whose name begins with "x_" are new to ultimate syobon action
j, k:
	cycle through variables in debug page (down, up)
h, l:
	change the value of a variable. h decrements; l increments. holding down
	shift lets you hold down h or l to change the value quickly. holding
	down ctrl does the same thing, but changes the value much faster, and
	holding both ctrl and shift goes even faster than that
i:
	toggle debug lock. this lets you set a variable to a specific value
	without having the value change as you're incrementing/decrementing to
	the value you want (i.e., once you unlock, the value jumps to whatever
	you set it to while the lock was active). to use: select the variable
	you want to change, press i, set the value to what you want, then press
	i again. you can only change one variable at a time while the lock is
	active, and you can't change the debug page (i might change this in the
	future to allow for multiple variables to be changed at a time, which
	would definitely be useful, but that'd be kinda tricky to do since these
	are all just, global variables, so for now you're stuck with one at a
	time)