Ninjora - Online Ninja RPG

Hi everyone!

I’ve been working really hard on an anime-inspired online RPG called Ninjora using Babylon.js and nengi.js 2.0, and I wanted to share my progress and get some feedback from the community.

The project is a fast-paced action RPG with features like dynamic avatars, jutsu abilities, a complete map/terrain editor, NPC dialogue & mission system, prop physics, spatial grid collisions, and map streaming. The server and client both use data baked from Blender (heightmaps, colliders, static meshes), and the world streams in 256×256m tiles.

I’m currently refining some systems and building out the world - the game itself is still in very early stages.. I’d love to connect with other Babylon.js developers, get advice, and also share what I’ve learned along the way.

10 Likes

Hey :slight_smile:

Just an advice in order to have more feedback and people committed to testing : since the game development is early stage, you should consider having a direct (non-email-registering-limited) link, to quickly test… Otherwise many people won’t create an account :slight_smile:

1 Like

I hear you! I went ahead and made email optional.

1 Like

Sweat :slight_smile:
I had a test. It works nice. Some comments :


Arrival in the world is on the extreme edge of the map :

I felt right after moving, then I was falling forever and had to reload the page, same after being killed by a bear.

Also, when trying to move from the edge, I would be blocked, some force would bring me back to the edge, I had to try several moves, jumps, etc and finally I got unstuck and would go walking on the map


The only way to cast an attack (expect punch) is to right click, and then while right-clicking, left-click ? I think it’s not conventional to have to click the two mouse button at the same same, but maybe that’s not intended ? Also is seems to have no effect for now, at least the fire balls do nothing on the chicken


Good luck for the continuation of your project !
I know porting a project to a playable online version is not easy :slight_smile:

Thank you for catching those problems, I’ve fixed them immediately.

As for the for the fireball (that’s one of the jutsu’s I haven’t gotten to revamping).
Thank you for that feedback - each feedback is so valuable! do you have any suggestions of what would feel better in terms of aiming/shooting? Maybe just holding the right mouse button to aim and releasing to shoot?

Depends. Following the other games I’ve played, there are (mainly) two different mechanics widely used :

  1. Type a number or scroll with mouse to change currently selected weapon/attack, and then click to use (Minecraft, CounterStrike, etc)
  2. Typing a number directly triggers the attack (League of Legends, World of Warcraft, etc)

The first one is more for FPS, the second one more for MMORPG
I let you choose following the mechanics you have in mind for your game :slight_smile:

I hear you. The issue is that, the player defaults to a third person mode meanwhile minecraft/counterstrike are completely first person. I understand my approach is not conventional at all though, I wonder if there’s something that doesn’t feel bad. I can tell it doesn’t land very well with the player to shoot that way

I think your game seems to be well suited for a third person + aiming game.
(Third person, but there is an aiming cross at center of the screen, and attacks would go there)
That way, you keep the logic from FPS (attack select only, and click triggers attack)

1 Like

The players are billboarded sprites and the only reason I mention this is that the camera’s alpha/beta is fixed to maintain the illusion of the sprites in a 3d world. I think why I added FPS shoot mode was so that the player could aim way higher without breaking the illusion. Maybe I’ll test out no fixed alpha/beta on camera or find some middle ground because I absolutely hear how this should make the mechanic less complicated

Really nice! I like the mix of the sprites and the 3d world. Had fun just walking around :slight_smile:

Personally I’d like to see it all kept in third person, the locked alpha/beta of the camera just adds to look of the world for me. Maybe you can use some sort of locking system or something?

Oh, one thing: first time I spawned in it was night time. I could not see anything, took a minute for me to figure out I had stepped out of the world and was falling all the time…

1 Like

chicken chaser

1 Like


Probably it depends on mouse type. Can you reduce a little sensitivity for mouse movement. It pretty fast for me.
I finally managed to kill 10 chickens at the old man’s request and sell them to the girl on the roof. I bought a teleporter. I haven’t figured out what to do next yet. But I’m already happy with everything.

1 Like

Cool work, could you share the implementation of changing the character sprite position for pseudo-3D, if possible?

Thank you for trying Ninjora and the feedback! I value every feedback and I’m currently working on mitigating each and every one to improve the game before I add in any other feature

Absolutely! I’ll working on adjustable settings as well as more things to do. Thank you for trying out Ninjora and giving valuable feedback.

Yes! I actually had help years ago in this post:

2 Likes

  • Can now adjust controls / settings / mouse sensitivity - thank you again for the feedback @Tricotou / @onekit
  • Fixed spawning bugs people were seeing
  • Added in Moon + better visibility at night
  • Added in Camp fire + integrated particle system to attach to props/objects
2 Likes
  • Cooking implementation
  • No longer gating movement during melee attacks
  • Trees respawn
1 Like
  • True third person aiming! :partying_face:
  • Weapon switching for melee to range using [Q]
4 Likes

I like the new aim system!