Releases: Oops19/TS4-PatchXML
Release list
PatchXML v1.3.3
v1.3.3
- NEW FEATURE: Apply all patches for a tuning if multiple patches are provided.
- Multiple patch files are written in this case, only the last one is used.
- This is 50% safe and/or 50% unsafe
- If a patch deletes XML data the 2nd patch may fail if it relies on it.
- If the 2nd patch deletes modifications of the 1st patch things fail too.
- Multiple patch files are written in this case, only the last one is used.
- FIX: Fix import in reload_xml
- TASK: Cleanup of old code in SharedData().initialize_cache_directory()
PatchXML v1.3.0
v1.3.0
- Add a simple FAQ to README
- Do nothing in case 'cfg' is empty. Do not read cached values or try to patch things.
- Move all files out of 'cfg' and deliver the mod without default configuration files. >> README updated.
- comments.zip updated
Patch-XML v1.2.3
Changes for v1.2.3
Add XML with "_xml='TEEN'" to the selected (via xpath) node.
Evaluate the xpath only one time. xpath with '/..' will no longer fail after deleting the child node.
xpath compatibility: 'contains()' and 'text' support now single and double quotes:
* E[contains(text(), "TEEN")] or E[contains(text(), 'TEEN')]
* E[text="TEEN"] or E[text='TEEN']
* [E="TEEN"] or [E='TEEN']
* For 'match' [E="TEEN"] or [E='TEEN'] must be used, 'contains()' and 'text' are not supported.
Patch-XML v1.2.2
In case you are patching a huge amount of tunings you may need this update. Otherwise the old version will do it.
Due to the issue with sorting the process doesn't write the summary data after patching. With no data written it'll process all tunings again instead of reading the patched tuning files. This leads to a long startup time.
v1.2.2
No longer sort tunings, this fixes a memory issue.
Patch-XML v1.2.1
v1.2.1
Improved identification of bogus tunings.
During 1st start and/or after a game update all tuning IDs are logged.
The time stamps can be matched with Vanilla Logs.
Vanilla Logs are needed as exceptions within TS4 are caught internally and Patch-XML doesn't receive them.
For example:
2024-07-25 23:55:55.742631 DEBUG: [PatchXML]: Checking(ETreeTuningLoader): I buff 'buff_Alien_Empathy_Emotion_Playful' (103479)
2024-07-25T23:55:55.724679 FATAL None None '[GSI_DUMP][cjiang] Error occurred within the tag named 'walkstyle' (value: V) (UnavailablePackSafeResourceError)
S4S Shift+Ctr+C 'resource.find 103479' -> Shows only EA EP01/EP02 sources for me, strange!
Add 103479 to S4S package and check all references, e.g. n="Mood_Playful" s="14642"
S4S Shift+Ctr+C 'resource.find 14642' -> 'roBurky - EmotionalInertia-Complete.package' - This file must be updated or deleted to fix the error.
Remove the cached Patch-XML data and start TS4 again to make sure it starts without errors.
PS: This FATAL error is not really FATAL, TS4 starts anyway.
Patch-XML v1.2.0
No functional changes but worth updating.
- Increased startup time (or caused delay by this mod down to arond 1.5 seconds - the initial run still takes around 1 minute for 600 tunings to patch).
Changes:
v1.2.0
Save tunings to patch_xml/{game_version}/ and load them from there
Patch-XML v1.0.12
v1.0.12
Improved logging
Fixed a bug
Patch-XML v1.0.11
v1.0.11
Return XML without the 'n', 's' ad 'i' attributes 1:1, don't throw an exception
v1.0.10
Basic support for http://xpather.com/ XPath syntax.
Avoid to add spaces to the XPath expression around @=,[]()"' etc. as such strings can't be converted.
Exception: 1-n spaces behind ',' are supported.
'', '/I', -> '.'
'/I/X/Y/Z' -> 'X/Y/Z'
'/X[text()="Y"]' with '/[X="Y"]/X'
'/X[contains(text(), "Y"]' with '/[X="Y"]/X' # not correct, no longer a contains check!
'/*' will be removed as it is not supported!
A simple expression can be used 1:1, e.g.:
* '/I/X[text()="Y"]/../Z' will be translated to '[X="Y"]/X/../Z'
For '/[T="text"]' matches:
Remove all comments from xml before parsing. 'Y' does not match 'Y<-- Whatever -->'
Patch XML v1.0.9
v1.0.9
Improved logging
v1.0.8
Require XmlPatcher(add_comments=True) to add comments to generated files.
v1.0.7
Modified log imports to use this mod without TS4.
Allow to add a comment also while modifying XML.
It is not recommended to add comments with config files during startup as this may cause issues for TS4.
v1.0.6
Improve error logging
v1.0.4
Small bugfix
Patch XML v1.0.1
Removed comments from patch files which TS4 can't handle properly.