AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Why this code crash my server? (https://forums.alliedmods.net/showthread.php?t=159469)

m0skVi4a 06-17-2011 13:50

Why this code crash my server?
 
If this topic is not for this section please move it moderators.
Hellol guys.
I want to ask you why this code crash my server and gives me that error http://picbg.net/img.php?file=924c21b0110949f2.png
or kicked me with reason reliable channel overflooded.

PHP Code:

#include <amxmodx> 
#include <amxmisc> 
#include <fun> 
#include <nvault> 

new const prefix[]="[Deathrun XP Mod]" 

new const LEVELS[10] = { 
     
50,  
     
100,  
     
150,  
     
200
     
250
     
300
     
350
     
400
     
450
     
500 


new 
drxpmod_playerxp[33], drxpmod_playerlevel[33
new 
drxpmod_killdrxpmod_knifedrxpmod_grenadedrxpmod_hsdrxpmod_invisibilitydrxpmod_savexpg_drxpmod_vault 

public plugin_precache() 

    
precache_sound("drxpmod_levelup.wav"



public 
plugin_init() 

    
register_plugin("Deathrun XP Mod""1.0""Fxfighter"
    
register_event("ResetHUD","drxpmod_spawn","be"
     
register_event("DeathMsg""drxpmod_death""a")  
    
register_dictionary"deathrunxpmod.txt" 

     
drxpmod_savexp register_cvar("drxpmod_savexp","1"
     
drxpmod_kill register_cvar("drxpmod_kill""10"
     
drxpmod_knife register_cvar("drxpmod_knife","5"
    
drxpmod_grenade register_cvar("drxpmod_grenade","15"
     
drxpmod_hs register_cvar("drxpmod_hs","10"
    
drxpmod_invisibility register_cvar("drxpmod_invisibility","200"

     
g_drxpmod_vault nvault_open("deathrun_xp_mod"

        
register_concmd("amx_takexp""cmd_take_exp"ADMIN_IMMUNITY"<target> <amount>");   
        
register_concmd("amx_givexp""cmd_give_exp"ADMIN_IMMUNITY"<target> <amount>");  


public 
drxpmod_spawn(id

    if((
drxpmod_playerlevel[id] < 10) && (drxpmod_playerxp[id] >= LEVELS[drxpmod_playerlevel[id]])) 
    { 
    
client_print(id,print_chat,"%s %L",prefixLANG_SERVER"DRXPMOD_CONGR"
    
emit_sound(idCHAN_ITEM"drxpmodlevelup.wav"1.0ATTN_NORM0PITCH_NORM); 
    while(
drxpmod_playerxp[id] >= LEVELS[drxpmod_playerlevel[id]]) 
    { 
          
drxpmod_playerlevel[id] += 
    

    } 
     
    if(
drxpmod_playerlevel[id] > 
    { 
        
set_user_health(idget_user_health(id) + 5*drxpmod_playerlevel[id]); 
    } 
    if(
drxpmod_playerlevel[id] > 1
    { 
        
give_item(id"item_assaultsuit" ); 
    } 
    if(
drxpmod_playerlevel[id] > 2
    { 
        
give_item(id"weapon_hegrenade"); 
    } 
    if(
drxpmod_playerlevel[id] > 3
    { 
        
give_item(id"weapon_hegrenade"); 
        
give_item(id"weapon_flashbang"); 
    } 
    if(
drxpmod_playerlevel[id] > 5
    { 
        
set_user_footstepsid);             
    } 
    if(
drxpmod_playerlevel[id] > 6
    { 
        
set_user_maxspeed(idget_user_maxspeed(id) + 160); 
    } 
    if(
drxpmod_playerlevel[id] > 7
    { 
        
set_user_gravity (id0.5); 
    } 
    if(
drxpmod_playerlevel[id] > 8
    { 
        
set_user_renderingidkRenderFxNone000kRenderTransAlphaget_pcvar_num(drxpmod_invisibility) );     
    } 

     
public 
drxpmod_death()  

     new 
iVictim read_data
     new 
weaponhitplaceattacker get_user_attacker(iVictim,weapon,hitplace

    new 
victimname[32
       
get_user_name(iVictim,victimname,31

    new 
wvar[32
       
read_data(4wvar31

       if(
equal(wvar"world"5))  { 
       return 
       } 

     
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_kill

     if(
hitplace == HIT_HEAD
    { 
         
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_hs
        
client_print(attacker,print_chat,"%s %L"prefixLANG_SERVER"DRXPMOD_HEAD_KILL"get_pcvar_num(drxpmod_hs), victimname
    } 

     if(
weapon == CSW_KNIFE
    { 
          
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_knife
        
client_print(attacker,print_chat,"%s %L"prefixLANG_SERVER"DRXPMOD_KNIFE_KILL"get_pcvar_num(drxpmod_knife), victimname
    } 
     else if(
weapon == CSW_HEGRENADE
    { 
          
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_grenade
        
client_print(attacker,print_chat,"%s %L"prefixLANG_SERVER"DRXPMOD_GRENADE_KILL"get_pcvar_num(drxpmod_grenade), victimname)
    } 

    
drxpmod_hudinfo(attacker
     
SaveData(attacker


public 
drxpmod_hudinfo(id

    
set_hudmessage(01562550.010.203.03.00.10.21
     
show_hudmessage(id"Level: %i^nXP: %i^n",drxpmod_playerlevel[id],drxpmod_playerxp[id]) 
    
set_task0.5"drxpmod_hudinfo"id


public 
client_connect(id

     if(
get_pcvar_num(drxpmod_savexp) == 1
     { 
          
LoadData(id
     } 
    
set_task0.5"drxpmod_hudinfo"id


public 
client_disconnect(id

     if(
get_pcvar_num(drxpmod_savexp) == 1
     { 
          
SaveData(id
     } 
     
drxpmod_playerxp[id] = 
     drxpmod_playerlevel
[id] = 


public 
SaveData(id

     new 
PlayerName[35
     
get_user_name(id,PlayerName,34

     new 
vaultkey[64],vaultdata[256
     
format(vaultkey,63,"%s",PlayerName
     
format(vaultdata,255,"%i#%i#",drxpmod_playerxp[id],drxpmod_playerlevel[id]) 
     
nvault_set(g_drxpmod_vault,vaultkey,vaultdata
     return 
PLUGIN_CONTINUE 


public 
LoadData(id

     new 
PlayerName[35
     
get_user_name(id,PlayerName,34

     new 
vaultkey[64],vaultdata[256
     
format(vaultkey,63,"%s",PlayerName
     
format(vaultdata,255,"%i#%i#",drxpmod_playerxp[id],drxpmod_playerlevel[id]) 
     
nvault_get(g_drxpmod_vault,vaultkey,vaultdata,255

     
replace_all(vaultdata255"#"" "

     new 
playerxp[32], playerlevel[32

     
parse(vaultdataplayerxp31playerlevel31

     
drxpmod_playerxp[id] = str_to_num(playerxp
     
drxpmod_playerlevel[id] = str_to_num(playerlevel

     return 
PLUGIN_CONTINUE 
}   

public 
cmd_give_exp(idlevelcid)  
{  
        if(!
cmd_access(idlevelcid3))  
                return 
PLUGIN_HANDLED 

        
new target[32], amount[21], reason[21

        
read_argv(1target31
        
read_argv(2amount20
        
read_argv(3reason20

        new 
player cmd_target(idtarget8

        if(!
player)   
            return 
PLUGIN_HANDLED 

        
new admin_name[32], player_name[32
        
get_user_name(idadmin_name31
        
get_user_name(playerplayer_name31

        new 
expnum str_to_num(amount
    
client_print(0print_chat"ADMIN %s: give %s xp to %s"admin_nameamountplayer_name

        
drxpmod_playerxp[player] += expnum 
        SaveData
(id

        return 
PLUGIN_CONTINUE 
}  
   
public 
cmd_take_exp(idlevelcid)  
{  
        if(!
cmd_access(idlevelcid3))  
            return 
PLUGIN_HANDLED 

        
new target[32], amount[21], reason[21

        
read_argv(1target31
        
read_argv(2amount20
        
read_argv(3reason20

        new 
player cmd_target(idtarget8)  

        if(!
player)   
                return 
PLUGIN_HANDLED 

        
new admin_name[32], player_name[32
     
        
get_user_name(idadmin_name31
        
get_user_name(playerplayer_name31

        new 
expnum str_to_num(amount
    
client_print(0print_chat"ADMIN %s: take %s xp from %s"admin_nameamountplayer_name

        
drxpmod_playerxp[player] -= expnum 
        SaveData
(id)  

        return 
PLUGIN_CONTINUE 



m0skVi4a 06-18-2011 13:53

Re: Why this code crash my server?
 
PHP Code:

#include <amxmodx> 
#include <amxmisc> 
#include <fun> 
#include <nvault> 
#include <colorchat> 

new const prefix[]="[Deathrun XP Mod]" 

new const LEVELS[10] = { 
     
50,  
     
100,  
     
150,  
     
200
     
250
     
300
    
350
    
400
    
450
    
500 


new 
drxpmod_enable 
new drxpmod_playerxp[33], drxpmod_playerlevel[33
new 
drxpmod_killdrxpmod_knifedrxpmod_grenadedrxpmod_hsdrxpmod_savexpg_drxpmod_vault 

new HasHealt33 ]; 
new 
HasArmor33 ]; 
new 
HasHE33 ]; 
new 
HasFlash33 ]; 
new 
HasNoFoot33 ]; 
new 
HasSpeed33 ]; 
new 
HasGravity33 ]; 
new 
HasInvis33 ]; 

public 
plugin_precache()  
{  
    
precache_sound("drxpmod_levelup.wav")  


public 
plugin_init() 

    
register_plugin("Deathrun XP Mod""1.0""Fxfighter"
    
register_event("ResetHUD","drxpmod_spawn","be"
     
register_event("DeathMsg""drxpmod_death""a")  

    
drxpmod_enable register_cvar("drxpmod_enable","1"
     
drxpmod_savexp register_cvar("drxpmod_savexp","1"
     
drxpmod_kill register_cvar("drxpmod_kill""50"
     
drxpmod_knife register_cvar("drxpmod_knife","5"
    
drxpmod_grenade register_cvar("drxpmod_grenade","15"
     
drxpmod_hs register_cvar("drxpmod_hs","10"


     
g_drxpmod_vault nvault_open("deathrun_xp_mod"
     
    new 
szMapName[64
    
get_mapname(szMapName63
     
    if( 
contain(szMapName"deathrun_") != -) { 
        
set_pcvar_num(drxpmod_enable1)  
        } 
     else 
        
set_pcvar_num(drxpmod_enable0

        
register_concmd("amx_takexp""cmd_take_exp"ADMIN_IMMUNITY"<target> <amount>");   
        
register_concmd("amx_givexp""cmd_give_exp"ADMIN_IMMUNITY"<target> <amount>");  


public 
drxpmod_newlevel(id

    if((
drxpmod_playerlevel[id] < 10) && (drxpmod_playerxp[id] >= LEVELS[drxpmod_playerlevel[id]])) 
    { 
    
ColorChat(id,GREEN,"%s Congratulations! ^x03You have gained %i level!",prefixdrxpmod_playerlevel[id]) 
    
emit_sound(idCHAN_ITEM"drxpmod_levelup.wav"1.0ATTN_NORM0PITCH_NORM);  
    while(
drxpmod_playerxp[id] >= LEVELS[drxpmod_playerlevel[id]]) 
    { 
          
drxpmod_playerlevel[id] += 
    

    } 

public 
drxpmod_spawn(id

    if(
drxpmod_playerlevel[id] >= 0
    { 
        
HasArmorid ] = true   
    

    if(
drxpmod_playerlevel[id] > 1
    { 
        
HasHealtid ] = true
    } 
    if(
drxpmod_playerlevel[id] > 2
    { 
        
HasHEid ] = true
    } 
    if(
drxpmod_playerlevel[id] > 3
    { 
        
HasFlashid ] = true
    } 
    if(
drxpmod_playerlevel[id] > 4
    { 
        
HasNoFootid ] = true
    } 
    if(
drxpmod_playerlevel[id] > 5
    { 
        
HasSpeedid ] = true
    } 
    if(
drxpmod_playerlevel[id] > 6
    { 
        
HasGravityid ] = true 
    

    if(
drxpmod_playerlevel[id] > 7
    { 
        
HasInvisid ] = true
    } 


public 
drxpmod_death()  

     new 
iVictim read_data
     new 
weaponhitplaceattacker get_user_attacker(iVictim,weapon,hitplace

    new 
victimname[32
       
get_user_name(iVictim,victimname,31

    new 
wvar[32
       
read_data(4wvar31

       if(
equal(wvar"world"5))  { 
       return 
       } 

     
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_kill

     if(
hitplace == HIT_HEAD
    { 
         
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_hs
        
ColorChat(attacker,GREEN,"%s ^x03You have received ^x04%i XP ^x03for killing ^x04%s ^x03with headshot!"prefixget_pcvar_num(drxpmod_hs), victimname)
    } 

     if(
weapon == CSW_KNIFE
    { 
          
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_knife
        
ColorChat(attacker,GREEN,"%s ^x03You have received ^x04%i XP ^x03for killing ^x04%s ^x03with knife!"prefixget_pcvar_num(drxpmod_knife), victimname)
    } 
     else if(
weapon == CSW_HEGRENADE
    { 
          
drxpmod_playerxp[attacker] += get_pcvar_num(drxpmod_grenade
        
ColorChat(attacker,GREEN,"%s ^x03You have received ^x04%i XP ^x03for killing ^x04%s ^x03with HE!"prefixget_pcvar_num(drxpmod_grenade), victimname
    } 

    
drxpmod_hudinfo(attacker
     
SaveData(attacker


public 
drxpmod_hudinfo(id

    
set_hudmessage(01562550.010.203.03.00.10.21
     
show_hudmessage(id"Level: %i^nXP: %i of %i^n",drxpmod_playerlevel[id], drxpmod_playerxp[id], LEVELS[drxpmod_playerlevel[id]]) 
    
set_task0.5"drxpmod_hudinfo"id
    
set_task0.5"drxpmod_newlevel"id


public 
client_connect(id

    {     
        
HasHealtid ] = false
        
HasArmorid ] = false
        
HasHEid ] = false
        
HasFlashid ] = false
        
HasNoFootid ] = false
        
HasSpeedid ] = false
        
HasGravityid ] = false
        
HasInvisid ] = false
    } 
     if(
get_pcvar_num(drxpmod_savexp) == 1
     { 
          
LoadData(id
     } 
    
set_task0.5"drxpmod_hudinfo"id


public 
client_disconnect(id

    {     
        
HasHealtid ] = false
        
HasArmorid ] = false
        
HasHEid ] = false
        
HasFlashid ] = false
        
HasNoFootid ] = false
        
HasSpeedid ] = false
        
HasGravityid ] = false
        
HasInvisid ] = false
    } 
     if(
get_pcvar_num(drxpmod_savexp) == 1
     { 
          
SaveData(id
     } 
     
drxpmod_playerxp[id] = 
     drxpmod_playerlevel
[id] = 


public 
SaveData(id

     new 
PlayerName[35
     
get_user_name(id,PlayerName,34

     new 
vaultkey[64],vaultdata[256
     
format(vaultkey,63,"%s",PlayerName
     
format(vaultdata,255,"%i#%i#",drxpmod_playerxp[id],drxpmod_playerlevel[id]) 
     
nvault_set(g_drxpmod_vault,vaultkey,vaultdata
     return 
PLUGIN_CONTINUE 


public 
LoadData(id

     new 
PlayerName[35
     
get_user_name(id,PlayerName,34

     new 
vaultkey[64],vaultdata[256
     
format(vaultkey,63,"%s",PlayerName
     
format(vaultdata,255,"%i#%i#",drxpmod_playerxp[id],drxpmod_playerlevel[id]) 
     
nvault_get(g_drxpmod_vault,vaultkey,vaultdata,255

     
replace_all(vaultdata255"#"" "

     new 
playerxp[32], playerlevel[32

     
parse(vaultdataplayerxp31playerlevel31

     
drxpmod_playerxp[id] = str_to_num(playerxp
     
drxpmod_playerlevel[id] = str_to_num(playerlevel

     return 
PLUGIN_CONTINUE 
}   

public 
cmd_give_exp(idlevelcid)  
{  
        if(!
cmd_access(idlevelcid3))  
                return 
PLUGIN_HANDLED 

        
new target[32], amount[21], reason[21

        
read_argv(1target31
        
read_argv(2amount20
        
read_argv(3reason20

        new 
player cmd_target(idtarget8

        if(!
player)   
            return 
PLUGIN_HANDLED 

        
new admin_name[32], player_name[32
        
get_user_name(idadmin_name31
        
get_user_name(playerplayer_name31

        new 
expnum str_to_num(amount
    
client_print(0print_chat"ADMIN %s: give %s xp to %s"admin_nameamountplayer_name

        
drxpmod_playerxp[player] += expnum 
        SaveData
(id

        return 
PLUGIN_CONTINUE 
}  
   
public 
cmd_take_exp(idlevelcid)  
{  
        if(!
cmd_access(idlevelcid3))  
            return 
PLUGIN_HANDLED 

        
new target[32], amount[21], reason[21

        
read_argv(1target31
        
read_argv(2amount20
        
read_argv(3reason20

        new 
player cmd_target(idtarget8)  

        if(!
player)   
                return 
PLUGIN_HANDLED 

        
new admin_name[32], player_name[32
     
        
get_user_name(idadmin_name31
        
get_user_name(playerplayer_name31

        new 
expnum str_to_num(amount
    
client_print(0print_chat"ADMIN %s: take %s xp from %s"admin_nameamountplayer_name

        
drxpmod_playerxp[player] -= expnum 
        SaveData
(id)  

        return 
PLUGIN_CONTINUE 

I search for this error and found that are too many once entitita.
I change code and add true or false for all awards but i don't know how to give the award when somethig is true. HELP

m0skVi4a 07-03-2011 04:36

Re: Why this code crash my server?
 
Passed more than half a month and no one has replied

fysiks 07-03-2011 06:36

Re: Why this code crash my server?
 
I see you haven't tried searching. It was really easy to find an answer.

http://forums.alliedmods.net/showpos...18&postcount=5

m0skVi4a 07-03-2011 13:41

Re: Why this code crash my server?
 
I don't understand can you maked for me

fysiks 07-03-2011 16:38

Re: Why this code crash my server?
 
Quote:

Originally Posted by m0skVi4a (Post 1502907)
I don't understand can you maked for me

Did you even read it? There is nothing to "make".


All times are GMT -4. The time now is 01:30.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.