This repository has been archived on 2024-05-15. You can view files and clone it, but cannot push or open issues or pull requests.
fugg-fetch/README.md

25 lines
1.3 KiB
Markdown

# Introduction
This little tool downloads the Flyff Universe game page and splits in into several files used for decompilation and injection.
- First it downloads the HTML from https://universe.flyff.com/play.
- It executes the JavaScript to find out the `FilemapVersion` .
- Then it downloads the game client's WASM object alongside it's Emscripten runtime JS.
- The symbols that the game uses are exported into the Emscripten runtime JS, so this file is parsed to get as much information as possible.
- Using these symbols, it consolidates both imports and exports into a single JSON file, which is used by [fugg-fix-mapping](https://git.noest.dev/gijs/fugg-fix-mapping).
# Build & Run
*Make sure you have `node` and `npm` installed and in your `PATH` environment variable.*
1. Clone the repository.
2. Run `npm install`.
3. Run `npm start` to run the program.
4. The following generated files are located in the `out` folder.
- `functions.json`: Contains the import and export mapping of the Emscripten runtime JS.
- `index.html`: A downloaded copy of the web page.
- `client-original.js`: The minified Emscripten runtime JS as served by the web page.
- `client-beautified.js`: The beautified Emscripten runtime JS so it's human readable.
- `client-original.wasm`: The extracted client binary used by the game.