top of page

First Day

First Day is a visual novel for Windows, Mac, and Linux developed solo in the Ren'Py game engine with Python.

​

Experience a day in the life of Lao Xieren, a psychic therapist whose first day at work is today--and you get to choose how he copes with it.

Octicons-mark-github.svg.png

Project Overview

Length

~3 Days

04/03 - 04/06/2025​
 

Tools

Ren'Py

Visual Studio Code (Python)

Clip Studio Paint

Role(s)

Gameplay Programmer 

Narrative Designer

2D Character & UI Artist

Contributions

  • Composed a compelling interactive visual novel in Ren’Py and Python with distinct endings dependent on a point-tracking system, emphasizing the player’s agency in determining story outcomes.

annoyance variable.jpg
annoyance system.jpg

The "annoyance" variable is used to track Gosfrid's emotional state as the player (Lao) interacts with him, later evaluated to determine what ending the player receives.

annoyance endings.jpg

There are 3 distinct endings the player can unlock based on how much they upset Gosfrid.

  • Utilized Clip Studio Paint to design expressive 2D sprite sheets for the 2 main characters, ensuring each was given a distinct visual identity in consideration of player appeal and memorability.

lao_sprites_background.jpg

Lao's sprite sheet.

gosfrid_sprites_background.jpg

Gosfrid's sprite sheet.

  • Customized primary UI elements including character dialogue and name boxes using diverse styles to reflect the colorful personalities of each character.

characters script.jpg

Code in characters.rpy that defines the character Gosfrid and his unique text color, font, and text box variables.

lao dialogue boxes.jpg

Lao's custom text boxes in-game.

gosfrid dialogue boxes.jpg

Gosfrid's custom text boxes in-game.

  • Implemented music and sound effects to craft an immersive game experience.

audio and music.jpg

The code for the start of the game which triggers short sound effects and a looping music track.

  • Modified GUI and game screen scripts to include UI customizations and audio asset credits.

lao font.jpg

In gui.rpy, Lao's Lexend font is set as the default.

lao text boxes.jpg

In screens.rpy, Lao's text boxes are set as the default.

audio credits.jpg

The "About" game menu in screens.rpy was modified to include credits to the audio assets used.

  • Utilized Google Docs to draft and organize several documents spanning 19 pages with detailed worldbuilding and cast information to cultivate a consistent, imaginative narrative that can be used for future projects within the same universe.

design doc snippet.jpg

A snippet of the "Characters" section from the main worldbuilding info document.

bottom of page