{
  "schema": "mvc1-cross-fever-preview-acceptance/v2",
  "version": "v2.2-preview",
  "date": "2026-10-06",
  "gameMemberTargetsUnchangedFromV2": true,
  "installerUnchangedFromV21": true,
  "rootCause": {
    "v21": "library_name \"FinalBurn Neo (MVC1 Cross Fever 4P)\" (35 characters). RetroArch's netplay info packet carries core_name in 32 bytes (NETPLAY_NICK_LEN), so peers received 31 characters and refused the connection: \"A netplay peer is running a different core. Cannot connect.\"",
    "v21Launcher": "PLAY.cmd loaded the core from the package folder and shipped no .info, so RetroArch's Netplay host list could not match a room to an installed core (task_netplay_find_content: no core path). Settings passed with --appendconfig were dropped when hosting or joining reloaded the content.",
    "v22": "library_name \"FBNeo (MVC1 Cross Fever 4P)\" (27 characters); fbneo_mvc1cf_libretro.info with the same corename; PLAY.cmd/play.py install core and .info into RetroArch and set netplay_use_mitm_server, netplay_public_announce and netplay_nickname in retroarch.cfg."
  },
  "netplay": {
    "status": "PASS_LOCAL_FOUR_INSTANCES",
    "frontend": "RetroArch 1.22.2 built from the v1.22.2 tag for Linux x64 (Ozone, OpenGL under Xvfb)",
    "core": "fbneo_mvc1cf_libretro.so b6b6823c49b816f363c5204bae425ff8e7a570d49de6882f17904743a229d6d5",
    "setup": "four RetroArch users (separate settings, displays and keyboards) on one machine; each extracted the Linux package, built output/mvsc4p.zip with install.py from the clean Euro 980123 parent, and started with play.py",
    "relayAndLobby": "local stand-ins: an HTTP server answering RetroArch's lobby requests (/add, /list, /tunnel) and libretro's netplay-tunnel-server; RetroArch's own announce, list and join code ran unchanged",
    "results": [
      "host: Main Menu > Netplay > Host > Start Netplay Host; room announced as \"Internet (Relay): MORPH\" with the core name, mvsc4p and the relay session",
      "joiners: Main Menu > Netplay > Refresh Netplay Host List > the room; \"You have joined as player 2/3/4\" in join order",
      "different mvsc4p.zip bytes per player (the Python installer's ZIP dates): CRC match falls back to the file name; RetroArch logs \"Content CRC32s differ\" and plays the identical game members",
      "character select and fight: each player's keys moved only their own fighter; HP+HK tags put P3 and P4 in with 3P and 4P markers, and P1/P2's keys then moved nothing",
      "v2.1 core, same setup: all three joiners refused (\"different core\")",
      "without the .info file (or with a stale core info cache): picking the room did nothing; with the .info and core_info.refresh it joined"
    ],
    "notRun": ["public lobby.libretro.com and relay servers", "internet latency", "Windows and macOS RetroArch", "four physical controllers"]
  },
  "windowsDll": {
    "status": "PASS_WINE_SMOKE",
    "method": "a minimal libretro host (C, cross-compiled with MinGW) under Wine 9: library name/version, mvsc4p.zip load, 3,000 frames of a scripted four-player start (joins, picks), a frame hash every 60 frames",
    "result": "all 50 frame hashes identical to the Linux core on the same host program; save state replay behaves the same as the stock mvsc driver",
    "notRun": "RetroArch for Windows, Windows PowerShell 5.1"
  },
  "launchers": {
    "Play.ps1": "20/20 cases under PowerShell 7.4.6 (Linux): finding RetroArch (argument, folder, saved path, typed path, wrong path), its folders (relative, absolute, missing config), core/.info install and refresh marker, settings (replace, add, backup, name prompt and cleaning), RetroArch already open, damaged core, missing or changed mvsc4p.zip",
    "play.py": "used for the four-user netplay test on Linux"
  },
  "installer": {"status": "UNCHANGED_FROM_V21", "rerun": "Python and PowerShell 7 installers rebuilt mvsc4p.zip from the clean parent; all patched members match the spec"},
  "remaining": [
    "Windows: PowerShell 5.1, the DLL in RetroArch for Windows, SmartScreen prompts",
    "macOS RetroArch with the dylib",
    "public lobby and relay servers, four people over the internet",
    "four physical controllers",
    "full selection/tag/Duo/KO/rematch/CPU matrix on the new core"
  ]
}
