Einzel Maps zu Campagne zusammenstellen

Alles rund um das Mappen für Enemy Territory
Antworten
tomas.s
Einmalposter
Einmalposter
Beiträge: 1
Registriert: Do 9. Sep 2004, 07:20
Wohnort: Leipzig

Einzel Maps zu Campagne zusammenstellen

Beitrag von tomas.s »

Hallo,

ich bin noch ein Grünschnabel was Mapping angeht, deswegen kommt meine Frage sicherlich einigen lächerlich vor. Würde mich aber trotzdem über kurze sinnvolle Statements freuen.
Da wir bei uns lieber Kampagnen durchspielen, würde ich die vielen Einzelmaps gern zu Kampagnen zusammenfügen, habe aber leider keine Ahnung wie das geht und ob das geht. Über ein bis zwei kleine Tipps würde ich mich schon freuen.

Danke

Bye Tom
Benutzeravatar
Cris-D50
Draufgänger
Draufgänger
Beiträge: 947
Registriert: Sa 15. Nov 2003, 14:29
Wohnort: Friedberg / Bayern

Beitrag von Cris-D50 »

Hallo tomas.s,
tipp auf den obigen buttom "Suchen" und gib unter "Wort suchen" ein:
campaign.
Dann findest du bestimmt einige Threads, in denen das Thema behandelt wurde.
Folgender Thread ist besonders interessant: "Campaign Editor"
Wenn das nicht weiterhilft: ev. WoodSTokk per pm fragen.
Gruß
Gruß < - > Cris-D50
Bruce, ich denk' an Dich!
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

Hi tomas.s, wollkommen in der City!

Eine Campaign ist eine Reihenfolge von Maps die in einer normalen ASCII-Datei (unformatierte Textdatei) beschrieben ist.

Beispiel (Inhalt der Datei):

Code: Alles auswählen

{
	name			"My 6 Map-Campaign"
	shortname		"my6mapcamp"
	description		"Das ist meine eigene Kampagne mit den 6 Standard-Maps.***www.meineseite.de"
	maps			"battery;goldrush;railgun;radar;fueldump;oasis"
	mapTC			374 374
	type			"wolfmp"
}
Diese Datei speicherst du als '.campaign' ab (zB: 'my6map.campaign').
Dann legst du die Datei in ein Verzeichnis und nennst dieses 'scripts'.
Dieses Verzeichnis zippst du dann und das fertige ZIP-Archiv nennst du 'my6map.pk3'.
Diese PK3 legst du auf dem Server in das 'etmain'-Verzeichnis.

Ab da an kannst du für deine Campaign voten.
Damit sie ständig läuft, musst du die Datei 'campaigncycle.cfg' die sich auch im 'etmain'-Verzeichnis auf dem Server befindet, anpassen.

Beispiel für die 'campaigncycle.cfg':

Code: Alles auswählen

// Watchdog
set com_watchdog_cmd "exec campaigncycle ; say watchdog found no map running - restarted campaigncycle"

set d1 "campaign my6mapcamp ; set nextcampaign vstr d1"

// server doesn't recognise the campaign command when the gamecode isn't running yet.
set d_initial "set g_gametype 4 ; map battery ; set nextcampaign vstr d1"
vstr d_initial
Wenn du jetzt in der Console '/rcon <rconpass> exec campaigncycle' eingibst, wird deine Kampagne sofort gestartet und der Wachhund (Watchdog) startet ebenfalls deine Kampagne falls der Server mal ohne Map läuft.

Wichtige Punkte:
Die Mapnamen in der '.campaign'-Datei sollten immer KLEIN geschrieben werden (wie auch sonst alle Dateinamen).
Die '.campaign'-Datei MUSS die Endung '.campaign' besitzen.
Im ZIP-Archiv MUSS das Verzeichnis 'scripts' enthalten sein in der die '.campaign'-Datei liegen.
Das entgültige ZIP-Archiv MUSS '.pk3' als Endung haben.
Die Datei 'campaigncycle.cfg' kann auch anders heissen aber sie MUSS '.cfg' als Endung haben.
In der Zeile 'set d1 ...' wird die Kampagne über den Befehl 'campaign' mit ihren Kurznamen ('shortname') aufgerufen.
In der Zeile 'set d_initial ...' sollte mit dem Befehl 'map' die ERSTE Map in deiner Kampagne aufgerufen werden (siehe oben).

Anmerkung:
Du kannst in einer '.campaign'-Datei auch mehrere Kampagnen definieren.
Eine Kampagnendefinition ist immer in geschweiften Klammern ( '{' '}' ) eingeschlossen. Dadurch weis der Server wo eine Definition anfängt und wo sie endet.
Der Server unterscheidet Kampagnen durch ihren Kurznamen ('shortname'). Daher ist es wichtig daß es niemals 2 oder mehr Kampagnen mit dem selben Kurznamen gibt, auch nicht in anderen '.campaign'-Dateien oder übergreifend in anderen PK3's!!!
Deshalb wähle einen eindeutigen Namen für deine Kampagnen.
Wenn du Costum-Maps zu deiner Kampagne hinzufügen möchtest, aber den Mapnamen nicht weist, dann öffne die PK3 der Map mit WinZIP. Darin befindet sich eine '.arena'-Datei im Verzeichnis 'scripts'. Diese Datei öffnest du mit einem Texteditor und suchst die Zeile die mit 'map' beginnt. Dahinter steht der eindeutige Name der Map mit dem du die Map in deine Kampagne aufnehmen kannst.

Wenn du noch mehr Hilfe brauchst dann frag einfach. ;)

mfG WoodSTokk
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
XIII
Triple-Ass
Triple-Ass
Beiträge: 196
Registriert: Di 21. Dez 2004, 19:18
Wohnort: Schweiz
Alter: 32

Beitrag von XIII »

Ich hätt noch ne Frage:
MUSS campaigncycle.cfg angepasst werden? In den einzelnen maps sind ja auch .campaign-files enthalten, die genau nach dem ^^ muster erstellt wurden, aber campaigncycle.cfg wird nirgends angepasst!!!
:?: :?: :?:
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

In einem .campaign-File wird eine oder mehrere Campaign's definiert aber die Reihenfolge der Campaigns wie sie am Server laufen wird in der 'campaigncycle.cfg' festgelegt.
Die Datei 'campaigncycle.cfg' benötigt nur der Server und liegt deshalb nicht in einer PK3.
Die .campaign-Files braucht auch der Client damit er die Pins am Ladebild setzen kann und liegen deshalb immer in einer PK3.
Die 'campaigncycle.cfg' MUSS du so anpassen daß auch deine Campaigns auf dem Server laufen. Es hilft nicht die Campaigns zu definieren wenn sie nicht aufgerufen werden. ;)

Beispiel: 'vets20041030.campaign' (läuft auf dem City-Server)

Code: Alles auswählen

{
	name			"^p[V^wET^qS] ^dI^w"
	shortname		"veterans_1"
	description		"This is the 1st special campaign for the veterans of the city.**www.rtcw-city.de"
	maps			"supplydepot2;tc_base;caen;fun_beach_final;2hide;monte_cassino"
	mapTC			374 374
	type			"wolfmp"
}



{
	name			"^p[V^wET^qS] ^dII^w"
	shortname		"veterans_2"
	description		"This is the 2nd special campaign for the veterans of the city.**www.rtcw-city.de"
	maps			"xlabs1;navarone;raiders;temple_final;transmitter;bulge_beta1"
	mapTC			374 374
	type			"wolfmp"
}



{
	name			"^p[V^wET^qS] ^dIII^w"
	shortname		"veterans_3"
	description		"This is the 3rd special campaign for the veterans of the city.**www.rtcw-city.de"
	maps			"saberpeak_final;breakout_et_b1;tram_et;eagles_b1;et_mor;dubrovnik_b2"
	mapTC			374 374
	type			"wolfmp"
}



{
	name			"^p[V^wET^qS] ^dIV^w"
	shortname		"veterans_4"
	description		"This is the 4th special campaign for the veterans of the city.**www.rtcw-city.de"
	maps			"lp1_1;ruins22;rommel_b4;v2_factory;sector47_final;password2"
	mapTC			374 374
	type			"wolfmp"
}



{
	name			"^p[V^wET^qS] ^dV^w"
	shortname		"veterans_5"
	description		"This is the 5th special campaign for the veterans of the city.**www.rtcw-city.de"
	maps			"the_town;bergen;ROP_River;mml_helmsdeep_a3;vengeance_final;xposed;sos_secret_weapon"
	mapTC			374 374
	type			"wolfmp"
}
Die 'campaigncycle.cfg' sieht dann so aus:

Code: Alles auswählen

// Watchdog 
set com_watchdog_cmd "exec campaigncycle ; say watchdog found no map running - restarted campaigncycle" 

set d1 "campaign veterans_1 ; set nextcampaign vstr d2" 
set d2 "campaign veterans_2 ; set nextcampaign vstr d3"
set d3 "campaign veterans_3 ; set nextcampaign vstr d4"
set d4 "campaign veterans_4 ; set nextcampaign vstr d5"
set d5 "campaign veterans_5 ; set nextcampaign vstr d1"

// server doesn't recognise the campaign command when the gamecode isn't running yet. 
set d_initial "set g_gametype 4 ; map supplydepot2 ; set nextcampaign vstr d1" 
vstr d_initial
mfG WoodSTokk
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
Patze
Stürmer
Stürmer
Beiträge: 68
Registriert: Fr 21. Mär 2008, 20:12
Alter: 33

Beitrag von Patze »

Sorry, das ich diesen Thread nochmal aufkrame :oops:

Habe eine eigen Campaign erstellt

Code: Alles auswählen

{
	name			"Eigene Campaign"
	shortname		"Campaign"
	description		"Alles querbet"
	maps			"oasis;sw_el_kef;rommel_final;braundorf_b4;caen;crevasse_b3;mp_rocket_et_a1;;mp_v2base;reactor_final;stalingrad;townsqu  are_final;venice;v2_factory_b2"
	mapTC			174 365 
	type			"wolfmp"
}
ich habe dann die Datei "hallo.campaign" gennant und in einen erstellten Ordner "scripts" geschoben und dann per 7zip in hallo.pk3 gezipt. Ich habe es dann in den Ordner /etmain verschoben und die campaigncycle.cfg habe ich so bearbeitet:

Code: Alles auswählen

set d1 "campaign cmpgn_northafrica ; set nextcampaign vstr d2"
set d2 "campaign cmpgn_centraleurope ; set nextcampaign vstr d3"
set d3 "campaign.hallo ; set nextcampaign vstr d1"
// server doesn't recognise the campaign command when the gamecode isn't running yet.
set d_initial "set g_gametype 4 ; map oasis ; set nextcampaign vstr d2"
vstr d_initial

// Watchdog
set com_watchdog_cmd "exec campaigncycle ; say watchdog found no map running - restarted campaigncycle"

set d01 "oasis ; set nextcampaign vstr d02"
set d02 "sw_el_kef ; set nextcampaign vstr d03"
set d03 "rommel_final ; set nextcampaign vstr d04"
set d04 "braundorf_b4 ; set nextcampaign vstr d05"
set d05 "caen ; set nextcampaign vstr d06"
set d06 "crevasse_b3 ; set nextcampaign vstr d07"
set d07 "mp_rocket_et_a1 ; set nextcampaign vstr d08"
set d08 "mp_v2base ; set nextcampaign vstr d09"
set d09 "reactor_final ; set nextcampaign vstr d10"
set d10 "stalingrad ; set nextcampaign vstr d11"
set d11 "townsquare_final ; set nextcampaign vstr d12"
set d12 "venice ; set nextcampaign vstr d13"
set d13 "v2_factory_b2 ; set nextcampaign vstr d01"
// server doesn't recognise the campaign command when the gamecode isn't running yet.
set d_initial "set g_gametype 4 ; map oasis ; set nextcampaign vstr d1"
vstr d_initial

Kann auch sein, dass ich totalen sche** gebaut habe. Falls ja und falls nein. Könnte mir jemand helfen? Und dann noch eine Frage:

Ich spiele eig eher LAN und benutze dann Bots. Kann mir jemand sagen wie ich die Campaign in dem Bot menü aufführen lässt? (Benutze Fritzbots)
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

Deine 'campaigncycle.cfg' sollte so aussehen:

Code: Alles auswählen

// Watchdog 
set com_watchdog_cmd "exec campaigncycle ; say watchdog found no map running - restarted campaigncycle" 

set d1 "campaign cmpgn_northafrica ; set nextcampaign vstr d2" 
set d2 "campaign cmpgn_centraleurope ; set nextcampaign vstr d3" 
set d3 "campaign Campaign ; set nextcampaign vstr d1" 

// server doesn't recognise the campaign command when the gamecode isn't running yet. 
set d_initial "set g_gametype 4 ; map oasis ; set nextcampaign vstr d1" 
vstr d_initial
Mit dem Befehl 'campaign' sprichts du die Map mit ihrem Kurznamen ('shortname') an.
Der Text der im 'name' angegeben ist, wird nur im Loadscreen und beim Voting angezeigt. ET selbst ist dieser Text egal.
Wie die Datei heißt in der die Campaign definiert ist (bei dir 'hallo.campaign') ist ET auch egal.
ET selbst achtet nur auf den 'shortname'.

Bezüglich Bots muss ich dich entäuschen, damit hab ich nie etwas getan.

mfG WoodSTokk
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
Patze
Stürmer
Stürmer
Beiträge: 68
Registriert: Fr 21. Mär 2008, 20:12
Alter: 33

Beitrag von Patze »

ok danke, werde es gleich versuchen.

Und wegen Bots. Kein Problem. DAnn suche ich mir bots die auf den Karten auch gehen und einer andere Menü fphrung wie die Fritzbots haben *g*

Edit: Hmm irgendwie wird die Kampagne nicht aufgelistet wenn ich auf 'Host Game' gehe
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

Hmmm, da fällt mir auf, du hast in deiner Campaign

Code: Alles auswählen

mapTC         174 365
drin stehen.
Ist das bewusst oder versehendlich?
Das gibt die Koordinaten der Map am Loadscreen an.
Hab es selber noch nicht untersucht, aber alle arbeiten hier mit:

Code: Alles auswählen

mapTC         374 374
In der Campaign-Liste müsste deine mit dem Namen 'Eigene Campaign' aufgelistet sein.
Kann sein, daß du zuviele Campaigns hast und er daher nicht alle läd.
Nur eine Vermutung.

mfG WoodSTokk
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
Patze
Stürmer
Stürmer
Beiträge: 68
Registriert: Fr 21. Mär 2008, 20:12
Alter: 33

Beitrag von Patze »

Ne Absicht war das nicht :o

Ok geht trozdem nicht *schulterzuck* ögal. Dann muss ich eben öfters eine andere Campaign laden.

Aber Danke für die Hilfe!


EDIT:

Es funzt xD Habe in pak0.pk3 in scripts hab ich mir eine standart Campaign angeschaut. Dort war das

Code: Alles auswählen

mapTC 374 185
hab das selbe bei meiner selbst erstelleten Campaign gemacht und es kommt als auswahl. Nur verabschiedet sich dann Wolfenstein mit einem "ping" :)

EDIT:
Ja nochmal um keinen Doppelpost zu machen^^

Ich habe nun die Anzahl der Maps in der Campaign gekürzt und nun sieht es so aus:


Code: Alles auswählen

{
	name			"Eigene Campaign"
	shortname		"Campaign"
	description		"Alles querbet"
	maps			"oasis;sw_el_kef;rommel_final;braundorf_b4;caen;crevasse_b3;mp_rocket_et_a1;"
	mapTC			374 185 
	type			"wolfmp"
}
nur wenn ich jetzt die Campaign lade, ladet es North Africa Campaign. Weiß jemand wieso?
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

Da kann ich auch nur vermuten. Mal sehen ...

schreib den Kurznamen mal klein, vieleicht mag ET keine Kurznamen mit großen Buchstaben.

Code: Alles auswählen

shortname      "campaign"
Oder nimm gleich einen eindeutigen Namen (vieleicht heisst eine andere Campaign bereits so und das kollidiert).

Code: Alles auswählen

shortname      "myowncampaign"
Bei 'maps' hast du nach 'mp_rocket_et_a1' noch ein Semikolon (Strichpunkt), vieleicht erwartet ET dadurch noch eine Map und dann ist plötzlich der String aus.
Lösch mal das letzte Semikolon weg.

Deine 'campaigncycle.cfg' müsste dann so aussehen:

Code: Alles auswählen

// Watchdog 
set com_watchdog_cmd "exec campaigncycle ; say watchdog found no map running - restarted campaigncycle" 

set d1 "campaign myowncampaign ; set nextcampaign vstr d1" 

// server doesn't recognise the campaign command when the gamecode isn't running yet. 
set d_initial "set g_gametype 4 ; map oasis ; set nextcampaign vstr d1" 
vstr d_initial
Wenn das immernoch nicht geht, sag mir mal wo ich die Maps alle herbekomme und schick mir dein PK3 wo die Campaign drin ist, dann untersuch ich das mal näher.

mfG WoodSTokk
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
Patze
Stürmer
Stürmer
Beiträge: 68
Registriert: Fr 21. Mär 2008, 20:12
Alter: 33

Beitrag von Patze »

hmm klappt immer noch nicht. Die maps bekommst du unter http://maps.arni.name/etmain/ doch woher ich die "mp_rocket_et_a1" herhab weiß ich grad nicht. Ich mach das mal aus der pk3 file raus^^

öhm per E-mail oder?
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

Jo, hast PM ;)
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
Antworten