[SCR] [X3:TC/AP] [v1.9.8.12] [03/23/14] Galaxy Explorer

The place to discuss scripting and game modifications for X³: Terran Conflict and X³: Albion Prelude.

Moderators: Moderators for English X Forum, Scripting / Modding Moderators

Post Reply
gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

[SCR] [X3:TC/AP] [v1.9.8.12] [03/23/14] Galaxy Explorer

Post by gnasirator » Tue, 17. Jan 12, 18:24

What's this?
  • This script adds the command Special -> Explore Galaxy and a Config Menu under Additional Ship Commands.
    Galaxy Explorers explore the universe, search for unknown sectors, scan for stations and asteroids and maintain a satellite network.

    [German thread]
_____________________________________________________________


Download: _____________________________________________________________


Compatability:
  • * XRM
    * SRM
    * XTC

    (Pls post for new entries!)
_____________________________________________________________


Installation:
  • Unpack the 'scripts' and 't' folder into to your X3 TC / AP directory. Overwrite if asked for.
    Alternatively install the provided SPK file with the plugin manager or you can use the exe which provides a clean-up utility for old explorer files.

    If there are problems, please try using the exe to avoid duplicate files.
_____________________________________________________________


Feature Summary:
  • * Needs Exploration Command Software.
    * Explores the universe automatically.
    * Actively avoids enemies.
    * Can search and scan asteroids. Needs Mineral Scanner installed.
    * Can drop satellites.
    * Can ignore, report or capture disabled ships. Captured ships will be sent to the next safe station or shipyard.
    * Auto-naming: If selected, name will change to 'Galaxy Explorer' + settings.
    * If a home base is assigned, explorers can work in 'local mode'. To do so, set a range limit in config menu.
    * Highly adjustable setup via config menu.
    * Can use jump drive and manages refuelling.

Edit [1st Dec 2015]: replaced outdated x1tp with working xdownloads link. X2-Illuminatus
Last edited by gnasirator on Wed, 19. Dec 18, 22:29, edited 135 times in total.

leafee
Posts: 33
Joined: Fri, 6. Nov 09, 05:05
x3

Post by leafee » Tue, 17. Jan 12, 19:57

hooray!

Dakota-
Posts: 128
Joined: Sun, 25. Dec 11, 06:14
x4

Post by Dakota- » Tue, 17. Jan 12, 22:04

Any chance you could make this compatible with Advanced Navigation Software?

That script contains a sector blacklist that disallows movement through particular sectors in order to arrive at a particular destination sector. Having a destination sector blacklist is not enough and is recognized by that script.

NeverSnake
Posts: 5159
Joined: Thu, 9. Oct 03, 20:44
x3tc

Post by NeverSnake » Tue, 17. Jan 12, 23:06

If this is unrelated to the existing universe explorers script then you may wish to chose a different name, perhaps 'Explore Universe Command'.

Also, could you provide details on how the satellites are placed? Is it just a single one in the middle of the sector or does it attempt full sector coverage?
"There's an old story about the person who wished his computer were as easy to use as his telephone. That wish has come true, since I no longer know how to use my telephone" — Bjarne Stroustrup

gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

Post by gnasirator » Wed, 18. Jan 12, 00:20

Hi,

this is unrelated, indeed. In fact, I didn't know about the other one, until now.

If a sat is placed, it's only placed in the middle of the sector at 0, 20500, 0.

Full sector coverage is an interesting idea ... when relying on sats for combat recon.
What about placing one sat at every gate and one in the middle? would that be a good compromise?


About the Advanced Nav Software:
That's difficult. The Universe Explorer only checks the surrounding sectors. It's not intelligent enough to do sophisticated route planning.
It relies on time and statistics to finally discover the whole universe.

I want to keep this script simple. It should discover the universe, nothing more. For anything else there are more sophisticated scripts out there.

Firepower01
Posts: 40
Joined: Mon, 18. Jul 11, 04:59

Post by Firepower01 » Fri, 20. Jan 12, 05:31

Love this script, found it very useful when starting a new game. Just bought around 10 M5s, loaded them up with the software and let them do their thing. Had most of the universe mapped in no time.

gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

Post by gnasirator » Sat, 21. Jan 12, 00:46

jep works quite well, now.
I'm still having some work to do for the next release -> I'm planning to make the buyrange for satellites adjustable in the config menu. But right now I'm not at home, so expect that at monday, or tuesday - earliest!

What do you think, would a small fee, like 1000 cr per discovered sector, 500 per scanned asteroid, 5000 per dropped sat (and so on) be a good idea? I think, right now, it's too powerful, costing too little money, or isnt it?

But I'm glad, you enjoy the script :)

Greetings and good night.

Firepower01
Posts: 40
Joined: Mon, 18. Jul 11, 04:59

Post by Firepower01 » Mon, 23. Jan 12, 01:34

A small fee sounds fair to me.

I also picked up an explorer that was sending me distress calls about being low on oxygen. I think he ejected from his ship when he was getting killed. He's also seemed to have disappear from my cargo bay, and I do have a cargo life support system. Odd

I'd also like to figure out a way to get those pirates to stop killing my satellites :/

User avatar
Malakie
Posts: 1061
Joined: Tue, 13. Apr 04, 23:08
x4

Post by Malakie » Mon, 23. Jan 12, 02:34

gnasirator wrote:Hi,

this is unrelated, indeed. In fact, I didn't know about the other one, until now.

If a sat is placed, it's only placed in the middle of the sector at 0, 20500, 0.

Full sector coverage is an interesting idea ... when relying on sats for combat recon.
What about placing one sat at every gate and one in the middle? would that be a good compromise?


About the Advanced Nav Software:
That's difficult. The Universe Explorer only checks the surrounding sectors. It's not intelligent enough to do sophisticated route planning.
It relies on time and statistics to finally discover the whole universe.

I want to keep this script simple. It should discover the universe, nothing more. For anything else there are more sophisticated scripts out there.

I was going to just suggest the same thing.. I kept over looking/bypassing your script because of the other Universe Explorer script.. which is also pretty good.

I would suggest doing things with your script that one does not do because I am not sure it is still being updated or maintained.

Some suggestions include keeping track of and avoiding any sectors that are known hostile (i.e. blacklisting them), having some options for realism like the explorer ship MUST BUY Advanced Sats to proceed and if it cannot find any, it has to wait until it can or you supply some to it - of course the other option then is to ignore that function and just create a SAT or SATS for every sector it finds. There are a number of other ideas as well if you want to hear them...
Take it light.....

Malakie

----------------------------------------------------

gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

Post by gnasirator » Mon, 23. Jan 12, 10:09

Firepower01 wrote:A small fee sounds fair to me.

I also picked up an explorer that was sending me distress calls about being low on oxygen. I think he ejected from his ship when he was getting killed. He's also seemed to have disappear from my cargo bay, and I do have a cargo life support system. Odd

I'd also like to figure out a way to get those pirates to stop killing my satellites :/
That's strange, as my script doesn't use pilots at all. Do you mean the OTHER Universe ExplorerS script?

@Malakie:
Okay I will think about a new Name.
The sector black list sounds doable but who should enemy sectors be blacklisted for? For the other explorers? But what if behind that enemy sector is another unknown one? Explorers would want to discover that.
I spontaneously can think of an option "Avoid enemy sectors". If switched on, the explorers would leave a sector immediately if the newly disocvered one turns out to be hostile. And they would not fly into sectors with enemy owner races at all (as soon as they are discovered, though. They won't be able to predict if unknown sectors are enemy).
Would that be okay?

User avatar
Malakie
Posts: 1061
Joined: Tue, 13. Apr 04, 23:08
x4

Post by Malakie » Tue, 24. Jan 12, 18:14

gnasirator wrote:
Firepower01 wrote:A small fee sounds fair to me.

I also picked up an explorer that was sending me distress calls about being low on oxygen. I think he ejected from his ship when he was getting killed. He's also seemed to have disappear from my cargo bay, and I do have a cargo life support system. Odd

I'd also like to figure out a way to get those pirates to stop killing my satellites :/
That's strange, as my script doesn't use pilots at all. Do you mean the OTHER Universe ExplorerS script?

@Malakie:
Okay I will think about a new Name.
The sector black list sounds doable but who should enemy sectors be blacklisted for? For the other explorers? But what if behind that enemy sector is another unknown one? Explorers would want to discover that.
I spontaneously can think of an option "Avoid enemy sectors". If switched on, the explorers would leave a sector immediately if the newly disocvered one turns out to be hostile. And they would not fly into sectors with enemy owner races at all (as soon as they are discovered, though. They won't be able to predict if unknown sectors are enemy).
Would that be okay?
If you have any explorers monitor the same blacklist, they would all abide by the rules for sector to avoid. And any sectors they find hostile or controlled by the enemy would be entered into the blacklist. You would also need the blacklist maintained because some sectors may blacklist just because a pirate showed up in a actual good friendly sector so you have to plan for that as well.

Perhaps you can blacklist a sector based on the users/players settings of their relationship to a certain race then go from there.

I don't know though.. It is your idea so my suggestion may not be the best way to go! :-)
Take it light.....

Malakie

----------------------------------------------------

gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

Post by gnasirator » Tue, 24. Jan 12, 22:46

Malakie wrote:
Perhaps you can blacklist a sector based on the users/players settings of their relationship to a certain race then go from there.

-> Done :)

Set Explorers to not explore hostile sectors and they will leave newly discovered enemy sectors immediately and avoid them in the future.
This behavior can be adjusted by friend/foe settings and turned on/off in Galaxy Explorer settings.

NeverSnake
Posts: 5159
Joined: Thu, 9. Oct 03, 20:44
x3tc

Post by NeverSnake » Wed, 25. Jan 12, 00:59

gnasirator wrote:Full sector coverage is an interesting idea ... when relying on sats for combat recon.
What about placing one sat at every gate and one in the middle? would that be a good compromise?
The universe explorers script has a good algorithm for satellite coverage, it attempts to cover every station and optionally gates and usually does a pretty good job.

The downsides of that one are:

1. They're placed for maximum coverage rather than minimum visibility so you may like to have an option for players who just want them for trading purposes rather than for ship hunting.

2. In bigger sectors it can miss out on trade routes occasionally, if you decide to use it then a check to see if the direct lines between gates are covered would be nice.

The universe explorers script is also haphazard and can leave some sectors not covered by satellites even late in the game so I'd also love to see:

3. Prioritised one satellite per sector coverage, sectors with only basic factories (bio/food/minerals/trading station) can perhaps be skipped (although ideally you'd want to check the trading station for chips etc. first).

4. Jumpdrive use

5. A dedicated network maintenance ship if more than one explorer is running whose first priority would be to replace destroyed satellites.

6. Persistently dangerous sectors left until last. My universe explorer wastes too much time placing satellites in sectors bordering xenon sectors, which with XRM frequently have maurading xenon capships. It would be better if he could complete the rest of the universe mapping and satellite coverage first before trying to maintain xenon gate coverage, although an out of the way satellite to let me maintain trade contact with the sector would still be good.
"There's an old story about the person who wished his computer were as easy to use as his telephone. That wish has come true, since I no longer know how to use my telephone" — Bjarne Stroustrup

User avatar
DrBullwinkle
Posts: 5715
Joined: Sat, 17. Dec 11, 01:44
x3tc

Post by DrBullwinkle » Wed, 25. Jan 12, 08:15

I recommend keeping it simple. Many good X-series scripts die from "feature creep" -- attempts to add too many features without taking the time to ruggedize (debug and add good user interface) the basic features. Most of the scripts that have been around for a long time do one thing, and do it well.

I think that you have the feature set very nearly complete. I can think of two main use cases that you may want to cover:

Case 1: Discover.
For a game re-start, I have already found all of the sectors in my previous game(s). In this case, I want the Explorer to discover "new" sectors, scan the asteroids, and drop satellites. (New for the Explorer; not for me.)

Case 2: Maintain
For a game that I have not yet completed, I do not want the Explorers to find new sectors. In this case, I want them to go to sectors that I have found, check that the asteroids have been scanned, and drop (or replace) satellites.

Other thoughts:

- I would avoid adding unimportant code or features. These just cause bugs later on.

- You can charge for each satellite dropped. I would not bother finding and buying satellites -- just drop them and charge for them. It is not necessary to charge a fee beyond the cost of the satellites. (However, there is no harm in adding a fee if you think it is important.)

- For the Maintain case, you may want some way to detect when a satellite has gone missing.

- Your idea of one satellite in the center and one at each gate is good. The satellites at the gates could be skipped on small sectors.

Keep up the good work! :)

gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

Post by gnasirator » Wed, 25. Jan 12, 14:51

DrBullwinkle wrote:I recommend keeping it simple. Many good X-series scripts die from "feature creep" -- attempts to add too many features without taking the time to ruggedize (debug and add good user interface) the basic features. Most of the scripts that have been around for a long time do one thing, and do it well.

I think that you have the feature set very nearly complete. I can think of two main use cases that you may want to cover:

Case 1: Discover.
For a game re-start, I have already found all of the sectors in my previous game(s). In this case, I want the Explorer to discover "new" sectors, scan the asteroids, and drop satellites. (New for the Explorer; not for me.)

Case 2: Maintain
For a game that I have not yet completed, I do not want the Explorers to find new sectors. In this case, I want them to go to sectors that I have found, check that the asteroids have been scanned, and drop (or replace) satellites.

Other thoughts:

- I would avoid adding unimportant code or features. These just cause bugs later on.

- You can charge for each satellite dropped. I would not bother finding and buying satellites -- just drop them and charge for them. It is not necessary to charge a fee beyond the cost of the satellites. (However, there is no harm in adding a fee if you think it is important.)

- For the Maintain case, you may want some way to detect when a satellite has gone missing.

- Your idea of one satellite in the center and one at each gate is good. The satellites at the gates could be skipped on small sectors.

Keep up the good work! :)
I like, what you say :)

Well, I really wouldn't need to bother find and buy satellites ... but it's so realistic. If I skipped that and just dropped newly spawned sats, I have to at least implement a massive charge for that (twice the sat costs?).

And the features you wish for - well they are in already. Except the gate coverage. I will think about that.
But you can just disable sector and asteroid scanning, as well, as sat dropping. Voila, the explorer just goes out, scanning for new sectors.
On the other hand, if you disable scanning and sat dropping, he only scans asteroids. and so on.

Okay, I could implement a switch, setting him to NOT fly into unknown sectors. That would serve the maintenance purpose.

A specific sector black list would be nice ... but too complex to implement. I'll leave it with friend/foe settings to sector owners.

So my todo list would be:
- switch to enable/disable gate coverage (depending on sector size and sat type may be skipped)
- switch to enable/disable discovering of new, unknown sectors
- switch to decide whether to buy satellites (cheaper), or just to spawn them at a much more expensive rate

sounds good so far?

User avatar
DrBullwinkle
Posts: 5715
Joined: Sat, 17. Dec 11, 01:44
x3tc

Post by DrBullwinkle » Wed, 25. Jan 12, 16:07

gnasirator wrote:the features you wish for - well they are in already. Except the gate coverage.
Yes, that is my main point. :) If you fine-tune the features that you already have, and eliminate any problems that come up, then your script will be better than all of the other explorer scripts that have been done in the past.

Gate coverage is optional, in my opinion. However, it would be a nice feature on huge systems.
Well, I really wouldn't need to bother find and buy satellites ... but it's so realistic. If I skipped that and just dropped newly spawned sats, I have to at least implement a massive charge for that (twice the sat costs?).
*Shrug*. Attempts at "realism" is what kills most scripts. Your script does the same tasks as the vanilla Explorer Command scripts -- but it does it better. The vanilla script does not charge for satellite placement, so your script does not have to charge a fee, either. (However, please do whatever you want. :) )
So my todo list would be:
- switch to enable/disable gate coverage (depending on sector size and sat type may be skipped)
- switch to enable/disable discovering of new, unknown sectors
- switch to decide whether to buy satellites (cheaper), or just to spawn them at a much more expensive rate
To prioritize, I would write that list as:

1) Switch to enable/disable discovering of new, unknown sectors. (This is the one important feature that is neglected by other Explorer scripts.)

2) Ability to cover gates of large systems. (a switch for this is optional) (Always using Advanced Satellites simplifies the problem of covering large sectors.)

Only after the first two are done:
3) Decide whether to buy satellites or just to spawn them. (Do one or the other, and decide for yourself whether to charge. My vote is to spawn satellites and not charge a fee, but it is not an important question to me.)

Simple is better. The game is too complicated already! :)

Also, remember that finding missing satellites will add enough complexity to your script. There is no need to add more! :)
Last edited by DrBullwinkle on Wed, 25. Jan 12, 17:46, edited 2 times in total.

gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

Post by gnasirator » Wed, 25. Jan 12, 16:53

DrBullwinkle wrote: - When everything else is done, the ability to have multiple Explorers will be a nice addition.
What do you mean by that? You can have multiple Explorers already. Just buy more than ONE ship to run the command on?! ;)

I'll priorize like you suggested. Sounds good to me.

But I doubt, that I will work on this today. Had enough hours on my computer ...

User avatar
DrBullwinkle
Posts: 5715
Joined: Sat, 17. Dec 11, 01:44
x3tc

Post by DrBullwinkle » Wed, 25. Jan 12, 16:58

Sorry, I missed that!

What I meant is that there may be some fine-tuning involved in coordinating two or more Explorers. You do not want them working in the same sector(s), but you want to make sure that all sectors are covered when they are done. If you have already done that, then forget that I mentioned it. :)

Yes, the whole point of all of this game stuff is to have fun. There is no need to do anything other than what you *want* to do (and when you want to do it). :)

gnasirator
Posts: 1114
Joined: Mon, 13. Dec 04, 16:15
x3tc

Post by gnasirator » Wed, 25. Jan 12, 17:35

ah alright, I get it.

You mean something like:
if <another Explorer> is in [SECTOR]
move on
end

I'll implement that! That's a good idea.

I think the rest is already taken care of.

User avatar
DrBullwinkle
Posts: 5715
Joined: Sat, 17. Dec 11, 01:44
x3tc

Post by DrBullwinkle » Wed, 25. Jan 12, 17:37

Yes, exactly that. :)

Post Reply

Return to “X³: Terran Conflict / Albion Prelude - Scripts and Modding”