CodeVille
Code Ville is an immersive VR game designed to introduce beginners to the fundamentals of computer programming in an engaging and interactive way.
Contribution
concept design ✺ prototype ✺ VR development
Team
1 Design Engineer, 1 Technical Artist
Duration
1 year (2018-2019)

Overview
We started exploring the project from this question: “How can we make coding education to be easier and more interesting?”
This project is guided by three key goals: (1) to design and develop a VR game that makes coding education engaging and enjoyable, (2) to create an experience that motivates players to continue learning and exploring, and (3) to design an immersive environment with interactive elements that enhance user engagement.
Core Idea
We designed the game around a village-building concept, where players construct the village step by step by following rules inspired by fundamental coding principles.
To keep players motivated, the game is structured in levels, allowing them to progress from basic coding concepts to more advanced topics gradually.
As their coding skills improve, they will be able to build increasingly complex villages, applying what they have learned in a meaningful and engaging way.
How It Works
Resources for Building a Village
Players receive various resources to start building their village. These resources include:

Conditional logic boxes, such as the ‘if’ box, help players understand conditional statements. The ‘for’ and ‘while’ boxes introduce basic loops and repetition.

Boxes containing toy trains, trees, and mountains represent variables. Players will use these elements to construct a village featuring a train, trees, and mountains.

Action boxes function similarly to commands like “Run” in real programming languages.

In an open space filled with these resources, players can construct their village by grabbing and placing boxes in the correct sequence using the controller’s trigger. This allows them to create and manipulate their environment as they see fit.
The conditions for ‘if’, ‘for’, and ‘while’ statements must be placed above their respective boxes, while other elements should be positioned inside them.

Here’s an example of a code sequence using “if” and “while” statements: The train is created and set in motion due to the logic within the “if” box. Players can then place a “while” box and insert the “tree” and “create” boxes inside it. This setup ensures that trees are generated every time the train completes one full trip, as dictated by the “one round” box above the “while” statement.

To help players connect their learning to real-world coding, we’ve added a special feature. By pressing the grip button on the controller, they can instantly transport to a computer science lab and view the actual script they have created.
Player's Goal

The primary objective is for players to build and interact with their village as they wish.
Ultimately, the goal is to make coding feel like an accessible tool, allowing players to gain hands-on experience and develop real programming skills in an engaging way.