Free Animation for Your NES Project

A place for your artistic side. Discuss techniques and tools for pixel art on the NES, GBC, or similar platforms.

Moderator: Moderators

User avatar
Dwedit
Posts: 4921
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: Free Animation for Your NES Project

Post by Dwedit »

The most tiles updated per frame in any NTSC NES game is the Snake Pit level in Battletoads. 16 tiles for Rash, 16 tiles for Zitz, and 24 tiles for the snake animations, diagonal scrolling, and a top status bar that begins 31 scanlines into the screen. The patterns for the snakes are simple, so multiple consecutive values can be stored without reloading anything.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
User avatar
darryl.revok
Posts: 520
Joined: Sat Jul 25, 2015 1:22 pm

Re: Free Animation for Your NES Project

Post by darryl.revok »

I still think the tile update portion of that idea is possible but as Bregalad mentioned, the palette aspects make it more graphically limiting than other options. Every character and background would have to share the same palette, per level.

Also, I don't think it would take both CHR-ROM and CHR-RAM. I believe I mistakenly said something about drawing to CHR-RAM from CHR-ROM but I meant PRG-ROM. I'm sure the program itself wouldn't have to be too big. Graphics on the other hand, think of how many KB of tiles per character you want. BG characters will have to be stored both ways, unless you reverse in CHR-RAM. I was thinking like a bank-swappable MMC3 with CHR-ROM replaced with large CHR-RAM.

Anyway, you're right though that the idea I had would be too limiting to work. What do you need help with, just graphics? I've done some work with scanline splits but I'm sure it's not as good as what you'd program.

Edit: Just a couple typos
Last edited by darryl.revok on Mon Jan 18, 2016 8:10 pm, edited 1 time in total.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Free Animation for Your NES Project

Post by tokumaru »

For fighting games on the NES, I'm a fan of the idea of having one character use the background and the other use sprites. If they're always facing each other, like is common in fighting games, you don't even have to store flipped versions of the graphics, you can simply switch which character uses sprites and which uses the background as necessary.

The biggest drawback of this method is that the background has to be blank anywhere the fighters can go. You could maybe decorate that flat area a bit with sprites so it doesn't look so dull, being careful to never use more than 1 or 2 sprites per scanline, as any more than that would cancel the advantages of having one of the fighters use the background.
User avatar
darryl.revok
Posts: 520
Joined: Sat Jul 25, 2015 1:22 pm

Re: Free Animation for Your NES Project

Post by darryl.revok »

One thing I was thinking about is that all projectile attacks will have to be sprites, since they can't move horizontally at a different speed than the BG character. That might make it tough to have sprites left over to decorate the backgrounds.

Multiple projectile attacks on the screen will have to flicker a little, but i don't think that's bad for projectiles, and we can leave the ones that define the hitbox so that a player never loses track of that with their eyes.

I would personally treat the background character as an object, so collision testing would be the same with the sprite object. Then offset the scroll of his background strip based on his object's X/Y position.
Sik
Posts: 1589
Joined: Thu Aug 12, 2010 3:43 am

Re: Free Animation for Your NES Project

Post by Sik »

tokumaru wrote:If they're always facing each other, like is common in fighting games, you don't even have to store flipped versions of the graphics, you can simply switch which character uses sprites and which uses the background as necessary.
Actually there's an awfully common situation in fighting games where both players can be facing the same way: when one player jumps above the other, and the latter is still performing a move when the first one lands (players don't turn around until they're done performing their moves). Until the second player is done with that move, both players will end up facing the same way.
User avatar
Bregalad
Posts: 8055
Joined: Fri Nov 12, 2004 2:49 pm
Location: Divonne-les-bains, France

Re: Free Animation for Your NES Project

Post by Bregalad »

darryl.revok wrote: Also, I don't think it would take both CHR-ROM and CHR-RAM. I believe I mistakenly said something about drawing to CHR-RAM from CHR-ROM but I meant PRG-ROM.
No, it's not about your typo. You'll admit that your idea required CHR-RAM to scroll a (or both) fighter(s) while having a background there. However it also might need CHR-ROM in order to get new animations in fastly for the sprite part of the fighters. Anyways this is overly complicated and a bad idea in general.

For fighting games on the NES, I'm a fan of the idea of having one character use the background and the other use sprites.
Yes, the problem is that since this technical feature is the only reason we're interested in the project at all, we'll loose interest as soon as the game "engine" is done, and will never get a fully functional game. Once again. That's why I was more aiming at a tech-demo anyway, leaving the possibility to get a full game open.
I would personally treat the background character as an object, so collision testing would be the same with the sprite object. Then offset the scroll of his background strip based on his object's X/Y position.
That seemed obvious from the very start to me.
What do you need help with, just graphics?
Well yeah, *just* graphics. I am not a very skilled artist, and designing/animating 4x8 or 5x10 tiles sprites is harder than the usual 4x2 we're more used to. I mentionned that project because it's the only project where I needed animation done. I'm sorry for completely highjacking your thread.
Actually there's an awfully common situation in fighting games where both players can be facing the same way: when one player jumps above the other, and the latter is still performing a move when the first one lands (players don't turn around until they're done performing their moves). Until the second player is done with that move, both players will end up facing the same way.
Oh no! I guess you're right. We'd have to somehow get around this.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Free Animation for Your NES Project

Post by tokumaru »

Hum... I hadn't considered this case when both characters are briefly facing the same way. If this is an original game you have the freedom to cut any ongoing moves short and have the character immediately turn if the other one jumps over their head.
Sik
Posts: 1589
Joined: Thu Aug 12, 2010 3:43 am

Re: Free Animation for Your NES Project

Post by Sik »

Wouldn't that feel odd when playing, though?

Maybe just duplicate all of CHR-ROM, with the second half having every tile flipped. Then when somebody complains that it'd have been unfeasible, just say that back in the day it wouldn't have been duplicated and the MSB of the address was used to flip the tiles instead ;)
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Free Animation for Your NES Project

Post by tokumaru »

I don't think it'd feel odd... Odd would be someone in real life continuing to perform an attack on nothing after realizing the opponent jumped over their head.
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Free Animation for Your NES Project

Post by tepples »

Once you're in the follow-through of an attack, though, it's hard to pull out of it.
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Free Animation for Your NES Project

Post by rainwarrior »

You're doing all this to avoid doubling the needed CHR-ROM space for flipped background version. As an alternative you could: half the number of characters, half the required frames of animation, or half the character size (or any partial combination of these things).

If you used bankswitched CHR-RAM big enough to hold all needed tiles for a fight, you could at least save on ROM space by flipping in software on load.

You could also build a mapper that knows how to swizzle CHR data lines. Punch Out got a custom mapper for its specific large-character needs; how about your game?

It's really a question of which of these options seems best for your situation. There's no actual situation being discussed here AFAIK, so I'm tempted to use one of these ¯\_(ツ)_/¯ but maybe you enjoy the debate, so don't mind me.
Sik
Posts: 1589
Joined: Thu Aug 12, 2010 3:43 am

Re: Free Animation for Your NES Project

Post by Sik »

rainwarrior wrote:You're doing all this to avoid doubling the needed CHR-ROM space for flipped background version. As an alternative you could: half the number of characters, half the required frames of animation, or half the character size (or any partial combination of these things).
But then it's doubled again in comparison to the new requirements, so we're back at complaining about the same thing. Unless there's some reference CHR-ROM size to compare against, that kind of suggestions don't really work.
rainwarrior wrote:You could also build a mapper that knows how to swizzle CHR data lines.
Yeah, this is what I suggested (doubling all graphics was just a way to fake it without custom homebrew chips)...
rainwarrior wrote:Punch Out got a custom mapper for its specific large-character needs; how about your game?
...and screw that turns out that you could just argue Nintendo did it.
User avatar
Drew Sebastino
Formerly Espozo
Posts: 3496
Joined: Mon Sep 15, 2014 4:35 pm
Location: Richmond, Virginia

Re: Free Animation for Your NES Project

Post by Drew Sebastino »

Who even cares about if it's what they would have done then? If I ever get around to really making an SNES game, memory is going to be my last concern, because memory is cheap now. If many developers just added more memory to their cartridges, we would have seen much more accurate ports on these older systems, and I thought that it's cool to show off what these systems are capable of without the unnecessary constraints like that.
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Free Animation for Your NES Project

Post by rainwarrior »

Sik wrote:Unless there's some reference CHR-ROM size to compare against, that kind of suggestions don't really work.
The entire situation is hypothetical, so if you want to argue what "really" works I'm just going to...
rainwarrior wrote:¯\_(ツ)_/¯
User avatar
Drew Sebastino
Formerly Espozo
Posts: 3496
Joined: Mon Sep 15, 2014 4:35 pm
Location: Richmond, Virginia

Re: Free Animation for Your NES Project

Post by Drew Sebastino »

¯\_(tsu)_/¯
Post Reply