FireControl.Extract stamps every mined stack with the Extracted lot of its zone, belt and ore

Extracted gains Body at key 2. ItemManager.ExtractedLot finds or mints the lot; its
(zone, belt, ore) index is derived from the ledger at construction and never saved.
SavedGame roots skip null items and Lot 0.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Nibu 2026-11-13 03:03:25 +00:00
commit df67c875e3
4 changed files with 34 additions and 3 deletions

View file

@ -225,7 +225,7 @@ public static class RunSave
var roots = zones
.SelectMany(zone => zone.Contents?.Entities ?? new List<EntityPack>())
.SelectMany(EntitySerializer.Items)
.Where(item => item.Lot != 0)
.Where(item => item != null && item.Lot != 0)
.Select(item => item.Lot);
cache.Commit(batch =>
{