Modal Path Ethics reveals one of its broken prototypes.
Entropy Debt Week has spent a great deal of time bullying fictional time machines.
This was necessary.

Most time travel fiction treats causality as an effects budget. The machine rewinds a day, replaces a world, produces another copy of someone, restores a dead body, or permits an agent to carry information out of an interval that everyone else is forced to lose. The story receives its desired result. The field absorbs whatever accounting remains.
TimeVault began with the opposite design question:
What would time travel really look like if the machine had to account for everything?
A real gameplay system built around one consistent history, one continuous operator worldline, and a box that lets the player physically walk back into an earlier part of the same mission.
That is TimeVault.

It is a first-person tactical shooter and immersive simulation built around a short, local Closed Timelike Corridor. You enter a mission, act, reach the vault, pass through its throat, and emerge near the beginning of the same operational window.

Your earlier actions are now happening beside you.

You can cooperate with them.

You can exploit them.

You can depend on them.

You can also break the causal chain that allowed your current self to exist.

The game notices this.
The easiest version of this game would be a rewind mechanic.
That is not what happens in TimeVault.

A rewind discards the interval. The world returns to an earlier state while some privileged register, usually the player, keeps the lesson.
TimeVault always keeps the interval, and enforces consistency.

When the operator enters the vault, the actions already performed do not vanish. They remain part of the mission history. The player emerges earlier in time and encounters those actions as a physically present Trace, replaying precisely what they did on the past loop(s).
Nothing has been reset. The operator's worldline has folded back over the same interval.
A Trace is not a ghost.

It is not a hologram, an AI teammate, a parallel-universe copy, a or approximate performance generated from what the game thinks you probably did.
It is you; the same operator at an earlier point on the same worldline.

The game records the player’s inputs and re-executes them deterministically. The world responds under the same rules. Prior actions become part of the active tactical field later loops operate in.
You have built a functional squad out of one person. Every member is real. Every member is you.
Every member has to reach the vault in the history that produced the next one.

The player is making promises to the future version who will have to work around what is being done now.
This changes how a shooter is planned.
A reckless attack may be tactically brilliant if it creates exactly the distraction the next pass needs. A perfect stealth run may be a wasted loop if it leaves no action for the later self to exploit. A shot at nothing may land perfectly once the target is drawn into position on the next loop. Each run is judged by and planned around the ghosts of the futures that will soon co-occupy it.
Also, you can shoot down the corridor at T0 and the bullets arrive retroactively. The world is already updated as if they had always hit their targets then. This is mostly only useful for shooting yourself in the back of the head and causing a snapback in the current demo.
The game does not need to declare every footstep sacred to work.
Most small actions can vary harmlessly without damaging the mission’s causal structure. Traces can be nudged by AI within boundaries back onto their causal paths. The chronology system only becomes strict when something later depends on what happened.
At that point, the event becomes a causal anchor.

The complete history has begun depending on it. That history can still be changed. If the first loop was caught by a guard, triggered an alarm, then ran back to the time machine, then next loop can kill the guard before they trigger the alarm, as long as their past loop can still make it to the machine and become them.
This permits a deterministic game without requiring the machinery to freeze every microscopic detail. The system protects the causal load-bearing structure allowing the present moment to exist.
Everything else has room to breathe.
The most immediate time-travel exploit is obvious.
Congratulations. You have just discovered infinite guns.

TimeVault does not prevent this kind of exploit with an arbitrary list of objects approved for temporal transit. The rules already prevent this from working.
During an unresolved temporal stack, one object lineage may indeed appear at several points along its history. Once you have looped, there are now two of you. The earlier rifle and the later rifle are physically present at the same time because the rifle’s worldline has folded through the corridor when it walked back with its operator.
These are not two independent rifles. They are the same object at different points in its history.
I currently describe these as transient manifestations. They are physically real matter inside the active temporal stack, but their final existence remains bound to one consistent causal lineage.
When the history finally settles, the rifle must possess one supported final state. In one location, with one ammunition count, one damage state, one continuous provenance chain.
This is considered settled matter.
The game therefore does not stop duplication by saying, “You may not carry that back.”
It says:
You may interact with every temporal manifestation that genuinely exists.
You may not settle one causal object into several unrelated permanent objects.
So, suppose the later loop operator has one magazine. He fires it an the enemy.
He then takes that same magazine from the earlier loop self, fires it again, and then expects the earlier operator to carry that same magazine into the vault to become their other full magazine from before.
The object history no longer adds up. That magazine was now empty when carried into the vault.
If the earlier self cannot enter the vault with the ammunition state required to produce the later self’s inventory, the dependent use becomes unsupported. The chronology system resolves the contradiction at the smallest relevant scale. The nearest invalid transfer, shot, operator state, or downstream event is annulled.
This means if the later loop operator shot an enemy with a bullet they later fired before they fired it at the enemy, that bullet is annuled. Now, the enemy was never killed, and the mission is quickly resimulated coarsely and retroactively until the current moment.
This means you may have been killed by a guard you shot then made the shooting of impossible, resulting in your death before this sequence of events caused your death, meaning you cannot be dead, so the snapback system now annuls all the way back to before you fired the bullet in the later loop that caused this entire retroactive paradox.
You are now in the later loop, at the exact tick and state before you fired the bullet the made the history unsupportable. From your perspective, this was all a second-long flicker, a QUENCH warning, and suddenly being a second earlier in time. The shot never happened.
Let’s track the magazine through another run:
Because Loop0 will soon enter the vault and become Loop1 with an empty magazine, because Loop1 fires that magazine.
What if he didn’t hand it back?
What if Loop0 also fired half of the magazine in its run after Loop1 takes it?
This is native anti-duplication. Not a rule placed on top of time travel. A consequence of taking the time travel seriously.
When causality breaks, TimeVault does not restart the mission. That would turn every contradiction back into a rewind mechanic.
Instead, the game identifies the unsupported worldline.
The whole battlefield does not disappear. The unsupported descendant is annulled. The game calls this process snapback, and the mechanism a universal quench; the meta-unstable state generated by this paradox collapses into the nearest stable basin.
The annulled operator’s actions also disappear if later events depended on them. A killed enemy may return. A door they had opened may be closed after a quench. An objective state may revert. In multiplayer, another player’s death may vanish from history, invalidating the reserve who deployed because of it.
In single player modes, this is actually very useful as a native reset button.
If on Loop 6, you realize that Loop 2 accidentally sealed off a route you now need too early, you can just vault back and hunt down Loop 2 before the mistake happens, shoot your past self in the head, and snapback to the moment you would have been shot by a future self on Loop 2. You, the player, now proceed as if the rest of the gameplay past this mistake never happened.
Causality can collapse down in chains. This also creates a new form of tactical targeting. The most important enemy in multiplayer is not always the enemy currently shooting at you. It may be the earlier Trace who allowed that enemy to even exist.
The first planned multiplayer mode has no ordinary respawns inside a round.
Each round is another temporal layer over the same mission interval.
Players begin near their team’s vault. During the round, a player can continue fighting, pursue objectives, or enter the vault.
Entering the vault removes that operator from the current round and places them in the next one.
They are not hiding in the box. They have exited this worldline and proceeded to T0 at the next temporal layer.
The vaults activate after a few minutes, and deactivate a few minutes before the round ends, trapping all remaining players who did not vault in the current layer.
When the next round begins, only players who successfully vaulted last round return as new live operators. Their previous-round actions now replay as Traces, just like in singelplayer.
The match becomes progressively denser, best compared on the surface to Quantum Break though the mechanics are very different in practice.
This is not a reward without cost. Every additional Trace adds both tactical power and causal exposure.
An opponent who kills the earliest supporting operator may annul the entire later stack of history built above it, and all progress made since.
Vaulting early is therefore not automatic victory. Leaving the current layer sacrifices present pressure in exchange for possible future existence. The round continues for everyone who remains. And anyone who follows you into the next loop can target your past actions.
The match is a firefight conducted across ancestry.
Objective states can also remain provisional. A bomb detonated in temporal Layer Two may appear secure, but if Layer Three invalidates the Trace who planted it, that exploded state may never settle into the final history, and they may lose the game. The scoreboard can be rewritten.
The second planned multiplayer mode permits respawns.
When a player dies, a reserve operator will now deploy through a sealed ingress point on the map to replace the lost combatant.
The reserve is another real character with its own loadout waiting on standby, not another instance of the dead operator or some kind of temporal echo-thing. Each player has a limited number of reserves standing in waiting at their ingress points. The reserve can fight, kill, move objects, capture objectives, and become part of later causal chains, just like the original operator. Their loadout may be different or more restricted.
But a reserve operator always exists on one condition:
The earlier operator died.
That death is the reserve operator’s ancestry. It is the condition of their deployment. This natively creates one of the weirder team mechanics in the project.
Suppose Player A's operator dies at 02:40.
At 03:10, A returns to play through reserve ingress. Reserve A then kills two opponents, captures an objective solo, and loops.
Player B also loops the next temporal layer, and now kills the enemy whose shot killed A’s original operator at 02:40 before this happens.
Player B’s rescue stands because B’s existence did not depend on A dying.
This is not a normal revive. The teammate does not restore your health bar. They restore the worldline in which the reserve was never deployed at all.
But Reserve A cannot perform the same rescue on Player A's first operator.
The rule is simple:
You may repair another player’s ancestry. You may not keep a current self or the fruits of that self whose existence depends on deleting the event that produced it.
This gives team play a value that the self-squad cannot replace.
All of those mechanics depend on the vault feeling like an actual place. The goal was to make the CTC visually understandable and experimentable immediately.

The machine cannot fade to black and load an earlier version of the level. The player must understand that this corridor connects two temporal positions inside one continuous field. The interior of the corridor is outside of the regular flow of time, connecting two moments directly through its space. The corridor grows slightly longer as each second passes. Transit through the corridor approaches the earlier time; therefore the world on the entrance side is rewinding as you move away from that moment and towards the earlier one. You watch yourself step back away from the corridor as soon as you take a step inside. The destination, T0, always remains static until the moment you exit into it.
The box must look impossible but real before the rules are even explained.

You open the door.
The metal structure is only a few meters deep from the outside. Most of it is the airlock on the other side.
Inside, a corridor extends much farther than this box's geometry.

At the far end, the mission space is visible near T0.

Operators are frozen in place there.
Doors occupy their earlier states.
Smoke has not yet entered the room.

The player can lean to one side and see around the corridor frame. The perspective moves correctly. The earlier world is not a flat video pasted over the doorway.
Then the player just walks into the past.
The first working approach just used a second copy of the level.

The duplicate world was stored beneath the main playspace. It mirrored the world above, but with the corridor in place, and could be rewound to T0 and used as the earlier mission state. Entering the vault transferred the player from the current world into that duplicate. Portals acted as windows and gates to the corridor-world.

This proved the most important part.

The basic game worked.

The player could perform a loop, return earlier, and encounter the prior run.

But the machine itself still felt like a concealed level transition.

The corridor was not a convincing connected space. The second world existed largely because the doorway needed something earlier to display.
Every level would require another large synchronized environment, even when the player could see only a few meters through the vault. This was not very portable, so I took the lessons and tried to build a cleaner pipeline.
The current solution is CTC3.
We do not talk about CTC2.

This one now runs three distinct 3D worldspaces:
Both the corridor and T0 are real, independently rendered and simulated 3D spaces, apart from the main mission world. The vault portals connect them.

The first portal joins the current mission worldspace to the corridor worldspace, where movement down the corridor changes the current tick.
The second joins the corridor worldspace back to the original worldspace. The portal shows the frozen T0 snapshot world, which is the exact state of the original world they are about to walk into.

The transition is seamless (minus some portal math polish). The player does not walk through one unusually long room stored elsewhere inside the main level. The player crosses from one complete worldspace into another where each step inside the corridor reverses time by a few ticks, then crosses again into the earlier worldspace where the next temporal layer occurs.

The Closed Timelike Corridor in TimeVault is not a permanent hallway connecting two dates.

It is a one-way path through spacetime. It also has very little gravity.

The vault opens at the later end of the mission. The operator enters from that later-time mouth and crosses into the corridor worldspace. From inside the corridor, the far boundary shows T0 through its viewport portal.
That far boundary is an exit. It is not a second vault entrance.

When the operator crosses from the corridor into the T0 worldspace, the operator has left the closed timelike path and returned to ordinary forward-moving time.
So the corridor vanishes behind them.

There was and is no corridor leading back to the future-past time they left present in T0. The corridor only goes one way; to the past. It does not exist on the other side of the archway.
The player cannot turn around, walk back into the tunnel, and return to the later mission state. You cannot hold the doorway open for two-way traffic. You cannot pass messages to the future or shoot at it at all. Sorry.
The corridor remains accessible only from its later-time entrance. It always goes from the present moment back to T0 (+ the airlock offset, more on that soon).

The operator’s path is:
Crossing the far boundary is a commitment. Once the player steps out, the new pass has begun. The only route back to the later end is to live the interval.
Exiting a physical corridor at T0 produced an immediate collision issue: when the next loop tries to exit at T0, the last loop is exiting at T0; occupying the exit space outside the corridor. TimeVault solves this with an airlock, a treadmill, and a rolling offset.

The corridor exists in the center of the archway. The archway is really the entire time machine, and was originally the entire machine.
Whenever the player exits the corridor, it is into the other side of the archway, which is now connected directly to an airlock.
The treadmill on the airlock floor pushes them out quickly. The box notes how long they occupied it, then bumps T0 forward that many ticks, plus a small buffer window.

This means every use of a vault bleeds a little time. Some small amount of causal reach is sheared off with every loop. Multiple vaults are required for multiple returns to actual mission T0.

Because the corridor directly connects points in time, you can exit at a different point in space than the player enters if the archway was moving while active.

This allows for retroactive infiltration and space travel, macro-scale geoengineering, and most importantly for gameplay: aerial redeployment.

The box is airdropped, activating the CTC as it falls. The player, who began the mission on the ground, enters and walks back to T0 (which was in the sky), exiting into freefall.

They can now deploy the shoddily-modeled backpack hang-glider with bipod support.

So anyway I downloaded some public domain airplane models.
This repo is a disaster zone. The ballistics overhaul just broke a lot. Shots at T0 down the corridor are duplicating. Traces over a dozen are suddenly freezing at the vault entrance, when I used to be able to get a sick train of 100+ going. It's not in any shape to be released to the public.

The transition from CTC1 to CTC3 was deeply chaotic and ill-documented. I will soon clean this all up and build a public demo/killhouse tutorial scene, I promise.
I might have done all that in time for Entropy Debt Week, but my sister just had to get married.

I probably still wouldn't have finished it.
Whenever the demo is ready, it will be available on this website.