Subway Simulator

Subway Simulator is a simple simulation of the various Tokyo train lines.  This plays the musical jingles at many of the stations.

The map in the lower right corner can be enlarged by clicking on it.  The map text switches between English and Japanese.

The viewport in the upper right shows the currently selected train.

Statistics are shown in the lower bottom for train speed, time, time since last station, distance to next station, latitude and longitude location, and total distance traveled.

The inside train LCD is displayed in the lower right.  It displays the next stations, approximate arrival time, and the destination station.  It switches between English, Japanese kanji, and Japanese kana.

The map in the upper left shows all of the wards, station, and train locations in the area.  The currently selected train flashes yellow on the map.

The timetable for the current hour is displayed in the top center.  Departure times are displayed for both in-order and reverse-order trains.

Controls for changing the currently selected line and train are displayed in the upper middle portion of the screen.  Slideshow mode is on by default, which selects a new line every 10 seconds.  If a line has no trains, it is skipped after two seconds.  Slideshow mode pauses if the currently selected train is arriving at a station.  Slideshow mode can be turned off by unchecking the box.

 

 

 

Released

Express Lane

Express Lane is a supermarket checkout simulator.  This project started as a spinoff to the Bag Boy game.  The player can control many different aspects of the checkout simulation.

Each customer has a number of items in their cart.  Customers will pick the optimal lane for checkout depending on the number of items in their cart.  Each customer has a happiness value that starts at 100 and gradually reduces to zero.  When the happiness value reaches zero the customer will leave the store without paying.  The rate of customers entering the checkout area can be increased or decreased by the player.

Lanes can be added and removed.  When a new lane is added, it is initially set to closed, and the lane light will be red.  When the lane is opened, the light will change to green and customers will be able to enter the lane.

https://www.instagram.com/p/BH_gHuujqSP/?taken-by=gatechgrad

An express flag can be set for a lane, so the number of items in a customer’s cart must be equal or less than the lane express limit.  The express limit can be increased or decreased.

Each lane has a cashier, who has a speed rating.  A higher rating means that the cashier will ring up items more quickly, which reduces the chances that the customer will leave unhappy.  As a customer rings up an item, the item will be placed in a bag based on the type of item.  Items are separated based on whether they are fragile, poisonous, meat, or vegetable.

There are currently two views in the game.  The first view is a textual listing of each of the lanes will all of the customers and bags lists.  The second view is a 3D view showing all of the lanes and customers.  In the 3D view, the player has to option to control by overhead view or first person view.

Videos

 

 

Released

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 “IchibanSokoban.app/Contents” folder.  On MacOS, you have to right click the folder and select to show contents.  Otherwise, double clicking the IchibanSokoban.app 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.

Videos

Links

Steam Greenlight

 

Released