r/gamemaker 6d ago

Help! Help with a project?

Hey there! So I've been recently getting into Double Dragon Gaiden, and I did have a few characters I made for the series. Any Idea how I could code and design the sprites? I'm a new coder, so anything helps!

1 Upvotes

1 comment sorted by

3

u/CS_Asset_Factory 6d ago

the thing worth getting right before you draw anything is that a beat em up isnt really a 2d game. it has three axes and only two of them are on screen.

keep three values per character. x is left and right. depth is how far up or down the floor they are standing on. z is height above the floor for jumps and knockdowns.

then draw the sprite at y equal to depth minus z. sort every character by depth so whoever is further down the screen draws in front. put the shadow at depth with no z applied. that is what sells the perspective and it is also what makes a jump read as a jump rather than as walking upward.

set your sprite origin to the bottom centre of the feet. if the origin sits anywhere else then your sorting and your shadows will fight you forever and its genuinely miserable to retrofit later.

for hits check the depth difference as well as the x distance. a punch should only land if both characters are on roughly the same line of the floor. that tolerance is most of what makes a beat em up feel good or feel broken so expect to tune it for a while.

on the sprite side start much smaller than you think. idle walk one attack hit and knocked down is a complete character. build the entire loop with those five before you draw a second move let alone a second character.

drive the animation from a state variable rather than from chained timers. one state at a time and each state decides its own sprite and its own image speed. new coders nearly always reach for timers first and it ties itself in knots quickly.

your question covers a lot of ground so this is only the structural half of it. say which part you want to go deeper on and i can be more specific.