Try this, I found it somewhere
//====================================================================
//===== Hourly Points Script =========================================
//===== By: ==========================================================
//= GorthexTiger modified by Nibi
//===== Current Version: =============================================
//= 1.0
//===== Compatible With: =============================================
//= Any eAthena Version / rAthena
//===== 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,{
OnPCLoginEvent:
attachnpctimer ""+strcharinfo(0)+"";
initnpctimer;
end;
OnTimer30000:
if(checkvending() || checkchatting() || checkidle()) {
dispbottom "The hourly points event stopped because you were vending / chatting / afk. Please relog if you wish to start again.";
stopnpctimer;
end;
}
end;
OnTimer60000:
set @minute, @minute + 1;
if(@minute == 60){
set @minute,0;
set .@point_amt, 1;
getitem 7179 .@point_amt;
set @consecutive_hour, @consecutive_hour + 1;
}
if(@consecutive_hour == 6) {
set @consecutive_hour,0;
set .@cpoint_amt, 10;
getitem 7179 .@cpoint_amt;
}
stopnpctimer;
initnpctimer;
end;
}