Banner
Views: 235,804,288
Time: 2013-05-18 07:21:35 PM
23 users online: o An00bis, Carld923, CerberusYoshi, Daizo Dee Von, ErikAlay, EvilGuy0613, Fireblast124, Grav, Jack Kitetsu, KY2010, mario90, MarioBros980, Masterlink, NES Boy, Phazon, Pixels, Rextep, Septentrion Pleiades, ShadowFire, o ShadowPhoenix, SilverDeoxys563, TheDutchLuigi, TomPhanto - Guests: 30 - Bots: 14Users: 22,838 (1,284 active)
Latest: BobNewbie
Tip: Layer 3 backgrounds and tides disappear when you hit a message box, so plan your level around that. For example, you can add a sublevel without layer 3 at the start/midpoint, and include your message there.
Posts by tehaxor69
tehaxor69's Profile - Posts by tehaxor69
Pages: « 1 ... 10 11 12 13 14 15 16 »
(restricted)
(restricted)
@Zeldara109

Changing the scene at the end of a boss battle is a little more difficult
because all of the bosses are hard coded to preform the transition events.


To enable keys for all bosses, change:
ROM 0x016264 SNES 0x02E064 from [F0 27] to [EA EA]
The X-4 scene is shorter than the X-8, it will cut off after the wipe out effect.

You could get the complete key scene with burt by changing
ROM 0x0324BA SNES 0x06A2BA to [A9 2D 00 9D 60 73 A9 0B 00 95 76 6B]
Burt is still a little glitchy with this one, untransformed burt will jump in again because it reloads him.

Prince Froggy is not compatible with the key, but his SFX render area could be moved to fix it.



Edit:
To get Burt's scene fully functional change ROM 0x0324BA SNES 0x06A2BA to

BD E2 70 85 00 BD 82 71 38 E9 10 00 85 02 22 A3
E1 02 A9 C0 00 9D 96 7A
EA EA EA EA EA EA EA EA EA EA EA EA EA EA EA EA
EA EA EA EA EA EA EA EA EA




All Boss Key Modifications:
To give Burt The Bashful a key, change:
ROM 0x0324E8 SNES 0x06A2E8 to 0xA3

To give Bigger Boo a key, change:
ROM 0x023D7C SNES 0x04BB7C to 0xA3

To give Prince Froggy A key, change:
ROM 0x077A10 SNES 0x0EF810 to 0xA3

To give Marching Milde A key, change:
ROM 0x032D59 SNES 0x06AB59 to 0xA3

To give Sluggy The Unshaven a key, change:
ROM 0x015970 SNES 0x02D770 to 0xA3

To give Tap-Tap The Red Nose a key, change:
ROM 0x07A7B6 SNES 0x0FA5B6 to 0xA3

To remove Salvo The Slimes's key, change:
ROM 0x030EB5 SNES 0x068CB5 to 0x9C

To remove Potted Ghost's key, change:
ROM 0x0107D4 SNES 0x0285D4 to 0x9C

To remove Naval Piranha's key, change:
ROM 0x0173F9 SNES 0x02F1F9 to 0x9C For Normal
ROM 0x0008D8 SNES 0x0086D8 to 0x9C For "OH, MY!!!" scene

To remove Hookbill The Koopa's key, change:
ROM 0x00A20B SNES 0x01A00B to 0x9C

To remove Raphael The Raven's key, change:
ROM 0x07B92D SNES 0x0FB72D to 0x9C
Here are all the tables used for the bonus levels.

ROM 0x081CB8 SNES 0x109AB8
0x0089 Bonus 1
0x008D Bonus 2
0x0091 Bonus 3
0x0093 Bonus 4
0x008F Bonus 5
0x008B Bonus 6

ROM 0x081CC4 SNES 0x109AC4
0x008A Bonus 1
0x008E Bonus 2
0x0092 Bonus 3
0x0094 Bonus 4
0x0090 Bonus 5
0x008C Bonus 6

ROM 0x081CD0 SNES 0x109AD0
0x0095 Bonus 1
0x0095 Bonus 2
0x0095 Bonus 3
0x0095 Bonus 4
0x0095 Bonus 5
0x0095 Bonus 6


ROM 0x081C88 SNES 0x109A88
0x401C Bonus 1
0x410C Bonus 2
0x41FC Bonus 3
0x4274 Bonus 4
0x4184 Bonus 5
0x4094 Bonus 6

ROM 0x081C94 SNES 0x109A94
0x4076 Bonus 1
0x4166 Bonus 2
0x4256 Bonus 3
0x42CE Bonus 4
0x41DE Bonus 5
0x40EE Bonus 6

ROM 0x081CA0 SNES 0x109AA0
0x2860 Bonus 1
0x2860 Bonus 2
0x2860 Bonus 3
0x2860 Bonus 4
0x2860 Bonus 5
0x2860 Bonus 6

ROM 0x081CAC SNES 0x109AAC
0x2860 Bonus 1
0x2860 Bonus 2
0x2860 Bonus 3
0x2860 Bonus 4
0x2860 Bonus 5
0x2860 Bonus 6


ROM 0x081F34 SNES 0x109D34
0x68D8 Bonus 1
0x68D8 Bonus 2
0x68D8 Bonus 3
0x68D9 Bonus 4
0x68D8 Bonus 5
0x68D8 Bonus 6

ROM 0x081E74 SNES 0x109C74
0x9E78 Bonus 1
0x9EF6 Bonus 2
0xA000 Bonus 3
0xA0BD Bonus 4
0x9FB5 Bonus 5
0x9F3F Bonus 6

ROM 0x082369 SNES 0x10A169
0xA26F Bonus 1
0xB5CE Bonus 2
0xCD4F Bonus 3
0xD181 Bonus 4
0xC497 Bonus 5
0xBD5D Bonus 6

ROM 0x082638 SNES 0x10A438
0x0058 Bonus 1
0x00E8 Bonus 2
0x0118 Bonus 3
0x00B8 Bonus 4
0x0088 Bonus 5
0xE0CE Bonus 6
Which bonus games are available for each world.

ROM 0x00C12C SNES 0x01BF2C
0x00 0x02 World 1
0x04 0x0A World 2
0x06 0x08 World 3
0x04 0x02 World 4
0x00 0x08 World 5
0x06 0x0A World 6

0x00 = Flip cards
0x02 = Scratch and match
0x04 = Drawing lots
0x06 = Match cards
0x08 = Roulette
0x0A = Slot machine
Here are some offsets for the controller options layout

ROM 0x0BEC3A SNES 0x17EA3A //Width of "Lock", "Grab / Spitout", "Jump"


Offset for the top outlines
ROM 0x0BEB87 SNES 0x17E987 "Lock"
ROM 0x0BEB8A SNES 0x17E98A "Grab / Spitout"
ROM 0x0BEB8D SNES 0x17E98D "Jump"

Offset for the bottom outlines
ROM 0x0BEB93 SNES 0x17E993 "Lock"
ROM 0x0BEB96 SNES 0x17E996 "Grab / Spitout"
ROM 0x0BEB99 SNES 0x17E999 "Jump"

Offset for "Lock" -no boarder
ROM 0x0BEC3F SNES 0x17EA3F
ROM 0x0BEC45 SNES 0x17EA45

Offset for "Grab / Spitout" -no boarder
ROM 0x0BEC4A SNES 0x17EA4A
ROM 0x0BEC50 SNES 0x17EA50

Offset for "Jump" -no boarder
ROM 0x0BEC55 SNES 0x17EA55
ROM 0x0BEC5B SNES 0x17EA5B



To Move "Lock" -no boarder
ROM 0x0BEC3F SNES 0x17EA3F to [CE 0A]
ROM 0x0BEC45 SNES 0x17EA45 to [0E 0B]

To Move "Grab / Spitout" -no boarder
ROM 0x0BEC55 SNES 0x17EA55 to [4E 0C]
ROM 0x0BEC5B SNES 0x17EA5B to [8E 0C]

The boarders might need to be graphically edited, or removed and added into the tabs themselves.
I still need to find the offsets for the sides.


You could hijack here to add the "X Stuff" panel.
ROM 0x0BEC5D SNES 0x17EA5D

The new tab can be written here in ram
0x000B8E for top
0x000BCE for bottom

Edit:
"Lock" Top left
ROM 0x0BEBCB SNES 0x17E9CB
"Lock" Bottom left
ROM 0x0BEBCE SNES 0x17E9CE

"Grab / Spitout" Top left
ROM 0x0BEBD1 SNES 0x17E9D1
"Grab / Spitout" Bottom left
ROM 0x0BEBD4 SNES 0x17E9D4

"Jump" Top left
ROM 0x0BEBD7 SNES 0x17E9D7

"Lock" Bottom right
ROM 0x0BEBDD SNES 0x17E9DD
"Grab / Spitout" Bottom right
ROM 0x0BEBE0 SNES 0x17E9E0
"Jump" Top right
ROM 0x0BEBE3 SNES 0x17E9E3
"Jump" Bottom right
ROM 0x0BEBE6 SNES 0x17E9E6

"Lock" Top right
ROM 0x0BEBEE SNES 0x17E9EE
"Grab / Spitout" Top right
ROM 0x0BEBF1 SNES 0x17E9F1
"Jump" Bottom left
ROM 0x0BEBF7 SNES 0x17E9F7

"A Action" Top left
ROM 0x0BEBFF SNES 0x17E9FF
"A Action" Bottom left
ROM 0x0BEC07 SNES 0x17EA07
"A Action" Top right
ROM 0x0BEC0F SNES 0x17EA0F
"A Action" Bottom right
ROM 0x0BEC12 SNES 0x17EA12

"A Action" Top right patch
ROM 0x0BEC1A SNES 0x17EA1A
"A Action" Top left patch
ROM 0x0BEC20 SNES 0x17EA20
"A Action" Bottom left patch
ROM 0x0BEC26 SNES 0x17EA26
Last edited on 2012-04-13 08:16:23 AM by tehaxor69.
The auto scroller coordinates are absolute, not relative, look at this post on how to edit them.
To remove the boarders for the objects on the left side(Lock, Grab/Spitout)

Sides
ROM 0x0BEBED SNES 0x17E9ED to [EA EA EA]
ROM 0x0BEBF0 SNES 0x17E9F0 to [EA EA EA]
ROM 0x0BEBDC SNES 0x17E9DC to [EA EA EA]
ROM 0x0BEBDF SNES 0x17E9DF to [EA EA EA]
ROM 0x0BEBD0 SNES 0x17E9D0 to [EA EA EA]
ROM 0x0BEBD3 SNES 0x17E9D3 to [EA EA EA]
ROM 0x0BEBCA SNES 0x17E9CA to [EA EA EA]
ROM 0x0BEBCD SNES 0x17E9CD to [EA EA EA]

Top
ROM 0x0BEB86 SNES 0x17E986 to [EA EA EA]
ROM 0x0BEB89 SNES 0x17E989 to [EA EA EA]
Bottom
ROM 0x0BEB92 SNES 0x17E992 to [EA EA EA]
ROM 0x0BEB95 SNES 0x17E995 to [EA EA EA]

The tilemaps of the left and right parts are these offsets +1.
Originally posted by Yoshis Fan
One of these two things must be done to make him worthy to be 5-8's boss:
- Increase speed
- Make Sparks hit Yoshi on logs

I would be glad if someone could find something for me.


ROM 0x07AE23 SNES 0x0FAC23 [38] How high sparks are off the ground
ROM 0x07ADD8 SNES 0x0FABD8 [0003] How fast sparks move right
ROM 0x07ADDA SNES 0x0FABDA [FFFD] How fast sparks move left
ROM 0x07AE46 SNES 0x0FAC46 [80] Life time of sparks
ROM 0x07AE47 SNES 0x0FAC47 [90] Change to 0x80 to make sparks last forever
ROM 0x07B70D SNES 0x0FB50D [07] What health level uses method 1 movement rate [0001 FFFF]
ROM 0x07B711 SNES 0x0FB511 [0030] Method 2 movement rate frequency
Last edited on 2012-04-18 06:22:21 PM by tehaxor69.
ROM 0x07B70D just determines what health value he is calm.

ROM 0x07B711 is a pointer to a 16 bit value that is always incrementing,
depending on what the value is, it will cause Raphael to more 1X or 2X per frame.
Here is the way Raphael the Raven works

He has 3 hit points, health values: (0x07, 0x03, 0x01)

When he moves, the health value is read in, this value is compared with 0x07,
if so it does method 1, if not it does method 2.

Method 1 adds values 0x01 or 0xFF depending on the direction he is facing.

Method 2 does the same, but in addition it reads the value at 0x0030 that increments once per frame,
this value is AND with his health value, when the result of this is 0 he moves twice, other wise he moves once.

Health value 0x03 will have the pattern:
Cycle 0 1 2 3 4 5 6 7…
Pattern 2 1 1 1 2 1 1 1…

Health value 0x01 will have the pattern:
Cycle 0 1 2 3 4 5 6 7…
Pattern 2 1 2 1 2 1 2 1…

So the routine needs to be hacked to produce a different movement pattern.

You could change it so that it reads in the 0x0030 value AND with 0x03, this will be the table index,
1 table for each health level, each number in the table is the number of times to add the 0x7B689 values

Normal health values:
0x07:
1 1 1 1 100%
0x03:
2 1 1 1 125%
0x01:
2 1 2 1 150%

The values you wanted:
0x07:
1 2 2 2 175%
0x03:
2 2 2 2 200%
0x01:
3 2 2 2 225%
Here is a Xkas patch to modify the speed of Raphael the Raven.

Code
lorom header ORG $0FB509 PHX LDA $0030 AND #$03 STA $00 LDA $7900,X TAX LDA HealthIndexTable,X ASL A ASL A CLC JSR $E056 PLX RTS ORG $0FE056 ADC $00 TAX LDA Speed,X TAX LOOP: JSR MOVE DEX CPX #$00 BNE LOOP RTS MOVE: LDA $105D CLC ADC $B489,Y STA $105D RTS HealthIndexTable: db $00, $00, $00, $01, $00, $00, $00, $02 Speed: db $03, $02, $02, $02 ;0x01 db $02, $02, $02, $02 ;0x03 db $01, $02, $02, $02 ;0x07
You could update the tables with:

Code
HealthIndexTable: $00, $00, $00, $01, $00, $00, $00, $02, $00, $00, $00, $00, $00, $00, $00, $03 $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $04 $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $05 $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $06 Health: db $03, $02, $02, $02 ;0x01 db $02, $02, $02, $02 ;0x03 db $01, $02, $02, $02 ;0x07 db $02, $01, $02, $01 ;0x0F db $02, $01, $01, $01 ;0x1F db $01, $01, $01, $01 ;0x3F
You can't make those changes to Hookbill the Koopa because of SNES hardware limitations with the mode 7.
It should be possible to render his shell as a SFX sprite to sprite slots (4-5) or (5-6) once the transformation starts,
won't be hard to convert the M7BG1 to 4BPP, because his palettes only use 10 colors+transparency.
Here is a code that will allow for spikes(or other objects) during Hookbill's battle.
This will modify HDMA channels 6-7 to allow layer 2 to show for the first 32 lines,
then switch to M7BG1 for 122 lines,
then switch back to layer 2.

I have explained in the Xkas what to change to move spikes down further if wanted.

Code
lorom header !TempVar = $7FE0 ORG $00813A JML HookBill_HDMA_Hack ORG $3FFD00 HookBill_HDMA_Hack: PHP REP #$20 LDA $7FFE ;Read Translevel Number CMP #$(Insert Translevel Number Here) BNE SKIP_CHECK LDA !TempVar CMP #$0000 BNE SKIP_CHECK LDA $7E5040 CMP #$0770 BNE DONE INC !TempVar SKIP_CHECK: LDA #NewChannel6 STA $4362 LDA #$003F STA $4364 LDA #NewChannel7 STA $4372 LDA #$003F STA $4374 DONE: PLP DEC $011B JML $0080F1 ;This data is for spikes at the top of the screen. ;Add 0x10 to the 0x20 and 0x7A for every tile you want to move down. NewChannel6: db $20, $12, $00, $7A, $11, $00, $01, $12, $00, $00 NewChannel7: db $20, $49, $7A, $07, $01, $49, $00



The spikes are moved down one row in this image.
OK, use this code to fix the overworld bug.

Code
lorom header !TempVar = $7FE0 ORG $00813A JML HookBill_HDMA_Hack ORG $3FFD00 HookBill_HDMA_Hack: PHP REP #$20 LDA $0118 CMP #$000F BNE DONE LDA $7FFE ;Read Translevel Number CMP #$(Insert Translevel Number Here) BNE DONE LDA !TempVar CMP #$0000 BNE SKIP_CHECK LDA $7E5040 CMP #$0770 BNE DONE INC !TempVar SKIP_CHECK: LDA #NewChannel6 STA $4362 LDA #$003F STA $4364 LDA #NewChannel7 STA $4372 LDA #$003F STA $4374 DONE: PLP DEC $011B JML $0080F1 ;This data is for spikes at the top of the screen. ;Add 0x10 to the 0x20 and 0x7A for every tile you want to move down. NewChannel6: db $20, $12, $00, $7A, $11, $00, $01, $12, $00, $00 NewChannel7: db $20, $49, $7A, $07, $01, $49, $00
You need to make sure that you read the translevel number $021A
or the area index $701FFE(&7FFE) with the patch Yoshis Fan made.
Code
LDA $7FFE ;Read Translevel Number CMP #$(Insert Translevel Number Here) BNE DONE
I had to hijack it after the OAM table update.

If you are using the $021A address, 0x13 would work.

@Yoshis Fan
If you are using this in your hack, just read $7FFE, and if you haven't changed what room Hookbill appears in then the value will be 0x86.
I'll look into the jump height.
Here is how to modify Hookbill's jump height, all values are 16bit signed.

Run then jump
ROM 0x00988C SNES 0x01968C [00 FB]
Jump up, pause, fall
ROM 0x009CA8 SNES 0x019AA8 [00 FA]
Bounce
ROM 0x009D91 SNES 0x019B91 [00 F8]
@doggy
You need to use:
Code
LDA $021A CMP #$0013
Pages: « 1 ... 10 11 12 13 14 15 16 »
tehaxor69's Profile - Posts by tehaxor69

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2013 - SMW Central
Legal Information - Link To Us


Total queries: 27

Menu