Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Rom Hacking: hukka | 2 guests
Acmlm's Board - I2 Archive - Rom Hacking - Zelda 3 Hacks Database + Hyrule Magic Guide | |
Pages: 1 2 3 4 5 6 7Add to favorites | "RSS" Feed | Next newer thread | Next older thread
User Post
MathOnNapkins

Math n' Hacks
Level: 67

Posts: 540/2189
EXP: 2495887
For next: 96985

Since: 03-18-04
From: Base Tourian

Since last post: 1 hour
Last activity: 32 min.
Posted on 09-23-04 05:59 PM Link | Quote
Well, specifically I'm working on a possible upgrade for the pegasus boots. Ones that would make you both walk and dash faster. (And fly back farther when you hit a wall too :0 ) It's in a rudimentary state though. I have to figure out more of what makes Link move before I can do anything interesting, as well as not cause problems. I made Link move 4x as fast one time and I ended up jumping off a cliff, and flying about 20ft onto a rock and I was stuck. So yeah....
d4s

Panser
Level: 29

Posts: 75/325
EXP: 142151
For next: 5734

Since: 03-23-04

Since last post: 13 days
Last activity: 1 day
Posted on 09-23-04 07:41 PM Link | Quote
Originally posted by MathOnNapkins
Well, specifically I'm working on a possible upgrade for the pegasus boots. Ones that would make you both walk and dash faster. (And fly back farther when you hit a wall too :0 ) It's in a rudimentary state though. I have to figure out more of what makes Link move before I can do anything interesting, as well as not cause problems. I made Link move 4x as fast one time and I ended up jumping off a cliff, and flying about 20ft onto a rock and I was stuck. So yeah....


but even if you use the pegasus boots and then run off a cliff, your jumping distance wont change,i mean, compared to walking.
did you hit the multiplier for all of links speeds?

btw, theres a table in bank 7 that has all speed values for the different conditions (normal, stairs, running with boots etc) in it.

the table is located at $07:E228, and the pegasus boots speed is the 16th value, aka 0x07E237.

you cannot only make link faster with that (try a value of #$70), you can also make
him moonwalk using whack values. XDDD

now THATS a feature im going to implement in my hack!
these offsets are from the sne's POV, not direct file offsets.

that hack you have in mind would be a matter of minutes.
relocate said table(theres no room for more entrys), add 2 entrys,
write #$11 to wram adress $5E to enable value 1(walk for example),
#$12 for value 2.

but wait, you also wanted to make him jump longer and bounce back harder, right?
that would be a bit more work, i havent looked that up yet.
but i guess thats a good start already.

[edit]
i just noticed the bouncing distance changes aswell if you edit the table.
so there only the distance left


(edited by d4s on 09-23-04 10:41 AM)
(edited by d4s on 09-23-04 10:43 AM)
(edited by d4s on 09-23-04 10:44 AM)
(edited by d4s on 09-23-04 10:49 AM)
(edited by d4s on 09-23-04 10:53 AM)
(edited by d4s on 09-23-04 11:25 AM)
MathOnNapkins

Math n' Hacks
Level: 67

Posts: 543/2189
EXP: 2495887
For next: 96985

Since: 03-18-04
From: Base Tourian

Since last post: 1 hour
Last activity: 32 min.
Posted on 09-24-04 03:18 AM Link | Quote
The routine that controls how he moves is not too far away from that table. It's $07E245. It's very simple, all I did was delete an LSR out of a sequence of 4 LSR A's. Naturally that has the effect of doubling his speed. Remove another and you get craziness. Anyways it's on my list of routines to study, but not overall that important. It's more of a frustrating curiosity.

It's part of a far more complicated problem, which I'm keeping a secret for now.

edit: Jump distances ought not to be changed. The game's is not designed to allow that. That was my problem. You will inevitably end up in a wall or on top of something illegal.

edit2: another problem is that if you make Link too fast, he tends to run through walls, b/c the collision detection does not prevent him from doing so, I believe. It only looks so far ahead.


(edited by MathOnNapkins on 09-23-04 06:19 PM)
(edited by MathOnNapkins on 09-23-04 06:28 PM)
(edited by MathOnNapkins on 09-23-04 07:45 PM)
d4s

Panser
Level: 29

Posts: 76/325
EXP: 142151
For next: 5734

Since: 03-23-04

Since last post: 13 days
Last activity: 1 day
Posted on 09-24-04 10:58 PM Link | Quote
alright!
but a list of routines to study?
that sounds so... dedicated.
i barely spend more time than i have to on individual routines.

but i noticed one thing.
when i started messing with that game, i spent hours understanding 1 or 2 different routines.
(first things first, i started with the bootup process, nmi and event code loader)

when i fire up the tracer now, i can instantly pinpoint individual routines,
and write hacks within minutes and really expect them to work on the first run, wich really amazes me.

one or two months ago, i had yet to touch an assembler for snes.

the bottom line is:

i can only encourage everyone here to try and start diving into assembler.
getting a grip can be hard in the beginning, but the gain is priceless.


MathOnNapkins

Math n' Hacks
Level: 67

Posts: 549/2189
EXP: 2495887
For next: 96985

Since: 03-18-04
From: Base Tourian

Since last post: 1 hour
Last activity: 32 min.
Posted on 09-24-04 11:44 PM Link | Quote
Well I don't really have list in the sense of a to do list, but I have a long running list of variables and handwritten (as in typed manually) disassembly of the first 7 modes of the game (i.e. $10 = 0 through 6. Unfortuantely 7 and 9 are the meat of the game). If you'd like to take a look at it sometime be my guest. It's code, but it isn't written for an assembler, it would have to be modified. It's in my own personal style of ASM, which has its faults and its pluses. I just like to know how things work down to a tee, and thus I've spent a lot of time on this. Probably shouldn't though. I have a lot of work to do lately in school/life.


(edited by MathOnNapkins on 09-24-04 03:14 PM)
Euclid

Cheep-cheep
Level: 23

Posts: 113/193
EXP: 65528
For next: 2195

Since: 03-15-04
From: Australia

Since last post: 24 days
Last activity: 7 days
Posted on 09-25-04 06:56 AM Link | Quote
The only thing which is stopping me from rewriting routines is those vram stuff. Close to everything else i can understand (apart from sound)

i don't know how the game draws gfx on the screen (i know it uses those $2000 memory addresses... somehow.), yet somehow it triggers vblank after some set time and calls a routine... confusing

More reading for me before i dive into that aspect.
MathOnNapkins

Math n' Hacks
Level: 67

Posts: 560/2189
EXP: 2495887
For next: 96985

Since: 03-18-04
From: Base Tourian

Since last post: 1 hour
Last activity: 32 min.
Posted on 09-25-04 08:22 AM Link | Quote
Every 60th of a second an "interrupt" is called called the NMI. In Zelda 3 the interrupt is located at $000069 in rom and $00:8069 in snes memory (for an american rom). Now I'm no expert on this, but I believe that is called VBlank or NMI. It's where your graphical data gets updated to the screen.

There is also Hblank (horizontal blank) where you can alter graphics as they are being drawn every scanline. If you don't know what a scanline is feel free to ask. That is essentially how things like oval shaped black spot lights are created when Link goes into and out of a building. The width of a black object is changed every scanline. I believe that Hblank effects are handled using HDMA or possibly just DMA. I need to research this a bit more as well, but I've come to terms with it enough to recognize it when I see it.
d4s

Panser
Level: 29

Posts: 77/325
EXP: 142151
For next: 5734

Since: 03-23-04

Since last post: 13 days
Last activity: 1 day
Posted on 09-25-04 02:57 PM Link | Quote
you dont have to use the nmi.
most regs (like the video regs, the audio ports etc)
have buffers in wram.
that means you dont have to write to the regs during vblank, you
can just write to these buffers when you want to and the values will automatically be written to the regs during vblank.

theres also similar stuff for dma transfers, but thats a bit more complex.

most vram stuff is also buffered in vram, like the pause menu, the status display(i mean on bg3) and the complete oam table(for sprites).
you can just write there and everything will get transferred during the next vblank.
dont know bout hdma, but there should be a buffer for that, too.
im going to have a look at it later as i need it.

" If you'd like to take a look at it sometime be my guest. It's code, but it isn't written for an assembler,"

sure, that would be cool.
what do you mean by selfwritten, though?
did you copy&paste from a tracer and then comment it?
thats the way i do it.
MathOnNapkins

Math n' Hacks
Level: 67

Posts: 564/2189
EXP: 2495887
For next: 96985

Since: 03-18-04
From: Base Tourian

Since last post: 1 hour
Last activity: 32 min.
Posted on 09-25-04 03:13 PM Link | Quote
The code was manually typed by looking at the bytes themselves, no tracer output. It was meant to be slightly more human readable as well.The output I have is basically similar to what you'd get with a tracer, but I attempt to encampsulate routines, in a way similar to C or Java. So you'd have something like:

$000253-$000264 LONG
{
LDA #11;
STA $55;

LDA $54;

BEQ BRANCH_ALPHA;

LDA #00;

BRANCH_ALPHA:

STA $00;

JSL $0083D1; // $3D1 in rom. I make lots of notes like these for cross reference.

RTL;
}

Note the lack of #$ for hexadecimal values. I hate writing that because I always assume hexadecimal when hacking. And I rarely write using an assembler so it's much more convenient that way. I also have spacing conventions which contribute to overall readability. Such as a carriage return before A,Y, or X receive a new value. A carriage return before RTS, RTL, branch operations, and so on. It's something I'm continually working on and trying to standardize for myself. My output is not perfect, as it was done by a human, but it is hopefully darn close.

It was also done in RTF format so I could differentiate different types of operations by color coding. Omega has my docs too, though slightly out of date.


(edited by MathOnNapkins on 09-25-04 06:15 AM)
(edited by MathOnNapkins on 09-25-04 06:16 AM)
(edited by MathOnNapkins on 09-25-04 06:17 AM)
d4s

Panser
Level: 29

Posts: 79/325
EXP: 142151
For next: 5734

Since: 03-23-04

Since last post: 13 days
Last activity: 1 day
Posted on 09-27-04 03:13 PM Link | Quote
yeah.
i usually trace the rom first, from beginning to, say getting the first pendant.
then i have a more or less complete trace of the whole core functions (only event routines missing) of the game to go from.

then, when searching for individual routines, i comment them and paste these
comments to the full log.
i also search for JSRs and JSLs going to that routine in the full log and comment them aswell.
this way, i preserve all the logging information, yet have it documented to a degree i can work with.



another question:

does anyone have information on the different block types of 16x16 blocks?
is there a complete list of them out there?
MathOnNapkins

Math n' Hacks
Level: 67

Posts: 595/2189
EXP: 2495887
For next: 96985

Since: 03-18-04
From: Base Tourian

Since last post: 1 hour
Last activity: 32 min.
Posted on 10-04-04 01:47 PM Link | Quote
Hmm... after trying to do a dual IPS patch I'm starting to see the benefits of WLA. I dled it the other day and I'm probably going to start playing with it next weekend.
beneficii

Lakitu
Level: 36

Posts: 46/567
EXP: 299656
For next: 8454

Since: 06-27-04
From: Cordova, TN, USA

Since last post: 14 hours
Last activity: 6 hours
Posted on 11-26-04 04:00 AM Link | Quote
QUESTIONS:

I'm thinking of making a hack, but I want to make sure some of my bases are covered first. Two big questions:

1. How do I coordinate the dialogue with the new characters on my FAQ (prefereably without doing ASM hacking)?

2. How do I coordinate events? Not just those between the Light and Dark World, but also those in dungeons. For example, in Level 2: Water Palace, pushing a switch will cause the water to be released in the dungeon. If I were to wipe the ROM and make a dungeon with that, how would I do it?

Thanks if you could answer those questions!



Alright. I guess this could be called:

Zelda: Link's Sex Change

Or something to that effect. Anyway, here are some screenshots (everything is in good taste!):




Alright, here's the link:

http://www.geocities.com/beneficii/altpgirl.zip

Have fun!


(edited by beneficii on 11-26-04 09:11 PM)
SePH

Geldman
Level: 33

Posts: 238/459
EXP: 219339
For next: 9840

Since: 06-23-04
From: Québec
Caliss de libéraux

Since last post: 6 days
Last activity: 14 hours
Posted on 11-26-04 08:16 AM Link | Quote
1. Using the monologue editor in HM, there are various commands which can help you coordinate the new dialogue.

[NextPic] Displays the next picture in the intro.
[Choose] Choose between lines 2 and 3.
[Choose2] Choose between lines 1 and 2.
[Choose3] Choose among all the lines.
[Item] Choose between items.
[Name] Displays the player's name.
[Window ##] 0=Show frame 2=Hide frame.
[Number ##] Displays a number.
[Position ##] 0=Top 1=Bottom.
[ScrollSpd ##] Sets the scrolling speed.
[Selchg] Changes the selection.
[Crash] Crashes the game.
[Scroll] Scroll one line up.
[1] Output at line 1.
[2] Output at line 2.
[3] Output at line 3.
[Color ##] Sets the color.
00 Orange, Grey.
01 Red, White.
02 Gold, White (Same as border colors).
03 Light Blue, White.
04 Dark Grey, Grey.
05 Red, ?Tan?.
06 Dark Blue, White (Default).
07 Lime, White.
08 Orange, Grey (Same as 00, and the rest repeats too).
[Wait ##] Waits for some time.
[Sound ##] Plays a sound.
[Speed ##] Sets the text speed (0=Instantaneous).
[Mark1] Nothing of interest.
[Mark2] Nothing of interest.
[Clear] Clears the box.
[Wait] Waits for a keypress.

Misc:
[A] Letters for gamepad buttons.
[B ] Same as above.
[Y] Same as above.
[X] Same as above.

2. The watergate (entrance 4E), has to stay in Area 3B for it to work. In other overworld screens the water inside the dungeon will not go down after you use the gate.. There might be a way to move that, but it is yet to be found. Or else, ASM...

Nice sprite change! Other then that, you should really make an hack; as a complete hack is still to be release (Only partially-done, and demos so far)! And I doubt that one will be released before mid 2005...


(edited by Uchiha Itachi on 11-25-04 11:17 PM)
beneficii

Lakitu
Level: 36

Posts: 47/567
EXP: 299656
For next: 8454

Since: 06-27-04
From: Cordova, TN, USA

Since last post: 14 hours
Last activity: 6 hours
Posted on 11-27-04 12:17 AM Link | Quote
Uchiha Itachi,

Hi. Thanks for trying it out! Yes, I'm planning to make a hack with her as the main character. The plot so far is that the Bolsheviks led by Agahnim take over Hyrule. I'm going to have the beginning part use almost the same maps that the beginning, but as I go over time the map will be more and more original (as I get more comfortable editing maps), and the Dark World will probably be almost completely original (excepting probably the Pyramid and the area around Ganon's Tower because of event concerns). (But I'm gonna hack the inside of Ganon's Tower!) I'll also probably keep the bosses as they are.

At the start, your character has to go into a cave east of Hyrule Castle's moat. The cave uses room 105, which was in the original game unused. But I'm having some problems with it. I set entrance 7D to it, but I can't seem to control the scrolling. The character comes into it fine, and the room has a cool misty effect. But if the character walks back out of the room the same way she came in, she warps to some weird unused room, and she can't get out. I'm using layout 1 for the room, with the room divided into two vertically long rooms side by side. This is the problem with the scrolling: My character starts coming out of the lower right door. When my character walks to the left edge of the half-room, you can see the other half-room. In the original game's maps, that never happened. I have scrolling for that entrance set only to vertical scroll, but it makes little difference. There is both vertical and horizontal scrolling.

Also, the X Scroll is an issue. I read about that in your FAQ, too (which has been very helpful btw!). But the screen starts fine for entrance 7D as I modified it. Also, my character doesn't "walk" into the room, she appears out of nowhere into it.

PM me if you want me to send a copy of my ROM for you to check out.

Thanks!


(edited by beneficii on 11-26-04 08:52 PM)
(edited by beneficii on 11-26-04 08:53 PM)
(edited by beneficii on 11-26-04 09:10 PM)
Sokarhacd

Ball and Chain Trooper
Resistance is Futile
You Will Be Assimilated
Hab SoSlI' Quch
Level: 61

Posts: 860/1757
EXP: 1799888
For next: 76708

Since: 03-15-04

Since last post: 6 days
Last activity: 4 hours
Posted on 12-06-04 01:15 AM Link | Quote
question...in HM, you can add asm hacks, from the editor right, but it says that it requires FSNASM, and...I cant find it anywhere......does it work with any assembler for 65816? if not, where can I find it?
Rockola

Octorok
Level: 8

Posts: 1/20
EXP: 1583
For next: 604

Since: 12-23-04

Since last post: 44 days
Last activity: 44 days
Posted on 12-23-04 11:29 PM Link | Quote
EDIT: Nevermind. I at first couldnt find it, but after Google searching fpr it, I ended up finding my way to it in Zophar's Domain.


(edited by Rockola on 12-23-04 02:38 PM)
Uly

Koopa
Level: 16

Posts: 78/104
EXP: 18066
For next: 2190

Since: 01-16-05
From: México Puebla

Since last post: 279 days
Last activity: 159 days
Posted on 01-22-05 03:58 PM Link | Quote
Hello, I'm working in my second hack ever, the first one was about an overhaul (The Zelda 3 Reloaded), I only changed the hole to get to 7D, the Zelda/Uncle locations, some enemies and chest's locations/contents, but Omega laughed at me so I stopped working on it. Then Omega ran a contest on TEKHacks so I had to start from a fresh ROM of Zelda 3, and since January 16th, I've been working on this:

Hack: Still to name it
Author(s): Uly
Information: Minor hacking. (Would change to full hack eventually).
Screenshots: Hopefully None.
Version: Alpha 2.6
Threads: None yet.
URL: None yet.

Plot Alpha 0.7:

Uly the hacker has done a big mess with the game, so beating it is going to be pain on the brains, this time all entrances and exits are changed so even finding your uncle is hard. It may seem random, but it was coldhearth calculated.

Tons of things are going to change, and the hack is still in a very baby stage, I want to release the Beta once I have it (May have all the main items' way to get changed) so people can check it out before the release date (January 29th).

The release will still be demo, and if at least one person likes it, I will keep on working on it.

The main problem is that the point of the Hack is to make the game a full Puzzle in where you have to wonder what to do next instead of having fun beating dungeons. It's very easy (Try finding the red boomerang now!!), but Screenshots just give away too many clues of what to do, and a single comment about the hack (Like: It's cool you put the [censored] in the [censored] and the only way to get there is [censored]) may ruin the idea. So I want only selected people to be able to play it and everything happening under Private Messages or something non public.

Thanks for reading I hope someone reads this since this thread hasn't been updated in almost a month...

Note: I did the hack by figuring stuff, without looking at other hacks (I only saw screenshots), and by ear help, now that I'm going to read the ORO_HM_FAQ_12.PDF, I'm hoping to make a big jump on the hack... Or something.
MathOnNapkins

Math n' Hacks
Level: 67

Posts: 1600/2189
EXP: 2495887
For next: 96985

Since: 03-18-04
From: Base Tourian

Since last post: 1 hour
Last activity: 32 min.
Posted on 03-18-05 02:19 AM Link | Quote
d4s: I have a question. I'm trying to decide between three different assemblers right now, and I wanted to know if there was a directive in WLA DX to indicate the name of the output file.

Right now in xkas or asm2hex I can use the directive #filename xxxxxx.smc to indicate which file to patch against, but I want to be able to specify the name of the file to create via source. For example, it might be #output xxxxxx.smc, or #dest xxxxxx.smc. any ideas?
Setzer

Popo
Level: 36

Posts: 136/532
EXP: 290182
For next: 17928

Since: 04-22-04
From: Not Florida. because I'm going to sink it.

Since last post: 5 hours
Last activity: 48 min.
Posted on 03-21-05 09:30 AM Link | Quote
I guess this goes here =\

Hack: Link: Zelda Who?
Author(s): Skiffles
Information: Complete Overhaul
Screenshots: [yeah.]
Version: N/A
Threads: N/A
URL: #rom-hacking



[note that I haven't inserted the title screen yet, but this is what I have sketched up]

Yeah. I've been fooling around trying to make something pretty, Never really realised how time-consuming it is =-o. But my project is public now. ph34r?
SePH

Geldman
Level: 33

Posts: 282/459
EXP: 219339
For next: 9840

Since: 06-23-04
From: Québec
Caliss de libéraux

Since last post: 6 days
Last activity: 14 hours
Posted on 03-21-05 10:30 AM Link | Quote
*Updates the list*

Looking good mate. The new graphics ain't bad either. Hope to see more later on.
Pages: 1 2 3 4 5 6 7Add to favorites | "RSS" Feed | Next newer thread | Next older thread
Acmlm's Board - I2 Archive - Rom Hacking - Zelda 3 Hacks Database + Hyrule Magic Guide | |


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.017 seconds.