
Learn to build a 3d mobile moba in Godot, importing 3d animations with an animation tree, optimizing environments, and implementing multiplayer networking, lobby systems, matchmaking, and secure server authentication.
Learn a practical Mixamo–Godot pipeline by importing FBX animations from Mixamo into Blender, fixing what’s needed, and exporting a single GLTF that Godot can load as a unified scene.
Working addon for blender 3.1 and 3.2 Godot Game Tools: https://github.com/rena-souza/godot-game-tools
Import Mixamo animations into Blender without the addon, combine and edit them, then export a single gtf file with embedded textures and animations.
Download and launch Godot, create a new project, and import a Blender GTF file to add the character’s mesh, armature, and animations; save as character one.
Extend the animation tree with dodge and run transitions, three normal attacks, two specials, hit reactions, and idle recovery, tuning fade times and time scales for responsiveness.
Develop a river scene by stretching a quad mesh and animating its water texture with a visual shader. Add clouds, lighting, and shadows to enrich the stage one environment.
Configure a kinematic character controller with a capsule collision shape in Godot, and apply an unshaded material to brighten the character for 3D mobile MOBA gameplay.
Configure Godot to support multiple mobile resolutions by setting a base window 1280x720, enabling 2d stretch, expanding aspect, and implement a multi-touch joystick and buttons with control nodes.
Prepare the Android export for a Godot 3D MOBA by installing Android Studio and SDK tools, creating a debug keystore, installing export templates, and enabling USB debugging for device testing.
Build a game scene in Godot by combining stage, character controller, and controls. Add a camera with cam guides to orbit the player and test on PC and Android.
Fix common android mobile issues in the Godot project by disabling software skinning, enabling idle animation autoplay, adjusting stage materials to stop reflections, and planning shadow baking for performance.
Explore baking indirect lighting with baked lightmaps in Godot to pre-render shadows into textures, boosting mobile performance while noting tradeoffs like larger game size and no dynamic shadows.
Monitor Android game performance by displaying frames per second in a label, adjust the font via assets, and remove the directional light to reach 60 frames per second.
Determine the movement direction from the joystick and the camera orientation. Compute direction using the camera's forward and right vectors, then emit a direction vector to drive the character controller.
Implement a fixed time step in Godot with a custom tick handler to decouple physics from frame rate, using a timer and handle_tick for a stable 60 fps.
Explore wiring signals for normal attack, S1, S2, and dodge, then process input to drive character animations, movement, and timing with the animation time for synced attacks.
Create dynamic slash effects in Godot with animated sprites and sprite sheets, importing frames to an animated sprite 3D node and tuning opacity and update mode.
Learn how to build a 3d fireball attack by adding CPU and soft particles, a halo shock wave, and keyframing animation in Godot for a mobile MOBA game.
Learn to build a ground smash attack for a mobile 3D MOBA in Godot using CPU particles, a shockwave, ground cracks, rocks, and dust with custom shaders and materials.
Learn how to add multiplayer for your mobile 3D MOBA by exploring cheating risks and network architectures, including authoritative client, deterministic lockstep, and authoritative server designs.
Set up a Godot server project, create a server scene with network init, define port and max players, and connect client join and leave signals; use an auto loaded client.
Host your game on a virtual private server (vps) by renting a Linux Ubuntu instance, transferring files via ssh, exporting a Linux build with Godot, and connecting clients globally.
Learn to build a functional lobby system by adding server-side room creation, client RPC calls, and room management with viewports, including enter room flow and safe checks.
Build a Godot multiplayer lobby by registering clients to rooms, managing the room's client list with remote functions, and updating the UI with participants and room ID.
Continue building the lobby system by refining the item list in the room scene, configuring columns and titles, and implementing server-driven exit and client removal through RPC and room scripts.
Explore coding the lobby system: display dynamic room lists, show room IDs and player counts, refresh via timer-driven server updates, and enable joining or creating rooms in Godot.
Learn to implement a dynamic lobby system that assigns players to two teams, counts team members, and allows real-time team switching via server RPCs while updating client records.
Spawn players on the client side by duplicating character scenes, remove cameras, and rotate models for team setups in Godot, then test with multiple clients to verify spawning and synchronization.
Learn time synchronization for multiplayer games in Godot by aligning server and client clocks, managing latency with rpc signals, and starting matches for all players simultaneously.
Learn to synchronize the world state across clients by routing input through the server, distributing a 20 fps state payload, and advancing animations via manual process and animation tree.
Explain how entity interpolation smooths multiplayer movement by rendering past world states with a visual position buffer, using render time and interpolation factors to avoid jumps.
Implement reconciliation to align client prediction with server state in a Godot MOBA; buffer inputs and states, compare with server results, and rewind when needed to prevent cheating.
Develop authoritative server combat by using an area node for hit detection, with on_hit, group-based collisions, and frame-difference reconciliation to sync hits between server and clients.
More content coming soon
Install and activate the Firebase plugin for Godot, configure authentication with email and password, and connect your web app using environment variables and API keys.
This course will help you start your next 3D MOBA (Multiplayer online battle arena) Game using Godot Engine and making sure it works on mobile devices!
The course is currently using Godot 3.x.
The course is carefully divided into 10 sections that contain videos relevant to each section.
You will learn the basics of importing 3D characters from Mixamo to Godot and how to setup a flexible animation Tree for your character. Then we will build the 3D environment by importing 3D assets into Godot and learning how to manipulate them, then we move into optimizing the assets for mobile devices using Lightmap baking in Godot, and we will go through implementing multi resolution and multi touch input features. You will also learn how to use the particle system in Godot to create special effects.
Next I will walk you through creating a Lobby/Room system for your Game. We will then address advanced game networking concepts such as entity interpolation, clock sync, reconciliation, etc.. and learn how to utilize them in your next Game through movement and combat.
By the end of this course, you will have a deep understanding of the concepts behind multiplayer networked games and on how to start creating your next 3D MOBA for mobile using Godot!