How wolfgang008/mo-ying-jing-lin works
墨影惊鳞 is a browser-based fish-school simulation game. The player creates disturbances, currents, bait, and waves; the game records interaction patterns, the AI director selects a group formation, and individual fish respond through personality rules and Boids motion before the scene is rendered. The README also documents adjustable parameters, decision visualization, and a fixed-path comparison mode. The product is a single-file prototype, so these responsibilities share index.html. No source excerpts were provided; edges reflect documented architecture and omit uncertain implementation details.
Main entry points: index.html AI director
Components 17
Player interaction
- Water gestures
index.html - Player rhythm
index.html - Click heatmap
index.html
AI direction
- AI director
index.html - Formation strategy
index.html
Fish simulation
- Fish personalities
index.html - Boids motion
index.html - Neighbor lookup
index.html - Fixed-path school
index.html
Display and control
- Parameter panel
index.html - Behavior settings
index.html - Decision display
index.html - Decision log
index.html - Comparison mode
index.html - Canvas renderer
index.html - Rendered scene
index.html
Other components
- Player
Connections 21
- Player → Water gestures: gestures
- Water gestures → Player rhythm: records rhythm
- Water gestures → Click heatmap: records locations
- Water gestures → Boids motion: disturbs fish
- Player → Parameter panel: adjusts
- Parameter panel → Behavior settings: updates
- Player rhythm → AI director: informs strategy
- Click heatmap → AI director: informs strategy
- Behavior settings → AI director: configures
- AI director → Formation strategy: selects
- Formation strategy → Boids motion: guides motion
- Fish personalities → Boids motion: modulates response
- Boids motion → Neighbor lookup: queries neighbors
- AI director → Decision display: exposes intent
- AI director → Decision log: records decisions
- Decision display → Decision log: shows log
- Boids motion → Canvas renderer: supplies positions
- Fixed-path school → Comparison mode: supplies baseline
- Boids motion → Comparison mode: supplies AI school
- Comparison mode → Canvas renderer: selects view
- Canvas renderer → Rendered scene: draws