1234567 ->
^^
vv
List results:
Search options:
Use \ before commas in usernames
Edit history:
InsomniaDMX: 2008-09-24 06:36:08 pm
--Lawrence of Arrakis--
That's a mouthful, innit?

My first polished public patch; and it's in a .asm format.

Don't be too alarmed, all is well. It's easy to apply and also easy to tweak. Go grab xkas v.06 from byuu's website:
http://byuu.cinnamonpirate.com/programming/

...and grab the patch:
http://users.adelphia.net/~insomniadmx/boostball.zip

Make sure you extract the entire boostball.zip file into xkas's root directory if you want to use the included batch file, and put a ROM in that directory named "SM.smc". I suggest playing around with the defines in the boostball.asm a little to get whatever kind of effects you want. Seriously, releasing it this way will give you a lot more control.

To edit the .asm file, just open in notepad or equivalent. Replace some of the values and see what happens. If, for example, you want the patch to be more concurrent with your physics changes, take advantage of the editable defines. Report any bugs you find in this thread.

The patch itself replaces the spring ball item slot and the pickup, springball is combined with hi-jump boots.




Go ahead and whine about how tough it is, but you could also look at it as a learning experience. Using a compiler isn't hard.
Thread title: 
Edit history:
aigamerDS: 2008-12-30 07:17:02 pm
For those who just want ips patch, here's one right here. This patch is unheadered

EDIT: It seems like the link is broken. I have included the asm patch, plus with xkas_v06.

[quote=Old Quote]I was expecting an ips patch but I got asm instead. How do I use them anyway?

I guess I have to read direction. I wonder how it work?[/quote]
--Lawrence of Arrakis--
Yeah, reading directions miiiight just help.

There's no reason why anyone can't use xkas to do something simple like this, except possibly OS issues, and anyone using non-Windows OSes should know how to resolve those issues if they're interested in this patch. How about I list the procedure out, step-by-step?

  • 1) Download both files.
  • 2) Extract xkas anywhere you want to.
  • 3) Extract my .asm patch + .bin files in the same directory as the xkas executable.
  • 4) Put your SM ROM into that same directory and rename it to "SM.smc".

  • 5) Run the boostball.bat file.
  • 6) Test out the ROM.
  • 7) Make any desired tweaks to the defines.
  • 8) Run the batch file and test the ROM again.
  • 9) You're done!


Seriously, it isn't that hard.
I run this here hotel of an evening
holy shit i can't wait to try this out
Edit history:
Bloodsonic: 2008-09-24 10:10:04 pm
I have all the files in the right place, but running the .bat doesn't do anything.. :(

Never mind..
This is awesome.
--Lawrence of Arrakis--
Maybe this'll help.
If the directory doesn't have at least each and every last one of these files in it, it won't work:

Yo.
There's a problem... the xkas in the link you provided doesn't work as it should. It's very odd. I got the asm patch to work by using a copy of xkas from my Lunar Magic folder, which I think I got from romhacking.net (I'm not entirely sure - that was a long time ago.) Could ya check that out, Insomnia?
Fear Me! (Or else...)
...This sounds really cool. I'm working on downloading, and I'd like to take a quick look at the code itself. It really seems like a neat idea, and it'd be nice if we could have had something like this in the original metroid. Also, just out of curiosity, how hard would it be for you to adjust the boost button to adjust to whatever the run button has been selected as? I'm not pressuring you for this, I'm genuinely curious. Or maybe you could just tell us how to change that one segment of the code for that - I'm a non-AMSer, so that's the only reason I'm actually asking you. Looks good, though!
Edit history:
aigamerDS: 2008-09-25 03:21:09 am
Wouldn't it be easier if you supply us with ips patch instead of asm?

I did try this out but it doesn't work at all. Here's my screen shot on what I did.

Edit: Nevermind, I figured it out.

Man! You are genius!
Maybe you should add a damaging effect to the speed boost. You know, you can run into the enemy to kill them.

attachment:
Edit history:
InsomniaDMX: 2008-09-24 11:29:59 pm
--Lawrence of Arrakis--
* InsomniaDMX takes a chill pill to avoid saying bad things.




Zhs2:

Quote from InsomniaDMX:
Go grab xkas v.06 from byuu's website:


You downloaded the wrong version. v0.06 would've worked, and that's the one you used from your Lunar Magic folder. I should've stated where on that page the link was.


Bioniclegenius:

My code does indeed check for the currently selected run button.

Quote from Kejardon:
$8B holds currently-pressed keys. AND with the below to get the player's customizable keys.

7E:09AA Up
7E:09AC Down
...


$7E:008B is where all the bitflags for currently pressed keys are. $7E:09AA and so on are the specific bitflags (for each controller function) to test against $7E:008B (the joypad itself).

It's a little tough to explain, but once you see it applied, it makes sense.


aigamerDS:

It would be easier to apply, yet it would take a few seconds to make (which isn't my motive), and it would be more difficult to tweak (tweak the physics, etc. to fit into your hack better). Plus, I'm trying to introduce you all to this skill, it's a useful one to have.
Edit history:
Zhs2: 2008-09-24 11:35:04 pm
Yo.
Thanks for that, Insomnia. We do appreciate what you do, and very much so.

Quote from aigamerDS:
Wouldn't it be easier if you supply us with ips patch instead of asm?

Funny. I think I insulted unnecessary posts like this just a minute ago, in my newly created Hypothetical thread in the Boardwalk. Apply this theory to Insomnia's topic starting post:
Quote from Zhs2:
TL;DR: If you haven't read everything above before posting in this thread, shame on you. Read some, maybe you'll learn things in life.
Embarrasing Fact: Power suit made by lowest bidder
Quote from Zhs2:
There's a problem... the xkas in the link you provided doesn't work as it should. It's very odd. I got the asm patch to work by using a copy of xkas from my Lunar Magic folder, which I think I got from romhacking.net (I'm not entirely sure - that was a long time ago.)

byuu has made a new 'version' of xkas. In fact it is an entirely new xkas altogether, and is in-progress (at least, it was when I last saw it) and incompatible with the old xkas files (though it wasn't hard to update them if you know what you're doing, IIRC).
I stick to the older version anyways. It's already plenty powerful and it does everything I've ever needed it to do (though a few of its features are slightly misleading). Insom uses the older version (0.06) too.

Quote from Bioniclegenius:
Also, just out of curiosity, how hard would it be for you to adjust the boost button to adjust to whatever the run button has been selected as?

I glanced at his code for this a bit earlier today, and it already checks the run button. Not the B button, but the run button. It's easy to change it to any specific button (A, B, Run, Jump, Aim up, Start, whatever) thanks to how Super Metroid works. It's explained in his assembly file, read it if you're curious.

Quote from aigamerDS:
Wouldn't it be easier if you supply us with ips patch instead of asm?

Haha. Actually, making the ips patch is an extra step for us, and considering how inflexible ips is, having the assembly instead is really nice.
And even if you don't know how to use xkas, it's really hardly any more work than using an IPS patcher, especially when he has a .bat file included to do the work for you. The only exception is if you're not using Windows.

It's also a nice way to show that assembly isn't the big scary monster most people seem to think it is. :P



And I need to type faster apparently. Also I didn't notice he actually mentioned to use 0.06. Whoops.
Acclaimed Threshold
Constant Sorrows
TL:DR version for all you short-attention-span cadets:

If someone gives you a present, say thank you and smile. Don't ask for it in a different wrapper.
--Lawrence of Arrakis--
Overall, releasing something as source code is generally better for all purposes other than just using it as is.

Those wishing to tweak or edit that code have an easier job,
Those who wish to know how it works have an easier job,
It'll help those who want to learn ASM in general,
It's easier for the developer to modify as well,
Plus it's like a readme and the file itself in one package...

...speaking of which, I've added a few lines to the top of the .asm file:
Directions on how to remove a particular restriction that some of you might want to.


Ahhh, posting while I was I see. =)
¯\_(ツ)_/¯
Quote from Kejardon:
Actually, making the ips patch is an extra step for us, and considering how inflexible ips is, having the assembly instead is really nice.
IPS is actually quite flexible; it's easy to open one up in a hex editor to change specific values. I've done it several times when changing stuff in a hack. The format of the IPS itself is simple; 5 bytes at the very beginning saying "PATCH", followed by a point of origin, then a byte for the length of the patch. After that comes the actual data to patch, and from there, it repeats everything besides the PATCH until the end of the file, where it says "EOF".
--Lawrence of Arrakis--
That's not flexible, that's simple. The format is pretty simple but that doesn't make it easy to edit. Sure, you can if you need to, but who wouldn't rather pick up something in notepad (or equivalent) and edit plain text?
Edit history:
aigamerDS: 2008-09-25 10:26:45 am
Quote from InsomniaDMX:
That's not flexible, that's simple. The format is pretty simple but that doesn't make it easy to edit. Sure, you can if you need to, but who wouldn't rather pick up something in notepad (or equivalent) and edit plain text?


Maybe you should release both asm and ips. That way, everyone should be happy. :-)

Edit: I did it already :P
Edit history:
Black Falcon: 2009-11-01 07:31:01 am
Is the asm file for headered or unheadered (or maybe both)?
Edit history:
aigamerDS: 2008-09-25 03:51:39 pm
I have created a patch for the boost ball. This patch is unheadered.

Edit: The patch is now located on top.
Thanks, this is awesome!!!!
[BANNED]
Quote from aigamerDS:
I have created a patch for the boost ball. The patch is unheadered.


Please keep in mind this post is before my even trying the .ips or the .asm methods of boostballing.

Thank you, I can now finally hard patch this boost ball.  No offense, but InsomniaDMX's way sounds like soft patching.  On the bright side, InsomniaDMX's way sounds a lot more educational.  I shall try both ways, the lazy ips way (no offense, as I'm lazy myself at times) or the asm way.  ASM is something I'd like to learn myself after I've learned enough about SMILE so I could make a decent hack, anytime between now and 100 years from now.  Thank you for both of these ways of boost balling.  grin new
Acclaimed Threshold
Constant Sorrows
Quote from Black Falcon:
Is the asm file for headered or unheadered (or maybe both)?


Both.

Quote from aigamerDS:
Maybe you should release both asm and ips. That way, everyone should be happy.


I was all set to chew you out for this, because it sounds extremely ungrateful, but since you went and made a patch I suppose it's all right. I hope you'll try to sound less entitled in the future, though... Insom did a very rare and nice thing and put something out for the public, and complaining about it in any way is a good way to discourage him from doing so again.

Quote from BiggestSchnoz:
InsomniaDMX's way sounds like soft patching.


No, softpatching is totally different. IPS and ASM methods will both permanently affect the ROM file.
Gonna try this later and see, thanks for the release, I'm sure this will improve the gameplay of hacks from now on, and i guess it will be awesome ;D
Yo.
Quote from Acheron86:
No, softpatching is totally different.

Quote-on-quote "Softpatching" is what your ZSNES does when you put a rom and a .ips with the same name in the same folder and then run the rom. It isn't permanent.
Acclaimed Threshold
Constant Sorrows
Quote from Zhs2:
Quote-on-quote "Softpatching" is what your ZSNES does when you put a rom and a .ips with the same name in the same folder and then run the rom. It isn't permanent.


Yes, and that's why it's different.  Rolling Eyes