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

Overview


Highlights


Previous
Previous

Cross The Sea

Next
Next

A Shrimp Fried This Rice?