@flayerlabs/gamemode-cli 0.6.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -38,7 +38,8 @@ If the SDK interface cannot represent the game safely, stop and describe the mis
|
|
|
38
38
|
6. Keep action acceptance separate from awards when an early balance change would leak a result.
|
|
39
39
|
7. Calculate `rewardBounds` from the rules, including the best possible play.
|
|
40
40
|
8. Build the browser around `Room` capabilities. Keep scoring, wallets, keys and calldata out of creator client code.
|
|
41
|
-
9.
|
|
41
|
+
9. Open external links (site, Discord, X) in a new tab from a click handler; the frame cannot navigate the embedding page.
|
|
42
|
+
10. Prove the loop with the mock room before adding a project-specific live harness.
|
|
42
43
|
|
|
43
44
|
## Verify the result
|
|
44
45
|
|
|
@@ -58,4 +59,4 @@ Check replay, reconnect, hidden-data leaks, late actions, duplicate actions, ove
|
|
|
58
59
|
|
|
59
60
|
## Ship
|
|
60
61
|
|
|
61
|
-
Build with `@flayerlabs/gamemode-client` 0.
|
|
62
|
+
Build with `@flayerlabs/gamemode-client` 0.7.0 or later, deploy the scaffolded gate (`src/gate.ts`), and upload the zip at the developer dashboard, `https://flaunch.gg/game-mode/dashboard`: one gate per chain (Base Sepolia 84532 required for testing; Base 8453 and Robinhood 4663 production), tick "supports practice mode" when the build runs on `createMockRoom`, mark it mobile-friendly if it is, and run the Base Sepolia test launch. Bundling rules and the full ship checklist are steps 7–8 of `$port-game-mode`; a game with its own multiplayer server follows `$run-a-game-server`.
|
|
@@ -20,7 +20,7 @@ itself. Work through the sections in order; each ends with a check you can run.
|
|
|
20
20
|
2. Your gate: one process you deploy (`createGameServerGate()` from `@flayerlabs/gamemode-gate`).
|
|
21
21
|
It owns wallet sessions, the points ledger, spend authorisations and settlement. One process
|
|
22
22
|
serves one chain.
|
|
23
|
-
3. Your game server(s): your realtime processes, up to
|
|
23
|
+
3. Your game server(s): your realtime processes, up to twenty public HTTPS origins. Gameplay,
|
|
24
24
|
scoring decisions and anti-abuse are yours; points move only through the gate's award route.
|
|
25
25
|
|
|
26
26
|
## Declare the same origins in all three places
|
|
@@ -36,7 +36,7 @@ The reviewed game-server origins must match exactly — same scheme, same host,
|
|
|
36
36
|
|
|
37
37
|
A mismatch fails at a different layer each time: missing from (1) and the fetch dies on CSP with
|
|
38
38
|
"Refused to connect"; missing from (2) and the fetch succeeds but the ticket does not verify;
|
|
39
|
-
wrong in (3) and verification rejects every player. At most
|
|
39
|
+
wrong in (3) and verification rejects every player. At most twenty origins, exact HTTPS only —
|
|
40
40
|
wildcards, paths and plain HTTP are refused. Rotating regions? Put them behind stable hostnames;
|
|
41
41
|
the list is not meant to churn.
|
|
42
42
|
|
|
@@ -56,6 +56,8 @@ const app = createGameServerGate({
|
|
|
56
56
|
chainId: 84532,
|
|
57
57
|
contracts: {
|
|
58
58
|
positionManager: '0x4E7cB1e6800a7B297B38BddcecAF9Ca5b6616FDC',
|
|
59
|
+
// The legacy stack's version 1 calculator. The paired stack's v2 calculator (0.7.0) is
|
|
60
|
+
// 0x8a36826253882c8b505D6D78a71B780Ac9c98eA9 on Base Sepolia.
|
|
59
61
|
spendGatedCalculator: '0x8cbbE6b4cFA5Ccf68399Dbf1429d91A21097ebA5',
|
|
60
62
|
},
|
|
61
63
|
signer: SIGNER_ADDRESS, // the address of your gate's signing key
|
|
@@ -174,7 +176,7 @@ Upload the zip in the developer dashboard at `https://flaunch.gg/game-mode/dashb
|
|
|
174
176
|
your gate origin as a network — one gate per chain: Base Sepolia (84532) is required for testing,
|
|
175
177
|
Base (8453) and Robinhood (4663) are production — and fill in the game server addresses. The
|
|
176
178
|
dashboard live-probes `/health` at submission, so deploy the gate first; it refuses builds below
|
|
177
|
-
`@flayerlabs/gamemode-client` 0.
|
|
179
|
+
`@flayerlabs/gamemode-client` 0.7.0 and gates whose `/config` `gateVersion` is below 0.7.0. Mark
|
|
178
180
|
the game mobile-friendly if it is, and run the Base Sepolia test launch from the dashboard. Localhost
|
|
179
181
|
cannot rehearse the deployed CSP: after hosting, open the deployed game and confirm every declared
|
|
180
182
|
origin connects and an undeclared one is blocked. Then launch a fresh test coin through the room
|