Jump to content
  • 0

PvP Points Floating rate


harley

Question


  • Group:  Members
  • Topic Count:  4
  • Topics Per Day:  0.00
  • Content Count:  17
  • Reputation:   1
  • Joined:  11/08/14
  • Last Seen:  

The normal Pvp Points that player recieve is 1 when he killed someone,Can someone know how to make a floating rate for +PVPPOINTS+ "Pvp Points", and make x5 Reward points. On Monday to Sunday to 12am,3pm,6pm,9pm..  Thanks for Advance

Edited by harley
Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

  • Group:  Forum Manager
  • Topic Count:  282
  • Topics Per Day:  0.06
  • Content Count:  3122
  • Reputation:   1614
  • Joined:  03/26/12
  • Last Seen:  

Hint: Use On<time> labels to set a multiplier e.g. $PVPPointsRate and then add it to the code where the points are calculated:

-	script	floatingpvp	-1,{
	$PVPPOINTSRATE = 1;
	OnMinute00:
		if (gettime(DT_DAYOFWEEK)==SATURDAY && gettime(DT_HOUR)==3){
			$PVPPOINTSRATE = 5;
		}
}

Then your code would contain something like OnPCKillEvent: PVPPOINTS = PVPPOINTS + (1 * $PVPPOINTSRATE);

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  4
  • Topics Per Day:  0.00
  • Content Count:  17
  • Reputation:   1
  • Joined:  11/08/14
  • Last Seen:  

10 hours ago, Akkarin said:

Hint: Use On<time> labels to set a multiplier e.g. $PVPPointsRate and then add it to the code where the points are calculated:


-	script	floatingpvp	-1,{
	$PVPPOINTSRATE = 1;
	OnMinute00:
		if (gettime(DT_DAYOFWEEK)==SATURDAY && gettime(DT_HOUR)==3){
			$PVPPOINTSRATE = 5;
		}
}

Then your code would contain something like OnPCKillEvent: PVPPOINTS = PVPPOINTS + (1 * $PVPPOINTSRATE);

i use this script..where will i put the + (1 * $PVPPOINTSRATE); ? thanks

-    script    mypvppoints    -1,{
OnInit:
        bindatcmd "pvppoints",strnpcinfo(3)+"::OnAtcommand";
        end;
OnAtcommand:
dispbottom "[ PvP Points ] : Your PvP Points: "+PvPPoints;
end;
 
}
 
-    script    check player    -1,{
OnPCLoginEvent:
        if(!PvPPoints) { PvPPoints = 0; PvPWarning = 0; }
        end;
}
 
-    script    PvPPointTimer    -1,{
OnTimerStart:
        sleep2 90000;
        PvPFlag = 0;
        end;
}
 
-    script    PvP Points    -1,{
OnPCKillEvent:
        for (set @i,0; @i < getarraysize(.Open_Maps$); set @i,@i+1)
        if( strcharinfo(3) == .Open_Maps$[@i] ) {
        if(PvPFlag && (killedrid == PrevKilled)) {
                PvPWarning += 1;
                if(PvPWarning >= .cons_kill_count) {
                        PvPPoints -= .deducted_points;
                        callsub L_PointCheck,PvPPoints;
                        dispbottom "You've lost "+.deducted_points+" PvP Points.";
                        dispbottom "You now have "+PvPPoints+" Points.";
                        PvPWarning = 0;
                        callsub Timer;
                }
                PvPPoints += .added_points;
                dispbottom "You've been awarded "+.added_points+" PvP Point.";
                dispbottom "You now have "+PvPPoints+" Points.";
        Timer:
                awake "PvPPointTimer";
                PvPFlag = 1;
                doevent "PvPPointTimer::OnTimerStart";
                end;
        }
        if ( killedrid == getcharid(3) ) {
                PvPPoints -= .deducted_points;
                callsub L_PointCheck,PvPPoints;
                dispbottom "You've lost "+.deducted_points+" PvP Point.";
                dispbottom "You now have "+PvPPoints+" Points.";
                end;
        }
       
        callsub AddPoint;
        attachrid(killedrid);
        PvPPoints -= .deducted_points;
        callsub L_PointCheck,PvPPoints;
        dispbottom "You've lost "+.deducted_points+" PvP Point.";
        dispbottom "You now have "+PvPPoints+" Points.";
        detachrid;
        AddPoint:
        PvPPoints += .added_points;
        dispbottom "You've been awarded "+.added_points+" PvP Point.";
        dispbottom "You now have "+PvPPoints+" Points.";
        PrevKilled = killedrid;
        PvPFlag = 1;
        doevent "PvPPointTimer::OnTimerStart";
        end;
 
L_PointCheck:
        if(getarg(0) < 0) PvPPoints = 0;
        return;
        end;
}
 
OnInit:
// Put the map you want to enable the PvP Points ( only for Option 1 )
setarray .Open_Maps$[0],"guild_vs3","geffen","morocc","prontera";
set .cons_kill_count,5; // count consecutive kill in the same player ( Default 5 )
set .deducted_points,5; // deducted points in killing the same player ( Default 5 )
set .added_points,1; // Added Points when killing ( Default 3 )
end;
}

 

Edited by Akkarin
Use codebox in future.
Link to comment
Share on other sites

  • 0

  • Group:  Forum Manager
  • Topic Count:  282
  • Topics Per Day:  0.06
  • Content Count:  3122
  • Reputation:   1614
  • Joined:  03/26/12
  • Last Seen:  

 

AddPoint:
        PvPPoints = PvPPoints + (.added_points * $PVPPOINTSRATE);
        dispbottom "You've been awarded "+ (.added_points * $PVPPOINTSRATE) +" PvP Point.";

Untested.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  4
  • Topics Per Day:  0.00
  • Content Count:  17
  • Reputation:   1
  • Joined:  11/08/14
  • Last Seen:  

11 hours ago, Akkarin said:

Hint: Use On<time> labels to set a multiplier e.g. $PVPPointsRate and then add it to the code where the points are calculated:

1 hour ago, Akkarin said:

 



AddPoint:
        PvPPoints = PvPPoints + (.added_points * $PVPPOINTSRATE);
        dispbottom "You've been awarded "+ (.added_points * $PVPPOINTSRATE) +" PvP Point.";

Untested.

en your code would contain something like OnPCKillEvent: PVPPOINTS = PVPPOINTS + (1 * $PVPPOINTSRATE);

I tried this. no error.. and the floating script. the time here is 11:30 oc in the morning.. a change Onminute:00 to 1135.. but no effect on rates..

Link to comment
Share on other sites

  • 0

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

-	script	pvp_point	-1,{

	OnInit:
        bindatcmd "pvppoints",strnpcinfo(3)+"::OnAtcommand";
        end;
		
	OnMinute:
		if ( gettime(3) % 3 == 0 ) {
			.pvp_point_rate = 5;
		}
		else {
			.pvp_point_rate = 1;
		}
		announce "PVP Point Rate = "+.pvp_point_rate+"x", bc_all;
		end;
	
	OnAtcommand:
		dispbottom "[ PvP Points ] : Total "+PvPPoints+" Point(s)";
		end;

	OnPCKillEvent:
		if ( killedrid != getcharid(3) ) {
			PvPPoints += ( 1 * .pvp_point_rate );
			dispbottom "[ PvP Points ] +"+( 1 * .pvp_point_rate )+". Total "+PvPPoints+" Point(s)";
		}
		end;

}

 

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