mirror of
https://github.com/Mezeporta/Erupe.git
synced 2026-05-06 14:24:15 +02:00
Bookshelf was introduced after Forward.5 (verified: F5 mhfo.dll has no Bookshelf symbols, modern clients export .?AVBookshelfForm@@). For F4/F5/S6 the configured pointers place the bookshelf region past the end of the smaller save blob, causing a slice-bounds panic on every MSG_MHF_SAVEDATA and rolling characters back to creation state. The read is now bounds-checked and skipped when absent; bookshelf state is persisted via house packets into user_binary.bookshelf, so leaving BookshelfData nil is safe.