Commit Graph
14 Commits
Author SHA1 Message Date
icex2 57e68f928a feat: bemanitools 6 initial refactoring drop, alpha 1
**THIS IS A HIGHLY WORK/DEVELOPMENT IN PROGRESS VERSION**

**THINGS ARE BROKEN AND EVERYTHING IS SUBJECT TO CHANGE**

First cut after massive refactoring with most critical and fundamental changes implemented.
We need to start somewhere, and this might be as good as anything else, so we can get started
with testing, bug fixing and iterating for the next releases.

The following list is non-exhaustive, does not guarantee anything does work, yet, and is supposed
to give a high level idea of what all of this is about. Updated documentation will reflect all of
this at some later point in time in more detail.

* A common "core" now abstracts logging, thread, property and configuration infrastructure and
  provides a common interface. This is used by bemanitools internally as well as all tools, hooks
  and APIs provided and don't depend on the game, version of the game or AVS version available
  anymore
* New bemanitools (public) API
  * Versioned API allowing for handling incremental API changes as well as breaking changes by
    providing a new/different version when necessary
  * Unified interfaces for bemanitools core API, i.e. logging, threads, configuration
  * SDK with examples (TBD)
  * Dogfooding approach: Bemanitools uses its own (public) API to implement and provide fundamental
    features like configurable keyboard implementations for IO or hooks for different games and
    versions
* All bemanitools hooks and IO libraries have been or are about to be re-worked to use the new APIs
* New hook API allows for more fine grained runtime control when stages of the hook are to be
  executed, i.e. pre AVS, before main game, iat hooking instead of relying purely on DllMain
  (which is still a compatible option though)
* launcher as a replacement for bootstrap: Bring it significantly closer to the original bootstrap
  by supporting completely vanilla data and bootstrap.xml configurations to run the games. Note
  that bemanitools does not include any code or means to run DRM'd data, only decrypted
* inject is also being reworked to use as much of the same "infrastructure" as launcher to provide
  a more seamless bootstrapping process for games that keeps pre-eapki data as vanilla as possible
Summary:

Test Plan:
Summary:

Test Plan:
Summary:

Test Plan:
Summary:

Test Plan:
2024-08-15 11:34:31 +02:00
icex2 8fde17d24a refactor(dist): Config and .bat files
Move everything to new launcher.xml configuration
files. Adjust the bootstrapping of launcher in the
.bat files. Features such as copying the default
props/ files to nvram are now handled by launcher.

Using the PATH variable, bemanitools binaries can
live in their own dedicated bemanitools/ subfolder
next to props/ and modules/ now. All original
binaries are expected to be kept in a modules/
folder like on stock data.
2024-08-14 17:53:51 +02:00
icex2 ce1a004bf6 fix(ddr): Add missing distribution files for 17 and 18
Even they are identical to 16, stick to the current scheme
of copy-pasting them.
2024-02-03 10:29:10 +01:00
QCDLZCLW3K 0586ea50aa Add ddr-12 EU support 2022-05-30 02:00:49 +00:00
QCDLZCLW3K 6d38aa5f4a Add support for DDR X2 US 2022-05-30 02:00:49 +00:00
QCDLZCLW3K ab50c70f71 Fix conf description string 2022-05-30 02:00:49 +00:00
QCDLZCLW3K 2223947dd8 Split USB memory path configurations 2022-05-30 02:00:49 +00:00
QCDLZCLW3K 75583897c1 Be more careful about USB memory errors 2022-05-30 02:00:49 +00:00
QCDLZCLW3K da736d2968 Refactor d3d9 2022-05-30 02:00:49 +00:00
QCDLZCLW3K c3f9ce7e91 Fixes based on PR feedback 2022-05-30 02:00:49 +00:00
QCDLZCLW3K 852d770629 Nearly complete USB memory support 2022-05-30 02:00:49 +00:00
QCDLZCLW3K 4be866e69e Add support for DDR X 2022-05-30 02:00:49 +00:00
Will Xyen 69ee95c79a dist: Speify config.exe instead of just config in config.bat (#35) 2019-10-24 20:32:47 -04:00
icex2 cbd7720349 Bemanitools v5.26 release 2019-09-27 22:36:50 +02:00