[SCR] [X3:TC/AP] [v1.8.9.8] [11/16/2019] MK3 Improvement Reloaded

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
mtlmaks
Posts: 165
Joined: Mon, 14. Oct 13, 17:09
x3ap

Post by mtlmaks » Sat, 2. Nov 13, 21:05

Hi there,

sorry if this has been asked already... I was recommended this script because I want to be able to use a sector blacklist for sectors that my UT traders get destroyed in on a regular basis. I play X3:TC. So I installed the scripts, and first thing, many of my traders stopped trading, but I guess that's normal, since I can reassign the universal trade command to them... But how do you actually configure the sector blacklist? Thanks.

Vayde
Posts: 849
Joined: Fri, 6. Feb 04, 21:02
x3tc

Post by Vayde » Sat, 2. Nov 13, 22:56

Go to your orders section and look in Additional Commands. They both normally say None.

Click any of them and that will open up another menu where you will find the sector blacklist manager.

It's very straight forward to use, just click add sector and the galaxy map of known sectors will appear. Then just navigate to the sector you want to blacklist and click it or hit enter.

After that just repeat for all of the sectors you want blacklisted. You only have to blacklist a sector once because all Mk3 traders use the same list and it's saved out with your normal game saves.


Vayde
Still life in the old dog yet...

mtlmaks
Posts: 165
Joined: Mon, 14. Oct 13, 17:09
x3ap

Post by mtlmaks » Sun, 3. Nov 13, 02:08

Excellent, got it. Thanks! :)

mtlmaks
Posts: 165
Joined: Mon, 14. Oct 13, 17:09
x3ap

Post by mtlmaks » Mon, 4. Nov 13, 00:21

Wow! I'm not 100% sure if it's solely because of this script, but at the same time I didn't change anything else related to trading - before installing it my UT Traders made roughly 1 to 1.5M per hour. Now they make a whopping 4 to 5M per hour...! Is it possible that this script makes such a big difference...?? :D

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

Post by gnasirator » Mon, 4. Nov 13, 11:06

8)

Yggdrasill
Posts: 28
Joined: Sat, 15. Jun 13, 00:14
x3ap

Post by Yggdrasill » Sat, 23. Nov 13, 23:17

Can coordination between MK3 traders be implemented?

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

Post by gnasirator » Wed, 4. Dec 13, 22:31

what exactly do you mean? They already do coordinate their actions -> blacklist.

afterglowefx
Posts: 15
Joined: Tue, 8. May 12, 14:20

Post by afterglowefx » Thu, 2. Jan 14, 11:07

First off, amazing script. I've been using some version of it for years, and the latest is the most effective yet. After over 50 days of playtime in my current game I can count the number of Universe Traders I've lost on one hand--and I've been running a fleet of 50!

Just wanted to share a problem I had with the script and my workaround, should anybody else experience anything similar in the future.

For some reason the game started freezing at a certain point in time, and it seemed no matter what I did or where in the Universe I went, it would crash about 30 seconds into the save.

I spent an hour selectively disabling mods before I was able to say for sure that it was the Mk3 script causing the problem.

To solve the issue I opened the save with the mod disabled, stopped all my Mk3 traders, then resaved and closed the game. I then re-enabled the mod and began reactivating my Universe Traders 10 at a time with 5 minutes 10x SETA between batches.

Doing this I was able to track down the specific ship causing the crash (UT41, in case you were wondering!). I'm not sure what he was trying to do: he was in Savage Spur where I have a lot of my infrastructure placed and there shouldn't have been any goods for him to buy there. Whatever it was he was trying to do, it was obviously breaking the script. I blacklisted the entire sector, jumped out the offending UT, restarted him nearby, and proceeded to re-enable the next 30 UTs.

I've now had all 70 UTs running for an hour at 10x SETA with no problems.

So, for anybody else experiencing crashes in the future, try this:

Disable the mod
Stop all Mk3 traders
Re-enable the mod
Restart Mk3 traders a few at a time until you find the one causing the crash
Move the offending trader
Blacklist whatever it was he was trying to access
Restart all remaining Mk3 traders

Worked for me!

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

Post by gnasirator » Fri, 3. Jan 14, 17:48

Hey, thanks for the feedback.

You don't happen to still have the save with the crash problem?
I'd like to investigate into this :)

afterglowefx
Posts: 15
Joined: Tue, 8. May 12, 14:20

Post by afterglowefx » Sun, 5. Jan 14, 01:31

Ah, no, sorry, I immediately overwrote it!

I can give you a little more detail about what was going on, though. He was docked at a custom player HQ from the Enhanced Equipment Docks mod (http://forum.egosoft.com/viewtopic.php?t=230098) which I use strictly for storage. A lot of the items in those custom HQ stations were either empty or frequently changing as my CLS fleets shuttled them around. I left all the prices at average with AI trading turned off--the average prices were enough to keep my own traders away. However, not the trader causing the crash, I guess! Not sure what he was doing to actually cause the crash, but I've never had a problem with your script and normal stations and I know for sure he was docked at one of the custom HQs. Solution is simply to blacklist the stations or else max the prices, I suppose!

I've now had 100 Mk3's going at 10x SETA for a collective ~15 hours or so with no problems, so I'd say the script is quite stable in normal circumstances!

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

Post by gnasirator » Sun, 5. Jan 14, 17:20

Ah okay, so no need for any fixing. that's good :)

squshy7
Posts: 6
Joined: Sun, 29. Jul 12, 15:54
x3ap

Post by squshy7 » Sun, 2. Feb 14, 18:19

Hey all,

This is going to sound like a broken record post and I apologize, but the inability to search through an idividual post on this forum and the fact that everybody's issues appear to be slightly different from mine as led to me having to ask.

I've used this Mod from the very start, installed after installing XRM (which also was installed from the very start; there are no traces of vanilla in my save game) and never had any vanilla traders. My Sector traders end up hitting a plateau at around level 4 where they almost always refuse to go trade anything, and stay on standby. The sectors I put them in have profitable trades to be made, sometimes even starving for resources. I've tried putting them in around 12 different sectors. This has persisted after about 40 hours, and the highest level I have to show for it is a level 7 ST. It APPEARS that they will sit on standby if they can't fill up most of their cargo bay, though I haven't monitored the sectors closely enough to say for sure; I suggest this because I experimented with using a couple low cargo bay ships as ST's and they almost never stopped trading (this doesnt help the problem though as the amount of wares/money appears to affect leveling; these low cargo bay traders take forever to gain levels).

Reading through the last dozen or so pages I feel like others had similar problems, but not necessarily the same? (it looks like most people had issues when converting over from vanilla traders). FWIW, I did NOT use the exe to install, I did it manually, and it appears that this could be an issue? Also, as far as checking for errors, I assume the errors people get pop up noticeably? Or do I have to dig through a log to find them. I can upload my save game if anyone cares to look.

EDIT: here's my save, only my 2 original STs are present as I lost a couple of the newer ones to pirates https://drive.google.com/file/d/0BxpAPX ... sp=sharing
Last edited by squshy7 on Sun, 2. Feb 14, 18:34, edited 1 time in total.

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

Post by DrBullwinkle » Sun, 2. Feb 14, 18:32

squshy7 wrote:It APPEARS that they will sit on standby if they can't fill up most of their cargo bay
That sounds right. Some people train their Mk3 pilots in smaller ships (like plain TS without cargo extensions), then transfer the pilot to a superfreighter after training.
Last edited by DrBullwinkle on Tue, 4. Feb 14, 12:30, edited 1 time in total.

squshy7
Posts: 6
Joined: Sun, 29. Jul 12, 15:54
x3ap

Post by squshy7 » Sun, 2. Feb 14, 18:47

DrBullwinkle wrote:
squshy7 wrote:It APPEARS that they will sit on standby if they can't fill up most of their cargo bay
That sounds right. Some people train their Mk3 pilots in small ships, then transfer the pilot to a freighter after training.
See, I tried this with 2 Barracudas with only half their cargo bays upgraded and it took around 20 hours just to get to level 3. They never sat on standby, but it seems like I didn't actually gain any time due to how little they were trading quantity wise. I'm not saying I want the game to be easy, but 40 real hours of gameplay should result in higher than a level 7 ST, right?

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

Post by DrBullwinkle » Sun, 2. Feb 14, 18:52

I wouldn't know. My personal opinion is that pilots suck, so I start them at level 16.

We recently discussed some possible future changes to Mk3 Improvement in order to improve training of pilots. I think the specific suggestion was to give ST's a range of 2-3 sectors right from the start. That would make it much easier for them to level up in a wider variety of sectors.

Another thing that you can do is to add stations to your training sector(s) in order to give the ST's more trade options.

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

Post by gnasirator » Mon, 3. Feb 14, 21:10

squshy7 wrote: It APPEARS that they will sit on standby if they can't fill up most of their cargo bay, though I haven't monitored the sectors closely enough to say for sure; I suggest this because I experimented with using a couple low cargo bay ships as ST's and they almost never stopped trading (this doesnt help the problem though as the amount of wares/money appears to affect leveling; these low cargo bay traders take forever to gain levels).
That's true. Pilots do level up based upon their total earnings accumulated over their lifetime. So a bigger ship levels pilots faster as they earn way more money.

And therefore pilots won't trade in routes where they won't make any profits at all which is of course more likely in a smaller ship.
This is just like in reality where I wouldn't start a banana transportation business with a porsche ;)
µChips are a different story though. And there small, fast ships have their play. But skilled pilots are better here and jump drives pay off.

My suggestion for you: Get your traders a bigger ship. TS big.

And for the installation: if you don't use the exe, that should be fine but to make sure, delete all *.autotrade scripts first. This is actually what the .exe does for you. It's just a self expanding winrar archive with an included delete script.
you can open and check it with winrar.

squshy7
Posts: 6
Joined: Sun, 29. Jul 12, 15:54
x3ap

Post by squshy7 » Wed, 5. Feb 14, 00:00

gnasirator wrote:
squshy7 wrote: It APPEARS that they will sit on standby if they can't fill up most of their cargo bay, though I haven't monitored the sectors closely enough to say for sure; I suggest this because I experimented with using a couple low cargo bay ships as ST's and they almost never stopped trading (this doesnt help the problem though as the amount of wares/money appears to affect leveling; these low cargo bay traders take forever to gain levels).
That's true. Pilots do level up based upon their total earnings accumulated over their lifetime. So a bigger ship levels pilots faster as they earn way more money.

And therefore pilots won't trade in routes where they won't make any profits at all which is of course more likely in a smaller ship.
This is just like in reality where I wouldn't start a banana transportation business with a porsche ;)
µChips are a different story though. And there small, fast ships have their play. But skilled pilots are better here and jump drives pay off.

My suggestion for you: Get your traders a bigger ship. TS big.

And for the installation: if you don't use the exe, that should be fine but to make sure, delete all *.autotrade scripts first. This is actually what the .exe does for you. It's just a self expanding winrar archive with an included delete script.
you can open and check it with winrar.
I figured out as much, thanks for the reply.

Here's a question: is mk3 traders interacting with your own stations broken? Because I'm pulling my hair out after two attempts at bullwinkles suggestion of building my own stations to get them to trade more. The first time I built a complete energy loop that wasnt connected with complex hubs, figuring that the mk3 traders would be more than happy to ferry the goods between them. Nope.

But I figured that didnt work because the traders arent actually making any money, since it's all my own goods. That's fine and makes sense, we're not levelling CAGs here. So I built the same energy loop, but this time complexed it all, making an excess of 350 ecells every minute and built it in a paranid sector with 5 factories that were all starving for energy cells. No dice. The STs (which are novas with full cargo upgrade btw, so they can more than fill up their bays) just sit there on stand by. I tried all different ways of fanagling it; making ecells an intermediate and letting the station sell intermediates, making them products, allowing other races to trade and not, adjusting the prices low or high or even exactly matching what others in the sector are willing to pay for them, homebasing the STs to the complex and not....

There was only ONE instance in which a trader actually started to go to the hub to grab a good to sell, but it was soja husks...which isnt desirable at all, since my complex is only on a 1:1 soja husk ratio. I cancelled that action...though to my dismay I decided to run a test and immediately tell him to trade again and this time he apparently forgot he was willing to do soja husks before.

So...if it isn't broken (which it sure seems it is), is it just a function of gross money gained? That's the only explanation that makes sense: that you coded this so that the higher level a trader is, he will not do trades that don't result in some net amount of money; and this net amount of money that must be made per trade at a given level must have been predefined by you, or else the trader would adapt to his storage bay.

(PS, And if that is true, then I implore you to rethink that. The trader should adapt to his storage bay. Why shouldn't I be able to run a fleet of goner rangers? they're XL, they have 1/3 the capacity of a fully upgraded mistral but are 3 times as fast. which means they could run volume in the same amounts over the same period of time, but also have a higher chance of beating another trader due to speed.)

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

Post by gnasirator » Wed, 5. Feb 14, 18:15

This is the levelling system:

Code: Select all

019   $Gained = [THIS] -> get local variable: name='Gain'
020   
021   * This is the learning trader system. I use Local Variables as EXP Levels.
022   * Level experience by sum formula with a steep curve
023   while $Gained >= ( 20000 + 1000 * $experience ) * ( $experience * ( $experience + 1 ) / 2 )
024   * sector traders only may level up to lvl 10, galaxy to 25, local to 20
025 @ |= wait 5 ms
026   |if $experience < 10 OR ( $traderange AND $experience < 20 + $b.is.ut )
027   ||inc $experience = 
028   ||$level.gained = [TRUE]
029   |else
030   ||break
031   |end
032   end
033   
034   if $level.gained
035   |[THIS] ->set local variable: name='experience' value=$experience
036 @ |$Pilot = [THIS] -> call script 'lib.ship.var.setpilotname' :  ship=[THIS]  experience=$experience  rank=$experience  ranktype=1
037   end
So yes, the level simply depends on the total earnings of the trader over his lifetime with the lower levels' difficulty decreased and the higher levels increased.

For player owned stations: There's only a check included to avoid bankrupt sellstations:

Code: Select all

118   * Extra check: If sellstation is player-owned and bankrupt, blacklist it
119   * and search again for a sellstation
120   * - - - - - - - - - - - - - - - - - - - - - - - - - -
121   |$sellstation.owner = $sellstation -> get owner race
122   |if $sellstation.owner == Player
123   *gosub breakpoint
124   ||$sellstation.money = $sellstation -> get money
125   ||if ( $price.sell * $amount ) > $sellstation.money
126   |||append $sellstation to array $blacklist
127   |||inc $i = 
128   |||continue
129   * retry the same ware with another sellstation
130   ||end
131   |end
132   * - - - - - - - - - - - - - - - - - - - - - - - - - -
Otherwise they're treated like regular stations -> they have to offer the best buy/sell prices. So if you want the MK3 traders to buy from your stations or sell to them, set their resource buy prices to max and product sell prices to min and then forbid trading with other races.
But actually it's easier to simply use Lucike's Commercial Agent.

Sparky Sparkycorp
Moderator (English)
Moderator (English)
Posts: 8074
Joined: Tue, 30. Mar 04, 12:28
x4

Post by Sparky Sparkycorp » Wed, 12. Feb 14, 15:52

gnasirator, loving this fix - thanks!

Feedback on usability of the blacklist manager:
First of all, this isn’t game-breaking, it may not even be adjustable and I don't think it's directly related to your work. That said, it would be nice if the “add sector” option was at the top of the blacklist manager or if the selector defaulted to being back over the “add sector” option after one had just been added. Once we’ve added a few hostile sectors to the blacklist, adding new ones could be easier it we didn’t have to scroll down the list in order to get to the options at the bottom. As mentioned, it’s not game breaking and the blacklist manager is well worth doing. Just mentioning in case it was something tweakable in a future update to this fix.

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

Post by gnasirator » Wed, 12. Feb 14, 18:29

Sounds reasonable. As the backlist manager ist mostly not from me, I'd have to look into its code.

But I'll see what I can do!

I don't even know if menu items can be preselected at all ...

Post Reply

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