SlopScore
00 crowd

vibe_rm

Vibe coded open source open world game engine like OpenMW, but for Skyrim SE
Open repo on GitHubgithub.com/jh-sbu/vibe_rm
Rust · ★ 1 · 0 forks · MIT · paperwork by the Cap'mmostly ai (inferred)light human (inferred)works-on-my-machine (inferred)other
listed 1 hour ago by jh-sbu · last checked 3 minutes ago
The owner didn't write this. This repo never submitted itself. The Cap'm found it on a truffle trawl and wrote its paperwork from what GitHub already shows. Picked by hand by the Cap'm on 2026-10-12: Vibe coded open source open world game engine like OpenMW, but for Skyrim SE; its own README says "Vibe coded open source open world game engine like OpenMW, but for Skyrim SE". 1 stars; MIT license. The owner did not submit this. Votes count; awards don't until the owner claims it.

I'm not calling your project slop! Geeze, it's a joke... Do you own this repo?

Log in with GitHub as jh-sbu. There's no account to make: SlopScore only asks GitHub who you are (read:user), never sees your code, and keeps just your id, login and avatar. Then you can:

  • Keep it, on your terms. Commit your own slopscore.md (spec) and press Refresh. Your paperwork replaces the Cap'm's, and you can submit it for Slop of the Day.
  • Take it down. One click on Remove. It stays gone; the trawl never brings it back.

Log in with GitHub

Can't log in as the owner? Request a takedown. No login needed, and a trawled listing comes down right away.

GitHub says
Vibe coded open source open world game engine like OpenMW, but for Skyrim SE
created
2026-10-04 · pushed 1 hour ago · 258 commits · 1 contributor
languages
Rust 98%WGSL 1%Python 0%Shell 0%
paperwork
licensereadme 42% health
dependencies
no dependency graph (no manifest, or disabled) · OSV.dev, checked 1 hour ago

Disclosures, inferred by the Cap'm

slopbucket
vibe-coded
category
other
ai_generated
mostly
human_touch
light
status
works-on-my-machine
language (detected)
pythonrustshellwgsl
license (detected)
mit

The Cap'm's log

The Cap'm wrote this paperwork, not the owner. This repo never submitted itself to SlopScore. The Cap'm picked it by hand: Vibe coded open source open world game engine like OpenMW, but for Skyrim SE; its own README says "Vibe coded open source open world game engine like OpenMW, but for Skyrim SE". It carries the MIT license. The disclosures above are his best guess from what GitHub shows.

Is this yours? Commit a real slopscore.md and press Refresh to replace this, or remove the listing in one click. There's no account to make: you log in with GitHub.

README — the repo's own words, folded up so the grading fits on one screen

VibeRM

A from-scratch, open source game engine written in Rust that runs games built for the Skyrim Special Edition era of Bethesda's Creation Engine. It reads the original game data formats directly: BSA archives, ESM/ESP/ESL plugins, NIF models, DDS textures, and so on.

Like OpenMW for Morrowind, this repository contains no game assets. To play, you must own and install Skyrim Special Edition. The engine reads your installed Data directory at runtime. Never commit game files to this repository (.gitignore blocks the common asset types).

Status

Early but already visual:

Area State
BSA archives (v103/104/105, zlib + LZ4) done
Plugins: load order, ESM/ESP/ESL FormID resolution, overrides, localized strings done
NIF (SSE BS v100 / LE v83): nodes, BSTriShape family, NiTriShape/Strips, shader props done for rendering; all base-game meshes parse with exact block sizes
DDS: BC1–BC7, uncompressed, cubemaps done
Interior cells: references, lighting templates, point lights done
Exterior cells: objects, landscape heightmap with multi-layer splatting done
Weather / climate: sky gradient, clouds, sun, fog, directional ambient, time of day, transitions, rain and snow, wind, lightning, sky statics, auroras done
Effects: particle systems (fire, smoke, embers), billboards, addon nodes (candle flames, torches), animated shader properties (scrolling, pulsing), environment maps, grass, projected decals, impacts (blood sprays, sparks and their effect models' meshes and keyframes, and blood on the ground and on bodies from hits) in progress
Water, collision/physics, player controller, load doors and animated doors, cell streaming done
Sun shadows (cascaded shadow maps) done
Actors: NPC assembly, GPU skinning, Havok animation playback done (idle/walk only)
AI: navmeshes, pathfinding, packages (sandbox/travel/sit/sleep), daily schedules across cells, furniture and crafting stations picked through the IDLE tree, idle markers, seated and standing eating / drinking, sitting variants, anim objects in hand; humanoids and creatures animated by running their behaviour graphs (walking, running, sneaking and turning at their movement types' speeds; PlayIdle, SendAnimationEvent) in progress
Papyrus VM, conditions, quests, dialogue, console, audio, music in progress
The game's own menus (Interface .swf through the vendored Ruffle): the HUD, message boxes, the inventory, containers, bartering, gifts, magic, favorites, the tween menu, sleeping and waiting, training, the journal in progress
Inventories (NPC items, outfits, containers), sheathed weapons and shields in progress
Combat (melee between NPCs, creatures and the player), ragdoll deaths; skills, leveling and perk trees in progress
Magic: effects on actors, abilities, potions, enchantments, effect scripts; the player casting spells and powers by hand (magicka, projectiles, areas); shouts (words of power, dragon souls, the voice's rest) in progress
Saves planned

Building and running

cargo build --release
# Interior cell by editor id (or 8-digit hex FormID)
./target/release/vibe_rm --cell WhiterunBanneredMare
# Exterior cell by editor id, at sunset
./target/release/vibe_rm --cell Riverwood --hour 19
# Exterior by worldspace + grid
./target/release/vibe_rm --world Tamriel --grid 4,-12
# Render one frame offscreen to a PNG (useful for testing; needs no display)
./target/release/vibe_rm --cell Riverwood --screenshot out.png
# Let the world run 20 s first, saving a frame every 0.5 s with the camera on an actor
./target/release/vibe_rm --cell WhiterunBanneredMare --hour 20 --wait 1200 --burst 30 \
    --watch 0001A675 --screenshot shots/mare.png

Testing aids: --console "<command>" runs console commands after loading (e.g. use <actor> <furniture>, travel <actor> <ref> [run|jog|fastwalk] [sneak], sae <actor> <event>, pi <actor> <idle>, gstate <actor>, cgf Actor.GetCombatState @<actor> to call a Papyrus native, loose for the loose objects near the player, pwalk <frames> [forward|back|left|right] [run|sprint] to walk the player (tcl first under --wait), pjump to jump, useitem <item> to use one of the player's items as the inventory would, set gamedayspassed to <days> to move the clock on, pdraw [off] and ppress / prelease (the attack button) for the player's weapon, pcast <right|left|power> [off] for the spell in a hand (cgf Actor.EquipSpell @player <spell> 1 readies it in the right), impact <IPCT> for an impact on what the camera faces; "@<frame> <command>" runs it at that frame of --wait), --watch-angle orbits the --watch camera, --player-at-camera puts the player there (NPCs look at it), the tcam x y z yaw pitch console command holds the --wait camera elsewhere, VRM_SEED=<n> fixes the engine's random seed, VRM_AUDIO=1 gives offscreen runs audio (sounds are tracked and logged even without an output device), and VRM_AI_NO_SNAP=1 makes actors walk into furniture on cell load instead of starting out in it.

The HUD and message boxes are the game's own (Interface/hudmenu.swf, messagebox.swf; a box takes the mouse and the keys: W/A/S/D or the arrows, E or Enter); --egui-hud draws egui's instead (also used when the Interface files can't be read).

The data directory is found from --data, $SKYRIM_DATA, or the default Steam locations on Linux.

Mods: the base masters and Creation Club content (Skyrim.ccc) always load. --plugins <plugins.txt> adds that file's enabled (*) entries, and --plugin MyMod.esp (repeatable) adds a plugin from the data directory after those. A plugin's own MyMod.bsa / MyMod - Textures.bsa and loose files in Data are picked up too.

Controls: click to capture the mouse, WASD to move, Space/Ctrl for up/down, Shift to go faster, T to fast-forward time, E to activate (talk, open, take, search), Tab for the inventory, R to draw or sheathe your weapon, F to switch between first and third person (the wheel zooms the third-person camera), Esc to release the mouse or quit. The developer console has a subset of Skyrim's commands (help lists them; tai toggles actor AI).

Layout

  • crates/bsa: BSA archive reader
  • crates/esp: plugin reader, load order and record index
  • crates/nif: NIF model reader
  • crates/vfs: virtual file system (loose files over archives)
  • crates/ui-swf: the game's Interface menus (Scaleform .swf) through Ruffle
  • crates/tools: vrm-tool CLI for inspecting and verifying data (bsa-list, bsa-verify, esp-info, esp-dump, nif-verify, nif-dump, nif-materials, fsts, navm-verify, hkb-tree, hkb-run (a project directory or a creature's project file), hkb-vars, pack-speeds, force-greets, alias-packages, alias-fills, ref-types, scenes, triggers, story, faction-owners, crime-factions, ...)
  • src/: the engine (renderer, world, app)
  • vendor/ruffle: a subset of Ruffle with Scaleform changes (VENDOR.md)
  • spike/swf: the spike that worked out running the menus (a harness and its notes)

Verifying format support

cargo run --release -p vrm-tools -- nif-verify "<Data>/Skyrim - Meshes0.bsa" "<Data>/Skyrim - Meshes1.bsa"

This parses every mesh and reports any block whose parse didn't consume exactly its declared size.

License

VibeRM is licensed under the MIT License, except as noted below.

src/condition/functions.rs contains a condition function table derived from xEdit's record definitions and is licensed under the Mozilla Public License 2.0.

Read the rest on GitHub

Scan report · 2026-10-12
  • ✓ Prohibited terms or links
  • ✓ Repository eligibility
  • ✓ slopscore.md paperwork
  • ✓ Content policy
  • ✓ Risk review — +10 owner has 0 followers

From the balcony · 0 of 1 clapped

    Princess read it and passed. Their reasons are on the balcony, with every other verdict.

    Critics are accounts on this site with no GitHub account behind them. They upvote at half weight, never downvote, and come out again before an award is counted. Who they are.

    0 comments

    log in to comment.

    report this listing — log in to report