Die momentanen Configs server-*.cfg gefallen mir nicht. Sie sind zwar ausführlich kommentiert, enthalten aber auch falsche Informationen oder Einstellungen, die man nicht braucht.
Auf der anderen Seite weiß ich aber auch nicht, ob es den Leuten nicht genau so gefällt. Hier ist eure Meinung gefragt
Hier mal eine erste überarbeitete Version meinerseits;
Spoiler:
Code:
// // World of Padman - example server settings // // NOTE: Any line that starts with // is ignored by WoP. // Whitespace between commands is also ignored. //
// // Administrator info // // Do not forget to edit and uncomment the two lines below //sets admin "YOUR NAME HERE" //sets email "YOUR EMAIL HERE"
// // Server name and message // // Name of the server. Can include color tags set sv_hostName "My ^2first ^6WoP ^7server" // "Message of the Day". Can include color tags set g_MOTD "^7Visit ^6www.worldofpadman.com ^7for news and files"
// // Server settings // // Maximum number of players, including bots set sv_maxClients "12" // Enable Voice over IP set sv_VoIP "1" // Maximum bandwith per player. VoIP needs additional bandwidth. // You only need to set this if your server is on a home connection with // small upstream bandwith, e.g. dial-up. // A value of 9000 is for 12 sv_maxClients and sv_VoIP 1 while on a 1 Mbps upstream. set sv_maxRate "9000"
// // Bot settings // // Enable bots set bot_enable "1" // Automatically add 4 bots and kick them when humans connect set bot_minPlayers "4" // Bot skill, from 1 to 5. 2 is default set g_spSkill "3"
// // Passwords // // Remote administration password. If not set, no remote administration is possible set rconPassword "" // Password needed for anyone to join the server. If not set, anyone can join set g_password ""
// // Game settings // // Allow players to call votes for next map, kicking a player etc. set g_allowVote "1" // Do warmup at the start of every map set g_doWarmup "1" // Duration of the warmup, 30 seconds set g_warmup "30"
// // Map and gametype rotation // // Execute contents of "rotation.cfg", which loads the next map exec "rotation.cfg"
Geändert wurde folgendes;
Kommentare und Whitespace besser formatiert
Nur minimal nötige Cvars enthalten
Kann direkt so verwendet werden
Schlimm ist aus meiner Sicht vor Allem, dass die momentanen Configs ein rconPassword enthalten. Ich habe schon einige Server gesehen, die das nicht geändert hatten.
Genauso unsinnig ist aus meiner Sicht, "Expertenoptionen" wie private Slots, sv_pure, autodownload, masterserver oder gar exotisches wie friendly fire aufzunehmen. All diese Optionen brauchen mehr als ein kurzen Kommentar und sind oft gar nicht von Nöten. Alle anderen und exotischen Einstellungen sollten schon mit guten Standardwerten belegt sein. Der Interessierte muss sowieso eine separate Anleitung lesen, um sich da zurecht zu finden.
Da es leider beliebt zu sein scheint, Server auf langsamer Hardware an langsamen Heimanschlüssen zu betreiben (was oft sogar gegen die Vertragsbedingungen ist), habe ich sv_maxClients recht niedrig gewählt und auch einen sehr vorsichtigen Wert mit kurzer Erklärung für sv_maxRate gewählt.
Wie oben schon zu entnehmen, fehlt noch die Map- und Gametype-Rotation. Diese lässt sich leider kaum verständlicher gestalten, so dass ich hier einfach eine simple Rotation durch alle Maps und alle Gametypes nehmen werde.
Und hier ist das Monster, das sich Rotation nennt;
Spoiler:
Code:
// // World of Padman - example map and gametype rotation // // // Rotates through each official map for each supported gametype. // Sets point- and timelimit for each gametype. // // Loads a map in the end :) //
// // Maps //
// Free For All set map_ffa0 "map wop_anteroom; set nextmap_ffa vstr map_ffa1" set map_ffa1 "map wop_backyard; set nextmap_ffa vstr map_ffa2" set map_ffa2 "map wop_bath; set nextmap_ffa vstr map_ffa3" set map_ffa3 "map wop_cabin; set nextmap_ffa vstr map_ffa4" set map_ffa4 "map wop_diner; set nextmap_ffa vstr map_ffa5" set map_ffa5 "map wop_jail; set nextmap_ffa vstr map_ffa6" set map_ffa6 "map wop_padattic; set nextmap_ffa vstr map_ffa7" set map_ffa7 "map wop_padcrash; set nextmap_ffa vstr map_ffa8" set map_ffa8 "map wop_padcrash_dm17; set nextmap_ffa vstr map_ffa9" set map_ffa9 "map wop_padgarden; set nextmap_ffa vstr map_ffa10" set map_ffa10 "map wop_padgarden_night; set nextmap_ffa vstr map_ffa11" set map_ffa11 "map wop_padkitchen; set nextmap_ffa vstr map_ffa12" set map_ffa12 "map wop_padlibrary; set nextmap_ffa vstr map_ffa13" set map_ffa13 "map wop_padship; set nextmap_ffa vstr map_ffa14" set map_ffa14 "map wop_padshop; set nextmap_ffa vstr map_ffa15" set map_ffa15 "map wop_trashmap; set nextmap_ffa vstr map_ffa0"
// Spray Your Color set map_syc0 "map wop_anteroom; set nextmap_syc vstr map_syc1" set map_syc1 "map wop_backyard; set nextmap_syc vstr map_syc2" set map_syc2 "map wop_bath; set nextmap_syc vstr map_syc3" set map_syc3 "map wop_cabin; set nextmap_syc vstr map_syc4" set map_syc4 "map wop_diner; set nextmap_syc vstr map_syc5" set map_syc5 "map wop_huette; set nextmap_syc vstr map_syc6" set map_syc6 "map wop_jail; set nextmap_syc vstr map_syc7" set map_syc7 "map wop_padattic; set nextmap_syc vstr map_syc8" set map_syc8 "map wop_padgarden; set nextmap_syc vstr map_syc9" set map_syc9 "map wop_padkitchen; set nextmap_syc vstr map_syc10" set map_syc10 "map wop_padlibrary; set nextmap_syc vstr map_syc11" set map_syc11 "map wop_padship; set nextmap_syc vstr map_syc12" set map_syc12 "map wop_padshop; set nextmap_syc vstr map_syc13" set map_syc13 "map wop_trashmap; set nextmap_syc vstr map_syc0"
// Last Pad Standing set map_lps0 "map wop_anteroom; set nextmap_lps vstr map_lps1" set map_lps1 "map wop_backyard; set nextmap_lps vstr map_lps2" set map_lps2 "map wop_cabin; set nextmap_lps vstr map_lps3" set map_lps3 "map wop_diner; set nextmap_lps vstr map_lps4" set map_lps4 "map wop_huette; set nextmap_lps vstr map_lps5" set map_lps5 "map wop_padatticlps; set nextmap_lps vstr map_lps6" set map_lps6 "map wop_padcrash; set nextmap_lps vstr map_lps7" set map_lps7 "map wop_padgarden_night; set nextmap_lps vstr map_lps8" set map_lps8 "map wop_padkitchenlps; set nextmap_lps vstr map_lps9" set map_lps9 "map wop_padlibrarylps; set nextmap_lps vstr map_lps0"
// Free For All Team set map_tffa0 "map wop_anteroom; set nextmap_tffa vstr map_tffa1" set map_tffa1 "map wop_backyard; set nextmap_tffa vstr map_tffa2" set map_tffa2 "map wop_bath; set nextmap_tffa vstr map_tffa3" set map_tffa3 "map wop_cabin; set nextmap_tffa vstr map_tffa4" set map_tffa4 "map wop_diner; set nextmap_tffa vstr map_tffa5" set map_tffa5 "map wop_huette; set nextmap_tffa vstr map_tffa6" set map_tffa6 "map wop_jail; set nextmap_tffa vstr map_tffa7" set map_tffa7 "map wop_padattic; set nextmap_tffa vstr map_tffa8" set map_tffa8 "map wop_padcrash; set nextmap_tffa vstr map_tffa9" set map_tffa9 "map wop_padcrash_dm17; set nextmap_tffa vstr map_tffa10" set map_tffa10 "map wop_padgarden; set nextmap_tffa vstr map_tffa11" set map_tffa11 "map wop_padkitchen; set nextmap_tffa vstr map_tffa12" set map_tffa12 "map wop_padlibrary; set nextmap_tffa vstr map_tffa13" set map_tffa13 "map wop_padship; set nextmap_tffa vstr map_tffa14" set map_tffa14 "map wop_padshop; set nextmap_tffa vstr map_tffa15" set map_tffa15 "map wop_trashmap; set nextmap_tffa vstr map_tffa0"
// Capture The Lolly set map_ctl0 "map wop_colorstagectl; set nextmap_ctl vstr map_ctl1" set map_ctl1 "map wop_fridgectl; set nextmap_ctl vstr map_ctl2" set map_ctl2 "map wop_journeyctl; set nextmap_ctl vstr map_ctl3" set map_ctl3 "map wop_padasiactl; set nextmap_ctl vstr map_ctl4" set map_ctl4 "map wop_padbasectl; set nextmap_ctl vstr map_ctl5" set map_ctl5 "map wop_padboxctl; set nextmap_ctl vstr map_ctl6" set map_ctl6 "map wop_padcloisterctl; set nextmap_ctl vstr map_ctl7" set map_ctl7 "map wop_padcrashctl; set nextmap_ctl vstr map_ctl8" set map_ctl8 "map wop_westernctl; set nextmap_ctl vstr map_ctl0"
// Spray Your Color Team set map_tsyc0 "map wop_anteroom; set nextmap_tsyc vstr map_tsyc1" set map_tsyc1 "map wop_backyard; set nextmap_tsyc vstr map_tsyc2" set map_tsyc2 "map wop_bath; set nextmap_tsyc vstr map_tsyc3" set map_tsyc3 "map wop_cabin; set nextmap_tsyc vstr map_tsyc4" set map_tsyc4 "map wop_diner; set nextmap_tsyc vstr map_tsyc5" set map_tsyc5 "map wop_huette; set nextmap_tsyc vstr map_tsyc6" set map_tsyc6 "map wop_jail; set nextmap_tsyc vstr map_tsyc7" set map_tsyc7 "map wop_padattic; set nextmap_tsyc vstr map_tsyc8" set map_tsyc8 "map wop_padgarden; set nextmap_tsyc vstr map_tsyc9" set map_tsyc9 "map wop_padkitchen; set nextmap_tsyc vstr map_tsyc10" set map_tsyc10 "map wop_padlibrary; set nextmap_tsyc vstr map_tsyc11" set map_tsyc11 "map wop_padship; set nextmap_tsyc vstr map_tsyc12" set map_tsyc12 "map wop_padshop; set nextmap_tsyc vstr map_tsyc13" set map_tsyc13 "map wop_trashmap; set nextmap_tsyc vstr map_tsyc0"
// BigBalloon set map_bb0 "map wop_anteroombb; set nextmap_bb vstr map_bb1" set map_bb1 "map wop_backyardbb; set nextmap_bb vstr map_bb2" set map_bb2 "map wop_bathbb; set nextmap_bb vstr map_bb3" set map_bb3 "map wop_cabinbb; set nextmap_bb vstr map_bb4" set map_bb4 "map wop_dinerbb; set nextmap_bb vstr map_bb5" set map_bb5 "map wop_huettebb; set nextmap_bb vstr map_bb6" set map_bb6 "map wop_jailbb; set nextmap_bb vstr map_bb7" set map_bb7 "map wop_padatticbb; set nextmap_bb vstr map_bb8" set map_bb8 "map wop_padcrashbb; set nextmap_bb vstr map_bb9" set map_bb9 "map wop_padgardenbb; set nextmap_bb vstr map_bb10" set map_bb10 "map wop_padkitchenbb; set nextmap_bb vstr map_bb11" set map_bb11 "map wop_padlibrarybb; set nextmap_bb vstr map_bb12" set map_bb12 "map wop_padshipbb; set nextmap_bb vstr map_bb13" set map_bb13 "map wop_padshopbb; set nextmap_bb vstr map_bb14" set map_bb14 "map wop_trashmapbb; set nextmap_bb vstr map_bb0"
// // Gametypes //
// Start with 8 lives in Last Pad Standing set g_LPS_startLives "8" // Do not enable InstaPad set g_instaPad "0"
// Free For All set gametype_ffa "set g_gametype 0; set pointlimit 32; set timelimit 16; vstr nextmap_ffa; set next_gametype vstr gametype_syc" // Spray Your Color set gametype_syc "set g_gametype 3; set pointlimit 256; set timelimit 16; vstr nextmap_syc; set next_gametype vstr gametype_lps" // Last Pad Standing set gametype_lps "set g_gametype 4; set pointlimit 8; set timelimit 16; vstr nextmap_lps; set next_gametype vstr gametype_tffa" // Free For All Team set gametype_tffa "set g_gametype 5; set pointlimit 64; set timelimit 16; vstr nextmap_tffa; set next_gametype vstr gametype_ctl" // Capture The Lolly set gametype_ctl "set g_gametype 6; set pointlimit 8; set timelimit 16; vstr nextmap_ctl; set next_gametype vstr gametype_tsyc" // Spray Your Color Team set gametype_tsyc "set g_gametype 7; set pointlimit 512; set timelimit 16; vstr nextmap_tsyc; set next_gametype vstr gametype_bb" // BigBalloon set gametype_bb "set g_gametype 8; set pointlimit 256; set timelimit 16; vstr nextmap_bb; set next_gametype vstr gametype_ffa"
// // Setup the rotations // set nextmap "vstr nextscript" set nextscript "vstr next_gametype; set nextmap vstr nextscript"
// Initialize individual map rotations set nextmap_ffa "vstr map_ffa0" set nextmap_syc "vstr map_syc0" set nextmap_lps "vstr map_lps0" set nextmap_tffa "vstr map_tffa0" set nextmap_ctl "vstr map_ctl0" set nextmap_tsyc "vstr map_tsyc0" set nextmap_bb "vstr map_bb0"
// Initialize gametype to start with set next_gametype "vstr gametype_ctl"
// Load the first map! vstr nextmap
Ich denke, es ist besser, die simplen Einstellungen von der "aktiven" Rotation zu trennen.
Ich weiß nur noch nicht, ob die getrennten Configs je Gametype beibehalten werden sollten. Mit dieser Rotation wäre aber auch das möglich, in dem man einfach immer den selben Gametype als nächsten Gametype wählt und die rotation.cfg dabei unangetastet lässt.
Joined: Fri 3. Oct 2008, 15:22 Posts: 469 Images: 1
Die Trennung von Einstellungen und Rotation halte ich für sehr sinnvoll. Eine gut kommentierte config mit vielen Einstellungen finde ich jedoch praktisch weil man eben nicht ständig die Dokumentation zur Hand haben muss und es zudem den Einstieg erleichtert. Wichtig finde ich vor allem, dass die Standardeinstellungen sinnvoll sind und einigermaßen ungefährlich (z. B. Passwort).
Was "viele Einstellungen" angeht, so habe ich festgestellt, dass die Leute diese einfach übernehmen (z.B. example.com als sv_dlURL ..) oder auf anscheinend willkürliche Werte stellen. Genau da liegt der Sinn einer ausführlichen, separaten Dokumentation; In den drei Zeilen Kommentar lassen sich nicht alle möglichen Einstellungen oder die Zusammenhänge mit anderen Variablen erklären. Und wer schlichtweg nicht alle Einstellungen in einem Beispiel gezeigt bekommt, kann sich auch nur schlecht selber in den Fuß schießen.
Das heißt natürlich, dass es eine solche Dokumentation auch geben muss, was momentan nicht der Fall ist. Das ist aber auch kein Grund, einfach alles in eine Beispiels-Konfigurationsdatei zu packen. Und dort Cvars mit ihrem Standardwert aufzulisten bläht die Sache nur unnötig auf.
Der Einstieg wird dadurch leicht, dass die nötigsten Einstellungen kommentiert werden und alles andere schon gute Standardeinstellungen hat, die im Beispiel der Einfachheit halber nicht erwähnt werden.
Ich denke das es wichtig ist zu wissen, an wen die Server-configs gerichtet sein sollen. Letztendlich gilt es die dem Spiel beiliegenden Configs zu überarbeiten, denn sind ja gerade problematisch. Da wir mit dem kommenden Update nicht einfach bestehende Configs löschen, sondern nur ersetzen können, müssen wir wohl alle entsprechend ersetzen. Das sollte das geringste Problem sein. Die Configs sind vor allem für Leute interessant, die spontan einen Dedicated-Server für's LAN einrichten wollen oder auf einem Heimserver. Und darauf hin sollten die Configs abgestimmt sei, mit den wichtigsten und notwendigsten Einstellungen. Die Leute haben meist nicht viel Ahnung, was sie da genau machen. Davon ausgeschlossen sind natürlich große Game-Hoster und Server-Betreiber. Die wissen meist was sie tun und richten sich ihre Configs sowieso individuell ein. Die schauen dann zur Not in Brains Server-Tutorial, wenn es um spezielle Einstellungen geht.
Joined: Fri 3. Oct 2008, 15:22 Posts: 469 Images: 1
Braucht man denn überhaupt beispielhafte server configs? Wenn die Standardwerte passen, genügt doch das Menü um einen zeitlich begrenzten Server zu starten. Für alles was darüber hinaus geht (Lanparties, Game Hoster, etc.) muss man sich ohnehin eigene configs basteln. Dann lasst die Beispiel-Configs doch gleich ganz weg und legt statt dessen Brains Server-Tut bei und eine Liste mit möglichen Variablen und deren Bedeutung. Vorgefertigte Map-Rotationen sollten aber auf alle Fälle dabei sein.
Users browsing this forum: No registered users and 2 guests
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum