v1.4.1 New unlockable hyena character, extendable character skills and bug fixes
In this release, I've added a new hyena character. This character can be unlocked by completing the game once. The hyena character has 5 skill slots for each skill, making it the strongest character in the game. The player can unlock this character after completing the game once.
Also, once the player completes the game with a character, the maximum skill slots of that character can be extended with 3 additional slots. Up to a maximum of 6 skill slots per skill. Each character can be upgraded twice before maxing out.
The game difficulty is also extended, giving each guard also a maximum of 6 skill slots for each of their skills. The assigned skills depend on both the player skills and player rank in the game.
The story cutscenes have been rewritten to include more details about the world. It is still a minimalist story, but hopefully this clears up the story for players who were confused by the original story or wanted to know more about the backstory of the character, the guild and the world they live in.
Finally, I fixed a visual bug where all guards would display a "blinded" icon whenever one guard was blinded. This bug only seemed to occur in the 3+ star difficulty missions.
In summary, the list of changes for v1.4.1 are:
A new unlockable hyena character with 5 skill slots for each skill after completing the game
Upgradable character, able to extend their maximum skill slots with 3 additional slots, up to 6 slots per skill after completing the game
Increased difficulty with higher guard skills for these extended character skills
Rewritten story cutscenes with more backstory details
Fixed a visual "blinded" icon glitch in the 3+ star difficulty missions
v1.4 Inventory Quick Slots and Flash-Bomb Items
In this release, I added flash-bomb items to the game. The player can use these flash-bomb items to temporarily blind any guard caught in the blast. This allows the player to more easily escape when caught by a guard, or to quickly run past several guards. The player can also knock-out blinded guards. For now, flash-bomb items are only usable during missions.
Now that the player can carry and use multiple items, I added Inventory Quick Slots to the game. The player can switch between items with the gamepad or directly select a quick slot using the corresponding keyboard number. The distraction tutorial has been updated to teach the player the quick slot controls.
In summary, the list of changes for v1.4 are:
Added quick slots, so that the player can switch between and use multiple items
Changed "distract" button to "switch item" button
Added "use item" as feature to the "action" button
Added the flash-bomb item to temporarily blind guards
Added a quick slot tutorial
Fixed a bug where the gamepad lost button focus after purchasing a final skill point
Fixed a visual glitch so that the distraction and flash-bomb radius is always entirely visible on screen
v1.3.2 More XP + Gold bonuses, "trap all guards" bonus objective and re-balances
For this version, I split up the "no guard knock-outs" and "remaining undetected" bonus into two separate, stackable percentage bonus objectives.
Not knocking out any guards rewards the player with a 150% XP bonus. Remaining undetected gives a 200% Gold reward. The player can remain undetected when knockout out guards. Both bonuses are mentioned at the top of the mission board. When completing a mission, the narrator will verify which bonuses apply to the player.
The game includes a new hidden bonus objective: "trap all guards". In case any player tries it, they will be awarded with bonus XP. It even possible to not knock out any guards, to remain undetected and trap all guards, but that requires some strategy and the right investments at the shop. The mission board also includes a new counter that keep tracks of how many times the player has achieved the "trap all guards" bonus objective.
I still encountered a situation where an unfortunate player hid near an unlit candle, and a guard headed straight to the candle (and to the player) to re-light the candle. I increased the size of the "ignore candle" hitbox, so that if a player is even a little bit close to an unlit candle, the guard will ignore that candle in favor of the player.
Finally, I updated the Godot game engine from v3.4.2 to v.3.5.1. This should improve the game performance.
In summary, the list of changes for v1.3.2 are:
150% XP reward for no knockouts and 200% Gold reward for remaining undetected at the end of a level, stackable rewards and acknowledge messages at the end of the level
A new hidden bonus objective when the player traps all the guards. This bonus objective is included among the counters in the mission selection screen.
Increased the candle hitbox that make sure the player doesn't stand near an unlit candle, otherwise guards might still try to light the candle and unintentionally walk to the player.
Improved tilemap texture, occluder and collision shape offsets
I removed the fog from the missions. They didn't add anything to the gameplay, and only made the game look more muddy. By removing them, both the graphics clarity and game performance have improved.
The Fortify mini-game used to hand out cards to both the player and the AI opponent randomly. Although it was purely random, it also caused situations where the player would continuously draw defensive cards, even if the player tried to use an offensive strategy. I want the player to be able to use any strategy they wish to beat the AI opponent, so now all card types are distributed to the player equally. This guarantees that the player will always have a variety of card types, including ones that fit their strategy.
The level editor used a very minimal data description for convenience of sharing text levels online. The game engine would make guesses to complete all missing information, including the order in which guards patrol their waypoints. However, on request the level editor now allows the player to decide the order in which guards patrol their waypoints. The level editor remains compatible with previous levels.
I also included a number of small bug fixes. The most major bug was one where the player could knock out a guard, let it be revived by another guard, knock them out again, and as a result the player can no longer carry this guard. This situation rarely happens, but if the guard is the target, then the player could not complete the level.
In summary, the list of changes for v1.3.1 are:
Removed the fog in missions for improved clarity and performance.
In the Fortify mini-game, instead of dealing random cards, intelligently hand out card types so that the player always has a variety of card types in their hand, instead of accidentally ending up with lots of cards of a single type that does not fit the player's strategy.
Fixed the bug in Fortify mini-game, where the opposition plays a 0 damage card, lowering the player wall to 0.
Fixed the bug where a revived re-knockout guard can no longer be carried by the player.
Added linear waypoints to community levels, so that the player can make guards follow exact paths in the level editor instead of having the game guess the order of the waypoints.
v1.3.1 Removed fog, re-balanced Fortify mini-game and improved level editor
I removed the fog from missions. I don't think it added anything to the ambience of the game, and it just reduced the clarity of the game.
The card distribution in the Fortify mini-game is now more intelligent. Before, the player would draw random cards. Which means a player could draw multiple defensive cards, even if they used an offensive strategy. To better aid the player in their strategy of choice, the game now distributes each card type evenly to the player. So the player will always frequently draw a card that suits their strategy.
The level editor now handles the guard patrols differently. Before, the level editor was optimized to easily draw and share text versions of a stealth level. The text levels were missing information on guard patrols, so the game would improvise those. Now the level editor will respect the guard patrol waypoints in the order that the player places them and remember this waypoint order. This gives the player more control over guard movement.
In summary, the list of changes for v1.3.1 are:
Removed the fog in missions to improve the graphical clarity of the game
In the Fortify mini-game, intelligently hand out card types so that the player always has a variety of card types in their hand, instead of accidentally ending up with a hand of cards of a single type
Fixed a bug in Fortify mini-game, where the opposition plays a 0 damage card, lowering the player wall to 0
Fixed a bug where a revived re-knocked out guard can no longer be carried by the player
Add numbered waypoints to community levels, so that the player can make guards follow exact paths in the level editor instead of forcing auto-sorted paths
This update includes 27 changes and additions to the game.
The player can access a new mission board from the guild. The mission board shows available contracts. Each contract shows a location, goal and difficulty rating. At higher ranks, the player gains access to more difficult contracts and a wider variety of mission goals.
The mission board also shows:
the number of completed missions
how many times the player got caught
number of 100% stealth completions
how many times the player knocked out all the guards
the player rank
double XP and gold reward for completing missions fully undetected
When the player uses distractions, the game will display a very clear distraction radius to the player. Any guards caught within that distraction radius will comment immediately, but wait a second before moving. This will give players the chance to move away before the guard starts inspecting the situation.
Guards in stealth puzzles now have a brief delay when they spot the player. This is useful in situations where they'd spot the player briefly while turning or when the player almost got caught. In these instances, the guard won't detect the player yet.
Playing missions aggressively by knocking out all the guards is faster and easier than attempting 100% stealth runs in missions. To compensate the player for this additional effort, when the player remains undetected during a mission, their XP and gold rewards are doubled as if they had completed 2 missions. The mission board explains this reward and a narrator will confirm the reward on the mission completion screen.
For fun and additional suspense, I have added increasing heartbeat controller vibrations when the guard slowly becomes more and more aware of the player. The heartbeats fade when the guard eye icon closes and the guard calms down. This feature is tested on an official Xbox controller.
All characters now have moving mouth animations when they are talking. The level editor has more tiles for the player to hide behind or hide in. The 2nd stealth puzzle level is replaced with a level that trains the player in hiding behind bookcases and around corners. And if the player hides on top of an extinguished candle, guards will not attempt to light that candle and detect that unfortunate player. Hopefully all these changes will make the game easier for new players.
Here is the full list of changes for version 1.3.0:
Added new mission contract board
4 new level color themes
Improved character contrast with walls and carpets
New distraction particles with a clear radius circle indicator
New coin particles when stealing and cloud particles for hiding and climbing through windows
Added a slight delay to guard visions to puzzle missions
Replaced off-camera mission speech bubbles with mini talking heads to reduce text clutter during missions
Heart-beat style controller vibrations when guards become aware of the player
Camera focuses on player character center instead of player character shadow circle
Doubled the guard fall animation speed
Doubled optional 100% stealth XP and gold reward if players choose that more difficult achievement
Do not allow player to go through windows in first and last escape missions
Fixed incorrect facing guards in puzzle levels after using distractions
Fixed the guard idle animation hiccup
Save all option configurations in save state
Implement moving mouths for all characters
Stack the stealth puzzle level and community level coins, so that the levels can have more coins
The "run" icon does not appear in puzzle levels, community levels and level editor preview levels, since the player runs by default
For community levels with coins, change goal message to "Collect coins and head to the exit"
Add a short delay before the guard turns around and moves when the player distracts the guard
Add awareness eye to puzzle guards, so they also don't instantly catch the player
Enable hiding areas in community levels
Add more tiles to level editor
Replace puzzle level 2 with a level that trains the player in hiding behind bookcases and in corners near entry ways
Silence knocked out guards
The "pick up guard" animated paw icon should disappear once the player picks up that guard
If a player hides near a candle, the guard should ignore that candle in favor of the player
This update includes 39 changes and additions to the game. Special thanks to streamers for playing my game and providing lots of positive feedback that helped shape this patch.
This patch allows the player to see the entire screen. The graphics have been improved for more color variety and higher contrast. To make the game more atmospheric, playful and easier to read. Characters flip, bounce and jump. The player character becomes fully dark in shadow to clearly show when they're hidden in shadows.
I noticed some new players really struggle with the game. Not being able to find the right places to hide and having timing trouble to sneak past guards. For this, I have added hints to the intro message and hints showing up in the lower right part of the screen to give new players ideas for stealth strategies.
I've removed all punishing bonus objectives. The player is allowed to do anything they want without failing bonus objectives. New bonus objectives include preventing guards from reviving other guards and rewarding players for either not knocking out any guard, or having knocked out all guards in a level. Along with other bonus objectives such as finding all gold remain in the level.
Here is the full list of changes for version 1.2.0:
Make the player clearly hidden in shadows and also clearly lit in lights
When failing a challenge, allow instant retry
New (hidden) bonus objective: knock out all guards
Add bonus objective "no guard revives", remove punishing bonus objectives "no light", "no distractions" and "no knockouts"
When a guard revives, let it say something like "What happened?" or "Ow, my head!"
Animate candles with a slight bob and modulation from fully transparent to slightly flame yellow, this might make lit areas also more obvious in the game instead of the current static lighting
Change guard awareness progress bar to an eye opening icon
Change all remaining progress bars in the game to animated progress icons
There should be multiple entries into buildings in missions, not having both door and window in the same room of the building
Add a "Training Grounds" title screen to the tutorials level to inform the player about what they can expect, similar to the guild title screen
Elongate challenge level 3 so that both guards can be distracted without distracting the other guard in their starting position
When buying guard positions in shop, when knocking out guards and moving them, they do not move on the map.
Don't spawn traps underneath beds
On New Game with a previous save game, show popup asking player to confirm a New Game instead of directly starting a new game
Still show rewards and penalties in rank 5 city mission
Choose between a random set of color themes such as night / morning / none in city mission. Use either a fixed color theme or no color theme in the guild level.
In missions, make guard always face the correct direction
Fix a sleeping guard bug that remains asleep if the player knocks out the sleeping guard, and picking them up while they're being revived
Reduce guild exit area sizes, so that it is easier for the player to go around them when they want to
Remove duplicate XP reward messages
Remove player glitch when player walks into trap with a guard on top
Player should not be able to pick up a guard that is being revived by another guard
Fortify mini-game, explain the card differences a bit more with text "this permanently generates more resources", "temporary add resources"
Disable the distract button in the guild, otherwise the player might use up their precious distractions
Show mission intro screen for longer than 10 seconds, goes away too quickly
Player sight skill controls camera zoom instead of making most of the screen dark, improving visuals
Fix bug where once a guard is revived, knocking out helping guard also knocks out revived guard
Flash distraction cross in UI when player distractions with zero distractions remaining
Read and check all guild member dialogue, update outdated gameplay advice
Add credits page for fog shader and other credits
Show red cross over UI distractions counter when zero to remind the player why they can't use distractions
Make guard face the right direction again after being distracted
Clearly mark hiding places, so they are not a guessing game and rooms don't turn into "new player traps"
Change rank 1 mission narrator message from the useless "safe spots" message to a more useful "Hide around corners near doorways". Maybe give more strategy advice to the player during these critical initial missions to guide the player with more play style options.
In challenge level 3, move the "hidden coin" south entry forward under the 1st guard sight, otherwise it is too easy for the player to grab without any trouble
Rename "Challenges" to "Stealth Puzzles", because the word "Challenge" repels some players and makes them not even wanting to try them.
Reduce amount of guards in intro level and 1st rank missions to allow players to get used to the game
Added knockout animation to guard tutorial and any guard knockout actions in missions
Add useful information in the first intro mission note:
Hide around corners next to doorways
Sneak past guards when they are looking the other way
Use unlit candles to distract guards
Knock out guards and drag them away if you have to
This update includes 47 changes and additions to the game. Special thanks to Charem and Calame for providing most of the feedback that made this patch possible.
With this update, the game rewards the player for their stealth actions, (creatively) outsmarting guards and completing objectives. Even when caught, the player keeps their earned stealth rewards. They might have to bribe a guard when caught. Some objectives require the player to not get caught.
The guards won't be instantly alerted at the sight of the player. The player is notified with a visual line-of-sight from the guard to the player. Depending on the player rank and stealth skill, the player will have time to react before the guard is fully alerted. Even when the guard is alerted, the player will have a second to run away before the guard start chasing and catching.
Knocking out guards, climbing through windows, hiding and extinguishing lights are instant actions. The player is rewarded for all stealth actions. More creative strategies for dealing with guards have higher rewards. There are several hidden strategies in the game, and it is up to the player to discover them.
Previously, the characters had rather large heads, making them seem overly cartoon-y. I got used to this style, but thanks to player feedback I noticed it too. I changed all character models and animations to make them look more anthropomorphic. All thumbnails, screenshots and trailer have been updated.
Here is the full list of changes for version 1.1.0:
When guard is alerted, there is a 1-second delay before its catch area catches the player, so that the player has a chance to get away
When a guard is alerted, auto-switch player to running to help the player get away quickly
Make sure that the guard catch area is in front of the guard and not also behind the guard
Reduce the guard hit boxes for detecting and catching the player, but do not reduce the visible light cone of the guards so it is exaggerated in favor of the player
Hide chests and the gold percentage in the escape intro level
Allow players to knock-out guards in the escape intro level
Clearly mark the exit with a label and arrow in all levels when the exit is active
Allow players to switch between sneaking and running while paralyzed after failing and being reset in the sneak tutorial
Allow players to freely choose mission types at all times. Do not force a "required first mission type" on each new player rank
Clearly state the mission objectives and optional hint at the start of a mission level
Count player stealth actions (extinguish lights, knockouts, getaways, open locks, steal from chests) as XP towards the next player rank. Show these XP rewards as label above the player after they have performed such an action
Whether mission completed or failed, show a rewarding player performance evaluation, increasing the player rank with stealth XP, and successful objective XP. Also clearly showing failed objectives. Show gold penalty when caught.
Enable player actions such as hiding, climb through window and knock-outs through contextual button presses instead of proximity timers. Lock-picking and sabotage keep their proximity timers.
Move "guard knock-out and move body" in-game hints to the first mission level.
Remove the guild member message about guards not sleeping after knockouts, because they will fall asleep again.
Replace "area entered" triggers with regular interval "is player in area" triggers, because "area entered" triggers sometimes fail the player, resulting in an unfair situation when area actions are critical.
Reduce raindrops and overlapping lights to improve game performance
Clearly add minimap icons in the objective descriptions along with a textual hint (see mini-map)
Target guard icon should stay on the minimap after being knocked out
Play a short "press A to confirm" animation message on UI whenever a contextual player action icon shows up
Remove ambient outdoor sound effects like bells, because these are mistaken by players for important events
Make dialogue boxes more transparent when the player moves underneath them
Decrease player collision shape, so the player doesn't get stuck between boxes in intro level
Slow down guards in challenges, some are moving too fast
Disable player actions (hiding / go through window / knockout) after getting caught
Cancel guard actions (light, revive) after getting knocked out
Allow player to skip mission / challenge reward screens with a simple button press
Do not shrink guards when they fall asleep
Reduce character head sizes. Increase player and guard size to compensate for smaller heads.
Add a "Thieves Guild" title screen to the guild hub
Add clear UI text labels, such as "distractions" and "gold"
When pressing left and right arrows at the same time, the character should not be spinning
Keep mini-games open after winning them
When entering the mission menu from the guild hub, even when repeatedly pressing "confirm" on a button, the slide-in transition should not repeat itself for the same screen
Slowly turn guard lights red when player is in light or direct sight of a guard, warning the player in advance before becoming alert
Disable (hidden) bonus objectives when in guild hub
Allow player to throw an unconscious guard into a trap. The trap does not have to be sabotaged
Do not auto-revive knocked out guards
Use a different button for carrying unconscious guards than the run button
Reduce the size of challenge level 10
Reduce footstep particles
Highlight exit when picking up target guard during a kidnap mission
Add "Return to exit" with exit minimap icon to the list of main objectives
Add animated paw icon for picking up a guard
Player should start in sneak mode by default in missions instead of run mode
When a guard sees the player, draw a visible line from the guard's eyes to the player's eyes
Guard skills also partially increase with player rank, not solely based on player skill level
v1.0.5 - Added dynamic field of view shader and min & max skill values
I've made the following changes for v1.0.5:
The player field of view is dynamically rendered through shader code. This avoids PNG transparency problems from the previous static field of view solution.
Skill calculations use a minimum and maximum value. This avoids possible missing or wrong values that result in wrong skill calculation results.
v1.0.4 - Fixed line of sight glitch and player movement glitch
I've made the following changes for v1.0.4:
The line of sight is changed so that players can always see the inside of buildings. I think this makes the game more tactical and avoids possible line of sight problems.
Smooth initial player movement by reducing excessive movement calls.
The transition animations now always hide at the end of the animation, so they can never accidentally hang around.
The guard of the distraction tutorial now properly resets when the player fails the tutorial.