@@ -165,24 +165,24 @@ def _post(cfg: MettaGridConfig) -> None:
165165 def _apply_inventory_seed (self , cfg : MettaGridConfig ) -> None :
166166 if not self .inventory_seed :
167167 return
168- seed = dict (cfg .game .agent .initial_inventory )
168+ seed = dict (cfg .game .agent .inventory . initial )
169169 seed .update (self .inventory_seed )
170- cfg .game .agent .initial_inventory = seed
170+ cfg .game .agent .inventory . initial = seed
171171
172172 def _apply_communal_chest (self , cfg : MettaGridConfig ) -> None :
173173 if self .communal_chest_hearts is None :
174174 return
175175 chest = cfg .game .objects .get ("communal_chest" )
176176 if isinstance (chest , ChestConfig ):
177- chest .initial_inventory = self .communal_chest_hearts
177+ chest .inventory . initial = self .communal_chest_hearts
178178
179179 def _apply_resource_chests (self , cfg : MettaGridConfig ) -> None :
180180 if not self .resource_chest_stock :
181181 return
182182 for resource , amount in self .resource_chest_stock .items ():
183183 chest_cfg = cfg .game .objects .get (f"chest_{ resource } " )
184184 if isinstance (chest_cfg , ChestConfig ):
185- chest_cfg .initial_inventory = amount
185+ chest_cfg .inventory . initial = amount
186186
187187 def _apply_extractor_settings (self , cfg : MettaGridConfig ) -> None :
188188 for resource in RESOURCE_NAMES :
@@ -249,9 +249,9 @@ def _apply_heart_reward_cap(self, cfg: MettaGridConfig) -> None:
249249 if not isinstance (obj , ChestConfig ):
250250 continue
251251 # Find existing heart limit or create new one
252- heart_limit = obj .resource_limits .get ("heart" , ResourceLimitsConfig (limit = 1 , resources = ["heart" ]))
252+ heart_limit = obj .inventory . limits .get ("heart" , ResourceLimitsConfig (limit = 1 , resources = ["heart" ]))
253253 heart_limit .limit = 1
254- obj .resource_limits ["heart" ] = heart_limit
254+ obj .inventory . limits ["heart" ] = heart_limit
255255
256256 def _ensure_minimal_heart_recipe (self , assembler : AssemblerConfig ) -> None :
257257 minimal_inputs = {
@@ -444,7 +444,7 @@ def configure_env(self, cfg: MettaGridConfig) -> None:
444444 assembler .protocols = updated_protocols
445445
446446 agent_cfg = cfg .game .agent
447- inventory = dict (agent_cfg .initial_inventory )
447+ inventory = dict (agent_cfg .inventory . initial )
448448 for res in resources :
449449 inventory .pop (res , None )
450450
@@ -459,7 +459,7 @@ def configure_env(self, cfg: MettaGridConfig) -> None:
459459 else :
460460 inventory .pop ("decoder" , None )
461461
462- agent_cfg .initial_inventory = inventory
462+ agent_cfg .inventory . initial = inventory
463463
464464
465465class DiagnosticUnclipCraft (_UnclipBase ):
@@ -495,9 +495,9 @@ class DiagnosticChargeUp(_DiagnosticMissionBase):
495495 def configure_env (self , cfg : MettaGridConfig ) -> None :
496496 # Set starting energy to 30 and no regen
497497 agent = cfg .game .agent
498- agent .initial_inventory = dict (agent .initial_inventory )
499- agent .initial_inventory ["energy" ] = 60
500- agent .inventory_regen_amounts = {"default" : { " energy" : 0 } }
498+ agent .inventory . initial = dict (agent .inventory . initial )
499+ agent .inventory . initial ["energy" ] = 60
500+ agent .inventory . regen_amounts = {"energy" : 0 }
501501
502502
503503class DiagnosticAgile (_DiagnosticMissionBase ):
@@ -540,10 +540,10 @@ class DiagnosticRadial(_DiagnosticMissionBase):
540540
541541 def configure_env (self , cfg : MettaGridConfig ) -> None :
542542 agent = cfg .game .agent
543- inventory = dict (agent .initial_inventory )
543+ inventory = dict (agent .inventory . initial )
544544 inventory ["energy" ] = 255
545- agent .initial_inventory = inventory
546- agent .inventory_regen_amounts = {"default" : { " energy" : 255 } }
545+ agent .inventory . initial = inventory
546+ agent .inventory . regen_amounts = {"energy" : 255 }
547547
548548
549549# ----------------------------------------------------------------------
@@ -600,9 +600,9 @@ class DiagnosticChargeUpHard(_DiagnosticMissionBase):
600600 def configure_env (self , cfg : MettaGridConfig ) -> None :
601601 # Set starting energy to 30 and no regen
602602 agent = cfg .game .agent
603- agent .initial_inventory = dict (agent .initial_inventory )
604- agent .initial_inventory ["energy" ] = 60
605- agent .inventory_regen_amounts = {"default" : { " energy" : 0 } }
603+ agent .inventory . initial = dict (agent .inventory . initial )
604+ agent .inventory . initial ["energy" ] = 60
605+ agent .inventory . regen_amounts = {"energy" : 0 }
606606
607607
608608class DiagnosticMemoryHard (_DiagnosticMissionBase ):
@@ -689,10 +689,10 @@ class DiagnosticRadialHard(_DiagnosticMissionBase):
689689
690690 def configure_env (self , cfg : MettaGridConfig ) -> None :
691691 agent = cfg .game .agent
692- inventory = dict (agent .initial_inventory )
692+ inventory = dict (agent .inventory . initial )
693693 inventory ["energy" ] = 255
694- agent .initial_inventory = inventory
695- agent .inventory_regen_amounts = {"default" : { " energy" : 255 } }
694+ agent .inventory . initial = inventory
695+ agent .inventory . regen_amounts = {"energy" : 255 }
696696
697697
698698DIAGNOSTIC_EVALS : list [type [_DiagnosticMissionBase ]] = [
0 commit comments