# vickscarlet/liferestart

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/vickscarlet-liferestart).**

10,403 stars · 2,340 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/VickScarlet/lifeRestart
- Homepage: https://liferestart.syaro.io
- awesome-repositories: https://awesome-repositories.com/repository/vickscarlet-liferestart.md

## Description

lifeRestart is a life simulation game where players make sequential decisions that affect their character's future outcomes and final score. It utilizes a deterministic state machine and a stat-based character manager to track health, wealth, happiness, and relationships as they update dynamically based on in-game events.

The simulation employs a seeded random number generator to ensure that identical sequences of player decisions produce reproducible outcomes. It features a reincarnation loop that allows players to start over after death, carrying over accumulated knowledge or meta-progression to improve results in subsequent life cycles.

The project covers branching narrative gameplay and random event generation, using a weighted probability matrix to create divergent life paths. It manages character progression through a turn-based decision loop and a stateful timeline model, concluding each simulation with a score-aggregation engine that weights various character attributes.

## Tags

### Game Development

- [Life Simulation Games](https://awesome-repositories.com/f/game-development/life-simulation-games.md) — Provides an interactive simulation of a lifetime where decisions determine character statistics and final outcomes.
- [Character Stat Systems](https://awesome-repositories.com/f/game-development/character-stat-systems.md) — Tracks and balances character attributes like health, wealth, and happiness in response to life events.
- [Turn-Based Loops](https://awesome-repositories.com/f/game-development/engine-architecture/game-loops/turn-based-loops.md) — Uses a turn-based loop to synchronize simulation updates with discrete player decisions.
- [Attribute-Based Frameworks](https://awesome-repositories.com/f/game-development/game-engines-frameworks/game-engines/game-development-engines/gameplay-extensions/attribute-based-frameworks.md) — Manages character attributes like intelligence and happiness through a data-driven attribute system.
- [Random Number Generator Seeding](https://awesome-repositories.com/f/game-development/random-number-generation/random-number-generator-seeding.md) — Uses seed values to initialize random number generators, ensuring identical decision paths yield reproducible outcomes.
- [Chronological Life Tracking](https://awesome-repositories.com/f/game-development/real-time-physics-engines/simulation-state-management/chronological-life-tracking.md) — Maintains a persistent state machine that tracks chronological milestones and attributes across the character's entire life.
- [Gameplay Loop Simulators](https://awesome-repositories.com/f/game-development/gameplay-loop-simulators.md) — Simulates the core behavioral logic of repeating a life cycle through a structured gameplay loop.
- [Meta-Progression Systems](https://awesome-repositories.com/f/game-development/meta-progression-systems.md) — Tracks accumulated knowledge across multiple playthroughs to influence outcomes in subsequent life cycles.
- [Random Number Generation](https://awesome-repositories.com/f/game-development/random-number-generation.md) — Generates unpredictable life events using pseudo-random values to alter the character's trajectory.
- [Reincarnation Loops](https://awesome-repositories.com/f/game-development/reincarnation-loops.md) — Implements a loop allowing players to restart after death with accumulated knowledge for better outcomes.
- [Meta-Progression Systems](https://awesome-repositories.com/f/game-development/simulation-engines/simulation-loops/meta-progression-systems.md) — Provides a reincarnation loop that enables meta-progression by carrying over knowledge to subsequent lives.

### Artificial Intelligence & ML

- [Branching Narrative Design](https://awesome-repositories.com/f/artificial-intelligence-ml/narrative-state-management/branching-narrative-design.md) — Implements a design where player choices lead to divergent story paths and character development.
- [Branching Storylines](https://awesome-repositories.com/f/artificial-intelligence-ml/narrative-state-management/branching-storylines.md) — Provides narrative structures that evolve and branch based on player decisions and character state.
- [Weighted Score Aggregators](https://awesome-repositories.com/f/artificial-intelligence-ml/evaluation-metrics/scoring-pipelines/feature-cross-scoring/criteria-based-scoring-engines/weighted-score-aggregators.md) — Calculates final life outcomes by aggregating weighted contributions from multiple character attributes.

### Part of an Awesome List

- [Simulation Games](https://awesome-repositories.com/f/awesome-lists/more/simulation-games.md) — Provides a simulation game where players manage a complex system representing a human life.

### Software Engineering & Architecture

- [Simulation Engines](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures/simulation-engines.md) — Implements an event-driven architecture to simulate deterministic life-cycle processes and state changes.
- [Simulation Loops](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures/simulation-loops.md) — Processes user decisions as events that trigger state changes across multiple character domains in a sequential timeline.
- [Deterministic State Transitions](https://awesome-repositories.com/f/software-engineering-architecture/state-machine-logic/deterministic-state-transitions.md) — Utilizes a state machine that guarantees identical outcomes given the same sequence of player decisions.

### Scientific & Mathematical Computing

- [Weighted Probability Matrices](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/statistics-probability/probability-distributions/probability-outcome-calculation/weighted-probability-matrices.md) — Evaluates decision outcomes against a matrix of weighted probabilities to generate divergent life paths.

### Testing & Quality Assurance

- [Deterministic Simulation Workflows](https://awesome-repositories.com/f/testing-quality-assurance/deterministic-simulation-workflows.md) — Uses seeded random generation to exactly recreate sequences of events for deterministic simulation and debugging.
