BeamNG.Earth
BeamNG.drive용 1:1 비율 실시간 지구, 실제 고도·위성 이미지·부동 원점·보조 서버에서 LOD 스트리밍
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기NIGHTCELL 7: FALSE DAWN — premium episodic FPS. Two operatives, two countries, one manufactured war. Babylon.js + TypeScript monorepo with server-authoritative multiplayer.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Two operatives. Two countries. One manufactured war. Play both sides before the truth disappears.
A premium episodic first-person shooter that launches from a browser, installs
as a desktop PWA, ships as Electron packages for Windows/macOS/Linux, and
includes a free server-authoritative multiplayer alpha.
• Free: launcher, benchmark, training, a 10–15 minute demo from each side,
and the 6v6 Multiplayer Alpha.
• Paid: $9.99 per theater episode — both campaigns, the Complete Truth
epilogue, every supported platform, no subscription and no microtransactions.README 전문 보기 ↗Two operatives. Two countries. One manufactured war. Play both sides before the truth disappears.
A premium episodic first-person shooter that launches from a browser, installs as a desktop PWA, ships as Electron packages for Windows/macOS/Linux, and includes a free server-authoritative multiplayer alpha.
The public demo at nightcell7.com/play: Team Deathmatch in Ardavan Yard against Directorate bots, with a Nightcell squad alongside you. Health packs, weapon drops off your kills, a status bar, and three difficulty tiers (Easy is the default).
Trailer: docs/trailer/nightcell7-trailer.mp4,
26 seconds, 1280x720, H.264 High / AAC in an MP4 with faststart, so it plays in
every browser and on phones. Rendered by tools/art/trailer.mjs, which steps
the game on a virtual clock so each frame is exactly 1/30 s of play whatever
the render speed, then encodes with ffmpeg under the game's own ambience and
a track from its soundtrack. docs/trailer/manifest.json carries the commit.
Every frame is reproducible: tools/art/capture-gameplay.mjs deploys into the
built game, plays a scripted sequence, and writes docs/screenshots/manifest.json
with the commit it was captured from. That script is the provenance CLAUDE.md
requires for a public asset.
This is a single mandatory monorepo (PRD §17.2). The marketing site, game, PWA, desktop wrapper, APIs, multiplayer services, workers, gateway and infrastructure all live here and change atomically. Separate repositories, git submodules and copied cross-repo build artifacts are prohibited.
Every deployable application service runs on Railway, behind one public origin:
https://nightcell7.com/ -> site
https://nightcell7.com/play/ -> game (Babylon + PWA)
https://nightcell7.com/api/v1/* -> api
wss://nightcell7.com/api/v1/multiplayer/sync/... -> multiplayer
Clients never see an internal Railway hostname.
apps/
site/ Next.js App Router — marketing, account, library, store
game/ Babylon.js + Vite — browser game and PWA
desktop/ Electron wrapper around the same web build
services/
gateway/ Public path router + WebSocket upgrade proxy (owns the domain)
api/ Auth, catalog, CoinPay, entitlements, multiplayer tickets
multiplayer/ Colyseus matchmaker + authoritative rooms
worker/ BullMQ: payment fulfilment, match results, email
cron/ Short-lived reconciliation and cleanup commands
packages/
game-core/ Weapons, damage, difficulty, campaign, match rules
multiplayer-protocol/ Messages, Colyseus schemas, version handshake, tickets
multiplayer-sim/ Server-safe movement, hitscan, simulation, bots
entitlements/ Order state machine, catalog pricing, entitlement rules
coinpay/ CoinPayPortal client and webhook verification
database/ Drizzle schema + Postgres client
auth/ save-data/ content-schema/ observability/ ui/
infra/
railway/ Service matrix, env contract, deployment runbook
gateway/ Caddyfile alternative to the TypeScript proxy
docker/ Service Dockerfiles
local/ Docker Compose for Redis
tools/
multiplayer-loadtest/ Simulation load and soak gate
release/ Local dev orchestrator
docs/ Architecture, multiplayer, CoinPay, PRD traceability
bun install
cp .env.example .env # fill in secrets; services refuse to boot without them
bun run dev:deps # Redis via Docker Compose
bun run dev # every service, behind the gateway on :8080
Local URLs mirror production paths through the gateway, so WebSocket upgrades, cookies, CORS and route precedence are all exercised before you deploy:
http://localhost:8080/ marketing site
http://localhost:8080/play game
http://localhost:8080/api/v1/catalog api
ws://localhost:8080/api/v1/multiplayer/sync/{region}/{shard}/{roomId}
| Command | What it does |
|---|---|
bun run check | format + lint + typecheck + test — run this before pushing |
bun run test | one Vitest run across every workspace |
bun run build | packages, then services, then apps |
bun run typecheck | strict TypeScript across all workspaces |
bun run loadtest | simulation load + soak gate (PRD §34.3) |
bun run db:generate / db:migrate | Drizzle migrations |
1. The server decides multiplayer truth.
The client sends input intent — movement axes, view angles, a button bitfield.
It never sends a position, a hit, an ammo count or a score. packages/multiplayer-sim
runs the same movement code on both sides, so client prediction agrees with the
server; when it does not, the server wins. There is a test that asserts exactly
this (apps/game/src/net/prediction.test.ts).
2. Only a verified webhook unlocks content.
The browser return URL from CoinPay shows pending and nothing more. An order
reaching paid still unlocks nothing — fulfilment is a separate, retryable
state. The provider event id carries a unique constraint, so a replayed webhook
is a no-op rather than a second grant.
3. Neither side is the villain. The American route is not "good mode" and the Iranian route is not "enemy mode". Both protagonists have a defensible mission, incomplete intelligence and reason to distrust the other. All facilities, units and operations are fictional, and Farsi content stays pending until native review.
Full rules for contributors and agents: CLAUDE.md.
Implemented and tested:
Not yet built (tracked against the PRD milestones):
See docs/prd.md for section-by-section traceability.
The following are mandatory before public launch and none of them are satisfied yet: title and domain clearance, trademark review, CoinPay production approval, digital tax review, cultural and Farsi review, asset-license provenance audit, multiplayer load certification, and Railway production readiness.
NIGHTCELL 7 is a fictional work set in an invented near-future crisis. Its organizations, facilities, operations, and characters are fictional. The game does not depict or endorse any real government, military operation, political movement, or current event.