News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Trax

Pages: [1] 2 3 4 5 6 ... 21
Personal Projects / Re: Zelda II Redux
« on: September 17, 2019, 11:04:55 pm »
The Barrier is to prevent players from entering the Great Palace without first placing the 6 crystals.

Personal Projects / Re: Zelda II Redux
« on: August 31, 2019, 03:52:46 pm »
That's my opinion, too. Zelda II Redux is just that: redux. Not a full blown hack with a new story. That said, it doesn't mean DarkSamus's hacks don't belong somewhere. The double jump looks cool and reliable, the new menus are fantastic and the Fairy swap does have potential for new puzzles. But, in a new hack. Not the original.

Personal Projects / Re: Zelda II Redux
« on: August 10, 2019, 01:58:38 pm »
Iceman, if you go to 0x1D4E5, you can change the value of health that makes the beeping start. Default is 0x20, which is one square. If you set it to 0, you will never hear any beeping.

Personal Projects / Re: Zelda II Redux
« on: July 30, 2019, 01:29:35 am »
Yes, breakable blocks work anywhere, you just need to associate the tile mappings for them. Original graphics take up 10 tiles (4 for first frame, 4 others for second frame, and 2 others for third frame). All regions in the game have the breakable block graphics in their corresponding banks, including West and East Hyrule, not just palaces. It's just that West and Hyrule just have tile mappings set to black tiles. In both bank 1 and 2, breakable blocks are set as tile code 0x61, which translates to tile code 0x21 in Tile Mappings Table 1 (also, uses Palette 1). In bank 1, tables 0 and 1 share the same data, at 0x4417. Tile Code 0x21 in this table is the very last entry, and the values are 68 69 68 69. If you replace these by BA BB BC BD, which is the tile mappings for the breakable block graphics, it should work.

Yeah, I found my way, but it was not about keys, I just missed a few rooms in level 3, so I went back and found the Letter.

More glitches (v1.6) :

Did anyone mention the glitchy fairies in dungeons? It doesn't crash the game, and it refills your health fine. The hearts surrounding Link are more numerous, it makes the game lag a bit, and after the hearts disappear, two extra fairy sprites appear randomly.

In dungeon 3, a hint about burning a tree above the armos, has glitched tiles on the 3rd line. First line is "BURN THE TREE AT". The entire text could be ywanked back a bit and have first line say "BURN THE TREE AT THE", and it will free up space for the two next lines.

The Ghost that says the hint "ABOVE THE NE. RIVER" also has glitched tiles. You could avoid that by using three lines of text instead of two, and it would let you say "NORTHEAST" instead of "NE".

One thing I bumped into that may confuse people. Because you can have Potions without having the Letter first, it's very likely that you have a Potion (Red or Blue) in your inventory before finding the guy who says nothing and needs the Letter. If it's the case, the guy doesn't react. You have to actually drink the Blue Potion to have the item slot turn back to Letter, and then the guy will reveal the shop.

There is a room in Dungeon 9 (First Quest), first column (from left), 4th row (from top), that has 4 Traps in it. I don't think there's any possible way to push the block and open the south door without being hit at least once. Are you comfortable with that?

In the User Manual, in how to extract the ZIP file, there's a bunch of "?" for Mac OS. Opening ZIP files in Mac OS is done via the Finder. Just open the archive and that's it. And for the IPS patcher, MultiPatch for Mac ( does the job.

I have a question about the game itself. I went into Dungeon 5 and visited almost all rooms, and I think some rooms are not accessible because I need a specific item. So I found Dungeon 6, but I didn't go very far, because of a locked door. My question: are there enough keys in every dungeon to account for all locked doors, so that I'm guaranteed to never need to buy a key?

I gave it a try and I completed the 2 first dungeons, plus lots of exploration. It's very good so far. The Overworld is well designed, the difficulty is well balanced, graphics are good and dungeons are well designed as well. One thing I noticed is that it seems enemy groups in the Overworld are the same as in the original, i.e. at the same coordinates. I like the idea of the Cuckoos that can hurt you! I also like the idea of having to return to previous dungeons for extra items in previously inaccessible rooms.

A few glitches I found so far (v1.6) :

- A hint in dungeon 2 says "Go behind tear in Map3.". Is it intended or you just lacked space to write the text? Because, you can make a line break without any trouble.
- You can center text by using the value 0x25 as many times as needed, which I call "leading space".
- The hint text that costs 30 rupees has glitches in it. The second line of text goes beyond the right side of the cave. You can add a third line to solve the problem.
- A shop (can't remember where) has bombs, red lamp and key. The bombs are free, no text for cost. Is that intended?

Other than that, a question. Do enemies get random HP (on Veteran)? Or is there another mechanism at work? Whatever the answer, I think it's an interesting twist to the game.

If you need help with bugs and possibly ASM, I can help. Let me know.

For Zelda 1, ABW pretty much answered the question. Every dialog in the game is in Bank 1. Pointers to dialogs are right at the beginning of the bank, and the actual dialog data follows the pointer table immediately. If you want to center your text by offsetting the lines to the right, use value 0x25. It's like a blank character, but it doesn't produce the "typing" sound. For more infos on the Zelda 1 ROM, use my disassemblies (links below). There's lots of comments there that could help you.

Personal Projects / Re: Zelda II Hack Project - Dark Fortress
« on: May 16, 2019, 01:36:59 am »
Redux is a nice project, in which I participated, but many of the features in it will be done differently in Dark Fortress. Plus, the goal of Redux was not to be a full fledged hack, but mostly a bunch of small modifications of what was considered irritating in the original.

Obviously, I will have to balance many things in the game, like enemy damage and experience. Actually, about experience, I want to go one step further, and make experience gains dynamic. For example, once you reach a certain level, or a certain region further in the game, enemies will start giving less experience. Hopefully, it will make grinding less attractive and encourage the player to go forward, explore new territories and fight stronger enemies. Enemy drops may also be more dynamic.

I also plan to make multiple spawning points for when you reload the saved game, or after death. Similar to A Link to the Past. Restarting at the beginning of palaces is not settled yet, but not out of the question. The HUD will be changed, but I have not decided on the layout yet.

Personal Projects / Re: Zelda II Hack Project - I want your input
« on: May 07, 2019, 11:56:31 pm »
Well, after quite some time, I managed to do a few things, but not as much as I'd hoped. So, again, sorry for the wait.

First, I had to put the "on-the-fly modification of Overworld Tiles" on the ice, because frankly, I struggled too much with it, and I had to go do something else before going crazy. Also, I think the idea was cool on paper, but the end result was relatively meh. I may return back to the problem later, but I'd give more chances to the Custom Tiles idea, which I already made work in the past. The other thing I feared is lag. I didn't experience any of it, as far as I can tell, but it could become laggy if too much work is needed every frame. It does produce a noticeably longer delay on the loading transition, but that is not important. All in all, I'll spend my time on more essential things.

Speaking of that, I spent already too much time on a new concept that existed in Zelda 1 : Trap Doors. I'm not sure if it's the correct name, because in real life, a trap door should be on the floor, right? But that's not the case. I'm talking about doors that shut behind you. Zelda 1 had them in spades, and you had to do something to make them open again, like killing all enemies or pushing a block. Some of these doors could not even be reopened, like a one-way entrance. Anyway, I also worked too much on that one, but even though it's not finished, I'm on my way to make it completely functional and make it work anywhere I want.

It looks like this :

I created my own data format to give every room the possibility to have either no door, one on the left, one on the right, or both. When you enter a room, there are a few frames where Link moves, but the player doesn't have full control of him. During these few frames, the code I wrote checks if the room has doors, and if it does, it draws one block every other frame, at the position desired. For now, the position is hard-coded, so if the ground is at another level, we will need to have provisions for that. I used the "Breakable Block" sound, which is played for 5 consecutive frames. I think it sounds good for a door, but it could easily be changed to something else. I initially tried the "Fire" sound, but I thought it was too subtle and quiet.

Not shown on the video is the equivalent for the Right Trap Door, which is a bit more complicated to code, because of the fact that Areas can have different widths, from 1 to 4 screens. So we have to use this information, conveniently stored in $D1, to select the correct position for drawing the tiles.

The major difficulty comes from the fact that we have to do two kinds of drawing when we want to change anything in the background, and that's applicable in every side-scrolling areas. The terrain in Level Data is made of blocks, 2x2 tiles. Each screen has 0xD0 tiles. Up to 4 screens. When you want to change something, you need to manually draw the 4 tiles that compose the block, AND you have to change the underlying block data. If you only draw the tiles, you will see the result, assuming the drawing occurs on screen and not in the "scrolling buffer", but as soon as you leave far enough, the tile will be erased by the scrolling mechanism, so when you come back, the old tile will be drawn again, because you didn't change the block data. On the other hand, if you only change the block data, and the tile is within the viewport, you will see no instant change, but when you go far enough and come back, the tile will be drawn as your changes dictated. And as if it was not enough, you also have to do some more math and bit manipulation to change the palette. That last one, I didn't do yet with my Trap Door mechanism, as the video demonstrates at the end. I draw blocks that are normally teal colored, but because the background color is set to grayscale, the instant drawing shows the tile in the wrong color. However, when I come back, the tile is redrawn using its natural color.

Confused much?

Anyway, there is more work to do, because to reopen the doors, you will need to kill all enemies in the room. The custom data I created will also contain an enemy counter, and every time you kill an enemy, this counter will decrease by one. Once the counter reaches zero, the doors will open. I think this mechanism will create a brand new dynamic in palaces (and maybe other places, who knows?) and force players to fight to the death to progress in the game. You will have to change the way you think about palace navigation.

So, what's left do do exactly?

- Make sure the Right Trap Doors work correctly, with all area widths.
- Make sure the custom data table has an enemy counter, and that some enemies (Elevator, for example) are "exempted" from the count.
- Make sure the door tiles have the correct color. If it reveals too hard to do, I could sacrifice this and just make sure the tiles have the same palette as the background.
- If time and motivation permit, add a third type of Trap Door (with the actual name), an horizontal one that blocks a hole in which you can fall.

Other than that, the name of the hack should contain Dark Fortress. Maybe Zelda II : Dark Fortress. Or maybe remove "Zelda" from the title, since she probably won't be part of the story at all. How about Adventures of Link : Dark Fortress ? Or something else, if you have any ideas. I also started working on another Overworld Map, but I won't reveal each one of them, because I can't spoil everything. All I can say is that it will involve a very big mountain.

Also, I decided that the concept of lives are officially out. There will be several changes to make up for it. I'm not fixed on how many mechanisms will change, because each time the game has to be reprogrammed represents quite a challenge. A quick list: no more dolls, small heart items, no instant kill from falling into lava, restart from different places after death, more fairies, enemy damage balancing and reserve fairy.

Personal Projects / Re: Zelda II Redux
« on: March 13, 2019, 09:36:19 pm »
Or no music at all...

I think there's a unused bit in the level data's headers, so that could be used to setup different songs according to each area.

Personal Projects / Re: Zelda II Redux
« on: March 11, 2019, 07:49:55 pm »
I'd like to see the Battle music randomized. Fifty percent chance for each theme. I think the idea of having one for each region is good, too.

By the way, Ice Penguin, a few more details about your music document. I think you may have some offsets that are, well, offset from the ones expected. I know that you use ROM offsets and not "real" ones. In section 4, it reads: "Starting at 0x1A00A, count $55 bytes ahead to reach 0x1A070." But, 0x1A00A + 0x55 = 0x1A05F. You are off by one byte. This makes the data entry more like:

Code: [Select]
18 42 A2 0D 09 15
The first byte is the Note Lengths offset. It's a multiple of 8, and is an offset into the table at 0x1914D (+0x10) :

Code: [Select]
1914D: Table for Music Note Lengths ? (6 * 8 = 30 bytes)

04 0C 08 10 18 20 05 06 ?
04 0F 09 12 1B 24 06 06 Battle
05 0F 0A 14 1E 28 07 06 Boss
06 12 0C 18 24 30 08 10 Overworld, Palace, Item
07 15 0E 1C 2A 38 13 12 Town, House
07 15 0E 1C 2A 38 09 0A ?

For any given song, you basically have 8 choices of note lengths. The bytes that represent the actual notes of the songs refer to these length values.

Personal Projects / Re: Zelda II Hack Project - I want your input
« on: March 10, 2019, 12:19:09 pm »
IcePenguin, no, there won't be anything like "free" movement on the Overworld, it will still be orthogonal. The graphics will be more detailed. And there will be ice tiles. And major modifications of the Overworld after specific events happen. And other secrets.

Ultima, about the upgraded items, it would be cool to have different graphics for each upgraded items, but it means as many tiles sacrificed for the entire length of the game, so it's a tough call. The only way to avoid that would be to use the functionalities of the MMC3 mapper, for example, but I don't think I'm taking that path. Changing the colors may not be "ideal", but it's something I did in a very short time and at zero cost graphics-wise. I know I'm going to remove the Magic Key, so this is 2 free tiles that can be reused right there.

Personal Projects / Re: Zelda II Hack Project - I want your input
« on: March 06, 2019, 08:45:12 pm »
It's a technique that modifies the Overworld at the time of drawing using the same Overworld data, to make tiles more varied in appearance, like having a forest with rounded corners, for example, instead of having all tiles square and have a blocky Overworld. You could have a path that curves a bit. Stuff like that.

As for extra single tiles, here's an example. If every Town tile is only a strip of 1 tile in length, the code in raw Overworld data is 00. It means raw codes 10 to F0 are never used. The goal is to add ASM that will see these values as different individual tiles. If you consider Towns, Grottos and Palaces (terrain codes 0, 1 and 2 respectively), you can use 10-F0, 11-F1 and 12-F2 ranges, for a potential of 45 new individual tiles. Rock and Spider (codes E and F) are also good candidates. The two caveats with that is whether you want these tiles to be walkable or not, and how you want Demons to react to them when they collide with Link. The other limit is how much graphics space you have at your disposal for new tiles. Interestingly, the CHR bank for the Overworld has a lot of unused tiles. It also contains the graphics for Ganon on the Game Over screen, which could be recycled.

Personal Projects / Re: Zelda II Redux
« on: March 04, 2019, 09:05:39 pm »
By the way, about the West thing. You don't need to translate exactly, but the original Japanese roughly translates to:

"After getting the candle in Parapa Temple, from the West tunnel you can go to the next temple."

That's right, all that information within 4 lines. The word shinden means temple, and kyuuden would refer to a palace. I prefer to use the term "palace", probably because I expect palaces to contain knights and skeletons. Temples are more like sacred places. And dungeons are dark and damp.

Personal Projects / Re: Zelda II Redux
« on: March 03, 2019, 12:31:05 am »
The misinterpretation of the sentence on where to go AFTER you get the candle is the kind of thing that should get you Gannon Banned. Come on, it's an old trope. The text is cut into two parts: get the candle in Parapa. THEN, go west. It makes sense. The west is towards the LEFT on a map (assuming North is up). In the Japanese version, the sentence implies that one thing happens after the other:

パラパノ シンデンデ
ローソクヲ トッタラ
ニシノ トンネルカラ

parapa no shinden de
roosoku o tottara
nishi no tonneru kara
tsugi no shinden ni yuke

Other than that, I wonder if Link is never supposed to talk, as it's been the rule since... forever? Using "I" would then be contraindicated. This means "I found a mirror under the table" is prohibited, and maybe, if we stretch a little, the sign at the entrance of abandoned Kasuto. It's like Link himself is saying "strange... it is deserted", because it would be weird that someone actually wrote this on the sign. It seems like nitpicking, but hey. The Japanese version does about the same thing.

By the way, instead of changing the individual color codes in the palettes for backgrounds to have a better palissade color (with the rock-throwing Lizalfos), can't we just use another set of palettes for this particular area? There are 8 different palettes sets that we can choose from, per region. Well, 9 if we count the one for caves without the Candle.

Personal Projects / Re: Zelda II Redux
« on: February 28, 2019, 01:17:52 am »
Wow, just looking at the list posted by ShadowOne, it really feels like a lot of work has been done. Many details that add up nicely. We've come a long way, my friends.

By the way, for your information, the PPU Macro [21 CD 45 F4 FF] contains a repeater byte. Bytes 21 CD are the PPU address, as usual, then 45 is the value 5 with bit 6 set, which means repeat the next byte as many times. FF is the end byte. It's more compact, and less wasteful, than having the sequence F4 F4 F4 F4 F4. Also, bit 7 of the repeater byte controls whether you want your tiles sequence drawn horizontally (bit clear) or vertically (bit set).

Personal Projects / Re: Zelda II Hack Project - I want your input
« on: February 26, 2019, 12:33:00 am »
Small update, here. I'm still struggling with an Overworld overhaul I'm working on, and I may be biting off more than I can chew. I'm on my third rewrite right now, and I can see a bit of light at the end of the tunnel. If it reveals too daunting, I'll have to abandon that part and go on with something else. My ideal goal for the Overworld is three parts:

- On-the-fly tile modification to make the Overworld less blocky and monotone.
- New tiles (as many as 40 more) by exploiting the fact that some tiles are always used alone (Grotto, Town, Palace, etc.) and never use the RLE repetition.
- Overworld map, called by the player if he has the corresponding item(s).

It's possible that these three things may conflict with each other, either by making the code really complex or unreliable, or because of a lack of graphics space. If I can pull it off, the Overworld will be beautiful and varied and will hopefully blow your mind. For the second point, I have already made a relatively silent demo some time ago, and I managed to lay down a 17th tile. It's feasible.

Spooniest, your idea of having invisible Demons on the Overworld is interesting, and worth a try. A few variations on this comes to mind. Having Demons visible, but with very small sprites, like a few dots, so that they are harder to distinguish. Also, it could be that Demons become invisible later in the game, or only in specific regions. Or, it could be set according to the difficulty level, which is a feature I intend to include in the hack. Removing the drawing part of the Demons in the code is quite trivial.

IcePenguin, to answer your various comments on Game Overs and such, the mechanics will be quite different in various ways. I want to make save/load points, so it's possible that restarting at a palace become irrelevant. But, it's not definitive, either. I'm almost sure I will ditch the lives system, and put in place a bunch of other features that will make up for it. As for the Pause Panel, I think spells are a bit weird and cramped like that, but it's the only way to make place for other things. The drawing of the pane may reveal difficult. With this layout, there's potential for 6 item spots, including their own digit spot. Heart and Magic Containers are already there, with their respective 1/4 parts counter. There will be a spot for a Sword, maybe a Fairy. The little counters for enemies to kill are cool, and may occupy a spot. However, I thought about another variation on that, so, we'll see. Experience penalty on death seems like an interesting idea., about difficulty, I plan to make different difficulty levels integrated in the game itself. Ideally, there would be four, with the first two available right at the beginning, as a choice to the player. The two others would be unlocked, most likely by beating the game. The first difficulty level will be a bit easier than the original, and the second level will be a bit harder. I have also another thing in my plans about difficulty, but I'll keep it a secret for now.

Revility, thanks for the offer, any help is welcome, especially for graphics. I will probably aim for a mix of old enemies, with very few modifications, except for palettes, and new ones, either a more dangerous "upgrade" of the same enemy seen further in the game, or totally new sprites and behavior. As for secondary weapons, I did not decide anything on that, but I will probably be conservative on that point, because of the amount of coding necessary. I'm not putting the idea aside completely, either. As for the Shield/Reflect combo, it could be an upgrade for either spell, however I intend to use the Reflect mechanism in a few ways, so it still to be determined. Also, there may not be a Death Mountain in this hack, although it could be an equivalent.

Thanks for your ideas and comment, guys, and again, I'm sorry I can't show much in the visual department. Stay tuned for more news and concepts.

Personal Projects / Re: Zelda II Redux
« on: February 23, 2019, 06:55:35 pm »
The high jump is just a temporary modification of the initial Y velocity of the jump. Everything else, including gravity, stays the same.

Personal Projects / Re: Zelda II Redux
« on: February 21, 2019, 06:39:30 pm »
ShadowOne, what is that ASM reference you've been using recently? It seems like an assembler-compatible version of all my notes. It's almost a theft of my work, and it's very hard to read, with lots of punctuation and lowercase hex. I recognize many of my own comments in there. I don't agree with that.

About the jump and change of the maps, what I'm seeing is that this hack seems to have no defined boundaries as to what it aims to be. I've said that in the past about another hack (or maybe it was this one). It's not that I'm against improvements, but if you are going to call it "Redux", then maybe it should be just that. If you start playing with game physics and maps, well then after a while it will start being more and more a separate game, rather than bits of improvements of the original here and there. That's my own view.

Also, about the gravestones. In Towns, the Cross object is a "Small Object", code 0x0A, so it has both X and Y positions. The Gravestone, however, for some reason, is a Special Y Object, and is always placed at Y = 9 (third row from the bottom), as it is set arbitrarily in code. You can change this value, but all other objects will follow that change as well. The other Special Y Objects are the Portals and Walls (left and right), Fireplace, Fountain, Sign and Tomb Decorations (left and right). Some ASM could make the Gravestone a Small Object and give us the option of deciding the Y position.

Pages: [1] 2 3 4 5 6 ... 21