Devlog 26
# ------ Announcements
[h2]## Sprint[/h2]
4rd sprint, of the 3rd cycle. Chapter 03/Pass 02.
Less challenging than previous sprint, still quite difficult.
Play-tests are always welcome open. If you want to help me with your feedback, please contact me :)
**Explanation and showcase**
[previewyoutube][/previewyoutube]
# ------ Game
[h2]## General[/h2]
This build contains HUGE amounts of refactoring.
NEW
Improve:
* General cleanups, optimizations, small fixes, and documentation everywhere.
* * Added `AdaptiveAddToWorld`. Also "Skip generate overlaps" on stream. Reduces hitches on load.
* * Shadows on floors.
* Moved a ton of things from hard ref to soft references.
Known issues:
* Screen might flash when loading the next chapter. It's a UE thing.
[h2]## Settings[/h2]
NEW:
* Added option to set the default RHI. Experimental. Requires a restart. If it breaks, delete your config files (but not your savefiles).
Improve:
* Moved a ton of code to cpp.
[h2]## Art[/h2]
NEW:
* Added outro animation!
* Started using style assets for ui elements. Most noticeable on the settings.
* * Unified and improved the style of some elements.
Improve:
* Moved everything possible to "Packed Actors Level Instances". Improves performance a bit. (A ton of work involved).
* Improved "ppl" materials.
* Optimized some material's permutation count.
* Still working on the hall01.
[h2]## Chapters[/h2]
All:
* Implemented more card effects. (I think "what works" doesn't have anything to work with, but the logic is there).
* * Redesigned and reorganized their effects a bit.
* Improved the hints all around. Added more hints, and tweaked how and when they get enabled.
* Improved doors quite a bit. Optimized windows too.
CH00:
CH01:
CH02:
CH03:
CH04:
# ------- Subsystems and plugins
[h2]## All[/h2]
> Public repos for the plugins are updated on a later date, according to (my) availability.
[h2]## Flashbacks[/h2]
New:
* New clouds effect.
* FX on the effects.
[h2]## Dialogs[/h2]
https://codeberg.org/jerobarraco/Diags
LifeDev:
Plugin:
[h2]## Interactions (and animations)[/h2]
https://codeberg.org/jerobarraco/Interact
LifeDev:
* A lot of rework with `SetHiddenInGame` and `Fade`.
* * It works well during construction. It helps a lot with Puzzles too. And allowed to move `ActorsShow/Hide` to the Story Plugin.
Puzzle:
* Rework how hints work, using the new `SetUseHint` virtual.
* Improved properties initialization. Now more reliable.
Plugin:
* A ton of work relative to `SetHiddenInGame`.
* * Some rework to use `SetAutoActivate` on constructors.
* Removed the spot. Moved functionality to regular `Interacts`. This required extra work in the game itself.
* Rework item use.
* `UseHint` is now a function `SetUseHint`, and virtual.
* Improved collisions and auto-activate.
* Refactor `CInteractor` so that the collision profile is local to the component (as opposed to the same for all interactors).
* * Allows for having multiple `CInteractors` doing different work.
* Added `CAnimatorSFX`. Animates submixes effects.
* Added field for comments on interactions.
[h2]## Inventory / Flags / Teach[/h2]
https://codeberg.org/jerobarraco/Inventory
LifeDev:
* Animations on the inventory!
* * Took a ton of work, since i had to rework the whole implementation.
Teach (NUX):
* Rework the style a bit.
Plugin:
[h2]## JSignificance[/h2]
https://codeberg.org/jerobarraco/JSig
[h2]## JUtils[/h2]
https://codeberg.org/jerobarraco/JUtils
New:
* Added a couple of helpers to use style assets on ui elements.
* Added experimental ability to get/set the preferred RHI.
* Added ability to get hardware info.
* Added ability to get number of remaining precompiles. (For PSOs)
* Added `AddOutlinerSection`.
* * Added sections for `Story`, `Interact`, and maybe others.
* Added `IsInConstructor` and `NeedsInit`.
Improves:
* Added `ShouldCreate` to `LoadScr`.
* Reworked how some UI elements expose some initial properties.
[h2]## Sounds[/h2]
https://codeberg.org/jerobarraco/Sounds
LifeDev:
* Reworked the menu fx on music.
* Added phone ring, hanger squeaks.
Plugin:
[h2]## Story[/h2]
https://codeberg.org/jerobarraco/Story
LifeDev:
* Reworked the code for managing the end of the game.
* * Updated StepEnd to unload all data layers.
* Moved to the StoryManager, the code to manage chapters loading, starting, next, etc.
* Removed `RewardIntersTriggerClass`, `RewardIntesActiveClass`.
* Created a new class for the books. Starting porting some objects to it. WIP.
* Ported a ton of dialogs to "auto dialogs". So that i can remove some declarative dialogs (old system).
* * Was a considerable amount of work.
* * Removed `LockedDlg`, `TriggerDlg`, `DlgId` from step.
* Added "auto flags" for step's start/stop.
* Removed `InterFadeIn/Out` in favor for new `ActorsShow/Hide`.
Plugin:
* Added field for comments on steps.
* Removed unused `TeleportCharAfter`. Reworked `TeleportChar`.
* Removed unnecessary `FinishPostWait`.
* Added/improved blocking load of assets, during step change, when it's set to block on load.
* * Including pso generation.
* * Added garbage collection during step fade.
* Rework showing and hiding actors.
* * Moved `ActorsShow/Hide` to the base plugin. Now they work better.
* * New `SetHiddenInGame` refactor ensures that interacts fade in/out. And that puzzles also work well.
* * Removed hiding actors on `Begin Play`.
* `Story` now depends on `JUtils`. It was something i was delaying, but it actually cleans the code.
# ------ Links
Play on Steam https://store.steampowered.com/app/2450230/LifeDev/
Forums https://forums.unrealengine.com/t/solodev-lifedev-my-game-about-overcoming-cptsd/1172122
Twitter: https://twitter.com/jerobarraco
Mastodon: https://mastodon.gamedev.place/@jerobarraco
Support on patreon ("one time" also available) https://www.patreon.com/c/jerobarraco
Support on liberapay https://liberapay.com/nande
Support on Ko-fi https://ko-fi.com/jerobarraco