[Library] V1.0 final 29.01.05 Manage forbidden areas
Moderators: Scripting / Modding Moderators, Moderatoren für Deutsches X-Forum
-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
[Library] V1.0 final 29.01.05 Manage forbidden areas
Nachdem Lucike vorgesclagen hatte, bestimmte Sektoren oder Stationen im Stationsversorger zu blocken, ist diese Bibliothek entstanden.
Die Bibliothek selbst ist alleine für sich genommen wirkungslos, die internen Spielmechanismen benutzen die Daten nicht. Erst wenn Skriptpakete installiert werden, die diese Bibliothek verwenden, wird ein Effekt zu sehen sein
Download Bibliothekspaket
Im Skriptpaket werden 4 neue Kommandos definiert, die dem Spieler die Eingabe des gewünschten Sperrverhaltens erlauben.
Die Bibliothek ist für Scripter gedacht, um den Status eines Sektor oder einer Station abzufragen.
Usage (Spieler):
Im Skriptpaket werden 4 neue Kommandos definiert, 2 bei den zusätzlichen Schiffskommandos und 2 in der Allgemein-Sektion des Spielerschiffs.
zusätzliche Schiffskommando: Erlaube/Verbiete Sektor
Dieses Kommando fragt nach einem Sektor und verbietet den Zugang zu ihm, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn er oder eine der Stationen darin vorher geblockt war.
zusätzliche Schiffskommando: Erlaube/Verbiete station
Dieses Kommando fragt nach einer Station und verbietet den Zugang zu ihr, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn sie vorher geblockt war.
Allgemein: Erlaube/Verbiete Sektor
Dieses Kommando fragt nach einem Sektor und verbietet den Zugang zu ihm, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn er vorher geblockt war.
Die Einstellung wird anhand der Einstellung im Spielerschiff an alle spielereigenen Schiffe weitergeleitet, d.h wenn das Spielerschiff
vorher Zugang hatte, der nun verboten wurde, dann ist der Zugang für alle Schiffe verboten.
Allgemein: Erlaube/Verbiete Station
Dieses Kommando fragt nach einer Station und verbietet den Zugang zu ihr, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn sie vorher geblockt war.
Die Einstellung wird anhand der Einstellung im Spielerschiff an alle spielereigenen Schiffe weitergeleitet, d.h wenn das Spielerschiff
vorher Zugang hatte, der nun verboten wurde, dann ist der Zugang für alle Schiffe verboten.
Usage (scripters):
Die Skriptdatei lib.manageForbiddenAreas enthält den Code zur Verwaltung. Die Aufrufsignatur ist folgende:
Arg 1: VAR/Sector forbiddenSector, notwendiger Parameter, nicht null
Arg 2: VAR/Station forbiddenStation
Arg 3: VAR/Number mode, mögliche Werte 0-4
mode 0: setzen des Status (sector or station) bei [THIS] auf verboten, wenn momentan erlaubt, oder setzen auf erlaubt, wenn der Zugang momentan verboten ist.
mode 1: Abfrage des Status des Zielobjekts (Sektor oder Station), siehe Return codes
mode 2: Überschreiben des aktuellen Status auf [THIS] für das Zielobjekt (Sektor oder Station) auf verboten
mode 3: Überschreiben des aktuellen Status auf [THIS] für das Zielobjekt (Sektor oder Station) auf erlaubt
mode 4: aktuellen Statusarray für [THIS] bestehend aus Paaren von ( VAR/Sector, {ARRAY of VAR/Station}) pro Eintrag
Return value:
TRUE, wenn das Objekt nach der Aktion geblockt ist
FALSE, wenn das Objekt nach der Aktion erlaubt ist
ARRAY, nur mode 4
Installation:
Installieren mit cycrows x3 script installer, download in diesem Thread http://forum.egosoft.com/viewtopic.php?t=121351
Deinstallation:
Entfernen des Pakets mit cycrows x3 script installer, download in diesem Thread http://forum.egosoft.com/viewtopic.php?t=121351
Script attributes:
T File 8110 - Common library, forbid or allow sectors/stations
<t id="1221">COMMAND_TYPE_SHIP_21</t>
<t id="1222">COMMAND_TYPE_SHIP_22</t>
<t id="860">COMMAND_TYPE_GENERAL_60</t>
<t id="861">COMMAND_TYPE_GENERAL_61</t>
Page ID 8110
Commandcode 1221,1222,860 and 861
Die Bibliothek selbst ist alleine für sich genommen wirkungslos, die internen Spielmechanismen benutzen die Daten nicht. Erst wenn Skriptpakete installiert werden, die diese Bibliothek verwenden, wird ein Effekt zu sehen sein
Download Bibliothekspaket
Im Skriptpaket werden 4 neue Kommandos definiert, die dem Spieler die Eingabe des gewünschten Sperrverhaltens erlauben.
Die Bibliothek ist für Scripter gedacht, um den Status eines Sektor oder einer Station abzufragen.
Usage (Spieler):
Im Skriptpaket werden 4 neue Kommandos definiert, 2 bei den zusätzlichen Schiffskommandos und 2 in der Allgemein-Sektion des Spielerschiffs.
zusätzliche Schiffskommando: Erlaube/Verbiete Sektor
Dieses Kommando fragt nach einem Sektor und verbietet den Zugang zu ihm, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn er oder eine der Stationen darin vorher geblockt war.
zusätzliche Schiffskommando: Erlaube/Verbiete station
Dieses Kommando fragt nach einer Station und verbietet den Zugang zu ihr, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn sie vorher geblockt war.
Allgemein: Erlaube/Verbiete Sektor
Dieses Kommando fragt nach einem Sektor und verbietet den Zugang zu ihm, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn er vorher geblockt war.
Die Einstellung wird anhand der Einstellung im Spielerschiff an alle spielereigenen Schiffe weitergeleitet, d.h wenn das Spielerschiff
vorher Zugang hatte, der nun verboten wurde, dann ist der Zugang für alle Schiffe verboten.
Allgemein: Erlaube/Verbiete Station
Dieses Kommando fragt nach einer Station und verbietet den Zugang zu ihr, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn sie vorher geblockt war.
Die Einstellung wird anhand der Einstellung im Spielerschiff an alle spielereigenen Schiffe weitergeleitet, d.h wenn das Spielerschiff
vorher Zugang hatte, der nun verboten wurde, dann ist der Zugang für alle Schiffe verboten.
Usage (scripters):
Die Skriptdatei lib.manageForbiddenAreas enthält den Code zur Verwaltung. Die Aufrufsignatur ist folgende:
Arg 1: VAR/Sector forbiddenSector, notwendiger Parameter, nicht null
Arg 2: VAR/Station forbiddenStation
Arg 3: VAR/Number mode, mögliche Werte 0-4
mode 0: setzen des Status (sector or station) bei [THIS] auf verboten, wenn momentan erlaubt, oder setzen auf erlaubt, wenn der Zugang momentan verboten ist.
mode 1: Abfrage des Status des Zielobjekts (Sektor oder Station), siehe Return codes
mode 2: Überschreiben des aktuellen Status auf [THIS] für das Zielobjekt (Sektor oder Station) auf verboten
mode 3: Überschreiben des aktuellen Status auf [THIS] für das Zielobjekt (Sektor oder Station) auf erlaubt
mode 4: aktuellen Statusarray für [THIS] bestehend aus Paaren von ( VAR/Sector, {ARRAY of VAR/Station}) pro Eintrag
Return value:
TRUE, wenn das Objekt nach der Aktion geblockt ist
FALSE, wenn das Objekt nach der Aktion erlaubt ist
ARRAY, nur mode 4
Installation:
Installieren mit cycrows x3 script installer, download in diesem Thread http://forum.egosoft.com/viewtopic.php?t=121351
Deinstallation:
Entfernen des Pakets mit cycrows x3 script installer, download in diesem Thread http://forum.egosoft.com/viewtopic.php?t=121351
Script attributes:
T File 8110 - Common library, forbid or allow sectors/stations
<t id="1221">COMMAND_TYPE_SHIP_21</t>
<t id="1222">COMMAND_TYPE_SHIP_22</t>
<t id="860">COMMAND_TYPE_GENERAL_60</t>
<t id="861">COMMAND_TYPE_GENERAL_61</t>
Page ID 8110
Commandcode 1221,1222,860 and 861
Last edited by Naffarin on Sun, 29. Jan 06, 15:21, edited 1 time in total.
-
- Posts: 290
- Joined: Sun, 12. Dec 04, 18:50
Kurze Frage:
Im Spielerschiff gibt es nun unter "Allgemein" und "zusätzliche Schiffskommando" Erlaube/Verbiete Sektor
Allgemein heist für alle Schiffe im Spielerbesitz - das habe ich verstanden.
Wie siehts mit den "zusätzliche Schiffskommando"´s auf dem Spielerschiff aus? Gilt das dann nur für das Spielerschiff; oder hat es die selbe Bedeutung wie unter "Allgemein"?
Ps. Wie immer, ein klasse Script von dir - meine Hochachtung!
Im Spielerschiff gibt es nun unter "Allgemein" und "zusätzliche Schiffskommando" Erlaube/Verbiete Sektor
Allgemein heist für alle Schiffe im Spielerbesitz - das habe ich verstanden.
Wie siehts mit den "zusätzliche Schiffskommando"´s auf dem Spielerschiff aus? Gilt das dann nur für das Spielerschiff; oder hat es die selbe Bedeutung wie unter "Allgemein"?
Ps. Wie immer, ein klasse Script von dir - meine Hochachtung!

-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
-
- Posts: 163
- Joined: Thu, 26. Feb 04, 19:38
Ich habe das Skript (die Bibliothek) am So zusammen mit der 1.24 der Stationsverwaltung installiert und hatte keine Verluste mehr - zumindest in den fixierten Sektoren nicht.
Gestern nun flogen 3 Schiffe in die Xenon-Sektoren... Bei einem hab' ich neugeladen und mir das genauer angesehn.
Der Discovery flog also Richtung Xenon. Ich habe den Sektor, wo er hin wollte, aus der Liste der (allgemein) gesperrten entfernt und wieder eingehängt. Der flog trotzdem weiter. Was kann da falsch sein?
Anm.: Er hatte ein Ziel, das hinter dem Sektor lag. Die andern beiden waren Versorger der Stationsverwaltung auf dem Rückflug und hatten offensichtlich keine Energie mehr zum Springen.
Gestern nun flogen 3 Schiffe in die Xenon-Sektoren... Bei einem hab' ich neugeladen und mir das genauer angesehn.
Der Discovery flog also Richtung Xenon. Ich habe den Sektor, wo er hin wollte, aus der Liste der (allgemein) gesperrten entfernt und wieder eingehängt. Der flog trotzdem weiter. Was kann da falsch sein?
Anm.: Er hatte ein Ziel, das hinter dem Sektor lag. Die andern beiden waren Versorger der Stationsverwaltung auf dem Rückflug und hatten offensichtlich keine Energie mehr zum Springen.
-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
Wenn der Discoverer mit den Standardbefehlen geflogen ist, dann wird er die verbotenen Sektoren nicht beachten, da die Bibliothek explizit von einem Skripter benutzt werden muss...ich müsste sonst jede Menge veränderter Standarddateien von Egosoft mitliefern, was ich allein aus rechtlichen Gründen schon nicht machen will/darf.
Zur Zeit wird also nur der Stationsversorger die EInstellung beachten.
Warum diese beiden Transporter durchgeflogen sind, ist mir allerdings ein Rätsel, die einzige Erklärung, die ich habe, ist, daß sie zwischendurch angegriffen wurden als sie einen Zielsektor auf der einen Seite des Xenonsektors hatten und sich auf der anderen Seite in Sicherheit gebracht haben, um dann wieder ihr normales Ziel anzufliegen. An der Situation kann ich leider nicht viel machen, weil ich da die Skripte der MK3 Software benutze und mit ihr das Problem teile, daß Transporter mit Standardantrieb fliegen, wenn sie zwischendurch angegriffen wurden.
Kannst du mal im Log nachschauen, ob die beiden Transporter vorher angegriffen wurden und dann in Sicherheit gesprungen sind, mit einer Konstellation wie ich sie beschrieben habe ?
Zur Zeit wird also nur der Stationsversorger die EInstellung beachten.
Warum diese beiden Transporter durchgeflogen sind, ist mir allerdings ein Rätsel, die einzige Erklärung, die ich habe, ist, daß sie zwischendurch angegriffen wurden als sie einen Zielsektor auf der einen Seite des Xenonsektors hatten und sich auf der anderen Seite in Sicherheit gebracht haben, um dann wieder ihr normales Ziel anzufliegen. An der Situation kann ich leider nicht viel machen, weil ich da die Skripte der MK3 Software benutze und mit ihr das Problem teile, daß Transporter mit Standardantrieb fliegen, wenn sie zwischendurch angegriffen wurden.
Kannst du mal im Log nachschauen, ob die beiden Transporter vorher angegriffen wurden und dann in Sicherheit gesprungen sind, mit einer Konstellation wie ich sie beschrieben habe ?
-
- Posts: 163
- Joined: Thu, 26. Feb 04, 19:38
-
- Posts: 163
- Joined: Thu, 26. Feb 04, 19:38
Da war wieder ein Verrückter.
Komplex Grosses Riff. Ziel ISE Schmiede Menelaus Paradies. Abgeschossen in Xenon 437 (kam aus Schwarze Sonne). Ware BoFu.
Die war er offensichtlich nicht vollständig losgeworden.
Genauer: Frachtraum 2255/5000
Energie 30
BoFu 437
Kampfdrohnen 5
Ich räum das weiter zurückliegende Save auch mal auf. Der Sektor war übrigens gesperrt. Das habe ich nochmals überprüft.
P.S. Es hat grade wieder einen erwischt. Dasselbe Spiel und wieder _keine_ Warnung vorher. Das Logbuch ist leer.

Komplex Grosses Riff. Ziel ISE Schmiede Menelaus Paradies. Abgeschossen in Xenon 437 (kam aus Schwarze Sonne). Ware BoFu.
Die war er offensichtlich nicht vollständig losgeworden.
Genauer: Frachtraum 2255/5000
Energie 30
BoFu 437
Kampfdrohnen 5
Ich räum das weiter zurückliegende Save auch mal auf. Der Sektor war übrigens gesperrt. Das habe ich nochmals überprüft.
P.S. Es hat grade wieder einen erwischt. Dasselbe Spiel und wieder _keine_ Warnung vorher. Das Logbuch ist leer.
-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
Kannst du bitte mal, falls du ein Save vor dem Verlust hast, in der Schiffsinfo runterblättern und beschreiben, was dort unter Task Info steht.
Vermutlich wird da am Anfang so etwas wie plugin.strader.supply sein gefolgt von einem oder mehreren plugin.strader.... Skripten
INteressant wäre für mich, ob noch weitere Skripte nach den plugin.strader... aufgerufen werden, oder nicht.
Vermutlich wird da am Anfang so etwas wie plugin.strader.supply sein gefolgt von einem oder mehreren plugin.strader.... Skripten
INteressant wäre für mich, ob noch weitere Skripte nach den plugin.strader... aufgerufen werden, oder nicht.
-
- Posts: 163
- Joined: Thu, 26. Feb 04, 19:38
Ok - Da steht (hab alles abgeschrieben):
Skript Task-Id = 0 --------------
PID = 137....
Prio = 0
Interrupts=enabled
IntReq=no
Stack Depth = 5
Current Stack [script at bottom runs]
1. plugin.strader.trade prio=0
2. plugin.strader.supply prio=0
3. plugin.strader.sellMultiWares prio=0
4. plugin.autotrade.jumptostation prio=0
5. !move.movetostation prio=0
6. !move.movetosector prio=0
Leider nicht mehr.
Skript Task-Id = 0 --------------
PID = 137....
Prio = 0
Interrupts=enabled
IntReq=no
Stack Depth = 5
Current Stack [script at bottom runs]
1. plugin.strader.trade prio=0
2. plugin.strader.supply prio=0
3. plugin.strader.sellMultiWares prio=0
4. plugin.autotrade.jumptostation prio=0
5. !move.movetostation prio=0
6. !move.movetosector prio=0
Leider nicht mehr.

-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
Hmpf, das hab ich befürchtet, daran kann ich nämlich relativ wenig machen.
Das Problem kommt meiner Beobachtung daher, daß entweder der Trader keinen Fuel mehr hatte, oder auf der Heimatbasis keine Energiezellen da waren, oder der Trader zwischendrin angegriffen wurde.
In diesem Fall benutzt er Standardtriebwerke, um zum Ziel zu kommen und die dabei verwendete Wegfindung benutzt die library nicht, da es Teile der Handelssoftware MK3 bzw Standardskripte von Egosoft sind.
In diesem Fall kann man also keinen Fix liefern, es sei denn ich würde die entsprechenden MK3 und Standard Routinen durch eigene ersetzen.
Das Problem kommt meiner Beobachtung daher, daß entweder der Trader keinen Fuel mehr hatte, oder auf der Heimatbasis keine Energiezellen da waren, oder der Trader zwischendrin angegriffen wurde.
In diesem Fall benutzt er Standardtriebwerke, um zum Ziel zu kommen und die dabei verwendete Wegfindung benutzt die library nicht, da es Teile der Handelssoftware MK3 bzw Standardskripte von Egosoft sind.
In diesem Fall kann man also keinen Fix liefern, es sei denn ich würde die entsprechenden MK3 und Standard Routinen durch eigene ersetzen.
-
- Posts: 163
- Joined: Thu, 26. Feb 04, 19:38
Also Energiezellen hatte der nicht genug, um nach Hause zu springen. Ich habe jetzt probehalber in der Heimatbasis Energiezellen als Produkt hinzugefügt (die waren da nicht drin). Mal sehn, ob noch einer Kamikaze macht.
Danke für die Hilfe und die Skripte!
Jetzt kann ich Killmissionen annehmen, ohne dauernd angehupt zu werden. Macht wieder richtig Spass.
Danke für die Hilfe und die Skripte!
Jetzt kann ich Killmissionen annehmen, ohne dauernd angehupt zu werden. Macht wieder richtig Spass.
-
- Posts: 7150
- Joined: Fri, 8. Apr 05, 19:09
-
- Posts: 148
- Joined: Sat, 7. Aug 04, 17:40
lies doch mal das ausgangspostingDSE [ITF] wrote:@Naffarin
Ist es so gewollt, dass man an zwei Orten den Befehl auswählen kann?
Ich kann unter "allgemein" UND unter der zusätzlichen Komandokonsole den Befehl "Verbiete Sektor auswählen (den anderen auch)

"Im Skriptpaket werden 4 neue Kommandos definiert, 2 bei den zusätzlichen Schiffskommandos und 2 in der Allgemein-Sektion des Spielerschiffs.
zusätzliche Schiffskommando: Erlaube/Verbiete Sektor
Dieses Kommando fragt nach einem Sektor und verbietet den Zugang zu ihm, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn er oder eine der Stationen darin vorher geblockt war.
zusätzliche Schiffskommando: Erlaube/Verbiete station
Dieses Kommando fragt nach einer Station und verbietet den Zugang zu ihr, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn sie vorher geblockt war.
Allgemein: Erlaube/Verbiete Sektor
Dieses Kommando fragt nach einem Sektor und verbietet den Zugang zu ihm, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn er vorher geblockt war.
Die Einstellung wird anhand der Einstellung im Spielerschiff an alle spielereigenen Schiffe weitergeleitet, d.h wenn das Spielerschiff
vorher Zugang hatte, der nun verboten wurde, dann ist der Zugang für alle Schiffe verboten.
Allgemein: Erlaube/Verbiete Station
Dieses Kommando fragt nach einer Station und verbietet den Zugang zu ihr, wenn er vorher nicht geblockt war.
Er wird erlaubt, wenn sie vorher geblockt war.
Die Einstellung wird anhand der Einstellung im Spielerschiff an alle spielereigenen Schiffe weitergeleitet, d.h wenn das Spielerschiff
vorher Zugang hatte, der nun verboten wurde, dann ist der Zugang für alle Schiffe verboten.
"
-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
-
- Posts: 481
- Joined: Sat, 3. Dec 05, 09:49
-
- Posts: 2566
- Joined: Wed, 1. Mar 06, 12:11
-
- Posts: 2064
- Joined: Wed, 18. Jan 06, 18:40
-
- Posts: 2566
- Joined: Wed, 1. Mar 06, 12:11