Engine Mode - Hawthorn-Games/ProjectScrapped GitHub Wiki

Goals

  • An "all in one" UI tool: main menu, pause menu, gameplay interactions
  • Create a system that is easily extendible to accomodate new mechanics
  • Reinforce the idea of the player "editing the game"

Needs

Initial Design

The player can enter "Engine Mode" by pressing the Engine Mode Key on the keyboard, specified in the Control Scheme page. In this mode the player will get access to a simplified version of a Game Engine User Interface, where they will able to perform various actions depending on context from accessing the main menu to logic editing.

Features

A Features (Required)

Object Classes

A UI element that displays all the Editable Objects that the player has access to and can edit the logic of. This element is always displayed on screen when the player opens Engine Mode. This element acts as a sort of "content browser" of all the "prefabs" in the Engine, but it mostly resembles a classic inventory system where the player can see all their useful objects and select them to edit their properties.

Dynamic Camera

When the player is in a puzzle and they press the Engine Mode Key, the camera blends to an higher, zoomed out position to let the player get a better view of the puzzle. The camera is also detached from the Inley and the player is able to pan across the level using the default Movement Keys.

Application Bar

When the player enters Engine Mode an application bar, similar to those that can be see in any digital software, slides down the screen and presents the player with a set of options. Immagine 2021-04-06 123533

This bar allows the player to access options that would be otherwise assigned to a pause menu: saving and loading the game, closing the application, accessing and editing the options and so on.

B Features (Desired)

  • When the player hovers on top of a Code Block, a message pops up with the description of what that Code Block does and what objects are needed for that Code Block to work, if there are any.
  • The player can access Editable Objects also by clicking on them in the world
  • The player can access a wiki that contains useful information about code blocks, gameplay elements, programming patterns and lore about the world. This wiki is presented as the documentation of the Game Engine that the developers used to make the game.

Constraints

  • The overlay must not obscure the in-game view, as the player will need to see the Golems and other elements in the puzzles to be able to complete them
  • When the player first opens this mode, they should be walked through an easy series of steps to go through to edit their first Golem.
  • Should allow for easier accessing of Editable Objects, not extra steps to take

Reference

Unity Engine Interface

Entire Engine UI

Engine Mode example

Save Game / Quit Game

SaveGame

Resume/Pause Buttons

PlayStop

Extention Ideas

  • Asset Placement: the player is able to drag and drop assets from the Asset Tab to the world.
  • Property Editing: the player is able to edit various properties of the object like texture, collision, mass or other settings.
⚠️ **GitHub.com Fallback** ⚠️