Sneaky Sneaky Detective Man
Unreal Engine Development in C++
Game's High Concept
Sneaky Sneaky Detective Man is a stealth game where the main objective is to sneak into different secured locations and collect information. You play as a detective who must use his stealth skills to collect information from different criminal hangouts to make a case and arrest those responsible. To aid you in your endeavors, you come equipped with multiple gadgets that can be used to help you collect the required information to arrest the criminals.
My Contributions
Throughout this project, I was responsible for developing the main looting mechanism with a negative feedback system, all in-game UI
and Basic movement.
​
Primary Mechanics developed
-
Basic movement and controls.
-
Crouching.
-
Importing and re-targeting animations.
-
-
Gaining components with a negative feedback loop.
-
In-game Inventory.
-
HUD.
-
Automated test harness.

Overview of Implemented Mechanics
Collecting Items
The collecting component system allows the player to collect the crafting components required to create the various gadgets. This section can be segmented into three different parts. The first is the searchable object itself, which was a basic object set up in C++, mainly consisting of a static mesh and a box collider. The second part is creating the interaction logic to trigger a search. The final part of the process is collecting and then updating the loot pool, reducing the chance of getting the same item again, overall creating a negative feedback loop for the collected item.
​
Inventory UI
The inventory UI consists of multiple different elements: the inventory panel, item slots, information-based hover menu and right-click assignment menu. The inventory itself was constructed with the use of a wrap box that would be populated with multiple different Item slots. Each item slot added links to an itemBase object, which is linked to an Unreal data table to provide the required information, such as the item menu icon and hover menu information. The inventory system also allows the user to assign gadgets to an individual hot bar slot with the use of the right-click assignment menu.
HUD
The HUD mainly consist of two different components, the hot bar and interaction prompt. The hot bar itself is mainly an extension of the inventory and used to show the user what gadgets they currently have selected in each slot, and shows the current selected slot. The assignment of gadgets to the individual slots works with the use of a listener pattern, in which both the HUD and the inventory system are assigned to a delegate attached to the right clock menu. When an item is selected from it, two variables are broadcast: a pointer to the itemData object associated with the item and the slot for it to be assigned to. This allows for the HUD to update the given slot with the icon stored by the itemData object.

The negative feedback looting system used to generate new items

System used to update the UI and the game object responsible for keeping track of the inventory elements when an item is collected

System used to update the UI and the game object responsible for keeping track of the inventory elements when an item is used