Super Homebrew War

Moderator: Moderators

User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Super Homebrew War

Post by gauauu »

Thanks to Glutock, surt, Gradual Games, NovaSquirrel, Sly Dog Studios, Brad Smith, E.B.D Holland, Chris Cacciatore, Julius Riecke, Khan Games, Spoony Bard Productions, Antoine Fantys, Doug Fraker, Toggle Switch, Frakengraphics, Dullahan Software, The Mojon Twins, M-Tee, Lukasz Kur, Orab Games, Pubby, Morphcat games, and Retrotainment Games....

Here's my entry for this year, Super Homebrew War.
credits.png
homebrewWar.png
1-4 players can use characters from many other NES homebrew games, and will duke it out to see who's the best.

Play on one of 8 different homebrew-inspired arenas.

The game is Mario-style controls:
A to jump
B to dash and to use items
Down+A to jump down through one-way platforms

Jump on heads to kill each other, or get items from ! blocks, and press B to attack with them.


Items:
- Twin Dragons Pepper (lets you breathe fire)
- Mad Wizard Lightning
- Study Hall Paper Airplane
- Bat Puncher Punch
- Nebs n Debs Crystal (lets you do the Nebs n' Debs dash)
- Robo-Ninja slam (press B in the air to slam to the ground quickly)
- Micro Mages Star (swaps positions of all characters)
- Clock (briefly freezes opponents)


Game modes:
- Most kills -- get the most kills to win
- Survival -- you are out after you lose a certain number of lives
- Chicken -- One player is the chicken, and gains points while being a chicken. Kill the chicken to become the new chicken.
- King of the Hill -- a box will appear on-screen. Gain points by being the only player occupying the box.

Characters:
- While most characters play identically, a couple have very different control schemes. (currently just Hekl and Robo-Ninja). These will have a NES controller icon underneath them on the character select screen to remind you. These characters may be significantly harder to use, and completely unbalanced.
- My kids got interested, so they are also in the game, designed by themselves.
- Roster is: Dinky, Nomolos, Nova, Lizard, Hekl, Spaceman (from Spook-o-tron), Capt Roast, Sick Man (from Study Hall), Nebs n Debs, Eskimo Bob, O (from Star Evil), Rekt guy, Honey, Blue, Lala, Micro Mage, Kaylee, Donny, Robo-Ninja, and my 3 kids


CPU:
- I have CPU players so you can play single-player, BUT the CPU is terrible at game modes other than Most Kills. You'll want other humans for those game modes.

I've still got some testing to do, a few bugs to fix, and a few characters to add, but it's pretty close to finished.

Edit: added Lala the Magical, fixed Nova sprite errors.
Edit 10/21: posted a new build with bug tweaks, added Kaylee from Cowlitz Gamers 2nd Adventure, O from Star Evil, a mage from Micro Mages, and 2 new maps (Tailgate Party and Micro Mages)
Edit 11/6: posted a new build with Donny from Haunted Halloween, palette swaps for duplicate characters, and various bug fixes.
Edit 11/21: posted a new build that fixes a bug which caused Hekl to get stuck in the air
Edit 1/4: minor bug fix
Attachments
super-homebrew-war.20190104.f51419a1114adeb235bb5b72f4dc6eec9cac57c2.nes.zip
2019-01-04 bug fix
(31.14 KiB) Downloaded 945 times
super-homebrew-war.20181121.08396376f904ed7bd9eedbcc705f9ba36b17d256.nes.zip
2018-11-21
(31.02 KiB) Downloaded 697 times
super-homebrew-war.20181108.e898462e02b05403715ce3b593bf9b1176d173d7.nes.zip
2018-11-08
(31.02 KiB) Downloaded 692 times
Last edited by gauauu on Fri Jan 04, 2019 12:48 pm, edited 8 times in total.
8bitMicroGuy
Posts: 314
Joined: Sun Mar 08, 2015 12:23 pm
Location: Croatia

Re: Super Homebrew War

Post by 8bitMicroGuy »

Woooow XD this reminds me of an old idea that I had in my mind about a Smash-like NES game, but I couldn't make it because it was too low level for me. I was concerned about the pallettes issue since every character would take one sprite pallette which would ultimately take all 4 spaces. And I was also concerned about the 8 sprites per scanline issue. Like, what if you have 4 players next to each other and one of them fires a projectile? You'll surely get flickering! So how do you manage to fix that?
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Super Homebrew War

Post by gauauu »

8bitMicroGuy wrote:Woooow XD this reminds me of an old idea that I had in my mind about a Smash-like NES game, but I couldn't make it because it was too low level for me. I was concerned about the pallettes issue since every character would take one sprite pallette which would ultimately take all 4 spaces.
This is true, and I had to work around that a bit. I had to force some things to be background tiles when I'd rather they were sprites (like not-yet-collected items), to work around palette limitations.
And I was also concerned about the 8 sprites per scanline issue. Like, what if you have 4 players next to each other and one of them fires a projectile? You'll surely get flickering! So how do you manage to fix that?
Yeah, the flicker was a big concern of mine. Particularly because a few characters are 3 sprites wide. But it really didn't turn out to be too big of an issue:

First, there's enough vertical motion in the game (and the game design encourages this), that you don't often have 4 players next to each other for very long at a time. Someone is generally either dodging upward or downward, or is dead. You get a few moments where too many sprites are aligned, but not as many as you might think. Unlike traditional fighters where you spend a lot of time standing on the ground attacking each other, players in this game bob and bounce all over the place, since the primary method for killing each other is landing on someone's head.

Second, with OAM cycling, the occasional short bits of flicker just aren't all that bad. At least, that's my hope. It's one of the questions I keep asking to folks who test it, and it hasn't seemed to be enough to bother most people.
dullahan
Posts: 96
Joined: Mon Dec 07, 2009 11:08 am
Location: USA

Re: Super Homebrew War

Post by dullahan »

Well done! That's great your kids got involved :)
calima
Posts: 1745
Joined: Tue Oct 06, 2015 10:16 am

Re: Super Homebrew War

Post by calima »

The "NES Smash" already exists, no? Super Tilt Bro
Rahsennor
Posts: 479
Joined: Thu Aug 20, 2015 3:09 am

Re: Super Homebrew War

Post by Rahsennor »

First response:

:shock:

:D

:twisted:

Second response:

The AI is a little light on the I, and only ever beat me because it's clearly not playing by the same rules I am. In particular, it successfully made the paper plane the most obnoxiously boring weapon I've seen in a long time. But good on you for including one at all.

Anything else I was going to say has been drowned out by the wondrous sight of Captain Roast meting out boxing-glove-shaped justice once more.
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Super Homebrew War

Post by gauauu »

calima wrote:The "NES Smash" already exists, no? Super Tilt Bro
Absolutely. Tilt Bros is a much more accurate attempt of translating the actual gameplay and fighting mechanics of Smash Bros. Roger Bidon did a good job of that, and I'm not even attempting to do that better than he did. Really, I was inspired more by an open-source PC game called Super Mario War, which I took most of the core gameplay mechanics from.

rahsennor wrote: The AI is a little light on the I, and only ever beat me because it's clearly not playing by the same rules I am
Yeah, the AI is terrible. (Which is why I let it cheat) It's really just there so people without other players around can at least try out how the game is supposed to work.
Rahsennor
Posts: 479
Joined: Thu Aug 20, 2015 3:09 am

Re: Super Homebrew War

Post by Rahsennor »

gauauu wrote:Yeah, the AI is terrible. (Which is why I let it cheat) It's really just there so people without other players around can at least try out how the game is supposed to work.
It's better than nothing, which makes it better than the vast majority of NES games. And it actually does a decent job of avoiding getting stomped, which surprised me. It's just that AI happens to be one of my favourite subjects (and pet peeves about modern games, which have no excuse).

If you have time/room, you could add some simple hints to the map: "if inside this block and falling, go left/right", "if inside this block and running left/right, press jump", etcetera. That should help stop the chain-suicides, at least.
gauauu wrote:Really, I was inspired more by an open-source PC game called Super Mario War, which I took most of the core gameplay mechanics from.
That's exactly what I thought when I saw the thread title, and what I found was exactly what I was hoping for. :beer: :D
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Super Homebrew War

Post by gauauu »

Rahsennor wrote: If you have time/room, you could add some simple hints to the map: "if inside this block and falling, go left/right", "if inside this block and running left/right, press jump", etcetera. That should help stop the chain-suicides, at least.
Yeah, that was my original plan. Then I was happily surprised that my almost-entirely-random AI was actually moderately playable, and I called that "good enough for now". I may or may not revisit it and improve it. Probably depends on how many other features/characters/bugs end up coming up last minute.
Rahsennor wrote:
gauauu wrote:Really, I was inspired more by an open-source PC game called Super Mario War, which I took most of the core gameplay mechanics from.
That's exactly what I thought when I saw the thread title, and what I found was exactly what I was hoping for. :beer: :D
Excellent! It seems most people I mention it to have never heard of it.
User avatar
olddb
Posts: 188
Joined: Thu Oct 26, 2017 12:29 pm
Contact:

Re: Super Homebrew War

Post by olddb »

Awesome idea. Will play as soon as I can.
...
Erockbrox
Posts: 397
Joined: Sun Nov 23, 2014 12:16 pm

Re: Super Homebrew War

Post by Erockbrox »

Are you the developer who made that GBA homebrew that piko sells?

BTW great idea for a game. I honestly want to make a similar game but will all NES characters ever made. Each one having their own unique abilities from their original games.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Super Homebrew War

Post by tokumaru »

Erockbrox wrote:I honestly want to make a similar game but will all NES characters ever made.
Considering that there are around 700 licensed NES games, each of them with several characters, I think this is going to keep you busy for a while.

BTW, haven't had a chance to play this yet, but it looks cool!
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Super Homebrew War

Post by gauauu »

Erockbrox wrote:Are you the developer who made that GBA homebrew that piko sells?
Anguna, yup, that's me. (You can get my Atari 2600 port of it from AtariAge also!)
8bitMicroGuy
Posts: 314
Joined: Sun Mar 08, 2015 12:23 pm
Location: Croatia

Re: Super Homebrew War

Post by 8bitMicroGuy »

This is amazing... I'm having so much fun! Now I have a fun game to play with my friends and which isn't a copyright issue like Super Mario War for example.

However, it might be a copyright issue since Nova the Squirrel NES game is licensed under the GPL license while some other game characters might be under an incompatible license. I suggest you ask the characters' owners so that we all negotiate the license. If I ever make an NES ROM with my characters, I'd never allow it to be under some viral copyleft license like ShareAlike or GPL because that would legally allow people to make cringy impure things of my characters. So I suggest that your game is licensed under a permissive license if it's going to be open-source at all. It's commonly known among the "OC do not steal" kind of culture to use BSD-like licenses. Also, GPL'd games, if Let's Played, will infect (GPL-ify) the Let's Play videos. No way am I gonna release my own voice in GPL so that people manipulate it with legal permission against me. I might be paranoid, but I'm just extrapolating from the history which repeats if it's not extrapolated from as well as the Murphy's Law.

I have some suggestions for the game:

As I was trying to make games like this where you play tag and stuff, I'd love it if you could add the Tag feature. Whoever has the tag, they have "IT" above their head so that it's known that they're it. And if the time expires, an OVER9000 lbs crate falls onto their head XD which was an inside joke between me and a friend of mine from 2009 when we were making such games. Kinda like in Crash Bash.

You could also add the feature to modify the rules slightly. For example, you could make it so that you get negative points if you kill yourself by falling onto a hazard or by getting hit by your own weapon. Or a life counting mode where you steal lives from others. If you kill someone, they lose a life and you get that life. Everyone starts with 10 and the game ends when only one player is left with more than 0 lives.

One thing that was funny is how I'd respawn from the air and hit someone on the head XD I think that that's a bit more based on luck rather than on skill. Someone could be dying like that constantly and only get points by doing that.

The CPU plays kinda good, but it's hillarious when a CPU player collects a Clock powerup and then doesn't kill anyone except itself by someone's projectile XD you could have a little code modifier that says that if a CPU player has a clock, all of the CPU AI processing power goes only towards that one player and their mission is to avoid projectiles and hazards while jumping on everyone else's heads. That would be the simplest job for an AI since all of the opponents are stationary at the time so there's no need for dynamic recalculation of pathfinding and other complicated things. (sidememe: I wonder if using the Clock powerup would save a console's battery life if this game ran on some portable FPGA-based NES)

Also, I was thinking if this game could be more than just an NES game. What if it was a cross-platform game running on an emulator written in a crossplatform library? Kinda like how Nintendo uses Virtual Console except that your game would not even look like if it was run by an emulator; instead, your game's ROM will communicate with the emulator by using fictional registers that don't exist on the actual NES hardware. That way it interfaces with the emulator where you can choose how to set up the keyboard/touchscreen/joystick settings as well as the video settings and filters for the emulator, but through the GUI which is inside of the game. That way the game could be portable to any platform!
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Super Homebrew War

Post by gauauu »

Thanks for the feedback!
8bitMicroGuy wrote: However, it might be a copyright issue since Nova the Squirrel NES game is licensed under the GPL license while some other game characters might be under an incompatible license. I suggest you ask the characters' owners so that we all negotiate the license.
Yeah, it's important to me that people are happy with their characters being the game. I've contacted each character's owner in advance before including them. There's been a couple characters I wanted to use, but haven't heard back from, so I won't use them until then.

As I was trying to make games like this where you play tag and stuff, I'd love it if you could add the Tag feature.


I thought about doing a tag mode, but it's probably not going to make the cut. The closest thing is the chicken mode.
You could also add the feature to modify the rules slightly. For example, you could make it so that you get negative points if you kill yourself by falling onto a hazard or by getting hit by your own weapon. Or a life counting mode where you steal lives from others. If you kill someone, they lose a life and you get that life. Everyone starts with 10 and the game ends when only one player is left with more than 0 lives.
Really, making intuitive menus for all that stuff is one of the more time-consuming parts of the game. There's "survival" mode which is as close as we'll get to what you're suggesting.
One thing that was funny is how I'd respawn from the air and hit someone on the head XD I think that that's a bit more based on luck rather than on skill. Someone could be dying like that constantly and only get points by doing that.
Yeah, that's a problem. I'm going to be posting an updated build soon with a warning to help you avoid that situation. It won't help against the stupid CPU player though.
The CPU plays kinda good, but it's hillarious when a CPU player collects a Clock powerup and then doesn't kill anyone except itself by someone's projectile XD you could have a little code modifier that says that if a CPU player has a clock, all of the CPU AI processing power goes only towards that one player and their mission is to avoid projectiles and hazards while jumping on everyone else's heads. That would be the simplest job for an AI since all of the opponents are stationary at the time so there's no need for dynamic recalculation of pathfinding and other complicated things.
The hard part is just writing the AI code to traverse the battlefield. It's intuitive for a human to see the layout, and make the right jumps. Making an AI to do that is a lot more work, even if things are stationary.
Also, I was thinking if this game could be more than just an NES game. What if it was a cross-platform game running on an emulator written in a crossplatform library?
Hahah, I can barely find time to finish this game as it is :beer:
Post Reply