Freebsd counter strike server install, configure, tips and tricks

From wiki.perl.lt
Jump to: navigation, search

Contents

steam instaliavimas

noredami suinstaliuoti steam reikia (patartina) turet naujausius "freebsd ports", parsisiuntus release ports kolekcija juos galima atnaujinti pvz /usr/ports/net/cvsup-without-gui pagalba.. (siems veiksmams reikalingas root, neesant galimybei reiketu steam susiinstaliuoti vartotojui, bet ar bus linux palaikymas serveryje? ar root zino apie jusu serveri??? :-))

[root@cs ~]# uname -a
FreeBSD cs.perl.lt 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007
root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386
[root@cs ~]# cd /usr/ports/games/linux-steam/
[root@cs /usr/ports/games/linux-steam]# make install clean

cstrike serverio (failu) parsisiuntimas

patartina kurti serveri atskiram vartotojui, nebent neesate paranojiskas adminas, koks kievienas turetu buti, normos ribose aisku.. taigi dukuriam vartotoja pv "cs" ir siunciame jam serverio failus.. (tai uztrunka nemazai laiko)

[root@cs ~]# cd /usr/local/steam/
[root@cs /usr/local/steam]# /usr/local/steam/steam -command update -game cstrike
-dir /usr/home/cs/game

perduodame valdzia cs vartotojui

[root@cs ~]# mv ~/.steam ~cs
[root@cs ~]# chown -R cs:users ~cs

darome steam serveri no-steam

tai ne visai gerai, bet dazniausiai (bent Lietuvoje praktiskai visada) taip daroma.. no-steam reiskia kad serveryje gales zaisti zaidejai neturintys legalios counter-strike versijos.. jums prireiks parsisiusti no-steam:

engine_amd.so engine_i486.so engine_i686.so

(visus ar viena priklausomai nuo jusu serverio..) no-steam galima rasti internete, man nesunkiai pavyko rasti http://www.cstrike.ro/cstrike_files/engine.v15.tgz (gali dingti.. teks ieskoti :-)) radus siunciames (root nebebus reikalingas, dirbam cs vartotoju..)

[cs@cs ~]$ fetch http://www.cstrike.ro/cstrike_files/engine.v15.tgz
[cs@cs ~]$ tar xfz engine.v15.tgz
[cs@cs ~]$ mv *.so ~cs/game/

isbandome ar veikia

paredaguojam server.cfg esanti /home/cs/game/cstrike/ (is esmes gali likti tai kas buvo, as butinai darasau "sv_lan 1" reiskianti kad i serveri gales prisijungti zaisti zaidejai ne tik is vietinio tinklo.. bei "sys_ticrate 1000" reiskianti kad serveris skirs daugiau CPU counter-strike serveriui t.y. padides cs server fps (nesuprantantiems suprasti nebutina :-) tiesiog 1000 skaiciu pakeitaliokit i mazesni ar didesni priklausomai nuo serverio pajegumo ir pastebekit serverio apkrovima bei zaideju "ping".. maniskis 1.8ghz pentium su 1gb ddr ram su 15k apsuku scsi kietuoju disku.. dirba tik cs serverio vaidmeni, todel uzdetas didesnis ticrate) apie keleta papildomai naudingu opciju bus zemiau..)

sv_aim 0
pausable 0
hostname "cs.perl.lt : MBK v1.6"
sv_maxspeed 320
mp_timelimit 20
sv_cheats 0
sv_lan 1
mp_startmoney 801
mp_freezetime 0
mp_roundtime 3
sys_ticrate 1000
exec listip.cfg
exec banned.cfg

komandineje eiluteje esanti pingboost reikia keisti priklausomai nuo ticrate.. pradziai pameginkite 3, jis irgi dalyvauja mazinant zaideju "ping", insecure ir nomaster butini.. (jei idomu, apie sias opcijas internete pilna informacijos)

isbandom:

[cs@cs ~]$ cd /home/cs/game/
[cs@cs ~/game]$ ./hlds_run -game cstrike -pingboost 3 -insecure -nomaster +maxplayers 18 +map de_dust2

metamod

metamod atlieka valdiklio funkcija tarp half-life varikliuko ir mod'o ir yra butinas norint tureti amxx/amx/hlguard/.. parsisiusti ji galima is http://metamod.org

[cs@cs ~]$ fetch http://switch.dl.sourceforge.net/sourceforge/metamod/metamod-1.19-linux.tar.gz
[cs@cs ~]$ tar xfz metamod-1.19-linux.tar.gz
[cs@cs ~]$ mkdir -p /home/cs/game/cstrike/addons/metamod/dlls/
[cs@cs ~]$ touch /home/cs/game/cstrike/addons/metamod/plugins.ini
[cs@cs ~]$ mv metamod_i386.so /home/cs/game/cstrike/addons/metamod/dlls/

dar reikia paredaguoti /home/cs/game/cstrike/liblist.gam ir pakeisti:

...
gamedll_linux "dlls/cs_i386.so"
...

i

...
gamedll_linux "addons/metamod/dlls/metamod_i386.so"
...

isitikinti kad metamod aktyvus butina perkrauti serveri ir patikrinti ar veikia koncoleje parasyti pvz.: "meta version" ir jei viskas teisinga, turetumet gauti kaska panasaus:

Metamod v1.19  2006-04-17 (5:13)
by Will Day <willday@metamod.org>
   http://www.metamod.org/
compiled: Apr 17 2006, 19:08:34 +0200 (optimized)

amxx

amxx yra mirusio projekto amx tesinys ir is esmes amxx yra metamod pluginas skirtas serverio administravimui ji/apie ji/pluginu skirtu jam, galima rasti http://www.amxmodx.org

serveriui mums butina tureti "AMX Mod X Base" ir musu atveju instaliuojant cstrike mod'a "Counter-Strike Addon"

[cs@cs ~]$ fetch http://surfnet.dl.sourceforge.net/sourceforge/amxmodx/amxmodx-1.76d-base.tar.gz
[cs@cs ~]$ tar xfz amxmodx-1.76d-base.tar.gz
[cs@cs ~]$ mv addons/amxmodx /home/cs/game/cstrike/addons/
[cs@cs ~]$ fetch http://belnet.dl.sourceforge.net/sourceforge/amxmodx/amxmodx-1.76d-cstrike.tar.gz
[cs@cs ~]$ tar xfz amxmodx-1.76d-cstrike.tar.gz
[cs@cs ~]$ mv addons/amxmodx /home/cs/game/cstrike/addons/

tada reikia paredaguoti /home/cs/game/cstrike/addons/metamod/plugins.ini ir irasyti:

linux addons/amxmodx/dlls/amxmodx_mm_i386.so

ir vel kad ismeginti ar veikia butina perkrauti serveri ir isitikint kad veikia komanda "meta list", turetumet gauti kaska tokio:

Currently loaded plugins:
      description      stat pend  file              vers      src  load  unlod
 [ 1] AMX Mod X        RUN   -    amxmodx_mm_i386.  v1.76d    ini  ANY   ANY
 [ 2] Fun              RUN   -    fun_amxx_i386.so  v1.76     pl1  ANY   ANY
 [ 3] CStrike          RUN   -    cstrike_amxx_i38  v1.76     pl1  ANY   ANY
 [ 4] CSX              RUN   -    csx_amxx_i386.so  v1.76c    pl1  ANY   ANY
 [ 5] FakeMeta         RUN   -    fakemeta_amxx_i3  v1.76d    pl1  ANY   ANY
 [ 6] Engine           RUN   -    engine_amxx_i386  v1.76     pl1  ANY   ANY
6 plugins, 6 running

amxx konfiguracija, bei naudojami pluginai priklauso tik nuo jusu pageidavimu, administravimas pagrinde vyksta ikeliant pluginus i /home/cs/game/cstrike/addons/amxmodx/plugins bei ijungiant/isjungiant juos /home/cs/game/cstrike/addons/amxmodx/configs/plugins.ini (kad suveiktu uztenka pakeisti zemelapi)

patarciau istrinti /home/cs/game/cstrike/addons/amxmodx/configs/maps.ini ir norimus zemelapius suvesti i/home/cs/game/cstrike/mapcycle.txt taip nesusimaisysite kur aprasyti zemelapiai.. (visu zemelapiu nebutina aprasineti, i sarasa ieina tik tie zemelapiai uz kuriuos zaidejai gales balsuoti jei bus leidziama, arba zemelapiai kurie eis viena ar kita tvarka, vel priklausomai nuo jusu pageidavimu)

kartais parsisiusti pluginai neveikia del vienos ar kitos priezasties.. isitikinti kad jie veikia/ne galima komanda "amxx plugins" pvz:

Currently loaded plugins:
       name                    version  author            file             status
 [  1] Admin Base              1.76d    AMXX Dev Team     admin.amxx       running
 [  2] Admin Commands          1.76d    AMXX Dev Team     admincmd.amxx    running
 [  3] Slots Reservation       1.76d    AMXX Dev Team     adminslots.amxx  running
 [  4] Menus Front-End         1.76d    AMXX Dev Team     menufront.amxx   running
 [  5] Commands Menu           1.76d    AMXX Dev Team     cmdmenu.amxx     running
 [  6] Players Menu            1.76d    AMXX Dev Team     plmenu.amxx      running
 [  7] Teleport Menu           1.76d    AMXX Dev Team     telemenu.amxx    running
 [  8] Maps Menu               1.76d    AMXX Dev Team     mapsmenu.amxx    running
 [  9] Admin Chat              1.76d    AMXX Dev Team     adminchat.amxx   running
 [ 10] Anti Flood              1.76d    AMXX Dev Team     antiflood.amxx   running
 [ 11] Info. Messages          1.76d    AMXX Dev Team     imessage.amxx    running
 [ 12] Admin Votes             1.76d    AMXX Dev Team     adminvote.amxx   running
 [ 13] NextMap                 1.76d    AMXX Dev Team     nextmap.amxx     running
 [ 14] Nextmap Chooser         1.76d    AMXX Dev Team     mapchooser.amxx  running
 [ 15] TimeLeft                1.76d    AMXX Dev Team     timeleft.amxx    running
 [ 16] Stats Configuration     1.76d    AMXX Dev Team     statscfg.amxx    running
 [ 17] Restrict Weapons        1.76d    AMXX Dev Team     restmenu.amxx    running
 [ 18] StatsX                  1.76d    AMXX Dev Team     statsx.amxx      running
 [ 19] Flashbang Dynamic Ligh  0.10     Avalanche         flashbang_dligh  running
 [ 20] Dead Name Change        0.1      VEN               dead_name_chang  running
 [ 21] CSNadeDrops             0.14     Avalanche         csnadedrops.amx  running
 [ 22] c4 timer                1.1      cheap_suit        c4timer.amxx     running
 [ 23] Ultimate Gore           1.5      JTP10181          amx_gore_ultima  running
 [ 24] Idiot Model change (CS  1.00     IJs               amx_idiot.amxx   running
 [ 25] Silly C4                1.1      Cheap_Suit        sillyc4.amxx     running
 [ 26] ban f4gz                1.0      j1h4d             cheaters.amxx    running
 [ 27] turn away               1.0      j1h4d             turn_away.amxx   running
 [ 28] Zombie Swarm            2.3a     Mini_Midget       zombie_swarm.am  running
28 plugins, 28 running

verciam amxx baninti pagal ip

kadangi musu serveris no-steam, o steam serveriuose baninama pagal steam id, musu serveryje visi vartotojai turi ta pati steam id "0", baninti mums tenka pagal ip. tam kad negalvoti ar vienokia komanda/per meniu punkta baninant bus baninama pagal ip, as tiesiog paredaguoju truputi amxx plugina atsakinga uz tai. jis vadinasi admincmd.amxx, o jo iseities koda galima rasti /home/cs/game/cstrike/addons/amxmodx/scripting/admincmd.sma ji paredaguoti:

        register_concmd("amx_ban", "cmdBan", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
        register_concmd("amx_banip", "cmdBanIP", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
        register_concmd("amx_addban", "cmdAddBan", ADMIN_RCON, "<authid or ip> <minutes> [reason]")

pakeisti i

        register_concmd("amx_ban", "cmdBanIP", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
        register_concmd("amx_banip", "cmdBanIP", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
        register_concmd("amx_addban", "cmdBanIP", ADMIN_RCON, "<authid or ip> <minutes> [reason]")

ir sukompiliuoti t.y. paversti iseities koda i amxx suprantama masini koda. ta galima padaryti kelias budais is kuriu papasciausias atsidaryti http://www.amxmodx.org/webcompiler.cgi ir ivedus pilna paredaguoto admincmd.sma koda, ji sukompiliavus parsisiusti, uzvardinti kaip admincmd.amxx ir padeti i /home/cs/game/cstrike/addons/amxmodx/plugins/, ir ismeginti amx_ban/amx_banip/amx_addban komandas tiek serverio koncoleje, tiek prisijungus i serveri ` koncoleje :-) uzbaninus kanors pvz visam laikui, /home/cs/game/cstrike/listip.cfg atsiranda irasai su ip adresais (tam kad luzus ar perkrovus serveri ban'ai liktu.. tam ir yra server.cfg eilute "exec listip.cfg") pvz:

addip 0.0 200.140.16.143

hlguard

hlguard yra sauganti nuo cyteriu, tiesa daznai neveiksni ir resursu (tiek serverio, tiek zaidejo) reikalaujanti apsaugos sistema, bet daznai ir veiksminga. ja galima rasti http://www.thezproject.org/projects.php?pid=1 o sudeti:

[cs@cs ~]$ fetch http://www.thezproject.org/downloads/hlguard/hlg_1_8.zip
[cs@cs ~]$ unzip hlg_1_8.zip
[cs@cs ~]$ mv addons /home/cs/game/cstrike/

tam kad ijungti hlguard, reikia i /home/cs/game/cstrike/addons/metamod/plugins.ini darasyti:

linux addons/hlguard/dlls/hlguard_mm_i686.so

svarbiausia esant no-steam serveriui, kad hlguard banintu pazeidejus pagal ip, tai nustatyti galima /home/cs/game/cstrike/addons/hlguard/config/hlguard.cfg pakeitus:

hlg_loadmode net      // InterNET mode - Bans by UniqueID
//hlg_loadmode lan        // LAN mode - Bans by IP address

i

//hlg_loadmode net      // InterNET mode - Bans by UniqueID
hlg_loadmode lan        // LAN mode - Bans by IP address

kruva kitu nustatymu patartina keisti atsargiai, arba isvis palikti kaip yra..


keletas pagrindiniu koncoles komandu

stat - parodo siuo metu zaidzianciu zaideju sarasa/zemelapi/kita..

hostname:  cs.perl.lt : MBK v1.6
version :  47/1.1.2.5/Stdio 2738 insecure
tcp/ip  :  193.219.160.134:27015
map     :  fy_poolparty at: 0 x, 0 y, 0 z
players :  14 active (18 max)

#  name            userid uniqueid     frag    time     ping    loss    adr
1  "*SaHeR*D       3401   VALVE_ID_LAN 2       06:50    82      0       83.10.196.135:27005
2  "dzodzo"        3362   VALVE_ID_LAN 17      11:24    76      0       84.10.134.20:27005
3  "k#G_-S_E       3551   VALVE_ID_LAN 3       00:22    21      0       84.55.8.188:63901
4  "Fox CZ"        3386   VALVE_ID_LAN 8       08:52    75      0       62.24.88.71:27005
5  "KeMpInIu       3388   VALVE_ID_LAN 12      08:43    16      0       84.240.59.100:27005
6  "Belekas"       3552   VALVE_ID_LAN 0       00:12    24      0       84.55.8.188:64835
7  "Onder"         3393   VALVE_ID_LAN 3       07:47    77      0       80.251.246.53:27005
9  "HARDCORE       3481   VALVE_ID_LAN 2       02:43    116     0       83.131.11.213:27005
10 "jaro2075       3350   VALVE_ID_LAN 4       11:57    85      0       87.101.20.138:27005
11 "<sF>ango       2782   VALVE_ID_LAN 39      52:49    100     0       86.61.38.221:27005
12 "Fak dem        3365   VALVE_ID_LAN 62      11:15    33      1       78.62.103.135:52191
13 "deii"          2436   VALVE_ID_LAN 20      1 :13:16 14      0       85.255.57.209:60470
14 "Anger"         3168   VALVE_ID_LAN 25      22:47    23      0       84.55.8.188:65429
14 users

stats - svarbiausias "neLago" rodiklis FPS

CPU   In    Out   Uptime  Users   FPS    Players
99.90 59.01 82.44     530  3580  445.24      14

meta - parodo galimas metamod komandas

usage: meta <command> [<arguments>]
valid commands are:
   version          - display metamod version info
   game             - display gamedll info
   list             - list plugins currently loaded
   cmds             - list console cmds registered by plugins
   cvars            - list cvars registered by plugins
   refresh          - load/unload any new/deleted/updated plugins
   config           - show config info loaded from config.ini
   load <name>      - find and load a plugin with the given name
   unload <plugin>  - unload a loaded plugin
   reload <plugin>  - unload a plugin and load it again
   info <plugin>    - show all information about a plugin
   pause <plugin>   - pause a loaded, running plugin
   unpause <plugin> - unpause a previously paused plugin
   retry <plugin>   - retry a plugin that previously failed its action
   clear <plugin>   - clear a failed plugin from the list
   force_unload <plugin>  - forcibly unload a loaded plugin
   require <plugin> - exit server if plugin not loaded/running

amxx - parodo galimas amxx komandas

Usage: amxx < command > [ argument ]
Commands:
   version                - display amxx version info
   gpl                    - print the license
   plugins                - list plugins currently loaded
   modules                - list modules currently loaded
   cvars                  - list cvars registered by plugins
   cmds                   - list commands registered by plugins
   pause < plugin >       - pause a running plugin
   unpause < plugin >     - unpause a previously paused plugi

rcon

rcon yra dvieju zodziu **r**emote ir **con**sole sutrumpinimas, ir jis leidzia vykdyti komandas serveryje neprisijungiant i pacia serverio koncole, kas leidzia tai daryti is betkur, ir dar vienas jo privalumas tas kad galima duoti si slaptazodi kaskam, ir tas kaskas gales valdyti tik serverio nustatymus esamuoju laiku neleidziant pvz istrinti serverio failu ir pan.. tam kad ijungti rcon reikia i /home/cs/game/cstrike/server.cfg darasyti:

rcon_password jusu_slaptazodis

naudojantis rcon is paties zaidimo koncoles (paspaudus `), pradziai reikia identifikuotis:

rcon_password jusu_slaptazodis

o paskui galima daryty praktiskai betka, pvz:

rcon kick playername

ir pan.. tam kad nereiketu moketi daugybes komandu, yra sukurta nemazai irankiu kaip:

hlsw - http://www.hlsw.net PHPrcon - http://www.phprcon.net PHPAdminmod - http://phpadminmod.sourceforge.net JarCon - http://jarcon.sourceforge.net ServerSpy - http://www.goonsquad.net/serverspy/index.shtml K*Kontrol - http://www.kquery.com

o paciu rcon komandu galima rasti http://www.counter-strike.com/command_rcon.php bei, begaleje kitu puslapiu..


greitesnis zemelapiu siuntimas zaidejams

kartais buna serveriuose ideti zemelapiai uzimantys 1mb ar 3mb ar 5mb o kartais ir daugiau.. kai zaidejas jungiasi i serveri ir neturituo metu serveryje zaidziamo zemelapio, jis ji siunciasi is cia pat naudojant cstrike serverio siuntimo varikliuku kuris yra gan letas ir gan stipriai trugdo paciam cstrike..

bet tam yra priesnuodis! galima padaryti taip kad zemelapius/modelius/garsus zaidejai siustusi per http, t.y. pvz: zemelapius is http://cs.perl.lt/cs/maps/ , garsus is http://cs.perl.lt/cs/sounds/ ir t.t. tam tereikia sukelti visa si geri i visiem prieinama puslapi ir i /home/cs/game/cstrike/server.cfg irasyti vieta is kur siusti pvz:

sv_downloadurl "http://cs.perl.lt/cs/"

kur iejus i http://cs.perl.lt/cs/ turi but prieinami *.wad failai esantys /home/cs/game/cstrike/ ir sounds direktorija (http://cs.perl.lt/cs/sounds/) esanti /home/cs/game/cstrike/sounds/ ir kitos direktorijos kaip gfx/models/events.. siuntimo greitis stulbinamai padides!


darom statistikos puslapi

tam kad visi matytu kaip jie gerai zaidzia, kokia ju issami statistika, nemazai serveriu turi savo statistikos puslapius.. pati populiariausia (ir turbut vieninteli benaudojama) "PsychoStats" rasite http://www.psychostats.com


programuojam pluginus + pvz

amxx pluginu galima ieskoti http://www.amxmodx.org/compiler.php , galima naudoti netgi senuosius amx pluginus, kuriu pilna http://amxmod.net/plugins.php ijungiant plugina kuris tai leidzia daryti (/home/cs/game/cstrike/addons/amxmodx/configs/plugins.ini):

; Enable to use AMX Mod plugins
amxmod_compat.amxx     ; AMX Mod backwards compatibility layer

o galima ir patiems programuoti ar tiesiog pasiredaguoti jau egzistuojancius pluginus savo reikmem, pasinaudojant funkciju aprasymais: http://www.amxmodx.org/funcwiki.php bei dokumentacija http://wiki.amxmodx.org/

gan naudingo plugino, kuris banina zaidejus rasancius zinutes su nepriimtinu tekstu, arba dar kitaip tariant reklamuojancius chytus t.y. dauguma cytu ijungti megsta pasireklamuoti, o tai mums labai padeda juos isskirti is zaideju ir baninti, tam kad to nereiktu kaskart daryti rankiniu budu, galime pasinaudoti sekanciu pavyzdziu, kuri reiketu sukompiliuoti, esant ipatingiems norams, paredaguoti

#include <amxmodx>
#include <amxmisc>

#define Plugin "ban f4gz"
#define Version "1.0"
#define Author "j1h4d"

public plugin_init()
{
        register_plugin(Plugin, Version, Author)
        register_clcmd("say", "check_say")
        register_clcmd("say_team", "check_say")
}

public check_say(id)
{
        new args[100]
        read_args(args, 99)
        strtolower(args)
        new ban = 0
        if(contain(args, "badboy") != -1) { ban = 1; }
        else if(contain(args, "united-cheaters.net") != -1) { ban = 1; }
        else if(contain(args, "emo tear") != -1) { ban = 1; }
        else if(contain(args, "csbound.com") != -1) { ban = 1; }
        else if(contain(args, "fighter fx") != -1) { ban = 1; }

        if(ban == 1)
        {
          new name[100]
          get_user_name(id, name, 99)
          client_cmd(id,"bind w kill")
          server_cmd("amx_banip ^"%s^" 0 ^"f4g^"", name)
        }
}

sukompiliavus reikia ijungti plugina /home/cs/game/cstrike/addons/amxmodx/configs/plugins.ini

kitas naudingas pluginas kuri teko pasidaryti paciam, kiekvieno round pradzioje visus zaidejus nusuka viena nuo kito t.y. buna awp_ zemelapiai, kur teroristai atsiranda round pradzioje atsisuke i priesus su awp rankose, o tuo tarpu "gerieciai" nusisuke, taip teroristai igauna pranasuma, sis pluginas nemaiso ir visuose zemelapiuose..

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define Plugin "turn away" 
#define Version "1.0" 
#define Author "j1h4d"

new turn_pcvar

public plugin_init()
{
	register_plugin(Plugin, Version, Author)
	turn_pcvar = register_cvar("awp_turn_spawns","1")
	register_concmd("amx_update_spawns","turn_spawns")
	turn_spawns()
}

public turn_spawns()
{
	new Float:angles1[3], Float:angles2[3], turn_pcvar_value = get_pcvar_num(turn_pcvar)

	if(turn_pcvar_value==1)
	{
		angles1[1] = 180.0
		angles2[1] = 0.0
	}
	else if(get_pcvar_num(turn_pcvar)==2)
	{
		angles1[1] = 0.0
		angles2[1] = 180.0
	}
	else return ;

	new ent = engfunc(EngFunc_FindEntityByString,get_maxplayers(),"classname",
                  "info_player_deathmatch")
	while(ent)
	{
		set_pev(ent,pev_angles,angles1)
		ent = engfunc(EngFunc_FindEntityByString,ent,"classname","info_player_deathmatch")
	}

	ent = engfunc(EngFunc_FindEntityByString,get_maxplayers(),"classname","info_player_start")
	while(ent)
	{
		set_pev(ent,pev_angles,angles2)
		ent = engfunc(EngFunc_FindEntityByString,ent,"classname","info_player_start")
	}
	return ;
}

ir be galo populiarus "parasyk nesamone kai zaidejas paspaude DEL INS END", tiesa truputi nestandartinis, nes as pats naudoju keleta bind'u ant siu klavisu, tad administratoriaus teise "m" turintys zaidejai, sito daigto neveikiami:

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

#define Plugin "bind crap"
#define Version "1.0"
#define Author "j1h4d"

public plugin_init()
{
        register_plugin(Plugin, Version, Author)
	register_event("HLTV", "ev_newRound", "a", "1=0", "2=0")
}

public ev_newRound()
{
	new players[32],inum
	get_players(players,inum)
		for(new i,player; i <= inum; i++)
		{
			player = players[i]
			if (!access(player,ADMIN_LEVEL_A))
			{
			client_cmd(player,"bind DEL ^"say I LIKE TO SUCK A DICK^"")
			client_cmd(player,"bind INS ^"say I LIKE TO SUCK A DICK^"")
			client_cmd(player,"bind END ^"say I LIKE TO SUCK A DICK^"")
			}
		}
}

zemelapiu kurimas

zemelapiams kurti reikalingos 2 pagrindines programos t.y. 1. Valve Hammer Editor http://collective.valve-erc.com/index.php?go=hammer 2. Zoner's Half-Life tools (ZHLT) http://zhlt.info


priedas: counter strike cfg pvz.

cfg reikia ikelti i cstrike/ kataloga pavadinimu pvz: konfigas.cfg ir paleidus cs, ivykdyti komanda (cs koncoleje t.y. paspaudus `):

/exec konfigas.cfg

pats konfigas:

unbindall
clear         
echo "        *CONFIG LOADED*  "
name "[koines] j1h4d"
setinfo _pwd "slaptazodis"
cl_righthand "1"
bind "TAB" "+showscores"
bind "ENTER" "+attack"
bind "ESCAPE" "cancelselect"
bind "SPACE" "+jump"
bind "'" "+moveup"
bind "+" "sizeup"
bind "," "buyammo1"
bind "-" "sizedown"
bind "." "buyammo2"
bind "/" "+movedown"
bind "0" "slot10"
bind "1" "slot1"
bind "2" "slot2"
bind "3" "slot3"
bind "4" "slot4"
bind "5" "slot5"
bind "6" "slot6"
bind "7" "slot7"
bind "8" "slot8"
bind "9" "slot9"
bind ";" "+mlook"
bind "=" "sizeup"
bind "[" "invprev"
bind "]" "invnext"
bind "`" "toggleconsole"
bind "a" "+moveleft"
bind "b" "buy"
bind "c" "radio3"
bind "d" "+moveright"
bind "e" "+use"
bind "f" "impulse 100"
bind "g" "drop"
bind "h" "+commandmenu"
bind "i" "showbriefing"
bind "j" "cheer"
bind "k" "+voicerecord"
bind "m" "chooseteam"
bind "n" "nightvision"
bind "o" "buyequip"
bind "p" "stopsound"
bind "q" "lastinv"
bind "r" "+reload"
bind "s" "+back"
bind "t" "impulse 201"
bind "u" "messagemode2"
bind "w" "+forward"
bind "x" "radio2"
bind "y" "messagemode"
bind "z" "radio1"
bind "~" "toggleconsole"
bind "UPARROW" "+forward"
bind "DOWNARROW" "+back"
bind "LEFTARROW" "+left"
bind "RIGHTARROW" "+right"
bind "ALT" "+strafe"
bind "CTRL" "+speed"
bind "SHIFT" "+duck"
bind "MWHEELDOWN" "invnext"
bind "MWHEELUP" "invprev"
bind "MOUSE1" "+attack"
bind "MOUSE2" "+attack2"
bind "PAUSE" "pause"
bind "KP_LEFTARROW" "g3sg1 ; sg550 ; buyammo1 ; buyammo1 ; vesthelm ; stopsound"
bind "KP_PGUP" "usp; buyammo2 ; buyammo2 ; buyammo2; buyammo2; vesthelm ; stopsound"
bind "KP_END" "ak47; m4a1; buyammo1 ; buyammo1 ; vesthelm ; stopsound"
bind "KP_PGDN" "awp; buyammo1 ; vesthelm ; stopsound"
bind "KP_DOWNARROW" "mp5; primammo ; vesthelm ; stopsound"
bind "KP_RIGHTARROW" "defuser ; nvgs ; stopsound"
bind "KP_UPARROW" "flash ; stopsound ; stopsound"
bind "KP_HOME" "hegren ; stopsound"
bind "KP_5" "vest ; vesthelm ; stopsound"
bind "f4" "g3sg1 ; sg550 ; buyammo1 ; buyammo1 ; vesthelm ; stopsound"
bind "f9" "usp; buyammo2; buyammo2; buyammo2; buyammo2; vesthelm ; stopsound"
bind "f1" "ak47; m4a1; buyammo1 ; buyammo1 ; vesthelm ; stopsound"
bind "f3" "awp; buyammo1 ; vesthelm ; stopsound"
bind "f2" "mp5; primammo ; vesthelm ; stopsound"
bind "f6" "defuser ; nvgs ; stopsound"
bind "f8" "flash ; stopsound"
bind "f7" "hegren ; stopsound"
bind "f5" "vest ; vesthelm ; stopsound"
bind "INS" "say_team sorry"
bind "HOME" "say nextmap"
bind "PGUP" "say =]"
bind "DEL" "say karamba"
bind "END" "say timeleft"
bind "PGDN" "say OMG"
bind "o" "say DEZE ALAUS IR TU KLANE!"
bind "i" "say JUS DABAR ESATE SU MANIM SAUGUS! KAS KAM NEAISKU?!"
_cl_autowepswitch 0
voice_scale "2.000000"
voice_enable "1"
voice_forcemicrecord "1.000000"
console "1.0"
fps_max "101"
fps_modem "0"
crosshair "1.000000"
gamma "3.000000"
brightness "3.000000"
con_color "225 215 255"
net_graph "3"
net_scale "1"
net_graphpos "2"
sv_voiceenable "1"
sv_aim "0.000000"
hpk_maxsize "0"
viewsize "110.000000"
fastsprites "2"
ati_subdiv "2"
ati_npatch "1.0"
r_bmodelhighfrac "5"
r_mmx "1"
r_dynamic "0"
r_shadows "0"
r_declas "0" 
mp_decals "0"
gl_dither "1"
gl_polyoffset "0.1"
gl_overbright "0"
gl_flipmatrix "0"
gl_monolights "0"
gl_lightholes "1"
gl_ztrick "0"
gl_picmip "1"  
s_rolloff "1.0"
s_doppler "0.0"
s_distance "60"
s_automin_distance "2"
s_automax_distance "30"
s_min_distance "5"
s_max_distance "1000"
s_leafnum "0"
s_refgain "0.4"
s_refdelay "4"
s_polykeep "1000000000"
s_polysize "10000000"
s_numpolys "200"
s_bloat "2.0"
s_verbwet "0.25"
s_a3d "0.000000"
s_eax "0"
volume "0.3"
suitvolume "0.250000"
hisound "1.000000"
bgmvolume "1.000000"
MP3Volume "0.800000"
_snd_mixahead "0.1"
team ""
model "gordon"
skin ""
topcolor "30"
bottomcolor "0"
rate "25000.000000"
cl_updaterate "101"
cl_lw "1"
cl_lc "1"
cl_dlmax "128"
cl_himodels "0"
cl_idealpitchscale "0.8"
cl_timeout "305"
cl_cmdbackup "2"
cl_download_ingame "1"
cl_allowdownload "1"
cl_allowupload "1"
cl_cmdrate "101"
lookstrafe "0.000000"
lookspring "0.000000"
cl_forwardspeed "400"
cl_backspeed "400"
cl_vsmoothing "0.05"
m_pitch "0.022000"
m_yaw "0.022"
m_forward "1"
m_side "0.8"
m_filter "0.000000"
sensitivity "3.7"
joystick "0.000000"
hud_takesshots "0"
fastsprites "0"
cl_corpsestay "0.000000"
_cl_autowepswitch "0"
hud_capturemouse "1"
hud_draw "1"
cl_minmodels "1"
cl_dynamiccrosshair "0"
hud_fastswitch "1"
hud_centerid "1"
max_shells "0" 
max_smokepuffs "0" 
voice_modenable "1"
setinfo "_statsme_menu" "0"
setinfo "_statsme_menus" "0"
setinfo "lefthand" "0"
setinfo "ah" "0"
setinfo "dm" "0"
setinfo "_ah" "1"
setinfo "_vgui_menus" "0"
setinfo "_statsme" "0"
+mlook
+jlook

priedas: zemelapiu su .res klaidomis tvarkymas

manau daugumai zinomas zemelapis fy_iceworld yra sutiktas anksciau ar veliau, ir neturint sio zemelapio prisijunges zaidejas ji siunciasi kad galetu ji zaisti, bet taip jau atsitinka kad rodos lyg ir viska parsisiuntus issoksta pranesimas kad truksta de_vegas.wad failo ir zaisti negalite.. gudresni aisku paiesko internete ir parsisiuncia trukstama de_vegas.wad, bet kaip patirtis rodo, mazuma..

serveris nesiuncia de_vegas.wad.. ka daryti? kur klaida?

sukuriam /home/cs/game/cstrike/maps/fy_iceworld.res ir i ji irasome:

maps/fy_iceworld.res
overviews/fy_iceworld.txt
overviews/fy_iceworld.bmp
de_vegas.wad

issaugome, ir nuo siol serveris sius visus nurodytus failus (jei jie prieinami!)

Personal tools
Categories