AL Galaxy Trader (1.18.3 - 30.09)

Hier ist der ideale Ort um über Scripts und Mods für X²: Die Bedrohung zu diskutieren.

Moderators: Scripting / Modding Moderators, Moderatoren für Deutsches X-Forum

ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

so dann gucke ich mal rein:

Code: Select all

Script al.trade.call z28 : ist überflüssig
Script al.trade.call  plugin.array: 0 ist die Version und 1 ist der Schalter :D (bürokratie halt)
Script al.trader.init: z11: 011   skip if $enabled (macht das gleiche nur zur kenntnisnahme)
Script al.trader.init: bitte ohne waits auskommen. 
Script al.trader.init: z33: es gibt einen Befehl find station in galaxy und find.random ;)
Script al.trader.init: z79 erzeugt einen Fehler wenn das array nicht existiert... mach davor einen skip if not Trader.array
Script al.trader.init: z107 wieso ist dir trader exist zu ungenau? die jetztige Version wird einen Debug fehler erzeugen und ist nicht signierbar.
Script al.trader.init: z106 mach das Trader.env weg und setze ein if not hin
Script al.trade.ships: z131 frage vorher mit get free amount of ware $mis die anzahl der möglichen Raketen ab.
Script al.trade.galaxy: z007 & z008 LOL :D
Script al.trade.galaxy: z010 is quark wenn [this] nicht mehr existiert läuft das script auch nicht mehr. mach da eine 1 hin und gut is.
Script al.trade.galaxy: z015 muss raus, wenn der Trader existiert muß alles seinen gewohnten gang gehen, jedoch dürfen bei NEIN keine neuen erstellt werden. (das ist ein exploit, ich schalte einfach auf nein, wenn er meine Kohle bedroht und dann wieder auf ja)
Script al.trade.galaxy: z107 & z108 das gibt einen Fehler wenn keine Station gefunden wurde
Script al.trade.galaxybuy: z27 Wenn die Zielstation vernichtet wurde ist [Dockdat] Null und Buy.stat null also wird deine Abfrage nicht mehr ausgeführt.
so reicht mal für den Anfang :roll: aber sieht gut aus... alles Fehler die ich auch schon gemacht hab :)

Gruß ticaki
Zur Zeit nicht aktiv
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

ticaki wrote:so dann gucke ich mal rein:
...
so reicht mal für den Anfang :roll: aber sieht gut aus... alles Fehler die ich auch schon gemacht hab :)
Gruß ticaki
Hört sich ja schon mal nicht so schlecht an. ich mach mich dann mal wieder an die Arbeit, wenn ich Fragen habe komm ich wieder :)
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

Ok, hab soweit alles gemäß deiner Liste "verbessert" bis auf das was ich jetzt noch anspreche:

Code: Select all

Script al.trade.galaxy: z015 muss raus, wenn der Trader existiert muß alles seinen gewohnten gang gehen, jedoch dürfen bei NEIN keine neuen erstellt werden. (das ist ein exploit, ich schalte einfach auf nein, wenn er meine Kohle bedroht und dann wieder auf ja)
Wie meinst du das?
Das al.trade.init Script zerstört keine Trader, es kann nur welche erschaffen, demnach muß der Trader selbst dafür sorgen das er sich in Luft auflöst wenn das Plugin im AL-Menü ausgeschaltet ist. Dies passiert bei jedem neuen Suchlauf nach einer abgeschlossenen Kaufen-Verkaufen-Prozedur, also wenn er noch in der Station steht die seine letzte Ware gekauft hat. Außerdem soll es so sein das die Trader erst ihre Aufträge bis zum Ende abwickeln und sich dann erst in Luft auflösen, bzw in der letzten Station auseinandergenommen werden, wie auch immer man sich das vorstellen will.

Heißt: Wenn das Plugin ausgeschaltet ist überspringt das al.trade.init Script die gesamte Suchprozedur und beendet sich gleich wieder, und die Trader sehen bei einer neuen Aufgabensuche das sie nicht mehr arbeiten sollen und *schwups* wech. Da werden dann doch keine neuen erstellt, sollten noch Trader existieren wenn ich das Plugin nur kurz aus und wieder an mache dann übernimmt das al.trade.ini Script diese einfach wieder.
Oder war das jetzt nicht ersichtlich? Oder reden wir gar aneinander vorbei?

Ach nochwas:

Code: Select all

Script al.trader.init: z33: es gibt einen Befehl find station in galaxy und find.random ;) 
Was ist an dem nun anders? Hab ihn jetzt zwar eingebaut anstelle des alten Befehls aber anders ist nichts. Hab nur nicht auf Find.Random gestellt, hab nämlich keine Lust auf über 500 Trader, die erstellt er mir dann nämlich (max.jumps stehen aber auf null)
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

Zu 1. hat sich dann erledigt, ich habe es nicht getestet sondern nur in den Code geguckt... wobei ich aber noch immer der Meinung bin das ein Trader bis zur Vernichtung durch das Spiel weiter arbeiten sollte und nicht einfach per Schalter getötet werden kann.

zu 2.
Ich meinte damit, dass du dir die ganze Sucherei nach einem passenden Sektor schenken kannst. Benutze einfach den Playersector und find station in galaxy, findet er keine Station muß dein Script damit klarkommen und hoffen das er im nächsten Aufruf durch die Al-Engine einen findet... und Jumps auf 100 stellen nicht auf null.

Verstanden was ich meine? so wie es jetzt ist hast du recht viele schleifen drin die nicht sein müssen :)

Nochwas anderes sollen wir nicht meine create.pirat.ships so anpassen das du die benutzen kannst? das würde wiedermal ein Script sparen. (ist nur ein vorschlag)

Gruß ticaki

P.S. ich habs auch noch nicht komplett durchgesehen.
Zur Zeit nicht aktiv
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

zu 1) Naja, aber wenn der SPIELER jetzt das Plugin ausschaltet dann will er diese Trader ja nach Möglichkeit auch nicht mehr wiedersehen, sofern sie ihre Aufträge abgearbeitet haben. Wenn man ihn einfach nur so weitermachen läßt dann kann es ne kleine Ewigkeit dauern bis er von irgendeinem Gegner zerstört wird, verstehst was ich meine? Aber darüber könnte man ja nochmal reden :wink:

zu 2) Hab ich mir schon fast so gedacht das du das Zufallselement der Engine meintest. Sicher, die Schleifen sind eine Sache, aber so muß ich zusätzlich noch ne Abfrage einbauen die prüft ob diese Station schon im station.array ist, sonst wird das nachher ja riesig groß wenn er mehrmals die selbe Station findet. Hm, na mal überlegen...

zu al.pirat.create.ships) Warum nicht, das spart dann wieder eine Datei und da du ja ein Paket zusammenstellen willst gehören die dann eh alle zusammen.
Vom X-ImprovmentMod gehe ich mal davon aus, aber wie siehts eigentlich mit den Völker-Overtunt-Tradern aus, ist das eine "Behinderung" für die Signierung?
Die volle Bewaffnung der Piraten und die Standard-GISE Bewaffnung der Völker-Trader, ist das soweit ok?
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

Overtuned ist immer ein Problem! sowas werde ich nicht signieren... zumindest nicht wenn es sich um kaperbare Schiffe handelt.

Gruß ticaki

P.S. das mit dem create ships gucke ich mir heute abend nochmal an und moddel meine so um das sie für dich laufen sollte.
Zur Zeit nicht aktiv
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

zu 2) Hab ich mir schon fast so gedacht das du das Zufallselement der Engine meintest. Sicher, die Schleifen sind eine Sache, aber so muß ich zusätzlich noch ne Abfrage einbauen die prüft ob diese Station schon im station.array ist, sonst wird das nachher ja riesig groß wenn er mehrmals die selbe Station findet. Hm, na mal überlegen...
Vergiß was ich da gesagt habe, das station.array wird ja bei jedem Aufruf der trader.init auf 0 gesetzt, hatte ich glatt übersehen.
Nun dauert es aber SEHR lange bis jeder Sektor der eine Schiffswerft hat auch 2 Trader bekommt. Außerdem muß ich jetzt quasi den LifeCheck der in der trade.init drin ist umstellen da sonst nicht alle Trader die schon da sind geprüft werden...oder ich überlasse das auch dem Zufallselement, hmmmm...
Ich schätze du sagst "überlasse es dem Zufall"!
Ich warte da mal auf deine Antwort bis ich was ändere...
Overtuned ist immer ein Problem! sowas werde ich nicht signieren... zumindest nicht wenn es sich um kaperbare Schiffe handelt.
Hab ich mir gedacht, also lassen wir das. Alternativ dazu könnten diese Trader dann ja auch eine schwere Bewaffnung (falls man das bei einem TS so nennen kann) bekommen.

@P.S.
Ok, ich übernehme das dann so.
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

Meinst du jetzt, das pro Durchlauf nur maximal ein Sektor mit Tradern versorgt wird... wenn ja, dann ist das ok so. Gibt dem ganzen einen Hauch von Unberechenbarkeit. Ach und die Schutzstaffel lassen wir mit meinem TL-Beschützscript laufen. hehe :D

Gruß ticaki

P.S. ach ich bin ja garnicht fies... streiche das hehe daoben ;)
Zur Zeit nicht aktiv
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

NEEEE, ich finde das hehe grade gut!!!
Klar, das kommt bestimmt gut wenn der TS dann eine solche Escorte kriegt :twisted:

Zu dem anderen: Ja, das meinte ich. Ok, dann kann ich ja auch das station.array raus nehmen, gibt ja eh bloß noch die eine Station in dem einen Sektor pro Durchlauf, vereinfacht die Sache dann etwas :D
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

Falls du nochmal gegenchecken willst:
Link gelöscht

Sind jetzt alle Änderungen soweit drin :D
Last edited by Blacky_BPG on Mon, 27. Sep 04, 16:48, edited 1 time in total.
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

Code: Select all

al.trade.call: insgesamter Kommentar: Nochmal leicht umstellen und zwar gibt diesem Script als argument noch race und schreibe zwei scripte in denen du dieses Script einmal mit argument "null" und einmal mit Race "Pirates" aufrufst. Natürlich mußt du das plugin.event und plugin.id durchschleifen. Hat auch den weiteren Vorteil das du eventuell für jede Rasse getrennt das machen kannst :)
al.trade.call: z019 setzte den intervallwert mit einem Random 160 - 200

al.trader.init: z014: raus
al.trader.init: z015: else if $ra....
al.trader.init: z017: raus das bringt doch nix ;)
al.trader.init: z019: danach ein skip if sector; return null (Bei "starte neues Spiel" existiert noch kein Playership also gibt das einen Fehler) :)
al.trader.init: z021 race = $race
al.trader.init: z024 If $station (ist genau das gleiche wie if $station != null)
al.trader.init: z040 raus !wichtig! ist der Spieler in einem Khaaksector gibt das einen freeze. Du must nicht sicherstellen, dass ein Trader erstellt wird setze stattdessen dort einen return null ein.
al.trader.init: z046 mach da ein skip if hin
al.trader.init: z047 und 050 vertausche diese Zeilen
al.trader.init: z049 + 051 löschen... die letzten 3 Bemerkungen sind ebenfalls wichtig
al.trader.init: z068 Wieso benutzt du keinen exist befehl? das gibt einen debugfehler
so danach sollte der Teil schon mal OK sein :)

Gruß ticaki
Zur Zeit nicht aktiv
User avatar
dPM_HeMan
Posts: 820
Joined: Mon, 16. Feb 04, 13:08
x3

Post by dPM_HeMan »

ich Blick nicht mehr durch bei euren ganzen Änderungen :D
sachste einfach bescheid wenn es mal wieder ne Version für den Enduser gibt, ne Blacky ;) *g*

... und dann bitte auch welche Dateien ich alle löschen muss, weil die nicht mehr benötigt werden :shock:
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

Ja, alles klar, ich geb Bescheid wenn es soweit ist. Wenn ticaki nichts mehr Großartiges dran auszusetzen hat dann brauch ich nur noch das "Schiffs-Ausrüst-Script" von ihm damit ich's schnell umstellen kann und dann is gut. :)
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

Die Create Ships Lib ohne Readme
guck mal rein das mit den spezial waren kann noch verfeinert werden :)

Gruß ticaki
Zur Zeit nicht aktiv
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

Ja bei den Waffen kann man ja noch was "drehen" :twisted:
Soll die jetzt eigentlich nur für den PiratenTrader sein?

Ich mein einmal wegen:
$ship = create ship: type=$ship.type owner=Piraten addto=$Addto x=$x y=$y z=$z
und zum anderen weil die Transporter keine Waffen kriegen!

Ansonsten ist es gut, so kriegt die PiratenEscorte auch Völkerschiffe, wenn vom Spieler im Menü aktiviert natürlich.
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

Ne da hab ich vergessen zu ändern... das piraten soll durch $race ersetzt werden

und die Transporter erhalten ihre Waffen durch den Befehl add default items... da sind schilde waffen und ein wenig von allem dabei ;)

Gruß ticaki

P.S. und danke fürs kontrollieren :)
Zur Zeit nicht aktiv
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

Ah ja, sorry, das mit den default Items hab ich übersehen.
OK, ich ändere die owner Einstellung dann mal schnell.

@P.S.
P.S. Soll doch ein Paket werden :wink:
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

Gut, gibt mal wieder ein Update.
Version 1.15 ist die aktuelle Version die auch im ersten Post schon korrekt verlinkt ist!



@ticaki
So, isch habe fertisch.
Link gelöscht
Last edited by Blacky_BPG on Mon, 27. Sep 04, 16:48, edited 1 time in total.
User avatar
dPM_HeMan
Posts: 820
Joined: Mon, 16. Feb 04, 13:08
x3

Post by dPM_HeMan »

soll ich mir jetzt 1.16 oder 1.15 runterladen ? :gruebel:
User avatar
Blacky_BPG
Posts: 2030
Joined: Mon, 23. Feb 04, 23:42
x4

Post by Blacky_BPG »

Willst den Improvement noch nutzen damit? Dann 1.15 !
In 1.16 ist er schon nicht mehr drin!
Bei 1.16 möchte ich auch lieber erst ticaki's Meinung hören ob soweit alles i.O. ist :)

Return to “X²: Die Bedrohung - Scripts und Modding”