News:

Don't forget to visit the main site! There's lots of helpful docs, patches, and more!

Main Menu

[SM][ASM]Adding items?

Started by FreeSci, March 20, 2014, 02:09:00 PM

Previous topic - Next topic

FreeSci

It might be too advanced for me, but how do you add a new item into the game?

Like, I know how to merge the items (like springball and hi-jump) but actually adding a new one still remains a question i would like to know the answer to.
It's not needed or anything, I would just like to know and I couldn't find that.

Sorry for bugging you!

DSO

1. Figure out what you want your new item to do.
2. Select a bit in RAM somewhere that the item activates (The RAM Samus currently uses for suit upgrades has 5 unused bits), make sure that it's RAM that is saved to SRAM, else you'll lose the item after a save/load
3. Find a good hijack point in the main game running engine, use it to check that RAM bit and whatever button presses or etc. you need, and if conditions are met run the item's code
4. Create a PLM and text box that activates the item bit your item uses so people can collect the item

FreeSci

Thanks! That's exactly what I wanted!

P.JBoy

You'll probably wanna do some edits on the equipment screen too, which isn't easy. You'll have to go through the effort of learning how PLMs work and writing new graphics
...

FreeSci

#4
Am I doing it right?

I looked up here:
QuoteBlack Falcon:
82652 20 to 4A - Disables mockball completely, but without any side effects afaik.

Basically instead of setting 7E:0B20 to 0, which is an unknown RAM address that doesn't seem to affect things much, it sets 7E:0B4A to 0 , causing a the momentum to be reset somehow, even though Kej wrote 0 would increase it:

Quote from: RAM map
"7E:0B4A - 7E:0B4B    Something to do with momentum and speed. Cause of mockball. (0 = increasing momentum, !0(always 1?) = decreasing momentum)"

EDIT: WTF! I didn't create a new topic! Someone move it, I don't have the knowledge...

Anyway, possible idea would be hijacking the spot and writing some code for item checks, and voila, mockball item. :P

So I converted 82652 into $90:A652 and I'm going to use it as the hijack. Is that correct?

Thanks in advance!

EDIT: WTF! I didn't create a new topic for that! Someone move it please, I don't have the knowledge...