Wizard Masters: A 3D Spell-Based Shooter Game Released

Hi everyone,

I’m excited to share that my game, Wizard Masters, has officially launched on CrazyGames! :tada: In this 3D TPS shooter, you take on the role of a mage, casting powerful spells to dominate your opponents.

Here’s what’s in the game:

Six Elements: Fire, Ice, Toxic, Wind, Lightning, and Earth.

Game Modes: Solo and Team Deathmatch.

Mobile Support: Enjoy the game on the go!

I truly hope you have fun playing it! A huge thank you to Babylon.js and its amazing community (that’s you!) for helping bring this project to life.

Let me know your thoughts, and enjoy the magic! :sparkles:

Blog post about the journey: I made a multiplayer shooter game in Lisp

Play here: Wizard Masters

20 Likes

Nice done!

1 Like

Congrats on the official release !!!

1 Like

Well done! This is a “Shell Shockers” tier heavy hitter!

I hope you periodically update us with numbers on how well your game is doing on the market!

Congrats on the release!!!

1 Like

Great work. Congrats on the launch!

1 Like

Thank you guys!

Just published an article about the journey: I made a multiplayer shooter game in Lisp

4 Likes

First of all congratulations on making the game and getting so far. Tipping my hat on the Clojure part as well!

Also, very nice article of the game making process. I agree with you that working with Babylon.js has been really nice, but I also feel that there are some “hurdles” slow you down. I agree with:

  • Performance; you need to take into account this really early on if your game consists of many moving parts. Is my web game able to handle physics/navigation/skeletal meshes etc., do I need mobile support… I think the native game engines are more forgiving.
  • Tooling; lack of visual editor is both gift and curse. You have to be able to visualize stuff more in your head without the editor, and generate tooling yourself to help with game maps etc. But there are also great tools like the playground and node material editor that really shine in my opinion. It is pretty impossible to share code in other platforms as easily.
  • Resource constraints; Yeah, this one is pretty limiting, but also shaders and atlas textures help a ton to reduce size of your game. I agree that if you are making a large scale realistic game, you might be in trouble.
1 Like

Thank you, I agree with you. It’s really hard to develop a game with so many moving parts while maintaining good performance. The Playground feature is priceless—I can’t count how many times it has helped me. Babylon.js and other web libraries have a bright future, but due to web limitations, I believe we’ll need to filter out certain types of 3D games. Otherwise, it was a fun and rewarding journey. I can’t wait to see what the future brings to 3D web development.

2 Likes

What a great read! I don’t think I’ve seen a functional multiplayer game before! Were you able to write the full game without breaking any rules of the functional paradigm? (eg: allowing side effects from certain functions)

Yeah I had to break so many rules unfortunately :slight_smile:

1 Like

Great example, awesome game, thank you for building and sharing.
@ertugrulcetin, question about game state management. You say the update is pushed every 50ms. But this frequency is on the server side, so for clients the message frequensy is equal 50ms + latency. The latency is user specific, thus it influences, perhaps even corrupts the spell damage. Do you have some “correction” mechanism for this?

Yes I’m applying some simple lag compensation.