Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

Starsector 0.97a is out! (02/02/24); New blog post: Simulator Enhancements (03/13/24)

Pages: 1 ... 11 12 [13] 14 15 ... 30

Author Topic: Fleet Control Mod (Incomplete test version available, please help!)  (Read 181338 times)

DelicateTask

  • Commander
  • ***
  • Posts: 223
    • View Profile
Re: Fleet Control Mod (v.75, .53a) Major bugfixes. (For real this time.)
« Reply #180 on: August 15, 2012, 08:56:23 PM »

Usually, anything that modifies the campaign world requires a new game, modding things like ships doesn't. However, because this mod adds extra planets, scructures, etc. to the world, it needs a new game.
Logged

Verrius

  • Captain
  • ****
  • Posts: 369
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #181 on: August 15, 2012, 09:59:18 PM »

Updated to 0.80. Let me know if you guys find any problems, there probably won't be a content update for a lil while :p. Time to revisit some of my older projects.

Brainbread

  • Commander
  • ***
  • Posts: 148
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #182 on: August 16, 2012, 11:06:34 AM »

I'm getting extremely long save times after installing the Large Fuel production station, not sure why though. I had a similar issue when I was using the Supply Trader contracts in 0.7.

I'll try removing the facility and seeing if thats the cause. Also, awesome job with adding the +/- and crew requirement "UI" stuff to the Fleet HQ! Its very handy.

Edit: Still happens after I removed all the facilities. Instead of 2-3 seconds to save, its more like 15-20 seconds.

Edit Edit: Can you make the Cargo fleets of all types (Traders, stations, and miners) non-aggressive? Its frustrating trying to protect miners when they're attempting to chase down heavily armed pirate fleets and then getting themselves killed.
« Last Edit: August 16, 2012, 11:25:53 AM by Brainbread »
Logged

Brainbread

  • Commander
  • ***
  • Posts: 148
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #183 on: August 16, 2012, 12:50:20 PM »

Barracks S, and Barracks M are consuming resources but not producing Marines!

Edit: There is a consistent bug that happens; sometimes your station will not produce any resources of a specific type. If you place that resource into the station, it will eat it (if you leave the station, fly around, come back the resource will be gone, even if nothing consumes it). At the moment, its doing that to my marines.

Removing all of the resources from the station does not fix this, and I'll give a shot to removing all of the facilities too.

Edit: Removing the facilities doesn't work. I had the same bug in the previous version, except that it ate energy (which is really obnoxious, as you can't deploy fleets since it would not get over a certain value. At least this time its something non-essential)

Edit edit: Marines are back after I added Elite crew! I'm still perplexed.

Edit Edit edit: Found the source of the Save Time error!

"Fatal: GC overhead limit exceeded. Check starfarer.log for more info"

1928171 [Thread-6] ERROR com.fs.starfarer.combat.D  - java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded
   at java.nio.CharBuffer.wrap(CharBuffer.java:350)
   at sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:246)
   at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:106)
   at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:116)
   at java.io.OutputStreamWriter.write(OutputStreamWriter.java:203)
   at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeXMLContent(XMLStreamWriterImpl.java:1475)
   at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeXMLContent(XMLStreamWriterImpl.java:1398)
   at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeCharacters(XMLStreamWriterImpl.java:679)
   at com.sun.xml.internal.txw2.output.DelegatingXMLStreamWriter.writeCharacters(DelegatingXMLStreamWriter.java:140)
   at com.sun.xml.internal.txw2.output.IndentingXMLStreamWriter.doIndent(IndentingXMLStreamWriter.java:125)
   at com.sun.xml.internal.txw2.output.IndentingXMLStreamWriter.onStartElement(IndentingXMLStreamWriter.java:94)
   at com.sun.xml.internal.txw2.output.IndentingXMLStreamWriter.writeStartElement(IndentingXMLStreamWriter.java:156)
   at com.thoughtworks.xstream.io.xml.StaxWriter.startNode(StaxWriter.java:191)
   at com.thoughtworks.xstream.io.AbstractWriter.startNode(AbstractWriter.java:53)
   at com.thoughtworks.xstream.io.WriterWrapper.startNode(WriterWrapper.java:33)
   at com.thoughtworks.xstream.io.path.PathTrackingWriter.startNode(PathTrackingWriter.java:44)
   at com.thoughtworks.xstream.io.ExtendedHierarchicalStreamWriterHelper.startNode(ExtendedHierarchicalStreamWriterHelper.java:17)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:181)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.<init>(AbstractReflectionConverter.java:171)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMa rshal(AbstractReflectionConverter.java:116)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.mars hal(AbstractReflectionConverter.java:72)
   at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
   at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
   at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.mars hallField(AbstractReflectionConverter.java:229)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:208)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.<init>(AbstractReflectionConverter.java:171)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMa rshal(AbstractReflectionConverter.java:116)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.mars hal(AbstractReflectionConverter.java:72)
   at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
   at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
   at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
« Last Edit: August 16, 2012, 01:09:19 PM by Brainbread »
Logged

Verrius

  • Captain
  • ****
  • Posts: 369
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #184 on: August 16, 2012, 01:09:57 PM »

Unfortunately, utilizing miners will cause your game to save extremely slowly as mentioned here by
this long and useful post.

Edit Edit: Can you make the Cargo fleets of all types (Traders, stations, and miners) non-aggressive? Its frustrating trying to protect miners when they're attempting to chase down heavily armed pirate fleets and then getting themselves killed.
Not possible, the only way to do that would make them a separate faction that's neutral to everyone, and that is kinda awkward, as well as completely removing any reason to protect them.

I put a suggestion in the forums for a "Go to location and ignore hostiles" fleet assignment, I doubt it'll happen though :<

It's becoming clear I'll have to do SOMETHING about miners, I'm not entirely sure what though >_<. Use caution when using em for the time being.

Brainbread

  • Commander
  • ***
  • Posts: 148
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #185 on: August 16, 2012, 01:31:33 PM »


Not possible, the only way to do that would make them a separate faction that's neutral to everyone, and that is kinda awkward, as well as completely removing any reason to protect them.

I put a suggestion in the forums for a "Go to location and ignore hostiles" fleet assignment, I doubt it'll happen though :<

It's becoming clear I'll have to do SOMETHING about miners, I'm not entirely sure what though >_<. Use caution when using em for the time being.

Well, Cargo fleets and such will ignore hostiles to and from the stations; thats what I was thinking of?
Logged

Verrius

  • Captain
  • ****
  • Posts: 369
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #186 on: August 16, 2012, 01:33:09 PM »

Huh, I'll have to see if maybe the "Deliver Resources" assignment will do that.
...I'll also have to see if I can deliver resources to an asteroid though.

CrashToDesktop

  • Admiral
  • *****
  • Posts: 3876
  • Quartermaster
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #187 on: August 16, 2012, 01:35:18 PM »

Nope, cargo fleets for me attack other smaller fleets.
Logged
Quote from: Trylobot
I am officially an epoch.
Quote from: Thaago
Note: please sacrifice your goats responsibly, look up the proper pronunciation of Alex's name. We wouldn't want some other project receiving mystic power.

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 23986
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #188 on: August 16, 2012, 01:41:08 PM »

I put a suggestion in the forums for a "Go to location and ignore hostiles" fleet assignment, I doubt it'll happen though :<

Just to comment on that: I saw it and will keep it in mind. No promises, etc etc :)

Huh, I'll have to see if maybe the "Deliver Resources" assignment will do that.
...I'll also have to see if I can deliver resources to an asteroid though.

That sets the pursuit range to 0, but it'll still flee. Delivering supplies to an asteroid won't work and will crash the game - their CargoAPI is null. You can only deliver supplies to an orbital station or to another fleet.
Logged

Brainbread

  • Commander
  • ***
  • Posts: 148
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #189 on: August 16, 2012, 01:43:29 PM »

I'm gonna be more careful with mining fleets. I think I had a stack of 47 sitting in my Fleet HQ (and I know there is a cap on how many are deployed), but its corrupted my save! So thats a bummer. I'd also suggest reducing the value of precious ore; even half its current value would be still fantastic.

That sets the pursuit range to 0, but it'll still flee. Delivering supplies to an asteroid won't work and will crash the game - their CargoAPI is null. You can only deliver supplies to an orbital station or to another fleet.

I guess if you can set Asteroids to have a cargo value in the mod, but I'm also not a modder so I have no idea ^^
« Last Edit: August 16, 2012, 01:45:21 PM by Brainbread »
Logged

Verrius

  • Captain
  • ****
  • Posts: 369
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #190 on: August 16, 2012, 01:47:24 PM »

Just to comment on that: I saw it and will keep it in mind. No promises, etc etc :)
Appreciated ;) Also thanks for saving me about a half hour of pointless testing xD
EDIT: Having a command that will allow them to automatically follow the asteroid (or rather, any SectorEntityToken) for a duration would be nice too. And by follow, I mean the equivalent to the player fleet clicking on an asteroid or planet. Go there and sit there. I do this already, but my methods are... Causing some issues :<

I'm gonna be more careful with mining fleets. I think I had a stack of 47 sitting in my Fleet HQ (and I know there is a cap on how many are deployed), but its corrupted my save! So thats a bummer. I'd also suggest reducing the value of precious ore; even half its current value would be still fantastic.
Y'know, that kills me inside. I'll try and find a way to make miners not eat up memory. I know exactly why they do, I just don't know how to change them without breaking them. For now, try only using a couple.

Brainbread

  • Commander
  • ***
  • Posts: 148
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #191 on: August 16, 2012, 01:54:06 PM »

Y'know, that kills me inside. I'll try and find a way to make miners not eat up memory. I know exactly why they do, I just don't know how to change them without breaking them. For now, try only using a couple.

Its no worry. I restart all the time as is. Would capping the number deployed work, or is having stacks of them in the station the main issue?
Logged

Verrius

  • Captain
  • ****
  • Posts: 369
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #192 on: August 16, 2012, 02:00:35 PM »

No, here's the issue:

When you give a fleet an assignment, like "Go to location" or "deliver resources", you can also provide a script that will run upon completion of the assignment. What I do, is I give them a Go to location assignment, then have the script check every fleet to see if they need to go back, or if they need to keep chasing the asteroid.

The thing is, the script tells EVERY fleet this, so if you have 3 miners, and an independent miner is floating around, every moment they spend on the asteroid they're telling every other fleet to run these checks, it's very very messy.

And when they're sitting on the asteroid, this script is being run, by every single miner, probably every frame.

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 23986
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #193 on: August 16, 2012, 02:55:36 PM »

When you give a fleet an assignment, like "Go to location" or "deliver resources", you can also provide a script that will run upon completion of the assignment. What I do, is I give them a Go to location assignment, then have the script check every fleet to see if they need to go back, or if they need to keep chasing the asteroid.

The thing is, the script tells EVERY fleet this, so if you have 3 miners, and an independent miner is floating around, every moment they spend on the asteroid they're telling every other fleet to run these checks, it's very very messy.

And when they're sitting on the asteroid, this script is being run, by every single miner, probably every frame.

Hmm. You might be better off creating a fake spawn point that runs every frame ("fake" in that it doesn't actually spawn anything, and is just a hook to run some code every frame).

Take a look at BaseSpawnPoint.java (comes with the API that comes with the game) - its advance() method runs every frame. Sounds like you could be doing these checks in a custom spawn point's advance() method instead of in the "on arrival" script. You could figure out when something has "arrived" by doing a simple distance check - that's what the core game does, anyway.

All the other spawn points derive from BaseSpawnPoint for convenience, but they don't actually have to. They just have to implement SpawnPointPlugin.

Or you could actually derive from BaseSpawnPoint and set up a low interval and do the work in spawnFleet() (which can return null if it doesn't want to return a fleet). That way you could set it up to run as often as you like, instead of every frame... or just do that by mimicking what BaseSpawnPoint.advance() does.

Hopefully I'm not belaboring the point too much, let me know if this makes sense.


Heck, you could actually set up a (really, really hacky) custom AI for the fleet if you wanted. CampaignFleetAPI.setLocation() lets you put a fleet anywhere you want, so you could simulate movement that way. You'd be fighting against their AI, though, so I don't know how well that would work in practice, and whether I should even bring it up :)
Logged

Verrius

  • Captain
  • ****
  • Posts: 369
    • View Profile
Re: Fleet Control Mod (v.80, .53a) Convenience update and some fixes
« Reply #194 on: August 16, 2012, 03:56:37 PM »

Hmm. You might be better off creating a fake spawn point that runs every frame ("fake" in that it doesn't actually spawn anything, and is just a hook to run some code every frame).

Take a look at BaseSpawnPoint.java (comes with the API that comes with the game) - its advance() method runs every frame.
Oh. My. God. I'VE BEEN WONDERING HOW TO DO THAT!
Thanks for the reply Alex ^_^
Pages: 1 ... 11 12 [13] 14 15 ... 30