[mod] Empyrion Scripting Mod

Discussion in 'Empyrion API' started by ASTIC, May 25, 2019.

Tags:
  1. Homunk

    Homunk Lieutenant

    Joined:
    Mar 22, 2020
    Messages:
    74
    Likes Received:
    26
    Just tried the script from the link in an SP game and it works. No errors are thrown.

    I think somehow in various positions the number "0" got replaced by the letter "o" and this causes the problem. Check your script with the one in the link.
     
    #281
  2. Homunk

    Homunk Lieutenant

    Joined:
    Mar 22, 2020
    Messages:
    74
    Likes Received:
    26
    @Preston
    Hi,
    I installed your mod EgsEsExtension and it looks great. Now I have a problem with the function "CpuCvrPrg". Only get the message "Fernsteuermodul nicht gefunden" and no cargo/items get transferred. Unfortunately I have no idea what modul is meant and it is not because it is german. I play in german.
    It would be nice, if you push me in the right direction.

    Thanks
     
    #282
  3. me777

    me777 Commander

    Joined:
    Aug 18, 2020
    Messages:
    406
    Likes Received:
    139
    Hi,
    ich habe Probleme mit dem #test
    Code:
    {{#test @root.CacheData.Counter le 0 }}
    das löst nie aus, wenn Counter von 30 bis ins minus zählt.
    eventuell liegt es an meinem syntax?

    noch eine blöde Frage: wie kann ich mit c# ein Signal ändern?
    .State ist nur get?
    oder bin ich mit root.E.S.BlockSignals. auf der falschen Spur?
     
    #283
    Last edited: Jul 20, 2021
  4. Don't Panic

    Don't Panic Commander

    Joined:
    Jul 5, 2019
    Messages:
    112
    Likes Received:
    141
    Hi Astic, wollte dir nur sagen das du mein Held bist, habe endlich mal dein Dekonstruct Script ausprobiert und was soll ich sagen ich bin begeistert. Das sollte es als eigenständige Mod geben und das Material oder Blöcke direkt in den Backpack Extender transferiert werden. quasi ein Recycle Befehl. Nur so als Vorschlag wenn du dich mal Langweilen solltest. :)

    Hi Astic, just wanted to tell you that you are my hero, finally tried your Dekonstruct script and what can I say I am thrilled. This should exist as a standalone mod and the material or blocks are transferred directly into the Backpack Extender. quasi a Recycle command. Just as a suggestion if you should be bored times. :)
     
    #284
  5. ASTIC

    ASTIC Rear Admiral

    Joined:
    Dec 11, 2016
    Messages:
    1,094
    Likes Received:
    735
    Oder der "recycle" Befehl direkt in die Fabrik ;-) aber ich höhre schon die Server/Admins schreien das das ja cheaten währe - LOL

    für das "deconstruct" - nun der weiß nix von einem BackpackExtender ;-)

    Spaß beiseite - das Problem (deconstruct/recycle) ist das die Funktionen der "alten" Mods nur in der API 1 zur Verfügung stehen und damit nicht im SP - des weiteren bräuchte ich dann noch eine mod welche sich an den Dediprozess hängt da nur dort die API 1 funktioniert (die ScriptingMod läuft ja im Playfieldprozess)
     
    #285
    Don't Panic likes this.
  6. Don't Panic

    Don't Panic Commander

    Joined:
    Jul 5, 2019
    Messages:
    112
    Likes Received:
    141
    Schade das es sich nicht so leicht umsetzten lässt und lass mal die Admins heulen :), das es nicht im SP funktioniert würde mich nicht stören bin Multiplayer ;-)
     
    #286
    Last edited: Jul 27, 2021
  7. me777

    me777 Commander

    Joined:
    Aug 18, 2020
    Messages:
    406
    Likes Received:
    139
    Sorry das ich nochmal schreibe, aber die Fragen konnte ich noch nicht selbst lösen, eventuell erbarmt sich einer meiner Probleme.

    Im habdlebar bekomme ich die relativen {{#test}} Konstrukte nicht hin, eq scheint zu funktionieren, aber oft verpasst das script die 0 oder den Vergeichswert, deshalb möchte ich le oder leq benutzen, das bekomme ich nicht hin.

    und in c# suche ich nach der Möglichkeit signale / schalter zu steuern. Hier bin ich warscheinlich auf der falschen spur mit E.S.BlockSignals.

    Danke, sowohl für Hile mit diesen Problemen als auch für die Mod.

    *edit* leq hat bei mir Probleme mit der Null, wenn ich "leq '10'" mache wird es als "<= 1" ausgewerted.
    wenn ich 11 oder 9 nehme funktioniert es wie erwartet.
     
    #287
    Last edited: Aug 5, 2021
  8. Mr.rgee

    Mr.rgee Ensign

    Joined:
    Aug 4, 2021
    Messages:
    7
    Likes Received:
    0
    Est mal herzlichen Dank Astic!, das ist wirklich eines der genialsten Mods die ich je gesehen habe. Die "Nummer" mit Ein- und Ausgabe LCD ist echt der Hammer, da es ja quasi die Spielfigur ingame programmiert.
    Ich hatte ursprünglich nach einer etwas besseren Verwendung für die LCD gesucht und finde dann das hier. Läuft echt großartig!

    Ich komme soweit ganz gut zurecht damit habe aber 2 Fragen zu denen habe ich nichts gefunden. Vielleicht geht das nicht - oder ich finde es nicht:
    -Kann man den aktuellen Energieverbrauch und Produktion auslesen?
    -Kann ich ausser ein Device ein und ausschalten auch den Status ob ein/aus abfragen? (islocked ist klar- ist aber nicht on off )

    LG
     
    #288
  9. ASTIC

    ASTIC Rear Admiral

    Joined:
    Dec 11, 2016
    Messages:
    1,094
    Likes Received:
    735
    1. Rudimentär per E.S und dann PowerOutCapacity und PowerConsumption
    2. Bei einem Devices {{devices ...}} oder {{block... }} kannst du den Status Active abfragen
     
    #289
  10. Mr.rgee

    Mr.rgee Ensign

    Joined:
    Aug 4, 2021
    Messages:
    7
    Likes Received:
    0
    Danke für die Rückmeldung - bist echt der Beste!
    1. habe ich verstanden - Mal sehen ob ich ds hin bekomme. Ich möchte mir eine Steuerung für die Generatoren auf der Basis bauen, damit die nicht immer sinnlos Teibstoff verbraten wo es gar nicht benötigt wird. Übersteigt der Energiebedarf die erzeugte Energis schaltet er Generatoren hinzu und wenn diee unter einen entsprechenden Schwellenwert sinkt wieder aus.

    2. Da habe ich nur {{setactive block|device active}} gefunden, aber "set" prüft ja keinen Zustand oder versehe ich das falsch bzw. bin ich auf der komplett "falschen Baustelle" ;)
     
    #290
  11. ASTIC

    ASTIC Rear Admiral

    Joined:
    Dec 11, 2016
    Messages:
    1,094
    Likes Received:
    735
    Mit setactive kannst du das setzen, abfragen tust du das über die Eigenschaft Active vom Block oder Device
     
    #291
  12. Mr.rgee

    Mr.rgee Ensign

    Joined:
    Aug 4, 2021
    Messages:
    7
    Likes Received:
    0
    Danke. Habe es hin bekommen -so einfach wenn man es weiß ;)
     
    #292
  13. Mr.rgee

    Mr.rgee Ensign

    Joined:
    Aug 4, 2021
    Messages:
    7
    Likes Received:
    0
    Sorry, muss nochmal lästig sein.
    Der Wert für PowerConsumption passt (aktuel 604EE)
    Bei PowerOutCapacity liefert er 12642. Tatsächlich produziere ich aber nur 4,4 kEE
     
    #293
  14. Mr.rgee

    Mr.rgee Ensign

    Joined:
    Aug 4, 2021
    Messages:
    7
    Likes Received:
    0
    Habe es gefunden - offenbar gibt es einen "kostenlosen" Grundumsatz den man abziehen muss, dann stimmt das wieder.
     
    #294
  15. Mr.rgee

    Mr.rgee Ensign

    Joined:
    Aug 4, 2021
    Messages:
    7
    Likes Received:
    0
    Hallo allerseits.

    ich suche für die Übergabe eines Blockes als Variable eine guteLösung.
    {{block E.S. 2 125 2}} um z.B. wieder mit {{block @root.data.meinedaten}} zuzugreifen.
    Ich hatte auf "setblock" gehofft, schein aber nicht zu funktionieren oder ich verwende es schlicht falsch.
    Man könnt jetzt natürlich über {{set 'x' Position.x}} usw, die Korodinaten übergeben, aber bei 5 Blöcken ist das jetzt nicht wirklich elegant ;)

    Hat jemand eine Idee / Vorschlag / Lösung für mich?

    LG
     
    #295
  16. ASTIC

    ASTIC Rear Admiral

    Joined:
    Dec 11, 2016
    Messages:
    1,094
    Likes Received:
    735
    Es müsste mit {{set ...}} Zu speichern sein.
     
    #296
  17. Mr.rgee

    Mr.rgee Ensign

    Joined:
    Aug 4, 2021
    Messages:
    7
    Likes Received:
    0
    Nein leider funktioniert das nicht, habe das jetzt in jeder Variante versucht.
    Ohne ' ' sagt er mir, dass nur 1 Argument erlaubt ist und mit ' ' kann er damit bei {{bock @root.data.test}} nichts anfangen.
    Den vollständigen Koordinatensatz bzw. den Bezug zum Block bekomme ich da irgendwie nicht unter.
    Bis jetzt kann ich nur jeweils jede Position (also x ,y und z) einzeln speichern. das geht dann schon, sind dann aber bei 5 Blocken 15 x set.
    Jetzt keine wirklich elegante Variante ;) Das Problem, ich muss mich mehrmals im späteren Scriptverlauf darauf beziehen. Daher das Prozedere über "set".

    Wie schon mal angedeutet geht es um einen Steuerung für Generatoren. Für meine Base läuft das schon mit 3 Generatoren, allerdings sehr individuell angepasst, also immer mit vollständigen Koordinatensatz. Ziel ist es userfreundlicher zu gestallten und nur einmal am Anfang alle Koordinaten der Generatoren in der Reihenfolge einzugeben, in der sie an- und abgeschaltet werden sollen. Aktiviert man mehr Verbraucher als aktuell Energie vorhanden ist, wird ein oder mehrere Generatoren hinzu geschaltet. Wenn zuviel Energie vorhanden ist, werden diese je nach Verbrauch abgeschaltet. Die jeweiligen Generatoren werden selbständig erkannt. Zweck: Nicht sinnlos Treibstoff verbrennen...

    Übrigens eine Graph hierzu den ich noch nirgends so gefunden habe falls einer Interesse hat. Nix beonderes, habe es aber noch nirgens gefunden ;)
     

    Attached Files:

    #297
  18. ASTIC

    ASTIC Rear Admiral

    Joined:
    Dec 11, 2016
    Messages:
    1,094
    Likes Received:
    735
    Eine einfache Möglichkeit solche Werte Gruppen zu verarbeiten ist, die in einen Text zu packen der man dann per split ggf. mehrfach zerlegt. So was habe ich in der Vega AI mehrfach gemacht
     
    #298
  19. MrGReaper

    MrGReaper Lieutenant

    Joined:
    Jun 27, 2015
    Messages:
    61
    Likes Received:
    13
    Is there an english guide to getting this to work?

    We have a server hosted by Gportal so we added the most recent version to the mods folder (extracted ofcourse)

    I then tried to get the date time to work as a test.

    as I understand it you need two LCD screens, one hosts the script and the other displays the result.

    from google auto translate on youtube i gather that the name of the lcd screen that hosts the script has to be Script:TARGET where TARGET is the name of the screen that displays the script...so far i was feeling confident......

    so from the english section of the github I see the date and time script is:
    hmmm a second area for target?

    so from an LCD named "Script:LCD1" (with out the "" ofcourse)

    then I named a lcd screen "LCD1" (again with out the quotes)
    nothing happened

    {{datetime 'dd MMM HH:mm:ss' '+7'}}
    I rent through the last 6 or 7 pages of this post and all seem to be using it just fine but with no really hint as to how lol

    I dont know if the mod is not installed correctly, if I am doing something wrong or whar. Its really hard to follow a german video with google translateing badly and the guthub readme is a wall of text with out a simple "this is how you get started"

    I love tohe concept of this mod, i just cant figure out how to use it
     
    #299
  20. me777

    me777 Commander

    Joined:
    Aug 18, 2020
    Messages:
    406
    Likes Received:
    139
    I think you do it right.

    there is a game issue with names, sometimes those reset or are not changed, check this first.

    the Targets line is only needed if you got more targets with different names, for 1 target it is enough to have the lcd named Script:Target (also supports "*" for lcds starting with same string)

    The simple test is to just have text in the "Script:test" lcd and an lcd "test" that should change to that text.

    so maybe the script is not working
    check if there any lines containing EmpyrionScripting, i.e
    12-15:58:59.983 17_58 -LOG- {EmpyrionScripting} EmpyrionScripting Mod started: IModApi PlayfieldServer
    in the playfield server logs, but a player must join, i think.
    if there are none it is not loaded.

    the folder EmpyrionScripting should be under <gamedir>/Content/Mods/ and contain all the files.

    I hope this is helpful
     
    #300

Share This Page