create-debuff 0.9.4 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-debuff",
3
- "version": "0.9.4",
3
+ "version": "0.11.0",
4
4
  "description": "Scaffold a new debuff game: npm create debuff",
5
5
  "keywords": [
6
6
  "game",
@@ -10,7 +10,8 @@ This is a 2D browser game made with **debuff** (https://debuff.jp). These notes
10
10
  | `npx debuff test` | Runs the logic tests in `tests/`: the real game in Node, no browser, in milliseconds. Run it after every change. `-t <text>` runs matching tests; `--json` for tools |
11
11
  | `npm test` | Logic tests, then `scenarios/*.json` in a headless browser with screenshot comparison |
12
12
  | `npx debuff fuzz` | Plays the game with random input for a few minutes. Each crash, stuck state or back-and-forth loop is saved as a scenario in `.debuff/fuzz/` that replays it exactly |
13
- | `npm run build` | Type-checks, builds to `dist/` and prints a size report. Fails if dev-only code leaks |
13
+ | `npm run build` | Type-checks, builds to `dist/` and prints a size report. Fails if dev-only code leaks, or if a change would break players' saves (`saves.json`) |
14
+ | `npx debuff build --accept-saves` | Accept a change to the game's saves. **Only after the human has approved it**: players with an old save lose what no longer fits, unless `new Storage(key, defaults, { version, migrate })` carries it over |
14
15
  | `npm run assets` | Regenerates the asset manifest and lists unused assets |
15
16
  | `npx debuff inspect` | Project summary as JSON: packages, plugins, assets, last build size |
16
17
  | `npx debuff scenario --update` | Accept new screenshot baselines. **Only after the human has approved the visual change** |
@@ -0,0 +1,7 @@
1
+ import { defineConfig } from "@debuffjp/cli";
2
+
3
+ export default defineConfig({
4
+ // Vite doesn't type-check, so `debuff dev` does after each save: type errors show in the dev overlay
5
+ // and to agents while the game keeps running.
6
+ typecheck: true,
7
+ });
@@ -10,15 +10,15 @@
10
10
  "test": "debuff test && debuff scenario"
11
11
  },
12
12
  "dependencies": {
13
- "@debuffjp/audio": "0.9.4",
14
- "@debuffjp/core": "0.9.4",
15
- "@debuffjp/input": "0.9.4",
16
- "@debuffjp/juice": "0.9.4"
13
+ "@debuffjp/audio": "0.11.0",
14
+ "@debuffjp/core": "0.11.0",
15
+ "@debuffjp/input": "0.11.0",
16
+ "@debuffjp/juice": "0.11.0"
17
17
  },
18
18
  "devDependencies": {
19
- "@debuffjp/cli": "0.9.4",
19
+ "@debuffjp/cli": "0.11.0",
20
20
  "typescript": "^7.0.2",
21
- "@debuffjp/dev": "0.9.4",
21
+ "@debuffjp/dev": "0.11.0",
22
22
  "keiko": "0.5.1"
23
23
  }
24
24
  }
@@ -0,0 +1,12 @@
1
+ {
2
+ "version": 1,
3
+ "saves": [
4
+ {
5
+ "key": "my-game",
6
+ "file": "src/main.ts",
7
+ "fields": {
8
+ "pops": "number"
9
+ }
10
+ }
11
+ ]
12
+ }