News:

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

Main Menu

Changing Default Weapon & Properties (Newb)

Started by Daggoth, September 05, 2017, 01:11:40 AM

Previous topic - Next topic

Daggoth

Hi Folks,

I'm brand new to super metroid editing, and the project I have in mind relies heavily on being able to make the grapple beam the default starting weapon. I also would like to change its stats such as reach and damage output. I've been looking for info on how to achieve this, and haven't found anything so far. Where can I start? Thanks.

P.JBoy

Grapple beam is unfortunately one of the most complex pieces of the game. The damage dealt by grapple beam I think is calculated by the grapple reaction of an enemy definition. Extending the grapple beam is completely out of scope though
...

Daggoth

I'm guessing extending or shortening the range would both be equally as difficult? I intended to shorten the range.

I have started playing with Hex, and am beginning to understand the basics of editing the Power Beam (starting weapon). What I haven't been able to do yet is replace the Power Beam with the Grappling Beam. Any advice on where to start with that? Im guessing I need at least address for all of the Grappling Beam info in Hex?

personitis

The easiest way to "remove" Power Beam in this case that I can think of is setting the check for Grapple Beam being active by making it check for the "0th" slot on the HUD (nothing is selected) instead of the 4th and making it so the player has the item from the start of the game. I feel as if something could be missing however, probably to deal with beams checking for the "0th" slot.

The RAM address $7E:09D2 checks for which HUD item is selected and $7E:90A4 handles which items Samus has acquired. Super Metroid's RAM map can be found here (the url works fine, just look bad):
http://wiki.metroidconstruction.com/doku.php?id=super:data_maps:ram_map&s[]=super&s[]=metroid&s[]=ram

P.JBoy

It's a heavily involved assembly-level task any way you look at it. If you're just started playing around with hex, this kind of change is well out of your scope I'm afraid
...

Daggoth

Hey PJ Boy, are you referring to the task of adjusting power beam, or making it a starting weapon?

I'm here to learn, and it's gotta start somewhere.

Mettyk25jigsaw

I think PJBoy is just saying that because you have just started editing super Metroid and in particular a hex editor, it is best to learn simpler tricks you can do in a hex editor to start with rather than trying to do something very complicated, simpler things you successfully do in a hex editor will lead to slightly less simpler and then again and again etc until you get to the really complicated stuff. It takes a while but might be the only way of doing it in my opinion.
   I have been using a hex editor for over 5 years and this would be beyond me at this point. And PJBoy was just saying it's a complicated piece of asm one would have to create, which means you would have to learn asm.
   My advice is start off with something simple like adding extra doors to a room on which you might need a hex editor and at the same time use one of the tutorials out there to do that, that I think would be in your capability, after that, challenge yourself with something slightly more difficult and build up, eventually you get to know how many things work and you will find that with some things you don't need a tutorial for some things, you can work it out yourself due to learning enough of the ins and out of how the data is read and displayed etc...
   Good luck with all this, I do encourage you with your hack as it is always good to see new people to start to learn to do this.
   Another bit of advice is, if you can't work something out for a long long time and you are starting to lose patience, best to leave it there, but only for a while and come back to it another time with a fresh mind, even if it is as long as a month later. A fresh mind can often make all the difference. If you want something in your hack bad enough in order to make your hack better and you can't learn how to do it for a while, this is the way to handle persistency, because we all know if you want something bad enough and you know it's good for you, it is fine to do all you can to get it, and if you want something so bad, you'll never give up until you do successfully do it right, believe me it has happened to me so many times.
   I Hope you like super Metroid as much as I do, if you do, you will have the same luck I did or better. Good luck.

PHOSPHOTiDYL

0DC714 = C9 80 00 = CMP #$0080 = length of grapple, up to #$00FF.
Going over will cause symptoms I can't explain.

That's literally the only bit I have on grapple.

Daggoth

Thanks so much for the encouragement guys. I have been doing some study of ASM, and am going to try some very basic dabbling with it tonight.

Daggoth

I was able to acquire grapple beam on start up by creating an asm tonight. Now I just need to figure out how to replace the Power Beam with this item by default.

PHOSPHOTiDYL

Check out the "brokenchargebeam" from the resource thread.
I made it so samus starts only able to fire if fully charged, until "power beam" is collected, which is just charge beam by default.

So collect charge beam, then everything is vanilla again.

Daggoth

Thanks PHOSPHO, I will check that out.

I guess I have been a bit cryptic about my long term intentions with this stuff. I would like to create a hack with a short range sabre like weapon as the main / starting weapon. I see grapple beam as a good candidate for this, especially of its range can be shortened and its damage output upped (not a ton, and maybe not from the start). The damage thing seems easy enough, but the range might be unachievable, which isn't the end of the world. I'm hoping to make it all work out and everyones input is very appreciated.

Daggoth

Hi Folks,

I have been toying with ASM's and learning a decent amount, but I am still far from capable with regards to creating content.

After poking around at patches people have made, I have decided to use a couple of patches that already exist to achieve my desire short range effect. I have been playing around with JAM's Long Beam item v1.04 patch to get very short range beam shots. I am happy with the achieved effect when lowering the range of beams, and using Plasma Beam:
http://old.metroidconstruction.com/IPS/JAMLongBeamV1.04.rar

I also really like the physics and controls in the GBA Style patch, and intend to use it as a baseline - here is the link for that one:
https://www.romhacking.net/hacks/3211/

I have been able to get these two to "work" together by first applying the GBA Patch, then adjusting the values in LongBeamTweak.asm, applying the ASM to the LongBeam.ips, then patching the already patched (GBA Patch) rom with the LongBeam IPS. It seems to work fine, until you reach the first elevator in Criteria which doesn't work, just makes Samus duck when pressing down on it.

I did some investigating, and I am guessing that is because of a conflict in Free space usage:
87A00..87A5E seems to be used by both ips patches. It is movable, and I have tried doing that through adjustments in the LongBeamTweak.asm prior to patching the LongBeam.ips but have had no luck so far.

The only thing I need from the LongBeam.ips is the shot distance reduction - I don't intend to use the Long Beam Item which comes as part of JAM's patch. I feel like I am getting fairly close with this, but am hitting a bit of a wall.

Can someone please help me to modify these beam distance values without breaking the game while using the GBA Style patch as a base? Thanks very much for any assistance you can offer!


Daggoth

In case its unclear from my previous post, I intend to give credit where due regarding the patches I am referring to above. The work you people have done is amazing!