@origingame/engine 0.1.1 → 0.3.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 +1 -1
- package/dist/web/origin-engine.d.ts +219 -5
- package/dist/web/origin-engine.js +1344 -125
- package/dist/web/origin-engine_bg.wasm +0 -0
- package/dist/web/origin-engine_bg.wasm.d.ts +68 -3
- package/dist/web-publish/origin-engine-lanes.js +1007 -22
- package/dist/web-publish/origin-engine-lanes_bg.wasm +0 -0
- package/dist/web-publish/origin-engine.d.ts +162 -5
- package/dist/web-publish/origin-engine.js +1004 -19
- package/dist/web-publish/origin-engine_bg.wasm +0 -0
- package/dist/web-publish/origin-engine_bg.wasm.d.ts +52 -3
- package/dist/web-publish-2d/origin-engine-lanes.js +1007 -22
- package/dist/web-publish-2d/origin-engine-lanes_bg.wasm +0 -0
- package/dist/web-publish-2d/origin-engine.d.ts +162 -5
- package/dist/web-publish-2d/origin-engine.js +1004 -19
- package/dist/web-publish-2d/origin-engine_bg.wasm +0 -0
- package/dist/web-publish-2d/origin-engine_bg.wasm.d.ts +52 -3
- package/knowledge/looks/catalogue.json +40 -40
- package/knowledge/package.json +4 -4
- package/knowledge/scaffold/distribution.json +14 -0
- package/knowledge/scaffold/origin-engine.json +2 -2
- package/knowledge/scaffold/template/README.md +2 -1
- package/knowledge/scaffold/template/assets/audio/sting.ogt +10 -0
- package/knowledge/scaffold/template/assets/timelines/intro.ogt +101 -0
- package/knowledge/scaffold/template/assets/timelines/narration.srt +11 -0
- package/knowledge/scaffold/template/host.d.ts +46 -0
- package/knowledge/scaffold/template/package.json +1 -1
- package/knowledge/scaffold/template/project.ogt +1 -1
- package/knowledge/scaffold/template/src/main.ts +1 -1
- package/knowledge/scaffold/template/tests/frames.ts +134 -0
- package/knowledge/scaffold/template/tests/intro.og.ts +65 -0
- package/knowledge/scaffold/template/tests/smoke.og.ts +30 -36
- package/knowledge/scaffold/template/tsconfig.json +1 -1
- package/knowledge/scripts/mount.ts +2 -1
- package/knowledge/scripts/validate.ts +21 -11
- package/knowledge/skills/og-build/SKILL.md +25 -6
- package/knowledge/skills/og-core/SKILL.md +11 -0
- package/knowledge/skills/og-feel/SKILL.md +8 -1
- package/knowledge/skills/og-game/SKILL.md +994 -21
- package/knowledge/skills/og-i18n/SKILL.md +12 -3
- package/knowledge/skills/og-platform-sdk/SKILL.md +4 -1
- package/knowledge/skills/og-taste/SKILL.md +82 -73
- package/knowledge/skills/og-ui/SKILL.md +82 -54
- package/knowledge/wiki/ai.md +20 -20
- package/knowledge/wiki/anim.md +384 -41
- package/knowledge/wiki/atmosphere.md +36 -13
- package/knowledge/wiki/audio.md +18 -18
- package/knowledge/wiki/camera.md +19 -13
- package/knowledge/wiki/commands.md +19 -13
- package/knowledge/wiki/debug.md +414 -0
- package/knowledge/wiki/game.md +8 -8
- package/knowledge/wiki/i18n.md +7 -7
- package/knowledge/wiki/index.md +265 -7
- package/knowledge/wiki/input.md +47 -47
- package/knowledge/wiki/load.md +236 -68
- package/knowledge/wiki/math.md +2614 -7
- package/knowledge/wiki/nav.md +34 -34
- package/knowledge/wiki/net.md +340 -0
- package/knowledge/wiki/path.md +402 -0
- package/knowledge/wiki/physics.md +124 -106
- package/knowledge/wiki/platform.md +465 -31
- package/knowledge/wiki/probe.md +681 -67
- package/knowledge/wiki/reflect.md +15 -15
- package/knowledge/wiki/render.md +3904 -1897
- package/knowledge/wiki/rng.md +14 -14
- package/knowledge/wiki/stream.md +15 -15
- package/knowledge/wiki/system.md +8 -8
- package/knowledge/wiki/systems.md +2 -2
- package/knowledge/wiki/terrain.md +19 -19
- package/knowledge/wiki/tilemap.md +19 -15
- package/knowledge/wiki/time.md +4 -4
- package/knowledge/wiki/timeline.md +396 -0
- package/knowledge/wiki/transform.md +8 -8
- package/knowledge/wiki/tween.md +17 -17
- package/knowledge/wiki/ui.md +603 -629
- package/knowledge/wiki/video.md +157 -0
- package/knowledge/wiki/world.md +67 -37
- package/package.json +7 -6
- package/schema/api.schema.json +21071 -13964
- package/shell/page.ts +26 -2
- package/shell/platform.ts +46 -0
- package/shell/player.ts +7 -0
- package/src/depth.ts +71 -0
- package/src/e6.ts +32 -1
- package/src/env.d.ts +5 -1
- package/src/generated/abi.ts +189 -3
- package/src/index.ts +26 -4
- package/src/light.ts +18 -0
- package/src/math.ts +622 -0
- package/src/node/index.ts +17 -0
- package/src/node/playtest-run.ts +114 -18
- package/src/node/polish.ts +15 -4
- package/src/node/render.ts +291 -0
- package/src/node/run.ts +91 -6
- package/src/p2.ts +19 -1
- package/src/playtest.ts +57 -4
- package/src/runtime.ts +15 -3
- package/src/targets.ts +28 -0
- package/src/trace.ts +169 -0
- package/src/ui-kit/huds.ts +49 -45
- package/src/ui-kit/menus.ts +12 -12
- package/src/ui-kit/settings.ts +2 -2
- package/src/ui-kit/store.ts +18 -18
- package/src/ui-kit/story.ts +6 -4
- package/src/ui-kit/util.ts +8 -8
- package/src/web/shell.ts +58 -0
- package/src/web/worker.ts +103 -2
- package/types/bindings.json +8945 -6456
- package/types/index.d.ts +15507 -11437
|
Binary file
|
|
@@ -11,6 +11,8 @@ export const og_ai_set: (a: number, b: number, c: number, d: number, e: number,
|
|
|
11
11
|
export const og_anim_graph: (a: number, b: number, c: number) => [number, number];
|
|
12
12
|
export const og_anim_humanoid: (a: number, b: number, c: number) => [number, number];
|
|
13
13
|
export const og_anim_retarget: (a: number, b: number, c: number) => [number, number];
|
|
14
|
+
export const og_anim_rig2d_info: (a: number, b: number) => [number, number];
|
|
15
|
+
export const og_anim_skeleton2d_boxes: (a: number, b: number) => [number, number];
|
|
14
16
|
export const og_archetype_view_column: (a: number, b: number, c: number) => [number, number];
|
|
15
17
|
export const og_archetype_view_entity: (a: number, b: number) => number;
|
|
16
18
|
export const og_archetype_view_get_count: (a: number) => number;
|
|
@@ -78,16 +80,21 @@ export const og_load_look: (a: number, b: number, c: number) => [number, number]
|
|
|
78
80
|
export const og_load_look_info: (a: number, b: number) => [number, number];
|
|
79
81
|
export const og_load_lut: (a: number, b: number, c: number) => [number, number];
|
|
80
82
|
export const og_load_palette: (a: number, b: number, c: number) => [number, number];
|
|
83
|
+
export const og_load_post: (a: number, b: number, c: number) => [number, number];
|
|
81
84
|
export const og_load_rig: (a: number, b: number, c: number) => [number, number];
|
|
85
|
+
export const og_load_rig2d: (a: number, b: number, c: number) => [number, number];
|
|
82
86
|
export const og_load_scene: (a: number, b: number, c: number) => [number, number];
|
|
83
87
|
export const og_load_shader: (a: number, b: number, c: number) => [number, number];
|
|
84
|
-
export const og_load_skin: (a: number, b: number, c: number) => [number, number];
|
|
85
88
|
export const og_load_sound: (a: number, b: number, c: number) => [number, number];
|
|
86
89
|
export const og_load_sound_info: (a: number, b: number) => [number, number];
|
|
87
90
|
export const og_load_status: (a: number, b: number) => [number, number];
|
|
91
|
+
export const og_load_style: (a: number, b: number, c: number) => [number, number];
|
|
88
92
|
export const og_load_texture: (a: number, b: number, c: number) => [number, number];
|
|
89
93
|
export const og_load_texture_array: (a: number, b: number, c: number) => [number, number];
|
|
90
94
|
export const og_load_tilemap: (a: number, b: number, c: number) => [number, number];
|
|
95
|
+
export const og_load_timeline: (a: number, b: number, c: number) => [number, number];
|
|
96
|
+
export const og_load_video: (a: number, b: number, c: number) => [number, number];
|
|
97
|
+
export const og_load_video_info: (a: number, b: number) => [number, number];
|
|
91
98
|
export const og_nav_build: (a: number, b: number, c: number) => [number, number];
|
|
92
99
|
export const og_nav_cell_at: (a: number, b: number, c: number, d: number) => [number, number];
|
|
93
100
|
export const og_nav_find_path: (a: number, b: number, c: number) => [number, number];
|
|
@@ -101,6 +108,14 @@ export const og_nav_path_of: (a: number, b: number) => [number, number];
|
|
|
101
108
|
export const og_nav_set_cost: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
102
109
|
export const og_nav_set_flow_targets: (a: number, b: number, c: number, d: number) => [number, number];
|
|
103
110
|
export const og_nav_set_obstacle: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
111
|
+
export const og_net_hash: (a: number) => [number, number];
|
|
112
|
+
export const og_net_status: (a: number) => [number, number];
|
|
113
|
+
export const og_net_submit: (a: number, b: number, c: number) => [number, number];
|
|
114
|
+
export const og_path_create: (a: number, b: number, c: number) => [number, number];
|
|
115
|
+
export const og_path_find: (a: number, b: number, c: number) => [number, number];
|
|
116
|
+
export const og_path_length: (a: number, b: number) => [number, number];
|
|
117
|
+
export const og_path_nearest: (a: number, b: number, c: number, d: number) => [number, number];
|
|
118
|
+
export const og_path_sample: (a: number, b: number, c: number) => [number, number];
|
|
104
119
|
export const og_physics_apply_force: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
105
120
|
export const og_physics_apply_impulse: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
106
121
|
export const og_physics_apply_torque: (a: number, b: number, c: number, d: number) => [number, number];
|
|
@@ -130,6 +145,13 @@ export const og_platform_load_slot: (a: number, b: number, c: number) => [number
|
|
|
130
145
|
export const og_platform_now: (a: number) => number;
|
|
131
146
|
export const og_platform_point: (a: number, b: number, c: number) => [number, number];
|
|
132
147
|
export const og_platform_result: (a: number, b: number) => [number, number];
|
|
148
|
+
export const og_platform_room_create: (a: number, b: number, c: number) => [number, number];
|
|
149
|
+
export const og_platform_room_info: (a: number) => [number, number];
|
|
150
|
+
export const og_platform_room_join: (a: number, b: number, c: number) => [number, number];
|
|
151
|
+
export const og_platform_room_leave: (a: number) => [number, number];
|
|
152
|
+
export const og_platform_room_message: (a: number, b: number) => [number, number];
|
|
153
|
+
export const og_platform_room_peers: (a: number) => [number, number];
|
|
154
|
+
export const og_platform_room_send: (a: number, b: number, c: number, d: number) => [number, number];
|
|
133
155
|
export const og_platform_save_settings: (a: number, b: number, c: number) => [number, number];
|
|
134
156
|
export const og_platform_save_slot: (a: number, b: number, c: number) => [number, number];
|
|
135
157
|
export const og_platform_set_host: (a: number, b: number, c: number) => void;
|
|
@@ -149,20 +171,37 @@ export const og_query_count: (a: number) => number;
|
|
|
149
171
|
export const og_reflect_define_component: (a: number, b: number, c: number, d: number) => [number, number];
|
|
150
172
|
export const og_reflect_define_resource: (a: number, b: number, c: number, d: number) => [number, number];
|
|
151
173
|
export const og_render_apply_look: (a: number, b: number) => [number, number];
|
|
174
|
+
export const og_render_baked_lighting: (a: number) => [number, number];
|
|
152
175
|
export const og_render_box_geometry: (a: number, b: number, c: number) => [number, number];
|
|
176
|
+
export const og_render_buffer_geometry: (a: number, b: number, c: number) => [number, number];
|
|
153
177
|
export const og_render_capabilities: (a: number) => [number, number];
|
|
178
|
+
export const og_render_capsule_geometry: (a: number, b: number, c: number) => [number, number];
|
|
179
|
+
export const og_render_circle_geometry: (a: number, b: number, c: number) => [number, number];
|
|
180
|
+
export const og_render_cone_geometry: (a: number, b: number, c: number) => [number, number];
|
|
181
|
+
export const og_render_cylinder_geometry: (a: number, b: number, c: number) => [number, number];
|
|
154
182
|
export const og_render_floating_text: (a: number, b: number, c: number) => [number, number];
|
|
183
|
+
export const og_render_geometry_info: (a: number, b: number) => [number, number];
|
|
184
|
+
export const og_render_lines: (a: number, b: number, c: number) => [number, number];
|
|
155
185
|
export const og_render_look: (a: number) => [number, number];
|
|
156
186
|
export const og_render_measure_text: (a: number, b: number, c: number) => [number, number];
|
|
157
187
|
export const og_render_plane_geometry: (a: number, b: number, c: number) => [number, number];
|
|
188
|
+
export const og_render_points: (a: number, b: number, c: number) => [number, number];
|
|
189
|
+
export const og_render_post_errors: (a: number) => [number, number];
|
|
190
|
+
export const og_render_raycast: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
191
|
+
export const og_render_render_target: (a: number, b: number, c: number) => [number, number];
|
|
158
192
|
export const og_render_ribbon: (a: number, b: number, c: number) => [number, number];
|
|
193
|
+
export const og_render_ring_geometry: (a: number, b: number, c: number) => [number, number];
|
|
159
194
|
export const og_render_set_material_shader: (a: number, b: number, c: number, d: number) => [number, number];
|
|
195
|
+
export const og_render_set_post_param: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
160
196
|
export const og_render_set_shader_param: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
161
197
|
export const og_render_shader_material: (a: number, b: number, c: number, d: number) => [number, number];
|
|
162
198
|
export const og_render_sphere_geometry: (a: number, b: number, c: number) => [number, number];
|
|
163
199
|
export const og_render_sprite: (a: number, b: number, c: number) => [number, number];
|
|
164
200
|
export const og_render_standard_material: (a: number, b: number, c: number) => [number, number];
|
|
165
201
|
export const og_render_text: (a: number, b: number, c: number) => [number, number];
|
|
202
|
+
export const og_render_torus_geometry: (a: number, b: number, c: number) => [number, number];
|
|
203
|
+
export const og_render_tube_geometry: (a: number, b: number, c: number) => [number, number];
|
|
204
|
+
export const og_render_update_geometry: (a: number, b: number, c: number, d: number) => [number, number];
|
|
166
205
|
export const og_render_update_material: (a: number, b: number, c: number, d: number) => [number, number];
|
|
167
206
|
export const og_rng_chance: (a: number, b: number) => number;
|
|
168
207
|
export const og_rng_fork: (a: number, b: number, c: number) => number;
|
|
@@ -175,6 +214,9 @@ export const og_rng_stream_get_seed: (a: number) => number;
|
|
|
175
214
|
export const og_rng_stream_integer: (a: number, b: number, c: number) => number;
|
|
176
215
|
export const og_rng_stream_next: (a: number) => number;
|
|
177
216
|
export const og_rng_stream_range: (a: number, b: number, c: number) => number;
|
|
217
|
+
export const og_room_deliver: (a: number, b: number, c: number) => number;
|
|
218
|
+
export const og_room_set_host: (a: number, b: number, c: number) => void;
|
|
219
|
+
export const og_room_take: (a: number) => [number, number];
|
|
178
220
|
export const og_runtime_probe_entity: (a: number, b: number, c: number) => [number, number];
|
|
179
221
|
export const og_runtime_probe_get_version: (a: number) => number;
|
|
180
222
|
export const og_runtime_probe_input: (a: number, b: number, c: number) => number;
|
|
@@ -202,6 +244,11 @@ export const og_tilemap_get_tile: (a: number, b: number, c: number, d: number, e
|
|
|
202
244
|
export const og_tilemap_set_tile: (a: number, b: number, c: number) => [number, number];
|
|
203
245
|
export const og_time_hit_stop: (a: number, b: number) => [number, number];
|
|
204
246
|
export const og_time_set_scale: (a: number, b: number) => [number, number];
|
|
247
|
+
export const og_timeline_info: (a: number, b: number) => [number, number];
|
|
248
|
+
export const og_timeline_pause: (a: number, b: number) => [number, number];
|
|
249
|
+
export const og_timeline_play: (a: number, b: number) => [number, number];
|
|
250
|
+
export const og_timeline_seek: (a: number, b: number, c: number) => [number, number];
|
|
251
|
+
export const og_timeline_stop: (a: number, b: number) => [number, number];
|
|
205
252
|
export const og_transform_compose: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
206
253
|
export const og_transform_decompose: (a: number, b: number) => [number, number];
|
|
207
254
|
export const og_transform_from_axis_angle: (a: number, b: number, c: number) => [number, number];
|
|
@@ -312,6 +359,8 @@ export const og_web_set_inflater: (a: any) => void;
|
|
|
312
359
|
export const og_web_set_viewport: (a: number, b: number, c: number) => [number, number];
|
|
313
360
|
export const og_web_texture_ktx2: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
314
361
|
export const og_web_texture_target: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
|
|
362
|
+
export const og_web_trace: (a: number, b: number) => void;
|
|
363
|
+
export const og_web_trace_take: (a: number, b: number) => [number, number];
|
|
315
364
|
export const og_web_warm: (a: number) => number;
|
|
316
365
|
export const og_world_alive: (a: number, b: number) => number;
|
|
317
366
|
export const og_world_despawn: (a: number, b: number) => [number, number];
|
|
@@ -334,8 +383,8 @@ export const og_world_spawn: (a: number, b: number, c: number) => [number, numbe
|
|
|
334
383
|
export const wasm_bindgen_b8d3fa9391980f8___convert__closures_____invoke___js_sys_8cb0a1ab15bdbf1e___Function_fn_wasm_bindgen_b8d3fa9391980f8___JsValue_____wasm_bindgen_b8d3fa9391980f8___sys__Undefined___js_sys_8cb0a1ab15bdbf1e___Function_fn_wasm_bindgen_b8d3fa9391980f8___JsValue_____wasm_bindgen_b8d3fa9391980f8___sys__Undefined_______true_: (a: number, b: number, c: any, d: any) => void;
|
|
335
384
|
export const wasm_bindgen_b8d3fa9391980f8___convert__closures_____invoke___wasm_bindgen_b8d3fa9391980f8___JsValue__core_37ee0ce0c4cd57d5___result__Result_____wasm_bindgen_b8d3fa9391980f8___JsError___true_: (a: number, b: number, c: any) => [number, number];
|
|
336
385
|
export const wasm_bindgen_b8d3fa9391980f8___convert__closures_____invoke___wasm_bindgen_b8d3fa9391980f8___sys__JsNullable_wgpu_d2fbdff2c91c8b93___backend__webgpu__webgpu_sys__gen_GpuError__GpuError___core_37ee0ce0c4cd57d5___result__Result_____wasm_bindgen_b8d3fa9391980f8___JsError___true_: (a: number, b: number, c: any) => [number, number];
|
|
337
|
-
export const
|
|
338
|
-
export const
|
|
386
|
+
export const wasm_bindgen_b8d3fa9391980f8___convert__closures_____invoke___wasm_bindgen_b8d3fa9391980f8___sys__JsNullable_wgpu_d2fbdff2c91c8b93___backend__webgpu__webgpu_sys__gen_GpuError__GpuError___core_37ee0ce0c4cd57d5___result__Result_____wasm_bindgen_b8d3fa9391980f8___JsError___true__382: (a: number, b: number, c: any) => [number, number];
|
|
387
|
+
export const wasm_bindgen_b8d3fa9391980f8___convert__closures_____invoke___wasm_bindgen_b8d3fa9391980f8___sys__JsNullable_wgpu_d2fbdff2c91c8b93___backend__webgpu__webgpu_sys__gen_GpuError__GpuError___core_37ee0ce0c4cd57d5___result__Result_____wasm_bindgen_b8d3fa9391980f8___JsError___true__383: (a: number, b: number, c: any) => [number, number];
|
|
339
388
|
export const __wbindgen_malloc: (a: number, b: number) => number;
|
|
340
389
|
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
341
390
|
export const __wbindgen_exn_store: (a: number) => void;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"about": "Origin Engine's style catalogue: 37 art styles in the engine's own words, each with what a critic checks on a rendered frame, the premises it fits, the look preset it maps to (an .ogt of type look; `extends \"<slug>\"` in a game's own look builds on it), the UI
|
|
3
|
+
"about": "Origin Engine's style catalogue: 37 art styles in the engine's own words, each with what a critic checks on a rendered frame, the premises it fits, the look preset it maps to (an .ogt of type look; `extends \"<slug>\"` in a game's own look builds on it), the built-in UI style its look's `ui` line names, palette and asset specs, and an art-bible direction the agent expands per project. `look.support` says how faithfully the engine renders the style today: full (every primitive draws), partial or planned (the primitives in `missing` are still to land), content (the look lives in authored art; the engine frames it). og-taste §12 explains how to use it. The descriptions are original; no game or studio is the reference for a style.",
|
|
4
4
|
"categories": {
|
|
5
5
|
"pixel": "Pixel and retro",
|
|
6
6
|
"paint": "Paint and line",
|
|
7
7
|
"shape": "Shape and material",
|
|
8
8
|
"render": "3D rendering"
|
|
9
9
|
},
|
|
10
|
-
"
|
|
10
|
+
"ui": [
|
|
11
11
|
"pixel",
|
|
12
12
|
"cartoon",
|
|
13
13
|
"fantasy",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"paper",
|
|
16
16
|
"neon"
|
|
17
17
|
],
|
|
18
|
-
"artBibleTemplate": "Art bible for {title}. Premise: {premise}. Camera: {camera}; platform and display size: {platform}. Style: {name} ({descriptor}) Direction: {direction} Palette: {palette}. Asset specs: {assets}. UI: the {
|
|
18
|
+
"artBibleTemplate": "Art bible for {title}. Premise: {premise}. Camera: {camera}; platform and display size: {platform}. Style: {name} ({descriptor}) Direction: {direction} Palette: {palette}. Asset specs: {assets}. UI: the {ui} style the preset names (a `ui` line in the game's look picks another, or the game's own styles/<name>/style.ogt), re-coloured to this palette (og-taste §1). Avoid: {avoid}. Proof: the game's look is assets/looks/{game}.ogt, extending \"{slug}\"; capture the title, play and results screens with og run and check each against: {checks}. Every later asset is made inside this bible; a request for one asset never redesigns the style.",
|
|
19
19
|
"styles": [
|
|
20
20
|
{
|
|
21
21
|
"slug": "expressionist-painting",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"Stylise.paint* for 3D parts to match the painted art"
|
|
48
48
|
]
|
|
49
49
|
},
|
|
50
|
-
"
|
|
50
|
+
"ui": "paper",
|
|
51
51
|
"palette": {
|
|
52
52
|
"size": "free, but 3 to 5 dominant masses per scene",
|
|
53
53
|
"rules": "Complementary clashes in shadows; one dominant temperature per scene; avoid neutral greys."
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
],
|
|
97
97
|
"missing": []
|
|
98
98
|
},
|
|
99
|
-
"
|
|
99
|
+
"ui": "fantasy",
|
|
100
100
|
"palette": {
|
|
101
101
|
"size": "20 to 40 colours",
|
|
102
102
|
"rules": "Deep warm or cool shadow colour shared by all materials; accents in one hue family per faction."
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
],
|
|
146
146
|
"missing": []
|
|
147
147
|
},
|
|
148
|
-
"
|
|
148
|
+
"ui": "paper",
|
|
149
149
|
"palette": {
|
|
150
150
|
"size": "12 to 24 colours",
|
|
151
151
|
"rules": "Light values dominate; two or three pigments mixed into the rest; no pure black."
|
|
@@ -196,7 +196,7 @@
|
|
|
196
196
|
],
|
|
197
197
|
"missing": []
|
|
198
198
|
},
|
|
199
|
-
"
|
|
199
|
+
"ui": "fantasy",
|
|
200
200
|
"palette": {
|
|
201
201
|
"size": "sprites 32 to 64 colours; the set is unconstrained but graded to match",
|
|
202
202
|
"rules": "Grade the 3D set with a LUT towards the sprites' palette so the two read as one world."
|
|
@@ -244,7 +244,7 @@
|
|
|
244
244
|
],
|
|
245
245
|
"missing": []
|
|
246
246
|
},
|
|
247
|
-
"
|
|
247
|
+
"ui": "paper",
|
|
248
248
|
"palette": {
|
|
249
249
|
"size": "16 to 32 colours",
|
|
250
250
|
"rules": "Colour per material, gradients only from lighting and fog."
|
|
@@ -295,7 +295,7 @@
|
|
|
295
295
|
],
|
|
296
296
|
"missing": []
|
|
297
297
|
},
|
|
298
|
-
"
|
|
298
|
+
"ui": "cartoon",
|
|
299
299
|
"palette": {
|
|
300
300
|
"size": "warm, slightly desaturated plasticine colours",
|
|
301
301
|
"rules": "Matte surfaces; saturation from the clay, not the light."
|
|
@@ -344,7 +344,7 @@
|
|
|
344
344
|
],
|
|
345
345
|
"missing": []
|
|
346
346
|
},
|
|
347
|
-
"
|
|
347
|
+
"ui": "pixel",
|
|
348
348
|
"palette": {
|
|
349
349
|
"size": "8 to 16 colours",
|
|
350
350
|
"rules": "Ramps of 3 or 4 steps per material; one shared black; no gradients; background colours darker or desaturated against sprites."
|
|
@@ -393,7 +393,7 @@
|
|
|
393
393
|
],
|
|
394
394
|
"missing": []
|
|
395
395
|
},
|
|
396
|
-
"
|
|
396
|
+
"ui": "pixel",
|
|
397
397
|
"palette": {
|
|
398
398
|
"size": "32 to 64 colours (a voxel palette)",
|
|
399
399
|
"rules": "One palette for the whole world; shade by light, not by palette steps."
|
|
@@ -444,7 +444,7 @@
|
|
|
444
444
|
"Stylise.paintCanvas for the vellum grain"
|
|
445
445
|
]
|
|
446
446
|
},
|
|
447
|
-
"
|
|
447
|
+
"ui": "paper",
|
|
448
448
|
"palette": {
|
|
449
449
|
"size": "10 to 16 colours",
|
|
450
450
|
"rules": "Parchment ground, iron-gall ink, a few mineral pigments (ultramarine, vermilion, verdigris) and gold."
|
|
@@ -495,7 +495,7 @@
|
|
|
495
495
|
"the look is in frame-by-frame animation (flipbooks); the engine supplies the film treatment"
|
|
496
496
|
]
|
|
497
497
|
},
|
|
498
|
-
"
|
|
498
|
+
"ui": "cartoon",
|
|
499
499
|
"palette": {
|
|
500
500
|
"size": "sepia or muted primaries, 12 to 24 colours",
|
|
501
501
|
"rules": "Inked black lines, flat fills, a warm faded grade over everything."
|
|
@@ -544,7 +544,7 @@
|
|
|
544
544
|
],
|
|
545
545
|
"missing": []
|
|
546
546
|
},
|
|
547
|
-
"
|
|
547
|
+
"ui": "paper",
|
|
548
548
|
"palette": {
|
|
549
549
|
"size": "graphite or sepia ramp plus paper, optional single accent",
|
|
550
550
|
"rules": "Value from line density only; the accent marks danger or the goal."
|
|
@@ -596,7 +596,7 @@
|
|
|
596
596
|
"ornament is content; Stylise.depthBands for layered haze"
|
|
597
597
|
]
|
|
598
598
|
},
|
|
599
|
-
"
|
|
599
|
+
"ui": "fantasy",
|
|
600
600
|
"palette": {
|
|
601
601
|
"size": "cool desaturated base with 1 or 2 glowing accents",
|
|
602
602
|
"rules": "Dark blue-grey grounds, pale characters, glows in one hue."
|
|
@@ -647,7 +647,7 @@
|
|
|
647
647
|
"painted backdrops are content; Stylise.paint* for 3D props"
|
|
648
648
|
]
|
|
649
649
|
},
|
|
650
|
-
"
|
|
650
|
+
"ui": "fantasy",
|
|
651
651
|
"palette": {
|
|
652
652
|
"size": "free, organised by warm light and cool shadow",
|
|
653
653
|
"rules": "Saturation highest at the light's edge; value grouping in three planes."
|
|
@@ -697,7 +697,7 @@
|
|
|
697
697
|
"illustration is content; Stylise.ink and paintCanvas"
|
|
698
698
|
]
|
|
699
699
|
},
|
|
700
|
-
"
|
|
700
|
+
"ui": "cartoon",
|
|
701
701
|
"palette": {
|
|
702
702
|
"size": "16 to 32 colours",
|
|
703
703
|
"rules": "Soft saturated hues, coloured line work, patterns from the same palette."
|
|
@@ -747,7 +747,7 @@
|
|
|
747
747
|
"the source paintings and cut-outs are content (public-domain scans or original painting); no engine primitive is missing"
|
|
748
748
|
]
|
|
749
749
|
},
|
|
750
|
-
"
|
|
750
|
+
"ui": "paper",
|
|
751
751
|
"palette": {
|
|
752
752
|
"size": "the source paintings' own",
|
|
753
753
|
"rules": "Grade all sources to a common varnish tone with a LUT."
|
|
@@ -797,7 +797,7 @@
|
|
|
797
797
|
"the drawing is content; Stylise.ink can outline 3D props to match"
|
|
798
798
|
]
|
|
799
799
|
},
|
|
800
|
-
"
|
|
800
|
+
"ui": "paper",
|
|
801
801
|
"palette": {
|
|
802
802
|
"size": "monochrome ink or 4 to 8 light colours",
|
|
803
803
|
"rules": "White or off-white ground; colour never hides line."
|
|
@@ -847,7 +847,7 @@
|
|
|
847
847
|
"silhouettes are content; Stylise.palette locks the colours"
|
|
848
848
|
]
|
|
849
849
|
},
|
|
850
|
-
"
|
|
850
|
+
"ui": "fantasy",
|
|
851
851
|
"palette": {
|
|
852
852
|
"size": "2 to 4 colours",
|
|
853
853
|
"rules": "Ochre ground, black figures, a lighter line colour, optional red-brown."
|
|
@@ -896,7 +896,7 @@
|
|
|
896
896
|
],
|
|
897
897
|
"missing": []
|
|
898
898
|
},
|
|
899
|
-
"
|
|
899
|
+
"ui": "fantasy",
|
|
900
900
|
"palette": {
|
|
901
901
|
"size": "muted 12 to 24 colours plus black",
|
|
902
902
|
"rules": "Desaturated mid-tones, black for every shadow, one blood or fire accent."
|
|
@@ -945,7 +945,7 @@
|
|
|
945
945
|
],
|
|
946
946
|
"missing": []
|
|
947
947
|
},
|
|
948
|
-
"
|
|
948
|
+
"ui": "pixel",
|
|
949
949
|
"palette": {
|
|
950
950
|
"size": "2 colours plus at most 1 accent",
|
|
951
951
|
"rules": "Pick ink and paper first; shading only through dither or pattern; the accent means one thing."
|
|
@@ -994,7 +994,7 @@
|
|
|
994
994
|
],
|
|
995
995
|
"missing": []
|
|
996
996
|
},
|
|
997
|
-
"
|
|
997
|
+
"ui": "pixel",
|
|
998
998
|
"palette": {
|
|
999
999
|
"size": "32 to 64 colours",
|
|
1000
1000
|
"rules": "Ramps of 4 to 6 steps; hue-shifted shadows (cooler) and highlights (warmer); saturated accents on characters, calmer backgrounds."
|
|
@@ -1044,7 +1044,7 @@
|
|
|
1044
1044
|
],
|
|
1045
1045
|
"missing": []
|
|
1046
1046
|
},
|
|
1047
|
-
"
|
|
1047
|
+
"ui": "fantasy",
|
|
1048
1048
|
"palette": {
|
|
1049
1049
|
"size": "48 to 128 colours",
|
|
1050
1050
|
"rules": "Long hue-shifted ramps; a value plan per scene that keeps the play area mid-value and the foreground darkest."
|
|
@@ -1094,7 +1094,7 @@
|
|
|
1094
1094
|
],
|
|
1095
1095
|
"missing": []
|
|
1096
1096
|
},
|
|
1097
|
-
"
|
|
1097
|
+
"ui": "neon",
|
|
1098
1098
|
"palette": {
|
|
1099
1099
|
"size": "24 to 48 colours",
|
|
1100
1100
|
"rules": "A near-black ground with two or three saturated light hues; no mid-grey fills; accents reserved for interactables."
|
|
@@ -1143,7 +1143,7 @@
|
|
|
1143
1143
|
],
|
|
1144
1144
|
"missing": []
|
|
1145
1145
|
},
|
|
1146
|
-
"
|
|
1146
|
+
"ui": "fantasy",
|
|
1147
1147
|
"palette": {
|
|
1148
1148
|
"size": "32 to 64 colours",
|
|
1149
1149
|
"rules": "Floors desaturated and mid-value; walls darker on their faces; characters most saturated."
|
|
@@ -1194,7 +1194,7 @@
|
|
|
1194
1194
|
],
|
|
1195
1195
|
"missing": []
|
|
1196
1196
|
},
|
|
1197
|
-
"
|
|
1197
|
+
"ui": "scifi",
|
|
1198
1198
|
"palette": {
|
|
1199
1199
|
"size": "free, but posterised to 32 levels per channel",
|
|
1200
1200
|
"rules": "Fog colour equals the clear colour; dithered gradients."
|
|
@@ -1242,7 +1242,7 @@
|
|
|
1242
1242
|
],
|
|
1243
1243
|
"missing": []
|
|
1244
1244
|
},
|
|
1245
|
-
"
|
|
1245
|
+
"ui": "pixel",
|
|
1246
1246
|
"palette": {
|
|
1247
1247
|
"size": "6 to 16 colours",
|
|
1248
1248
|
"rules": "Each scene has one dominant mass colour; detail colour only where the eye should go."
|
|
@@ -1293,7 +1293,7 @@
|
|
|
1293
1293
|
],
|
|
1294
1294
|
"missing": []
|
|
1295
1295
|
},
|
|
1296
|
-
"
|
|
1296
|
+
"ui": "neon",
|
|
1297
1297
|
"palette": {
|
|
1298
1298
|
"size": "24 to 48 colours",
|
|
1299
1299
|
"rules": "Two tones per material (lit, shadow) with hue-shifted shadows; highlights as shapes."
|
|
@@ -1344,7 +1344,7 @@
|
|
|
1344
1344
|
],
|
|
1345
1345
|
"missing": []
|
|
1346
1346
|
},
|
|
1347
|
-
"
|
|
1347
|
+
"ui": "scifi",
|
|
1348
1348
|
"palette": {
|
|
1349
1349
|
"size": "free, saturated",
|
|
1350
1350
|
"rules": "Bold local colours, black ink for all shadow edges."
|
|
@@ -1394,7 +1394,7 @@
|
|
|
1394
1394
|
],
|
|
1395
1395
|
"missing": []
|
|
1396
1396
|
},
|
|
1397
|
-
"
|
|
1397
|
+
"ui": "paper",
|
|
1398
1398
|
"palette": {
|
|
1399
1399
|
"size": "8 to 16 colours",
|
|
1400
1400
|
"rules": "Colours of real paper stock: muted, slightly warm; white is off-white."
|
|
@@ -1444,7 +1444,7 @@
|
|
|
1444
1444
|
],
|
|
1445
1445
|
"missing": []
|
|
1446
1446
|
},
|
|
1447
|
-
"
|
|
1447
|
+
"ui": "cartoon",
|
|
1448
1448
|
"palette": {
|
|
1449
1449
|
"size": "soft pastel 24 to 48 colours",
|
|
1450
1450
|
"rules": "Bright but slightly desaturated; warm sunlight, cool shadows."
|
|
@@ -1494,7 +1494,7 @@
|
|
|
1494
1494
|
],
|
|
1495
1495
|
"missing": []
|
|
1496
1496
|
},
|
|
1497
|
-
"
|
|
1497
|
+
"ui": "fantasy",
|
|
1498
1498
|
"palette": {
|
|
1499
1499
|
"size": "free, harmonised by a LUT",
|
|
1500
1500
|
"rules": "Two or three dominant hues per area; graded towards them."
|
|
@@ -1546,7 +1546,7 @@
|
|
|
1546
1546
|
],
|
|
1547
1547
|
"missing": []
|
|
1548
1548
|
},
|
|
1549
|
-
"
|
|
1549
|
+
"ui": "scifi",
|
|
1550
1550
|
"palette": {
|
|
1551
1551
|
"size": "free, graded",
|
|
1552
1552
|
"rules": "One grade per area; avoid oversaturation; skin tones protected."
|
|
@@ -1597,7 +1597,7 @@
|
|
|
1597
1597
|
],
|
|
1598
1598
|
"missing": []
|
|
1599
1599
|
},
|
|
1600
|
-
"
|
|
1600
|
+
"ui": "scifi",
|
|
1601
1601
|
"palette": {
|
|
1602
1602
|
"size": "greys and one accent",
|
|
1603
1603
|
"rules": "Desaturated everything; the accent is red or warm light only where the story points."
|
|
@@ -1646,7 +1646,7 @@
|
|
|
1646
1646
|
],
|
|
1647
1647
|
"missing": []
|
|
1648
1648
|
},
|
|
1649
|
-
"
|
|
1649
|
+
"ui": "neon",
|
|
1650
1650
|
"palette": {
|
|
1651
1651
|
"size": "1 hue in 4 to 6 values, or black plus a gradient sky",
|
|
1652
1652
|
"rules": "Value steps per layer; colour only in the far layers or a single accent."
|
|
@@ -1695,7 +1695,7 @@
|
|
|
1695
1695
|
],
|
|
1696
1696
|
"missing": []
|
|
1697
1697
|
},
|
|
1698
|
-
"
|
|
1698
|
+
"ui": "neon",
|
|
1699
1699
|
"palette": {
|
|
1700
1700
|
"size": "3 to 6 colours",
|
|
1701
1701
|
"rules": "One ground, one figure colour, one accent; contrast by hue and value."
|
|
@@ -1746,7 +1746,7 @@
|
|
|
1746
1746
|
],
|
|
1747
1747
|
"missing": []
|
|
1748
1748
|
},
|
|
1749
|
-
"
|
|
1749
|
+
"ui": "neon",
|
|
1750
1750
|
"palette": {
|
|
1751
1751
|
"size": "black plus 2 to 4 saturated hues",
|
|
1752
1752
|
"rules": "Each hue one meaning (player, enemy, pickup); white only for the hottest centres."
|
|
@@ -1795,7 +1795,7 @@
|
|
|
1795
1795
|
],
|
|
1796
1796
|
"missing": []
|
|
1797
1797
|
},
|
|
1798
|
-
"
|
|
1798
|
+
"ui": "pixel",
|
|
1799
1799
|
"palette": {
|
|
1800
1800
|
"size": "2 to 4 colours",
|
|
1801
1801
|
"rules": "Ink and paper, optionally one mid-tone and one accent."
|
|
@@ -1846,7 +1846,7 @@
|
|
|
1846
1846
|
],
|
|
1847
1847
|
"missing": []
|
|
1848
1848
|
},
|
|
1849
|
-
"
|
|
1849
|
+
"ui": "fantasy",
|
|
1850
1850
|
"palette": {
|
|
1851
1851
|
"size": "dark cool masses plus warm luminous accents",
|
|
1852
1852
|
"rules": "Value structure first: dark foreground, mid play plane, glowing background."
|
package/knowledge/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@origingame/engine-knowledge",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Origin Engine knowledge for agents: the API wiki generated from api.ogt, the ten og-* skills, the style catalogue and the project scaffold description, laid out for the OriginGame platform's knowledge packs. Not published on its own: @origingame/engine carries it as knowledge/ (docs/release.md §2).",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"private": true,
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
|
-
"url": "git+https://github.com/
|
|
9
|
+
"url": "git+https://github.com/originai-game/origin-engine.git",
|
|
10
10
|
"directory": "packages/knowledge"
|
|
11
11
|
},
|
|
12
|
-
"homepage": "https://github.com/
|
|
12
|
+
"homepage": "https://github.com/originai-game/origin-engine#readme",
|
|
13
13
|
"bugs": {
|
|
14
|
-
"url": "https://github.com/
|
|
14
|
+
"url": "https://github.com/originai-game/origin-engine/issues"
|
|
15
15
|
},
|
|
16
16
|
"type": "module",
|
|
17
17
|
"files": [
|
|
@@ -43,6 +43,20 @@
|
|
|
43
43
|
"sha256": "c3bfb1778ace9010f8da8f3ea8664e68cddf446776a2dff7bdcf11f31bb22dcb",
|
|
44
44
|
"licence": "CC0 1.0 (LICENSES.md)",
|
|
45
45
|
"source": "templates/game/assets/textures/stone_n.png of origingame/origin-engine; shipped in @origingame/create-game's template/"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"path": "references/metal/intro-4.png",
|
|
49
|
+
"bytes": 185733,
|
|
50
|
+
"sha256": "a2428ea5493614decdd72f4c8f34a71753bb8f64f785b4cd56e34586c1edf4fb",
|
|
51
|
+
"licence": "unrecorded: add it to the template's LICENSES.md",
|
|
52
|
+
"source": "templates/game/references/metal/intro-4.png of origingame/origin-engine; shipped in @origingame/create-game's template/"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"path": "references/metal/intro-8.png",
|
|
56
|
+
"bytes": 200353,
|
|
57
|
+
"sha256": "59120cf3994fd48db7cb39d181cd88fb5f93a0cbaed16ff89c42ba95c9a7b308",
|
|
58
|
+
"licence": "unrecorded: add it to the template's LICENSES.md",
|
|
59
|
+
"source": "templates/game/references/metal/intro-8.png of origingame/origin-engine; shipped in @origingame/create-game's template/"
|
|
46
60
|
}
|
|
47
61
|
]
|
|
48
62
|
}
|
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
"substrate": "origin-engine-ts",
|
|
5
5
|
"engine": {
|
|
6
6
|
"package": "@origingame/engine",
|
|
7
|
-
"version": "0.
|
|
7
|
+
"version": "0.3.0",
|
|
8
8
|
"repository": "origingame/origin-engine"
|
|
9
9
|
},
|
|
10
10
|
"template": {
|
|
11
11
|
"source": "templates/game",
|
|
12
12
|
"create": "@origingame/create-game",
|
|
13
|
-
"version": "0.
|
|
13
|
+
"version": "0.3.0"
|
|
14
14
|
},
|
|
15
15
|
"probe": {
|
|
16
16
|
"protocol": 5,
|
|
@@ -8,7 +8,7 @@ through the wall, raises the alarm, chases, searches and goes back.
|
|
|
8
8
|
|
|
9
9
|
```sh
|
|
10
10
|
og run . # headless with the probe; og dev . reloads on save
|
|
11
|
-
og test . # tests/smoke.og.ts and tests/
|
|
11
|
+
og test . # tests/smoke.og.ts, tests/guard.og.ts and tests/intro.og.ts
|
|
12
12
|
og polish . # the taste and feel scores of those playtests
|
|
13
13
|
og build . # the play page
|
|
14
14
|
```
|
|
@@ -25,6 +25,7 @@ og build . # the play page
|
|
|
25
25
|
| Every word the menu shows from a string table, the base one in the source language | `assets/strings/en.ogt`, `Menu` | og-i18n §1, §2 |
|
|
26
26
|
| A guard as data: a state machine on og.ai, a navmesh cooked from the yard, sight cones against the wall | `assets/ai/guard.ogt`, `assets/nav/yard.ogt` | og-ai §1–§5 |
|
|
27
27
|
| Commands with their usage in `help`, facts for playtests | `commands`, `commandHelp`, `facts` | og-game §3; og-build §1 |
|
|
28
|
+
| A cutscene as data: a camera on a rail, the trickster's clips and walk, narration from an `.srt`, sounds, an event key running `spawn_wave`, fades and markers, played by `timeline:play:intro` | `assets/timelines/intro.ogt`, `narration.srt`, `tests/intro.og.ts` | og-game §9 "Cutscenes" |
|
|
28
29
|
| Playtests that assert on dumps and facts, never on the code | `tests/` | og-build §3, §4 |
|
|
29
30
|
|
|
30
31
|
`og polish .` (2026-10-19): taste 100, feel 87 (tests/evidence/E7/polish/
|