Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions .gas-snapshot
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
InlineEngineGasTest:test_consecutiveBattleGas() (gas: 18257376)
InlineEngineGasTest:test_identicalBattlesGas() (gas: 15177982)
InlineEngineGasTest:test_identicalBattlesWithEffectsGas() (gas: 19225213)
EngineGasTest:test_consecutiveBattleGas() (gas: 20528818)
EngineGasTest:test_identicalBattlesGas() (gas: 6023249)
EngineGasTest:test_identicalBattlesWithEffectsGas() (gas: 7967704)
EngineGasTest:test_inlineRNGMatchesDefaultOracle() (gas: 20077954)
EngineGasTest:test_inlineVsExternalValidationGas() (gas: 19160436)
InlineEngineGasTest:test_consecutiveBattleGas() (gas: 17790603)
InlineEngineGasTest:test_identicalBattlesGas() (gas: 17374600)
InlineEngineGasTest:test_identicalBattlesWithEffectsGas() (gas: 21384248)
7 changes: 5 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ out/
/broadcast

log.txt
PLAN.md
PLAN*.md

# Dotenv file
.env
Expand Down Expand Up @@ -54,4 +54,7 @@ transpiler/ts-output/
.vscode/
.pytest_cache/
.venv/
.claude/
.claude/
node_modules/

.deploys/
9 changes: 8 additions & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@

**License:** AGPL-3.0
**Solidity version:** 0.8.34
**Target chain:** MegaETH (mainnet and testnet)

## Quick Start

Expand Down Expand Up @@ -235,6 +234,14 @@ The CSV files in `drool/` are the source of truth for mon stats, move parameters
- Mock contracts in `test/mocks/` for isolated testing
- Gas benchmarks in `EngineGasTest.sol` and `InlineEngineGasTest.sol` with JSON snapshots

### Development Approach

When implementing new features or refactors, follow a test-first approach:
1. Write tests that specify the desired behavior
2. Run to verify the tests fail (confirming they test new behavior)
3. Implement the changes
4. Run to verify the tests pass

### Adding a New Mon

1. Add mon stats to `drool/mons.csv` (HP, Attack, Defense, SpAtk, SpDef, Speed, Types)
Expand Down
4 changes: 2 additions & 2 deletions drool/moves.csv
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,9 @@ Iron Wall,Aurox,0,3,100,0,Metal,Self,"Until Aurox switches out, regenerate 50% o
Bull Rush,Aurox,120,2,100,0,Metal,Physical,Deals damage. Also deals 20% of max HP to Aurox.,,none
Contagious Slumber,Xmon,0,2,100,0,Cosmic,Other,"Inflicts Sleep on self and opponent. When asleep, you are forced to rest.",,none
Vital Siphon,Xmon,40,2,90,0,Cosmic,Special,"Deals damage, 50% chance to steal 1 stamina from opponent.",,none
Somniphobia,Xmon,0,1,100,0,Cosmic,Other,"For the next 6 turns, any mon that rests will take 1/16th of max HP as damage.",,none
Somniphobia,Xmon,0,1,100,0,Cosmic,Other,"For the next 6 turns, any mon that rests will take 1/8th of max HP as damage.",,none
Night Terrors,Xmon,0,0,100,0,Cosmic,Special,Gain a Terror stack. Deals damage and costs stamina at end of turn for each Terror stack. Deals extra damage if opponent is alseep.,,none
Bubble Bop,Ekineki,50,3,100,0,Liquid,Special,Hits twice. Each hit deals 50 base power.,,none
Sneak Attack,Ekineki,60,2,100,0,Liquid,Special,Hits any opponent mon (even non-active). Can only be used once per switch-in.,,opponent-mon
Nine Nine Nine,Ekineki,0,2,100,0,Math,Self,Sets crit rate to 90% on the next turn for all moves.,,none
Nine Nine Nine,Ekineki,0,1,100,0,Math,Self,Sets crit rate to 90% on the next turn for all moves.,,none
Overflow,Ekineki,90,3,100,0,Math,Special,Deals damage.,,none
129 changes: 0 additions & 129 deletions processing/buildAll.py

This file was deleted.

Loading