Jump to content
  • 0

Hourly Points Problem


Virtue

Question


  • Group:  Members
  • Topic Count:  92
  • Topics Per Day:  0.02
  • Content Count:  354
  • Reputation:   22
  • Joined:  11/17/11
  • Last Seen:  

help with this script Not Giving Hourly points.

//===== 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, 1; //Points to get every hour (default: 10)
   set #CASHPOINTS, #CASHPOINTS + .@point_amt;
   dispbottom "You received "+.@point_amt+" Cashpoints by staying ingame for 1 hour";
   dispbottom "Current Balance = "+#CASHPOINTS+" Cashpoints";
   set @consecutive_hour, @consecutive_hour + 1;
   }
//Check for 12 hours consecutive
   if(@consecutive_hour == 12) {
   set @consecutive_hour,0;
   set .@cpoint_amt, 5; //Points to get for 12 Consecutive hours (default: 50)
   set #CASHPOINTS, #CASHPOINTS + .@cpoint_amt;
   dispbottom "You receive "+.@cpoint_amt+" Cashpoints in playing for 12 consecutive hours";
   dispbottom "Current Balance = "+#CASHPOINTS+" Cashpoints";
   }
stopnpctimer;
initnpctimer;
end;

}
//--End of the Script

Link to comment
Share on other sites

Recommended Posts


  • Group:  Members
  • Topic Count:  50
  • Topics Per Day:  0.01
  • Content Count:  1702
  • Reputation:   238
  • Joined:  09/05/12
  • Last Seen:  

how to create an npc selling hourly point items ??

Use this http://rathena.org/board/files/file/2504-multi-currency-shop/ and set currency depending on your hourly point prize

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10015
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

make sure your character is not in vending mode / chatroom mode...the script will stop automatically upon you create a chatroom / vending shop and afk for a while like 5 minutes as stated above.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  92
  • Topics Per Day:  0.02
  • Content Count:  354
  • Reputation:   22
  • Joined:  11/17/11
  • Last Seen:  

does this script stop automatically when you go to gvg maps? or something like that? some of my players complain that their hourly points stops, but mostly it works fine.

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10015
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

no...the script only stop when ur character is afk / vending / open a chatroom...

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  142
  • Topics Per Day:  0.03
  • Content Count:  511
  • Reputation:   7
  • Joined:  02/15/12
  • Last Seen:  

Can I have an edited script of this which only gives Items? Example "7227,1" every hour and "7185,1" for staying online for 6 hours.

Script will stop if players will chatroom,vend,afk(5mins) THANKS

Edited by Paulinds
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  92
  • Topics Per Day:  0.02
  • Content Count:  354
  • Reputation:   22
  • Joined:  11/17/11
  • Last Seen:  

//===== 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 Rewards 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 Rewards 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 .@item_amt, 1; //Points to get every hour (default: 10)
   getitem 7227,.@item_amt;
   dispbottom "You received "+.@point_amt+" [i]<7227's displayname>[/i] by staying ingame for 1 hour";
   }
//Check for 6 hours consecutive
   if(@consecutive_hour == [b][i]6[/i][/b]) {
   set @consecutive_hour,0;
   set .@item_amt, 1; //Points to get for 6 Consecutive hours (default: 50)
   getitem 7185,.@item_amt;
   dispbottom "You receive "+.@item_amt+" [i]<7185's displayname>[/i] in playing for 6 consecutive hours";
   }
stopnpctimer;
initnpctimer;
end;

}
//--End of the Script

@Paulinds try that

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  142
  • Topics Per Day:  0.03
  • Content Count:  511
  • Reputation:   7
  • Joined:  02/15/12
  • Last Seen:  

Thanks but can you post it in pastebin? I can't copy lol Sorry

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  92
  • Topics Per Day:  0.02
  • Content Count:  354
  • Reputation:   22
  • Joined:  11/17/11
  • Last Seen:  

http://pastebin.com/m8mrZxSB here. done. but better try it first. since im not so sure about that, :))) mine is not working properly.
Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10015
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

careful with the 1 posted by @mnjfx..

because..inside there script..there are some forum text tag inside it...

most probably it occur during he copying the script / posting the script...

you just need to remove all the tag then the script should be work fine...

anyway...here is another mirror for it

[ Pastebin ] Hourly Item Reward

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  142
  • Topics Per Day:  0.03
  • Content Count:  511
  • Reputation:   7
  • Joined:  02/15/12
  • Last Seen:  

Thanks mnjfx and Emistry for the help !

Edited by Paulinds
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  69
  • Topics Per Day:  0.02
  • Content Count:  592
  • Reputation:   31
  • Joined:  11/14/11
  • Last Seen:  

how to check

if @autoattack activated there will be no points given??

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  1
  • Topics Per Day:  0.00
  • Content Count:  71
  • Reputation:   25
  • Joined:  11/23/11
  • Last Seen:  

if (checkoption(0x10000000)) end;

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  1
  • Reputation:   0
  • Joined:  02/19/13
  • Last Seen:  

Can we do the same but to prevend afk lvl.?

like, if player stay away for 5min exp and autoloot will be stop.

right now for autoloot is alredy possible i wonder if we can do something for exp too.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  5
  • Reputation:   0
  • Joined:  05/29/13
  • Last Seen:  

how to enable the idle one in this script ???

thx in advance

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  118
  • Topics Per Day:  0.03
  • Content Count:  1942
  • Reputation:   197
  • Joined:  01/08/12
  • Last Seen:  

how to enable the idle one in this script ???

thx in advance

 

//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;
}
 
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  4
  • Topics Per Day:  0.00
  • Content Count:  18
  • Reputation:   0
  • Joined:  04/04/13
  • Last Seen:  

How do we add specific map for this script?

- Ex. People will only get afk points from prontera. etc.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  48
  • Topics Per Day:  0.01
  • Content Count:  1125
  • Reputation:   236
  • Joined:  07/30/12
  • Last Seen:  

How do we add specific map for this script?

- Ex. People will only get afk points from prontera. etc.

 

if(@map$ == "yourmap1" || @map$ == "yourmap2" || @map$ == "yourmap3") {
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  4
  • Topics Per Day:  0.00
  • Content Count:  18
  • Reputation:   0
  • Joined:  04/04/13
  • Last Seen:  

What if he goes out of the area? the points is still adding.



Hi,

 

I'm sorry im just stucked on this. So people gets points from afk'ing. from certain map. But what if he goes out from 'prontera' for instance? How'd I do that from script?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  5
  • Reputation:   0
  • Joined:  05/29/13
  • Last Seen:  

 Brynner

Oh . Sorry Im Wrong .. How To Remove The Idle ??

thx

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  48
  • Topics Per Day:  0.01
  • Content Count:  1125
  • Reputation:   236
  • Joined:  07/30/12
  • Last Seen:  

Here's the script without idle.

 


-    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;
}

OnTimer60000:
set @minute, @minute + 1;
//Check for 1 Minute
if(@minute == 60){
    set @minute,0;
    getitem 7227,1;
    dispbottom "You received 1 "+getitemname( 7227 )+" by staying ingame for 1 hour";
    set @consecutive_hour, @consecutive_hour + 1;
    }
//Check for 12 hours consecutive
    if(@consecutive_hour == 6) {
    set @consecutive_hour,0;
    getitem 7227,1;
    dispbottom "You received 6 "+getitemname( 7227 )+" by staying ingame for consecutive of 6 hour";
    }
stopnpctimer;
initnpctimer;
end;

}
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  5
  • Reputation:   0
  • Joined:  05/29/13
  • Last Seen:  

Here's the script without idle.

 


-    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;
}

OnTimer60000:
set @minute, @minute + 1;
//Check for 1 Minute
if(@minute == 60){
    set @minute,0;
    getitem 7227,1;
    dispbottom "You received 1 "+getitemname( 7227 )+" by staying ingame for 1 hour";
    set @consecutive_hour, @consecutive_hour + 1;
    }
//Check for 12 hours consecutive
    if(@consecutive_hour == 6) {
    set @consecutive_hour,0;
    getitem 7227,1;
    dispbottom "You received 6 "+getitemname( 7227 )+" by staying ingame for consecutive of 6 hour";
    }
stopnpctimer;
initnpctimer;
end;

}

Thanks .. I Will Try it Later

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  28
  • Topics Per Day:  0.01
  • Content Count:  93
  • Reputation:   0
  • Joined:  01/30/12
  • Last Seen:  

-	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, 5; //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 Script

 

 

How can i disable this in certain map like sec_prison? So this not work on that map

Link to comment
Share on other sites


  • Group:  Developer
  • Topic Count:  10
  • Topics Per Day:  0.00
  • Content Count:  2407
  • Reputation:   613
  • Joined:  07/05/12
  • Last Seen:  


if(checkvending() >= 1 || checkchatting() == 1 || strcharinfo(3) == "yourmap" ) {

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  2
  • Topics Per Day:  0.00
  • Content Count:  7
  • Reputation:   0
  • Joined:  06/06/13
  • Last Seen:  

where to save this script and how to run sir

Link to comment
Share on other sites


  • Group:  Developer
  • Topic Count:  10
  • Topics Per Day:  0.00
  • Content Count:  2407
  • Reputation:   613
  • Joined:  07/05/12
  • Last Seen:  

where to save this script and how to run sir

Read this tutorial : Basic_Scripting

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...