User — Your Character Sheet¶
One-line pitch: User is the struct that holds your Soul, your current Bao, your Username, and your Entropy — the fields that together answer "who is this player?"
What this is¶
User is a four-field struct used anywhere the game needs to read "all the identity-relevant state for a specific player" in one call. Fields:
- Soul — your permanent 64-bit player ID.
- On — your current Bao (latest action-receipt).
- Username — display name.
- Entropy — accumulated randomness bound to your actions.
User is derived: it's assembled on demand from LAU, VOID, and SIU state. You can't write to User directly; you change it by acting (which updates Bao/Entropy) or by renaming (which sets Username).
If you've played a web3 game before¶
- Closest analogy: a character sheet in a tabletop RPG — name, ID, current stats, luck roll.
- Or: an aggregated user profile in a frontend (pulled from several tables).
- Or: an ENS profile record — name + derived identity + metadata.
| Dysnomia term | What it maps to |
|---|---|
| User | Your combined identity struct |
| Soul | 64-bit unique player ID |
| On (Bao) | Your latest crypto receipt |
| Username | Display name (for chat/UIs) |
| Entropy | Accumulated randomness for your rolls |
What you actually do with it¶
- Get Username via LAU's rename flow.
- Generate Bao by acting (chatting/battling/claiming).
- Accumulate Entropy automatically as you act.
- Read User to inspect your full profile — many contracts expose a
getUser()style function.
Rewards / costs¶
- Cost: none directly.
- Reward: indirect — Entropy is used in various reward rolls.
Requirements & gating¶
- You need a LAU for a User to exist — LAU creation is what populates the Soul field.
Where it connects¶
Built from LAU + VOID + SIU. Referenced by ACRONYM entries (as UserInfo). Read by chat/battle/reward logic everywhere.
Quick FAQ¶
Q: Can I change my Soul? A: No — it's permanent, derived from the Saat middle value at LAU creation.
Q: Can I change my Username? A: Yes — there's a rename path on LAU. (Costs gas; may have a fee.)
Q: What does Entropy do? A: It flavors reward calculations and random rolls. More entropy = more unpredictable rolls (within the allowed range).
Want the Solidity? The contract reference lives at
technical/docs/include/USER.md.