Progress Being Made!

I have completed a good number of different updates, some small things, some bigger items, overall brining the game together and streamlining the process by which I can implement new dungeons and enemies etc.

The easiest way to show most progress is via the videos I uploaded to my Youtube channel:

Dungeon 01:

This is pretty much complete. I need to update the room with the Old Man so it has the proper text and perhaps audio of the text. I also need to update the Wallmasters of the pre-boss room, but that is an enemy update, not really for the dungeon.
I was able to add cutscenes for the boss room when you first enter it.
I was also able to get the sliding doors and keyed doors, as well as mob clear items to all work. Almost all mobs in this dungeon are complete, the all should do damage and patrol, really it is animation and mini-map icons I need to work on here.
All of the bosses have their own specialized attack patterns, vulnerabilities, etc.

Dungeon 02:

In Dungeon 02, we have a few new enemies, some new mechanics introduced etc.

There are now Statues that can attack (room where you get the Magical Boomerang)
I need to update the Old Man in this dungeon to show/speak his hint.
The Dodongo boss can either Ingest the two bombs to die, or, if hit by the smoke, will be vulnerable to the sword, like in the NES version.
Enemies here, I need to implement the Moldorm Miniboss, they are just the basic placeholder model for now.
The Rope, they do not have their line-of-sight/tile centered rush attack, they act as normal mobs still.
Blue Goriya needs the animations fixed
Keese need to animate as well, along with other fixes to their flight AI
Blade traps need to do damage…

Again, a number of thing to implement, the “completed” in the title meant I was able to get through the whole dungeon and exit via the Triforce piece.

Dungeon 03:

So here we have introduced even more mechanics.

Currently the Red Darknuts act as basic mobs, but I will be implementing facing-hit conditionals, as well as ensuring the shield they carry actually deflects hit.
Zols, they do not split into the Gel when hit by the Wooden Sword, this is to be implemented.
I think I corrected issues with Push Blocks and opening doors.
Manhandla was fun to implement. Many new features here. The claws are independent, and need to be killed before the body is killed/boss defeated. They all fire beams, and as the claws are killed, the boss speeds up movement. I need need to do a good bit of work on the model itself, but I was able to implement animations and rig this myself.

You get the raft from here, which I had to implement a full system/cutscene around to allow the use on the docks in the overworld. This was done for entry to Dungeon 04.

Dungeon 04:

This video is from a VR Perspective, so it is like watching the Blair Witch Project or an ARG/Lost Footage video…

In this though you can see a number of new mechanics and items introduced. The candle, dark rooms and more.

Vires need to be setup to split.

I do have the boss implemented here, but in another video I will show-off that update.


Other Updates:

I have brought the VR version of gameplay in line with the Desktop version. You can swing the sword to fire beams (needs work, is janky), Bombs, Candles etc instantiate the proper version that a VR user can pickup and use, and the Desktop has their own version of these to make things more user friendly.

Wrist-Check UI for the General UI and Inventory Screen have been implemented in VR (janky again, need to figure out proper angles). I will show this off in another video.

I have also corrected a number of issues with mobs, projectiles, collider issues, problems I had with the player swords, enemy projectiles, the Lost Woods and more.

Many updates to come.

Progress towards the US 40th Anniversary Release

So, I am back to working on this project after a bit of a hiatus. Tinkering with my MMO project, getting the procedural dungeon generation and item generation working! Also, I have a new project, one that I can actually make some money off of. Working with my old friends/other GMs from MornaTK on the new MMO, Samhan Chronicles. I will be working on their crafting, enchanting, farming and other background systems. Working in JavaScript and Lua, learning to use GitHub and LiquidBase etc. Been fun. Also, doing independent contacting work for my job, I am changing over contracts to a new company in June, so this should be interesting. Enough about that though…

The Sword Beams, that and sounds are now working when in Desktop Mode!

When the Sword has been obtained, and the player has full health, the spacebar can be pressed for fire the sword projectile. For VR Mode, I plan to have it so that when you slash, it will automatically fire in the direction of the swing.



Setting up colliders on enemies:

Stalfos:

Getting Shops, Secrets and more in place!

Caverns are in place and seem to be working for the most part. I need to make some tweaks here and there to get the audio and text all working, but the items etc. seem to appear as expected. I had some fun with the NPCs that work each of the different shops and caves:

Wooden Sword:

Making a Choice:

Potion Shop:

Gambling Game:

Secret!

Warp Road:

Shop 01:

Shop 02:

Shop 03:

Shop 04:

There are also caves for the hints, but I need to finish getting those setup.

Enemy Review: Bosses

So the boss rooms, I believe they are scaled to double the L/W of a normal room. I have done the same thing with the bosses.

Aquamentus (Dungeon 01/Dungeon 07)

Using this model based directly on the manual art. Question is, how do I have it so the horn can be hit from ground level still? Drop its head for an attack? I need to figure out how to spice up the attack and make the fight interesting/feasable.

Dodongo (Dungeon 02)

Again, right from the manual art. Opening and closing the mouth so bombs can be placed, as well as action to wander and eat bombs placed in front of it.

Manhandla (Dungeon 03)

From the manual art again. This model needs some cleanup and rigging still. No animation done yet. This will be fun, speeding it up as the claws are destroyed. I still need to separate and animated the models.

Gleeok (Dungeon 04 (2-Headed), Dungeon 08 (4-Headed)

This one, I wanted to go with the version from the manual, but it leaves something to be desired. The TotK version, it is neat with the elemental heads and all. It sits still and attacks moving the heads around and firing beams. I need to figured out a good way to remove a head and add a head, as well as detach one for flight…

Gleeok Head

The head from the TotK version of the Gleeok.

Digdogger (Dungeon 05)

The large and small based on the manual art. The large is so big that the eye shouldn’t be able to be hit.

Ghoma (Dungeon 06)

From the manual art. I need to place “eyelids” and animate the open and close cycle. I then need to figure out how the timing for open and closing worked in the original game.

I think I will cover Ganon in another post.
Thanks for checking these out. I may go over the individual items in detail, and then, with what I know now, I can rig and animate the merchants, gambling den, etc.

Labyrinth Enemies

Zol & Gel

Zol and Gel, the manual art works really well. The sprites, what can ya really do with the blobs?

Models – Selected, Not Rigged. Need to make animations for Idle and Attack.
AI – Determining the way they patrol. Zol on defeat needs to spawn 2 gel, need to determine how they are placed.

Rope

The art for the Rope is what I went with. Pretty much a generic blue snake…

Model – Selected, Not Rigged. Need to make animations for Idle and Attack and Movement.
AI – Need to determine general patrol AI. Need to make it so they rush the player when they are on the same X/Y column, aligned with the player.

Vire and Keese

Keese

The Keese, the manual art, it is fine, it a bat, lol.

Models – Selected, Rigged, some animation created.
AI – Determining the way they patrol. They also slow and “Land”, need to determine how they choose when and for how long.

Vire

Stalfos

The Stalfos is a skeleton with two swords. I am using the version found in Hyrule Warriors.

Wall Master

Another simple one, a blue dismembered hand…

It does appear the spite and manual art have only four fingers…I may go ahead with the MM Remake Model and re-colorize it to the blue of the original art/sprite.

Goryia

So this is another one like the moblins, where the version from AOL is what I like better.

I need to go back and edit the model, I want the more weasle like appearance of the art. The current model looks too wolf-like…They work as a great stand-in though.

Wizzrobe

Darknut

Going with the TP variant for these.

Pol’s Voice

I want to edit this and probably retexture, but it works as a wonderful placeholder/testing model.

Lanmola

I want to edit this and probably retexture, but it works as a wonderful placeholder/testing model. I need to segement it out, etc…

Like Like

I want to edit this and probably retexture, but it works as a wonderful placeholder/testing model.

Gibdo

Bubble

Hell Yeah Borther!!!

Moldorm

I am going with the LTTP version (no hamburger). I think I will remove the tail bulb, so it has the five segments it should.

Patra

This model from another game isn’t a bad base to go off of, and it is already blue. A bit of tinkering and rigging and we can get this where I would like it.

Blade Traps and Statues

So the statues were odd to me. One was a dragon and the other was a weird fish-man head (Zola?)
With my version of the game, I am theming the dungeons after the different Sages and Goddesses, so I replaced the statues at the entrance with statues of Sages and Goddesses.

I will use these to fire the beams at link as well as the entrance decor.

Overworld Enemies: A Review. Learning to Re-topologize, Rig and Animate!

3D Modeling the mobs has been a fear of mine, I knew what I wanted to go for, but really, I don’t have the skill to create the ideas I have. Meshy, an AI site, has allowed me to take the images from the game manual and generate models from that. With those models, I have actually learned a lot about model topology, good practices, model rigging, basics of animation and much more. The models the AI provided give a good base to go from, but they need to be cleaned up a good bit before they are usable.

I was also able to get the online/VRChat minimap working, both Topdown and NES versions!

Below is some information about the Overworld Enemies.

Tektite

For the Tektites, sticking with the manual art vs. sprites, they are close enough that I was really able to go with the manual art.

I do want to cleanup the model a bit, I need to move the pincers down from in front of the eye, make them more like the mouthparts of a spider.

Model – Selected. Some Animations created.
AI – I need to make the yellow ones bounce about more aggressive than the blue. They have to hop, not walk. They can hop on mountainsides.

Octorok

The model is based more on the artist Deimos-Remus on DeviantArt:
https://www.deviantart.com/deimos-remus/art/Legend-of-Zelda-Octorok-143574671

Model – Selected. Some Animations created.
AI – There is a fast and slow variant. Need to determine how they choose the direction to wander. I will also need to determine how they choose when to shoot a rock. It is not always when Link is in the line of site. Red and blue act mostly the same I believe.

Leever

For the Leevers, sticking with the manual art vs. sprites was simple. I need to fix the spike/horns on the blue one, so they are more whitish without that blue tinge to them…

Model – Selected. Some Animations created.
AI – The read always appear in line in front of Link on the gird, along X or Y directions. Blue Leevers can appear anywhere walkable, need to determine how. Need to determine how long to keep them above ground. Need to determine how Blue Leevers choose direction to travel.

Peahat

Again, no real need to choose between the manual art or the sprite here!

Model – Selected. Some Animations created.
AI – They fly and land when stopped. Can land on mountainsides. Need to determine how long to keep in flight, flight direction and how long to stay grounded.

Moblin

Someone made a much nicer version of the manual art: https://www.newgrounds.com/art/view/jojoflynn/legend-of-zelda-moblin

So the manual art for these guys is…interesting. Compared to the sprite, it is quite different. The description even gives them a “Bulldog-like” comparison, not pigs. For now, I am using the N64 models as stand-ins until I can figure out exactly how I am going to translate the idea I have for these.
The Zelda II art for these is much more along the lines of how I pictured them, and I kinda feel the N64 models keep that spirit.

ModelsPlaceholders in use.
AI – Need to determine wandering AI. Need to determine when they choose to throw the spear.

Armos

Going with the version based on the sprite instead of the manual. The sprite based version is much closer to what I had in mind.

Model – Selected. Some Animations created
AI – Already have script for bringing to active when touched. Need to determine how to choose if Fast or Slow version. Need to determine how to choose direction of travel.

Ghini

The Ghini (I pronounce more like Ghee-nee, clarified butter + your knee; not like Genie, the Robin Williams)

Regarding their look, the manual art…well, it is am terrible generic sheet ghost. The sprite, it has a single eye, along the lines of the Armos sprite. It is located over in the graveyard, which from OOT, the Well, Shadow Temple, etc. Labyrinth 6 is also located close by, and that is themed as the Temple to the Sage Impa of the Sheika tribe. Later iteration leaned into the look of the sprite, highlighting the single eye:

Giant Ghini:

There is also the Poe, which are used throughout a number later games too:

I didn’t know until just now, the Big Poe Icon for Hyrule Warrior’s Adventure Mode is the NES Ghini Sprite!

Anyways, it happens that this was the model I was using as a stand=in, and I am going to retexture the “face” to have a single eye. I may have the colors be different between the “true” Ghini you can attach and those that are summoned from headstones. Kinda like the Poe Collector from OOT.

Okay, I fixed it.

Model – Selected. Model needs work to separate cloak from body, I attempted to rig already, but it acts weird.
AI – Need to differentiate between True Ghini and spawns from graves. Need to determine how direction of travel is selected. They do not travel on the grid. They are not stopped by the headstones. Only the True Ghini can be damaged. All but the True Ghini get faster as they go. The True Ghini is the only one that stops. Need to detemine how long to move/how long to stop.

Lynel

So the manual art is cool, kinda silly with the wild hair/mane, but it was the 80’s…
I do like the version that was found in BotW/TotK, and that is the version I have in my game,

The models are already extensively rigged, properly colored for Red and Blue versions, and they have a full set of weapons to choose from.

Model – Selected. Some Animations created.
AI – Need to determine how they wander. Need to determine when they will throw the swords, not always with Link in line of sight.

Zola (River Zora)

So in the original NES game, they look considerably different than the N64 itteration, the Zora. I have seen where this is drastic difference in the look is attributed to River vs Ocean Zora. I like this idea. The NES is not the only game with this style of Zora. AOL had them get out and walk on land, LTTP, they were in the rivers and the waterfall, with a King.

Another source for some of my inspiration, the Legend of Zelda cartoon:

So I have an idea on where I want to go with the model for this enemy, but I need to put it together, for now, I am tinkering with the N64 OOT model.

ModelPlaceholder for now. I will be getting animations etc. setup, then I can swap out the model. Being humanoid with not extra draping clothes, hard armor, etc., I can use the mixmamo rigging and grab some good swimming animations etc.
AI – Need to determine how the location in the water is selected. Need to determine how often to surface. Need to determine how the target for the project is selected. Need to fire a projectile.

Rock (Boulder)

So TotK had an interesting take on this, the Rock Like-Like.

“The rock version of a Like Like can shoot large rolling stones, and usually appear on inclined paths allowing their stones to roll down naturally. They are in essence an “armored” variant of a standard Like Like

As a child, I had always imagined it as Moblins along the map off the top of the screen pushing them down the mountain side toward Link below.

Model – It is a rock that falls down. I can add some guiding AI to them, I need to see how the bounce was “randomized” in the original game. I may model some of the Moblins along the ridge to push these down…
AI – How is the spawn point chosen? How is the bounce timer/direction determined?

Spawning and Mob Management

So at this point, I have researched how the original Zelda spawn system worked. Thanks to the speed running and randomizer communities, this game has been disected and analyzed extensively. The original ROM was dumped and the code has been uploaded to Github and commented: https://github.com/aldonunez/zelda1-disassembly

Here is the main source for how this works: https://pastebin.com/R5L56ZzT

Another good source of information: https://redcandle.us/The_Legend_of_Zelda

The spawn points on screens where mobs appear (not the off screen spawns like Octoroks to the right of the start screen). This is also the pattens in the dungeons.

For the off-screen spawns, I was able to use the original NES and determine how those Octoroks spawn in and predict where they would spawn each time I left the screen and returned to it from the same direction (I used the start screen to return to, it had no enemies on it to interrupt the pattern)

So at this point, I need to figure out how to build the actual Mob Management system. A table with an entry representing each screen, and each screen has a table listing the enemies/prefabs that can be instantiated. I need to look into how the mobs persist when not all are killed and you leave the screen. I know it is not always the same one that you actually left alive, it is the “hardest” (I need to figure out how that is determined programmatically) from that screens pool of possible enemies. If all mobs are cleared from a screen, it stays clear until the player has visited 8 different (?? Do they have to be different screens, or does revisiting the same screen increment the count?? I can test this easily enough on the NES).

Drops

So one of the sites linked above has a bunch of information about drops, drop rates and tricks to forcing drops based on the “10th Enemy” hint.

Drop Rates
The chance of getting a drop from
Group A: 80/256 = 31%.
Group B: 104/256 = 41%
Group C: 152/256 = 59%
Group D: 104/256 = 41%

I already have all the items put together, models for pretty much everything, I need to go back and look over what I have that is for use in hand vs what adds to inventory etc., make certain I have that handled. Colliders, map icons and everything else should be in place, as well as many of the scripts behind them. I need to look into better ways of handling the inventory system. That is on the TODO list as well.

Videos

Exploring the world in VRChat (with commentary):

Working on Models (timelapse):

Working on the overworld (timelapse):

Thanks for checking in! I will have another update for the Labyrinth Enemies and Bosses.

Updates to Models, Dungeons, Items and More!!

I have been working on getting the models and textures etc. properly setup. For some reason, I have been fearful of going back through and tinkering with assets I put together years ago. It has caused more headache than I like to admit, but I have finally done it. Going back and ensuring the origin points on models, their scaling, locations, rotations etc. are all being corrected. My biggest issue was the export of the .FBX files, for so long I did not realize that an additional option needed to be checked on Export to apply those settings. With that in mind, and more general knowledge about 3D modeling, game design and level setup, I have been able to make some good progress.

In the images below, the items have been spread out for the screenshots, believe me, the origins are all already set and their transforms/rotations are all set to 0,0,0….

Not only have I been going back and hitting old items, but also creating the textures and additional assets for more than just Dungeon 01. I have props for all nine dungeons, and I am working on the textures for the walls. I have a good jump on Dungeons 02 and 03 at this time.

Dungeon 01:

Dungeon 02:

Dungeon 03:

Dungeon 04:

Dungeon 05:

Dungeon 06:

Dungeon 07:

Dungeon 08:

Dungeon 09:

I have also gone back and worked on finishing up some texturing, grass placement, etc on the overworld.

Here is the latest walkthrough video:

And here a few of the timelapses showing the work I have been doing.

Maybe I will have something ready for the 40th Anniversary? I still want to complete a standalone executable, as well as the VRChat World…

Update to the Dungeon Models, Creation of New Dungeons (02 – 09)

I realized that exporting file from Blender as an FBX without checking the “Apply Transform” option really messed me up early on when I initially created models. I have finally gotten brave enough to revisit the basic models for the dungeons and get their origins properly set, rescale and properly apply things, rethink the actual size of things and get the models exported with all of this actually applied.

I also went ahead and revisited the UV mapping as well as learning to use the Mirror modifier so things are properly lined up. Also realized there was a measurement tool, so I was able to really ensure things are where I want them to be. The result is awesome. I now know right where each wall should be positioned etc, I may be able to redo the way the camera movement is handled now that the coordinates and directions of everything is consistent.

The video is a sped up a good bit, so you may want to adjust the replay speed on Youtube if needed. Here is a video of the progress:

This is an overview of how I am rebuilding the first dungeon, how I rebuilt the Bombable Wall as well other walls and doors. This shows work in Unity, Blender, GIMP, MS Paint, coding in C#.

Project Combination

I have finally taken the time to combine the two projects I have been working on. I had the Overworld and First Dungeon as separate projects, they are now cleaned up, and combined and I have been able to upload and test with VRChat.

I have learned several new things in this newest iteration of my work. I have been able to correct issues with the separation between terrain blocks. Came down to the following things:
– Pixel error setting differences between blocks,
– Terrain blocks not set to neighbors in the same group,
– Terrain dimensions not the same,
– Terrain Transform position X and Y inconsistencies in world placement.


With these corrected, I have been able to eliminate the gaps in terrain.

I also figured out issues between VRChat and testing in the Unity Editor. When you have objects and components loading in the Awake() and Start() functions, this will work in Unity for getting the references needed, but that is not the case in VRChat. These will need to be manually assigned to the scripts/GameObjects as you go.

Here is an update and a look at the world so far.
https://www.youtube.com/embed/dzAZebaniM0?si=wmcwT67NdjC4GjEB


Research and Sources

So, in an effort to recreate the feel of the original game, I am reviewing videos on the way the game works, as used by Speedrunners.

Information about items:
http://redcandle.us/Legend_of_Zelda/Technical_Information

Spawn Point video:
https://www.youtube.com/watch?v=1Nx8NshkxF8

Spawn Point Document:
https://pastebin.com/R5L56ZzT

Speedrun (Explains many things including Drop Table, Counters, and Enemy movement.
https://www.youtube.com/watch?v=ACuk2TXoNhc&t=1391s

Mini-Map and Other Progress with VR

Odd. Post I just made did not actually publish, but the links did…
Working on the mini-map and getting objects, enemies and the player to show, working so far and the icons are animated!

You can now see the original version of the dungeon as you minimap as you walk through in VR. The Shieka Slate, I added to the game for VR mode so you still have a HUD in hand.

Here is an enemy and what their position would be in the original game show on the minimap.

Items in my view and on the ground in the minimap:


The room while the game runs:



Below is a walkthrough of the progress so far: