diff --git a/AI_MAP.md b/AI_MAP.md index 6c04a96..f801193 100644 --- a/AI_MAP.md +++ b/AI_MAP.md @@ -8,6 +8,7 @@ Purpose: static Japanese browser simulation/game. Optimize context by reading th - Runtime style: plain browser JS, global IIFEs, exports on `window`, no bundler/module loader. - Version/cache: `app_manifest.json`, `js/version.js`, and generated `service-worker.js` share `39.15.103`. - Main loop: `js/main.js` initializes assets/audio/world/UI/save, then drives update/render. +- Performance/display settings: `js/perf_profiler.js` owns manual visual settings and profiler buckets; display tiers affect rendering/visuals, not simulation-quality branches. - Update order: `js/system_order.js` calls phase facades from `js/simulation_systems.js`. - Command path: UI/input emits command objects; `js/command_dispatcher.js` routes tool, pointer, selection, save, reset, and UI intents. - Persistence: save files are schema/codec/storage/coordinator modules; snapshot/history modules keep world restoration and stats consistent. @@ -45,6 +46,8 @@ Purpose: static Japanese browser simulation/game. Optimize context by reading th - Tool behavior: `js/command_dispatcher.js`, `js/world_tool_actions.js`, `js/item_registry.js`, relevant `js/item_*` or `js/tarinai_item_*`. - Creature behavior: `js/tarinai.js`, `js/tarinai_update_pipeline.js`, relevant `js/tarinai_*`, `js/system_order.js`. - World/environment/combat: matching `js/world_*`, `js/simulation_*`, `js/system_order.js`. +- Fire/burning behavior: `js/fire_runtime_system.js`, `js/item_dynamic_tool_system.js`, relevant item definitions, `js/world_combat_effects.js`, and nearby environment helpers. +- Performance/crowding: `js/perf_profiler.js`, `js/item_update_scheduler.js`, `js/tarinai_update_policy.js`, `js/constraint_system.js`, `js/world_spatial_budget.js`, and render/detail code. - Save/load: `js/save_schema.js`, `js/save_codec.js`, `js/save_system.js`, `js/snapshot_system.js`, `js/restore_coordinator.js`. - Family tree: `js/world_family_social.js`, `js/family_graph.js`, `js/ui_family_*.js`. - Static app/cache/version: `app_manifest.json`, `scripts/generate_app_files.py`, `service-worker.js`, `js/version.js`, `index.html`. @@ -53,6 +56,7 @@ Purpose: static Japanese browser simulation/game. Optimize context by reading th - Preserve `index.html` script order unless all dependent manifests/generated files are updated together. - Keep `app_manifest.json`, `js/version.js`, `service-worker.js`, and cache query versions synchronized. -- Keep global exports for compatibility with regression checks and browser runtime. +- Keep intentional global exports for compatibility with regression checks and browser runtime; remove public facades only after repo-wide caller checks. - Prefer focused edits in the owning subsystem; split modules are intentional compatibility boundaries. +- Avoid reintroducing `simulationQualityTier` branches unless a real simulation-quality setting is restored; current quality controls are visual/detail controls. - Run `node --check js/*.js` and `python scripts/regression_check.py` for behavior changes. diff --git a/GAME_FEATURES.md b/GAME_FEATURES.md index 8a77557..cdfd96c 100644 --- a/GAME_FEATURES.md +++ b/GAME_FEATURES.md @@ -17,7 +17,7 @@ The core loop is: - **Canvas / field**: the main simulation area. Tarinai, items, effects, ants, weather, and terrain are drawn here. - **Top buttons**: pause/resume, speed control, ecology guide, sound settings, credits, save, display settings, and reset. -- **Display settings**: manually adjust effects, shadows, and drawing detail. `High` keeps quality-preserving optimizations active, while lower tiers cut heavier visuals for crowded scenes without lowering object limits. +- **Display settings**: manually adjust effects, shadows, and drawing detail. `High` keeps quality-preserving optimizations active, while lower tiers cut heavier visuals for crowded scenes without lowering object limits; simulation cadence remains quality-preserving. - **Mobile mode controls**: auto, camera, and tool modes for touch screens. - **Right panel tabs**: jump between main game, selected tarinai data, tools, colony, events, and family tree. - **Tarinai data panel**: appears when a tarinai is selected. Shows health, needs, personality, active effects, relations, inventory, behavior reason, and records. @@ -48,7 +48,7 @@ The core loop is: - **ずんだ餅 / sweet**: favored food; can cure some illness. - **へこ餅 / love mochi**: makes reproduction behavior more likely for a while. - **けんか餅 / fight mochi**: makes fighting behavior more likely for a while. -- **草 / grass**: food and comfort source; can grow and be used for simple beds. +- **草 / grass**: food and comfort source; can grow, be used for simple beds, and sometimes dampen nearby fire instead of immediately catching. - **水滴 / water**: drinkable water, also appears during rain and can be set in duplicators. - **ずんだ汁 / zunda juice**: clears item effects from a tarinai. - **複製機 / duplicator**: can be loaded with compatible food, medicine, grass, water, pushpins, or oshibyo and then produces or applies that content. @@ -89,7 +89,7 @@ The core loop is: - **石 / stone**: heavy object; dangerous when dropped or moved into others. - **げんこつ / genkotsu**: large fist impact on the ground. -- **爆竹 / firecracker**: creates an explosion. +- **爆竹 / firecracker**: creates an explosion; flame variants scatter fire while respecting active-fire limits. - **画鋲 / pushpin**: rolls when dropped; can lodge in tarinai and cause panic plus continuous damage. - **おしり鋲 / oshibyo**: blocks zunchi when lodged; pulling it out releases stored zunchi. - **射撃 / shoot**: attacks with a gun effect. @@ -140,7 +140,7 @@ Tarinai can be pushed by physics objects, carried or affected by ants, dragged b - **Field types**: park, garden, and cage provide different field sizes. - **Ground types**: sand, dirt, concrete, blanket, foot massage, ice, and laboratory-style ground affect stress, grass, and movement. - **Weather**: rain and other weather influence water, mood, and environment effects. -- **Grass ecology**: grass grows, feeds tarinai, comforts them, and can become bed material. +- **Grass ecology**: grass grows, feeds tarinai, comforts them, can become bed material, and has a small chance to reduce fire before burning. - **Dirt and corpses**: zunchi, splats, corpses, and ant corpses affect hygiene, disease, and observation results. - **Day/light conditions**: lighting and sun influence rendering and sunbath behavior. diff --git a/app_manifest.json b/app_manifest.json index c7f4c56..ef67904 100644 --- a/app_manifest.json +++ b/app_manifest.json @@ -1,5 +1,5 @@ { - "version": "39.15.107", + "version": "39.15.110", "css": [ "css/base.css", "css/layout.css", diff --git a/index.html b/index.html index fb2185f..edad51f 100644 --- a/index.html +++ b/index.html @@ -7,11 +7,11 @@ - - - - - + + + + +