Forums » Suggestions

Make NPCs pay sometimes

Jan 02, 2011 Pizzasgood link
When an NPC is hailed, he should do some simple parsing of the hail message, looking for patterns that indicate he is being pirated (see last two sections of post). If he determines that he is being asked for a specific number of credits, he would compare that to the value of his ship and cargo, and perhaps other factors like the value of the overall convoy, the number of escorts, the levels of the pirate, the pirate's distance, the remaining length of the convoy's trip, how important it is for the goods to be delivered (medicine, for example), and a bit of randomness to determine whether he should pay. If he does pay, perhaps have a small chance of not paying the full value if it's toward the higher end of what he's willing to pay. If he opts not to pay, the pirate should immediately be treated as though he fired on the convoy - turrets and escorts would begin attacking him, etc.

If one member of a convoy pays, the likelihood that other members will pay anybody should be decreased. The ship that was just pirated would be treated the same way. The decrease in likelihood should be such that very few convoys will tolerate being pirated twice unless they have very expensive loot or are being asked for very small fees. So if a convoy pays me, and then they run into Vskye later, they won't be very willing to pay him since they've already cut into their profits by paying me.

If the message appears to be a pirate message but does not specify a value, and the NPC computes that he may be willing to pay if the fee is reasonable (i.e. the pirate is at a decent level, the goods are valuable, and there are few or no escorts), he should message the pirate asking how much he wants. If he gets another hail with no value, assume the pirate is out for loot and flag him as hostile. Otherwise, process the value and make a decision, as above.

If there is a player in the escort (and that player is not the one doing the pirating!) the NPC should instead message the player along the lines of "Halp! Rin Ganborro is trying to pirate me!" and put a button into the mission tab to allow the player to tell the voy to flag the pirate as hostile. (The pirate would of course still be autoflagged as hostile if he attacked them.)

If the pirate is the person doing the escort, his mission should be immediately failed, and then the piracy process would proceed as usual - but perhaps with a bias toward not paying, as he just violated their trust.

If the pirate hail is performed in a station sector and the NPC refuses to pay, he should also call the station guard for help. Perhaps the station guard doesn't always care though - this could be dependent on the player's standing with the station. Availability of the station guard and likelihood that they'll help should be factored into the decision to pay.

If in monitored space, you'd lose some faction with the NPC's faction upon sending the pirate hail (but not as much as if you killed them - maybe 1/4 or 1/3 as much). If you then kill it, you lose additional faction as usual. If the NPC you killed had paid you the requested amount, there should be an additional faction hit for the betrayal, around 1/3 of the kill penalty. So in all, if they pay you and you kill them, you'd have around 5/3 the normal faction penalty - almost twice. This is all only for monitored space of course.

If the NPC pays and the pirate attacks him anyway, regardless of monitored status, all other ships in the convoy (regardless of their current sectors) should be notified not to trust that pirate, and to consider him hostile any time they see him for the remainder of their voyage. If in grey space, perhaps have the player take a faction hit if any of the non-escort ships escapes to a station. This would only apply to killing them after a full payment. If the NPC doesn't pay or shortchanges the pirate, he would be free to attack them without consequence as usual. (If in monitored space, they would not report anything upon arrival at the station since the penalty would already have been applied.)

I realize that last paragraph might not fly with some people. I'm trying to avoid a situation where you can treat it like the current grey space voy-farming, with the added bonus of hailing them to sometimes get paid in addition to taking their loot. If they pay you in full, there should be a motivation to not kill them. This would also add an optional new type of gameplay - chasing down the stray members of a convoy you just stabbed in the back after being paid. Obviously, you would still be able to get away with this sort of thing on single-ship and smallish convoys, and it would make cheating larger convoys a more risky endeavor. It does fail when you have an accomplice however: one does the hail and accepts the money, and the other does the killing. No faction penalty. But that's good enough I think - and besides, that could encourage people to work together a bit more.

---

Determining a message is a pirate hail is as simple or complex as you want to make it. The easy way is to just look for "Yarr" or "Arr" (case insensitive) and consider it a pirate message if present. Look for the "Y" or the "A" to begin a word, to avoid triggering on words like "barrel". However, don't require it to end wit the "r", so that "Yarrrrrrrrr" and "Arrrrrg!" would still trigger.

Other phrases could also be detected such as "cut (your'?e?|yer) (engine|thrust|velocity)", but if so, the phrases used should be listed somewhere unless you make it very capable. Which would be awesome, but I'd be happy with just the simple "Yarr" and "arr" checks. I can't speak for others but I am more than willing to set all my pirate hails to include "Yarr" if it would allow NPCs the opportunity to pay me rather than be killed.

---

For determining the value, search for a number using numerals. If it is followed by "K", "thou", "thousand" or "grand", multiply by a thousand. If followed by "M", "mil", "mill", or "million", multiply by a million. All case insensitive of course. If multiple numbers are detected, use the largest. Ignore spaces and punctuation in the numbers - "100.000", "100,000", "100 000", and "100000" would all register as "100000", as would "100 K". This is to accommodate people in locations where the roles of commas and periods are reversed for numbers.

Possible exception to no-punctuation: When a modifier (K, M, mill, etc.) is used, treat a decimal points and perhaps commas as a real decimal point, to allow fees such as "1.5 million".

When multiple numbers are detected, if one is suffixed by "credits" or "c", or one is prefixed by $, £, ₤, or €, prefer it. If one number has "credits" or "c" as the suffix and one has a money symbol as the prefix, prefer the one that uses "credits" or "c". Between a number with "credits" and a number with "c", prefer "credits". In all other multiple number situations, prefer the largest number.
Jan 03, 2011 blood.thirsty link
awww poor piwates : )
Jan 03, 2011 pirren link
+1.000.000 to OP

BT: plant doesn't need credits? :]
Jan 03, 2011 vskye link
+1.
Jan 03, 2011 ryan reign link
+1
Jan 03, 2011 Alloh link
One more request to make NPCs more interactive, and complete the lack of real players...

-1 to larger convoy haulers pay anything. They are in a convoy, supposed to protect them, but
+1 to lone traders (yet to be created) and smallest (=2 ships) convoys considering pay. But they must try to hire the rat as escort for increased pay.

Anyway, good description, and AFTER CAPPIES, making NPCs more active and interactive seems priority. Miners, haulers, unrats, border patrols, smugglers, wandering cappies offering missions, Hive rat pack, whatever NPCs/Bots can pretend to do to bring life (traffic) into VO universe. Crowded sectors at capitals, and sparse elsewhere. And the convoy reorganization...
Jan 03, 2011 Dr. Lecter link
complete the lack of real players...

I feel like the lack of real players has been complete for some time now.
Jan 03, 2011 Whytee link
Nice one Lecter.

Listen, just shoot the damned convoys? I mean, not even the players are paying the rats, why would the voys? I understand your point Pizza and would applaud it if this was a single player game. But it is supposed to be a multi-player game with NPC's providing background.

Alloh, screw cappies. If you wanna play big ship captain, go EVE. Their ships are prettier.
Jan 03, 2011 tarenty link
Very well thought out.

+1:

I realize that last paragraph might not fly with some people.

Too bad. If they want an easy system to cheat, too bad. You could also allow the convoys to detect groups to prevent two people getting the cargo and money without faction penalty.

plant doesn't need credits? :]

Who needs credits? We just want more, I think. :P

Whytee, NPC's play more than the background role in VO. With such a small player base, there's no choice but to have them fill some empty spots. For now.

Alloh, screw cappies. If you wanna play big ship captain, go EVE. Their ships are prettier.

Harsh. Try Star Trek. Unfortunately true.
Jan 03, 2011 PaKettle link
Well my first thought is that if they add this then the npc should also sometimes choose to evade "known" pirates when possible.

There is considerable room to improve the npc AI.
Jan 04, 2011 Alloh link
@Whytee
I don't wanna play Eve, with its auto-everything, just-keep-paying-and-achieve skills... Instead, I want to see VO as THE reference game for other ones. A game where skills makes the difference. And remember, as cappies are, a single player in a 30Kc can easily destroy a ??Mc trident... And that Inc said this month, 01/2011, we'll become the first space-shooter-trader-miner where players really fly fighters, bombers and cappies. Or start to become it...

@PaKettle
NPCs should have memory, remember who shot them, who escorted them... and react according. If it pays a rat once, and reach its destination safely, then it pays again. If after paying it explodes, next time he evades, shoot back or yell for help in system channel.
Jan 04, 2011 ryan reign link
"NPCs should have memory, remember who shot them, who escorted them... and react according. If it pays a rat once, and reach its destination safely, then it pays again. If after paying it explodes, next time he evades, shoot back or yell for help in system channel"

+1

don't know how many times I have killed Shar the Corvus station guard and still... the poor bastard never sees it coming. At this point he really should be calling out a SF when ever he sees me.