I Tried Making a 3D RPG Game in JavaScript - creating3dgames.com

I Tried Making a 3D RPG Game in JavaScript

Views: 734036
Like: 24366
Follow me on:

Here I tried making a 3d RPG game, completely from scratch in JavaScript/Three.js. I took some code from previous tutorials, such as player controllers and third person cameras, bolted on a few free assets like Quaternius’s models, and added some gameplay. The code could serve as a nice jumping off point for someone looking to make their own little browser rpg.

Basically, I tried to code up the skeleton of your basic rpg in a couple days, using just JavaScript. All the elements, player stats, quests, inventory, enemies and AI are all there, in various stages. There’s a lot of improvements you could make here of course, adding more weaponry and items, magical powers and skills, bigger and badder enemies. But this will hopefully help you to understand how to use Three.js to get started on this type of project. Making the basic bones of a 3d rpg game isn’t too difficult.

What I’ll cover:
* Getting a basic 3d world up and running.
* Replicating a basic version of Unity’s GameObject architecture.
* Adding third person movement and a third person camera.
* Adding HTML ui elements such as icons, inventory, stats, quests.
* Enemy AI

Like always, full source is available, just check the github repo. Go ahead and do whatever you want with it.

Various clips/assets from:

The Legend of Zelda: Breath of the Wild is an action role-playing/adventure game developed by Nintendo and released in 2017.

Quaternius has a lot of free 3d model assets on their site, check them out!

And even more free animated models at Mixamo.

I also picked up quite a few icons on GameIcons.net.


  1. I thought I knew JavaScript pretty well…until I saw this.

  2. Hey why did you add stuff in html and not kept everything on three.js side?

  3. So why does it take Blizzard 10 years to make an RPG if one guy can do this in like a week?

  4. This is impressive. Didnt know you can do this with javascript. Will dive more into this.

  5. wow,its really really really cool,l hope l will be able to create the world that belongs to me also belongs 'us',the real world to us

  6. i hope this made you money because fffffffffffffffffffff that just use a unreal

  7. Sheesh, you like to live life on hard difficulty man

  8. what a waste of time, better u used typescript. why to reinvent the wheel and not hook into some nice typescript game engine


  10. Wow! So impressive. You say few days of work? For me it will be months. Even with 8 years in web dev, but never tried game dev

  11. this video is so boring i will not continue watching

  12. Mate.. many thanks to you for this gem and rest of your videos 🙂 cheers once again!

  13. man, i am a c# dev but javascript is kinda awesome isnt it ?

  14. he feels already depressed before doing it because of JS lmao

  15. this dude got bored in quarantine and decided to make a rpg game using java HAHAHAHA

  16. still Im watching this.. THATS COOL I LOVE IT

  17. boooooaaa !!! 😍😍 wow its really work o.0 LOL

  18. Next time: I Tried Making a airplane with JavaScript

  19. You Sir, are the Bob Ross of Web-games! Thank you so much for this tutorial I learned heaps from it.

  20. Are you a masochist? You actually made a game in javascript just because you can? Not in a million years I touch javascript unless it's absolutely unavoidable. However I am "just" a backend developer… not a game/front-end/fullstack developer, so maybe I am biased (I like NodeJS though, but I lack competence/experience to actually make use of this runtime environment). Maybe I should not say anything… I have done some very masochistic projects as well, but I rather not talk about it.. still keeps me up at night.

  21. This guy sounds awfully similar to the guy from MadSeasonShow or am I wrong?

  22. i read the titlei thought: WHY?

  23. Just those ghosts were so unresponsive. I wouldn't continue without adding any kind of effect that indicates, that they took damage 😀

  24. I love how casually you just created this out of thin air using JS

  25. The most thing that surprised me is that you used html in making the game, and the game looked so cool

  26. Man, u are smart. Wow! Thanks for inspiring me.

  27. Wow, you should put this tutorial in a ebook,
    Amazing content thank you so much 👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻

  28. "It should be simple"
    Me: o.O … Of course it is!

  29. we'll use 100% JS, nothing else
    Opens up HTML documentation

Leave a Reply

Your email address will not be published.