“The BlockTrain” is a puzzle-racing game that teaches the player about blockchain technology. As a blocktrain conductor, you are tasked with keeping your BlockTrain in tact, finding any discrepancies, and navigating your way to each planet. Along the way, you’ll visit different planets, gathering unique items that you must deliver to the final station.
Areas in the Game
- Implemented train movement
- Implemented asteroids
- Helped with train rotation
- Implemented train laser
- Implemented camera perspective
- Helped with cart movement
- Implemented player movement
- Implemented the dialogue system and UI
- Wrote the dialogue for all levels
- Helped with generating the differences for the puzzle
- Implemented tablet to report differences
- Implemented the developer mode to make testing the game more efficient
- Helped with managing game flow of each level
- Helped with the save and load system
- Built/exported and tested the game for iOS
Writing for this Game
The majority of my contributions to the project involved the coding implementation of the game. Besides that, I am also the writer for this game, as I am the one who wrote all the dialogue, which includes the tutorial, educational, and story aspects. Going into this project, I knew that serious educational games tend to be looked down on by many. With this in mind, I tried to keep the dialogue more serious during the educational parts, but very lighthearted and interesting wherever else I could. Rather than providing the player with cliche, bland dialogue choices, I put a lot of thought into all the dialogue choices provided to the player throughout the game. This is especially important since I use the same dialogue choice UI for the knowledge checks that are thrown at the player throughout the game. If I hadn’t put as much effort into making the story dialogue choices more fun, I feel that the player would grow tired of the dialogue system very quickly and become less engaged with the game.
Creating the Dialogue using ink, the scripting language
To write the dialogue for this game, I used the ink scripting language. Initially, I planned on just writing the dialogue through the Unity Editor, but I soon realized that this would be very hard to organize and maintain. Using this scripting language for dialogue made it very easy to write, test, and organize all the dialogue I wrote.
Dialogue from the Dyson Sphere Level
On the left of the window, there is the syntax for the language. This simple language makes it easy to implement dialogue choices and routes of dialogue. This includes features like knots, tags, and even variables.
On the right of the window, it presents the dialogue you’ve written in a more visually appealing manner than the editor. Here, you can also choose between dialogue options you’ve created and see how the different dialogue routes you’ve written will pan out.