-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Patch and use the Machina library bundled in FFXIV_ACT_Plugin #77
Conversation
Sorry for not coming back to you earlier! Indeed the only real problem with #76 is that it does not point to the custom Machina submodule anymore. In the past IINACT used to actually just use the bundled Machina, the two main reasons why I moved away from doing this was to easily implemented the Dalamud client (which you have already taken efforts to not be needed anymore) and to update the opcodes myself on patchday (ideally before the servers are already up), since I do not like to wait for the full release of the FFXIV_ACT_Plugin and then people want to use the beta, which is only available on Discord etc and it is just a headache and for me worth manually updating for. I also wouldn't mind keeping the Chinese opcodes of the Machina fork updated in a timely manner, or maybe even some sort of CI propagation from an opcode repo. |
Oh I even didn't know there's a Discord community! For the Chinese our maintainers usually just update the plugin on patch day since the parsing code is just from an older version of the global one and they only need the opcodes on the patch day... How about dynamically update opcodes with an URL, just like updating the plugin zip? |
That would probably be ideal, but would require a bit of new infrastructure and then patch machina as well with the new opcodes... There is also the risk of some random network issues, which especially when connecting to GitHub happens a lot, so these would have to be cached + versioned most likely as well. |
This is also compounded by OverlayPlugin having its own list of opcodes that also need updating anyways on patch day |
|
…:Menci/IINACT into patch-machina
Currently IINACT use an owned fork of the Machina library. While Machina.FFXIV contains the game client's opcode, the fork needs to be updated for each game version. If we want to also support the Chinese client, things become harder since the open-source repo of Machina doesn't even contain the latest opcodes for Chinese client.
Since we're only replacing the
DeucalionClient
withDalamudClient
in the Machina library, we can do it dynamically for the Machina library bundled in FFXIV_ACT_Plugin, then we won't need to maintain the opcodes manually anymore.