------ Announcements
Sprint
2nd sprint, of the 3rd cycle. Chapter 01/Pass 02.
This sprint was challenging too. My aim was to do more on narrative, and i did manage to do some.
I also made a ton of refactors, which were difficult, but also important.
Moving to Steam
Huge news.
Time and effort are extremely critical aspect for me (not by choice).
In order to optimize my time, and make the most of it: I’ve decided to move fully to steam.
For that i’ve just released my game on steam. So:
- You can now buy it on steam (please don’t buy it on itch.io unless this is the only place you can get it).
- I’m not going to update itch.io anymore (though i truly love it).
- Also, i’ve opened the community on steam, and closed the one on itch.io.
The game is not finished yet, it’s on early access.
I’ve made a mistake setting up the game, and now steam won’t allow me to set it as EA. I know that will be confusing, but i can’t change it now.
I will keep improving the game, and the price will keep increasing, just like on itch.io.
Play-tests are always welcome open. If you want to help me with your feedback, please contact me :)
Explanation and showcase
------ Game
General
This build contains massive amounts of refactorization:
- I’ve decided to change the mechanic for using items with interactions. This impacted the flow considerably.
- Refactored data-layers to have layers per room, and per chapter.
-
- Helps to manage assets much more flexibly. Improving load.
- Refactored to use
SoftObjectPointers
on several classes.
-
- I did not need it before. But now it helps me to set up some references by code, as well as improving memory and load a bit.
-
- It was a considerable amount of work.
- Dialogs support multiple data tables now.
- 731 commits vs 637 on previous sprint. Not the type of metric i care about, but still a ton of work.
NEW
- I’ve also added a new system for small prompts (hints) on how to use the game. “Teach” (See Inventory).
-
- It’s called “Teach” instead of “Hint”, since the hint system is another thing.
- I’ve also integrated Sentry. This is a service that reports crashes and bugs to me.
-
- Sentry and the new “Teach” was fairly quick, but took a considerable amount of work.
- Added support for SM5 shader model on linux. As well as SM6.
- The feedback form is show upon closing the game. Feedback is welcome

- Added
Thanks
file 
- New feature flags, mostly for debug.
Improve:
- Lots of optimizations and bugfixes. A more than usual.
-
- One of them is the
Garbage Collector
async performance.
-
-
- Implemented some new micro-optimization technique.
- Improved spawn/init cycle.
Known issues:
Settings
NEW:
- Added toggle for
Auto Exposure
. Off by default.
- Added toggle for
Status
screen message. Off by default.
-
- Useful for debug and speedruns.
- Added a feedback box right on the settings!
Improve:
- Reworked how the settings ui is activated.
- Show play time on save slot.
Art
NEW:
- Have been working on a room. Not yet in the usable.
- New assets: Phone, Clock, Scissors, Notebook, Screwer. Not yet in usable.
- Switch spark particles.
- Started working on a new entity, with nice shaders.
-
- I’ve put a lot of work in this. (Not yet visible, though :P)
Improve:
- Improved the shoes of one of the characters.
- Optimized reflection method.
- Removed camera aspect ratio change.
- Improved material memory usage a bit.
- Improved the necessary permutations a bit. (Space, load time, memory usage, build times).
- Improved PSO cache settings.
- Reworked all light values. So that it works better with baked lights, and Lumen.
- Improved the ghost post-process.
Chapters
All:
- Implemented the effect for the Card 0 (intention). When i say “hint”, i refer to this.
- Added new mechanic/effect for Card 1 (What works). Took quite some work. Though it’s not noticeable yet.
- I’ve done a ton of rework on the flow to:
-
- Accommodate for the new item usage flow.
-
- The cards are not used as items anymore. You can still use them by themselves.
- Implemented camera animation for some of the chapters. This is a work in progress.
- Fixed a lot of text that was not localized. So that from now on everything can be localized if it needs to.
- Added some decorative assets (pencil, screwer, pictures, books, etc.).
- Added interactions: Notebook, screwer. Not yet usable.
- Added phone puzzle and interactions.
- Improved a bunch of collisions, and audio sources.
- Text on walls. Improved the visuals too.
- Have added and improved a bunch of dialogs.
CH00:
CH01:
- Added a bunch of
Hints
(Card 0).
CH02:
CH03:
CH04:
------- Subsystems and plugins
All
Public repos for the plugins are updated on a later date, when i have the time to.
Flashbacks
Dialogs
LifeDev:
- Did a TON of refactor of dialog variables.
-
- And, I’ve moved many of the dialogs to the new “auto-dialog” system.
- Improved some item descriptions and other text like that.
Plugin:
- Added ability to have multiple data-tables at the same time.
-
- For both, groups and dialogs.
-
- This allows to have data-tables per chapter, and also more general ones.
- Improved flag for printing warnings on missing dialogs.
- Improved flow for adding dialogs and groups.
Interactions (and animations)
I’ve done a TON of work and refactor with interacts.
LifeDev:
- Added
UseActiveOnce
. Manages an item to be activated only once. Regardless of chapter. Using the savegame. Useful for items in multiple chapters.
- Refactor: Moved the functionality from the “Spot” to the LInteract. Fixed some bugs. Still work in progress.
- Refactor to consume items on unlock. For the new item usage flow. Work in progress.
- Fix hide interact prompt on reward.
- Improved puzzles so that:
-
-
- They can manage the puzzle pieces
SetActive
.
- Removed
RewardStep
, as it was redundant with the step.
Plugin:
- Added ability to set particles to use for each state.
- Added
CInteractor::OnTrigger
.
- Added
Interact::TriggerForced
, so force trigger even if locked.
- Improved sound playing. For looping sounds.
- Refactored the activation and auto-activation flow.
-
- This was a big piece of work. It improved much more how interacts are initialized and set-up.
-
- Added a flag
UseAutoActivate
that can be set on the editor.
- Fix interactor triggering
OnHover
on a destroyed actor. (Took some effort).
- Fixed/Improved hiding, deactivating, fade, etc. And their flow.
- Improved flow for unlocking. Now using condition.
- Hints
-
- Refactored the collision settings, to allow objects to be hint-able but not active.
-
-
- Work in progress that i might refactor in a different way, on the next sprint.
-
- Fix ensure to hide stencils on deactivate.
CAnimator:
- Added
UseDilation
option. To ignore/compensate time dilation.
- Added a
CAnimatorTime
to animate global time dilation.
Anim subsystem:
- Added
TimeFade
, global time dilation animation (here too).
Inventory / Flags
LifeDev:
- Fixed inventory refresh on item usage.
Plugin:
- Fixed
Mod
and Use
with Consumable
.
- Added
OnlyConsume
on Mod
.
Teach:
- Added a system, to prompt the user with hints. Called “Teach”.
-
- It’s the typical “you can use an item with the mouse”. (Also known as New User Experience (NUX)).
- Has plenty of work on it. Interacts with the
Flag
subsystem.
JSignificance
JUtils
New:
- Added
SoundSheet
to audio. (To be moved to the Sounds plugin)
- Added
FakeLight
material function. A material based quick and cheap dynamic light.
- Added
KawaseBlur
for post-process.
- Added
SphereNormal
and some materials to work with pseudo water.
- Added
FastMod
. A micro-optimized modulo function.
- Eval:
-
- Added a list expression. With “random pick” and indexing.
-
Improves:
- Improved
QuickMesh
collisions.
- Fixed
ReadTable
, LoadCSVTable
and LoadJsonTable
.
- Improved material functions for water, and
Choose
.
Sounds
LifeDev:
- Upgraded some meta-sounds’ versions.
- Added a bunch of sounds.
- Refactored sounds to use the interact plugin’s sfx-state functionality.
- Fixed location of some sounds.
- Adjusted audio volumes.
Plugin:
- Have a way to specify the sound of each state of the Interact.
Story
LifeDev:
- Fixed step
FBDlgAuto
with manual dialogs.
- Added/Improved finish a step with flags and or items. Made them a list.
- Fix possible crash due to flags.
Plugin:
- Implemented ability to tween camera positions in sync with flashback and dialogs.
- Improved camera tween on steps.
- Fixed loading on steps. Made step transition to wait for data-layers and other async load.
- Improved avoid unload and load the same datalayer.
- Improved advancing step on interact trigger, and flags.
------ Links
Play on Steam LifeDev on Steam
Forums [SoloDev] "LifeDev" My game about overcoming CPTSD
Twitter: https://twitter.com/jerobarraco
Mastodon: Jeronimo Barraco-Marmol (@jerobarraco@mastodon.gamedev.place) - Gamedev Mastodon
Support on patreon (“one time” also available) Jerónimo Barraco-Mármol | Creating a game to overcome CPTSD and self-improve | Patreon
Support on liberapay https://liberapay.com/nande
Support on Ko-fi https://ko-fi.com/jerobarraco