News:

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

Main Menu

[SM] Mixing Spazer and Plasma [997‰ IS done]

Started by JAM, July 14, 2010, 04:43:04 PM

Previous topic - Next topic

Qactis

Those enemy death explosions are bad ass! Keep em :D

JAM

Wildfire
Same happens if just kill him using Hyper Beam. So, it's problem in Kraid code, not in beabs code. Possibly can be fixed by hex tweaking. Don't sure what to do. Reduce time of delay before stand up maybe?

Quote from: Crashtour99 on August 08, 2011, 02:00:36 AM
Damn, this thing is like screw attack in beam form!  Very powerful.
Kraid took 2 charged shots for me, Crocomire 1, Phantoon 2, Botwoon 3.
It's interesting too how it kills enemies that normally only super missiles could kill (like Hand or Ripper).
Thanks for report. Yes, I supposed to see that. It's vulnerabilities bug that I want to fix in version 1.0. Since I haven't changed anything, Spazer + Plasma shot is having the same vulnerabilities as Missile (can harm bosses), Wave + Spazer + Plasma shot is having the same vulnerabilities as Super Missile (can also harm bosses), Ice + Spazer + Plasma matches Bomb vulnerabilities and Ice + Wave + Spazer + Plasma matches Power Bombs vulnerabilities. Seems strange? Just open vulnerabilities for any enemy and see what followed by beams.

For example, uncharged Wave + Spazer + Plasma shot can damage Ridley (because Super Missile can) and even will do double damage for the same reason.

Quote from: Crashtour99 on August 08, 2011, 02:00:36 AM
Seems like it doesn't like bosses too much though.
This happened after beating Draygon (only took about 4 charged shots).
[spoiler][/spoiler]
It returns to normal once you leave his room though.
I suppose, vulnerabilites bug causes this, because charged shot hits him, but it not disappearing when it supposed to do.

Will try to fix this too.

Quote from: Crashtour99 on August 08, 2011, 02:00:36 AM
My guess is that it has something to do with the special background sprite layering used by certain bosses, since it works perfectly normal the rest of the time.
Can't say by sure. But I know that if you allow to grab Draygon while Samus is in Crystal Flash state, the same bug occurs.


Quote from: person701 on August 10, 2011, 12:52:44 PM
Cool patch. Then I ran across a rather interesting glitch that brings you to a "Keep playing?" screen (or something of the like). I'll update this post with more information when I have the time in like an hour or two. So I'm not going anywhere any time soon it appears.

Video of the effects
You've somehow activated debug feature of the game. I did the same long time ago, without this patch. What cheat codes are you using? I will try to understand what in my patch can activate this code if the reason in this patch

Quote from: person701 on August 10, 2011, 12:52:44 PM
I'll update as I find things. This isn't really big, but if someone runs across it, there could be some graphical problems to ensue.
Thanks for testing

chrismk

I found another glitch, the game freezes when you shoot the ninja pirates, I guess it's because they reflect the shot.

JAM

#28
chrismk
Thanks for info. I will look into their AI code.

Another glitch is when you trying to perform Special Beam Attack, the game will freeze. I have already fixed that, but decide not to post small update until fixing the vulnerabilities

Crashtour99

It's probably something for the pirate's special hitbox coding (shot AI) that's doing it.  If I understand it correctly, for the ninja pirates and reflec enemies when they are shot they actually delete Samus' projectile and spawn a new one, so without having the proper indexing and values loaded to produce the proper shot it crashes.  I'd expect something very similar would happen with bang enemies.

If it helps JAM, I already disassembled the entirety of $B2 (everything pirate related) which can be found here:
http://forum.metroidconstruction.com/index.php/topic,145.msg20410.html#msg20410
If it is in the special hitbox coding then it'll be somewhere between $B2/876C - $B2/889F.  If it's not then it'll be in either the ninja pirate's AI (which is disassembled) or a routine in $A0 (which handles the technical stuff of deleting and spawning the projectiles).

JAM

Quote from: Crashtour99 on January 10, 2012, 08:03:38 PM
It's probably something for the pirate's special hitbox coding (shot AI) that's doing it.  If I understand it correctly, for the ninja pirates and reflec enemies when they are shot they actually delete Samus' projectile and spawn a new one
What!? Really? It's a really strange... That's why I can't find it. I'd better changed shooting direction, X and Y speeds and so on instead of creating new projectile.


Quote from: Crashtour99 on January 10, 2012, 08:03:38 PM
If it helps JAM, I already disassembled the entirety of $B2 (everything pirate related) which can be found here:
http://forum.metroidconstruction.com/index.php/topic,145.msg20410.html#msg20410
If it is in the special hitbox coding then it'll be somewhere between $B2/876C - $B2/889F.  If it's not then it'll be in either the ninja pirate's AI (which is disassembled) or a routine in $A0 (which handles the technical stuff of deleting and spawning the projectiles).
It will helps a lot. Thanks!

Scyzer

Quote from: JAM on January 17, 2012, 06:57:24 AM
Quote from: Crashtour99 on January 10, 2012, 08:03:38 PM
It's probably something for the pirate's special hitbox coding (shot AI) that's doing it.  If I understand it correctly, for the ninja pirates and reflec enemies when they are shot they actually delete Samus' projectile and spawn a new one
What!? Really? It's a really strange... That's why I can't find it. I'd better changed shooting direction, X and Y speeds and so on instead of creating new projectile.

Except that then the projectiles wont hurt samus, and they will hurt other enemies (which could work well I guess)

begrimed

#32
Apparently, spazer/plasma breaks the gate enemies, according to Zozo. May wanna double-check how vulnerabilities are handled. He encountered this after patching splasma to PB, so I can't say 100% for sure if the bug is exclusive to my hack or not.

Edit: apparently needs ice/wave to be equipped for this bug to occur, also.

JAM

#33
Quote from: Grime on January 30, 2012, 11:57:51 PM
Apparently, spazer/plasma breaks the gate enemies, according to Zozo. May wanna double-check how vulnerabilities are handled. He encountered this after patching splasma to PB, so I can't say 100% for sure if the bug is exclusive to my hack or not.

Edit: apparently needs ice/wave to be equipped for this bug to occur, also.
Yes, I'm confirming that. Ice + Wave + Spazer + Plasma breaks enemy D4FF (closing shutter). All because of vulnerabilities bug I haven't fixed yet. And it's happens in vanilla too.

Currently, if you open vulnerabilities of any enemy, you'll see that after Wave/Ice/Plasma are located these vulnerabilities:
•Missile
•Super Missile
•Bombs/Space-Time
•Power Bomb

So, if just add 1 to Beam's Wave/Ice/Plasma value (000B), we'll get Spazer/Plasma (000C), but that will also jump ahead to the list, so:

•Missile (also used by Spazer/Plasma)
•Super Missile (also used by Wave/Spazer/Plasma)
•Bombs/Space-Time (also used by Ice/Spazer/Plasma)
•Power Bomb (also used by Ice/Wave/Spazer/Plasma)

So, in theory, if enemy is vulnerable by Missile, it will also vulnerable by Spazer/Plasma (uncharged). And because Ridley have a weakness of Super Missile, it can be raped really fast by uncharged Wave/Spazer/Plasma shots. Even faster than using charged shots (because of time for charge).

Now, as for enemy D4FF, it have value 82 in Power Bomb vulnerability (I have no idea, why since regular Power Bomb can't damage it) and 804C in Power Bomb AI (which causes Power Bomb damage protection).


I see 3 solutions for now:
1. Change Power Bomb vulnerability of enemy D4FF to 00. Nothing will damage this enemy now.
2. Change Power Bomb AI to 0000 and leave Power Bomb vulnerability as 82. Now this enemy can be killer by Power Bomb or uncharged Ice/Wave/Spazer/Plasma shot
3. Leave it as is and use enemy D4FF to block the way until you will collect all beams. Cool side effect, I'd say =)

My 500th post, yahoo!

knuckles

#34
awesome! might use this for my hack if all the bugs are fixed :3.
edit: is this for a (ju) rom or a (j) rom? and does the rom being patched need to be headered or not?

Quietus

Pretty much everything here is for the unheadered JU ROM.  The only exception I can think of are DMantra's hacks - Cliffhanger and Eris.

JAM

Over 95% of patches (and this one) are made for unheadred ROMs. Most patches (with few exceptions) are made for JU ROM, although about half of them (and this one) are also compatible with E ROM.

GuyInSummers

I registered here just to say that this is really super incredibly cool. Massive props for seeing this project through. I used to be a hacker (of EarthBound, mostly) and I know how frustrating and unending the process can get, and it's always great to see people do work like this for no reward other than being able to decimate Ridley with glowing Spazma beams and say "I did that." Makes me want to crack open a ROM again. Cheers.

Prime Hunter

Had to tweak some ideas after running into conflicting patches and ended up trying this out. Found a graphical bug that is still there when I applied the patch to a fresh game so it's not something I did by mixing patches.

Similar to what Crashtour99 mentioned when fighting Draygon, any time you use the grapple beam the beam palettes glitch out. I first noticed it when I tried using grapple and saw the origin point of the beam change to a greenish-red color instead of the normal blue. (Not the same glitched palette that he found, but it's pretty similar) This causes all beams and any frozen enemies (even if already frozen beforehand) to copy this palette as well. From what I can tell any time you change beams on the item menu or go to another room the palettes reset.

JAM

Version 0.992 is out. Not much things was done, but better than nothing.

Changes since 0.991:
Screwup colors after using Grapple bug is fixed.

Changes since 0.990:
Special Beam Attack pointers array was relocated and extended. Now the game will not crash after using Space Beam Attack when Spazer and Plasma are selected at the same time.

Apply to the ROM patched with v0.99.

Free space used:
87EA0..87EBF
#include v0.99.data

Quote from: GuyInSummers on May 12, 2012, 09:20:03 PM
I registered here just to say that this is really super incredibly cool. Massive props for seeing this project through. I used to be a hacker (of EarthBound, mostly) and I know how frustrating and unending the process can get, and it's always great to see people do work like this for no reward other than being able to decimate Ridley with glowing Spazma beams and say "I did that." Makes me want to crack open a ROM again. Cheers.
Welcome here =) Thanks for supply and kind words. Yeah, you're right. Sometimes things are looking like they need just a bit work to get completed, but when you starting to work on them, you are noticing more and more things to be fixed. I've noticed that progress of completing something big is a reverse parabolic function like extracting square root from 0.1 over and over. Until you'll get 1. Each extraction meaning the same time period has passed (let it be week) and value is progress. 0.1 = 10%, 1 = 100%

Just look at that.

WeekProgress
10.1
20.316227766016837933199889354443272
30.562341325190349080394951039776481
40.749894209332455827302184275615136
50.865964323360065352353169183420230
60.930572040929698979290646316499129
70.964661619911199213711208256037812
80.982171889188037805201249269237082
90.991045856248860870641346759387849
100.995512860915850182890939852794308
110.997753907993273751672889769517069
120.998876322671267321932919915595954
130.999438003415553196029626790600195
140.999718962216658765337435787280112
150.999859471234162368744819226873097
160.999929733148365965092672550459712
170.999964865956982493168325998248472
180.999982432824188413586569617434102
190.999991216373518159707041767556470
200.999995608177115025727029010720507
.....
500.999999999999995909787221758973574
.....
700.999999999999999999996099269124755
.....
800.999999999999999999999996190692505
.....
900.999999999999999999999999996279973
.....
1000.999999999999999999999999999996367
.....
1100.999999999999999999999999999999996
1110.999999999999999999999999999999998
1121

From week 1 to 4 you're going fast enough.

At week 5, when 86% is done, you're thinking like: "I have an idea. What if also add this feature?" and it causes slowdown of the progress. Or you may found a hidden underwater rock in your way and you have to spend extra time to avoid it. No matter what exactly happens, shit is always happens. And you're slowing down.

At week 9 you're feeling like "Oh, it's almost over. 99% is done". How else can I improve this stuff before release. Or you may notice that your project wasn't tested properly and after testing it you're finding a serious bug.

And so on. If you have a deadline, then you'll release an unfinished product with bugs and may release a fixing patches later. If you're the master of time and space (meaning no deadline), you're keep working until you get 100% of your progress. But there is also third way. If you're Nintendo, you sometimes may not release a product completed at 99%, like they did with Star Fox 2 and some other games. Because someone tells that game is sucks (meaning no high sells), or because Sony have finished PS1 and in comparing with that any SNES 3D game looks sucks.

As for me, I'll never give up. No matter how many time it takes, but I'll finish this someday.

Quote from: Prime Hunter on May 13, 2012, 01:26:35 AM
Similar to what Crashtour99 mentioned when fighting Draygon, any time you use the grapple beam the beam palettes glitch out. I first noticed it when I tried using grapple and saw the origin point of the beam change to a greenish-red color instead of the normal blue. (Not the same glitched palette that he found, but it's pretty similar) This causes all beams and any frozen enemies (even if already frozen beforehand) to copy this palette as well. From what I can tell any time you change beams on the item menu or go to another room the palettes reset.
Thanks for pointing this out. Yes, it's not the Draygon, but the Grapple bug. It was caused by wrong array repointing (I was in hurry before august, 6st). Single byte fix.

Prime Hunter

Ran into another boss who freaks out with the Spazer/Plasma combo, or at least variations of it. If you take down Phantoon with a charged Ice/Spazer/Plasma or Ice/Wave/Spazer/Plasma he freezes in place, never going into his death animation so you're forever stuck in his room. With the other two combinations he died as normal for me. Happened to me in my own hack and in a fresh one with just the patch and its fix applied.

I wonder if it's a coincidence or not that the ice beam is present in both versions that break him and not present in the two that work as intended. I have no idea since I don't know much about coding in general, but it's the only visible connection I can come up with. Looking back in the topic, does this same thing happen if you take down Phantoon with the Hyper Beam? I saw Kraid doesn't handle Hyper nor the SP mix very well and that the problem lies with him, so is it the same for Phantoon?

Zhs2

Basically, the enemy takes overkill damage and there aren't checks in place for this exceptional damage that literally causes their health to overflow so the game has no idea how to handle it.

JAM

Zhs2
Yes, you're right about Kraid. In his Initiation AI max HP he have is splittled into 8 parts. Each one is pointer to code which will be excectuted, depending on his HP. While he have more than 7/8 of max HP he will not stand up. When he have from 0 HP to 7/8 of max HP, he will stand up. When he have 0 HP, he will dig into the ground. So, when Kraid gets so much damage so his HP is dropped from more that 7/8 of max HP to 0, both codes will be executed. He will first stand up, but will not move because he have no HP. And falldown code will not be executed because standup code is executing. He need one more shot to die. But you can go through him if his HP is 0. That's origin of the bug. It's not because of patch, it's because of overkill damage as you said. Shoot him with Hyper Beam without my patch and you'll see the same effect. So, I need to make a Kraid bugfix too.

Quote from: Prime Hunter on May 16, 2012, 02:19:52 AM
Ran into another boss who freaks out with the Spazer/Plasma combo, or at least variations of it. If you take down Phantoon with a charged Ice/Spazer/Plasma or Ice/Wave/Spazer/Plasma he freezes in place, never going into his death animation so you're forever stuck in his room. With the other two combinations he died as normal for me. Happened to me in my own hack and in a fresh one with just the patch and its fix applied.
Thanks for finding that. As for Phantoon, the bugfix is easier to made. This one caused vulnerabilities bug which I haven't fixed yet and inproperly coded death AI. When enemy have been shot by Spazer + Plasma beam he is loading vulnerability value further from the list. After Wave/Ice/Plasma are:
Missiles
Super Missiles
Bombs/Space-Time
Power Bombs

So, if his last shot is made by Charged Ice + Spazer + Plasma or Charged Ice + Wave + Spazer + Plasma, he is getting vulnerabilies from Bombs/Space-Time or Power Bombs and because there are 00's, he is getting frozed for $0190 frames (by default). But other enemies and bosses are decrementing this value while Phantoon doesn't. Timer is at $0190 frames, but it's not going down, meaning Phantoon will be frozen forever.

As a prove that this is not only fault of my patch, try to change Wave/Ice/Plasma vulnerability from 80 to 00, finish him with Charged Ice + Wave + Plasma shot and he'll be frozen forever, again.

Quote from: Prime Hunter on May 16, 2012, 02:19:52 AM
I wonder if it's a coincidence or not that the ice beam is present in both versions that break him and not present in the two that work as intended. I have no idea since I don't know much about coding in general, but it's the only visible connection I can come up with.
You were right at this guess =)

Quote from: Prime Hunter on May 16, 2012, 02:19:52 AM
Looking back in the topic, does this same thing happen if you take down Phantoon with the Hyper Beam?
As for Hyper Beam, it's not freezing enemies, so Phantoon takes Hyper Beam fatality correctly. I've tested it.

So, for Phantoon solution is change Bombs/Space-Time and Power Bombs vulnerabilities from 00 to 80. If there are not 00's (meaning he can be damaged by Bombs or Power Boms in your hack), add 80.

M1CR0H4CK3R

Just an interesting little tidbit I found regarding the "Murder Beam":


What I did was:
1. Shoot beams repeatedly, then pause while a set was still on the screen.
2. Equip "Murder Beam".
3. Unpause.
4. See effect.

This is the only real way I found so far to see a graphical form of Spazer and Plasma together, even though it is not a graphical change, but a palette change.

Edit: This was done in Revolution EX, for those who don't know.

Quietus

I believe you can do that sort of palette change trickery with the SBAs as well. :^_^:

JAM

Quote from: M1CR0H4CK3R on April 28, 2013, 10:35:55 PM
This is the only real way I found so far to see a graphical form of Spazer and Plasma together, even though it is not a graphical change, but a palette change.

Edit: This was done in Revolution EX, for those who don't know.
It's been a long time since I last replied here =)
Spazer and Plasma doesn't have a graphical form. It's simply not programmed.
What you showed on picture is the ice particles while the beams itself are have no graphics.

GoldenTorizo

Does this hack play like the normal game? With just the Plasma/Spazer combination? Because don't see any changes.

Quietus

It's not a hack.  It's solely an edit, which allows mixing both beams together, and provides working graphics for the new beam.  It doesn't affect the rest of the game in any way, except for making it much easier, I'd guess! :^_^:

GoldenTorizo

Quote from: Quietus on May 20, 2013, 04:38:28 AM
It's not a hack.  It's solely an edit, which allows mixing both beams together, and provides working graphics for the new beam.  It doesn't affect the rest of the game in any way, except for making it much easier, I'd guess! :^_^:
Well when I patched it, nothing happened. It played like a normal game to me. What was I supposed to do? Please help. :(

Zhs2

Equip Plasma and Spazer at the same time, presumably. (Does it still require pressing left+A at the same time (e.g. the Var cheat)?)