FreeThinker Posted August 23, 2015 Share Posted August 23, 2015 (edited) Alright, it seems useThrottle feature, is not functioning correctly, it seems to interpret this as transferring the ship in the Y- axis, while instead should be going in the X-axis (in the main heading direction of the vessel). This is possibly one of the best features of ModuleRCSFX, so why isn't working correctly?I made a pull request with the fix I verified myself Edited August 24, 2015 by FreeThinker Link to comment Share on other sites More sharing options...
NathanKell Posted August 24, 2015 Author Share Posted August 24, 2015 As discussed on git, the problem is not that it's using the wrong axis; Y is the correct axis. The problem is the order of operations, it needs to be done before the rotation is applied, because the Y axis needs to be the vessel's Y axis, not worldspace Y.CHANGELOGv4.2* Fixed bug where inputs were being improperly normalized (thanks Starwaster!)* Fixed a bug in applying useThrottle (was being done in global Y not local Y; ditto). Link to comment Share on other sites More sharing options...
sarbian Posted August 24, 2015 Share Posted August 24, 2015 And force those using Mechjeb here is a module to fully support it : MechJebRCSFXExt. You NEED Mechjeb2 dev version #507 or later for this to work Link to comment Share on other sites More sharing options...
FreeThinker Posted August 24, 2015 Share Posted August 24, 2015 (edited) The Throttle bug now seems correctly fixed, but my hard dependency on ModuleRCSFX causes player games to crash after ModuleRCSFX was updated.Therefore to prevent any future version problem, I will use a clone of ModuleRCSFX called FNModuleRCSFX until I can find a better solution for my ElectricRCSController which depends on ModuleRCSFX features Edited August 24, 2015 by FreeThinker Link to comment Share on other sites More sharing options...
HansB Posted November 14, 2015 Share Posted November 14, 2015 Is there something wrong with moduleRCSFX? if i install in 1.0.5, the rcsthusters don't load.KSP log:[EXC 10:14:13.278] MissingFieldException: Field '.ModuleRCS.G' not found. PartModule.Load (.ConfigNode node) Part.AddModule (.ConfigNode node) PartLoader.ParsePart (.UrlConfig urlConfig, .ConfigNode node) PartLoader+.MoveNext ()[EXC 10:14:13.286] NullReferenceException: Object reference not set to an instance of an object ModuleRCS.FindThrusters () ModuleRCS.OnStart (StartState state) ModuleRCSFX.OnStart (StartState state) Part.ModulesOnStart () Part+.MoveNext ()[EXC 10:14:13.290] MissingFieldException: Field '.ModuleRCS.G' not found.If i remove dll, it starts normally.... Link to comment Share on other sites More sharing options...
Starwaster Posted November 14, 2015 Share Posted November 14, 2015 Is there something wrong with moduleRCSFX? if i install in 1.0.5, the rcsthusters don't load.KSP log:[EXC 10:14:13.278] MissingFieldException: Field '.ModuleRCS.G' not found. PartModule.Load (.ConfigNode node) Part.AddModule (.ConfigNode node) PartLoader.ParsePart (.UrlConfig urlConfig, .ConfigNode node) PartLoader+.MoveNext ()[EXC 10:14:13.286] NullReferenceException: Object reference not set to an instance of an object ModuleRCS.FindThrusters () ModuleRCS.OnStart (StartState state) ModuleRCSFX.OnStart (StartState state) Part.ModulesOnStart () Part+.MoveNext ()[EXC 10:14:13.290] MissingFieldException: Field '.ModuleRCS.G' not found.If i remove dll, it starts normally....ModuleRCSFX functionality has been implemented in ModuleRCS. AFAIK it's not going to be necessary any longer? Link to comment Share on other sites More sharing options...
HansB Posted November 14, 2015 Share Posted November 14, 2015 Ok thanks. But it's still available on CKAN, thats why I installed it. Link to comment Share on other sites More sharing options...
Phineas Freak Posted November 14, 2015 Share Posted November 14, 2015 (edited) Starwaster said: ModuleRCSFX functionality has been implemented in ModuleRCS. AFAIK it's not going to be necessary any longer? Yes, it is now stock. Although we lost the flexibility of defining separate custom thrust directions for each port (e.g. Port, Starboard, Yaw, Pitch Roll) that ModuleRCSFX had. Edited May 21, 2016 by Phineas Freak Link to comment Share on other sites More sharing options...
Starwaster Posted November 14, 2015 Share Posted November 14, 2015 Yes, now it is stock. Although we lose the flexibility of defining separate custom thrust directions for each port (e.g. Port, Starboard, Yaw, Pitch Roll) that ModuleRCSFX had.No we don't. That's in too. Same field names too I think. Link to comment Share on other sites More sharing options...
ialdabaoth Posted November 14, 2015 Share Posted November 14, 2015 can we bind sounds to RCS thrusters now? Link to comment Share on other sites More sharing options...
Phineas Freak Posted November 14, 2015 Share Posted November 14, 2015 No we don't. That's in too. Same field names too I think.Weird, because when i right - click on the parts i can only see the thrust limiter slider. Link to comment Share on other sites More sharing options...
Starwaster Posted November 14, 2015 Share Posted November 14, 2015 Weird, because when i right - click on the parts i can only see the thrust limiter slider.Thats right, I forgot RCSFX had that capacity. The stock ones probably need to be configured in their part cfg. Nathan did the fixes, I'll ask him in irc. Or maybe he'll chime in here. Link to comment Share on other sites More sharing options...
NathanKell Posted November 14, 2015 Author Share Posted November 14, 2015 The stock parts support the axis restriction, they just don't have the buttons enabled in the editor to do it ingame. A simple plugin module could sit beside the RCS module and toggle those.ialdabaoth: I gave up on doing EFFECTS because there would need to be a way to handle it per thruster transform rather than for all transforms at once, and I didn't have time to write something like that.Per Starwaster, with pretty much all the current functionality of this mod in stock, this will not be maintained. Please let the CKAN people know if you are able to install this on 1.0.5, because you should not and they should fix that. Link to comment Share on other sites More sharing options...
tmikesecrist3 Posted November 14, 2015 Share Posted November 14, 2015 so I guess I should uninstall this one now Link to comment Share on other sites More sharing options...
Raptor831 Posted November 15, 2015 Share Posted November 15, 2015 For those with ModuleRCSFX configs already set up, what would need to be changed to make them work as ModuleRCS? Link to comment Share on other sites More sharing options...
Starwaster Posted November 15, 2015 Share Posted November 15, 2015 For those with ModuleRCSFX configs already set up, what would need to be changed to make them work as ModuleRCS?If it's for StockAlike you should already be good to go. Just make sure there's nothing in there trying to convert RCS to RCSFX. I'm on the road so I can't look right now but things were working for me as is. (Unless there's a cfg I made then forgot about, patching things for me) Link to comment Share on other sites More sharing options...
Raptor831 Posted November 15, 2015 Share Posted November 15, 2015 If it's for StockAlike you should already be good to go. Just make sure there's nothing in there trying to convert RCS to RCSFX. I'm on the road so I can't look right now but things were working for me as is. (Unless there's a cfg I made then forgot about, patching things for me)Stockalike sets everything to ModuleRCSFX, but that can easily be swapped to ModuleRCS. I was more worried about the syntax being different for something, in which case I'd need to do a proper rewrite instead of a find/replace. Link to comment Share on other sites More sharing options...
NathanKell Posted November 15, 2015 Author Share Posted November 15, 2015 Syntax is identical, just replace ModuleRCSFX with ModuleRCS. Link to comment Share on other sites More sharing options...
MAFman Posted November 19, 2015 Share Posted November 19, 2015 Can you teach me how this works so I can help you improve / fix / recompile it?[quote name='NathanKell']Updated version of ialdabaoth's (who is awesome) ModuleRCSFX. ModuleRCSFX *fixes the major known issues with the stock RCS Module (ModuleRCS) *Supports some advanced features (axis restriction, full thrust, scaling). *Supports EFFECTS (well, it will--currently broken) [size=3]Installation: Extract to GameData (creating a ModuleRCSFX folder, and inside that, Plugins and the readme.[/size] [size=4][url=https://github.com/NathanKell/ModuleRCSFX/releases/download/v4.2/ModuleRCSFX_v4.2.zip]Download[/url] [url=https://github.com/NathanKell/ModuleRCSFX]GitHub[/url][/size] License: CC-BY-SA (with the ialdabaoth proviso, that all forkers must remark upon his awesomeness...which I'd do anyway). From the readme: ModuleRCSFX is a fixed version of the stock RCS module. It is derived from ModuleRCSFX by ialdabaoth (who is awesome). It supports a lot of configuration, as well as fixing stock bugs. ** RCS Part Controls ** useZaxis defaults to false. If you set it to true, the RCS will fire along the Z axis of the given transform(s). This means you can use engine part models as RCS parts (like using the ion engine model as an RCS part). ** RCS Axis Control ** enablePitch enableYaw enableRoll enableX enableY enableZ All these default to true, but if one is set to false in the MODULE, the RCS part will not fire for that input. These can be toggled in the VAB/SPH. useThrottle which, when set to true, means that RCS will fire forwards with the throttle. ** RCS Thrust Control ** fullThrust defaults to false. Set it to true and if the thrust ratio is > fullThrustMin (default: 0.2) RCS will fire at full thrust (or 10% thrust in precision mode), rather than the less-than-full-thrust, dependent-on-angle they do stock. useLever defaults to false. When it's false, fine controls will make RCS fire at 10% (default) power only. When it's set to true, stock behavior returns (i.e. fine controls means lever arm compensation). precisionFactor is the multiplier to use when useLever is false (as it is by default). precisionFactor defaults to 0.1 (10%). ** RCS Input Controls ** EPSILON defaults to 0.05. That means a control actuation of less than 5% is ignored. This is because Unity is bad at joysticks and ignores deadzones. ** RCS Effects ** Currently disabled pending rework. Changelog: v4.2 * Fixed bug where inputs were being improperly normalized (thanks Starwaster!) * Fixed a bug in applying useThrottle (was being done in global Y not local Y; ditto). v4.1 * Fixed bug in thrust calculation (was 2% what it should be...) * When in fullThrust mode, don't switch to full thrust unless thrust ratio already starts out at fullThrustMin (configurable).[/QUOTE] Link to comment Share on other sites More sharing options...
NathanKell Posted November 19, 2015 Author Share Posted November 19, 2015 MAFMan: as I mentioned upthread, there is no need to fix it, or recompile it, or use it whatsoever anymore, because the stuff it added is now stock. Link to comment Share on other sites More sharing options...
ialdabaoth Posted October 2, 2016 Share Posted October 2, 2016 *sniff* mah babie all growed up Link to comment Share on other sites More sharing options...
Recommended Posts