top of page

Split Night

Split Night is an adventure game in point and click.


Pitch: When Syberia meets Alone in the Dark in a plot inspired by Split.

Synopsis:  You are Alice Chesley, a journalist for HeavyRoad. For several years, a killer has been rampaging through the streets of Copenhagen, nicknamed "The Ghoul" by the media. Alice is going to investigate this killer after some traumatic events. To do so, she will have to find clues to finally find evidence. Will she be able to find out who is behind "The Ghoul"?

Project Context

Split Night is a project done during a Workshop  at the Game Sup school. Completed at Mars 2022, in 13 worked days.



My tasks in this project

  1. Production management | Excel, Discord

  2. Player Character Movement | Blueprint

  3. Switch Between Camera | Blueprint

  4. Interaction System | Blueprint

  5. Craft System | Widget Blueprint, Blueprint

  6. All Menus (Main Menu, Pause Menu, Load/Save Menu, Notebook, Inventory, Splashcreens) | Widget Blueprint

  7. Save System | Widget Blueprint, Blueprint

  8. Localization System | Widget Blueprint, Blueprint

  9. Git Management | GitHub Desktop


 

Task #1: Production management


During this project, I'm in charge of the project management. We have to use Execl and work in sprint of 1 week.

 

Task #2: Player Character Movement


For this project, I rework the template Top Down of Unreal to create a Point & Click system. The Player Character become like an AI which responding to order. When the Player click the Player Character move to the destination only if it's accessible. When the Player Character reach the destination we check if the destination is also an Interactible, and if so, we do the interaction.

 


Task #3: Switch Between Camera


We had to set up fixed cameras and create trigger to switch between them. The triggers for switching cameras had to be debugged throughout the project to ensure that they were triggered at the right moment.

 

Task #4: Interaction System


To interact with an Interactible object, the Player have to right click on it. If the Player Character is within reach of the object, then the interaction is activated. Otherwise, the Player Character moves to the object and when its movement is complete, the interaction is activated.

 

Task #5: Craft System & Inventory



There are 2 types of craft possible for this project. As Drag&Drop is buggy in this widget, we've decided to do craft differently, with a basic Button. So we put the craft button in Inventory, which has 6 slots in the widget. The Inventory is a table of an UObject : BP_Item. BP_Item contains an Image & 2 versions of the Text (English and French) At the creation of the Inventory Widget, we create each InventorySlot Widget which checks whether it has any information and displays it if so. The craft button, depending on the craft associated with it, checks whether the items required are available. If this is the case, the crafting is made, i.e. all the items required for crafting are removed from the inventory and the item just crafted is added.

 

Task #6: All Menus


There are lot of Menu:

  • Main Menu

  • Pause Menu

  • Option Menu

  • Load Menu

  • Save Menu, Save slot, Save Pop-up

  • Notebook

  • Inventory

  • Splashscreens


All others Widget are done by my teams Members.


I integrate in each Widget all needed UI sprites.

 

Task #7: Save System



A savegame saves all the information needed to restore the state of the game, in this case what has been recovered as documents, items, the state of the interactibles, the position of the Player Character and the reference of the fixed camera and language.

We save the new savegame, then we save the new savegame in the list of all savegames, and we save this list. Here there are only 4 savegame slot. So when we need to display the savegames made or not, we only need to retrieve the list of savegame contained in a specific savegame.

 

Task #8: Localization System


The localisation system consists of switching between English and French depending on the language selected.

To do this, in each widget containing text, there is a Switcher Widget around the text with the text in both versions, and when the widget is construct we check the language selected and update all the Switchers in the widget so that they correspond to the language selected.

 

Task #8: Git Management


In this project, we used Git. I managed the Git with GitHub Desktop.

I created the branches and managed the merges to avoid merge conflicts.

bottom of page