约定仓库忽略构建产物,并固定代理协作边界。
核心不得依赖引擎界面,随机数走统一入口,避免规则写进表现层。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+13
@@ -0,0 +1,13 @@
|
||||
bin/
|
||||
obj/
|
||||
.vs/
|
||||
.idea/
|
||||
*.user
|
||||
*.suo
|
||||
*.userosscache
|
||||
[Dd]ebug/
|
||||
[Rr]elease/
|
||||
_doc_extract/
|
||||
*.DotSettings.user
|
||||
.godot/
|
||||
*.import
|
||||
@@ -0,0 +1,15 @@
|
||||
# Agent rules
|
||||
|
||||
Read `docs/FOUNDATION.md` and `docs/ARCHITECTURE.md` before large refactors.
|
||||
|
||||
- `Game.Core` must not depend on Godot.
|
||||
- All randomness must go through `GameRng`. Simulation and presentation share one rules engine.
|
||||
- UI must not implement game rules. Presentation renders `GameState` and plays `GameEvent`s.
|
||||
- Adding or changing core rules requires adding or updating tests.
|
||||
- Ordinary cards should use standard effects. Do not invent a general-purpose scripting language.
|
||||
- Changing the content schema requires updating the validator and `docs/CONTENT_SCHEMA.md`.
|
||||
- Changing event resolution order requires checking related tests.
|
||||
- Do not create a global rule for a single card.
|
||||
- Prefer the smallest working implementation. Do not optimize until there is a measured bottleneck.
|
||||
- Freeze the 11 core actions in `docs/RULES.md`. New “archetypes” are combinations, conditions, or keywords — not new primitive events.
|
||||
- Card packs are **in-run only**. Unlock state must reset with the run. Do not add cross-run / meta unlocks.
|
||||
@@ -0,0 +1,10 @@
|
||||
<Project>
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<LangVersion>latest</LangVersion>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"sdk": {
|
||||
"version": "8.0.400",
|
||||
"rollForward": "latestMinor"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user