Skip to content

Custom Projectiles 1.8.14 — save retuning and manual range tester

Pre-release
Pre-release

Choose a tag to compare

@Krarilotus Krarilotus released this 02 Oct 10:35

Provisional 1.8.14 tester for source PR #15 (refs #14 and #16).

  • Allow gameplay config edits when loading format-5 saves; preserve saved random seed and visual identities, reset obsolete module firing queues/timers. Root allow_config_changes_on_load: false retains strict matching. Custom graphics definitions/slots still must match.
  • Reject out-of-range native-timed manual targets through the existing native acquisition/range owners; finish an older rejected swing without firing. Existing strict_range: false disables the correction. Native dispatch, scatter and cow orders remain owned by their existing paths.
  • Includes optional target-unit/group ammunition, the complete inert vanilla reference, Reconquista preset, VS Code schema and nine GUI preview languages.

ZIP SHA-256: b5dfa36750e7532deff97bf869fd39499fb64018fefa3c02361266535de3e2db. Four downloadable artifacts each have checksum files. GM owner dependency: GM owner 0.3.1 ZIP.

Testing:

  1. Install the tester with UCP 3.0.7+, map-extensions, protocol, ui 1.0.1+ and the GM owner 0.3.1 dependency. Select the matching YAML beside its schema under Customizations > Balance Changes and restart.
  2. Save an active match. Change a unit's interval, count, range or target-ammunition rules, restart and load it. Confirm the new settings apply without a config-mismatch rejection. Old module firing timers/queued volleys reset; the saved random seed and visual identities remain.
  3. Set root allow_config_changes_on_load: false and repeat a changed-config load: it must reject. Restore the original settings and confirm normal resume. Keep custom sprite/decorations definitions and graphics slots unchanged. Older custom-graphics saves need one unchanged load/resave on 1.8.14 before gameplay retuning.
  4. Give a human Mangonel interval: 400 and range: 3. Directly order an enemy beyond three tiles: it must not stay frozen in wind-up or fire beyond the cap. A swing already started by an older build must finish without firing. Retarget inside range and confirm turning, seven-shot volleys and reload. Test building/ground orders, the exact range edge and strict_range: false as the OFF control.
  5. With Reconquista, check AI catapult/trebuchet regular ammunition against siege and AIC cows against troops; exact target-unit rules override groups. Repeat manual/cow orders, native accuracy/scatter and saved staggered volleys on Crusader and Extreme. All multiplayer peers need identical versions, configs and sprite bytes; compare paired sessions/replays before acceptance.

Validation and remaining acceptance:

Seven new production Lua/FASM/x86/save-owner regressions passed on normal/Extreme 1.41. A 69-test surrounding run passed 68, with its only schema error caused by loading the pre-regeneration schema; that case passed against the final schema. Final follow-up passed 15 schema/native-config/save/acquisition cases. The seven new regressions were rerun after final trampoline cleanup and passed. All 23 launcher component/archive tests passed, including nine locales and the one established Balance Changes file picker.

Live game acceptance remains pending: the 2 October queued native probe returned Native app bindings are unavailable for windows, then released its slot. Rendered impact/damage, paired multiplayer/recorder playback, long-match performance and wider executable variants are unverified. Existing startup diagnostics remain English; the preview prose is translated into all nine languages, pending human review. The separate trebuchet aim/impact-damage report is not claimed fixed. This is a provisional test build, not accepted Store completion.