Page 1 of 1

Any benefits in flying near/with other ships?

Posted: Wed Dec 06, 2006 5:40 pm
by AndySlater
So I'm on my way to Erlaza and I'm not in a good mood because I've just realised that I've sold the furs I was carrying (I meant to top them up) at Zaalela. :roll:

I decide to fly in along the main route and see what I can pick up along the way and the first thing I meet is a Boa with four escourts. Now it strikes me that if I join them I might see a bit more action but at the same time I wouldn't have to deal with it entirely on my own. Sure enough, within minutes there's a Fer-de-Lance shooting at us.

Erm... did I say us?

I'm a Python in formation with a Boa and four escourts and he's completely ignoring the others and has locked on to me. What's more, when I turn to deal with him, what to the others do? They go on their own sweet way leaving me to deal with him on my own. B*****ds!


The Fer-de-Lance suffered the consequences and having picked up the ton of luxuries that he left me in his will, I'm following the Boa back to the space station. I'm wondering whether to rejoin them and give them an energy bomb as a token of thanks for their assistance when one of the escourts breaks formation and heads off at 11 o'clock. The others soon follow and I realise that they are under attack from a Python and a couple of smaller ships.

The next thing I know, the Boa is on the radio asking for help!

Yeah. Right. Count the fingers mate. :lol:



Anyway, finally, the point to this, other than (I hope) giving you a laugh:

My experience here indicates that there might be a little security to be gained from flying near to other ships, but 'joining' them seems to be a bad idea. Does that sound about right to you?

Posted: Wed Dec 06, 2006 6:10 pm
by grouchy
Yes. I like to do a few different things.

-Watch the other groups to see if they get jumped and earn some kills.
-Follow along behind and wait until a few are blown up and scoop cargo.
-Wait for the pirates to arrive and pop off an energy bomb on everybody.
-Turn the other direction and get them off my scan so I can drive faster.

Posted: Thu Dec 07, 2006 12:20 am
by LittleBear
Depends on the type of ship. A trader will not give you any help at all unless the pirates also attack him. A bounty hunter may well join in on your side and the police will do (usually, if they are not too scared and you are clean)!

Posted: Thu Dec 07, 2006 9:25 am
by ramon
LittleBear wrote:
and the police will do (usually, if they are not too scared and you are clean)!
The police must always be scared then when I've been in scraps because I've never had them come to my aid, not even in the S zone!

Posted: Thu Dec 07, 2006 10:12 am
by LittleBear
They don't come to your aid as such, but they do have a "scanforoffenders" in their AI which makes them attack offender vessals. This is what causes them to take pot shots at the player when he is an offender. I wrote an alternative police AI which is used in Assassins by Special Branch that includes scanforshipwithrole : pirate, scanforshipwithrole: thargoid, which makes the cops a bit more useful, as then they attack pirates and bugs on sight. Adding this code to route1patrolAI would make them a bit more attentive in their duties

Posted: Thu Dec 07, 2006 11:41 am
by AndySlater
I'm going to have to take a look at the code when I have time to spare; it sounds like it's a really nice piece of work.

Back to the subject though: has anybody got a tactic for 'forcing' other traders to join in. Given what's been said, it strikes me that if I'd been in REALLY close to the other ships and a stray shot from the Fer-de-Lance had hit one of them...

I also think perhaps I was unlucky that the Fer-de-Lance chose to attack me as opposed to one of the other five ships. I was fairly close to the other ships and was not the nearest ship to the Fer-de-Lance. Was I just unlucky or is there some reason why he might single me out? Surely he's not smart enough to realise that I wasn't a part of the group that the others would defend?

Posted: Thu Dec 07, 2006 12:10 pm
by LittleBear
Yep he is! :twisted:

Pirates use a "scanformerchenmen" (traders, miners and the player), they then use a "Oddsgood" / "Oddseven" "Oddsbad" to decide if they attack and who. The pirates are "smart" enough to "know" that a ship with the role "escort" will defend its mother. To put it in plain English:- That fer-de-lance considered attacking all the ships it saw, but it knew that if it attacked the convoy it would have to deal with the the Traders escorts as well as the Trader if it attacked him. When it scanned you, it knew you were without escorts and so chose to attack the easier prey (ie you!).

If he had a few wing-men, he might have decided that his side was well enough equiped to make attacking the convay (bigger risk but better rewards) worth it! (done with random numbers against an Odds risk)

If he had missed his intended target (you!) and hit the Trader, then the trader would have responded. He consults his own AI to decide how to respond, but having cowardly TraderAI he might have decided to run for the planet rather than returning fire or he might have returned fire on the fer-de-lance. The Escorts would probabley have attacked the fer-de-lance (as their AI is pretty brave - Someone attacking our mothership - Get Him, even if Mum runs away!). Had there been some cargo pods lying about the Fer-de-lance would probabley not have attacked at all and scooped the free cargo, rather than risk a fight (as his AI also includes a scanforloot, found = setstate to scooploot). Equally had his hold been full, he would have gone to the Station to sell his ill-gotten gains, as he "knows" that there is no point blowing up a trader if you can't scoop his stuff! (done in code by a simple HOLD_FULL = switchAI to route1taderAI)

Obviosuly it's Giles's code that does all this, but us players can write AIs that the code will follow. You then assain this to a new ship you have built to make it behave as you want. If you want your ship to be a typical pirate / policeship / miner / escort etc, then you just give it one of the native AIs. Fiddiling with Oolite is almost as much fun as playing it!

Posted: Thu Dec 07, 2006 5:59 pm
by AndySlater
That's awesome.
I am lost for words.

Posted: Thu Dec 07, 2006 6:13 pm
by LittleBear
The best bit is Giles's code does it all. As a Dev you just write a real easy .plist! 8)

Want a ship to be a cop-killer! Then you just type in the .plist:-

Code: Select all


"LOOK_FOR_TARGETS" = {
ENTER = (switchLightsOff, "scanForNearestShipWithRole: police");
        "ATTACKED" = (setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP"); 
        "INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP"); 
		"TARGET_FOUND" = (setTargetToFoundTarget, "setStateTo: ATTACK_SHIP"); 
        	"NOTHING_FOUND" = ("setStateTo: HEAD_FOR_PLANET"); 
EXIT = ();
	UPDATE = ("scanForNearestShipWithRole: police", "pauseAI: 1.0");
	};

Giles does all the fiddly stuff for you![/code]

Posted: Thu Dec 07, 2006 9:21 pm
by Judebert
I've been looking at another open-ended space game, Vega Strike. Unfortunately, to mod it, you need to learn Python. While I can probably do that, a lot of the talented folks in this forum have been saying that the low entry requirements is the reason they started modding Oolite. And we've gotten some FANTASTIC stuff from these folks.

I suppose there's room in the universe for two Elite games. Oolite is the one that allows everybody to contribute. And that's making an interesting game.

Posted: Tue Dec 12, 2006 12:24 am
by Arexack_Heretic
Amen!