Has anyone notised how outsized the Cobra Mk3 is?

Discussion and information relevant to creating special missions, new ships, skins etc.

Moderators: another_commander, winston

User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Simon B wrote:
Commander McLane wrote:
Ship-to-ship-communication is another long standing wish (of mine, as well). But impossible with the current game.
I'm not so sure about that - one could have a "hailing frequency" triggered by a player action ... this will be the chatty channel. Opening the hailing frequency indicates a willingness to talk... the other ships send chatty comms messages about the destination, where they've "been", pirate activity, what they are hauling, where they are going... etc. It need not be very interactive.

Sounds as scriptable as the existing comms chatter.
Well, the existing comms chatter is completely one-sided. The player can receive, but he can't send. Which is kind of besides the point of 'communication', isn't it?

So how would you actually send a message to an NPC? It seems to me that at the very least you would need a method to 'fire' a message. The only method that springs to mind is a key-press. We cannot define new keypresses via script. End of story.

The only way around would be to have the NPC start the communication, leading to the immediate display of a mission screen, which of course can handle the interaction in the usual way. BIG PROBLEM with that: You can (and will!) easily be blown to smithereens, if you are chatting on a mission screen while in-flight, and don't notice the hardpirate approaching! For this reason using a mission screen is a non-option, if you can't stop the game around you as long as you are reading (which you can't on the scripting side; and to require of the player that he hits 'P' as soon as the communication starts, then to hit it again in order to choose his answer and immediatly hit it again in order to read the next screen, and so forth, is no viable option either).
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Commander McLane wrote:
Simon B wrote:
The ability to follow through wormholes adds the intreguing possibility of ships hailing the player asking "hey buddy, you going to Kowsplat?" because they want to go there too. Then saying "thanks" if the player did, and allowed time for the other guy to catch up.
Something like this would be possible. But the player cannot communicate back in any way. He just would have to make the jump, and on the other end the NPC-ship would be re-spawned, to make it look like he followed the player.

Sounds pretty easy. Might do it as a small etude. :wink:
Oh boy, actually it isn't as easy as I first thought. The problem is, that from a script we not only can't know where an existing wormhole leads to. We can't even know which possible destination systems are in a 7LY range from our current system. Completely forgot that. Random Hits only works, because LittleBear has put this information down by hand for each of the systems in which a target could first appear!

So in order to know which Knowsplat the hailing ship could even want to go to, we first would have to set up an extensive database for each possible starting system--if you want the starting point to be random, this means for each of the 2048 planets! :shock: Just a little out of scope for a 'small etude'.

The engine, of course, has to know somehow which systems are in 7LY range. The question therefore is how easy or tricky it is to pass this knowledge to JS.

EDIT: :idea: But we can do something else, if we approach the concept from a slightly different angle.

Let's say there is a fellow captain stuck in interstellar space. He hails you and asks you to take him to any of the reachable systems by allowing him to follow in your wormhole. After doing so he pays you a reward.

If we do it like this, we avoid the trouble of having to know beforehand where the journey is going.

Okay, starting my scripting tools... :D
User avatar
LittleBear
---- E L I T E ----
---- E L I T E ----
Posts: 2866
Joined: Tue Apr 04, 2006 7:02 pm
Location: On a survey mission for GalCop. Ship: Cobra Corvette: Hidden Dragon Rated: Deadly.

Post by LittleBear »

Following any ship though its wormhole works in the native game or any OXP. Random Hits just takes advantage of this. The Game itself adds the jumping ship (including RH marks) if the player decides to follow. I was very pleased to find I didn't need to code anything in the OXP to produce this effect! :D . All the R_H code does is in AI tell the Mark to roll the dice if he's on ENERGY_LOW. He may decide to keep fighting, stop fighting and beg for his life, flee on injectors or jump. If jumping I just tell him to performWitchspaceExitWithoutReplacing and set the random_hits_mission_status variable to JUMPED. The R_H code gives the consel message telling the player to follow him. If a player docks with the variable still at JUMPED, then a mission failed screen is shown. Killing the Mark will switch the variable from JUMPED to KILLED or PODDED (if he launched a pod). Killing a pod if launched swiches the variable to KILLED if destroyed or SCOOPED if scooped. The OXP just acts on whether the variable is JUMPED, PODED, KILLED, SCOOPED, NPC_KILL or NPC_SCOOP when the player docks. The variable can only = JUMPED if the victim jumped and the player failed to follow and kill him and can only = PODDED if the mark used his escape pod and the player failed to kill or scoop it. All the fiddly stuff with chosing which system the victim has gone to and adding him at the right system is done by the core game. :wink:
Last edited by LittleBear on Fri Nov 14, 2008 10:16 am, edited 1 time in total.
OXPS : The Assassins Guild, Asteroid Storm, The Bank of the Black Monks, Random Hits, The Galactic Almanac, Renegade Pirates can be downloaded from the Elite Wiki here.
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Ah. I got distracted by Simon's mention that in the console message the hit's target system is specified.

If it is not so, then there is indeed no scripting needed at all.
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Post by Simon B »

Just for fun I followed the first anaconda leaving a station I came across... just to watch him jump.

Experienced player probably know what I discovered... yep - he went in circles around the station, leaving scanner range, then looping back. Four escorts and all.

Now - if the script is very smart, the anaconda is just trying to shake me (a possible pirate) by staying close to the station... so a watched anaconda never jumps. But I don't see how a script could do this. I suspect this is just a way to avoid having to generate many traders and still make the system look like there's lots of ships.

On the subject of jump-hitchers... you could set the hitchers to only a few systems and code the destinations by hand.

player initiated comms would have to be an additional feature. Adding "hailing frequencies" to the game. (the ability to switch off general comms traffic would be welcome... leaving emergency broadcasts.

I saw a thread where a player wanted to be able to request help... probably after observing many npc ships failing to assist. (I have seen that npcs do sometimes seem to come to my rescue.)

That amused me - though I see the difficulties. Still, an emergency beacon which gets the galcops to hurry in ... if you are not actually being fired upon though, expect a fine. Once rescued, the cops *insist* on escorting you to the station (or on your way out...) ;)

Looks like we would like to be able to script at least some keypresses, and make the entity dump available to js. Imagine the possibilities!

BTW: when that jump-hitching script is done, let me know and I'll happily try it out.
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
LittleBear
---- E L I T E ----
---- E L I T E ----
Posts: 2866
Joined: Tue Apr 04, 2006 7:02 pm
Location: On a survey mission for GalCop. Ship: Cobra Corvette: Hidden Dragon Rated: Deadly.

Post by LittleBear »

A distress beacon from Missiles and bombs will allow you to call for help. Police and Bounty hunters AI's do listen for distress calls and it will get them to the area where the call came from. Their AI also looks for crimes being committed and offenders so once the call has got them there, they render help. However, the AI will usually pick the worst offender to attack. Criminal commanders shouls take care in using a distress beacon. It'll call the Cops, but if you're a fugitive being attacked by offender pirates, the Cops may decide to join the pirates in killing you and then mop up the offenders!
OXPS : The Assassins Guild, Asteroid Storm, The Bank of the Black Monks, Random Hits, The Galactic Almanac, Renegade Pirates can be downloaded from the Elite Wiki here.
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

I am no expert as far as AI is concerned. But usually a launched trader should jump out (there were even a lot of complains that in 1.71 they would jump even before they reached at least the beacon!). And all his escorts follow him. If you enter the wormhole, you will find them all at the other end, slowly regrouping and then going to the planet (or, by a small chance, to the sun). That's the usual behaviour.

There may also be some other traders who head for the witchpoint instead of jumping out at once. Would be interesting to know which AI your Anaconda actually had.

Anyway, I would advise you to hang around just a little longer next to the station. You should be able to watch plenty of traders hypering out.
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6554
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

As Commander McLane says, trader ships departing from station will hyper out and their escorts will follow. There are no tricks in Oolite to make space look busy. SimonB, can you try to remove all OXPs and test trader behaviour when they leave station? You should be able to watch them hypering and escorts following, even without having to wait around too much. If, without OXPs, they still behave as described, please target the mis-behaving vessel and press Shift+H to create a dump of its status in the logfile, then post the contents of this file.
User avatar
Super Jamie
Above Average
Above Average
Posts: 19
Joined: Tue Nov 11, 2008 7:24 am
Location: Brisbane, AU
Contact:

Post by Super Jamie »

Simon B wrote:
Particularly viper-pursuit craft should occasionally chase a fugitive through witchspace. Same with hunters, and aggressive pirates.
I beg to differ. A Viper is a system craft. Police from one jurisdiction do not chase criminals into other jurisdictions.

But they will radio ahead, this is where you have to use your imagination :)
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Commander McLane wrote:
Commander McLane wrote:
Simon B wrote:
The ability to follow through wormholes adds the intreguing possibility of ships hailing the player asking "hey buddy, you going to Kowsplat?" because they want to go there too. Then saying "thanks" if the player did, and allowed time for the other guy to catch up.
Something like this would be possible. But the player cannot communicate back in any way. He just would have to make the jump, and on the other end the NPC-ship would be re-spawned, to make it look like he followed the player.

Sounds pretty easy. Might do it as a small etude. :wink:
<...>

EDIT: :idea: But we can do something else, if we approach the concept from a slightly different angle.

Let's say there is a fellow captain stuck in interstellar space. He hails you and asks you to take him to any of the reachable systems by allowing him to follow in your wormhole. After doing so he pays you a reward.

If we do it like this, we avoid the trouble of having to know beforehand where the journey is going.

Okay, starting my scripting tools... :D
Okay, it's done. Have fun with interstellar_help.oxp. :wink:

How do you like it, Simon B?
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Post by Simon B »

Cool - now how do I trigger a misjump?

There's a bunch of stuff like this - is there anything keeping score on a kind of karma-meter?
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
goran
---- E L I T E ----
---- E L I T E ----
Posts: 294
Joined: Sat Feb 23, 2008 12:32 am
Location: Zagreb, Croatia
Contact:

Post by goran »

Simon B wrote:
Cool - now how do I trigger a misjump?
Go to full pitch just before hyperjump. ;)
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

gorans wrote:
Simon B wrote:
Cool - now how do I trigger a misjump?
Go to full pitch just before hyperjump. ;)
In my experience it's more the roll than the pitch that triggers the misjump. But I am doing both, anyway.
Post Reply