Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
72584d8
Add building upgrade progression system
congci6 Jun 27, 2026
1ce43d3
Improve upgrade readiness HUD feedback
congci6 Jun 27, 2026
696b25c
Tighten advisor adoption feedback flow
congci6 Jun 27, 2026
99af909
Expire advisor adoption after mismatched success
congci6 Jun 27, 2026
63a2110
Reset advisor runtime state on city reload
congci6 Jun 27, 2026
4b13f28
Add advisor runtime state save/load integration
congci6 Jun 27, 2026
9b274d5
Add Phaser + TypeScript + Vite browser game project
congci6 Jun 27, 2026
8ec7ac1
Add browser planning tools
congci6 Jun 27, 2026
663852e
Add non-Unity WeChat canvas runtime
congci6 Jun 27, 2026
cbdb7bc
Add production orders and residential upgrades
congci6 Jun 27, 2026
6f35175
Add city objectives and rewards
congci6 Jun 27, 2026
b6c2f73
Add offline production progress
congci6 Jun 27, 2026
bf78bb6
Add civic service coverage
congci6 Jun 27, 2026
dd3c706
Add road capacity upgrades
congci6 Jun 27, 2026
9e61985
Add city level progression
congci6 Jun 27, 2026
e611ba7
Add level-based unlocks
congci6 Jun 27, 2026
b0ceff8
Add objective action advice
congci6 Jun 27, 2026
344c5b6
Add deterministic terrain
congci6 Jun 27, 2026
86174db
Add procedural zone markers
congci6 Jun 27, 2026
4dcc5ed
Add tax rate controls
congci6 Jun 27, 2026
2c81e8b
Add zoning demand signals
congci6 Jun 27, 2026
f9196e2
Add demand driven zone development
congci6 Jun 27, 2026
a33afb8
Add map camera controls
congci6 Jun 27, 2026
9f6e49b
Add city event digest
congci6 Jun 27, 2026
e8a23ab
Add demand driver analysis
congci6 Jun 27, 2026
e696a4a
Add alert priority digest
congci6 Jun 27, 2026
4adeb06
Add risk forecast advisor
congci6 Jun 27, 2026
486fb49
Add service gap advisor
congci6 Jun 27, 2026
a078fee
Add road hierarchy advisor
congci6 Jun 27, 2026
9f2f27a
Add budget breakdown advisor
congci6 Jun 27, 2026
9522781
Add district priority advisor
congci6 Jun 27, 2026
f8875ef
Add commute corridor advisor
congci6 Jun 27, 2026
377e9b9
Add housing affordability advisor
congci6 Jun 27, 2026
ddf7e87
Add building upgrade readiness advisor
congci6 Jun 27, 2026
6dd64bd
Add economic specialization advisor
congci6 Jun 27, 2026
0e874dc
Add growth bottleneck advisor
congci6 Jun 27, 2026
a503593
Add tile inspector overlay legend
congci6 Jun 27, 2026
3dcf21c
Add simulation pause speed controls
congci6 Jun 27, 2026
50b714d
Add city policy impact previews
congci6 Jun 27, 2026
bf00801
Add HUD insight priority stack
congci6 Jun 27, 2026
140e6e2
Add administration capacity milestone
congci6 Jun 27, 2026
f994883
Add WeChat safe lifecycle feedback
congci6 Jun 28, 2026
aad1797
Add functional land-use buffer simulation
congci6 Jun 28, 2026
5724fb7
Add compact land-use efficiency feedback
congci6 Jun 28, 2026
f0d14a0
Add development quality district feedback
congci6 Jun 28, 2026
8a78f71
Add natural high-density residential growth
congci6 Jun 28, 2026
148c053
Add natural mixed-use core growth
congci6 Jun 28, 2026
2cb66a8
Add natural office district growth
congci6 Jun 28, 2026
ba3afe3
Add city attraction tourism economy
congci6 Jun 28, 2026
91d2372
Add workforce skill labor economy
congci6 Jun 28, 2026
2931887
Polish WeChat demand summary
congci6 Jun 28, 2026
e483b06
Tighten WeChat panel text fitting
congci6 Jun 28, 2026
359fbf2
Fit WeChat toolbar on small screens
congci6 Jun 28, 2026
ec0dfa4
Fit WeChat top bar on small screens
congci6 Jun 28, 2026
16508f0
Fit WeChat panels in landscape
congci6 Jun 28, 2026
0659ba6
Fit WeChat status text
congci6 Jun 28, 2026
f2b5994
Verify generated WeChat runtime markers
congci6 Jun 28, 2026
31bd8a6
Run WeChat marker checks from verify script
congci6 Jun 28, 2026
a4fe550
Smoke test generated WeChat runtime
congci6 Jun 28, 2026
b219d96
Smoke test WeChat tool placement
congci6 Jun 28, 2026
2e55391
Derive WeChat smoke tap targets from canvas
congci6 Jun 28, 2026
9366c6f
Verify active WeChat runtime by default
congci6 Jun 28, 2026
b9f8e45
Remove Unity wording from shared types
congci6 Jun 28, 2026
7e134c1
Smoke test WeChat management actions
congci6 Jun 28, 2026
68d8576
Remove Unity project from active runtime
congci6 Jun 28, 2026
15b8b41
Expand WeChat smoke coverage
congci6 Jun 28, 2026
1b656a4
Cover WeChat optional API fallbacks
congci6 Jun 28, 2026
814e2b4
Smoke test corrupted WeChat saves
congci6 Jun 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 9 additions & 9 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# AGENTS.md

## Project
This is a Unity-first WeChat Mini Game city-building simulation. The retired TypeScript prototype is stored under `legacy/typescript-prototype/` only for migration reference.
This is a non-Unity WeChat Mini Game city-building simulation. The current playable runtime is generated from the TypeScript project under `browser/`; Unity project code is not part of the active architecture.

## Rules
- Active gameplay work belongs in `unity/Assets/Scripts/PocketCity`.
- Keep core simulation in `PocketCity.Core` and `PocketCity.Simulation` independent from Unity scene objects and WeChat APIs.
- Unity runtime glue belongs in `PocketCity.Runtime`.
- WeChat platform calls must stay behind `WeChatMiniGameBridge` or WebGL `.jslib` files.
- Balance and building definitions should be generated into `CityConfig` assets, not hard-coded in scene behaviours.
- Do not reintroduce a TypeScript / Three.js runtime as an active version.
- Active gameplay work belongs in `browser/src`.
- Keep core simulation in `browser/src/simulation` and shared types in `browser/src/types` independent from DOM, Phaser scene objects, and WeChat APIs.
- Browser-only debug glue may use Phaser under `browser/src/game` and DOM HUD code under `browser/src/ui`.
- WeChat platform calls belong in `browser/src/wechat/main.ts` behind the local `WeChatRuntime` interface; do not hand-edit generated `miniprogram/game.js`.
- Do not add or restore Unity project code; migrate useful historical behavior into the TypeScript simulation/runtime instead.
- Do not introduce Three.js, Worker, WebGL2, SharedArrayBuffer, DOM, or Phaser dependencies into the WeChat Canvas runtime.
- Do not copy assets, UI, names, mechanics, task text, or balance values from existing city-builder IP.

## Verification
- Run `npm run verify` after scaffold or file-structure changes.
- In a Unity-equipped environment, open `unity/`, run the default config generator, and check the Console for C# compile errors.
- For release candidates, export through the WeChat mini game conversion SDK and record package size and FPS.
- Run `npm run smoke:wechat` after touching `browser/src/wechat/main.ts`, generated package flow, or save/lifecycle behavior.
- For release candidates, build with `npm run build:wechat`, open `miniprogram/` in WeChat DevTools, and record package size and FPS.
148 changes: 41 additions & 107 deletions README.md

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions browser/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
node_modules
dist
*.log
.DS_Store
20 changes: 20 additions & 0 deletions browser/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
<title>城市规划 - Pocket City</title>
<link rel="icon" href="data:,">
<style>
*{margin:0;padding:0;box-sizing:border-box}
html,body{width:100%;height:100%;overflow:hidden;background:#152019;font-family:Inter,Arial,"Microsoft YaHei",sans-serif}
#game-container{width:100%;height:100%;position:relative}
#hud-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:10}
</style>
</head>
<body>
<div id="game-container"></div>
<div id="hud-overlay"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
Loading