Search

Untrustedlife

Your window into the mind of a questionably sane queer non-binary indie horror game dev

Tag

retro

I invented timeline anomalies in my world simulator and now I feel like Sans Undertale

So I’ve been working on Pilgrimage, my probability-first creature survival RPG/world simulator, and I’ve added something incredibly ridiculous.

Here’s how it works.

When you encounter a creature, the game doesn’t necessarily simulate its entire life beforehand. Instead, it generates the creature at the moment you encounter it and retroactively constructs its history and collapses it to one creature.

But there’s a teeny, tiny, catch.

That creature is fated to exist at the exact moment you meet it.

This is a constraint in my probability-collapse system. If you encounter a 60-year-old creature, it must have survived everything that happened during those 60 years. That creature might have already existed and been actively simulated in the world, or it might be collapsing into existence for the first time at the exact moment you encounter it, with its entire past being generated retroactively.

So the game generates decades of training, dangerous plant encounters, near-death experiences, and skill progression.

And if a survival roll determines that the creature should have died?

That timeline is ABROGATED.

The death doesn’t become part of the Canon. The creature survives because its existence at the moment of observation is already established.

But heres the funny part.

THE CREATURE STILL KEEPS THE XP FROM THE FAILED ROLL.

Which means it can gain experience from encounters that would have killed it in an alternate possible history.

And that got me thinking…

Could I find evidence of those rejected timelines by examining creatures’ stats?

So naturally, I started digging through my game’s save files like Sans Undertale investigating timeline anomalies.

AND I FOUND A SUSPECT.

Natural Great Tit.

An interface displaying the skills and experiences of a character named Natural Great Tit in a game, including skills such as Fighting, Foraging, and Learning, with experience points listed for each skill.

An otherwise unremarkable bird with 36 Escape Artist XP, despite having no relevant recorded survival events in its Canon.

Under the mechanics I’m investigating, this suggests the creature experienced a fatal encounter whose outcome was rejected because it was fated to survive. Specifically, in normal gameplay, encounters that grant Escape Artist XP ALL would generate survival events in the CANON when the creature successfully survives. Since this creature has Escape Artist XP without any corresponding survival events at level 0, that means that it failed a fatal survival check, but kept the XP from that rejected outcome anyway.

THAT MEANS THIS BIRD DIED IN A TIMELINE THAT NEVER EXISTED.

AND IT KEPT THE EXPERIENCE.

And so its name is also a dirty lie, its the least natural thing in the simulation! We spotted a jumper!

The especially ridiculous thing is that the “fate” protection only applies to the creature’s reconstructed past.

Once it actually meets the player?

All bets are off.

So a creature can spend sixty years being protected from death by fate itself, accumulating experience from discarded possibilities, only to immediately get eaten by a player-controlled flatworm.

I started out making a world simulator.

Somehow I ended up doing forensic investigations into alternate timelines.

heh, Natural Great Tit.

you’re gonna have a bad time.

A character resembling a skeleton stands in the center of a battle screen, surrounded by various ghostly figures and attack animations, with a red heart symbol indicating the player's health.

Though this mechnaic is not live in the current released version, you can download my game here: https://untrustedlife.com/pilgrimage/

Finally working on fun stuff!

Since my last mini devlog ive mostly been building systems on top of the big encounter refactor i finished last week.
Biggest thing is that the ui popups I mentioned at the end of the last devlog are now complete. Encounters can now throw up these new resuable choice popups instead of each interaction needing its own weird logic. The first thing i did is convert enlightenment to the new system. After that i started working on using it for creature encounters where things can fight back and you can now choose to flee or dodge or fight back yourself. This makes encounters a little less confusing. If trying to eat something, for example, results in it instead trying to eat you, since its bigger and considers you as prey. Then it pops up a new choice, for you to flee or fight, when it attacks back instead of just trying to fight back automatically and losing or whatever. If you are confused, that of course also affects your popups. Plan is to add this to non-aquatic encounters next so that for example you have the option to ambush an osprey when it dives for you and so on. Which should be great fun.

I also did a pretty big overhaul of how creatures gain skill levels in the world sim. Previously creatures would slowly gain skill xp just by existing. Which meant you could get things like 5 year old peasent dwarves with bizarrely high fighting and foraging skills despite them never fighting anything or doing anything. This was because it was hard coded to gain those skills at higher rates. Now creatures will , on approximately a weekly basis, specifically attempt to train specific individual skills they already know. Training uses a new “Learning” skill and concentration and inquiry and the dc to beat to gain xp in that skill goes up as the level in the skill being trained goes higher. Sapient creatures get a small expldoing die XP reward when they successfully train their skill. While normal creatures get 1 xp. So far the result looks way more believable, young creatures mostly have low skills. Old creatures gradually become more competant as they level their Learning skill, and have more organic looking skill distributions. And very old creatures now not only have noticibally better skills, but also higher inquiry and concentation since they’ve spent so much time leanring things.

This has also produced an extremely important discovery wherein I found that an immortal ascended giant scorpion can eventually end up smarter then a teenage elf. Which is very funny.

Im also planning on making this new skill useful to the player. As part of my self imposed limitations when developing Pilgrimage is that for any skills or actions ai can use/do. The player must also be able to do it and use it.

Current idea is:

A train action where you can deliberately attempt to practice one of your skills.

And being able to learn skills from other supernatural/sapient creatures.

You will roll the exact same thing AI does. Except with a bonus due to the time scale of the game.

So, essentially at this point I’m finally getting past a lot of the infrastructure work and into the part where I can start adding more of the weird/fun interactions I actually wanted the refactor for in the first place.

Still not releasing 0.3.5 yet though :3

I want a significant amount of player facing content before I do that.

I finally finished the big encounter/action/reaction refactor I’ve been stuck in for a while.

All of the encounter reactions are now decoupled from King’s Sea III, which means they can also be run independently by the life/world simulation without needing any cruft. That was the main reason I started this whole thing in the first place.

I also cleaned up a bunch of duplicated/old reaction code along the way, especially creature encounters and held-plant interactions. There are some new interactions, and some old reactions were removed because they were confusing. One big one is that chasing away can no longer result in the thing you are chasing dying, only in beating it up a bit and letting it run away. Explicit attacking will be under a new reaction called “Attack” which only will attack, which is important for things like explicitly trying to kill titans etc.

Now I can work on fun shit again.

And by fun shit I mean UI popups.

Up ↑