The 8 drifting timers ([TimerDrift]) change wire format from delta to anchored time, so each class bumps its serialization version with a MigrateFrom that replays the old delta read through the migration schema. The 2 wall-clock timers (Aquarium, FountainOfLife) keep their format via wallClock: true with no bump. Restart methods drop their TimeSpan.MinValue sentinel checks - v4 invokes them only when a timer was actually running at save. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
19 lines
No EOL
377 B
JSON
Generated
19 lines
No EOL
377 B
JSON
Generated
{
|
|
"version": 3,
|
|
"type": "Server.Items.FillableContainer",
|
|
"properties": [
|
|
{
|
|
"name": "ContentType",
|
|
"type": "Server.Items.FillableContentType",
|
|
"rule": "EnumMigrationRule"
|
|
},
|
|
{
|
|
"name": "RespawnTimer",
|
|
"type": "Server.Timer",
|
|
"rule": "TimerMigrationRule",
|
|
"ruleArguments": [
|
|
"@AnchoredTimer"
|
|
]
|
|
}
|
|
]
|
|
} |