
Define the core player experience with player experience design and ensure every choice from fast stylish cops and robbers action to an electro swing soundtrack reinforces that feeling.
Learn to create a network in Godot by running host and client instances that connect to server and exchange data, using a networked multiplayer node, the remote keyword, and APC.
Create a playable vehicle prototype in Godot, building a white-box level with CSG geometry and implementing an input-driven drive system using keyboard and controller.
Master vehicle wheel parameters and speed control to improve car handling in the Godot course. Tune suspension, radius, friction, and damping to balance grip, stability, and response.
Learn to manipulate a grid map as a single object of x, y, z cells, fill it with tiles, and randomly populate the map at runtime—without procedural generation.
Import buildings and fix collision shapes, align pavement materials, and update the mesh library. Randomly place and rotate buildings on the grid, preserving road connections.
Control skyscraper spawn by assigning a per-tile percentage in the grid map script. Rename tiles and update the mesh library to align the order with intended buildings.
Coordinate networked city generation by letting the host control map creation while clients generate identical maps using IPC calls and synchronized placement of map cells.
Pause the Godot game until all players are ready, track ready players locally on the host, and broadcast via a game state group with remote procedure calls to start together.
Design and implement a map border by building a surrounding CSG box wall, resizable to tile size and count, with collision enabled and synchronized across hosts.
Prepare props for the city by building a parked cars scene in Godot, including mesh instances, collision shapes, physics setup, unique materials, and placement for map generation.
Explore how to create interactive fire hydrants in Godot by spawning water particles, detecting player contact, and applying a hydraulic push to the car for dramatic physics.
Split the city into four neighborhoods in Godot by assigning buildings to quadrants based on x and z coordinates, featuring factory, shops, and unique buildings.
Create a minimap using a second camera rendered through a viewport container, allowing multiple cameras and a zoom that scales with player speed, while handling layering and GUI layout.
Learn to implement grid references on a Godot mini map by updating a label with x and z coordinates using stepify to snap values for readable display.
Spawn money on contact, letting either team pick it up to add to their current total. Cops cannot drop money and keep what they grab, while criminals may drop cash.
Learn to build an in-game announcements system in Godot that displays who delivered money and how much, with a fade-in label synchronized across all players.
enable player customization with car color options and persistent audio and graphics settings, while building a 2d-3d lobby using godot's viewport, pivot, and art deco 3d elements.
Enhance the lobby by redesigning team selection with an item list UI, a pivot-tween animation, and signals to synchronize cop and criminal modes, plus theme and sound polish.
Learn how to apply a brand new spatial material to a car in Godot, update its color from lobby choices, and sync that color across the network for all players.
Persist the selected paint color across play sessions in Godot by updating the save data, setting a default color, and applying the color through the color picker.
Learn how to assign three music tracks to create four neighborhood soundscapes in Godot, enable auto play, and apply a phaser and other effects for distinct audio.
Including code adapted from Bastiaan Olij's Youtube channel - https://www.youtube.com/channel/UCrbLJYzJjDf2p-vJC011lYw
Create a nighttime environment in Godot by adding a new environment with a panorama sky, importing textures, and adjusting ambient lighting and shadows; plan a daytime version with host selection.
Host selects an environment in the lobby, propagates the choice to all players, and synchronizes time of day and lighting for a unified view.
Create a car exhaust particle system in Godot that reacts to speed, adjusting lifetime and emission via a speed-driven script, using a sphere mesh, transparent material, and simplex noise texture.
Design a general in-game options menu in Godot, then build audio and video submenus using vbox, hbox, and center containers, texture rects, and a gooey default theme.
Learn intermediate Godot techniques as we make an online multiplayer car game in a procedurally generated 3D city! We'll use GDScript to make a cops-and-robbers game set to a bouncy electro-swing soundtrack using custom made assets from Blender and Ardour.
In this course, we'll be focusing on making a single, large project rather than a bunch of smaller ones. Our focus will be as much on that game development pipeline as the techniques we'll be using, and we'll simulate what it takes to make a small scale indie game from scratch.
Some of the things we'll cover include;
Fast 3D gameplay
Online multiplayer using direct connection over IP
Team play (cops vs robbers)
A procedurally generated city
Creating city neighbourhoods
Procedurally placed props (like lamp posts, traffic cones, parked cars, etc)
VehicleBody physics
Beacons that respond to the music
Simple player customisation that’s persistent between plays
A 1930's inspired aesthetic
What's Godot?
Godot is a Free and Open Source game engine that we absolutely love. Yann has already taught a popular and well reviewed course on it on Udemy and both of us really enjoy working with it. It's available on Windows, Mac and Linux, has separate 2D and 3D pipelines and is generally awesome.
The course will be written in Godot's native GDScript, which is based on python. GDScript is a dynamic language that's powerful, versatile and quick to work in.