Jump to content
  • 0

Hourly points Idle


kitty14

Question


  • Group:  Members
  • Topic Count:  103
  • Topics Per Day:  0.03
  • Content Count:  323
  • Reputation:   4
  • Joined:  12/09/13
  • Last Seen:  

Hello , I am using this script , however player is abusing 

>First player creates a lot of account  to gain points, cuz even if they are in Idle or creating pub mode, they can still received points for 3 consecutive hours online event they are IDLE (Is there any way to make it once they are in Idle mode, they cant receive points even if they are online 12 hours.
>Or is there any way to kick once they are idle in 5 minutes? if there is. How? please help me. thanks !
 

//===== Hourly Points Script =========================================
//===== By: ==========================================================
//= GorthexTiger modified by Nibi
//===== Current Version: =============================================
//= 1.0
//===== Compatible With: =============================================
//= Any eAthena Version
//===== Description: =================================================
//= Get Points every successful hours of gameplay, you cannot get
//= the points even if you miss a second or a minute. A player will
//= get a very big bonus if they played 3 hours consecutively
//= or without logging out of the game. If the player is vending
//= the script will then stop.
//===== Additional Comments: =========================================
//= You can modify the script to your liking.
//= The default points is Kafrapoints change it anyway if you like.
//= 1.1 = Check Chatting too
//= 1.2 = 5 Minute Idle Check & @at/@autotrade check.
//= 1.3 = Corrected the current balance line on 12 Hours Consecutive
//====================================================================
-	script	hourlypoints	-1,{
//--Start of the Script
OnPCLoginEvent:
    addtimer .timer,"hourlypoints::OnPointGet";
    end;
    
OnPointGet:
    while(checkvending() >= 1 || checkchatting() == 1 || checkidle()>=.dlimit) {
        sleep2 .delay;
        if(.@mes$=="")
            dispbottom set(.@mes$,"The hourly points event haulted because you were vending, chatting, or idle.");
    }
    set #CASHPOINTS, #CASHPOINTS + .point_amt;
    dispbottom "You received "+.point_amt+" Cash points by staying ingame for 1 hour";
    dispbottom "Current Balance = "+#CASHPOINTS+" Cash points";
    set @consecutive_hour, @consecutive_hour + 1;

    //Check for 3 hours consecutive
    if(@consecutive_hour == 3) {
        set @consecutive_hour,0;
        set #CASHPOINTS, #CASHPOINTS + .cpoint_amt;
        dispbottom "You receive "+.cpoint_amt+" Cash points in playing for 3 consecutive hours";
        dispbottom "Current Balance = "+#CASHPOINTS+" Cash points";
    }
    addtimer .timer,"hourlypoints::OnPointGet";
    end;

OnInit:
    set .timer, 1000*60*60; //Timer in milliseconds.
    set .cpoint_amt, 50; //Points gained for consecutive time online.
    set .point_amt, 25; //Normal points gained.
    set .delay, 1000; //Delay for idle re-check check.
    set .dlimit, 60*5; //Stop points if afk greater then in seconds.
}
Link to comment
Share on other sites

1 answer to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  17
  • Topics Per Day:  0.00
  • Content Count:  41
  • Reputation:   0
  • Joined:  06/09/13
  • Last Seen:  

you can use this code

 

//===== Hourly Points Script =========================================
//===== By: ==========================================================
//= GorthexTiger modified by Nibi
//===== Current Version: =============================================
//= 1.0
//===== Compatible With: =============================================
//= Any eAthena Version
//===== Description: =================================================
//= Get Points every successful hours of gameplay, you cannot get
//= the points even if you miss a second or a minute. A player will
//= get a very big bonus if they played 12 hours consecutively
//= or without logging out of the game. If the player is vending
//= the script will then stop.
//===== Additional Comments: =========================================
//= You can modify the script to your liking.
//= The default points is Kafrapoints change it anyway if you like.
//= 1.1 = Check Chatting too
//= 1.2 = 5 Minute Idle Check & @at/@autotrade check.
//= 1.3 = Corrected the current balance line on 12 Hours Consecutive
//====================================================================

-    script    hourlypoints    -1,{

//--Start of the Script
OnPCLoginEvent:
attachnpctimer ""+strcharinfo(0)+"";
initnpctimer;
end;
    
OnTimer30000:
//Check if Vending (normal or @at)
if(checkvending() >= 1 || checkchatting() == 1) {
    dispbottom "The hourly points event stopped because you were vending / chatting. Please relog if you wish to start again.";
    stopnpctimer;
    end;
}
//Check if Idle
getmapxy( .@map$, .@x, .@y, 0 );
if(@map$ == .@map$ && @x == .@x && @y == .@y) {
    set @afk, @afk + 1;
}
//If move timer resets
else {
    set @afk, 0;
}
    set @map$, .@map$; set @x, .@x; set @y, .@y;
//Idle Check for 5 Minutes
if(@afk == 5) {
    dispbottom "The hourly points event stopped because you were idle for 5 minutes. Please relog if you wish to start again.";
    stopnpctimer;
    end;
}
end;

OnTimer60000:
set @minute, @minute + 1;
//Check for 1 Minute
if(@minute == 60){
    set @minute,0;
    set .@point_amt, 10; //Points to get every hour (default: 10)
    set #KAFRAPOINTS, #KAFRAPOINTS + .@point_amt;
    dispbottom "You received "+.@point_amt+" Kafrapoints by staying ingame for 1 hour";
    dispbottom "Current Balance = "+#KAFRAPOINTS+" Kafrapoints";
    set @consecutive_hour, @consecutive_hour + 1;
    }
//Check for 12 hours consecutive
    if(@consecutive_hour == 12) {
    set @consecutive_hour,0;
    set .@cpoint_amt, 50; //Points to get for 12 Consecutive hours (default: 50)
    set #KAFRAPOINTS, #KAFRAPOINTS + .@cpoint_amt;
    dispbottom "You receive "+.@cpoint_amt+" Kafrapoints in playing for 12 consecutive hours";
    dispbottom "Current Balance = "+#KAFRAPOINTS+" Kafrapoints";
    }
stopnpctimer;
initnpctimer;
end;

}
//--End of the Scriptlogo.png?t=2015214&usertype=generated&hilogo.png?t=2015214&usertype=generated&hilogo.png?t=2015214&usertype=generated&hi

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...