BeamNG.Earth
A 1:1 scale streamed Earth for BeamNG.drive: real elevation and satellite imagery, floating origin, LOD streaming from a companion server
翻譯準備中
尋找技能寶石,塑造你的角色,並在《Hollow Wake》這款正在開發的免費動作 RPG 中探索危險的邊境。單人、線上或本機合作皆可。
AI 翻譯
Find skill gems, shape your build, and explore a dangerous frontier in Hollow Wake, a free action RPG in development. Play solo, online, or in couch co-op.
遊戲TypeScript · JavaScriptGitHub @arianna-arpg上線中營運者未確認
試用過了嗎? 點一下就好,不需要登入。
自上而下的動作 RPG,所有系統皆為開放、模組化資料。TypeScript、Canvas 2D、Electron。
AI 翻譯
A top-down action RPG where every system is open, modular data. TypeScript, Canvas 2D, Electron.
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
A top-down action RPG where every system is open, modular data.
Skills, monsters, statuses, passives, items and zones are plain data entries composed by one shared engine. The player, monsters and minions all act through a single skill pipeline, so a fireball behaves the same whether a sorcerer casts it, a monster breathes it, or your summon throws it. Classes are starting points, not cages.
Built in TypeScript and Vite on an HTML5 Canvas 2D renderer, wrapped in an Electron desktop shell. It runs on Windows, Linux and Steam Deck, and in the browser.檢視完整 README ↗Current development focus: the offline seamless world. Read CURRENT.md for the vision, playable path, main/seamless roles, unfinished work and deferred shard/MMORPG scope. The game references there are inspiration, not generation rules.
Skills, monsters, statuses, passives, items and zones are plain data entries composed by one shared engine. The player, monsters and minions all act through a single skill pipeline, so a fireball behaves the same whether a sorcerer casts it, a monster breathes it, or your summon throws it. Classes are starting points, not cages.
Built in TypeScript and Vite on an HTML5 Canvas 2D renderer, wrapped in an Electron desktop shell. It runs on Windows, Linux and Steam Deck, and in the browser.
Status: a playable prototype in active development. Deep, working systems under deliberately placeholder geometry art. No audio yet. Saves can be reset between versions.
The numbers above are live. They are read from the same data the game ships, so they are never out of date and nobody maintains them by hand.
main. Saves stay in that browser's local storage..AppImage from the same page, chmod +x it and run. STEAM.md has the one-line Deck installer and the controller notes.The desktop launcher checks for a new stable release on start and can update itself in place. Nightly release candidates are published as pre-releases on the Releases page for anyone who wants the newest build; installed stable copies never see them.
Play with keyboard and mouse or any controller (Xbox, DualSense, Steam Deck). Every binding can be changed in Options.
Requires Node.js and npm.
npm install
npm run dev # browser dev mode at http://localhost:5173
npm run game # the desktop app: the launcher, then the game in its own window
npm run build # type-check + production build to dist/
On Windows, Play Game.bat (browser) and Launch Game.bat (desktop app) do the same and run npm install for you the first time. The launcher opens as a plain game launcher. Tick Developer mode on its page for DevTools, the in-game dev panel and hot reload straight from src/.
There is no unit-test runner. Changes are gated by the type-check plus headless harnesses that boot the engine itself: regression probes, smoke boots, a seeded balance sim, generation QA and a frame-time sweep. CI runs the type-check and the probe gate on every push, and the nightly job runs the full lane before it cuts a release candidate. The commands and their contracts are in CLAUDE.md.
Skills are loot. Your build is the skills you find and the supports you socket into them, not a menu unlocked by character level. Character levels feed the passive tree instead.
One pipeline for everyone. The player, monsters and minions all resolve their actions through World.useSkill(). A summoner's skeletons run on the same skills monsters do.
One modifier engine. Every number flows through one layered, tag-scoped formula (flat → increased → more → override), implemented once and shared by every system. Content composes behavior out of tags and modifiers instead of new engine code.
Data in, no engine changes. Adding a skill, support, monster, passive, item, biome or class means adding an entry under src/data/. The engine already knows how to run it.
This page stays short on purpose. The project moves fast, and each kind of detail has one maintained home:
| If you want | Go to |
|---|---|
| What is in the game right now: every skill, support, monster, class, unique and biome | The Database, regenerated from src/data/ on every push |
| The passive tree | The tree viewer |
| How the systems feel from the player's side | The website and its Systems page |
| Current vision, active/deferred work, branch roles and seamless playtest | CURRENT.md |
| The repository map, every command, the verification gates and the working conventions | CLAUDE.md, maintained continuously. AGENTS.md points there too |
| One system in depth | docs/, one contract per system, grouped by area |
| Packaging, releases, Steam Deck and controller layout | STEAM.md |
| What changed between versions | Releases and docs/releases/ |
The short map: the engine lives in src/engine/, all content in src/data/, the renderer in src/render/, the desktop shell in launcher/, the website in site/ and the headless harnesses in balance/.
Hollow Wake is a prototype. The systems are broad and working, and the presentation is deliberately minimal for now:
PolyForm Noncommercial 1.0.0. Read it, run it, mod it, fork it and share it for any noncommercial purpose. Commercial use needs the author's permission first. The name and the insignia stay with the project.
Made by Arianna.