Jump to content

[Mod] Alpha! Carrier commands


Nexus

Recommended Posts

DISCLAMER: When the 1.8 mod update is released, this mod install will be one way only. It will make non-reversable changes to your universe. A more detailed explanation will be added to the post as 1.8 nears

 

This mod adds a new UI to ships with hangars that will allow you to issue commands to launched fighters. While not perfect, it does aim to solve some of the issues with fighters and their limitations the best that it can. At least until koonchi gets a chance to work on them more.

 

The mod currently supports mining and salvaging fighters. The mod cant differentiate between the two, so it would be best if you limit your launched fighter type to one at a time. I am attempting to solve this, but its proving difficult. Most likely there is a API limitation preventing me from determining if a fighter is a miner or a salvager.

 

One thing I should note though, there can be intermittent problems with fighters not obeying commands. Also fighters wont go after loot directly like captained ships can, I tried and am still working on getting that part working. They will still pickup stuff if they get close enough though.

 

Installation:

Go to your Avorion installation directory, and drag the data folder into it. It will ask you to overwrite server.lua, do it the server.lua overwrite is needed to apply the new scripts I added.

 

The script should automatically apply to all ships with a hanger.

 

How to use:

The menu is only selectable from within the ship, so you must be currently piloting the carrier you wish to issue orders from. When you look in the upper right hand corner of the screen you should now see a second puzzle piece, that second puzzle piece will allow you access to the commands. Currently there are two commands, Salvage and Idle, hitting idle will disable the script. Maybe there will be more in the future =)

 

(1.7 Update) New command, Mine, fighters will seek out and mine ore rich asteroids only. An option will come later that will allow them to strip a sector.

 

Launch your fighters in defensive stance, it will only work if they are in this stance.

 

(1.5 Update) Now the commands will only be issued to fighters of the unarmed type, so miners and salvage. You can mix combat ships with salvage ships now.

 

Btw, if there is anyone who wants to suggest changes/optimizations to the code I'm all for it.

 

Uninstalling

Go to a close by empty sector before uninstalling, also your ship will most likely vanish after uninstalling..so break it down first

 

Due to the fact I'm binding a script to the player, if you uninstall this script you will need to do a few steps. First download the uninstaller script then install that like you would the mod, and leave the scriptloader.lua in its place. Then run the game once and load up the save, after it loads save and exit. You should now be able to remove scriptloader.lua safely.

 

If your installing this on a dedicated server, you should only have to run the uninstaller on the server itself.

 

Known Issues:

Putting fighters into 'attack my target' mode will cause them to stop working, that's an effect of the state, Keep them in defensive.

The salvage command effects all fighters not only salvage ones, working on it.(1.5 Update)Mostly fixed, commands only effect unarmed fighters now, so miners and salvagers.

The menu is available to ships without a hanger equipped.

Fighters wont go after drops directly, they will still pick up stuff they get close enough to, but that's it.

 

Changelog:

1.7(Current):

- Added mining Option, it currently only mines asteroids with resources.

- First iteration of a fighter settings menu.

- First set of *possible* fighter settings, at the time of this writing there are two settings being worked on.

    The first setting limits the number of fighters per wreck target -Has too many issues, need more time

    The second setting changes how wrecks are targeted, from the carrier position, to the fighter position. This disables the fighter limit per wreck as fighters will begin to spread out on there own anyways.

NOTICE: Only the menu UI for these options have been made, their programming hasn't been finished yet.

-Added tooltips for each option.

-Redid how the automatic unloader for scriptloader.lua. Instead of iterating through EVERY entity, it only gets those with the scripts attached.

-The salvage script for carriers auto terminates itself now when there is no wreckage left in the sector.

 

1.6:

Before installing 1.6, validate your files to remove the changes to defaultscripts.lua

-Removed changes to defaultscripts.lua(they are no longer needed)

-Script is now installed in the ship using onShipChanged rather than onSectorEntered, this means you no longer need to jump to another sector to enable the commands, they auto enable when you start/login to the map since each time you do that you 'enter your ship' so it always applies.

-Script now disables itself after the user logs off the server/world they are on. This is to assist with uninstalling

-Script now will clear itself from NPC ships..which where never meant to have it in the first place.

-Any galaxy created from 1.6 and up should not have any uninstall issues (ships vanishing/sectors being empty etc) so long as instructions are followed.

-Any galaxy created before 1.6 you will need to visit each sector you where in prior to uninstalling to remove the scripts from the NPC ships. If you don't your ship may randomly vanish when entering a sector, as a sector loading error will occur.

-You will notice a delay in logging off due to the script removal, this is normal.

 

1.5- MAJOR, Managed to get it so only non armed fighters will listen to salvage commands. So you can mix salvage fighters with combat fighters now. But don't mix salvage and mining fighters, as mining fighters count as unarmed.

1.4- Cleaned the script that handles attaching the new script to pre-existing ships. Faction issues should be completely solved with commanding fighters.

1.3- Scripts will now be properly applied to ships when jumping to another sector.

1.1- Cleaned up carriercraftorders.lua, fixed a derp with the code that was preventing the menu from showing up

1.0- Released

Uninstaller.zip

CarrierCommandsv1.6.zip

CarrierCommandsv1.7.zip

Link to comment
Share on other sites

  • Replies 151
  • Created
  • Last Reply

Top Posters In This Topic

Not working for me, dunno why.  Installed as you said to, launched game, no new orders, lack the extra puzzle piece you mentioned that should be in top right.  Double checked install locations, looked good there, restarted game, still nothing. Reinstalled the script, still nothing. Fighters just ignore wreckage unless I target it and tell them to attack.

 

Would your earlier captained ship salvage script be interfering? I do have that script installed, haven't tried yanking it out to try without, yet.

Link to comment
Share on other sites

Not working for me, dunno why.  Installed as you said to, launched game, no new orders, lack the extra puzzle piece you mentioned that should be in top right.  Double checked install locations, looked good there, restarted game, still nothing. Reinstalled the script, still nothing. Fighters just ignore wreckage unless I target it and tell them to attack.

 

Would your earlier captained ship salvage script be interfering? I do have that script installed, haven't tried yanking it out to try without, yet.

 

There both independent, humm, ill have to check the files, i did do some trimming just before i put up the files. I may have broken something.

 

EDIT: HA oops, damn it...typed '!=' instead of '~=' in a single spot, this is probably a good reason why i should not post mods while half asleep =P

Link to comment
Share on other sites

Removed the old scripts, installed the updated stuff... exact same lack of orders/new puzzle piece in top right. Have hopped out and back into ship, jumped sectors, restarted game, nothing, still.

 

Humm strange, can you put up your log file by chance?

 

Also when you installed the mod, were you asked to replace defaultscripts.lua? i overwrite that file to add in the ship menu

Link to comment
Share on other sites

Yes, replaced the defaultscripts.lua with your own. Lemme know if that's the wrong log, haven't yet poked at this games logging stuff.

 

All that matters is that its the most recent one =P

 

I see no errors in it....you know on a hunch is their a captain in the ship your in? This script only works on the ship your currently flying.

Link to comment
Share on other sites

There is. It's also the ship I'm usually flying myself, but still had no extra orders when I switched to drone and seleced it.

ahh, thats the problem, you need to be inside the ship for the orders to show up. So get back in your carrier and check the upper right hand corner for a second puzzle piece.

Link to comment
Share on other sites

That's where I first checked, nothing. Nothing after getting back in, either.

humm, ss by chance?

 

if all else fails try to run this command:

/run local ship = Entity() ship:addScriptOnce("data/scripts/entity/carriercraftorders.lua")

 

You may still have to jump a sector and come back though

Link to comment
Share on other sites

Working only after entering /run local ship = Entity() ship:addScriptOnce("data/scripts/entity/carriercraftorders.lua"), jumped a sector before attempting to use, but the extra puzzle piece showed up immediately.

 

Yes, i just managed to replicate the issue on my end as well..seems finicky ill look for a better solution to applying the script.

 

EDIT: oh..its not finicky.....it just defaultscript.lua seems to only be applied on ship founding...which is what i did, ill add something to the login code to check the playercraft for the script.

Link to comment
Share on other sites

Working great in multiplayer so far, just two players though. While both of us have the scripts installed, I'm the only one to have used them so far, due to my friend not finding any salvage fighters in time to use em before calling it a night.

 

hehe, I have made several updates today. Hopefully most of the annoying problems are fixed now.

Link to comment
Share on other sites

Works great so far, the only thing i noticed is that if enemies come withing the "defender" range they will try to attack enemies instead.

 

Maybe you can easily do this for mining ships as well?

 

there is a fairly similar script in mine.lua, on line 45 maybe that can help you out  ;)

Link to comment
Share on other sites

Works great so far, the only thing i noticed is that if enemies come withing the "defender" range they will try to attack enemies instead.

 

Maybe you can easily do this for mining ships as well?

 

there is a fairly similar script in mine.lua, on line 45 maybe that can help you out  ;)

 

Oh i know, my Captained ship salvage commands mod is based on a modification of the mine.lua. I do intend to add that, the only problem is that currently both salvaging fighters, and mining fighters count as unarmed. And currently because i cant seem to get the weaponType the fighter has for comparison I'm just checking if the entity counts as unarmed.

 

This means both mining, and salvaging fighters will obey the salvage commands. Once i get this worked out...if i get it worked out...I can hopefully add in the command for miners as well.

 

And as for the salvage fighters attempting to defend you..yah lol. It would be better if i could make them work under the 'attack' mode instead of the 'defend' mode. But it seems that attack mode fights me for control thus fighters just act all conflicted when set to that.

Link to comment
Share on other sites

 

Oh i know, my Captained ship salvage commands mod is based on a modification of the mine.lua. I do intend to add that, the only problem is that currently both salvaging fighters, and mining fighters count as unarmed. And currently because i cant seem to get the weaponType the fighter has for comparison I'm just checking if the entity counts as unarmed.

 

 

huh, i see what you mean with trying to get the weaponType from the fighters...  i've been trying myself for a bit now and everything seem to return "nil". It may be because i'm debugging wrong, i'm not that experienced in lua yet.

Link to comment
Share on other sites

I have a problem. I tried to remove your mod but I got error message (no connection to server). So I deleted the whole game and all the files and load it again, but I got still the same error message. After some experiments I reproduce the error if I only delete your scriptloader.lua.

I saw in the player_1.dat (part of the save) file that there is a connection to your scriptloader.lua... any solutions? Or I do something wrong?

Link to comment
Share on other sites

I have a problem. I tried to remove your mod but I got error message (no connection to server). So I deleted the whole game and all the files and load it again, but I got still the same error message. After some experiments I reproduce the error if I only delete your scriptloader.lua.

I saw in the player_1.dat (part of the save) file that there is a connection to your scriptloader.lua... any solutions? Or I do something wrong?

 

Check data/scripts/server/server.lua and remove the line "player:addScriptOnce("player/scriptloader.lua")" if it is still present, other than that I would have no clue why it is causing you not to load and i would need to see the server log.

 

@balabalalde, is the mod installed on both the client and the server? As that should not be happening..unless i goofed somewhere...Server log would also be helpful.

 

Also the command was  /run local ship = Entity() ship:addScriptOnce("data/scripts/entity/carriercraftorders.lua") but i would like to see a server log first.

Link to comment
Share on other sites

Possible to add a Mining Button?

 

I know, you cants have mining and salvage at the same time, but if i give salvage ships in, and the mining out, i can go mine, or?

Would you implement them like you captains mod?

 

I could try to see if the mining fighters will work in the same way, Not sure though. Remember im using an oddity i noticed in the salvage fighters for this to work..since i cant seem to attach scripts to them or command there AI directly. But ill check to see if miners can work in the same way.

Link to comment
Share on other sites

your salvage fighters may follow you to some salvage that is closer to the ship

It is possible to toggle this feature via menu ?

Sometimes it is useful, sometimes not like you you salvage self a big wreck while you release your fighter on cloud of wrecks.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...