@energy8platform/platform-core 0.28.3 → 0.29.0
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.
- package/README.md +127 -150
- package/bin/simulate.ts +35 -98
- package/dist/dev-bridge.cjs.js +3 -3
- package/dist/dev-bridge.cjs.js.map +1 -1
- package/dist/dev-bridge.d.ts +2 -2
- package/dist/dev-bridge.esm.js +3 -3
- package/dist/dev-bridge.esm.js.map +1 -1
- package/dist/game-spec.cjs.js +59 -59
- package/dist/game-spec.cjs.js.map +1 -1
- package/dist/game-spec.d.ts +24 -23
- package/dist/game-spec.esm.js +57 -56
- package/dist/game-spec.esm.js.map +1 -1
- package/dist/index.cjs.js +3 -3
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +21 -2
- package/dist/index.esm.js +3 -3
- package/dist/index.esm.js.map +1 -1
- package/dist/lua.cjs.js +0 -1234
- package/dist/lua.cjs.js.map +1 -1
- package/dist/lua.d.ts +1 -206
- package/dist/lua.esm.js +0 -1225
- package/dist/lua.esm.js.map +1 -1
- package/dist/simulation.cjs.js +48 -179
- package/dist/simulation.cjs.js.map +1 -1
- package/dist/simulation.d.ts +26 -60
- package/dist/simulation.esm.js +48 -178
- package/dist/simulation.esm.js.map +1 -1
- package/dist/vite.cjs.js +323 -109
- package/dist/vite.cjs.js.map +1 -1
- package/dist/vite.d.ts +19 -9
- package/dist/vite.esm.js +322 -109
- package/dist/vite.esm.js.map +1 -1
- package/package.json +6 -5
- package/scripts/install-e8.mjs +113 -0
- package/src/dev-bridge/DevBridge.ts +3 -3
- package/src/game-spec/defineGame.ts +2 -2
- package/src/game-spec/derive.ts +39 -16
- package/src/game-spec/export.ts +23 -39
- package/src/game-spec/index.ts +3 -3
- package/src/game-spec/types.ts +2 -1
- package/src/index.ts +6 -12
- package/src/lua/index.ts +4 -11
- package/src/simulation/NativeSimulationRunner.ts +71 -45
- package/src/simulation/index.ts +2 -4
- package/src/vite/index.ts +4 -121
- package/src/vite/spinPlugin.ts +338 -0
- package/scripts/install-simulate.mjs +0 -101
- package/src/lua/ActionRouter.ts +0 -132
- package/src/lua/LuaEngine.ts +0 -520
- package/src/lua/LuaEngineAPI.ts +0 -314
- package/src/lua/PersistentState.ts +0 -80
- package/src/lua/SessionManager.ts +0 -249
- package/src/lua/SimulationRunner.ts +0 -190
- package/src/lua/fengari.d.ts +0 -10
- package/src/simulation/ParallelSimulationRunner.ts +0 -156
- package/src/simulation/SimulationWorker.ts +0 -44
package/dist/lua.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lua.cjs.js","sources":["../src/lua/LuaEngineAPI.ts","../src/lua/ActionRouter.ts","../src/lua/SessionManager.ts","../src/lua/PersistentState.ts","../src/lua/LuaEngine.ts","../src/lua/SimulationRunner.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["lua","lauxlib","to_luastring","to_jsstring"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lua.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
package/dist/lua.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SessionData
|
|
1
|
+
import { SessionData } from '@energy8platform/game-sdk';
|
|
2
2
|
|
|
3
3
|
interface GameDefinition {
|
|
4
4
|
id: string;
|
|
@@ -145,209 +145,4 @@ interface SimulationRawAccumulators {
|
|
|
145
145
|
hits: number;
|
|
146
146
|
}
|
|
147
147
|
|
|
148
|
-
/**
|
|
149
|
-
* Runs Lua game scripts locally, replicating the platform's server-side execution.
|
|
150
|
-
*
|
|
151
|
-
* Implements the full lifecycle matching `casino_platform/internal/usecase/game_usecase.go`:
|
|
152
|
-
* action routing → state assembly → Lua execute() → result extraction →
|
|
153
|
-
* transition evaluation → session management.
|
|
154
|
-
*/
|
|
155
|
-
declare class LuaEngine {
|
|
156
|
-
private L;
|
|
157
|
-
private api;
|
|
158
|
-
private actionRouter;
|
|
159
|
-
private sessionManager;
|
|
160
|
-
private persistentState;
|
|
161
|
-
private gameDefinition;
|
|
162
|
-
private variables;
|
|
163
|
-
private simulationMode;
|
|
164
|
-
private allowSessionlessActions;
|
|
165
|
-
/** Reusable state objects to avoid per-iteration allocation */
|
|
166
|
-
private _stateVars;
|
|
167
|
-
private _stateParams;
|
|
168
|
-
constructor(config: LuaEngineConfig);
|
|
169
|
-
get session(): SessionData | null;
|
|
170
|
-
get persistentVars(): Record<string, number>;
|
|
171
|
-
/**
|
|
172
|
-
* Execute a play action — replicates server's Play() function.
|
|
173
|
-
*/
|
|
174
|
-
execute(params: PlayParams): LuaPlayResult;
|
|
175
|
-
reset(): void;
|
|
176
|
-
destroy(): void;
|
|
177
|
-
private loadScript;
|
|
178
|
-
private callLuaExecute;
|
|
179
|
-
/**
|
|
180
|
-
* Mirror server's state_mapper.go MapState — surface variable-derived
|
|
181
|
-
* fields so scripts that don't manually echo them in the result table
|
|
182
|
-
* still produce a server-shaped data map. Lua keys win on conflict.
|
|
183
|
-
*/
|
|
184
|
-
private applyMapStateInjection;
|
|
185
|
-
private calculateMaxWinCap;
|
|
186
|
-
private pickFromDistribution;
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
type RngFunction = () => number;
|
|
190
|
-
/**
|
|
191
|
-
* Seeded xoshiro128** PRNG for deterministic simulation/replay.
|
|
192
|
-
* Period: 2^128 - 1
|
|
193
|
-
*/
|
|
194
|
-
declare function createSeededRng(seed: number): RngFunction;
|
|
195
|
-
/**
|
|
196
|
-
* Implements and registers all platform `engine.*` functions into a Lua state.
|
|
197
|
-
*/
|
|
198
|
-
declare class LuaEngineAPI {
|
|
199
|
-
private rng;
|
|
200
|
-
private logger;
|
|
201
|
-
private gameDefinition;
|
|
202
|
-
constructor(gameDefinition: GameDefinition, rng?: RngFunction, logger?: (level: string, msg: string) => void);
|
|
203
|
-
/** Register `engine` global table on the Lua state */
|
|
204
|
-
register(L: any): void;
|
|
205
|
-
random(min: number, max: number): number;
|
|
206
|
-
randomFloat(): number;
|
|
207
|
-
randomWeighted(weights: number[]): number;
|
|
208
|
-
shuffle<T>(arr: T[]): T[];
|
|
209
|
-
getConfig(): Record<string, unknown>;
|
|
210
|
-
private registerFunction;
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
interface TransitionMatch {
|
|
214
|
-
rule: TransitionRule;
|
|
215
|
-
nextActions: string[];
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* Replicates the platform's action dispatch and transition evaluation.
|
|
219
|
-
* Routes play requests to the correct action, evaluates transition conditions
|
|
220
|
-
* against current variables to determine next actions and session operations.
|
|
221
|
-
*/
|
|
222
|
-
declare class ActionRouter {
|
|
223
|
-
private actions;
|
|
224
|
-
constructor(gameDefinition: GameDefinition);
|
|
225
|
-
/** Look up action by name and validate prerequisites */
|
|
226
|
-
resolveAction(actionName: string, hasSession: boolean): ActionDefinition;
|
|
227
|
-
/** Evaluate transitions in order, return the first matching rule */
|
|
228
|
-
evaluateTransitions(action: ActionDefinition, variables: Record<string, number>): TransitionMatch;
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* Evaluates a transition condition expression against variables.
|
|
232
|
-
*
|
|
233
|
-
* Supports:
|
|
234
|
-
* - "always" → true
|
|
235
|
-
* - Simple comparisons: "var > 0", "var == 1", "var >= 10", "var != 0", "var < 5", "var <= 3"
|
|
236
|
-
* - Logical connectives: "expr && expr", "expr || expr"
|
|
237
|
-
*
|
|
238
|
-
* This covers all patterns used by the platform's govaluate conditions.
|
|
239
|
-
*/
|
|
240
|
-
declare function evaluateCondition(condition: string, variables: Record<string, number>): boolean;
|
|
241
|
-
|
|
242
|
-
/**
|
|
243
|
-
* Manages session lifecycle matching the platform server behavior:
|
|
244
|
-
* - createSession: initial spin counted (spinsPlayed=1, totalWin=spinWin)
|
|
245
|
-
* - updateSession: accumulates win, decrements spins, checks max win cap on session level
|
|
246
|
-
* - completeSession: returns cumulative totalWin, cleans up session vars
|
|
247
|
-
* - Safety cap: 200 spins max per session
|
|
248
|
-
*/
|
|
249
|
-
declare class SessionManager {
|
|
250
|
-
private session;
|
|
251
|
-
get isActive(): boolean;
|
|
252
|
-
get current(): SessionData | null;
|
|
253
|
-
get sessionTotalWin(): number;
|
|
254
|
-
/** Get the fixed bet amount from the session (server uses session bet, not request bet) */
|
|
255
|
-
get sessionBet(): number | undefined;
|
|
256
|
-
/** Get spinsVarName to restore free_spins_remaining into variables */
|
|
257
|
-
get spinsVarName(): string | undefined;
|
|
258
|
-
get spinsRemaining(): number;
|
|
259
|
-
/**
|
|
260
|
-
* Create a new session from a transition rule.
|
|
261
|
-
* Server behavior: initial spin is already counted (spinsPlayed=1, totalWin includes spinWin),
|
|
262
|
-
* and history[0] holds the trigger spin's data.
|
|
263
|
-
*/
|
|
264
|
-
createSession(rule: TransitionRule, variables: Record<string, number>, bet: number, spinWin: number, maxWinCap: number | undefined, triggerData: Record<string, unknown>): SessionData;
|
|
265
|
-
/**
|
|
266
|
-
* Update session after a bonus spin.
|
|
267
|
-
* Server behavior: accumulate win, decrement spins, check retrigger, check max win cap,
|
|
268
|
-
* safety cap at 200 spins.
|
|
269
|
-
*/
|
|
270
|
-
updateSession(rule: TransitionRule, variables: Record<string, number>, spinWin: number, roundData: Record<string, unknown>): SessionData;
|
|
271
|
-
/**
|
|
272
|
-
* Complete the session explicitly.
|
|
273
|
-
* Returns cumulative totalWin and list of session-scoped var names to clean up.
|
|
274
|
-
*/
|
|
275
|
-
completeSession(): {
|
|
276
|
-
totalWin: number;
|
|
277
|
-
session: SessionData;
|
|
278
|
-
sessionVarNames: string[];
|
|
279
|
-
};
|
|
280
|
-
/** Mark max win reached — stops the session */
|
|
281
|
-
markMaxWinReached(): void;
|
|
282
|
-
/** Store _persist_* data extracted from Lua result */
|
|
283
|
-
storePersistData(data: Record<string, unknown>): void;
|
|
284
|
-
/** Get persistent params to inject into next execute() call */
|
|
285
|
-
getPersistentParams(): Record<string, unknown>;
|
|
286
|
-
/** Reset all session state */
|
|
287
|
-
reset(): void;
|
|
288
|
-
private toSessionData;
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
/**
|
|
292
|
-
* Manages cross-spin persistent state — variables that survive between base game spins.
|
|
293
|
-
* Separate from session-scoped persistence (handled by SessionManager).
|
|
294
|
-
*
|
|
295
|
-
* Handles two mechanisms:
|
|
296
|
-
* 1. Numeric vars declared in `persistent_state.vars` — stored in state.variables
|
|
297
|
-
* 2. Complex data with `_persist_game_*` prefix — stored separately, injected as `_ps_*`
|
|
298
|
-
*/
|
|
299
|
-
declare class PersistentState {
|
|
300
|
-
private config;
|
|
301
|
-
private vars;
|
|
302
|
-
private gameData;
|
|
303
|
-
constructor(config?: PersistentStateConfig);
|
|
304
|
-
/** Load persistent vars into variables map before execute() */
|
|
305
|
-
loadIntoVariables(variables: Record<string, number>): void;
|
|
306
|
-
/** Save persistent vars from variables map after execute() */
|
|
307
|
-
saveFromVariables(variables: Record<string, number>): void;
|
|
308
|
-
/** Extract _persist_game_* keys from Lua return data, store them */
|
|
309
|
-
storeGameData(data: Record<string, unknown>): void;
|
|
310
|
-
/** Get _ps_* params for next execute() call */
|
|
311
|
-
getGameDataParams(): Record<string, unknown>;
|
|
312
|
-
/** Get exposed vars for client data.persistent_state */
|
|
313
|
-
getExposedVars(): Record<string, number> | undefined;
|
|
314
|
-
/** Reset all state */
|
|
315
|
-
reset(): void;
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
/**
|
|
319
|
-
* Runs N iterations of a Lua game script and collects RTP statistics.
|
|
320
|
-
* Supports regular spins, buy bonus, and ante bet simulation.
|
|
321
|
-
*
|
|
322
|
-
* @example
|
|
323
|
-
* ```ts
|
|
324
|
-
* const runner = new SimulationRunner({
|
|
325
|
-
* script: luaSource,
|
|
326
|
-
* gameDefinition,
|
|
327
|
-
* iterations: 1_000_000,
|
|
328
|
-
* bet: 1.0,
|
|
329
|
-
* seed: 42,
|
|
330
|
-
* onProgress: (done, total) => console.log(`${done}/${total}`),
|
|
331
|
-
* });
|
|
332
|
-
*
|
|
333
|
-
* const result = runner.run();
|
|
334
|
-
* console.log(`RTP: ${result.totalRtp.toFixed(2)}%`);
|
|
335
|
-
* ```
|
|
336
|
-
*/
|
|
337
|
-
declare class SimulationRunner {
|
|
338
|
-
private config;
|
|
339
|
-
constructor(config: SimulationConfig);
|
|
340
|
-
run(): SimulationResult;
|
|
341
|
-
/**
|
|
342
|
-
* Calculate the real cost of one spin — mirrors v5
|
|
343
|
-
* ActionDefinition.DebitAmount: bet × (cost_multiplier || 1) when
|
|
344
|
-
* debit==='bet', otherwise 0. Returns `bet` as a fallback for unknown
|
|
345
|
-
* actions so RTP math still progresses (we count those as wagered).
|
|
346
|
-
*/
|
|
347
|
-
private calculateSpinCost;
|
|
348
|
-
}
|
|
349
|
-
/** Format a SimulationResult for console output */
|
|
350
|
-
declare function formatSimulationResult(result: SimulationResult): string;
|
|
351
|
-
|
|
352
|
-
export { ActionRouter, LuaEngine, LuaEngineAPI, PersistentState, SessionManager, SimulationRunner, createSeededRng, evaluateCondition, formatSimulationResult };
|
|
353
148
|
export type { ActionDefinition, BetLevelsConfig, GameDefinition, LuaEngineConfig, LuaPlayResult, MaxWinConfig, PersistentStateConfig, SessionConfig, SimulationConfig, SimulationRawAccumulators, SimulationResult, TransitionRule };
|