BeamNG.Earth
A 1:1 scale streamed Earth for BeamNG.drive: real elevation and satellite imagery, floating origin, LOD streaming from a companion server
ROUNDS's Orange and Blue in a Vampire Survivors adventure: five stages, ROUNDS's real gun, and a ROUNDS card pick at every level-up.
Translation pending
GamesC# · HTMLGitHub @neednotapplyOnlineOwner 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
Vampire Rounds: ROUNDS's Orange and Blue in a Vampire Survivors adventure, every level-up a ROUNDS card pick. A Vampire Survivors x ROUNDS mashup for Melty.
Taken from the repository README
Loading the full README.
Read the full README ↗A new adventure in Vampire Survivors where you play ROUNDS's Orange Guy or Blue Guy.
On Melty: melty.gg/m/vampire-rounds (not published yet; once it is, one click with your own Steam copies of Vampire Survivors and ROUNDS).
Needs ROUNDS on its old-rounds-for-mods Steam beta branch (ROUNDS > Properties > Betas).
managed/VampireRoundsLauncher.exe (src/Launcher, .NET Framework 4.8): what Melty starts. Thunderstore browser on the
left, your mods on the right, PLAY starts VS (with --vr-rounds naming ROUNDS's folder) and waits for it. Mods go
where the hidden ROUNDS's BepInEx is, UserData/VampireRounds/rounds/BepInEx/plugins/<Owner-Name>, listed in
UserData/VampireRounds/rounds/mods.json; its log and download cache are in %LOCALAPPDATA%\VampireRounds.
The face editor writes each guy's face (ROUNDS's PlayerFace values: a part and an offset for the eyes, mouth and two
details; src/Shared/FaceFile.cs) to %LOCALAPPDATA%\VampireRounds\faces.txt, which the engine puts into ROUNDS's
in-memory face selection before it makes its players. Its pieces come from a hidden ROUNDS run with
--vampirerounds-faces (about ten seconds, redrawn whenever ROUNDS's saved faces change): ROUNDS's eight faces on each
guy, each guy's bare body and every face part, all pictured in one frame around the face (faces/parts, with
parts.txt), so the launcher lays a face together from them. --draw-faces draws them without the window.Mods/VampireRounds.dll (src/VsMod): the MelonLoader mod for VS. It adds the adventure (VS's unused
ADV_LIB_001 slot), its five stages (copies of the player's own stage data under stage slots no VS stage uses:
TEST, TESTONE, ADV_0001TEST, ENTRANCE, CASTLE; sheets/stages.json) with their goals (VS's adventure
progress), Orange Guy and Blue Guy (VS's own custom-character system), starts the hidden ROUNDS, opens VS on the
adventure's menu under a cover, shows the card logos in VS's item panel (CardSlots), and runs the link every frame.Plugins/VampireRounds.InteropFix.dll (src/InteropFix): MelonLoader 0.7.3's Il2CppInterop cannot find
Class::GetDefaultFieldValue on VS's Unity 6 build and VS crashes two seconds after start with any MelonLoader
mod; this points the hook at the right function (the byte pattern was first found by the Isaac Survivors mashup).
It also looks after MelonLoader's first start (and its first after a VS update), when MelonLoader builds VS's
assemblies for 1-3 minutes before any mod loads: the build runs beside a window that keeps answering (Windows no
longer calls it Not Responding), and an old assembly another plugin holds open is set aside instead of failing the
rebuild. The launcher shows a note meanwhile (src/Launcher/LoaderWatch.cs, FirstStartNotice.cs).UserData/VampireRounds/rounds (src/Engine + BepInEx 5.4.23.2): loaded into ROUNDS from where Melty installs it
with Doorstop's command-line arguments (its log: UserData/VampireRounds/rounds/BepInEx/LogOutput.log); the engine is
's ROUNDS arena (MIT, the same creator) adapted to VS: Orange Guy and Blue Guy held where VS puts them, VS's enemies
mirrored as trigger circles, the screen edges as walls, bullets flying straight. ROUNDS still opens a window in batch
mode; it is kept off screen as a tool window that takes no focus.Nothing from either game is in this repository or the package: each player's own ROUNDS draws the characters and runs the cards, and their own VS supplies the stage.
Windows, .NET SDK 8, Python 3 with Pillow, your own VS and ROUNDS on Steam.
--output-as dummydll) on VS, then
Il2CppInterop.CLI 1.5.1 generate --use-opt-out-prefixing with Unity 6000.0.62's libraries, into
~/vsr-work/vs-interop (MelonLoader makes the same ones on the first start).BepInEx_win_x64_5.4.23.2.zip from its GitHub releases) unpacked into ~/vsr-work/dl/bepinex,
and the license texts (BepInEx, UnityDoorstop, HarmonyX, MonoMod, Mono.Cecil) in ~/vsr-work/dl/licenses.sheets/ are the source of truth: python -I tools/sheets.py gen, then
python -I tools/sheets.py preflight --code (must say clean; it checks hook targets against your decompiled games).python -I tools/package.py 0.4.1 builds all four projects (the launcher too) and writes dist/VampireRounds-0.4.1.zip; Melty installs
it with the recipe in tools/recipe.json. melty.json at the root is the same recipe with * where the version goes:
Melty reads it from this repository, so keep the two in step.devtools/devinstall.py on|off (puts the staged build into your games and takes it out again),
devtools/run.ps1 -Auto [-Slow] [-Hero blue] [-Cards "Explosive Bullet"] (self-playing runs, optionally starting with ROUNDS cards;
VAMPIREROUNDS_DEV_ALLSTAGES=1 opens every stage and VAMPIREROUNDS_AUTOPLAY_STAGE=<stages row or slot> plays it), devtools/shots.sh
(screenshots), devtools/cards.ps1 (every card ROUNDS has, whole and as its logo, with what it is drawn with, into
%LOCALAPPDATA%\VampireRounds\cards\sheet and cards\audit.txt).
%LOCALAPPDATA%\VampireRounds\dev-launch.txt gives the launcher's next VS starts their switches, one line each (Melty
test runs too): regenerate makes MelonLoader rebuild VS's assemblies as on a first start, VAMPIREROUNDS_NAME=value
sets a switch (VAMPIREROUNDS_DEV_NOPUMP=1 / VAMPIREROUNDS_DEV_NOSETASIDE=1 bring back the old first start).python -I tools/cover.py (from PowerShell; needs Edge and the internet for its fonts) repaints
media/art/card.png (Melty's game card) and media/art/adventure_bg.png (the adventure's backdrop in VS) from
tools/cover.html; the package takes the backdrop from that PNG.While %LOCALAPPDATA%\Melty\test\vampire-rounds.json exists, the mod plays by itself (into the adventure as Orange,
walking a circle and stepping away from the horde, taking picks) and writes pass <check> lines for: engine-ready,
adventure-listed, run-started, rounds-drawn, gun-fired, enemy-hit, card-picked, card-logo-shown. A run that plays by
itself never writes VS's save, so a test leaves the player's progress as it was.
MIT (LICENSE.txt). Third-party in the package: BepInEx (MIT), UnityDoorstop (LGPL-2.1), HarmonyX (MIT), MonoMod (MIT), Mono.Cecil (MIT).
version.dll in the ROUNDS folder: UnityDoorstop 4 (from BepInEx 5.4.23.2, byte-identical to Roundhead's); it does
nothing unless ROUNDS is started with Vampire Rounds's arguments.Local\VampireRoundsArena1, sheets/link.json): VS writes the camera,
each seat's position and input, the enemies and events; ROUNDS writes health, hits, effects, card picks and its
rendered picture (players and bullets; pick screen). Each seat's deck goes to %LOCALAPPDATA%\VampireRounds\deck<seat>.txt
and each card's square of ROUNDS's card bar to cards\chip<seat>-<key>.rgba (the engine's CardIcons: ROUNDS's own
square for that seat's bar with the card's letters, pictured over black and white as 0.2.0 showed the bar over VS);
Q_DeckSerial tells VS when to read them again.