Implement gradual evolution mechanics and simulation time handling in Owniverse.GI

- Added `blastability` property to entities for vulnerability tracking.
- Enhanced planet string parsing with validation and error handling.
- Introduced `simulation_rules.md` to document evolution mechanics and rules.
- Created tests for time progression and stellar evolution rules, ensuring correct handling of fractional years and resource production.
- Implemented `simulation_time.gd` for managing accumulated time and year processing.
- Updated tests to validate legacy save compatibility and migration to new time schema.
This commit is contained in:
Kirill
2026-09-15 08:27:04 +03:00
parent 7de65f6145
commit 5f5cc6f894
13 changed files with 647 additions and 28 deletions
+2 -1
View File
@@ -80,7 +80,7 @@ var locked_items: Array = []
func set_datetime(value: float):
date_time.text = str(snapped(value, 0.1))
date_time.text = Global.format_number(value, 5) if value != 0.0 else "0.0"
#region Item manipulations: update and visibility
@@ -380,6 +380,7 @@ func load_data() -> bool:
complete.merge(restored, true)
owniverse.state = complete
owniverse.new_state = complete
owniverse.migrate_time_precision()
owniverse.refresh_item_amounts()
pending_page = clampi(int(game_data.get("ui", {}).get("current_page", 0)), 0, PAGE_COUNT - 1)
_restore_page.call_deferred()