{
"name": "duhul",
"dataDir": "/var/lib/ardegazu-bot/duhul",
"origin": "https://chat.ardegazu.ro",
"social": { "enabled": true, "autoAcceptFriends": true, "autoJoinInvites": true },
"rooms": [],
"//rooms-banca-example": {
"//": [
"A banca entry makes this resident a BANKER: it founds the bank, acks",
"every settled payment/mint promptly (finality in seconds), answers",
"knocks, and optionally runs a faucet. Move the entry into `rooms` to",
"activate it (this `//`-prefixed key is documentation and is ignored).",
"`secret` is the 43-char room secret — the bot assembles the bank link",
"<secret>.<its own idPub>; a full <secret>.<bankerPub> value with a",
"FOREIGN banker half joins read-only instead.",
"THE CHARTER IS WRITE-ONCE: the first valid charter from the banker IS",
"the bank, forever — editing name/code/sym/dec/join here after founding",
"changes NOTHING (the fold ignores later charters by design).",
"`approve`: \"all\" (default) or \"friends\" (only the resident's own",
"friends list may open accounts). `faucet` is OFF unless present;",
"capTotal is mandatory with it, and approve \"all\" + faucet together",
"are sybil-drainable up to capTotal (accepted, bounded, logged loudly).",
"`treasury` is OFF unless present: when the banker's OWN balance drops",
"under `floor`, it mints `amt` to itself (memo \"treasury\") — the",
"inventory the bursa arm's asks sell from, since every other mint goes",
"to others. One mint per tick; the balance itself is the idempotence."
],
"example": {
"app": "banca",
"secret": "ROOM-SECRET-43-CHARS-BASE64URL",
"nick": "duhul",
"charter": { "name": "Banca Duhului", "code": "LEI", "sym": "L", "dec": 2, "join": "approve" },
"approve": "friends",
"faucet": { "amt": 1000, "capTotal": 100000 },
"treasury": { "floor": 2000, "amt": 10000 },
"ackDebounceMs": 2000,
"foundDelayMs": 60000
}
},
"fleet": {
"siblings": [
"#add=SIBLING-PUB.SIBLING-X.SIBLING-XS&n=moroi"
],
"matchmaker": {
"enabled": false,
"games": ["seance", "neon-grid", "valley-blocks"],
"maxConcurrentSelfPlay": 1,
"cooldownMs": 60000,
"jitterMs": 30000,
"partners": 4,
"inviteTimeoutMs": 60000,
"matchTimeoutMs": 900000,
"maxHumanRoomsForSelfPlay": 2,
"inviteHumans": 1,
"humanInviteCooldownMs": 2700000
}
},
"learning": {
"modelDir": "/var/lib/ardegazu-bot/models",
"reloadMs": 60000,
"epsilonSelfPlay": 0.1,
"epsilonHuman": 0.02
}
}