t1k-cocos-rushtank-design-ladder
RushTank — Data-First Ladder & Variant-First
Section titled “RushTank — Data-First Ladder & Variant-First”Governs design decisions for Epic Idle War / RushTank (Cocos Creator 2.4.15). Applies both when writing a GDD and when implementing one.
The rule for writing documents lives in docs/guides/gdd-authoring-rules.md; the engine capability map in docs/game-systems/boss-bullet-event-capability.md.
RT-1 — Data-First Ladder
Section titled “RT-1 — Data-First Ladder”Before proposing or executing any gameplay change, try the tiers below in order and stop at the cheapest one that works. Jumping to a higher tier without stating why is a violation.
| Tier | What you edit | Examples of what this tier already does |
|---|---|---|
T1 data-map | resources/map/adv/<ch>-<stage>.json | Swap one bullet slot (blt override) · override a mob shader (shader) · per-entry atk/hp multiplier (atk0/hp0) · boss phase by HP (COND.STATUS + hp%) · timer-driven mob spawn, infinite repeat (COND.TIMER + ACT.CREATE + repeat:-1) · toggle an event (ACT.SWITCH) · swap AI config mid-battle (ACT.AI + aiCfg) |
T2 data-define | New BULLET_DEFINE / ENTITY, variants | New bullet (change n/d/spd/gravity/jump/rttSpd) · entity variant with new art + stats (template mob-variants.js) |
T3 code-ai | assets/script/ai/** | Give aiming to an AI that cannot aim · change how attackSequence is selected |
T4 code-engine | core/base/Entity.js, entities/projectiles/**, managers/LevelManager.js | Change firing-angle math, the bullet system, the event system |
Required in every proposal: name the tier and give one sentence on why the tier below is not enough.
Passing example: “T2, because we need a different gravity — a T1 blt override can only point at an already-existing define.”
Higher-tier warning
Section titled “Higher-tier warning”Before accepting T3/T4, scan the “Engine constraints that bite” section of the capability map — the two that bite most: AIProto.aim() solves the trajectory always against blt[0], and the bltMax ceiling.
RT-2 — Variant-First
Section titled “RT-2 — Variant-First”For any new content (mob, boss, vehicle), answer this before designing: variant or new entity?
| If the only change is… | → | How to do it |
|---|---|---|
| Texture / color | shader on the map entry (T1), or a variant changing avatar.anime (T2) | |
| Texture + stats | Variant — template scripts/mob-variants.js: keep nameKey, point blt/attackSequence/pilot straight at the original define | |
| A single bullet | blt override on the map entry (T1) | |
| Bullet set + behavior | New entity (T2) |
The project already has the variant template and 3 dedicated skills: t1k-cocos-rushtank-entity-variant, -add-player-tank, -add-equipment. Activate the matching skill instead of rebuilding the procedure — they carry the known crash spots with them.
Related
Section titled “Related”docs/guides/gdd-authoring-rules.md— GDD authoring rules; RT-1 is the data behind the Tier column of rule R3.docs/game-systems/boss-bullet-event-capability.md— map-JSON field catalog, which AI can aim, engine constraints.- Skills
t1k-cocos-rushtank-entity-variant/-add-player-tank/-add-equipment— the execution procedures.
Why behind RT-1 (the 2026-07-29 GDD mis-tiering incident) and RT-2 (variant-vs-new-entity call): docs/cocos-rushtank-design-ladder.md.