NO XP Reset con Enemy Territory

Hai sempre desiderato organizzare un lan party o ti piacerebbe tenere online un server di gioco Enemy Territory con 6 mappe per campagna ma non sai come fare? Se la risposta e' affermativa, continua a leggere…
Prima di tutto un po' di codice:

#!/bin/sh
 
ET_BASEPATH="/usr/games/share/free/enemy-territory"
 
cd $ET_BASEPATH
 
#--LAN--
#etded.x86 +set dedicated 1 +set net_ip "0.0.0.0" +set net_port 27967 +set ttyc$
 
#--INTERNET--
#etded.x86 +set dedicated 2 +set net_ip "0.0.0.0" +set net_port 27967 +set ttyco$
exit

salvalo come etded.sh per esempio. Se la porta 27967 è gia' occupata da un altro server puoi cambiarla. Ricorda che ci sono delle regole da impostare sul router se hai intenzione di uscire su Internet, quindi la porta specificata in questo script dovra' corrispondere a quella “forwardata” (inclusa la porta di Gamespy e del Master Server beat). Cambia ET_BASEPATH con il percorso d'installazione del gioco sul tuo sistema, poi togli il commento a una delle due istruzioni che caricano il server sottostanti a #–LAN– oppure #–INTERNET–. Spostati nella directory d'installazione del gioco etmain (oppure .etwolf/etmain se il server viene eseguito da un utente diverso da root…) e crea un fila di testo per contenere le informazioni sulla campagna da giocare, questo e' un esempio che puoi benissimo ricopiare, fu usato da noi utenti di Playlinux.net lo scorso anno per praticare i primi addestramenti del clan (la descrizione va scritta su una sola riga) :

{
        name			"No XP reset"
        shortname		"cmpgn_ferocious"
        description		"E' l'anno 2006 soldato! Tu sei stato chiamato per
                                 liberare questo mondo informatico dei videogiochi
                                 dagli interessi monopolistici di Microsoft"
        maps			"oasis;battery;goldrush;radar;railgun;fueldump"
        mapTC			374 374
        type			"wolfmp"
}


La parola magica è “cmpgn_ferocious” specificata con l'item shortname. Puoi scegliere il nome che piu' ti piace, precedilo magari con cmpgn_. Salva le modifiche in ferocious.campaign. A questo punto e' necessario preparare un altro file di testo contenente lo script per eseguire in ciclo la campagna:

// CAMPAIGN ROTATION - Ferocious
 
// WATCHDOG
//set com_watchdog_cmd "vstr d_initial ; say watchdog found no map running - restarted mapcycle"
 
 
set d1 "campaign cmpgn_ferocious ; 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


questo è praticamente scripting per l'engine. Nota i commenti, sono preceduti con due barre /. Non c'è niente di complicato qui, ma con la prima istruzione dovrai far corrispondere il nome della campagna da te scelto, in questo caso e' cmpgn_ferocious. Salva tutto come ferociouscycle.cfg per esempio. Ora ci spostiamo sul file di configurazione del server, ovvero etmain/server.cfg che dovrebbe risultare pre-installato con il gioco. Cerca la parola campaigncycle.cfg, trovata? Commentala e aggiungi invece ferociouscycle.cfg. Cosi' appare la modifca sul mio server:

 
// MAP ROTATION
 
exec ferociouscycle.cfg				// No XP reset
 
 
//exec campaigncycle.cfg				// Campaign mode

Piu' in basso troverai:

// WATCHDOG
 
// in case the game dies with an ERR_DROP
// or any situation leading to server running with no map
//set com_watchdog 10				// defaults 60
set com_watchdog_cmd "exec campaigncycle.cfg"	// defaults to quit

Commenta l'ultima riga e aggiungi invece set com_watchdog_cmd “exec ferociouscycle.cfg” . A questo punto conviene creare un pacchetto pk3 contenente la descrizione della campagna da spedire a tutti i client che si collegano al server. I pk3 sono semplicemente degli archivi zip. Dovrai avere quindi zip installato sul tuo sistema, ottienilo con apt-get se usi debian oppure cercalo su http://rpmfind.net per il tuo sistema basato su redhat. Chi usa Linux From Scratch puo' trovare la ricetta per la compilazione sul libro Beyond Linux From Scratch. Praticamente occorre creare una directory scripts da qualche parte e copiarvi il file ferocious.campaign. Nella directory di un livello superiore a scripts basta dare il comando: zip xferocious.pk3 scripts per creare il pacchetto. ==== Nota la x che precede il nome ferocious ====. E' necessaria perche' questo pacchetto dovra' essere caricato dopo tutti i pk3 standard della distribuzione del gioco. Assicurati che l'istruzione set sv_allowDownload in server.cfg abbia valore logico booleano VERO, praticamente dovrai avere:

set sv_allowDownload "1"

Questo è tutto. Se trovi delle anomalie o hai dei suggerimenti da fare, puoi modificare liberamente questa pagina. Ciao!

 
server_di_gioco/et_no_xp_reset.txt · Ultima modifica: 2007/04/26 15:03 (modifica esterna)
 
Recent changes RSS feed Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki