Project Phoenix!
Zeldix :: Zelda III Hacking :: The Archives :: Milk Utopia
Page 7 of 8
Page 7 of 8 • 1, 2, 3, 4, 5, 6, 7, 8
Re: Project Phoenix!
Alright, here's my second try of that new ganon on hard mode! I didn't filmed the first try, but I died quickly as that first phase caught me off guard. Came more prepared into the second fight and this is as far as I got with my poor playing skills
He's definately faster then ever before! He could probably be harder still, I'll probably reduce of lenght of that speed potion because its easy to abuse that to make the fight more easier.
He's definately faster then ever before! He could probably be harder still, I'll probably reduce of lenght of that speed potion because its easy to abuse that to make the fight more easier.
Floki- Since : 2012-06-19
Re: Project Phoenix!
I'm surprised you didnt do the cape/cane dash trick on first form (everybody does it)
Its still X to show shadow i havent changed that yet.
Also i've had a case where i'd get stuck in a wall after falling down top left/top right.
Its still X to show shadow i havent changed that yet.
Also i've had a case where i'd get stuck in a wall after falling down top left/top right.
Euclid- Since : 2012-06-21
Re: Project Phoenix!
Yeah after changing this game for so long, I'm starting to have alzheimer's disease with everything about this game fundamental tactics it seems haha
I changed my floor drops to new paths to make the boss fight slightly more challenging:
I'll also fix the drop into the room below so you no longer get stuck!
I changed my floor drops to new paths to make the boss fight slightly more challenging:
I'll also fix the drop into the room below so you no longer get stuck!
Floki- Since : 2012-06-19
Re: Project Phoenix!
To remove the fade out between the areas, just restore the value at 0x12ADD from 80 into F0.
After restoring the value, I've tried going from one area to another (that had the same gfx and sprite numbers) and it seems that NEONswift two layers on overworlds asm hack can't reload the 2nd layer properly when entering the new area and instead keeps displaying the 2nd layer from the overworld area you originated from.
His asm hack uses the light world as the 1st layer and the dark world acts as the 2nd layer. So I'm assuming that he coded his asm hack to reload properly only during screen transitions and thats probably why he implemented them everywhere.
So unless you get that the 2nd overworld layer from the other area to properly load, I will hold off on that overworld areas with transitions list :-P
After restoring the value, I've tried going from one area to another (that had the same gfx and sprite numbers) and it seems that NEONswift two layers on overworlds asm hack can't reload the 2nd layer properly when entering the new area and instead keeps displaying the 2nd layer from the overworld area you originated from.
His asm hack uses the light world as the 1st layer and the dark world acts as the 2nd layer. So I'm assuming that he coded his asm hack to reload properly only during screen transitions and thats probably why he implemented them everywhere.
So unless you get that the 2nd overworld layer from the other area to properly load, I will hold off on that overworld areas with transitions list :-P
Floki- Since : 2012-06-19
Re: Project Phoenix!
If that's the case I'll probably tinker with the palettes so the transition is faster.
Also if you're changing with the tiles make sure Ganon doesn't get stuck over the gaps (I've never really tested whether he flies over gaps)
I've also realised why PW is total darkness when he breaks the tiles (because Ganon is not room 0) - I'm going to try some stuff next weekend to see whether that'll work for hard mode, which will make it hard enough (then I get to tinker with other bosses such as the speed of the already-fast moldrum, which will be interesting)
I've also got a slightly interesting idea with Ganon if you feel like taking it on. Assuming we use giant poo song MSU and similar sounding SPC (for some reason ganon throwing bats at you feels like he's throwing poo at you).
After breaking the tiles, when the message pops up
- if you're in easy mode, music change to the giant poo MSU/SPC so shadows show up automatically
- if you're in hard mode, music change to something else (eg/ agahnim song or something) so you have to "know the song" to change it back (i.e. played easy mode or something).
that way you don't even need to leave a hint anywhere, players who played normal mode should notice why the music is different and change it back. Or you can make Ganon say "I'm going to throw all my shit at you!" (or something relevant like that)
Also if you're changing with the tiles make sure Ganon doesn't get stuck over the gaps (I've never really tested whether he flies over gaps)
I've also realised why PW is total darkness when he breaks the tiles (because Ganon is not room 0) - I'm going to try some stuff next weekend to see whether that'll work for hard mode, which will make it hard enough (then I get to tinker with other bosses such as the speed of the already-fast moldrum, which will be interesting)
I've also got a slightly interesting idea with Ganon if you feel like taking it on. Assuming we use giant poo song MSU and similar sounding SPC (for some reason ganon throwing bats at you feels like he's throwing poo at you).
After breaking the tiles, when the message pops up
- if you're in easy mode, music change to the giant poo MSU/SPC so shadows show up automatically
- if you're in hard mode, music change to something else (eg/ agahnim song or something) so you have to "know the song" to change it back (i.e. played easy mode or something).
that way you don't even need to leave a hint anywhere, players who played normal mode should notice why the music is different and change it back. Or you can make Ganon say "I'm going to throw all my shit at you!" (or something relevant like that)
Euclid- Since : 2012-06-21
Re: Project Phoenix!
You're right about Ganon, I'll test it out and if there's any problems, I'll make new paths. If you're intending on making the fight harder with the full room darkness, I could probably just restore the original paths so it isn't too much chaotic in there haha.
About hardmode, I have a question. Is it possible to make an entrance change on a specific entrance if you are playing on hard mode (like you did with the 2nd quest in PW)?
Its the fountain theme otherwise in the spc if you use that same track. If I'm not too lazy this week, I could probably add the great mighty poo song in spc format too so that song could be the one used instead.
But I definately could change the bat graphics to reflect your text hint!
About hardmode, I have a question. Is it possible to make an entrance change on a specific entrance if you are playing on hard mode (like you did with the 2nd quest in PW)?
For msu, you can use track 11 (hex 0B), thats a trap remix of the great mighty poo song albeit with no voices...but the closest thing in the new soundtrack that fits the description :-PI've also got a slightly interesting idea with Ganon if you feel like taking it on. Assuming we use giant poo song MSU and similar sounding SPC (for some reason ganon throwing bats at you feels like he's throwing poo at you).
Its the fountain theme otherwise in the spc if you use that same track. If I'm not too lazy this week, I could probably add the great mighty poo song in spc format too so that song could be the one used instead.
That sounds good! For the song switch on hard mode you could use track 98 (hex 62) which is the theme of the agahnim superboss and it lasts 7 minutes!After breaking the tiles, when the message pops up
- if you're in easy mode, music change to the giant poo MSU/SPC so shadows show up automatically
- if you're in hard mode, music change to something else (eg/ agahnim song or something) so you have to "know the song" to change it back (i.e. played easy mode or something).
No worries, I'll leave no hints for now and let the beta testers decide later ;-)that way you don't even need to leave a hint anywhere, players who played normal mode should notice why the music is different and change it back. Or you can make Ganon say "I'm going to throw all my shit at you!" (or something relevant like that)
But I definately could change the bat graphics to reflect your text hint!
Floki- Since : 2012-06-19
Re: Project Phoenix!
Yes, very simple.SePH wrote:
About hardmode, I have a question. Is it possible to make an entrance change on a specific entrance if you are playing on hard mode (like you did with the 2nd quest in PW)?
I've gotten total darkness ganon working, just need to figure out how to put the asm in
- 7EC005 - 01 on entry via room header (room should show slightly dark on entry, this room header flag is special, if you open up a CLEAN lttp rom on entrance 7B, BG2 should be -blank-, that's the special header here, HM doesn't allow you to set this BG2 flag back)
- 7EC005 - 00 when room is dark (PW zero's out the ram on entry due to not room 0)
- 7EC005 - 01 when torches are lit (PW happens when Ganon's HP is coded to phase 3 - after tile break, from a copy and paste asm)
Basically the reason why it works like that in PW is because I was tinkering with it too much and broke it (I was coding in hex back then, so pardon me...) - and I didn't know how to fix it but it looked cool!
With the pattern above, you can trigger total darkness even before the tile break phase, but I'll try to make it the same as PW (after last tile break). I must've accidentally wrote to that RAM without knowing what it did back then when I tinkered with Ganon!
13 year old mystery finally solved!
Euclid- Since : 2012-06-21
Re: Project Phoenix!
That's great because I could do different Underverse boss rush rooms for hardmode only. I would merge my bossrush project with my main hack instead and release only one thing!Euclid wrote:Yes, very simple.SePH wrote:
About hardmode, I have a question. Is it possible to make an entrance change on a specific entrance if you are playing on hard mode (like you did with the 2nd quest in PW)?
Can't we set this flag in hex by restoring room 0 original header?Euclid wrote:7EC005 - 01 on entry via room header (room should show slightly dark on entry, this room header flag is special, if you open up a CLEAN lttp rom on entrance 7B, BG2 should be -blank-, that's the special header here, HM doesn't allow you to set this BG2 flag back)
Haha so that feature was actually an error on your part? Thats amazing lolEuclid wrote:Basically the reason why it works like that in PW is because I was tinkering with it too much and broke it (I was coding in hex back then, so pardon me...) - and I didn't know how to fix it but it looked cool!
With the pattern above, you can trigger total darkness even before the tile break phase, but I'll try to make it the same as PW (after last tile break). I must've accidentally wrote to that RAM without knowing what it did back then when I tinkered with Ganon!
13 year old mystery finally solved!
Floki- Since : 2012-06-19
Re: Project Phoenix!
What does this effect does to the fight with Ganon?
Because if it would be possible to add that effect via asm (if its necessary for the fight), we could do something else to add difficulty:
A bit evil, I know
Because if it would be possible to add that effect via asm (if its necessary for the fight), we could do something else to add difficulty:
A bit evil, I know
Floki- Since : 2012-06-19
Re: Project Phoenix!
That ganon room flag I have no idea what it is, it's the BG2 setting next to layout on the top left and yes that can be restored pretty easily (or I can hard code it by asm, which is probably easier because it moves around quite a bit due to HM)
And lol didn't know moving floors work in that room, it's funny (and very evil).
I suspect the Ganon room flag is for the 2 torches to be lit when you enter and only be non torches after the tile break, but it never seems to work properly after you change the torch location.
And lol didn't know moving floors work in that room, it's funny (and very evil).
I suspect the Ganon room flag is for the 2 torches to be lit when you enter and only be non torches after the tile break, but it never seems to work properly after you change the torch location.
Euclid- Since : 2012-06-21
Re: Project Phoenix!
Alright thanks, I'll move forward with my moving floors plan then and restore the original floordrop paths...so we'll have full darkness and moving floors! I think this should be challenging enough haha
I'll also fix the palettes of the boss and room so it looks more apealing
I'll also fix the palettes of the boss and room so it looks more apealing
Floki- Since : 2012-06-19
Re: Project Phoenix!
Alright the Ganon room effect apparently has to do with ganon showing up because if the moving floor effect is set, ganon doesnt show up when I light the torches :-(
Floki- Since : 2012-06-19
Re: Project Phoenix!
Here it is, full darkness ganon (hard mode only). Please also go to HM and change the BG2 for room 0 to be Dark Room for this to work.
I hooked it off different locations than PW, so his sprite may appear brighter than normal.
Also for transitions (do not apply to master rom), test it with these hex changes, I think breaking the DMA may have side effects (for one the menu select looks different)
Remove palette scramble for transition
0x012E5E - EA EA EA
0x0130E4 - EA EA EA
Change the DMA target location, so the target palette is loaded during the transition (you may sometimes get one or two frames of bad palette)
0x00B96 - C5 -> C3
Shorten the amount of time for transition (without the above 2 fixes palettes will screw up due to the fade to/from black palette change)
0x010CBE - 1F -> 01
I hooked it off different locations than PW, so his sprite may appear brighter than normal.
- Code:
;
; XKAS module - Euclid 2019
;
; Phoenix Boss Patch
; - Agahnim
; - Ganon + Full Darkness hard mode
;
lorom
; hooks.
ORG $9EDB27
BRA $1A ; remove shooting ball shadow from agahnim (less lag), looks less pretty but meh.
ORG $9ED6EE
NOP
JSL AGAHNIM_NOT_SO_RANDOM_BALLS_2
BCC $12
JSL AGAHNIM_NOT_SO_RANDOM_BALLS
ORG $9EDB9C
NOP
JSL BLUE_BALLS_NUMER_CHANGE
ORG $9EDBAB
JSL BLUE_BALLS_SPAWN
ORG $9EDBC3
JSL BLUE_BALLS_SPAWN_LOCATION
NOP
ORG $2F842D
JSL TARDIS_AGAHNIM_BUFF
ORG $9ED4BF
JSL TARDIS_SPLIT_MOD
ORG $9ED52F
NOP
JSL SUPER_FAST_AGAHNIM
ORG $9EFF48
JSL FAST_BALLS
ORG $9DE971
JSL SUPER_FAST_GANON
ORG $9D9179
JSL GANON_BATS_HARD
NOP
NOP
NOP
NOP
NOP
; full darkness ganon
ORG $9D92EC
JSL FULL_DARKNESS_GANON_1
ORG $9D9082
JSL FULL_DARKNESS_GANON_2
ORG $9D900B
JSL FULL_DARKNESS_GANON_3 ; backup just in case of torch timers.
; GANON Bats spawn
ORG $1D8E7E
LDY #$08
; ALL MODES: Ganon remove expanding bats.
ORG $9D9220
STZ $0DF0,x
; ALL MODES: Ganon bats move off screen quicker
ORG $9D9241
db $08, $10, $08, $40, $08, $20, $08
; HARD MODE; faster reaction
ORG $9D8E80
JSL GANON_FASTER_REACTION
; programming location
ORG $45F000
AGAHNIM_NOT_SO_RANDOM_BALLS_2:
LDA $7EF32E
BEQ $06
LDA $0E30,x
CMP #$02
RTL
SEC
RTL
AGAHNIM_NOT_SO_RANDOM_BALLS:
;CPU State envMXdizC
LDA $7EF32E
BEQ AGAHNIM_NOT_SO_RANDOM_BALLS_FOR_HARD_MODE
; original code
JSL $8DBA71 ; basically if this returns 0 = blue, 1 = bouncy.
RTL
AGAHNIM_NOT_SO_RANDOM_BALLS_FOR_HARD_MODE:
JSL $8DBA71 ; ~25% bouncy
AND #$06 ; so we're comparing to a specific number
BEQ $03
LDA #$00 ; blue
RTL
LDA $7EF36E
CMP #$20
BCS DMAGIC2
LDA #$00
STA $7EF36E
LDA #$01 ; bouncy
RTL
DMAGIC2:
SEC
SBC #$20
STA $7EF36E
LDA #$01 ; bouncy
RTL
BLUE_BALLS_NUMER_CHANGE:
; CPU state envMXdizC
LDA $7EF32E
BEQ AGAHNIM_BLUE_BALLS_NUMBER_FOR_HARD_MODE
LDA #$05
BRA $02
AGAHNIM_BLUE_BALLS_NUMBER_FOR_HARD_MODE:
LDA #$01
STA $0FB5
RTL
BLUE_BALLS_SPAWN:
LDA $7EF32E
BEQ AGAHNIM_BLUE_BALLS_SPAWN_FOR_HARD_MODE
LDA #$55
JSL $9DF65D
RTL
AGAHNIM_BLUE_BALLS_SPAWN_FOR_HARD_MODE:
LDA #$BF
JSL $9DF65D
LDA #$26
STA $012F
RTL
BLUE_BALLS_SPAWN_LOCATION:
ADC #$04
STA $0D00,y
LDA $7EF32E
BEQ $01
RTL
LDA #$00
STA $0D00,y ; location change.
RTL
TARDIS_AGAHNIM_BUFF:
SEP #$20
LDA $A0
CMP #$0D
BEQ IS_TARDIS
RTL
IS_TARDIS:
LDA $0E51
CMP #$60
BEQ MYSTERY_4_END
LDA #$07
STA $0D80
LDA #$50
STA $0DF0
MYSTERY_4_END:
LDA $A0
RTL
TARDIS_SPLIT_MOD:
LDA $A0
CMP #$0D
BEQ TARDIS_SPLIT_LESS
NORMAL_SPLIT:
LDA #$7A
LDY #$02
RTL
TARDIS_SPLIT_LESS:
STZ $0FB5
LDA #$7A
LDY #$01
RTL
SUPER_FAST_AGAHNIM:
LDA $7EF32E
BEQ $06
ORIGINAL_CODE_AGAHNIM:
; original code
LDA #$FF
STA $0DF0,x
RTL
LDA $A0
CMP #$0C
BNE ORIGINAL_CODE_AGAHNIM
JSL $8DBA71 ; random interval
AND #$7F
ORA #$80 ; above 80
STA $0DF0,x
RTL
FAST_BALLS:
PHA
LDA $7EF32E
BNE NOT_FAST
LDA $A0
CMP #$0C
BEQ VERY_FAST
CMP #$0D
BEQ HALF_FAST
CMP #$20
BEQ HALF_FAST
NOT_FAST:
PLA
LSR A
LSR A
LSR A
LSR A
RTL
HALF_FAST:
LDA $1A
AND #$01
BEQ NOT_FAST
VERY_FAST:
PLA
LSR A
LSR A
LSR A
RTL
SUPER_FAST_GANON:
PHA
LDA $7EF32E
BNE NOT_FAST
LDA $A0
CMP #$00
BEQ VERY_FAST
BRA NOT_FAST
GANON_BATS_HARD:
;envMXdiZC
LDA $0FB5
STA $0EC0,y
STA $0BA0,y
LDA $7EF32E
BEQ $01
NORMAL_BATS:
RTL
LDA $0FB5
CMP #$03 ; tile break
BEQ BATS_HARD
CMP #$05 ; final form
BNE NORMAL_BATS
BATS_HARD:
JSL $8DBA71
AND #$03 ; ~25% code 2
BEQ BATS_CODE_2
LDA #$05
BRA $02
BATS_CODE_2:
LDA #$03
STA $0EC0,y
STA $0BA0,y
RTL
GANON_FASTER_REACTION:
LDA $7EF32E
BEQ $07
LDA #$C9
JSL $9DF65F
RTL
LDA #$C9
JSL $9DF65F
BMI $01
RTL
PHP ; save the minus flag
STZ $0DF0,x
PLP
RTL
FULL_DARKNESS_GANON_1:
LDA $7EF32E
BNE FDG_NOT_HARD_MODE
LDA #$00
STA $7EC005
FDG_NOT_HARD_MODE:
JSL $85FA8E
RTL
FULL_DARKNESS_GANON_2:
LDA $7EF32E
BNE FDG_NOT_HARD_MODE
LDA #$01
STA $7EC005
BRA FDG_NOT_HARD_MODE
FULL_DARKNESS_GANON_3:
LDA $7EF32E
BNE FDG_3_NOT_HARD_MODE
LDA #$01
STA $7EC005
FDG_3_NOT_HARD_MODE:
JSL $308400
RTL
Also for transitions (do not apply to master rom), test it with these hex changes, I think breaking the DMA may have side effects (for one the menu select looks different)
Remove palette scramble for transition
0x012E5E - EA EA EA
0x0130E4 - EA EA EA
Change the DMA target location, so the target palette is loaded during the transition (you may sometimes get one or two frames of bad palette)
0x00B96 - C5 -> C3
Shorten the amount of time for transition (without the above 2 fixes palettes will screw up due to the fade to/from black palette change)
0x010CBE - 1F -> 01
Euclid- Since : 2012-06-21
Re: Project Phoenix!
I'll test these out tonight and post back results thanks!
Floki- Since : 2012-06-19
Re: Project Phoenix!
After countless tries getting to get to the second part of the fight on hard mode, playing with my bad skills just to demonstrate that function, I've decided to cheat lol!
Since he's faster then in PW, he should provide a nice challenge for the speedrunners!
I don't remember if shields would show up in full darkness mode in parallel worlds through. That has probably due to when conn changed the shield positions and palettes when we added the tails lol
Since he's faster then in PW, he should provide a nice challenge for the speedrunners!
I don't remember if shields would show up in full darkness mode in parallel worlds through. That has probably due to when conn changed the shield positions and palettes when we added the tails lol
Floki- Since : 2012-06-19
Re: Project Phoenix!
Alright I've had some time to test the transitions and a test rom and they are much more faster then before since they take less then a second to load! The affected places I've noticed are:
-When you boot the rom, the screen turns pink and you see the old sword going down animation in gltiched tiles (conn changed it to full black when he made his animated leaf titlescreen, if you boot up an old copy of high rule tail and pay close attention to the intro you can still see the sword going down animation even though its black against black lol).
-The game selection screen is now black and white for some reason haha.
-When you use the magic harp, the flute map colors are glitchy.
Aside these minor issues its amazingly fast to visit all the areas of one world!
-When you boot the rom, the screen turns pink and you see the old sword going down animation in gltiched tiles (conn changed it to full black when he made his animated leaf titlescreen, if you boot up an old copy of high rule tail and pay close attention to the intro you can still see the sword going down animation even though its black against black lol).
-The game selection screen is now black and white for some reason haha.
-When you use the magic harp, the flute map colors are glitchy.
Aside these minor issues its amazingly fast to visit all the areas of one world!
Floki- Since : 2012-06-19
Re: Project Phoenix!
I can probably change the code slightly to reduce the side effects, i thought the menu select looked good in black/white.
Euclid- Since : 2012-06-21
Re: Project Phoenix!
Yeah I don't mind the start menu being black and white either, so these issues can be worked out I guess!
It doesn't bug at all when I tested it on the overworlds so the outcome is better then the small issues :-P
It doesn't bug at all when I tested it on the overworlds so the outcome is better then the small issues :-P
Floki- Since : 2012-06-19
Re: Project Phoenix!
Something to get it out of the way quickly:
Disable galaxy book message - 0x11348E - D0 -> 80
Also did the SPC songs (menu only, outside it's a bit strange if you're using the new song banks, which I'll need to fix) - I've attached songs 32 and 33 (slightly modified version of the castle music to proof the point) in a ips patch. Apply to test only, not to master rom.
A few things to note.
Here are the song locations which I've coded in the asm.
dl $2EA000 ; 172000 - 174FFF
dl $2ED000 ; 175000 - 177FFF
dl $379000 ; 1B9000 - 1BBFFF
dl $37C000 ; 1BC000 - 1BEFFF
dl $3A9000 ; 1D1000 - 1D3FFF
dl $3AC000 ; 1D4000 - 1D6FFF
dl $3B9000 ; 1D9000 - 1DBFFF
dl $3BC000 ; 1DC000 - 1DEFFF
dl $3C9000 ; 1E9000 - 1EBFFF
dl $3CC000 ; 1EC000 - 1EEFFF
dl $469000 ; 231000 - 233FFF
dl $46C000 ; 234000 - 236FFF
dl $479000 ; 239000 - 23BFFF
dl $47C000 ; 23C000 - 23EFFF
dl $489000 ; 241000 - 243FFF
dl $48C000 ; 244000 - 246FFF
Before you insert your music into HM from the spc editor - You will need to replace the first 0x42 of the song bank with the following (essentially every song in the bank will now be playing the castle music), you can test it in HM.
76 2E 00 D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 28 00 00 00 00 00 00 00 00 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0
Once you've inserted your music (starting at 0xD804A for the castle music) copy D8000 to DAFFF to one of the song banks above.
Also when you're testing, don't go from song 1 to song 47 as it'll crash the SPU due to the 0s (unless you're testing or have filled in the last song bank)
The example music should show you what I mean by replacing the bytes, it should be pretty obvious at 0x172000 once you've patched the IPS.
If it's still confusing let me know and I'll try to make it easier.
EDIT: I had some time during the evening to fix the following:
- most of the entry/exit should reload the music correctly
- also fixed conn's code to reload music if the wrong bank's loaded!
Disable galaxy book message - 0x11348E - D0 -> 80
Also did the SPC songs (menu only, outside it's a bit strange if you're using the new song banks, which I'll need to fix) - I've attached songs 32 and 33 (slightly modified version of the castle music to proof the point) in a ips patch. Apply to test only, not to master rom.
A few things to note.
Here are the song locations which I've coded in the asm.
dl $2EA000 ; 172000 - 174FFF
dl $2ED000 ; 175000 - 177FFF
dl $379000 ; 1B9000 - 1BBFFF
dl $37C000 ; 1BC000 - 1BEFFF
dl $3A9000 ; 1D1000 - 1D3FFF
dl $3AC000 ; 1D4000 - 1D6FFF
dl $3B9000 ; 1D9000 - 1DBFFF
dl $3BC000 ; 1DC000 - 1DEFFF
dl $3C9000 ; 1E9000 - 1EBFFF
dl $3CC000 ; 1EC000 - 1EEFFF
dl $469000 ; 231000 - 233FFF
dl $46C000 ; 234000 - 236FFF
dl $479000 ; 239000 - 23BFFF
dl $47C000 ; 23C000 - 23EFFF
dl $489000 ; 241000 - 243FFF
dl $48C000 ; 244000 - 246FFF
Before you insert your music into HM from the spc editor - You will need to replace the first 0x42 of the song bank with the following (essentially every song in the bank will now be playing the castle music), you can test it in HM.
76 2E 00 D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 28 00 00 00 00 00 00 00 00 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0 46 D0
Once you've inserted your music (starting at 0xD804A for the castle music) copy D8000 to DAFFF to one of the song banks above.
Also when you're testing, don't go from song 1 to song 47 as it'll crash the SPU due to the 0s (unless you're testing or have filled in the last song bank)
The example music should show you what I mean by replacing the bytes, it should be pretty obvious at 0x172000 once you've patched the IPS.
If it's still confusing let me know and I'll try to make it easier.
EDIT: I had some time during the evening to fix the following:
- most of the entry/exit should reload the music correctly
- also fixed conn's code to reload music if the wrong bank's loaded!
- Attachments
Euclid- Since : 2012-06-21
Re: Project Phoenix!
Thanks that sounds easy enough! I'll give it a try and see how it goes :-P
I'll save this in for in my work in progress ConkerCompendium! What are the odds, look in my compendium at the last few pages and look for the ROM MAP that I have started yesterday!
I've tried disassembling all the things that we've added over the years, but some things I just have no idea what they are used for, so I've left them blank.
I was especially looking where NEONswift's overlays asm were located but no clue so thus far :-D
I'll save this in for in my work in progress ConkerCompendium! What are the odds, look in my compendium at the last few pages and look for the ROM MAP that I have started yesterday!
I've tried disassembling all the things that we've added over the years, but some things I just have no idea what they are used for, so I've left them blank.
I was especially looking where NEONswift's overlays asm were located but no clue so thus far :-D
Floki- Since : 2012-06-19
Re: Project Phoenix!
Halfway though inserting this info on my compendium I stumbled on these two addresses:
Just wanna make sure which info is the right one before continuing my compendium section about the rom map :-P
Just wanna make sure which info is the right one before continuing my compendium section about the rom map :-P
Floki- Since : 2012-06-19
Re: Project Phoenix!
I've tried your ips patch and it worked, but when I've followed all that you said with one of my spc songs it didn't worked, but there's probably something I'm not doing right, I'll try again tommorow after work on a clear mind :-P
Floki- Since : 2012-06-19
Re: Project Phoenix!
If you have an ips patch for a clean lttp rom for a new song, send it over and i'll have a look (or just copy 0xF8000 to 0xFAFFF in a text file from HxD and attach it)
And yes it's a typo on my part on the target address (both banks are not used anyway)
dl $3C9000 ; 1E1000 - 1E3FFF
dl $3CC000 ; 1E4000 - 1E6FFF
On another note, with boss music - do you want me to force a spc load or hold off because you want the custom bank songs to be played?
And yes it's a typo on my part on the target address (both banks are not used anyway)
dl $3C9000 ; 1E1000 - 1E3FFF
dl $3CC000 ; 1E4000 - 1E6FFF
On another note, with boss music - do you want me to force a spc load or hold off because you want the custom bank songs to be played?
Euclid- Since : 2012-06-21
Re: Project Phoenix!
Alright sorry, I finally got it working, I was doing something wrong as expected! But gotta prepare for work, so will make a video after work once I have a couple songs in, thanks!
I'm fine with the normal boss music for now, I have yet to think about the 16 songs I'll add and where they'll be used.
On another note, with boss music - do you want me to force a spc load or hold off because you want the custom bank songs to be played?
I'm fine with the normal boss music for now, I have yet to think about the 16 songs I'll add and where they'll be used.
Floki- Since : 2012-06-19
Re: Project Phoenix!
Today's play is on armos knights - thought I'll take on something easy before doing stuff like kholdstare (gotta deal with that lag, maybe I'll make it do lightning instead)
As requested I've toned down armos knights so they get pissed off at 3.
But hard mode has been buffed! (still easy with silver arrows though XD) - I'm actually not that confident of taking on the moving floor single one without a few fairys lol.
So In short - I still have (or have to fix)
- music for boss start/other places where the game switches music and it's broken
- fix the transitions so there's less side effects
- dungeon 4 maps
- any spc/msu issues from music bank thing
- boss rush entrance switch
On the bosses front:
- kholdstare make it less laggy but harder
- viterous lower the hp but make hard mode actually harder
- moldrum make it faster for hard mode, like faster than now (that's the only thing I can think of doing)
- lamolas make it faster and harder
- do something with hard mode lightning mothula - probably disable the knockback effect if i can find it.
- do something cool with blind and reduce the lag maybe?
- do something cool with trinexx.
- something with bowser/helmasaur which I haven't decided yet, but I think I'll leave him late because his asm is annoying.
- Arghusfuzz I think is fine as is, again put it last because the asm is annoying.
As requested I've toned down armos knights so they get pissed off at 3.
But hard mode has been buffed! (still easy with silver arrows though XD) - I'm actually not that confident of taking on the moving floor single one without a few fairys lol.
- Code:
;
; XKAS module - Euclid 2019
;
; Phoenix Boss Patch
; - Agahnim
; - Ganon + Full Darkness hard mode
; - Armos Knights buff for hard mode (room 222 and 90)
;
lorom
; hooks.
ORG $9EDB27
BRA $1A ; remove shooting ball shadow from agahnim (less lag), looks less pretty but meh.
ORG $9ED6EE
NOP
JSL AGAHNIM_NOT_SO_RANDOM_BALLS_2
BCC $12
JSL AGAHNIM_NOT_SO_RANDOM_BALLS
ORG $9EDB9C
NOP
JSL BLUE_BALLS_NUMER_CHANGE
ORG $9EDBAB
JSL BLUE_BALLS_SPAWN
ORG $9EDBC3
JSL BLUE_BALLS_SPAWN_LOCATION
NOP
ORG $2F842D
JSL TARDIS_AGAHNIM_BUFF
ORG $9ED4BF
JSL TARDIS_SPLIT_MOD
ORG $9ED52F
NOP
JSL SUPER_FAST_AGAHNIM
ORG $9EFF48
JSL FAST_BALLS
ORG $9DE971
JSL SUPER_FAST_GANON
ORG $9D9179
JSL GANON_BATS_HARD
NOP
NOP
NOP
NOP
NOP
; full darkness ganon
ORG $9D92EC
JSL FULL_DARKNESS_GANON_1
ORG $9D9082
JSL FULL_DARKNESS_GANON_2
ORG $9D900B
JSL FULL_DARKNESS_GANON_3 ; backup just in case of torch timers.
; GANON Bats spawn
ORG $1D8E7E
LDY #$08
; ALL MODES: Ganon remove expanding bats.
ORG $9D9220
STZ $0DF0,x
; ALL MODES: Ganon bats move off screen quicker
ORG $9D9241
db $08, $10, $08, $40, $08, $20, $08
; HARD MODE; faster reaction
ORG $9D8E80
JSL GANON_FASTER_REACTION
; armos knights gets pissed off at 3 (all modes)
ORG $85A136
CMP #$04 ; 01 (lttp) -> 06 (conker) -> 04 (phoenix)
ORG $85FA14
JSL ARMOS_FASTER
ORG $9DF04F
JSL ARMOS_ANGRYER_1
NOP
ORG $9DF04F
JSL ARMOS_ANGRYER_2
NOP
; programming location
ORG $45F000
AGAHNIM_NOT_SO_RANDOM_BALLS_2:
LDA $7EF32E
BEQ $06
LDA $0E30,x
CMP #$02
RTL
SEC
RTL
AGAHNIM_NOT_SO_RANDOM_BALLS:
;CPU State envMXdizC
LDA $7EF32E
BEQ AGAHNIM_NOT_SO_RANDOM_BALLS_FOR_HARD_MODE
; original code
JSL $8DBA71 ; basically if this returns 0 = blue, 1 = bouncy.
RTL
AGAHNIM_NOT_SO_RANDOM_BALLS_FOR_HARD_MODE:
JSL $8DBA71 ; ~25% bouncy
AND #$06 ; so we're comparing to a specific number
BEQ $03
LDA #$00 ; blue
RTL
LDA $7EF36E
CMP #$20
BCS DMAGIC2
LDA #$00
STA $7EF36E
LDA #$01 ; bouncy
RTL
DMAGIC2:
SEC
SBC #$20
STA $7EF36E
LDA #$01 ; bouncy
RTL
BLUE_BALLS_NUMER_CHANGE:
; CPU state envMXdizC
LDA $7EF32E
BEQ AGAHNIM_BLUE_BALLS_NUMBER_FOR_HARD_MODE
LDA #$05
BRA $02
AGAHNIM_BLUE_BALLS_NUMBER_FOR_HARD_MODE:
LDA #$01
STA $0FB5
RTL
BLUE_BALLS_SPAWN:
LDA $7EF32E
BEQ AGAHNIM_BLUE_BALLS_SPAWN_FOR_HARD_MODE
LDA #$55
JSL $9DF65D
RTL
AGAHNIM_BLUE_BALLS_SPAWN_FOR_HARD_MODE:
LDA #$BF
JSL $9DF65D
LDA #$26
STA $012F
RTL
BLUE_BALLS_SPAWN_LOCATION:
ADC #$04
STA $0D00,y
LDA $7EF32E
BEQ $01
RTL
LDA #$00
STA $0D00,y ; location change.
RTL
TARDIS_AGAHNIM_BUFF:
SEP #$20
LDA $A0
CMP #$0D
BEQ IS_TARDIS
RTL
IS_TARDIS:
LDA $0E51
CMP #$60
BEQ MYSTERY_4_END
LDA #$07
STA $0D80
LDA #$50
STA $0DF0
MYSTERY_4_END:
LDA $A0
RTL
TARDIS_SPLIT_MOD:
LDA $A0
CMP #$0D
BEQ TARDIS_SPLIT_LESS
NORMAL_SPLIT:
LDA #$7A
LDY #$02
RTL
TARDIS_SPLIT_LESS:
STZ $0FB5
LDA #$7A
LDY #$01
RTL
SUPER_FAST_AGAHNIM:
LDA $7EF32E
BEQ $06
ORIGINAL_CODE_AGAHNIM:
; original code
LDA #$FF
STA $0DF0,x
RTL
LDA $A0
CMP #$0C
BNE ORIGINAL_CODE_AGAHNIM
JSL $8DBA71 ; random interval
AND #$7F
ORA #$80 ; above 80
STA $0DF0,x
RTL
FAST_BALLS:
PHA
LDA $7EF32E
BNE NOT_FAST
LDA $A0
CMP #$0C
BEQ VERY_FAST
CMP #$0D
BEQ HALF_FAST
CMP #$20
BEQ HALF_FAST
NOT_FAST:
PLA
LSR A
LSR A
LSR A
LSR A
RTL
HALF_FAST:
LDA $1A
AND #$01
BEQ NOT_FAST
VERY_FAST:
PLA
LSR A
LSR A
LSR A
RTL
SUPER_FAST_GANON:
ARMOS_FASTER:
PHA
LDA $7EF32E
BNE NOT_FAST
LDA $A0
CMP #$00
BEQ VERY_FAST ; ganon
CMP #$5A
BEQ VERY_FAST ; group of 6 armos
CMP #$DE
BEQ VERY_FAST ; dungeon 2
BRA NOT_FAST
GANON_BATS_HARD:
;envMXdiZC
LDA $0FB5
STA $0EC0,y
STA $0BA0,y
LDA $7EF32E
BEQ $01
NORMAL_BATS:
RTL
LDA $0FB5
CMP #$03 ; tile break
BEQ BATS_HARD
CMP #$05 ; final form
BNE NORMAL_BATS
BATS_HARD:
JSL $8DBA71
AND #$03 ; ~25% code 2
BEQ BATS_CODE_2
LDA #$05
BRA $02
BATS_CODE_2:
LDA #$03
STA $0EC0,y
STA $0BA0,y
RTL
GANON_FASTER_REACTION:
LDA $7EF32E
BEQ $07
LDA #$C9
JSL $9DF65F
RTL
LDA #$C9
JSL $9DF65F
BMI $01
RTL
PHP ; save the minus flag
STZ $0DF0,x
PLP
RTL
FULL_DARKNESS_GANON_1:
LDA $7EF32E
BNE FDG_NOT_HARD_MODE
LDA #$00
STA $7EC005
FDG_NOT_HARD_MODE:
JSL $85FA8E
RTL
FULL_DARKNESS_GANON_2:
LDA $7EF32E
BNE FDG_NOT_HARD_MODE
LDA #$01
STA $7EC005
BRA FDG_NOT_HARD_MODE
FULL_DARKNESS_GANON_3:
LDA $7EF32E
BNE FDG_3_NOT_HARD_MODE
LDA #$01
STA $7EC005
FDG_3_NOT_HARD_MODE:
JSL $308400
RTL
ARMOS_ANGRYER_1:
LDA $7EF32E
BEQ $06
LDA #$20
STA $0DF0,x
RTL
LDA #$0A
STA $0DF0,x
RTL
ARMOS_ANGRYER_2:
LDA $7EF32E
BEQ $06
LDA #$10
STA $0DF0,x
RTL
LDA #$01
STA $0DF0,x
RTL
So In short - I still have (or have to fix)
- music for boss start/other places where the game switches music and it's broken
- fix the transitions so there's less side effects
- dungeon 4 maps
- any spc/msu issues from music bank thing
- boss rush entrance switch
On the bosses front:
- kholdstare make it less laggy but harder
- viterous lower the hp but make hard mode actually harder
- moldrum make it faster for hard mode, like faster than now (that's the only thing I can think of doing)
- lamolas make it faster and harder
- do something with hard mode lightning mothula - probably disable the knockback effect if i can find it.
- do something cool with blind and reduce the lag maybe?
- do something cool with trinexx.
- something with bowser/helmasaur which I haven't decided yet, but I think I'll leave him late because his asm is annoying.
- Arghusfuzz I think is fine as is, again put it last because the asm is annoying.
Euclid- Since : 2012-06-21
Page 7 of 8 • 1, 2, 3, 4, 5, 6, 7, 8
Similar topics
» My latest MSU-1 project
» Mega Man X - MSU-1 + Project Zero
» best abandoned project?
» Project-Nested
» NESTED PROJECT
» Mega Man X - MSU-1 + Project Zero
» best abandoned project?
» Project-Nested
» NESTED PROJECT
Zeldix :: Zelda III Hacking :: The Archives :: Milk Utopia
Page 7 of 8
Permissions in this forum:
You cannot reply to topics in this forum