[MOD] Adel verpflichtet/mission boat

Hier ist der ideale Ort um über Scripts und Mods für X³: Terran Conflict und X³: Albion Prelude zu diskutieren.

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

mortebln
Posts: 9
Joined: Mon, 15. Dec 08, 11:50

[MOD] Adel verpflichtet/mission boat

Post by mortebln »

Adel verpflichtet/mission boat

aktueller status: alpha 0.001

Da ja kein geantwortet hat auf meine Jackpot Mission… was mir eigentlich auch klar war(die story war zu lang und so weiter)… mach ich jetzt erst mal nen kleines Missions-bundel. Im plot selbst muss man denn sohn des Teladi CEOS helfen. Eine Teladi Tradition zu erfühlen: Jedes kind Des teladi ober CEOS wird nach erreichen der "handels freie", 5 millionen credits gegeben und danach von der famile im welt all ausgesetzt. Er darf erst wieder ankommen und sein erbe antretten, wenn er mindestens 1 millarde verdient(bargeld,anteile und sol) hat. Das wird gemacht seit der einzigste sohn des 5.CEOS (der bestimmt der best händler wär den es je gab und die teladi zum mächtigsten Rasse seiner zeit machte),seine geerbten anteile am teladie unternehmen, so um die 40%, für eine Argon schachtschiff eintauschte. Leider ist Unser Teladi mindestens genau so guter Händler, wie die der Sohn des 5 CEOS.

was muss der spieler machen:

der spieler muss den teladi helfen 1 millard zuverdiennen. als erstes muss der spieler dem teladi 70% seiner firma überschreibt (aber nur auf dem papier) damit der teladi möglist viele anteil hat und man dadurch schon die halb mission geschaft hat. als ausgleich dafür klärt der teladi die station und schiffe zu gut konditionen. wo der spieler naturlich auch nach helfen muss, im dem er piraten abschiesst und waren besorgt, konkurrenz ausschaltet(sein und die der leute im helfen solln).
später wenn die mission geschaft ist bekommt der spieler den sektor geschenkt.

modularer aufbau:
Da diese mission ja nur zum ziel hat das der teladi im besitz 1 millarde ist , hab ich mir gedacht, alle mission modular aufzubauen. so das der spieler auch ohne eine mission gespielt zum haben gewinnen könnte(es geht an nur um die anteile) oder sich aussuchen kann welche station erbauen will.
es wird zwar zusammen hängende missionen geben, aber ohne grosse story oder zusammenhang. jeden mission dreht sich um eine station bzw. stations kompelex. von wegen: töte person XY, damit Person YX dir einen gefallen schuldig ist.

Leider hab ich nicht so viel erfahrung in sachen script schreib.
deshalb hab ich erstmal den grund code geschreiben ohne ihn zu testen(ich kann mich bestimmt nicht so schnell in decken gehen wie meiner rechner explodiert). um erstmal ein paar fragen zu stehlen.

ich dachte mir das ich vor der mission(ganz oben) erst mal de becons spwane. als ziele für denn spieler und als partrolien punkt für dsa schiffe des COES sohns.
ist das richtig so oder gibt ne besser möglichkeit das zu machen?

Code: Select all

  
<cues>
    <cue name="create Satelliten und so">
      <action>
        <do_all>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 1" invincible="1">
            <position x="0" y="0" z="5"/>
            <sector x="0" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 2" invincible="1">
            <position x="0" y="0" z="5"/>
            <sector x="4" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 3" invincible="1">
            <position x="15" y="0" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 4" invincible="1">
            <position x="50" y="60" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
          <create_ship  group="Teladi" name="TESTETSTE" covered="0" race="Teladi" racelogic="0" typename="SS_SH_T_M6M">
            <position object="becon adel 1" max="15km"/>
            <sector x="0" y="5"/>
            <equipment loadout="default" />
            <command command="" />
            <relations>
              <relation object="{player.ship}" relation="friend"/>
            </relations>
          </create_ship>
        </do_all>
      </action>
    </cue>
  </cues>

als nächtes hab ich mir das mission template von der egosoft seite genommen(http://forum.egosoft.com/viewtopic.php?t=223840) und drin rum geschrieben :)

was ich nicht verstehe ist wie funktioniert das mit den aufgaben. also wie erkennt X das alle gegner schiffe tot sind und der nächte step beginnen soll oder funktioniert das schon so?

wie kann man mutipl-choice fragen machen?

Code: Select all

  <cue>
    <cues>
      <cue name="Adel komplett mission">
        <action>
          <do_all>
            <!--discipline? Die Missionsdisziplin ist die unterscheidung einer Handelsmission von einer Kampfmission.-->
            <!--Volgende unterscheidungen gibt es.-->
            <create_offer discipline="XXXXP" comment="Plot= Blauesbuch"/>
          </do_all>
        </action>
      </cue>
      <cue name="Briefing">
        <action>
          <do_all>
              <create_briefing background="teladi" comment="Briefing-Hintergrundbild. Zu finden unter: director\images\ ">
              <create_briefing title="Adel verpflichtet"/>
              <create_briefing text="KOMMMT NOCH!!! SORRY." comment="Hier kommt der Missionstext rein. Die länge das textes ist begrenzt!"/>
              <create_briefing story="adel verplichtet" comment="Story Titel! (Muss man da noch was zu sagen?)"/>
              <create_briefing cue="avkomplett" comment="!?! Hir soll man woll den cue angeben woh das Briefing gespeichert wird. Ist bei Lib cue sehr wichtig. (glaube ich)!?!"/>
              <create_briefing chapter="" comment="Ist der Kapitel Titel eurer Story oder mehrteiligen Mission!"/>

              <create_briefing instantiate=""/>

              <create_briefing>
                <mission discipline="XXXXP" level="HARD" comment="Die Disciptlin wird im Briefing nicht angezeigt! Level: Hier wird der von euch gewolte Missionslevel angezeigt!"/>
                <reward money="0" other="" comment="Den sektor hatikvah´s glaube."/>
                <timer start="player.age" end="" duration="" comment="
start: Wenn nicht angegeben Standart {player.age}!
duration: Ist die Zeit die der Spieler hat um die Mission zu erfühlen!
end: Ignoriert duration wenn angegeben!"/>
                <thumbnails>
                  <thumbnail image="" order="" disabled="" comment="Image: Hier kommt die ID des Bildes hin! Die Bilder sind im gleichen Ordner wo auch die Briefing-Hintergrundbild sind!
                         Order: Hier kommt eine Zahl rein 1 bis 3! 1 ist das erste Bild 3 das letzte!
                         Disabled: Ist dazu gedacht das Minibild zu deaktivieren um es erst später sichtbar zu machen!"/>
                </thumbnails>
                <objectives>
                  <objective step="1">
                    <!--step="1" ist der erst aufgaben eintrag im Briefing-->
                    <flyto object="becon adel 3" comment="Fliege nach hatikvah´s glaube und töte all piraten"/>
                  </objective>
                  <objective step="2">
                    <!--step"2" Ist der zweite aufgaben eintrag im Brifing-->
                    <killenemies object="piraten gruppe 1" comment="angriff..."/>
                    <action>
                      <do_all>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M6_P">
                          <position object="todesklaue" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M4P_P">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M4P_P">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_T_M4_P_3">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_T_M4_P_3">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <cue name="tötet Spieler 1">
                          <action>
                            <set_group_command group="piraten gruppe 1" command="killenemies" />
                          </action>
                        </cue>
                      </do_all>
                    </action>
                  </objective>
                </objectives>
              </create_briefing>
           </do_all>
        </action>
      </cue>
    </cues>
  </cue>
dit wars erstmal.
thx an die helfer im vorraus...
vielleicht jemand von euch noch link zu nehm GUTEN xml scripting tutorial.



Nachtrag: was ich auch noch wissen möchte. wir kann ich X erklären das man diese mission nur über das schiff des teladis anwähle kann?
Last edited by mortebln on Mon, 24. Aug 09, 22:33, edited 1 time in total.
Feuerriese
Posts: 204
Joined: Thu, 28. Sep 06, 12:25
x4

Post by Feuerriese »

Ich bin gerade auf dem Sprung, also schreib ich mal schnell meine 2 Cent :D

Wenn du alle schiffe, die du für was-auch-immer erstellst in eine Gruppe verschiebst, kannst du später mit
<all_objects_destroyed group="MyCue.MyGroup"/>
eine condition basteln. Ziemlich simpel und narrensicher, außerdem sparst du dir so das händische Abfragen der einzelnen Schiffe.
Tutorial...öh, das beste dürfte der ganze MD-thread hier im deutschen Forum sein.

Multiple Choice geht entweder über eine eigene conversation (guck dir mal Jens Kas Kreuzfahrt an) oder über <ask_question> und dann mehrere [select value='antwort1']Meine 1. Antwort[/select] \n [select value='antwort2']Meine 2. Antwort[/select]
Darauf folgend einfach eine eigene cue machen, condition mit <question_answered> bauen und freuen ;)

Viel Spaß dabei!
Feuerriese
Posts: 204
Joined: Thu, 28. Sep 06, 12:25
x4

Post by Feuerriese »

Ein paar Sachen sind mir noch aufgefallen, aber erstmal zu deiner Frage. Du willst also, daß der Spieler ein bestimmtes Schiff ansprechen muß, um die Mission zu starten? Erstelle das Schiff, dann

Code: Select all

<create_actor  name="MyCue.MyActor" character="{MyPageID,MyTextID}" face="MyFaceNUMBER" gender="MyGender" location="pilot|crew|passenger" object="MyCue.MyShip" race="MyRace">
<create_offer cue="MyOfferCue.MyOffer" actor="MyCue.MyActor" discipline="XXXXP" conversation="MyConversation"/>
Du müßtest dann nur noch einen passenden Eintrag in der conversations.xml erstellen oder schauen, ob dir ein bereits existierender für deine Zwecke brauchbar ist. Obigen code würde ich jetzt nicht so direkt copy&paste'n, weil der quasi direkt aus dem löchrigen Gedächtnis stammt :mrgreen:

Nebenbei, du solltest den gesamten Text in ein eigenes t-file exportieren, sonst wird das einfach zu wuselig. Wenn du mit den Piratenschiffen noch was vorhast, solltest du da vielleicht ein name="MyCue.MyShip" nach <create_ship> einfügen.
Du kannst dir auch Arbeit sparen, indem du Schiffe über ne Schleife erstellst...das könntest du sogar anpassen, damit die Piraten stärker werden, wenn der Spieler in einem besseren Schiff sitzt. Aber erstmal einfach:

Code: Select all

<do_all exact="8" counter="count">
   <create_ship name="MyCue.MyShip{counter@count}" group="MyCue.MyGroup" typename="{random.type@SS_SH_X_M3P|SS_SH_X_M6M|SS_SH_X_M4}" racelogic="1" race="xenon" warp="1">
    <position object="MyCue.MyFocusShip" max="10km"/>
    <equipment loadout="maximum"/>
    <pilot name="{random.pilot.xenon}" shipname="Xenon Hunter-Killer {counter@count}" race="xenon"/>
   </create_ship>
</do_all>
8 Schiffe zufälligen Typs mit ein paar Zeilen ;)
Snowtiger2.0
Posts: 178
Joined: Fri, 24. Jun 05, 23:00
x4

Post by Snowtiger2.0 »

Bist du Legastheniker?
mortebln
Posts: 9
Joined: Mon, 15. Dec 08, 11:50

Post by mortebln »

ja und grössewahnsinnig... hat mein zumindest mein psychologe gesagt.

danke für die codes Feuerriese. is mein erster tag. wirklich!

ich hab versucht den create_actor befehl einzubau.
mein xml editor zeigt mir bei den befehl create_offer an das er ihn nicht kenn, also im context. ich hab den code mit den orginal und den u24 mod abgeglichen... ich find den fehler einfach.

die piraten schiffe spwanen jetzt noch nicht mit dem random befehl. denn werde ich auf jedenfall in den anderen mission nutzen.

Am anfang hab ich mal ne check eingefügt,damit die satteliten nicht immer da sind. ist doch richtig so?

Code: Select all

<?xml version="1.0" encoding="iso-8859-1" ?>
<?xml-stylesheet href="director.xsl" type="text/xsl" ?>
<director name="template" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="director.xsd">
 <documentation>
    <author name="CS" alias="Mortebln" contact="pm" />
    <content reference="empty" name="adel verplichtet" description="" />
    <version number="1.0" date="today" status="Alpha 0.002"/>
 </documentation>
  <cues>
    <cue>
       <condition>
          <check_all>
            <object_position object="{player.ship}">
             <sector x="0" y="5"/>              
             </object_position>           
           </check_all>
        </condition>
      </cue>
    <cue name="create Satelliten und so">
       <action>
        <do_all>         
          <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 1" invincible="1">
            <position x="0" y="0" z="5"/>
            <sector x="0" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 2" invincible="1">
            <position x="0" y="0" z="5"/>
            <sector x="4" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 3" invincible="1">
            <position x="15" y="0" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
           <create_stationary typename="SS_SH_SAT" class="satellite" name="becon adel 4" invincible="1">
            <position x="50" y="60" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
          <create_ship  group="Teladisohn" name="TESTETST" covered="0" race="Teladi" racelogic="0" typename="SS_SH_T_M6M">
            <position object="becon adel 1" max="15km"/>
            <sector x="0" y="5"/>
            <equipment loadout="default" />
            <command command="" />
            <relations>
              <relation relationobject="{player.ship}" relation="friend"/>
            </relations>
          </create_ship>
          <create_actor name="DER SOHN" character="{9229,4}" face="random"  object="TESTETST" race="MyRace"/>
        </do_all>
      </action>
    </cue>

      <cue name="Adel komplett mission">
        <action>
          <do_all>
            <create_offer actor="DER SOHN" discipline="XXXXP" comment="Plot= Blauesbuch"/>
          </do_all>
        </action>
      </cue>
      <cue name="Briefing">
        <action>
          <do_all>
              <create_briefing background="teladi" comment="Briefing-Hintergrundbild. Zu finden unter: director\images\ " title="Adel verpflichtet"/>
              <create_briefing text="KOMMMT NOCH!!! SORRY." comment="Hier kommt der Missionstext rein. Die länge das textes ist begrenzt!"/>
              <create_briefing story="adel verplichtet" comment="Story Titel! (Muss man da noch was zu sagen?)"/>
              <create_briefing cue="avkomplett" comment="!?! Hir soll man woll den cue angeben woh das Briefing gespeichert wird. Ist bei Lib cue sehr wichtig. (glaube ich)!?!"/>
              <create_briefing chapter="" comment="Ist der Kapitel Titel eurer Story oder mehrteiligen Mission!"/>

              <create_briefing instantiate=""/>

              <create_briefing>
                <mission discipline="XXXXP" level="HARD" actor="MyCue.MyActor" comment="Die Disciptlin wird im Briefing nicht angezeigt! Level: Hier wird der von euch gewolte Missionslevel angezeigt!"/>
                <reward money="0" other="" comment="Den sektor hatikvah´s glaube."/>
                <timer start="player.age" comment="
start: Wenn nicht angegeben Standart {player.age}!
duration: Ist die Zeit die der Spieler hat um die Mission zu erfühlen!
end: Ignoriert duration wenn angegeben!"/>
                <thumbnails>
                  <thumbnail image="" order="" disabled="" comment="Image: Hier kommt die ID des Bildes hin! Die Bilder sind im gleichen Ordner wo auch die Briefing-Hintergrundbild sind!
                         Order: Hier kommt eine Zahl rein 1 bis 3! 1 ist das erste Bild 3 das letzte!
                         Disabled: Ist dazu gedacht das Minibild zu deaktivieren um es erst später sichtbar zu machen!"/>
                </thumbnails>
                <objectives>
                  <objective step="1">
                    <!--step="1" ist der erst aufgaben eintrag im Briefing-->
                    <flyto object="becon adel 3" comment="Fliege nach hatikvah´s glaube und töte all piraten"/>
                  </objective>
                  <condition>
                    <check_all>
                      <object_position object="{player.ship}" max="10km"/>
                      <position object="becon adel 3"/>
                      <sector x="6" y="6"/>
                    </check_all>
                  </condition>
                  <objective step="2">
                    <!--step"2" Ist der zweite aufgaben eintrag im Brifing-->
                    <killenemies object="piraten gruppe 1" comment="angriff..."/>
                    <action>
                      <do_all>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M6_P">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M4P_P">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M4P_P">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_T_M4_P_3">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <create_ship  group="piraten gruppe 1" covered="0" race="Pirate" racelogic="0" typename="SS_SH_T_M4_P_3">
                          <position object="becon adel 4" max="15km"/>
                          <sector x ="6" y ="6"/>
                          <equipment loadout="default" />
                          <command command="killenemies" />
                          <relations>
                            <relation object="{player.ship}" relation="enemy"/>
                          </relations>
                        </create_ship>
                        <cue name="tötet Spieler 1">
                          <action>
                            <set_group_command group="piraten gruppe 1" command="killenemies" Difficulty="veryhard" />
                          </action>
                        </cue>
                      </do_all>
                    </action>
                  </objective>
                  <cue>
                    <condition>
                      <check_all>
                       <all_objects_destroyed group="piraten gruppe 1"/>
                      </check_all>
                    </condition>
                   </cue>
                    <objective step="3">
                        <flyto object="becon adel 3" comment="Sichere den sektor mit mindestens Sechs grösseren schiffen"/>
                      </objective>
                     <action>
                      <ask_question name="Teladi" author="Teladi" text="{9229,1}\n\n[center][select value='yes']{9229,2}[/select][/center]\n\n[center][select value='no']{9229,3}[/select][/center]" />
                     </action>
                  <condition>
                    <question_answered value ="yes"/>
                     <create_ship  group="spieler schiffe" covered="0" race="Player" racelogic="0" typename="SS_SH_T_M7M">
                      <position object="becon adel 4" max="15km"/>
                      <sector x ="6" y ="6"/>
                      <equipment loadout="maximum" />
                      <command command="protect" object ="{player.ship}"/>
                     </create_ship>
                    <create_ship  group="spieler schiffe" covered="0" race="Player" typename="SS_SH_T_M7M">
                      <position object="becon adel 4" max="15km"/>
                      <sector x ="6" y ="6"/>
                      <equipment loadout="maximum" />
                      <command command="protect" object ="{player.ship}"/>
                     </create_ship>
                    <create_ship  group="spieler schiffe" covered="0" race="Player" typename="SS_SH_T_M3_2">
                      <position object="becon adel 4" max="15km"/>
                      <sector x ="6" y ="6"/>
                      <equipment loadout="maximum" />
                      <command command="follow" object ="{player.ship}"/>
                     </create_ship>
                    <create_ship  group="spieler schiffe" covered="0" race="Player" typename="SS_SH_T_M3_2">
                      <position object="becon adel 4" max="15km"/>
                      <sector x ="6" y ="6"/>
                      <equipment loadout="maximum" />
                      <command command="follow" object ="{player.ship}"/>
                     </create_ship>
                    <create_ship  group="spieler schiffe" covered="0" race="Player"  typename="SS_SH_T_M6M">
                      <position object="becon adel 4" max="15km"/>
                      <sector x ="6" y ="6"/>
                      <equipment loadout="maximum" />
                      <command command="follow" object ="{player.ship}"/>
                     </create_ship>
                     <cue name="beschütze1">
                      <action>
                        <set_group_command group="spieler schiffe" command="killenemies" />
                      </action>
                    </cue>
                     <reward_player>
                      <money min="-15000000" comment="danke :)"/>
                      </reward_player>
                    <question_answered value ="no"/>
                    <check_all>
                      <count_ships min="6" race="player">
                          <sector x="6" y="6"/>
                        </count_ships>
                     </check_all>                                          
                  </condition>
                  
                  <objective step="4">
                    <killenemies object="piraten gruppe 2" comment="töte alle feinde"/>
                    <cue>
                      <create_ship  group="piraten gruppe 2" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M4P_P">
                        <position object="becon adel 4" max="15km"/>
                        <sector x ="6" y ="6"/>
                        <equipment loadout="default" />
                        <command command="killenemies" />
                        <relations>
                          <relation object="{player.ship}" relation="enemy"/>
                        </relations>
                      </create_ship>
                      <create_ship  group="piraten gruppe 2" covered="0" race="Pirate" racelogic="0" typename="SS_SH_A_M4P_P">
                        <position object="becon adel 4" max="15km"/>
                        <sector x ="6" y ="6"/>
                        <equipment loadout="default" />
                        <command command="killenemies" />
                        <relations>
                          <relation object="{player.ship}" relation="enemy"/>
                        </relations>
                      </create_ship>
                      <create_ship  group="piraten gruppe 2" covered="0" race="Pirate" racelogic="0" typename="SS_SH_PI_M7_P">
                        <position object="becon adel 4" max="15km"/>
                        <sector x ="6" y ="6"/>
                        <equipment loadout="default" />
                        <command command="killenemies" />
                        <relations>
                          <relation object="{player.ship}" relation="enemy"/>
                        </relations>
                      </create_ship>
                      <cue>
                        <condition>
                          <check_all>
                            <all_objects_destroyed group="piraten gruppe 2"/>
                          </check_all>
                        </condition>
                      </cue>
                    </cue>
                  </objective>
                 </objectives>
              </create_briefing>
             </do_all> 
        </action>
      </cue>
    </cues>
</director>
Feuerriese
Posts: 204
Joined: Thu, 28. Sep 06, 12:25
x4

Post by Feuerriese »

Hui, das ist nun aber ein echter Klotz ;) Vielleicht verschiebst du die Frage am besten in den MD-thread (sticky). Aber mal sehen, ob ich da helfen kann.
Vielleicht überfliegen wir mal kurz die gesamte Struktur, damit du den groben überblick kriegst.

Code: Select all

<cue name="TopCue">
   <condition>
      <check_wasauchimmer /> <!--bei mehr als einer condition immer noch check_all einbauen! -->
   </condition> <!-- hier kann ggf. noch ein timing folgen -->
   <action>
      <do_all> <!-- solltest du immer einfügen, damit du es nicht irgendwann vergißt (notwendig aber nur bei mehr als einer action)
         <do_choose>
            <do_when>
               <blablabla>
            </do_when>
            <do_otherwise>
                <blablabla2>
            </do_otherwise>
         </do_choose>
      </do_all>
   </action>
   <cues>
      <cue name="MySubcue">
         <blablablabla>
      </cue>
   </cues>
</cue>
Wenn ich jetzt irgendwo falsch liege bitte ich um Korrektur: du benutzt <condition> innerhalb des <create_briefing>. Großes no-go! Halte dich am besten erstmal an cue - condition - action - subcue - fertig. Außerdem würde ich vorschlagen, daß du die Mission stark vereinfachst und dann langsam und vorsichtig weiter aufbaust - also nur ein schiff erstellen, den actor (sohn?) reinsetzen und dann <create_offer> anschließen. Das Objekt vom <create_actor> muß übrigens irgendwas sinnvolles, schon existierendes sein...also z.B. das von dir erstellte Schiff.
Zusätzlich mußt du noch ein wenig an der Namensgebung arbeiten, beispielsweise MyTopCue.MyShip als Name des erstellten Schiffes. Sonst findet der MD das Ding später nicht mehr ... etwa bei <create_actor object="MyTopCue.MyShip">
Vor allem solltest du aber einen tiefen Blick in die supergeheime Datei director.xsd werfen! Mindestens einmal komplett durchlesen, damit du zumindest eine Übersicht bekommst und den MD halbwegs einschätzen kannst.
Also jetzt erstmal ordentlich abspecken (das script, nicht du) :D
mortebln
Posts: 9
Joined: Mon, 15. Dec 08, 11:50

Post by mortebln »

so ich nochmal komplett neu angefang und auch die anderen codes von dem MD Tutorial in den xml editor geschiessen. hab den fest gestehlt das es den behfehl create nicht gibt oder nicht dokumentiert ist. kanns mal sein das ich die faschen MD datei habe?
gibt doch nur die x3 ding?

mfg morte
User avatar
Jens Ka
Posts: 468
Joined: Thu, 18. Jan 07, 15:32
x4

Post by Jens Ka »

kanns mal sein das ich die faschen MD datei habe?
gibt doch nur die x3 ding?
In den cats von TC sind die director files welche das sind steht hier.
Ich sache schon mal auch wenn es im totu steht niemals X3 R director Dateien in TC und umgekehrt verwenden! Die sind nicht kompatibel zu einander.

und achte bitte auf deine Wort Wahl.

MfG
Jens Ka
MD IST NICHT MSCI!!!!
MD ist Eventdriven. Es passiert etwas - du reagierst darauf.
Bin nicht für weitere Mod Projekte zu haben.
ND VSM XTC
Allgemeine MD-Fragen
User avatar
Mike.Galaxy
Posts: 896
Joined: Fri, 6. Feb 04, 19:28
x4

Post by Mike.Galaxy »

Jens Ka wrote: (...)
und achte bitte auf deine Wort Wahl.

MfG
Jens Ka
:?

meinst Du
so ich nochmal komplett neu angefang und auch die anderen codes von dem MD Tutorial in den xml editor geschiessen
Abgesehen von der Rechtschreibung, im letzen Wort vermute ich zusätzlich einfach einen Tippfehler. So wie ich das lese, sollte das "geschmissen" heissen. Ansonsten steh ich auf dem Schlauch, was Dich an der Wortwahl stört :roll:

fröhliche Grüsse und OT Ende
Mike
"Space is big, really BIG!"
"Jetzt zeige ich Ihnen wie ein Borone kämpft... hier ist mein Schiff."
"Der zweite Stern von rechts, bis zum Morgengrauen"*
* "Kirk am Ende von ST VI - Das unentdeckte Land"
User avatar
Jens Ka
Posts: 468
Joined: Thu, 18. Jan 07, 15:32
x4

Post by Jens Ka »

@ mortebln
habe mir mal dein code weiter oben angeschaut.
hier mal cue 1:

Code: Select all

<cue name="CreateSat">
      <condition>
        <object_sector object="{player.ship}" comment="das object player.ship ist hier nicht umbedingt nötikt da wenn kein object angegeben das spieler schiff automatisch genommen wird.">
          <sector x="0" y="5"/>
        </object_sector>
      </condition>
      <action>
        <do_all>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 1" invincible="1" comment="Das gild jetzt für alles was erstelst immer this. vor dem namen sonst kann es dir pasiren das 2 objecte den gleichen namen habe und dann weis der MD nicht mehr wo er das findet welches er sucht.
                             wenn ein object mit this.name versehen hast must kanst das this nur im gleichen actions not verwenden! als im nehsten cue dan stat this.becon adel 1 CreateSat.becon adel 1!">
            <position x="0" y="0" z="5"/>
            <sector x="0" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 2" invincible="1">
            <position x="0" y="0" z="5"/>
            <sector x="4" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 3" invincible="1">
            <position x="15" y="0" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 4" invincible="1">
            <position x="50" y="60" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
          <create_ship  group="this.Teladisohn" name="this.TESTETST" covered="0"  race="teladi" racelogic="0" typename="SS_SH_T_M6M">
            <position object="this.becon adel 1" max="15km"/>
            <sector x="0" y="5"/>
            <equipment loadout="default" />
            <command command="protect" commandobject="this.becon adel 1" comment="Was da haben wilst k.A habe dem jetzt einfach gesagt er sol den Satelliten beschützen."/>
            <relations>
              <relation mutual="1" object="{player.ship}" relation="friend" comment="damit wird nun klar gestelt das der Teladi dem spieler freundlich ist und der Spieler im auch."/>
            </relations>
          </create_ship>
          <create_actor name="this.DER SOHN" character="{9229,4}" voiceflags="32" voice="" face="" object="this.TESTETST" race="teladi" location="pilot" comment="das voiceflags 32 ermitelt ein random teladi. wenn das fest legen wilst must voice und face verwenden."/>
        </do_all>
      </action>
    </cue>
habe commant rein gebaut damit weist was warum und so weiter wenn was unklar ist. Fragen MD ist einfach zu komplex um das in 1 2 Sätzen zu erklären.

@ Mike.Galaxy
die Rechtschreibung interessiert mich wenig da ich selber LRS habe und daher eh alles anders lese. Ja das Wort meinte ich.

MfG
Jens Ka
MD IST NICHT MSCI!!!!
MD ist Eventdriven. Es passiert etwas - du reagierst darauf.
Bin nicht für weitere Mod Projekte zu haben.
ND VSM XTC
Allgemeine MD-Fragen
mortebln
Posts: 9
Joined: Mon, 15. Dec 08, 11:50

Post by mortebln »

erstmal sorry wegen meiner rechtschreibung.Ich bin manchmal etwas zu schnell. werde in zukunft mal etwas mehr aufpassen... das sollte geschmiessen heissen, aber egal.

hab jetzt die missions direktor datein ausgetauscht. Jetzt gibs keine roten striche mehr und die strg+space tasten-kombie hab ich jetzt auch gefunden. hat meine arbeits geschwindigkeit verzehnfacht... :)

@ jens. danke fürs über denn code gehen und den tip mit dem this. werde denn befehl morgen mal verbauen. aber sonst musst der script ,also der erst cue funktionieren?

danke noch mal für die hilfe jungs.

mfg morte
mortebln
Posts: 9
Joined: Mon, 15. Dec 08, 11:50

Post by mortebln »

so ich hab erstmal, den first cue von jens genommen und eine "flyto" mission gebastelt. leider wird kein schiff mit einem blauen buch gespwand... leider hab ich noch nicht raus gefunden warum.
werde mal weiter machen, aber vielleicht löst ja jemand das problem vor mir...
mfg morte

Code: Select all

<?xml version="1.0" encoding="iso-8859-1" ?>
<?xml-stylesheet href="director.xsl" type="text/xsl" ?>
<director name="template" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="director.xsd">
  <documentation>
    <author name="CS" alias="Mortebln" contact="pm" />
    <content reference="empty" name="adel verplichtet" description="" />
    <version number="1.0" date="today" status="Alpha 0.002"/>
  </documentation>
  <cues>
    <cue name="CreateSat">
      <condition>
        <object_sector object="{player.ship}" comment="das object player.ship ist hier nicht umbedingt nötikt da wenn kein object angegeben das spieler schiff automatisch genommen wird.">
          <sector x="5" y="5"/>
        </object_sector>
      </condition>
      <action>
        <do_all>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 1" invincible="0" comment="Das gild jetzt für alles was erstelst immer this. vor dem namen sonst kann es dir pasiren das 2 objecte den gleichen namen habe und dann weis der MD nicht mehr wo er das findet welches er sucht.
                             wenn ein object mit this.name versehen hast must kanst das this nur im gleichen actions not verwenden! als im nehsten cue dan stat this.becon adel 1 CreateSat.becon adel 1!">
            <position x="0" y="0" z="5"/>
            <sector x="0" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 2" invincible="0">
            <position x="0" y="0" z="5"/>
            <sector x="4" y="5"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 3" invincible="0">
            <position x="15" y="0" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
          <create_stationary typename="SS_SH_SAT" class="satellite" name="this.becon adel 4" invincible="0" >
            <position x="50" y="60" z="5"/>
            <sector x="6" y="6"/>
          </create_stationary>
          <create_ship  group="this.Teladisohn" name="this.TESTETST" covered="0"  race="teladi" racelogic="0" typename="SS_SH_T_M6M">
            <position object="this.becon adel 1" max="15km"/>
            <sector x="5" y="5"/>
            <equipment loadout="maximum" />
            <command command="protect" commandobject="this.becon adel 1" comment="Was da haben wilst k.A habe dem jetzt einfach gesagt er sol den Satelliten beschützen."/>
            <relations>
              <relation mutual="1" object="{player.ship}" relation="friend" comment="damit wird nun klar gestelt das der Teladi dem spieler freundlich ist und der Spieler im auch."/>
            </relations>
          </create_ship>
          <create_actor name="this.DER SOHN" character="{9229,4}" voiceflags="32" voice="" face="" object="this.TESTETST" race="teladi" location="pilot" comment="das voiceflags 32 ermitelt ein random teladi. wenn das fest legen wilst must voice und face verwenden."/>
          <create_offer cue="ADELMISSION" actor="this.DER SOHN" discipline="XXXXP" conversation="L2OfferNormal" instantiate="static" chance="100"/>
        </do_all>
      </action>
      <cues>
      <cue name="simpleflytomission">
        <condition>
          <cue_completed cue="CreateSat"/>
        </condition>
        <action>
          <create_briefing cue="ADELMISSION" chapter="1" background="teladi"  text="fliege von {CreateSat.becon adel 3} nach {CreateSat.becon adel 4}" story="MISSADEL" chance="100" title="Einfach mal wo hin fliegen" instantiate="static">
            <mission discipline="xxxxp" level="impossible"/>
            <reward money="100"/>
            <thumbnails>
              <thumbnail image="teladi" disabled="1"/>
            </thumbnails>
            <objectives>
              <objective step="1">
                <flyto>
                  <position object="CreateSat.becon adel 3"/>
                  <sector x="6" y="6"/>
                </flyto>
              </objective>
              <objective>
                <flyto>
                  <position object="CreateSat.becon adel 4"/>
                  <sector x="6" y="6"/>                 
                </flyto>
              </objective>
            </objectives>
          </create_briefing>
        </action>
      </cue>
    </cues>
   </cue>
  </cues>
</director> 
[/code]

Return to “X³: Terran Conflict / Albion Prelude - Scripts und Modding”