Auton usability improvents (new: Improved Auton Bay Screens)

Post about your finished mods here.
Post Reply
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

Improved Auton Bay Screens

This mod makes several improvements to autons and the NAMI Auton Bay:

- Adds the ability to rename autons using the Auton Bay. This name applies to the auton item and the ship it becomes.
- If an auton ship's name is changed by another mod (such as Automatic Auton Numbering), that change will also apply to the item it becomes when it returns to your ship.
- Shows the amount of cargo the auton is carrying, if any, when examining it in the auton bay.
- Fixes a bug in vanilla where repairing an auton's armor with the auton bay deletes its cargo. (fixed in vanilla in 1.7B5)
- Works around a vanilla bug with (objSetItemData) where replacing an auton's armor with identical armor sets the quantity of the auton stack to 1 if the autons have ever been launched or modified. (fixed in vanilla in 1.7B5)
- Shows the maximum armor mass and device power use the auton can support as action descriptions under the relevant actions in the auton bay. Power use should automatically adjust to the change in 1.7A2 allowing ships to install devices with power use equal to their reactor power.
- When returning to the main auton bay screen from a subscreen, the previously selected auton will still be selected, whether or not it was modified. (Surprisingly, this was one of the most difficult parts.)
- Makes the auton bay not close after launching an auton unless there are no autons left on board.
- If an auton is ordered to return while other autons are already returning that will fill the available cargo space, it sends an error message rather than returning.
- If an auton attempts to return to the ship while there isn't enough cargo space for it, it relaunches and sends an error message.
- Fixes an issue where if damaged armor is installed on an auton, the auton bay redundantly or incorrectly describes the armor as damaged forever.
- Fixes a bug where if a mule auton's armor is replaced, all armor items in its cargo are moved to the player's cargo.

Compatibility:

This mod does not require Corporate Command, but many of its features are specific to the NAMI Auton Bay and won't be available without it.

This mod overrides dsAutonBay, dsAutonBayRepairArmor, dsAutonBayReplaceArmor, dsAutonBayInstallDevice, and baStdAutonBase. So it probably isn't compatible with other mods that override these types. It is compatible with Auton Bay Misc. Slot, and may or may not be compatible with other mods that modify the XML of these types or change the dock screens in <OnGlobalPaneInit>. It adds actionIDs to all the actions, so mods that rely on the default numerical IDs won't work. Also, because it's currently impossible to get the XML of a type created using (typCreate), auton item types created or redefined by another mod using (typCreate) cannot be renamed.
(fixed in 1.7B5)

Mule Status

This mod allows Mule autons to report how much cargo they're carrying in response to a "Status" message. As a proof of concept for mod interoperability using <Events>, it also works with Com Groups. With both mods active, it will be possible to send the "Status" message to the whole non-combatant com group.

Compatibility:

This mod modifies the XML of scMuleAuton (and any autons added by mods with nonzero cargo space and docking ports), but should be compatible with other mods that do so, thanks to the bug fix in 1.7B5.


Auton Bay Misc. Slot and Hotkey

As the name suggests, this mod makes the NAMI Auton Bay take a miscellaneous device slot, rather than the cargo bay slot, allowing the Constellation (and other ships, if they acquire one) to use it at the same time as a cargo bay. It also add a hotkey (B) for it in the Use menu.

Compatibility:

This mod won't do anything without Corporate Command.

This mod modifies the XML of itNAMIAutonBay, scConstellationPlayer, and baStdAutonBase, so it might conflict with other mods that modify those types. However, it is compatible with Improved Auton Bay Screens.

Old version without the hotkey:
Auton Bay Misc Slot.xml
(3.49 KiB) Downloaded 323 times

Automatic Auton Numbering

This mod appends a unique number to the end of each auton's name when it's launched.

Compatibility:

This mod overwrites the global function (rpgDeployAutonFromItem). It's probably compatible with any mods that don't do that. If you combine it with Corporate Command or another mod that allows autons to be converted back into items, I recommend also using Improved Auton Bay Screens, otherwise the numbers will be lost when the autons return.


Improved Mule Screens

This mod clarifies where cargo is being transferred and allows the player to jettison items from a Mule auton directly into space.

Compatibility:

This mod alters the Main dockscreen of any auton that's the player's wingman using an <OnGlobalPaneInit> event. It should be compatible with any mod that doesn't alter that screen.


Possible mod ideas

- Allow using armor repair items on auton armor
- Salvage and repair autons from wrecks with the auton bay
- Add Lumiere autons to their loot tables (this is planned for Core at some point)
- Replace the Longreach on the 310A with a lower value custom version for financial balance
- Allow Mules to be ordered to loot a target
- Make Explorers more cautious while exploring


As always, feedback, suggestions and bug reports are welcome.
Last edited by NMS on Sat Feb 11, 2017 3:47 am, edited 19 times in total.
User avatar
TheLoneWolf
Militia Captain
Militia Captain
Posts: 802
Joined: Thu Nov 28, 2013 5:03 pm
Location: Aboard the CSS Radiant

The mule idea is fantastic. Do you mind if I TRY to rework the mod so that every auton reports it status in a sequence, in terms of damage, back?

IMHO the Auton bay should take ATLEAST two slots or more.
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

TheLoneWolf wrote:The mule idea is fantastic. Do you mind if I TRY to rework the mod so that every auton reports it status in a sequence, in terms of damage, back?
Thanks. You're welcome to borrow my code for your own mods as long as you credit me.

It should be possible to do what you're suggesting in a separate mod that's compatible with my mods. Com Groups checks all your escorts for the <CanReportStatus> and <ReportStatus> events, not just mules. So basically, you'd make a copy of Mule Status with the following changes:
- Change the UNIDS, obviously.
- Change the <OnGlobalTypesInit> so that it adds the <Events> and <Communications> elements to autons without cargo space, rather than autons with cargo space.
- Change the <Events> and <Communications> elements in <StaticData> so they call your own function, rather than NMS_muleReportStatus.
- Replace NMS_muleReportStatus with your own function that reports damage state. You can see the code George uses in the status message in RPGWingmen.xml.

If by "in sequence" you mean "not at the same time", that's tricky. You would have to add a timer to each ship that calls an event telling it to report its status after a different amount of time. Com Groups calls the <ReportStatus> event of all escorts that have it at the same time. Maybe you could use XML functions to modify Com Groups to change that? Or you could make your <ReportStatus> event add the timers to all ships with the right properties, but make it only run once if it's called multiple times on the same tick (see NMS_checkComGroups for an example of how to do this).
TheLoneWolf wrote:IMHO the Auton bay should take ATLEAST two slots or more.
I thought about making the Auton Bay worse, and the Constellation better to compensate. Currently, an EI500 with an Auton Bay installed is just better the a Constellation (EDIT: except that the Constellation has a higher turn rate). Making it take a miscellaneous slot makes it more attractive to use on other ships, too. But making it take more slots or reduce your cargo capacity isn't a big problem for the EI500, but would make it practically unusable on other ships. Maybe it should add a penalty to maneuverability or armor strength, though I'm not sure if this is currently possible.
Last edited by NMS on Mon Jun 27, 2016 4:50 am, edited 1 time in total.
User avatar
TheLoneWolf
Militia Captain
Militia Captain
Posts: 802
Joined: Thu Nov 28, 2013 5:03 pm
Location: Aboard the CSS Radiant

Thanks!

Some of it went over my head, but here's what I got:


1. Remove the "Report Cargo" command.

2. Identify the player's autons.

3. Get the HP status of the autons by using the function (which one?)

4. Display the returned value by using an output command.
What I need now is simply to display this status beneath every ship, and make it stick for 3 seconds. Much like when guards commend your skills by saying "Nice Shooting!"
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

Coming very soon:


Image

Image

Image


This one started out as "Better Auton Bay Screens", but there's been a bit of scope creep...
User avatar
TheLoneWolf
Militia Captain
Militia Captain
Posts: 802
Joined: Thu Nov 28, 2013 5:03 pm
Location: Aboard the CSS Radiant

Waiting ;)
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

Improved Auton Bay Screens (with auton renaming) is available. See the first post.

It's come to my attention that (typGetXML) can't get the XML of types created or overwritten with (typCreate). This is a big problem for mod compatibility, so I've created a ticket on Ministry. In the mean time, I've updated the first post to clarify what my mods will and won't be compatible with.

I also added some information about planned mods and some other possible mods I might try to create. Let me know what you think.
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

New version of Auton Bay Misc Slot available. It now also gives the Auton Bay a Use key (B).


Apparently there's a limit of 3 attachments per post. Could a moderator add a post or two for me after the first post? Never mind, I uploaded them to Xelerus.

EDIT: New version of Mule Status (1.1) available in the first post. This fixes a problem where the status message would be added to all autons, caused by a bug introduced in 1.7B2.
Last edited by NMS on Sat Feb 11, 2017 3:29 am, edited 4 times in total.
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

Automatic Auton Numbering and Improved Mule Screens have been added to the first post. The titles of all the mods are now links to Xelerus pages.

Also, Improved Auton Bay Screens was updated to version 1.2 to fix two bugs related to the display of maximum device power use. It now shows the right units (MW) and it should now correctly display the reactor power for version 1.7A2 or later and that number minus 0.1 MW for older versions (where ships can't install devices with power use equal to their reactor power).

At this point, I feel like I've made all the improvements to auton usability I want that aren't major balance changes. So I'll probably try a full playthrough before I do any more.

EDIT: I updated the feature list for Improved Auton Bay Screens with a feature which was already included, but I forgot to mention:
- Fixes a bug in vanilla where repairing an auton's armor with the auton bay deletes its cargo.
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

Improved Auton Bay Screens is updated to version 1.3.

- Works around a vanilla bug with (objSetItemData) where replacing an auton's armor with identical armor sets the quantity of the auton stack to 1 if the autons have ever been launched or modified.
NMS
Militia Captain
Militia Captain
Posts: 569
Joined: Tue Mar 05, 2013 8:26 am

Improved Auton Bay Screens updated to 1.4:

- Fixes an issue where if damaged armor is installed on an auton, the auton bay redundantly or incorrectly describes the armor as damaged forever.
- Fixes a bug where if a mule auton's armor is replaced, all armor items in its cargo are moved to the player's cargo.
- Went back to the old code for replacing armor as long as the version is 1.7B5 or newer. This makes it less likely that identical autons will fail to stack. But still uses the code that fixes the disappearing auton item bug in older versions.

Improved Mule Screens updated to 1.1: Now disables the Unload action and makes Undock default when there are no items on board, matching the behavior of most screens in Disable Loot When Empty.

Also, thanks to a bug fix in 1.7B5, multiple mods can now modify the XML of the same type, so compatibility of XML-based mods should be improved.
Post Reply