Settings: 23.899
Screenshots: 10.353
Downloads: 10.905.698
Views: 74.212.161
Downloads Today: 132
Views Today: 11.016

Link cs settings, config & cfg 2013

Full Name -
Nickname Link
Birthday -
Nationality ArgentinaArgentina
Game Counter-Strike 1.6Counter-Strike 1.6
Since 2013-04-25
Last Update 2013-04-25
Link screenshot

Link Gear

Mouse -
Mousepad -
Keyboard -
Headset -
Earbuds -
Monitor -
Chair -
Controller -
Case -

Link Gaming PC Setup

GPU -
CPU -
Memory -
Motherboard -
Power Supply -
Storage -
Fan -
Cooler -

Link config

The Counter-Strike 1.6 config file of Link has been downloaded 161 times. Download Link.cfg by clicking the download button below.
How to install Link cs config
1. Download Link.cfg by clicking the download button above.

2. Extract and/or copy file(s) into your Counter-Strike 1.6 folder (Example: C:\Program Files (x86)\Steam\steamapps\[account]\counter-strike\cstrike\cfg).

3. Launch the game and type in "exec configname.cfg" in console to load the config or make sure to add "exec autoexec.cfg", "exec userconfig.cfg" or "exec Link.cfg" to config.cfg file in your Counter-Strike 1.6 folder.
Social Media
Twitch -
Twitter -
YouTube -
Instagram -
Facebook -
TikTok -
Steam -
Discord -

Link Settings

Monitor
Resolution: -
Aspect Ratio: -
Sensitivity
Sensitivity: 1.8
Crosshair
Color: white
Size: 1
FAQ
Summary
This page contains the in-game settings, config files (cfg) and hardware setup of Link. The Link cs settings page has been viewed for 3.516 since it was added on 2013-04-25. The last time the settings of Link were on 2013-04-25. Visit the cs settings page to view more Counter-Strike 1.6 settings like Link or visit upload section to add your own cs settings.
Other Counter-Strike 1.6 settings
# Name Country Last Update
1csIndiaIndia2021-08-26
2csTurkeyTurkey2024-09-12
3csGeorgiaGeorgia2023-12-26
4csSerbiaSerbia2020-09-01
5csMongoliaMongolia2021-06-30
Other Argentina gaming settings
Link CFG file
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____ steelv2 cfg cshile.gen.tr
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


MAÇ CFG Sidir...

cshile.gen.tr


//Steelv2 R_Ayarları

r_bmodelhighfrac "5"

r_bmodelinterp "1"

r_cachestudio "1"

r_cullsequencebox "1"

r_decals "300"

r_detailtextures "0"

r_detailtexturessupported 1

r_drawentities "1"

r_drawviewmodel 1"

r_dynamic "0"

r_fullbright "1"

r_glowshellfreq "0"

r_lightmap "0"

r_lightholes "0"

r_luminance "0"

r_mirroralpha "0"

r_mmx "1"

r_norefresh "0"

r_novis "0"

r_shadows "0"

r_speeds "0"

r_traceglow "0"

r_wadtextures "0"

r_wateralpha "1"

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




//MaRKo~ CL Ayarları...

_cl_autowepswitch "1"

cl_allowdownload "1"

cl_allowupload "0"

cl_bob "0"

cl_bobup "0"

cl_bobcycle "0.8"

cl_chasedist "112"

cl_clockreset "0.1"

cl_corpsestay "180"

cl_cmdbackup "2"

cl_dlmax "256"

cl_download_ingame "0"

cl_dynamiccrosshair "0"

cl_fixtimerate "7"

cl_gaitestimation "1"

cl_himodels "0"

cl_idealpitchscale "0.8"

cl_gg "0"

cl_lc "1"

cl_lw "1"

cl_messages "1"

cl_minmodels "0"

cl_nosmooth "0"

cl_observercrosshair "1"

cl_pitchup "89"

cl_pitchdown "89"

cl_pitchspeed "256"

cl_radartype "1"

cl_resend "2"

cl_righthand "1"

cl_shadows "0"

cl_showerror "0"

cl_showevents "1"

cl_showfps "0"

cl_showmessages "0"

cl_shownet "0"

cl_smoothtime "0"

cl_solid_players "1"

cl_timeout "999"

cl_waterdist "4"

cl_weather "0"
cl_backspeed "400"

cl_forwardspeed "400"

cl_upspeed "400"

cl_sidespeed "400"

cl_pitchspeed "400

cl_yawspeed 400
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



//SK ayarları Steelv2

sk_controller_health1 "60"
sk_controller_health2 "60"
sk_controller_health3 "100"
sk_controller_dmg***1 "15"
sk_controller_dmg***2 "25"
sk_controller_dmg***3 "35"
sk_controller_speedball1 "650"
sk_controller_speedball2 "800"
sk_controller_speedball3 "1000"
sk_controller_dmgball1 "3"
sk_controller_dmgball2 "4"
sk_controller_dmgball3 "5"

// Nihilanth

sk_nihilanth_health1 "800"
sk_nihilanth_health2 "800"
sk_nihilanth_health3 "1000"
sk_nihilanth_***1 "30"
sk_nihilanth_***2 "30"
sk_nihilanth_***3 "50"

// Scientist

sk_scientist_health1 "20"
sk_scientist_health2 "20"
sk_scientist_health3 "20"

// Snark

sk_snark_health1 "2"
sk_snark_health2 "2"
sk_snark_health3 "2"
sk_snark_dmg_bite1 "10"
sk_snark_dmg_bite2 "10"
sk_snark_dmg_bite3 "10"
sk_snark_dmg_pop1 "5"
sk_snark_dmg_pop2 "5"
sk_snark_dmg_pop3 "5"

// Zombie

sk_zombie_health1 "50"
sk_zombie_health2 "50"
sk_zombie_health3 "100"
sk_zombie_dmg_one_slash1 "10"
sk_zombie_dmg_one_slash2 "20"
sk_zombie_dmg_one_slash3 "20"
sk_zombie_dmg_both_slash1 "25"
sk_zombie_dmg_both_slash2 "40"
sk_zombie_dmg_both_slash3 "40"

//Turret

sk_turret_health1 "50"
sk_turret_health2 "50"
sk_turret_health3 "60"

// MiniTurret

sk_miniturret_health1 "40"
sk_miniturret_health2 "40"
sk_miniturret_health3 "50"

// Sentry Turret

sk_sentry_health1 "40"
sk_sentry_health2 "40"
sk_sentry_health3 "50"

// PLAYER WEAPONS

// Crowbar whack

sk_plr_crowbar1 "10"
sk_plr_crowbar2 "10"
sk_plr_crowbar3 "10"

// 9mmhandgun Round

sk_plr_9mm_bullet1 "8"
sk_plr_9mm_bullet2 "8"
sk_plr_9mm_bullet3 "8"

// 357 Round

sk_plr_357_bullet1 "40"
sk_plr_357_bullet2 "40"
sk_plr_357_bullet3 "40"

// 9mmAR Round

sk_plr_9mmAR_bullet1 "5"
sk_plr_9mmAR_bullet2 "5"
sk_plr_9mmAR_bullet3 "5"

// M203 grenade

sk_plr_9mmAR_grenade1 "100"
sk_plr_9mmAR_grenade2 "100"
sk_plr_9mmAR_grenade3 "100"

// Shotgun buckshot

sk_plr_buckshot1 "5"
sk_plr_buckshot2 "5"
sk_plr_buckshot3 "5"

// Crossbow

sk_plr_xbow_bolt_client1 "10"
sk_plr_xbow_bolt_client2 "10"
sk_plr_xbow_bolt_client3 "10"
sk_plr_xbow_bolt_monster1 "50"
sk_plr_xbow_bolt_monster2 "50"
sk_plr_xbow_bolt_monster3 "50"

// RPG

sk_plr_rpg1 "100"
sk_plr_rpg2 "100"
sk_plr_rpg3 "100"

// Gauss Gun

sk_plr_gauss1 "20"
sk_plr_gauss2 "20"
sk_plr_gauss3 "20"

// Egon Gun

sk_plr_egon_narrow1 "6"
sk_plr_egon_narrow2 "6"
sk_plr_egon_narrow3 "6"
sk_plr_egon_wide1 "14"
sk_plr_egon_wide2 "14"
sk_plr_egon_wide3 "14"

// Hand Grendade

sk_plr_hand_grenade1 "100"
sk_plr_hand_grenade2 "100"
sk_plr_hand_grenade3 "100"

// Satchel Charge

sk_plr_satchel1 "150"
sk_plr_satchel2 "150"
sk_plr_satchel3 "150"

// Tripmine

sk_plr_tripmine1 "150"
sk_plr_tripmine2 "150"
sk_plr_tripmine3 "150"

// MONSTER WEAPONS

sk_12mm_bullet1 "8"
sk_12mm_bullet2 "10"
sk_12mm_bullet3 "10"
sk_9mmAR_bullet1 "3"
sk_9mmAR_bullet2 "4"
sk_9mmAR_bullet3 "5"
sk_9mm_bullet1 "5"
sk_9mm_bullet2 "5"
sk_9mm_bullet3 "8"

// HORNET

sk_hornet_dmg1 "4"
sk_hornet_dmg2 "5"
sk_hornet_dmg3 "8"

// HEALTH/SUIT CHARGE DISTRIBUTION

sk_suitcharger1 "75"
sk_suitcharger2 "50"
sk_suitcharger3 "35"
sk_battery1 "15"
sk_battery2 "15"
sk_battery3 "10"
sk_healthcharger1 "50"
sk_healthcharger2 "40"
sk_healthcharger3 "25"
sk_healthkit1 "15"
sk_healthkit2 "15"
sk_healthkit3 "10"
sk_scientist_heal1 "25"
sk_scientist_heal2 "25"
sk_scientist_heal3 "25"

// monster damage adjusters

sk_monster_head1 "3"
sk_monster_head2 "3"
sk_monster_head3 "3"
sk_monster_chest1 "1"
sk_monster_chest2 "1"
sk_monster_chest3 "1"
sk_monster_stomach1 "1"
sk_monster_stomach2 "1"
sk_monster_stomach3 "1"
sk_monster_arm1 "1"
sk_monster_arm2 "1"
sk_monster_arm3 "1"
sk_monster_leg1 "1"
sk_monster_leg2 "1"
sk_monster_leg3 "1"

// player damage adjusters

sk_player_head1 "3"
sk_player_head2 "3"
sk_player_head3 "3"
sk_player_chest1 "1"
sk_player_chest2 "1"
sk_player_chest3 "1"
sk_player_stomach1 "1"
sk_player_stomach2 "1"
sk_player_stomach3 "1"
sk_player_arm1 "1"
sk_player_arm2 "1"
sk_player_arm3 "1"
sk_player_leg1 "1"
sk_player_leg2 "1"
sk_player_leg3 "1"



//
slist

//
bind pgup drawmdl1

drawmdl1
//
bind pgdn sprblend1

sprblend1
cl_gg 100
v_dark 5

// syntax of avadd :
// first param -> 0=stand, 1=duck
// second param -> height
// third param -> forward
// last param -> right




_cs_restrict 0
_debug 0
_fx 0
_gag_name 0
_ignore_immunity 1.89
_repeat_freq 600
_duration 30
// Defines the max time length in seconds of voting process.
amv_vote_duration 30

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//DEfine VE Native kodlar

// Default access rights for players not in the users.ini file.
// (See documentation for access levels and information)
default_access 1

// Whether to use encrypted passwords or not.
// 0: disabled
// 1: encrypt using Unix crypt() (Linux ONLY)
// 2: encrypt using MD5 hash
// 3: encrypt using MySQL PASSWORD() (MySQL ONLY)




// If enabled, the scripting file functions have read
// access to files
// (0=disabled, 1=enabled)




f defined _included
pragma semicolon 1
enum print_type {
print_console=0,
print_center,
print_chat,
print_tty,
print_pretty
};

enum fsize_unit {
bytes = 0,
lines
};

const bBanByID = 0;
const bBanByIP = 1;
const bBanBoth = 2;

enum uid {
uid_none = 0,
uid_invalid,
uid_index,
uid_sessionID,
uid_wonID,
};

/* Defined as '+ 1' so when we make an array[MAXPLAYERS], we get the range from 0 - 32. */
#define MAX_PLAYERS 32 + 1
#define TEAM_PROXY 600
#define TEAM_SPECTATOR 500

#define MAX_NUMBER_LENGTH 20
#define MAX_COMMAND_LENGTH 30
#define MAX_NAME_LENGTH 33
#define MAX_DATA_LENGTH 200
#define MAX_TEXT_LENGTH 200
#define MAX_AUTHID_LENGTH 39

#define PLUGIN_HANDLED -1
#define PLUGIN_FAILURE 0
#define PLUGIN_CONTINUE 1

#define ACCESS_ALL 0
#define ACCESS_TIMELEFT 0
#define ACCESS_USERLIST 0
#define ACCESS_VERSION 0
#define ACCESS_VOTE_KICK 1
#define ACCESS_VOTE_MAP 1
#define ACCESS_FRAGLIMIT 2
#define ACCESS_MAP 2
#define ACCESS_TIMELIMIT 2
#define ACCESS_ABORT_VOTE 2
#define ACCESS_RELOAD 4
#define ACCESS_PAUSE 8
#define ACCESS_PASS 16
#define ACCESS_FRIENDLY_FIRE 32
#define ACCESS_GRAVITY 32
#define ACCESS_TEAMPLAY 32
#define ACCESS_CHAT 64
#define ACCESS_SAY 64
#define ACCESS_KICK 128
#define ACCESS_BAN 256
#define ACCESS_CONFIG 512
#define ACCESS_IMMUNITY 4096
#define ACCESS_RCON 65536 /* Define this to 512 to have Alfred's setting */
#define ACCESS_RESERVE_NICK 16384 /* This is never used in the script; just for reference */
#define ACCESS_RESERVE_SPOT 32768 /* This is never used in the script; just for reference */


forward plugin_init();
forward plugin_info(HLOldName, HLNewName, UserIndex);
forward plugin_connect(HLUserName, HLIP, UserIndex);
forward plugin_disconnect(HLUserName, UserIndex);
forward plugin_command(HLCommand, HLData, HLUserName, UserIndex);

native access( iAccess, sName[] = "" );
native auth( sName[] = "");
native ban( sPlayer[], iTime, bBanBy = bBanByID );
native censor_words( sString[] );
native centersay( sText[], iTime, iRed, iGreen, iBlue );
native centersayex( sUser[], sText[], iTime, iRed, iGreen, iBlue );
native changelevel( sMap[], iIntermissionPause = 0 );
native cvar_exists( sCvar[] );
native check_user( sPlayer[] );
native check_words( sPlayer[] );
native consgreet( sMessage[] );
native convert_string( iHLString, sSmallString[], iMaxLength );
native currentmap( iMap[], iMaxLength );
native directmessage( sMessage[], iUserID = -1, uid:tUidType = uid:uid_sessionID );
native exec( sCommand[], bWriteLogEntry = 1 );
native execclient( sPlayer[], sCommand[] );
native get_serverinfo( sKey[], sValue[], iMaxLength );
native get_timer( iTimer );
native get_userAuthID( sPlayer[], sAuthid[], iMaxLength = MAX_AUTHID_LENGTH );
native get_userindex( sPlayer[], &iIndex );
native get_userinfo( sPlayer[], sKey[], sInfo[], iMaxLength );
native get_userIP( sPlayer[], sIP[], iMaxLength, &iPort = 0 );
native get_username( sPlayer[], sName[], iMaxLength );
native get_userorigin( sPlayer[], &iX, &iY, &iZ );
native get_userSessionID( sPlayer[], &iSessionID );
native get_userWONID( sPlayer[], &iWONID );
native get_vaultdata( sKey[], sData[], iMaxLength );
native get_vaultnumdata( sKey[], &iData );
native getstrvar( sVarname[], sValue[], iMaxLength );
native gettarget( sPlayer[], sTargetName[], iMaxLength, iRange = 2048 );
native getteamcount( iTeam );
native getvar( sVarname[] );
native glow( sTarget[], iRed = 0, iGreen = 0, iBlue = 0 );
native godmode( sPlayer[], iOnOff );
native help( sKeyword[] );
native kick( sPlayer[] );
native kill_timer( iTimer );
native list_maps( );
native log( sLogEntry[] );
native look_in_dir( sDirectory[], sMatch[], sFilename [], iNumber );
native maptime( iWhichtime, iPrintToConsole = 0 );
native maxplayercount( );
native message( sTarget[], sMessage[] );
native messageex( sTarget[],sMessage[], print_type:iMessageType );
native motd( sPlayer[], Text[] );
native nextmap( sMap[], iMaxLength );
native noclip( sPlayer[], iOnOff );
native playercount( );
native playerinfo( iPlayerIndex, sName[], iLength, &iUserID = 0, &iWONID = 0, &iTeam = 0, &iDead = 0, sAuthID[MAX_AUTHID_LENGTH] = "" );
native playsound( sTarget[], iSound[] );
native pointto( iRange = 2048 );
native rainbow( sText[], iTime, iRedStart, iGreenStart, iBlueStart, iRedEnd, iGreenEnd, iBlueEnd );
native reload( );
native say( sMessage[] );
native selfmessage( sMessage[] );
native servertime( sTimeString[], iMaxLen, sFormat[] = "none" );
native set_serverinfo( sKey[], sValue[] );
native set_timer( sFunction[], iWaitSeconds, iRepeatCount, sParameter[] = "" );
native set_vaultdata( sKey[], sData[] );
native set_vaultnumdata( sKey[], iData );
native slap( sPlayer[] );
native slay( sPlayer[] );
native speakto( sTarget[], iSentence[] );
native strtonum( sString[] );
native systemtime( );
native teleport( sPlayer[], iX, iY, iZ );
native timeleft( iPrintToConsole = 1 );
native typesay( sMessage[], iTime, iRed, iGreen, iBlue );
native unban( sWONID[] );
native userlist( sPattern[] = "" );
native valid_map( sMap[] );
native valid_mapex( sMap[], ignoreMapsFile = 0 );
native version( );
native vote( sVoteString[], ... );
native vote_allowed( );

native spawn( sClass[], iX, iY, iZ, iXAngle, iYAngle, iZAngle );
native listspawn( sClass[] );
native movespawn( iIdentity, iX, iY, iZ, iXAngle, iYAngle, iZAngle );
native removespawn( iIdentity );

native fileexists( sFilename[] );
native filesize( sFilename[], fsize_unit:Unit = 1 );
native readfile( sFilename[], sLine[], iLineNum, iMaxLength );
native writefile( sFilename[], sLine[], iLineNum = -1 );
native resetfile( sFilename[] );
native deletefile( sFilename[] );

native plugin_exec( sCommand[], sArguments[] );
native plugin_registercmd( Command[], Function[], RequiredAccess, HelpMessage[] = "" );
native plugin_registerhelp( Command[], RequiredAccess, HelpMessage[] );
native plugin_registerinfo( Name[], Description[], Version[]);

native setstrvar( cvar[], value[]);
native menu(username[],text[],keys,time=0);

native get_userFrags( sPlayer[], &frags );
native get_userHealth(sPlayer[], &health );
native get_userTeam( sPlayer[], &team );
native get_userArmor( sPlayer[], &armor );





/* Core functions



........





#if defined _core_included
#endinput
#endif
#define _core_included

native heapspace();

native funcidx(const name[]);

native numargs();
native getarg(arg, index=0);
native setarg(arg, index=0, value);

native strlen(const string[]);
native strpack(dest[], const source[]);
native strunpack(dest[], const source[]);

native tolower(c);
native toupper(c);
native swapchars(c);

native random(max);

/* We use the Small versions in adminlib.inc instead
native min(value1, value2);
native max(value1, value2);
*/
native clamp(value, min=cellmin, max=cellmax);

native getproperty(id=0, const name[]="", value=cellmin, string[]="");
native setproperty(id=0, const name[]="", value=cellmin, const string[]="");
native deleteproperty(id=0, const name[]="", value=cellmin);
native existproperty(id=0, const name[]="", value=cellmin)





#include
#include

#define CHAR_INVALID -1
#define FALSE 0
#define NULL_CHAR 0
#define PERIOD_CHAR 46
#define QUOTE_CHAR 34
#define TRUE 1

/* Returns 1 if the current user has the required auth level, 0 otherwise */
stock check_auth( iAuthLevel ) {
new iResult = access(iAuthLevel,"");
if (iResult!=0) iResult = 1;
return iResult;
}

/* Returns the lesser of a and b */
stock min(a,b) {
if (aelse return b;
return 1;
}

/* Returns the greater of a and b */
stock max(a,b) {
if (a>b) return a;
else return b;
return 1;
}

/* Executes a command while providing the nicely formatted output */
stock execute_command(sUser[], sCommand[], sHalfLifeCmd[], sData[]) {
new sRconCmd[MAX_DATA_LENGTH];

say_command(sUser,sCommand,sData);
snprintf(sRconCmd, MAX_DATA_LENGTH, "%s %s", sHalfLifeCmd, sData);
exec(sRconCmd);
}

/* Nicely formats the current command */
stock format_command(sUser[],sCommand[],sData[],sText[]) {
snprintf(sText, MAX_TEXT_LENGTH, "Command: %s used command %s %s", sUser, sCommand, sData);
}

/* Logs a command */
stock log_command(sUser[],sCommand[],sData[]) {
new sText[MAX_TEXT_LENGTH];
format_command(sUser,sCommand,sData,sText);
log(sText);
}

/* NumToStr courtesy of Nathan O'Sullivan (http://nathan.qgl.org/halflifeadmin/numtostr.txt) */
stock numtostr(num,str[]) {
new Base = 1;
new Digits = 1;
new i = 0;

/* Special case: 0 */
if (num == 0) {
str[i++] = '0';
str[i++] = NULL_CHAR;
} else {
/* If we've got a negative number, add a negative sign
to the string, and multiply the number by -1 */
if (num < 0) {
str[i++] = '-';
num *= -1;
}

/* Ok. We've got at least one digit. Keep multiplying by
10 till we get a higher number than what we've got. Note
that this will leave Digits 1 higher than what we want (eg,
if Num was 7, Digits will be 2 */
while (Base <= num) {
Base *= 10;
Digits++;
}

/* Because Digits is higher, use --Digits rather than Digits--.
Also, divide Base before using it. */
while (--Digits > 0) {
Base /= 10;
str[i++] = '0' + (num - (num % Base)) / Base;
num = num % Base;
}
str[i++] = NULL_CHAR;
}
}

/* Command to use when the person doesn't have the proper permissions. */
stock reject_message(iPublic = 0) {
new sText[MAX_TEXT_LENGTH];

getstrvar("admin_reject_msg",sText,MAX_TEXT_LENGTH );
if(strlen(sText) < 2)
strcpy(sText, "You do not have access to this command.", MAX_TEXT_LENGTH);
if (iPublic == 0) {
selfmessage(sText);
} else {
say(sText);
}
}

/* Results differ upon the setting of admin_quiet. If admin_quiet
is 0, says who executed what command. If admin_quiet is 1, says
'Admin' executed what command. Otherwise, simply logs.
The override option allows one to ignore admin_quiet, and always
display a message.
*/
stock say_command(sUser[],sCommand[],sData[], iOverride = 0) {
new iQuiet;
new sText[MAX_TEXT_LENGTH];

iQuiet = getvar("admin_quiet");
if (iQuiet==0) {
format_command(sUser,sCommand,sData,sText);
say(sText);
} else if (iQuiet==1 || iOverride==1) {
format_command("Admin",sCommand,sData,sText);
say(sText);
} else {
log_command(sUser,sCommand,sData);
}
}



/* Given a string (str[]), this will attempt to break it apart at the first
space that's not inside quotation marks. Quotes at the beginning and end
will be stripped. Ie,

new str[20] = "This is a test"
new first[20];
new second[20];
strbreak(str,first,second, 20);

first is now equal to "This", and second is now equal to "is a test". If
str[] had been "^"This is^" a test", first would be "This is" and second would
be "a test".
At maximum maxlen characters will be copied. */
stock strbreak(str[], first[], second[], maxlen, flen=sizeof first, slen=sizeof second ) {
new i = 0;
new j = 0;
new NullPos = CHAR_INVALID;
new Quote = FALSE;
new SpacePos = CHAR_INVALID;
new iFirstEnd;
new iSecondEnd;

if (maxlen == 0)
maxlen = strlen(str);



// Find the position of the first unquoted space and the terminating NULL character
for(i=0; i<=strlen(str); i++)














if (str[i] == QUOTE_CHAR) {
if (Quote==FALSE) {
Quote = TRUE;
} else {
Quote = FALSE;
}
} else if (str[i] == ' ' && SpacePos == CHAR_INVALID && Quote == FALSE) {
SpacePos = i;
} else if (str[i] == NULL_CHAR) {
NullPos = i;
break;
}
}

if (NullPos == CHAR_INVALID) NullPos = maxlen + 1;


if (SpacePos == CHAR_INVALID) {
strcpy(first, str, flen);
strinit(second);

} else {
// Make sure we do not copy more characters into the second array
// than would fit into it. If the second part of the source string
// is longer than the length of the second array, truncate it to fit.
new iSecondLen = NullPos - SpacePos -1;
iSecondEnd = min( iSecondLen, (slen-1) );

// If maxlen is set we want to copy only max maxlen characters.
// Check if this is smaller than our current limit
iSecondEnd = min( iSecondEnd, maxlen );

// Make sure we do not copy more characters into the first array
// than would fit into it. If the first part of the source string
// is longer than the length of the first array, truncate it to fit.
iFirstEnd = min( SpacePos, (flen-1) );

// If maxlen is set we want to copy only max maxlen characters.
// Check if this is smaller than our current limit
iFirstEnd = min( iFirstEnd, maxlen );


// Copy the first part of the string into the first array
for( i = 0; i < iFirstEnd; i++) {
first[i] = str[i];
}
// Zero-terminate the first array
first[iFirstEnd] = NULL_CHAR;


// Copy the second part of the string into the second array
for( i = SpacePos+1, j = 0; j < iSecondEnd; i++, j++) {
second[j] = str[i];
}
// Zero-terminate the second array
second[iSecondEnd] = NULL_CHAR;
}


/* Strip out the quotes of the return values. */
strstripquotes(first);
strstripquotes(second);
}


/* Counts the number of times searchchar appears in str[] */
/*
stock strcount(str[], searchchar) {
new i = 0;
new maxlen = strlen(str);
new Count = 0;

for(i = 0; i <= maxlen; i++) {
if (str[i] == searchchar)
Count++;
}
return Count;
}
*/

/* Returns 1 if two strings are exactly the same, including length, etc */
stock streq( strOne[], strTwo[] ) {
if (strlen(strOne) != strlen(strTwo)) {
return 0;
} else if (strcasecmp(strOne, strTwo)==0) {
return 1;
}
return 0;
}

/* Initialize a string */
stock strinit( sString[] ) {
sString[0] = NULL_CHAR;
}

/* returns 1 if two strings are the same in the first Length (or less
if one is smaller than Length) digits, 0 otherwise */
stock strmatch( sOne[], sTwo[], iLength) {
if (strncasecmp(sOne, sTwo, iLength)==0) {
return 1;
}
return 0;
}

/* Strips the quotes from the beginning and ending, if they exist. Ignores
those in the middle. */
stock strstripquotes(str[]) {
new maxlen = strlen(str);
new i;

if(maxlen==0)
return;

if(str[maxlen - 1]==QUOTE_CHAR)
str[--maxlen] = NULL_CHAR;

if(str[0] == QUOTE_CHAR) {
for(i=0; i<=maxlen; i++)
str[i] = str[i+1];
str[i-2] = NULL_CHAR;
}
}

/* I had this in the normal alphabetical order...but it caused
the Small compiler to barf. So I moved it down here, and it's
fine. That doesn't fill me with inspiration, but it seems
to work. */
/* Returns 1 if param is '1' or 'on'...0 for anything else. */
stock check_param( sParam[] ) {
new iResult = 0;

if(strlen(sParam) > 0) {
if (streq(sParam, "on")==1) {
iResult = 1;
} else if (streq(sParam, "1")==1) {
iResult = 1;
}
}
return iResult;
}

/* Returns 1 if the target has immunity */
stock check_immunity( sTarget[] ) {
/* If the server doesn't honor immunity, no one is immune. */
if (getvar("admin_ignore_immunity")!=0) {
return 0;
/* Else, you're immune if you have that access level. */
} else if (access(ACCESS_IMMUNITY,sTarget)!=0) {
return 1;
}
return 0;
}


stock execclient_all( sCommand[] ) {

new Target[MAX_NAME_LENGTH];
new i;
new iSessionID;
new sSessionID[MAX_NUMBER_LENGTH];
new maxplayers = maxplayercount();

for(i=1; i<=maxplayers; i++) {
strinit(Target);
if(playerinfo(i,Target,MAX_NAME_LENGTH, iSessionID)==1) {
numtostr( iSessionID, sSessionID );
execclient(sSessionID,sCommand);

} // if
} // for

return 1;
} // execclient_all()


/********************************** PUBLIC UTILITY FUNCTIONS *****************************/

/* Called by changelevel() by a timer call. Do not remove!
Changes map to specified map by calling changelevel with
specific parameters. */
public ChangeMap(Timer,Repeat,HLUser,HLParam) {
new NewMap[MAX_NAME_LENGTH];

convert_string(HLParam,NewMap,MAX_NAME_LENGTH);
if(strlen(NewMap) != 0) {
changelevel(NewMap, -1);
}
}






/* Console input/output functions
*
* (c) Copyright FIREHACK V5
* This file is provided as is (no warranties).
*/
#if defined _console_included
#endinput
#endif
#define _console_included

enum
{
black, /* colours as per the ANSI Escape sequences, ISO 6429 */
red,
green,
yellow,
blue,
magenta,
cyan,
white,
}

native getchar(echo=true);
native getstring(string[], maxlength, boolack=false);
native getvalue(base=10, end='^r', ...);
native print(const string[], foreground=-1, background=-1);
native printf(const format[], ...);







?????????????????????????????????????????????????? ??????????????????????????????????????????????






/* Fixed point arithmetic
*
* (c) FIREHACK V5
* This file is provided as is (no warranties).
*/
#if defined _fixed_included
#endinput
#endif
#define _fixed_included

enum fround_method {
fround_round,
fround_floor,
fround_ceil
}

native fixed:fixed(value);
native fixed:fixedstr(const string[]);
native fixed:fmul(fixed:oper1, fixed:oper2);
native fixed:fdiv(fixed:dividend, fixed:divisor);
native fixed:ffract(fixed:value);
native fround(fixed:value, fround_method:method=fround_round);

#pragma rational fixed(3)

/* user defined operators */
native fixed:operator*(fixed:oper1, fixed:oper2) = fmul;
native fixed:operator/(fixed:oper1, fixed:oper2) = fdiv;

stock fixed:operator++(fixed:oper)
return oper+fixed(1);

stock fixed:operator--(fixed:oper)
return oper-fixed(1);

stock fixed:operator*(fixed:oper1, oper2)
return _:oper1 * oper2; /* "*" is commutative */

stock fixed:operator/(fixed:oper1, oper2)
return _:oper1 / oper2;

stock fixed:operator/(oper1, fixed:oper2)
return fdiv(fixed(oper1), oper2);

stock fixed:operator+(fixed:oper1, oper2)
return oper1 + fixed(oper2); /* "+" is commutative */

stock fixed:operator-(fixed:oper1, oper2)
return oper1 - fixed(oper2);

stock fixed:operator-(oper1, fixed:oper2)
return fixed(oper1) - oper2;

/* forbidden operations */
forward operator%(fixed:oper1, fixed:oper2);
forward operator%(fixed:oper1, oper2);
forward operator%(oper1, fixed:oper2);





/* Version 1.1 (2008 by FIREHACK) */

#if defined _math_included
#endinput
#endif
#define _math_included

#include
#include
#include
#include

#define LGCOUNT 15

stock fixtostr(fixed:fNumber,sNumber[],iMaxLength){
new iNumber,iFrac;
new iSign=1;
new sFrac[4];

if(fNumber<0.000){
iNumber=fround(fNumber,fround_ceil);
}
else{
iNumber=fround(fNumber,fround_floor);
}
iFrac=ffract(fNumber);
if(iFrac<0){
iFrac*=-1;
iSign=-1;
}
numtostr(iFrac,sFrac);
switch(strlen(sFrac)){
case 2:
snprintf(sNumber,iMaxLength,"%d.0%s",iNumber,sFrac );
case 1:
snprintf(sNumber,iMaxLength,"%d.00%s",iNumber,sFra c);
default:
snprintf(sNumber,iMaxLength,"%d.%s",iNumber,sFrac) ;
}
if(iSign==-1 && iNumber==0){
snprintf(sNumber,iMaxLength,"-%s",sNumber);
}
return PLUGIN_CONTINUE;
}

stock fixed:strtofix(sNumber[]){
new fixed:fNumber;

if(strtrim(sNumber,"-",0)>0){
fNumber=fmul(fixedstr(sNumber),-1.000);
}
else{
fNumber=fixedstr(sNumber);
}

return fNumber;
}

stock matherror(iError){
new log_msg[MAX_TEXT_LENGTH];

switch(iError){
case 1:
strcpy(log_msg,"No valid value for function input!",MAX_TEXT_LENGTH);
case 2:
strcpy(log_msg,"Number too high for allowed range!",MAX_TEXT_LENGTH);
case 3:
strcpy(log_msg,"Number too low for allowed range!",MAX_TEXT_LENGTH);
default:
return PLUGIN_CONTINUE;
}
log(log_msg);
return PLUGIN_CONTINUE;
}

stock fixed:f_log10(fixed:fValue,&iError=0){
new fixed:fLG[LGCOUNT]={2147482.000,10000.000,100.000,10.000,3.162,1.778 ,1.334,1.155,1.075,1.037,1.018,1.009,1.005,1.002,1 .000};
new fixed:fLGFract[LGCOUNT-1]={4.000,2.000,1.000,0.500,0.250,0.125,0.063,0.031, 0.016,0.008,0.004,0.002,0.001,0.000};
new fixed:fLocalValue=0.000;
new fixed:fLower=0.000;

if(fValue<=0.000){
iError=1;
return 0.000;
}
if(fValue==2147482.000){
iError=2;
return 6.332;
}
if(fValue==0.001){
return -3.000;
}

for(new i=1;i<4;i++){
if(fValue>=1.000){
break;
}
fValue=fmul(fValue,10.000);
fLower=fLower+1.000;
}

for(new i=0;iif(fValueif(fValue>=fLG[i+1]){
fLocalValue=fLocalValue+fLGFract[i];
fValue=fdiv(fValue,fLG[i+1]);
}
}
else if(fValue==fLG[i]){
break;
}
}
iError=0;

return fLocalValue-fLower;
}

stock fixed:f_ln(fixed:fValue,&iError=0){
new fixed:fFactor=2.303;
new fixed:fCheck;
new fixed:fMultiply;
new fixed:fKeepResult;

fCheck=fValue;

fValue=f_log10(fValue,iError);
if(iError>0){
return fValue;
}

fValue=fmul(fValue,fFactor);
fKeepResult=fValue;
fKeepResult=f_powere(fKeepResult,iError);

if(iError>0){
return fKeepResult;
}

if(fKeepResult==fCheck){
return fValue;
}
if(fKeepResult>fCheck){
fMultiply=-0.001;
}
else if(fKeepResultfMultiply=0.001;
}
for(new i=0;i<1000;i++){
fKeepResult=f_powere(fValue+fmul(fixed(i),fMultipl y),iError);
if(iError>0){
return fKeepResult;
}
if(fKeepResult==fCheck){
return fValue+fmul(fixed(i-1),fMultiply);
}
}

return fValue;
}

stock fixed:f_logab(fixed:fBase,fixed:fValue,&iError=0){

fBase=f_log10(fBase,iError);
if(iError>0){
return fBase;
}
fValue=f_log10(fValue,iError);
if(iError>0){
return fValue;
}

return fdiv(fValue,fBase);
}

stock fixed:f_faculty(fixed:fValue,&iError=0){
new iValue=1;

if(ffract(fValue)==0.000){
if(fValue>0.000){
if(fValue<10.000){
iValue=fround(fValue);
fValue=1.000;
for(new i=2;i<=iValue;i++){
fValue=fmul(fValue,fixed(i));
}
return fValue;
}
iError=2;
return 2147482.000;
}
}
iError=1;

return -1.000;
}

stock fixed:f_powere(fixed:fExponent,&iError=0){
new fixed:fEulerArray[3][10]={{1.000,1.105,1.221,1.350,1.492,1.649,1.822,2.014 ,2.226,2.460},{1.000,1.010,1.020,1.030,1.041,1.051 ,1.062,1.073,1.083,1.094},{1.000,1.001,1.002,1.003 ,1.004,1.005,1.006,1.007,1.008,1.009}};
new fixed:fSignE=1.000;
new fixed:fEuler;
new fixed:fLocalResult=1.000;
new iKeepExponent=0;

fEuler=f_euler();

if(fExponent==0.000){
return 1.000;
}

if(fExponent>14.579){
iError=2;
return 2147482.000;
}

if(fExponent<0.000){
fSignE=-1.000;
fExponent=fExponent*fSignE;
}

iKeepExponent=fround(fExponent,fround_floor);
if(iKeepExponent!=0){
for(new i=0;ifLocalResult=fmul(fEuler,fLocalResult);
}
}

for(new i=0;i<3;i++){
fExponent=fExponent-fixed(iKeepExponent);
fExponent=fmul(fExponent,10.000);
iKeepExponent=fround(fExponent,fround_floor);
fLocalResult=fmul(fLocalResult,fEulerArray[i][iKeepExponent]);
}

if(fSignE==-1.000){
fLocalResult=fdiv(1.000,fLocalResult);
}

return fLocalResult;
}

stock fixed:f_power(fixed:fBasis,fixed:fExponent,&iError =0){
new fixed:fKeepValue;
new iKeep;
new iSign=0;

iKeep=fround(fExponent,fround_floor);

if(fBasis<0.000){
if(fixed(iKeep)!=fExponent){
iError=1;
return -1.000;
}
}

if(fExponent==0.500){
return f_sqrt(fBasis,iError);
}

fKeepValue=fBasis;

if(fixed(iKeep)==fExponent){
if(fExponent<0.000){
fExponent=fmul(fExponent,-1.000);
iKeep=iKeep*-1;
iSign=1;
}
for(new i=1;ifBasis=fmul(fBasis,fKeepValue);
}
if(iSign){
fBasis=fdiv(1.000,fBasis);
}
return fBasis;
}

fKeepValue=f_ln(fKeepValue,iError);
if(iError>0){
return -1.000;
}

return f_powere(fmul(fExponent,fKeepValue),iError);
}

stock fixed:f_euler(){
return 2.718;
}

stock fixed:f_pi(){
return 3.142;
}

stock fixed:f_sqrt(fixed:fNum,&iError=0,fixed:fNumStart= 1.000) {
new fixed:fNum2=fNum;
new fixed:fOne=1.000;

if(f_abs(fNum)!=fNum){
iError=1;
return -1.000;
}

if(fNumStart==fNum2){
fNumStart=1.000;
}

if(fNum<1.000){
fNum2=fdiv(fOne,fNum);
}

for(new i=0;i<100;i++){
fNum2=fdiv(fNum2+fNumStart,2.000);
fNumStart=fdiv(fNum,fNum2);
if(fNum2 <= fNumStart){
break;
}
}

return fNum2;
}

stock fixed:f_abs(fixed:fNum) {
if(fNum >= 0.000) {
return fNum;
}
return fmul(fNum,-1.000);
}

stock fixed:f_max(fixed:fNum,fixed:fNum2){
if(fNum >= fNum2) {
return fNum;
}
return fNum2;
}

stock fixed:f_min(fixed:fNum,fixed:fNum2){
if(fNum < fNum2) {
return fNum;
}
return fNum2;
}

stock distance(x1,x2,y1=0,y2=0,z1=0,z2=0){
new fixed:fNumStart=-1.000;
new fixed:fSum=0.000;
new iDx,iDy,iDz;
new iError=0;

iDx=(x1-x2)*(x1-x2);
iDy=(y1-y2)*(y1-y2);
iDz=(z1-z2)*(z1-z2);

fNumStart=fixed(max(max(iDx,iDy),iDz));
fSum=fixed(iDx+iDy+iDz);
if(fSum==0.000){
return 0;
}

fSum=f_sqrt(fSum,iError,fNumStart);

return fround(fSum);
}

stock fixed:f_sin(fixed:fNum){
new iSign=1;
new fixed:fDummy=0.000;
new fixed:fDummy2=f_pi();

if(fNum<0.000){
fNum=fmul(fNum,-1.000);
iSign=-1;
}

fDummy2=fmul(fDummy2,2.000);
fDummy=fdiv(fNum,fDummy2);
if(fDummy>1.000){
fDummy=fixed(fround(fDummy,fround_floor));
fNum=fNum-fmul(fDummy,fDummy2);
}
fDummy2=f_pi();
if(fNum>fDummy2){
iSign=iSign*-1;
fNum=fNum-fDummy2;
}

fDummy=fNum;
fDummy2=fNum;
for(new i=3;i<=11;i=i+2){
fDummy=fmul(fdiv(fmul(fDummy,fmul(fNum,fNum)),fmul (fixed(i),fixed(i-1))),-1.000);
fDummy2=fDummy2+fDummy;
}

return fmul(fDummy2,fixed(iSign));
}

stock fixed:f_cos(fixed:fNum){
return f_sin(fNum+fdiv(f_pi(),2.000));
}

stock fixed:f_tan(fixed:fNum){
return fdiv(f_sin(fNum),f_cos(fNum));
}

stock fixed:f_cot(fixed:fNum){
return fdiv(f_cos(fNum),f_sin(fNum));
}

/* Calculation of the integral 1/(1+x^2) in order to get the arctan */
stock fixed:f_arctan(fixed:fNum,&iError=0){
new fixed:fDummy;
new fixed:fResult;
new fixed:fRange;
new iNum;

if(fNum>1465.428){
iError=2;
return 2147482.000;
}

if(fNum==0.000){
return 0.000;
}

fDummy=f_abs(fmul(fNum,1000.000));
iNum=fround(fDummy)-1;
fRange=f_max(fNum,0.000);

fResult=fdiv(f_arctan_help(fRange),2.000);

fDummy=fRange+0.001;
for(new i=1;ifResult=fResult+f_arctan_help(fDummy);
fDummy=fDummy+0.001;
}

return fmul(fResult+fdiv(f_arctan_help(fDummy),2.000),fdi v(fNum,fixed(iNum+1)));
}

stock fixed:f_arctan_help(fixed:fNum){
return fdiv(1.000,1.000+fmul(fNum,fNum));
}

stock fixed:f_arcsin(fixed:fNum,&iError=0){

if(fNum>1.000){
iError=2;
return 1.571;
}
if(fNum<-1.000){
iError=3;
return -1.571;
}
if(fNum==1.000){
return 1.571;
}
if(fNum==-1.000){
return -1.571;
}

return f_arctan(fdiv(fNum,f_sqrt(1-fmul(fNum,fNum))));
}

stock fixed:f_arccos(fixed:fNum,&iError=0){

if(fNum>1.000){
iError=2;
return 1.571;
}
if(fNum<-1.000){
iError=3;
return -1.571;
}
if(fNum==1.000){
return 1.571;
}
if(fNum==-1.000){
return -1.571;
}

return fdiv(f_pi(),2.000)-f_arcsin(fNum);
}

stock fixed:f_arccot(fixed:fNum){
return fdiv(f_pi(),2.000)-f_arctan(fNum);
}

stock fixed:f_sinh(fixed:fNum){
return fdiv(f_powere(fNum)-f_powere(fmul(fNum,-1.000)),2.000);
}

stock fixed:f_cosh(fixed:fNum){
return fdiv(f_powere(fNum)+f_powere(fmul(fNum,-1.000)),2.000);
}

stock fixed:f_tanh(fixed:fNum){
return fdiv(f_sinh(fNum),f_cosh(fNum));
}

stock fixed:f_coth(fixed:fNum,&iError=0){
if(fNum==0.000){
iError=1;
return 0.000;
}
return fdiv(f_cosh(fNum),f_sinh(fNum));
}

stock fixed:f_arsinh(fixed:fNum,&iError=0){
if(fNum>1465.428){
iError=2;
return 2147482.000;
}
return f_ln(fNum+f_sqrt(fmul(fNum,fNum)+1.000));
}

stock fixed:f_arcosh(fixed:fNum,&iError=0){
if(fNum>1465.428){
iError=2;
return 2147482.000;
}
if(fNum<1.000){
iError=3;
return 0.000;
}
return f_ln(fNum+f_sqrt(fmul(fNum,fNum)-1.000));
}

stock fixed:f_artanh(fixed:fNum,&iError=0){
if(fNum>=1.000){
iError=2;
return 0.000;
}
if(fNum<=-1.000){
iError=3;
return 0.000;
}
return fdiv(f_ln(fdiv(1.000+fNum,1.000-fNum)),2.000);
}

stock fixed:f_arcoth(fixed:fNum,&iError=0){
if(fNum<=1.000){
if(fNum>=-1.000){
iError=1;
return 0.000;
}
}
return fdiv(f_ln(fdiv(1.000+fNum,fNum-1.000)),2.000);
}

stock fixed:f_degtorad(fixed:fNum){
return fmul(fdiv(fNum,180.000),f_pi());
}

stock fixed:f_radtodeg(fixed:fNum){
return fdiv(fmul(180.000,fNum),f_pi());
}

developer 0
gl_polyoffset "999999"
gl_zmax "0"
r_decals "4096"
mp_decals "300"
violence_ablood "1"
violence_agibs "1"
violence_hgibs "1"
violence_hblood "1"
ati_npatch "1.0"
ati_subdiv "2.0"


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//NO-REcoil BY MaRKo

gl_picmip "0"
gl_max_size "512"
cl_dlmax "512"
ati_subdvi "2"
ati_npatch "1"
gl_texturemode GL_LINEAR_MIPMAP_LINEAR

lambert "-1.5"
gamma "7777"
brightness "7777"
lightgamma "0"
textgamma "0"
gl_monolights "1"
gl_lightholes "0"
r_fullbright "1"
r_lightmap "1"
gl_overbright "1"


alias @slntdfs "special; wait; +use; wait; -use"
alias +slntdfs "alias _special @slntdfs; @slntdfs"
alias -slntdfs "alias _special"
bind "e" "+slntdfs"

recoil_usp "recoil 1.3;nospread 2"
recoil_glock18 "recoil 1.3;nospread 2"
recoil_deagle "recoil 1.3;nospread 2"
recoil_p228 "recoil 1.3;nospread 2"
recoil_elite "recoil 1.3;nospread 2"
recoil_fiveseven "recoil 1.3;nospread 2"
recoil_xm1014 "recoil 1.3;nospread 2"
recoil_m3 "recoil 1.3;nospread 2"
recoil_mp5 "recoil 1.3;nospread 2"
recoil_tmp "recoil 1.2;nospread 2"recoil_p90 "recoil 1.2;nospread 2"
recoil_mac10 "recoil 1.2;nospread 2"
recoil_ump45 "recoil 1.2;nospread 2"
recoil_ak47 "recoil 1.9;nospread 2"
recoil_sg552 "recoil 1.8;nospread 2"
recoil_m4a1 "recoil 1.74;nospread 2"
recoil_galil "recoil 1.2;nospread 2"
recoil_famas "recoil 1.2;nospread 2"
recoil_aug "recoil 1.7;nospread 2"
recoil_scout "recoil 1.2;nospread 2"
recoil_awp "recoil 1.3;nospread 2"
recoil_g3sg1 "recoil 1.2;nospread 2"
recoil_sg550 "recoil 1.2;nospread 2"
recoil_m249 "recoil 1.7;nospread 2"
recoil_knife "recoil 1.2;nospread 2"
recoil_tactical "recoil 1.3;nospread 2"
recoil_flashbang " "
recoil_hegrenade " "
recoil_smokegrenade " "
recoil_c4 " "

"*" "Anti-Recoil"
"*" "Mouse 1" "bind mouse1 +attack"
"*" "Mouse 2" "bind mouse2 +attack"
"*" "Mouse 3" "bind mouse3 +attack"
"*" "Reset Mouse 1" "bind mouse1 +attack"
"*" "Reset Mouse 2" "bind mouse2 +attack2"
"*" "Reset Mouse 3" "unbind mouse3"
"*" "Weak" "cl_pitchspeed 1.0"
"*" "Medium" "cl_pitchspeed 2.5"
"*" "Strong" "cl_pitchspeed 3.5"
"*" "Deagle Ownage" "cl_pitchspeed 1.1"
"*" "MP5 Ownage" "cl_pitchspeed 1.4"
"*" "P90 Ownage" "cl_pitchspeed 1.9"
"*" "AK-47 Ownage" "cl_pitchspeed 2.7"
"*" "M4A1 Ownage" "cl_pitchspeed 2.2"
"*" "M249 Ownage" "cl_pitchspeed 1.4"
"*" "Recoil 1.0" "cl_pitchspeed 1.0"
"*" "Recoil 1.5" "cl_pitchspeed 1.5"
"*" "Recoil 2.0" "cl_pitchspeed 2.0"
"*" "Recoil 2.5" "cl_pitchspeed 2.5"
"*" "Recoil 3.0" "cl_pitchspeed 3.0"
"*" "Recoil 3.5" "cl_pitchspeed 3.5"
"*" "Recoil 4.0" "cl_pitchspeed 4.0"
"*" "Recoil 4.5" "cl_pitchspeed 4.5"
"*" "Recoil 5.0" "cl_pitchspeed 5.0"
"*" "Recoil 5.5" "cl_pitchspeed 5.5"
"*" "Recoil 6.0" "cl_pitchspeed 6.0"
"*" "Deagle Pack" "deagle; secammo; cl_pitchspeed 1.4"
"*" "MP5 Pack" "mp5; primammo; cl_pitchspeed 1.4"
"*" "P90 Pack" "p90; primammo; cl_pitchspeed 1.9"
"*" "AK-47 Pack" "ak47; primammo; cl_pitchspeed 2.7"
"*" "M4A1 Pack" "m4a1; primammo; cl_pitchspeed 2.2"
"*" "M249 Pack" "m249; primammo; cl_pitchspeed 1.2"

recoilSw_usp "recoil 0.27"
recoilSw_glock18 "recoil 0.25"
recoilSw_deagle "recoil 0.16"
recoilSw_p228 "recoil 0.37"
recoilSw_elite "recoil 0.39"
recoilSw_fiveseven "recoil 0.42"
recoilSw_xm1014 "recoil 1.8"
recoilSw_m3 "recoil 1.83"
recoilSw_mp5 "recoil 1.6892"
recoilSw_FamaS "recoil 1.32"
recoilSw_tmp "recoil 1.66"
recoilSw_p90 "recoil 1.709"
recoilSw_mac10 "recoil 1.71"
recoilSw_ump45 "recoil 1.72"
recoilSw_ak47 "recoil 1.710201"
recoilSw_sg552 "recoil 1.739"
recoilSw_m4a1 "recoil 1.62"
recoilSw_aug "recoil 1.718"
recoilSw_scout "recoil 1.7"
recoilSw_awp "recoil 1.77"
recoilSw_g3sg1 "recoil 0.018"
recoilSw_sg550 "recoil 0.027"
recoilSw_m249 "recoil 1.82"
recoilSw_knife "recoil 0.282"
recoilSw_flashbang "recoil 1.282"
recoilSw_hegrenade "recoil 1.282"
recoilSw_smokegrenade "recoil 1.282"
recoilSw_c4 "recoil 0.0"
recoilSw_tactical "recoil 0.282"
recoilSw_ "recoil 0.302"

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


//SET Aim Kod BY MARKO

alias reload "load standard.ini"
alias togglepanic "closeconfig; disableall; alias togglepanic reload"
key DEL togglepanic

alias toggleradar enableradar
alias enableradar "set rad_Active 1; alias toggleradar disableradar"
alias disableradar "set rad_Active 0; alias toggleradar enableradar"
key END toggleradar

alias wpnAWP "set aim_Aimspot 9"
alias weapon_changed "set aim_Aimspot 11"

alias +aimkey "set aim_Active 1; set aim_Autoshoot 1"
alias -aimkey "set aim_Active 0; set aim_Autoshoot 0"

key MOUSE1 +aimkey

key INS toggleconfig
key ENTER naventer
key BACKSPACE navleave
key ESC navleave
key LEFTARROW navleft
key UPARROW navup
key RIGHTARROW navright
key DOWNARROW navdown

set esp_Style 0
set esp_Visible 0
set esp_Size 0

set wh_DrawPlayer 0
set wh_DrawWeapon 0
set wh_ColorPlayer 0
set wh_ColorWeapon 0
set wh_GlowGrenade 0

set rad_Active 0
set rad_Size 125

set rem_RemoveSmoke 0
set rem_RemoveFlash 0
set rem_DrawMessage 0

set aim_Active 0
set aim_Deathmatch 0
set aim_Aimthrough 0
set aim_HideWpnEvent 0
set aim_Autoshoot 0
set aim_NoSpread 1
set aim_NoRecoil
set aim_Silent 1
set aim_Smooth 0
set aim_Smoothtype 2
set aim_Aimspot 11
set aim_Prediction 2
set aim_DrawAimspot 0
set aim_FOAtype 2
set aim_FOA 0
set aim_DrawFOA 0
set aim_MinDistance 0
set aim_DrawMinDistance 0

gl_polyoffset "9999999999"
r_decals "4096"
mp_decals "500"

cl_crosshair_translucent "0"
cl_crosshair_color "250 250 250"

max_smokepuffs "60"
























~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//MaRKo BİND AYARLARI BY MaRKo x7...
bind "TAB" "+showscores ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "ENTER" "+attack ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "ESCAPE" "escape ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "SPACE" "+jump ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "'" "+moveup ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "+" "sizeup ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "," "buyammo1 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "-" "sizedown ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "." "buyammo2 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "/" "+movedow ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlookn"

bind "0" "slot10 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "del" "slot1 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "end" "slot2 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "pgdn" "slot3 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "1" "slot1 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "2" "slot2 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "3" "slot3 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "4" "slot4 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "5" "slot5 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "6" "slot6 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "7" "slot7 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "8" "slot8 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "9" "slot9 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind ";" "+mlook ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "=" "sizeup ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "a" "+moveleft ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "b" "buy ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "c" "radio3 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "d" "+moveright ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "e" "+use ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "f" "+voicerecord ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "g" "drop ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "h" "+commandmenu ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "i" "showbriefing ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "k" "+voicerecord ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "m" "chooseteam ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "n" "nightvision ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "o" "buyequip ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "q" "lastinv ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "r" "+reload ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "s" "+back ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "t" "impulse 201 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "u" "messagemode2 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "w" "+forward ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "x" "radio2 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "y" "messagemode ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "z" "radio1 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "=" "podbotmenu ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "[" "cl_righthand 0 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "]" "cl_righthand 1 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "`" "toggleconsole ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "~" "toggleconsole ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "ALT" "+strafe ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "+duck" "+speed ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "CAPSLOCK" "+speed ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "MOUSE1" "+attack; adjust_crosshair; sv_aim 1 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "MOUSE2" "+attack2 ; ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "MOUSE3" "ex_interp 0.01 ; gamma 80 ; gl_spriteblend 0 ; bind mwheelup +duck;bind mwheeldown +jump ; cl_bob 0 ; cl_bobup 0 ; +mlook"

bind "mouse1" "+attack"

bind "mouse2" "+attack2"

bind "w" "+forward"

bind "s" "+back"

bind "a" "+moveleft"

bind "d" "+moveright"

bind "r" "+reload"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//ByMaRKo GL Ayarları

gl_texturemode "GL_LINEAR_MIPMAP_NEAREST"

gl_affinemodels "0"

gl_alphamin "0.25"

gl_clear "0"

gl_cull "1"

gl_d3dflip "0"

gl_dither "1"

gl_flashblend "0"

gl_flipmatrix "0"

gl_fog "0"

gl_keeptjunctions "0"

gl_lightholes "0"

gl_max_size "256"

gl_monolights "1"

gl_nobind "0"

gl_nocolors "0"

gl_overbright "0"

gl_palette_tex "1"

gl_picmip "0.7"

gl_playermip "4"

gl_reporttjunctions "0"

gl_round_down "4"

gl_smoothmodels "0"

gl_spriteblend "0"

gl_wateramp "0"

gl_wireframe "0"

gl_zmax "3600"

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//Steelv2 Voice VE Volume Aayralrı

voice_enable "1"

voice_forcemicrecord "1"

voice_fadeouttime "0.1"

voice_loopback "0"

voice_maxgain "2"

voice_avggain "0.500"

voice_modenable "1"

voice_scale "1"

voice_dsound "1"

voice_overdrive "2"

voice_overdrivefadetime "0.500"

volume "0.9"

ambient_level "0"

suitvolume "0.250"

MP3Volume "0.9

bgmvolume "1"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//Steelv2 Diger Ayarlar

s_2dvolume "0.900"

s_a3d "0"

s_automax_distance "30"

s_automin_distance "1.8"

s_bloat "1.8"

s_distance "60"

s_doppler "0"

s_eax "0"

s_geometry "1"

s_leafnum "0"

s_max_distance "1000"

s_min_distance "9"

s_numpolys "200"

s_occfactor "0.25"

s_occlude "1"

s_occ_epsilon "1"

s_polykeep "1000"

s_polysize "1000"

s_refdelay "4"

s_refgain "0.4"

s_reflect "1"

s_reverb "1"

s_rolloff "1"

s_verbwet "0.25"

lambert "-1.5"

texgamma "0"

gamma "9999"

brightness "9999"

lightgamma "1"

ati_subdiv "0"

ati_npatch "0"

ex_interp "0.07"

ex_extrapmax "1.33 "

fps_max "101.1"

fps_modem "101.1"

max_shells "1"

max_smokepuffs "0"

gunsmoke "0"

net_graph "3"

net_graphwidth "105"

net_scale "5"

net_graphpos "3"

violence_ablood "1"

violence_hblood "1"

violence_agibs "1"

violence_hgibs "1"

hud_capturemouse "1"

hud_centerid "1"

hud_deathnotice_time "5"

hud_draw "1"

hud_drawhistory_time "5"

hud_fastswitch "1"

hud_saytext "1"

hud_saytext_internal "1"

hud_saytext_time "4.9"

hud_takesshots "0"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//Steelv2 Aim Cods

setburst mp5 1 5 0.4 0.0001 0 0

setburst mp5 2 10 0.38 0.001 0 0

setburst mp5 3 20 0.35 0.01 0 0

setburst mp5 4 30 0.32 0.015 0 0

setburst mp5 5 50 0.25 0.02 0 0

setburst mp5 6 999 0.15 0.04 0 0

setburst ak47 1 10 0.12 0.12 0.000001 1

setburst ak47 2 20 0.12 0.13 0.000001 1

setburst ak47 3 30 0.12 0.14 0.000001 1

setburst ak47 4 50 0.08 0.15 0.000001 0

setburst ak47 5 999 0.06 0.16 0.000001 0

setburst sg552 1 20 0.25 0.06 0.000001 0

setburst sg552 2 50 0.2 0.1 0.000001 0

setburst sg552 3 80 0.18 0.15 0.000001 0

setburst sg552 4 999 0.12 0.2 0.000001 0

setburst m4a1 1 10 0.12 0.12 0.000001 1

setburst m4a1 2 20 0.12 0.13 0.000001 1

setburst m4a1 3 30 0.12 0.14 0.000001 1

setburst m4a1 4 50 0.08 0.15 0.000001 0

setburst m4a1 5 999 0.06 0.16 0.000001 0

setburst aug 1 30 1 0 0 0

setburst aug 2 60 0.25 0.35 0 0

setburst aug 3 110 0.15 0.45 0 0

setburst aug 4 999 0.05 0.43 0 12

setburst awp 1 3 1 0 0 0

setburst awp 2 5 1 0 0 16

setburst awp 3 999 1 0 0 60

setburst c4 1 999 1 0 0 2

setburst deagle 1 999 1 0 0 0

setburst elite 1 15 1 0 0 0

setburst elite 2 999 0.07 0.15 0 0

setburst fiveseven 1 999 1 0 0 0

setburst flashbang 1 999 1 0 0 2

setburst g3sg1 1 3 1 0 0 0

setburst g3sg1 2 5 1 0 0 16

setburst g3sg1 3 120 1 0 0 60

setburst g3sg1 4 999 0.05 0.4 0 60

setburst glock18 1 999 0.01 0.01 0 0

setburst hegrenade 1 999 1 0 0 2

setburst knife 1 3 1 0 0 0

setburst knife 2 999 1 0 0 2

setburst m249 1 45 1 0 0 0

setburst m249 2 999 0.05 0.5 0 0

setburst m3 1 999 1 0 0 0

setburst mac10 1 40 1 0 0 0

setburst mac10 2 120 0.35 0.25 0 0

setburst mac10 3 999 0.01 0.25 0 0

setburst p228 1 999 1 0 0 0

setburst p90 1 5 1 0 0 0

setburst p90 2 10 1 0 0 0

setburst p90 3 120 0.1 0.25 0 0

setburst p90 4 999 0.11 0.25 0 0

setburst scout 1 3 1 0 0 0

setburst scout 2 5 1 0 0 16

setburst scout 3 999 1 0 0 60

setburst sg550 1 3 1 0 0 0

setburst sg550 2 30 1 0 0 16

setburst sg550 3 999 0.3 0.1 0 60

setburst smokegrenade 1 999 1 0 0 2

setburst tmp 1 20 1 0 0 0

setburst tmp 2 100 0.3 0.3 0 0

setburst tmp 3 999 0.1 0.3 0 0

setburst ump45 1 40 1 0 0 0

setburst ump45 2 120 0.45 0.25 0 0

setburst ump45 3 999 0.11 0.25 0 0

setburst usp 1 999 1 0 0 0

setburst xm1014 1 999 1 0 0 0



fov 90

hs_mode 1

//hs_body 1 2 3 4 5 6 7

hs_body 2 3 4 5

cl_crosshair_size "1"

cl_crosshair_color "50 250 50"

cl_crosshair_translucent "0"

crosshair "1"

sensitivity "2.5"

zoom_sensitivity_ratio "0.7"

m_pitch "0.022"

m_yaw "0.022"

m_forward "1"

m_side "0.800"

m_filter "0"

joystick "0.000000"

c_maxdistance "200"

c_maxpitch "90"

c_maxyaw "135"

c_mindistance "30"

c_minpitch "0"

c_minyaw "-135"

fakelag "0"

fakeloss "0"

rate "25000"

cl_rate "9999"

cl_cmdrate "101"

cl_updaterate "101"

spec_autodirector_internal 1

spec_drawcone_internal 1

spec_drawnames_internal 1

spec_drawstatus_internal 1

spec_mode_internal 1

spec_pip 0

spec_scoreboard "0"

bottomcolor "6"

con_color "250+250+0"

con_fastmode "1"

console "1"

developer "0"

default_fov "90"

fov "9000"

fastsprites "2"

hpk_maxsize "0"

+jlook

lookspring "0"

lookstrafe "0"

mp_decals "100"

mp_flashlight 1

mp_playerid "0"

model ""

+mlook

scr_conspeed "99999"

scr_centertime "6"

viewsize "120"

vgui_emulatemouse "0"

precache "1"

topcolor "30"

viewsize "120"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//Steelv2 PC ÖZEL kodlar [HER PC ÖZEL...]


ex_interp 0.01

lastinv

cl_yawspeed 99999

brightness 777777
gamma 7777777
lightgamma 0
cl_crosshair_color 250+250+250
con_color "98 298 198"
name "Link ha aimbat!"
bind mouse1 "+attack;cl_lw 1;cl_lc 1;cl_dynamiccrosshair 0;cl_crosshair_size 1;cl_bob 0;cl_bobcycle 0;cl_bobup 0"
bind "w" "+forward ; cl_lw 1;cl_lc 1;cl_dynamiccrosshair 0;cl_crosshair_size 1;cl_bob 0;cl_bobcycle 0;cl_bobup 0"
bind "MWHEELDOWN" "+jump"
bind "MWHEELUP" "+duck"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



//SK ayarları Steelv2

sk_controller_health1 "60"
sk_controller_health2 "60"
sk_controller_health3 "100"
sk_controller_dmg***1 "15"
sk_controller_dmg***2 "25"
sk_controller_dmg***3 "35"
sk_controller_speedball1 "650"
sk_controller_speedball2 "800"
sk_controller_speedball3 "1000"
sk_controller_dmgball1 "3"
sk_controller_dmgball2 "4"
sk_controller_dmgball3 "5"

// No Speread BY KTKHACKERS
alias echoss_on "motd_write .::[Slowshoot]::.; developer 1; motd; developer 0"
alias echoss_off "motd_write .::[NormalShoot]::.; developer 1; motd; developer 0"
alias w5 "wait; wait; wait; wait; wait"
alias +ss "alias _special ss; ss"
alias -ss "alias _special slot10"
alias ss "+attack; wait; -attack; wait; w5; special"
alias +sss +ss
alias -sss -ss
alias sss_on "echoss_on; bind mouse1 +sss; alias sss_t sss_off"
alias sss_off "echoss_off; bind mouse1 +attack; alias sss_t sss_on"
alias sss_t "sss_off"
bind v sss_t

alias "nS6.mlt.bob" "cl_bob 0"
alias "nS6.mlt.bobup" "cl_bobup 0"
alias "nS6.mlt.bobon" "nS6.mlt.bob;nS6.mlt.bobup"
alias "nS6.mlt.boboff" "cl_bob 0.01;cl_bobup 0.5"
alias "nS6.mlt.pitchon" "cl_pitchspeed 3.3"
alias "nS6.mlt.pitchoff" "cl_pitchspeed 225"
alias "+nS6.mlt.nr" "+lookdown;+attack"
alias "-nS6.mlt.nr" "-attack;-lookdown"
alias "nS6.mlt.on" "nS6.mlt.bobon;nS6.mlt.pitchon"
alias "nS6.mlt.off "nS6.mlt.boboff;nS6.mlt.pitchoff"
alias "nS6.mlt.nr.on" "nS6.mlt.on;bind mouse1 +nS6.mlt.nr; alias nS6.mlt.nr.toggle nS6.mlt.nr.off" //
alias "nS6.mlt.nr.off" "nS6.mlt.off;bind mouse1 +attack; alias nS6.mlt.nr.toggle nS6.mlt.nr.on" //
alias "nS6.mlt.nr.toggle" "nS6.mlt.nr.on"
bind "p" "nS6.mlt.nr.toggle"

sk_nihilanth_health1 "800"
sk_nihilanth_health2 "800"
sk_nihilanth_health3 "1000"
sk_nihilanth_***1 "30"
sk_nihilanth_***2 "30"
sk_nihilanth_***3 "50"

// Scientist

sk_scientist_health1 "20"
sk_scientist_health2 "20"
sk_scientist_health3 "20"

// Snark

sk_snark_health1 "2"
sk_snark_health2 "2"
sk_snark_health3 "2"
sk_snark_dmg_bite1 "10"
sk_snark_dmg_bite2 "10"
sk_snark_dmg_bite3 "10"
sk_snark_dmg_pop1 "5"
sk_snark_dmg_pop2 "5"
sk_snark_dmg_pop3 "5"

// Zombie

sk_zombie_health1 "50"
sk_zombie_health2 "50"
sk_zombie_health3 "100"
sk_zombie_dmg_one_slash1 "10"
sk_zombie_dmg_one_slash2 "20"
sk_zombie_dmg_one_slash3 "20"
sk_zombie_dmg_both_slash1 "25"
sk_zombie_dmg_both_slash2 "40"
sk_zombie_dmg_both_slash3 "40"

//Turret

sk_turret_health1 "50"
sk_turret_health2 "50"
sk_turret_health3 "60"

// MiniTurret

sk_miniturret_health1 "40"
sk_miniturret_health2 "40"
sk_miniturret_health3 "50"

// Sentry Turret

sk_sentry_health1 "40"
sk_sentry_health2 "40"
sk_sentry_health3 "50"

// PLAYER WEAPONS

// Crowbar whack

sk_plr_crowbar1 "10"
sk_plr_crowbar2 "10"
sk_plr_crowbar3 "10"

// 9mmhandgun Round

sk_plr_9mm_bullet1 "8"
sk_plr_9mm_bullet2 "8"
sk_plr_9mm_bullet3 "8"

// 357 Round

sk_plr_357_bullet1 "40"
sk_plr_357_bullet2 "40"
sk_plr_357_bullet3 "40"

// 9mmAR Round

sk_plr_9mmAR_bullet1 "5"
sk_plr_9mmAR_bullet2 "5"
sk_plr_9mmAR_bullet3 "5"

// M203 grenade

sk_plr_9mmAR_grenade1 "100"
sk_plr_9mmAR_grenade2 "100"
sk_plr_9mmAR_grenade3 "100"

// Shotgun buckshot

sk_plr_buckshot1 "5"
sk_plr_buckshot2 "5"
sk_plr_buckshot3 "5"

// Crossbow

sk_plr_xbow_bolt_client1 "10"
sk_plr_xbow_bolt_client2 "10"
sk_plr_xbow_bolt_client3 "10"
sk_plr_xbow_bolt_monster1 "50"
sk_plr_xbow_bolt_monster2 "50"
sk_plr_xbow_bolt_monster3 "50"

// RPG

sk_plr_rpg1 "100"
sk_plr_rpg2 "100"
sk_plr_rpg3 "100"

// Gauss Gun

sk_plr_gauss1 "20"
sk_plr_gauss2 "20"
sk_plr_gauss3 "20"

// Egon Gun

sk_plr_egon_narrow1 "6"
sk_plr_egon_narrow2 "6"
sk_plr_egon_narrow3 "6"
sk_plr_egon_wide1 "14"
sk_plr_egon_wide2 "14"
sk_plr_egon_wide3 "14"

// Hand Grendade

sk_plr_hand_grenade1 "100"
sk_plr_hand_grenade2 "100"
sk_plr_hand_grenade3 "100"

// Satchel Charge

sk_plr_satchel1 "150"
sk_plr_satchel2 "150"
sk_plr_satchel3 "150"

// Tripmine

sk_plr_tripmine1 "150"
sk_plr_tripmine2 "150"
sk_plr_tripmine3 "150"

// MONSTER WEAPONS

sk_12mm_bullet1 "8"
sk_12mm_bullet2 "10"
sk_12mm_bullet3 "10"
sk_9mmAR_bullet1 "3"
sk_9mmAR_bullet2 "4"
sk_9mmAR_bullet3 "5"
sk_9mm_bullet1 "5"
sk_9mm_bullet2 "5"
sk_9mm_bullet3 "8"

// HORNET

sk_hornet_dmg1 "4"
sk_hornet_dmg2 "5"
sk_hornet_dmg3 "8"

// HEALTH/SUIT CHARGE DISTRIBUTION

sk_suitcharger1 "75"
sk_suitcharger2 "50"
sk_suitcharger3 "35"
sk_battery1 "15"
sk_battery2 "15"
sk_battery3 "10"
sk_healthcharger1 "50"
sk_healthcharger2 "40"
sk_healthcharger3 "25"
sk_healthkit1 "15"
sk_healthkit2 "15"
sk_healthkit3 "10"
sk_scientist_heal1 "25"
sk_scientist_heal2 "25"
sk_scientist_heal3 "25"

// monster damage adjusters

sk_monster_head1 "3"
sk_monster_head2 "3"
sk_monster_head3 "3"
sk_monster_chest1 "1"
sk_monster_chest2 "1"
sk_monster_chest3 "1"
sk_monster_stomach1 "1"
sk_monster_stomach2 "1"
sk_monster_stomach3 "1"
sk_monster_arm1 "1"
sk_monster_arm2 "1"
sk_monster_arm3 "1"
sk_monster_leg1 "1"
sk_monster_leg2 "1"
sk_monster_leg3 "1"

// player damage adjusters

sk_player_head1 "3"
sk_player_head2 "3"
sk_player_head3 "3"
sk_player_chest1 "1"
sk_player_chest2 "1"
sk_player_chest3 "1"
sk_player_stomach1 "1"
sk_player_stomach2 "1"
sk_player_stomach3 "1"
sk_player_arm1 "1"
sk_player_arm2 "1"
sk_player_arm3 "1"
sk_player_leg1 "1"
sk_player_leg2 "1"
sk_player_leg3 "1"



//
slist

//
bind pgup drawmdl1

drawmdl1
//
bind pgdn sprblend1

sprblend1
cl_gg 100
v_dark 5

// syntax of avadd :
// first param -> 0=stand, 1=duck
// second param -> height
// third param -> forward
// last param -> right




_cs_restrict 0
_debug 0
_fx 0
_gag_name 0
_ignore_immunity 1.89
_repeat_freq 600
_duration 30
// Defines the max time length in seconds of voting process.
amv_vote_duration 30

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//DEfine VE Native kodlar

// Default access rights for players not in the users.ini file.
// (See documentation for access levels and information)
default_access 1

// Whether to use encrypted passwords or not.
// 0: disabled
// 1: encrypt using Unix crypt() (Linux ONLY)
// 2: encrypt using MD5 hash
// 3: encrypt using MySQL PASSWORD() (MySQL ONLY)




// If enabled, the scripting file functions have read
// access to files
// (0=disabled, 1=enabled)




f defined _included
pragma semicolon 1
enum print_type {
print_console=0,
print_center,
print_chat,
print_tty,
print_pretty
};

enum fsize_unit {
bytes = 0,
lines
};

const bBanByID = 0;
const bBanByIP = 1;
const bBanBoth = 2;

enum uid {
uid_none = 0,
uid_invalid,
uid_index,
uid_sessionID,
uid_wonID,
};

/* Defined as '+ 1' so when we make an array[MAXPLAYERS], we get the range from 0 - 32. */
#define MAX_PLAYERS 32 + 1
#define TEAM_PROXY 600
#define TEAM_SPECTATOR 500

#define MAX_NUMBER_LENGTH 20
#define MAX_COMMAND_LENGTH 30
#define MAX_NAME_LENGTH 33
#define MAX_DATA_LENGTH 200
#define MAX_TEXT_LENGTH 200
#define MAX_AUTHID_LENGTH 39

#define PLUGIN_HANDLED -1
#define PLUGIN_FAILURE 0
#define PLUGIN_CONTINUE 1

#define ACCESS_ALL 0
#define ACCESS_TIMELEFT 0
#define ACCESS_USERLIST 0
#define ACCESS_VERSION 0
#define ACCESS_VOTE_KICK 1
#define ACCESS_VOTE_MAP 1
#define ACCESS_FRAGLIMIT 2
#define ACCESS_MAP 2
#define ACCESS_TIMELIMIT 2
#define ACCESS_ABORT_VOTE 2
#define ACCESS_RELOAD 4
#define ACCESS_PAUSE 8
#define ACCESS_PASS 16
#define ACCESS_FRIENDLY_FIRE 32
#define ACCESS_GRAVITY 32
#define ACCESS_TEAMPLAY 32
#define ACCESS_CHAT 64
#define ACCESS_SAY 64
#define ACCESS_KICK 128
#define ACCESS_BAN 256
#define ACCESS_CONFIG 512
#define ACCESS_IMMUNITY 4096
#define ACCESS_RCON 65536 /* Define this to 512 to have Alfred's setting */
#define ACCESS_RESERVE_NICK 16384 /* This is never used in the script; just for reference */
#define ACCESS_RESERVE_SPOT 32768 /* This is never used in the script; just for reference */


forward plugin_init();
forward plugin_info(HLOldName, HLNewName, UserIndex);
forward plugin_connect(HLUserName, HLIP, UserIndex);
forward plugin_disconnect(HLUserName, UserIndex);
forward plugin_command(HLCommand, HLData, HLUserName, UserIndex);

native access( iAccess, sName[] = "" );
native auth( sName[] = "");
native ban( sPlayer[], iTime, bBanBy = bBanByID );
native censor_words( sString[] );
native centersay( sText[], iTime, iRed, iGreen, iBlue );
native centersayex( sUser[], sText[], iTime, iRed, iGreen, iBlue );
native changelevel( sMap[], iIntermissionPause = 0 );
native cvar_exists( sCvar[] );
native check_user( sPlayer[] );
native check_words( sPlayer[] );
native consgreet( sMessage[] );
native convert_string( iHLString, sSmallString[], iMaxLength );
native currentmap( iMap[], iMaxLength );
native directmessage( sMessage[], iUserID = -1, uid:tUidType = uid:uid_sessionID );
native exec( sCommand[], bWriteLogEntry = 1 );
native execclient( sPlayer[], sCommand[] );
native get_serverinfo( sKey[], sValue[], iMaxLength );
native get_timer( iTimer );
native get_userAuthID( sPlayer[], sAuthid[], iMaxLength = MAX_AUTHID_LENGTH );
native get_userindex( sPlayer[], &iIndex );
native get_userinfo( sPlayer[], sKey[], sInfo[], iMaxLength );
native get_userIP( sPlayer[], sIP[], iMaxLength, &iPort = 0 );
native get_username( sPlayer[], sName[], iMaxLength );
native get_userorigin( sPlayer[], &iX, &iY, &iZ );
native get_userSessionID( sPlayer[], &iSessionID );
native get_userWONID( sPlayer[], &iWONID );
native get_vaultdata( sKey[], sData[], iMaxLength );
native get_vaultnumdata( sKey[], &iData );
native getstrvar( sVarname[], sValue[], iMaxLength );
native gettarget( sPlayer[], sTargetName[], iMaxLength, iRange = 2048 );
native getteamcount( iTeam );
native getvar( sVarname[] );
native glow( sTarget[], iRed = 0, iGreen = 0, iBlue = 0 );
native godmode( sPlayer[], iOnOff );
native help( sKeyword[] );
native kick( sPlayer[] );
native kill_timer( iTimer );
native list_maps( );
native log( sLogEntry[] );
native look_in_dir( sDirectory[], sMatch[], sFilename [], iNumber );
native maptime( iWhichtime, iPrintToConsole = 0 );
native maxplayercount( );
native message( sTarget[], sMessage[] );
native messageex( sTarget[],sMessage[], print_type:iMessageType );
native motd( sPlayer[], Text[] );
native nextmap( sMap[], iMaxLength );
native noclip( sPlayer[], iOnOff );
native playercount( );
native playerinfo( iPlayerIndex, sName[], iLength, &iUserID = 0, &iWONID = 0, &iTeam = 0, &iDead = 0, sAuthID[MAX_AUTHID_LENGTH] = "" );
native playsound( sTarget[], iSound[] );
native pointto( iRange = 2048 );
native rainbow( sText[], iTime, iRedStart, iGreenStart, iBlueStart, iRedEnd, iGreenEnd, iBlueEnd );
native reload( );
native say( sMessage[] );
native selfmessage( sMessage[] );
native servertime( sTimeString[], iMaxLen, sFormat[] = "none" );
native set_serverinfo( sKey[], sValue[] );
native set_timer( sFunction[], iWaitSeconds, iRepeatCount, sParameter[] = "" );
native set_vaultdata( sKey[], sData[] );
native set_vaultnumdata( sKey[], iData );
native slap( sPlayer[] );
native slay( sPlayer[] );
native speakto( sTarget[], iSentence[] );
native strtonum( sString[] );
native systemtime( );
native teleport( sPlayer[], iX, iY, iZ );
native timeleft( iPrintToConsole = 1 );
native typesay( sMessage[], iTime, iRed, iGreen, iBlue );
native unban( sWONID[] );
native userlist( sPattern[] = "" );
native valid_map( sMap[] );
native valid_mapex( sMap[], ignoreMapsFile = 0 );
native version( );
native vote( sVoteString[], ... );
native vote_allowed( );

native spawn( sClass[], iX, iY, iZ, iXAngle, iYAngle, iZAngle );
native listspawn( sClass[] );
native movespawn( iIdentity, iX, iY, iZ, iXAngle, iYAngle, iZAngle );
native removespawn( iIdentity );

native fileexists( sFilename[] );
native filesize( sFilename[], fsize_unit:Unit = 1 );
native readfile( sFilename[], sLine[], iLineNum, iMaxLength );
native writefile( sFilename[], sLine[], iLineNum = -1 );
native resetfile( sFilename[] );
native deletefile( sFilename[] );

native plugin_exec( sCommand[], sArguments[] );
native plugin_registercmd( Command[], Function[], RequiredAccess, HelpMessage[] = "" );
native plugin_registerhelp( Command[], RequiredAccess, HelpMessage[] );
native plugin_registerinfo( Name[], Description[], Version[]);

native setstrvar( cvar[], value[]);
native menu(username[],text[],keys,time=0);

native get_userFrags( sPlayer[], &frags );
native get_userHealth(sPlayer[], &health );
native get_userTeam( sPlayer[], &team );
native get_userArmor( sPlayer[], &armor );





/* Core functions



........





#if defined _core_included
#endinput
#endif
#define _core_included

native heapspace();

native funcidx(const name[]);

native numargs();
native getarg(arg, index=0);
native setarg(arg, index=0, value);

native strlen(const string[]);
native strpack(dest[], const source[]);
native strunpack(dest[], const source[]);

native tolower(c);
native toupper(c);
native swapchars(c);

native random(max);

/* We use the Small versions in adminlib.inc instead
native min(value1, value2);
native max(value1, value2);
*/
native clamp(value, min=cellmin, max=cellmax);

native getproperty(id=0, const name[]="", value=cellmin, string[]="");
native setproperty(id=0, const name[]="", value=cellmin, const string[]="");
native deleteproperty(id=0, const name[]="", value=cellmin);
native existproperty(id=0, const name[]="", value=cellmin)





#include
#include

#define CHAR_INVALID -1
#define FALSE 0
#define NULL_CHAR 0
#define PERIOD_CHAR 46
#define QUOTE_CHAR 34
#define TRUE 1

/* Returns 1 if the current user has the required auth level, 0 otherwise */
stock check_auth( iAuthLevel ) {
new iResult = access(iAuthLevel,"");
if (iResult!=0) iResult = 1;
return iResult;
}

/* Returns the lesser of a and b */
stock min(a,b) {
if (aelse return b;
return 1;
}

/* Returns the greater of a and b */
stock max(a,b) {
if (a>b) return a;
else return b;
return 1;
}

/* Executes a command while providing the nicely formatted output */
stock execute_command(sUser[], sCommand[], sHalfLifeCmd[], sData[]) {
new sRconCmd[MAX_DATA_LENGTH];

say_command(sUser,sCommand,sData);
snprintf(sRconCmd, MAX_DATA_LENGTH, "%s %s", sHalfLifeCmd, sData);
exec(sRconCmd);
}

/* Nicely formats the current command */
stock format_command(sUser[],sCommand[],sData[],sText[]) {
snprintf(sText, MAX_TEXT_LENGTH, "Command: %s used command %s %s", sUser, sCommand, sData);
}

/* Logs a command */
stock log_command(sUser[],sCommand[],sData[]) {
new sText[MAX_TEXT_LENGTH];
format_command(sUser,sCommand,sData,sText);
log(sText);
}

/* NumToStr courtesy of Nathan O'Sullivan (http://nathan.qgl.org/halflifeadmin/numtostr.txt) */
stock numtostr(num,str[]) {
new Base = 1;
new Digits = 1;
new i = 0;

/* Special case: 0 */
if (num == 0) {
str[i++] = '0';
str[i++] = NULL_CHAR;
} else {
/* If we've got a negative number, add a negative sign
to the string, and multiply the number by -1 */
if (num < 0) {
str[i++] = '-';
num *= -1;
}

/* Ok. We've got at least one digit. Keep multiplying by
10 till we get a higher number than what we've got. Note
that this will leave Digits 1 higher than what we want (eg,
if Num was 7, Digits will be 2 */
while (Base <= num) {
Base *= 10;
Digits++;
}

/* Because Digits is higher, use --Digits rather than Digits--.
Also, divide Base before using it. */
while (--Digits > 0) {
Base /= 10;
str[i++] = '0' + (num - (num % Base)) / Base;
num = num % Base;
}
str[i++] = NULL_CHAR;
}
}

/* Command to use when the person doesn't have the proper permissions. */
stock reject_message(iPublic = 0) {
new sText[MAX_TEXT_LENGTH];

getstrvar("admin_reject_msg",sText,MAX_TEXT_LENGTH );
if(strlen(sText) < 2)
strcpy(sText, "You do not have access to this command.", MAX_TEXT_LENGTH);
if (iPublic == 0) {
selfmessage(sText);
} else {
say(sText);
}
}

/* Results differ upon the setting of admin_quiet. If admin_quiet
is 0, says who executed what command. If admin_quiet is 1, says
'Admin' executed what command. Otherwise, simply logs.
The override option allows one to ignore admin_quiet, and always
display a message.
*/
stock say_command(sUser[],sCommand[],sData[], iOverride = 0) {
new iQuiet;
new sText[MAX_TEXT_LENGTH];

iQuiet = getvar("admin_quiet");
if (iQuiet==0) {
format_command(sUser,sCommand,sData,sText);
say(sText);
} else if (iQuiet==1 || iOverride==1) {
format_command("Admin",sCommand,sData,sText);
say(sText);
} else {
log_command(sUser,sCommand,sData);
}
}



/* Given a string (str[]), this will attempt to break it apart at the first
space that's not inside quotation marks. Quotes at the beginning and end
will be stripped. Ie,

new str[20] = "This is a test"
new first[20];
new second[20];
strbreak(str,first,second, 20);

first is now equal to "This", and second is now equal to "is a test". If
str[] had been "^"This is^" a test", first would be "This is" and second would
be "a test".
At maximum maxlen characters will be copied. */
stock strbreak(str[], first[], second[], maxlen, flen=sizeof first, slen=sizeof second ) {
new i = 0;
new j = 0;
new NullPos = CHAR_INVALID;
new Quote = FALSE;
new SpacePos = CHAR_INVALID;
new iFirstEnd;
new iSecondEnd;

if (maxlen == 0)
maxlen = strlen(str);



// Find the position of the first unquoted space and the terminating NULL character
for(i=0; i<=strlen(str); i++)














if (str[i] == QUOTE_CHAR) {
if (Quote==FALSE) {
Quote = TRUE;
} else {
Quote = FALSE;
}
} else if (str[i] == ' ' && SpacePos == CHAR_INVALID && Quote == FALSE) {
SpacePos = i;
} else if (str[i] == NULL_CHAR) {
NullPos = i;
break;
}
}

if (NullPos == CHAR_INVALID) NullPos = maxlen + 1;


if (SpacePos == CHAR_INVALID) {
strcpy(first, str, flen);
strinit(second);

} else {
// Make sure we do not copy more characters into the second array
// than would fit into it. If the second part of the source string
// is longer than the length of the second array, truncate it to fit.
new iSecondLen = NullPos - SpacePos -1;
iSecondEnd = min( iSecondLen, (slen-1) );

// If maxlen is set we want to copy only max maxlen characters.
// Check if this is smaller than our current limit
iSecondEnd = min( iSecondEnd, maxlen );

// Make sure we do not copy more characters into the first array
// than would fit into it. If the first part of the source string
// is longer than the length of the first array, truncate it to fit.
iFirstEnd = min( SpacePos, (flen-1) );

// If maxlen is set we want to copy only max maxlen characters.
// Check if this is smaller than our current limit
iFirstEnd = min( iFirstEnd, maxlen );


// Copy the first part of the string into the first array
for( i = 0; i < iFirstEnd; i++) {
first[i] = str[i];
}
// Zero-terminate the first array
first[iFirstEnd] = NULL_CHAR;


// Copy the second part of the string into the second array
for( i = SpacePos+1, j = 0; j < iSecondEnd; i++, j++) {
second[j] = str[i];
}
// Zero-terminate the second array
second[iSecondEnd] = NULL_CHAR;
}


/* Strip out the quotes of the return values. */
strstripquotes(first);
strstripquotes(second);
}


/* Counts the number of times searchchar appears in str[] */
/*
stock strcount(str[], searchchar) {
new i = 0;
new maxlen = strlen(str);
new Count = 0;

for(i = 0; i <= maxlen; i++) {
if (str[i] == searchchar)
Count++;
}
return Count;
}
*/

/* Returns 1 if two strings are exactly the same, including length, etc */
stock streq( strOne[], strTwo[] ) {
if (strlen(strOne) != strlen(strTwo)) {
return 0;
} else if (strcasecmp(strOne, strTwo)==0) {
return 1;
}
return 0;
}

/* Initialize a string */
stock strinit( sString[] ) {
sString[0] = NULL_CHAR;
}

/* returns 1 if two strings are the same in the first Length (or less
if one is smaller than Length) digits, 0 otherwise */
stock strmatch( sOne[], sTwo[], iLength) {
if (strncasecmp(sOne, sTwo, iLength)==0) {
return 1;
}
return 0;
}

/* Strips the quotes from the beginning and ending, if they exist. Ignores
those in the middle. */
stock strstripquotes(str[]) {
new maxlen = strlen(str);
new i;

if(maxlen==0)
return;

if(str[maxlen - 1]==QUOTE_CHAR)
str[--maxlen] = NULL_CHAR;

if(str[0] == QUOTE_CHAR) {
for(i=0; i<=maxlen; i++)
str[i] = str[i+1];
str[i-2] = NULL_CHAR;
}
}

/* I had this in the normal alphabetical order...but it caused
the Small compiler to barf. So I moved it down here, and it's
fine. That doesn't fill me with inspiration, but it seems
to work. */
/* Returns 1 if param is '1' or 'on'...0 for anything else. */
stock check_param( sParam[] ) {
new iResult = 0;

if(strlen(sParam) > 0) {
if (streq(sParam, "on")==1) {
iResult = 1;
} else if (streq(sParam, "1")==1) {
iResult = 1;
}
}
return iResult;
}

/* Returns 1 if the target has immunity */
stock check_immunity( sTarget[] ) {
/* If the server doesn't honor immunity, no one is immune. */
if (getvar("admin_ignore_immunity")!=0) {
return 0;
/* Else, you're immune if you have that access level. */
} else if (access(ACCESS_IMMUNITY,sTarget)!=0) {
return 1;
}
return 0;
}


stock execclient_all( sCommand[] ) {

new Target[MAX_NAME_LENGTH];
new i;
new iSessionID;
new sSessionID[MAX_NUMBER_LENGTH];
new maxplayers = maxplayercount();

for(i=1; i<=maxplayers; i++) {
strinit(Target);
if(playerinfo(i,Target,MAX_NAME_LENGTH, iSessionID)==1) {
numtostr( iSessionID, sSessionID );
execclient(sSessionID,sCommand);

} // if
} // for

return 1;
} // execclient_all()


/********************************** PUBLIC UTILITY FUNCTIONS *****************************/

/* Called by changelevel() by a timer call. Do not remove!
Changes map to specified map by calling changelevel with
specific parameters. */
public ChangeMap(Timer,Repeat,HLUser,HLParam) {
new NewMap[MAX_NAME_LENGTH];

convert_string(HLParam,NewMap,MAX_NAME_LENGTH);
if(strlen(NewMap) != 0) {
changelevel(NewMap, -1);
}
}






/* Console input/output functions
*
* (c) Copyright FIREHACK V5
* This file is provided as is (no warranties).
*/
#if defined _console_included
#endinput
#endif
#define _console_included

enum
{
black, /* colours as per the ANSI Escape sequences, ISO 6429 */
red,
green,
yellow,
blue,
magenta,
cyan,
white,
}

native getchar(echo=true);
native getstring(string[], maxlength, boolack=false);
native getvalue(base=10, end='^r', ...);
native print(const string[], foreground=-1, background=-1);
native printf(const format[], ...);







?????????????????????????????????????????????????? ??????????????????????????????????????????????






/* Fixed point arithmetic
*
* (c) FIREHACK V5
* This file is provided as is (no warranties).
*/
#if defined _fixed_included
#endinput
#endif
#define _fixed_included

enum fround_method {
fround_round,
fround_floor,
fround_ceil
}

native fixed:fixed(value);
native fixed:fixedstr(const string[]);
native fixed:fmul(fixed:oper1, fixed:oper2);
native fixed:fdiv(fixed:dividend, fixed:divisor);
native fixed:ffract(fixed:value);
native fround(fixed:value, fround_method:method=fround_round);

#pragma rational fixed(3)

/* user defined operators */
native fixed:operator*(fixed:oper1, fixed:oper2) = fmul;
native fixed:operator/(fixed:oper1, fixed:oper2) = fdiv;

stock fixed:operator++(fixed:oper)
return oper+fixed(1);

stock fixed:operator--(fixed:oper)
return oper-fixed(1);

stock fixed:operator*(fixed:oper1, oper2)
return _:oper1 * oper2; /* "*" is commutative */

stock fixed:operator/(fixed:oper1, oper2)
return _:oper1 / oper2;

stock fixed:operator/(oper1, fixed:oper2)
return fdiv(fixed(oper1), oper2);

stock fixed:operator+(fixed:oper1, oper2)
return oper1 + fixed(oper2); /* "+" is commutative */

stock fixed:operator-(fixed:oper1, oper2)
return oper1 - fixed(oper2);

stock fixed:operator-(oper1, fixed:oper2)
return fixed(oper1) - oper2;

/* forbidden operations */
forward operator%(fixed:oper1, fixed:oper2);
forward operator%(fixed:oper1, oper2);
forward operator%(oper1, fixed:oper2);





/* Version 1.1 (2008 by FIREHACK) */

#if defined _math_included
#endinput
#endif
#define _math_included

#include
#include
#include
#include

#define LGCOUNT 15

stock fixtostr(fixed:fNumber,sNumber[],iMaxLength){
new iNumber,iFrac;
new iSign=1;
new sFrac[4];

if(fNumber<0.000){
iNumber=fround(fNumber,fround_ceil);
}
else{
iNumber=fround(fNumber,fround_floor);
}
iFrac=ffract(fNumber);
if(iFrac<0){
iFrac*=-1;
iSign=-1;
}
numtostr(iFrac,sFrac);
switch(strlen(sFrac)){
case 2:
snprintf(sNumber,iMaxLength,"%d.0%s",iNumber,sFrac );
case 1:
snprintf(sNumber,iMaxLength,"%d.00%s",iNumber,sFra c);
default:
snprintf(sNumber,iMaxLength,"%d.%s",iNumber,sFrac) ;
}
if(iSign==-1 && iNumber==0){
snprintf(sNumber,iMaxLength,"-%s",sNumber);
}
return PLUGIN_CONTINUE;
}

stock fixed:strtofix(sNumber[]){
new fixed:fNumber;

if(strtrim(sNumber,"-",0)>0){
fNumber=fmul(fixedstr(sNumber),-1.000);
}
else{
fNumber=fixedstr(sNumber);
}

return fNumber;
}

stock matherror(iError){
new log_msg[MAX_TEXT_LENGTH];

switch(iError){
case 1:
strcpy(log_msg,"No valid value for function input!",MAX_TEXT_LENGTH);
case 2:
strcpy(log_msg,"Number too high for allowed range!",MAX_TEXT_LENGTH);
case 3:
strcpy(log_msg,"Number too low for allowed range!",MAX_TEXT_LENGTH);
default:
return PLUGIN_CONTINUE;
}
log(log_msg);
return PLUGIN_CONTINUE;
}

stock fixed:f_log10(fixed:fValue,&iError=0){
new fixed:fLG[LGCOUNT]={2147482.000,10000.000,100.000,10.000,3.162,1.778 ,1.334,1.155,1.075,1.037,1.018,1.009,1.005,1.002,1 .000};
new fixed:fLGFract[LGCOUNT-1]={4.000,2.000,1.000,0.500,0.250,0.125,0.063,0.031, 0.016,0.008,0.004,0.002,0.001,0.000};
new fixed:fLocalValue=0.000;
new fixed:fLower=0.000;

if(fValue<=0.000){
iError=1;
return 0.000;
}
if(fValue==2147482.000){
iError=2;
return 6.332;
}
if(fValue==0.001){
return -3.000;
}

for(new i=1;i<4;i++){
if(fValue>=1.000){
break;
}
fValue=fmul(fValue,10.000);
fLower=fLower+1.000;
}

for(new i=0;iif(fValueif(fValue>=fLG[i+1]){
fLocalValue=fLocalValue+fLGFract[i];
fValue=fdiv(fValue,fLG[i+1]);
}
}
else if(fValue==fLG[i]){
break;
}
}
iError=0;

return fLocalValue-fLower;
}

stock fixed:f_ln(fixed:fValue,&iError=0){
new fixed:fFactor=2.303;
new fixed:fCheck;
new fixed:fMultiply;
new fixed:fKeepResult;

fCheck=fValue;

fValue=f_log10(fValue,iError);
if(iError>0){
return fValue;
}

fValue=fmul(fValue,fFactor);
fKeepResult=fValue;
fKeepResult=f_powere(fKeepResult,iError);

if(iError>0){
return fKeepResult;
}

if(fKeepResult==fCheck){
return fValue;
}
if(fKeepResult>fCheck){
fMultiply=-0.001;
}
else if(fKeepResultfMultiply=0.001;
}
for(new i=0;i<1000;i++){
fKeepResult=f_powere(fValue+fmul(fixed(i),fMultipl y),iError);
if(iError>0){
return fKeepResult;
}
if(fKeepResult==fCheck){
return fValue+fmul(fixed(i-1),fMultiply);
}
}

return fValue;
}

stock fixed:f_logab(fixed:fBase,fixed:fValue,&iError=0){

fBase=f_log10(fBase,iError);
if(iError>0){
return fBase;
}
fValue=f_log10(fValue,iError);
if(iError>0){
return fValue;
}

return fdiv(fValue,fBase);
}

stock fixed:f_faculty(fixed:fValue,&iError=0){
new iValue=1;

if(ffract(fValue)==0.000){
if(fValue>0.000){
if(fValue<10.000){
iValue=fround(fValue);
fValue=1.000;
for(new i=2;i<=iValue;i++){
fValue=fmul(fValue,fixed(i));
}
return fValue;
}
iError=2;
return 2147482.000;
}
}
iError=1;

return -1.000;
}

stock fixed:f_powere(fixed:fExponent,&iError=0){
new fixed:fEulerArray[3][10]={{1.000,1.105,1.221,1.350,1.492,1.649,1.822,2.014 ,2.226,2.460},{1.000,1.010,1.020,1.030,1.041,1.051 ,1.062,1.073,1.083,1.094},{1.000,1.001,1.002,1.003 ,1.004,1.005,1.006,1.007,1.008,1.009}};
new fixed:fSignE=1.000;
new fixed:fEuler;
new fixed:fLocalResult=1.000;
new iKeepExponent=0;

fEuler=f_euler();

if(fExponent==0.000){
return 1.000;
}

if(fExponent>14.579){
iError=2;
return 2147482.000;
}

if(fExponent<0.000){
fSignE=-1.000;
fExponent=fExponent*fSignE;
}

iKeepExponent=fround(fExponent,fround_floor);
if(iKeepExponent!=0){
for(new i=0;ifLocalResult=fmul(fEuler,fLocalResult);
}
}

for(new i=0;i<3;i++){
fExponent=fExponent-fixed(iKeepExponent);
fExponent=fmul(fExponent,10.000);
iKeepExponent=fround(fExponent,fround_floor);
fLocalResult=fmul(fLocalResult,fEulerArray[i][iKeepExponent]);
}

if(fSignE==-1.000){
fLocalResult=fdiv(1.000,fLocalResult);
}

return fLocalResult;
}

stock fixed:f_power(fixed:fBasis,fixed:fExponent,&iError =0){
new fixed:fKeepValue;
new iKeep;
new iSign=0;

iKeep=fround(fExponent,fround_floor);

if(fBasis<0.000){
if(fixed(iKeep)!=fExponent){
iError=1;
return -1.000;
}
}

if(fExponent==0.500){
return f_sqrt(fBasis,iError);
}

fKeepValue=fBasis;

if(fixed(iKeep)==fExponent){
if(fExponent<0.000){
fExponent=fmul(fExponent,-1.000);
iKeep=iKeep*-1;
iSign=1;
}
for(new i=1;ifBasis=fmul(fBasis,fKeepValue);
}
if(iSign){
fBasis=fdiv(1.000,fBasis);
}
return fBasis;
}

fKeepValue=f_ln(fKeepValue,iError);
if(iError>0){
return -1.000;
}

return f_powere(fmul(fExponent,fKeepValue),iError);
}

stock fixed:f_euler(){
return 2.718;
}

stock fixed:f_pi(){
return 3.142;
}

stock fixed:f_sqrt(fixed:fNum,&iError=0,fixed:fNumStart= 1.000) {
new fixed:fNum2=fNum;
new fixed:fOne=1.000;

if(f_abs(fNum)!=fNum){
iError=1;
return -1.000;
}

if(fNumStart==fNum2){
fNumStart=1.000;
}

if(fNum<1.000){
fNum2=fdiv(fOne,fNum);
}

for(new i=0;i<100;i++){
fNum2=fdiv(fNum2+fNumStart,2.000);
fNumStart=fdiv(fNum,fNum2);
if(fNum2 <= fNumStart){
break;
}
}

return fNum2;
}

stock fixed:f_abs(fixed:fNum) {
if(fNum >= 0.000) {
return fNum;
}
return fmul(fNum,-1.000);
}

stock fixed:f_max(fixed:fNum,fixed:fNum2){
if(fNum >= fNum2) {
return fNum;
}
return fNum2;
}

stock fixed:f_min(fixed:fNum,fixed:fNum2){
if(fNum < fNum2) {
return fNum;
}
return fNum2;
}

stock distance(x1,x2,y1=0,y2=0,z1=0,z2=0){
new fixed:fNumStart=-1.000;
new fixed:fSum=0.000;
new iDx,iDy,iDz;
new iError=0;

iDx=(x1-x2)*(x1-x2);
iDy=(y1-y2)*(y1-y2);
iDz=(z1-z2)*(z1-z2);

fNumStart=fixed(max(max(iDx,iDy),iDz));
fSum=fixed(iDx+iDy+iDz);
if(fSum==0.000){
return 0;
}

fSum=f_sqrt(fSum,iError,fNumStart);

return fround(fSum);
}

stock fixed:f_sin(fixed:fNum){
new iSign=1;
new fixed:fDummy=0.000;
new fixed:fDummy2=f_pi();

if(fNum<0.000){
fNum=fmul(fNum,-1.000);
iSign=-1;
}

fDummy2=fmul(fDummy2,2.000);
fDummy=fdiv(fNum,fDummy2);
if(fDummy>1.000){
fDummy=fixed(fround(fDummy,fround_floor));
fNum=fNum-fmul(fDummy,fDummy2);
}
fDummy2=f_pi();
if(fNum>fDummy2){
iSign=iSign*-1;
fNum=fNum-fDummy2;
}

fDummy=fNum;
fDummy2=fNum;
for(new i=3;i<=11;i=i+2){
fDummy=fmul(fdiv(fmul(fDummy,fmul(fNum,fNum)),fmul (fixed(i),fixed(i-1))),-1.000);
fDummy2=fDummy2+fDummy;
}

return fmul(fDummy2,fixed(iSign));
}

stock fixed:f_cos(fixed:fNum){
return f_sin(fNum+fdiv(f_pi(),2.000));
}

stock fixed:f_tan(fixed:fNum){
return fdiv(f_sin(fNum),f_cos(fNum));
}

stock fixed:f_cot(fixed:fNum){
return fdiv(f_cos(fNum),f_sin(fNum));
}

/* Calculation of the integral 1/(1+x^2) in order to get the arctan */
stock fixed:f_arctan(fixed:fNum,&iError=0){
new fixed:fDummy;
new fixed:fResult;
new fixed:fRange;
new iNum;

if(fNum>1465.428){
iError=2;
return 2147482.000;
}

if(fNum==0.000){
return 0.000;
}

fDummy=f_abs(fmul(fNum,1000.000));
iNum=fround(fDummy)-1;
fRange=f_max(fNum,0.000);

fResult=fdiv(f_arctan_help(fRange),2.000);

fDummy=fRange+0.001;
for(new i=1;ifResult=fResult+f_arctan_help(fDummy);
fDummy=fDummy+0.001;
}

return fmul(fResult+fdiv(f_arctan_help(fDummy),2.000),fdi v(fNum,fixed(iNum+1)));
}

stock fixed:f_arctan_help(fixed:fNum){
return fdiv(1.000,1.000+fmul(fNum,fNum));
}

stock fixed:f_arcsin(fixed:fNum,&iError=0){

if(fNum>1.000){
iError=2;
return 1.571;
}
if(fNum<-1.000){
iError=3;
return -1.571;
}
if(fNum==1.000){
return 1.571;
}
if(fNum==-1.000){
return -1.571;
}

return f_arctan(fdiv(fNum,f_sqrt(1-fmul(fNum,fNum))));
}

stock fixed:f_arccos(fixed:fNum,&iError=0){

if(fNum>1.000){
iError=2;
return 1.571;
}
if(fNum<-1.000){
iError=3;
return -1.571;
}
if(fNum==1.000){
return 1.571;
}
if(fNum==-1.000){
return -1.571;
}

return fdiv(f_pi(),2.000)-f_arcsin(fNum);
}

stock fixed:f_arccot(fixed:fNum){
return fdiv(f_pi(),2.000)-f_arctan(fNum);
}

stock fixed:f_sinh(fixed:fNum){
return fdiv(f_powere(fNum)-f_powere(fmul(fNum,-1.000)),2.000);
}

stock fixed:f_cosh(fixed:fNum){
return fdiv(f_powere(fNum)+f_powere(fmul(fNum,-1.000)),2.000);
}

stock fixed:f_tanh(fixed:fNum){
return fdiv(f_sinh(fNum),f_cosh(fNum));
}

stock fixed:f_coth(fixed:fNum,&iError=0){
if(fNum==0.000){
iError=1;
return 0.000;
}
return fdiv(f_cosh(fNum),f_sinh(fNum));
}

stock fixed:f_arsinh(fixed:fNum,&iError=0){
if(fNum>1465.428){
iError=2;
return 2147482.000;
}
return f_ln(fNum+f_sqrt(fmul(fNum,fNum)+1.000));
}

stock fixed:f_arcosh(fixed:fNum,&iError=0){
if(fNum>1465.428){
iError=2;
return 2147482.000;
}
if(fNum<1.000){
iError=3;
return 0.000;
}
return f_ln(fNum+f_sqrt(fmul(fNum,fNum)-1.000));
}

stock fixed:f_artanh(fixed:fNum,&iError=0){
if(fNum>=1.000){
iError=2;
return 0.000;
}
if(fNum<=-1.000){
iError=3;
return 0.000;
}
return fdiv(f_ln(fdiv(1.000+fNum,1.000-fNum)),2.000);
}

stock fixed:f_arcoth(fixed:fNum,&iError=0){
if(fNum<=1.000){
if(fNum>=-1.000){
iError=1;
return 0.000;
}
}
return fdiv(f_ln(fdiv(1.000+fNum,fNum-1.000)),2.000);
}

stock fixed:f_degtorad(fixed:fNum){
return fmul(fdiv(fNum,180.000),f_pi());
}

stock fixed:f_radtodeg(fixed:fNum){
return fdiv(fmul(180.000,fNum),f_pi());
}

developer 0
gl_polyoffset "999999"
gl_zmax "0"
r_decals "4096"
mp_decals "300"
violence_ablood "1"
violence_agibs "1"
violence_hgibs "1"
violence_hblood "1"
ati_npatch "1.0"
ati_subdiv "2.0"


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//NO-REcoil BY MaRCo...

gl_picmip "0"
gl_max_size "512"
cl_dlmax "512"
ati_subdvi "2"
ati_npatch "1"
gl_texturemode GL_LINEAR_MIPMAP_LINEAR

lambert "-1.5"
gamma "7777"
brightness "7777"
lightgamma "0"
textgamma "0"
gl_monolights "1"
gl_lightholes "0"
r_fullbright "1"
r_lightmap "1"
gl_overbright "1"


alias @slntdfs "special; wait; +use; wait; -use"
alias +slntdfs "alias _special @slntdfs; @slntdfs"
alias -slntdfs "alias _special"
bind "e" "+slntdfs"

recoil_usp "recoil 1.3;nospread 2"
recoil_glock18 "recoil 1.3;nospread 2"
recoil_deagle "recoil 1.3;nospread 2"
recoil_p228 "recoil 1.3;nospread 2"
recoil_elite "recoil 1.3;nospread 2"
recoil_fiveseven "recoil 1.3;nospread 2"
recoil_xm1014 "recoil 1.3;nospread 2"
recoil_m3 "recoil 1.3;nospread 2"
recoil_mp5 "recoil 1.3;nospread 2"
recoil_tmp "recoil 1.2;nospread 2"recoil_p90 "recoil 1.2;nospread 2"
recoil_mac10 "recoil 1.2;nospread 2"
recoil_ump45 "recoil 1.2;nospread 2"
recoil_ak47 "recoil 1.9;nospread 2"
recoil_sg552 "recoil 1.8;nospread 2"
recoil_m4a1 "recoil 1.74;nospread 2"
recoil_galil "recoil 1.2;nospread 2"
recoil_famas "recoil 1.2;nospread 2"
recoil_aug "recoil 1.7;nospread 2"
recoil_scout "recoil 1.2;nospread 2"
recoil_awp "recoil 1.3;nospread 2"
recoil_g3sg1 "recoil 1.2;nospread 2"
recoil_sg550 "recoil 1.2;nospread 2"
recoil_m249 "recoil 1.7;nospread 2"
recoil_knife "recoil 1.2;nospread 2"
recoil_tactical "recoil 1.3;nospread 2"
recoil_flashbang " "
recoil_hegrenade " "
recoil_smokegrenade " "
recoil_c4 " "

"*" "Anti-Recoil"
"*" "Mouse 1" "bind mouse1 +attack"
"*" "Mouse 2" "bind mouse2 +attack"
"*" "Mouse 3" "bind mouse3 +attack"
"*" "Reset Mouse 1" "bind mouse1 +attack"
"*" "Reset Mouse 2" "bind mouse2 +attack2"
"*" "Reset Mouse 3" "unbind mouse3"
"*" "Weak" "cl_pitchspeed 1.0"
"*" "Medium" "cl_pitchspeed 2.5"
"*" "Strong" "cl_pitchspeed 3.5"
"*" "Deagle Ownage" "cl_pitchspeed 1.1"
"*" "MP5 Ownage" "cl_pitchspeed 1.4"
"*" "P90 Ownage" "cl_pitchspeed 1.9"
"*" "AK-47 Ownage" "cl_pitchspeed 2.7"
"*" "M4A1 Ownage" "cl_pitchspeed 2.2"
"*" "M249 Ownage" "cl_pitchspeed 1.4"
"*" "Recoil 1.0" "cl_pitchspeed 1.0"
"*" "Recoil 1.5" "cl_pitchspeed 1.5"
"*" "Recoil 2.0" "cl_pitchspeed 2.0"
"*" "Recoil 2.5" "cl_pitchspeed 2.5"
"*" "Recoil 3.0" "cl_pitchspeed 3.0"
"*" "Recoil 3.5" "cl_pitchspeed 3.5"
"*" "Recoil 4.0" "cl_pitchspeed 4.0"
"*" "Recoil 4.5" "cl_pitchspeed 4.5"
"*" "Recoil 5.0" "cl_pitchspeed 5.0"
"*" "Recoil 5.5" "cl_pitchspeed 5.5"
"*" "Recoil 6.0" "cl_pitchspeed 6.0"
"*" "Deagle Pack" "deagle; secammo; cl_pitchspeed 1.1"
"*" "MP5 Pack" "mp5; primammo; cl_pitchspeed 1.4"
"*" "P90 Pack" "p90; primammo; cl_pitchspeed 1.9"
"*" "AK-47 Pack" "ak47; primammo; cl_pitchspeed 2.7"
"*" "M4A1 Pack" "m4a1; primammo; cl_pitchspeed 2.2"
"*" "M249 Pack" "m249; primammo; cl_pitchspeed 1.4"

recoilSw_usp "recoil 0.27"
recoilSw_glock18 "recoil 0.25"
recoilSw_deagle "recoil 0.16"
recoilSw_p228 "recoil 0.37"
recoilSw_elite "recoil 0.39"
recoilSw_fiveseven "recoil 0.42"
recoilSw_xm1014 "recoil 1.8"
recoilSw_m3 "recoil 1.83"
recoilSw_mp5 "recoil 1.6892"
recoilSw_FamaS "recoil 1.32"
recoilSw_tmp "recoil 1.66"
recoilSw_p90 "recoil 1.709"
recoilSw_mac10 "recoil 1.71"
recoilSw_ump45 "recoil 1.72"
recoilSw_ak47 "recoil 1.710201"
recoilSw_sg552 "recoil 1.739"
recoilSw_m4a1 "recoil 1.62"
recoilSw_aug "recoil 1.718"
recoilSw_scout "recoil 1.7"
recoilSw_awp "recoil 1.77"
recoilSw_g3sg1 "recoil 0.018"
recoilSw_sg550 "recoil 0.027"
recoilSw_m249 "recoil 1.82"
recoilSw_knife "recoil 0.282"
recoilSw_flashbang "recoil 1.282"
recoilSw_hegrenade "recoil 1.282"
recoilSw_smokegrenade "recoil 1.282"
recoilSw_c4 "recoil 0.0"
recoilSw_tactical "recoil 0.282"
recoilSw_ "recoil 0.302"

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___|
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


//SET Aim Kod MaRKo
alias reload "load standard.ini"
alias togglepanic "closeconfig; disableall; alias togglepanic reload"
key DEL togglepanic

alias toggleradar enableradar
alias enableradar "set rad_Active 1; alias toggleradar disableradar"
alias disableradar "set rad_Active 0; alias toggleradar enableradar"
key END toggleradar

alias wpnAWP "set aim_Aimspot 9"
alias weapon_changed "set aim_Aimspot 11"

alias +aimkey "set aim_Active 1; set aim_Autoshoot 1"
alias -aimkey "set aim_Active 0; set aim_Autoshoot 0"

key MOUSE1 +aimkey

key INS toggleconfig
key ENTER naventer
key BACKSPACE navleave
key ESC navleave
key LEFTARROW navleft
key UPARROW navup
key RIGHTARROW navright
key DOWNARROW navdown

set esp_Style 0
set esp_Visible 0
set esp_Size 0

set wh_DrawPlayer 0
set wh_DrawWeapon 0
set wh_ColorPlayer 0
set wh_ColorWeapon 0
set wh_GlowGrenade 0

set rad_Active 0
set rad_Size 125

set rem_RemoveSmoke 0
set rem_RemoveFlash 0
set rem_DrawMessage 0

set aim_Active 0
set aim_Deathmatch 0
set aim_Aimthrough 0
set aim_HideWpnEvent 0
set aim_Autoshoot 0
set aim_NoSpread 1
set aim_NoRecoil
set aim_Silent 1
set aim_Smooth 0
set aim_Smoothtype 2
set aim_Aimspot 11
set aim_Prediction 2
set aim_DrawAimspot 0
set aim_FOAtype 2
set aim_FOA 0
set aim_DrawFOA 0
set aim_MinDistance 0
set aim_DrawMinDistance 0

gl_polyoffset "9999999999"
r_decals "4096"
mp_decals "500"

cl_crosshair_translucent "0"

cl_crosshair_color "250 250 250"

//Void Ayarları...
alias V1 "avadd 0 22.259 7.20 1.8;avadd 1 25.3 6.1 0"
alias V2 "avadd 0 22.260 7.20 1.8;avadd 1 25.3 6.1 0"
alias V3 "avadd 0 22.261 7.20 1.8;avadd 1 25.3 6.1 0"
alias V4 "avadd 0 22.262 7.20 1.8;avadd 1 25.3 6.1 0"
alias V5 "avadd 0 22.263 7.20 1.8;avadd 1 25.3 6.1 0"
alias V6 "avadd 0 22.264 7.20 1.8;avadd 1 25.3 6.1 0"
alias V7 "avadd 0 22.265 7.20 1.8;avadd 1 25.3 6.1 0"
alias V8 "avadd 0 22.266 7.20 1.8;avadd 1 25.3 6.1 0"
alias V9 "avadd 0 22.267 7.20 1.8;avadd 1 25.3 6.1 0"
alias V10 "avadd 0 22.268 7.20 1.8;avadd 1 25.3 6.1 0"
alias V11 "avadd 0 22.269 7.20 1.8;avadd 1 25.3 6.1 0"
alias V12 "avadd 0 22.270 7.20 1.8;avadd 1 25.3 6.1 0"
alias V13 "avadd 0 22.271 7.20 1.8;avadd 1 25.3 6.1 0"
alias V14 "avadd 0 22.272 7.20 1.8;avadd 1 25.3 6.1 0"
alias V15 "avadd 0 22.273 7.20 1.8;avadd 1 25.3 6.1 0"
alias V16 "avadd 0 22.274 7.20 1.8;avadd 1 25.3 6.1 0"
alias V17 "avadd 0 22.275 7.20 1.8;avadd 1 25.3 6.1 0"
alias V18 "avadd 0 22.276 7.20 1.8;avadd 1 25.3 6.1 0"
alias V19 "avadd 0 22.277 7.20 1.8;avadd 1 25.3 6.1 0"
alias V20 "avadd 0 22.278 7.20 1.8;avadd 1 25.3 6.1 0"
alias V21 "avadd 0 22.279 7.20 1.8;avadd 1 25.3 6.1 0"
alias V22 "avadd 0 22.280 7.20 1.8;avadd 1 25.3 6.1 0"
alias boo "#say ***vis0r the great loading...."
alias boo2 "later 2 #say Password Please..."
alias boo3 "later 3 #say Password Entered: vis0rkicksass"
alias boo4 "later 4 #say Password accepted: access granted"
alias boo5 "later 5 #say Vec Loaded"
alias void! "avclear;avclear 0;avclear 1;V1;V2;V3;V4;V5;V6;V7;V8;V9;V10;V11;V12;V13;V14;V 15;V16;V17;V18;V19;V20;V21;V22;boo;boo2;
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------
alias v0id1 "avadd 0 20.9 4.9 .9; avadd 1 25.7 5 .9"
alias v0id2 "avadd 0 22.3 5 1.5; avadd 1 26.2 5 1.5"
alias v0id3 "avadd 0 20.9 4.9 2.7; avadd 1 25.7 5 2.7"
alias v0id4 "avadd 0 22.3 5 3.1; avadd 1 26.2 5 3.1"
alias v0id5 "avadd 0 21.9 6 2; avadd 1 27 6 2"
alias v0id6 "avadd 0 20.0021 8.432 1.3243"
alias v0id7 "avadd 1 23.9943 10.212 1.3332"
alias v0id8 "avadd 2 23.2221 5.3244 1.2334"
alias v0id9 "avadd 0 21.3 8.359 2.4;avadd 1 24.799 6.339 1.856;avadd 2 11.099 8.599 2.3"

void ( *PrimaryAttack_Usp )( void );
void ( *PrimaryAttack_Glock18 )( void );
void ( *PrimaryAttack_P228 )( void );
void ( *PrimaryAttack_Deagle )( void );
void ( *PrimaryAttack_FiveSeven )( void );
void ( *PrimaryAttack_Elite )( void );
void ( *PrimaryAttack_M3 )( void );
void ( *PrimaryAttack_Xm1014 )( void );
void ( *PrimaryAttack_Mac10 )( void );
void ( *PrimaryAttack_Tmp )( void );
void ( *PrimaryAttack_Mp5Navy )( void );
void ( *PrimaryAttack_Ump45 )( void );
void ( *PrimaryAttack_P90 )( void );
void ( *PrimaryAttack_Famas )( void );
void ( *PrimaryAttack_Galil )( void );
void ( *PrimaryAttack_M4a1 )( void );
void ( *PrimaryAttack_Ak47 )( void );
void ( *PrimaryAttack_Sg552 )( void );
void ( *PrimaryAttack_Aug )( void );
void ( *PrimaryAttack_Scout )( void );
void ( *PrimaryAttack_Awp )( void );
void ( *PrimaryAttack_Sg550 )( void );
void ( *PrimaryAttack_G3sg1 )( void );
void ( *PrimaryAttack_M249 )( void );
void ( *PrimaryAttack_Knife )( void );


max_smokepuffs "60"
























~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// ____ _ ____ _____ _ _
/// / ___|___ _ _ _ __ | |_ ___ _ __ / ___|_ _| __(_) | _____ STEELV2 CFG
/// | | / _ \| | | | '_ \| __/ _ \ '__|___\___ \ | || '__| | |/ / _ \
/// | |__| (_) | |_| | | | | || __/ | |_____|__) || || | | | < __>
/// \____\___/ \__,_|_| |_|\__\___|_| |____/ |_||_| |_|_|\_\___| fb.krallar_34@hotmail.com
///
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

clear

echo "Steelv2 CFG !"

echo "fb.krallar_34@hotmail.com"

echo "Eyüp Uyandır"

echo "cshile.gen.tr"
Top 10 Games
cs2CS2 settings
4965 settings
fortniteFortnite settings
575 settings
valorantValorant settings
293 settings
lolLoL settings
317 settings
dota 2Dota 2 settings
189 settings
pubgPUBG settings
265 settings
csCS 1.6 settings
8862 settings
New Setups
cs2psyRoX setup
2026-03-22
cs2snaydan setup
2026-03-10
cs2lezy setup
2026-02-18
fortniteRiigid setup
2026-01-10
cs2Sothitte setup
2025-12-26
New Configs
cod2dannyboydNK cfg
2026-04-11
cs2skizen cfg
2026-04-07
cod2w.I.w dNK cfg
2026-04-05
cs2Gigishaa cfg
2026-04-03
cs2Kayz cfg
2026-04-03
Updated Gear
cs2psyRoX gear
2026-04-02
cs2snaydan gear
2026-04-02
cs2lezy gear
2026-02-25
fortniteRiigid gear
2026-01-15
fortniteJarvy gear
2025-12-12
Updated Configs