Difference between revisions of "MultiplayerContent/de"

From The Battle for Wesnoth Wiki
m (Die Szenario-Datei: trans)
(Die Szenario-Datei: section translation finished)
 
Line 30: Line 30:
 
* Ein Szenario, das nicht dafür vorgesehen ist, direkt gestartet zu werden, sollte innerhalb des <code>[scenario]</code>-Tags den key <code>allow_new_game=no</code> enthalten. Das verhindert die Anzeige des Szenarios auf der Multiplayer-Konfigurationsseite als Eintrittspunkt.<br>Ab Wesnoth Version 1.13 ist diese Angabe nicht mehr unbedingt notwendig, da <code>allow_new_game=no</code> die Voreinstellung ist.
 
* Ein Szenario, das nicht dafür vorgesehen ist, direkt gestartet zu werden, sollte innerhalb des <code>[scenario]</code>-Tags den key <code>allow_new_game=no</code> enthalten. Das verhindert die Anzeige des Szenarios auf der Multiplayer-Konfigurationsseite als Eintrittspunkt.<br>Ab Wesnoth Version 1.13 ist diese Angabe nicht mehr unbedingt notwendig, da <code>allow_new_game=no</code> die Voreinstellung ist.
 
* Für Szenarien ohne <code>allow_new_game=no</code> kann man den key <code>new_game_title</code> benutzen, der einen benutzerdefinierten Titel für das Szenario ermöglicht. Das ist nützlich, wenn man mehrere Eintrittspunkte in eine Kampagne - z.B. am Anfang eines neuen Kapitels - setzen möchte.
 
* Für Szenarien ohne <code>allow_new_game=no</code> kann man den key <code>new_game_title</code> benutzen, der einen benutzerdefinierten Titel für das Szenario ermöglicht. Das ist nützlich, wenn man mehrere Eintrittspunkte in eine Kampagne - z.B. am Anfang eines neuen Kapitels - setzen möchte.
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.
+
* Jede durch einen Menschen gesteuerte Partei (in der WML-Terminologie spricht man von '''side''') benötigt innerhalb ihres <code>[side]</code>-Tags den Key <code>controller=human</code>, um im Netzwerkmodus zu funktionieren.
* Each human-controlled side also needs to have a '''save_id''' defined inside its [side] tag. Each side's save_id should be unique, and it should be the same in every scenario. Without this, your recall lists and leaders will not carry over from one scenario to the next. {{DevFeature1.13|?}} This is no longer true, '''save_id''' defaults to '''id''', just like in sp
+
* Jede von einem Menschen gesteuerte Partei benötigt außerdem innerhalb ihres <code>[side]</code>-Tags den Key <code>save_id=ABCD</code> mit einem einzigartigen Identifikationscode (ID). Jede Side hat eine eigene save_id, und sie ist in jedem zusammengehörigen Szenario gleich. Ohne diese Angabe werden die Anführer und Rekrutierungslisten nicht ins nächste Szenario übernommen.<br>Ab Wesnoth Version 1.13 wird die Angabe von save_id nicht mehr benötigt, sie wird (genau wie im Einzelspielermodus) per Voreinstellung von dem Schlüssel <code>id=ABCD</code> übernommen.
* If you want to carry over information for ai sides, they need to have a '''save_id''' defined and '''persistent=yes''' in their [side] tags. (The same is true for singleplayer campaigns)
+
* Jede von der KI gesteuerten Partei jedoch benötigt innerhalb ihres <code>[side]</code>-Tags den Key <code>save_id=12345</code> und zusätzlich den Key <code>persistent=yes</code>. Da gleiche gilt generell auch im Einzelspielermodus.
* {{DevFeature1.13|?}} You can use '''previous_save_id''' to tell the engine which player shodul control which side. For example if you have a multiplayer campaign and in scenario1 you have two sides with ids Kalenz and Landar, and in scenario2 you have sides with ids Konrad and Delfador you can use '''previous_save_id=Kalenz''' and '''previous_save_id=Landar''' in scenario2 to make sure that the player that previously controlled Kalenz now controls Konrad and the player that previously controlled Landar now controlls Delfador.
+
* Ab Wesnoth Version 1.13 gibt es die Möglichkeit, mittels des Key <code>previous_save_id</code> innerhalb eines <code>[side]</code>-Tags zu bestimmen, welcher vorherige Spieler diese Partei im aktuellen Szenario übenehmen soll. Angenommen, im ersten Szenario gibt es zwei Parteien mit den IDs ''Kalenz'' und ''Landar'', im zweiten ''Konrad'' und ''Delfador''. Man kann nun im zweiten Szenario innerhalb des <code>[side]</code>-Tags von ''Konrad'' den Key <code>previous_save_id=Kalenz</code> nutzen, um die vorher von ''Kalenz'' gesteuerte Partei nun ''Konrad'' zuzuordnen. Das Gleiche kann man mit ''Landar'' und ''Delfador'' machen.
  
 
== Other Notes ==
 
== Other Notes ==

Latest revision as of 09:40, 22 February 2022


Auf dieser Seite wird erläutert, welche WML-Syntax innerhalb einer .cfg-Datei erforderlich ist, damit ein einzelnes Szenario oder eine Kampagne im Multiplayer-Modus (MPM) funktioniert. Da nur diese Unterschiede angesprochen werden, ist es sinnvoll, zunächst die vorherigen Artikel des Leitfadens für Kreative (Verlinkungen oben auf dieser Seite) zu lesen.


Szenarios im Multiplayer-Modus

Im MPM kann man ein einzelnes Szenario spielen, ohne dafür eine Kampagne einzurichten (dies ist im Einzelspielermodus nicht möglich). Dazu sind folgende Anpassungen nötig:

  • In der Datei _main.cfg: #ifdef MULTIPLAYER als Ladebedingung einfügen.
  • In der Szenario-Konfigurationsdatei: ein [multiplayer]-Tag anstelle eines [scenario]-Tags auf oberster Code-Ebene verwenden.

Kampagnen im Multiplayer-Modus

Anmerkung: Multiplayer-Kampagnen in Battle for Wesnoth werden erst ab Version 1.11.6 des Spiels unterstützt.

Wesnoth hat grundlegende Unterstützung für Kampagnen im MPM, man kann es entweder mit Freunden oder sogar mit einer KI spielen. Es gibt allerdings nach wie vor ein paar Dinge, die nicht so arbeiten wie man es erwarten könnte, da sich einige Funktionen noch in der Entwicklung befinden.

Man kann und sollte seine Arbeit zunächst im Hotseat-Modus testen, aber einige Dinge werden sich unter realen Netzwerkbedingungen vermutlich dennoch anders verhalten (und hauptsächlich Szenario- und Nebenparameter beeinflussen). Das sollte man immer im Hinterkopf behalten und eine Multiplayer-Kampagne immer auch im Netzwerk testen.

Das [campaign]-Tag

In Multiplayer-Kampagnen wird das [campaign]-Tag verwendet, das ein und dieselbe Kampagne sowohl im MPM als auch im Einzelspielermodus spielbar macht. Das Spiel überprüft im MPM lediglich zusätzlich einige optionaler Tags. Diese Tags können unter CampaignWML nachgeschlagen werden.
Außerdem muss in Multiplayer-Kampagnen das type-Attribut ausdrücklich auf mp oder hybrid gesetzt werden, da eine Kampagne andernfalls gar nicht erst im MPM sichtbar ist.

Die Szenario-Datei

Ein Szenario innerhalb einer Multiplayer-Kampagne ist beinahe identisch zu einem Szenario in einer Einzelspieler-Kampagne. Es müssen nur folgende Änderungen vogenommen werden:

  • Ein Szenario, das nicht dafür vorgesehen ist, direkt gestartet zu werden, sollte innerhalb des [scenario]-Tags den key allow_new_game=no enthalten. Das verhindert die Anzeige des Szenarios auf der Multiplayer-Konfigurationsseite als Eintrittspunkt.
    Ab Wesnoth Version 1.13 ist diese Angabe nicht mehr unbedingt notwendig, da allow_new_game=no die Voreinstellung ist.
  • Für Szenarien ohne allow_new_game=no kann man den key new_game_title benutzen, der einen benutzerdefinierten Titel für das Szenario ermöglicht. Das ist nützlich, wenn man mehrere Eintrittspunkte in eine Kampagne - z.B. am Anfang eines neuen Kapitels - setzen möchte.
  • Jede durch einen Menschen gesteuerte Partei (in der WML-Terminologie spricht man von side) benötigt innerhalb ihres [side]-Tags den Key controller=human, um im Netzwerkmodus zu funktionieren.
  • Jede von einem Menschen gesteuerte Partei benötigt außerdem innerhalb ihres [side]-Tags den Key save_id=ABCD mit einem einzigartigen Identifikationscode (ID). Jede Side hat eine eigene save_id, und sie ist in jedem zusammengehörigen Szenario gleich. Ohne diese Angabe werden die Anführer und Rekrutierungslisten nicht ins nächste Szenario übernommen.
    Ab Wesnoth Version 1.13 wird die Angabe von save_id nicht mehr benötigt, sie wird (genau wie im Einzelspielermodus) per Voreinstellung von dem Schlüssel id=ABCD übernommen.
  • Jede von der KI gesteuerten Partei jedoch benötigt innerhalb ihres [side]-Tags den Key save_id=12345 und zusätzlich den Key persistent=yes. Da gleiche gilt generell auch im Einzelspielermodus.
  • Ab Wesnoth Version 1.13 gibt es die Möglichkeit, mittels des Key previous_save_id innerhalb eines [side]-Tags zu bestimmen, welcher vorherige Spieler diese Partei im aktuellen Szenario übenehmen soll. Angenommen, im ersten Szenario gibt es zwei Parteien mit den IDs Kalenz und Landar, im zweiten Konrad und Delfador. Man kann nun im zweiten Szenario innerhalb des [side]-Tags von Konrad den Key previous_save_id=Kalenz nutzen, um die vorher von Kalenz gesteuerte Partei nun Konrad zuzuordnen. Das Gleiche kann man mit Landar und Delfador machen.

Other Notes

  • To ensure that your scenario settings won't get overwritten by the settings from the multiplayer configure dialog, you can set force_use_map_settings=true. However, if your campaign is not intended to be played strictly with default settings, you can set it to false.
  • If any settings are still taken from the multiplayer configure dialog, it is possible to overwrite them in the prestart event. Useful tags include [set_recruit], [modify_side], [modify_turns],[remove_shroud], and [lift_fog]. You might also want to use experience_modifier=100 in the [scenario] tag.

Synchronization

When creating multiplayer content, you should be cautious of code that might change on one client but not the other players'. Not doing so can result in an Out of Sync error. Most [event]s are synced across all clients, but a few still have issues. A full list of safe events can be found on the EventWML page.

See Also

This page was last edited on 22 February 2022, at 09:40.