7.3.1 with bug fixes to avoid cargo loss and many small things https://github.com/GitHub-TC/EmpyrionScripting/releases https://github.com/GitHub-TC/EmpyrionScripting/releases/download/7.3.1/EmpyrionScripting.zip
Hi. So, I try the deconstruct function with the code you provide on the video called "Script07". I placed a screen called Recyclage, and another called Script:Recyclage on my CV. On the Script:Recyclage screen, I put the following code : {{#entitiesbyname @Root '*'}} {{#each .}} {{#devices S (concat 'Core-Destruct-' Id)}} {{../Name}}:{{../Id}} {{deconstruct @Root .. 'Salvage'}} {{/devices}} {{/each}} {{/entitiesbyname}} 'Salvage' is the destination container name. After that, I spawned a small ship near the CV, renamed its core to Core-Destruct-2358 (its Id is 2358). Then, I switch its ownership to my own faction. Nothing happened excepting the following text the mod putted on the screen called Script : Reached end of template before block expression 'deconstruct' was closed 18:31:36 I guess I did something wrong but I don't have a single clue of what, so if someone could help me. Thanks.
Just answered it on Discord, but here we go again.. Your script is missing the closing {{/deconstruct}} That's why you get the error.. The script I use for this looks a bit different.. and the names for the script and LCD are "Demontage", which of course you may replace with whatever you like. Code: Targets: LCD Demontage <size=40%> {{fontsize 7}} {{/each}} {{/entitiesbyname}} {{#entitiesbyname '*'}} {{#each .}} {{#devices S (concat 'Core-Destruct-')ID}} {{../Name}}:{{../Id}} {{deconstruct .. 'Deconstruct Controller 1'}} min: {{MinPos}} max: {{MaxPos}} current X: {{X}} current Y: {{Y}} current Z: {{Z}} TotalBlocks: {{TotalBlocks}} CheckedBlocks: {{CheckedBlocks}} RemovedBlocks: {{RemovedBlocks}} {{/deconstruct}} {{/devices}} {{/each}} {{/entitiesbyname}} </size> Hope it helps Good luck..
I just tried your script after adapting it to my context and it's working like a charm. Many thanks again
7.4.0 Global/Structure position support (e.g for docking or landing stuff) https://github.com/GitHub-TC/EmpyrionScripting/releases/download/7.4.0/EmpyrionScripting.zip
@ASTIC Hello Everyone, I actually made account to post this First of all, thanks Astic for AMAZING work, this is purely God's work and it makes game so much better, thanks! I have some troubles with making antenna/radar mods work, I assume I'm doing something wrong (I just started any script usage today). So far I can make LCD screens work, they show objects, but for example Pirate Capital Vessel, is invisible, I have no idea how to make it displayed on Radar/Antenna LCDs. I saw in code CV is specified, along all factions including Pirate, but it just doesnt show on the screen. I tried to solve it, but I'm just a bit too newbie to work around this - I use scan/Enemy scan scripts, with antenna & radar scripts in save folder (I think this part is fine, I see script working to some extent). Also, Asteroid radar didnt really work (only shown asteroids closer than 3km, so not much of a radar, I exchanged it to proxy, and now it shows everything (not optimal, but it works in pretty much useful way) - I saw one person also had same issue, but you guys didn't find solution, at least I couldn't find it. But mostly, I would love to see enemy vessels/capital vessels on enemy scan LCD - is there any way to do it? Sorry to bother you, I's just so close and I really have no clue how to fix this
@Omegablade88 It depends on many factors. The names must fit or you can only filter via proxy which can be anything. You can also influence it by changing the DSL distances in the gameoptions.yaml - but this can affect the memory consumption/performance. Another possibility is to increase the radar range itself so that you don't need these scripts.
Appreciate your response - I will try to tinker with things you mentioned - and possibly later go through your documentation provided at github. Thanks for taking your time to help and for amazing mod
7.5.0 With dialog function and player details https://github.com/GitHub-TC/EmpyrionScripting/releases/download/7.5.0/EmpyrionScripting.zip
Hey ASTIC, today I started the update of my server and the mod to the actual versions and I have a little trouble. I decided to recreate a empty custom configuration file "~\Empyrion\Games\MyGame\Mods\EmpyrionScripting\CsCompilerConfiguration.json" and refill it with my settings from my documentation like before: Code: { "WithinLearnMode": true, "CustomAssemblies": ["CustomDLLs\EgsEsExtension.dll"], "Usings": ["EgsEsExtension", "EgsEsExtension.Scripts", "EgsEsExtension.Locales"], "AssemblyReferences": [], "SymbolPermissions": { "SaveGame": ["EgsEsExtension", "EgsEsExtension.*"] } } But something is missing. The Script-Tracker says: Code: Microsoft.CodeAnalysis.Scripting.CompilationErrorException: (1,1): error CS0246: The type or namespace name 'Locales' could not be found (are you missing a using directive or an assembly reference?) at Microsoft.CodeAnalysis.Scripting.ScriptBuilder.ThrowIfAnyCompilationErrors (Microsoft.CodeAnalysis.DiagnosticBag diagnostics, Microsoft.CodeAnalysis.DiagnosticFormatter formatter) [0x0005c] in <f838c9c4d287404580d07c873cf45639>:0 at Microsoft.CodeAnalysis.Scripting.ScriptBuilder.CreateExecutor[T] (Microsoft.CodeAnalysis.Scripting.ScriptCompiler compiler, Microsoft.CodeAnalysis.Compilation compilation, System.Boolean emitDebugInformation, System.Threading.CancellationToken cancellationToken) [0x00040] in <f838c9c4d287404580d07c873cf45639>:0 at Microsoft.CodeAnalysis.Scripting.Script`1[T].GetExecutor (System.Threading.CancellationToken cancellationToken) [0x0002b] in <f838c9c4d287404580d07c873cf45639>:0 at Microsoft.CodeAnalysis.Scripting.Script`1[T].RunAsync (System.Object globals, System.Func`2[T,TResult] catchException, System.Threading.CancellationToken cancellationToken) [0x0001b] in <f838c9c4d287404580d07c873cf45639>:0 at EmpyrionScripting.CsCompiler.CsCompiler+<>c__DisplayClass28_0`1[T].<GetExec>b__0 (System.Object rootObject) [0x0018e] in <3feacf6e9d0644ac86ee08c4d4214701>:0 Do I miss something or has something changed in the internal source path behaviour?
i changed the init script "EgsEsExtensionRun.cs" first line to Code: var lng = EgsEsExtension.Locales.Locales.Language.enGB; and then it work - but there seems to be some strange things happens because normally this wont be needed ?!?! By the way your IDs in the "ItemStructureTree.ecf" needs an update for the new ID ranges. The EAH has a dialog for converting, you can call it without really using the EAH.
I could not await to fix the Tree-File since I red about this nasty pointless ID thing in the patchnotes . Thanks for the hint with the EAH dialog. I would never have found it on my own. But the your solution for the script does not work for me. I changed the line: Code: var lng = EgsEsExtension.Locales.Locales.Language.deDE; CpuInfDev.Run(CsRoot.Root, lng); // draws defective devices CpuInfCpu.Run(CsRoot.Root, lng); // draws processor device health information CpuInfHll.Run(CsRoot.Root, lng); // draws a structure damage overview scheme CpuInfBox.Run(CsRoot.Root, lng); // draws container fill levels CpuInfBay.Run(CsRoot.Root, lng); // draws docked vessel data CpuInfThr.Run(CsRoot.Root, lng); // draws thruster health information CpuInfWpn.Run(CsRoot.Root, lng); // draws weapon health information CpuCvrSrt.Run(CsRoot.Root, lng); // reads levels and items needs and try to preserve the item count for specified containers CpuCvrPrg.Run(CsRoot.Root, lng); // gather all items from defined containers/vessels (much logic/security conditions) CpuCvrFll.Run(CsRoot.Root, lng); // reads item requests from vessels and try to refill it (much logic/security conditions) CpuInfS.Run(CsRoot.Root, lng); // draws compact information overview for smaller displays CpuInfL.Run(CsRoot.Root, lng); // draws information overview for bigger displays But the Scripttracker output just changed to: Code: Microsoft.CodeAnalysis.Scripting.CompilationErrorException: (1,11): error CS0103: The name 'EgsEsExtension' does not exist in the current context at Microsoft.CodeAnalysis.Scripting.ScriptBuilder.ThrowIfAnyCompilationErrors (Microsoft.CodeAnalysis.DiagnosticBag diagnostics, Microsoft.CodeAnalysis.DiagnosticFormatter formatter) [0x0005c] in <f838c9c4d287404580d07c873cf45639>:0 at Microsoft.CodeAnalysis.Scripting.ScriptBuilder.CreateExecutor[T] (Microsoft.CodeAnalysis.Scripting.ScriptCompiler compiler, Microsoft.CodeAnalysis.Compilation compilation, System.Boolean emitDebugInformation, System.Threading.CancellationToken cancellationToken) [0x00040] in <f838c9c4d287404580d07c873cf45639>:0 at Microsoft.CodeAnalysis.Scripting.Script`1[T].GetExecutor (System.Threading.CancellationToken cancellationToken) [0x0002b] in <f838c9c4d287404580d07c873cf45639>:0 at Microsoft.CodeAnalysis.Scripting.Script`1[T].RunAsync (System.Object globals, System.Func`2[T,TResult] catchException, System.Threading.CancellationToken cancellationToken) [0x0001b] in <f838c9c4d287404580d07c873cf45639>:0 at EmpyrionScripting.CsCompiler.CsCompiler+<>c__DisplayClass28_0`1[T].<GetExec>b__0 (System.Object rootObject) [0x0018e] in <3feacf6e9d0644ac86ee08c4d4214701>:0 The first node in the call chain seems not to be reachable. Maybe the CustomDLLs subfolder is not correct referrenced? Where did you put the "EgsEsExtension.dll"?
hmm normal location and Code: { "WithinLearnMode": true, "CustomAssemblies": [ "CustomDLLs\\EgsEsExtension.dll" ], "Usings": [ "EgsEsExtension", "EgsEsExtension.Scripts", "EgsEsExtension.Locales" ], "AssemblyReferences": [], "SymbolPermissions": { "Player": [], "Admin": [], "SaveGame": [ "EgsEsExtension", "EgsEsExtension.*" ] } } "C:\steamcmd\empyrion.server\Saves\Games\DefaultRE\Mods\EmpyrionScripting\CustomDLLs\EgsEsExtension.dll"
2x "\"! I love path concatenating!....works even with: Code: Locales.Language lng = Locales.Language.deDE; Thanks
And want to say thanks for the change you made in the container access and stability. While hunting down a bug this afternoon I do not notice any freeze or irregularity in the controlpanel like before the update.
7.7.2 Remove use Config.ecf&Config_Example.ecf Fix deconstruct (respect PickupTarget) and recipes for recycle https://github.com/GitHub-TC/EmpyrionScripting/releases/download/7.7.2/EmpyrionScripting.zip