Language…
9 users online:  AmperSam, Anas, Golden Yoshi, Hayashi Neru, JezJitzu, mmmdoggy, nonamelol1, PMH, Sokobansolver - Guests: 257 - Bots: 451
Users: 64,795 (2,377 active)
Latest user: mathew

Hex Edits Repository

Link Thread Closed
  • Pages:
  • 1
  • 2
Name: Straight Yoshi Fireball by darknight
Description: Turn Mario's normal fireball into Yoshi's fireball except that here you can shoot up to 8 fireballs, not only one.

Code
if read1($00FFD5) == $23
sa1rom
!Base2 = $6000
else
lorom
!Base2 = $0000
endif
org $00FE94
db -$50,$50	;   speed
org $00FEA9
db $07		;   slot
org $00FEBF
LDA #$11	;   type
STA $170B|!Base2,x
LDA #$00	;   vertical speed
org $029FD4
db $00		;   gravity
Name: Disable Mario Powerup Animations
Author: Maarfy
Description: Disables the "power-down when hurt," "touched Mushroom/growing up," "touched Fire Flower" and "touched Feather" animations, causing the player to change powerup state without freezing the game briefly.

Code
if read1($00FFD5) == $23
	sa1rom
	!addr	= $6000
else
	lorom
	!addr	= $0000
endif

;==================================================================================================

org $00F5FC				; Disable "power down" animation
	STZ $19				;  Make player small
	LDA #$7F			;  
	STA $1497|!addr			;  Set flashing invulnerability timer
	BRA $1C				;  Skip over animation setup
	NOP				;  

;==================================================================================================

org $01C554				; Disable "growing big" animation from collecting Mushroom while small
	db $6D				;  Repoints jump table past animation setup
					; 
org $01C56C				; 
	NOP				; 
	INC $19				;  Make player big

;==================================================================================================

org $01C5B4				; Disable "collected Cape Feather" animation
					;  Only use ONE of the two options below

;	BRA $07 : NOP #7		;  Use this one to still show the smoke puff

	RTL : NOP			;  Use this one to get rid of the smoke puff

;==================================================================================================

org $01C55C				; Disable "collected Fire Flower" animation
	db $F7				;  Repoints jump table past animation setup


Name: Overworld Level Remapper
Author: imamelia
Description: Makes the overworld use levels 0-5F instead of 0-24 and 101-13B. (They will still be listed as 101-13B in the overworld editor, of course.)

Code: Pastebin link





Dream team (feed them, please):








Name: SMW Boss Property Patch
Author: Luigi-San
Description: Changes many different properties related to SMW's original boss battles, including palettes, sprites thrown, hits needed to win, etc.
Code: Pastebin Link





Dream team (feed them, please):






Name: LM Level Animation Hack Manager (or LLAHM)
Author: Hamtaro126
Description:
Originally posted by Hamtaro126

This patch revamps your level animations from scratch.

Basically you can now hack Lunar Magic's Animation flags easily with this patch, without constantly getting tired of pushing the COIN button every single level!

This is compatible with Lunar Magic v2.31

Thanks for FuSoYa for the ROM hack provided within Lunar Magic.


Code:

Code
org $03FE00 ;PC 020000-020100 is LM's space for VRAM Animation options data.

;Format (Binary):
;
;76543210
;GPgp----
;
;0=Enable, 1=Disable
;
;-: Reserved (Unused)
;G: In-Game Tile Animation Flag 
;P: In-Game Palette Animation Flag 
;g: Lunar Magic Tile Animation Flag 
;p: Lunar Magic Palette Animation Flag 

;Levels $000-$0FF
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
;Levels $100-$1FF
db $00,$00,$00,$00,$30,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Name: Non-Dynamic Yoshi Tile Remapper
Author: Maarfy
Description: Allows for easy remapping of the non-dynamic tiles associated with the Yoshi, baby Yoshi and Yoshi Egg sprites, as well as tile properties as far as permitted by the original code.

Code
if read1($00FFD5) == $23
	sa1rom
else
	lorom
endif

;===================================================================================================

!whole_egg_tile		= $00	; Sprite tile of the uncracked Yoshi egg
!cracked_egg_tile	= $02	; Sprite tile of the cracked Yoshi egg
!smoke_puff_tile	= $62	; Sprite tile of smoke puff (hatched) Yoshi egg
!tongue_mid_tile	= $76	; Sprite tile of the middle segments of Yoshi's tongue
!tongue_end_tile	= $66	; Sprite tile of the tip of Yoshi's tongue
!swallowing_tile	= $3F	; Sprite tile of Yoshi's throat when swallowing
!egg_shard_tile		= $6F	; Sprite tile of Yoshi egg shard minor extended sprite

!whole_egg_page		= $01	; Graphics page used by hatching Yoshi egg + Yoshi's throat tile
!cracked_egg_page	= $01	;  $00 = SP1/SP2
!smoke_puff_page	= $00	;  $01 = SP3/SP4
!swallowing_page	= $01	; 

!whole_egg_prop		= $3B	; YXPPCCCT properties of Yoshi egg found in block or laid by Yoshi (default: green)
!color_egg_prop_x0	= $09	; YXPPCCCT properties of Yoshi Egg sprite (2C) at position X=0 (default: red)
!color_egg_prop_x1	= $07	; YXPPCCCT properties of Yoshi Egg sprite (2C) at position X=1 (default: blue)
!color_egg_prop_x2	= $05	; YXPPCCCT properties of Yoshi Egg sprite (2C) at position X=2 (default: yellow)
!color_egg_prop_x3	= $07	; YXPPCCCT properties of Yoshi Egg sprite (2C) at position X=3 (default: blue)
!tongue_prop		= $09	; YXPPCCCT properties of Yoshi's tongue segments; X-flip automatically applied as needed
!egg_shard_prop		= $03	; YXPPCCCT properties of Yoshi egg shard minor extended sprite;
				;  Y- and X-flip automatically applied as needed

;===================================================================================================

org $018335			; YXPPCCCT properties of free-standing Yoshi Egg sprite (2C)
	db !color_egg_prop_x0
	db !color_egg_prop_x1
	db !color_egg_prop_x2
	db !color_egg_prop_x3

org $019C17			; Tile used by egg found in block or laid by Yoshi
	db !whole_egg_tile

org $01F08B			; Tile used by Yoshi's throat when swallowing
	db !swallowing_tile

org $01F097			; Graphics page used by Yoshi's throat tile when swallowing
	db !swallowing_page

org $01F488			; Tile used by the middle segments of Yoshi's tongue
	db !tongue_mid_tile

org $01F48C			; Tile used by the tip of Yoshi's tongue
	db !tongue_end_tile

org $01F494			; Base YXPPCCCT properties of Yoshi's tongue
	db !tongue_prop&$BF

org $01F75C			; Tile and graphics page for hatching Yoshi egg sequence
	db !smoke_puff_page
	db !cracked_egg_page
	db !cracked_egg_page
	db !whole_egg_page

	db !smoke_puff_tile
	db !cracked_egg_tile
	db !cracked_egg_tile
	db !whole_egg_tile

org $01F794			; Tile used by free-standing Yoshi Egg sprite (2C)
	db !whole_egg_tile

org $028EB2			; Tile used by Yoshi egg shard minor extended sprite
	db !egg_shard_tile

org $028EBC			; Base YXPPCCCT properties used by Yoshi egg shard minor extended sprite
	db !egg_shard_prop&$3F

org $07F42A			; YXPPCCCT properties used by egg found in block or laid by Yoshi
	db !whole_egg_prop
Name: Stop Title Screen Movement
Description: Stops title screen player movement and looping (from FAQ).

Code
if read1($00FFD5) == $23
    sa1rom
else
    lorom
endif


org $009C82
NOP
LDA #$00
Name: No-Fade Out Goal
Description: Prevents fade out at goal walk. This hex edit does not disable fade outs after boss battles (from FAQ)

Code
if read1($00FFD5) == $23
    sa1rom
    !addr = $6000
else
    lorom
    !addr = $0000
endif


org $00AF35
	JMP $B091
	NOP

org $00B091
	LDA $13C6|!addr
	BEQ $FA
	LDA $13
	AND #$03
	JMP $AF39
All right, I've got a couple. They're simple, but basic enough that I think it's worth including them:

Name: Remove Lives
Description: Thanks to KKevinM for this one. It stops the player from losing a life when the player dies.
Code
org $00D0D8
NOP #3



This next one is one I personally like to include in all of my projects, so I'll post it here if anyone else wants it:

Name: Removes "Level Completed" Movement
Description: Stops Mario from automatically moving to the next tile on the overworld after beating a level. I can't explain why I like it so much, something about the automatic movement just always bothered me.
Code
org $04922E
db $00

Twitter
The handomest people in the world are ones who follow my Twitch
Name: Disable Dino-Torch fire.
Description: makes Dino-Torches never shoot fire (and consequently, never stop walking).

Code
if read1($00FFD5) == $23
    sa1rom
    !C2 = $D8
else
    lorom
    !C2 = $C2
endif

org $039D41
stz !C2,x
bra $58



Name: Remove cape floating timer.
Description: makes so that Mario stops floating with the cape as soon as you stop holding B, instead of waiting for a timer. (I know this is easy to find in the ROM map, but I've seen people ask for it so I may as well just put this in here).

Code
org $00D909
db $00
Name: Creating/Eating Block Sprite Editor
Author: Luigi-San, tweaked by Maarfy
Description: A group of hex edits focused on the Creating/Eating Block Sprite, gathered in patch form for ease of use.

Originally posted by Luigi-San
This patch changes the path used by the creating/eating block sprite (sprite B1, used in Roy's Castle and Larry's Castle in the original game) for both the main overworld and all submaps as well as some extra data related to the sprite. No freespace or credit needed.

Code
if read1($00FFD5) == $23
	sa1rom
	!addr	= $6000
else
	lorom
	!addr	= $0000
endif

;==================================================================================================

!tile		= $2E		; Tile shown by sprite

!SFX		= $04		; \ 
!BNK		= $1DFA|!addr	; / Sound effect played by sprite; set !SFX = $00 to mute
!SFX_rate	= 2		; Rate at which above sound effect is played (1-8, higher is slower)

!x_spd		= $10		; Horizontal movement speed of sprite
!y_spd		= $10		; Vertical movement speed of sprite

; WARNING - changing either speed causes bugs, see below

;==================================================================================================
; The two tables below set the paths used by the Creating/Eating Block sprite when on a submap or
; the main overworld. An entry of $FF terminates the sprite. The size of either table may not be
; increased, but $FF may be written sooner to create shorter paths.
;
; Format is $XY:	X = number of tiles to move (0-F)
;			Y = direction to move (0 = right, 1 = left, 2 = down, 3 = up)
;
;	Example: $XY = $92	-> "Move downwards for 9 tiles"
;
; Note that if the X or Y speed of the sprite is less than $10, the number of blocks placed becomes
; inaccurate (fewer than expected), and if greater than $10, the sprite may create gaps which will
; prematurely destroy the eating sprite.
;==================================================================================================

org $0393A4					; Submap
	db $10,$13,$10,$13,$10,$13,$10,$13
	db $10,$13,$10,$13,$10,$13,$10,$13
	db $F0,$F0,$20,$12,$10,$12,$10,$12
	db $10,$12,$10,$12,$10,$12,$10,$12
	db $D0,$C3,$F1,$21,$22,$F1,$F1,$51
	db $43,$10,$13,$10,$13,$10,$13,$F0
	db $F0,$F0,$60,$32,$60,$32,$71,$32
	db $60,$32,$61,$32,$70,$33,$10,$33
	db $10,$33,$10,$33,$10,$33,$F0,$10
	db $F2,$52,$FF

org $0393EF					; Main Overworld
	db $80,$13,$10,$13,$10,$13,$10,$13
	db $60,$23,$20,$23,$B0,$22,$A1,$22
	db $A0,$22,$A1,$22,$C0,$13,$10,$13
	db $10,$13,$10,$13,$10,$13,$10,$13
	db $10,$13,$F0,$F0,$F0,$52,$50,$33
	db $50,$32,$50,$33,$50,$22,$50,$33
	db $F0,$50,$82,$FF

;==================================================================================================

org $03926F					; Movement speed in order Right, Left, Down, Up, Stationary
	db !x_spd,$100-!x_spd,$00,$00,$00	;   X-speed
	db $00,$00,!y_spd,$100-!y_spd,$00	;   Y-speed

org $039293					; Tile used by sprite
	db !tile				; 

org $0392B0					; Sound effect playing routine
						; 
if !SFX != $00					; 
	LDA $13					; 
	AND.b #($01<<!SFX_rate)-1		; 
	ORA $9D					; 
	BNE +					; 
	LDA #!SFX				; 
	STA !BNK				; 
						; 
	+					; 
else						; 
	BRA $0B					; 
	NOP #11					; 
endif						; 

Name: Horizontal Pipe Exit SFX
Author: StackDino
Description: Allows play SFX when exiting horizontal pipes.

Code
org $00D24E
	LDA $7D
	NOP
	NOP
I noticed that some people have been asking about this in other threads, so I decided it would be good to archive this.


Name: Internal ROM Name Edit
Author: Myself, I guess
Description: It changes the title of the ROM that you see pop up when you first open the game up in an emulator. It's a nice touch to change if you really want to give your hack an extra "professional" flair, but note that changing it prevents you from opening the game in Lunar Magic until you change it back to the original.

Code
org $00FFC0
	db "SUPER MARIOWORLD     "
warnpc $00FFD5


Change the contents of the quotation marks to whatever you want. It must be "SUPER MARIOWORLD" for it to open in LM, so you can also just apply this hex edit without changing anything to revert the ROM back to normal.

And no, that's not a typo; there's no space between "MARIO" and "WORLD", but there is a space between "SUPER" and "MARIOWORLD".
Twitter
The handomest people in the world are ones who follow my Twitch
Change default amount of lives
Description: Changes the default amount of lives you start the game with. Ik there's already a patch that includes this but it also contains a lot of other junk you might not wanna mess with
Code
org $009E25
db 09 ; Change this to number of lives you want subtracted by 1. EX: 10 lives = 09


Remove Welcome Level
Description: Disables the "Welcome to Dinosuar Land" intro. S/O CodFish1002 for this one bc im blind and couldnt find the right address
Code
org $009CB1
db $00 ;  You can also change this to a different level entirely if you'd like, currently set to 00 to skip entirely
Name: Free Up Overworld Animation Graphics

Author: Anas, Yoshifanatic1

Description: Remaps the numerous duplicate frames for the vanilla overworld animations, thereby freeing up over 23 8x8 tiles like so:



The green X's denote the tiles freed up. The L's denote the tiles already free in the original. Thus, 28 8x8 free tiles are free for more animation frames.

Code
Thanks for the valuable info, Yoshifanatic!

;first cloud animation
org $048010 ; $048006+(($XX-$40)*$02), 'XX' = original tile number for frame of animation (tile 45)
dw $B560 ; dw $AD00+($XX*$20), 'XX' = new tile number for same frame of animation (tile 43)

org $048012 ; tile 46
dw $B540 ; tile 42

org $048014 ; tile 47
dw $B520 ; tile 41

;second cloud animation
org $048016 ; tile 48
dw $B580 ; tile 44

org $048018 ; tile 49
dw $B560 ; tile 43

org $04801A ; tile 4A
dw $B540 ; tile 42

org $04801C ; tile 4B
dw $B520 ; tile 41

org $04801E ; tile 4C
dw $B500 ; tile 40

org $048020 ; tile 4D
dw $B520 ; tile 41

org $048022 ; tile 4E
dw $B540 ; tile 42

org $048024 ; tile 4F
dw $B560 ; tile 43

;big star

org $048040 ; tile 5D
dw $B860 ; tile 5B

org $048042 ; tile 5E
dw $B840 ; tile 5A

org $048044 ; tile 5F
dw $B820 ; tile 59

;small star 1

org $048050 ; tile 65
dw $B960 ; tile 63

org $048052 ; tile 66
dw $B940 ; tile 62

org $048054 ; tile 67
dw $B920 ; tile 61

;small star 2
org $048072 ; tile 76
dw $BB60 ; tile 73

org $048074 ; tile 77
dw $BB40 ; tile 72

;small star 3
org $048076 ; tile 78
dw $BBA0 ; tile 75

org $04807C ; tile 7B
dw $BB00 ; tile 70

org $048080 ; tile 7D
dw $BC40 ; tile 7A

org $048082 ; tile 7E
dw $BC20 ; tile 79

My Mode 0 guide.

My Discord server. It has a lot of archived ASM stuff, so check that out!

Got some more hex edits coming up:

Name: Coin Score Sprite Fix

Author: Yoshifanatic1

Description: Fixes a vanilla bug where the unused coin score sprites (5-, 10-, 15-, 20-, and 25-coin scores) add a grossly excessive amount of points to the score counter.

Code
org $02AE01
BRA CODE_02AE35

org $02AE35
CODE_02AE35: ; don't let coin score sprites give you points


------------------------------------------------------------

Name: Customizable Dragon Coin Scores

Author: Anas

Description: Allows you to customize the scores from collecting the first, fourth and fifth dragon coins.

Code
org $00F37E
db $69,$XX ; beginning consecutive score from getting first dragon coin (i.e., 10-coin score sprite, or 0x12)

org $00F380
db $C9,$YY ; ending consecutive score from getting fourth dragon coin (i.e., 25-coin score sprite, or 0x16). 
; Should be the desired score sprite PLUS one, otherwise, the fourth DC will give the score dictated in the third hex edit in this code!

org $00F384
db $A9,$ZZ ; score from getting last dragon coin (e.g., 1-up, or 0x0D)


The score values should be taken from here:

00 = Nothing at all
01 = 10
02 = 20
03 = 40
04 = 80
05 = 100
06 = 200
07 = 400
08 = 800
09 = 1000
0A = 2000
0B = 4000
0C = 8000
0D = 1UP
0E = 2UP
0F = 3UP
10 = 5UP (glitched)
11 = 5-coin score sprite (glitched)
12 = 10-coin score sprite (glitched)
13 = 15-coin score sprite (glitched)
14 = 10-coin score sprite (glitched)
15 = 25-coin score sprite (glitched)

------------------------------------------------------------

Name: Remap First Left Tile for All Coin Score Sprites

Author: Anas

Description: Allows you to remap the first tile to the left used by all five unused coin score sprites, as STEAR only allows you to remap the last two tiles to the right. You should use this patch in order for all the three remapped tiles for each coin sprite to appear correctly.

Code
org $02AF13 
LDA.b #$XX ; tile used by all five coin score sprites

My Mode 0 guide.

My Discord server. It has a lot of archived ASM stuff, so check that out!

Name: Easy to Enter Doors
Description: Make doors more easy to enter by adjusting its enterable region
Address: $00F443

Code
; width of door enterable region of the door (up to 0x10, default 0x08) 
org $00F44B : db $10

; offset of door enterable region, which is half of above (default 0x04)
org $00F447 : db $05 


Does what it says on the tin which is make doors more easy to enter when Mario is close to them rather than requiring him to be right on the center. This is especially useful for making doors in Kaizo setups easier and entering a door under high pressure or speed.
Name: Chuck Arm Palette Fix
Description: Changes the palette of chuck's arm to also be green
Address: $02CAFA

Code
; fix chuck arm palette
org $02CAFA
	db $4B,$0B


Fixes that annoying bug in Charging Chuck where the palette of chuck's arm is noticeably mismatched (blue) when he is charging at Mario.

Name: Start Fast BG Scroll Without Sprite
Description: Allow fast BG scroll to start without sprite C1 or 5E
Address: $05C7BC

Code
; allow fast BG scroll to start without sprite C1/5E
org $05C7BC
	db $A9,$08,$EA


This edit will allow the Fast BG Scroll sprite (F4) to start scrolling the background quickly without Mario having to touch the Flying Grey Turnblocks (sprite C1) or the Orange Platform that goes on forever (sprite 5E).
  • Pages:
  • 1
  • 2
Link Thread Closed