Tokyo Subway Simulator

東京都地下鉄シミュレータ (Tokyo-to Chikatetsu Shimureta) is a simple simulator of the Tokyo Yamanote Line (山手線). I wanted to use the eki (駅) jingles in a game. There are options to toggle the map and toggle displaying the eki (駅) names. This was my first time using multiple viewports in a game. There is an overhead view showing the entire line, and a smaller window showing a closeup of the densha (電車).

I have made a few updates to the game.  The station name is now called out by voice at each station stop.  Station names now displayed in kanji.  I reworked the internals of how stations are stored.



Ichiban Sokoban

Ichiban Sokoban is a sokoban game that I developed in Unity.  Use the robot to push the crates into the goal areas.  Try to finish the levels in the lowest possible number of moves.  If you get stuck, you can reset the level and try again.

Ichiban Sokoban

Developer Log

I developed Ichiban Sokoban for the Mini LD #67, which had the Classic Mashmix theme.  One of the suggested games to remix was Sokoban.  I had developed a sokoban game years ago in Java for a college course.

I started developing the game by creating a simple Board class in C#, which basically just held the textual representation of the game (I changed the chars to ints for simplicity).  When the player presses an arrow key, it updates the Board, not the game world.

I created another class that actually handles instantiating all of the object in the game world.  When the Board object is updated, all of the GameObjects in the scene update their positions according to the board.  None of the GameObjects in the world have colliders.

The game can parse levels in the standard sokoban text format.  I’m hoping to write a file importer so that players can load their own levels.

I’ve been developing Ichiban Sokoban on the nights and weekends for about two weeks now.  I’m really happy with what I have developed.  The game seems to be received well on GameJolt, as it has quite a few downloads for a desktop game and some positive votes.

I got the file importer working, which reads out of the default application directory using the Application.dataPath variable, with “/maps” appended.  I had to write some extra code to verify the the file extension ends in “.txt”, otherwise it will try to read the “.meta” files that Unity adds by default.

For a Windows build, the “maps” folder must be placed  in the IchibanSokoban_Data folder.  For a Mac build, the “maps” folder must be placed in the “” folder.  On MacOS, you have to right click the folder and select to show contents.  Otherwise, double clicking the folder will start the game.  It is a hassle since on both platforms, the “maps” folder must be copied every time the package is built, since it deletes any folders that already exist there.  I should create a script that automatically copies the maps files after a build.

I am also in the process of adding a timer and best move and score values.



Steam Greenlight



Agents vs Aliens

Agents vs Aliens is a MOBA (multiplayer online battle arena) style arena game, where you control either the agents or aliens to conquer the battlefield.



Game Design


Champion – A player controlled character.  The champion is moved around the map by clicking on the terrain.  The champion is spawned at the home base.

  • Health – When the champion’s health reaches zero, the champion dies and returns to the home base.
  • Max Health – The maximum amount of health the champion can have
  • Attack – How much damage the champion does to enemy units.
  • Ability Power – Strength of special abilities
  • Team – The team the champion is associated
  • PlayerControlled – Is this champion player controlled or AI controlled?
  • Abilities – Special actions that are activated by the player, which are mapped to the ‘D’ and ‘F’ keys.
    • Heal – Restores some health
    • Recall – Returns the champion to the home base

LevelManager – Handles the setup for the battle and transition to the end state

  • Spawns a core for each team
  • Spawns champions at the beginning of the battle

Tower – Attacks enemy forces

Minion – AI controlled teammates that move along one of the three paths.  Minions will attack towers and cores when they are near.