A factory builder game about building a bread factory. Made in Unity 2021.
Much like the chapters of a novel, I tell the story of Breadforge's development through its cumulative pull requests. For some of the pull requests, I also narrate their development in the form of a "painlog".
Devlogs are about me; painlogs are about you. Instead of describing what I've done, a painlog describes the general pain point behind a batch of pull requests, the technical approach, as well as benefits and tradeoffs.
You can view those chapters below:
Make your character come to life with Mecanim, Cinemachine, and Input System.
The 3 Cs are the basic building blocks of any game with a 3D character avatar.
In March 2023, I gave a presentation at the Unity NYC meetup about how to implement the 3 Cs in Unity.
You can read the blog post behind the presentation here: jasont.co/character-creation-toolkit
| Feature | Pull Request |
|---|---|
| Implement basic character animation | #25 |
| Implement Cinemachine third-person camera | #26 |
| Refactor game input to use Unity's new Input System package | #27 |
| Refactor to get rid of CharacterController | #28 |
| Add Pause button as a reference point for C# events usage | #29 |
On generating a world using stacks of Perlin noise waves
| Feature | Pull Request |
|---|---|
| Populate game world with procedurally-generated resources | #30 |
| Add actual resource assets and change to ortho cam | #32 |
And why you should implement visual feedback first
| Feature | Pull Request |
|---|---|
| Highlight collectible resources | #37 |
| Add ability to collect resources | #38 |
And why it's the most important kind of game juice
I wrote a blog post on LinkedIn that summarizes the changes below.
| Feature | Pull Request |
|---|---|
| Add backing soundtrack | #39 |
| Add mine sound effect + sound effect process | #40 |
| Add footstep sounds for walking and running | #41 |
| Add footstep sounds for walking and running... on rocks | #42 |
| Add guardrail sounds | #43 |
| Add "null" (nothing to mine) mining sound | #44 |
| Add collect water sound | #45 |
| Add chop sounds for thin, medium, and thicc wood | #46 |
And why you should always fix bugs first
| Feature | Pull Request |
|---|---|
| Bugfixes: make resource collection not continuous + add polish for sound feedback | #47 |
| Bugfix: shift ground by .5 so that all tiles appear on ground platform | #48 |
| Fix showstopper bugs for last release | #49 |
| Fix animation bugs for last release | #50 |
| Add ability to zoom in and out | #52 |
| Fix UI camera ortho size not updating; make sounds 3D via spatialBlend param | #53 |
| Add a ton of animation polish | #54 |
And the importance of finding your game's visual "hook"
| Feature | Pull Request |
|---|---|
| Make everything unlit + copy assets over from Polyperfect asset pack | #58 |
Add ThirdPartyAssets/ as git submodule |
#60 |
Add Stylized Water 2 to dependencies |
#61 |
Add Stylized Water 2 test scene |
#62 |
| Replace water tiles with Stylized Water 2 | #63 |
| Add ground rule tile + tile palette + example scene | #64 |
| Integrate 3D tileset with stylized water into current game scene | #65 |
| Add rock textures + grass biome | #66 |
| Make island into a circular shape | #67 |
| Add camera rotation script for recording a TikTok | #68 |
And the importance of finding your game's mechanical hook
| Feature | Pull Request |
|---|---|
| Add inventory system | #69 |