@origingame/engine 0.0.0-stage → 0.1.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/bin/og.mjs +25 -0
- package/dist/web/origin-engine.d.ts +1233 -0
- package/dist/web/origin-engine.js +8628 -0
- package/dist/web/origin-engine_bg.wasm +0 -0
- package/dist/web/origin-engine_bg.wasm.d.ts +366 -0
- package/dist/web-publish/origin-engine-lanes.js +8509 -0
- package/dist/web-publish/origin-engine-lanes_bg.wasm +0 -0
- package/dist/web-publish/origin-engine.d.ts +1176 -0
- package/dist/web-publish/origin-engine.js +8313 -0
- package/dist/web-publish/origin-engine_bg.wasm +0 -0
- package/dist/web-publish/origin-engine_bg.wasm.d.ts +347 -0
- package/dist/web-publish/snippets/wasm-bindgen-rayon-38edf6e439f6d70d/src/workerHelpers.no-bundler.js +77 -0
- package/dist/web-publish-2d/origin-engine-lanes.js +8509 -0
- package/dist/web-publish-2d/origin-engine-lanes_bg.wasm +0 -0
- package/dist/web-publish-2d/origin-engine.d.ts +1176 -0
- package/dist/web-publish-2d/origin-engine.js +8313 -0
- package/dist/web-publish-2d/origin-engine_bg.wasm +0 -0
- package/dist/web-publish-2d/origin-engine_bg.wasm.d.ts +347 -0
- package/dist/web-publish-2d/snippets/wasm-bindgen-rayon-38edf6e439f6d70d/src/workerHelpers.no-bundler.js +77 -0
- package/knowledge/README.md +31 -0
- package/knowledge/knowledge.json +13 -0
- package/knowledge/looks/catalogue.json +1871 -0
- package/knowledge/package.json +33 -0
- package/knowledge/rules/platform.json +329 -0
- package/knowledge/scaffold/README.md +27 -0
- package/knowledge/scaffold/distribution.json +48 -0
- package/knowledge/scaffold/origin-engine.json +19 -0
- package/knowledge/scaffold/template/.origin/setup +14 -0
- package/knowledge/scaffold/template/LICENSES.md +23 -0
- package/knowledge/scaffold/template/README.md +37 -0
- package/knowledge/scaffold/template/assets/ai/guard.ogt +48 -0
- package/knowledge/scaffold/template/assets/audio/click.ogt +9 -0
- package/knowledge/scaffold/template/assets/fonts/NotoSansSC-Regular-subset.ttf.ogt +12 -0
- package/knowledge/scaffold/template/assets/fonts/OFL.txt +93 -0
- package/knowledge/scaffold/template/assets/looks/origin-game.ogt +12 -0
- package/knowledge/scaffold/template/assets/nav/yard.ogt +27 -0
- package/knowledge/scaffold/template/assets/scenes/main.ogt +34 -0
- package/knowledge/scaffold/template/assets/strings/en.ogt +14 -0
- package/knowledge/scaffold/template/assets/textures/stone_n.png.ogt +7 -0
- package/knowledge/scaffold/template/gitattributes +22 -0
- package/knowledge/scaffold/template/package.json +18 -0
- package/knowledge/scaffold/template/project.ogt +25 -0
- package/knowledge/scaffold/template/src/main.ts +246 -0
- package/knowledge/scaffold/template/tests/guard.og.ts +67 -0
- package/knowledge/scaffold/template/tests/smoke.og.ts +43 -0
- package/knowledge/scaffold/template/tsconfig.json +17 -0
- package/knowledge/scripts/lib.ts +203 -0
- package/knowledge/scripts/mount.ts +210 -0
- package/knowledge/scripts/pack.ts +24 -0
- package/knowledge/scripts/scaffold.ts +72 -0
- package/knowledge/scripts/validate.ts +749 -0
- package/knowledge/skills/og-ai/SKILL.md +386 -0
- package/knowledge/skills/og-audio/SKILL.md +191 -0
- package/knowledge/skills/og-build/SKILL.md +330 -0
- package/knowledge/skills/og-core/SKILL.md +285 -0
- package/knowledge/skills/og-feel/SKILL.md +385 -0
- package/knowledge/skills/og-game/SKILL.md +1479 -0
- package/knowledge/skills/og-i18n/SKILL.md +220 -0
- package/knowledge/skills/og-platform-sdk/SKILL.md +199 -0
- package/knowledge/skills/og-taste/SKILL.md +537 -0
- package/knowledge/skills/og-ui/SKILL.md +444 -0
- package/knowledge/wiki/ai.md +627 -0
- package/knowledge/wiki/anim.md +1187 -0
- package/knowledge/wiki/atmosphere.md +636 -0
- package/knowledge/wiki/audio.md +732 -0
- package/knowledge/wiki/camera.md +711 -0
- package/knowledge/wiki/commands.md +357 -0
- package/knowledge/wiki/game.md +220 -0
- package/knowledge/wiki/i18n.md +213 -0
- package/knowledge/wiki/index.md +1027 -0
- package/knowledge/wiki/input.md +1714 -0
- package/knowledge/wiki/load.md +1280 -0
- package/knowledge/wiki/math.md +166 -0
- package/knowledge/wiki/nav.md +1154 -0
- package/knowledge/wiki/physics.md +3142 -0
- package/knowledge/wiki/platform.md +857 -0
- package/knowledge/wiki/probe.md +1692 -0
- package/knowledge/wiki/reflect.md +285 -0
- package/knowledge/wiki/render.md +3511 -0
- package/knowledge/wiki/rng.md +393 -0
- package/knowledge/wiki/stream.md +376 -0
- package/knowledge/wiki/system.md +197 -0
- package/knowledge/wiki/systems.md +43 -0
- package/knowledge/wiki/terrain.md +727 -0
- package/knowledge/wiki/tilemap.md +422 -0
- package/knowledge/wiki/time.md +150 -0
- package/knowledge/wiki/transform.md +230 -0
- package/knowledge/wiki/tween.md +580 -0
- package/knowledge/wiki/ui.md +8000 -0
- package/knowledge/wiki/world.md +909 -0
- package/package.json +68 -4
- package/schema/api.schema.json +29675 -0
- package/shell/README.md +22 -0
- package/shell/brand/README.md +23 -0
- package/shell/brand/icon-192.png +0 -0
- package/shell/brand/icon-512.png +0 -0
- package/shell/brand/mark-on-paper.svg +6 -0
- package/shell/brand/origin-mark.svg +5 -0
- package/shell/brand/origin-motion.css +251 -0
- package/shell/brand/tokens.css +20 -0
- package/shell/brand.ts +132 -0
- package/shell/page.ts +715 -0
- package/shell/platform.ts +203 -0
- package/shell/player.ts +238 -0
- package/shell/shell.css +185 -0
- package/shell/sw.ts +177 -0
- package/shell/transport.ts +515 -0
- package/shell/wire.ts +369 -0
- package/src/e6.ts +69 -0
- package/src/env.d.ts +100 -0
- package/src/generated/abi.ts +980 -0
- package/src/index.ts +193 -0
- package/src/node/audio.ts +86 -0
- package/src/node/build.ts +109 -0
- package/src/node/device.ts +981 -0
- package/src/node/doctor.ts +60 -0
- package/src/node/index.ts +102 -0
- package/src/node/platform.ts +24 -0
- package/src/node/playtest-run.ts +249 -0
- package/src/node/png.ts +130 -0
- package/src/node/polish.ts +976 -0
- package/src/node/run.ts +373 -0
- package/src/node/web-build.ts +808 -0
- package/src/p2.ts +35 -0
- package/src/platform-local.ts +211 -0
- package/src/playtest.ts +131 -0
- package/src/runtime.ts +1509 -0
- package/src/systems/cameras.ts +247 -0
- package/src/ui-kit/bind.ts +141 -0
- package/src/ui-kit/huds.ts +303 -0
- package/src/ui-kit/index.ts +36 -0
- package/src/ui-kit/menus.ts +187 -0
- package/src/ui-kit/settings.ts +131 -0
- package/src/ui-kit/store.ts +222 -0
- package/src/ui-kit/story.ts +89 -0
- package/src/ui-kit/util.ts +106 -0
- package/src/web/a11y.ts +429 -0
- package/src/web/audio-worklet.ts +193 -0
- package/src/web/audio.ts +307 -0
- package/src/web/basis.ts +239 -0
- package/src/web/gamepad.ts +123 -0
- package/src/web/host.ts +166 -0
- package/src/web/input.ts +237 -0
- package/src/web/lanes.ts +21 -0
- package/src/web/play.ts +20 -0
- package/src/web/rpc-ring.ts +110 -0
- package/src/web/settle.ts +122 -0
- package/src/web/shell.ts +643 -0
- package/src/web/text-input.ts +248 -0
- package/src/web/worker.ts +1002 -0
- package/types/bindings.json +13654 -0
- package/types/index.d.ts +20090 -0
- package/vendor/basis/LICENSE +201 -0
- package/vendor/basis/NOTICE +15 -0
- package/vendor/basis/README.md +18 -0
- package/vendor/basis/basis_transcoder.js +19 -0
- package/vendor/basis/basis_transcoder.wasm +0 -0
- package/README.md +0 -3
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
<!-- Generated from crates/og-api/api.ogt by `og api gen`. Do not edit: `og api check` fails on any difference; change api.ogt and regenerate. -->
|
|
2
|
+
|
|
3
|
+
# The `rng` module
|
|
4
|
+
|
|
5
|
+
Deterministic randomness. Every random draw comes from an Rng stream; the sequence for a seed is identical on every host and in the Web scaffold's rng.ts.
|
|
6
|
+
|
|
7
|
+
Inside a system: forking needs og.Rng among the reads (a fork is derived from the seed and the label, and leaves the main stream where it is); drawing from og.Rng itself (next, range, integer, chance) moves its state, so it needs og.Rng among the writes. A stream a fork returned is the system's own to draw from.
|
|
8
|
+
|
|
9
|
+
- **TypeScript**: functions are none at module level (its members live on the types below); components, resources and events are tokens on `og`.
|
|
10
|
+
- **Publish builds**: kept (members may override).
|
|
11
|
+
- **Skill**: `og-core`, which teaches the module (how much of it to use, and how to prove it).
|
|
12
|
+
- **Index**: [every module and name](index.md).
|
|
13
|
+
|
|
14
|
+
```ogt
|
|
15
|
+
module rng {
|
|
16
|
+
# declarations follow, each quoted below
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
<sub>`api.ogt` line 641</sub>
|
|
20
|
+
|
|
21
|
+
## Contents
|
|
22
|
+
|
|
23
|
+
| Name | Kind | Summary |
|
|
24
|
+
|---|---|---|
|
|
25
|
+
| [`RngStream`](#type-RngStream) | interface | One generator stream, forked from the Rng resource for a subsystem that must not perturb the main sequence. |
|
|
26
|
+
| [`og.Rng`](#record-Rng) | resource | The world's main random stream, seeded from GameDesc.seed (or the replay seed). Its state is part of every snapshot. |
|
|
27
|
+
|
|
28
|
+
## Components, resources and events
|
|
29
|
+
|
|
30
|
+
<a id="record-Rng"></a>
|
|
31
|
+
|
|
32
|
+
### `og.Rng` (resource)
|
|
33
|
+
|
|
34
|
+
The world's main random stream, seeded from GameDesc.seed (or the replay seed). Its state is part of every snapshot.
|
|
35
|
+
|
|
36
|
+
Token `og.Rng`, registered under the schema name `og.Rng`; its value type is `Rng`.
|
|
37
|
+
|
|
38
|
+
| Field | Type | Default | Range | Unit | Notes | Doc |
|
|
39
|
+
|---|---|---|---|---|---|---|
|
|
40
|
+
| `seed` | `number` | `0` | — | — | read only | The seed the stream started from. |
|
|
41
|
+
| `state` | `number` | `0` | — | — | read only | The generator state; snapshot and restore carry it. |
|
|
42
|
+
|
|
43
|
+
```ogt
|
|
44
|
+
resource Rng {
|
|
45
|
+
doc "The world's main random stream, seeded from GameDesc.seed (or the replay seed). Its state is part of every snapshot."
|
|
46
|
+
field seed u32 "The seed the stream started from." {
|
|
47
|
+
readonly true
|
|
48
|
+
}
|
|
49
|
+
field state u32 "The generator state; snapshot and restore carry it." {
|
|
50
|
+
readonly true
|
|
51
|
+
}
|
|
52
|
+
fn next {
|
|
53
|
+
doc "Uniform in [0, 1)."
|
|
54
|
+
returns f64
|
|
55
|
+
}
|
|
56
|
+
fn range {
|
|
57
|
+
doc "Uniform in [low, high)."
|
|
58
|
+
param low f64 "The inclusive lower bound."
|
|
59
|
+
param high f64 "The exclusive upper bound."
|
|
60
|
+
returns f64
|
|
61
|
+
}
|
|
62
|
+
fn integer {
|
|
63
|
+
doc "A uniform integer in [low, high]."
|
|
64
|
+
param low i32 "The inclusive lower bound."
|
|
65
|
+
param high i32 "The inclusive upper bound."
|
|
66
|
+
returns i32
|
|
67
|
+
}
|
|
68
|
+
fn chance {
|
|
69
|
+
doc "True with probability p."
|
|
70
|
+
param p f64 "The probability, between 0 and 1."
|
|
71
|
+
returns bool
|
|
72
|
+
}
|
|
73
|
+
fn fork {
|
|
74
|
+
doc "A stream for a subsystem, derived from the seed and a label, so drawing from it leaves the main sequence alone. The same label gives the same stream every time, on every host, wherever the main stream is; og.Rng among a system's reads is enough."
|
|
75
|
+
param label String "The subsystem's name, such as `spawner`."
|
|
76
|
+
returns RngStream
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
<sub>`api.ogt` line 677</sub>
|
|
82
|
+
|
|
83
|
+
<a id="member-Rng-next"></a>
|
|
84
|
+
|
|
85
|
+
#### `Rng.next`
|
|
86
|
+
|
|
87
|
+
Uniform in [0, 1).
|
|
88
|
+
|
|
89
|
+
```ts
|
|
90
|
+
Rng.next(): number
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**Returns** `number`.
|
|
94
|
+
|
|
95
|
+
Binding symbol `og_rng_next` · publish builds: kept
|
|
96
|
+
|
|
97
|
+
```ogt
|
|
98
|
+
fn next {
|
|
99
|
+
doc "Uniform in [0, 1)."
|
|
100
|
+
returns f64
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
<sub>`api.ogt` line 685</sub>
|
|
105
|
+
|
|
106
|
+
<a id="member-Rng-range"></a>
|
|
107
|
+
|
|
108
|
+
#### `Rng.range`
|
|
109
|
+
|
|
110
|
+
Uniform in [low, high).
|
|
111
|
+
|
|
112
|
+
```ts
|
|
113
|
+
Rng.range(low: number, high: number): number
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
| Parameter | Type | Optional | Doc |
|
|
117
|
+
|---|---|---|---|
|
|
118
|
+
| `low` | `number` | no | The inclusive lower bound. |
|
|
119
|
+
| `high` | `number` | no | The exclusive upper bound. |
|
|
120
|
+
|
|
121
|
+
**Returns** `number`.
|
|
122
|
+
|
|
123
|
+
Binding symbol `og_rng_range` · publish builds: kept
|
|
124
|
+
|
|
125
|
+
```ogt
|
|
126
|
+
fn range {
|
|
127
|
+
doc "Uniform in [low, high)."
|
|
128
|
+
param low f64 "The inclusive lower bound."
|
|
129
|
+
param high f64 "The exclusive upper bound."
|
|
130
|
+
returns f64
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
<sub>`api.ogt` line 689</sub>
|
|
135
|
+
|
|
136
|
+
<a id="member-Rng-integer"></a>
|
|
137
|
+
|
|
138
|
+
#### `Rng.integer`
|
|
139
|
+
|
|
140
|
+
A uniform integer in [low, high].
|
|
141
|
+
|
|
142
|
+
```ts
|
|
143
|
+
Rng.integer(low: number, high: number): number
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
| Parameter | Type | Optional | Doc |
|
|
147
|
+
|---|---|---|---|
|
|
148
|
+
| `low` | `number` | no | The inclusive lower bound. |
|
|
149
|
+
| `high` | `number` | no | The inclusive upper bound. |
|
|
150
|
+
|
|
151
|
+
**Returns** `number`.
|
|
152
|
+
|
|
153
|
+
Binding symbol `og_rng_integer` · publish builds: kept
|
|
154
|
+
|
|
155
|
+
```ogt
|
|
156
|
+
fn integer {
|
|
157
|
+
doc "A uniform integer in [low, high]."
|
|
158
|
+
param low i32 "The inclusive lower bound."
|
|
159
|
+
param high i32 "The inclusive upper bound."
|
|
160
|
+
returns i32
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
<sub>`api.ogt` line 695</sub>
|
|
165
|
+
|
|
166
|
+
<a id="member-Rng-chance"></a>
|
|
167
|
+
|
|
168
|
+
#### `Rng.chance`
|
|
169
|
+
|
|
170
|
+
True with probability p.
|
|
171
|
+
|
|
172
|
+
```ts
|
|
173
|
+
Rng.chance(p: number): boolean
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
| Parameter | Type | Optional | Doc |
|
|
177
|
+
|---|---|---|---|
|
|
178
|
+
| `p` | `number` | no | The probability, between 0 and 1. |
|
|
179
|
+
|
|
180
|
+
**Returns** `boolean`.
|
|
181
|
+
|
|
182
|
+
Binding symbol `og_rng_chance` · publish builds: kept
|
|
183
|
+
|
|
184
|
+
```ogt
|
|
185
|
+
fn chance {
|
|
186
|
+
doc "True with probability p."
|
|
187
|
+
param p f64 "The probability, between 0 and 1."
|
|
188
|
+
returns bool
|
|
189
|
+
}
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
<sub>`api.ogt` line 701</sub>
|
|
193
|
+
|
|
194
|
+
<a id="member-Rng-fork"></a>
|
|
195
|
+
|
|
196
|
+
#### `Rng.fork`
|
|
197
|
+
|
|
198
|
+
A stream for a subsystem, derived from the seed and a label, so drawing from it leaves the main sequence alone. The same label gives the same stream every time, on every host, wherever the main stream is; og.Rng among a system's reads is enough.
|
|
199
|
+
|
|
200
|
+
```ts
|
|
201
|
+
Rng.fork(label: string): RngStream
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
| Parameter | Type | Optional | Doc |
|
|
205
|
+
|---|---|---|---|
|
|
206
|
+
| `label` | `string` | no | The subsystem's name, such as `spawner`. |
|
|
207
|
+
|
|
208
|
+
**Returns** `RngStream`.
|
|
209
|
+
|
|
210
|
+
Binding symbol `og_rng_fork` · publish builds: kept
|
|
211
|
+
|
|
212
|
+
```ogt
|
|
213
|
+
fn fork {
|
|
214
|
+
doc "A stream for a subsystem, derived from the seed and a label, so drawing from it leaves the main sequence alone. The same label gives the same stream every time, on every host, wherever the main stream is; og.Rng among a system's reads is enough."
|
|
215
|
+
param label String "The subsystem's name, such as `spawner`."
|
|
216
|
+
returns RngStream
|
|
217
|
+
}
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
<sub>`api.ogt` line 706</sub>
|
|
221
|
+
|
|
222
|
+
## Interfaces
|
|
223
|
+
|
|
224
|
+
<a id="type-RngStream"></a>
|
|
225
|
+
|
|
226
|
+
### `RngStream` (interface)
|
|
227
|
+
|
|
228
|
+
One generator stream, forked from the Rng resource for a subsystem that must not perturb the main sequence.
|
|
229
|
+
|
|
230
|
+
```ogt
|
|
231
|
+
interface RngStream {
|
|
232
|
+
doc "One generator stream, forked from the Rng resource for a subsystem that must not perturb the main sequence."
|
|
233
|
+
# members follow, each quoted below
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
<sub>`api.ogt` line 646</sub>
|
|
237
|
+
|
|
238
|
+
<a id="member-RngStream-seed"></a>
|
|
239
|
+
|
|
240
|
+
#### `RngStream.seed` (property)
|
|
241
|
+
|
|
242
|
+
The stream's derived seed.
|
|
243
|
+
|
|
244
|
+
```ts
|
|
245
|
+
readonly seed: number
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
Binding symbol `og_rng_stream_get_seed` · publish builds: kept
|
|
249
|
+
|
|
250
|
+
```ogt
|
|
251
|
+
prop seed u32 "The stream's derived seed."
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
<sub>`api.ogt` line 648</sub>
|
|
255
|
+
|
|
256
|
+
<a id="member-RngStream-next"></a>
|
|
257
|
+
|
|
258
|
+
#### `RngStream.next`
|
|
259
|
+
|
|
260
|
+
Uniform in [0, 1).
|
|
261
|
+
|
|
262
|
+
```ts
|
|
263
|
+
RngStream.next(): number
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
**Returns** `number`.
|
|
267
|
+
|
|
268
|
+
Binding symbol `og_rng_stream_next` · publish builds: kept
|
|
269
|
+
|
|
270
|
+
```ogt
|
|
271
|
+
fn next {
|
|
272
|
+
doc "Uniform in [0, 1)."
|
|
273
|
+
returns f64
|
|
274
|
+
}
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
<sub>`api.ogt` line 649</sub>
|
|
278
|
+
|
|
279
|
+
<a id="member-RngStream-range"></a>
|
|
280
|
+
|
|
281
|
+
#### `RngStream.range`
|
|
282
|
+
|
|
283
|
+
Uniform in [low, high).
|
|
284
|
+
|
|
285
|
+
```ts
|
|
286
|
+
RngStream.range(low: number, high: number): number
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
| Parameter | Type | Optional | Doc |
|
|
290
|
+
|---|---|---|---|
|
|
291
|
+
| `low` | `number` | no | The inclusive lower bound. |
|
|
292
|
+
| `high` | `number` | no | The exclusive upper bound. |
|
|
293
|
+
|
|
294
|
+
**Returns** `number`.
|
|
295
|
+
|
|
296
|
+
Binding symbol `og_rng_stream_range` · publish builds: kept
|
|
297
|
+
|
|
298
|
+
```ogt
|
|
299
|
+
fn range {
|
|
300
|
+
doc "Uniform in [low, high)."
|
|
301
|
+
param low f64 "The inclusive lower bound."
|
|
302
|
+
param high f64 "The exclusive upper bound."
|
|
303
|
+
returns f64
|
|
304
|
+
}
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
<sub>`api.ogt` line 653</sub>
|
|
308
|
+
|
|
309
|
+
<a id="member-RngStream-integer"></a>
|
|
310
|
+
|
|
311
|
+
#### `RngStream.integer`
|
|
312
|
+
|
|
313
|
+
A uniform integer in [low, high].
|
|
314
|
+
|
|
315
|
+
```ts
|
|
316
|
+
RngStream.integer(low: number, high: number): number
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
| Parameter | Type | Optional | Doc |
|
|
320
|
+
|---|---|---|---|
|
|
321
|
+
| `low` | `number` | no | The inclusive lower bound. |
|
|
322
|
+
| `high` | `number` | no | The inclusive upper bound. |
|
|
323
|
+
|
|
324
|
+
**Returns** `number`.
|
|
325
|
+
|
|
326
|
+
Binding symbol `og_rng_stream_integer` · publish builds: kept
|
|
327
|
+
|
|
328
|
+
```ogt
|
|
329
|
+
fn integer {
|
|
330
|
+
doc "A uniform integer in [low, high]."
|
|
331
|
+
param low i32 "The inclusive lower bound."
|
|
332
|
+
param high i32 "The inclusive upper bound."
|
|
333
|
+
returns i32
|
|
334
|
+
}
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
<sub>`api.ogt` line 659</sub>
|
|
338
|
+
|
|
339
|
+
<a id="member-RngStream-chance"></a>
|
|
340
|
+
|
|
341
|
+
#### `RngStream.chance`
|
|
342
|
+
|
|
343
|
+
True with probability p.
|
|
344
|
+
|
|
345
|
+
```ts
|
|
346
|
+
RngStream.chance(p: number): boolean
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
| Parameter | Type | Optional | Doc |
|
|
350
|
+
|---|---|---|---|
|
|
351
|
+
| `p` | `number` | no | The probability, between 0 and 1. |
|
|
352
|
+
|
|
353
|
+
**Returns** `boolean`.
|
|
354
|
+
|
|
355
|
+
Binding symbol `og_rng_stream_chance` · publish builds: kept
|
|
356
|
+
|
|
357
|
+
```ogt
|
|
358
|
+
fn chance {
|
|
359
|
+
doc "True with probability p."
|
|
360
|
+
param p f64 "The probability, between 0 and 1."
|
|
361
|
+
returns bool
|
|
362
|
+
}
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
<sub>`api.ogt` line 665</sub>
|
|
366
|
+
|
|
367
|
+
<a id="member-RngStream-fork"></a>
|
|
368
|
+
|
|
369
|
+
#### `RngStream.fork`
|
|
370
|
+
|
|
371
|
+
A fresh stream on a seed derived from this stream's seed and a label.
|
|
372
|
+
|
|
373
|
+
```ts
|
|
374
|
+
RngStream.fork(label: string): RngStream
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
| Parameter | Type | Optional | Doc |
|
|
378
|
+
|---|---|---|---|
|
|
379
|
+
| `label` | `string` | no | The subsystem's name; the same label always gives the same stream. |
|
|
380
|
+
|
|
381
|
+
**Returns** `RngStream`.
|
|
382
|
+
|
|
383
|
+
Binding symbol `og_rng_stream_fork` · publish builds: kept
|
|
384
|
+
|
|
385
|
+
```ogt
|
|
386
|
+
fn fork {
|
|
387
|
+
doc "A fresh stream on a seed derived from this stream's seed and a label."
|
|
388
|
+
param label String "The subsystem's name; the same label always gives the same stream."
|
|
389
|
+
returns RngStream
|
|
390
|
+
}
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
<sub>`api.ogt` line 670</sub>
|