GitHub-TC / EmpyrionScripting

Displays various informations directly and live on LCD screens and will support conveyor and construction control
GNU General Public License v3.0
34 stars 5 forks source link

HarvestCoreTypes setting in Configuration.json appears to do nothing. #25

Closed Shadowpheonix closed 1 year ago

Shadowpheonix commented 1 year ago

I am playing the Reforged Eden v1.9 scenario in Empyrion v1.9.14013 and using Empyrion Scripting v11.1.16. I am attempting to use the new HarvestCoreTypes entry in the Configuration to be able to use the deconstruction scripts with the "Eden_CoreSalvage" core from the Reforged Eden scenario. It appears that the HarvestCoreTypes entry does not actually do anything at this time. To confirm this, I...

  1. Exited Empyrion.
  2. Removed my existing Configuration.json file completely.
  3. Started Empyrion and let it create a new Configuration.json.
  4. Exited Empyrion.
  5. Modified the HarvestCoreTypes entry in the newly created Configuration.json.
  6. Started Empyrion.
  7. Tested deconstruction with both the Eden_CoreSalvage block, and the standard Core block.

In every case I tried, the default core block worked and the Eden_CoreSalvage block did not. The deconstruction script output always indicated "No core 'Core-Recycle-1055' found on 1055 wrong type 2773". The "1055" portion changes based on the structure I am trying to deconstruct, but the "2773" portion is always the same. Empyrion's DebugInfo ("di") console command confirms that Eden_CoreSalvage is the correct block name and that 2773 is the block ID for it.

This is the default HarvestCoreTypes entry from the new Configuration.json... "HarvestCoreTypes": [ 558 ],

Here are the variations that I tried (in the order I tried them)... "HarvestCoreTypes": [ 558, 2773 ],

"HarvestCoreTypes": [ 558, "Eden_CoreSalvage" ],

"HarvestCoreTypes": [ 558, Eden_CoreSalvage ],

"HarvestCoreTypes": [ 558, 2773, "Eden_CoreSalvage" ],

"HarvestCoreTypes": [ 558, 2773, Eden_CoreSalvage ],

"HarvestCoreTypes": [ 2773 ],

"HarvestCoreTypes": [ "Eden_CoreSalvage" ],

"HarvestCoreTypes": [ Eden_CoreSalvage ],

"HarvestCoreTypes": [ "558", "2773" ],

"HarvestCoreTypes": [ "558", "2773", "Eden_CoreSalvage" ],

"HarvestCoreTypes": ",558,2773,",

"HarvestCoreTypes": ",558,2773,Eden_CoreSalvage",

Shadowpheonix commented 1 year ago

I think this can be closed... I just discovered that the IDs listed in "Mods\EmpyrionScripting\NameIdMapping.json" do not match the IDs shown in game by the DebugInfo (DI) command. NameIdMapping.json has "Eden_CoreSalvage": 2767,. If I add 2767 to my HarvestCoreTypes entry, it works fine.

On a side note, it might be worth mentioning in the documentation somewhere that block IDs shown in game do not necessarily match the IDs used by EmpyrionScripting. :D

dorimanx commented 1 year ago

Hi, suggestion, when new save is started with a custom scenario, it's best to delete the NameIdMapping file, and let mod to recreate it based on new game, this way all ID's are same. Also in Server Admin, the items can be wrong, so it's best to delete d:\Empyrion_Server_Reforged\DedicatedServer\EmpyrionAdminHelper\Config\Items.xml if you have it there, so admin app will show actual IDs in Admin App. we had some mess, till i have done all the above.