# BibiStory source and provenance

BibiStory’s game emulator is based on the preserved [ExemplaryMe/Vertisy fork](https://github.com/ExemplaryMe/Vertisy), checked out at commit `9ce8f18c8f39d8a82ba9fa26ae323323a1144df9`. Its original upstream was Chronicle20/Vertisy. The source targets GMS v92 (`ServerConstants.VERSION=92`) and retains OdinMS-derived GNU AGPL v3 notices. The full license is in `engine/COPYING`.

The original source is unmaintained and includes custom features and imported data. BibiStory starts with 1× rates and does not claim that every upstream feature is vanilla or working. Additional gameplay modifications should wait for the baseline client and gameplay tests.

Local changes include:

- A single-PC entry point with owned-process start, save, stop, status and autosave commands.
- Nashorn 15.7 on JDK 21, including legacy Java-package compatibility, for NPC, portal, quest and event scripting.
- A v92 BibiStory world name and file-based rates/channel/settings configuration.
- Mandatory website approval: automatic game-login registration is disabled.
- Internal Java RMI connections restricted to loopback; database restricted to loopback.
- Updated Log4j and Netty dependencies, and the current MySQL JDBC driver class.
- Shutdown map-cache handling and lazy event-manager initialization fixes.

The website, control room and original SVG artwork were written for this project. Their source is in `site/`. Third-party Node packages retain their licenses in `site/node_modules/`; exact installed versions are in `site/package-lock.json`.

## Corresponding game-server source

The local BibiStory changes also include account/character ownership checks and one-use, source-IP/destination-bound channel handoffs, source-connection cleanup fixes, opcode bounds checks, and loopback routing for host-local clients. Automated encrypted protocol tests cover character creation, PIC setup, both channels and save/relogin; graphical client compatibility remains unverified.

The editable source is supplied in the local `engine/` directory. A credential-free source ZIP is served at [/source-archive](/source-archive). It contains build files, Java source, scripts, data and license notices, with a sample configuration. It excludes live credentials, database contents, backups, logs, compiled binaries and Git metadata.

## Game client files

Original GMS v0.92 files were recovered from the Internet Archive item [GMS Setup 51–92](https://archive.org/details/GMSSetup51-92), file `GMS0092/GMSSetupv92.exe`.

- Archive size: 2,183,787,906 bytes.
- Archive SHA-1: `ffad4a26199ce8675ebfba9aeeff7c64f62afa7a`.
- All 61 embedded game files passed their original CRC and length checks after extraction.
- Windows Defender’s custom scan reported no threats in the extracted client folder on 28 October 2026.
- The original executable is packed and has not been converted into a compatible BibiStory client. These checks do not establish game compatibility.

MapleStory client software, game data, characters and associated trademarks belong to Nexon/Wizet. BibiStory is an unofficial fan project. They are distinct from the emulator’s source license.

A [partial v92 HD source](https://github.com/ExemplaryMe/orion-server/commit/49d1c79bb30e7974c03798be28821d741f15a6f6) was inspected as a research reference. It has not been applied; some patches are explicitly unfinished. No HD or high-FPS capability has been claimed or enabled.

## Bundled runtimes

- Eclipse Temurin JDK 21.0.12.1, obtained from Adoptium and verified against its SHA-256.
- Apache Maven 3.9.16, verified against the Apache SHA-512.
- MariaDB 11.4.8 Windows portable package, verified against the archive SHA-256.
- Caddy 2.11.7, verified against its release SHA-512.
- 7-Zip 26.05, extracted from the official ip7z release.

Each runtime retains its bundled notices/license files. Do not redistribute the private `data/`, `backups/`, or live `configuration.ini`.
