Escape from Delta is a Solana-backed PVE extraction raid demo with EDcoins,
warehouse assets, marketplace listings, battle records, and admin difficulty
configuration.

- Install Anchor, Rust, Node.js, and the Solana CLI.
- Create local env files:
cp .env.example .env.localcp app/.env.example app/.env.local
- Update the local env files if you need custom values. At minimum, keep:
PROGRAM_ID=7ueVgYfrwidjpwMCBfGyHCoVpaVNe7Ep1h2Mxv1ENBYQSESSION_KEYS_PROGRAM_ID=KeyspM2ssCJbqUhQ4k7sveSiY4WjnYsrXkC8oDbwde5NEXT_PUBLIC_PROGRAM_ID=7ueVgYfrwidjpwMCBfGyHCoVpaVNe7Ep1h2Mxv1ENBYQNEXT_PUBLIC_SESSION_KEYS_PROGRAM_ID=KeyspM2ssCJbqUhQ4k7sveSiY4WjnYsrXkC8oDbwde5NEXT_PUBLIC_RPC_URL=https://api.devnet.solana.comANCHOR_PROVIDER_URL=https://api.devnet.solana.com
- Install dependencies with
npm install. - Point your Solana CLI and wallet to devnet.
anchor buildanchor testnpm run generate:clientnpm run test:clientnpm run test:appnpm run devnpm run demo:localnpm run query:records -- --wallet <PLAYER_WALLET> --cluster devnet --format table
- Set your CLI to devnet:
solana config set --url https://api.devnet.solana.com
- Make sure local env files exist:
cp .env.example .env.localcp app/.env.example app/.env.local
- The repo is expected to use the already-deployed devnet program:
7ueVgYfrwidjpwMCBfGyHCoVpaVNe7Ep1h2Mxv1ENBYQ
- Airdrop SOL to the test wallet:
solana airdrop 2
- Run the demo raid flow against devnet:
ANCHOR_PROVIDER_URL=https://api.devnet.solana.com RPC_URL=https://api.devnet.solana.com npm run demo:local
- Query the resulting battle record:
npm run query:records -- --wallet $(solana address) --cluster devnet --format table
Teammates should use the already-deployed devnet program and do not need to deploy anything.
- Clone the repo.
- Create env files:
cp .env.example .env.localcp app/.env.example app/.env.local
- Install dependencies:
npm install
- Start the web app:
npm run dev
- Open:
http://localhost:3000
- In Phantom:
- switch to
devnet - make sure the wallet has devnet SOL
- switch to
The expected devnet program is:
7ueVgYfrwidjpwMCBfGyHCoVpaVNe7Ep1h2Mxv1ENBYQ
If Start Raid fails during session/create, first verify:
NEXT_PUBLIC_PROGRAM_ID=7ueVgYfrwidjpwMCBfGyHCoVpaVNe7Ep1h2Mxv1ENBYQNEXT_PUBLIC_SESSION_KEYS_PROGRAM_ID=KeyspM2ssCJbqUhQ4k7sveSiY4WjnYsrXkC8oDbwde5NEXT_PUBLIC_RPC_URL=https://api.devnet.solana.com
- Program-side session auth is enabled for raid in-session actions:
open_containerfight_enemymove_areaselect_safe_case_items
- Session Keys program id:
KeyspM2ssCJbqUhQ4k7sveSiY4WjnYsrXkC8oDbwde5
- The app session manager is configured for
devnetby default.
Clients must show intent, cluster, fee payer, account list, amounts, and simulation result before requesting wallet approval. Devnet is the default target for this demo.