Skip to content

feat: add Timberborn 1.1-experimental build stream and compat port#32

Open
babs wants to merge 1 commit into
datvm:masterfrom
babs:timberborn-1.1-experimental
Open

feat: add Timberborn 1.1-experimental build stream and compat port#32
babs wants to merge 1 commit into
datvm:masterfrom
babs:timberborn-1.1-experimental

Conversation

@babs

@babs babs commented Jun 19, 2026

Copy link
Copy Markdown

Introduce a version-1.1 build stream (IsV11 / TIMBERV11) layered on the existing V1 lineage: 1.1 reuses the 1.0 source set and overrides only the files that diverge, via *.V11.cs / V11\ globs selected in Common.targets.

Port the ModdableTimberborn and BuildingBlueprints APIs that changed in 1.1 behind #if TIMBERV11, preserving 1.0 behavior:

  • placement via ConstructionFactory/BlockObjectFactory (the Place callback overload was removed), honoring PlaceFinished so buildings still spawn as construction sites rather than instantly built
  • lifecycle hooks moved off removed interfaces (IPostLoadableEntity, IPostInitializableEntity)
  • Relay rework: variable-length input list replaces fixed InputA/InputB
  • Valve/WaterInput type and field renames via using-aliases

Make GameAssemblyPublicizer container/CI-friendly via GAME_MANAGED_PATH and EXTRA_PUBLICIZE_DIRS, skipping missing folders; original local paths kept as fallback.

Introduce a version-1.1 build stream (IsV11 / TIMBERV11) layered on the
existing V1 lineage: 1.1 reuses the 1.0 source set and overrides only the
files that diverge, via *.V11.cs / V11\ globs selected in Common.targets.

Port the ModdableTimberborn and BuildingBlueprints APIs that changed in 1.1
behind #if TIMBERV11, preserving 1.0 behavior:
- placement via ConstructionFactory/BlockObjectFactory (the Place callback
  overload was removed), honoring PlaceFinished so buildings still spawn as
  construction sites rather than instantly built
- lifecycle hooks moved off removed interfaces (IPostLoadableEntity,
  IPostInitializableEntity)
- Relay rework: variable-length input list replaces fixed InputA/InputB
- Valve/WaterInput type and field renames via using-aliases

Make GameAssemblyPublicizer container/CI-friendly via GAME_MANAGED_PATH and
EXTRA_PUBLICIZE_DIRS, skipping missing folders; original local paths kept as
fallback.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant