top of page

Tinker & Tailor: Workshop Simulator

This project aimed to create a VR game which will be popular in 30 years future. I was the only programmer, so all mechanics were made by me. I used XR Interaction Toolkit for developing this game.

Hand tracking and Gaze Interactor

We used Meta 3 as a main platform, so I decided to use hand tracking and gaze interactor for our game. The main reason is that in future the quality of them will be improved.

Bracelet

Common UI is not a good idea for VR game, so I decided to make a bracelet on players hand, which can be opened by gaze. It contains some buttons like tasks list, shop, start day etc.

Cleaning

In this game I wanted to develop 3 core mechanics. On of them is cleaning mechanic. Player has to grab sponge and move it around the prosthetic. The dirt effect I made very simply: script creates a new object on top of the original one with the same mesh, but different material. When sponge touches the original object, the transparency of the dirt material goes down. When it reaches 0 script destroys dirt object.

Items system

I programmed very simple inventory and shop system. Player can equip two kinds of weapons. Shop contains a weapon and potions, which are used for healing.

Replacement

The second core mechanic is segments replacement. Player has to unscrew bolts to open the lid, then remove broken segment, order new one and then connect new one. After that, player has to screw bolt back. I made this mechanic using XR Socket Interactor and Hinge Joint. However, I had to write additional scripts for managing sockets and lids. 

Painting

The 3rd mechanic is painting. It contains 3 parts: hologram, which represents colors player has to match - I made it using second camera and render texture; capsule generator, which has a screen for choosing colors and button to generate capsule; paint gun, which can change colors of different parts of prosthetic.

Dialogue system

To show the central message of the game, we had to use dialogues with NPCs. Therefore, I developed the dialogue system. I used Scriptable objects for making dialogue lines with phrases, audio lines and animations. In addition, I made a system of reactions. Reaction contains dialogue line and trigger, which is also a scriptable object. Triggers works with the event system, which I learned from my programming focus track.

bottom of page