Repository navigation
Conversation
When using hotkeys, the UI should show which tool group is active, including nested parent groups, for better visual feedback. Added Button property to ButtonToolHotkeyDefinition. Modified ToolHotkeyListener to find containing groups, walk parent chains using ModdableToolGroupButtonService, and select all groups from root to leaf. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Select associated tool groups when using tool hotkey
translate to rus
Adds new lines with information about water and food consumption.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add T pipe junctions
tharbad08
force-pushed
the
pr/benchmark-optimizer-v11-port
branch
from
October 13, 2026 03:37
300630c to
cbb4d58
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Port Benchmark & Optimizer to Timberborn 1.1 — CSV Profiling & Safe Tick Controls
Overview
This PR introduces a Timberborn v1.1-compatible port of Benchmark & Optimizer, preserving the original mod's purpose: identifying performance bottlenecks and allowing players to adjust update frequencies for individual game systems.
The port is implemented in a separate
BenchmarkAndOptimizerV11Port/directory, leaving the original mod untouched for users running older game versions.The implementation incorporates fixes and safety protections discovered through extensive profiling and testing with a heavily modded Timberborn 1.1 colony.
Features
1. Performance Benchmarking & CSV Export
StepAllandPhysics.Simulate).2. Per-System Update Frequency Controls
optimizer-v11.json.Simulation safety: Critical systems are permanently protected from throttling, including global tick dispatchers, physics, navigation, planting, soil contamination, automation, and work scheduling.
These protections address issues encountered during development where throttling shared dispatchers or simulation-critical services caused unexpected gameplay behavior.
3. Improved Settings UI
Crash fix: Filtering now changes the visibility of existing UI elements rather than rebuilding the UI tree during text input. This avoids a previously encountered crash when filtering the settings window.
4. System Discovery
The mod discovers eligible systems from loaded assemblies during initialization. Additional systems may be discovered when they execute during a benchmark.
Current limitation: Neither initial scanning nor benchmarking guarantees a complete list. Systems loaded later, or whose code is never exercised, may remain undiscovered.
The existing Refresh detected systems control refreshes the displayed list; it does not perform a separate discovery scan.
Scope & Compatibility
This is an independent v1.1 port, not a replacement for the original mod.
The PR intentionally excludes unrelated gameplay optimizations developed during performance investigations, including changes to EBR, BFR, Keystone, SuperCursor, preview processing, terrain colliders, and garbage collection behavior.
It also excludes experimental save/load modifications and startup assembly patches.
The intention is to keep benchmarking, profiling, and configurable update intervals together while maintaining a clean separation from unrelated performance fixes.
Validation
The PR is submitted as a draft pending in-game validation.
Possible Future Improvements
These are documented ideas, not implemented in this PR:
Even with these improvements, complete discovery cannot be guaranteed for systems that have not been loaded or activated.
Upstream compatibility: The original
BenchmarkAndOptimizer/directory remains unchanged.Source:
BenchmarkAndOptimizerV11Port/The goal is to make the original Benchmark & Optimizer useful again on Timberborn 1.1, while retaining its flexibility and incorporating the safety lessons learned from real-world modded gameplay.