Suche Beispiel

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

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

LassiLachmann
Posts: 182
Joined: Thu, 21. Feb 08, 16:37
x3tc

Suche Beispiel

Post by LassiLachmann »

Hi,

ich suche ein kurzes Beispiel wie man ein Auswahlpunkt in ein Gespräch hinzufügen kann. Ihn meinem Fall wäre das mit eine Kapitän.

Nach etlichen Stunden probieren bin ich auf kein Ergebnis gekommen was ansatzweise funktioniert.

Hier mal mein Beispiel:

Code: Select all

<cue name="DefaultComm" instantiate="true" namespace="this">
      <conditions>
        <check_any>
          <event_conversation_started conversation="default" />
          <event_conversation_returned_to_section section="default" />
        </check_any>
      </conditions>
      <actions>
        <do_if value="not event.object.hasrelation.enemy.{faction.player}">
					<do_if value="event.object.ship.exists">
						<do_if value="event.object == event.object.ship.pilot">
							<do_if value="event.object.isplayerowned">
								<do_if value="event.object.ship.buildmodule">
									<do_if value="not @event.object.ship.architect">
										<add_player_choice_sub text="{5869,60}" section="gTestOne_CmdMenu" position="left" comment="ECMenu" selectable="(event.object.command.value != command.support)" />
									</do_if>
								</do_if>
							</do_if>
						</do_if>
					</do_if>
				</do_if>
      </actions>
    </cue>
      
    <cue name="SectionHandler" instantiate="true" namespace="this" >
      <conditions>
        <check_any>
          <event_conversation_next_section sectionprefix="gTestOne_" />
        <event_conversation_returned_to_section sectionprefix="gTestOne_" />
        </check_any>
        
      </conditions>
      <actions>
		    <do_if value="event.param == 'gTestOne_CmdMenu'">
          <show_help force="true" custom="{5869,1}" duration="15s"/>
		    </do_if>
      </actions>
    </cue>

  </cues>
Gibt es auch irgendwo eine Liste mit allen XML-Schemas und den Eigenschaften der verschieden Objekten.
Ich bin dankbar für alles was ein weiterhelfen ohne das ich alle Skripts selber studieren muss.

viele grüße
Lassi
Grenzen entstehen dann wenn man etwas nicht bergreift, aber wer kann schon alles begreifen in unserer Welt.
LassiLachmann
Posts: 182
Joined: Thu, 21. Feb 08, 16:37
x3tc

Post by LassiLachmann »

Hi,

nach einem warmen Essen und guter Überlegung hab ich die Fehler gefunden.

Code: Select all

<cue name="DefaultComm" instantiate="true" namespace="this">
      <conditions>
        <check_any>
          <event_conversation_started conversation="gOrders_main" />
          <event_conversation_returned_to_section section="gOrders_main" />
          <event_conversation_next_section section="gOrders_main"/>
        </check_any>
      </conditions>
      <actions>
        <do_if value="not event.object.hasrelation.enemy.{faction.player}">
					<do_if value="event.object.ship.exists">
						<do_if value="event.object == event.object.ship.pilot">
							<do_if value="event.object.isplayerowned">
								<add_player_choice_sub text="{5869,60}" section="gTestOne_CmdMenu" position="left"/>
							</do_if>
						</do_if>
					</do_if>
				</do_if>
      </actions>
    </cue>
      
    <cue name="SectionHandler" instantiate="true" namespace="this" >
      <conditions>
        <check_any>
          <event_conversation_next_section sectionprefix="gTestOne_" />
        <event_conversation_returned_to_section sectionprefix="gTestOne_" />
        </check_any>
        
      </conditions>
      <actions>
		    <do_if value="event.param == 'gTestOne_CmdMenu'">
          <show_help force="true" custom="{5869,1}" duration="15s"/>
		    </do_if>
      </actions>
    </cue>
Kommt mir das eigentlich nur so vor oder ist das mit den Konversation recht schlecht gelöst, weil ich ja anscheinend die Position angeben muss oder ?

viele grüße
Lassi
Grenzen entstehen dann wenn man etwas nicht bergreift, aber wer kann schon alles begreifen in unserer Welt.
UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader »

Die angabe der Position im Konversations-Menü ist Optional, wenn dieser Parameter nicht vorhanden ist wird der erstbeste freie Slot her genommen ;)
Zwecks Konsistenz ist es in der regel immer gut, diese Angabe zu machen (insbesondere beio komplett eigenen Menüs), aber im zweifelsfall (z.B. bei eh schon ziemlich vollen menüs seitens EGO) ist es sicherer diese Angabe nicht zu machen, um die Kompatibilität mit anderen mods zu erhöhen
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 ;)
LassiLachmann
Posts: 182
Joined: Thu, 21. Feb 08, 16:37
x3tc

Post by LassiLachmann »

Hi UniTrader,

ich konnte mir fast denken das diese Einstellung Optional ist.

Aber das Problem ist (find ich zumindest) es ist nicht flexibel genug was passiert wenn alle 6 Slots belegt sind. Bei ein Mod und EGOSOFT passiert nichts, aber wenn mehre Leute das selbe Menü belegen wollen dann kracht es wieder.

Ich weiß nicht so richtig glücklich macht mich das Modverhalten nicht.
Es ist recht flexibel mit der Erweiterbarkeit das muss ich zugeben.

Ab was passiert wenn Leute das selbe überschreiben, wär gewinnt oder wieder mit den ID in den T-Files und und und.

Mir fehlt so ein bissel das Gefühl von Hochsprachen C#, C++, C, ...(hier nur mal die C-Richtung ^^)

Also mal schauen wie weit ich mich noch damit beschäftige, weil etwas arg anstrengen ist. Vielleicht findet sich mal das ein oder andere was ich machen kann.

viele grüße
Lassi
Grenzen entstehen dann wenn man etwas nicht bergreift, aber wer kann schon alles begreifen in unserer Welt.
qox
Posts: 29
Joined: Wed, 20. Nov 13, 01:51
xr

Post by qox »

Nur mal meine Kommentare am rande.

Anstatt verschachtelten If's kannst du sicher auch die Bedingungen mit and verketten/"Verunden".
Also mal schauen wie weit ich mich noch damit beschäftige, weil etwas arg anstrengen ist.
Scripting ist immer anstrengend, das muss so sein (das ist bestimmt weil die Spiele entwickler Sarkastische Menschen sind, spaß). Nein mal im ernst, das Scripting in Arma 3 ist auch total umständlich/anstrengend weil Sie z.b. auch eine eigene Sprache Benutzen (wieder nicht ge-jit-tetes LUA) und alles total gewöhnungsbedürftig ist. Selbes gilt für die Unreal Serie (Unreal Script).

Ich kann aber nachvollziehen dass Spieleentwickler immer eine eigene Sprache entwickeln müssen. Es ist halt ein neues Abenteuer mit viele Herausforderungen und wozu lernt man im Studium Compilerbau ;) .
LassiLachmann
Posts: 182
Joined: Thu, 21. Feb 08, 16:37
x3tc

Post by LassiLachmann »

Hi,

klar kann ich das verkettet machen, in diesem fall war vieles nur rauskopiert um erstmal Grund zufassen. ( Ich weis ist nicht die beste Technik)

Ich kenn das Problem das Scripting bei Spiele immer so eine Sache ist. Ich persönlich hab dann immer mehr Frust als Lust.
Und dabei kann ich schon 3 Sprachen relative gut und es müsste nur etwas eingewöhnen sein, aber so richtig klappt es meistens nie.


Ich glaub das mit selber machen ist so eine Angewohnheit die in jeder Richtung existieren. Hab mich gegen die Informatik und für die Elektrotechnik entschieden. Genauer die Kommunikation und Nachrichten-Technik. Und da macht ja eh jeder alles allein.

Mal schauen wo es mich mit XR noch hinzieht.

viele grüße
Lassi

PS: Hab 8h gebraucht das sich mein Transporter um die eigene Achse dreht, aber so richtig will auch das nicht. Er dreht immer erstmal eine Runde in der Zone bevor er das macht.
Grenzen entstehen dann wenn man etwas nicht bergreift, aber wer kann schon alles begreifen in unserer Welt.

Return to “X Rebirth - Scripts und Modding”