@@ -166,24 +166,24 @@ def _post(cfg: MettaGridConfig) -> None:
166166 def _apply_inventory_seed (self , cfg : MettaGridConfig ) -> None :
167167 if not self .inventory_seed :
168168 return
169- seed = dict (cfg .game .agent .initial_inventory )
169+ seed = dict (cfg .game .agent .inventory . initial )
170170 seed .update (self .inventory_seed )
171- cfg .game .agent .initial_inventory = seed
171+ cfg .game .agent .inventory . initial = seed
172172
173173 def _apply_communal_chest (self , cfg : MettaGridConfig ) -> None :
174174 if self .communal_chest_hearts is None :
175175 return
176176 chest = cfg .game .objects .get ("communal_chest" )
177177 if isinstance (chest , ChestConfig ):
178- chest .initial_inventory = {"heart" : self .communal_chest_hearts }
178+ chest .inventory . initial = {"heart" : self .communal_chest_hearts }
179179
180180 def _apply_resource_chests (self , cfg : MettaGridConfig ) -> None :
181181 if not self .resource_chest_stock :
182182 return
183183 for resource , amount in self .resource_chest_stock .items ():
184184 chest_cfg = cfg .game .objects .get (f"chest_{ resource } " )
185185 if isinstance (chest_cfg , ChestConfig ):
186- chest_cfg .initial_inventory = {resource : amount }
186+ chest_cfg .inventory . initial = {resource : amount }
187187
188188 def _apply_extractor_settings (self , cfg : MettaGridConfig ) -> None :
189189 for resource in RESOURCE_NAMES :
@@ -250,9 +250,9 @@ def _apply_heart_reward_cap(self, cfg: MettaGridConfig) -> None:
250250 if not isinstance (obj , ChestConfig ):
251251 continue
252252 # Find existing heart limit or create new one
253- heart_limit = obj .resource_limits .get ("heart" , ResourceLimitsConfig (limit = 1 , resources = ["heart" ]))
253+ heart_limit = obj .inventory . limits .get ("heart" , ResourceLimitsConfig (limit = 1 , resources = ["heart" ]))
254254 heart_limit .limit = 1
255- obj .resource_limits ["heart" ] = heart_limit
255+ obj .inventory . limits ["heart" ] = heart_limit
256256
257257 def _ensure_minimal_heart_recipe (self , assembler : AssemblerConfig ) -> None :
258258 minimal_inputs = {
@@ -445,7 +445,7 @@ def configure_env(self, cfg: MettaGridConfig) -> None:
445445 assembler .protocols = updated_protocols
446446
447447 agent_cfg = cfg .game .agent
448- inventory = dict (agent_cfg .initial_inventory )
448+ inventory = dict (agent_cfg .inventory . initial )
449449 for res in resources :
450450 inventory .pop (res , None )
451451
@@ -460,7 +460,7 @@ def configure_env(self, cfg: MettaGridConfig) -> None:
460460 else :
461461 inventory .pop ("decoder" , None )
462462
463- agent_cfg .initial_inventory = inventory
463+ agent_cfg .inventory . initial = inventory
464464
465465
466466class DiagnosticUnclipCraft (_UnclipBase ):
@@ -496,9 +496,9 @@ class DiagnosticChargeUp(_DiagnosticMissionBase):
496496 def configure_env (self , cfg : MettaGridConfig ) -> None :
497497 # Set starting energy to 30 and no regen
498498 agent = cfg .game .agent
499- agent .initial_inventory = dict (agent .initial_inventory )
500- agent .initial_inventory ["energy" ] = 60
501- agent .inventory_regen_amounts = {"default" : {"energy" : 0 }}
499+ agent .inventory . initial = dict (agent .inventory . initial )
500+ agent .inventory . initial ["energy" ] = 60
501+ agent .inventory . regen_amounts = {"default" : {"energy" : 0 }}
502502
503503
504504class DiagnosticAgile (_DiagnosticMissionBase ):
@@ -541,10 +541,10 @@ class DiagnosticRadial(_DiagnosticMissionBase):
541541
542542 def configure_env (self , cfg : MettaGridConfig ) -> None :
543543 agent = cfg .game .agent
544- inventory = dict (agent .initial_inventory )
544+ inventory = dict (agent .inventory . initial )
545545 inventory ["energy" ] = 255
546- agent .initial_inventory = inventory
547- agent .inventory_regen_amounts = {"default" : {"energy" : 255 }}
546+ agent .inventory . initial = inventory
547+ agent .inventory . regen_amounts = {"default" : {"energy" : 255 }}
548548
549549
550550# ----------------------------------------------------------------------
@@ -601,9 +601,9 @@ class DiagnosticChargeUpHard(_DiagnosticMissionBase):
601601 def configure_env (self , cfg : MettaGridConfig ) -> None :
602602 # Set starting energy to 30 and no regen
603603 agent = cfg .game .agent
604- agent .initial_inventory = dict (agent .initial_inventory )
605- agent .initial_inventory ["energy" ] = 60
606- agent .inventory_regen_amounts = {"default" : {"energy" : 0 }}
604+ agent .inventory . initial = dict (agent .inventory . initial )
605+ agent .inventory . initial ["energy" ] = 60
606+ agent .inventory . regen_amounts = {"default" : {"energy" : 0 }}
607607
608608
609609class DiagnosticMemoryHard (_DiagnosticMissionBase ):
@@ -690,10 +690,10 @@ class DiagnosticRadialHard(_DiagnosticMissionBase):
690690
691691 def configure_env (self , cfg : MettaGridConfig ) -> None :
692692 agent = cfg .game .agent
693- inventory = dict (agent .initial_inventory )
693+ inventory = dict (agent .inventory . initial )
694694 inventory ["energy" ] = 255
695- agent .initial_inventory = inventory
696- agent .inventory_regen_amounts = {"default" : {"energy" : 255 }}
695+ agent .inventory . initial = inventory
696+ agent .inventory . regen_amounts = {"default" : {"energy" : 255 }}
697697
698698
699699DIAGNOSTIC_EVALS : list [type [_DiagnosticMissionBase ]] = [
0 commit comments