@cimplify/sdk 0.108.0 → 0.110.2
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/LICENSE +21 -0
- package/dist/advanced.d.mts +4 -3
- package/dist/advanced.d.ts +4 -3
- package/dist/advanced.js +24 -24
- package/dist/advanced.mjs +5 -5
- package/dist/animation-4EXBXRVX.js +27 -0
- package/dist/animation-6DICNWUP.mjs +6 -0
- package/dist/audio-DhvyjqdA.d.mts +249 -0
- package/dist/audio-m0w8cnxq.d.ts +249 -0
- package/dist/avatars.d.mts +110 -0
- package/dist/avatars.d.ts +110 -0
- package/dist/avatars.js +82 -0
- package/dist/avatars.mjs +5 -0
- package/dist/backend-gUCzs5Kg.d.mts +3866 -0
- package/dist/backend-gUCzs5Kg.d.ts +3866 -0
- package/dist/{catalogue-B4eLL8Mi.d.ts → catalogue-CPTMyBUz.d.mts} +109 -221
- package/dist/catalogue-DzrTXP3v.d.mts +541 -0
- package/dist/catalogue-DzrTXP3v.d.ts +541 -0
- package/dist/{catalogue-OT89_Ifs.d.mts → catalogue-OTuS5zp-.d.ts} +109 -221
- package/dist/chunk-22BD3RHN.mjs +1809 -0
- package/dist/chunk-25T4JHEA.mjs +21 -0
- package/dist/chunk-2AQ237Y4.js +508 -0
- package/dist/chunk-2IC4H6OV.mjs +48 -0
- package/dist/chunk-2LHLG4OB.mjs +71 -0
- package/dist/chunk-2O2CG465.js +1709 -0
- package/dist/chunk-2Q4DTHXK.js +316 -0
- package/dist/chunk-2QTQ6BUH.mjs +46 -0
- package/dist/chunk-2UN4SFLR.mjs +100 -0
- package/dist/chunk-2V75I7K3.js +454 -0
- package/dist/chunk-2V7IL4HC.js +10 -0
- package/dist/chunk-34XBXUMW.js +296 -0
- package/dist/chunk-3C4C654I.js +71 -0
- package/dist/chunk-3DAD2LDF.mjs +72 -0
- package/dist/chunk-3GXH2NFD.mjs +4 -0
- package/dist/chunk-3O47ZFW3.js +961 -0
- package/dist/chunk-3OY3VYNF.mjs +11 -0
- package/dist/chunk-3S6WPBZL.js +2936 -0
- package/dist/chunk-3TUOUP5T.js +399 -0
- package/dist/chunk-3VEH23I5.mjs +1380 -0
- package/dist/chunk-3ZYSAW2T.mjs +263 -0
- package/dist/chunk-4ANVF274.js +103 -0
- package/dist/chunk-4C7I3ELN.js +388 -0
- package/dist/chunk-4DYKAYFO.mjs +8 -0
- package/dist/chunk-4ZDR72SG.js +329 -0
- package/dist/chunk-52YS45RR.js +1066 -0
- package/dist/chunk-5325XSCH.js +107 -0
- package/dist/chunk-5AD5X6AV.js +13 -0
- package/dist/chunk-5BYDGGWO.mjs +197 -0
- package/dist/chunk-5C3C7VDM.mjs +55 -0
- package/dist/chunk-5HFMY3D7.js +660 -0
- package/dist/chunk-5LH2QN3T.js +1862 -0
- package/dist/chunk-5PJEXSOW.js +44 -0
- package/dist/chunk-5SXDH3Y7.js +90 -0
- package/dist/chunk-5YFBGGCK.mjs +502 -0
- package/dist/chunk-5YWN6H5Q.mjs +133 -0
- package/dist/chunk-66QP3SMN.js +402 -0
- package/dist/chunk-6DAEZKIG.mjs +385 -0
- package/dist/chunk-6DATW7TB.mjs +420 -0
- package/dist/{chunk-JRGK3NXR.mjs → chunk-6ETDAU62.mjs} +72 -212
- package/dist/chunk-6H254EVP.mjs +178 -0
- package/dist/chunk-6PFNJPBJ.mjs +820 -0
- package/dist/chunk-6PJWXIFX.mjs +357 -0
- package/dist/chunk-6SWKWCMS.js +80 -0
- package/dist/chunk-6VVXXX7S.js +808 -0
- package/dist/chunk-6WUBSMTX.js +1403 -0
- package/dist/chunk-73SGZLAQ.mjs +35 -0
- package/dist/chunk-76L2V6KD.mjs +4 -0
- package/dist/chunk-7AAIAVAA.js +1531 -0
- package/dist/chunk-7ARSJPV3.mjs +93 -0
- package/dist/chunk-7BHW5GTC.mjs +1234 -0
- package/dist/chunk-7DQSDKDU.js +6 -0
- package/dist/chunk-7IQQQENP.mjs +401 -0
- package/dist/chunk-7KFTYENS.js +11357 -0
- package/dist/chunk-7SM6XSPZ.js +3171 -0
- package/dist/chunk-7SXOHAIR.mjs +28 -0
- package/dist/chunk-A2MAX6S4.js +90 -0
- package/dist/chunk-A33OORT7.mjs +1530 -0
- package/dist/{chunk-U6ACF76H.mjs → chunk-A36JRXXH.mjs} +1075 -1845
- package/dist/chunk-A7BU3BK4.js +52 -0
- package/dist/chunk-A7MQSN2V.mjs +77 -0
- package/dist/chunk-A7V4L2IT.mjs +416 -0
- package/dist/chunk-AABEK6XU.js +226 -0
- package/dist/chunk-AGV33FWC.mjs +5005 -0
- package/dist/chunk-AHNR3BXI.js +108 -0
- package/dist/chunk-AQ5RLBU2.mjs +286 -0
- package/dist/chunk-AQOE6WCG.js +1270 -0
- package/dist/chunk-ATAWRACV.mjs +62 -0
- package/dist/chunk-ATCURNUV.js +14 -0
- package/dist/chunk-AWPV33OO.js +6 -0
- package/dist/chunk-AYJPHKYV.js +337 -0
- package/dist/chunk-AZ5BGWHB.js +162 -0
- package/dist/chunk-AZAXD44P.js +1373 -0
- package/dist/chunk-BBGKQIJJ.mjs +406 -0
- package/dist/chunk-BP4JLSUA.js +1453 -0
- package/dist/{chunk-SUCE7FWA.mjs → chunk-BTUSVHIE.mjs} +539 -978
- package/dist/chunk-BU6OK542.mjs +818 -0
- package/dist/chunk-CVSRWM6W.js +418 -0
- package/dist/chunk-CYBMFMJD.mjs +247 -0
- package/dist/chunk-DDJLDOUX.mjs +217 -0
- package/dist/{chunk-V32BCG7M.js → chunk-DFZWHNRG.js} +75 -215
- package/dist/chunk-DJ2C7AVG.js +644 -0
- package/dist/chunk-DS2VU4WW.mjs +102 -0
- package/dist/chunk-DSAG7T5P.js +7290 -0
- package/dist/chunk-E2QPPH7I.js +327 -0
- package/dist/chunk-E65WCTIG.mjs +1187 -0
- package/dist/{chunk-33VCYWVL.mjs → chunk-E6QQKDNE.mjs} +30 -42
- package/dist/chunk-ECDK6QBF.mjs +981 -0
- package/dist/chunk-EIB4OWVQ.mjs +620 -0
- package/dist/chunk-EQUZYCGO.js +250 -0
- package/dist/chunk-F3UJ6ZRM.mjs +313 -0
- package/dist/chunk-F63N2ZTQ.js +7023 -0
- package/dist/chunk-F6XRYEM3.mjs +26 -0
- package/dist/chunk-FE6VCE4K.js +5030 -0
- package/dist/chunk-FLWD6GRR.js +1372 -0
- package/dist/chunk-FQBFWJBS.mjs +110 -0
- package/dist/chunk-FXVJ2HFU.js +26 -0
- package/dist/chunk-FZMQMQBW.js +312 -0
- package/dist/chunk-G3EEC44R.js +53 -0
- package/dist/{chunk-KG3WT4PR.mjs → chunk-GCKWKLZF.mjs} +73 -104
- package/dist/chunk-GCX7TY4D.mjs +6826 -0
- package/dist/chunk-GDB6TCSD.js +450 -0
- package/dist/chunk-GDCV4IWO.mjs +21 -0
- package/dist/chunk-GDZT5LZ5.js +170 -0
- package/dist/chunk-GHPUYD4I.mjs +213 -0
- package/dist/chunk-GHS6MIL6.mjs +1432 -0
- package/dist/chunk-GPS2THCL.mjs +11 -0
- package/dist/{chunk-EV2EVOYS.js → chunk-GTJWQAGU.js} +31 -42
- package/dist/chunk-GVTI6UJQ.mjs +130 -0
- package/dist/chunk-GXKI64OT.mjs +1138 -0
- package/dist/chunk-GYDYF2WX.js +275 -0
- package/dist/chunk-GYLP6UG4.mjs +705 -0
- package/dist/chunk-H3OQKK6X.js +1158 -0
- package/dist/chunk-H5DFSCJ6.js +40 -0
- package/dist/chunk-HAGEIC2L.mjs +186 -0
- package/dist/chunk-HAJ4JRFO.js +293 -0
- package/dist/chunk-HDR72GB6.js +188 -0
- package/dist/chunk-HF5HPS4T.mjs +40 -0
- package/dist/chunk-HK6LOFDS.js +218 -0
- package/dist/chunk-HMWYTXCY.mjs +143 -0
- package/dist/chunk-HPCSRCMA.js +89 -0
- package/dist/chunk-HSEO6TPU.js +247 -0
- package/dist/chunk-I5FOHCLH.js +132 -0
- package/dist/chunk-IDLW4NWA.mjs +85 -0
- package/dist/chunk-IIDZ5WUX.js +61 -0
- package/dist/chunk-IR74FJHU.js +2332 -0
- package/dist/chunk-IRVFYAKP.mjs +100 -0
- package/dist/{chunk-XBL3TMPC.mjs → chunk-IZDWAL53.mjs} +1795 -3287
- package/dist/chunk-J2KZXIU3.js +51 -0
- package/dist/chunk-J2U6PJSO.js +91 -0
- package/dist/chunk-J5AJNY2N.js +283 -0
- package/dist/chunk-J6KQZ4FO.mjs +821 -0
- package/dist/{chunk-OWW5GUSB.js → chunk-JGBCIKJV.js} +7 -6
- package/dist/chunk-JKGTBMU7.mjs +25 -0
- package/dist/chunk-JR3TNEQC.js +422 -0
- package/dist/chunk-JURRXY2J.mjs +29 -0
- package/dist/chunk-K3HW5I2A.mjs +317 -0
- package/dist/chunk-K46SMZ66.mjs +103 -0
- package/dist/chunk-K4UDGE3Z.mjs +6 -0
- package/dist/chunk-KDQOR4QQ.mjs +350 -0
- package/dist/chunk-KDTVOLHI.mjs +288 -0
- package/dist/chunk-KGHJH5KJ.mjs +35 -0
- package/dist/chunk-KIZOA5LX.mjs +140 -0
- package/dist/chunk-KK6HYVBI.mjs +242 -0
- package/dist/chunk-KMKWGXMK.js +856 -0
- package/dist/chunk-KPA6K5IB.js +80 -0
- package/dist/chunk-KU7O4IXU.mjs +260 -0
- package/dist/chunk-KVFNRJOR.mjs +11142 -0
- package/dist/chunk-KZJRSXHK.js +2432 -0
- package/dist/chunk-LHWPRUJL.js +79 -0
- package/dist/chunk-LIV3KXJG.mjs +369 -0
- package/dist/chunk-LKV4LACG.js +21 -0
- package/dist/chunk-LUY45X3U.mjs +263 -0
- package/dist/chunk-LYEZZEEF.mjs +17 -0
- package/dist/chunk-M5EXQZYY.mjs +1519 -0
- package/dist/chunk-ME6HGG4I.mjs +1338 -0
- package/dist/chunk-MEXP6DA6.js +31 -0
- package/dist/chunk-MG52AW3H.js +902 -0
- package/dist/chunk-MIPO6F72.js +334 -0
- package/dist/{chunk-5QW7CQBA.js → chunk-MKIJQL5Q.js} +211 -321
- package/dist/chunk-MN3YETVN.mjs +17 -0
- package/dist/chunk-MOBSBXVE.mjs +2391 -0
- package/dist/chunk-MOMOZEUM.mjs +88 -0
- package/dist/chunk-MRFUNRAP.js +62 -0
- package/dist/chunk-MTIHEW2M.js +433 -0
- package/dist/chunk-N4RGGDEL.mjs +73 -0
- package/dist/chunk-NH654HAT.js +10 -0
- package/dist/chunk-NHJUGZUR.mjs +253 -0
- package/dist/chunk-NMQT4HG3.mjs +757 -0
- package/dist/chunk-NPSYB6DC.mjs +906 -0
- package/dist/chunk-NW2GPMSO.js +857 -0
- package/dist/chunk-NXKQOQ6L.js +76 -0
- package/dist/chunk-NXLAZIJZ.js +309 -0
- package/dist/chunk-NYWNA5CF.js +148 -0
- package/dist/chunk-NZTKLY2W.js +1442 -0
- package/dist/chunk-O2ICABUD.js +36 -0
- package/dist/chunk-OIVVQQ22.js +862 -0
- package/dist/chunk-OKC2B4O3.mjs +312 -0
- package/dist/chunk-OLWFPDBK.js +2220 -0
- package/dist/chunk-OMTVH334.js +3779 -0
- package/dist/chunk-OQRVEM56.mjs +362 -0
- package/dist/chunk-OXMIBOD4.js +337 -0
- package/dist/chunk-PBL6YL5L.mjs +288 -0
- package/dist/chunk-PDOELNNQ.js +97 -0
- package/dist/chunk-PDQJY2GZ.js +136 -0
- package/dist/chunk-PKOZXD2Q.js +1274 -0
- package/dist/chunk-PPF2BYFL.mjs +2191 -0
- package/dist/chunk-PQTQKNKD.js +539 -0
- package/dist/chunk-PRSR4FAV.mjs +81 -0
- package/dist/chunk-PTRNO5UD.js +95 -0
- package/dist/chunk-Q2Y3VMKH.js +2000 -0
- package/dist/chunk-QCZOE65N.js +96 -0
- package/dist/chunk-QDYFLATW.mjs +52 -0
- package/dist/chunk-QQABGCMM.js +22 -0
- package/dist/chunk-QS6TRHMR.js +345 -0
- package/dist/chunk-R56P64LB.mjs +208 -0
- package/dist/chunk-RCQ2MPBV.js +428 -0
- package/dist/chunk-RFVRPYR2.mjs +856 -0
- package/dist/chunk-RKBLPGPV.js +11521 -0
- package/dist/chunk-RM2V4IND.mjs +327 -0
- package/dist/chunk-RQXN5A34.mjs +613 -0
- package/dist/chunk-RUVGVNOF.mjs +2687 -0
- package/dist/chunk-SAFJIGYB.mjs +165 -0
- package/dist/chunk-SKQFLBDD.js +263 -0
- package/dist/chunk-SMK6JU2F.mjs +2092 -0
- package/dist/{chunk-UVRPC2P7.js → chunk-SNNEOS5Z.js} +1984 -3476
- package/dist/chunk-SPCRQ6NO.mjs +1246 -0
- package/dist/chunk-SWX4SALA.mjs +19 -0
- package/dist/{chunk-JVODCGFP.mjs → chunk-SYEO2WV4.mjs} +128 -238
- package/dist/chunk-T2QQMX2N.js +10 -0
- package/dist/chunk-T3AFF3L7.mjs +57 -0
- package/dist/chunk-T6Z2EXYL.js +712 -0
- package/dist/chunk-T7LOXGYX.js +118 -0
- package/dist/chunk-TJCAE7RC.mjs +1315 -0
- package/dist/chunk-TJI3K6RP.js +137 -0
- package/dist/chunk-TL2SVO4P.mjs +55 -0
- package/dist/chunk-TM63CYGN.mjs +399 -0
- package/dist/chunk-TU5RYTYU.mjs +13 -0
- package/dist/chunk-TVJZ4GPS.js +1553 -0
- package/dist/chunk-TWM6DLYF.js +371 -0
- package/dist/chunk-U63OC4TQ.js +30 -0
- package/dist/{chunk-L5GKVQVJ.js → chunk-U6BVSJZ6.js} +25 -57
- package/dist/chunk-U6UVWEAK.mjs +792 -0
- package/dist/chunk-UCEPNO6N.mjs +11048 -0
- package/dist/{chunk-ANT574FD.js → chunk-UCR5HRYM.js} +74 -105
- package/dist/chunk-UG5BTOTF.mjs +334 -0
- package/dist/chunk-UGH37BQW.mjs +157 -0
- package/dist/chunk-V7ZRH3PY.mjs +271 -0
- package/dist/chunk-VBGHBL3E.mjs +1394 -0
- package/dist/chunk-VRBDAS5I.js +920 -0
- package/dist/chunk-VVE3Y76O.js +230 -0
- package/dist/chunk-W65JIRI4.mjs +1182 -0
- package/dist/chunk-WHYKAT7G.js +62 -0
- package/dist/{chunk-YOIVZ6OA.mjs → chunk-WIZRUIZB.mjs} +25 -57
- package/dist/chunk-WKWTDZS7.js +385 -0
- package/dist/chunk-WLMINRC4.mjs +78 -0
- package/dist/chunk-WOF3AD3J.js +22 -0
- package/dist/chunk-WWKMOA76.js +1262 -0
- package/dist/chunk-X5A5FOWW.js +615 -0
- package/dist/chunk-X6CN6KQF.mjs +192 -0
- package/dist/chunk-XD2PMH46.mjs +517 -0
- package/dist/chunk-XJA2NGTI.mjs +88 -0
- package/dist/chunk-XJIHN3BY.mjs +8 -0
- package/dist/chunk-XK6UDWJS.js +203 -0
- package/dist/chunk-XPG3N5CF.mjs +415 -0
- package/dist/chunk-XVZ2NKSU.mjs +74 -0
- package/dist/chunk-XYP45OLE.js +117 -0
- package/dist/chunk-XZSDGZX6.mjs +301 -0
- package/dist/chunk-Y2EMGN4T.mjs +120 -0
- package/dist/chunk-Y3XWP5XW.mjs +298 -0
- package/dist/chunk-Y4K22JL6.js +228 -0
- package/dist/chunk-Y65LXQGA.mjs +3164 -0
- package/dist/chunk-Y66WVMO5.mjs +87 -0
- package/dist/chunk-Y7JWLB25.mjs +7280 -0
- package/dist/chunk-YCDXAJKU.js +175 -0
- package/dist/chunk-YRDQCCIS.js +152 -0
- package/dist/chunk-YV52DGSA.js +111 -0
- package/dist/chunk-YXGZQPUD.js +94 -0
- package/dist/chunk-Z3A3AFVU.mjs +102 -0
- package/dist/chunk-ZCY6YKKP.mjs +475 -0
- package/dist/chunk-ZEQHXVU5.js +215 -0
- package/dist/chunk-ZF7JCXCI.js +284 -0
- package/dist/chunk-ZJBRUH6V.js +29 -0
- package/dist/chunk-ZMIL4ZOA.js +365 -0
- package/dist/chunk-ZR5ULMN2.mjs +337 -0
- package/dist/chunk-ZXREOYOW.js +87 -0
- package/dist/{client-BSP9U1O1.d.mts → client-CX_WR0-J.d.mts} +2 -2
- package/dist/client-Dytx_ZTC.d.ts +230 -0
- package/dist/{client-B878xeAP.d.ts → client-dqOhP9Nc.d.ts} +2 -2
- package/dist/client-hTKbCuhG.d.mts +230 -0
- package/dist/clock-B-UAjkKa.d.mts +5 -0
- package/dist/clock-B-UAjkKa.d.ts +5 -0
- package/dist/config-BlXQluJR.d.mts +36 -0
- package/dist/config-BlXQluJR.d.ts +36 -0
- package/dist/courier-Cnn-edJ4.d.ts +95 -0
- package/dist/courier-FmGfkvIN.d.mts +95 -0
- package/dist/crowd-DdHFbqKK.d.ts +186 -0
- package/dist/crowd-hOVSAmA3.d.mts +186 -0
- package/dist/danfo-BEBapFlX.d.mts +146 -0
- package/dist/danfo-UQ_PTIIx.d.ts +146 -0
- package/dist/{elements-Bty6Qs_N.d.mts → elements-DdsRig-2.d.mts} +1548 -257
- package/dist/{elements-Bty6Qs_N.d.ts → elements-DdsRig-2.d.ts} +1548 -257
- package/dist/engines/godot.d.mts +56 -0
- package/dist/engines/godot.d.ts +56 -0
- package/dist/engines/godot.js +28 -0
- package/dist/engines/godot.mjs +3 -0
- package/dist/engines/wasm.d.mts +11 -0
- package/dist/engines/wasm.d.ts +11 -0
- package/dist/engines/wasm.js +178 -0
- package/dist/engines/wasm.mjs +176 -0
- package/dist/fallback-CrG_lTFk.d.mts +270 -0
- package/dist/fallback-CrG_lTFk.d.ts +270 -0
- package/dist/fallback-KDB4Y2CE.mjs +6 -0
- package/dist/fallback-Y26TQENE.js +19 -0
- package/dist/features-CZB4rmcD.d.mts +118 -0
- package/dist/features-CZB4rmcD.d.ts +118 -0
- package/dist/fit-BWiE7rgA.d.mts +44 -0
- package/dist/fit-DK0oT7zO.d.ts +44 -0
- package/dist/five-a-side-Bv1AOUy3.d.mts +115 -0
- package/dist/five-a-side-EC51SJY1.d.ts +115 -0
- package/dist/fluid-ARr0qUIL.d.ts +939 -0
- package/dist/fluid-DLlEj2cs.d.mts +939 -0
- package/dist/game/conformance.d.mts +84 -0
- package/dist/game/conformance.d.ts +84 -0
- package/dist/game/conformance.js +1025 -0
- package/dist/game/conformance.mjs +994 -0
- package/dist/game/heap.d.mts +40 -0
- package/dist/game/heap.d.ts +40 -0
- package/dist/game/heap.js +48 -0
- package/dist/game/heap.mjs +7 -0
- package/dist/game/kit/canvas.d.mts +240 -0
- package/dist/game/kit/canvas.d.ts +240 -0
- package/dist/game/kit/canvas.js +3566 -0
- package/dist/game/kit/canvas.mjs +1039 -0
- package/dist/game/kit/courier.d.mts +17 -0
- package/dist/game/kit/courier.d.ts +17 -0
- package/dist/game/kit/courier.js +66 -0
- package/dist/game/kit/courier.mjs +49 -0
- package/dist/game/kit/danfo.d.mts +11 -0
- package/dist/game/kit/danfo.d.ts +11 -0
- package/dist/game/kit/danfo.js +109 -0
- package/dist/game/kit/danfo.mjs +44 -0
- package/dist/game/kit/engine.d.mts +29 -0
- package/dist/game/kit/engine.d.ts +29 -0
- package/dist/game/kit/engine.js +183 -0
- package/dist/game/kit/engine.mjs +30 -0
- package/dist/game/kit/five-a-side.d.mts +11 -0
- package/dist/game/kit/five-a-side.d.ts +11 -0
- package/dist/game/kit/five-a-side.js +86 -0
- package/dist/game/kit/five-a-side.mjs +41 -0
- package/dist/game/kit/frontier.d.mts +344 -0
- package/dist/game/kit/frontier.d.ts +344 -0
- package/dist/game/kit/frontier.js +435 -0
- package/dist/game/kit/frontier.mjs +14 -0
- package/dist/game/kit/genesis.d.mts +752 -0
- package/dist/game/kit/genesis.d.ts +752 -0
- package/dist/game/kit/genesis.js +380 -0
- package/dist/game/kit/genesis.mjs +15 -0
- package/dist/game/kit/ludo.d.mts +15 -0
- package/dist/game/kit/ludo.d.ts +15 -0
- package/dist/game/kit/ludo.js +87 -0
- package/dist/game/kit/ludo.mjs +42 -0
- package/dist/game/kit/runner.d.mts +12 -0
- package/dist/game/kit/runner.d.ts +12 -0
- package/dist/game/kit/runner.js +83 -0
- package/dist/game/kit/runner.mjs +46 -0
- package/dist/game/kit/shootout.d.mts +13 -0
- package/dist/game/kit/shootout.d.ts +13 -0
- package/dist/game/kit/shootout.js +122 -0
- package/dist/game/kit/shootout.mjs +57 -0
- package/dist/game/kit/slots.d.mts +392 -0
- package/dist/game/kit/slots.d.ts +392 -0
- package/dist/game/kit/slots.js +215 -0
- package/dist/game/kit/slots.mjs +6 -0
- package/dist/game/kit/tycoon.d.mts +16 -0
- package/dist/game/kit/tycoon.d.ts +16 -0
- package/dist/game/kit/tycoon.js +145 -0
- package/dist/game/kit/tycoon.mjs +44 -0
- package/dist/game/kit/word.d.mts +11 -0
- package/dist/game/kit/word.d.ts +11 -0
- package/dist/game/kit/word.js +78 -0
- package/dist/game/kit/word.mjs +41 -0
- package/dist/game/kit/worlds.d.mts +18 -0
- package/dist/game/kit/worlds.d.ts +18 -0
- package/dist/game/kit/worlds.js +74 -0
- package/dist/game/kit/worlds.mjs +49 -0
- package/dist/game/kit.d.mts +53 -0
- package/dist/game/kit.d.ts +53 -0
- package/dist/game/kit.js +2610 -0
- package/dist/game/kit.mjs +101 -0
- package/dist/game/prepared.d.mts +14 -0
- package/dist/game/prepared.d.ts +14 -0
- package/dist/game/prepared.js +81 -0
- package/dist/game/prepared.mjs +32 -0
- package/dist/game-Bx8onkhX.d.mts +1451 -0
- package/dist/game-fgQy2YIm.d.ts +1451 -0
- package/dist/game-theme-CBTw1b_d.d.mts +35 -0
- package/dist/game-theme-Dg-ict5A.d.ts +35 -0
- package/dist/game.d.mts +3546 -0
- package/dist/game.d.ts +3546 -0
- package/dist/game.js +4455 -0
- package/dist/game.mjs +50 -0
- package/dist/graphics-C6YjWYvP.d.ts +5 -0
- package/dist/graphics-Dk2yQnYN.d.mts +5 -0
- package/dist/guest-DrsA00XD.d.mts +732 -0
- package/dist/guest-wIdfoT05.d.ts +732 -0
- package/dist/hit-stop-BKkVwTq7.d.mts +43 -0
- package/dist/hit-stop-D-8pPYnM.d.ts +43 -0
- package/dist/hot-Crn9XpHJ.d.ts +29 -0
- package/dist/hot-DH3nOhQD.d.mts +29 -0
- package/dist/{index-CQStGb3B.d.mts → index-6gkHMGAq.d.mts} +2 -2
- package/dist/index-B8ybCKJI.d.ts +41 -0
- package/dist/{index-DJwXmoaP.d.ts → index-B98Xac8e.d.ts} +2 -2
- package/dist/{index-B7oA_1XI.d.ts → index-B_ByTtIT.d.ts} +2 -2
- package/dist/index-DHjNHb1c.d.mts +41 -0
- package/dist/{index-DhUSTAhT.d.mts → index-DbAN_VQE.d.mts} +2 -2
- package/dist/index.d.mts +134 -24
- package/dist/index.d.ts +134 -24
- package/dist/index.js +407 -248
- package/dist/index.mjs +184 -58
- package/dist/interactives-authoring.d.mts +231 -0
- package/dist/interactives-authoring.d.ts +231 -0
- package/dist/interactives-authoring.js +1743 -0
- package/dist/interactives-authoring.mjs +1704 -0
- package/dist/interactives-canvas.global.js +148 -0
- package/dist/interactives-guest.d.mts +20 -0
- package/dist/interactives-guest.d.ts +20 -0
- package/dist/interactives-guest.js +63 -0
- package/dist/interactives-guest.json +1 -0
- package/dist/interactives-guest.mjs +61 -0
- package/dist/interactives-jsc.global.js +9357 -0
- package/dist/interactives-meters.d.mts +93 -0
- package/dist/interactives-meters.d.ts +93 -0
- package/dist/interactives-meters.js +252 -0
- package/dist/interactives-meters.mjs +68 -0
- package/dist/interactives-production.d.mts +430 -0
- package/dist/interactives-production.d.ts +430 -0
- package/dist/interactives-production.js +1231 -0
- package/dist/interactives-production.mjs +1170 -0
- package/dist/interactives-record.d.mts +112 -0
- package/dist/interactives-record.d.ts +112 -0
- package/dist/interactives-record.js +302 -0
- package/dist/interactives-record.mjs +295 -0
- package/dist/interactives-runtime.d.mts +61 -0
- package/dist/interactives-runtime.d.ts +61 -0
- package/dist/interactives-runtime.js +442 -0
- package/dist/interactives-runtime.mjs +25 -0
- package/dist/interactives-studio-kernel.global.js +1 -0
- package/dist/interactives-studio.d.mts +806 -0
- package/dist/interactives-studio.d.ts +806 -0
- package/dist/interactives-studio.js +5741 -0
- package/dist/interactives-studio.mjs +5651 -0
- package/dist/interactives-tick.d.mts +90 -0
- package/dist/interactives-tick.d.ts +90 -0
- package/dist/interactives-tick.js +203 -0
- package/dist/interactives-tick.mjs +6 -0
- package/dist/interactives-web.d.mts +762 -0
- package/dist/interactives-web.d.ts +762 -0
- package/dist/interactives-web.js +5000 -0
- package/dist/interactives-web.mjs +4628 -0
- package/dist/interactives.d.mts +2430 -0
- package/dist/interactives.d.ts +2430 -0
- package/dist/interactives.js +5723 -0
- package/dist/interactives.mjs +4333 -0
- package/dist/juice-CoHxlpKA.d.ts +42 -0
- package/dist/juice-DQztFS43.d.mts +42 -0
- package/dist/launch-T2f4_Di4.d.mts +151 -0
- package/dist/launch-d6oreMzR.d.ts +151 -0
- package/dist/library-DXYaMFhi.d.mts +69 -0
- package/dist/library-DXYaMFhi.d.ts +69 -0
- package/dist/link-BUTqGmyi.d.mts +38 -0
- package/dist/link-BUTqGmyi.d.ts +38 -0
- package/dist/lint.js +104 -204
- package/dist/lint.mjs +103 -203
- package/dist/local-D8_I6UeL.d.mts +6967 -0
- package/dist/local-VZkqsCzR.d.ts +6967 -0
- package/dist/lockstep-BLf6dglI.d.mts +321 -0
- package/dist/lockstep-D50Ia0JW.d.ts +321 -0
- package/dist/ludo-B8ClkDqr.d.ts +205 -0
- package/dist/ludo-BOuohQ-M.d.mts +205 -0
- package/dist/mock/cli.mjs +200 -56
- package/dist/mock/library.js +200 -56
- package/dist/mock/library.mjs +200 -56
- package/dist/mock/msw.js +200 -56
- package/dist/mock/msw.mjs +200 -56
- package/dist/native-BodxSh03.d.mts +16 -0
- package/dist/native-DUHMT8gA.d.ts +16 -0
- package/dist/network-ZXLD7l1b.d.mts +19 -0
- package/dist/network-ZXLD7l1b.d.ts +19 -0
- package/dist/online-XeymeM9s.d.ts +381 -0
- package/dist/online-d7W_Al9a.d.mts +381 -0
- package/dist/params-DxFb5G_U.d.mts +155 -0
- package/dist/params-DxFb5G_U.d.ts +155 -0
- package/dist/play-BRRlfLhX.d.ts +940 -0
- package/dist/play-ClrMd_e8.d.mts +940 -0
- package/dist/policy-CCw8tXLm.d.mts +3078 -0
- package/dist/policy-CMqOSQIu.d.ts +3078 -0
- package/dist/ports-B_0v_P3A.d.mts +13 -0
- package/dist/ports-CGU_3e_0.d.ts +13 -0
- package/dist/prefetch-BHnicOQj.d.ts +117 -0
- package/dist/prefetch-CBXgYacv.d.mts +117 -0
- package/dist/{price-CSztR02F.d.mts → price-BOzexBww.d.mts} +1 -1
- package/dist/{price-C_vasx9A.d.ts → price-C1h9sPxE.d.ts} +1 -1
- package/dist/protocol-C8qbpUbT.d.mts +242 -0
- package/dist/protocol-C8qbpUbT.d.ts +242 -0
- package/dist/rapier-AZHT4YI7.js +7886 -0
- package/dist/rapier-ODEPCQA6.mjs +7792 -0
- package/dist/react.d.mts +157 -15
- package/dist/react.d.ts +157 -15
- package/dist/react.js +5564 -5904
- package/dist/react.mjs +5451 -5808
- package/dist/runner-CQcLL7By.d.ts +189 -0
- package/dist/runner-D46Yj-wE.d.mts +189 -0
- package/dist/runtime-BRWfkf_q.d.mts +51 -0
- package/dist/runtime-DyuBMkKM.d.ts +51 -0
- package/dist/scheduling-D2ajXpMC.d.ts +224 -0
- package/dist/scheduling-DSRbbaZb.d.mts +224 -0
- package/dist/schema-BrWxzKp6.d.mts +63 -0
- package/dist/schema-BrWxzKp6.d.ts +63 -0
- package/dist/server/evict.js +34 -37
- package/dist/server/evict.mjs +34 -37
- package/dist/server/tanstack.d.mts +49 -3
- package/dist/server/tanstack.d.ts +49 -3
- package/dist/server/tanstack.js +169 -117
- package/dist/server/tanstack.mjs +166 -118
- package/dist/{server-Dckg4Vdr.d.ts → server-D29IIuDV.d.ts} +136 -130
- package/dist/{server-B6dW7-Lj.d.mts → server-DQMWPnc8.d.mts} +136 -130
- package/dist/server.d.mts +45 -5
- package/dist/server.d.ts +45 -5
- package/dist/server.js +171 -227
- package/dist/server.mjs +165 -225
- package/dist/session-grant-CJ27DwrT.d.mts +19 -0
- package/dist/session-grant-CJ27DwrT.d.ts +19 -0
- package/dist/shootout-BJZeX6FG.d.ts +140 -0
- package/dist/shootout-tcZd1Rxt.d.mts +140 -0
- package/dist/state-replica-stMtdkVD.d.mts +42 -0
- package/dist/state-replica-stMtdkVD.d.ts +42 -0
- package/dist/studio-CowqWqez.d.mts +14 -0
- package/dist/studio-CowqWqez.d.ts +14 -0
- package/dist/styles.css +1 -1
- package/dist/template-AhCdB1kW.d.mts +190 -0
- package/dist/template-BkEGVTQj.d.ts +190 -0
- package/dist/terrain-BMxEc6Oc.d.ts +429 -0
- package/dist/terrain-C-XC1Oui.d.mts +429 -0
- package/dist/testing/msw.d.mts +28 -4
- package/dist/testing/msw.d.ts +28 -4
- package/dist/testing/msw.js +15 -21
- package/dist/testing/msw.mjs +15 -21
- package/dist/testing/suite.d.mts +6 -5
- package/dist/testing/suite.d.ts +6 -5
- package/dist/testing/suite.js +89 -124
- package/dist/testing/suite.mjs +81 -116
- package/dist/testing.d.mts +27 -1227
- package/dist/testing.d.ts +27 -1227
- package/dist/testing.js +127 -131
- package/dist/testing.mjs +19 -23
- package/dist/tick-transport-C8QEh8Uw.d.mts +50 -0
- package/dist/tick-transport-UjHY3xK1.d.ts +50 -0
- package/dist/timeline-protocol-hp6e8zFB.d.mts +47 -0
- package/dist/timeline-protocol-hp6e8zFB.d.ts +47 -0
- package/dist/tokens-DhanQRQS.d.mts +21 -0
- package/dist/tokens-K8yxwd6G.d.ts +21 -0
- package/dist/tree-C-Io2Hbx.d.mts +35 -0
- package/dist/tree-CP_qSW4H.d.ts +35 -0
- package/dist/tycoon-B5KHk2Xx.d.mts +255 -0
- package/dist/tycoon-hmHo-3HX.d.ts +255 -0
- package/dist/types-BQkxPwZP.d.mts +219 -0
- package/dist/types-D_f6UUxM.d.ts +219 -0
- package/dist/ui-DwHicuFv.d.mts +563 -0
- package/dist/ui-hi7S2YcH.d.ts +563 -0
- package/dist/{sign-in-DQlIdqsi.d.mts → url-52ndUruG.d.mts} +15 -1
- package/dist/{sign-in-DQlIdqsi.d.ts → url-52ndUruG.d.ts} +15 -1
- package/dist/utils.d.mts +3 -3
- package/dist/utils.d.ts +3 -3
- package/dist/utils.js +37 -37
- package/dist/utils.mjs +4 -4
- package/dist/vars-Dc_PrhBK.d.mts +511 -0
- package/dist/vars-Dc_PrhBK.d.ts +511 -0
- package/dist/vm-IUARFFAI.mjs +63 -0
- package/dist/vm-N7L6MGGH.js +65 -0
- package/dist/weave-delivery-CW-Kstut.d.mts +360 -0
- package/dist/weave-delivery-CW-Kstut.d.ts +360 -0
- package/dist/web-Dss74a7v.d.ts +883 -0
- package/dist/web-f9ZQPoyw.d.mts +883 -0
- package/dist/web-transport-C7MkBL0a.d.ts +19 -0
- package/dist/web-transport-aYEqXMd9.d.mts +19 -0
- package/dist/weight-CPGjsgjV.d.ts +92 -0
- package/dist/weight-tF1ODR1p.d.mts +92 -0
- package/dist/word-BcX9Jcmv.d.mts +70 -0
- package/dist/word-C7sVPLHm.d.ts +70 -0
- package/dist/world-PvILHDR1.d.ts +2285 -0
- package/dist/world-qekkXjJv.d.mts +2285 -0
- package/dist/worlds-Br2Pb0Cs.d.ts +109 -0
- package/dist/worlds-D5ydYr7d.d.mts +109 -0
- package/engines/c/cimplify.h +108 -0
- package/engines/c/cimplify.lib.js +11 -0
- package/engines/godot/addons/cimplify/cimplify.gd +97 -0
- package/engines/rust/interactives-ctx/Cargo.toml +9 -0
- package/engines/rust/interactives-ctx/src/lib.rs +189 -0
- package/package.json +189 -3
- package/vendor/rapier3d-compat/LICENSE +201 -0
- package/vendor/rapier3d-compat/PATCHES.md +61 -0
- package/dist/chunk-2P4KXFB6.js +0 -274
- package/dist/chunk-3G6RQLXK.mjs +0 -21
- package/dist/chunk-3V4DVXV3.mjs +0 -254
- package/dist/chunk-EDK3LNM6.js +0 -2436
- package/dist/chunk-F7J3HK27.js +0 -4549
- package/dist/chunk-U4MW6PYU.mjs +0 -23
- package/dist/chunk-XREIZ56K.js +0 -26
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
import { K as KernelMeta } from './library-DXYaMFhi.mjs';
|
|
2
|
+
|
|
3
|
+
interface Inst {
|
|
4
|
+
readonly op: number;
|
|
5
|
+
readonly dst: number;
|
|
6
|
+
readonly a: number;
|
|
7
|
+
readonly b: number;
|
|
8
|
+
readonly c: number;
|
|
9
|
+
}
|
|
10
|
+
interface Group {
|
|
11
|
+
readonly isDefault: boolean;
|
|
12
|
+
readonly value: number;
|
|
13
|
+
readonly start: number;
|
|
14
|
+
readonly end: number;
|
|
15
|
+
}
|
|
16
|
+
interface VmProgram {
|
|
17
|
+
readonly registers: number;
|
|
18
|
+
readonly slots: readonly {
|
|
19
|
+
readonly kind: number;
|
|
20
|
+
readonly neighbour: boolean;
|
|
21
|
+
readonly scratch: boolean;
|
|
22
|
+
readonly spawn: boolean;
|
|
23
|
+
readonly indexed?: boolean;
|
|
24
|
+
readonly write?: boolean;
|
|
25
|
+
readonly word?: number;
|
|
26
|
+
}[];
|
|
27
|
+
readonly calls: readonly number[];
|
|
28
|
+
readonly cross: readonly number[];
|
|
29
|
+
readonly args: number;
|
|
30
|
+
readonly loops: number;
|
|
31
|
+
readonly uniforms: Uint32Array;
|
|
32
|
+
readonly code: readonly Inst[];
|
|
33
|
+
readonly groups: readonly Group[];
|
|
34
|
+
readonly state: number;
|
|
35
|
+
readonly position: readonly [number, number, number] | null;
|
|
36
|
+
readonly radius: number;
|
|
37
|
+
readonly channels: readonly number[];
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
declare const LOCKSTEP_STORAGE_U64_LO = 4;
|
|
41
|
+
declare const LOCKSTEP_STORAGE_U64_HI = 5;
|
|
42
|
+
declare const LOCKSTEP_TABLE_ALIGN = 8;
|
|
43
|
+
type LockstepColumnType = "f32" | "i32" | "u32" | "f64" | "vec2" | "vec3";
|
|
44
|
+
type LockstepSchema = Readonly<Record<string, LockstepColumnType>>;
|
|
45
|
+
type ColumnArray = Float32Array | Int32Array | Uint32Array | Float64Array;
|
|
46
|
+
interface LockstepKernelHost {
|
|
47
|
+
load(program: Uint8Array): number;
|
|
48
|
+
run(kernel: number, buffer: ArrayBufferLike, columns: Uint32Array, count: number, rows: number, args: Uint32Array): number;
|
|
49
|
+
}
|
|
50
|
+
declare function setLockstepKernelHost(host: LockstepKernelHost | null): void;
|
|
51
|
+
declare function lockstepKernelHost(): LockstepKernelHost | null;
|
|
52
|
+
declare class LockstepKernel<E = unknown, A extends unknown[] = unknown[]> {
|
|
53
|
+
readonly fn: (entity: E, ...args: A) => void;
|
|
54
|
+
readonly name: string;
|
|
55
|
+
readonly meta: KernelMeta | null;
|
|
56
|
+
readonly program: Uint8Array | null;
|
|
57
|
+
readonly parsed: VmProgram | null;
|
|
58
|
+
readonly args: Uint32Array;
|
|
59
|
+
readonly floats: Float32Array;
|
|
60
|
+
readonly transcendental: boolean;
|
|
61
|
+
hostId: number;
|
|
62
|
+
hostOwner: LockstepKernelHost | null;
|
|
63
|
+
constructor(fn: (entity: E, ...args: A) => void, compiled: string | undefined);
|
|
64
|
+
get compiled(): boolean;
|
|
65
|
+
}
|
|
66
|
+
declare function lockstepKernel<E, A extends unknown[]>(fn: (entity: E, ...args: A) => void, compiled?: string): LockstepKernel<E, A>;
|
|
67
|
+
interface LockstepTableOptions {
|
|
68
|
+
readonly at: number;
|
|
69
|
+
readonly rows: number;
|
|
70
|
+
}
|
|
71
|
+
declare class LockstepTable<S extends LockstepSchema = LockstepSchema> {
|
|
72
|
+
readonly schema: S;
|
|
73
|
+
readonly at: number;
|
|
74
|
+
readonly rows: number;
|
|
75
|
+
readonly bytes: number;
|
|
76
|
+
private readonly keys;
|
|
77
|
+
private readonly offsets;
|
|
78
|
+
private readonly types;
|
|
79
|
+
private readonly index;
|
|
80
|
+
private readonly views;
|
|
81
|
+
private readonly referee;
|
|
82
|
+
private readonly entity;
|
|
83
|
+
private row;
|
|
84
|
+
constructor(schema: S, options: LockstepTableOptions);
|
|
85
|
+
get end(): number;
|
|
86
|
+
column(state: DataView, field: keyof S & string, component?: number): ColumnArray;
|
|
87
|
+
run<E, A extends unknown[]>(kernel: LockstepKernel<E, A>, state: DataView, count: number, ...args: A): void;
|
|
88
|
+
private viewsOf;
|
|
89
|
+
private bind;
|
|
90
|
+
private defineEntity;
|
|
91
|
+
private current;
|
|
92
|
+
private runSource;
|
|
93
|
+
}
|
|
94
|
+
declare function lockstepTable<S extends LockstepSchema>(schema: S, options: LockstepTableOptions): LockstepTable<S>;
|
|
95
|
+
|
|
96
|
+
type TickRoomErrorCode = "already_registered" | "missing_step" | "invalid_state_bytes" | "state_bytes_exceeded" | "invalid_state_field" | "invalid_seats" | "invalid_seat" | "invalid_step_rate" | "command_too_large" | "commands_full" | "invalid_decision" | "invalid_snapshot" | "invalid_lockstep";
|
|
97
|
+
declare class TickRoomError extends Error {
|
|
98
|
+
readonly code: TickRoomErrorCode;
|
|
99
|
+
constructor(code: TickRoomErrorCode, message: string);
|
|
100
|
+
}
|
|
101
|
+
interface TickRoomCtx {
|
|
102
|
+
readonly seats: number;
|
|
103
|
+
readonly alive: Uint8Array;
|
|
104
|
+
readonly x: Int32Array;
|
|
105
|
+
readonly y: Int32Array;
|
|
106
|
+
readonly z: Int32Array;
|
|
107
|
+
readonly yaw: Uint16Array;
|
|
108
|
+
readonly axisX: Int16Array;
|
|
109
|
+
readonly axisZ: Int16Array;
|
|
110
|
+
readonly buttons: Uint8Array;
|
|
111
|
+
readonly animation: Uint8Array;
|
|
112
|
+
readonly flags: Uint8Array;
|
|
113
|
+
readonly state: DataView;
|
|
114
|
+
readonly stateBytes: Uint8Array;
|
|
115
|
+
readonly tick: number;
|
|
116
|
+
readonly timeMs: number;
|
|
117
|
+
readonly commandCount: number;
|
|
118
|
+
random(): number;
|
|
119
|
+
eachCommand(visit: (slot: number, action: number, payload: Uint8Array) => void): void;
|
|
120
|
+
outbox(action: number, payload: Uint8Array): boolean;
|
|
121
|
+
log(...parts: unknown[]): void;
|
|
122
|
+
}
|
|
123
|
+
type TickStateType = "i8" | "u8" | "i16" | "u16" | "i32" | "u32" | "f32" | "f64";
|
|
124
|
+
type TickStateSchema = Readonly<Record<string, TickStateType>>;
|
|
125
|
+
interface TickStateOptions<S extends TickStateSchema> {
|
|
126
|
+
readonly replicated?: readonly (keyof S & string)[];
|
|
127
|
+
}
|
|
128
|
+
interface TickState<S extends TickStateSchema> {
|
|
129
|
+
readonly bytes: number;
|
|
130
|
+
readonly replicatedBytes: number;
|
|
131
|
+
readonly at: {
|
|
132
|
+
readonly [K in keyof S]: number;
|
|
133
|
+
};
|
|
134
|
+
readonly types: S;
|
|
135
|
+
get(view: DataView, field: keyof S): number;
|
|
136
|
+
set(view: DataView, field: keyof S, value: number): void;
|
|
137
|
+
}
|
|
138
|
+
declare function defineTickState<S extends TickStateSchema>(schema: S, options?: TickStateOptions<S>): TickState<S>;
|
|
139
|
+
interface TickRoomDefinition<S extends TickStateSchema = TickStateSchema> {
|
|
140
|
+
readonly stateBytes?: number;
|
|
141
|
+
readonly state?: TickState<S>;
|
|
142
|
+
readonly replicate?: boolean;
|
|
143
|
+
init?(ctx: TickRoomCtx): void;
|
|
144
|
+
step(ctx: TickRoomCtx): void;
|
|
145
|
+
}
|
|
146
|
+
interface TickRoom<S extends TickStateSchema = TickStateSchema> {
|
|
147
|
+
readonly stateBytes: number;
|
|
148
|
+
readonly replicatedBytes: number;
|
|
149
|
+
readonly state: TickState<S> | null;
|
|
150
|
+
readonly init: ((ctx: TickRoomCtx) => void) | null;
|
|
151
|
+
readonly step: (ctx: TickRoomCtx) => void;
|
|
152
|
+
readonly onTick: boolean;
|
|
153
|
+
}
|
|
154
|
+
declare function defineTickRoom<S extends TickStateSchema = TickStateSchema>(definition: TickRoomDefinition<S>): TickRoom<S>;
|
|
155
|
+
|
|
156
|
+
declare const LOCKSTEP_MAX_SEATS = 16;
|
|
157
|
+
declare const LOCKSTEP_WINDOW = 128;
|
|
158
|
+
declare const LOCKSTEP_INPUT_STRIDE = 4;
|
|
159
|
+
declare const LOCKSTEP_AXIS_X = 0;
|
|
160
|
+
declare const LOCKSTEP_AXIS_Z = 1;
|
|
161
|
+
declare const LOCKSTEP_BUTTONS = 2;
|
|
162
|
+
declare const LOCKSTEP_PRESENT = 3;
|
|
163
|
+
declare const LOCKSTEP_AXIS_LIMIT = 127;
|
|
164
|
+
declare const LOCKSTEP_INPUT_ACTION = 65025;
|
|
165
|
+
declare const LOCKSTEP_BATCH_BYTES: number;
|
|
166
|
+
declare const LOCKSTEP_CONFIG_TAG = 67;
|
|
167
|
+
declare const LOCKSTEP_CONFIG_HEADER_BYTES = 4;
|
|
168
|
+
declare const LOCKSTEP_CONFIG_MAX_WORDS = 8;
|
|
169
|
+
declare const LockstepRecord: {
|
|
170
|
+
readonly lobby: 1;
|
|
171
|
+
readonly start: 2;
|
|
172
|
+
readonly seedLow: 3;
|
|
173
|
+
readonly seedHigh: 4;
|
|
174
|
+
readonly check: 5;
|
|
175
|
+
readonly depart: 6;
|
|
176
|
+
readonly configLow: 7;
|
|
177
|
+
readonly configHigh: 8;
|
|
178
|
+
};
|
|
179
|
+
type LockstepRecordKind = (typeof LockstepRecord)[keyof typeof LockstepRecord];
|
|
180
|
+
declare const LockstepPhase: {
|
|
181
|
+
readonly waiting: 0;
|
|
182
|
+
readonly lobby: 1;
|
|
183
|
+
readonly running: 2;
|
|
184
|
+
};
|
|
185
|
+
type LockstepPhaseKind = (typeof LockstepPhase)[keyof typeof LockstepPhase];
|
|
186
|
+
declare const LOCKSTEP_REFEREE_BYTES: number;
|
|
187
|
+
interface LockstepRulesDefinition {
|
|
188
|
+
readonly seats: number;
|
|
189
|
+
readonly stateBytes: number;
|
|
190
|
+
readonly rateHz?: number;
|
|
191
|
+
readonly inputDelay?: number;
|
|
192
|
+
init(state: DataView, seed: number, humans: number): void;
|
|
193
|
+
step(state: DataView, inputs: Int16Array, tick: number): void;
|
|
194
|
+
}
|
|
195
|
+
interface LockstepRules {
|
|
196
|
+
readonly seats: number;
|
|
197
|
+
readonly stateBytes: number;
|
|
198
|
+
readonly rateHz: number;
|
|
199
|
+
readonly inputDelay: number;
|
|
200
|
+
init(state: DataView, seed: number, humans: number): void;
|
|
201
|
+
step(state: DataView, inputs: Int16Array, tick: number): void;
|
|
202
|
+
}
|
|
203
|
+
declare function defineLockstep(definition: LockstepRulesDefinition): LockstepRules;
|
|
204
|
+
declare function lockstepChecksum(bytes: Uint8Array): number;
|
|
205
|
+
declare function encodeLockstepConfig(words: ArrayLike<number>): Uint8Array;
|
|
206
|
+
declare function lockstepConfigHash(payload: Uint8Array, length?: number): number;
|
|
207
|
+
declare function quantiseLockstepAxis(value: number): number;
|
|
208
|
+
declare function unwrapTick16(low: number, near: number): number;
|
|
209
|
+
interface LockstepRoomOptions {
|
|
210
|
+
readonly minPlayers?: number;
|
|
211
|
+
readonly lobbySeconds?: number;
|
|
212
|
+
readonly stallSeconds?: number;
|
|
213
|
+
readonly configure?: (words: Int32Array) => LockstepRules | null;
|
|
214
|
+
}
|
|
215
|
+
declare function defineLockstepRoom(rules: LockstepRules, options?: LockstepRoomOptions): TickRoom;
|
|
216
|
+
declare function lockstepRefereeTick(stateBytes: Uint8Array): number;
|
|
217
|
+
declare function lockstepRefereeState(stateBytes: Uint8Array, rules: LockstepRules): Uint8Array;
|
|
218
|
+
declare function decodeLockstepRecord(animation: number, y: number, flags: number, out: LockstepRecordOut): boolean;
|
|
219
|
+
interface LockstepRecordOut {
|
|
220
|
+
kind: LockstepRecordKind;
|
|
221
|
+
seat: number;
|
|
222
|
+
value: number;
|
|
223
|
+
}
|
|
224
|
+
interface LockstepLink {
|
|
225
|
+
toReferee(payload: Uint8Array, length: number): void;
|
|
226
|
+
toPeers(payload: Uint8Array, length: number): void;
|
|
227
|
+
poll(session: LockstepSession): void;
|
|
228
|
+
}
|
|
229
|
+
interface LockstepStats {
|
|
230
|
+
rollbacks: number;
|
|
231
|
+
resimulatedTicks: number;
|
|
232
|
+
maxRollback: number;
|
|
233
|
+
stalls: number;
|
|
234
|
+
checks: number;
|
|
235
|
+
desyncs: number;
|
|
236
|
+
worldMisses: number;
|
|
237
|
+
}
|
|
238
|
+
interface LockstepWorld {
|
|
239
|
+
save(tick: number): unknown;
|
|
240
|
+
restore(tick: number): boolean;
|
|
241
|
+
clear(): void;
|
|
242
|
+
}
|
|
243
|
+
interface LockstepSessionOptions {
|
|
244
|
+
readonly seat: number;
|
|
245
|
+
readonly link?: LockstepLink | null;
|
|
246
|
+
readonly world?: LockstepWorld | null;
|
|
247
|
+
readonly maxLead?: number;
|
|
248
|
+
readonly stateBytes?: Uint8Array;
|
|
249
|
+
readonly config?: ArrayLike<number> | null;
|
|
250
|
+
}
|
|
251
|
+
declare class LockstepSession {
|
|
252
|
+
readonly rules: LockstepRules;
|
|
253
|
+
readonly seat: number;
|
|
254
|
+
readonly link: LockstepLink | null;
|
|
255
|
+
readonly maxLead: number;
|
|
256
|
+
readonly stateBytes: Uint8Array;
|
|
257
|
+
readonly state: DataView;
|
|
258
|
+
readonly inputs: Int16Array;
|
|
259
|
+
readonly world: LockstepWorld | null;
|
|
260
|
+
readonly stats: LockstepStats;
|
|
261
|
+
phase: LockstepPhaseKind;
|
|
262
|
+
tick: number;
|
|
263
|
+
confirmed: number;
|
|
264
|
+
refereeTick: number;
|
|
265
|
+
humans: number;
|
|
266
|
+
seed: number;
|
|
267
|
+
lobbyPlayers: number;
|
|
268
|
+
lobbySeconds: number;
|
|
269
|
+
configRefused: boolean;
|
|
270
|
+
readonly configHash: number | null;
|
|
271
|
+
private readonly config;
|
|
272
|
+
private configSendIn;
|
|
273
|
+
private pendingConfig;
|
|
274
|
+
private readonly seats;
|
|
275
|
+
private readonly delay;
|
|
276
|
+
private readonly inputTick;
|
|
277
|
+
private readonly input;
|
|
278
|
+
private readonly used;
|
|
279
|
+
private readonly stateTick;
|
|
280
|
+
private readonly states;
|
|
281
|
+
private readonly stateSlots;
|
|
282
|
+
private readonly lastKnownTick;
|
|
283
|
+
private readonly lastKnown;
|
|
284
|
+
private readonly depart;
|
|
285
|
+
private readonly peerAck;
|
|
286
|
+
private readonly out;
|
|
287
|
+
private rollbackFrom;
|
|
288
|
+
private startSeen;
|
|
289
|
+
private pendingHumans;
|
|
290
|
+
private pendingSeed;
|
|
291
|
+
private lastCheck;
|
|
292
|
+
private localX;
|
|
293
|
+
private localZ;
|
|
294
|
+
private localButtons;
|
|
295
|
+
constructor(rules: LockstepRules, options: LockstepSessionOptions);
|
|
296
|
+
get running(): boolean;
|
|
297
|
+
get lead(): number;
|
|
298
|
+
isHuman(seat: number): boolean;
|
|
299
|
+
departedAt(seat: number): number;
|
|
300
|
+
confirmedInputs(tick: number, out: Int16Array): boolean;
|
|
301
|
+
confirmedState(tick: number, out: Uint8Array): boolean;
|
|
302
|
+
begin(seed: number, humans: number): void;
|
|
303
|
+
setInput(axisX: number, axisZ: number, buttons: number): void;
|
|
304
|
+
advance(): boolean;
|
|
305
|
+
receive(view: DataView, offset: number, length: number): void;
|
|
306
|
+
record(kind: number, seat: number, value: number, tick16: number): void;
|
|
307
|
+
private offerConfig;
|
|
308
|
+
private active;
|
|
309
|
+
private markRollback;
|
|
310
|
+
private store;
|
|
311
|
+
private accept;
|
|
312
|
+
private known;
|
|
313
|
+
private simulate;
|
|
314
|
+
private save;
|
|
315
|
+
private resimulate;
|
|
316
|
+
private advanceFrontier;
|
|
317
|
+
private send;
|
|
318
|
+
private encode;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
export { lockstepKernelHost as $, type LockstepRules as A, type LockstepRulesDefinition as B, type LockstepSchema as C, LockstepSession as D, type LockstepSessionOptions as E, type LockstepStats as F, LockstepTable as G, type LockstepTableOptions as H, type LockstepWorld as I, type TickRoom as J, type TickRoomDefinition as K, LOCKSTEP_AXIS_LIMIT as L, TickRoomError as M, type TickRoomErrorCode as N, type TickState as O, type TickStateSchema as P, type TickStateType as Q, decodeLockstepRecord as R, defineLockstep as S, type TickRoomCtx as T, defineLockstepRoom as U, defineTickRoom as V, defineTickState as W, encodeLockstepConfig as X, lockstepChecksum as Y, lockstepConfigHash as Z, lockstepKernel as _, LOCKSTEP_AXIS_X as a, lockstepRefereeState as a0, lockstepRefereeTick as a1, lockstepTable as a2, quantiseLockstepAxis as a3, setLockstepKernelHost as a4, unwrapTick16 as a5, LOCKSTEP_AXIS_Z as b, LOCKSTEP_BATCH_BYTES as c, LOCKSTEP_BUTTONS as d, LOCKSTEP_CONFIG_HEADER_BYTES as e, LOCKSTEP_CONFIG_MAX_WORDS as f, LOCKSTEP_CONFIG_TAG as g, LOCKSTEP_INPUT_ACTION as h, LOCKSTEP_INPUT_STRIDE as i, LOCKSTEP_MAX_SEATS as j, LOCKSTEP_PRESENT as k, LOCKSTEP_REFEREE_BYTES as l, LOCKSTEP_STORAGE_U64_HI as m, LOCKSTEP_STORAGE_U64_LO as n, LOCKSTEP_TABLE_ALIGN as o, LOCKSTEP_WINDOW as p, type LockstepColumnType as q, LockstepKernel as r, type LockstepKernelHost as s, type LockstepLink as t, LockstepPhase as u, type LockstepPhaseKind as v, LockstepRecord as w, type LockstepRecordKind as x, type LockstepRecordOut as y, type LockstepRoomOptions as z };
|
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
import { K as KernelMeta } from './library-DXYaMFhi.js';
|
|
2
|
+
|
|
3
|
+
interface Inst {
|
|
4
|
+
readonly op: number;
|
|
5
|
+
readonly dst: number;
|
|
6
|
+
readonly a: number;
|
|
7
|
+
readonly b: number;
|
|
8
|
+
readonly c: number;
|
|
9
|
+
}
|
|
10
|
+
interface Group {
|
|
11
|
+
readonly isDefault: boolean;
|
|
12
|
+
readonly value: number;
|
|
13
|
+
readonly start: number;
|
|
14
|
+
readonly end: number;
|
|
15
|
+
}
|
|
16
|
+
interface VmProgram {
|
|
17
|
+
readonly registers: number;
|
|
18
|
+
readonly slots: readonly {
|
|
19
|
+
readonly kind: number;
|
|
20
|
+
readonly neighbour: boolean;
|
|
21
|
+
readonly scratch: boolean;
|
|
22
|
+
readonly spawn: boolean;
|
|
23
|
+
readonly indexed?: boolean;
|
|
24
|
+
readonly write?: boolean;
|
|
25
|
+
readonly word?: number;
|
|
26
|
+
}[];
|
|
27
|
+
readonly calls: readonly number[];
|
|
28
|
+
readonly cross: readonly number[];
|
|
29
|
+
readonly args: number;
|
|
30
|
+
readonly loops: number;
|
|
31
|
+
readonly uniforms: Uint32Array;
|
|
32
|
+
readonly code: readonly Inst[];
|
|
33
|
+
readonly groups: readonly Group[];
|
|
34
|
+
readonly state: number;
|
|
35
|
+
readonly position: readonly [number, number, number] | null;
|
|
36
|
+
readonly radius: number;
|
|
37
|
+
readonly channels: readonly number[];
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
declare const LOCKSTEP_STORAGE_U64_LO = 4;
|
|
41
|
+
declare const LOCKSTEP_STORAGE_U64_HI = 5;
|
|
42
|
+
declare const LOCKSTEP_TABLE_ALIGN = 8;
|
|
43
|
+
type LockstepColumnType = "f32" | "i32" | "u32" | "f64" | "vec2" | "vec3";
|
|
44
|
+
type LockstepSchema = Readonly<Record<string, LockstepColumnType>>;
|
|
45
|
+
type ColumnArray = Float32Array | Int32Array | Uint32Array | Float64Array;
|
|
46
|
+
interface LockstepKernelHost {
|
|
47
|
+
load(program: Uint8Array): number;
|
|
48
|
+
run(kernel: number, buffer: ArrayBufferLike, columns: Uint32Array, count: number, rows: number, args: Uint32Array): number;
|
|
49
|
+
}
|
|
50
|
+
declare function setLockstepKernelHost(host: LockstepKernelHost | null): void;
|
|
51
|
+
declare function lockstepKernelHost(): LockstepKernelHost | null;
|
|
52
|
+
declare class LockstepKernel<E = unknown, A extends unknown[] = unknown[]> {
|
|
53
|
+
readonly fn: (entity: E, ...args: A) => void;
|
|
54
|
+
readonly name: string;
|
|
55
|
+
readonly meta: KernelMeta | null;
|
|
56
|
+
readonly program: Uint8Array | null;
|
|
57
|
+
readonly parsed: VmProgram | null;
|
|
58
|
+
readonly args: Uint32Array;
|
|
59
|
+
readonly floats: Float32Array;
|
|
60
|
+
readonly transcendental: boolean;
|
|
61
|
+
hostId: number;
|
|
62
|
+
hostOwner: LockstepKernelHost | null;
|
|
63
|
+
constructor(fn: (entity: E, ...args: A) => void, compiled: string | undefined);
|
|
64
|
+
get compiled(): boolean;
|
|
65
|
+
}
|
|
66
|
+
declare function lockstepKernel<E, A extends unknown[]>(fn: (entity: E, ...args: A) => void, compiled?: string): LockstepKernel<E, A>;
|
|
67
|
+
interface LockstepTableOptions {
|
|
68
|
+
readonly at: number;
|
|
69
|
+
readonly rows: number;
|
|
70
|
+
}
|
|
71
|
+
declare class LockstepTable<S extends LockstepSchema = LockstepSchema> {
|
|
72
|
+
readonly schema: S;
|
|
73
|
+
readonly at: number;
|
|
74
|
+
readonly rows: number;
|
|
75
|
+
readonly bytes: number;
|
|
76
|
+
private readonly keys;
|
|
77
|
+
private readonly offsets;
|
|
78
|
+
private readonly types;
|
|
79
|
+
private readonly index;
|
|
80
|
+
private readonly views;
|
|
81
|
+
private readonly referee;
|
|
82
|
+
private readonly entity;
|
|
83
|
+
private row;
|
|
84
|
+
constructor(schema: S, options: LockstepTableOptions);
|
|
85
|
+
get end(): number;
|
|
86
|
+
column(state: DataView, field: keyof S & string, component?: number): ColumnArray;
|
|
87
|
+
run<E, A extends unknown[]>(kernel: LockstepKernel<E, A>, state: DataView, count: number, ...args: A): void;
|
|
88
|
+
private viewsOf;
|
|
89
|
+
private bind;
|
|
90
|
+
private defineEntity;
|
|
91
|
+
private current;
|
|
92
|
+
private runSource;
|
|
93
|
+
}
|
|
94
|
+
declare function lockstepTable<S extends LockstepSchema>(schema: S, options: LockstepTableOptions): LockstepTable<S>;
|
|
95
|
+
|
|
96
|
+
type TickRoomErrorCode = "already_registered" | "missing_step" | "invalid_state_bytes" | "state_bytes_exceeded" | "invalid_state_field" | "invalid_seats" | "invalid_seat" | "invalid_step_rate" | "command_too_large" | "commands_full" | "invalid_decision" | "invalid_snapshot" | "invalid_lockstep";
|
|
97
|
+
declare class TickRoomError extends Error {
|
|
98
|
+
readonly code: TickRoomErrorCode;
|
|
99
|
+
constructor(code: TickRoomErrorCode, message: string);
|
|
100
|
+
}
|
|
101
|
+
interface TickRoomCtx {
|
|
102
|
+
readonly seats: number;
|
|
103
|
+
readonly alive: Uint8Array;
|
|
104
|
+
readonly x: Int32Array;
|
|
105
|
+
readonly y: Int32Array;
|
|
106
|
+
readonly z: Int32Array;
|
|
107
|
+
readonly yaw: Uint16Array;
|
|
108
|
+
readonly axisX: Int16Array;
|
|
109
|
+
readonly axisZ: Int16Array;
|
|
110
|
+
readonly buttons: Uint8Array;
|
|
111
|
+
readonly animation: Uint8Array;
|
|
112
|
+
readonly flags: Uint8Array;
|
|
113
|
+
readonly state: DataView;
|
|
114
|
+
readonly stateBytes: Uint8Array;
|
|
115
|
+
readonly tick: number;
|
|
116
|
+
readonly timeMs: number;
|
|
117
|
+
readonly commandCount: number;
|
|
118
|
+
random(): number;
|
|
119
|
+
eachCommand(visit: (slot: number, action: number, payload: Uint8Array) => void): void;
|
|
120
|
+
outbox(action: number, payload: Uint8Array): boolean;
|
|
121
|
+
log(...parts: unknown[]): void;
|
|
122
|
+
}
|
|
123
|
+
type TickStateType = "i8" | "u8" | "i16" | "u16" | "i32" | "u32" | "f32" | "f64";
|
|
124
|
+
type TickStateSchema = Readonly<Record<string, TickStateType>>;
|
|
125
|
+
interface TickStateOptions<S extends TickStateSchema> {
|
|
126
|
+
readonly replicated?: readonly (keyof S & string)[];
|
|
127
|
+
}
|
|
128
|
+
interface TickState<S extends TickStateSchema> {
|
|
129
|
+
readonly bytes: number;
|
|
130
|
+
readonly replicatedBytes: number;
|
|
131
|
+
readonly at: {
|
|
132
|
+
readonly [K in keyof S]: number;
|
|
133
|
+
};
|
|
134
|
+
readonly types: S;
|
|
135
|
+
get(view: DataView, field: keyof S): number;
|
|
136
|
+
set(view: DataView, field: keyof S, value: number): void;
|
|
137
|
+
}
|
|
138
|
+
declare function defineTickState<S extends TickStateSchema>(schema: S, options?: TickStateOptions<S>): TickState<S>;
|
|
139
|
+
interface TickRoomDefinition<S extends TickStateSchema = TickStateSchema> {
|
|
140
|
+
readonly stateBytes?: number;
|
|
141
|
+
readonly state?: TickState<S>;
|
|
142
|
+
readonly replicate?: boolean;
|
|
143
|
+
init?(ctx: TickRoomCtx): void;
|
|
144
|
+
step(ctx: TickRoomCtx): void;
|
|
145
|
+
}
|
|
146
|
+
interface TickRoom<S extends TickStateSchema = TickStateSchema> {
|
|
147
|
+
readonly stateBytes: number;
|
|
148
|
+
readonly replicatedBytes: number;
|
|
149
|
+
readonly state: TickState<S> | null;
|
|
150
|
+
readonly init: ((ctx: TickRoomCtx) => void) | null;
|
|
151
|
+
readonly step: (ctx: TickRoomCtx) => void;
|
|
152
|
+
readonly onTick: boolean;
|
|
153
|
+
}
|
|
154
|
+
declare function defineTickRoom<S extends TickStateSchema = TickStateSchema>(definition: TickRoomDefinition<S>): TickRoom<S>;
|
|
155
|
+
|
|
156
|
+
declare const LOCKSTEP_MAX_SEATS = 16;
|
|
157
|
+
declare const LOCKSTEP_WINDOW = 128;
|
|
158
|
+
declare const LOCKSTEP_INPUT_STRIDE = 4;
|
|
159
|
+
declare const LOCKSTEP_AXIS_X = 0;
|
|
160
|
+
declare const LOCKSTEP_AXIS_Z = 1;
|
|
161
|
+
declare const LOCKSTEP_BUTTONS = 2;
|
|
162
|
+
declare const LOCKSTEP_PRESENT = 3;
|
|
163
|
+
declare const LOCKSTEP_AXIS_LIMIT = 127;
|
|
164
|
+
declare const LOCKSTEP_INPUT_ACTION = 65025;
|
|
165
|
+
declare const LOCKSTEP_BATCH_BYTES: number;
|
|
166
|
+
declare const LOCKSTEP_CONFIG_TAG = 67;
|
|
167
|
+
declare const LOCKSTEP_CONFIG_HEADER_BYTES = 4;
|
|
168
|
+
declare const LOCKSTEP_CONFIG_MAX_WORDS = 8;
|
|
169
|
+
declare const LockstepRecord: {
|
|
170
|
+
readonly lobby: 1;
|
|
171
|
+
readonly start: 2;
|
|
172
|
+
readonly seedLow: 3;
|
|
173
|
+
readonly seedHigh: 4;
|
|
174
|
+
readonly check: 5;
|
|
175
|
+
readonly depart: 6;
|
|
176
|
+
readonly configLow: 7;
|
|
177
|
+
readonly configHigh: 8;
|
|
178
|
+
};
|
|
179
|
+
type LockstepRecordKind = (typeof LockstepRecord)[keyof typeof LockstepRecord];
|
|
180
|
+
declare const LockstepPhase: {
|
|
181
|
+
readonly waiting: 0;
|
|
182
|
+
readonly lobby: 1;
|
|
183
|
+
readonly running: 2;
|
|
184
|
+
};
|
|
185
|
+
type LockstepPhaseKind = (typeof LockstepPhase)[keyof typeof LockstepPhase];
|
|
186
|
+
declare const LOCKSTEP_REFEREE_BYTES: number;
|
|
187
|
+
interface LockstepRulesDefinition {
|
|
188
|
+
readonly seats: number;
|
|
189
|
+
readonly stateBytes: number;
|
|
190
|
+
readonly rateHz?: number;
|
|
191
|
+
readonly inputDelay?: number;
|
|
192
|
+
init(state: DataView, seed: number, humans: number): void;
|
|
193
|
+
step(state: DataView, inputs: Int16Array, tick: number): void;
|
|
194
|
+
}
|
|
195
|
+
interface LockstepRules {
|
|
196
|
+
readonly seats: number;
|
|
197
|
+
readonly stateBytes: number;
|
|
198
|
+
readonly rateHz: number;
|
|
199
|
+
readonly inputDelay: number;
|
|
200
|
+
init(state: DataView, seed: number, humans: number): void;
|
|
201
|
+
step(state: DataView, inputs: Int16Array, tick: number): void;
|
|
202
|
+
}
|
|
203
|
+
declare function defineLockstep(definition: LockstepRulesDefinition): LockstepRules;
|
|
204
|
+
declare function lockstepChecksum(bytes: Uint8Array): number;
|
|
205
|
+
declare function encodeLockstepConfig(words: ArrayLike<number>): Uint8Array;
|
|
206
|
+
declare function lockstepConfigHash(payload: Uint8Array, length?: number): number;
|
|
207
|
+
declare function quantiseLockstepAxis(value: number): number;
|
|
208
|
+
declare function unwrapTick16(low: number, near: number): number;
|
|
209
|
+
interface LockstepRoomOptions {
|
|
210
|
+
readonly minPlayers?: number;
|
|
211
|
+
readonly lobbySeconds?: number;
|
|
212
|
+
readonly stallSeconds?: number;
|
|
213
|
+
readonly configure?: (words: Int32Array) => LockstepRules | null;
|
|
214
|
+
}
|
|
215
|
+
declare function defineLockstepRoom(rules: LockstepRules, options?: LockstepRoomOptions): TickRoom;
|
|
216
|
+
declare function lockstepRefereeTick(stateBytes: Uint8Array): number;
|
|
217
|
+
declare function lockstepRefereeState(stateBytes: Uint8Array, rules: LockstepRules): Uint8Array;
|
|
218
|
+
declare function decodeLockstepRecord(animation: number, y: number, flags: number, out: LockstepRecordOut): boolean;
|
|
219
|
+
interface LockstepRecordOut {
|
|
220
|
+
kind: LockstepRecordKind;
|
|
221
|
+
seat: number;
|
|
222
|
+
value: number;
|
|
223
|
+
}
|
|
224
|
+
interface LockstepLink {
|
|
225
|
+
toReferee(payload: Uint8Array, length: number): void;
|
|
226
|
+
toPeers(payload: Uint8Array, length: number): void;
|
|
227
|
+
poll(session: LockstepSession): void;
|
|
228
|
+
}
|
|
229
|
+
interface LockstepStats {
|
|
230
|
+
rollbacks: number;
|
|
231
|
+
resimulatedTicks: number;
|
|
232
|
+
maxRollback: number;
|
|
233
|
+
stalls: number;
|
|
234
|
+
checks: number;
|
|
235
|
+
desyncs: number;
|
|
236
|
+
worldMisses: number;
|
|
237
|
+
}
|
|
238
|
+
interface LockstepWorld {
|
|
239
|
+
save(tick: number): unknown;
|
|
240
|
+
restore(tick: number): boolean;
|
|
241
|
+
clear(): void;
|
|
242
|
+
}
|
|
243
|
+
interface LockstepSessionOptions {
|
|
244
|
+
readonly seat: number;
|
|
245
|
+
readonly link?: LockstepLink | null;
|
|
246
|
+
readonly world?: LockstepWorld | null;
|
|
247
|
+
readonly maxLead?: number;
|
|
248
|
+
readonly stateBytes?: Uint8Array;
|
|
249
|
+
readonly config?: ArrayLike<number> | null;
|
|
250
|
+
}
|
|
251
|
+
declare class LockstepSession {
|
|
252
|
+
readonly rules: LockstepRules;
|
|
253
|
+
readonly seat: number;
|
|
254
|
+
readonly link: LockstepLink | null;
|
|
255
|
+
readonly maxLead: number;
|
|
256
|
+
readonly stateBytes: Uint8Array;
|
|
257
|
+
readonly state: DataView;
|
|
258
|
+
readonly inputs: Int16Array;
|
|
259
|
+
readonly world: LockstepWorld | null;
|
|
260
|
+
readonly stats: LockstepStats;
|
|
261
|
+
phase: LockstepPhaseKind;
|
|
262
|
+
tick: number;
|
|
263
|
+
confirmed: number;
|
|
264
|
+
refereeTick: number;
|
|
265
|
+
humans: number;
|
|
266
|
+
seed: number;
|
|
267
|
+
lobbyPlayers: number;
|
|
268
|
+
lobbySeconds: number;
|
|
269
|
+
configRefused: boolean;
|
|
270
|
+
readonly configHash: number | null;
|
|
271
|
+
private readonly config;
|
|
272
|
+
private configSendIn;
|
|
273
|
+
private pendingConfig;
|
|
274
|
+
private readonly seats;
|
|
275
|
+
private readonly delay;
|
|
276
|
+
private readonly inputTick;
|
|
277
|
+
private readonly input;
|
|
278
|
+
private readonly used;
|
|
279
|
+
private readonly stateTick;
|
|
280
|
+
private readonly states;
|
|
281
|
+
private readonly stateSlots;
|
|
282
|
+
private readonly lastKnownTick;
|
|
283
|
+
private readonly lastKnown;
|
|
284
|
+
private readonly depart;
|
|
285
|
+
private readonly peerAck;
|
|
286
|
+
private readonly out;
|
|
287
|
+
private rollbackFrom;
|
|
288
|
+
private startSeen;
|
|
289
|
+
private pendingHumans;
|
|
290
|
+
private pendingSeed;
|
|
291
|
+
private lastCheck;
|
|
292
|
+
private localX;
|
|
293
|
+
private localZ;
|
|
294
|
+
private localButtons;
|
|
295
|
+
constructor(rules: LockstepRules, options: LockstepSessionOptions);
|
|
296
|
+
get running(): boolean;
|
|
297
|
+
get lead(): number;
|
|
298
|
+
isHuman(seat: number): boolean;
|
|
299
|
+
departedAt(seat: number): number;
|
|
300
|
+
confirmedInputs(tick: number, out: Int16Array): boolean;
|
|
301
|
+
confirmedState(tick: number, out: Uint8Array): boolean;
|
|
302
|
+
begin(seed: number, humans: number): void;
|
|
303
|
+
setInput(axisX: number, axisZ: number, buttons: number): void;
|
|
304
|
+
advance(): boolean;
|
|
305
|
+
receive(view: DataView, offset: number, length: number): void;
|
|
306
|
+
record(kind: number, seat: number, value: number, tick16: number): void;
|
|
307
|
+
private offerConfig;
|
|
308
|
+
private active;
|
|
309
|
+
private markRollback;
|
|
310
|
+
private store;
|
|
311
|
+
private accept;
|
|
312
|
+
private known;
|
|
313
|
+
private simulate;
|
|
314
|
+
private save;
|
|
315
|
+
private resimulate;
|
|
316
|
+
private advanceFrontier;
|
|
317
|
+
private send;
|
|
318
|
+
private encode;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
export { lockstepKernelHost as $, type LockstepRules as A, type LockstepRulesDefinition as B, type LockstepSchema as C, LockstepSession as D, type LockstepSessionOptions as E, type LockstepStats as F, LockstepTable as G, type LockstepTableOptions as H, type LockstepWorld as I, type TickRoom as J, type TickRoomDefinition as K, LOCKSTEP_AXIS_LIMIT as L, TickRoomError as M, type TickRoomErrorCode as N, type TickState as O, type TickStateSchema as P, type TickStateType as Q, decodeLockstepRecord as R, defineLockstep as S, type TickRoomCtx as T, defineLockstepRoom as U, defineTickRoom as V, defineTickState as W, encodeLockstepConfig as X, lockstepChecksum as Y, lockstepConfigHash as Z, lockstepKernel as _, LOCKSTEP_AXIS_X as a, lockstepRefereeState as a0, lockstepRefereeTick as a1, lockstepTable as a2, quantiseLockstepAxis as a3, setLockstepKernelHost as a4, unwrapTick16 as a5, LOCKSTEP_AXIS_Z as b, LOCKSTEP_BATCH_BYTES as c, LOCKSTEP_BUTTONS as d, LOCKSTEP_CONFIG_HEADER_BYTES as e, LOCKSTEP_CONFIG_MAX_WORDS as f, LOCKSTEP_CONFIG_TAG as g, LOCKSTEP_INPUT_ACTION as h, LOCKSTEP_INPUT_STRIDE as i, LOCKSTEP_MAX_SEATS as j, LOCKSTEP_PRESENT as k, LOCKSTEP_REFEREE_BYTES as l, LOCKSTEP_STORAGE_U64_HI as m, LOCKSTEP_STORAGE_U64_LO as n, LOCKSTEP_TABLE_ALIGN as o, LOCKSTEP_WINDOW as p, type LockstepColumnType as q, LockstepKernel as r, type LockstepKernelHost as s, type LockstepLink as t, LockstepPhase as u, type LockstepPhaseKind as v, LockstepRecord as w, type LockstepRecordKind as x, type LockstepRecordOut as y, type LockstepRoomOptions as z };
|