During the Cozy Jam Spring 2026, my team and I created Norwegian Spring, a cozy 3D bicycle game made in Unity. You ride through a peaceful and scenic Norwegian landscape with forests, piers, and Norwegian-style homes. Because this was a cozy game jam, we wanted to make something that feels calm and just engaging enough to keep the player interested.
We were a four-person team: programmer/level designer, 3D artist, UI designer, and orchestrator. This is our retrospective.
What We Built
The core loop is a bike on auto-pilot that follows a waypoint system through the level. The player can nudge left and right with the keyboard, press a speed boost button when it appears, ring the bell, and choose which path to take at branch points. Birds flock overhead, flags wave in the wind, and Norwegian-style houses line the roads in randomized color variants.
The game jam had a limitation of making the game a seamless loop. The game needed to loop back to the start with no break in the gameplay.
Technical highlights
- Waypoint system with road-width detection so waypoints span the full road rather than a single point
- Seamless gameplay where the player continues along interconnected paths with no pause in the action
- Living Birds asset integration for ambient flocking
- Cloth simulation on flags for wind effect
The Biggest Challenge: Cozy vs. Engaging
Making a cozy game is harder than it sounds. Cozy means slow, calm, low-pressure, but that can easily cross into boring. We tried to balance the calmness with the speed boost mechanic and branching paths, giving players moments of agency without breaking the relaxed tone.
In hindsight, the fast-moving player character was our biggest design mistake. When your player moves quickly through a 3D environment, they fly past everything before they can appreciate it. You need a lot more content to fill a level that the player travels through quickly.
It helped me understand why we still don't have GTA 6.
We could have just made the bike slower, but any slower and it would feel too slow paced. Without enough movement power, the bike would also not be able to make it up hills.
For a jam with limited time, a slower-paced experience would have let us build a smaller, more polished world.
What Went Well
Shipping a full working 3D game with four people in two weeks is not easy, but we did it. Every team member contributed which helped us be able to combine programming, art, music, and design.
Our 3D artist delivered building meshes with full PBR texture sets (BaseColor, Normal, ARM maps) across multiple color variants.
Going into this jam, 3D level design was a weak point for me. I felt slow at it, but by the end I noticed that I had developed some muscle memory for things like placing terrain, implementing materials, and positioning assets.
WebGL debugging. We hit a bug where the bike had no drive force at all despite the code looking correct. After systematic debugging by adding logs to trace verticalInput, checking for null references, and verifying script execution order, we found that a leftover BikeControlsExample script was overwriting the auto-controller's input every frame with keyboard input (which was zero). The script seemed to take priority when we switched the build to WebGL. It helped me learn best practices when debugging Unity.
Lessons Learned
For a jam, slow players down. A fast player needs a bigger world. A slow player can appreciate a smaller, more detailed one.
WebGL is not the same as a Windows/MacOS build. Physics, shaders, and asset sizes all behave differently. Budget time for platform-specific debugging if you're targeting WebGL.
PBR texture sets are worth it. Even with basic lighting, proper BaseColor/Normal/ARM maps make assets look substantially better with minimal extra work in Unity.
The level designer and artist should have strong communication. I wasn't sure exactly what assets the 3D artist was going to make so it was tough to start designing. That sort of thing should be decided toward the start of the jam.
Play It
Norwegian Spring is playable here on itch.io. Give it a try, relax in the forest in Norway that we made, and let us know what you think!



Top comments (0)