把游戏放进游戏的四种方法
mashup-mods 技能会在以下路线中选择:
| 路线 | 原理 | 示例 |
|---|---|---|
| 内容移植 | 从你自己的安装中,把客体游戏的模型、动画和数值转换成宿主游戏的格式。 | Minecraft 里的光环 3 载具、求生之路感染者 |
| 穿透式 | 两个游戏都不修改、并排运行;各自的 Mod 交换镜头、地面和事件,画面按深度合成。 | GTA V、传送门 2、生化危机 2 里的 Minecraft |
| 无头规则 | 把客体游戏的规则重写成模拟,宿主只负责显示。 | Minecraft 里的气球塔防 6 |
| 反编译作为库 | 把社区对客体游戏的反编译当作宿主可调用的代码。 | 现代宿主中的复古游戏 |
把真正的 Minecraft 放进 GTA V 故事模式。Minecraft 的镜头跟随 GTA 的镜头,它的 TNT 要能炸掉 GTA 的车。把我安装的光环里的疣猪号移植进 Minecraft,炮塔上要能坐一个炮手。知识库中的融合项目 (17)
摘要和踩坑记录以英文原文引自 universal-modder 的 MIT 协议知识库,每条都链接到完整笔记。
Elden Ring
CS2 conversion of Elden Ring offline: native Rust DLL via me3 (fall death, spirit springs, 3D inspect, params)
A "play Elden Ring as Counter-Strike 2" conversion: CS2 guns with their real handling, CS2 movement (bhop), the CS2 agent in third person, grenades, HUD, buy menu, inventory, cases with Valve's odds, skins composited from CS2's own paint kits, a 3D item inspect, the CS2 death screen, and spirit springs on foot. It is a native Rust DLL loaded by me3 plus…
记录了 8 个坑
- Boot: InvalidRva 7 ms after load.
- Boot gate never passes.
- Dying after dropping onto a spirit spring (or anywhere) despite every fall-immunity effect.
- On-foot spirit springs do nothing.
- WitchyBND refuses to repack "regulation version exceeds latest known".
- Unpacking one .param outside its folder fails ("Could not determine PARAM type").
- Melee / short-range bullets never hit.
- Bullet holes in the air / on enemies.
FPV LOGIC
FPV LOGIC drones (flight model, RC radio and 3D models) ported into Minecraft 26.3 (Fabric)
FPV LOGIC's quad flight model was re-implemented as a Fabric mod for Minecraft 26.3, read from the game's own Blueprint bytecode and drone DataTable. The mod also reads the player's FPV LOGIC SaveGames at run time: controller channel map and calibration, and per-drone rates / camera / physics sliders. Their RadioMaster flies the same drone with the same…
记录了 8 个坑
- /summon from the test failed: "Incomplete (expected 3 coordinates)".
- The pilot's mannequin body vanished as soon as it spawned.
- No way to set a Mannequin's profile.
- The player must fly along, or chunks never load at the drone.
- The camera needs roll.
- Prop spin was wrong on all four props.
- 26.3 API renames that cost a build each:
- Translucent block textures:
Grand Theft Auto V
Minecraft inside GTA V (passthrough mod)
Real Minecraft Java 26.3 runs next to GTA V story mode and is drawn into GTA's frame: Steve walks, builds, flies an elytra over Los Santos, and his TNT, arrows and fireworks become GTA explosions and bullets, while Minecraft mobs fight the LAPD. GTA's camera drives Minecraft's. GTA's ground becomes invisible collision in Minecraft, and Minecraft's colour…
记录了 8 个坑
- Colour readback returns garbage after a depth readback (Minecraft 26.3).
- Setup commands on join match nobody (@a is empty).
- fabric-installer -launcher microsoft_store fails.
- ScriptHookV's download fails from scripts.
- The ReShade proxy DLL never loads in GTA.
- Flicker, then a crash, when toggling the effect.
- Squashed HUD and skewed angles.
- Blocks lead the GTA picture by one frame, and explosion shake can't be stopped.
Half-Life
Half-Life 1's weapons and monsters as a Minecraft Fabric mod, from a GoldSrc model converter
A Fabric mod that adds Half-Life 1's crowbar, 9mm pistol, MP5, shotgun, .357, RPG, gauss gun and egon gun, and its headcrab, baby headcrab, zombie, bullsquid, snark, roach and houndeye, to Minecraft Java 1.21.1. Models, animations, textures and sounds are converted from the player's own install into a private resource pack and the gameplay is…
记录了 8 个坑
- A monster's body looks patchy or see-through.
- A weapon appears with gloves, arms or a floating magazine.
- A character is lying on the ground.
- A monster's firing pose is a mess of limbs.
- A held gun slides around when fired.
- A gun in hand floats off the screen.
- A mob goal's windup lasts twice as long as written.
- A houndeye or similar monster runs away from the player.
Halo 3 (MCC)
Halo 3 weapons, Covenant, vehicles and maps ported into Minecraft from your own MCC install
A Fabric 1.21.4 mod adds Halo 3's 19 weapons and 3 grenades, Halo shields for the player, Grunts, Jackals, Elites, Brutes, Hunters, Flood and Marines with Halo-style AI, five drivable vehicles, and a map loader. The mod ships only code. A Python converter reads the user's own MCC install and produces a resource pack (real Halo 3 models, rank-coloured…
记录了 8 个坑
- Gradle fails resolving Loom 1.18.
- System.Drawing.Common ... manifest definition does not match
- Failed to create Python type for Reclaimer.Drawing.DdsImage (PresentationCore missing).
- 'ICacheFile' object has no attribute 'CreateReader'.
- Models 3048x too big.
- Converted characters aim with forearms pointing at the sky.
- Holes in characters with Minecraft cutout rendering.
- Valhalla turned into a lake.
Left 4 Dead
Left 4 Dead's common infected (19 looks) and Tank as animated Minecraft mobs
A Fabric mod that adds Left 4 Dead's common infected (13 male looks, 4 common female looks, a nurse and a rural woman) and the Tank to Minecraft Java 1.21.1, with the games' own meshes, textures, animation clips and sounds converted from the player's install into a private resource pack. All of it runs in the real game: the infected sprint at you, claw…
记录了 8 个坑
- A mob's swing looks like it stutters and idles between hits.
- The player's hits are mostly ignored by a mob in melee with them.
- A walking mob flicks between walk and run poses.
- The mob attacks with its back turned.
- The "attack" animation is just running.
- Missing hands.
- The player dies in tests and the next commands do nothing.
- The dead mob vanishes in a second with no fall.
Minecraft
Bloons TD 6 inside Minecraft: the guest's rules as a headless 2D sim, Minecraft as the view
A Forge 1.20.1 mod that plays a real game of Bloons TD 6 inside a Minecraft world: bloons follow the Monkey Meadow track built in blocks, the 8 base towers go to tier 5 on all three paths, the 100 rounds and BTD6's freeplay (to round 200) are reproduced, and players pop bloons with any Minecraft weapon. The guest's rules run as a pure-Java 2D simulation…
记录了 8 个坑
- Chunks appear empty from above right after building the map.
- A movement-speed bonus zooms the view.
- Writing the Forge TOML at runtime truncates it.
- Hand edits to the TOML are often missed.
- A changed default never reaches existing users.
- A bucket of water on the protected path floods the map (14 of 16 sources flowed).
- Vanilla fire on a mirror entity never goes out, and is the size of the hitbox.
- Potions, knockback and golem hits move or change mirror entities.
Minecraft
Half-Life 2 guns in Minecraft (passthrough, HL2 Demo under Wine on macOS)
A live Half-Life 2 Demo (Steam, running under Wine on an arm64 Mac) renders and plays the sound of the real first-person weapon, while a Fabric mod for Minecraft Java 26.3 does the gameplay: hitscan, damage, grenades, gravity-gun punts. Minecraft input is forwarded to HL2's console through cfg files, and HL2's view, keyed down to just the weapon, is…
记录了 8 个坑
- Wine exits with 136 and prints nothing when started from a shell.
- The capture helper grabbed the editor window.
- A command-line ScreenCaptureKit tool asserts CGS_REQUIRE_INIT.
- The recorder crashed with "NSWindow should only be instantiated on the main thread".
- The recording was silent.
- "No shot" looked like a paused simulation.
- SCK's frame-rate count looked like 58 fps when HL2 drew ~20.
- A map in the startup cfg was ignored.
Minecraft
Resident Evil 2's live picture composited into Minecraft with depth
Minecraft Java 26.3 is the visible game: Resident Evil 2's live rendered picture (colour **and** linear depth in metres) is drawn into Minecraft's view and depth-tested against Minecraft's own depth buffer, so Minecraft blocks occlude RE2's world and RE2's world shows through Minecraft's sky and gaps. RE2 keeps camera and input authority (Leon drives;…
记录了 8 个坑
- Composite draws but the screen never changes.
- Guest sky never wins: open-sky pixels keep Minecraft's sky.
- Depth comparison looks inverted/garbage with the textbook GL formula.
- Camera publishes fov=2.0 and near=2.0 for 27 minutes while the probe reads 74.8.
- F8 does nothing although options.txt shows a binding.
- Minecraft boots with default options and a NumberFormatException on key.keyboard.g.
- Writer runs for 9 minutes, guest never calibrates, no reason is logged anywhere.
- E_INVALIDARG creating what looks like a valid D3D12 readback texture.
Portal 2
Portalcraft: real Minecraft inside Portal 2 (passthrough mod)
Real Minecraft Java 26.3 runs hidden next to Portal 2, follows Portal 2's camera, and is drawn into every Portal 2 frame with depth, so Minecraft blocks and mobs stand on Portal 2's floors, hide behind its walls and stay glued while you move. The Portal 2 player builds with Minecraft blocks, fights Minecraft mobs (their damage reaches Portal 2's health),…
记录了 8 个坑
- ReShade never loads.
- Minecraft stutters / slides while you move.
- Mob outlines cut off while strafing (always the trailing side).
- Outlines cut at the screen edges while turning.
- The portal gun fired with every Minecraft click.
- "E opens the inventory" broke picking up cubes.
- "moved wrongly" (Minecraft refused the stand-in's moves).
- Achievements and stats reset every launch (dev runs).
Risk of Rain 2
Arkham Knight Batman as a Risk of Rain 2 survivor: UE3 model and animations ported with umodel, Blender and a Unity AssetBundle
A new RoR2 survivor built on the HenryTutorial template (BepInEx + R2API) with a 15-skill Arkham-style kit (Freeflow combo meter, 4-hit lunge chain, Counter, Cape Stun, Fear Multi-Takedown, gadgets, glide). The real Batman model and 51 animations are extracted from the player's own Arkham Knight install with umodel, rebuilt headlessly in Blender and…
记录了 8 个坑
- umodel download is a 9 KB HTML page.
- Arkham packages load the wrong content.
- A set will not export, or exports the wrong copy.
- -lods gives only LOD0.
- Animations explode or sink by about 1 m.
- Twist and Spine2 rotations are wrong only in cape clips.
- Cape flails through the body in every attack.
- Strikes punch sideways or spin the character around.
Risk of Rain 2
Helldiver survivor: custom skills, stratagems, Helldivers 2 models on the Commando rig, config, lab bridge and benchmark
A new survivor (clone of the Commando body) with two automatic weapons, two grenades, a dive and a jump pack, and five Helldivers 2 stratagems called in by typing arrow codes and throwing a sticky beacon. An optional Model folder replaces the Commando with a Helldiver converted from the player's own HD2 install (body skinned to Commando's bones, two…
记录了 8 个坑
- Commando flashes for one frame on the character select.
- The cape lags behind the body.
- The cape cost 20 FPS.
- Stealth items cloak the body but not the gun or backpack
- The fitted body's hands had the wrong chirality and needed 110-160° of wrist twist.
- A subclassed vanilla state does not get vanilla tuning
- Throwing the beacon also fires the gun.
- The aim arc goes NaN when aiming straight down or at something in your face
Watch Dogs
Watch Dogs 1: compiling and delivering the shader pack (shadersobj)
The shipped HLSL under `engine/shaders/` compiles to a single `shadersobj.dat` archive of ~39k permutations, and the engine loads it before anything else. This note is what we had to learn to rebuild all of them on Linux with an era-correct compiler and get the archive accepted in-game: the bytecode dialect the 2014 runtime actually accepts, and the…
记录了 7 个坑
- Symptom:
- Symptom:
- Symptom:
- Symptom:
- Symptom:
- Symptom:
- Symptom:
Black Myth: Wukong
Black Myth: Wukong, Unreal 5.0: injection works, ReShade render depth does not
Goal was a Minecraft × GTA V style passthrough: run Minecraft beside Black Myth: Wukong and composite its frame into Wukong's. **The load-bearing negative result: ReShade 6.8.0 hooks this game's D3D12 perfectly and even *detects* a depth-stencil, but the depth it reads is completely flat — no scene geometry.** So depth-correct compositing is not…
记录了 8 个坑
- um win ps crashes on a Chinese-locale Windows.
- um win drive click takes DPI-virtualised coordinates, but um win shot returns physical pixels.
- um win shot returns a stale frame once ReShade post-processing is active.
- um kb new --root wants the knowledge/ directory, not the repo root.
- ReShade 6.8.0 has no RESHADE_VERBOSE_LOG.
- ReShade's Chinese UI translates Add-ons as 「插件」, not 「附加」.
- DisplayDepth.fx is a configuration aid, not a depth viewer.
- Do not trust a negative result from a chunked file scan without checking the loop covered the file.
Naruto Shippuden: Ultimate Ninja Storm 4
Porting ASBR characters into Storm 4: both games' CPK payloads are encrypted
The plan was to port JoJo ASBR characters (combos, specials, HHA/GHA as ultimates), stages and audio into Naruto Storm 4's VS mode for 2 local players, starting with Jotaro + Star Platinum. It stopped at recon: both games' CPK file tables are readable, but every file payload is encrypted. Getting the keys would mean breaking a protection measure, which…
记录了 3 个坑
- The extracted .xfbin files are noise, though the file list parsed fine.
- um scan says "Unknown native engine" for both.
- ASBR file lists show some names twice
Test Drive Unlimited
OpenTDU — decompilation-based source port of Test Drive Unlimited (MC 1.66A)
记录了 8 个坑
- Black screen / missing shaders on first run
- Stale assets used instead of fresh ones
- Garbled pointers reading asset structs on 64-bit
- Flash UI crashes / aliased ActionScript pointers
- No backend fallback
- No regression net
- -skip_glsl confusion
- opentdu_savedecryptor writes to a hardcoded path
Test Drive Unlimited 2
Playing Test Drive Unlimited 2 online with Project Paradise 2 (server, NAT, migration, driver regressions)
TDU2's official servers are gone; **Project Paradise 2** (project-paradise2.de) is the community revival. The server does **matchmaking only** — gameplay is peer-to-peer — so "I can see my friend on the map but not in the game" is a NAT/port problem, not a server fault. Separately, **AMD drivers released after February 2025 break the game** (rendering…
记录了 8 个坑
- See a friend on the map but not in the game.
- AMD GPU: rendering issues, driver timeouts, system freezes.
- NVIDIA GTX 1650/1660 and all RTX: map crashes/freezes.
- "TDU2 has to be launched by Steam".
- New steering wheel not recognised.
- Tabbing out crashes the game.
- Refresh rate above 60 Hz not applying.
- Don't combine multiple car packs.
常见问题
做融合 Mod 需要两个游戏都拥有吗?
需要。融合会从你自己安装的两个游戏中读取素材和代码,成品不能附带任何一个游戏的文件。请分享代码、补丁或转换器。
做一个融合 Mod 要多久?
内容移植(一把武器或一个生物)一次会话就可能完成。像 GTA V 里的 Minecraft 这种穿透式 Mod 则是需要多次会话、大量验证的项目。
可以分享融合 Mod 吗?
分享你的代码和一个“自带游戏文件”的安装器。绝不再分发任何一个游戏的素材。即使没有素材,发行商也下架过同人项目,所以请保持非商业,并阅读两家发行商的政策。