A Pirates Joice
Moderators: winston, another_commander
- Commander McLane
- ---- 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:
Thanks, LittleBear,
I try to download BlackMonks and have a look into the code. Perhaps that can resolve the station issue. And perhaps the problem is with the original rockHermit.AI? Have no idea how rock hermits react when attacked.
As for the ship I DID give them a custom role (lizardophobe) and and a custom AI (lizardophobeAI), that works fine except that they head towards the planet instead of towards the witchpoint. (And they are not related to the Hacker Outpost, but from another OXP).
I try to download BlackMonks and have a look into the code. Perhaps that can resolve the station issue. And perhaps the problem is with the original rockHermit.AI? Have no idea how rock hermits react when attacked.
As for the ship I DID give them a custom role (lizardophobe) and and a custom AI (lizardophobeAI), that works fine except that they head towards the planet instead of towards the witchpoint. (And they are not related to the Hacker Outpost, but from another OXP).
- Arexack_Heretic
- Dangerous Subversive Element
- Posts: 1876
- Joined: Tue Jun 07, 2005 7:32 pm
- Location: [%H] = Earth surface, Lattitude 52°10'58.19"N, longtitude 4°30'0.25"E.
- Contact:
- Commander McLane
- ---- 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:
I resolved the hackerStationAI-problem. It turned out it wasn't the AI at all, but in the shipdata I had c&p'd another entry to make up the defense_ship_role-key. And then it read <integer>pirate</integer>. Stuuuuuupid!
After I finally discovered that (and believe me, I would have sworn that in shipdata everything is alright, and I had gone through it quite some times) everything works just fine.
After I finally discovered that (and believe me, I would have sworn that in shipdata everything is alright, and I had gone through it quite some times) everything works just fine.
- Dr. Nil
- ---- E L I T E ----
- Posts: 983
- Joined: Thu Sep 28, 2006 5:11 pm
- Location: Nearest Hoopy Casino
- Contact:
I know how that feels. I spend three days trying to figure out what was wrong with the Ore Processor when first constructing it. I had a lot of help, but nothing could get it to work right, until LB suggested that the problem might be me like-shipping something to a role instead of an entity key
300 billboards in Your Ad Here!
Astromines and more in Commies.
AVAILABLE HERE along with other Oolite eXpansion Packs.
- Commander McLane
- ---- 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:
The Hacker Station now spills out a couple of defense-ships, but I'm still not too happy with how these ships behave. I called them with pirateAI, expecting they immediatly would got after me, but they don't. hardpirate.AI is also not a good idea, because if I kill them chances are that they will blow the whole station up--not a very good defense. I don't want to give them a police AI (hey, they are outlaws, they won't fine me).
So I was just wondering whether somebody has had a similar problem and perhaps wrote something like defendStation.AI, that I could use?
So I was just wondering whether somebody has had a similar problem and perhaps wrote something like defendStation.AI, that I could use?
- Arexack_Heretic
- Dangerous Subversive Element
- Posts: 1876
- Joined: Tue Jun 07, 2005 7:32 pm
- Location: [%H] = Earth surface, Lattitude 52°10'58.19"N, longtitude 4°30'0.25"E.
- Contact:
IMHO the best way to get defense ships is to
define number and type in the hermit-shipdata,
set hermitAI to settargettoPrimaryagressor when attacked and have it performAttack.
as the hermit has no offensive capability (usually), it should launch defenseships.
These defenders inherit some of the states of the 'mothership', among which the primary target.
using interceptAI should have them attacking whatever target they are launched against and return them once it is destroyed.
(they may go on patroll instead, so some modification maybe needed.)
define number and type in the hermit-shipdata,
set hermitAI to settargettoPrimaryagressor when attacked and have it performAttack.
as the hermit has no offensive capability (usually), it should launch defenseships.
These defenders inherit some of the states of the 'mothership', among which the primary target.
using interceptAI should have them attacking whatever target they are launched against and return them once it is destroyed.
(they may go on patroll instead, so some modification maybe needed.)
Riding the Rocket!
- Commander McLane
- ---- 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:
@ Arexack: Thanks, I'll try that out. But still, if there is a ready-made defendStationAI somewhere out there, I'd like to know.
Another question:
For the Hacker Outpost and the Salvage Gang I wanted to have something bigger than a Rock Hermit. Actually I envision them living IN the asteroid, not in a hut standing on it. So I took the two Large Asteroids out of Asteroid Storm and positioned docking slids in them. Works fine and looks nice and big.
But of course I want to ask: Charlie, do you mind me using your asteroids in this way? I hope not.
Another question:
For the Hacker Outpost and the Salvage Gang I wanted to have something bigger than a Rock Hermit. Actually I envision them living IN the asteroid, not in a hut standing on it. So I took the two Large Asteroids out of Asteroid Storm and positioned docking slids in them. Works fine and looks nice and big.
But of course I want to ask: Charlie, do you mind me using your asteroids in this way? I hope not.
- Arexack_Heretic
- Dangerous Subversive Element
- Posts: 1876
- Joined: Tue Jun 07, 2005 7:32 pm
- Location: [%H] = Earth surface, Lattitude 52°10'58.19"N, longtitude 4°30'0.25"E.
- Contact:
Sure, good idea.
Hermits are only in small asteroids, because those were the standard asteroids of the day.
The background story says, hermits hollow out exceptionally large asteroids. The models just weren't around back then.
I hope there is a little bit more to see than just the dock....
Just look at how the piratecoves' hermit-pirate AI works, that should fix most problems I think.
Hermits are only in small asteroids, because those were the standard asteroids of the day.
The background story says, hermits hollow out exceptionally large asteroids. The models just weren't around back then.
I hope there is a little bit more to see than just the dock....
Just look at how the piratecoves' hermit-pirate AI works, that should fix most problems I think.
Riding the Rocket!
- Arexack_Heretic
- Dangerous Subversive Element
- Posts: 1876
- Joined: Tue Jun 07, 2005 7:32 pm
- Location: [%H] = Earth surface, Lattitude 52°10'58.19"N, longtitude 4°30'0.25"E.
- Contact:
piratecoveAI:
Code: Select all
{
"ATTACK" = {
"ATTACKED" = (setTargetToPrimaryAggressor, increaseAlertLevel, groupAttackTarget, launchPirateShip, "pauseAI: 10.0");
"ENTER" = (increaseAlertLevel);
"EXIT" =();
"INCOMING_MISSILE" = (fireECM, increaseAlertLevel);
"NO_TARGET" = ("setStateTo: IDLE");
"RED_ALERT" = (launchPirateShip, "pauseAI: 10.0");
"TARGET_DESTROYED" = ("setStateTo: IDLE");
"TARGET_LOST" = ("setStateTo: IDLE");
"UPDATE" = (launchPirateShip, groupAttackTarget, "pauseAI: 10.0"); };
“GLOBAL” = {
“ENTER” = (“setStateTo: SCAN_PREY”); };
“IDLE” = {
“ATTACKED” = (setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“CONDITION_GREEN” = (“setStateTo: SCAN_DEBRIS”);
“ENTER” = ();
“EXIT” = ();
“INCOMING_MISSILE” = (fireECM, setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“UPDATE” = (“pauseAI: 20.0”, decreaseAlertLevel); };
“SALVAGE” = {
“ATTACKED” = (setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“ENTER” = (launchScavenger, “pauseAI: 20.0”);
“INCOMING_MISSILE” = (fireECM, setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“NOT_FOUND” = (“setStateTo: SCAN_PREY”);
“TARGET_FOUND” = (launchScavenger, “pauseAI: 20.0”);
“UPDATE” = (scanForLoot, “pauseAI: 20.0”); };
“SCAN_DEBRIS” = {
“ATTACKED” = (setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“ENTER” = (scanForLoot, “pauseAI: 5.0”);
“INCOMING_MISSILE” = (fireECM, setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“NOTHING_FOUND” = (“setStateTo: SCAN_PREY”);
“TARGET_FOUND” = (setTargetToFoundTarget, “setStateTo: SALVAGE”);
“UPDATE” = (scanForLoot, “pauseAI: 5.0”); };
“SCAN_PREY” = {
“ATTACKED” = (setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“ENTER” = (scanForRandomMerchantmen, “pauseAI: 5.0”);
“EXIT” = ();
“INCOMING_MISSILE” = (fireECM, setTargetToPrimaryAggressor, “setStateTo: ATTACK”);
“NOTHING_FOUND” = (“setStateTo: SCAN_DEBRIS”);
“TARGET_FOUND” = (setTargetToFoundTarget, “setStateTo: ATTACK”);
“UPDATE” = (scanForRandomMerchantmen, “pauseAI: 5.0”); };
Riding the Rocket!
- Commander McLane
- ---- 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:
Thanks, Arexack, for the piratecove.AI. I think I can make something out of that.
For now I've got another problem. I'm trying to make the Hacker Outpost appear at more random positions, by having a couple of entries in the shipdata with different spawn-positions. So far so good. But I also would like it to be in an asteroid field. That asteroid field obviously has to be in the same place as the Hacker Outpost. So I can't add it in the script or the henchmanAI. The position has to be coded in the different Hacker Outpost entries.
Now I've tried
(one example of a position) in shipdata, but for some reason the asteroids are not created together with the station. They appear only when I dock with that station. I have no idea why. But it would be strange to dock at a lonely asteroid, and when you launch again you find it surrounded by asteroids.
Any idea what else I could do? Is there perhaps a possibility to let more ships appear in the
-part of the shipdata? Or any other way? Help appreciated!
EDIT: I just revisited this post https://bb.oolite.space/viewtopic.php?p=29918#29918 and tried
Still nothing. There are not even debugging messages in my log-file. So it seems that part wasn't implemented. Or what am I doing wrong?
For now I've got another problem. I'm trying to make the Hacker Outpost appear at more random positions, by having a couple of entries in the shipdata with different spawn-positions. So far so good. But I also would like it to be in an asteroid field. That asteroid field obviously has to be in the same place as the Hacker Outpost. So I can't add it in the script or the henchmanAI. The position has to be coded in the different Hacker Outpost entries.
Now I've tried
Code: Select all
<key>script_actions</key>
<array>
<string>addShipsWithinRadius: asteroid 20 wpm 0 0 -120000 30000</string>
</array>
Any idea what else I could do? Is there perhaps a possibility to let more ships appear in the
Code: Select all
<key>spawn</key>
<dict>
<key>position</key>
<string>wpm 0 0 -120000</string>
<key>facing_position</key>
<string>pwm 0 0 0</string>
</dict>
EDIT: I just revisited this post https://bb.oolite.space/viewtopic.php?p=29918#29918 and tried
Code: Select all
<key>spawn</key>
<dict>
<key>position</key>
<string>wpm 0 0 -120000</string>
<key>facing_position</key>
<string>pwm 0 0 0</string>
<key>spawn_actions</key>
<array>
<string>debugOn</string>
<string>addShipsWithinRadius: asteroid 20 wpm 0 0 -120000 30000</string>
<string>debugOff</string>
</array>
</dict>
- Killer Wolf
- ---- E L I T E ----
- Posts: 2278
- Joined: Tue Jan 02, 2007 12:38 pm
- Commander McLane
- ---- 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:
No, wpm means that the origin of the system is at the witchpoint, and the z-axis points toward the planet. So 0 0 -120000 is 120km behind the witchpoint-beacon, as seen from the planet.
For all possible coordinate-systems in Oolite the basics are the same: the first letter determines the origin (= 0 0 0), the second letter determines the direction into which the z-axis is pointed and the last letter determines what kind of measure is used: m(eters), p(lanet's radius), s(un's radius) or u (=distance between the two bodies determined by the first two letters).
But that's all in the methods.plist-ducumentation in the wiki.
-----
Still, how can I get the Hacker Outpost become surrounded by asteroids?
For all possible coordinate-systems in Oolite the basics are the same: the first letter determines the origin (= 0 0 0), the second letter determines the direction into which the z-axis is pointed and the last letter determines what kind of measure is used: m(eters), p(lanet's radius), s(un's radius) or u (=distance between the two bodies determined by the first two letters).
But that's all in the methods.plist-ducumentation in the wiki.
-----
Still, how can I get the Hacker Outpost become surrounded by asteroids?
- Uncle Reno
- ---- E L I T E ----
- Posts: 648
- Joined: Mon Apr 24, 2006 12:54 pm
- Location: UK
Didn't LittleBear manage a similar thing in Assassins? If I remember correctly it was to do with Q mine disabling satellites around a station.Commander McLane wrote:Still, how can I get the Hacker Outpost become surrounded by asteroids?
"Get back or I unleash my lethal spotted batoid!!"
What I do when not reading the Oolite bulletin board!
What I do when not reading the Oolite bulletin board!
- Killer Wolf
- ---- E L I T E ----
- Posts: 2278
- Joined: Tue Jan 02, 2007 12:38 pm
i thought that's what i said? or what i meant to say, but truncated it to the point of obscurity!
i had been reading the same bit, so explaining a bit better (i hope!) :-
you got a line running WP, witchpoint to planet, and then want to go -120000 along it, backwards from the witchpoint (when i said FROM, i meant taking the witchpoint as the starting point, cos according to how i understood it if you missed off the "-" it would be TO the planet. i shoulda sid AWAY FROM, lol). so, just incase it didn't like the negatives i thought defining the line Witchpoint-sun and going positive in that direction might be worth a try??
but anyways, in the hacker shipdata Plist, have you tried (sorry, can't guarantee the syntax here) :
<key>startup-actions</key>
<array>
(do some spawny stuff, or addships, if that works for astys)
</array>
or maybe putting it in a simple AI?
i had been reading the same bit, so explaining a bit better (i hope!) :-
you got a line running WP, witchpoint to planet, and then want to go -120000 along it, backwards from the witchpoint (when i said FROM, i meant taking the witchpoint as the starting point, cos according to how i understood it if you missed off the "-" it would be TO the planet. i shoulda sid AWAY FROM, lol). so, just incase it didn't like the negatives i thought defining the line Witchpoint-sun and going positive in that direction might be worth a try??
but anyways, in the hacker shipdata Plist, have you tried (sorry, can't guarantee the syntax here) :
<key>startup-actions</key>
<array>
(do some spawny stuff, or addships, if that works for astys)
</array>
or maybe putting it in a simple AI?
- Commander McLane
- ---- 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:
@ Uncle Reno: Thanks for the hint. I'll have a look into Assassins. But I have the strong feeling that he didn't use the spawnShip-command, so he didn't need to create the satellites in the shipdata. But I'll definitely have a look.
@ Killer Wolf: Sorry that I didn't understand you from the beginning. But the answer is still no. Oolite has no problem at all with negative numbers. And as long as I created the Hacker Outpost in the script.plist there was no problem. Only when Arexack suggested having more than one possible location for the Hacker Outpost and I needed to create the asteroids via shipdata.plist the problem arose.
As for the startup-actions I guess you are referring to the setup_actions method. I have to confess that the wiki-entry on those leaves me with a big
Thanks for the replies anyway!
-----
While I'm typing this I tried setup_actions. It works! Thanks a lot, Killer Wolf!
-----
@ Arexack: And stuck again. If I want to have a randomly chosen Hacker Outpost I can't use spawnShip, because that is called with the unique ship-name, not with a role. But for any other method I have to fix the coordinates in the method (and remember: all that in a scriptActionsOnTarget in an AI), so no random. So what shall I do? Any suggestions?
@ Killer Wolf: Sorry that I didn't understand you from the beginning. But the answer is still no. Oolite has no problem at all with negative numbers. And as long as I created the Hacker Outpost in the script.plist there was no problem. Only when Arexack suggested having more than one possible location for the Hacker Outpost and I needed to create the asteroids via shipdata.plist the problem arose.
As for the startup-actions I guess you are referring to the setup_actions method. I have to confess that the wiki-entry on those leaves me with a big
What's that supposed to mean, for whoever's sake? But anyhow, I give it a try.wiki wrote:setup_actions
Arranges a process that may be necessary for some objects, like ball turrets..
Thanks for the replies anyway!
-----
While I'm typing this I tried setup_actions. It works! Thanks a lot, Killer Wolf!
-----
@ Arexack: And stuck again. If I want to have a randomly chosen Hacker Outpost I can't use spawnShip, because that is called with the unique ship-name, not with a role. But for any other method I have to fix the coordinates in the method (and remember: all that in a scriptActionsOnTarget in an AI), so no random. So what shall I do? Any suggestions?