Jump to content

Nexus

Members
  • Posts

    68
  • Joined

  • Last visited

Posts posted by Nexus

  1. Haven't ran into any troubles with the mod yet,

    only thing I can remark is that the symbol for the carrier commands is the same as the insurance one.

    This is a little bit distracting, especially since they are placed next to eachother.

     

    I have tried numerous times to change this. Sadly haven't figured it out yet.

     

    Ah too bad, the sector overview mod is using another image type so maybe you can find more direction there.

     

    Also we started to receive an error on player login, is that because that file doesn't need to be there on the client?

    Sat Feb 25 14:28:57 2017| could not execute function 'initialize' in '"data/scripts/player/scriptloader.lua"':
    Sat Feb 25 14:28:57 2017| data/scripts/player/scriptloader.lua:7: attempt to call global 'Server' (a nil value)
    Sat Feb 25 14:28:57 2017| stack traceback:
    Sat Feb 25 14:28:57 2017|     data/scripts/player/scriptloader.lua:7: in function <data/scripts/player/scriptloader.lua:4>
    Sat Feb 25 14:28:57 2017| 
    Sat Feb 25 14:28:57 2017| Setting script "data/scripts/player/scriptloader.lua" to invalid.

     

    Is that occurring on the client or the server?

     

    Also, it really only runs on the server, as its meant to handle applying the script to the player on the server. But the player still needs the scripts on his client for it to work.

     

    EDIT: ask them if they are attempting to join with an older version by chance...

     

    nice mod, at least a reason to use fighters at all (though you still need to babysit them quite a bit).

     

    a few features i'd love to see which ain't named in the topic:

    (allhtough i've got no idea how doable they are)

     

    - target-priority by amount

    - target-priority by quality

    maybe even some kind of mathematical formula like amount * quality / distance. even better of course if it would be possible to tell them to ignore some kind of materials.

     

    it's a bit sad if you see all squads run after a 5 iron-wreckage while there is a tasty 50k avorion-wreckage just 200m further the other direction. i'd love to be able to only mine/salvage the interesting stuff and after that let the worthless stuff despawn while i continue on. especially as it's a tad boring to wait to let all your fighters land again before you can jump again (not your mod's 'fault', but it would make salvaging/mining a bit less tedious)

     

    Technically, filtering by material type isn't really that hard. As its a quick resource type compare. Amount pretty much falls into the same boat.

     

    Ironicly, the hard one is limiting the number of fighters per wreck...as i need to maintain and compare two tables (arrays are tables in lua). One table contains all wrecks, another contains wreck id's as keys with the amount of fighters as its value, (So I can top off asteroids if they don't have the required number of fighters on them).

  2. The data file is unpacked and in the right place but no salvage option appears in the orders menu. I am playing on beta but i will try a complete reinstall and see if that helps. Thanks for the info

     

    I would check the log file to see if there is any error in it as well.

  3. Haven't ran into any troubles with the mod yet,

    only thing I can remark is that the symbol for the carrier commands is the same as the insurance one.

    This is a little bit distracting, especially since they are placed next to eachother.

     

    I have tried numerous times to change this. Sadly haven't figured it out yet.

  4. Ok, I should note what is being done in 1.8 as well as future plans.

     

    1.8 May or may not include the following:

    - *35% Done* Rewrote most of the code to clean it up a bit, as well as add comments where needed.

    - *35% Done* Added in some one-time notifications for the user to indicate what is happening when you issue a command.

    - *Maybe* Attempting to add a wreck volume limiter and a fighter limiter

    - *Maybe-Unlikely* I may have a way of making fighters go after loot, not certain.

    - *Maybe-Unlikely* add a fighter option to make your non combat fighters invulnerable for a constant power cost

    - *Maybe-Unlikely* Armed fighters will get a option to increase survivability for a constant power cost.

    - *Maybe-Unlikely* Possible fighter pilot ejection method, to save them from death!

    - *Maybe-Unlikely* Auto-replacement of lost fighters.

     

    After 1.8 depending on what makes it in, I have been messing with the possibility for a long time to allow you to design your own fighters. Mind you, for awhile now I have had a way of doing this but it is quite terrible. Using the new carrier UI I intend to make it possible to start new fighter designs from it, as well as set fighter production and replacement stuff. The problem is that it is VERY complex to make work and to generate the fighters properly. So it will take quite a bit to get finished, far longer than 1.8 would take.

     

    That being said, as most of you know launched fighters are bugged and don't have the proper health and shield stats when launched. This is something i hope to correct when i get around to making fighter designing a thing.

  5. seems to be possible to have a single 'automate both' command - when you check available fighters and select a target in findAvailableFighter

     

     

    launchedFighter.stoneEfficiency should tell if it's a salvager or a miner so it can target a wreck or an asteroid accordingly

     

    Since the fighter is being passed as an entity, stoneEfficiency isn't accessible. When you try to run launchedFighter.stoneEfficiency, this happens 'property not found or not readable: Entity.stoneEfficiency'. I'm currently looking into another method...which is also making my head hurt...badly.

  6. One thing i thought about when using this mod, if perhaps there was a way to tie salvage fighters and mining fighters to the ranges of equipped mining modules and object detection modules respectively. Making them dependant on the mother ship infrastructure for seeking out wrecks and roids .

     

    Technally, maybe possible but since fighters are actual piloted ships, they should be able to find targets on their own.

     

    Also, PROGRESS the option to change the targeting perspective from the carrier to the fighter is done. And they spread out nicely.

    ZiGnpqN.jpg

     

    And yes, that's my now butchered carrier on testing branch...which I'm rebuilding.

     

    And released, mind you one option didn't make it due to problems. Ill work on it as well as a new mining option.

  7. we have any eta on 1.7 ?

     

    this is working really great cant wait for the mining version to get out.

     

    Admittantly, i took a break for a few days....as for 1.7 SOON

     

    EDIT: Currently fighting with the ui...attempting to use entitydbg.lua as an example but apparently either their is something special im missing. Or its just being annoying to be annoying as i cant do it the same way entitydbg.lua does..the script just stalls.

  8. Do you have acces to the squadron menu from code? It'd be useful to have each squadron have it's settings wheter to mine, salvage or idle

     

    No, the hanger component defines the squadrons, but the FighterController determines how they act...i don't have access to the FighterController.

  9. With very minimal editing, I added another option and made them automatically mine for me. Salvage is awesome, but both is better =D Great script, thank you!

     

    I was just about to ask for this specific thing! Would you care to share how you did that? =)

     

    Also a big shoutout to Nexus, this mod is amazing and made a great game even more fun for me

     

    Mining is coming in 1.7, along with some fighter settings...assuming they work =P

     

    You can look at the main post for info on that

  10. If you can get it to ignore things below a certain size, that would be quite helpful.  I often have my 30 fighters all spamming a single tiny block for five minutes at a time because it is too small for them to target, but then they hit a large ship and strip it to almost nothing in a few seconds.  If they could just ignore the stuff that is too small for them to actually hit, they would be almost perfect since you fixed the problem the base game had.

     

    Thanks for all the work you have done so far, it has helped out a ton already. :)

     

    Tbh, that's really an issue with the main game that needs to be addressed. Not sure if you noticed it but it almost looks as if laser type weapons, (Mining, salvaging, and laser fighters) all seemingly target on a grid. Even if its not a true grid, its jumping around and this is creating blind spots where it just cant target.

     

    Strangely larger fighters seem to suffer from the issue less, I suspect their weapon has a larger hit box.

     

    EDIT: That being said, ill see what can be done. I want to advance the Command menu to include settings and such...this would fit into that setting area. That being said I'm not going to guarantee that i can get it to work, but ill try.

  11. Can you add an adjustable function to ignore a wreckage with less then x of material or smaller than x*y*z

    Lets say for a default value: Ignore everything with less then 100 units or 1x1x1

     

    Sometimes my fighters are hunting a 1-material-supersmall-block for hours ... :D

     

    And, can you add a function to split the groups to get their own target? sometimes they all hunt the same little block, not that good i think :)

     

    Been thinking about trying to link a menu to the player ship that would allow you to set such things. But not quite sure how to achieve that yet. Ill work towards it.

     

    As for targeting different things, i have been debating with myself how this could be done well. As with the above thought, i was thinking a config menu that only assigned so many fighters per target before it went on to a new one. Just not sure how to manage all active targets yet.

  12. I've a minor issue that's kinda annoying would it be possible to change the salvagers behavior so that if no wreck is in sector they'd idle around the mothership?

     

    Currently they charge into the enemy which is quite annoying.

     

    Question, are there really no wrecks or where you attacked? Due to the nature of how things are in the game atm and the fact they will only accept commands in defensive mode if you are attacked they will try to defend you...which can be a bit annoying and until fighter controller is opened up i cant really do much to prevent it.

     

    Although, i could make your salvage ships invulnerable...which would prevent them from dying.

     

    I should also state, that I don't have full control over fighters yet, I would need the api for the FighterController component opened up first

     

    If they really are just openly attacking with no salvage present..then ill definitely have a look.

  13. I suggest the carrier commands and fighter for salvaging.

    When you notice how the AI doing mining and salvaging too, you just thing are they drunk !.

     

    Fighter still do fighter behaviour while salvaging but they do it better then an AI ship.

     

    The only problem are to get good salvage fighter. We need a fighter factory that works like the turret factory.

     

    Working on that as well, but making it based in your carrier..well trying to anyways.

  14. well i tryed to combine it with the safe mining mode ... and no luck still cant see the buttons ,,,

    what i am missing ?

     

    local splitter = UIHorizontalMultiSplitter(Rect(window.size), 10, 10, 8)
    
        window:createButton(splitter:partition(0), "Idle"%_t, "onIdleButtonPressed")
        window:createButton(splitter:partition(1), "Passive"%_t, "onPassiveButtonPressed")
        window:createButton(splitter:partition(2), "Guard This Position"%_t, "onGuardButtonPressed")
        window:createButton(splitter:partition(3), "Patrol Sector"%_t, "onPatrolButtonPressed")
        window:createButton(splitter:partition(4), "Escort Me"%_t, "onEscortMeButtonPressed")
        window:createButton(splitter:partition(5), "Attack Enemies"%_t, "onAttackEnemiesButtonPressed")
        window:createButton(splitter:partition(6), "Mine"%_t, "onSafeMiningButtonPressed")
    window:createButton(splitter:partition(7), "Salvage"%_t, "onSalvageButtonPressed")
    window:createButton(splitter:partition(8), "Clean Sector"%_t, "onSalvageAllButtonPressed")
    

     

    i see untill "mine" in game ...

     

    Did you also add the two functions onSalvageButtonPressed and onSalvageAllButtonPressed that are later in the file?

  15. Currently fighters start firing while out of range of their target. In rare cases they will complete there strafing run with out even getting in range of the target.

     

    I also cant help but notice that fighters, with beams based weapons at least, seem to almost snap to a grid when tracking an object. This is causing them to miss things. Which while not a big issue for combat fighters, mining and salvage fighters have alot of problems with it. In some cases missing a target for awhile, and in rare cases never hit the target.

  16. It's the FighterController component, you can't access that with scripts atm. Fighters not having scripts attached is not something that was explicitly done, there just wasn't a reason yet, so I kept the entity as small as possible.

     

    ahh, that makes me sad, oh well all good things in time.

     

    What about the weapon it uses? I can pull out very little info, almost all of it returns nil.

     

     

  17. Now i have been trying to poke around fighters for quite some time now...But there are somethings that...well i have questions about.

     

    1) Cant help but notice that something keeps exerting its control over the fighters, what component is that, and do we have the ability to control it?

     

    2) Fighters seem to be incapable of having a script applied, is that intentional?

     

     

  18. That's a legit error created by the server since it expects all scripts to be there. It's basically there to show me immediately when something is wrong.

    Yup, that's what happens if you don't unbind scriptloader.lua from player properly...if i remove carrier commands it just causes the sector to reset..and in some cases the sector vanishes completely your ship included but alas i have gotten around that now.

  19. I like it, although if all this modding takes off. We're going to need some better handling if a script suddenly goes missing from a ship =P

    Carrier Commands mod has proven binding things to player ships/players themselves is dangerous.

    What happened?

    Well if someone tries to remove the mod the server errors out and resets the sector....even removing the players ship in the process. I managed to mitigate most of it in 1.6 but that's not released yet....standby let me see if i can find one of the old logs...bah dont have any for if i remove the scripts that add the menu to the carrier....but i do have one for the script loader

     

    Well, if you just outright remove the script loader

    http://pastebin.com/xs89nHKT

     

    EDIT: that being said, part of it was my fault accidentally binding the script to NPC ships as well...because I'm and idiot =P

     

     

  20. Okay, so, let's discuss this.

     

    I think we can all agree that perfect mod compatibility is generally impossible. Imagine two mods doing the exact opposite of each other, and you've got a conflict, easy as that.

     

    But we can make it so that conflicts appear much less often. I've spent quite some time to think on this and my proposal is this:

    Since in lua, you can just redefine a function, it would be possible to read one script, and then read another script. Imagine 2 scripts that tinker with shipyard.lua. They both have to inject the update() function. What you could do is, in the second script, save the update function and write your own that calls the old one. Like this: 

    local updateOld = update
    function update(timeStep) 
        updateOld(timeStep)
        print("this is my custom output")
    end 
    

     

    The new update() function would replace the old one and call it. The neat thing is: You can repeat this as often as you want actually.

     

    This would be the start. In order for this to work, I'd suggest a second folder which is left untouched by steam updates, so you don't have to reinstall all your mods every time a new update hits. Maybe even a separate folder for every mod that's downloaded when logging into a server, so you have your server mods but they won't pollute your custom games.

     

    The game would load the vanilla script and then load all the modified ones it finds, afterwards. You could, for example, name them shipyard.lua.1 and shipyard.lua.2. Those lie around in the mods folder, and Avorion looks for them, sorts them lexicographically so load order is deterministic, and loads them as well in deterministic order after the vanilla one, into the same VM (or lua_State).

     

    This could work for all scripts, and you wouldn't need diffs.

     

    Any objections? Anything that wouldn't work with this system?

     

    I like it, although if all this modding takes off. We're going to need some better handling if a script suddenly goes missing from a ship =P

    Carrier Commands mod has proven binding things to player ships/players themselves is dangerous.

     

    EDIT: So for carrier commands i would do something like this:

    --Filename: server.lua.override < does it have to be a number?>
    local onPlayerLogInOld = onPlayerLogIn
    function onPlayerLogIn(playerIndex)
        onPlayerLogInOld(playerIndex)
        local player = Player(playerIndex)
        player.addScriptOnce("player/scriptloader.lua")
    end
    

     

  21. Well I might have a solution, but it wont be ready for a few days. Managed to successfully remove the scripts without loosing the ship, the sector still complains but its mitigated.

     

    EDIT: Well that went better than expected...spent several hours last night redoing the scriptloader.lua...and it worked the first time.

     

    Simply put, I modified scriptloader.lua to remove the script from the player ship each time the user logs off. This was done so if the user logged off to uninstall there would be no problems. I also added a recursive check that removes the scripts from the NPC ships in the sector as apparently that was why the sector was resetting.

     

    That being said, saves older than the 1.6 update(soon) inorder to uninstall, you would have to visit each sector you where in and logout(server) or go back to the main menu and relaunch the map each time(singleplayer), before running the uninstall script. Ill probably add an on sector entered variant as well to help with this.

  22. Ok thx but now I have other problem. After I used your installer I can load my save (a fresh modfree game) but I start with the drone and every sector is empty. Can you confirm this with a fresh installation.

     

    EDIT: Ok, did you verify your files after using the uninstaller? If the sector is vanishing then the DefaultScripts.lua changes may still be there as that will cause a failure of the function generate in generatesector.lua

     

    Standby ill modify the uninstaller to fix this...i have no clue why it didn't show up before. That being said since it saves when you load the ship is probably gone (sorry) there is a good reason i labeled this script/mod as an alpha =P

     

    Ill update this post when i finish the changes.

     

    After I used your uninstaller (and save the game), I deleted the whole script folder and verify the game by steam.

     

    No problem. I have a lot backups of my save :D And I can also play the game with your mod. I just wanted to test something because sometimes I click on the Trade-Overview icon and nothing happened (ship with trade module). So I wanted to find out if it's your mod or vanille game ^^

     

    Yah, sorry about this...I thought I had gotten all the installing/uninstalling kinks out.but now I'm worried about other people....ill need to change the disclaimer. I may remove the downloads until I can figure out a better solution...

  23. Ok thx but now I have other problem. After I used your installer I can load my save (a fresh modfree game) but I start with the drone and every sector is empty. Can you confirm this with a fresh installation.

     

    EDIT: Ok, did you verify your files after using the uninstaller? If the sector is vanishing then the DefaultScripts.lua changes may still be there as that will cause a failure of the function generate in generatesector.lua

     

    Standby ill modify the uninstaller to fix this...i have no clue why it didn't show up before. That being said since it saves when you load the ship is probably gone (sorry) there is a good reason i labeled this script/mod as an alpha =P

     

    Ill update this post when i finish the changes.

×
×
  • Create New...