Node.js CLI tool that decodes Evolve game saves (LZString compressed), edits resource values, and re-encodes back to clipboard. Features: - --max-resources: fill all capped resources to their max - --set-crafted=N: set unlimited/crafted resources to a given value - Reads from clipboard, stdin, or argument; writes back to clipboard Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
CLI tool for editing Evolve browser game save files. Saves are LZString-compressed JSON, exported via the game's Settings > Export.
Commands
npm install # install dependencies (lz-string)
# Max all capped resources, copy result to clipboard
node index.js --max-resources < save.txt
node index.js --max-resources "SAVE_STRING"
# Print to stdout instead of clipboard
node index.js --max-resources --no-copy < save.txt
Save Format
Saves are LZString compressToBase64 of a JSON object (not plain base64). Uses the lz-string npm package to match the game's own JS implementation.
Key top-level sections: resource, race, tech, city, space, civic, genes, prestige, settings, arpa.
Resource structure (resource.<name>)
amount: current valuemax: storage cap.> 0= capped,-1= unlimited (crafted),-2= special/uncapped,0= not unlocked- Other fields:
name,display,diff,delta,rate,bar,stackable,crates,containers,value,trade
Architecture
Single-file Node.js CLI (index.js), one dependency (lz-string). Uses pbcopy (macOS) or xclip (Linux) for clipboard.