https://wiki.wesnoth.org/api.php?action=feedcontributions&user=RufDerMacht&feedformat=atomThe Battle for Wesnoth Wiki - User contributions [en]2024-03-29T15:34:11ZUser contributionsMediaWiki 1.31.16https://wiki.wesnoth.org/index.php?title=MultiplayerContent/de&diff=69375MultiplayerContent/de2022-02-22T09:40:42Z<p>RufDerMacht: /* Die Szenario-Datei */ section translation finished</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
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.<br />
<br />
<br />
== Szenarios im Multiplayer-Modus ==<br />
<br />
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:<br />
<br />
* '''In der Datei _main.cfg:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.<br />
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.<br />
<br />
== Kampagnen im Multiplayer-Modus ==<br />
<br />
'''Anmerkung:''' Multiplayer-Kampagnen in ''Battle for Wesnoth'' werden erst ab '''Version 1.11.6''' des Spiels unterstützt.<br />
<br />
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.<br />
<br />
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.<br />
<br />
==== Das <code>[campaign]</code>-Tag ====<br />
<br />
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.<br />
<br />
==== Die Szenario-Datei ====<br />
<br />
Ein Szenario innerhalb einer Multiplayer-Kampagne ist beinahe identisch zu einem Szenario in einer Einzelspieler-Kampagne. Es müssen nur folgende Änderungen vogenommen werden:<br />
<br />
* 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.<br />
* 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.<br />
* 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.<br />
* 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.<br />
* 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.<br />
* 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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=MultiplayerContent/de&diff=69374MultiplayerContent/de2022-02-21T12:10:45Z<p>RufDerMacht: /* Die Szenario-Datei */ trans</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
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.<br />
<br />
<br />
== Szenarios im Multiplayer-Modus ==<br />
<br />
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:<br />
<br />
* '''In der Datei _main.cfg:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.<br />
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.<br />
<br />
== Kampagnen im Multiplayer-Modus ==<br />
<br />
'''Anmerkung:''' Multiplayer-Kampagnen in ''Battle for Wesnoth'' werden erst ab '''Version 1.11.6''' des Spiels unterstützt.<br />
<br />
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.<br />
<br />
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.<br />
<br />
==== Das <code>[campaign]</code>-Tag ====<br />
<br />
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.<br />
<br />
==== Die Szenario-Datei ====<br />
<br />
Ein Szenario innerhalb einer Multiplayer-Kampagne ist beinahe identisch zu einem Szenario in einer Einzelspieler-Kampagne. Es müssen nur folgende Änderungen vogenommen werden:<br />
<br />
* 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.<br />
* 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.<br />
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.<br />
* 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<br />
* 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)<br />
* {{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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=MultiplayerContent/de&diff=69367MultiplayerContent/de2022-02-20T18:50:35Z<p>RufDerMacht: trans</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
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.<br />
<br />
<br />
== Szenarios im Multiplayer-Modus ==<br />
<br />
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:<br />
<br />
* '''In der Datei _main.cfg:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.<br />
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.<br />
<br />
== Kampagnen im Multiplayer-Modus ==<br />
<br />
'''Anmerkung:''' Multiplayer-Kampagnen in ''Battle for Wesnoth'' werden erst ab '''Version 1.11.6''' des Spiels unterstützt.<br />
<br />
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.<br />
<br />
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.<br />
<br />
==== Das <code>[campaign]</code>-Tag ====<br />
<br />
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.<br />
<br />
==== Die Szenario-Datei ====<br />
<br />
Ein Szenario innerhalb einer Multiplayer-Kampagne ist beinahe identisch zu einem Szenario in einer Einzelspieler-Kampagne. Es müssen nur folgende Änderungen vogenommen werden:<br />
<br />
* 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 "entry point".<br />
<br />
* 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<br />
<br />
* 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.<br />
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.<br />
* 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<br />
* 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)<br />
* {{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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=MultiplayerContent/de&diff=69366MultiplayerContent/de2022-02-20T18:34:29Z<p>RufDerMacht: /* Kampagnen im Multiplayer-Modus */ trans</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
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 oben auf dieser Seite) zu lesen.<br />
<br />
<br />
== Szenarios im Multiplayer-Modus ==<br />
<br />
Im Multiplayer-Modus 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:<br />
<br />
* '''In der Datei _main.cfg:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.<br />
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.<br />
<br />
== Kampagnen im Multiplayer-Modus ==<br />
<br />
'''Anmerkung:''' Multiplayer-Kampagnen in ''Battle for Wesnoth'' werden erst ab '''Version 1.11.6''' des Spiels unterstützt.<br />
<br />
Wesnoth hat grundlegende Unterstützung für Kampagnen im Multiplayer-Modus, 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.<br />
<br />
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.<br />
<br />
==== Das <code>[campaign]</code>-Tag ====<br />
<br />
In Multiplayer-Kampagnen wird das <code>[campaign]</code>-Tag verwendet, die ein und dieselbe Kampagne sowohl im Multiplayer- als auch im Singleplayer-Modus spielbar macht. Das Spiel überprüft im Multiplayer-Modus 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 Multiplayer-Modus sichtbar ist.<br />
<br />
==== The Scenario File ====<br />
<br />
A scenario in a multiplayer campaign is almost identical to a scenario in a singleplayer campaign. You only need to change the following:<br />
<br />
* 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<br />
* 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.<br />
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.<br />
* 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<br />
* 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)<br />
* {{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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=MultiplayerContent/de&diff=69364MultiplayerContent/de2022-02-20T13:37:00Z<p>RufDerMacht: trans</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
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 oben auf dieser Seite) zu lesen.<br />
<br />
<br />
== Szenarios im Multiplayer-Modus ==<br />
<br />
Im Multiplayer-Modus 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:<br />
<br />
* '''In der Datei _main.cfg:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.<br />
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.<br />
<br />
== Kampagnen im Multiplayer-Modus ==<br />
<br />
'''Anmerkung:''' Multiplayer-Kampagnen in ''Battle for Wesnoth'' werden erst ab '''Version 1.11.6''' des Spiels unterstützt.<br />
<br />
Wesnoth hat grundlegende Unterstützung für Kampagnen im Multiplayer-Modus, 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.<br />
<br />
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.<br />
<br />
==== The Campaign Tag ====<br />
<br />
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.<br />
<br />
==== The Scenario File ====<br />
<br />
A scenario in a multiplayer campaign is almost identical to a scenario in a singleplayer campaign. You only need to change the following:<br />
<br />
* 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<br />
* 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.<br />
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.<br />
* 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<br />
* 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)<br />
* {{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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=MultiplayerContent/de&diff=69363MultiplayerContent/de2022-02-20T05:10:45Z<p>RufDerMacht: </p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
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.<br />
<br />
<br />
== Szenarios im Multiplayer-Modus ==<br />
<br />
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:<br />
<br />
* '''In der Datei _main.cfg:''' <code>#ifdef MULTIPLAYER</code> als Ladebedingung einfügen.<br />
* '''In der Szenario-Konfigurationsdatei:''' ein <code>[multiplayer]</code>-Tag anstelle eines <code>[scenario]</code>-Tags auf oberster Code-Ebene verwenden.<br />
<br />
== Multiplayer campaigns ==<br />
<br />
<b>Note:</b> This section is relevant for version '''1.11.6 and higher'''.<br />
<br />
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.<br />
<br />
==== The Campaign Tag ====<br />
<br />
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.<br />
<br />
==== The Scenario File ====<br />
<br />
A scenario in a multiplayer campaign is almost identical to a scenario in a singleplayer campaign. You only need to change the following:<br />
<br />
* 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<br />
* 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.<br />
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.<br />
* 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<br />
* 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)<br />
* {{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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=MultiplayerContent/de&diff=69361MultiplayerContent/de2022-02-19T10:02:16Z<p>RufDerMacht: Created German Page - will be translated soon</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
This page is dedicated to the syntax modifications necessary to enable a scenario or campaign to work in multiplayer mode. Only the differences between multiplayer and singleplayer are are documented here, so you might want to read [[BuildingScenarios]] and [[BuildingCampaigns]] first.<br />
<br />
<b>Note:</b> This page assumes you have a basic add-on set up as described in [[AddonStructure]], as well as some coded content.<br />
<br />
== Multiplayer scenarios ==<br />
<br />
You can play standalone scenarios in multiplayer mode without setting up a campaign (this isn't possible in singleplayer). Simply make the following modifications:<br />
<br />
* In the _main.cfg file, use <b>#ifdef MULTIPLAYER</b> as the load conditional<br />
* In the scenario configuration file, use a toplevel <b>[multiplayer]</b> tag instead of <b>[scenario]</b> tag<br />
<br />
== Multiplayer campaigns ==<br />
<br />
<b>Note:</b> This section is relevant for version '''1.11.6 and higher'''.<br />
<br />
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.<br />
<br />
==== The Campaign Tag ====<br />
<br />
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.<br />
<br />
==== The Scenario File ====<br />
<br />
A scenario in a multiplayer campaign is almost identical to a scenario in a singleplayer campaign. You only need to change the following:<br />
<br />
* 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<br />
* 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.<br />
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.<br />
* 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<br />
* 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)<br />
* {{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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=MultiplayerContent&diff=69360MultiplayerContent2022-02-19T10:00:57Z<p>RufDerMacht: inserted trans template</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
This page is dedicated to the syntax modifications necessary to enable a scenario or campaign to work in multiplayer mode. Only the differences between multiplayer and singleplayer are are documented here, so you might want to read [[BuildingScenarios]] and [[BuildingCampaigns]] first.<br />
<br />
<b>Note:</b> This page assumes you have a basic add-on set up as described in [[AddonStructure]], as well as some coded content.<br />
<br />
== Multiplayer scenarios ==<br />
<br />
You can play standalone scenarios in multiplayer mode without setting up a campaign (this isn't possible in singleplayer). Simply make the following modifications:<br />
<br />
* In the _main.cfg file, use <b>#ifdef MULTIPLAYER</b> as the load conditional<br />
* In the scenario configuration file, use a toplevel <b>[multiplayer]</b> tag instead of <b>[scenario]</b> tag<br />
<br />
== Multiplayer campaigns ==<br />
<br />
<b>Note:</b> This section is relevant for version '''1.11.6 and higher'''.<br />
<br />
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.<br />
<br />
==== The Campaign Tag ====<br />
<br />
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.<br />
<br />
==== The Scenario File ====<br />
<br />
A scenario in a multiplayer campaign is almost identical to a scenario in a singleplayer campaign. You only need to change the following:<br />
<br />
* 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<br />
* 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.<br />
* Each human-controlled side needs to have a '''controller=human''' key defined in its [side] tag to work in network mode.<br />
* 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<br />
* 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)<br />
* {{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.<br />
<br />
== Other Notes ==<br />
<br />
* 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'''.<br />
<br />
* 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 <b>experience_modifier=100</b> in the [scenario] tag.<br />
<br />
==== Synchronization ====<br />
<br />
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 [[OOS_(Out_of_Sync) | 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#Multiplayer_safety | EventWML]] page.<br />
<br />
== See Also ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[BuildingCampaigns]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69359BuildingScenarios/de2022-02-19T09:58:48Z<p>RufDerMacht: </p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit '''zusätzlichen Inhalten''' ausgestattet ist. Diese szenariospezifischen Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, nahezu beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie ''nicht'' etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden meistens durch den '''Karteneditor''' erzeugt, der in Wesnoth integriert ist. Siehe dazu [[#Szenarios und der Karteneditor|diesen Abschnitt]]. Eine allgemeinere Übersicht zum Thema Karten findet sich unter [[BuildingMaps/de|BuildingMaps]].<br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, mit Beispielen und Lösungen für jedes erdenkliche Problem beim Erstellen eines Szenarios.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== Die Wesnoth Markup Language (WML) ==<br />
<br />
Szenarios (bzw. alle für Wesnoth benötigten .cfg-Dateien) sind in der [[ReferenceWML|'''Wesnoth Markup Language''']] (abgekürzt '''WML''') geschrieben, einer sog. Auszeichnungssprache, die - wie der Name schon sagt - speziell für dieses Spiel kreiert worden ist. Sie verfügt über eine relativ einfache, auf sog. '''tags''' und '''keys''' (Auszeichnungen und Schlüsseln) basierende Syntax.<br>Diese beiden Begriffe sind grundlegend für das Verständnis von WML, eine vollständige Anleitung dazu findet man auf [[SyntaxWML]].<br />
<br />
=== Übersicht der Tags ===<br />
<br />
Nachfolgend eine Übersicht über die '''grundlegenden WML-Tags''', die man benötigt, um ein Szenario zu erstellen. Die Tags sind thematisch geordnet auf verschiedenen Seiten zusammengefasst. Die Verlinkungen verweisen auf die entsprechenden Themenseiten:<br />
<br />
:* [[ScenarioWML]]: Tags der obersten Ebene - [scenario], [multiplayer], [test], and [tutorial].<br />
:* [[IntroWML]]: Den Intro-Bildschirm einrichten.<br />
:* [[TimeWML]]: Den Tageszeitenplan einrichten.<br />
:* [[SideWML]]: Eine "side" beschreiben. "side" bedeutet in diesem Zusammenhang eine der Spielparteien.<br />
:** [[SingleUnitWML]]: Die Syntax einer einzelnen Einheit einer "side" definieren.<br />
:** [[ShroudDataWML]]: Die verdeckten Anteile einer Karte für eine "side" definieren.<br />
:* [[EventWML]]: Ein Ereignis innerhalb des Szenarios.<br />
:** [[FilterWML]]: Alles über Ereignis-Filter.<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]] - unterschiedliche Typen von Ereignissen. <br />
:* [[MapGeneratorWML]]: Der Zufallskarten-Generator.<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: Eine Auflistung nützlicher Makros.<br />
<br />
=== Beispielcode ===<br />
<br />
Auf der Seite [[BuildingScenariosSamples]] gibt es eine hübsche Sammlung von einfachen Codebeispielen. Dort werden die grundsätzliche Anwendung und die Struktur von WML in einem nachvollziehbaren Sinnzusammenhang gezeigt.<br />
<br />
== Szenarios und der Karteneditor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Szenariodaten im Editor</div></div><br />
</div><br />
<br />
Ab Wesnoth 1.12 ist der integrierte Karteneditor in der Lage, neben den reinen Kartendaten (also dem Terrain) auch szenariospezifische Daten zu erzeugen und abzuspeichern. Allerdings kann der Editor nur recht einfache Strukturen erzeugen, wie bestimmte Bezeichnungen, Einheitenplatzierung, grafische Elemente, Tageszeitenpläne und einiges mehr. Dadurch kann man sich eine Menge Arbeit sparen, wenngleich die weitere manuelle Bearbeitung der .cfg-Datei unumgänglich ist, um komplexeren WML-Code einzufügen.<br />
<br />
Um Szenariodaten zu erzeugen, wählt man im Menü ''Datei'' den Menüpunkt ''Neues Szenario''. Daraufhin öffnet sich ein Fenster, in dem man verschiedene Einstellungen vornehmen kann (siehe Screenshot). Um diesen szenariospezifischen Inhalt (zusammen mit den Terraindaten) abzuspeichern, wählt man im Dateimenü den Punkt ''Szenario speichern unter''. Dabei wird sowohl eine .map- als auch eine .cfg-Datei erzeugt. Möchte man lediglich die Terraindaten (in einer .map-Datei) speichern, wählt man im Dateimenü den Punkt ''Karte speichern unter''.<br />
<br />
== Ein Szenario erstellen ==<br />
<br />
Ein Szenario zu erstellen ist keine einfache Aufgabe. Im Allgemeinen sollte man eine Vorstellung von dem Szenario - '''ein Konzept''' - haben, bevor man beginnt. Mit welchen Gegnern und Verbündeten wird der Held konfrontiert? Welche Ereignisse sollen passieren? Wie lang soll das Szenario werden?<br>Vermutlich wird man seinen Plan während der Entwicklung mehrfach über den Haufen werfen. Im Zyklus von Entwurf, Programmieren und Testen wird man eine Vielzahl von Versuchen benötigen, ehe man durch einen fortwährenden Annäherungsprozess ein befriedigendes Ergebnis erzielt. Hier einige Anlaufstellen für derartige Fragestellungen:<br />
<br />
* Auf der Seite [[BuildingScenariosBalancing]] wird erörtert, wie man ein Szenario so anpasst und ausbalanciert, dass es wirklich Spaß macht.<br />
* Der Entwickler ESR liefert in seinem Artikel [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] mehr praktische Tipps.<br />
* Und nicht zuletzt besteht immer auch im [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop] des Wesnoth-Forums oder im [https://discord.com/channels/231976805987385345/371775921885020160 Chat] die Möglichkeit, nach Hilfe zu suchen oder zu fragen.<br />
<br />
Eine praktische '''zeilenweise Aufschlüsselung des Codes''' eines Szenarios ist auf den drei folgenden Seiten verfügbar. Jede Seite erkundet Schritt für Schritt immer komplexere WML-Konzepte:<br />
:• [[BuildingScenariosSimple|Einfache Konzepte]] • [[BuildingScenariosIntermediate|Schwierigere Konzepte]] • [[BuildingScenariosAdvanced|Konzepte für Fortgeschrittene]]<br />
<br />
== Siehe auch ==<br />
<br />
* [[ReferenceWML]] - Hauptreferenz für WML</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=User_talk:Mcpgal&diff=69358User talk:Mcpgal2022-02-19T08:35:03Z<p>RufDerMacht: now its right</p>
<hr />
<div>== Improving a page ==<br />
Ich weiß nicht, ob du hier noch am Start bist, aber ich wollte dich fragen, ob du etwas dagegen hast, wenn ich noch ein bisschen an der Seite [[BuildingCampaigns/de]] rumbastle, da ich noch etwas an ihrem Stil und auch inhaltlich verändern möchte.<br />
<br />
Just want to ask, if theres anything against improving this page from your side.<br />
<br />
--[[User:RufDerMacht|RufDerMacht]] ([[User talk:RufDerMacht|talk]]) 08:31, 19 February 2022 (UTC)</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=User:Mcpgal&diff=69357User:Mcpgal2022-02-19T08:34:40Z<p>RufDerMacht: ups, sorry</p>
<hr />
<div>== About me ==<br />
Just a german guy who speaks German, Polish and English and can translate Latin. Therefore I translate some stuff sometimes. ¯\_(ツ)_/¯</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=User:Mcpgal&diff=69356User:Mcpgal2022-02-19T08:32:54Z<p>RufDerMacht: /* Improving this page */</p>
<hr />
<div>== About me ==<br />
Just a german guy who speaks German, Polish and English and can translate Latin. Therefore I translate some stuff sometimes. ¯\_(ツ)_/¯<br />
== Improving this page ==<br />
Ich weiß nicht, ob du hier noch am Start bist, aber ich wollte dich fragen, ob du etwas dagegen hast, wenn ich noch ein bisschen an der Seite [[BuildingCampaigns/de]] rumbastle, da ich noch etwas an ihrem Stil und auch inhaltlich verändern möchte.<br />
<br />
Just want to ask, if theres anything against improving this page from your side.<br />
<br />
--[[User:RufDerMacht|RufDerMacht]] ([[User talk:RufDerMacht|talk]]) 08:31, 19 February 2022 (UTC)</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=User:Mcpgal&diff=69355User:Mcpgal2022-02-19T08:31:55Z<p>RufDerMacht: page improvement</p>
<hr />
<div>== About me ==<br />
Just a german guy who speaks German, Polish and English and can translate Latin. Therefore I translate some stuff sometimes. ¯\_(ツ)_/¯<br />
== Improving this page ==<br />
Ich weiß nicht, ob du hier noch am Start bist, aber ich wollte dich fragen, ob du etwas dagegen hast, wenn ich noch ein bisschen an der Seite rumbastle, da ich noch etwas an ihrem Stil und auch inhaltlich verändern möchte.<br />
<br />
Just want to ask, if theres anything against improving this page from your side.<br />
<br />
--[[User:RufDerMacht|RufDerMacht]] ([[User talk:RufDerMacht|talk]]) 08:31, 19 February 2022 (UTC)</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69354BuildingScenarios/de2022-02-19T08:26:03Z<p>RufDerMacht: /* See Also */ now ready</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit '''zusätzlichen Inhalten''' ausgestattet ist. Diese szenariospezifischen Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, nahezu beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie nicht etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden allerdings meistens durch den '''Karteneditor''' erzeugt, der in Wesnoth integriert ist. Siehe dazu [[#Szenarios und der Karteneditor|diesen Abschnitt]]. Eine allgemeinere Übersicht zum Thema Karten findet sich unter [[BuildingMaps/de|BuildingMaps]].<br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, mit Beispielen und Lösungen für jedes erdenkliche Problem beim Erstellen eines Szenarios.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== Die Wesnoth Markup Language (WML) ==<br />
<br />
Szenarios (bzw. alle für Wesnoth benötigten .cfg-Dateien) sind in der [[ReferenceWML|'''Wesnoth Markup Language''']] (abgekürzt '''WML''') geschrieben, einer sog. Auszeichnungssprache, die - wie der Name schon sagt - speziell für dieses Spiel kreiert worden ist. Sie verfügt über eine relativ einfache, auf '''Tags''' und '''Schlüsselworten''' basierende Syntax. Eine vollständige Anleitung dazu findet man auf [[SyntaxWML]].<br />
<br />
=== Übersicht der Tags ===<br />
<br />
Nachfolgend eine Übersicht über die '''grundlegenden WML-Tags''', die man benötigt, um ein Szenario herzustellen. Die Tags sind thematisch geordnet auf verschiedenen Seiten zusammengefasst. Die Verlinkungen verweisen auf die entsprechenden Themenseiten:<br />
<br />
:* [[ScenarioWML]]: Tags der obersten Ebene - [scenario], [multiplayer], [test], and [tutorial].<br />
:* [[IntroWML]]: Den Intro-Bildschirm einrichten.<br />
:* [[TimeWML]]: Den Tageszeitenplan einrichten.<br />
:* [[SideWML]]: Eine "side" beschreiben. "side" bedeutet in diesem Zusammenhang eine der Spielparteien.<br />
:** [[SingleUnitWML]]: Die Syntax einer einzelnen Einheit einer "side" definieren.<br />
:** [[ShroudDataWML]]: Die verdeckten Anteile einer Karte für eine "side" definieren.<br />
:* [[EventWML]]: Ein Ereignis innerhalb des Szenarios.<br />
:** [[FilterWML]]: Alles über Ereignis-Filter.<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]] - unterschiedliche Typen von Ereignissen. <br />
:* [[MapGeneratorWML]]: Der Zufallskarten-Generator.<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: Eine Auflistung nützlicher Makros.<br />
<br />
=== Beispielcode ===<br />
<br />
Auf der Seite [[BuildingScenariosSamples]] gibt es eine hübsche Sammlung von einfachem Codebeispielen. Dort werden die grundsätzliche Anwendung und die Struktur von WML in einem nachvollziehbaren Sinnzusammenhang gezeigt.<br />
<br />
== Szenarios und der Karteneditor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Szenariodaten im Editor</div></div><br />
</div><br />
<br />
Ab Wesnoth 1.12 ist der integrierte Karteneditor in der Lage, neben den reinen Kartendaten (also dem Terrain) auch szenariospezifische Daten zu erzeugen und abzuspeichern. Allerdings kann der Editor nur recht einfache Strukturen erzeugen, wie bestimmte Bezeichnungen, Einheitenplatzierung, grafische Elemente, Tageszeitenpläne und einiges mehr. Dadurch kann man sich eine Menge Arbeit sparen, wenngleich die weitere manuelle Bearbeitung der .cfg-Datei unumgänglich ist, um komplexeren WML-Code einzufügen.<br />
<br />
Um Szenariodaten zu erzeugen, wählt man im Menü ''Datei'' den Menüpunkt ''Neues Szenario''. Daraufhin öffnet sich ein Fenster, in dem man verschiedene Einstellungen vornehmen kann (siehe Screenshot). Um diesen szenariospezifischen Inhalt (zusammen mit den Terraindaten) abzuspeichern, wählt man im Dateimenü den Punkt ''Szenario speichern unter''. Dabei wird sowohl eine .map- als auch eine .cfg-Datei erzeugt. Möchte man lediglich die Terraindaten (in einer .map-Datei) speichern, wählt man im Dateimenü den Punkt ''Karte speichern unter''.<br />
<br />
== Ein Szenario erstellen ==<br />
<br />
Ein Szenario zu erstellen ist keine einfache Aufgabe. Im Allgemeinen sollte man eine Vorstellung von dem Szenario - '''ein Konzept''' - haben, bevor man beginnt. Mit welchen Gegnern und Verbündeten wird der Held konfrontiert? Welche Ereignisse sollen passieren? Wie lang soll das Szenario werden?<br>Vermutlich wird man seinen Plan während der Entwicklung mehrfach über den Haufen werfen. Im Zyklus von Entwurf, Programmieren und Testen wird man eine Vielzahl von Versuchen benötigen, ehe man durch einen fortwährenden Annäherungsprozess ein befriedigendes Ergebnis erzielt. Hier einige Anlaufstellen für derartige Fragestellungen:<br />
<br />
* Auf der Seite [[BuildingScenariosBalancing]] wird erörtert, wie man ein Szenario so anpasst und ausbalanciert, dass es wirklich Spaß macht.<br />
* Der Entwickler ESR liefert in seinem Artikel [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] mehr praktische Tipps.<br />
* Und nicht zuletzt besteht immer auch im [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop] des Wesnoth-Forums oder im [https://discord.com/channels/231976805987385345/371775921885020160 Chat] die Möglichkeit, nach Hilfe zu suchen oder zu fragen.<br />
<br />
Eine praktische '''zeilenweise Aufschlüsselung des Codes''' eines Szenarios ist auf den drei folgenden Seiten verfügbar. Jede Seite erkundet Schritt für Schritt immer komplexere WML-Konzepte:<br />
:• [[BuildingScenariosSimple|Einfache Konzepte]] • [[BuildingScenariosIntermediate|Schwierigere Konzepte]] • [[BuildingScenariosAdvanced|Konzepte für Fortgeschrittene]]<br />
<br />
== Siehe auch ==<br />
<br />
* [[ReferenceWML]] - Hauptreferenz für WML</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69353BuildingScenarios/de2022-02-19T08:25:11Z<p>RufDerMacht: /* Building Your Scenario */ trans - page ready</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit '''zusätzlichen Inhalten''' ausgestattet ist. Diese szenariospezifischen Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, nahezu beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie nicht etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden allerdings meistens durch den '''Karteneditor''' erzeugt, der in Wesnoth integriert ist. Siehe dazu [[#Szenarios und der Karteneditor|diesen Abschnitt]]. Eine allgemeinere Übersicht zum Thema Karten findet sich unter [[BuildingMaps/de|BuildingMaps]].<br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, mit Beispielen und Lösungen für jedes erdenkliche Problem beim Erstellen eines Szenarios.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== Die Wesnoth Markup Language (WML) ==<br />
<br />
Szenarios (bzw. alle für Wesnoth benötigten .cfg-Dateien) sind in der [[ReferenceWML|'''Wesnoth Markup Language''']] (abgekürzt '''WML''') geschrieben, einer sog. Auszeichnungssprache, die - wie der Name schon sagt - speziell für dieses Spiel kreiert worden ist. Sie verfügt über eine relativ einfache, auf '''Tags''' und '''Schlüsselworten''' basierende Syntax. Eine vollständige Anleitung dazu findet man auf [[SyntaxWML]].<br />
<br />
=== Übersicht der Tags ===<br />
<br />
Nachfolgend eine Übersicht über die '''grundlegenden WML-Tags''', die man benötigt, um ein Szenario herzustellen. Die Tags sind thematisch geordnet auf verschiedenen Seiten zusammengefasst. Die Verlinkungen verweisen auf die entsprechenden Themenseiten:<br />
<br />
:* [[ScenarioWML]]: Tags der obersten Ebene - [scenario], [multiplayer], [test], and [tutorial].<br />
:* [[IntroWML]]: Den Intro-Bildschirm einrichten.<br />
:* [[TimeWML]]: Den Tageszeitenplan einrichten.<br />
:* [[SideWML]]: Eine "side" beschreiben. "side" bedeutet in diesem Zusammenhang eine der Spielparteien.<br />
:** [[SingleUnitWML]]: Die Syntax einer einzelnen Einheit einer "side" definieren.<br />
:** [[ShroudDataWML]]: Die verdeckten Anteile einer Karte für eine "side" definieren.<br />
:* [[EventWML]]: Ein Ereignis innerhalb des Szenarios.<br />
:** [[FilterWML]]: Alles über Ereignis-Filter.<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]] - unterschiedliche Typen von Ereignissen. <br />
:* [[MapGeneratorWML]]: Der Zufallskarten-Generator.<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: Eine Auflistung nützlicher Makros.<br />
<br />
=== Beispielcode ===<br />
<br />
Auf der Seite [[BuildingScenariosSamples]] gibt es eine hübsche Sammlung von einfachem Codebeispielen. Dort werden die grundsätzliche Anwendung und die Struktur von WML in einem nachvollziehbaren Sinnzusammenhang gezeigt.<br />
<br />
== Szenarios und der Karteneditor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Szenariodaten im Editor</div></div><br />
</div><br />
<br />
Ab Wesnoth 1.12 ist der integrierte Karteneditor in der Lage, neben den reinen Kartendaten (also dem Terrain) auch szenariospezifische Daten zu erzeugen und abzuspeichern. Allerdings kann der Editor nur recht einfache Strukturen erzeugen, wie bestimmte Bezeichnungen, Einheitenplatzierung, grafische Elemente, Tageszeitenpläne und einiges mehr. Dadurch kann man sich eine Menge Arbeit sparen, wenngleich die weitere manuelle Bearbeitung der .cfg-Datei unumgänglich ist, um komplexeren WML-Code einzufügen.<br />
<br />
Um Szenariodaten zu erzeugen, wählt man im Menü ''Datei'' den Menüpunkt ''Neues Szenario''. Daraufhin öffnet sich ein Fenster, in dem man verschiedene Einstellungen vornehmen kann (siehe Screenshot). Um diesen szenariospezifischen Inhalt (zusammen mit den Terraindaten) abzuspeichern, wählt man im Dateimenü den Punkt ''Szenario speichern unter''. Dabei wird sowohl eine .map- als auch eine .cfg-Datei erzeugt. Möchte man lediglich die Terraindaten (in einer .map-Datei) speichern, wählt man im Dateimenü den Punkt ''Karte speichern unter''.<br />
<br />
== Ein Szenario erstellen ==<br />
<br />
Ein Szenario zu erstellen ist keine einfache Aufgabe. Im Allgemeinen sollte man eine Vorstellung von dem Szenario - '''ein Konzept''' - haben, bevor man beginnt. Mit welchen Gegnern und Verbündeten wird der Held konfrontiert? Welche Ereignisse sollen passieren? Wie lang soll das Szenario werden?<br>Vermutlich wird man seinen Plan während der Entwicklung mehrfach über den Haufen werfen. Im Zyklus von Entwurf, Programmieren und Testen wird man eine Vielzahl von Versuchen benötigen, ehe man durch einen fortwährenden Annäherungsprozess ein befriedigendes Ergebnis erzielt. Hier einige Anlaufstellen für derartige Fragestellungen:<br />
<br />
* Auf der Seite [[BuildingScenariosBalancing]] wird erörtert, wie man ein Szenario so anpasst und ausbalanciert, dass es wirklich Spaß macht.<br />
* Der Entwickler ESR liefert in seinem Artikel [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] mehr praktische Tipps.<br />
* Und nicht zuletzt besteht immer auch im [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop] des Wesnoth-Forums oder im [https://discord.com/channels/231976805987385345/371775921885020160 Chat] die Möglichkeit, nach Hilfe zu suchen oder zu fragen.<br />
<br />
Eine praktische '''zeilenweise Aufschlüsselung des Codes''' eines Szenarios ist auf den drei folgenden Seiten verfügbar. Jede Seite erkundet Schritt für Schritt immer komplexere WML-Konzepte:<br />
:• [[BuildingScenariosSimple|Einfache Konzepte]] • [[BuildingScenariosIntermediate|Schwierigere Konzepte]] • [[BuildingScenariosAdvanced|Konzepte für Fortgeschrittene]]<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69352BuildingScenarios/de2022-02-19T07:52:19Z<p>RufDerMacht: /* Übersicht der Tags */</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit '''zusätzlichen Inhalten''' ausgestattet ist. Diese szenariospezifischen Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, nahezu beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie nicht etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden allerdings meistens durch den '''Karteneditor''' erzeugt, der in Wesnoth integriert ist. Siehe dazu [[#Szenarios und der Karteneditor|diesen Abschnitt]]. Eine allgemeinere Übersicht zum Thema Karten findet sich unter [[BuildingMaps/de|BuildingMaps]].<br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, mit Beispielen und Lösungen für jedes erdenkliche Problem beim Erstellen eines Szenarios.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== Die Wesnoth Markup Language (WML) ==<br />
<br />
Szenarios (bzw. alle für Wesnoth benötigten .cfg-Dateien) sind in der [[ReferenceWML|'''Wesnoth Markup Language''']] (abgekürzt '''WML''') geschrieben, einer sog. Auszeichnungssprache, die - wie der Name schon sagt - speziell für dieses Spiel kreiert worden ist. Sie verfügt über eine relativ einfache, auf '''Tags''' und '''Schlüsselworten''' basierende Syntax. Eine vollständige Anleitung dazu findet man auf [[SyntaxWML]].<br />
<br />
=== Übersicht der Tags ===<br />
<br />
Nachfolgend eine Übersicht über die '''grundlegenden WML-Tags''', die man benötigt, um ein Szenario herzustellen. Die Tags sind thematisch geordnet auf verschiedenen Seiten zusammengefasst. Die Verlinkungen verweisen auf die entsprechenden Themenseiten:<br />
<br />
:* [[ScenarioWML]]: Tags der obersten Ebene - [scenario], [multiplayer], [test], and [tutorial].<br />
:* [[IntroWML]]: Den Intro-Bildschirm einrichten.<br />
:* [[TimeWML]]: Den Tageszeitenplan einrichten.<br />
:* [[SideWML]]: Eine "side" beschreiben. "side" bedeutet in diesem Zusammenhang eine der Spielparteien.<br />
:** [[SingleUnitWML]]: Die Syntax einer einzelnen Einheit einer "side" definieren.<br />
:** [[ShroudDataWML]]: Die verdeckten Anteile einer Karte für eine "side" definieren.<br />
:* [[EventWML]]: Ein Ereignis innerhalb des Szenarios.<br />
:** [[FilterWML]]: Alles über Ereignis-Filter.<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]] - unterschiedliche Typen von Ereignissen. <br />
:* [[MapGeneratorWML]]: Der Zufallskarten-Generator.<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: Eine Auflistung nützlicher Makros.<br />
<br />
=== Beispielcode ===<br />
<br />
Auf der Seite [[BuildingScenariosSamples]] gibt es eine hübsche Sammlung von einfachem Codebeispielen. Dort werden die grundsätzliche Anwendung und die Struktur von WML in einem nachvollziehbaren Sinnzusammenhang gezeigt.<br />
<br />
== Szenarios und der Karteneditor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Szenariodaten im Editor</div></div><br />
</div><br />
<br />
Ab Wesnoth 1.12 ist der integrierte Karteneditor in der Lage, neben den reinen Kartendaten (also dem Terrain) auch szenariospezifische Daten zu erzeugen und abzuspeichern. Allerdings kann der Editor nur recht einfache Strukturen erzeugen, wie bestimmte Bezeichnungen, Einheitenplatzierung, grafische Elemente, Tageszeitenpläne und einiges mehr. Dadurch kann man sich eine Menge Arbeit sparen, wenngleich die weitere manuelle Bearbeitung der .cfg-Datei unumgänglich ist, um komplexeren WML-Code einzufügen.<br />
<br />
Um Szenariodaten zu erzeugen, wählt man im Menü ''Datei'' den Menüpunkt ''Neues Szenario''. Daraufhin öffnet sich ein Fenster, in dem man verschiedene Einstellungen vornehmen kann (siehe Screenshot). Um diesen szenariospezifischen Inhalt (zusammen mit den Terraindaten) abzuspeichern, wählt man im Dateimenü den Punkt ''Szenario speichern unter''. Dabei wird sowohl eine .map- als auch eine .cfg-Datei erzeugt. Möchte man lediglich die Terraindaten (in einer .map-Datei) speichern, wählt man im Dateimenü den Punkt ''Karte speichern unter''.<br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69351BuildingScenarios/de2022-02-19T06:24:28Z<p>RufDerMacht: /* Sample Code */ trans</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit '''zusätzlichen Inhalten''' ausgestattet ist. Diese szenariospezifischen Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, nahezu beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie nicht etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden allerdings meistens durch den '''Karteneditor''' erzeugt, der in Wesnoth integriert ist. Siehe dazu [[#Szenarios und der Karteneditor|diesen Abschnitt]]. Eine allgemeinere Übersicht zum Thema Karten findet sich unter [[BuildingMaps/de|BuildingMaps]].<br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, mit Beispielen und Lösungen für jedes erdenkliche Problem beim Erstellen eines Szenarios.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== Die Wesnoth Markup Language (WML) ==<br />
<br />
Szenarios (bzw. alle für Wesnoth benötigten .cfg-Dateien) sind in der [[ReferenceWML|'''Wesnoth Markup Language''']] (abgekürzt '''WML''') geschrieben, einer sog. Auszeichnungssprache, die - wie der Name schon sagt - speziell für dieses Spiel kreiert worden ist. Sie verfügt über eine relativ einfache, auf '''Tags''' und '''Schlüsselworten''' basierende Syntax. Eine vollständige Anleitung dazu findet man auf [[SyntaxWML]].<br />
<br />
=== Übersicht der Tags ===<br />
<br />
Nachfolgend eine Übersicht über die grundlegenden WML-Tags, die man benötigt, um ein Szenario herzustellen. Die Verlinkungen verweisen auf die entsprechenden Themenseiten:<br />
<br />
:* [[ScenarioWML]]: Tags der obersten Ebene - [scenario], [multiplayer], [test], and [tutorial].<br />
:* [[IntroWML]]: Den Intro-Bildschirm einrichten.<br />
:* [[TimeWML]]: Den Tageszeitenplan einrichten.<br />
:* [[SideWML]]: Eine "side" beschreiben. "side" bedeutet in diesem Zusammenhang eine der Spielparteien.<br />
:** [[SingleUnitWML]]: Die Syntax einer einzelnen Einheit einer "side" definieren.<br />
:** [[ShroudDataWML]]: Die verdeckten Anteile einer Karte für eine "side" definieren.<br />
:* [[EventWML]]: Ein Ereignis innerhalb des Szenarios.<br />
:** [[FilterWML]]: Alles über Ereignis-Filter.<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]] - unterschiedliche Typen von Ereignissen. <br />
:* [[MapGeneratorWML]]: Der Zufallskarten-Generator.<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: Eine Auflistung nützlicher Makros.<br />
<br />
=== Beispielcode ===<br />
<br />
Auf der Seite [[BuildingScenariosSamples]] gibt es eine hübsche Sammlung von einfachem Codebeispielen. Dort werden die grundsätzliche Anwendung und die Struktur von WML in einem nachvollziehbaren Sinnzusammenhang gezeigt.<br />
<br />
== Szenarios und der Karteneditor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Szenariodaten im Editor</div></div><br />
</div><br />
<br />
Ab Wesnoth 1.12 ist der integrierte Karteneditor in der Lage, neben den reinen Kartendaten (also dem Terrain) auch szenariospezifische Daten zu erzeugen und abzuspeichern. Allerdings kann der Editor nur recht einfache Strukturen erzeugen, wie bestimmte Bezeichnungen, Einheitenplatzierung, grafische Elemente, Tageszeitenpläne und einiges mehr. Dadurch kann man sich eine Menge Arbeit sparen, wenngleich die weitere manuelle Bearbeitung der .cfg-Datei unumgänglich ist, um komplexeren WML-Code einzufügen.<br />
<br />
Um Szenariodaten zu erzeugen, wählt man im Menü ''Datei'' den Menüpunkt ''Neues Szenario''. Daraufhin öffnet sich ein Fenster, in dem man verschiedene Einstellungen vornehmen kann (siehe Screenshot). Um diesen szenariospezifischen Inhalt (zusammen mit den Terraindaten) abzuspeichern, wählt man im Dateimenü den Punkt ''Szenario speichern unter''. Dabei wird sowohl eine .map- als auch eine .cfg-Datei erzeugt. Möchte man lediglich die Terraindaten (in einer .map-Datei) speichern, wählt man im Dateimenü den Punkt ''Karte speichern unter''.<br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=Template:Create/de&diff=69350Template:Create/de2022-02-19T06:11:41Z<p>RufDerMacht: </p>
<hr />
<div><div class="navtemplate"><br />
<div style="float:right; margin:5px">https://raw.github.com/wesnoth/wesnoth/master/data/core/images/terrain/village/human3.png</div><br />
<dt style="font-size:120%; margin-bottom:5px">Leitfaden für Kreative</dt><br />
<dd>[[AddonStructure/de|Add-on-Struktur]] • [[BuildingMaps/de|Karten]] • [[BuildingScenarios/de|Szenarios]] • [[BuildingCampaigns/de|Kampagnen]] • [[MultiplayerContent/de|Multiplayer-Inhalte]] • [[BuildingUnits/de|Einheiten]] • [[Distributing_content/de|Erweiterungen veröffentlichen]]</dd><br />
</div><br />
<br />
<includeonly>[[Category:Create]]</includeonly><br />
<noinclude>{{template}}</noinclude></div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=Create/de&diff=69349Create/de2022-02-19T06:11:05Z<p>RufDerMacht: /* Vorwort */</p>
<hr />
<div>{{Translations}}<br />
<div class="tright"> __TOC__ </div><br />
<br />
Interessiert daran, deine Ideen zu verwirklichen? Wesnoth ist so erweiterbar, dass Spieler einfach neue Karten, Einheiten, Rassen, Szenarios, Grafiken, Musik, sowie ganze Kampagnen erstellen können!<br />
<br />
Das Innere des Spiels zu modifizieren ist zugleich einfach und schwer (easy to learn, hard to master); mit bloß einem UTF-8 Texteditor hast du schon alles, um deine eigene Welt zu gestalten! Wesnoth Markup Language (WML) zu lernen, braucht aber etwas Zeit. Diese Sektion wird dich durch den Prozess führen, deine eigenen Inhalte zu erstellen wie auch zu veröffentlichen. <br />
<br />
Vergesse nicht, dass du jederzeit nach Unterstützung fragen und mit anderen auf den Wesnothforen zusammenarbeiten kannst.<br />
<br />
== Vorwort ==<br />
<br />
Bevor du jetzt irgendwas erstellst oder modifizierst, musst du erstmal verstehen wie das Spiel Daten speichert wie auch organisiert. In den folgenden Untersektionen werden die Verzeichnisstruktur des Spiels wie auch das Spielerverzeichnis erklärt. (Die meisten Links verfügen bis jetzt noch über keine deutschen Übersetzungen und liegen nur in Englisch vor)<br />
* [[EditingWesnoth/de|EditingWesnoth]]<br />
* [[AddonStructure/de|Add-on-Struktur]]<br />
<br />
== Was man erstellen kann und wie ==<br />
[[File:Wesnoth-1.5.10-editor.png|thumb|Leicht benutzbarer Karteneditor]]<br />
<br />
* [[WML for Complete Beginners|WML Tutorial]] - Einführung zu WML ''(In Bearbeitung)''<br />
* [[BuildingMaps|Karten]] - das Schlachtfeld, auf dem gespielt wird<br />
* [[BuildingScenarios|Szenarien]] - etwas auf der Karte passieren lassen und es überhaupt spielbar zu machen<br />
* [[BuildingCampaigns/de|Kampagnen (de)]] - das alles in eine Kampagne zusammenfassen<br />
* [[MultiplayerContent|Mehrspieler Kampagnen und Szenarien]] - deine Inhalte für den Mehrspielermodus fähig zu machen<br />
* [[BuildingUnits/de|Eigene Einheiten (de)]] - eigene Truppen erstellen<br />
* [[Distributing content|Inhalte veröffentlichen]] - alles über die Add-on-Server<br />
* [[Create Art|Grafiken]] - mit '''Tutorials!'''<br />
* [[Create Music|Musik]]<br />
* [[Create Writing|Schreiben]]<br />
* [[Wesnoth AI|Künstliche Intelligenz/KI]] - eine KI erstellen und dessen Verhalten bearbeiten<br />
* [[WesnothTranslations|Übersetzungen]] - Wesnoth übersetzen<br />
* [[Authoring tools]] - Werkzeuge, die dir helfen WML für Kampagnen zu erstellen<br />
* [[Maintenance tools]] - Werkzeuge zur Prüfung und Erhaltung von Kampagnen<br />
<br />
== Was andere gemacht haben ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/wiki-images/umc-example-1.12.jpg https://www.wesnoth.org/wiki-images/umc-example-1.12-175.jpg]<br />
<div class="thumbcaption"><i>After the Storm</i>, eine UMC Kampagne</div></div><br />
</div><br />
Es gibt eine Vielzahl an Mehrspieler Fraktionen, Zeitaltern, Mehrspielerkarten und Diskussionen von Kampagnen auf den [https://forums.wesnoth.org/ Wesnoth Foren]<br />
* [https://forums.wesnoth.org/viewforum.php?f=8 Szenario- und Kampagnen-entwicklungsforum]<br />
* [https://forums.wesnoth.org/viewforum.php?f=15 Mehrspielerentwicklungsforum]<br />
* [https://forums.wesnoth.org/viewforum.php?f=19 Fraktionen- und Zeitalterentwicklungsforum]<br />
* [[Guide_to_UMC_Content|Leitfaden zu UMC Inhalten]]<br />
* [[Player_UMC_Reviews|Spieler UMC Rezensionen]]<br />
<br />
Falls du dich entfalten willst, ohne eine ganze Kampagne zu erstellen, haben wir paar versteckte Schätze:<br />
* Ein Forenthread über [https://forums.wesnoth.org/viewtopic.php?t=17171 aufgegebene Kampagnen] <br />
* Ein [https://docs.google.com/spreadsheets/d/1C3RJNgIfYY6H6wU73drO8qSByelZNBXra-pvwNEu8RQ/edit?usp=drive_web&ouid=109233572392013695552 Google-sheet Dokument]<br />
* Eine eigene [https://wiki.wesnoth.org/Abandoned Seite auf dem Wiki]. <br />
Du solltest in der Lage sein, eine davon zu übernehmen und das mit weniger Aufwand, als eine neue Kampagnen von Grund auf zu erstellen.<br />
<br />
== Die Welt Wesnoths ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/wiki-images/wesnoth-map-1.12.jpg https://www.wesnoth.org/wiki-images/wesnoth-map-1.12-175.jpg]<br />
<div class="thumbcaption">Der große Kontinent</div></div><br />
</div><br />
Nicht alle Kampagnen geschehen in Wesnoth, aber die meisten davon tun es. Diese können dann auf der ausgearbeiteten Rahmenhandlung Wesnoths aufbauen. <br />
* [[Timeline of Wesnoth|Zeitline Wesnoths]]<br />
* [[Geography of Wesnoth|Geographie Wesnoths]]<br />
* [[Races|Rassen und Gestalten Wesnoths]]<br />
* [[Poetry of Wesnoth|Wesnothische Poesie]]<br />
<br />
== Verschiedenes ==<br />
<br />
* [[ReferenceWML|WML Referenz]] - eine Übersicht über alle WML-Befehle<br />
* [[FAQ]] - wenn du Fragen hast, stell sie ruhig<br />
* [https://addons.wesnoth.org Add-on server web interface] - Eine Alternative, um von Nutzern erstellte Inhalte herunterzuladen<br />
<br />
== Website Übersetzen ==<br />
Wir brauchen Hilfe dabei die Seiten ins Deutsche zu Übersetzen. Es wäre schön, wenn auch Leute die kein Englisch sprechen, das Wiki benutzen können. Bei Fragen dazu einfach ins Forum schreiben.<br />
<br />
[[Category:Create|*]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=ShroudDataWML&diff=69346ShroudDataWML2022-02-16T09:44:39Z<p>RufDerMacht: header fix</p>
<hr />
<div>== Making 'shroud_data' ==<br />
<br />
As pointed out in [[SideWML]] you can add the key shroud_data to a [side] tag to describe what parts of the map should be shrouded for a side and what parts not. This comes in handy when you need to unshroud a large part of the map from the start of the game. When you would use the [remove_shroud] tag for that purpose (eg in the prestart event) you would have to a list of x,y coordinates and this can become somewhat lengthy, and it's difficult to find out what coordinates need to be set.<br />
<br />
This tutorial is going to make a file containing the data that will unshroud those parts of the map you'd like to see unshrouded.<br />
All you need is:<br />
* the wesnoth map editor<br />
* your favorite text editor (with a search & replace function)<br />
* a spreadsheet like Microsoft Excel or Libreoffice Calc<br />
<br />
== Making your map ==<br />
First of all you will need a map. This can be made in the wesnoth map editor (see [[BuildingMaps]] for more information)<br />
Once you've got that, make a copy. If you like to, you can renaim this copy to eg MapName_Shroud to indicate this file will contain the shroud data.<br />
<br />
== Selecting what tiles will be unshrouded + flipping the map ==<br />
(Open MapName_Shroud again in the editor if you closed it)<br />
You can now select the tiles in the editor you want to be unshrouded. Hold shift and click left to (un)select a single tile and hold shift+alt and click left to select adjecent terrain tiles of the same type.<br />
Now fill your selection with one terrain type, and then select all the other tiles and fill it with another type.<br />
<br />
Once that's done, you can save again and quit the editor.<br />
<br />
Import the file in your spreadsheet (in Openoffice.org: Insert->Sheet From File) and select the comma as seperator. You should see an example of what it will look like, if each lettercombination has it's own cell, then things are good.<br />
Select all of the cells and press ctrl+x (Edit->Cut). Then select the top left most cell on the sheet and right click in it. Select 'Paste special'. A dialog window appears. There should be a checkbox name 'transpose', check it.<br />
Now you've switched the rows and columns in the map. Select all of your cells again and press ctrl+c (Edit->Copy).<br />
Open your favorite text editor and press ctrl+v in a new file. Save this file over your MapName_Shroud file.<br />
<br />
== Rewriting the data of the map ==<br />
(Open MapName_Shroud in your text editor if you closed it)<br />
Now you'll see a (text) table containing the map data. You should see only two letter combinations are present, one for the shrouded part and one without. Use search and replace to search for the 'unshroud' letter combination (include leading and trailing spaces) and replace it with a '1' (without quotes). Then do the same for the 'shroud' combination and replace it with a '0'.<br />
Make sure nothing separates the zeros from the ones.<br />
Once All that is done you only need to add a pipe in front of each line in this file. The result should look something like this:<br />
<br />
|000000000000000000<br />
|000000000000000000<br />
|000000000000000000<br />
|000001111111000000<br />
|000001111111000000<br />
|000001111111000000<br />
|000001111111000000<br />
|000001111111000000<br />
<br />
Save the file and reference it in you scenario .cfg-file like this (make sure the quotes are present, if not this will break the file):<br />
<br />
[side]<br />
...<br />
shroud_data="{@url/MapName_Shroud}"<br />
...<br />
[/side]<br />
<br />
Happy Unshrouding!<br />
<br />
== Fog Data ==<br />
The same holds true for setting fog in scenarios (though of limited use), just replace ''shroud_data'' with ''fog_data'' in the side definition.<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69345BuildingScenarios/de2022-02-16T09:34:38Z<p>RufDerMacht: /* The Wesnoth Markup Language */ trans</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit '''zusätzlichen Inhalten''' ausgestattet ist. Diese szenariospezifischen Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, nahezu beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie nicht etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden allerdings meistens durch den '''Karteneditor''' erzeugt, der in Wesnoth integriert ist. Siehe dazu [[#Szenarios und der Karteneditor|diesen Abschnitt]]. Eine allgemeinere Übersicht zum Thema Karten findet sich unter [[BuildingMaps/de|BuildingMaps]].<br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, mit Beispielen und Lösungen für jedes erdenkliche Problem beim Erstellen eines Szenarios.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== Die Wesnoth Markup Language (WML) ==<br />
<br />
Szenarios (bzw. alle für Wesnoth benötigten .cfg-Dateien) sind in der [[ReferenceWML|'''Wesnoth Markup Language''']] (abgekürzt '''WML''') geschrieben, einer sog. Auszeichnungssprache, die - wie der Name schon sagt - speziell für dieses Spiel kreiert worden ist. Sie verfügt über eine relativ einfache, auf '''Tags''' und '''Schlüsselworten''' basierende Syntax. Eine vollständige Anleitung dazu findet man auf [[SyntaxWML]].<br />
<br />
=== Übersicht der Tags ===<br />
<br />
Nachfolgend eine Übersicht über die grundlegenden WML-Tags, die man benötigt, um ein Szenario herzustellen. Die Verlinkungen verweisen auf die entsprechenden Themenseiten:<br />
<br />
:* [[ScenarioWML]]: Tags der obersten Ebene - [scenario], [multiplayer], [test], and [tutorial].<br />
:* [[IntroWML]]: Den Intro-Bildschirm einrichten.<br />
:* [[TimeWML]]: Den Tageszeitenplan einrichten.<br />
:* [[SideWML]]: Eine "side" beschreiben. "side" bedeutet in diesem Zusammenhang eine der Spielparteien.<br />
:** [[SingleUnitWML]]: Die Syntax einer einzelnen Einheit einer "side" definieren.<br />
:** [[ShroudDataWML]]: Die verdeckten Anteile einer Karte für eine "side" definieren.<br />
:* [[EventWML]]: Ein Ereignis innerhalb des Szenarios.<br />
:** [[FilterWML]]: Alles über Ereignis-Filter.<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]] - unterschiedliche Typen von Ereignissen. <br />
:* [[MapGeneratorWML]]: Der Zufallskarten-Generator.<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: Eine Auflistung nützlicher Makros.<br />
<br />
=== Sample Code ===<br />
<br />
A nice collection of simple beginner code to look at is documented on the [[BuildingScenariosSamples | Samples]] page, showcasing the basic usage and structure of WML in an actual coding sense.<br />
<br />
== Szenarios und der Karteneditor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Szenariodaten im Editor</div></div><br />
</div><br />
<br />
Ab Wesnoth 1.12 ist der integrierte Karteneditor in der Lage, neben den reinen Kartendaten (also dem Terrain) auch szenariospezifische Daten zu erzeugen und abzuspeichern. Allerdings kann der Editor nur recht einfache Strukturen erzeugen, wie bestimmte Bezeichnungen, Einheitenplatzierung, grafische Elemente, Tageszeitenpläne und einiges mehr. Dadurch kann man sich eine Menge Arbeit sparen, wenngleich die weitere manuelle Bearbeitung der .cfg-Datei unumgänglich ist, um komplexeren WML-Code einzufügen.<br />
<br />
Um Szenariodaten zu erzeugen, wählt man im Menü ''Datei'' den Menüpunkt ''Neues Szenario''. Daraufhin öffnet sich ein Fenster, in dem man verschiedene Einstellungen vornehmen kann (siehe Screenshot). Um diesen szenariospezifischen Inhalt (zusammen mit den Terraindaten) abzuspeichern, wählt man im Dateimenü den Punkt ''Szenario speichern unter''. Dabei wird sowohl eine .map- als auch eine .cfg-Datei erzeugt. Möchte man lediglich die Terraindaten (in einer .map-Datei) speichern, wählt man im Dateimenü den Punkt ''Karte speichern unter''.<br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69344BuildingScenarios/de2022-02-16T08:47:15Z<p>RufDerMacht: trans</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit '''zusätzlichen Inhalten''' ausgestattet ist. Diese szenariospezifischen Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, nahezu beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie nicht etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden allerdings meistens durch den '''Karteneditor''' erzeugt, der in Wesnoth integriert ist. Siehe dazu [[#Szenarios und der Karteneditor|diesen Abschnitt]]. Eine allgemeinere Übersicht zum Thema Karten findet sich unter [[BuildingMaps/de|BuildingMaps]].<br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, mit Beispielen und Lösungen für jedes erdenkliche Problem beim Erstellen eines Szenarios.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== The Wesnoth Markup Language ==<br />
<br />
Scenarios are written in the [[ReferenceWML|Wesnoth Markup Language]] (WML), a custom language written specially to work with the game. It sports a relatively simple tag/key-based syntax, a complete guide to which can be found on the [[SyntaxWML]] page.<br />
<br />
=== Quick Tag Index ===<br />
<br />
Below follows an index of the basic WML tags used to create scenarios.<br />
<br />
:* [[ScenarioWML]]: The top level tags [scenario], [multiplayer], [test], and [tutorial]<br />
:* [[IntroWML]]: Setting up the intro screen<br />
:* [[TimeWML]]: Setting up the time schedule<br />
:* [[SideWML]]: Describing a side<br />
:** [[SingleUnitWML]]: The syntax of a single unit<br />
:** [[ShroudDataWML]]<br />
:* [[EventWML]]: An event that happens in the scenario<br />
:** [[FilterWML]]: All about filters<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]]<br />
:* [[MapGeneratorWML]]: The random map generator<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: A set of useful macro shortcuts you can use<br />
<br />
=== Sample Code ===<br />
<br />
A nice collection of simple beginner code to look at is documented on the [[BuildingScenariosSamples | Samples]] page, showcasing the basic usage and structure of WML in an actual coding sense.<br />
<br />
== Szenarios und der Karteneditor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Szenariodaten im Editor</div></div><br />
</div><br />
<br />
Ab Wesnoth 1.12 ist der integrierte Karteneditor in der Lage, neben den reinen Kartendaten (also dem Terrain) auch szenariospezifische Daten zu erzeugen und abzuspeichern. Allerdings kann der Editor nur recht einfache Strukturen erzeugen, wie bestimmte Bezeichnungen, Einheitenplatzierung, grafische Elemente, Tageszeitenpläne und einiges mehr. Dadurch kann man sich eine Menge Arbeit sparen, wenngleich die weitere manuelle Bearbeitung der .cfg-Datei unumgänglich ist, um komplexeren WML-Code einzufügen.<br />
<br />
Um Szenariodaten zu erzeugen, wählt man im Menü ''Datei'' den Menüpunkt ''Neues Szenario''. Daraufhin öffnet sich ein Fenster, in dem man verschiedene Einstellungen vornehmen kann (siehe Screenshot). Um diesen szenariospezifischen Inhalt (zusammen mit den Terraindaten) abzuspeichern, wählt man im Dateimenü den Punkt ''Szenario speichern unter''. Dabei wird sowohl eine .map- als auch eine .cfg-Datei erzeugt. Möchte man lediglich die Terraindaten (in einer .map-Datei) speichern, wählt man im Dateimenü den Punkt ''Karte speichern unter''.<br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69343BuildingScenarios/de2022-02-16T07:16:41Z<p>RufDerMacht: /* Einleitung */ new section to better structurize the page, translation</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit zusätzlichen Inhalten ausgestattet ist. Diese Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der '''Kartendatei''' (Endung '''.map''') und der '''Konfigurationsdatei''' (Endung '''.cfg'''). Beide Dateien sind '''reine Textdateien''' und können mittels eines Texteditors auch manuell bearbeitet werden <small>(in diesem Fall ist beim Speichern darauf zu achten, sie nicht etwa im Rich Text Format (RTF) o.ä. abzuspeichern, da sie dann nicht mehr durch das Spiel lesbar sind)</small>.<br />
<br />
Sowohl Karten- als auch szenariospezifische Konfigurationsdateien werden allerdings meistens durch den Karteneditor erzeugt, der in Wesnoth integriert ist. Im Karteneditor gibt es zwei Speicheroptionen: Eine speichert nur die Terraindaten in einer .map-Datei, die zweite speichert die .map-Datei zusammen mit der .cfg-Datei. Details dazu unter [[BuildingMaps/de|BuildingMaps]]<br />
<br />
Die .cfg enthält also die eigentlichen szenariospezifischen Daten, die über das reine Terrain hinausgehen, also etwa Verweise auf Musik, Einheiten, Ereignisse, Parteien, und so weiter. Darüber hinaus sind meistens eine ganze Reihe weiterer Konfigurationsdateien notwendig, um ein Szenario zu gestalten. Alle .cfg-Dateien werden in aller Regel manuell nachbearbeitet, auch weil mit dem Karteneditor nicht alle möglichen Merkmale editiert werden können. <br />
<br />
Um sich mit .map- und .cfg-Dateien und der zugrunde liegenden Verzeichnisstruktur vertraut zu machen, ist es sinnvoll, sich die vom Spiel mitgelieferten Dateien anzuschauen. Dort werden ein große Bandbreite an Techniken verwendet, vermutlich auch mit Beispielen für eine bestimmte Hürde, die beim Erstellen eines Szenarios auftauchen mag.<br />
<br />
Außerdem gibt es natürlich die Möglichkeit, auf das [https://forums.wesnoth.org/viewforum.php?f=23 Forum] zurückzugreifen oder seine Fragen im [https://discord.com/channels/231976805987385345/442775044590927873 Chat] loszuwerden.<br />
<br />
== The Wesnoth Markup Language ==<br />
<br />
Scenarios are written in the [[ReferenceWML|Wesnoth Markup Language]] (WML), a custom language written specially to work with the game. It sports a relatively simple tag/key-based syntax, a complete guide to which can be found on the [[SyntaxWML]] page.<br />
<br />
=== Quick Tag Index ===<br />
<br />
Below follows an index of the basic WML tags used to create scenarios.<br />
<br />
:* [[ScenarioWML]]: The top level tags [scenario], [multiplayer], [test], and [tutorial]<br />
:* [[IntroWML]]: Setting up the intro screen<br />
:* [[TimeWML]]: Setting up the time schedule<br />
:* [[SideWML]]: Describing a side<br />
:** [[SingleUnitWML]]: The syntax of a single unit<br />
:** [[ShroudDataWML]]<br />
:* [[EventWML]]: An event that happens in the scenario<br />
:** [[FilterWML]]: All about filters<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]]<br />
:* [[MapGeneratorWML]]: The random map generator<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: A set of useful macro shortcuts you can use<br />
<br />
=== Sample Code ===<br />
<br />
A nice collection of simple beginner code to look at is documented on the [[BuildingScenariosSamples | Samples]] page, showcasing the basic usage and structure of WML in an actual coding sense.<br />
<br />
== Scenarios and the Map Editor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Scenario Data</div></div><br />
</div><br />
<br />
As of Wesnoth 1.12, the Map Editor has become more fully featured, and includes options to define more basic scenario-related content for your scenario, such as name, unit placement, graphical items, time of day schedules, etc, without having to manually write the code yourself. However, the editor cannot create more complex WML. Those interesting snippets still have to be written by hand. These functions are most useful for creating a simple scenario from a map, or streamlining your workflow in creating a more complicated scenario.<br />
<br />
In order to edit scenario metadata, select <i>File → New Scenario</i>. By default, the editor opens with a blank map file open only.<br />
<br />
<b>NOTE: Scenario-specific content will not be saved unless you also select the <i>File → Save Scenario</i> option before exit. Otherwise, you will simply get a map file.</b><br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69342BuildingScenarios/de2022-02-15T23:03:52Z<p>RufDerMacht: trans to be continued</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">Die Belagerung der Elfen</div></div><br />
</div><br />
<br />
Ein Szenario ist in Wesnoth eine spielbare Karte, die mit zusätzlichen Inhalten ausgestattet ist. Diese Inhalte können beispielweise verschiedene Verbündete oder Parteien sein, die mit- oder gegeneinander kämpfen, besondere Einheiten und Charaktere mit Dialogen, benutzerdefinierte Gegenstände mit speziellen Eigenschaften, oder etwa Ereignisse, die unter bestimmten Bedingungen ausgelöst werden. Diese Inhalte werden in den nachfolgenden Abschnitten erläutert.<br />
<br />
== Einleitung ==<br />
Wie schon erwähnt, besteht ein Szenario aus zwei Teilen: einer Karte und den zugehörigen, beliebig komplexen Zusatzinhalten. Das entspricht den beiden Dateien eines Szenarios: der Kartendatei und der Konfigurationsdatei. Das Erstellen einer Karte und wird in [[BuildingMaps/de|BuildingMaps]] erklärt. Die Kartendatei wird erstellt, wenn man im Karteneditor die Option "Als Karte speichern" wählt.<br />
<br />
Each scenario is made up of two files: the map file and the configuration file. The former, the map itself, is discussed in [[BuildingMaps]]. The latter describes everything about, and what occurs in, a scenario, from the setup of sides, units, music, events, and so on. Both files are plaintext are can be edited in any standard text editor. If you decide to use a wordprocessor, please make sure to <i>Save As</i> text (preferably with a <i>.cfg</i> extension), not as rich text.<br />
<br />
Remember that you can use the scenarios that ship with the game for reference should you get stuck. They cover a wide range of techniques, so it's likely you'll find an example of what you need.<br />
<br />
If you still don't understand something or can't get it to work, feel free to ask for assistance in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop] on the forums.<br />
<br />
== The Wesnoth Markup Language ==<br />
<br />
Scenarios are written in the [[ReferenceWML|Wesnoth Markup Language]] (WML), a custom language written specially to work with the game. It sports a relatively simple tag/key-based syntax, a complete guide to which can be found on the [[SyntaxWML]] page.<br />
<br />
=== Quick Tag Index ===<br />
<br />
Below follows an index of the basic WML tags used to create scenarios.<br />
<br />
:* [[ScenarioWML]]: The top level tags [scenario], [multiplayer], [test], and [tutorial]<br />
:* [[IntroWML]]: Setting up the intro screen<br />
:* [[TimeWML]]: Setting up the time schedule<br />
:* [[SideWML]]: Describing a side<br />
:** [[SingleUnitWML]]: The syntax of a single unit<br />
:** [[ShroudDataWML]]<br />
:* [[EventWML]]: An event that happens in the scenario<br />
:** [[FilterWML]]: All about filters<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]]<br />
:* [[MapGeneratorWML]]: The random map generator<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: A set of useful macro shortcuts you can use<br />
<br />
=== Sample Code ===<br />
<br />
A nice collection of simple beginner code to look at is documented on the [[BuildingScenariosSamples | Samples]] page, showcasing the basic usage and structure of WML in an actual coding sense.<br />
<br />
== Scenarios and the Map Editor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Scenario Data</div></div><br />
</div><br />
<br />
As of Wesnoth 1.12, the Map Editor has become more fully featured, and includes options to define more basic scenario-related content for your scenario, such as name, unit placement, graphical items, time of day schedules, etc, without having to manually write the code yourself. However, the editor cannot create more complex WML. Those interesting snippets still have to be written by hand. These functions are most useful for creating a simple scenario from a map, or streamlining your workflow in creating a more complicated scenario.<br />
<br />
In order to edit scenario metadata, select <i>File → New Scenario</i>. By default, the editor opens with a blank map file open only.<br />
<br />
<b>NOTE: Scenario-specific content will not be saved unless you also select the <i>File → Save Scenario</i> option before exit. Otherwise, you will simply get a map file.</b><br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69341BuildingScenarios/de2022-02-15T09:51:09Z<p>RufDerMacht: Inserted geman guide template</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">The Elves Besieged</div></div><br />
</div><br />
<br />
Wesnoth scenarios are the individual levels within the game. They can be as simple or advanced as you choose, ranging from two sides who must fight each other to multiple sides with different characters, custom items, and complicated events. This page is split into several sections, starting with the basics and moving into more complex techniques. When you're done, you should have all the knowledge necessary to create your own scenarios.<br />
<br />
Each scenario is made up of two files: the map file and the configuration file. The former, the map itself, is discussed in [[BuildingMaps]]. The latter describes everything about, and what occurs in, a scenario, from the setup of sides, units, music, events, and so on. Both files are plaintext are can be edited in any standard text editor. If you decide to use a wordprocessor, please make sure to <i>Save As</i> text (preferably with a <i>.cfg</i> extension), not as rich text.<br />
<br />
Remember that you can use the scenarios that ship with the game for reference should you get stuck. They cover a wide range of techniques, so it's likely you'll find an example of what you need.<br />
<br />
If you still don't understand something or can't get it to work, feel free to ask for assistance in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop] on the forums.<br />
<br />
== The Wesnoth Markup Language ==<br />
<br />
Scenarios are written in the [[ReferenceWML|Wesnoth Markup Language]] (WML), a custom language written specially to work with the game. It sports a relatively simple tag/key-based syntax, a complete guide to which can be found on the [[SyntaxWML]] page.<br />
<br />
=== Quick Tag Index ===<br />
<br />
Below follows an index of the basic WML tags used to create scenarios.<br />
<br />
:* [[ScenarioWML]]: The top level tags [scenario], [multiplayer], [test], and [tutorial]<br />
:* [[IntroWML]]: Setting up the intro screen<br />
:* [[TimeWML]]: Setting up the time schedule<br />
:* [[SideWML]]: Describing a side<br />
:** [[SingleUnitWML]]: The syntax of a single unit<br />
:** [[ShroudDataWML]]<br />
:* [[EventWML]]: An event that happens in the scenario<br />
:** [[FilterWML]]: All about filters<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]]<br />
:* [[MapGeneratorWML]]: The random map generator<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: A set of useful macro shortcuts you can use<br />
<br />
=== Sample Code ===<br />
<br />
A nice collection of simple beginner code to look at is documented on the [[BuildingScenariosSamples | Samples]] page, showcasing the basic usage and structure of WML in an actual coding sense.<br />
<br />
== Scenarios and the Map Editor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Scenario Data</div></div><br />
</div><br />
<br />
As of Wesnoth 1.12, the Map Editor has become more fully featured, and includes options to define more basic scenario-related content for your scenario, such as name, unit placement, graphical items, time of day schedules, etc, without having to manually write the code yourself. However, the editor cannot create more complex WML. Those interesting snippets still have to be written by hand. These functions are most useful for creating a simple scenario from a map, or streamlining your workflow in creating a more complicated scenario.<br />
<br />
In order to edit scenario metadata, select <i>File → New Scenario</i>. By default, the editor opens with a blank map file open only.<br />
<br />
<b>NOTE: Scenario-specific content will not be saved unless you also select the <i>File → Save Scenario</i> option before exit. Otherwise, you will simply get a map file.</b><br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingScenarios/de&diff=69340BuildingScenarios/de2022-02-15T09:43:34Z<p>RufDerMacht: created german page. soon begin to translate</p>
<hr />
<div>{{Translations}}<br />
{| style="float:right"<br />
|<br />
__NOTOC__<br />
|}<br />
<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-1-175.jpg]<br />
<div class="thumbcaption">The Elves Besieged</div></div><br />
</div><br />
<br />
Wesnoth scenarios are the individual levels within the game. They can be as simple or advanced as you choose, ranging from two sides who must fight each other to multiple sides with different characters, custom items, and complicated events. This page is split into several sections, starting with the basics and moving into more complex techniques. When you're done, you should have all the knowledge necessary to create your own scenarios.<br />
<br />
Each scenario is made up of two files: the map file and the configuration file. The former, the map itself, is discussed in [[BuildingMaps]]. The latter describes everything about, and what occurs in, a scenario, from the setup of sides, units, music, events, and so on. Both files are plaintext are can be edited in any standard text editor. If you decide to use a wordprocessor, please make sure to <i>Save As</i> text (preferably with a <i>.cfg</i> extension), not as rich text.<br />
<br />
Remember that you can use the scenarios that ship with the game for reference should you get stuck. They cover a wide range of techniques, so it's likely you'll find an example of what you need.<br />
<br />
If you still don't understand something or can't get it to work, feel free to ask for assistance in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop] on the forums.<br />
<br />
== The Wesnoth Markup Language ==<br />
<br />
Scenarios are written in the [[ReferenceWML|Wesnoth Markup Language]] (WML), a custom language written specially to work with the game. It sports a relatively simple tag/key-based syntax, a complete guide to which can be found on the [[SyntaxWML]] page.<br />
<br />
=== Quick Tag Index ===<br />
<br />
Below follows an index of the basic WML tags used to create scenarios.<br />
<br />
:* [[ScenarioWML]]: The top level tags [scenario], [multiplayer], [test], and [tutorial]<br />
:* [[IntroWML]]: Setting up the intro screen<br />
:* [[TimeWML]]: Setting up the time schedule<br />
:* [[SideWML]]: Describing a side<br />
:** [[SingleUnitWML]]: The syntax of a single unit<br />
:** [[ShroudDataWML]]<br />
:* [[EventWML]]: An event that happens in the scenario<br />
:** [[FilterWML]]: All about filters<br />
:** [[DirectActionsWML]], [[InterfaceActionsWML]], [[InternalActionsWML]]<br />
:* [[MapGeneratorWML]]: The random map generator<br />
:* [https://www.wesnoth.org/macro-reference.html Macro Reference]: A set of useful macro shortcuts you can use<br />
<br />
=== Sample Code ===<br />
<br />
A nice collection of simple beginner code to look at is documented on the [[BuildingScenariosSamples | Samples]] page, showcasing the basic usage and structure of WML in an actual coding sense.<br />
<br />
== Scenarios and the Map Editor ==<br />
<br />
<div class="thumb tright"><div><br />
[https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5.jpg https://www.wesnoth.org/images/sshots/wesnoth-1.11.8-5-175.jpg]<br />
<div class="thumbcaption">Scenario Data</div></div><br />
</div><br />
<br />
As of Wesnoth 1.12, the Map Editor has become more fully featured, and includes options to define more basic scenario-related content for your scenario, such as name, unit placement, graphical items, time of day schedules, etc, without having to manually write the code yourself. However, the editor cannot create more complex WML. Those interesting snippets still have to be written by hand. These functions are most useful for creating a simple scenario from a map, or streamlining your workflow in creating a more complicated scenario.<br />
<br />
In order to edit scenario metadata, select <i>File → New Scenario</i>. By default, the editor opens with a blank map file open only.<br />
<br />
<b>NOTE: Scenario-specific content will not be saved unless you also select the <i>File → Save Scenario</i> option before exit. Otherwise, you will simply get a map file.</b><br />
<br />
== Building Your Scenario ==<br />
<br />
:<b>• [[BuildingScenariosSimple|Simple]] • [[BuildingScenariosIntermediate|Intermediate]] • [[BuildingScenariosAdvanced|Advanced]]</b><br />
<br />
Creating a scenario is no simple task. Generally, you should have a premise mapped out for the scenario before you begin. Who will your protagonists face? What events will occur? How long will it be? You might decide to revise your plans as you code and test them. It will generally take many iterations of writing, coding, and playtesting until your scenario reaches a product you are satisfied with.<br />
<br />
A discussion on tweaking and balancing your scenario to make it more fun is found on the [[BuildingScenariosBalancing|Balancing]] page. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html Campaign Design How-To] article, and as mentioned before, don't hesitate to ask for help in the [https://forums.wesnoth.org/viewforum.php?f=23 WML Workshop].<br />
<br />
A handy breakdown of the code of a scenario, line-by-line, is available on the three pages linked here. Each explores gradually more complex WML concepts.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]] - WML master reference</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingUnits/de&diff=69339BuildingUnits/de2022-02-15T09:32:50Z<p>RufDerMacht: Inserted geman guide template</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
{| style="float:right; margin-left:1em;" <br />
|__TOC__ <br />
|}<br />
<br />
Wenn man eigene Inhalte erstellt, liegt es nahe dabei mindestens eine coole neue Einheit zu erstellen. Dieser Leitfaden wird dich dabei unterstützen, eine neue Einheit zu erstellen und dir erörtern, wie man diese im Spiel benutzen kann. <br />
<br />
Bevor du anfängst, solltest du dir ins Gedächtnis rufen, dass der <b>[[UnitTypeWML | [unit_type]]]</b> tag eine neu Art Einheit erstellt. Der <b>[[SingleUnitWML | [unit]]]</b> tag erlaubt es dir, diese Einheit im Szenario zu verwenden, was im Folgenden näher erläutert wird.<br />
<br />
== Eine eigene Einheit erstellen ==<br />
<br />
Der einfachste Weg, um eine neue Einheit zu erstellen, wäre die Konfigurationsdatei einer existierenden zu duplizieren und danach zu modifizieren. Alle Einheiten des Spiels können im <i>data/core/units</i> Verzeichnis gefunden werden. (siehe [[EditingWesnoth]]) <br />
<br />
Bei der Editierung der Datei, solltest du auf die Eigenschaftsschlüssel achtgeben. Wenn du vergisst, jeden Schlüssel zu modifizieren, (beispielsweise der einzigartige id-Schlüssel) werden höchst wahrscheinlich einige Probleme auftreten, die verschieden schwerwiegend sein können. Die würden dann von der Nichtpräsenz von Eigenschaften der Einheit bis dazu reichen, dass das Spiel die Datei nicht laden wird. Im schlimmsten Fall sogar zu einem Spielabsturz...<br />
<br />
Einen kompletten Überblick zu Eigenschaften von Einheiten findest du bei [[UnitTypeWML]]. Die meisten sind aber selbsterklärend für Leute, die Wesnoth schon lange gespielt haben. Die tags sind zwar kurz, aber beschreiben das, was sie machen schon ganz gut.<br />
<br />
Es gibt einige wichtige Grundlagen:<br />
<br />
* Die erste Eigenschaft einer Einheitenart ist der <b>id=</b> Schlüssel, der für jede einzigartig ist. Benutze die id immer, wenn du auf die Einheitenart in einem Szenario verweist. Die id ist nicht übertragbar. Der <b>name=</b> Schlüssel ist der angezeigte Name der Einheitenart, der im Hilfsmenü, der Statustabelle und auf der Seitenleiste zu sehen ist, er kann hingegen übertragen werden. Du kannst somit eine komplexe id, aber einen einfachen Namen vergeben. Beachte, dass dieser <b>NICHT</b> der selbe Name wie der einer spezifischen Instanz einer Einheit, die durch [unit] erstellt wurde, sein darf.<br />
* Beim Verweis auf die neue Truppenart, muss die id wörtlich ohne Tippfehler mit Groß- und Kleinschreibung wiedergegeben werden. Wenn du das nicht beachtest, wird dich das Spiel höchstwahrscheinlich mit ,,Unbekannte Einheit"-Fehlern überschwemmen.<br />
* Setze <b>movement=</b> niemals 0. Es würde in ein komisches, unendliches Bewegungsverhalten resultieren, was vielleicht in der Zukunft behoben wird. Also setze fürs Erste, um eine bewegungslose Einheit zu haben, ,,movement" auf 1 und benutze [movement_costs], damit die Einheit auf keinem Gelände fähig ist, sich zu bewegen.<br />
<br />
== Die eigene Einheit benutzen ==<br />
<br />
Die Konfigurationsdateien von eigenen Einheiten sollten in dem <i>,,units"</i> -Verzeichnis deines add-ons platziert werden. Deren eigene Grafiken gehören dann in das <i>images/units</i> Verzeichnis. Das <i>units</i> Verzeichnis musst du übrigens in deiner _main.cfg erwähnen. Die Einbeziehung dieses Verzeichnis sollte aber in einem <b>[+units][/units]</b> tag Paar erfolgen. Für Beispiele siehe [[AddonStructure]]. <br />
<br />
Sämtliche Einheiten in diesem Verzeichnis werden nun in jeglicher Datei erreichbar sein, die durch die selbe <b>#ifdef</b> Bedingung geladen wurde.<br />
Du kannst nun Fraktionen erlauben, die Einheit zu rekrutieren, indem du diese in den <b>recruit=</b> Schlüssel von [side] aufnimmst (siehe [[SideWML]]), platziere Instanzen davon auf der Karte mit ihren eigenen Werten über [unit] oder anderen Methoden. <br />
<br />
=== Mehrspieler Fraktionen und Ären ===<br />
<br />
Ein weitere verbreitete Nutzung von eigenen Einheiten ist es, diese in einer Mehrspielerfraktion zu gruppieren und eine oder mehrere Fraktionen in einer Ära einzubinden. Eine Fraktion besteht aus mehreren Einheiten, die ein bestimmtes Leitmotiv verbindet. Beispielsweise die Loyalisten. Eine Ära hingegen besteht aus verschiedenen Fraktionen, die ein Leitmotiv oder ähnliches verbindet; Ein Beispiel wäre das Standardzeitalter, welches alle Zeitalter enthält, die im Mehrspieler benutzt werden.<br />
<br />
<b>Notiz:</b> Ären/Zeitalter und Fraktionen beschränken sich nur auf den Mehrspieler.<br />
<br />
Eine weitaus detaillierterer Leitfaden zu Fraktionen und Ären kann im [[EraWML]] Artikel gefunden werden. Eine Fraktion muss immer von einem Zeitalter beinhaltet werden. Des weiteren kannst du keine Einheiten einem Zeitalter des Hauptspiels hinzufügen. <br />
<br />
== Weiteres ==<br />
<br />
* [[Create]]<br />
* [[EditingWesnoth]]<br />
* [[Creating Unit Art]]<br />
* [[CampaignServerWML]]<br />
* [[PblWML]]<br />
* [[Team_Color_Shifting]]<br />
* [[Advanced_Animation_Tutorial]]<br />
* [[BuildingScenariosIntermediate]]<br />
* [[BuildingFactions]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingCampaigns/de&diff=69338BuildingCampaigns/de2022-02-15T09:32:11Z<p>RufDerMacht: Inserted geman guide template</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
{| style="float:right; margin-left:1em;" <br />
|__TOC__ <br />
|}<br />
<br />
Während man ein Szenario mit Freunden spielen kann, um eine Schlacht auszufechten, kann ein eine Kampagne mit einer Vielzahl an Szenarien eine Geschichte erzählen. Kampagnenszenarien nutzen dafür ausgewählte Orte, um eine Geschichte zu erzählen, im Gegensatz zu den Arenen des Mehrspielers.<br />
<br />
Dieser Artikel geht davon aus, dass deine Erweiterung mit einer einfachen _main.cfg erstellt wurde (siehe [[AddonStructure]]), er wird dich durch die Nutzung des [campaign] tags führen und wird dir paar Tipps geben, deine eigene Geschichte zu schreiben.<br />
<br />
<b>Notiz:</b> <b>A Simple Campaign</b> by Anonymissimus oder '''The Final Exam''' von Elven sind Erweiterungen, die gemacht wurden, um Leuten das Verständnis zur Erstellung einer Kampagne nahezulegen. Du kannst beide vom Erweiterungsserver deiner Wesnoth-Version des Vertrauens herunterladen. <br />
<br />
<br />
== Die Kampagnen erstellen ==<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/wiki-images/wesnoth-campaigns-menu-1.11.11.jpg http://www.wesnoth.org/wiki-images/wesnoth-campaigns-menu-1.11.11-175.jpg]<br />
<div class="thumbcaption"><i>Die Südgarde</i></div></div><br />
</div><br />
<br />
Aus technischer Sicht ist eine Kampagne einfach eine Aneinanderreihung von Szenarien mit <b>next_scenario=<i>id</i></b> Schlüsseln im toplevel (siehe [[BuildingScenarios]]), wobei der Wert der <b><i>id</i></b> im Schlüssel des selben Namens im toplevel ist. Das erlaubt jedem Szenario das darauffolgende zu laden. Die Kampagne beginnst du, indem du den [campaign] tag in deiner _main.cfg integrierst.<br />
<br />
Der [campaign] tag ist so was wie das ,,Cover" einer Kampagne. Es zeigt bei der Kampagnenauswahl eine Beschreibung, sowie ein Bild (siehe das auf der rechten Seite). Der Spieler kann sich auch einen Schwierigkeitsgrad auswählen, mit dem er die Kampagne spielt.<br />
<br />
* Es sollte in deiner _main.cfg <b>abseits</b> von jeglichen Präprozessorenbedingungen sein <br />
* Für die <b>#ifdef</b> Bedingung, solltest du das Format <b>#ifdef <i>HIER_IST_DEINE_BEDINGUNG</i></b> benutzen (du kannst eine in [campaign] definieren).<br />
<br />
Der komplette Syntax des [campaign] tags ist in [[CampaignWML]] dokumentiert, ein Beispiel einer kompletten _main.cfg findet man auf der [[BuildingCampaignsTheCampaignFile]] Seite. Falls du paar Probleme bei der Erstellung hast, hat [[DebuggingCampaigns]] eine Vielzahl an Hinweisen.<br />
<br />
<b>Notiz:</b> Für gewöhnlich findest du deine Kampagne im Einzelspielermenü. Falls du eine Kampagne für den Mehrspieler erstellst, siehe [[MultiplayerContent]] für weitere Syntaxergänzungen.<br />
<br />
== Entwerfen der Kampagne ==<br />
Im Folgenden gibt es eine Ansammlung an Ratschlägen für angehende Kampagnenentwerfer aus den Wesnothforen. Für einen Ratgeber, der mehr ins Detail geht, siehe [http://catb.org/~esr/wesnoth/campaign-design-howto.html Kampagnengestaltungsratgeber]. <br />
<br />
=== Beginne mit etwas einfachem ===<br />
<br />
Wenn du versuchst einen Epos zu schreiben, der eines Homers würdig ist, wirst du wahrscheinlich schnell gelangweilt werden und den Epos nicht fertig schreiben, weil das alles ziemlich viel Arbeit ist. Einfacher wäre es, eine kleine Geschichte zu schreiben, zu der man später immer wieder was hinzufügt, als einen Epos auf die Länge eines Haikus zu komprimieren (kann man sich denken wie spannend das wäre...).<br />
<br />
;Shade (author of The Rise of Wesnoth) wrote<nowiki>:</nowiki><br />
: <i>"I started TRoW last April, even after it was scenario complete it was still eating all of my free time (Time not spent sleeping, at school / work, or with loved ones / friends) until mid-November... Even now there is still bugfixing and a couple of things I'd like to add... and keeping it up to date with the game engine and any new happenings on the WML front... so there is still quite a lot to keep you busy after you are done... The forums are littered with half finished epics... Before you commit to an epic think long and hard. I don't want to discourage you too much... But it is a lot of 'work' (& fun)."</i><br />
<br />
;Shade (Autor von The Rise of Wesnoth) schrieb<nowiki>:</nowiki><br />
: <em>,,Ich begann mit TRoW letzen April, noch nachdem alle Szenarien fertig waren, hat das mir meine Freizeit (Zeit, die nicht mit schlafen, Schule/Arbeit oder Bekannten verbracht wurde) bis Mitte-November weggenommen... Teilweise gibt es immer noch paar Fehler, die man beheben könnte oder Sachen, die man hinzufügen könnte... Dann muss man alles noch auf den letzten Stand mit der Spielengine und der WML bringen... man hat da also voll zu tun... Die Foren sind voll von halbfertigen Epen... Denk lieber nach, bevor du dich an ein Epos heranwagst. Ich will jetzt keinen zu sehr davon abbringen... Es ist viel ,,Arbeit", macht aber auch irgendwie Spaß."</em><br />
<br />
=== Erst die Geschichte ===<br />
<br />
Was eine Kampagne im Gegensatz zu einem Szenario ausmacht, ist das Erzählen einer Geschichte. Was Leute zum Spielen bewegt, ist eine gut erzählte Geschichte, sowie eine interessante Spielweise (gameplay). Wenn du eine Ahnung hast, wo die Geschichte deiner Kampagne starten soll, wird sich der Rest der Geschichte viel leichter schreiben lassen. Man muss halt auch zu gute halten, dass es bei Pixar funktionierte!<br />
<br />
;Scott (author of Liberty) wrote:<br />
<i><br />
: "Here is how I wrote Liberty:<br />
:# Write a rough story and plot<br />
:# Decide how many scenarios you want to have<br />
:# Divide the story between the scenarios so you can decide what will happen in each scenario:<br />
:#* Where are you?<br />
:#* Who are you fighting and why?<br />
:#* What do you have to do in this scenario?<br />
:#* Where does the hero want to go next?<br />
:# Decide on the "hook" for each scenario. There are a lot of different possible setups for scenarios, and if you want to avoid the boring repetition of "Kill the 2 enemy leaders" you can list interesting combinations of enemies, allies, shroud/fog, day/night effects, recruiting and terrain situations, etc. and pick a good mix to keep the combat interesting and fun. <br />
: All of this has happened without doing any WML, but now you have enough to start coding."<br />
</i><br />
<br />
;Scott (Autor von Liberty) schrieb:<br />
<em><br />
: "So schrieb ich Liberty:<br />
:# Schreibe eine Rahmenhandlung<br />
:# Setze dich auf eine Anzahl an Szenarien fest<br />
:# Teile die Geschichte in Szenarien ein, sodass du weißt, was in den einzelnen Szenarien passieren soll:<br />
:#* Wo bist du?<br />
:#* Gegen wen kämpfst du und warum?<br />
:#* Was musst du in diesem Szenario tun?<br />
:#* Wo will der Protagonist als nächstes hin?<br />
:# Setze dich auf einen "Haken" für jedes Szenario fest. Es gibt eine Vielzahl an verschiedenen Umständen in Szenarien und wenn du die langweilige Wiederholung von ,,Töte die zwei Anführer des Feindes" vermeiden willst, benutze einfach eine interessante Mischung an Feinden, Gleichgesinnten, Nebel, Tag,-Nachtzyklen, Rekrutierungslagen, sowie Geländesituationen, um die Kämpfe möglichst interessant und unterhaltsam zu gestalten. <br />
: All das kann machen, ohne WML zu nutzen, aber jetzt hast du genug zu programmieren."<br />
</em><br />
Der [http://catb.org/~esr/wesnoth/campaign-design-howto.html Kampagnengestaltungsratgeber] geht weiter in die Tiefe, um Geschichten zu schreiben.<br />
<br />
=== Teile möglichst früh ===<br />
<br />
Sei nicht so schüchtern und teile das, was du erstellst mit anderen, damit du Rückmeldungen bekommen kannst. Es ist noch kein Meister vom Himmel gefallen und es gibt viele Leute, die im [http://www.wesnoth.org/forum/viewforum.php?f=8 Szenario- und Kampagnenentwicklungsforum] anderen helfen.<br />
<br />
;Turin (author of Eastern Invasion) wrote<nowiki>:</nowiki> <br />
: <i>"I'm working on a loyalist campaign now. I already have the basic plot. I am wondering if anyone wants to playtest my completed levels (I am done with two). Thus I want to know if I should just post the new files as attachments, or what. There are two map files, two scenario files, an image file, a unit file, and you have to change the game file to access the campaign from the 'campaign menu. So tell me how I should make them accessible."</i><br />
<br />
;Turin (Autor von Eastern Invasion) schreib<nowiki>:</nowiki> <br />
: <em>"Ich arbeite grad an einer Loyalistenkampagne. Ich habe schon eine Rahmenhandlung. Ich suche welche, die meine fertigen Level spielen (bin mit zweien fertig). Ich würde gern wissen, ob ich die neuen Dateien als Anhang hochladen soll. Es sind zwei Kartendateien, zwei Szenariendateien, eine Bilddatei, sowie eine Einheitendatei. Man muss die Spieldateien etwas modifizieren, um die Kampagne überhaupt spielen zu können. Kann ich das irgendwie einfacher machen?"</em><br />
<br />
=== Klaue oft ===<br />
<br />
Der beste Weg, etwas zu lernen, ist es Lösungsbeispiele von anderen zu kopieren und zu analysieren. Es wäre aber höflicher, wenn bevor man etwas von jemandem übernimmt, ihn erst danach fragt, ob man die Lösung kopieren darf. Die meisten werden aber wahrscheinlich keinerlei Probleme damit haben, wenn etwas von ihrer WML bei anderen Kampagnen wiederverwertet wird.<br />
Es ist aber eher traurig, wenn jemand ganze Szenarien, Karten, sowie Kampagnen kopiert und somit ein Plagiat hat. Noch trauriger ist das, wenn man nichtmal die Erlaubnis dafür hat...<br />
<br />
== Weiteres ==<br />
<br />
* [[Create]]<br />
* [[BuildingScenarios]]<br />
* [[ReferenceWML]]<br />
* [[Guide_to_UMC_Content]]<br />
* [http://www.catb.org/~esr/wesnoth/campaign-design-howto.html Kampagnengestaltungsratgeber]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69337AddonStructure/de2022-02-15T09:31:30Z<p>RufDerMacht: Inserted geman guide template</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Weiterführende Informationen zu diesen Themen finden sich unter [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine erwartete Verzeichnis-Struktur ===<br />
Die Ordner, die Code enthalten - wie '''scenarios''' und '''macros''' - müssen nicht zwingend in bestimmter Weise benannt werden, sondern dürfen im Prinzip beliebige Namen erhalten. Allerdings ist es sinnvoll, selbsterklärende Namen zu wählen. Mit der Zeit haben sich bestimmte Namenskonventionen gebildet, die [[#Die von den Konventionen vorgegebene Verzeichnis-Struktur|weiter unten]] erläutert werden.<br />
<br />
Die folgenden Ordner '''müssen''' allerdings exakt wie angegeben benannt sein, damit die Spielengine sie findet:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''images'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''music'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''sounds'''<br />
<br />
Das gilt auch für einige Unterverzeichnisse von '''images''':<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''attacks'''<br>Enthält die Icons für jeden Angriff, siehe auch [[UnitTypeWML#Attacks]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''terrain'''<br>Enthält Grafiken für Terrain, also die grundlegende Grafik für Karten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''lua'''<br>Enthält Lua-Module, die in WML-Dateien durch <code>wesnoth.require "''Modul_Name''"</code> eingebunden werden können.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''translations'''<br>Enthält ggf. Übersetzungsdaten, kann aber auch leer sein. Ohne dieses Verzeichnis wird eine Warnung in der Standardfehlerausgabe (stderr) erzeugt. Der Pfad '''muss''' exakt dem innerhalb der <code>[textdomain)</code>-Tags in _main.cfg definierten Pfad entsprechen.<br />
<br />
Wie die Spielengine genau auf die genannten Verzeichnisse zugreift, wird in [[BinaryPathWML]] erläutert.<br />
<br />
=== Die von den Konventionen vorgegebene Verzeichnis-Struktur ===<br />
Die Bezeichnungen folgender Ordner sind nicht durch die Spielengine vorgeschrieben, sondern haben sich im Laufe der Zeit als besonders praktikabel ("best practice") durchgesetzt:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''ai'''<br>Enthält Lua-Dateien für die [[RCA_AI|künstliche Intelligenz (RCA&nbsp;AI)]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''masks'''<br> Enthält Dateien für [[TerrainMaskWML]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''units'''<br> Enthält Dateien für die Definition von Einheiten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''utils'''<br>Enthält WML-Makros.<br />
<br />
Auch für einige Unterordner des Verzeichnis '''images''' gibt es bestimmte Konventionen:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''halo'''<br>Grafiken zur [https://forums.wesnoth.org/viewtopic.php?t=44389 Halo Era].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''items'''<br>Gegenstands (Items)-Grafiken.<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''portraits'''<br>Portrait-Grafiken ([unit_type]profile=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''story'''<br>Hintergründe für Story-Bildschirme ([story])<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''units'''<br>Einheiten-Grafiken ([unit_type]image=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''misc'''<br>Der üblich Sammelordner, damit man nicht alles ins Hauptverzeichnis (oder sonstwohin) packt.<br />
<br />
==Siehe auch==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69336BuildingMaps/de2022-02-15T09:30:46Z<p>RufDerMacht: Inserted geman guide template</p>
<hr />
<div>{{Translations}}<br />
{{Create/de}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
<br />
== Eine neue Karte erzeugen ==<br />
<br />
'''Vorbemerkung:''' Der Karteneditor beinhaltet seit Wesnoth 1.12 auch einige Optionen, um neben reinen Karten auch Szenarios zu erzeugen. Um eine reine Karte abzuspeichern, die keinerlei szenariospezifische Details enthält, wählt man beim Speichern im Menü ''Datei'' den Menüpunkt ''Karte speichern unter''. Möchte man die Szenariodetails mitspeichern, wählt man den Menüpunkt ''Szenario speichern unter''.<br>Mehr zu szenariospezifischen Inhalten findet sich unter [[BuildingScenarios]].<br />
<br />
'''Neben diese eher allgemein gehaltenen Anleitung hier gibt es auch eine einfache [[How to make nice map in few minutes|Schritt-für-Schritt-Anleitung]], die das Erzeugen einer neuen Karte sehr viel detaillierter beschreibt.'''<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
Beim ersten Öffnen des Karteneditors sieht man eine große Leinwand ('''canvas'''), die vollständig mit Gras gefüllt ist. Im Folgenden wird umrissen, wie man diese leere Wiese in ein interessantes und herausforderndes Schlachtfeld verwandeln kann.<br />
<br />
#'''Den Verwendungszweck bestimmen'''<br>Karten, die in einer Kampagne Verwendung finden sollen, stehen in einem Bezug zu der zugrunde liegenden Geschichte, die in der Kampagne erzählt wird. Das spiegelt sich in der Landschaft, der Verteilung der Burgen und anderen Besonderheiten der Karte wider.<br>Multiplayer-Karten haben dagegen oft einen "arena-mäßigen" Stil, um für alle menschlichen Mitspieler ungefähr gleiche Chancen zu bieten: Sie sind häufig symmetrisch, beinhalten viele verschiedene Terrainarten, um die Vorteile unterschiedlicher Einheiten ausspielen zu können, und haben nicht selten nicht-rechteckige Formen.<br><br><br />
#'''Die Kartengröße bestimmen'''<br>Auch die Größe der Karte hängt unmittelbar von ihrem Verwendungszweck ab, kann aber auch jederzeit angepasst werden. Eine engmaschige Kampfarena wird tendenziell eher kleiner ausfallen als eine Karte, auf der epische Schlachten ausgetragen werden sollen. Man sollte dabei im Hinterkopf behalten, dass eine zu große Karte schnell langweilig werden kann.<br><br><br />
#'''Für ein Leitthema entscheiden'''<br>Wesnoth beinhalten viele verschiedene Terraintypen für viele verschiedene Situationen: Höhlen, Wiesen, Gebirge, Wasserfläche, Eiswüsten, u.v.a.m. Es hat sich bewährt, eine Art Leitthema für eine Karte zu bestimmen und die Karte dann mit den dazu passenden Terrains auszustatten.<br><br><br />
#'''Zuerst großräumige geografische Merkmale platzieren'''<br>Bei einer Karte in der Außenwelt wäre es nun an der Zeit, Gebirgszüge, Flüsse und andere großflächige Landschaftsabschnitte usw. zu setzen. Bei Innenraumkarten werden nun Wände, Durchbrüche und größere Räume usw. festgelegt. Es kommt hier nicht auf die Genauigkeit an, sondern auf eine grobe gestalterische Konzeption.<br><br><br />
#'''Burgen, Dörfer und Straßen hinzufügen'''<br>So gut wie jede Karte benötigt Burgen und Festungen, um dort Einheiten rekrutieren zu können, und Straßen, Gras oder Erde, denn die meisten Einheiten bewegen sich am schnellsten auf diesem Terrain. Die Burgen sollten nicht zu nahe beieinander stehen. Die bedachtsame Platzierung der Burgen ist auf jeder Karte eine der wichtigsten Aufgaben, denn sie beeinflusst entscheidend den Spielfluss darauf. Nun werden Dörfer hinzugefügt, deren Besitz sowohl Goldeinkommen als auch Heilungsmöglichkeiten bietet. Als Faustregel gilt, dass Dörfer mindestens 6 Hexfelder Abstand voneinander haben sollten (es kann natürlich auch einmal Ausnahmen davon geben). Werden sie zu nah beieinander platziert, führt das möglicherweise zu einem Ungleichgewicht.<br><br><br />
#'''Feinere Details und Überarbeitung'''<br>Nun füllt man die offenen Bereich der Karte mit Wäldern, Bäumen, Hügel, Erde usw. Innenräume werden mit den passenden Terrains wie Gängen oder Türen ergänzt. Während dieses Prozesses wird zugleich auch das allgemeine Layout der Karte immer weiter verfeinert, um die Karte allmählich zu vervollständigen. Hier sollte auch der gewünschte Spielfluss immer wieder bedacht werden, beispielsweise an welcher Stelle man einen Fluss durch eine Brücke passierbar macht.<br><br><br />
#'''Der Feinschliff'''<br>Die Karte mag nun beinahe vollständig sein, aber sie benötigt noch Verzierungen. Man kann verschiedene Grastöne setzen, Felsen und Schlamm auf Wasserflächen verteilen, etwas Abfall um die Dörfer herum platzieren, auf den Wiesen Blumen wachsen lassen. Für Innenräume greift man auf Truhen, Altare, Beleuchtung, Trankflaschen, usw. zurück. Wenn es passt, kann man die Ausschmückungen natürlich auch beliebig mischen. Zu viele Verzierungen lassen eine Karte aber schnell überladen wirken. <br />
<br />
Das Schaffen einer schönen Karte erfordert einiges an Übung. Eine interessante, herausfordernde, gut ausbalancierte Karte zu machen ist eine Kunst für sich. Der Entwickler ESR hat in dem Artikel <br />
[http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] einige praktische Tipps gesammelt.<br>Weitere Hilfe gibt es auf Nachfrage im Forum im [http://www.wesnoth.org/forum/viewforum.php?f=26 Abschnitt Entwicklung] und im [https://discord.com/channels/231976805987385345/371775921885020160 Discord-Chat] in den Chaträumen #modding und #development.<br />
<br />
== Wie geht es weiter? ==<br />
<br />
Die Karte ist fertig, und sie ist fantastisch geworden! Und nun? Es ist eigentlich ganz einfach.<br />
<br />
=== Die Karte spielen ===<br />
<br />
Eine im voreingestellten Ordner (standardmäßig ''userdata''/editor/maps/) des Karteneditors abgespeicherte Karte erscheint automatisch in der Liste der verfügbaren Karten '''an oberster Stelle'''. Bei einer Multiplayer-Karte wählt man dazu im Hauptmenü des Spiels den Menüpunkt '' Multiplayer'' und wählt einen Zugang, bei Einzelkarten oder -szenarios den Menüpunkt ''Kampagnen''.<br />
<br />
Auf einem Multiplayer-Server wird die Karte anderen Spielern unter dem Namen "User Map" angezeigt, auch bei der Fortsetzung des Spiels wird auf "User Map" verwiesen.<br />
<br />
=== Die Karte in einem Szenario verwenden ===<br />
Szenarios bieten komplexeres Gameplay, erfordern aber auch mehr Aufwand bei der Kartengestaltung.<br>Mehr Informationen dazu finden sich unter [[BuildingScenarios]].<br />
<br />
=== Die Karte teilen ===<br />
Wenn man seine Karte mit anderen Spielern teilen möchte, kann man sie unter [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development Forum] veröffentlichen. Eine andere Möglichkeit bietet der spielinterne Add-on-Server.<br>Detaillierte Informationen über das Veröffentlichen von Karten finden sich unter <br />
[[Distributing_content]].<br />
<br />
== Weiterführende Informationen ==<br />
Innerhalb der einzelnen Kartendateien befindet sich die Daten in kodierter Form, welche die Spielengine während des Spiels in eine grafische Darstellung ('''terrain''') umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Siehe auch ==<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=Template:Create/de&diff=69335Template:Create/de2022-02-15T09:28:03Z<p>RufDerMacht: Template in -german</p>
<hr />
<div><div class="navtemplate"><br />
<div style="float:right; margin:5px">https://raw.github.com/wesnoth/wesnoth/master/data/core/images/terrain/village/human3.png</div><br />
<dt style="font-size:120%; margin-bottom:5px">Leitfaden für Kreative</dt><br />
<dd>[[AddonStructure/de|Add-on-Strukturen]] • [[BuildingMaps/de|Karten]] • [[BuildingScenarios/de|Szenarios]] • [[BuildingCampaigns/de|Kampagnen]] • [[MultiplayerContent/de|Multiplayer-Inhalte]] • [[BuildingUnits/de|Einheiten]] • [[Distributing_content/de|Erweiterungen veröffentlichen]]</dd><br />
</div><br />
<br />
<includeonly>[[Category:Create]]</includeonly><br />
<noinclude>{{template}}</noinclude></div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=Template:Create/de&diff=69334Template:Create/de2022-02-15T09:22:44Z<p>RufDerMacht: preliminary testing</p>
<hr />
<div><div class="navtemplate"><br />
<div style="float:right; margin:5px">https://raw.github.com/wesnoth/wesnoth/master/data/core/images/terrain/village/human3.png</div><br />
<dt style="font-size:120%; margin-bottom:5px">Creator's Guide</dt><br />
<dd>[[AddonStructure|Add-on Structure]] • [[BuildingMaps|Maps]] • [[BuildingScenarios|Scenarios]] • [[BuildingCampaigns|Campaigns]] • [[MultiplayerContent|Multiplayer]] • [[BuildingUnits|Units]] • [[Distributing_content|Distributing Content]]</dd><br />
</div><br />
<br />
<includeonly>[[Category:Create]]</includeonly><br />
<noinclude>{{template}}</noinclude></div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69333BuildingMaps/de2022-02-15T09:17:37Z<p>RufDerMacht: /* Share your map */</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
== Eine neue Karte erzeugen ==<br />
<br />
'''Vorbemerkung:''' Der Karteneditor beinhaltet seit Wesnoth 1.12 auch einige Optionen, um neben reinen Karten auch Szenarios zu erzeugen. Um eine reine Karte abzuspeichern, die keinerlei szenariospezifische Details enthält, wählt man beim Speichern im Menü ''Datei'' den Menüpunkt ''Karte speichern unter''. Möchte man die Szenariodetails mitspeichern, wählt man den Menüpunkt ''Szenario speichern unter''.<br>Mehr zu szenariospezifischen Inhalten findet sich unter [[BuildingScenarios]].<br />
<br />
'''Neben diese eher allgemein gehaltenen Anleitung hier gibt es auch eine einfache [[How to make nice map in few minutes|Schritt-für-Schritt-Anleitung]], die das Erzeugen einer neuen Karte sehr viel detaillierter beschreibt.'''<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
Beim ersten Öffnen des Karteneditors sieht man eine große Leinwand ('''canvas'''), die vollständig mit Gras gefüllt ist. Im Folgenden wird umrissen, wie man diese leere Wiese in ein interessantes und herausforderndes Schlachtfeld verwandeln kann.<br />
<br />
#'''Den Verwendungszweck bestimmen'''<br>Karten, die in einer Kampagne Verwendung finden sollen, stehen in einem Bezug zu der zugrunde liegenden Geschichte, die in der Kampagne erzählt wird. Das spiegelt sich in der Landschaft, der Verteilung der Burgen und anderen Besonderheiten der Karte wider.<br>Multiplayer-Karten haben dagegen oft einen "arena-mäßigen" Stil, um für alle menschlichen Mitspieler ungefähr gleiche Chancen zu bieten: Sie sind häufig symmetrisch, beinhalten viele verschiedene Terrainarten, um die Vorteile unterschiedlicher Einheiten ausspielen zu können, und haben nicht selten nicht-rechteckige Formen.<br><br><br />
#'''Die Kartengröße bestimmen'''<br>Auch die Größe der Karte hängt unmittelbar von ihrem Verwendungszweck ab, kann aber auch jederzeit angepasst werden. Eine engmaschige Kampfarena wird tendenziell eher kleiner ausfallen als eine Karte, auf der epische Schlachten ausgetragen werden sollen. Man sollte dabei im Hinterkopf behalten, dass eine zu große Karte schnell langweilig werden kann.<br><br><br />
#'''Für ein Leitthema entscheiden'''<br>Wesnoth beinhalten viele verschiedene Terraintypen für viele verschiedene Situationen: Höhlen, Wiesen, Gebirge, Wasserfläche, Eiswüsten, u.v.a.m. Es hat sich bewährt, eine Art Leitthema für eine Karte zu bestimmen und die Karte dann mit den dazu passenden Terrains auszustatten.<br><br><br />
#'''Zuerst großräumige geografische Merkmale platzieren'''<br>Bei einer Karte in der Außenwelt wäre es nun an der Zeit, Gebirgszüge, Flüsse und andere großflächige Landschaftsabschnitte usw. zu setzen. Bei Innenraumkarten werden nun Wände, Durchbrüche und größere Räume usw. festgelegt. Es kommt hier nicht auf die Genauigkeit an, sondern auf eine grobe gestalterische Konzeption.<br><br><br />
#'''Burgen, Dörfer und Straßen hinzufügen'''<br>So gut wie jede Karte benötigt Burgen und Festungen, um dort Einheiten rekrutieren zu können, und Straßen, Gras oder Erde, denn die meisten Einheiten bewegen sich am schnellsten auf diesem Terrain. Die Burgen sollten nicht zu nahe beieinander stehen. Die bedachtsame Platzierung der Burgen ist auf jeder Karte eine der wichtigsten Aufgaben, denn sie beeinflusst entscheidend den Spielfluss darauf. Nun werden Dörfer hinzugefügt, deren Besitz sowohl Goldeinkommen als auch Heilungsmöglichkeiten bietet. Als Faustregel gilt, dass Dörfer mindestens 6 Hexfelder Abstand voneinander haben sollten (es kann natürlich auch einmal Ausnahmen davon geben). Werden sie zu nah beieinander platziert, führt das möglicherweise zu einem Ungleichgewicht.<br><br><br />
#'''Feinere Details und Überarbeitung'''<br>Nun füllt man die offenen Bereich der Karte mit Wäldern, Bäumen, Hügel, Erde usw. Innenräume werden mit den passenden Terrains wie Gängen oder Türen ergänzt. Während dieses Prozesses wird zugleich auch das allgemeine Layout der Karte immer weiter verfeinert, um die Karte allmählich zu vervollständigen. Hier sollte auch der gewünschte Spielfluss immer wieder bedacht werden, beispielsweise an welcher Stelle man einen Fluss durch eine Brücke passierbar macht.<br><br><br />
#'''Der Feinschliff'''<br>Die Karte mag nun beinahe vollständig sein, aber sie benötigt noch Verzierungen. Man kann verschiedene Grastöne setzen, Felsen und Schlamm auf Wasserflächen verteilen, etwas Abfall um die Dörfer herum platzieren, auf den Wiesen Blumen wachsen lassen. Für Innenräume greift man auf Truhen, Altare, Beleuchtung, Trankflaschen, usw. zurück. Wenn es passt, kann man die Ausschmückungen natürlich auch beliebig mischen. Zu viele Verzierungen lassen eine Karte aber schnell überladen wirken. <br />
<br />
Das Schaffen einer schönen Karte erfordert einiges an Übung. Eine interessante, herausfordernde, gut ausbalancierte Karte zu machen ist eine Kunst für sich. Der Entwickler ESR hat in dem Artikel <br />
[http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] einige praktische Tipps gesammelt.<br>Weitere Hilfe gibt es auf Nachfrage im Forum im [http://www.wesnoth.org/forum/viewforum.php?f=26 Abschnitt Entwicklung] und im [https://discord.com/channels/231976805987385345/371775921885020160 Discord-Chat] in den Chaträumen #modding und #development.<br />
<br />
== Wie geht es weiter? ==<br />
<br />
Die Karte ist fertig, und sie ist fantastisch geworden! Und nun? Es ist eigentlich ganz einfach.<br />
<br />
=== Die Karte spielen ===<br />
<br />
Eine im voreingestellten Ordner (standardmäßig ''userdata''/editor/maps/) des Karteneditors abgespeicherte Karte erscheint automatisch in der Liste der verfügbaren Karten '''an oberster Stelle'''. Bei einer Multiplayer-Karte wählt man dazu im Hauptmenü des Spiels den Menüpunkt '' Multiplayer'' und wählt einen Zugang, bei Einzelkarten oder -szenarios den Menüpunkt ''Kampagnen''.<br />
<br />
Auf einem Multiplayer-Server wird die Karte anderen Spielern unter dem Namen "User Map" angezeigt, auch bei der Fortsetzung des Spiels wird auf "User Map" verwiesen.<br />
<br />
=== Die Karte in einem Szenario verwenden ===<br />
Szenarios bieten komplexeres Gameplay, erfordern aber auch mehr Aufwand bei der Kartengestaltung.<br>Mehr Informationen dazu finden sich unter [[BuildingScenarios]].<br />
<br />
=== Die Karte teilen ===<br />
Wenn man seine Karte mit anderen Spielern teilen möchte, kann man sie unter [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development Forum] veröffentlichen. Eine andere Möglichkeit bietet der spielinterne Add-on-Server.<br>Detaillierte Informationen über das Veröffentlichen von Karten finden sich unter <br />
[[Distributing_content]].<br />
<br />
== Weiterführende Informationen ==<br />
Innerhalb der einzelnen Kartendateien befindet sich die Daten in kodierter Form, welche die Spielengine während des Spiels in eine grafische Darstellung ('''terrain''') umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Siehe auch ==<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69332BuildingMaps/de2022-02-15T09:13:07Z<p>RufDerMacht: /* Use your map in a scenario */</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
== Eine neue Karte erzeugen ==<br />
<br />
'''Vorbemerkung:''' Der Karteneditor beinhaltet seit Wesnoth 1.12 auch einige Optionen, um neben reinen Karten auch Szenarios zu erzeugen. Um eine reine Karte abzuspeichern, die keinerlei szenariospezifische Details enthält, wählt man beim Speichern im Menü ''Datei'' den Menüpunkt ''Karte speichern unter''. Möchte man die Szenariodetails mitspeichern, wählt man den Menüpunkt ''Szenario speichern unter''.<br>Mehr zu szenariospezifischen Inhalten findet sich unter [[BuildingScenarios]].<br />
<br />
'''Neben diese eher allgemein gehaltenen Anleitung hier gibt es auch eine einfache [[How to make nice map in few minutes|Schritt-für-Schritt-Anleitung]], die das Erzeugen einer neuen Karte sehr viel detaillierter beschreibt.'''<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
Beim ersten Öffnen des Karteneditors sieht man eine große Leinwand ('''canvas'''), die vollständig mit Gras gefüllt ist. Im Folgenden wird umrissen, wie man diese leere Wiese in ein interessantes und herausforderndes Schlachtfeld verwandeln kann.<br />
<br />
#'''Den Verwendungszweck bestimmen'''<br>Karten, die in einer Kampagne Verwendung finden sollen, stehen in einem Bezug zu der zugrunde liegenden Geschichte, die in der Kampagne erzählt wird. Das spiegelt sich in der Landschaft, der Verteilung der Burgen und anderen Besonderheiten der Karte wider.<br>Multiplayer-Karten haben dagegen oft einen "arena-mäßigen" Stil, um für alle menschlichen Mitspieler ungefähr gleiche Chancen zu bieten: Sie sind häufig symmetrisch, beinhalten viele verschiedene Terrainarten, um die Vorteile unterschiedlicher Einheiten ausspielen zu können, und haben nicht selten nicht-rechteckige Formen.<br><br><br />
#'''Die Kartengröße bestimmen'''<br>Auch die Größe der Karte hängt unmittelbar von ihrem Verwendungszweck ab, kann aber auch jederzeit angepasst werden. Eine engmaschige Kampfarena wird tendenziell eher kleiner ausfallen als eine Karte, auf der epische Schlachten ausgetragen werden sollen. Man sollte dabei im Hinterkopf behalten, dass eine zu große Karte schnell langweilig werden kann.<br><br><br />
#'''Für ein Leitthema entscheiden'''<br>Wesnoth beinhalten viele verschiedene Terraintypen für viele verschiedene Situationen: Höhlen, Wiesen, Gebirge, Wasserfläche, Eiswüsten, u.v.a.m. Es hat sich bewährt, eine Art Leitthema für eine Karte zu bestimmen und die Karte dann mit den dazu passenden Terrains auszustatten.<br><br><br />
#'''Zuerst großräumige geografische Merkmale platzieren'''<br>Bei einer Karte in der Außenwelt wäre es nun an der Zeit, Gebirgszüge, Flüsse und andere großflächige Landschaftsabschnitte usw. zu setzen. Bei Innenraumkarten werden nun Wände, Durchbrüche und größere Räume usw. festgelegt. Es kommt hier nicht auf die Genauigkeit an, sondern auf eine grobe gestalterische Konzeption.<br><br><br />
#'''Burgen, Dörfer und Straßen hinzufügen'''<br>So gut wie jede Karte benötigt Burgen und Festungen, um dort Einheiten rekrutieren zu können, und Straßen, Gras oder Erde, denn die meisten Einheiten bewegen sich am schnellsten auf diesem Terrain. Die Burgen sollten nicht zu nahe beieinander stehen. Die bedachtsame Platzierung der Burgen ist auf jeder Karte eine der wichtigsten Aufgaben, denn sie beeinflusst entscheidend den Spielfluss darauf. Nun werden Dörfer hinzugefügt, deren Besitz sowohl Goldeinkommen als auch Heilungsmöglichkeiten bietet. Als Faustregel gilt, dass Dörfer mindestens 6 Hexfelder Abstand voneinander haben sollten (es kann natürlich auch einmal Ausnahmen davon geben). Werden sie zu nah beieinander platziert, führt das möglicherweise zu einem Ungleichgewicht.<br><br><br />
#'''Feinere Details und Überarbeitung'''<br>Nun füllt man die offenen Bereich der Karte mit Wäldern, Bäumen, Hügel, Erde usw. Innenräume werden mit den passenden Terrains wie Gängen oder Türen ergänzt. Während dieses Prozesses wird zugleich auch das allgemeine Layout der Karte immer weiter verfeinert, um die Karte allmählich zu vervollständigen. Hier sollte auch der gewünschte Spielfluss immer wieder bedacht werden, beispielsweise an welcher Stelle man einen Fluss durch eine Brücke passierbar macht.<br><br><br />
#'''Der Feinschliff'''<br>Die Karte mag nun beinahe vollständig sein, aber sie benötigt noch Verzierungen. Man kann verschiedene Grastöne setzen, Felsen und Schlamm auf Wasserflächen verteilen, etwas Abfall um die Dörfer herum platzieren, auf den Wiesen Blumen wachsen lassen. Für Innenräume greift man auf Truhen, Altare, Beleuchtung, Trankflaschen, usw. zurück. Wenn es passt, kann man die Ausschmückungen natürlich auch beliebig mischen. Zu viele Verzierungen lassen eine Karte aber schnell überladen wirken. <br />
<br />
Das Schaffen einer schönen Karte erfordert einiges an Übung. Eine interessante, herausfordernde, gut ausbalancierte Karte zu machen ist eine Kunst für sich. Der Entwickler ESR hat in dem Artikel <br />
[http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] einige praktische Tipps gesammelt.<br>Weitere Hilfe gibt es auf Nachfrage im Forum im [http://www.wesnoth.org/forum/viewforum.php?f=26 Abschnitt Entwicklung] und im [https://discord.com/channels/231976805987385345/371775921885020160 Discord-Chat] in den Chaträumen #modding und #development.<br />
<br />
== Wie geht es weiter? ==<br />
<br />
Die Karte ist fertig, und sie ist fantastisch geworden! Und nun? Es ist eigentlich ganz einfach.<br />
<br />
=== Die Karte spielen ===<br />
<br />
Eine im voreingestellten Ordner (standardmäßig ''userdata''/editor/maps/) des Karteneditors abgespeicherte Karte erscheint automatisch in der Liste der verfügbaren Karten '''an oberster Stelle'''. Bei einer Multiplayer-Karte wählt man dazu im Hauptmenü des Spiels den Menüpunkt '' Multiplayer'' und wählt einen Zugang, bei Einzelkarten oder -szenarios den Menüpunkt ''Kampagnen''.<br />
<br />
Auf einem Multiplayer-Server wird die Karte anderen Spielern unter dem Namen "User Map" angezeigt, auch bei der Fortsetzung des Spiels wird auf "User Map" verwiesen.<br />
<br />
=== Die Karte in einem Szenario verwenden ===<br />
Szenarios bieten komplexeres Gameplay, erfordern aber auch mehr Aufwand bei der Kartengestaltung.<br>Mehr Informationen dazu finden sich unter [[BuildingScenarios]].<br />
<br />
=== Share your map ===<br />
<br />
When you're ready to share your map with the world, post it to the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum] or package it to be distributed on the in-game add-ons server. For instructions on how to distribute maps, see [[Distributing_content]]<br />
<br />
== Weiterführende Informationen ==<br />
Innerhalb der einzelnen Kartendateien befindet sich die Daten in kodierter Form, welche die Spielengine während des Spiels in eine grafische Darstellung ('''terrain''') umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Siehe auch ==<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69331BuildingMaps/de2022-02-15T08:27:58Z<p>RufDerMacht: /* Now what? */</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
== Eine neue Karte erzeugen ==<br />
<br />
'''Vorbemerkung:''' Der Karteneditor beinhaltet seit Wesnoth 1.12 auch einige Optionen, um neben reinen Karten auch Szenarios zu erzeugen. Um eine reine Karte abzuspeichern, die keinerlei szenariospezifische Details enthält, wählt man beim Speichern im Menü ''Datei'' den Menüpunkt ''Karte speichern unter''. Möchte man die Szenariodetails mitspeichern, wählt man den Menüpunkt ''Szenario speichern unter''.<br>Mehr zu szenariospezifischen Inhalten findet sich unter [[BuildingScenarios]].<br />
<br />
'''Neben diese eher allgemein gehaltenen Anleitung hier gibt es auch eine einfache [[How to make nice map in few minutes|Schritt-für-Schritt-Anleitung]], die das Erzeugen einer neuen Karte sehr viel detaillierter beschreibt.'''<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
Beim ersten Öffnen des Karteneditors sieht man eine große Leinwand ('''canvas'''), die vollständig mit Gras gefüllt ist. Im Folgenden wird umrissen, wie man diese leere Wiese in ein interessantes und herausforderndes Schlachtfeld verwandeln kann.<br />
<br />
#'''Den Verwendungszweck bestimmen'''<br>Karten, die in einer Kampagne Verwendung finden sollen, stehen in einem Bezug zu der zugrunde liegenden Geschichte, die in der Kampagne erzählt wird. Das spiegelt sich in der Landschaft, der Verteilung der Burgen und anderen Besonderheiten der Karte wider.<br>Multiplayer-Karten haben dagegen oft einen "arena-mäßigen" Stil, um für alle menschlichen Mitspieler ungefähr gleiche Chancen zu bieten: Sie sind häufig symmetrisch, beinhalten viele verschiedene Terrainarten, um die Vorteile unterschiedlicher Einheiten ausspielen zu können, und haben nicht selten nicht-rechteckige Formen.<br><br><br />
#'''Die Kartengröße bestimmen'''<br>Auch die Größe der Karte hängt unmittelbar von ihrem Verwendungszweck ab, kann aber auch jederzeit angepasst werden. Eine engmaschige Kampfarena wird tendenziell eher kleiner ausfallen als eine Karte, auf der epische Schlachten ausgetragen werden sollen. Man sollte dabei im Hinterkopf behalten, dass eine zu große Karte schnell langweilig werden kann.<br><br><br />
#'''Für ein Leitthema entscheiden'''<br>Wesnoth beinhalten viele verschiedene Terraintypen für viele verschiedene Situationen: Höhlen, Wiesen, Gebirge, Wasserfläche, Eiswüsten, u.v.a.m. Es hat sich bewährt, eine Art Leitthema für eine Karte zu bestimmen und die Karte dann mit den dazu passenden Terrains auszustatten.<br><br><br />
#'''Zuerst großräumige geografische Merkmale platzieren'''<br>Bei einer Karte in der Außenwelt wäre es nun an der Zeit, Gebirgszüge, Flüsse und andere großflächige Landschaftsabschnitte usw. zu setzen. Bei Innenraumkarten werden nun Wände, Durchbrüche und größere Räume usw. festgelegt. Es kommt hier nicht auf die Genauigkeit an, sondern auf eine grobe gestalterische Konzeption.<br><br><br />
#'''Burgen, Dörfer und Straßen hinzufügen'''<br>So gut wie jede Karte benötigt Burgen und Festungen, um dort Einheiten rekrutieren zu können, und Straßen, Gras oder Erde, denn die meisten Einheiten bewegen sich am schnellsten auf diesem Terrain. Die Burgen sollten nicht zu nahe beieinander stehen. Die bedachtsame Platzierung der Burgen ist auf jeder Karte eine der wichtigsten Aufgaben, denn sie beeinflusst entscheidend den Spielfluss darauf. Nun werden Dörfer hinzugefügt, deren Besitz sowohl Goldeinkommen als auch Heilungsmöglichkeiten bietet. Als Faustregel gilt, dass Dörfer mindestens 6 Hexfelder Abstand voneinander haben sollten (es kann natürlich auch einmal Ausnahmen davon geben). Werden sie zu nah beieinander platziert, führt das möglicherweise zu einem Ungleichgewicht.<br><br><br />
#'''Feinere Details und Überarbeitung'''<br>Nun füllt man die offenen Bereich der Karte mit Wäldern, Bäumen, Hügel, Erde usw. Innenräume werden mit den passenden Terrains wie Gängen oder Türen ergänzt. Während dieses Prozesses wird zugleich auch das allgemeine Layout der Karte immer weiter verfeinert, um die Karte allmählich zu vervollständigen. Hier sollte auch der gewünschte Spielfluss immer wieder bedacht werden, beispielsweise an welcher Stelle man einen Fluss durch eine Brücke passierbar macht.<br><br><br />
#'''Der Feinschliff'''<br>Die Karte mag nun beinahe vollständig sein, aber sie benötigt noch Verzierungen. Man kann verschiedene Grastöne setzen, Felsen und Schlamm auf Wasserflächen verteilen, etwas Abfall um die Dörfer herum platzieren, auf den Wiesen Blumen wachsen lassen. Für Innenräume greift man auf Truhen, Altare, Beleuchtung, Trankflaschen, usw. zurück. Wenn es passt, kann man die Ausschmückungen natürlich auch beliebig mischen. Zu viele Verzierungen lassen eine Karte aber schnell überladen wirken. <br />
<br />
Das Schaffen einer schönen Karte erfordert einiges an Übung. Eine interessante, herausfordernde, gut ausbalancierte Karte zu machen ist eine Kunst für sich. Der Entwickler ESR hat in dem Artikel <br />
[http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] einige praktische Tipps gesammelt.<br>Weitere Hilfe gibt es auf Nachfrage im Forum im [http://www.wesnoth.org/forum/viewforum.php?f=26 Abschnitt Entwicklung] und im [https://discord.com/channels/231976805987385345/371775921885020160 Discord-Chat] in den Chaträumen #modding und #development.<br />
<br />
== Wie geht es weiter? ==<br />
<br />
Die Karte ist fertig, und sie ist fantastisch geworden! Und nun? Es ist eigentlich ganz einfach.<br />
<br />
=== Die Karte spielen ===<br />
<br />
Eine im voreingestellten Ordner (standardmäßig ''userdata''/editor/maps/) des Karteneditors abgespeicherte Karte erscheint automatisch in der Liste der verfügbaren Karten '''an oberster Stelle'''. Bei einer Multiplayer-Karte wählt man dazu im Hauptmenü des Spiels den Menüpunkt '' Multiplayer'' und wählt einen Zugang, bei Einzelkarten oder -szenarios den Menüpunkt ''Kampagnen''.<br />
<br />
Auf einem Multiplayer-Server wird die Karte anderen Spielern unter dem Namen "User Map" angezeigt, auch bei der Fortsetzung des Spiels wird auf "User Map" verwiesen.<br />
<br />
=== Use your map in a scenario ===<br />
<br />
If you're interested in more complex gameplay, you can use your map in a scenario. More information on how to proceed is on the [[BuildingScenarios]] page.<br />
<br />
=== Share your map ===<br />
<br />
When you're ready to share your map with the world, post it to the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum] or package it to be distributed on the in-game add-ons server. For instructions on how to distribute maps, see [[Distributing_content]]<br />
<br />
== Weiterführende Informationen ==<br />
Innerhalb der einzelnen Kartendateien befindet sich die Daten in kodierter Form, welche die Spielengine während des Spiels in eine grafische Darstellung ('''terrain''') umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Siehe auch ==<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69330BuildingMaps/de2022-02-15T07:22:42Z<p>RufDerMacht: /* Eine neue Karte erzeugen */ trans go on</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
== Eine neue Karte erzeugen ==<br />
<br />
'''Vorbemerkung:''' Der Karteneditor beinhaltet seit Wesnoth 1.12 auch einige Optionen, um neben reinen Karten auch Szenarios zu erzeugen. Um eine reine Karte abzuspeichern, die keinerlei szenariospezifische Details enthält, wählt man beim Speichern im Menü ''Datei'' den Menüpunkt ''Karte speichern unter''. Möchte man die Szenariodetails mitspeichern, wählt man den Menüpunkt ''Szenario speichern unter''.<br>Mehr zu szenariospezifischen Inhalten findet sich unter [[BuildingScenarios]].<br />
<br />
'''Neben diese eher allgemein gehaltenen Anleitung hier gibt es auch eine einfache [[How to make nice map in few minutes|Schritt-für-Schritt-Anleitung]], die das Erzeugen einer neuen Karte sehr viel detaillierter beschreibt.'''<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
Beim ersten Öffnen des Karteneditors sieht man eine große Leinwand ('''canvas'''), die vollständig mit Gras gefüllt ist. Im Folgenden wird umrissen, wie man diese leere Wiese in ein interessantes und herausforderndes Schlachtfeld verwandeln kann.<br />
<br />
#'''Den Verwendungszweck bestimmen'''<br>Karten, die in einer Kampagne Verwendung finden sollen, stehen in einem Bezug zu der zugrunde liegenden Geschichte, die in der Kampagne erzählt wird. Das spiegelt sich in der Landschaft, der Verteilung der Burgen und anderen Besonderheiten der Karte wider.<br>Multiplayer-Karten haben dagegen oft einen "arena-mäßigen" Stil, um für alle menschlichen Mitspieler ungefähr gleiche Chancen zu bieten: Sie sind häufig symmetrisch, beinhalten viele verschiedene Terrainarten, um die Vorteile unterschiedlicher Einheiten ausspielen zu können, und haben nicht selten nicht-rechteckige Formen.<br><br><br />
#'''Die Kartengröße bestimmen'''<br>Auch die Größe der Karte hängt unmittelbar von ihrem Verwendungszweck ab, kann aber auch jederzeit angepasst werden. Eine engmaschige Kampfarena wird tendenziell eher kleiner ausfallen als eine Karte, auf der epische Schlachten ausgetragen werden sollen. Man sollte dabei im Hinterkopf behalten, dass eine zu große Karte schnell langweilig werden kann.<br><br><br />
#'''Für ein Leitthema entscheiden'''<br>Wesnoth beinhalten viele verschiedene Terraintypen für viele verschiedene Situationen: Höhlen, Wiesen, Gebirge, Wasserfläche, Eiswüsten, u.v.a.m. Es hat sich bewährt, eine Art Leitthema für eine Karte zu bestimmen und die Karte dann mit den dazu passenden Terrains auszustatten.<br><br><br />
#'''Zuerst großräumige geografische Merkmale platzieren'''<br>Bei einer Karte in der Außenwelt wäre es nun an der Zeit, Gebirgszüge, Flüsse und andere großflächige Landschaftsabschnitte usw. zu setzen. Bei Innenraumkarten werden nun Wände, Durchbrüche und größere Räume usw. festgelegt. Es kommt hier nicht auf die Genauigkeit an, sondern auf eine grobe gestalterische Konzeption.<br><br><br />
#'''Burgen, Dörfer und Straßen hinzufügen'''<br>So gut wie jede Karte benötigt Burgen und Festungen, um dort Einheiten rekrutieren zu können, und Straßen, Gras oder Erde, denn die meisten Einheiten bewegen sich am schnellsten auf diesem Terrain. Die Burgen sollten nicht zu nahe beieinander stehen. Die bedachtsame Platzierung der Burgen ist auf jeder Karte eine der wichtigsten Aufgaben, denn sie beeinflusst entscheidend den Spielfluss darauf. Nun werden Dörfer hinzugefügt, deren Besitz sowohl Goldeinkommen als auch Heilungsmöglichkeiten bietet. Als Faustregel gilt, dass Dörfer mindestens 6 Hexfelder Abstand voneinander haben sollten (es kann natürlich auch einmal Ausnahmen davon geben). Werden sie zu nah beieinander platziert, führt das möglicherweise zu einem Ungleichgewicht.<br><br><br />
#'''Feinere Details und Überarbeitung'''<br>Nun füllt man die offenen Bereich der Karte mit Wäldern, Bäumen, Hügel, Erde usw. Innenräume werden mit den passenden Terrains wie Gängen oder Türen ergänzt. Während dieses Prozesses wird zugleich auch das allgemeine Layout der Karte immer weiter verfeinert, um die Karte allmählich zu vervollständigen. Hier sollte auch der gewünschte Spielfluss immer wieder bedacht werden, beispielsweise an welcher Stelle man einen Fluss durch eine Brücke passierbar macht.<br><br><br />
#'''Der Feinschliff'''<br>Die Karte mag nun beinahe vollständig sein, aber sie benötigt noch Verzierungen. Man kann verschiedene Grastöne setzen, Felsen und Schlamm auf Wasserflächen verteilen, etwas Abfall um die Dörfer herum platzieren, auf den Wiesen Blumen wachsen lassen. Für Innenräume greift man auf Truhen, Altare, Beleuchtung, Trankflaschen, usw. zurück. Wenn es passt, kann man die Ausschmückungen natürlich auch beliebig mischen. Zu viele Verzierungen lassen eine Karte aber schnell überladen wirken. <br />
<br />
Das Schaffen einer schönen Karte erfordert einiges an Übung. Eine interessante, herausfordernde, gut ausbalancierte Karte zu machen ist eine Kunst für sich. Der Entwickler ESR hat in dem Artikel <br />
[http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] einige praktische Tipps gesammelt.<br>Weitere Hilfe gibt es auf Nachfrage im Forum im [http://www.wesnoth.org/forum/viewforum.php?f=26 Abschnitt Entwicklung] und im [https://discord.com/channels/231976805987385345/371775921885020160 Discord-Chat] in den Chaträumen #modding und #development.<br />
<br />
== Now what? ==<br />
<br />
You've created an awesome map with the map editor, but now what? It's actually quite simple.<br />
<br />
=== Play your map ===<br />
<br />
If you just want to play the map, maybe against the computer or with a friend, all you have to do is save it into the map editor's folder (the default location). Then, when you launch the game and host a multiplayer game, the map should appear <b>at the top</b> of the map choices screen.<br />
<br />
When creating a game on the multiplayer server, your map will be described to other players as a "User Map" and any replays stored on the server will refer to the game as "User Map."<br />
<br />
For the curious: Saving a map file like this creates a stand-alone file that holds the map data. That file is by default saved in <b><i>userdata</i>/editor/maps/</b>, and maps in that location are added to the top of the multiplayer map selection list.<br />
<br />
=== Use your map in a scenario ===<br />
<br />
If you're interested in more complex gameplay, you can use your map in a scenario. More information on how to proceed is on the [[BuildingScenarios]] page.<br />
<br />
=== Share your map ===<br />
<br />
When you're ready to share your map with the world, post it to the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum] or package it to be distributed on the in-game add-ons server. For instructions on how to distribute maps, see [[Distributing_content]]<br />
<br />
== Weiterführende Informationen ==<br />
Innerhalb der einzelnen Kartendateien befindet sich die Daten in kodierter Form, welche die Spielengine während des Spiels in eine grafische Darstellung ('''terrain''') umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Siehe auch ==<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69329BuildingMaps/de2022-02-14T22:19:17Z<p>RufDerMacht: /* Allgemeine Anleitung zur Erstellung von Karten */ trans</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
== Eine neue Karte erzeugen ==<br />
<br />
'''Vorbemerkung:''' Der Karteneditor beinhaltet seit Wesnoth 1.12 auch einige Optionen, um neben reinen Karten auch Szenarios zu erzeugen. Um eine reine Karte abzuspeichern, die keinerlei szenariospezifische Details enthält, wählt man beim Speichern im Menü ''Datei'' den Menüpunkt ''Karte speichern unter''. Möchte man die Szenariodetails mitspeichern, wählt man den Menüpunkt ''Szenario speichern unter''.<br>Mehr zu szenariospezifischen Inhalten findet sich unter [[BuildingScenarios]].<br />
<br />
'''Neben diese eher allgemein gehaltenen Anleitung hier gibt es auch eine einfache [[How to make nice map in few minutes|Schritt-für-Schritt-Anleitung]], die das Erzeugen einer neuen Karte sehr viel detaillierter beschreibt.'''<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
Beim ersten Öffnen des Karteneditors sieht man eine große Leinwand ('''canvas'''), die vollständig mit Gras gefüllt ist. Im Folgenden wird umrissen, wie man diese leere Wiese in ein interessantes und herausforderndes Schlachtfeld verwandeln kann.<br />
<br />
#'''Den Verwendungszweck bestimmen'''<br>Karten, die in einer Kampagne Verwendung finden sollen, stehen in einem Bezug zu der zugrunde liegenden Geschichte, die in der Kampagne erzählt wird. Das spiegelt sich in der Landschaft, der Verteilung der Burgen und anderen Besonderheiten der Karte wider.<br>Multiplayer-Karten haben dagegen oft einen "arena-mäßigen" Stil, um für alle menschlichen Mitspieler ungefähr gleiche Chancen zu bieten: Sie sind häufig symmetrisch, beinhalten viele verschiedene Terrainarten, um die Vorteile unterschiedlicher Einheiten ausspielen zu können, und haben nicht selten nicht-rechteckige Formen.<br><br><br />
#'''Die Kartengröße bestimmen'''<br>Auch die Größe der Karte hängt unmittelbar von ihrem Verwendungszweck ab, kann aber auch jederzeit angepasst werden. Eine engmaschige Kampfarena wird tendenziell eher kleiner ausfallen als eine Karte, auf der epische Schlachten ausgetragen werden sollen. Man sollte dabei im Hinterkopf behalten, dass eine zu große Karte schnell langweilig werden kann.<br><br><br />
#'''Für ein Leitthema entscheiden'''<br>Wesnoth beinhalten viele verschiedene Terraintypen für viele verschiedene Situationen: Höhlen, Wiesen, Gebirge, Wasserfläche, Eiswüsten, u.v.a.m. Es hat sich bewährt, eine Art Leitthema für eine Karte zu bestimmen und die Karte dann mit den dazu passenden Terrains auszustatten.<br><br><br />
#'''Zuerst großräumige geografische Merkmale platzieren'''<br>Bei einer Karte in der Außenwelt wäre es nun an der Zeit, Gebirgszüge, Flüsse und andere großflächige Landschaftsabschnitte usw. zu setzen. Bei Innenraumkarten werden nun Wände, Durchbrüche und größere Räume usw. festgelegt. Es kommt hier nicht auf die Genauigkeit an, sondern auf eine grobe gestalterische Konzeption.<br><br><br />
#'''Burgen, Dörfer und Straßen hinzufügen'''<br>So gut wie jede Karte benötigt Burgen und Festungen, um dort Einheiten rekrutieren zu können, und Straßen, Gras oder Dreck, denn die meisten Einheiten bewegen sich am schnellsten auf diesem Terrain. Die Burgen sollten nicht zu nahe beieinander stehen. Die bedachtsame Platzierung der Burgen ist auf jeder Karte eine der wichtigsten Aufgaben, denn sie beeinflusst entscheidend den Spielfluss darauf. Nun werden Dörfer hinzugefügt, deren Besitz sowohl Goldeinkommen als auch Heilungsmöglichkeiten bietet. Als Faustregel gilt, dass Dörfer mindestens 6 Hexfelder Abstand voneinander haben sollten. Werden sie zu nah beieinander platziert, führt das möglicherweise zu einem Ungleichgewicht.<br><br><br />
<br />
#'''Finer details and revision''' <br> Begin filling in the more open spaces of your map. Add forests, trees, hills, dirt, floors, the lot, while at the same time tweaking the general layout to fit your intended design. This is where the map really begins to reach completion. Also note to be sure to draw terrain features in a way that work with your plans for the scenario; for example, be sure to place bridges where you want your units to be able to cross a river. <br><br><br />
<br />
# <b>Embellishments</b> <br> Your map is almost complete, but in order to look polished, throw in a few embellishments. Make the grass different colors. Put rocks and mud in the rivers. Strew trash around your buildings. Scatter flowers in the meadows. It's up to you, just don't overdo it.<br />
<br />
It can take a lot of practice. Making good, balanced, interesting maps is an art unto itself. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] article. You can also ask for assistance on the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum].<br />
<br />
== Now what? ==<br />
<br />
You've created an awesome map with the map editor, but now what? It's actually quite simple.<br />
<br />
=== Play your map ===<br />
<br />
If you just want to play the map, maybe against the computer or with a friend, all you have to do is save it into the map editor's folder (the default location). Then, when you launch the game and host a multiplayer game, the map should appear <b>at the top</b> of the map choices screen.<br />
<br />
When creating a game on the multiplayer server, your map will be described to other players as a "User Map" and any replays stored on the server will refer to the game as "User Map."<br />
<br />
For the curious: Saving a map file like this creates a stand-alone file that holds the map data. That file is by default saved in <b><i>userdata</i>/editor/maps/</b>, and maps in that location are added to the top of the multiplayer map selection list.<br />
<br />
=== Use your map in a scenario ===<br />
<br />
If you're interested in more complex gameplay, you can use your map in a scenario. More information on how to proceed is on the [[BuildingScenarios]] page.<br />
<br />
=== Share your map ===<br />
<br />
When you're ready to share your map with the world, post it to the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum] or package it to be distributed on the in-game add-ons server. For instructions on how to distribute maps, see [[Distributing_content]]<br />
<br />
== Weiterführende Informationen ==<br />
Innerhalb der einzelnen Kartendateien befindet sich die Daten in kodierter Form, welche die Spielengine während des Spiels in eine grafische Darstellung ('''terrain''') umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Siehe auch ==<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69326BuildingMaps/de2022-02-14T19:16:59Z<p>RufDerMacht: trans to be continued</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
== Eine neue Karte erzeugen ==<br />
<br />
'''Vorbemerkung:''' Der Karteneditor beinhaltet seit Wesnoth 1.12 auch einige Optionen, um neben reinen Karten auch Szenarios zu erzeugen. Um eine reine Karte abzuspeichern, die keinerlei szenariospezifische Details enthält, wählt man beim Speichern im Menü ''Datei'' den Menüpunkt ''Karte speichern unter''. Möchte man die Szenariodetails mitspeichern, wählt man den Menüpunkt ''Szenario speichern unter''.<br>Mehr zu szenariospezifischen Inhalten findet sich unter [[BuildingScenarios]].<br />
<br />
'''Neben diese eher allgemein gehaltenen Anleitung hier gibt es auch eine einfache [[How to make nice map in few minutes|Schritt-für-Schritt-Anleitung]], die das Erzeugen einer neuen Karte sehr viel detaillierter beschreibt.'''<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
Beim ersten Öffnen des Karteneditors sieht man eine große Leinwand ('''canvas'''), die vollständig mit Gras gefüllt ist. Im Folgenden wird umrissen, wie man diese leere Wiese in ein interessantes und herausforderndes Schlachtfeld verwandeln kann.<br />
<br />
#'''Den Verwendungszweck bestimmen'''<br>Karten, die in einer Kampagne Verwendung finden sollen, stehen in einem Bezug zu der zugrunde liegenden Geschichte, die in der Kampagne erzählt wird. Das spiegelt sich in der Landschaft, der Verteilung der Burgen und anderen Besonderheiten der Karte wider.<br>Multiplayer-Karten haben dagegen oft einen "arena-mäßigen" Stil, um für alle menschlichen Mitspieler ungefähr gleiche Chancen zu bieten: Sie sind häufig symmetrisch, beinhalten viele verschiedene Terrainarten, um die Vorteile unterschiedlicher Einheiten ausspielen zu können, und haben nicht selten nicht-rechteckige Formen.<br><br><br />
#'''Die Kartengröße bestimmen'''<br>Auch die Größe der Karte hängt unmittelbar von ihrem Verwendungszweck ab, kann aber auch jederzeit angepasst werden. Eine engmaschige Kampfarena wird tendenziell eher kleiner ausfallen als eine Karte, auf der epische Schlachten ausgetragen werden sollen. Man sollte dabei im Hinterkopf behalten, dass eine zu große Karte schnell langweilig werden kann.<br><br><br />
#'''Für ein Leitthema entscheiden'''<br>Wesnoth beinhalten viele verschiedene Terraintypen für viele verschiedene Situationen: Höhlen, Wiesen, Gebirge, Wasserfläche, Eiswüsten, u.v.a.m. Es hat sich bewährt, eine Art Leitthema für eine Karte zu bestimmen und die Karte dann mit den dazu passenden Terrains auszustatten.<br><br><br />
<br />
#'''Place large geographic features first</b> <br> If you were designing an outdoors map, now would be the time to draw large features such as mountain ranges, rivers, etc. On an indoors map, place the walls, design the passages and rooms, etc. It doesn't have to be perfect, just a general outline to work with. <br><br><br />
<br />
# <b>Add castles, villages, and roads</b> <br> Every map needs castles and keeps to recruit on, and roads or flat terrain for units to move on (most units move best on Flat terrain such as roads, grass, or dirt). Add these now, making sure not to make your castles too big or close to one another. The placement of these determines the general flow of your scenario, so choose carefully. Also add villages. These will provide your team income and healing, so don't place them too close to each other (a general rule is about 6 hex radius (at minimum) around each village). Too many close together will result in imbalance from too much gold and health regeneration. <br><br><br />
<br />
# <b>Finer details and revision</b> <br> Begin filling in the more open spaces of your map. Add forests, trees, hills, dirt, floors, the lot, while at the same time tweaking the general layout to fit your intended design. This is where the map really begins to reach completion. Also note to be sure to draw terrain features in a way that work with your plans for the scenario; for example, be sure to place bridges where you want your units to be able to cross a river. <br><br><br />
<br />
# <b>Embellishments</b> <br> Your map is almost complete, but in order to look polished, throw in a few embellishments. Make the grass different colors. Put rocks and mud in the rivers. Strew trash around your buildings. Scatter flowers in the meadows. It's up to you, just don't overdo it.<br />
<br />
It can take a lot of practice. Making good, balanced, interesting maps is an art unto itself. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] article. You can also ask for assistance on the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum].<br />
<br />
== Now what? ==<br />
<br />
You've created an awesome map with the map editor, but now what? It's actually quite simple.<br />
<br />
=== Play your map ===<br />
<br />
If you just want to play the map, maybe against the computer or with a friend, all you have to do is save it into the map editor's folder (the default location). Then, when you launch the game and host a multiplayer game, the map should appear <b>at the top</b> of the map choices screen.<br />
<br />
When creating a game on the multiplayer server, your map will be described to other players as a "User Map" and any replays stored on the server will refer to the game as "User Map."<br />
<br />
For the curious: Saving a map file like this creates a stand-alone file that holds the map data. That file is by default saved in <b><i>userdata</i>/editor/maps/</b>, and maps in that location are added to the top of the multiplayer map selection list.<br />
<br />
=== Use your map in a scenario ===<br />
<br />
If you're interested in more complex gameplay, you can use your map in a scenario. More information on how to proceed is on the [[BuildingScenarios]] page.<br />
<br />
=== Share your map ===<br />
<br />
When you're ready to share your map with the world, post it to the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum] or package it to be distributed on the in-game add-ons server. For instructions on how to distribute maps, see [[Distributing_content]]<br />
<br />
== Weiterführende Informationen ==<br />
Innerhalb der einzelnen Kartendateien befindet sich die Daten in kodierter Form, welche die Spielengine während des Spiels in eine grafische Darstellung ('''terrain''') umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Siehe auch ==<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69325BuildingMaps/de2022-02-14T15:26:16Z<p>RufDerMacht: tr</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Der Karteneditor</div></div><br />
</div><br />
<br />
Karten ('''maps''') sind der grundlegenste Inhalt, den man für Battle for Wesnoth erstellen kann. Auf ihnen können komplexe Szenarien entwickelt werden, oder sie können ohne zusätzlichen Aufwand als einfache Schlachtfelder gespielt werden.<br />
<br />
Wesnoth bietet einen vollwertigen Karteneditor, der vom Hauptmenü des Spiels aus aufgerufen werden kann. Darin sind alle Werkzeuge enthalten, um eigene Kampfschauplätze zu gestalten und eigene Abenteuer zu inszenieren.<br />
<br />
Innerhalb der einzelnen Kartendateien befindet sich der Untergrund ('''terrain''') in kodierter Form, das die Spielengine während des Spiels in eine grafische Darstellung umwandelt. Normalerweise wird man diese Dateien niemals von Hand bearbeiten, aber gelegentlich ist es recht nützlich, das interne Dateiformat zu kennen.<br>Mehr zu diesem Thema steht unter [[TerrainCodesWML]].<br />
<br />
== Eine Karte erzeugen ==<br />
<br />
=== Anmerkung vor dem Start ===<br />
<br />
As of Wesnoth 1.12, the Map Editor has become more fully featured, and includes options to define scenario-related items on your map, such as name, unit placement, graphical items, time of day schedules, etc. <b>In order to create a plain map file with no scenario data, use the <i>File → Save Map</i> option. Scenario-specific content will not be saved unless you select the <i>File → Save Scenario</i> option. </b><br />
<br />
More on scenario-specific content is discussed in [[BuildingScenarios]].<br />
<br />
There is also a simple step-by-step guide [[How to make nice map in few minutes]].<br />
<br />
=== Allgemeine Anleitung zur Erstellung von Karten ===<br />
<br />
When you first open the map editor, you are presented with a large blank canvas covered in Grass. Below is a general guide to turning this empty meadow into an interesting and challenging battlefield.<br />
<br />
#<b>Decide on the intended use</b> <br> Maps intended to use in a campaign usually portray a location relative to the story being told, while maps intended for use in multiplayer usually have a more "arena-like" quality to them - they're often somewhat symmetrical, feature many types of terrains to benefit all units, and are often in not-rectangle shapes. <br><br><br />
#<b>Choose your map size</b> <br> You can resize your map with the resize function. Choose one proportional to the gameplay you would like to see on it. A close-knit battle arena? Smaller is better. A large epic, battle with many sides? Go larger. Remember, though, to not make it too big, or you will bore your players. <br><br><br />
#<b>Decide on a theme</b> <br> Wesnoth includes many different terrains for many different situations. Caves, dungeons, meadows, icy wastes, beautiful fall scenery, etc. Decide on a general theme for your map and be sure to work with the terrains that best fit your chosen theme. <br><br><br />
# <b>Place large geographic features first</b> <br> If you were designing an outdoors map, now would be the time to draw large features such as mountain ranges, rivers, etc. On an indoors map, place the walls, design the passages and rooms, etc. It doesn't have to be perfect, just a general outline to work with. <br><br><br />
# <b>Add castles, villages, and roads</b> <br> Every map needs castles and keeps to recruit on, and roads or flat terrain for units to move on (most units move best on Flat terrain such as roads, grass, or dirt). Add these now, making sure not to make your castles too big or close to one another. The placement of these determines the general flow of your scenario, so choose carefully. Also add villages. These will provide your team income and healing, so don't place them too close to each other (a general rule is about 6 hex radius (at minimum) around each village). Too many close together will result in imbalance from too much gold and health regeneration. <br><br><br />
# <b>Finer details and revision</b> <br> Begin filling in the more open spaces of your map. Add forests, trees, hills, dirt, floors, the lot, while at the same time tweaking the general layout to fit your intended design. This is where the map really begins to reach completion. Also note to be sure to draw terrain features in a way that work with your plans for the scenario; for example, be sure to place bridges where you want your units to be able to cross a river. <br><br><br />
# <b>Embellishments</b> <br> Your map is almost complete, but in order to look polished, throw in a few embellishments. Make the grass different colors. Put rocks and mud in the rivers. Strew trash around your buildings. Scatter flowers in the meadows. It's up to you, just don't overdo it.<br />
<br />
It can take a lot of practice. Making good, balanced, interesting maps is an art unto itself. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] article. You can also ask for assistance on the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum].<br />
<br />
== Now what? ==<br />
<br />
You've created an awesome map with the map editor, but now what? It's actually quite simple.<br />
<br />
=== Play your map ===<br />
<br />
If you just want to play the map, maybe against the computer or with a friend, all you have to do is save it into the map editor's folder (the default location). Then, when you launch the game and host a multiplayer game, the map should appear <b>at the top</b> of the map choices screen.<br />
<br />
When creating a game on the multiplayer server, your map will be described to other players as a "User Map" and any replays stored on the server will refer to the game as "User Map."<br />
<br />
For the curious: Saving a map file like this creates a stand-alone file that holds the map data. That file is by default saved in <b><i>userdata</i>/editor/maps/</b>, and maps in that location are added to the top of the multiplayer map selection list.<br />
<br />
=== Use your map in a scenario ===<br />
<br />
If you're interested in more complex gameplay, you can use your map in a scenario. More information on how to proceed is on the [[BuildingScenarios]] page.<br />
<br />
=== Share your map ===<br />
<br />
When you're ready to share your map with the world, post it to the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum] or package it to be distributed on the in-game add-ons server. For instructions on how to distribute maps, see [[Distributing_content]]<br />
<br />
== See Also ==<br />
<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=BuildingMaps/de&diff=69324BuildingMaps/de2022-02-14T15:02:23Z<p>RufDerMacht: created german page - translation soon beginning</p>
<hr />
<div>{{Translations}}<br />
{| style="float:right"<br />
|<br />
__NOTOC__<br />
|}<br />
<br />
<br />
{{Create}}<br />
<br />
<div class="thumb tright"><div><br />
[http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4.jpg http://www.wesnoth.org/images/sshots/wesnoth-1.11.8-4-175.jpg]<br />
<div class="thumbcaption">Map editor</div></div><br />
</div><br />
<br />
A map is the most basic of user made content you can create. Complex scenarios can be developed on them, or they can be played on their own as simple battlefields with no extra work required.<br />
<br />
Wesnoth features a fully featured map editor, accessible from the <b>Map Editor</b> option at the main menu. Inside you will find all the tools you need to create your own arenas to stage your adventures. <br />
<br />
Inside the individual map files themselves are simply terrain codes that the games translates into graphics when you play. Usually you will never have to edit these files manually, but it can come in handy to understand the format. For more on terrain codes and the map data format, see the [[TerrainCodesWML]] page.<br />
<br />
For further instructions on what to do once you have completed your map, see below.<br />
<br />
== Creating a map ==<br />
<br />
=== Note before you start ===<br />
<br />
As of Wesnoth 1.12, the Map Editor has become more fully featured, and includes options to define scenario-related items on your map, such as name, unit placement, graphical items, time of day schedules, etc. <b>In order to create a plain map file with no scenario data, use the <i>File → Save Map</i> option. Scenario-specific content will not be saved unless you select the <i>File → Save Scenario</i> option. </b><br />
<br />
More on scenario-specific content is discussed in [[BuildingScenarios]].<br />
<br />
There is also a simple step-by-step guide [[How to make nice map in few minutes]].<br />
<br />
=== General guide to map making ===<br />
<br />
When you first open the map editor, you are presented with a large blank canvas covered in Grass. Below is a general guide to turning this empty meadow into an interesting and challenging battlefield.<br />
<br />
#<b>Decide on the intended use</b> <br> Maps intended to use in a campaign usually portray a location relative to the story being told, while maps intended for use in multiplayer usually have a more "arena-like" quality to them - they're often somewhat symmetrical, feature many types of terrains to benefit all units, and are often in not-rectangle shapes. <br><br><br />
#<b>Choose your map size</b> <br> You can resize your map with the resize function. Choose one proportional to the gameplay you would like to see on it. A close-knit battle arena? Smaller is better. A large epic, battle with many sides? Go larger. Remember, though, to not make it too big, or you will bore your players. <br><br><br />
#<b>Decide on a theme</b> <br> Wesnoth includes many different terrains for many different situations. Caves, dungeons, meadows, icy wastes, beautiful fall scenery, etc. Decide on a general theme for your map and be sure to work with the terrains that best fit your chosen theme. <br><br><br />
# <b>Place large geographic features first</b> <br> If you were designing an outdoors map, now would be the time to draw large features such as mountain ranges, rivers, etc. On an indoors map, place the walls, design the passages and rooms, etc. It doesn't have to be perfect, just a general outline to work with. <br><br><br />
# <b>Add castles, villages, and roads</b> <br> Every map needs castles and keeps to recruit on, and roads or flat terrain for units to move on (most units move best on Flat terrain such as roads, grass, or dirt). Add these now, making sure not to make your castles too big or close to one another. The placement of these determines the general flow of your scenario, so choose carefully. Also add villages. These will provide your team income and healing, so don't place them too close to each other (a general rule is about 6 hex radius (at minimum) around each village). Too many close together will result in imbalance from too much gold and health regeneration. <br><br><br />
# <b>Finer details and revision</b> <br> Begin filling in the more open spaces of your map. Add forests, trees, hills, dirt, floors, the lot, while at the same time tweaking the general layout to fit your intended design. This is where the map really begins to reach completion. Also note to be sure to draw terrain features in a way that work with your plans for the scenario; for example, be sure to place bridges where you want your units to be able to cross a river. <br><br><br />
# <b>Embellishments</b> <br> Your map is almost complete, but in order to look polished, throw in a few embellishments. Make the grass different colors. Put rocks and mud in the rivers. Strew trash around your buildings. Scatter flowers in the meadows. It's up to you, just don't overdo it.<br />
<br />
It can take a lot of practice. Making good, balanced, interesting maps is an art unto itself. ESR has more handy tips in his [http://catb.org/~esr/wesnoth/campaign-design-howto.html#_map_composition Campaign Design How-To] article. You can also ask for assistance on the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum].<br />
<br />
== Now what? ==<br />
<br />
You've created an awesome map with the map editor, but now what? It's actually quite simple.<br />
<br />
=== Play your map ===<br />
<br />
If you just want to play the map, maybe against the computer or with a friend, all you have to do is save it into the map editor's folder (the default location). Then, when you launch the game and host a multiplayer game, the map should appear <b>at the top</b> of the map choices screen.<br />
<br />
When creating a game on the multiplayer server, your map will be described to other players as a "User Map" and any replays stored on the server will refer to the game as "User Map."<br />
<br />
For the curious: Saving a map file like this creates a stand-alone file that holds the map data. That file is by default saved in <b><i>userdata</i>/editor/maps/</b>, and maps in that location are added to the top of the multiplayer map selection list.<br />
<br />
=== Use your map in a scenario ===<br />
<br />
If you're interested in more complex gameplay, you can use your map in a scenario. More information on how to proceed is on the [[BuildingScenarios]] page.<br />
<br />
=== Share your map ===<br />
<br />
When you're ready to share your map with the world, post it to the [http://www.wesnoth.org/forum/viewforum.php?f=15 Multiplayer Development forum] or package it to be distributed on the in-game add-ons server. For instructions on how to distribute maps, see [[Distributing_content]]<br />
<br />
== See Also ==<br />
<br />
* [[TerrainCodesWML]]<br />
* [[ScenarioWML]]<br />
* [[ReferenceWML]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69323AddonStructure/de2022-02-14T13:46:33Z<p>RufDerMacht: </p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Weiterführende Informationen zu diesen Themen finden sich unter [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine erwartete Verzeichnis-Struktur ===<br />
Die Ordner, die Code enthalten - wie '''scenarios''' und '''macros''' - müssen nicht zwingend in bestimmter Weise benannt werden, sondern dürfen im Prinzip beliebige Namen erhalten. Allerdings ist es sinnvoll, selbsterklärende Namen zu wählen. Mit der Zeit haben sich bestimmte Namenskonventionen gebildet, die [[#Die von den Konventionen vorgegebene Verzeichnis-Struktur|weiter unten]] erläutert werden.<br />
<br />
Die folgenden Ordner '''müssen''' allerdings exakt wie angegeben benannt sein, damit die Spielengine sie findet:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''images'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''music'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''sounds'''<br />
<br />
Das gilt auch für einige Unterverzeichnisse von '''images''':<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''attacks'''<br>Enthält die Icons für jeden Angriff, siehe auch [[UnitTypeWML#Attacks]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''terrain'''<br>Enthält Grafiken für Terrain, also die grundlegende Grafik für Karten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''lua'''<br>Enthält Lua-Module, die in WML-Dateien durch <code>wesnoth.require "''Modul_Name''"</code> eingebunden werden können.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''translations'''<br>Enthält ggf. Übersetzungsdaten, kann aber auch leer sein. Ohne dieses Verzeichnis wird eine Warnung in der Standardfehlerausgabe (stderr) erzeugt. Der Pfad '''muss''' exakt dem innerhalb der <code>[textdomain)</code>-Tags in _main.cfg definierten Pfad entsprechen.<br />
<br />
Wie die Spielengine genau auf die genannten Verzeichnisse zugreift, wird in [[BinaryPathWML]] erläutert.<br />
<br />
=== Die von den Konventionen vorgegebene Verzeichnis-Struktur ===<br />
Die Bezeichnungen folgender Ordner sind nicht durch die Spielengine vorgeschrieben, sondern haben sich im Laufe der Zeit als besonders praktikabel ("best practice") durchgesetzt:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''ai'''<br>Enthält Lua-Dateien für die [[RCA_AI|künstliche Intelligenz (RCA&nbsp;AI)]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''masks'''<br> Enthält Dateien für [[TerrainMaskWML]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''units'''<br> Enthält Dateien für die Definition von Einheiten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''utils'''<br>Enthält WML-Makros.<br />
<br />
Auch für einige Unterordner des Verzeichnis '''images''' gibt es bestimmte Konventionen:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''halo'''<br>Grafiken zur [https://forums.wesnoth.org/viewtopic.php?t=44389 Halo Era].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''items'''<br>Gegenstands (Items)-Grafiken.<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''portraits'''<br>Portrait-Grafiken ([unit_type]profile=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''story'''<br>Hintergründe für Story-Bildschirme ([story])<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''units'''<br>Einheiten-Grafiken ([unit_type]image=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''misc'''<br>Der üblich Sammelordner, damit man nicht alles ins Hauptverzeichnis (oder sonstwohin) packt.<br />
<br />
==Siehe auch==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69322AddonStructure/de2022-02-14T13:43:59Z<p>RufDerMacht: /* Die von der Spielengine definierte Verzeichnis-Struktur */</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Weiterführende Informationen zu diesen Themen finden sich unter [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine definierte Verzeichnis-Struktur ===<br />
Die Ordner, die Code enthalten - wie '''scenarios''' und '''macros''' - müssen nicht zwingend in bestimmter Weise benannt werden, sondern dürfen im Prinzip beliebige Namen erhalten. Allerdings ist es sinnvoll, selbsterklärenden Namen zu wählen. Mit der Zeit haben sich bestimmte Namenskonventionen gebildet die [[<br />
<br />
Die folgenden Ordner '''müssen''' allerdings exakt wie angegeben benannt sein, damit die Spielengine sie findet:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''images'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''music'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''sounds'''<br />
<br />
Das gilt auch für einige Unterverzeichnisse von '''images''':<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''attacks'''<br>Enthält die Icons für jeden Angriff, siehe auch [[UnitTypeWML#Attacks]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''terrain'''<br>Enthält Grafiken für Terrain, also die grundlegende Grafik für Karten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''lua'''<br>Enthält Lua-Module, die in WML-Dateien durch <code>wesnoth.require "''Modul_Name''"</code> eingebunden werden können.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''translations'''<br>Enthält ggf. Übersetzungsdaten, kann aber auch leer sein. Ohne dieses Verzeichnis wird eine Warnung in der Standardfehlerausgabe (stderr) erzeugt. Der Pfad '''muss''' exakt dem innerhalb der <code>[textdomain)</code>-Tags in _main.cfg definierten Pfad entsprechen.<br />
<br />
Wie die Spielengine genau auf die genannten Verzeichnisse zugreift, wird in [[BinaryPathWML]] erläutert.<br />
<br />
=== Die von den Konventionen vorgegebene Verzeichnis-Struktur ===<br />
Die Bezeichnungen folgender Ordner sind nicht durch die Spielengine vorgeschrieben, sondern haben sich im Laufe der Zeit als besonders praktikabel ("best practice") durchgesetzt:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''ai'''<br>Enthält Lua-Dateien für die [[RCA_AI|künstliche Intelligenz (RCA&nbsp;AI)]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''masks'''<br> Enthält Dateien für [[TerrainMaskWML]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''units'''<br> Enthält Dateien für die Definition von Einheiten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''utils'''<br>Enthält WML-Makros.<br />
<br />
Auch für einige Unterordner des Verzeichnis '''images''' gibt es bestimmte Konventionen:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''halo'''<br>Grafiken zur [https://forums.wesnoth.org/viewtopic.php?t=44389 Halo Era].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''items'''<br>Gegenstands (Items)-Grafiken.<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''portraits'''<br>Portrait-Grafiken ([unit_type]profile=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''story'''<br>Hintergründe für Story-Bildschirme ([story])<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''units'''<br>Einheiten-Grafiken ([unit_type]image=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''misc'''<br>Der üblich Sammelordner, damit man nicht alles ins Hauptverzeichnis (oder sonstwohin) packt.<br />
<br />
==Siehe auch==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69321AddonStructure/de2022-02-14T13:42:06Z<p>RufDerMacht: /* See also */</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Weiterführende Informationen zu diesen Themen finden sich unter [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine definierte Verzeichnis-Struktur ===<br />
Die Ordner, die Code enthalten - wie '''scenarios''' und '''macros''' - müssen nicht zwingend so benannt werden, sondern dürfen im Prinzip beliebige Namen erhalten. Allerdings ist es sinnvoll, diese selbsterklärenden Namen zu wählen.<br />
<br />
Die folgenden Ordner '''müssen''' allerdings exakt wie angegeben benannt sein, damit die Spielengine sie findet:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''images'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''music'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''sounds'''<br />
<br />
Das gilt auch für einige Unterverzeichnisse von '''images''':<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''attacks'''<br>Enthält die Icons für jeden Angriff, siehe auch [[UnitTypeWML#Attacks]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''terrain'''<br>Enthält Grafiken für Terrain, also die grundlegende Grafik für Karten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''lua'''<br>Enthält Lua-Module, die in WML-Dateien durch <code>wesnoth.require "''Modul_Name''"</code> eingebunden werden können.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''translations'''<br>Enthält ggf. Übersetzungsdaten, kann aber auch leer sein. Ohne dieses Verzeichnis wird eine Warnung in der Standardfehlerausgabe (stderr) erzeugt. Der Pfad '''muss''' exakt dem innerhalb der <code>[textdomain)</code>-Tags in _main.cfg definierten Pfad entsprechen.<br />
<br />
Wie die Spielengine genau auf die genannten Verzeichnisse zugreift, wird in [[BinaryPathWML]] erläutert.<br />
<br />
=== Die von den Konventionen vorgegebene Verzeichnis-Struktur ===<br />
Die Bezeichnungen folgender Ordner sind nicht durch die Spielengine vorgeschrieben, sondern haben sich im Laufe der Zeit als besonders praktikabel ("best practice") durchgesetzt:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''ai'''<br>Enthält Lua-Dateien für die [[RCA_AI|künstliche Intelligenz (RCA&nbsp;AI)]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''masks'''<br> Enthält Dateien für [[TerrainMaskWML]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''units'''<br> Enthält Dateien für die Definition von Einheiten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''utils'''<br>Enthält WML-Makros.<br />
<br />
Auch für einige Unterordner des Verzeichnis '''images''' gibt es bestimmte Konventionen:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''halo'''<br>Grafiken zur [https://forums.wesnoth.org/viewtopic.php?t=44389 Halo Era].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''items'''<br>Gegenstands (Items)-Grafiken.<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''portraits'''<br>Portrait-Grafiken ([unit_type]profile=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''story'''<br>Hintergründe für Story-Bildschirme ([story])<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''units'''<br>Einheiten-Grafiken ([unit_type]image=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''misc'''<br>Der üblich Sammelordner, damit man nicht alles ins Hauptverzeichnis (oder sonstwohin) packt.<br />
<br />
==Siehe auch==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69320AddonStructure/de2022-02-14T13:41:14Z<p>RufDerMacht: /* Directory structure defined by convention */ translated</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Weiterführende Informationen zu diesen Themen finden sich unter [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine definierte Verzeichnis-Struktur ===<br />
Die Ordner, die Code enthalten - wie '''scenarios''' und '''macros''' - müssen nicht zwingend so benannt werden, sondern dürfen im Prinzip beliebige Namen erhalten. Allerdings ist es sinnvoll, diese selbsterklärenden Namen zu wählen.<br />
<br />
Die folgenden Ordner '''müssen''' allerdings exakt wie angegeben benannt sein, damit die Spielengine sie findet:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''images'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''music'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''sounds'''<br />
<br />
Das gilt auch für einige Unterverzeichnisse von '''images''':<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''attacks'''<br>Enthält die Icons für jeden Angriff, siehe auch [[UnitTypeWML#Attacks]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''terrain'''<br>Enthält Grafiken für Terrain, also die grundlegende Grafik für Karten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''lua'''<br>Enthält Lua-Module, die in WML-Dateien durch <code>wesnoth.require "''Modul_Name''"</code> eingebunden werden können.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''translations'''<br>Enthält ggf. Übersetzungsdaten, kann aber auch leer sein. Ohne dieses Verzeichnis wird eine Warnung in der Standardfehlerausgabe (stderr) erzeugt. Der Pfad '''muss''' exakt dem innerhalb der <code>[textdomain)</code>-Tags in _main.cfg definierten Pfad entsprechen.<br />
<br />
Wie die Spielengine genau auf die genannten Verzeichnisse zugreift, wird in [[BinaryPathWML]] erläutert.<br />
<br />
=== Die von den Konventionen vorgegebene Verzeichnis-Struktur ===<br />
Die Bezeichnungen folgender Ordner sind nicht durch die Spielengine vorgeschrieben, sondern haben sich im Laufe der Zeit als besonders praktikabel ("best practice") durchgesetzt:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''ai'''<br>Enthält Lua-Dateien für die [[RCA_AI|künstliche Intelligenz (RCA&nbsp;AI)]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''masks'''<br> Enthält Dateien für [[TerrainMaskWML]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''units'''<br> Enthält Dateien für die Definition von Einheiten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''utils'''<br>Enthält WML-Makros.<br />
<br />
Auch für einige Unterordner des Verzeichnis '''images''' gibt es bestimmte Konventionen:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''halo'''<br>Grafiken zur [https://forums.wesnoth.org/viewtopic.php?t=44389 Halo Era].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''items'''<br>Gegenstands (Items)-Grafiken.<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''portraits'''<br>Portrait-Grafiken ([unit_type]profile=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''story'''<br>Hintergründe für Story-Bildschirme ([story])<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''units'''<br>Einheiten-Grafiken ([unit_type]image=)<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''misc'''<br>Der üblich Sammelordner, damit man nicht alles ins Hauptverzeichnis (oder sonstwohin) packt.<br />
<br />
==See also==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69319AddonStructure/de2022-02-14T13:08:22Z<p>RufDerMacht: /* Die von der Spielengine definierte Verzeichnis-Struktur */ translated</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Weiterführende Informationen zu diesen Themen finden sich unter [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine definierte Verzeichnis-Struktur ===<br />
Die Ordner, die Code enthalten - wie '''scenarios''' und '''macros''' - müssen nicht zwingend so benannt werden, sondern dürfen im Prinzip beliebige Namen erhalten. Allerdings ist es sinnvoll, diese selbsterklärenden Namen zu wählen.<br />
<br />
Die folgenden Ordner '''müssen''' allerdings exakt wie angegeben benannt sein, damit die Spielengine sie findet:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''images'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''music'''<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''sounds'''<br />
<br />
Das gilt auch für einige Unterverzeichnisse von '''images''':<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''attacks'''<br>Enthält die Icons für jeden Angriff, siehe auch [[UnitTypeWML#Attacks]].<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/'''terrain'''<br>Enthält Grafiken für Terrain, also die grundlegende Grafik für Karten.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''lua'''<br>Enthält Lua-Module, die in WML-Dateien durch <code>wesnoth.require "''Modul_Name''"</code> eingebunden werden können.<br />
*''userdata''/data/add-ons/A_Simple_Addon/'''translations'''<br>Enthält ggf. Übersetzungsdaten, kann aber auch leer sein. Ohne dieses Verzeichnis wird eine Warnung in der Standardfehlerausgabe (stderr) erzeugt. Der Pfad '''muss''' exakt dem innerhalb der <code>[textdomain)</code>-Tags in _main.cfg definierten Pfad entsprechen.<br />
<br />
Wie die Spielengine genau auf die genannten Verzeichnisse zugreift, wird in [[BinaryPathWML]] erläutert.<br />
<br />
=== Directory structure defined by convention ===<br />
<br />
The names of these directories are not prescribed by the engine, but the current "best practice" is:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/ai</b> Lua files for the RCA_AI<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/masks</b> files for TerrainMaskWML<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/units</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/utils</b> containing WML macros<br />
<br />
The "images" directory is prescribed by the engine, but can also use subdirectories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/halo</b> for '''[halo_frame]''', etc<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/items</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/portraits</b> for '''[unit_type]profile='''<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/story</b> backgrounds for '''[story]''' screens<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/units</b> for '''[unit_type]image=''', etc<br />
<br />
Finally, the customary fallback for not putting stuff in the parent directory:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/misc</b><br />
<br />
==See also==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69318AddonStructure/de2022-02-14T04:11:38Z<p>RufDerMacht: /* Die Verzeichnis-Struktur */ trans</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Weiterführende Informationen zu diesen Themen finden sich unter [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine definierte Verzeichnis-Struktur ===<br />
Die Ordner, die Code enthalten - wie '''scenarios''' und '''macros''' - müssen nicht zwingend so benannt werden, sondern dürfen im Prinzip beliebige Namen erhalten. Allerdings ist es sinnvoll, diese selbsterklärenden Namen zu wählen.<br />
<br />
Die folgenden Ordner '''müssen''' allerdings exakt wie angegeben benannt sein, damit die Spielengine sie findet:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images<br />
*''userdata''/data/add-ons/A_Simple_Addon/music<br />
*''userdata''/data/add-ons/A_Simple_Addon/sounds<br />
<br />
Das gilt auch für einige Unterverzeichnisse von '''images''':<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/attacks<br>Enthält die Icons für jeden Angriff, siehe auch [[UnitTypeWML#Attacks]]<br />
*''userdata''/data/add-ons/A_Simple_Addon/images/terrain<br>Enthält Grafiken für Terrain<br />
*''userdata''/data/add-ons/A_Simple_Addon/lua<br>Enthält Lua-Module, die in WML-Dateien durch <code>wesnoth.require "''Modul_Name''"</code> eingebunden werden können.<br />
<br />
While Lua can be embedded in WML files, the following directory is supported for loading them via Lua's <b>wesnoth.require "<i>module_name</i>"</b>.<br />
<br />
<br />
<br />
If you set up a textdomain, create a <b>translations</b> directory, even if it remains empty. Failure to do so generates a warning in stderr. This path <b>must</b> be the same as specified in the [textdomain] tag.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/translations</b><br />
<br />
<br />
You may name the directories containing code (such as <b>scenarios</b> and <b>macros</b>) anything you like, but the binary content directories listed below <b>must</b> be named as such and be relative to your [binary_path]. This is because when trying to resolve an image path, Wesnoth will look under images/, and likewise for sounds and music, in as explained in the [[BinaryPathWML]] page.<br />
<br />
<br />
Some subdirectories of <b>images</b> are also supported by the engine:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/attacks</b> Icons for each attack, see [[UnitTypeWML#Attacks]]'s documentation for '''icon'''<br />
*'''''userdata''/data/add-ons/A_Simple_Addon/images/terrain</b> Terrain graphics<br />
<br />
While Lua can be embedded in WML files, the following directory is supported for loading them via Lua's <b>wesnoth.require "<i>module_name</i>"</b>.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/lua</b><br />
<br />
If you set up a textdomain, create a <b>translations</b> directory, even if it remains empty. Failure to do so generates a warning in stderr. This path <b>must</b> be the same as specified in the [textdomain] tag.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/translations</b><br />
<br />
=== Directory structure defined by convention ===<br />
<br />
The names of these directories are not prescribed by the engine, but the current "best practice" is:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/ai</b> Lua files for the RCA_AI<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/masks</b> files for TerrainMaskWML<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/units</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/utils</b> containing WML macros<br />
<br />
The "images" directory is prescribed by the engine, but can also use subdirectories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/halo</b> for '''[halo_frame]''', etc<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/items</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/portraits</b> for '''[unit_type]profile='''<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/story</b> backgrounds for '''[story]''' screens<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/units</b> for '''[unit_type]image=''', etc<br />
<br />
Finally, the customary fallback for not putting stuff in the parent directory:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/misc</b><br />
<br />
==See also==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69317AddonStructure/de2022-02-13T22:38:17Z<p>RufDerMacht: /* The Directory Structure */ translated.</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== Die Verzeichnis-Struktur ==<br />
<br />
Welche Ordner als nächstes angelegt werden, hängt von den gewünschten neuen Inhalten der Erweiterung ab. So erfordern Kampagnen oder Karten-Pakete '''scenarios'''- und '''maps'''-Ordner, während ein Musik-Paket lediglich den Ordner '''music''' benötigt. In diesem Beispiel-Add-on nehmen wir an, dass eine Kampagne oder ein einzelnes Szenario erzeugt werden soll.<br />
<br />
Wir legen die folgenden Ordner an:<br />
<br />
*''userdata''/data/add-ons/A_Simple_Addon/scenarios<br />
*''userdata''/data/add-ons/A_Simple_Addon/maps<br />
<br />
Alle Datendateien für Karten werden im '''maps'''-Ordner gespeichert, während alle Konfigurationsdateien (mit der Endung '''.cfg''') im '''scenarios'''-Ordner landen. Wür weiterführende Informationen zu diesen Themen siehe [[BuildingMaps]] und [[BuildingScenarios]].<br><br />
Für weitere Inhalte, etwa Musik, Sound oder Grafiken, ist es notwendig, entsprechende Ordner anzulegen. Das wird eigentlich auch für alle andere Inhalte empfohlen, um die Übersicht zu wahren.<br />
<br />
=== Die von der Spielengine definierte Verzeichnis-Struktur ===<br />
You may name the directories containing code (such as <b>scenarios</b> and <b>macros</b>) anything you like, but the binary content directories listed below <b>must</b> be named as such and be relative to your [binary_path]. This is because when trying to resolve an image path, Wesnoth will look under images/, and likewise for sounds and music, in as explained in the [[BinaryPathWML]] page.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/music</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/sounds</b><br />
<br />
Some subdirectories of <b>images</b> are also supported by the engine:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/attacks</b> Icons for each attack, see [[UnitTypeWML#Attacks]]'s documentation for '''icon'''<br />
*'''''userdata''/data/add-ons/A_Simple_Addon/images/terrain</b> Terrain graphics<br />
<br />
While Lua can be embedded in WML files, the following directory is supported for loading them via Lua's <b>wesnoth.require "<i>module_name</i>"</b>.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/lua</b><br />
<br />
If you set up a textdomain, create a <b>translations</b> directory, even if it remains empty. Failure to do so generates a warning in stderr. This path <b>must</b> be the same as specified in the [textdomain] tag.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/translations</b><br />
<br />
=== Directory structure defined by convention ===<br />
<br />
The names of these directories are not prescribed by the engine, but the current "best practice" is:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/ai</b> Lua files for the RCA_AI<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/masks</b> files for TerrainMaskWML<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/units</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/utils</b> containing WML macros<br />
<br />
The "images" directory is prescribed by the engine, but can also use subdirectories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/halo</b> for '''[halo_frame]''', etc<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/items</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/portraits</b> for '''[unit_type]profile='''<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/story</b> backgrounds for '''[story]''' screens<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/units</b> for '''[unit_type]image=''', etc<br />
<br />
Finally, the customary fallback for not putting stuff in the parent directory:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/misc</b><br />
<br />
==See also==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69315AddonStructure/de2022-02-13T19:54:34Z<p>RufDerMacht: /* Die Datei _main.cfg */ translated</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei". Die Datei _main.cfg stellt die Verbindung zwischen dem Spiel und dem Add-on her und weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen.<br />
<br />
Hier ein sehr einfaches Beispiel für _main.cfg:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
<small>Als ein Nutzer ohne jede Programmiererfahrung ist es vermutlich hilfreich, an dieser Stelle zuerst auf das [[WML_for_Complete_Beginners:_Introduction|WML Tutorial]] zurückzugreifen, denn selbst dieses einfache Beispiel setzt bereits einige Kenntnisse voraus. Ein Nutzer mit entsprechender Vorerfahrung findet weiterführende Informationen in der [[ReferenceWML|WML-Referenz]].</small><br />
<br />
Zunächst wird mit <code>#textdomain wesnoth-A_Simple_Addon</code> bekannt gemacht, wie die aktuell gültige Textdomain heißt. Mit dem nachfolgenden WML-Tag <code>[textdomain]</code> wird die Textdomain definiert: ihr Name und der Pfad zum Ordner mit Übersetzungen. Der Name der Textdomain setzt sich aus dem Präfix '''wesnoth-''' und dem Namen des Add-ons zusammen. Diese Konvention hat sich durchgesetzt und erschwert deutlich das Entstehen von lästigen Namenskonflikten.<br />
<br />
<b>Anmerkung:</b> Eine Textdomain ist nur erforderlich, wenn die Erweiterung Text enthält, der übersetzt werden kann und soll. Ein Musikerweiterung beispielsweise benötigt nicht notwendig eine Textdomain.<br />
<br />
Alle Tags außer [campaign] und [textdomain] '''müssen''' durch eine bedingte Präprozessor-Anweisung der Form <code>#ifdef [andere Tags] #endif</code> umschlossen werden! Das betrifft auch solche Tags, die in anderen Schritten erst eingebunden werden. Diese Vorgehensweise bewirkt, dass bestimmte Inhalte der Erweiterung auch wirklich nur dann eingebunden werden, wenn sie benötigt werden, und verhindert Konflikte mit anderen Add-ons. Für weiterführende Informationen dazu siehe [[PreprocessorRef]].<br />
<br />
Im obigen Beispiel wird das Szenario nur im Multiplayer-Modus geladen. Innerhalb einer Kampagne kann man allerdings auch ein spezifisches Flag setzen, um einen bestimmten Inhalt nur innerhalb des Ablaufs dieser Kampagne zu laden. <br />
<br />
Innerhalb der Tags <code>[binary_path]</code> wird der (relative) Pfad für binäre Daten definiert, den ein Add-on zusätzlich zu den vom Spiel vorgegebenen Standardpfaden nutzen soll. Diese Angabe ist also nur dann notwendig, wenn ein Add-on eigene binäre Daten nutzen möchte.<br><br />
Im Anschluss daran wird durch <code>{~add-ons/A_Simple_Addon/scenarios}</code> noch der Pfad für die neuen Szenario-Daten definiert. Auch diese Angabe liegt noch innerhalb der bedingten Präprozessor-Anweisung, wird also nur im Falle eines Multiplayer-Spiels gültig.<br><br />
Diese einfache Form der Pfadangabe gilt NICHT für die Angabe des Einheiten-Ordners '''units'''. Diese muss immer von <code>[units]</code>-Tags umschlossen werden:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
<br />
'''Anmerkung:''' Aus der Datei _main.cfg heraus darf nur '''Code''' eingebunden werden, '''keine''' binären Inhalte (wie etwa Musik, Sounds oder Bilder). Hier wird lediglich mit <code>[binary path]</code> ein Pfad definiert, auf den von anderen Dateien aus verwiesen werden kann.<br />
<br />
== The Directory Structure ==<br />
<br />
What to create next depend on what type of content you are creating. For example, campaigns or map packs will have <b>scenarios</b> and <b>maps</b> directories, while a music pack would have only <b>music</b>. Here we will assume you are creating a campaign or single-scenario add-on.<br />
<br />
Create the following directories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/scenarios</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/maps</b><br />
<br />
All map files used in scenarios go in <b>maps</b> (see [[BuildingMaps]]. All configuration (‘.cfg’) files for scenarios go in <b>scenarios</b> (see [[BuildingScenarios]]).<br />
<br />
If you have additional custom content such as images, sounds or music, it's necessary to create additional directories. Even for other custom content, creating directories to organise it is recommended.<br />
<br />
=== Directory structure defined by the engine ===<br />
<br />
You may name the directories containing code (such as <b>scenarios</b> and <b>macros</b>) anything you like, but the binary content directories listed below <b>must</b> be named as such and be relative to your [binary_path]. This is because when trying to resolve an image path, Wesnoth will look under images/, and likewise for sounds and music, in as explained in the [[BinaryPathWML]] page.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/music</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/sounds</b><br />
<br />
Some subdirectories of <b>images</b> are also supported by the engine:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/attacks</b> Icons for each attack, see [[UnitTypeWML#Attacks]]'s documentation for '''icon'''<br />
*'''''userdata''/data/add-ons/A_Simple_Addon/images/terrain</b> Terrain graphics<br />
<br />
While Lua can be embedded in WML files, the following directory is supported for loading them via Lua's <b>wesnoth.require "<i>module_name</i>"</b>.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/lua</b><br />
<br />
If you set up a textdomain, create a <b>translations</b> directory, even if it remains empty. Failure to do so generates a warning in stderr. This path <b>must</b> be the same as specified in the [textdomain] tag.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/translations</b><br />
<br />
=== Directory structure defined by convention ===<br />
<br />
The names of these directories are not prescribed by the engine, but the current "best practice" is:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/ai</b> Lua files for the RCA_AI<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/masks</b> files for TerrainMaskWML<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/units</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/utils</b> containing WML macros<br />
<br />
The "images" directory is prescribed by the engine, but can also use subdirectories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/halo</b> for '''[halo_frame]''', etc<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/items</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/portraits</b> for '''[unit_type]profile='''<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/story</b> backgrounds for '''[story]''' screens<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/units</b> for '''[unit_type]image=''', etc<br />
<br />
Finally, the customary fallback for not putting stuff in the parent directory:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/misc</b><br />
<br />
==See also==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69314AddonStructure/de2022-02-13T13:15:55Z<p>RufDerMacht: began to translate. 2B continue</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
'''Innerhalb dieser und anderer Seiten im Wiki wird immer wieder Bezug genommen auf ein Verzeichnis, in denen die benutzerdefinierten Inhalte für Wesnoth gespeichert werden. Es wird hier mit''' ''userdata'' '''bezeichnet, obwohl ein Verzeichnis diesen Namens nicht (mehr) existiert. Die Bezeichnung hat sich aus praktischen Gründen eingebürgert.'''<br />
<br />
Wie man den Pfad dieses Verzeichnis herausfindet und darauf zugreift, wird ausführlich unter [[EditingWesnoth/de|EditingWesnoth]] erklärt.<br />
<br />
Neue, benutzerdefinierte Inhalte, kurz '''UMC''' (User Made Content), werden auch als '''Add-ons''' und im Deutschen auch als '''Erweiterungen''' bezeichnet. Sie werden damit von den Inhalten unterschieden, die bereits vom Spiel mitgebracht werden. Man kann beim Erzeugen neuer Inhalte aber in hohem Maße auf bereits vorhandene Spieldaten zurückgreifen.<br><br />
Um neue Inhalte zu erschaffen, ist es zunächst notwendig, im Verzeichnis <code>''userdata''/data/add-ons/</code> ein neues Unterverzeichnis mit einem beliebigen Namen anzulegen. In diesem und allen weiteren Verzeichnisnamen sind KEINE Leerzeichen erlaubt. Statt dessen können Unter_Striche oder Binde-Striche verwendet werden.<br />
<br />
'''In der Folge (und auch auf anderen Seiten im Wiki) wird ein derartiges Unterverzeichnis vorausgesetzt!'''<br />
<br />
== Die Datei _main.cfg ==<br />
<br />
Im nachfolgende Beipiel gehen wir davon aus, eine neue Erweiterung namens '''A_Simple_Addon''' zu erzeugen.<br />
<br />
#Dazu legen wir zunächst das Verzeichnis <code>''userdata''/data/add-ons/A_Simple_Addon</code> an. <br />
#Danach erzeugen wir innerhalb des neuen Ordners eine Textdatei namens '''_main.cfg'''. Ohne diese Datei wird das Spiel nicht einmal bemerken, dass dein Add-on existiert. Der Name der Datei bedeutet in etwa "Hauptkonfigurationsdatei".<br />
<br />
Die Datei _main.cfg weist das Spiel an, wie die Inhalte des Add-ons geladen werden sollen. Hier ein sehr einfaches Beispiel:<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
The [textdomain] WML tag specifies where the game should look for translations to the strings in the add-on. The textdomain should be the add-on's directory name prefixed with <b>"wesnoth-"</b>, to ensure that it does not conflict with other textdomains that might be specified on a given system and is compatible with [[WesCamp]].<br />
<br />
<b>Note:</b> A textdomain is only required if your add-on contains text meant to be translated. In the case of, for example, a music pack, no textdomain is needed.<br />
<br />
All tags save for [campaign] and [textdomain] <b>must</b> be enclosed in an <b>#ifdef</b> preprocessor conditional - including those substituted through inclusion (see [[PreprocessorRef]] for more information). This is to make sure your content only loads at the correct time and does not conflict with other add-ons. In the example above, the scenarios will be loaded when you enter multiplayer mode. In a campaign, you can set up a specific flag to allow your content to only load when that campaign is played. <br />
<br />
<b>Note:</b> Only <b>code</b> must be included from this file. You <b>do not</b> need to include binary content (such as sounds, images, or music). Those may be referred to simply by path relative to the one specified in [binary_path]. Also, including the <b>units</b> directory cannot be done by a simple path inclusion; it also must be wrapped in a <b>[units][/units]</b> tag pair, as such:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
== The Directory Structure ==<br />
<br />
What to create next depend on what type of content you are creating. For example, campaigns or map packs will have <b>scenarios</b> and <b>maps</b> directories, while a music pack would have only <b>music</b>. Here we will assume you are creating a campaign or single-scenario add-on.<br />
<br />
Create the following directories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/scenarios</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/maps</b><br />
<br />
All map files used in scenarios go in <b>maps</b> (see [[BuildingMaps]]. All configuration (‘.cfg’) files for scenarios go in <b>scenarios</b> (see [[BuildingScenarios]]).<br />
<br />
If you have additional custom content such as images, sounds or music, it's necessary to create additional directories. Even for other custom content, creating directories to organise it is recommended.<br />
<br />
=== Directory structure defined by the engine ===<br />
<br />
You may name the directories containing code (such as <b>scenarios</b> and <b>macros</b>) anything you like, but the binary content directories listed below <b>must</b> be named as such and be relative to your [binary_path]. This is because when trying to resolve an image path, Wesnoth will look under images/, and likewise for sounds and music, in as explained in the [[BinaryPathWML]] page.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/music</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/sounds</b><br />
<br />
Some subdirectories of <b>images</b> are also supported by the engine:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/attacks</b> Icons for each attack, see [[UnitTypeWML#Attacks]]'s documentation for '''icon'''<br />
*'''''userdata''/data/add-ons/A_Simple_Addon/images/terrain</b> Terrain graphics<br />
<br />
While Lua can be embedded in WML files, the following directory is supported for loading them via Lua's <b>wesnoth.require "<i>module_name</i>"</b>.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/lua</b><br />
<br />
If you set up a textdomain, create a <b>translations</b> directory, even if it remains empty. Failure to do so generates a warning in stderr. This path <b>must</b> be the same as specified in the [textdomain] tag.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/translations</b><br />
<br />
=== Directory structure defined by convention ===<br />
<br />
The names of these directories are not prescribed by the engine, but the current "best practice" is:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/ai</b> Lua files for the RCA_AI<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/masks</b> files for TerrainMaskWML<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/units</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/utils</b> containing WML macros<br />
<br />
The "images" directory is prescribed by the engine, but can also use subdirectories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/halo</b> for '''[halo_frame]''', etc<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/items</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/portraits</b> for '''[unit_type]profile='''<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/story</b> backgrounds for '''[story]''' screens<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/units</b> for '''[unit_type]image=''', etc<br />
<br />
Finally, the customary fallback for not putting stuff in the parent directory:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/misc</b><br />
<br />
==See also==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMachthttps://wiki.wesnoth.org/index.php?title=AddonStructure/de&diff=69313AddonStructure/de2022-02-13T12:14:03Z<p>RufDerMacht: Created German Page - will be translated shortly</p>
<hr />
<div>{{Translations}}<br />
{{Create}}<br />
<br />
In order to create custom content for Wesnoth, you need to set up a folder in <i>userdata</i>/data/add-ons/. If you have not found your userdata directory yet, read [[EditingWesnoth]] and come back here. This page will explain the basic directory structure of an add-on and where stuff goes.<br />
<br />
<b>Several pages on this wiki will assume you have done so and refer to relative paths in such.</b><br />
<br />
== The Main File ==<br />
<br />
For this example, we will assume you are creating an add-on called <b>A Simple Addon</b>.<br />
<br />
*Create the empty directory <b><i>userdata</i>/data/add-ons/A_Simple_Addon</b>.<br />
<br />
<b>Important:</b> Remember to use underscores or hyphens in all directory and file names instead of spaces. Failure to do so will result in your content not working properly.<br />
<br />
*Create a file called <b>_main.cfg</b> inside the A_Simple_Addon folder. Without this file, the game will not even recognize that your add-on exists.<br />
<br />
The _main.cfg file will instruct the game on how to load your content. Here is shown a very simple example of the file.<br />
<br />
<syntaxhighlight lang=wml><br />
#textdomain wesnoth-A_Simple_Addon<br />
[textdomain]<br />
name="wesnoth-A_Simple_Addon"<br />
path="data/add-ons/A_Simple_Addon/translations"<br />
[/textdomain]<br />
<br />
#ifdef MULTIPLAYER<br />
[binary_path]<br />
path=data/add-ons/A_Simple_Addon<br />
[/binary_path]<br />
<br />
{~add-ons/A_Simple_Addon/scenarios}<br />
#endif<br />
</syntaxhighlight><br />
<br />
The [textdomain] WML tag specifies where the game should look for translations to the strings in the add-on. The textdomain should be the add-on's directory name prefixed with <b>"wesnoth-"</b>, to ensure that it does not conflict with other textdomains that might be specified on a given system and is compatible with [[WesCamp]].<br />
<br />
<b>Note:</b> A textdomain is only required if your add-on contains text meant to be translated. In the case of, for example, a music pack, no textdomain is needed.<br />
<br />
All tags save for [campaign] and [textdomain] <b>must</b> be enclosed in an <b>#ifdef</b> preprocessor conditional - including those substituted through inclusion (see [[PreprocessorRef]] for more information). This is to make sure your content only loads at the correct time and does not conflict with other add-ons. In the example above, the scenarios will be loaded when you enter multiplayer mode. In a campaign, you can set up a specific flag to allow your content to only load when that campaign is played. <br />
<br />
<b>Note:</b> Only <b>code</b> must be included from this file. You <b>do not</b> need to include binary content (such as sounds, images, or music). Those may be referred to simply by path relative to the one specified in [binary_path]. Also, including the <b>units</b> directory cannot be done by a simple path inclusion; it also must be wrapped in a <b>[units][/units]</b> tag pair, as such:<br />
<br />
<syntaxhighlight lang=wml><br />
[units]<br />
{~add-ons/A_Simple_Addon/units}<br />
[/units]<br />
</syntaxhighlight><br />
<br />
== The Directory Structure ==<br />
<br />
What to create next depend on what type of content you are creating. For example, campaigns or map packs will have <b>scenarios</b> and <b>maps</b> directories, while a music pack would have only <b>music</b>. Here we will assume you are creating a campaign or single-scenario add-on.<br />
<br />
Create the following directories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/scenarios</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/maps</b><br />
<br />
All map files used in scenarios go in <b>maps</b> (see [[BuildingMaps]]. All configuration (‘.cfg’) files for scenarios go in <b>scenarios</b> (see [[BuildingScenarios]]).<br />
<br />
If you have additional custom content such as images, sounds or music, it's necessary to create additional directories. Even for other custom content, creating directories to organise it is recommended.<br />
<br />
=== Directory structure defined by the engine ===<br />
<br />
You may name the directories containing code (such as <b>scenarios</b> and <b>macros</b>) anything you like, but the binary content directories listed below <b>must</b> be named as such and be relative to your [binary_path]. This is because when trying to resolve an image path, Wesnoth will look under images/, and likewise for sounds and music, in as explained in the [[BinaryPathWML]] page.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/music</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/sounds</b><br />
<br />
Some subdirectories of <b>images</b> are also supported by the engine:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/attacks</b> Icons for each attack, see [[UnitTypeWML#Attacks]]'s documentation for '''icon'''<br />
*'''''userdata''/data/add-ons/A_Simple_Addon/images/terrain</b> Terrain graphics<br />
<br />
While Lua can be embedded in WML files, the following directory is supported for loading them via Lua's <b>wesnoth.require "<i>module_name</i>"</b>.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/lua</b><br />
<br />
If you set up a textdomain, create a <b>translations</b> directory, even if it remains empty. Failure to do so generates a warning in stderr. This path <b>must</b> be the same as specified in the [textdomain] tag.<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/translations</b><br />
<br />
=== Directory structure defined by convention ===<br />
<br />
The names of these directories are not prescribed by the engine, but the current "best practice" is:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/ai</b> Lua files for the RCA_AI<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/masks</b> files for TerrainMaskWML<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/units</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/utils</b> containing WML macros<br />
<br />
The "images" directory is prescribed by the engine, but can also use subdirectories:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/halo</b> for '''[halo_frame]''', etc<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/items</b><br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/portraits</b> for '''[unit_type]profile='''<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/story</b> backgrounds for '''[story]''' screens<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/units</b> for '''[unit_type]image=''', etc<br />
<br />
Finally, the customary fallback for not putting stuff in the parent directory:<br />
<br />
*<b><i>userdata</i>/data/add-ons/A_Simple_Addon/images/misc</b><br />
<br />
==See also==<br />
<br />
* [[Create]]<br />
* [[BinaryPathWML]]<br />
* [[BuildingCampaignsTheCampaignFile]]<br />
* [[WesCamp]]<br />
<br />
[[Category:Create]]</div>RufDerMacht