Name: | NPCs v4.2 |
Author: | wye |
Added: | |
Version History: | View |
Tool: | PIXI |
Type: | Standard |
Dynamic: | No |
Disassembly: | No |
Includes GFX: | Yes |
Description: | This is a sprite that doesn't hurt the player and doesn't interact with any other sprites. It can stay still, walk around, or jump, and also display a message if the player presses a button while touching it. It's compatible with SMW's regular message boxes (can use any message in any level and show up to two at once), the Message Box Expansion patch, and also the VWF Dialogues patch. The movement, graphics and message behavior are highly customizable. All the options are in the extra bytes (of which it uses all 12). This means you only need to have one entry in your sprite list and can fully customize it as you place it in your level! All the customization options are explained in HOW_TO_USE.html, so please refer to that. It also has a user-friendly configuration tool. -------------------- Changelog (see changelog.txt for details): - 2022-01-24: added options for 16x16 and 32x32 sprites, improved solid sprite handling, added compatibility with the upcoming version of the VWF Dialogues patch, and added other minor options - 2022-01-07: fixed some issues people have reported |
Tags: | customizable lorom message npc npcs pacifist sa-1 vwf vwf dialogues |
Comments: | 28 (jump to comments) |
Rating: |
Download
70.82 KiB | 1,485 downloads
Comments (28)
You can use this sprite.
- Lunar Magic v3.31
- SA-1 Pack v1.40
- PIXI v1.32
- BSNES v115
In addition to fixing a missing SA-1 conversion which has been mentioned below, I also fixed a bug where a solid NPC will teleport you to the right should one be next to a screen border and you're touching an NPC on the right side.I did not moderate compatibility with Message Box Expansion nor VWF Dialogues. Nonetheless, it is a viable update to an already impressive sprite.
It should be noted that a fast walking speed results in solid NPCs clipping through the player, though at that speed, you shouldn't need a solid sprite anyway. In addition, a chasing 32x32 NPC will never stop at the player so it's better to not have all of these option enabled unless you extend the range for said size.
Within the HTML file, I'd recommend you to modify the message option because setting up a VWF message gets a bit difficult. Right now, you'd have to select an option to show a message before you can select a VWF message. With Message Box Expansion, you don't have to do this (granted, it installs its own message box hander but still) so no idea why you didn't do the same with VWF Dialogues.
By the way, they get affected by a silver P-Switch but that one is easy to fix (I didn't bother to fix that one because the user can easily fix it).
OH
- HOW_TO_USE.html doesn't let you change the GFX location when the sprite is set to be stationary
- the sprite always uses palette E, regardless of the palette setting, when talking to it or it is offscreen (possibly related to VWF dialogs?)
- find some user-friendly way to allow for dimensions other than 16x32
- NPCs hurt Yoshi
I don't currently have time to spend on this, but anyone is free to tackle these issues and submit an update.
- The tool will not always output what you want. I generated a stationary sprite, instead it gives me an erratic walking sprite. The remedy is either to reset the tool and hope it works correctly or actually learn the extra bits; the latter of which being the favorable option because then you have total control.
Speaking of, the tool isn't completely friendly; for one it won't allow you to set the tile map unless you actually decide for it to walk.
- Random Palette Changes; so it could just be me, but testing on a clean rom, I have noticed that once the sprite moves one pixel off screen, it will change its palette from F to E. Actually from any other palette to E. Don't really know the conditions, but this is my Bytes for anybody wanting to troubleshoot: "40 00 00 00 80 00 08 F7 08 04 50 20"
There might be other bugs, but so far this is all I've run into. Over all a well done sprite. A small nitpick, but I really do not like how the sprite bops "downwards" instead of upwards when it walks. Though I've been trained on how to walk level (no bopping), most people when they walk tend to move upwards a bit, not downwards. It's worse given if you have a graphics file that actually has the bopping in design, but the sprite moves it downwards one pixel anyway, making the sprite move eerily level or "still animated" which just looks very lazy and off to me.
I have read that but i don't understand very well EXTRABYTES and which numbers to put in the extension lunar magic if there wasn't any HOW TO USE html i would have no idea what to put.
You can change the graphics and add more graphics whenever you want. You can use HOW_TO_USE.html to select which of the graphics the sprite uses.
If you use any palette the sprite always changes to palette E temporarily while showing messages, and just return to your normal palette when the message ends.
But this only occurs when using VWF Dialogues.
• Lunar Magic 3.21
• SA-1 Pack v1.32
• PIXI v1.32
• Snes9x v1.60
• bsnes plus v05
Also tested with:
• Message Box Expansion
• VWF Dialogues Patch v1.2 (LoROM only)
• Asar v1.71
A marvelous sprite! The NPCs have been long overdue an overhaul, and this is the one. The ability to have any combination of behaviours per sprite makes them very flexible, and the inclusion of a tool to handle the extra byte settings makes them very easy to set up. It's also much nicer not having to modify or check the X position or palette(!) to determine the messages displayed. I can definitely see this sprite's usage becoming more common now the insertion process is far more user-friendly.
Unfortunately I was not able to test it with VWF Dialogues on SA-1, as the two patches have been incompatible since SA-1 v1.31.
There were a few minor bugs, which I went ahead and fixed:
- The message sound would not play regardless of the setting if the Message Box Expansion or VWF Dialogues were installed.
- The "give once" setting did not work for powerup option 2. The !PowerupGivenFlag was set to 2, which got ANDed with #$01, tricking the code into believing it was never set. As a hacky fix, I just set the !PowerupGivenFlag to #$01 for all 3 powerup types when the "give once" setting is set.
- The Flower and Feather were swapped for the "give powerup" setting. I was inclined to believe the error was actually swapped text in the tool rather than swapped values in the .asm (since Mushroom/Feather/Flower is the order in SMW), so I fixed this for the HTML rather than the .asm.
I also converted the .cfg to .json and added LM graphic display icons for the extra bit clear/set, as well as putting them in a .json list. The .cfg is included too if users wish to use that.
5 stars for you my good sir
Waiting long time for something like this!
Thank you very much!!!
sometimes it seems that the values from the tool aren't correct or not updated when copied in LMs extention field...