Releases: dizzyd/configkit
Release list
v1.4.1
1.4.1 is released! A json patch of your own to a file a mod's config also patches is kept.
For players
- A json patch you wrote against a file that a mod's ConfigKit config also patches was silently undone, with nothing in the log to say so. Found on the Skaven/Rat Player Model mod, where a server's patch moving the model to a different group on the character selection screen had no effect at all. Your patch stays now.
- The reverting only happened on a client, so a server and the players on it could disagree about a patched file. They agree now.
For mod authors
- ConfigKit no longer puts a whole asset file back when it applies its patches a second time. It restores only the json paths its own patch definitions name, so another mod's changes to the same file, and the json patch loader's, survive.
- A patch written against the asset's own value ("value * 2") still applies exactly once, including on a file someone else has patched.
- When another writer's version of an asset is kept, the log says so at VerboseDebug and names the asset. Nothing is reverted in silence.
Thanks to Burgersim (https://mods.vintagestory.at/show/user/566641A5B94685103083) for the report, and for narrowing it to the Skaven mod and ConfigKit together.
Built by GitHub Actions from ae0ac4b023c4c3889c96b2ecf48e89f01c5b3de7.
configkit_1.4.1.zip sha256 |
016f640a14d930c94f3741cb80d498f7b927faee15c44618a0a0454c92805dc4 |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.4.1.zip --repo dizzyd/configkit
v1.4.0
1.4.0 is released! Optional sections, and two more of TheInsanityGod's reports.
For players
- A long setting name no longer runs into the rows below it. The row grows to fit the name instead.
- A mod registered under a name with spaces in it showed "name:setting-Field" on every row. It shows the setting's own name now.
- A section whose class carries a description shows that description under its heading.
- A section the mod lets you switch off has an Enabled switch as its first row. Off, its rows show what they would hold and cannot be edited; on, they can.
For mod authors
- A nested class declared nullable (public SailsConfig? Sails;) is an optional section. Null is left null rather than replaced with a fresh instance, the section gets an Enabled switch, and the file holds null when it is off and an object when it is on. Switching off and on again keeps the values. Before this, a null sub-config was silently turned back on with defaults at registration.
- The '?' is read from the compiled annotation, so it works whether or not your project has nullable checking on. A nested class declared without it and left uninitialised still gets an instance, as before.
- A [Description] or doc comment on a nested class is the line under its section heading.
Thanks to TheInsanityGod (https://mods.vintagestory.at/show/user/B5486CC4FCE8B1143B89) for the reports, and for noticing that null sub-configs were not surviving.
Built by GitHub Actions from 92a88132c70e4989a91c0a1bf849e74b0b7462d7.
configkit_1.4.0.zip sha256 |
08f2172ee86660085d285e4347726484c17ade5b47a93b6c784641ea8c729f16 |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.4.0.zip --repo dizzyd/configkit
v1.3.6
1.3.6 is released! Mostly TheInsanityGod's reports, plus what turned up chasing them.
For players
- Fixed the lag spike with "Texture ... is leaking memory" in the log. Rows scrolled out of view on a long list were never freed when the screen rebuilt.
- A saved enum choice no longer resets to its default on every start.
- A setting that fails validation now marks its own row: the label turns red and a mark past Reset carries the message.
- A nullable number stays empty when you click away, instead of turning into 0.
- Choosing "(unset)" on a nullable enum now saves as unset rather than the old value.
- A mistyped enum or numeric key is refused with a message, instead of being lost on the next load.
- The colour swatch redraws as you type.
For mod authors
- A field inside a dictionary or list entry gets the same control it would at the root: a slider for [Range], a dropdown for an enum, an empty box for a nullable.
- Validation attributes are enforced inside entries too, and the container's row names the entry and field that failed.
- An enum dictionary key is chosen from a dropdown. A [Flags] key accepts a combination. A numeric key is checked against its own type.
- Enums backed by byte, short or long now register. They threw before, and the mod did not load.
- A field added to a class after files were written reads as its class default in every stored entry, not as null.
- An enum inside an entry that the file stores as a number shows the right member.
Thanks to TheInsanityGod (https://mods.vintagestory.at/show/user/B5486CC4FCE8B1143B89) for the reports, and for the traced log that pinned the leak down.
Built by GitHub Actions from b541eebc6f77158d2b7dc7c5e499a890f6a60595.
configkit_1.3.6.zip sha256 |
c02851402b28e10e997082fd183e29455a809600b38488cbc9c703f741511c23 |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.3.6.zip --repo dizzyd/configkit
v1.3.5
Built by GitHub Actions from 32a4c61e95b3a86979f7d2a3e3e5308bb7280abc.
configkit_1.3.5.zip sha256 |
c73b4f4e1edd30c2fd56c9840d0ccb49eb907b9d4600f5d9e7debf3958a54265 |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.3.5.zip --repo dizzyd/configkit
v1.3.4
Built by GitHub Actions from ef66b9ae826e4cdee09ccd20ed80f26ad1f81a74.
configkit_1.3.4.zip sha256 |
b382355d25389354cec6feedc7fdfbd69297f1b6d159c180751732bd8b52af06 |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.3.4.zip --repo dizzyd/configkit
v1.3.3
Built by GitHub Actions from 4768c9bf5d7cdc5db4a79898ac8ceb14b54d0f38.
configkit_1.3.3.zip sha256 |
6d3fc58c2d56ecc46526aa857ed51ca0a65e5cca63b66a3cdb7b864de644296a |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.3.3.zip --repo dizzyd/configkit
v1.3.2
Built by GitHub Actions from eb16b9335a429a6651a19b20fc7746fe6dd3c651.
configkit_1.3.2.zip sha256 |
72b5b83b95e4c53b1fcab401353980a0787821d5222b056c35919d1286bb1fa3 |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.3.2.zip --repo dizzyd/configkit
v1.3.1
Built by GitHub Actions from 6ccab85982a3a10f5f2b2e6669b5f829e66b91ac.
configkit_1.3.1.zip sha256 |
cff32c446fccbc502728afea1d10d71eb02eb368b5d43b82a38291cbc39e4e29 |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.3.1.zip --repo dizzyd/configkit
v1.3.0
Built by GitHub Actions from c4e0ef5b497e765d03391f0cde130cfab8164221.
configkit_1.3.0.zip sha256 |
a5d40156595d3af329d2679fe778913edb3d2c5c5df6ea11e89c4110c14a005e |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.3.0.zip --repo dizzyd/configkit
v1.2.0
Built by GitHub Actions from f732bd32ca800ef5e4dbabbd7568f5434135de84.
configkit_1.2.0.zip sha256 |
43fd1b3cd15c1a0b436d62d9192a3dd23b57db7e62a6e0ad3bdab9f824b541fe |
| Compiled against | Vintage Story 1.22.7 |
vs_server_linux-x64_1.22.7.tar.gz sha256 |
a7d4a520604590a96de812ee6c6baf4404d43d86cf1ec4fbac1b3a580b52c847 |
| .NET SDK | 10.0.400 |
The zip uploaded to ModDB is this exact file — ModDB stores uploads
byte for byte, so the sha256 above should match what you download there.
Verify the build provenance:
gh attestation verify configkit_1.2.0.zip --repo dizzyd/configkit