VF2 Patcher B168
Pre-release
Pre-release
·
23 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
VF2 Patcher B168
Release built from main at 0929109 (PR #15, merged right after packaging,
is a test-only fix and doesn't affect any of the binaries in this release).
Covers PR #11 (same-sex marriage finalization on Accept), PR #12 (persist
Same-Sex Marriage / Marriage Candidate Reroll toggles across a relaunch),
PR #13 (same-sex "Married" status on the villager details screen), and
PR #14 (exporter fix needed to package this release at all) -- none of
which were in a published release before this one (B164 predates all four).
What's new since B164
- Same-sex marriage now actually finalizes. Pressing Marry on a
same-sex couple now runs the real native finalization: money,
achievements, the family tree record, and the "Announcing the marriage
of X and Y" life-event announcement -- previously silently skipped
because the native code that grants those only fires when it can find
one female adult and one male adult, which a same-sex couple can never
provide. - Same-sex "Married" status on the details screen. The villager
details screen ran the identical hard gender-filtered check as the
finalization gate above, independently, to decide which status string to
show -- so even a correctly-recorded same-sex marriage never displayed
"Married". Fixed the same way: a scoped fallback for the specific
villager being viewed. - Same-Sex Marriage and Marriage Candidate Reroll now persist correctly.
Both toggles used to live in a free-standing custom PE section that the
game's native save system never reads or writes, so buying either one
only "stuck" for the rest of that play session -- a fresh launch or a
reloaded save silently reset it to off, even though the store still
showed it as purchased. This is what made Marriage Candidate Reroll look
completely non-functional. Both toggles now live at the same
proven, actually-persisted location already used by the Bathroom 1/2
curtain colors and other renovations (insideCInventoryManager, part
of the real save payload). - All 19 feature-toggle executable variants rebuilt from current
main
and verified byte-distinct.
What's inside
Apply_B168_Patcher.bat/Launch_GUI.bat-- run either to patch your own
Virtual Families 2.exe.offline_vf2_patcher.py/offline_vf2_patcher_gui.py-- the patcher.payload/-- all 19 modded EXE variants (one per feature-toggle
combination) and their supporting assets/images.manifest.json,Transparency Log.txt,How to Use.txt.
Validation performed
- Diagnosed the Marriage Candidate Reroll bug down to the exact root cause
via a linker.mapfile and raw disassembly of the linked exe -- not
just source review -- before writing the fix. - Full
work/test suite: 471 passed, 238 subtests passed; the small
number of remaining failures are all pre-existing, environment-only gaps
(missing local icon source assets, an old release zip, IDA analysis
output, and mobile.oggassets) unrelated to anything in this release. - All 19 executable variants compiled and linked cleanly; confirmed
byte-distinct (SHA-256). - Post-link raw exe disassembly confirmed both new marriage-related hooks
(finalization guard and details-screen married-status guard) resolve to
the exact addresses the generator intended. work/package_patcher_zip.py'svalidate_executable_inventory()ran
automatically during packaging and passed.
Known limitation
- The persisted-byte storage change for Same-Sex Marriage means this
release's external offline-patcher tool can no longer flip that one
setting without an in-game purchase (it previously could, via a direct
byte patch to a now-removed custom PE section). The in-game purchase
toggle is unaffected and, unlike before, now actually persists.
Not yet fully validated
- Divorce Spouse for an existing same-sex couple married before this
build's finalization fix may still not work -- that couple's family tree
record was never populated in the first place, and this release can't
retroactively repair already-saved data. A same-sex marriage formed
under this build should not have that problem.
Package
VF2-B168-Release.zip- SHA-256:
C3022AE1E81D541BE4F9B46E7A990DA888EC23FF5B60A09411C877C733FAB7F0 - Size: 93,671,474 bytes (~89.3 MB)
A passion project by Lorsieab2 in collaboration with Codex AI/Claude. No
copyright infringement intended -- please support the original game
creators!