toffwee's blog

deconstructed fighter retrospective

paosditygasfdio;yhtglkadfhtl;q3h4poghdfc

this post doesn't really have much useful information on it but i want to log the creation of this game for prosperity, pls bear with me!

i think fighting games rock, but it's 1v1 modes haven't diverged that far from the main formula discovered in street fighter 2

raph koster made a really interesting point that fighters are essentially rock/paper/scissors played on an axis

https://youtu.be/zyVTxGpEO30?t=1430

playing fighters since forever, this rock/paper/scissors analogy is totally true. pretty much every option has a well-defined way to beat it - you can anti-air jumps, you can jab slow overheads, etc. all that matters is having the gamesense to know what's coming out at what time and being proactive, or being fast enough to be reactive. it's an environment where you don't have time to sit and meditate on your response to an opponent's actions, so your body is constantly bordering conscious and subconscious operation which means you - human being - will play out predefined patterns, and your opponent can adjust their behaviour accordingly and exploit those patterns

there's been some really cool fighting game deconstructions, e.g. divekick, where you get literally 2 moves. its a distillation of the last few tense seconds of a match where both players are at 1hp

it essentially becomes completely reaction, mindgames, timing, and playing around each character's unique mechanic. this game made it super far, having regular tournaments and pro players, so this was a super successful experiment too

so is it possible to make a new deconstruction that removes intense timing-based execution and combos, but keeps the realtime mindgames?

my stoupid game

i made a fighter that is quite literally rock/paper/scissors

you have 3 moves: punch, parry, and grab

punch beats grab, grab beats parry, parry beats punch. this is the RPS, and the axis is the 2 dimensions of movement

jumping in this game is a huge commitment. you can't change your direction during a jump, but you can still attack as a counter to a ground attack

one thing i wanted is an idea that comes from smash where characters can get knocked out very very early. i wanted that same vibe, but sticking to the ground, so i made the walls KO your opponent if you get pushed into them. rather than decrease health or increase knockback percent, all attacks push your opponent back closer to this wall, where they can take risk to get back to safety, or stay in this high risk spot

playtesting the finished game!!!

the majority of the work for this game was the shift to 3D (!!! which is hard when you're working in a framework built for 2D lol), and a refactor of the rollback netcode container. the rollback rewrite was to fix an off-by-one issue. turns out that happened due to some internal game state not being serialized correctly but i halved the lines of code of the rollback container!! so big win regardless

big thanks to ceroribi for playtesting this with me & giving feedback!

i was surprised that the game already felt pretty good. on paper it feels like it should constantly be a game of random chance, but it's very clear that you can get good at this game and be better than the opponent, which is great. the slow-paced deliberate (and clunky) feeling is great. it rewards patience and mindgames over quick reflexes, execution and button-mashing. if you press random buttons, you will very easily get punished for it

the sumo-style works well. you can safely control centre stage, or hover around a wall to get quick throw kills while also being at a huge risk. you get used to the clunkiness, but it is missing some simple game-feely stuff, like vfx, sound, and animations that aren't terrible(!!!). i feel like if this game was given a budget, it could be a good teeny argument-settler

feedback

  1. remove blocking - the game has traditional blocking where if you hold "back", you don't get hurt. this sucked, we already have a defensive option of parrying. blocking is too little risk

  2. remove crouch punching - crouching punch isn't worth anything, the focus definitely wasn't on mixing up high/lows. instead we can turn this crouch punch into an uppercut anti-air

  3. air parry and air grab - as a counter to the uppercut anti-air (and also an extension to the sorta limited options you have while you're airborne), we should be able to both parry and grab while in the air

  4. you should be able to dash while in the air

  5. charged attacks! if you anticipate your opponent reacting with a parry to your punch, you can charge it and wait for the parry to end to release it. if ur opponent anticipates your charge, they can grab you or wait out the parry. like smash!

im pretty happy with this project, which is nice, since partway through i was certain this idea didn't work at all and was pretty bummed about my efforts. im still unsure, but friends playing it and having a nice time was really reassuring

it's still not quite what im looking for, but i may come back to this and refine this idea some day


0 cools!! 🩷

Go back home