Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,554,912
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 05-07-24 10:41 AM
Guest: Register | Login

Main - Posts by XaserLE


XaserLE
Posted on 05-08-12 06:03 PM, in Zelda3 Parallel Worlds easy version idea Link | Quote | ID: 150846


Level: 8

Posts: 1/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
Oh man, this video makes me feel like i definitley should play it one more time :-).
But i love the difficulty of the original. That's the reason why i enjoyed it this much. I have no idea how often i used the save state, but it was great.

But by the way: Is it possible to move a hole room to another withoud any problems? Let's say to swap two rooms?
I ask because i tried to use rooms 296-319 and it seems to work, but there is no way to edit this rooms with hyrule magic. But i could use a buffer room for editing and if this room is definitley finished, i move it to one of the rooms from 296-319.

XaserLE
Posted on 05-09-12 09:21 AM, in Zelda3 Parallel Worlds easy version idea Link | Quote | ID: 150854


Level: 8

Posts: 2/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
Puzzledude: Could you post how exactly you make this? It were nice if i could test it to transfer a room to 296 and above and see if it works. Ok, sprites, items, enemys are a problem but the bg-data is better than nothing, it's a beginning.

XaserLE
Posted on 05-09-12 02:55 PM, in Bunch of releases Link | Quote | ID: 150859


Level: 8

Posts: 3/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
Hi,

this Overlord-Tool is really great, thank you. And this disassembly....oh my god :-D.
Ok, i have a question that euclid struggled with too. I am trying to make rain. Ok, there is no problem to set the variable for the beginning mode of the game. Sure, there is rain, but also the soldiers around preventing me from going to whereever i want. Not to mention what happen in later states of the game. In your disassembly i found the commands for the evil swamp. All jumps that lead to the RTL i back so they jump to the next piece of code for the rain. This way the game MUST execute these few lines. But the problem is, there is only the "rumbling noise" for the swamp, no rain sound and no overlay. I think that this piece of code is there for make the sound and moving the overlay but not for loading the overlay there. Any idea how to do this?
(sorry, i have more knowledge of c and c++ than assembly)

XaserLE
Posted on 05-10-12 09:37 PM, in Bunch of releases Link | Quote | ID: 150876


Level: 8

Posts: 4/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
Ok i have the damn rain working on the overworld :-D. I will try to put this in a patch that is modifiable but this will need some time cause it is in a very early state.

XaserLE
Posted on 05-29-12 11:57 PM, in Bunch of releases (rev. 2 of 05-30-12 10:29 AM) Link | Quote | ID: 151098


Level: 8

Posts: 5/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
By the way, SePH, it was really confusing to find the hex values for overlays in the old gates of darkness rom and it took some time to figure out, that you simply deleted those lines :-D to make the overlays disappear.
Is there any interest in a complete patch to make every overlay working on every area and use the fade-outs on every area? And of course the animation code for the rain (with/without flashlights) and the flashlights from the dark world mountain?

XaserLE
Posted on 06-02-12 08:14 AM, in Bunch of releases Link | Quote | ID: 151176


Level: 8

Posts: 6/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
Ok, here it is. I needed to move the code to expanded space. I use bank 0x3F (the laste bank befor 2 MB's are reached).
--------------------------


;this is for getting the overlays work in certain areas, i use bank 0x3F for the whole code
;WRITTEN: by XaserLE
;THANKS TO: -MathOnNapkins
; -an unknown author of a rain activation code that helped a little
;TODO:
; -missing: silent rain sound in dungeons. for that we need to save a rain indicator in free ram and hook into the dungeon load routine
; -rain doesn't work with overworld warping (teleporter/mirror)

;header
lorom

;THIS IS FOR KEEPING AN OVERLAY APPEARED WHEN GOING FROM ONE AREA TO ANOTHER WITHOUT THE BLANK OUT
ORG $02AC18 ; go to the code that makes sure the overlay keeps appeared in transition from overworld area to overworld area
BRA $00 ; overwrites an "BCS $03" that won't keep the overlay appeared if we are not in the beginning mode
; only at the beginning an overlay keeps appeared when going from on area to another without a blank out

;THIS IS THE OVERLAY-CODE
; IMPORTANT: If the overlay is drawn correctly depends on the GFX# in this area (look at hyrule magic).
; Rain seems to work various GFX#'s, but clouds for example on 33, 47 and maybe more.

ORG $02AFA3 ; go to beginning of the overlay code (command 293F00)

JSL $3F9180 ; overwrite this with a long jump to expanded space
BRA $62 ; after long jump we return and branch after the piece of code that loads the rain overlay (command A29F00)

ORG $3F9180 ; go to expanded space

LDA $7EF3C5 ; load game state
AND #$00FF ;
CMP #$0002 ; test for beginning
BCS $04 ; if not beginning, jump to next test
LDX #$009F ;
RTL ;

LDA $8A ; load actual area

;light world forest in original game, so test for master-sword-pulled is needed
CMP #$0000 ;
BNE $11 ;
LDA $7EF280,x ; test if mastersword already pulled
AND #$0040 ;
BEQ $04 ; if not pulled, don't load the master-sword-pulled-overlay
LDX #$009E ;
RTL
LDX #$009D ;
RTL ;

LDA $8A ; load actual area again

;for paste©
;CMP #$0003 ;
;BNE $04 ;
;LDX #$0095 ;
;RTL ;

CMP #$0003 ;
BNE $04 ;
LDX #$0095 ;
RTL ;

CMP #$0005 ;
BNE $04 ;
LDX #$0095 ;
RTL ;

CMP #$0007 ;
BNE $04 ;
LDX #$0095 ;
RTL ;

CMP #$0040 ;
BNE $04 ;
LDX #$009D ;
RTL ;

CMP #$0043 ;
BNE $04 ;
LDX #$009C ;
RTL ;

CMP #$0045 ;
BNE $04 ;
LDX #$009C ;
RTL ;

CMP #$0047 ;
BNE $04 ;
LDX #$009C ;
RTL ;

;dark world evil swamp, so test for evil-swamp-dungeon-is-opened is needed
CMP #$0070 ;
BNE $0D ;
LDA $7EF2F0 ; test if evil swamp dungeon already opened
AND #$0020 ;
BNE $03 ; if yes, don't load the rain overlay
LDX #$009F ;
RTL ;

LDA $8A ; load actual area again

CMP #$005B ;
BNE $04 ;
LDX #$0096 ;
RTL ;

;no match
RTL ;

;Between the above and the next code there should be enough space to test every area or to test for self-defined events
;in some areas. If you still need more, you need to move it more forward.

;THIS IS THE BLANK-OUT-CODE

ORG $02AADB ; go to beginning of the overlay code (command 293F)

JSL $3F9700 ; overwrite this with a long jump to expanded space
CMP #$01 ; in the new routine i will set the accumulator to 0x01 to indicate that we used the blank out, otherwise 0x00
BEQ $02 ; so if we want to use the blank out, branch to this routine in the original code
BRA $0F ; we don't want to use the blank out, jump to the routine after the RTS in the original code

ORG $3F9700 ; go to expanded space
; IMPORTANT: accumulator holds the area that we come from, NOT the actual, the game did this
; if want a blank out in an area, you need this when going in AND out

;test where we COME FROM

;for paste©
;CMP #$40 ;
;BNE $03 ;
;LDA #$01 ;
;RTL

CMP #$00 ; test if we come from this area
BNE $03 ; if not, jump to next area
LDA #$01 ; set blank out indicator
RTL

CMP #$40 ;
BNE $03 ;
LDA #$01 ;
RTL

;test where we GO TO
LDA $8A ; load ACTUAL area

;for paste©
;CMP #$40 ;
;BNE $03 ;
;LDA #$01 ;
;RTL

CMP #$00 ; test if we go in this area
BNE $03 ; if not, jump to next area
LDA #$01 ; set blank out indicator
RTL

CMP #$40 ;
BNE $03 ;
LDA #$01 ;
RTL

;no match
LDA #$00 ; unset blank out indicator
RTL

;Between the above and the next code there should be enough space to test every area or to test for self-defined events
;in some areas. If you still need more, you need to move it more forward.

;THIS IS THE RAIN-ANIMATION-CODE

;-----------------------------------------------------------------------------------------------------------
;first of all a little helper: if you don't want this flash lights during the rain, uncomment the next lines
;ORG $02A4E7
;BEQ $14
;ORG $02A4F7
;BEQ $04
;ORG $02A506
;BRA $02
;if want to set back to normal, here is the original code, uncomment it and out-comment the modified above
;ORG $02A4E7
;BEQ $1D
;ORG $02A4F7
;BEQ $0D
;ORG $02A506
;LDA #$32
;-----------------------------------------------------------------------------------------------------------

ORG $02A4CD ; go to beginning of the rain animation code (command A58A)

JSL $3F9C00 ; overwrite this with a long jump to expanded space
CMP #$01 ; in the new routine i will set the accumulator to 0x01 to indicate that we used the rain animation, otherwise 0x00
BEQ $0E ; so if we want to use the rain animation, branch to this routine in the original code
BRA $55 ; we don't want to use the rain animation, jump to the RTL in the original code

ORG $3F9C00 ; go to expanded space

LDA $7EF3C5 ; load game state
CMP #$02 ; test for beginning
BCS $03 ; if not beginning, jump to next test
LDA #$01 ; set rain animation indicator
RTL

LDA $8A ; load ACTUAL area

;for paste©
;CMP #$00 ; test if we are in this area
;BNE $03 ; if not, jump to next area
;LDA #$01 ; set rain animation indicator
;RTL

;dark world evil swamp, so test for evil-swamp-dungeon-is-opened is needed
CMP #$70
BNE $0E
LDA $7EF2F0 ; test if evil swamp dungeon already opened
AND #$20 ; if yes, don't animate the rain
BNE $03
LDA #$01 ; set rain animation indicator
RTL
LDA #$00 ; unset rain animation indicator
RTL

LDA $8A ; load ACTUAL area again

;no match
LDA #$00 ; unset rain animation indicator
RTL

;Between the above and the next code there should be enough space to test every area or to test for self-defined events
;in some areas. If you still need more, you need to move it more forward.

;THIS IS THE MOUNTAIN-FLASHLIGHTS-CODE

ORG $0EF587 ; go to beginning of the flashlights code (command A58A)

JSL $3FA100 ; overwrite this with a long jump to expanded space
CMP #$01 ; in the new routine i will set the accumulator to 0x01 to indicate that we used the flashlights, otherwise 0x00
BEQ $06 ; so if we want to use the flashlights, branch to this routine in the original code
BRA $02 ; we don't want to use the flashlights, jump to the branch to the RTL in the original code

ORG $3FA100 ; go to expanded space

LDA $8A ; load ACTUAL area

;for paste©
;CMP #$45 ;
;BNE $03 ;
;LDA #$01 ;
;RTL

CMP #$43 ; test if we are in this area
BNE $03 ; if not, jump to next area
LDA #$01 ; set flashlights indicator
RTL

CMP #$45 ;
BNE $03 ;
LDA #$01 ;
RTL

CMP #$47 ;
BNE $03 ;
LDA #$01 ;
RTL

;no match
LDA #$00 ; unset flashlights indicator
RTL

XaserLE
Posted on 06-05-12 11:14 AM, in Legend of Zelda - Prophet of Chaos Link | Quote | ID: 151239


Level: 8

Posts: 7/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
I love it :-)

XaserLE
Posted on 09-11-12 07:29 PM, in Zelda 3 hacking: Dungeon room properties Link | Quote | ID: 152370


Level: 8

Posts: 8/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
Yes, the room headers are a major problem and puzzledude is right, after using my RoomHeaderExpander, the ROM is incompatible with Hyrule Magic. But therefore i wrote it this way, that you can use the expander after editing with HM. So you can edit the ROM and before testing, use the expander and then load it with the emulator. And then continue editing with the old one. The expander is for writing all the room header data in the final ROM (before you play it). All staircases/doors are saved in a textfile and when using the expander it saves the modified rom under a new name, nothing is overwritten. Give it a chance, it helped me alot when playing around with the Gates of Darkness ROM. When you understand how the program works, you will love it :-) because of the absolutely freedom in every room.

XaserLE
Posted on 09-23-12 02:54 PM, in Zelda 3 hacking: Dungeon room properties Link | Quote | ID: 152446


Level: 8

Posts: 9/9
EXP: 1787
Next: 400

Since: 05-08-12

Last post: 4243 days
Last view: 3328 days
Sorry, i always forget that there is no email notification on new replies in this board :-D.
Yes, you can edit the room header (transistions) after you've done all your editing. Puzzledude hast posted the link where you can get it.
As he said, it is DOS-based, no graphical stuff. But it's easy if you understood it. There is a readme-file you should read carefully. You only need to export your room headers one time to a textfile (the tool makes this for you) and then you can start. I used the Gates of Darkness ROM to test it and it is really awesome to have the control about all doors/staircases. If you have any questions, ask, i will answer as goog as i can. There is also no problem to give you the source code of the program if you need it.

Main - Posts by XaserLE

Acmlmboard 2.1+4δ (2023-01-15)
© 2005-2023 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 3.534 seconds. (335KB of memory used)
MySQL - queries: 29, rows: 50/50, time: 3.527 seconds.