Conversation
|
I'm trying to understand the purpose of this, because it's still a little fuzzy for me. Are you thinking of running the necessary python code on evermizer.com/apbpatch ? |
|
While if someone gives you a KH2 APContainer, you can instead give an error message like "This isn't a patch" |
|
This change serves multiple purposes:
|
|
I do not plan on implementing Zillion in APBPatch, by the way. If we ever get a proper wasm target for python one day, it would be possible by providing a hook from JS that "installs" AP code on demand though. |
|
AP released the procedure patch system and I think the description here is correct, so merging for future reference. |
Now that more games use custom APPatch (and we have proper inheritance) and now that APProcedurePatch is on the horizon, we should define
procedureto mark the patch file as such. Note thatcompatible_versioncan and should stay at5for APDeltaPatch and Z5 patches for backwards compat during rollout.This suggestion is slightly incompatible to the current APProcedurePatch PR in that it allows procedure to be absent.
If procedure is defined, and it is not
[["apply_bsdiff4", ["delta.bsdiff4"]]], thencompatible_versionhas to be set to6to properly error out when trying to use an outdated patcher.The "custom" APPatch specifically uses the same
"procedure"field as APProcedurePatch to make it fail if we were to try using "custom" in a APPP implementation.If no procedure is defined, nor can it be detected as v5 DeltaPatch nor as v5 ZPF patch, it's actually an APContainer, not an APPath, i.e. there is no "apply" or "patch" functionality. Factorio mods are one example of this.