Search Unity

  1. Unity 2020.1 has been released.
    Dismiss Notice
  2. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

3D Zelda / Third Person Adventure Engine

Discussion in 'Works In Progress' started by Jakeiiii, Mar 17, 2015.

  1. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    *UPDATE 15 July 2015*
    The engine has finally been released! Click here to be taken to the asset's store page!
    Also, HERE is the new forum page for the released version where you'll get the most frequent news updates on the asset as it gets updated.
    **

    Hello there!

    So I've been working for the past couple of months on a 3D Zelda engine that is meant to emulate the mechanics and gameplay of the 3D Zelda game (mainly the N64 ones). I have just under a year of experience with Unity and studied Games Technology at university for 2 years so I'm not too bad at the whole programming bit. So
    what I've got working now is just the basics: The character movement, the camera, ledge grabbing action, jumping off ledges, different camera modes, targeting on targets and slope mechanics. It's all nearly done, just in the process of being polished off and bug-free. I am planning to continue working on it after it has been released so that I can not only add support for people that use it, but to add new features like combat, menu systems, saving, NPCs, etc. The engine is made with gamepads/controllers in mind as it is meant to emulate that console Zelda feel.

    I'm working on this completely on my own and have made everything in it myself (no use of other people's assets and nothing copied from any tutorials). I also taught myself Blender for this and did the animations myself (which as they stand now are just very amateur place-holders); also note that the animations are not mecanim animations, as I like to control movement with scripting... but this can be changed if I'm persuaded.

    I wanted to open up a thread so that people can offer suggestions and any help if I so desperately need it; and I might need some bug testers at some point.

    I have attached the complete documentation to this post that describes the features of this engine in a little more detail (though do note that some of it isn't relevant anymore, like the way the camera handles wall collisions and how the slope mechanics work).

    Finally, here's the latest video showcasing my engine (19.July.2015):


    Please leave a comment if you want to share your thoughts/interest.
     

    Attached Files:

    Last edited: Aug 29, 2015
  2. MagicZelda

    MagicZelda

    Joined:
    May 1, 2013
    Posts:
    90
    love the name of cause :) Looking good so far keep at it :) and have fun
     
  3. Zhorky

    Zhorky

    Joined:
    Mar 16, 2014
    Posts:
    9
    Im really interested in this. I have the problem you described in your camera.

    "To cure this, if there is no collision between the camera and the character, it checks to see if there is a collision behind the camera. Otherwise it will restore the distances back to their default lengths. This removes any bouncing effect, any 'seeing through walls' and any hiccups of the camera not deciding where to be because it is in the corner between two walls...."

    I tried it,but it won't work for me. Is there a way to get this method? :)
     
  4. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    I have slightly modified the way that the camera collision works. When it comes to already having the camera moved in front of the wall obstructing the player from the camera's view, I simply have the camera move forward a tiny bit (instead of being on the wall exactly). The camera then checks behind where it already is to see if that obstruction is still there; if so, then it keeps it's distance away, otherwise it slowly restores it's distance away to the original/default value (so no bouncing). There's still the problem of, when the player is just out of sight that the camera warps back and forth (like in the video). I've managed to solve this by checking a distance (relative from the player) to where the wall was hit. If that line doesn't touch anything then the camera moves back to it's default distance.

    I'm trying not to disclose my method at the moment as I plan on selling this asset (and don't worry, it will be cheap and soon).
     
  5. TheNorthridge

    TheNorthridge

    Joined:
    Jan 4, 2012
    Posts:
    193
    I love this so far, I cant wait to get this :D

    About the FPS view, I think it would be cool to give another option to make it toggle, ala Skyrim, instead of just Zelda's button hold method.

    So it combat next on your to-do list, or is that a feature you shall be implementing?

    Good job sir! :D

    EDIT:
    Oh just noticed in First Person, you cant move :(

    I think it would be great idea to add a proper First Person View with movement, so as to add even greater diversity to gameplay :)
     
  6. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    Thank you for your interest! I'll likely be doing a second version with many more features, such as combat, weapons, NPCs, etc. More Zelda features; but for now it'll just be basic movements and core mechanics for the first release.
    Moving around in FPS would require me to alter the control scheme a little, but I'll consider it maybe for a second version (as for this first version I'd like to add things that are strictly Zelda).
     
  7. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    Another update for everyone!

    Have been testing the engine in OOT's Kokiri Forest map and have adjusted it a lot to work better with actual level design. The slope mechanics are far more improved now, as going onto different gradients in different angles now has a smoother transition. The camera now moves much more like in Zelda when you target on an enemy; you can move around and not be the center of focus on the screen while the camera slowly catches up to you (quicker if you're further away). Other things like controls are less glitchy (like with jumping; the direction you're holding influences the jumps correctly no matter which way the camera is facing the player). Ledge grabbing is far less glitchy as it no longer messes up the direction the player is facing when the player has already grabbed the ledge.
    Far more has been improved but they're just little things that make it an all-the-more solid engine.

    I'm looking to uploading a video very soon!
     
  8. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    First Person movement has now been implemented. :)
    Just ran into an issue where the camera only tracks the 'head bopping' movement of the animation when the game window isn't on full screen resolution. I have no idea why this is happening, most likely a glitch within the engine itself.
     
    Last edited: Apr 16, 2015
    TheNorthridge likes this.
  9. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    Another video is now at the bottom of the first post! It shows off the improved features, as well as a new First Person Mode in which you can move around in (much like in GTA V next gen).

    Enjoy! :D
     
    TheNorthridge likes this.
  10. TheNorthridge

    TheNorthridge

    Joined:
    Jan 4, 2012
    Posts:
    193
    Love it so far! The First Person system looks great!

    Hopefully now with a possible Combat Update in the future, you got a fairly unique Elder Scrolls/Zelda Game Engine to sell :D
     
  11. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    Thank you! There will definitely be combat mechanics for the second release. :)
     
  12. coy1234

    coy1234

    Joined:
    May 15, 2015
    Posts:
    4
    I'm planning to make my own version of The Legend of Zelda Majora's Mask.Can I use masks with this program? Will I be able to make a intro and create my own masks?
     
    Last edited: May 17, 2015
  13. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    Something as specific as that you may want to program yourself. Wearing masks is mainly a cosmetic effect; all you'd really have to do is, at the press of a button, spawn a mask on the character's face and alter certain behaviors via code.
    If I have time, I may add a mask-wearing feature for the second release.
     
  14. coy1234

    coy1234

    Joined:
    May 15, 2015
    Posts:
    4
    Thanks
     
  15. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    You're welcome. This first release will be less Zelda-specific than the second release; at the moment it's basically a third-person character controller & camera with some Zelda elements in there.
     
  16. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    A video of the final showcasing of the engine is now up at the bottom of this post! It's almost ready, everyone. Sorry that it took longer than expected, but it needed that extra time to be the best engine it could be.
    The engine now has it's own weebly page (http://zeliggames.weebly.com/3d-third-person-engine.html) and a playable online demo! So head over there to try it out! It won't be too long now before it's released so... can't wait. :D
     
    TheNorthridge likes this.
  17. coy1234

    coy1234

    Joined:
    May 15, 2015
    Posts:
    4
    Good job.
     
  18. Guideborn

    Guideborn

    Joined:
    Jun 15, 2013
    Posts:
    228
  19. Jakeiiii

    Jakeiiii

    Joined:
    Jul 7, 2014
    Posts:
    258
    Hi there,

    After a glance at the link you've provided, I'm assuming that the ORK Framework just needs a single script to do with control. The asset does only use one script to control the character, the rest are to do with the camera, water behaviour, GUI elements and other interactables.

    The upcoming update of the asset (1.5) will feature NPCs and text boxes which do allow for a cutscene mechanic as you can position the camera in each page of dialogue and it works nicely for both third person and first person view.

    That being said, with all the features my asset comes with, I'm not sure how well it will integrate with this other asset; but if all it takes is to tell the framework which script is the controller then it should be fine. If any issues arise, I can happily try to help (or at worst, refund you for the asset if it just won't work with the framework and you require that the framework remain in your project).

    I think what might benefit you would be just the bare character and camera controller; I have tried to submit it as a separate asset but I'm having complications with the process at the moment.

    And for future reference, go to THIS forum thread for updates about the asset as this one is irrelevant.

    All the best,
    -Yan
     
    Guideborn likes this.
unityunity