Player Data and Dependent Systems

Category: Groundwork Architecture and Runtime Dependencies
Context: This page documents the groundwork layer that multiple Data Division systems depended on. The useful portfolio point here is not one isolated mechanic. It is the architectural baseline that made the run loop, drone logic, items, and venue systems talk to each other.

Why This Layer Mattered

There was an array of systems that depended on other systems inside the Data Division prototype to be functional.

The internal shorthand in the documentation was:

Bot and Drone mean the same thing. I used bot to keep it agnostic in case the project pivoted into something broader later.

The main dependent stack was:

CameraStateManager and TimeManager also existed in the broader groundwork, but they are not the useful focus for this portfolio pass. The stronger point is the way player state, bot state, level state, and item state were all expected to interoperate.

PlayerSaveData

The player side used a PlayerSaveData / PlayerData asset to keep the active profile state.

Player save data / default profile

The important fields visible in the asset are the right kind of fields for a persistent-run architecture:

That mattered because the player was not only meant to have money and inventory. The player was also meant to have:

Why The Player Layer Was Useful

This was the baseline for systems that needed to answer questions like:

That is why this file belonged in groundwork rather than in a single isolated mechanic page.

Dependency Graph, In Practice

At a high level, the runtime stack looked like this:

graph TD
    A[PlayerSaveData] --> B[Player Manager]
    A --> C[Bot Manager]
    A --> D[Item System]
    B --> E[Map / Venue Selection]
    C --> F[Drone / Bot Runtime]
    D --> G[Trader / Inventory / Flashdrive Flow]
    E --> H[LevelManager and LevelData]

This is the cleaner way to understand the project:

Relationship To The Other Data Division Pages

This groundwork page is the architecture bridge between:

That is the practical reason to keep it as its own page. The project stopped being legible when everything was flattened into one large technical dump. This page restores the baseline architectural picture.