Commit Graph

245 Commits

Author SHA1 Message Date
hypercross 2f2e4e56b5 refactor: decouple card effects from card data in desert sample
Moves card effects from `card.csv` to a dedicated `cardEffect.csv` file.
This allows for more granular control over card triggers (onPlay,
onDraw, onDiscard) and targets, improving the data model for the
slay-the-spire-like sample. Also updates triggers and tests to
reflect this new structure.
2026-04-20 00:00:41 +08:00
hypercross 601eb0f417 refactor: reformat code and introduce IGameContextExport
- Reformat `src/core/game.ts` and sample types to use 2-space
  indentation
- Add `IGameContextExport` to hide internal test properties
- Update `CombatGameContext` to use the exported context type
2026-04-20 00:00:41 +08:00
hyper a82b6b0685 docs: fleshed out agents.md 2026-04-19 18:36:10 +08:00
hypercross 1e1d04777f refactor: reformat code and fix type signatures in GameHost
Reformat `src/core/game-host.ts` to use double quotes and consistent
spacing. Update `createGameHost` to correctly propagate the `TResult`
generic from `GameModule`.
2026-04-19 15:44:59 +08:00
hypercross 8142fbfa60 refactor: simplify buildCombatState and fix formatting in encounter
system

Refactor `buildCombatState` to derive encounter data directly from
`runState` instead of requiring it as an argument. Also apply
consistent 2-space indentation and formatting to the encounter
lifecycle module.
2026-04-19 15:42:47 +08:00
hypercross 89d96d838b refactor(slay-the-spire-like): wrap content module getters in functions 2026-04-19 15:23:17 +08:00
hypercross 6b50e9014a feat(samples/slay-the-spire-like): make ContentModule required 2026-04-19 15:22:45 +08:00
hypercross 39ac37b5f2 style: format slay-the-spire-like index with double quotes 2026-04-19 15:22:02 +08:00
hypercross b264cea305 refactor(slay-the-spire-like): update data export pattern
Convert static data exports to getter functions and update the
ContentModule type to reflect these changes.
2026-04-19 15:20:31 +08:00
hypercross 6577897a42 feat(samples/slay-the-spire-like): add ContentModule type definition 2026-04-19 15:10:17 +08:00
hypercross 4e9e426519 feat(samples): add Item type to desert data
Export the Item type from item.csv and add explicit typing to
startingItems in the desert sample data.
2026-04-19 14:47:58 +08:00
hypercross 4f509da373 docs(samples): update intent.csv comment style 2026-04-19 14:39:54 +08:00
hypercross 63733bc62d refactor: update imports and add starting items to desert sample
- Convert single quotes to double quotes for local imports
- Reformat barrel exports in `src/index.ts` for better readability
- Add `startingItems` to the desert sample data in `slay-the-spire-like`
2026-04-19 13:51:03 +08:00
hyper 3aa92b2d2a refactor: rename that to desert triggers 2026-04-18 15:28:47 +08:00
hyper fa92b5d865 refactor: reorganize trigger code 2026-04-18 15:08:50 +08:00
hyper e46822b45b refactor: avoid globalThis 2026-04-18 14:40:56 +08:00
hyper 03add589c6 refactor: use stacks for the hp of summons 2026-04-18 14:30:20 +08:00
hypercross 4f5747d81d chore: tests for desert triggers 2026-04-17 18:07:49 +08:00
hypercross 0222b66bed feat: export middleware chain 2026-04-17 17:27:46 +08:00
hypercross 90ca8fa761 feat: more effects 2026-04-17 17:15:31 +08:00
hypercross 131af2c0bb feat: implmenet some effects for the design 2026-04-17 16:57:29 +08:00
hypercross 02c159f8ae refactor: move .d.ts to per-file for yarn 2026-04-17 16:55:08 +08:00
hypercross e09e24e274 refactor: barrel export 2026-04-17 16:10:19 +08:00
hypercross a80852bc59 fix: encounter generation 2026-04-17 15:45:52 +08:00
hypercross af0906561c fix: add effect triggering fixes 2026-04-17 15:30:28 +08:00
hypercross aedf82d264 fix: type issues 2026-04-17 15:14:01 +08:00
hypercross 2f085cc0b6 refactor: update csv types 2026-04-17 14:46:09 +08:00
hypercross fb66ec55c4 feat: cost implementation for card play 2026-04-17 14:10:28 +08:00
hypercross f775d51a58 feat: effect and triggers 2026-04-17 12:58:12 +08:00
hypercross aa36f3ea67 feat: enemy intent update 2026-04-17 12:42:29 +08:00
hypercross 0f04af2c6e refactor: update progress 2026-04-17 12:23:10 +08:00
hypercross c11bceeb44 refactor: update generator 2026-04-17 12:10:10 +08:00
hypercross 1d749f59a6 feat: add posture damage & item effect update trigger 2026-04-17 11:57:40 +08:00
hypercross 65afe6dc8f refactor: remove card effect cycle, just use instant instead 2026-04-17 11:13:28 +08:00
hypercross 3a135a4ad1 refactor: reorg 2026-04-17 11:06:09 +08:00
hypercross 1c238aec3a refactor: type rewrite 2026-04-17 10:18:37 +08:00
hypercross a469b4024a refactor: combat rewrite 2026-04-17 09:27:20 +08:00
hypercross 7d8684a16f refactor: middle ware triggers 2026-04-17 08:33:02 +08:00
hypercross 3dc566c2fd refactor: types 2026-04-17 01:28:43 +08:00
hypercross 3f3490fad8 refactor: reorg 2026-04-17 01:05:48 +08:00
hypercross 5e55b58c43 refactor: data reorg complete 2026-04-17 01:01:26 +08:00
hypercross f8c008b67d wip: data reorg 2026-04-17 00:52:47 +08:00
hypercross c0fa0e91b2 refactor: avoid using types from the csv 2026-04-17 00:28:25 +08:00
hypercross e3014e47a8 refactor: adjust implementation details for combat 2026-04-16 21:52:28 +08:00
hyper f7b59a1790 refactor: bunch of reorg updates 2026-04-16 19:27:25 +08:00
hyper b28ec823a7 refactor: reorganize csv data 2026-04-16 19:14:58 +08:00
hyper b18e232cc8 chore: todos 2026-04-16 19:14:46 +08:00
hyper 8c783da857 fix: align data with design 2026-04-16 17:52:20 +08:00
hyper a010a0bca6 refactor: update doc and .d.ts 2026-04-16 17:14:13 +08:00
hypercross 693c279e0f fix: resolve inconsistencies in slay-the-spire-like design docs 2026-04-16 14:07:28 +08:00
hypercross 94c7c91745 feat: slay-the-spire-like combat procedures 2026-04-16 14:00:49 +08:00
hypercross 976ee43ed3 chore: AGENTS.md updated 2026-04-16 12:29:02 +08:00
hypercross 6984e54bdf refactor: add status cards and rules. 2026-04-15 16:28:18 +08:00
hypercross 7b954bb5a5 refactor: add more effect 2026-04-15 15:41:20 +08:00
hypercross 7472095822 refactor: add team effect 2026-04-15 15:21:44 +08:00
hypercross e5da41c1cb refactor: op -> player 2026-04-15 15:19:58 +08:00
hypercross 509e121275 refactor: add timing to effect 2026-04-15 15:16:45 +08:00
hypercross e77e2d0737 refactor: self-referencing intent table! 2026-04-15 14:59:34 +08:00
hypercross 09148f5b13 refactor: update inline-schema to import accessors 2026-04-15 14:56:48 +08:00
hypercross 7e98e5e546 chore: add identifier to fields 2026-04-15 14:30:56 +08:00
hypercross 33095d5226 chore: add tests for data loading 2026-04-15 13:27:12 +08:00
hypercross 726856af35 feat: add enemy/effect data 2026-04-15 13:15:09 +08:00
hypercross 630e35ad4e feat: add enemy intent data 2026-04-15 12:43:41 +08:00
hypercross 5860f2a247 feat: upgrade yarn-spinner-loader to 0.2.0 and add encounters.yarnproject test 2026-04-15 10:19:03 +08:00
hypercross 760cfc9954 feat: deck generation 2026-04-14 15:46:08 +08:00
hypercross 4fbd65e98c fix: encounter data assignment 2026-04-14 14:35:23 +08:00
hypercross 204198b10f refactor: add progress 2026-04-14 13:35:26 +08:00
hypercross 6b724df7e7 refactor: add price 2026-04-14 11:54:44 +08:00
hypercross e35871accd refactor: types on the inventory 2026-04-14 11:11:29 +08:00
hyper ef9557cba7 refactor: minimize repetitions 2026-04-13 21:18:06 +08:00
hyper 1e5e4e9f7e fix: fix map gen again 2026-04-13 20:06:23 +08:00
hyper c30db2f8a4 refactor: update encounter table design 2026-04-13 19:29:53 +08:00
hyper 5d1dc487f8 refactor: map gen? 2026-04-13 19:06:37 +08:00
hypercross 06a2236a1d refactor: redesign map gen 2026-04-13 14:56:33 +08:00
hypercross fe361dc877 fix: avoid paths corssing each other 2026-04-13 12:56:39 +08:00
hypercross 17dca6303c fix: export 2026-04-13 12:20:55 +08:00
hypercross d1aa6dbd32 fix: export for stsl 2026-04-13 12:19:49 +08:00
hypercross 88eeee6ab7 feat: add encounter map 2026-04-13 11:59:56 +08:00
hypercross 2a4383ff10 feat: add grid-inventory 2026-04-13 11:07:57 +08:00
hyper 4bfc6db60f chore: add data import test 2026-04-12 21:04:38 +08:00
hyper 6281044f14 feat: add som shape parsing 2026-04-12 20:44:35 +08:00
hyper 18eae59891 feat: add hero fighter item pool 1 2026-04-12 20:34:08 +08:00
hyper 6dc85b443e feat: shape parsing 2026-04-12 20:26:46 +08:00
hyper d5f65fa6cd chore: export TicTactToePart 2026-04-12 16:28:50 +08:00
hypercross 6ac5ac4b9a chore: update inline-schema output 2026-04-12 10:13:57 +08:00
hyper eb4716200a refactor: some thoughts on design 2026-04-11 18:03:57 +08:00
hyper 547d378d50 feat: fleshing out the design 2026-04-11 17:07:59 +08:00
hyper 330aa43d7b feat: ideas for slay-the-backpack 2026-04-10 20:48:50 +08:00
hyper 617057988d feat: regicide full 2026-04-10 13:43:12 +08:00
hyper 28e548d3de feat: regicide code 2026-04-10 13:24:29 +08:00
hyper 8b271448d2 feat: regicide rule 2026-04-10 13:15:03 +08:00
hyper 9d6e7a75f8 refactor: add export for createPart 2026-04-10 12:34:47 +08:00
hypercross 244a8bb35a fix: onitama win con 2026-04-08 12:25:50 +08:00
hypercross cbf6dce237 fix: export more stuff 2026-04-08 09:28:44 +08:00
hypercross 35df1801c5 fix: export new getCardMoveCandidates 2026-04-08 09:04:24 +08:00
hypercross 5b310f400d fix: fix onitama black orientation 2026-04-08 09:00:25 +08:00
hypercross 91c993b223 refactor: clean up boop implementation structure 2026-04-07 15:43:17 +08:00
hypercross 10393f45b6 refactor: add rng & seeding 2026-04-07 15:32:06 +08:00
hypercross 6b736ab083 fix: more tests 2026-04-07 15:13:10 +08:00
hypercross beb8088009 refactor: api change to add prompt text 2026-04-07 15:03:15 +08:00