Jump to content

The 'Fine then, you fix it!' PVP thread.


Kietaro1

Recommended Posts

I consider it too complex for PvP. I like the simplicity in PvP. Even now it is becoming too complicated. I'd be glad if PvP was how it was a couple months ago. Dim down the drop rates, remove teleports from Bounty Worlds, remove the ridiculous artifacts, and remove the previous PvP updates from last week. Heck, even keep the updates from last week if you liked them. They're just layering update upon update to try and fix each previous update. They should just cut the head off the beast (artifact update) rather than growing it more heads. -.-

91215531.png

 

Poetry

Indexed Picture 1

Indexed Picture 2

 

Killed my maxed Zerker pure April 2010

 

Rebooting Runescape

 

91215531.png

Link to comment
Share on other sites

@Kietaro1: I looked at the pseudocode you provided, and I must say I absolutely fail to understand your purpose. Were you trying to create an elaborate set of rules for PvP, or what? If that's your intent, that's a horrible way to go about it.

 

 

 

We need simple rules. As simple as simple can be. I'll write something when I get back in, but it shouldn't be mammoth to create a rule for "epic fight".

Linux User/Enthusiast Full-Stack Software Engineer | Stack Overflow Member | GIMP User
s1L0U.jpg
...Alright, the Elf City update lured me back to RS over a year ago.

Link to comment
Share on other sites

I am sorry, my intention was not meant to be confusing at all. To me the code is pretty sraight forward but in an attempt to not just throw code around, I tried to make it readable.  If I had written it entirely in C++ which is what I would have preferred, it would have been much less readable by most.  If you will, I will explain what that code does very simply.

 

 

 

The current combat code would not be altered at all.  Everything that exists now would in my code.  The only additions would be tests made to see if potions, combat prayers, or combat tablets.  These additions would be made to potion, prayer, and combat tab usage and not interfere with the combat tests at all.  It would only register IF they were used or if stats had altered effects of potion use.  Pretty simple if you ask me.

 

 

 

Then AFTER the fight has ended, when the program would determine the drop, the calculations for worth would be made.  There are no nested If:Then statements, nor any loops of any kind.  It is very straight forward and would run very quickly as the majority of the code is simple addition. The following would basically occur:

 

 

 

Did the victor have the same or lower combat level?

 

Did both players contribute enough to damge done?

 

Was the battle too long or too short?

 

Were multiple classes used?

 

Did the players use potions?

 

Did the players use prayer?

 

Did the players use combat tablets?

 

Did the players heal? - though I forgot this earlier.

 

 

 

Did the victor use combat bonuses to their advantage?

 

Did the victor do sufficient damage to the other player?

 

Did the victor have a higher combat level?

 

 

 

Tally combat checks to determine additions to worth.

 

 

 

Add bonuses for Rogue and Bounty Hunter kills.

 

Determine which token the player should receive based on the value of WORTH.

 

 

 

---------------------------

 

This small bit of programming would allow the program to determine if the player should be rewarded with a token of one sort or another. It is very simple and would add very little to the current code. All the code that I provided would do is serve as a way to check to see if the kill deserved a reward. I am sure the current code is much more complex in deciding drop tables and what not. Mine would eliminate all of that code and replace it with a few lines of code that would determine if the player actually had to try during the fight. Other than the bad code-to-English translation I posted, I'm not sure how that is difficult or how one would defend it being slow.

Kiettaro.png

090108162337qa2zd0.png

Link to comment
Share on other sites

Aside: I can understand C++ far better than that pseudocode. If you posted it, and someone didn't understand, some techie/programmer would have happily translated it.

 

 

 

Looking at your clarification, I view that to be far too complex to award stuff. Let's stick with what we already know - a random number generator + drop tables - and then build on from there. We're trying to keep it simple.

 

 

 

Let's assume that our random drop list is of length 255, and the only way to reach the items that you're discussing (let's put them in the table at positions 250-255, feel free to expand/contract as appropriate) is to have two values - the first being the obviously randomly generated number, and the "award" values as well. Without the award values, the random generator can never hit the high values.

 

 

 

Warning: Math/Java to follow

 

 

 

int awardValue = -5; // Assuming that we're using the top five spots here, keep it negative depending on how many spots you use at the top

 

 

 

---

 

 

 

I'll take a break from code talk to explain four specific rules that would greatly aid PvP:

 

 

 

1) Running to safety after engaging in a number of rounds, be this by teleportation or stepping out of the wild = 0% EP. End of discussion. No more reward.

 

2) Using special attacks in rapid succession reduces the chance of you getting a decent drop (awardValue is affected by this).

 

3) Defeating an opponent in an "impressive" way (using no food, 3 hits, chasing them down, few or no specials, or dealing the highest damage in a shorter span) increases the chance of you getting a decent drop.

 

4) Killing your target gives you access to greater rewards, but only if they were in combat with you in gear they could wield. This avoids players PKing in useless gear with a set of Rune to give you awards.

 

 

 

How we implement the aforementioned methods is totally irrelevant.

 

 

 

---

 

 

 

int potential = 255; // Used to determine how worthy you really are.

 

 

 

int prize = (int)(potential * Math.random() + (awardValue));

 

 

 

As it stands the possible values that we can achieve (assuming awardValue is still -5) would be [0, 249).

 

 

 

---

 

 

 

A good idea would be to move the higher valued drops (high valued icons, etc) to the highest end of this generator, and determine the chance that they have to get the drops based on awardValue.

 

 

 

---

 

 

 

But we're getting away from the crux here. The idea is to make the system simple. Punish them for PJing, punish them for teleporting, and punish them for running away when they're about to get owned. That's all there is, really - and award them sufficiently enough to satisfy them - meaning give them probably 1/3 of what their opponent had (330K if they had anything over 1M) and some arbitrary value either rewarding or punishing them for their conduct in battle.

 

 

 

[And no, safing wouldn't be punished. Sorry, pures. :P]

Linux User/Enthusiast Full-Stack Software Engineer | Stack Overflow Member | GIMP User
s1L0U.jpg
...Alright, the Elf City update lured me back to RS over a year ago.

Link to comment
Share on other sites

So perhaps it would be best to start with no assumed idea so forget mine for the time being, though I really like mine. Let us instead think about what makes PvP fun and what would make it better. Also as a side let us think about what should affect the worth of a drop as opposed to the current EP system.

Kiettaro.png

090108162337qa2zd0.png

Link to comment
Share on other sites

What language is that? Pseudo-Basic-Java++? Just joking. A massive row of If-statements = much lag tho. Wouldn't exactly call it efficient(if it had to run all those checks constantly it's execution time would be terrible)

 

 

 

No, actually it wouldn't. If statements are constant time in the world of algorithmic analysis - O(1) (Big Oh of One) if you care to know.

 

 

 

The only thing you really have to worry about are loops. That code would be very quick, assuming direct memory access (ie, no database calls).

Link to comment
Share on other sites

@Makoto_the_Phoenix: how is my code not simple by the way? Mine would determine if a drop is deserved while your code would determine the drop.

 

 

 

 

 

 

 

 

 

 

 

 

 

But is coding really what we are going for? I only offered mine as an example, not really a means to an end.

Kiettaro.png

090108162337qa2zd0.png

Link to comment
Share on other sites

I think that you are focusing on the wrong part of the message I was trying to put across. I am a bad programmer, I admit that but I could write the checks very easily so I am sure that Jagex could do it better. A program like that one would run very quickly though. It is less than 50 lines of code and very easy to execute as there are no loops at all. Just runs straight through.

 

 

 

But anyway, the code concepts would not be that difficult.

 

 

 

Well when he was referring to "simplicity" he did not mean from a coding point of view, but from a player's rule point of view.

 

 

 

A system where (player A) kills (player B) and gets (loot drop #1) is simplicity.

 

 

 

A system where (player A) kills (player B) and if he has a certain amount of (product Z) and (conditions Y or X) is met, then they get (loot drop #1), but only if (R and F) are nearby and if (situation G) happens then they get teleported randomly, is just way to complex.

 

 

 

 

 

A simliar system to the one you suggested was actually on the forums shortly after the wildreness was taken away but there were a few major flaws to a system like that.

 

#1) Its just to complex a system and turns it into a chore just to understand the rules.

 

#2) Players like to see drops/loot on the ground. Single item drops and drops in the form of points were a big turnoff.

 

#3) The more rules you add, the more chances you have to make a loophole for something else.

 

 

 

Making all those rules to make every drop profitable and such is just to complex and it's leading Jagex down the wrong path. That being said.. what do we do about it?

 

 

 

Well like what was said before, "simplicity".

 

 

 

Firstly, EP needs to go. Its not in the spirit of pk'ing. You come to PvP worlds to kill others, not stand around to get "points" built up to gain drops. So the whole EP system is the first thing that needs to get removed.

 

 

 

Secondly, since EP is removed, you can now allow the protect item prayer to be used. On normal PvP worlds, the skull system works the same as the old wilderness. You protect 3 items unless you attack someone, and then skull to keep none. You may use protect item to keep one item.

 

 

 

On Bounty hunter worlds, you are no longer assigned a target, but rather cannot use protect item and are auto skulled upon logging in. Bounty hunter worlds are simply for people who like to PvP in a high risk environment where no items are kept under any circumstances. Protect item does not work on Bounty hunter worlds.

 

 

 

Thirdly, drops are split into 2 parts. A normal drop, and a bonus drop.

 

 

 

The normal drop is a random 20-70% for each individual item from your opponent which was lost upon death. The 20-70% is always random and has no other factors to determine it. This is to ensure no-one can manipulate it. You kill someone, the dice rolls between 20 and 70. If it rolls a 50, each individual item has a 50% chance to be given to you. Pretty simple.

 

 

 

The bonus drop is composed of items such as pvp armor, pvp weapons and brawlers. These items are randomly dropped for "impressive" kills. Any kill where your opponent looses 1m or more of value in items, you have a chance to be rewarded with one of these items. Because your opponent must lose 1m or more, it is not possible to farm these items.

 

 

 

So if you make a normal kill, you might get some of your opponents items. If you make a impressive kill worth a large amount, you have an additional chance to obtain "pvp special drops". If you die, you should not be rewarded for anything.

 

 

 

This system is simple, and keeps the concepts simple.

dawnsigblue-3.png
Link to comment
Share on other sites

@Kietaro1: The reason your code is not simple is because it determines whether or not you deserve a drop, not what kind of drop you get. The magic of random number generators is that we could put values at arbitrary locations (1, 2, 36, etc), and let that decide if they deserve a drop - no NPC has more than 64 or so drops, if I'm not mistaken, so 255 slots is plenty of room to determine if they deserve a drop or not.

 

 

 

Also, it's for the reasons that Brianite highlighted, which I'm getting to right now.

 

 

 

I think that the system that Brianite proposed is great, but there are a few fatal flaws to it.

 

 

 

1) EP should not be nuked, but it should be hidden and the rules to gathering it should change, to prevent system manipulation. It's a good thing to have some kind of potential.

 

 

 

2) Targets should not disappear in Bounty Hunter. That's the point of it all, really. Instead, if you kill your target, you greatly improve the chances of you getting into that second drop table.

 

 

 

3) Protect item needs to stay gone. If you enable it on PvP worlds, you'll have PJers, rushers, and all manners of folk that many PKers were glad to be rid of, once and for all.

 

 

 

Otherwise, that's the "simplicity" that needs to happen.

Linux User/Enthusiast Full-Stack Software Engineer | Stack Overflow Member | GIMP User
s1L0U.jpg
...Alright, the Elf City update lured me back to RS over a year ago.

Link to comment
Share on other sites

@Makoto: I guess it comes down to where we think that the PvP system is flawed. It is my opinion that PvP should only reward those that have earned reward. If a player were to continually kill players with no armor, grief skillers, pj, do nothing, etc then I do not believe they deserve any type of reward. Doing so brings about things such as the system that we currently have. If we were to map out what PvP should be we might end up with the basics being something like the following:

 

 

 

-Only those that do well should be rewarded.

 

-PvP cost money so should allow a pvp-er the chance to at least break even.

 

-Drops should be relative to the kill meaning no more gold than what the dying player lost should enter the game - or neither player would gain or lose anything for each kill. Instead they should earn it by being successful.

 

-PvP is not about experience in a rs skill but instead about being better than the other player. The system should reflect that.

 

 

 

I am sure there are more basics but for what I will be talking about these are what I will build upon.

 

 

 

First if you suck at PvP why should you get anything? If you cannot defeat other players in legitimate combat bound by whatever rules, why should the system reward you? I am sure that most will agree. As a result we need something to tell if a player deserves a reward. That is where I derive the need for 'worth' or impressiveness of the kill. Without some system for these checks any player that engaged in combat could be rewarded. Again we end up with the mentality of the current pvp-ers. We also see a drastic decrease in the skill needed to be successful making pvp not nearly as fun (which in my opinion is what should matter and not ability to profit).

 

 

 

Secondly we see a definite need for the player to be able to continue to afford to PvP. As a result of the players using potions, food, runes, arrows, etc, the player will need a way to replenish what is lost. Under my system armor would not be an issue, nor would RWT as you would not drop any tangible wealth. Instead players would only lose consumables during fights. These could become expensive if the player sucks at PvP but that would go back to clause one. If the player was decent at PvP and could hold their own, they could use the tokens to replenish what they use. And lastly, if a player was good at PvP they would have excess tokens to spend on things that would be their profit. Thus the system would reward the players that could PvP based on how successful they were. This would rely on fights giving proof of the skill needed.

 

 

 

And lastly PvP is supposed to give players the chance to test their skills and abilities against other players. THAT IS IT! It should not be based around profit, experience gains, nor standing around doing nothing. As a result it should be fun and engaging. My system of added combat would provide increased skill need as it would no longer simply be - pot up, turn on prayer, engage someone in a fight, wait, eat, pot, cast vengence, use special, wait... that is not any fun at all. People only do it because that is what they have. If we look at succesful PvP in other games, runescape needs some sort of increased player interaction.

 

 

 

Providing a way to break even, allow players the chance to develop PvP skills (as you could just fight in armor at no cost - with reduced or no rewards), rewarding effort, and making it more enjoyable are in my opinion the only way we will be able to create a PvP that would replace the current system successfully.

 

 

 

To me, everyone benefits from my purposed idea. Now as to the complexity of my purposed rules, I think it is better that way. If you are not getting good rewards for not making impressive kills, it would entice the player to get more impressive kills. This would get rid of 'hugging' and lead to better PvP-ers overall. Again why reward no effort?

Kiettaro.png

090108162337qa2zd0.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.