Difference between revisions of "MultiplayerContent/de"

From The Battle for Wesnoth Wiki
m
(Die Szenario-Datei: section translation finished)
 
(4 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
{{Create/de}}
 
{{Create/de}}
  
Auf dieser Seite wird erläutert, welche [[SyntaxWML|WML-Syntax]] innerhalb einer '''.cfg'''-Datei erforderlich ist, damit ein einzelnes Szenario oder eine Kampagne im Multiplayer-Modus funktioniert. Da nur diese Unterschiede angesprochen werden, ist es sinnvoll, zunächst die vorherigen Artikel  des '''Leitfadens für Kreative''' (Verlinkungen ganz oben auf dieser Seite) zu lesen.
+
Auf dieser Seite wird erläutert, welche [[SyntaxWML|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 ==
 
== Szenarios im Multiplayer-Modus ==
  
Im Multiplayer-Modus kann man ein einzelnes Szenario spielen, ohne dafür eine Kampagne einzurichten (dies ist im Eizelspielermodus '''nicht''' möglich). Dazu sind folgende Anpassungen nötig:
+
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:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.
 
* '''In der Datei _main.cfg:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.
 
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.
 
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.
  
== Multiplayer campaigns ==
+
== Kampagnen im Multiplayer-Modus ==
  
<b>Note:</b> This section is relevant for version '''1.11.6 and higher'''.
+
'''Anmerkung:''' Multiplayer-Kampagnen in ''Battle for Wesnoth'' werden erst ab '''Version 1.11.6''' des Spiels unterstützt.
  
Wesnoth has basic support for campaigns that can be played in multiplayer mode, with your friends, or even with an AI. There will still be some things that don't work as expected since some functionality for multiplayer campaigns is still being developed. While you can and should test your work in hotseat mode, there are a number of things that might behave differently under real network conditions (mostly affecting scenario and side parameters). Keep this in mind and make sure to test your campaign over the net, too.
+
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.
  
==== The Campaign Tag ====
+
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.
  
Multiplayer campaigns use the [campaign] tag, thus allowing the same campaign to work both in both modes. The only difference is that game also checks for a couple optional tags when campaign is used in multiplayer. They could be found on the [[CampaignWML]] page. Additionally, the '''type''' attribute should be explicitly set to '''mp''' or '''hybrid''' or otherwise a campaign would not be visible in multiplayer.
+
==== Das <code>[campaign]</code>-Tag ====
  
==== The Scenario File ====
+
In Multiplayer-Kampagnen wird das <code>[campaign]</code>-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.<br>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.
  
A scenario in a multiplayer campaign is almost identical to a scenario in a singleplayer campaign. You only need to change the following:
+
==== Die Szenario-Datei ====
  
* Every scenario which should not be available to start directly, should have '''allow_new_game=no''' inside the [scenario] tag. This will prevent it from showing as an "entry point" in the multiplayer configuration screen. {{DevFeature1.13|?}} This is no longer true, '''allow_new_game=no''' is now the default
+
Ein Szenario innerhalb einer Multiplayer-Kampagne ist beinahe identisch zu einem Szenario in einer Einzelspieler-Kampagne. Es müssen nur folgende Änderungen vogenommen werden:
* For scenarios that don't use '''allow_new_game=no''', one could make use of '''new_game_title''' to have a custom title. This is useful if the campaign is supposed to have multiple entry points such as chapters.
+
 
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.
+
* 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.
* 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
+
* 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.
* 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 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.
* {{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.
+
* 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.
 +
* 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.
 +
* 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.