sirdiazo / agext Goto Github PK
View Code? Open in Web Editor NEWAction Groups Extended
Action Groups Extended
I moved a plane from the SPH to the VAB (the craft was created in the SPH and I then loaded it in the VAB via the new 0.90 load menu), changed some stuff on it (didn't do anything with action groups, I don't even have any assigned) and then saved the plane. Then I launched the plane but the game got stuck in a quite weird state (reentry effects showing on the plane, weird camera angle etc.) and I got a lot of NullRefExceptions from other mods, probably because something used wasn't initalised properly.
I then went to the Space Center via the menu and tried to launch the craft directly via the launchpad. This resulted in the same error as before. When I tried to edit and save the craft again (now the newly saved VAB version of it) it still gets an error on save.
Some facts:
The error:
NullReferenceException: Object reference not set to an instance of an object
at ActionGroupsExtended.AGextScenario.SaveAGXActionVer2 (ActionGroupsExtended.AGXAction agxAct) [0x00000] in <filename unknown>:0
at ActionGroupsExtended.ModuleAGX.OnSave (.ConfigNode node) [0x00000] in <filename unknown>:0
at PartModule.Save (.ConfigNode node) [0x00000] in <filename unknown>:0
at ShipConstruct.SaveShip () [0x00000] in <filename unknown>:0
at ShipConstruction.CreateBackup (.ShipConstruct ship) [0x00000] in <filename unknown>:0
at EditorLogic.saveShip () [0x00000] in <filename unknown>:0
(Filename: Line: -1)
Logs, Crafts and the last few AGExt cfgs: https://www.dropbox.com/sh/xgxx9xn64rvozsa/AACgEQ-v6KN4ITUiyOw8q5_ca?dl=0
VAB# apparently added an extra letter somehow. Check that VAB# and name always match.
@hvacengi In one of the kOS issue threads I saw you mention that you are doing an optimization pass and that the AGX code in kOS was on your list to look at.
(I closed the webpage and now can't find the thread again, it was one that came up on my watch list over the weekend.)
I currently don't have working test code to show, but I'm currently reworking AGX, (mainly for the new GUI system) and I am looking at changing how AGX interfaces with mods by using the new GameEvents system.
First, I'm not getting rid of the currently reflection system being used so feel free to keep using it.
However, the new GameEvents system looks to be simpler because supposedly if AGX creates an event and kOS subscribes to it, kOS can fire the event. That would be a lot cleaner then all the reflection code currently being used, at least in terms of amount of code required.
Now, as for actual questions:
I will also try to throw together some proof of concept code for you to actually see what I'm talking about tonight, wanted to get this issue opened so I don't forget about it.
to investigate
KSP only allows to set standard action groups (gear, brakes, lights, RCS, SAS....) in the editor. AGX instead allows to edit any of its action groups while in flight, and is a valuable tool to correct the actions associated, in particular while docking/undocking vessels.
Would be great if AGX could deal also with those standard action groups like those were its own.
If a mod leaves the editor in a non-standard way, AGX will not necessariy save.
-Add save code to edtior OnDisable
Add kOS support
Add support
Many parts that have exceptions added still show multiple actions with the same name in the GUI so the player can not tell what does what.
Is it possible to display some other property to the player to tell actions apart? Investigation required.
Investigate reports of actions not saving across editor session.
-suspect mod allowing leaving of editor in a non-standard way.
While trying to find a settings fix for CFC issue i found out, that when i open right click menu in flight the header texts fonts of other open mod windows switch. Closing AGExt right click menu set the fonts back to normal.
http://www2.pic-upload.de/img/32025200/Unbenannt-1.jpg
http://www2.pic-upload.de/img/32025204/Unbenannt-2.jpg
I have about 200 quicksave files in my main savegame, created with the alt-F5 shortcut (named quicksave #1.sfs
, quicksave #2.sfs
, and so on, all the way up to quicksave #200.sfs
). I recently noticed that going to the KSC scene from the main menu suddenly started taking a ridiculously long time; 2 minutes on average.
Then I noticed in Process Monitor that KSP was going through every single .sfs
file in my savegame directory and loading each and every one of the 200 files into memory, presumably parsing each one as it went. I eventually was able to find a call stack for one of the thousands of ReadFile
calls, and mono_pmip
led me to the culprit, ActionGroupsExtended.AGExtMainMenu.DeleteOldSaveGames
.
I appreciate the intent of DeleteOldSaveGames
to keep the savegame directory free of unnecessary AGExt*.cfg
files, but surely there's a better way to do this than to load and parse every single .sfs
file in the directory every time a savegame gets loaded. Keeping 200 quicksaves around might sound a little excessive, but I did it under the understandable assumption that the game would never have any reason to load and parse all of them.
Short of rewriting the DeleteOldSaveGames
function to be more efficient, perhaps an option could be added to AGExt.cfg
to disable this cleanup functionality? Or at the very least, it would probably be helpful to print something on the KSP log so others who run into this problem can get an idea of what's taking so long; tracking down the source of this slowdown was a bit of a pain.
Is it possible to add staging queue that work the same as Spacebar does?
Would be a nice feature and help with docking/undocking.
Undo in editor is not working correctly
So, the mod is nice and very usefull.
However I have a major problem with it : any time I go EVA, the custom action groups I'd defined disappear when I get back in the ship.
Which is annoying as it forces me to redefine the same action groups multiple times.
The revert button on the ESC does not appear to reset flight mode entirely, looks like loadFinished is not set false when this happens.
Tie into the button somehow?
First of all, I love AGExt. It's amazing, and by far one of my favourite mods.
Today, I decided that whenever I use staging (spacebar) I make too many mistakes, and so I should simply do all my staging via AGExt. Consequently, today was also the day I discovered when an engine activates via AGExt, it doesn't activate the gimble (provided by ModuleGimbal
). Gimbals do activate if the engine is later staged (even if it's still active). The "toggle gimbal" in AGExt doesn't provide relief here when combined with activating the engine, instead it marks the gimbal as locked, as it doesn't even activate when the engine is staged.
I don't know if there's any way around this; gimbals might be hard-coded to only activate when staged, but if there is a way around this, that would be amazing.
In case it assists, here's my current mod load-out:
$ ckan.exe list
KSP found at /home/pjf/.steam/steam/SteamApps/common/Kerbal Space Program
KSP Version: 0.25.0
Installed Modules:
✓ AGExt 1.23c
✓ AJE 1.6.4
✓ AlternateResourcePanel 2.6.1.0
✓ Chatterer 0.7.1
✓ CIT-Util 1.0.4-unofficial
✓ CommunityResourcePack 0.2.3
✓ CommunityTechTree 1.1
✓ CrossFeedEnabler v3.1
✓ CustomBiomes 1.6.8
* CustomBiomes-Data-RSS v8.2.1-actually-v8.3preview
✓ DDSLoader 1.7.0.0
✓ DeadlyReentry v6.2.1
✓ DMagicOrbitalScience 0.9.0.1
✓ DogeCoinFlag 1.02
✓ EngineIgnitor-Unofficial-Repack 3.4.1.1
? EVE-Overhaul-Core 0.0.2014.11.25
✓ FerramAerospaceResearch v0.14.4
✓ FinalFrontier 0.5.9-177
✓ FinePrint 0.59
✓ FirespitterCore 7.0.5398.27328
✓ HotRockets 7.25
✓ InfernalRobotics 0.19.2
✓ Karbonite 0.4.4
✓ KAS 0.4.9
✓ KerbalAlarmClock v3.0.5.0
✓ KerbalConstructionTime 1.0.3
✓ KerbalJointReinforcement v2.4.4
✓ kOS 0.15.3.0
✓ KronalVesselViewer 0.0.4_0.25
✓ MechJeb2 2.4.0
✓ ModuleManager 2.5.1
✓ ModuleRCSFX v3.3
? NathanKell-RVE-Haxx 0.0.2014.11.25
✓ ORSX 0.1.3
✓ PartCatalog 3.0_RC8
✓ PlanetShine 0.2.2
✓ PreciseNode 1.1.1
✓ ProceduralDynamics 0.9.1
✓ ProceduralFairings v3.10
✓ ProceduralParts v0.9.20
✓ RealChute 1.2.6
* RealFuels rf-v8.1-really-v8.2-pre
✓ RealismOverhaul v7.0.2
* RealSolarSystem v8.2.1-actually-v8.3preview
✓ RemoteTech v1.5.1
✓ RemoteTech-Config-RSS 0.0
✓ RP-0 v0.13
✓ RSSTextures4096 1.0
✓ SCANsat v8.0
✓ ScienceAlert 1.8rc1
✓ ShipManifest 0.25.0_3.3.2b
✓ StageRecovery 1.5.1
✓ SXT 18.6
✓ TACLS v0.10.1
✓ TACLS-Config-RealismOverhaul v7.0.2
✓ TechManager 1.4
✓ Toolbar 1.7.7
↑ TweakScale v1.44
✓ UKS 0.21.3
✓ UniversalStorage 0.9.4
✓ UniversalStorage-KAS 0.9.0.14
✓ UniversalStorage-TAC 0.9.2.7
✓ USITools 0.2.4
Legend: ✓ - Up to date. ✗ - Incompatible. ↑ - Upgradable. ? - Unknown
Many, many thanks!
~ Paul
Hey SirDiazo!
I love AGE, and I'm hoping to write a CKAN metadata file for it shortly.
I'm just wondering if we can have version 1.20a marked as a "pre-release" on github, so our indexing bot doesn't try to pick it up? It should just be a case of going to the release edit page and ticking the "pre-release" box at the bottom.
Many thanks!
~ Paul
Auto-save on leaving editor is not fuctioning correctly.
Move from GameEvent to Scenario OnSave
Exception code needed for actions on KSO shuttle
Add ability to copy actions from one group to another.
Only real issue is where do I put this? I'm thinking the bottom of the groups window?
And on copy, do I delete actions in the group being copied to first?
Is it possible to have an action group automatically activate a set time interval after a different action group?
Add remotetech support
After comparison with other players dll list in the CameraFocusChanger thread, i tracked the problem to AGExt. Perhaps it's a setting?
Edit: I'm absolutely sure, i used both back in 1.1.2
Edit 2:
I changed in file "AGExt.settings"
from:
LockOutKSPManager = 1
to
LockOutKSPManager = 0
Does this bring any known issues to AGExt or other mods? What is this config line made for?
Investigate RPM support for use in IVA
All of the settings screens are blank in 1.3, but a recompile works (mostly). Would it be possible for a recompiled version to be added to the releases?
I don't know if this is my lack of experience, but I do not seem to be able to get back into numbered group level (I am on sandbox mode) when I click show a list of all parts
Add AGX icon to stock toolbar if blizzy's toolbar not installed?
Actions on parts with the BTSM mod need exception code added.
BTSM is unknown mod at this point.
Hi,
I've installed AGX on my long-ago-started science carreer (1.0.4) and KSP would just freeze on the black loading screen, when loading the save from the main menu (when launching KSP, not from within a game).
1- First workaround was either to create a new game (science, career or sandbox, doesn't matter), then quitting the new game ("quit to main menu"), then loading my save.
2- Second workaround was to load another game: I had a sandbox game with no flight in it (just a brand new sandbox career in which I've never played), then go back to main menu, then load my science career and everything was fine.
Then I decided to go and clean old savegames in my science career folder, removed 2Gb worth of obsolete saves and a TON of old AGX files. I only kept those of today. Game would load directly without freezing - confirmed it several times. However it takes quite some time to load - a good 30-40sec maybe.
In the end, I think the game was never actually frozen/crashed, it was just rummaging through the nearly 300 AGX files in the folder. After cleaning up, there were 3 AGExt00xxx.cfg files left (~380kb each, today files - looks like I hit F5 3 times today ...), which could explain why it takes so long.
Maybe an automatic clean up procedure is required here?
Anyway - this mod kicks ass, I've been dreaming of one of those for a looong time :D
See what Firov says about making SmartParts AGX aware.
Fast switching between vessels can cause data loss.
Suspect load of vessel does not finish before moving away from vessel.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.