Skip to content

From Gamification to Game-Based Learning

RISCV_Logo

Design and Implementation of a Mobile Educational Game for the Multi-Cycle Processor

Unity Tests Latest Tag Unity Version Platform License: GPL v3

This repository contains the source code and Unity project for my Bachelor's Thesis at TU Darmstadt.

The project is an educational mobile game designed to teach the fundamentals of computer organization, specifically focusing on the multi-cycle processor (Mehrtaktprozessor).


Table of Contents


Screenshots

Processor Chapter Extender Chapter Charlie
Processor chapter screenshot Extender chapter screenshot Charlie

Play the Game

If you want to play the game without opening the project in Unity, you can find the pre-built versions (APK for Android, EXE for Windows etc.) here:

Get it on GitHub Get it on Google Play Available on itch.io


Project Overview

RISC-V Adventure is a quest through the layers of computer architecture. Players must master various components to eventually understand and build the "Great and Terrible" Multi-cycle Processor.

Key Features:

  • 31 Levels across 8 Educational Chapters:
    1. Register - The basics of data storage.
    2. Multiplexer - The art of selection.
    3. ALU - The core of calculations.
    4. Memory - Where instructions and data reside.
    5. Extender - Preparing data for processing.
    6. Register File - Managing multiple registers.
    7. Single-Cycle Processor - Putting it all together in a single cycle. (Work in Progress)
    8. Multi-Cycle Processor - The ultimate goal!
  • Companion System: Meet Charlie, your digital assistant. She provides hints, explains theory, and allows players to choose between deep-dive explanations or jumping straight into the action.
  • Interactive Learning: Concepts are taught through gameplay mechanics rather than just passive reading.

Technical Specifications

  • Engine: Unity 6 (Version: 6000.5.10f1)
  • Target Platforms: Android (Primary), Windows (Evaluation Build), Linux (Evaluation Build)
  • Render Pipeline: Universal Render Pipeline (URP)
  • Version Control: Transitioned from Unity Version Control to Git.

How to Open the Project

To explore the source code or build the project yourself:

  1. Install Unity Hub.
  2. Install Unity 6 (6000.5.10f1).
  3. Clone this repository:
    https://github.com/GGalya1/riscv-architecture-educational-game.git
  4. Add the project to Unity Hub and open it.
  5. Note: The initial import may take several minutes as Unity generates the Library folder.

Building the Android APK Yourself

Android builds require a signing keystore, which is not included in this repository for security reasons (it is tied to the published Google Play identity). To build the project yourself, you have two options:

Option A: Quick test build (recommended for just trying it out):

  1. Open Edit -> Project Settings -> Player -> Publishing Settings.
  2. Make sure Custom Keystore is unchecked.
  3. Build the project as usual, Unity will use a default debug keystore automatically.

Option B: Build with your own signing key:

  1. Open Edit -> Project Settings -> Player -> Publishing Settings.
  2. Check Custom Keystore, then open Keystore Manager > Create New and set your own keystore/alias passwords.
  3. Build the project, the resulting APK will be signed with your own key.

Note: Builds you create yourself will not be signed with the same key as the official release, so they cannot be used to update an installation of the Play Store version - but they will install and run normally as a standalone APK.


Project Documentation

You can find full information about used assets, project structure, code style, pull request guidelines, and more on our GitHub Pages.


Roadmap

By Version 0.8.8 (End of August 2026)

  • Finish Chapter 7 - Single-Cycle Processor
  • Additional polish and bugfixes based on user feedback from v0.8.2
  • English translation
  • Sound effects and music
  • Add tests to the repository
  • Add custom hand-drawn sprites

By Version 1.0.0 (End of November 2026)

  • Introduce Chapter 9 - Pipelined Processor
  • Introduce Tutorial
  • Introduce Story Mode and separate it from the level list (adaptive learning path based on player actions)
  • Rework the in-game UI to better adapt it to mobile devices
  • Add shaders to in-game processor objects

Citation

If you use this project or want to cite the associated Bachelor's Thesis, please use the following metadata:

BibTeX

@bachelorthesis{ggalya2026riscv,
  author       = {Galyautdinov Artur},
  title        = {From Gamification to Game-Based Learning: Design and Implementation of a Mobile Educational Game for the Multi-Cycle Processor},
  school       = {Technical University of Darmstadt},
  year         = {2026},
  type         = {Bachelor's Thesis},
  url          = {https://github.com/GGalya1/riscv-architecture-educational-game}
}

About

Educational mobile game (Unity 6) simulating a RISC-V multi-cycle processor architecture. Developed as a Bachelor's Thesis at TU Darmstadt (Grade: 1.0).

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

21 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages