Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Citizen Pain | First Person Action Prototype in Unreal Engine 5

A topic by Alessandro "Ordnas" Capriolo created Mar 26, 2023 Views: 4,469 Replies: 136
Viewing posts 116 to 135 of 136 · Next page · Previous page · First page · Last page

Added Possession UI indicator in the lower left corner. Progress bar indicates how much time is left before Possession ends. The icons, like the rest of the HUD, are still work in progress.

Tweaked camera location for the enemy’s possession using a over-the-shoulder style. I think it’s the right camera if I want to use strafe movement, and visually the one closer to a first person camera, so that the transition between the main charater and the enemy is not too alienating.

Enabled possession for the Soldier Swordsman as well. Light attack triggers sword strike, while Heavy attack throws a bomb. Also disabled HUD items that are not needed/not used during possession (potions, stamina bar etc.).


I am continuing the implementation of possession. I just finished the Soldier Spearman enemy, where with the Light Attack command you execute the stab and with the Heavy Attack command you execute a sweep.

Possession of the enemy Knight. In the screenshot while I was attacking a Soldier I am about to be hit from behind by a Skeleton enemy.

I put in camera effects when you have possessed the enemy: zoom in to the enemy, color desaturation, and a green tint, to make it clear that you are in the Possession state.

For now I’m done with Possession, tomorrow I’ll start implementing a new mechanic taken from horror games.

The creature that will be featured in the horror section of the game.
To unlock the shortcut, the player will have to get past a small horror section where without weapons will need to escape from a creature. The horror section will be very much inspired by the scarier parts of games like Resident Evil and Dead Space.

Layout of the small horror section, a simple go from point A to point B, where you have to pick up an object at point B and bring it back to point A. The creature will at some point appear in the middle of the level and follow the player. The goal is to activate the elevator to escape, without getting caught by the creature. Passing the level will unlock the shortcut.

I tweaked the lighting to make the atomosphere more horror. The main mechanic works (creature chasing you and the player has to reach the elevator without getting caught). I’m trying to wrap up the prototype horror section as quickly as possible, but the temptation to add more stuff is always around the corner.

Operating the lever opens the elevator door. The door opens very slowly as the creature will come closer and closer to the player. I am implementing this mechanic to increase the tension before the end of the horror section of the game.

I am implementing the Level Up UI screen (in the screenshot still work in progress).

Level Up is available as an option while resting at the hub area. When leveling up, one spends accumulated souls to invest points into one of 5 stats. They can be increased up to a level of 3.

I am continuing the implementation of the Upgrade Stats UI screen. I added buttons to increase parameters, various info about owned souls and costs, and animations to open and close the UI screen.

Linked the Player Stats UI screen to the Player Stats component, so that increased stats are saved in the Player. Also reiterated on the UI screen graphics (icons, text etc.). Next I need to implement the Player parameter level logic (so that if Vitality is at level 3 the player has more health).

I am implementing the Skill Tree UI screen, that features both passive and active abilities. Players can unlock abilities, but they must have enough Special Items to apply the ability. Each node enhances additional stats and grants various effects, such as increasing the maximum number of Potion uses, expanding the Possession ability and many more.

In the Skill Tree UI screen, I added a window in the lower left corner with skill information when selecting a Skill Tree node. Each node has an Ability ID, so you can easily find all the info about the ability (e.g. text description and texture image).

I have implemented side quests, these are given by NPCs. Sometimes the side quest will be collecting items, other times it will be killing a particular enemy. The NPCs have a friendship system, which increases with the completion of the side quest. If the friendship is high enough, the NPC can help you during a boss fight.

I implemented a small Dialogue Manager, when you talk to a character it shows the text of the current dialogue. During dialogue the controls are locked (as opposed to Souls-like where you can move the character freely), in first person in my opinion it’s preferable but I might change it. Initially I didn’t plan to implement any dialogues, but with the introduction of side quests it was almost obligatory (otherwise the player doesn’t understand what needs to be done).

I am implementing the Player Inventory screen. It has 2 rows, one for usable items, and one for important items for quests. Under it I’ll have to put a window with the name and description of the highlighted item.

In the inventory I added a description text on the highlighted item. In addition, the effect of consumables is briefly described (under Use Effect).

For now I am done with the UI, this week I will implement the last new mechanics of the game, it will be complicated but let’s see what comes out.

I am implementing a new gameplay mechanic: the character’s health affects the weather conditions and will have an impact on enemies. The lower the player’s health, the worse the weather conditions will be. For example, the player will be able to use traps that would only work if it is raining, and lightning could fall on enemies. This introduces a risk-reward mechanic, so that the player could be pushed to stay low on health and take advantage of the weather.

Viewing posts 116 to 135 of 136 · Next page · Previous page · First page · Last page