Jump to content
  • 0

1% Atk per refine from 1 -10 script?


Question

Posted

want to add this with
 

{ bonus bStr,20; bonus bAgi,15; bonus2 bAddRace,RC_NonBoss,25; bonus2 bAddRace,RC_Boss,25; }

+ 20 str + 15 agi and 25% dmg all mobs / races

I want to add

 

1% Atk per refine from 1 -10

9 answers to this question

Recommended Posts

Posted

well there is a way to display it (it's all i can think for now lol) but i can't remember exactly the command (i couldn't find it on script_commands /hmm ), it goes like this:

bonus bBaseAtk,((/*here goes the command that catches the user ATK*/)/100)*(getrefine());

so, for example, if X user has 1000 of ATK then it would be like

(1000/100)*(refine)

 

let's say the item is +7

(1000/100)*(7)=70

 

so it will get a bonus of + 70 ATK

1000*7%=70

 

or to see the final bonus

1000*1.07=1070

 

it should work, only that command i can't remember /hmm

 

edit:

oh yeah lol i remember where i saw something like this

it was on this script, a file submited by Emistry

http://rathena.org/board/topic/68453-utility-build-manager/

prontera,155,181,5	script	Build Manager	757,{
function ManageBuild;

mes "Select Your Services";
next;
switch( select( ( .BMMode & 1 )?"^FF0000Save & Switch Builds^000000":"",
				( .BMMode & 2 )?"^0000FFReset Status^000000":"",	
				( .BMMode & 4 )?"^0000FFReset Skills^000000":"")){
	Case 1:
		for( set .@i,1; .@i <= .MaxSlots; set .@i,.@i + 1 )
			set .@Menu$,.@Menu$ + (( getd( "Slot_"+.@i+"$" ) == "" )?"^FF0000Empty Slot^000000":getd( "Slot_"+.@i+"$" ) )+":";
		set .@Slot,select( .@Menu$ );
		do{
			next;
			mes "Build : ^FF0000"+(( getd( "Slot_"+.@Slot+"$" ) == "" )?"Slot "+.@Slot:getd( "Slot_"+.@Slot+"$" ) )+"^000000";
			mes "STR - ^0000FF"+getd( "STR_"+.@Slot )+"^000000      INT - ^0000FF"+getd( "INT_"+.@Slot )+"^000000";
			mes "AGI - ^0000FF"+getd( "AGI_"+.@Slot )+"^000000      DEX - ^0000FF"+getd( "DEX_"+.@Slot )+"^000000";
			mes "VIT - ^0000FF"+getd( "VIT_"+.@Slot )+"^000000      LUK - ^0000FF"+getd( "LUK_"+.@Slot )+"^000000";
			mes " ";
			mes "Remaining Points : ^0000FF"+getd( "STATS_"+.@Slot )+"^000000";
			set .@Option,select(( getd( "Slot_"+.@Slot+"$" ) == "" )?"":"^0000FFSwitch",
								( getd( "Slot_"+.@Slot+"$" ) == "" )?"Save":"",
								( getd( "Slot_"+.@Slot+"$" ) == "" )?"":"^FF0000Clear" );
			ManageBuild( .@Slot,.@Option);
		}while( .@Option != 1 );
		break;
	Case 2:
		ResetStatus;
		mes "Status has been Reseted.";
		break;
	Case 3:
		ResetSkill;
		mes "Skills has been Reseted.";
		break;
}
close;

function	ManageBuild	{
switch( getarg(1) ){
	Case 1:	//	Switch Build
		message strcharinfo(0),"Build has been ^FF0000Switched^000000.";
			ResetStatus;
			set StatusPoint,getd( "STATS_"+getarg(0) );
			statusup2 bStr,getd( "STR_"+getarg(0) ) - 1;
			statusup2 bAgi,getd( "AGI_"+getarg(0) ) - 1;
			statusup2 bVit,getd( "VIT_"+getarg(0) ) - 1;
			statusup2 bInt,getd( "INT_"+getarg(0) ) - 1;
			statusup2 bDex,getd( "DEX_"+getarg(0) ) - 1;
			statusup2 bLuk,getd( "LUK_"+getarg(0) ) - 1;
		break;
	Case 2:	//	Save Build
			setd( "STR_"+getarg(0) ),readparam(bStr);
			setd( "AGI_"+getarg(0) ),readparam(bAgi);
			setd( "VIT_"+getarg(0) ),readparam(bVIT);
			setd( "INT_"+getarg(0) ),readparam(bInt);
			setd( "DEX_"+getarg(0) ),readparam(bDex);
			setd( "LUK_"+getarg(0) ),readparam(bLuk);
			setd( "STATS_"+getarg(0) ),StatusPoint;
		if( .Length[0] < .Length[1] && .Length[0] ){
			mes "Input a ^FF0000Name^000000 for this Slot.";
			mes "Name Length : "+.Length[0]+" ~ "+.Length[1]+" Chars";
			do{
				input getd( "Slot_"+getarg(0)+"$" );
			}while( getstrlen( getd( "Slot_"+getarg(0)+"$" ) ) < .Length[0] || getstrlen( getd( "Slot_"+getarg(0)+"$" ) ) > .Length[1] );
		}else{
			setd( "Slot_"+getarg(0)+"$" ),"Build "+getarg(0);
		}
		message strcharinfo(0),"Build has been ^FF0000Saved^000000.";
		break;
	Case 3:	//	Remove Build
		message strcharinfo(0),"Build has been ^FF0000Cleared^000000.";
			setd( "STR_"+getarg(0) ),0;
			setd( "AGI_"+getarg(0) ),0;
			setd( "VIT_"+getarg(0) ),0;
			setd( "INT_"+getarg(0) ),0;
			setd( "DEX_"+getarg(0) ),0;
			setd( "LUK_"+getarg(0) ),0;
			setd( "STATS_"+getarg(0) ),0;
			setd( "Slot_"+getarg(0)+"$" ),"";
		break;
}
return;
}	
	
OnInit:
// Mode of NPC
// 1 = Save & Switch 
// 2 = Reset Status
// 4 = Reset Skills
// 7 = All of Above [ 1+2+4 = 7 ]
set .BMMode,7;
// How Many Slots available to Save Status Builds.
set .MaxSlots,3;
// Enable Stats Slot Rename + Max Name Length ( 0 = Disable )
setarray .Length,4,26; // Min. ~ Max. Words.
end;

}

 

aw it was for stats only ): but, there should be something that reads too the ATK of a player isn't ): ?

 

olow4hc1yg8t0n0fg.jpg?size_id=6

Posted

huh yeah, i just guessed that

 

instead of make a custom src command, wouldn't be easier to just edit/adjust the bAtkRate to show the numbers on the player stats?

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.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...