Proposal
Change random-spawning Criminal/Hero/Navy NPC targeting to not target players who are comparatively low level.
Details/background on your proposal
In their current form, randomly spawning NPCs are flawed. Not necessarily flawed in their function (they function pretty well, all things considered), but in their targeting system.
My proposal is to make bounty/fame NPCs not attack the player IF the player is:
A. 50% underleveled relative to the NPC (e.g. level 25 player and level 50 npc)
OR:
B. 75+ levels under the npc (e.g. level 100 player and level 175 npc)
When a player who fulfills these conditions moves into the line of sight of an NPC, a timer that is visible through walls will appear above the NPC’s head, counting down from 15, and the NPC will say a dialogue line. The timer will appear where the (!) appears when an NPC is aggroed. If the player does not leave the line of sight of the NPC, they will attack, the timer being replaced with an (!). Additionally, the NPC will instantly aggro if the player starts charging an attack in the NPC’s line of sight.
Rivals will also instantly aggro onto their assigned players.
Possible dialogue lines
(note: LL = low level)
Criminals:
Insane (Encounter): “HAHAHAHA! Fresh meat! Oh, wait, you’re too weak. It’s boring when the weak ones come.”
Insane (LL Aggro): “Well, if you really want to be killed, I won’t refuse! HAHAHAHA!”
Distant (Encounter): “A bounty hunter? You can’t possibly be one, you look much too weak. Leave my presence immediately.”
Distant (LL Aggro): “You really are a bounty hunter, then? Prepare to die.”
Hotheaded (Encounter): “You, collect my bounty? Hah! I can’t possibly train my skills with how pathetic you are!”
Hotheaded (LL Aggro): “On the other hand, you might put up a fight! Show me what you’re made of!”
Ego (Encounter): “You dare to intrude on my presence? I’m feeling merciful today, leave and I may spare you.”
Ego (LL Aggro): “You refuse to leave? Then you must accept death.”
Rude (Encounter): “Such a weakling. I would even feel bad for crushing this one…”
Rude (LL Aggro): “On second thought, I’d like to see your strength. You’d never be able to defeat me, anyways!”
Heroes:
Chill (Encounter): “Hm, a criminal… You seem awfully weak… Go away and I’ll pretend I didn’t see you.”
Chill (LL Aggro): “On second thought, that extra paycheck would be nice… I won’t be holding back…”
Hotheaded (Encounter): “Aha! A criminal!.. Ordinarily I would fight, but you seem incredibly weak, so I will refrain if you leave.”
Hotheaded (LL Aggro): “If you really want to fight, I’ll beat you and turn you into the Navy myself!”
Positive (Encounter): “A wanted criminal? I would fight, but you seem so weak, it would damage my honor if I were to…”
Positive (LL Aggro): “Well, if you want to challenge me, I won’t back down! I’ll fight you with all my strength!”
Rude (Encounter): “A criminal, huh. I don’t think you’re on my level, so I’ll let you go if you leave right now.”
Rude (LL Aggro): “If you really want to fight, I won’t refuse your bounty. Prepare to die!”
If Vetex wishes to implement more punishments for villains, he can refuse to implement protections for heroes from aggroing, as they would not attack very low levels (who are restricted to good rep) anyways.
Additionally, this would not apply to randomly spawning Navy NPCs, as they are comparatively rare and do not speak. Additionally, it would not make sense for them to, as their entire job is to capture criminals.
Reason to add/change
The way it currently is, it drives people away from the game to, say, visit Limestone Key for a quest at Palo Town and instantly be vaporized by someone’s level 260 rival. This change would implement protections in a reasonable way, preventing people from fighting incredibly high level npcs unless they were really intending on a fight (e.g. for a treasure chart).
This change would drive fewer players away from the game, and cause those that do not leave to believe it was the fault of themselves for not hiding from the NPC and not of the game for placing the NPC there.
TL;DR
Random-spawning NPCs no longer attack people who are much lower level than them, saying something like “You’re too weak,” unless the player stays around them for too long or shows an intent to fight, at which point they say something like “I changed my mind” and aggro.