Gopnik Tournament - fighting game tech demo

A place where you can keep others updated about your NES-related projects through screenshots, videos or information in general.
User avatar
RJM
Posts: 60
Joined: Mon Jul 27, 2020 11:56 am
Location: Rzeszów, Poland

Gopnik Tournament - fighting game tech demo

Post by RJM »

Hi all.

https://youtu.be/ndkSxligXv4
Zrzut ekranu 2025-06-21 055418.png

I'd like to share a project, to which I've already poured 700-800 hours and worked with breaks since the summer of 2022.

The Gopnik tournament is more of a tech demo than a real game, but I'm aiming at building a decent fighting game, which we lack in NES.

Try it out ( PAL only, developed on Mesen ):
gopnik.nes
For now, 1 v 1 is the only supported mode, but 1 vs CPU is in the making.
Special move cheat sheet ( F - forward, B - backward, D - down, P - punch, K - kick ):

F, F - run toward the enemy
F, F, P - dashing punch
F, F, K - dashing kick
Hold (D, B), F, P - drill
F, P ( near enemy ) - throw
B ( while being attacked ) - block
D, B ( while being attacked ) - low block

For now, I run it on sprites stripped from Konamis 1993 "TMNT Tournament", but looking to replace it with original assets.

Some features I have been working on and already introduced:
  • Advanced collision. I've spent months to get it right. The previous version was pixel-perfect, but I had to replace it with something good enough to run at a reasonable framerate. I'm quite happy with the result.
  • Single character "Dude", which now has 26 states, 29 animations consisting of 110 meta sprites ( each has hit/hurt boxes defined ), 15 different attack/move patterns.
  • Efficient input handling allowing for detecting key press combos.
  • Dynamic backgrounds, using MMC3 mid-frame horizontal scrolling.
  • Implemented all game logic regarding the character's move, i.e. screen scrolling, pushing opponent, rotation, and checking that characters respect various screen bounds.
  • Custom HUD: health bars, timer, win markers.
  • Sound.
  • I've built a custom graphical editor for creating hit/hurt boxes. It allows me to simplify setting up collisions and exporting them to C and ASM code.
  • State, animation, and movement handlers supporting custom MMC3 memory layout and bank switching. I have a nicely defined code structure, which simplifies adding new characters.
  • Spend significant time on AI. Used Mesen built-in Lua with and ran custom genetic algorithm for building the AI, running thousands of docker-based rounds. This was a total waste of time, as all AI learned was spamming a single move ;). Nevertheless, AI handlers are already in the code, ready to be populated by real code.
  • Lua-based testing environment, allows me to analyze bugs in state/animation and game logic. Very useful, as each character has 30+ game states and can react to 20+ events.
  • I've built a lot of Mesen-based scripts for debugging the player movement, animations, and input handling.
  • Runs at smooth 50 frames on PAL. No plans for NTSC support.
In my mind game is in a state, where all the basics ( excluding menus and AI ) are already in place.
With fighting games, it is quite a lot of work to get the playable 1 v 1, with a single character finished and I have it.
As I have the engine built now I enter the phase, where I need to add a LOT of content to make it a real game.
Making characters in these fighting games is the most time-consuming task ( multiple animations, complex state changes, and ensuring the right balance ).

I'm very interested in collaborating with talented pixel artists on sprites and backgrounds. The game is about different subcultures from various countries competing for the title of the best fighter: Russian gopniks, English chavs, American rednecks, Polish dres, and so on. Each one has a unique move list and artistic style matching the personality.

Also looking for some help with the music. I think 8-bit hard bass equivalent is going to match the game style well.

If contributing to such project sounds interesting, PM me or reach via email: [email protected].
You do not have the required permissions to view the files attached to this post.
User avatar
matthughson
Formerly Goose2k
Posts: 349
Joined: Wed May 13, 2020 8:31 am

Re: Gopnik Tournament - fighting game tech demo

Post by matthughson »

That looks great! Nice work!