Abdocken per Script erzwingen

Hier ist der ideale Ort um über Scripts und Mods für X³: Reunion zu diskutieren.

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

Post Reply
jadmanthrat
Posts: 695
Joined: Sat, 22. Apr 06, 14:07
x3tc

Abdocken per Script erzwingen

Post by jadmanthrat » Fri, 21. Mar 08, 19:31

hi leute,
wie kann ich ein auf einem (spielereigenen) träger oder hilfsträger (TL) gelandetes schiff dazu zwingen abzudocken?
schreiben kann ich das script selbst, ich muss nur wissen was reinkommt :lol:
vielen dank schonmal im voraus :D
N0 Sw34r

p.s.: bitte werft nicht mit allzuvielen fachausdrücken um euch, ich bin noch scripting-n00b ;)

UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader » Fri, 21. Mar 08, 21:22

wenns nichts weiter als Abdocken sein soll rufst du am einfachsten per Script call (@ <RetVar/IF/START> = <Refobj> -> call script <Script Name>: <Parameter>) das Script !move.movetosector mit der Sektorangabe [SECTOR] auf ;) (oder alternativ sollte !move.idle glaube ich dasselbe bewirken, hab mich mit den ganzen Navigationskommandos noch nie wirklich auseinander gesetzt...)
if not stated otherwise everything i post is licensed under WTFPL

Ich mache keine S&M-Auftragsarbeiten, aber wenn es fragen gibt wie man etwas umsetzen kann helfe ich gerne weiter ;)

I wont do Script&Mod Request work, but if there are questions how to do something i will GLaDly help ;)

jadmanthrat
Posts: 695
Joined: Sat, 22. Apr 06, 14:07
x3tc

Post by jadmanthrat » Fri, 21. Mar 08, 21:45

so einfach? :D
und wie kann ich das gelandete schiff als RefObj zuweisen? ich habe bisher keinen befehl oder kein argument gefunden, der/das besagtes schiff zurückliefert...

User avatar
-Dusty-
Posts: 2301
Joined: Fri, 30. Dec 05, 20:17
x3tc

Post by -Dusty- » Sat, 22. Mar 08, 00:17

Mit <RetVar> = <RefObj> get ship array from sector/ship/station Erhälst du ein Array, das alle gelandeten Schiffe enthält. Jetzt musst du nur noch das richtige Schiff erkennen...

User avatar
SuperVegeta
Posts: 1611
Joined: Tue, 20. Dec 05, 11:13
x3tc

Post by SuperVegeta » Sat, 22. Mar 08, 15:38

!move.undock ist noch einfacher

jadmanthrat
Posts: 695
Joined: Sat, 22. Apr 06, 14:07
x3tc

Post by jadmanthrat » Mon, 24. Mar 08, 01:06

erstmal danke für diese rege beteiligung, aber ich fürchte ich bekomme das doch nicht hin :(
kann vielleicht jemand den gesamten scriptcode posten? wär riesig nett...

UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader » Mon, 24. Mar 08, 01:39

sag erstmal, was du genau vor hast undposte mal, was bisher drin steht..evtl. isyt es ja nur nen klitzekleiner fehler ^^
if not stated otherwise everything i post is licensed under WTFPL

Ich mache keine S&M-Auftragsarbeiten, aber wenn es fragen gibt wie man etwas umsetzen kann helfe ich gerne weiter ;)

I wont do Script&Mod Request work, but if there are questions how to do something i will GLaDly help ;)

jadmanthrat
Posts: 695
Joined: Sat, 22. Apr 06, 14:07
x3tc

Post by jadmanthrat » Mon, 24. Mar 08, 17:50

okay, es klappt jetzt - dank euren tipps und der MSCI Onlinereferenz

das script ist nur dazu gedacht aus einem, mit der HCF (XTM) gekaperten, killmissions-TL das opfer abzudocken um die mission beenden zu können, ohne den transporter zu zerstören oder zu verkaufen ;)

trotzdem hier nochmal der code:

Arguments
  • 1: traeger , Var/Ship/Station owned by Player , 'traeger'

Source Text

001 $landed = $traeger -> get ship array from sector/ship/station
002 $ship = $landed[0]
003 @ START $ship -> call script '!move.undock' :
004 return null
‌‍‌‍

wie gesagt, das script ist nur für killmissions-TLs, deswegen gibts auch keine abfragen, was für schiffe gedockt sind etc.
:idea:

User avatar
SuperVegeta
Posts: 1611
Joined: Tue, 20. Dec 05, 11:13
x3tc

Post by SuperVegeta » Tue, 25. Mar 08, 17:57

dir ist klar das mit
002 $ship = $landed[0]
nur dieses eine Ship was die Position 0 im Array hat abdockt :!:

sonst müsst das dann ~~ so aussehen:
010 $Array = $Station -> get ship array from sector/ship/station
011 $Array.size = size of array $Array
012 while $Array.size
013 dec $Array.size =
014 $Docked.Ships = $Array[$Array.size]
015 if $Docked.Ships -> exists
016 ║║@ = wait 10 ms
015 ║║@ START $Docked.Ships -> call script '!move.undock' :
019 end
020 end

so dockt dann jedes Schiff ab

PS move undock lässt die wirklich nur abdocken
die fliegen dann bis zum ende des Dock.Undock leitstrahls und bleiben dann stehen

wenn die noch zappeln sollen dann wurd ich !move.idle empfehlen
dann fliegen die nach dem abdocken sinnlos im Sektor rum anstatt nur dazustehen

jadmanthrat
Posts: 695
Joined: Sat, 22. Apr 06, 14:07
x3tc

Post by jadmanthrat » Tue, 25. Mar 08, 21:16

jup, ist mir klar...ist ja eh nur das zu killende schiff angedockt von daher ist das egal ;)
und ob das kleine ding jetzt mit 250 im sektor rumflitzt oder doof rumsteht, macht auch nur den unterschied, dass es länger dauern würde es zu fangen :P

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Wed, 26. Mar 08, 12:43

In dem Fall hätte doch auch ein simples
Destroy object
gereicht oder das angedockte schiff mit Set Owner gleich mitkapern. =)
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

jadmanthrat
Posts: 695
Joined: Sat, 22. Apr 06, 14:07
x3tc

Post by jadmanthrat » Wed, 26. Mar 08, 17:24

das mit dem zerstören stimmt eigentlich :D naja...ist nicht so schlimm, so komm ich wenigstens in den genuss nochmal selbst schießen zu dürfen ;)

"kapern" fällt allerdings aus, weil sonst die mission nicht beendet werden würde ergo kein geld fließen würde :roll:

xtra
Posts: 620
Joined: Fri, 16. Dec 05, 22:35
x4

Post by xtra » Wed, 26. Mar 08, 23:35

vieleicht ist ja das Schiff teurer als die Belohnung :D
ALLE X Spiele und alle Bücher!

jadmanthrat
Posts: 695
Joined: Sat, 22. Apr 06, 14:07
x3tc

Post by jadmanthrat » Thu, 27. Mar 08, 14:12

mh...wohl kaum...ich glaube es einfach nicht, dass man mit nem M5 über 6 millionen kommt :lol:

User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz » Thu, 27. Mar 08, 15:31

Es geht darum, das Schiff des "Geiselnehmers" aus dem gekaperten Mutterschiff herauszubekommen.

Das kleinste NPC-Schiff, an dem irgendetwas andocken kann, ist ein TL.
Also dürfte der Wert um die 20 Mio liegen...
Die eigentliche Belohnung ist dann zwar nur Taschengeld aber wohl eine Frage des Prinzips.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

Post Reply

Return to “X³: Reunion - Scripts und Modding”