Commit Graph
6 Commits
Author SHA1 Message Date
flan 3fc4ef7a1d Rename the shared code namespace Contraband -> Institution; add license
The suite's classes all lived in namespace Contraband -- a historical artifact from the original
Contraband monolith, which read oddly for a class in Corrections or Policing. Renamed to namespace
Institution across every layer (46 .cs, the XML Class= refs, RootNamespace, the aggregate shim). The
Contraband MODULE, its Contraband.dll assembly, and the Contraband-named classes (CompContraband,
MapComponent_Contraband, ContrabandUtility, ...) are unchanged. Harness-verified 45/0.

Also adds a CC-BY-NC-SA 4.0 LICENSE file.

Aggregate: the settings shim now writes Institution.InstitutionSettings; Assemblies re-vendored with
the renamed DLLs; ROADMAP status refreshed to the six-layer suite at 0.1.0.
2026-07-16 01:45:34 +00:00
flan 7ce9c045c3 Repackage the aggregate onto the Policing + Corrections split
package.sh builds and vendors InstitutionPolicing + InstitutionCorrections (Policing first) instead
of InstitutionJustice, and merges both modules' Defs. The settings shim's 'Justice' checkbox becomes
'Corrections'; deterrence and riots move under the Policing toggle.
2026-07-16 00:45:41 +00:00
flan d44b7887d9 Repackage aggregate onto the smuggling-route build; add TUNING.md
Vendors the Contraband build that wires Corruption.Smuggle (visitors and bent
wardens deliver contraband). TUNING.md records the measured per-day rates from
the full-stack harness against their pre-registered target bands -- all in band:
ordinary colonists ~never offend, a mistreated psychopath ~1 crime/day, reform is
a 0.7-2 day investment. No constant was changed; the run validated the pacing.
2026-07-15 23:21:55 +00:00
flan 18a983b7cc Re-package with the corrections layer bundled; sync the wiki (Rehabilitation page, loop update) 2026-07-15 21:01:28 +00:00
flan 2d46fef192 Re-package the aggregate: bundle Ward + ship the policing layer
Fold Ward into the single Institution install as its psychiatric-care
layer. package.sh now builds Ward clean and vendors Ward.dll plus its
defs and textures alongside the other layers, and the settings shim
gains a Ward (psychiatric care) checkbox that writes the shared
InstitutionSettings.ward flag.

Re-assembling also carries in Justice's now-shipping policing defs (the
constable work type and crime thoughts), so the aggregate finally
bundles colony crime and the weighed arrest as well. README updated to
five layers over one Core with policing shipped and Ward folded in;
adds the changelog, the Workshop preview, and the preview generator.
2026-07-15 20:10:56 +00:00
flan 18fc44c728 Consolidate the suite into one installable Institution mod with toggles
This repo is now the single player-facing mod. It bundles the whole engine and
all three feature layers into one folder -- Core, Contraband, Justice, and Gangs
DLLs plus Contraband's Defs -- with one About.xml and a settings shim that turns
each layer on or off from a checkbox (all on by default). A player installs one
mod (this) and Harmony; no separate Core dependency.

- Source/Institution: the only new code, a settings shim (InstitutionMod +
  InstitutionModSettings) that writes the player's choices into Core's shared
  InstitutionSettings. It owns no gameplay.
- Tools/package.sh: rebuilds the sibling DLLs clean and vendors them + Contraband's
  content in here, so the repo stays a complete drop-in.
- Assemblies/, Defs/, Textures/, Languages/: the vendored, assembled mod.

Still fully modular and splittable: the feature code stays in its own repos and
DLLs (their About.xml files remain), so breaking this back into separate mods is
just shipping them individually -- no code change.
2026-07-15 16:11:56 +00:00