@bloopjs/engine 0.0.41 → 0.0.43
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/dist/wasmEngine.d.ts +34 -0
- package/dist/wasmEngine.d.ts.map +1 -1
- package/js/wasmEngine.ts +41 -0
- package/package.json +1 -1
- package/wasm/bloop.wasm +0 -0
package/dist/wasmEngine.d.ts
CHANGED
|
@@ -68,5 +68,39 @@ export type WasmEngine = {
|
|
|
68
68
|
* Free all memory associated with it
|
|
69
69
|
*/
|
|
70
70
|
deinit: () => void;
|
|
71
|
+
/**
|
|
72
|
+
* Initialize a multiplayer session with rollback support
|
|
73
|
+
* @param peer_count Number of peers in the session
|
|
74
|
+
* @param user_data_len Size of user data to include in snapshots
|
|
75
|
+
*/
|
|
76
|
+
session_init: (peer_count: number, user_data_len: number) => EngineOk;
|
|
77
|
+
/**
|
|
78
|
+
* End the current session
|
|
79
|
+
*/
|
|
80
|
+
session_end: () => void;
|
|
81
|
+
/**
|
|
82
|
+
* Emit inputs for a peer at a given match frame
|
|
83
|
+
* @param peer Peer ID (0-indexed)
|
|
84
|
+
* @param match_frame Frame number relative to session start
|
|
85
|
+
* @param events_ptr Pointer to Event array in WASM memory
|
|
86
|
+
* @param events_len Number of events
|
|
87
|
+
*/
|
|
88
|
+
session_emit_inputs: (peer: number, match_frame: number, events_ptr: EnginePointer, events_len: number) => void;
|
|
89
|
+
/**
|
|
90
|
+
* Get current match frame (frames since session start)
|
|
91
|
+
*/
|
|
92
|
+
get_match_frame: () => number;
|
|
93
|
+
/**
|
|
94
|
+
* Get confirmed frame (latest frame where all peers have sent inputs)
|
|
95
|
+
*/
|
|
96
|
+
get_confirmed_frame: () => number;
|
|
97
|
+
/**
|
|
98
|
+
* Get the latest confirmed frame for a specific peer
|
|
99
|
+
*/
|
|
100
|
+
get_peer_frame: (peer: number) => number;
|
|
101
|
+
/**
|
|
102
|
+
* Get rollback depth (match_frame - confirmed_frame)
|
|
103
|
+
*/
|
|
104
|
+
get_rollback_depth: () => number;
|
|
71
105
|
};
|
|
72
106
|
//# sourceMappingURL=wasmEngine.d.ts.map
|
package/dist/wasmEngine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasmEngine.d.ts","sourceRoot":"","sources":["../js/wasmEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,MAAM,UAAU,GAAG;IACvB,yEAAyE;IACzE,UAAU,EAAE,MAAM,aAAa,CAAC;IAChC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,aAAa,CAAC;IACvC,IAAI,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAE9C,YAAY,EAAE,MAAM,aAAa,CAAC;IAClC,cAAc,EAAE,MAAM,aAAa,CAAC;IAEpC;;OAEG;IACH,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;IAC7B;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB;;;OAGG;IACH,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B;;OAEG;IACH,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,QAAQ,CAAC;IACpE;;OAEG;IACH,cAAc,EAAE,MAAM,QAAQ,CAAC;IAC/B;;OAEG;IACH,YAAY,EAAE,MAAM,OAAO,CAAC;IAC5B;;OAEG;IACH,YAAY,EAAE,MAAM,OAAO,CAAC;IAG5B,YAAY,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC;IAClE,UAAU,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC;IAChE,cAAc,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC;IAC/E,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC;IAC7E,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC;IAC1E,eAAe,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC;IAE3E;;OAEG;IACH,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,aAAa,CAAC;IACnD;;OAEG;IACH,OAAO,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAC;IAEtC;;OAEG;IACH,YAAY,EAAE,MAAM,aAAa,CAAC;IAClC;;OAEG;IACH,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B;;OAEG;IACH,SAAS,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,KAAK,QAAQ,CAAC;IAEzD;;;OAGG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"wasmEngine.d.ts","sourceRoot":"","sources":["../js/wasmEngine.ts"],"names":[],"mappings":"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"}
|
package/js/wasmEngine.ts
CHANGED
|
@@ -76,4 +76,45 @@ export type WasmEngine = {
|
|
|
76
76
|
* Free all memory associated with it
|
|
77
77
|
*/
|
|
78
78
|
deinit: () => void;
|
|
79
|
+
|
|
80
|
+
// Session / Rollback
|
|
81
|
+
/**
|
|
82
|
+
* Initialize a multiplayer session with rollback support
|
|
83
|
+
* @param peer_count Number of peers in the session
|
|
84
|
+
* @param user_data_len Size of user data to include in snapshots
|
|
85
|
+
*/
|
|
86
|
+
session_init: (peer_count: number, user_data_len: number) => EngineOk;
|
|
87
|
+
/**
|
|
88
|
+
* End the current session
|
|
89
|
+
*/
|
|
90
|
+
session_end: () => void;
|
|
91
|
+
/**
|
|
92
|
+
* Emit inputs for a peer at a given match frame
|
|
93
|
+
* @param peer Peer ID (0-indexed)
|
|
94
|
+
* @param match_frame Frame number relative to session start
|
|
95
|
+
* @param events_ptr Pointer to Event array in WASM memory
|
|
96
|
+
* @param events_len Number of events
|
|
97
|
+
*/
|
|
98
|
+
session_emit_inputs: (
|
|
99
|
+
peer: number,
|
|
100
|
+
match_frame: number,
|
|
101
|
+
events_ptr: EnginePointer,
|
|
102
|
+
events_len: number,
|
|
103
|
+
) => void;
|
|
104
|
+
/**
|
|
105
|
+
* Get current match frame (frames since session start)
|
|
106
|
+
*/
|
|
107
|
+
get_match_frame: () => number;
|
|
108
|
+
/**
|
|
109
|
+
* Get confirmed frame (latest frame where all peers have sent inputs)
|
|
110
|
+
*/
|
|
111
|
+
get_confirmed_frame: () => number;
|
|
112
|
+
/**
|
|
113
|
+
* Get the latest confirmed frame for a specific peer
|
|
114
|
+
*/
|
|
115
|
+
get_peer_frame: (peer: number) => number;
|
|
116
|
+
/**
|
|
117
|
+
* Get rollback depth (match_frame - confirmed_frame)
|
|
118
|
+
*/
|
|
119
|
+
get_rollback_depth: () => number;
|
|
79
120
|
};
|
package/package.json
CHANGED
package/wasm/bloop.wasm
CHANGED
|
Binary file
|