Idle Builder is a city building + idle game genre crossover that was originally created in just 24-hours for the Judica Me Game Jam. Even though it was competing with projects that had triple the development time, it was astonishingly awarded 2nd place among all of the jam submissions. The game features a really intuitive and punchy building placement system, collapsible/scrolling ui drawers for buying buildings, and a mellow atmosphere.
Project Goals
Create a fun and engaging experience to showcase our skillsets to employers.
Polish a simple mechanic to a shining finish
Create a functional, engaging game within a short period of time.
Test my skills in a solo environment.
Platform:
Windows PC
Engine:
Unity Engine 2021.3.14f1
Language:
C#
Tools Used:
Git, Visual Studio, Photoshop
Duration:
1 day
Completed:
May 2023
Role:
Creative Lead / Sole Programmer
Team Size:
Total: 2
Design/Programming: 1
Art: 1
Contributions
I lead the programming/design on this project. I set up and managed the source control for this game through Github. I directed my members to use Github Desktop.
My contributions to the project include:
Building placement mechanic
Building placement preview mechanic to communicate the validity of building placements
Placement particle effects
House smoke particles
Sound effects
Automatic resource generation
Music manager
Loading system
Main menu
and much more!
Building Placement And Previewing
Building Placement Code (Github)
Video demo of building placement
Different prefabs are displayed based on if the selected building is evaluated to be able to be placed in the currently moused over position. The conditions that are checked to determine this include the current amount of money the player has, if the cursor is on the top side of the land, and if the body of the building overlaps with any other buildings.
Resource Generation
Game Tick Manager Code (Github)
Building Production Code (Github)
Outcome In Game
I utilized delegates and C# events to create a global timing system for buildings to generate money alongside. You can set the global tick rate within the inspector. The tick manager then invokes the event recursively based on that set tick rate. The buildings each listen for the tick event and then update the coin counter and its associated UI element accordingly.
3D Particle Effects
I made use of Unity’s built in particle systems to create some 3D particle effects that matched the aesthetic I was aiming for on this title. The placement effects are spawned alongside the buildings and are scaled up to match their size. Combined with screen shake, they really lend a nice punch to the placement of buildings. For the smoke effect, I set the emission shape of the particle system to be a narrow cone beginning at the top of the chimney and expanding upwards and outwards.
Placement Particle Outcome
House Smoke Particle Outcome