News:

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

Main Menu

Hex tweak submission

Started by begrimed, December 16, 2010, 05:08:55 PM

Previous topic - Next topic

begrimed

I figured this was a better place than completed stuff, but if someone else feels otherwise, go ahead and move it there if you want.

As the name of this topic implies, stick any hex tweaks you find in this topic instead of PMing them to me. Since I'm a bit slow at updating the site sometimes (hahaha, a bit?), posting them here for all to see right away will get them out there faster until they do appear on the hex page.

In the meantime, here's some that Sadi found and sent me the other day:

$241D2 - 06 00 33 A8 to 24 87 B1 C4      (Green Right)
$24231 - 06 00 63 A8 to 24 87 E2 C4      (Green Left)
$24290 - 06 00 93 A8 to 24 87 13 C5      (Green Down)
$242EF - 06 00 C3 A8 to 24 87 44 C5      (Green Up)
$24351 - 06 00 F3 A8 to 24 87 B1 C4      (Red Right)
$243B3 - 06 00 23 A9 to 24 87 E2 C4      (Red Left)
$24415 - 06 00 53 A9 to 24 87 13 C5      (Red Down)
$24477 - 06 00 83 A9 to 24 87 44 C5      (Red Up)
   Above changes make missile doors change to standard blue doors after being unlocked. They require an extra hit to open (as a standard blue door)

Lunaria

Even better would be if made a hex tweak map in the site in the same manner as a ROM and RAM map. :P

snarfblam

Wouldn't the wiki be the ideal place for these kinds of things?

Quietus

Logically, yes, but since a lot of the basic info is missing / not done, then I can't see people using it as it should be, and that may in turn mean that the hex tweaks are missed.  We'll then have a bajillion new topics asking about things.

snarfblam

#4
Well, then putting this stuff in the wiki would be a good start. If the wiki's ever gonna get going, somebody's got to start it rolling. A forum is a poor substitute for this kind of stuff. A wiki is an ideal place for this information to gather to allow the documentation evolve in an organized, useful, manageable manner.

http://wiki.metroidconstruction.com/index.php?title=Hex_Tweaks

JAM

#5
A small new year presents for you. It should be patches like in past year, but they will be later.



23A54
28 00
Delay (in frames) of bomb Torizo closing door.

25889
259ะก0
03 to ??
Boss door hits

25CF2
25DCD
03 to ??
Electrical outlet hits in Draygon room

A0EEE
10 00 to ?? ??
Damage of Spike block with BTS 01

A0F29
10 00 to ?? ??
Damage of Spike block with BTS 03

A188A
10 00 to ?? ??
Damage of Fool X-Ray Block with BTS 02



Crystal Flash
855C9
33 00 to ?? ??
You can perform Crystal Flash when your energy is below this value.

855D0
D0 18 to EA EA
Disable reserve energy checking. Now you can use Crystal Flash even with full reserve tanks.

855D6
0A 00 to ?? ??
You can perform Crystal Flash when you have this amount of missiles or greater.

855DE
0A 00 to ?? ??
You can perform Crystal Flash when you have this amount of super missiles or greater.

855E6
0A 00 to ?? ??
You can perform Crystal Flash when you have this amount of missiles or greater.

856EF
32 00 to ?? ??
How many health to add when burning missile

85712
32 00 to ?? ??
How many health to add when burning super missile

85735
32 00 to ?? ??
How many health to add when burning power bomb

8564C
0A 00 to ?? ??
How many missiles to burn

856FD
0A 00 to ?? ??
How many super missiles to burn

85720
0A 00 to ?? ??
How many power bombs to burn




5E00E
5E1E4
5E27A
5E2E8
5E329
5E370
03 to ??
If player have ending time in hours lower this value, show the best ending

5E1E9
5E2ED
5E375
5F559
5F59B
5F5BE
0A to ??
If player have ending time in hours greater or equal this value, show the worst ending

5E00B
5E1E1
5E277
5E2E5
5E326
5E36D
5F3D6
5F556
5F598
5F5BB
E0 to DE
Change checking for hours to checking for minutes when showing ending. Should be useful for mini-hacks.


8034A
1E 00 to ?? ??
When player have health lower than this value, make Samus breathing heavily (with arm shaking)

86A83
1F 00 to ?? ??
When player have health lower than this value, health alarm sound is on

87335
1F 00 to ?? ??
When player have health greater than this value or equal it, health alarm sound is off

8E6D3
1F 00 to ?? ??
When player have health lower than this value when returning from pause screen, turn health alarm on

37147
1E 00 to ?? ??
When player have sum of energy and reserve energy lower than this value or equal it, turn on subroutine that spawns more energy pickups

3714C
32 00 to ?? ??
When player have at least this energy and reserve energy, turn off subroutine that spawns more energy pickups

37142
18 6D D6 09 to EA EA EA EA
Disable checking for reserve energy when triggers subroutine that spawns more energy pickups



Spore Spawn
12ED83
Health at when Spore Spawn will move faster

12EDC4
When health amount is lower this value, Spore Spawn will change his palette for the first time

12EDCC
When health amount is lower this value, Spore Spawn will change his palette for the second time

12EDD4
When health amount is lower this value, Spore Spawn will change his palette for the third time

12D70F - 1A to 52
Spore Spawn moves constantly; doesn't stop even when its core is exposed (found by DSO).
Should be 12E70F.



HUD
1B0C
1C13
20 78 9D to 20 98 9D
Make 2-digit counter for missiles.

1B1A
1C34
20 98 9D to 20 78 9D
Make 3-digit counter for super missiles.

1B28
1C52
20 98 9D to EA EA EA  20 78 9D
Make 3-digit counter for power bombs.

1B0A
1C11
94 00 to ?? ??
Positions of Missile counter in the HUD.
Add 2 to move it by 1 tile to the left.
Substract 2 to move it by 1 tile to the right.
Substract 40 to move it by tile above.

1B15
1C27
9C 00 to ?? ??
Position of Super Missile counter in the HUD.
Add 2 to move it by 1 tile to the left.
Substract 2 to move it by 1 tile to the right.
Substract 40 to move it by tile above.

1B26
1C50
A2 00 to ?? ??
Position of Power Bomb Counter in the HUD.
Add 2 to move it by 1 tile to the left.
Substract 2 to move it by 1 tile to the right.
Substract 40 to move it by tile above.


As you see, there are two address. First one used when loading the game with non-zero ammunition of certain type. Second one -- when collecting ammunition of certain type for the first time.

These ones were found by DC long ago and they are working (but still not in the tweaks):


**Initial load of HUD during game load**
-- This is needed so the top row is sent to RAM when you load a game.
Change this (load): 1AA3, [ BD CB 98 ] To -> [ BD 8B 98 ]
Change this (store): 1AA6, [ 9F 08 C6 7E ] To -> [ 9F C8 C5 7E ]
Change this (counter): 1AAC, [ E0 C0 00 ] To -> [ E0 00 01 ]

**In-game DMA transfer**
-- This is needed to transfer the extra row of the HUD to VRAM.
Change this (source address): 1CB4, [ A9 08 C6 ] To -> [ A9 C8 C5 ]
Change this (VRAM destination): 1CC1, [ A9 20 58 ] To -> [ A9 00 58 ]
Change this (number of bytes): 1CAD, [ A9 C0 00 ] To -> [ A9 00 01 ]



Upper line fix by me.
40B17
422E7
FF to 1C

AND

40B1D
422ED
00 to 08

Prevents the game from writing yellow "!" sign in the end of top line of the HUD.
First address for each value: when exloading the Power Bomb
Second address for each value: when executing the Crystal Flash

Actually, there are will be rewriting the same symbol that are there (white dot for upper-right corner of mini-map)



1354C0
32 to ??
Amount of hits when Ceres Ridley will change his pallete for the first time
(default is 50/100)

1354C8
46 to ??
Amount of hits when Ceres Ridley will change his pallete for the second time
(default is 70/100)

1354D0
5A to ??
(default is 90/100)
Amount of hits when Ceres Ridley will change his pallete for the third time


Chozo Statues
156777
Change 4A 17 to ?? ?? to change position of Silver Chozo "hand" in Wrecked Ship. X coordinate is the first byte, Y coordinate is the second byte.

25160
Change 08 to ?? to change Y position of Golden Chozo "hand" in Norfair

2516B
Change 04 to ?? to change X position of Golden Chozo "hand" in Norfair



15679D
251DA
Change 0C 1D to ?? ?? to change position of plug that will be removed when the acid is lowered.

7B1F8
Change 6A to 7A to be able to change liquid level, it's lowering speed etc. and SMILE. When done, change it back.

25156
Change D2 02 to ?? ?? to change liquid level in Golden Chozo room after re-entering it.

25181
Change 83 to 08
and
A1149
2F 86 to DA D6
to make Golden Chozo works in every area.
These 2 are actually found by Kej as he told me what to do, so give him credit

DSO

$A3/A98F > 50 00: Amount of frames it takes for a mochtroid to damage you. Low numbers = deadly, high numbers = harmless. Making mochtroids suck more makes them suck less. Suck less, and they suck more. :P

Qactis

oh I got a good one! http://wiki.metroidconstruction.com/index.php?title=Hex_Tweaks

^ place to submit your hex tweaks and have them show up right away instead of having Grime do all the work :)

JAM

#8
I guess, I'll be post here and there.
Quote from: JAM on January 03, 2011, 01:02:03 PM
1B28
1C52
20 98 9D to EA EA EA
Make 3-digit counter for power bombs.
Should be 20 78 9D instead of EA EA EA. Just copy-paste error.

And this is new.
11EEE4
00 60 to ?? ??
damage of Metroid per frame in subhealth units when in Varia Suit.

11EEE9
00 30 to ?? ??
damage of Metroid per frame in subhealth units when in Varia Suit.

11EEEE
00 C0 to ?? ??
damage of Metroid per frame in subhealth units when in Power Suit.

Don't know, how to explain this shortly. The above 3 values are used for internal counter that doesn't do damage. When counter is underflowed, samus takes damage.

11EF00
01 00 to ?? ??
How many energy to substract when Metroid damage counter is underflowed

11EEAC
B0 to 80
Removes the changing palette to blue when Metroid suckles you. Player also can run away from Metroid like Mochtroid

Spore Spawn
12E8EE - B9 F9 E4 9F 80 C0 7E to EA EA EA EA EA EA EA [after dying]
12E940 - B9 F9 E4 9F 80 C2 7E to EA EA EA EA EA EA EA [after re-entering room]
Foreground remains green after Spore Spawn dies

12E907 - B9 D9 E5 9F E0 C0 7E to EA EA EA EA EA EA EA [after dying]
12E959 - B9 D9 E5 9F E0 C2 7E to EA EA EA EA EA EA EA [after re-entering room]
Background remains green after Spore Spawn dies

12E8D5 - B9 F9 E3 9F 20 C1 7E to EA EA EA EA EA EA EA [after dying]
12E927 - B9 F9 E3 9F 20 C3 7E to EA EA EA EA EA EA EA [after re-entering room]
Spore Spawn's body remains green/brown after he dies
Was found by Grime, but still not in tweaks

These 2 are found by me:
12E8CA
Change 5A DA to 80 4D
Disable all palette changes after defeating a Spore Spawn.

12E91C
Change 5A DA to 80 4D
Disable all palette changes in Spore Spawn room after re-entering the room.

Note to existing tweak
Quote824F5 - AD D0 0C to EA EA EA
Disables the pseudo screw attack, which happens if Samus does a spinning jump during a beam charge (found by Crashtour99).
This one is having very interesting side effect. You can't perform a pseudo screw attack with charged beam, but you can do this if no charging beam at all. It means, every spin jump will cause pseudo screw attack, but without yellow shining of Samus.

And since then...
82504
Change 8D 6E 0A to EA EA EA
Disables the Pseudo Screw Attack completly.

begrimed

137779 - 90 to 80 = no screen shake at all when escaping Ceres.
13764C, 13765E - 30 = Distance from Samus that Ceres doors open/close.

begrimed

#10
Updated version of the one I posted in the completed stuff collab topic. Lots of crap on editing Phantoon.

Edit: Added Torizo doc, which has a massive amount of info on editing their animation properties and some other stuff.
http://www.metroidconstruction.com/docs/torizo.TXT


JAM

#11
Grime
Thanks for your work!  :^_^:

Some stuff from me.

Golden Torizo code
(press and hold A+B+X+Y right before entering Golgen Torizo room in ball form)
15491C
change D0 to 80
Disable Golden Torizo code completly

15491F
BF 02 to ?? ??
Amount of Energy to set

154928
Amount of Reserve Energy to set
2C 01 to ?? ??

154931
Amount of Missiles to set
64 00 to ?? ??

15493A
Amount of Super Missiles to set
14 00 to ?? ??

154943
Amount of Power Bombs to set
14 00 to ?? ??

15494C
37 F3 to ?? ??
What items to get. Value is a sum of all item values. Add 0008 to include Screw Attack

154955
0F 10 to ?? ??
What beams to get. Value is a sum of all item values

154957
8D A6 09 to EA EA EA
Prevents the game from freezing when shooting after entering the room

154957
8D A6 to 80 01
Same effect

154958
A6 to A8
Same effect

Scyzer

I can almost guarantee that 99% of people here will have no idea what those do JAM, as in Vanilla SM you have only 1 chance to perform the code, and by that time you should have more than what it gives you, so it's inherintly useless. Plus what's the chance of someone holding the few buttons it requires to activate?

To actually make the code useful for most players would be to have it always run, which presents the problem of making item collection up to that point entirely useless.

Quietus

For those into speedrunning the game, the code actually allows you to beat the world record speedruns, but it's not accepted due to it's game breaking nature.  You basically get to GT's room via the back door asap, using the Green Gate Glitch, and use the code.  It gives you enough equipment to then complete the game, as no more equipment is required.

JAM

Quote from: Sadiztyk Fish on February 17, 2011, 04:59:05 PM
I can almost guarantee that 99% of people here will have no idea what those do JAM, as in Vanilla SM you have only 1 chance to perform the code
Yeah, I think, I should explain it better.

Quote from: Sadiztyk Fish on February 17, 2011, 04:59:05 PM
by that time you should have more than what it gives you, so it's inherintly useless.
Like Quietus said. Also, if enter GT room with minimum amount of ammo and energy and then enter the code, you can jump over 100% or items (if collect all remaining items) and finish the game with maximum 325 Missiles, 65 Super Missiles, 65 Power Bombs, 2100 Energy, 700 Reserve Energy and 135%.

Prime Hunter

Quote from: Grime on February 04, 2011, 03:07:01 PM
Updated version of the one I posted in the completed stuff collab topic. Lots of crap on editing Phantoon.

Edit: Added Torizo doc, which has a massive amount of info on editing their animation properties and some other stuff.
http://www.metroidconstruction.com/docs/torizo.TXT
Excellent timing. Just so happens I'm currently working on making an awesome Torizo battle for my hack, and these hex changes will really help out in making that happen. Thanks for these!

On a funny note, I tried modifying his walking and turning speeds to half of the standard numbers, and now Torizo is an absolute speed demon because he closes in VERY quickly no matter where I am. :lol: Might have to slow him down a bit again because of that.

uzqap

I found an interesting side effect in one of the HEX edit

Quote from: -> Hex tweaks
84F71 - 02 to 01
Allows Samus to fire beams while the ice beam SBA is in effect (found by Flamestar666).

if you eliminate X of the ice SBA [by letting them hit enemies], but not all four and shoot.

this shot will be multiple shots
[5(max beams)-4+X]

noticeable when shooting at enemies and
at high vertical speed those projectiles will be separated and can be seen

JAM

#17
Exchanging palette priority of Varia and Gravity suits (when both are equipped, color will be orange).


General case
$08DE6E
$08DEC4
$08DEF0
Change 20 to 01

$08DE71
$08DEC7
$08DEF3
Change 15 to 0D

$08DE73
$08DEC9
$08DEF5
Change 01 to 20

$08DE76
$08DECC
$08DEF8
Change 08 to 10



While charging
$086CBA
Change 20 to 01

$086CBD
Change 10 to 09

$086CBF
Change 01 to 20

$086CC2
Change 04 to 0B


Glow in heated rooms
$06E3C2
$06E444
Change 20 to 01

$06E3C7
Change E0 E3 to 00 E4

$06E3D1
Change 00 E4 to E0 E3

$06E3CC
$06E44E
Change 01 to 20

$06E449
Change B6 E8 to 8A E6

$06E453
Change 8A E6 to B6 E8

begrimed

#18
DSO pointed me in the right direction of these; I just noted them in more detail. Some values handling Samus' animation speeds. Will probably find more later.

8B298 - 0A 0A 0A 0A = Standing, not moving.
8B29D - 08 08 08 08 = Standing, not moving, low health.

8B2A3 - 0A 0A 0A 0A = Crouching, not moving.
8B2A8 - 08 08 08 08 = Crouching, not moving, low health.

8B384-8B38C = Spinjump animation speeds.
8B494-8B49B = Spinjump animation speeds (after walljumping + holding jump).

8B392-8B399 = Space jump animation speeds.
8B49E-8B4A5 = Space jump animation speeds (after walljumping + holding jump).

8B39F-8B3B6 = Screw attack animation speeds.
8B4A8-8B4BF = Screw attack animation speeds (after walljumping + holding jump).

8B326 - 03 04 04 04 04 = Normal jumping.

8B22D - 05 02 = Landing from jump, facing right.
8B231 - 05 02 = Landing from jump, facing left.

8B236 - 05 02 = Landing from spinning jump, facing right.
8B23B - 05 02 = Landing from spinning jump, facing left.

8B3ED - 02 02 02 = Turning right to left, aiming down (L).
8B3F2 - 02 02 02 = Turning left to right, aiming down (L).

8B433 - 02 02 02 = Turning right to left, aiming up (R).
8B438 - 02 02 02 = Turning left to right, aiming up (R).

8B33A - 02 = In the air, aiming straight up.
8B33E - 02 = In the air, aiming straight down.
8B342 - 02 = In the air, moving left or right (not spinning).
8B346 - 02 = In the air, aiming up (R), down (L), or firing a shot.
8B34A - 08 06 06 = Falling off of ledge or de-morphing in the air.

<DSO> $90/82F0 BF 10 B0 91 LDA $91B010,x[$91:B044] < breakpoint on this
<DSO> Whatever it loads into A is the pointer to the timer for next animation
<DSO> And then it loads that timer right after that, which will tell you where it is
<DSO> For any animation

And some more. A few of these are more like cheats than gameplay mechanic edits.

82474 - D0 to 80 = Enables space jump without having the item. Uses normal spinjump animation.

8F6BD, 8F71E, 80450 - D0 to 80 = Uses space jump spinning graphics for normal spinjumps.

8F6B8, 8F719, 8044B - D0 to 80 = Enables screw attack without having the item collected.

82471 - 89 00 20 = Check for which item enables space jumping, but not faster spinjump animation.

8191C - 89 00 20 to EA EA EA = Jumps gain some extra height if Samus is running, even without speed booster.

125BD - 80 00 10 to EA EA EA = Pressing any button will unpause the game; effectively disables equipment screen use.

840AB-840E6 = Stuff for 5-bomb spread. Checks Samus' equipment for bombs, if beam is being charged and beam charge timer.
840AB - AD to A9 = Disables use of the bomb spread.
840B3 - AD to A9 = Always use bomb spread in place of normal bombs.
840BB - AD to A9 = Disables bomb spread, and as well as morphing while beam charging.

8178C - 89 to A9 = Samus runs faster even if speed booster isn't collected or equipped. No sound/blue echoes until Samus has the item.

84669 - F0 to 80 = Alternate arm canon graphics never trigger when selecting missiles or super missiles.

8427B - 0A 14 = Speed that missiles can be fired. 0A = missiles. 14 = super missiles. Missiles can be changed to shoot faster or slower without any real problems. Super missiles can be changed to fire slower without issue, but to fire super missiles faster, you need to first apply Kejardon's super missile fix ASM so that more than one super missile can be shown on-screen at once.

84EF7-84F27 = The 4 rotating pieces of ice beam SBA no longer disappear after touching an enemy.

845FB - D0 to 80 = Ice beam SBA lasts forever.

845FB - D0 to F0 = Ice beam SBA disperses immediately after use.

8F464 - 28 00 = Distance from Samus that ice SBA starts dispersing from. 28 to 01 and it disperses from her body instead of from the ice circle.

And finally, here's a .txt file that lists animation frame speeds for almost every enemy and boss in the game. With this info you can alter how they behave to an extent. For some enemies the differences are as minor as how long to display a few colors. Other enemies have many animation sets and can practically be made into new ones. The document is still slightly unfinished, but most of what hasn't been added to it are a couple of bosses and some boring enemies that you wouldn't get much out of changing the animation speeds for anyway.

Smiley

23A72:
89 00 10 to 89 ?? ??
What item closes the door in Bomb Torizo's room. Bombs by default.

squishy_ichigo

That gives me an idea for a nice little hijack piece of code SMILEuser :P.

ie. making the stay open doors more useful.

Crashtour99

Not entirely a hex tweak, but could be useful information.

Addition to RAM map:
$7E:0CD4 - $7E:0CD5     holding down charge counter for bomb spread

Counter for holding down to charge bomb spread:
$90/C0CA 29 C0 00    AND #$00C0
$90/C0CD C9 C0 00    CMP #$00C0

JAM

Correcting and addition to existing tweaks.

Quote
81E98 - 02 to ?? [air]
81E9C - 00 to ?? [water]
Adjusts how quickly you can repeatedly use space jump. 00 = more frequently, 02 = standard, 04 = less frequently, etc. (found by Black Falcon)

81E9A - 05 to ?? [air]
81E9E - 05 to ?? [water]
Adjusts how long Samus must fall before space jump no longer works. The value differences are pretty radical, though. 04 = barely have to fall before you can no longer jump, 05 = standard, 06 = seemingly no limit to how long you can fall and still use space jump again, etc. (found by Black Falcon)

All these values depending on falling speed. Since default terminal velocity is 05, you'll never fall faster. That's why values above 05 allows to use Space Jump even after falling in any amount of screens.

If terminal velocity [at 81110] is increased, you can set higher value here and give Samus more time to perform Space Jump. If values at 81E9A or 81E9E exceeds 81110, time will be unlimited again.

If gravity is decreased, you'll have more time to perform Space Jump with default values because you'll reach terminal velocity slower.


And maximum falling speed is measured in 1/256 pixels per frame in these 2 tweaks. Well, Samus' speed is a 32-bit value. Values here are compared with middle bytes in the middle.

So, in general, first pair of tweaks is minimum falling speed when Space Jump can be performed and last pair is maximum falling speed when it can be done. And values are actually 16-bit and should be tracked like this:

Quote
81E97 - 80 02 to ?? ?? [air]
81E9B - 80 00 to ?? ?? [water]
Minimum falling speed required to use space jump.
Decrease values to be able to start using space jump earlier.
Increase values to be able to start using space jump later.

Increase gravity to be able to start using space jump earlier, but have less time to perform space jump.
Decrease gravity to be able to start using space jump later, but have more time to perform space jump.

Quote
81E99 - 00 05 to ?? ?? [air]
81E9D - 00 05 to ?? ?? [water]
After reaching this falling speed space jump is unavailable.
Reduce values to have less time to use space jump.
Increase values to have more time to use space jump.

Values greater than terminal velocity [at 81110] like 05.01 and greater allowing to use space jump after falling from any height but not earlier than values at 81E97 and 81E9B.

Increase gravity to have less time to use space jump.
Decrease gravity to have more time to use space jump.

Increase terminal velocity at 81110 to be able to set values above 05.00 and have more time to use space jump, but not infinite.




8F651
0A to 00

8F65A
D0 to 80
Prevents Samus from losing speed by turning left/right during a spinning jump. But more smootly, without entering "about to walljump" pose for a few frames.

OR

8F64A
8F654
AD to A9
Same effect.



8F7BC
B4 00 to ?? ??
Shinespark timer in frames. Higher values works, but "ready to super jump" sound will be clipped before flashing ends.

Crashtour99

New one that only took me a few minutes to find.

$84/8972 (020972) = change 8D C2 09 to EA EA EA to make energy tanks not refill health when collected (still expands health capacity as normal).

Quietus

Since you were kinda looking at that area, would it also be possible to actually just have it add the quantity it grants you?  e.g. If in your hack they grant 50, it'd just add 50, or in the original game it'd add 100, rather than refilling?