Hi all! Happy C3!
For C3 I decided to update a sprite of mine that was very popular at release, the NPC sprite. I've seen the NPC used in a lot of hacks, and a lot of people have done neat things with them. I was never all that happy with the NPC sprite to begin with, but it turns out there are a lot of people who wanted to use it. After InvisibleCoinBlock updated the sprite, I wanted to do something to make the NPC more flexible and versatile, with many more options. So, I started on a project to make the latest version.
The new version has many improvements over my original draft. Minor things have been tweaked (to match how the sprites currently work in SMTKO) such as actually playing a sound when spoken to and having a slightly slower animation speed to match their movement.
The sprites themselves have also been upgraded as far as movement and customization. The original sprites either stood still or walked back and forth. The new version will actually stop for a duration before turning around and walking the other direction, which is fully customizable. It's also easier to control their speed and some of the other settings. They even have new options like staying on ledges, and their original spawn movement is easier to control, while the originals had a weird "always walk right" behavior which I never liked.
Of course, the biggest improvement is with the way they handle messages. The original sprites only supported two messages plus the Yoshi message (which could only be displayed once). The new version relies on X placement, the Extra Info bit, and the palette. This means that you can have 16 unique messages just with X placement, doubled with up to 32 with the Extra Info bit. Because they're based on the palette, you can even have RANDOM messages (16 per) by ExAnimating the palette, and have external factors that change the palettes so the NPCs read from different levels. And since it's tied to palette, you can just enter a pipe or door and have another 32 messages possible. The biggest advantage is you can do this with just one config file!
Yes, 32 messages per level including random messages with ONE config. Plus, the NPCs can now display two messages at a time, in case you need extra long text!
But enough talking, have a video! Again, all but the one who displays two messages is done with just one config file!
<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/wkwb4bbEs9k&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/wkwb4bbEs9k&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>
Grab it here:
EDIT: Since I'm going to continue working on this sprite, feel free to suggest features you want for the next version. So far, the following things are on my to-do list. Strikethrough means "done."
* Option to have the NPC follow Mario
* Option to have the NPC walk in a straight line without stopping
* Option to have the NPC fly, hover, or hop
* Option to have the NPC give Mario power-ups
* Option to have the NPC talk to Mario without pressing a button
* Option to have the NPC warp Mario somewhere else
* Option to "wander" or walk and turn randomly
I'll probably also make a sprite that makes it easy to control the NPCs by changing their text (the palette) or other options about the NPCs.