LAUFactory¶
Overview¶
LAUFactory is the factory contract for deploying new LAU user token instances. It manages the connection to VOID and handles ownership configuration during user token creation.
- Kind: Contract
- License: Sharia
- Solidity: ^0.8.21
- Source:
11c_laufactory.sol
Inheritance Chain (C3 Linearized)¶
No base contracts; this contract has no parents.
Immediate Parents¶
None (root of its hierarchy).
What This Means For Players¶
Plain English Summary: LAUFactory is the account creator - it makes new player accounts. When you first join Dysnomia, you call this factory to create your personal LAU token. It handles all the complex setup: creating your session, generating your Soul ID, setting up your keys, and making sure you own your account (not the factory).
Real-World Analogy: Think of LAUFactory like the sign-up page for a video game. You enter your desired name, click "Create Account," and the system does all the heavy lifting: setting up your profile, generating your player ID, and giving you access to the game. LAUFactory is that sign-up process for Dysnomia.
How It Affects Your Gameplay:
- Account creation - This is where your journey begins - call New() to create your LAU
- Full ownership - After creation, YOU own your LAU - the factory has no control
- Automatic setup - Your Soul ID, Aura, SHIO, and all related tokens are created automatically
State Variables¶
| Variable | Type | Visibility | Mutability | Initial Value | NatSpec |
|---|---|---|---|---|---|
Void |
VOID |
public | mutable | `` |
Constructor¶
constructor¶
- Parameters: address VOIDAddress
Functions¶
External & Public¶
New¶
- Visibility: public
- Parameters: string memory name, string memory symbol
- Returns: LAU Mu
Ownership Pattern¶
1. Factory deploys LAU(name, symbol, Void)
2. LAU constructor calls Void.Enter() to create session
3. Factory adds msg.sender as LAU owner
4. Factory adds tx.origin as LAU owner
5. Factory renounces its own ownership
This ensures: - The calling contract becomes an owner (if applicable) - The human initiator becomes the primary owner - The factory retains no control over user tokens
Contract Interactions¶
Depends On¶
Depended On By¶
- Any contract or UI that creates user accounts
Usage Example¶
// From a web3 frontend
LAUFactory factory = LAUFactory(factoryAddress);
LAU myToken = factory.New("Alice's Token", "ALICE");
// myToken is now owned by the caller
uint64 soul = myToken.Saat(1);
myToken.Username("Alice");
User Creation Flow¶
User calls factory.New("My Token", "MTK")
↓
Factory deploys new LAU
↓
LAU constructor calls VOID.Enter()
↓
VOID creates session via SIU.Miu()
↓
SIU creates tokens via ZHENG.Mau()
↓
Complete installation through hierarchy
↓
LAU receives Saat and Bao
↓
Factory sets ownership to user
↓
User receives LAU token address
Security Considerations¶
- Factory must be VOID owner to create sessions
- Factory renounces ownership after creation
- Each LAU is independently owned by its creator
- No central control over user tokens after creation
Contract Verification¶
| Property | Value |
|---|---|
| Keccak256 Hash | 0xad03a2be6b28d8310331f5dff776ea9e686e6c1419468b5626aba6ccffcc55d7 |
| Source URL | https://raw.githubusercontent.com/busytoby/atropa_pulsechain/main/solidity/dysnomia/11c_laufactory.sol |
| Hash Generated | 2026-04-17T20:48:09Z |