Jump to content
  • 0

who can make this event?


Hatake Kakashi

Question


  • Group:  Members
  • Topic Count:  254
  • Topics Per Day:  0.06
  • Content Count:  825
  • Reputation:   3
  • Joined:  11/14/11
  • Last Seen:  

i'am a one piece fanatic, so i tried to suggest this npc event.

 

if you know and you're a fan of one piece you will guess what i think..

 

if you kill one player you will have a prize on your head like a wanted level.

 

there's an announcer, like for example "player 1 killed player 2 and he/she has a 1 million zeny prize on his/her head WANTED LEVEL 1".

Link to comment
Share on other sites

Recommended Posts


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

It's possible. I'll take a look at it in a bit.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

-	script	bounty_script	-1,{
	OnInit:
	set .mapname$,"guild_vs3"; //Mapname this script will work on. Leave blank to enable on all maps.
	set .bounty,10000; //Bounty gained per kill.
	set .prevent_resu_kill,1; //Whether or not resu killing is enabled. 0 = NO | 1 = YES
	set .no_zeny_warp,1; //Whether or not a player is warped out of map because they have no zeny. 0 = NO | 1 = YES
	//*Note - If prevent_resu_kill is enabled, as well as the script on all maps, then players will be warped back to savepoint upon being killed from another player, on ALL maps.*
	//DON'T CHANGE ANYTHING BEYOND THIS PART, UNLESS YOU KNOW WHAT YOU'RE DOING.
	if( .prevent_resu_kill ){set .no_zeny_warp,0;}
	end;
	
	
	OnPCLoginEvent:
	query_sql("select last_ip from `login` WHERE account_id = "+ getcharid(3) +""),.@ip$;
	setd ".ip"+getcharid(0)+"$",.@ip$;
	end;
	OnPCLogoutEvent:
	setd ".ip"+getcharid(0)+"$","";
	end;
	OnPCKillEvent:
	if( strcharinfo(3) != .mapname$ && .mapname$ != "" ){end;}
	
	set .ip1$, getd(".ip"+getcharid(0)+"$");
	if(killedrid == getcharid(3)){end;} //Prevent Suicide.
	attachrid(killedrid);
	if( .ip1$ == getd(".ip"+getcharid(0)+"$") )
		{dispbottom "Cheating will not be tolerated. Repeated offenses will result in a public denounciation, and a 5day ban."; 
			set @repeatcheat,@repeatcheat +1; 
				if(@repeatcheat >=3){announce ""+strcharinfo(0)+" has been caught cheating and has been banned for 5days.",bc_blue|bc_all; atcommand "@ban +5d "+strcharinfo(0)+"";} 
		 end;} //Prevents same IP Address Farming

	if( zeny >= .bounty ){set zeny,zeny-.bounty;}
	set .zeny, getd(".bounty"+ getcharid(0) +"");
	setd ".bounty"+ getcharid(0) +"",0; //Sets Bounty to 0 if they die.
	if( .no_zeny_warp ){ if(zeny < .bounty){warp "SavePoint",0,0;} } //Warps them out of map if they no longer have zeny.
	if( .prevent_resu_kill ){ warp "SavePoint",0,0; } //Warps them out of map to prevent resu kill spam
	attachrid(killerrid);
	set zeny,zeny + .zeny;
	setd ".bounty"+ getcharid(0) +"", getd(".bounty"+ getcharid(0) +"") + .bounty; //Sets Bounty to +10,000 per kill.
	set .@a$, ""+ getd(".bounty"+ getcharid(0) +"") +"";
	set .@b, getstrlen(.@a$);
	while(.@c < .@
		{set .@a$,insertchar(.@a$,",",(.@b - 3));set .@b,.@b-3; set .@c,.@c+3;}
	announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL "+ (getd(".bounty"+ getcharid(0) +"") / .bounty) +" ]",bc_blue|bc_all;
	end;
}

Okay, here is an updated version, this has a few changes, such as a quick option changing at the top to make it easier to customize. Additionally, you'll see in those options, an option to prevent resu kill spams.

 

I didn't add the request that would allow a player to get his zeny back if he dies because this would in turn create problems further down the line.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  166
  • Topics Per Day:  0.04
  • Content Count:  789
  • Reputation:   50
  • Joined:  04/16/12
  • Last Seen:  

-	script	bounty_script	-1,{
	OnInit:
	set .mapname$,"guild_vs3"; //Mapname this script will work on. Leave blank to enable on all maps.
	set .bounty,10000; //Bounty gained per kill.
	set .prevent_resu_kill,1; //Whether or not resu killing is enabled. 0 = NO | 1 = YES
	set .no_zeny_warp,1; //Whether or not a player is warped out of map because they have no zeny. 0 = NO | 1 = YES
	//*Note - If prevent_resu_kill is enabled, as well as the script on all maps, then players will be warped back to savepoint upon being killed from another player, on ALL maps.*
	//DON'T CHANGE ANYTHING BEYOND THIS PART, UNLESS YOU KNOW WHAT YOU'RE DOING.
	if( .prevent_resu_kill ){set .no_zeny_warp,0;}
	end;
	
	
	OnPCLoginEvent:
	query_sql("select last_ip from `login` WHERE account_id = "+ getcharid(3) +""),.@ip$;
	setd ".ip"+getcharid(0)+"$",.@ip$;
	end;
	OnPCLogoutEvent:
	setd ".ip"+getcharid(0)+"$","";
	end;
	OnPCKillEvent:
	if( strcharinfo(3) != .mapname$ && .mapname$ != "" ){end;}
	
	set .ip1$, getd(".ip"+getcharid(0)+"$");
	if(killedrid == getcharid(3)){end;} //Prevent Suicide.
	attachrid(killedrid);
	if( .ip1$ == getd(".ip"+getcharid(0)+"$") )
		{dispbottom "Cheating will not be tolerated. Repeated offenses will result in a public denounciation, and a 5day ban."; 
			set @repeatcheat,@repeatcheat +1; 
				if(@repeatcheat >=3){announce ""+strcharinfo(0)+" has been caught cheating and has been banned for 5days.",bc_blue|bc_all; atcommand "@ban +5d "+strcharinfo(0)+"";} 
		 end;} //Prevents same IP Address Farming

	if( zeny >= .bounty ){set zeny,zeny-.bounty;}
	set .zeny, getd(".bounty"+ getcharid(0) +"");
	setd ".bounty"+ getcharid(0) +"",0; //Sets Bounty to 0 if they die.
	if( .no_zeny_warp ){ if(zeny < .bounty){warp "SavePoint",0,0;} } //Warps them out of map if they no longer have zeny.
	if( .prevent_resu_kill ){ warp "SavePoint",0,0; } //Warps them out of map to prevent resu kill spam
	attachrid(killerrid);
	set zeny,zeny + .zeny;
	setd ".bounty"+ getcharid(0) +"", getd(".bounty"+ getcharid(0) +"") + .bounty; //Sets Bounty to +10,000 per kill.
	set .@a$, ""+ getd(".bounty"+ getcharid(0) +"") +"";
	set .@b, getstrlen(.@a$);
	while(.@c < .@
		{set .@a$,insertchar(.@a$,",",(.@b - 3));set .@b,.@b-3; set .@c,.@c+3;}
	announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL "+ (getd(".bounty"+ getcharid(0) +"") / .bounty) +" ]",bc_blue|bc_all;
	end;
}

Okay, here is an updated version, this has a few changes, such as a quick option changing at the top to make it easier to customize. Additionally, you'll see in those options, an option to prevent resu kill spams.

 

I didn't add the request that would allow a player to get his zeny back if he dies because this would in turn create problems further down the line.

 

nice maybe the little lacks on this is List of Top 10 Most Wanted and banning character is too much jailing will be enough :)

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

You can change the banning to jailing if you want. I just never truly found it to hold any value since it only really jails that 1 character. And I usually make like 2 of each class on an account just to hide my identity from other players D:

 

Section you wanna look for is here:

if( .ip1$ == getd(".ip"+getcharid(0)+"$") )
		{dispbottom "Cheating will not be tolerated. Repeated offenses will result in a public denounciation, and a 5day ban."; 
			set @repeatcheat,@repeatcheat +1; 
				if(@repeatcheat >=3){announce ""+strcharinfo(0)+" has been caught cheating and has been banned for 5days.",bc_blue|bc_all; atcommand "@ban +5d "+strcharinfo(0)+"";} 
		 end;} //Prevents same IP Address Farming
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  49
  • Topics Per Day:  0.01
  • Content Count:  118
  • Reputation:   0
  • Joined:  09/19/12
  • Last Seen:  

 

@Scotch - What do you mean? You want this to work for normal PVP and WoE? Or did you want this to be disabled during WoE?

 

If you wanted it to work for Both PVP and WoE all you need to do is change this line:

if( strcharinfo(3) != "guild_vs3" ){end;}

INTO

//if( strcharinfo(3) != "guild_vs3" ){end;}

If you wanted to disable it during WoE add this line above the line shown above.

if( agitcheck() || agitcheck2() ){end;}

ohhh thanks for rplying i will try this one :)

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  5
  • Topics Per Day:  0.00
  • Content Count:  12
  • Reputation:   0
  • Joined:  05/06/14
  • Last Seen:  

Hi I would like to use this script also.

Can I have a request ? like the bounty wont be zeny but like an item (EG: Mithril Coins, Bronze Coins etc)

Thanks !

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

That, can be done but I'm not at my work-station at the moment, so I wont be able to make the nessecary changes, while also bug testing/ exploit testing any changes made.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  5
  • Topics Per Day:  0.00
  • Content Count:  12
  • Reputation:   0
  • Joined:  05/06/14
  • Last Seen:  

^ Thanks I will be waiting for that update ^_^

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  254
  • Topics Per Day:  0.06
  • Content Count:  825
  • Reputation:   3
  • Joined:  11/14/11
  • Last Seen:  

 
how to remove auto ban if same ip? thx

sir GMOcean.

 

i need one again.

in woe every u kill a player will get TCG Card.. do not put announce ok!

 

TIA!~ 

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

-	script	bounty_script	-1,{
	OnInit:
	set .bounty,10000; //Sets Earned Bounty in zeny.
        setarray .woe_reward[0],501,1; //[0] = Item given. |  [1] = Amount given.
	set .wanted_increments,100000; //Sets how large a wanted level is in comparison to bountys.
	set .ip_ban,0; //Whether or not IP farming results in a ban. (Time in days).
	set .ip_jail,0; //Whether or not IP farming results in jail time. (Time in hours).
	set .mapname$,""; //Mapname script works on. Leave blank for all maps.
	set .resu_kill,0; //Whether or not to warp players to savepoint upon death.
	set .zeny_warp,0; //Whether or not to warp players to savepoint upon having less than 10k zeny.
	set .zeny_loss,0; //Whether or not players lose zeny upon dying.
	
	
	
	OnPCLoginEvent:
	if( !.ip_ban && !.ip_jail ){end;} //Prevents useless sql_query if ip farming punishments are disabled.
	query_sql("select last_ip from `login` WHERE account_id = "+ getcharid(3) +""),.@ip$;
	setd ".ip"+getcharid(0)+"$",.@ip$;
	end;
	OnPCLogoutEvent:
	if( !.ip_ban && !.ip_jail ){end;} //Prevents useless commands, if ip farming punishments are disabled.
	setd ".ip"+getcharid(0)+"$","";
	end;
	OnPCKillEvent:
	if( strcharinfo(3) != .mapname$ && .mapname$ != "" ){end;}
	set .ip1$, getd(".ip"+getcharid(0)+"$");
	if(killedrid == getcharid(3)){end;} //Prevent Suicide.
	attachrid(killedrid);
	if( .ip_ban || .ip_jail ){ //Checks to see if IP farming punishment is enabled.
		if( .ip1$ == getd(".ip"+getcharid(0)+"$") )
			{dispbottom "Cheating will not be tolerated. Repeated offenses will result in a public denounciation, and a 5day ban."; 
			 set @repeatcheat,@repeatcheat +1; 
			 if(@repeatcheat >=3)
				{announce ""+strcharinfo(0)+" has been caught cheating and has been banned for 5days.",bc_blue|bc_all; 
				 if( .ip_ban ){ atcommand "@ban +5d "+strcharinfo(0)+""; } else if( .ip_jail ){ atcommand "@jail "+strcharinfo(0)+""; } }
			 end;} //Prevents same IP Address Farming
	}
	if( .zeny_loss ){ if( zeny >= .bounty ){set zeny,zeny-.bounty;} }
	set .zeny, getd(".bounty"+ getcharid(0) +"");
	setd ".bounty"+ getcharid(0) +"",0; //Sets Bounty to 0 if they die.
	if( .zeny_warp ){ if(zeny < .bounty){warp "SavePoint",0,0;} } //Warps them out of map if they no longer have zeny.
	if( .resu_kill ){ warp "SavePoint",0,0; } //Warps them out of map to prevent resu kill spam
	attachrid(killerrid);
	set zeny,zeny + .zeny;
	setd ".bounty"+ getcharid(0) +"", getd(".bounty"+ getcharid(0) +"") + .bounty; //Sets Bounty to +.bounty per kill.
	set .@a$, ""+ getd(".bounty"+ getcharid(0) +"") +"";
        if(agitcheck() || agitcheck2()){if( .woe_reward[0] ){getitem .woe_reward[0],.woe_reward[1];}end;}
	set .@b, getstrlen(.@a$);
	while(.@c < .@
		{set .@a$,insertchar(.@a$,",",(.@b - 3));set .@b,.@b-3; set .@c,.@c+3;}
	if( (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) >= 10 ){announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL ***** ]",bc_blue|bc_all;}
	if( (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) == 9 ){announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL **** ]",bc_blue|bc_all;}
	if( (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) == 8 ){announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL *** ]",bc_blue|bc_all;}
	if( (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) == 7 ){announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL ** ]",bc_blue|bc_all;}
	if( (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) == 6 ){announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL * ]",bc_blue|bc_all;}
	if( (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) >= 1 && (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) < 6 ){announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny! [ WANTED LEVEL "+ (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) +" ]",bc_blue|bc_all;}
	if( (getd(".bounty"+ getcharid(0) +"") / .wanted_increments) == 0 ){announce "["+ strcharinfo(0) +"] has killed ["+ rid2name(killedrid) +"]. "+ (Sex?"He":"She") +" has a bounty of: "+ .@a$ +" zeny!",bc_blue|bc_all;}
	end;
}

This version has options to enable and disable certain things. This is the last version, i'm releasing.

Edited by GmOcean
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...