Konpon is a language learning, 2.5D, point-and-click adventure game where the player must learn Japanese words through interacting with labeled objects in the game's environment. The player collects learned Japanese words in their language journal to aid them in solving language puzzles presented by the games NPC’s in the form of NPC Quests and culturally inspired Karuta Card Games.

Konpon is a game that was intended to be released but was dissolved during it’s pre-production phase after only 3 months of development.

It’s included here to show the extent of my abilities as a Technical Director and for creating data-driven systems while writing documentation for those features and processes involved within them.

More importantly it serves to show what I’ve learned from projects that are not always released.

Active Duck Studio - Team Photo

Active Duck Studio: Konpon’s Development Team


More about KonPOn

In development three months before the production of Glowing Garden began under Active Duck Studio, Konpon served as a stepping stone for me to use my technical skills to lead and manage the technical challenges for this games development.

As Technical Director I was responsible for assessing the technical needs and processes used to develop the game. And documenting those assessments using a Technical Design Document so they could be distributed to other team members and potential future developers.


Technical Documentation

I was responsible for creating and submitting a Technical Design Document (TDD) which outlined the technical requirements, risks, file naming conventions, game mechanics, platform and version control procedures that were used during the development of Konpon .


Konpon TDD
Click to see the TDD

Coding Conventions

The coding conventions for Konpon were defined in the games TDD using a Unity C# style guide I wrote myself.


Konpon C# Code Conventions
Click to see it on GitHub

Nerdy Stuff Ahead

Warning

Nerdy Stuff Ahead ❗ Warning ❗

 

Data Driven NPC Interactions

Konpon relied heavily on Player/NPC and Player/Object interaction. I used my skills with working with parsing JSON files Konpon to ease the process of adding dialogue and object labels.

Data Driven Dialogue Structure
Basic JSON Array Structure of Konpon's Dialogue

I designed a structure of JSON data that was read and processed by a Dialogue Manager system so the names and messages could be displayed on UI elements in-game.

Konpon's Implemented Dialogue Structure
The final structure that was parsed to Unity

Once the data from these files was interpreted, it appeared in-game whenever the player interacted with an NPC or Object. Below are a few exmaples of this:


Flexible Programming - Karuta

Something I prided myslef on during the development of Konpon was the use of appropriate programming patterns for different problems. I made use of the "Observer Pattern" in many instances to limit the amount of data shared across scripts.

More specifically, I used it to implement the game's Karuta card-game section when choosing to play the minigame game with NPCs.

We adapted the game of Karuta so that it became a test of the players Japanese vocabulary.

C# Delegate Functions
C# Delegate Functions

I used 'Actions' - shorthand for delegate events in C#, to control the start, display and validation of cards in the minigame. These three delegates coupled with just a few public variables and prefabs to make each instance of a Karuta game flexible.

An example of a Karuta Game
Karuta Game Prefab Script in Unity


Card Validation Using Delegates


Flexible Card Count & Card Images


Karuta Validation Using JSON File



Previous
Previous

Glowing Garden

Next
Next

Reject Humanity: Return to Monkey