BeamNG.Earth
A 1:1 scale streamed Earth for BeamNG.drive: real elevation and satellite imagery, floating origin, LOD streaming from a companion server
Single-player Pokémon draft autobattler in the browser: roll six Pokémon by generation × type, pick their sets, and watch a poke-engine AI fight a ten-boss gauntlet. No battle server: Rust → WebAssemb
Translation pending
GamesTypeScript · PythonGitHub @ziangitOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Single-player Pokémon draft autobattler in the browser: roll six Pokémon by generation × type, pick their sets, and watch a poke-engine AI fight a ten-boss gauntlet. No battle server: Rust → WebAssembly + @pkmn/sim in a Web Worker.
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗A single-player Pokémon draft autobattler that runs entirely in the browser. Roll six Pokémon through a generation × type slot machine, pick each one's set, then watch an AI pilot your team through a ten-battle boss gauntlet and post the run to a leaderboard.
Play it: https://rollmon.gg — no install, no account needed to play (one is needed only to post a score). Works on phones; English, 中文 and 日本語.
How it is built: the battle AI is poke-engine (Rust) compiled to WebAssembly, and @pkmn/sim (Pokémon Showdown's simulator) referees, both in a Web Worker on the player's machine. There is no battle server: the site is static, and the only backend is one small function for accounts, the leaderboard and feedback. v1, which ran foul-play against a local Showdown server and shipped as a macOS app, is archived at ziangit/rollmons; none of its AI client remains here.
| Title & slot roller | Draft — five candidates per cell, rarity by tier |
| Loadout — one set per Pokémon, Mega opt-in | Pool — 18×9 type-by-debut-generation matrix |
| Battle theater — live replay, bosses revealed one at a time | Results — record, damage breakdown, score, MVP |
The in-game How it works? link tells the same story with the live numbers. Design notes: docs/PRODUCT.md, docs/DIFFICULTY.md, docs/BATTLE_AI.md (what the AI costs the player's machine and how it compares with v1); plan and status: docs/ROADMAP.md, session-handoff.md.
main deploys; rollmon.vercel.app redirects). The game logic (draft, loadout, campaign, score) is TypeScript under web/; the Python layer under rollmons/ remains the reference implementation and test oracle (make test).rollmons/sets/.docs/ROADMAP.md); battle-replay text in the page language is explored but not built.make test # ruff + pytest for the reference layer (Python 3.11)
cd engine && wasm-pack build --release --target web --out-dir pkg # engine wasm (rustup + wasm-pack)
cd web && npm install && npm run typecheck && npm test && npm run dev # game at http://127.0.0.1:8975/dist/index.html
See web/README.md for the scripts (headless-Chrome full-run check, battle sweeps, name checks).
The API is one Vercel function (web/api/) backed by Neon Postgres. It needs two environment variables (a third, FEEDBACK_READ_TOKEN, lets GET /api/feedback be read with a bearer token): DATABASE_URL (in the Vercel dashboard open the project, Storage → Create Database → Neon, free tier, connect it to the project) and SESSION_SECRET (any long random string; it signs the account cookies and keys the sign-up address hashes: openssl rand -base64 48 | vercel env add SESSION_SECRET production). Then redeploy. The tables are created and migrated on first use (deploy/leaderboard.sql documents them). Without the database the API answers 503 and the game hides the board; without the secret accounts are off and scores cannot be posted. Accounts have no email and no password reset; at most 5 can be created per network per day.
The easiest way is the Contribute button in the game. In the repo, boss teams (rollmons/bosses/*.txt, rollmons/pool/<tier>/*.txt) and per-species set overrides (rollmons/sets/*.txt) are plain Showdown export text. Validate with:
.venv/bin/python -m rollmons.validate_submission boss rollmons/pool/advanced/Cynthia.txt
.venv/bin/python -m rollmons.validate_submission set rollmons/sets/abomasnow.txt
cd web && node scripts/check-names.ts # every species / move / ability known to the engine
See CONTRIBUTING.md.
@pkmn (MIT) — simulator, data, replay player.