Erstmal vorab:
Missionen gehen nicht!
Jedoch ist es recht einfach neue Nachrichten ins BBS zu bringen. Wie Mac schon geschrieben hat stehen die BBS Nachrichten in der 490001.xml
Wenn ihr nun Nachrichten hinzufügen wollt müsst ihr einen eigenen Sprachfile anlegen und in diesem die betreffenden Newstexte überschreiben - Abgesehen von der Rasse wo er erscheinen soll habt ihr keinerlei Einfluss darauf wo der Text erscheint und vorallem auch wann - Das gilt für Texte die ihr überschreibt.
Wenn ihr Texte neu hinzufügt könnt ihr ihn EINMAL konfigurieren pro TextID - bedeutet wenn eine Textid EINMAL geladen wurde, ist es nicht mehr möglich Änderungen an der Konfiguration vorzunehmen.
Und so gehts:
Code: Select all
<page id="2033" title="Argon news" descr="">
<t id="1">[article/][author]{1294,10}[/author][title]Argon Prime expels spying Split[/title][text cols='2'][justify]Three representatives of the Split trade delegation have been expelled from Argon space for industrial espionage. An Argon spokesman said the charges will not be pressed as all three are from the Diplomatic Service of the Split delegation. It is believed that the Split were interested in new Silicon mining techniques developed by Argon mine companies.\n\nHach Burnett - Foreign Affairs Correspondent, IBC News[/justify][/text]</t>
</page>
Das wäre jetzt eine News die in einer Argonen Station erscheint - einfach den Text editieren und die neue Nachricht wird angezeigt, wenn ihr sie das nächste Mal aufruft.
Es gibt aber noch weitere Möglichkeiten um dort leben rein zu bekommen, vielleicht auch sowas wie eine Mission - ist aber sehr hackelig und an klickbare Buttons sind nicht.
Wie man oben sieht ist dort ein leeres [article] Tag. Dieses kann man für weitere Konfigurationen nutzen.
z.B.
Code: Select all
[article state='1' pri='1' timeout='900' /]
state: Wird dieser Artikel überhaupt angezeigt - kann man mit dem SE nachträglich ändern.
pri: Soll diese News immer angezeigt werden 1:ja 0:nein
timeout: Die Zeit, die die News an einem Stück im BBS (innehalb einer Station) sichtbar ist. (in Sekunden)
Nun das ist doch schon mal was - damit kann man als Newsschreiber schon mal rechtviel beeinflussen - aber es geht noch weiter.
Innerhalb eines [article][/article] Tag sind ebenfalls spezielle Argumente erlaubt.
Code: Select all
[eval script='...' args='...' neg='...'/]
beeinflusst ob eine news innerhalb einer station angezeigt werden darf
Code: Select all
[ondisplay script... args... neg...]
wird das erste Mal aufgerufen wenn der Spieler eine News betrachtet - das gilt für jede Instanz dieser News, jedoch pro Instanz nur einmal.
wenn die news entfernt wird kommt dieses Skript zum Tragen.
script = Der Scriptname ohne Endung.
args = eine Komma getrennte Liste mit Werten.
neg = negiert den Rückgabewert.
Innerhalb des Textes ist es möglich bestimmte Variablen zu benutzen die automatisch mit Text gefüllt werden. Diese können auch innnerhalb eine article Tags bestimmt werden. Folgende sind schon bestimmt und sollten selbsterklärend sein:
Code: Select all
[var name='RACE' script='!bbsnews.get.ownerrace'/]
[var name='STATION' script='!bbsnews.get.environment'/]
[var name='SECTOR' script='!bbsnews.get.sector'/]
[var name='PRODUCT' script='!bbsnews.get.product'/]
Im Text einfach $RACE$ schreiben wenn dort die Besitzerrasse der Station angezeigt werden soll.
So abschließen nocht - die Konfiguration klappt nur sauber wenn der Text in der 490001.pck drin steht - oder aber der Sprachfile mit einem init.* script geladen wird (letzteres bin ich mir nicht 100% sicher)
Ich hoffe das hilft euch weiter.
Gruß ticaki