Jump to content

(Drop Support)[1.6.1] Crew Light : An Automatic Light Manager [v1.19] (29 Jan 2019)


Li0n

Recommended Posts

2 hours ago, Li0n said:

"ti" and "taah" are the french convention (I'm french). You're right I'll change it to be more consistent.

I like the idea but my concern with it is about the time it take to send a morse message. The default message ("KSP") is already 27.7 seconds long, IMO anything longer will get boring. If you want to play with the timing settings and find something quick enough but still readable that will be awesome :)

Following this idea : what about a list of random, short, message. Something like : "Welcome", "Copy", "Roger", "Busy Signal", "ALIEN SPIDER !!"... etc. It will add some variety and I'll make sure to not include something that make the light blink for half an hour ;) (I don't want to finish my docking manoveur before the message has ended...)

I'm not suggesting full sentence messages or anything, just short ID codes. Navigation beacons used to broadcast their 3 or 4 character identifiers so pilots could tell where they were, I'm just thinking that if you have multiple satellites in orbit then each one could have its own signature - KEO1-3 for a minimal Kerbosychronous trio providing relays to the KSC, for example.

The timing of the signals: for a commercial US radiotelegrapher's licence, a speed of 20-25 words per minute is expected. Using special test words, this leads to an approximate "dit" length of 50-60 milliseconds, which would also be the time between "dits" & "dahs" in the same letter. Each "dah" should be three times longer than the "dit," the gap between letters should match the length of the "dah," and the gap between words should equal three "dahs." At that speed, "KSP" or "_._ ... .--./" would only take between 2 and 3 seconds. Obviously this is significantly faster than the defaults, and excessively fast for the small amount of information being proposed - depending on your framerate, it may not even be visible. It does show though that there's plenty of room for adjustment within the system you've already built to allow for a longer message that should still be legible enough for semi-skilled amateurs to have a little extra fun with their blinkenlights.

Random messages would be equally fun, especially for those learning the code. It'd be great to pull up to a station in orbit only to get warned off due to alien spiders! :D

Link to comment
Share on other sites

8 minutes ago, JH4C said:

The timing of the signals: for a commercial US radiotelegrapher's licence, a speed of 20-25 words per minute is expected. Using special test words, this leads to an approximate "dit" length of 50-60 milliseconds, which would also be the time between "dits" & "dahs" in the same letter. Each "dah" should be three times longer than the "dit," the gap between letters should match the length of the "dah," and the gap between words should equal three "dahs." At that speed, "KSP" or "_._ ... .--./" would only take between 2 and 3 seconds. 

Implementing such constrains would be easy on a user interface: once the user selects the "dit" length, the other lengths are calculated and the fields updated - and then the user can overwrite them at will.

44 minutes ago, JH4C said:

Obviously this is significantly faster than the defaults, and excessively fast for the small amount of information being proposed - depending on your framerate, it may not even be visible. It does show though that there's plenty of room for adjustment within the system you've already built to allow for a longer message that should still be legible enough for semi-skilled amateurs to have a little extra fun with their blinkenlights.

The framerate can be monitored, and a "correction factor" be used on the timings to guarantee that the "dit" length is no smaller than one frame. It's  bit laborious to be implemented, but it's all - testing it will be more work than doing it. :-)

Once the code I already made is revised and eventually merged, we can think about implementing it if Li0n is ok with the idea.

Link to comment
Share on other sites

On 5/9/2018 at 4:42 PM, Lisias said:

Implementing such constrains would be easy on a user interface: once the user selects the "dit" length, the other lengths are calculated and the fields updated - and then the user can overwrite them at will. 

Sounds good, will do.

On 5/9/2018 at 4:42 PM, Lisias said:

The framerate can be monitored, and a "correction factor" be used on the timings to guarantee that the "dit" length is no smaller than one frame. It's  bit laborious to be implemented, but it's all - testing it will be more work than doing it. :-) 

Once the code I already made is revised and eventually merged, we can think about implementing it if Li0n is ok with the idea.

Maybe a bit overkill ? But if you want to do it I'm all with it :)

Link to comment
Share on other sites

2 hours ago, Li0n said:

Maybe a bit overkill ? But if you want to do it I'm all with it :)

Not with the framerate I'm getting from this expensive potato computer I call a Mac. =P

Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...

Hello @Li0n, it's me again. I've been using this in 1.4.5 without incident for a little while now, right up until I tried fitting some headlights to a new rover I was building...

The hidden setting for enabling/disabling Motion Sensitive lights is giving me one hell of an interesting glitch! There's no specific error recorded in the ksp.log, and it only affects some parts with no real rhyme or reason as to which or why... Well, there's more info in the link. Have a look, maybe you can figure out why it's happening - I'm pretty sure it was okay before I upgraded from 1.4.3 (I skipped 1.4.4) so maybe it just needs recompiling? I only changed the setting to streamline my parts dialogues (I never use Motion Sensitivity and have a lot of other mods adding entries to things); I've changed it back and everything works normally again. This is repeatable on a clean install with only CrewLight and Module Manager added.

Link to comment
Share on other sites

  • 2 months later...

Hey guys

I haven't been on KSP for a while and I'm just starting catching up on the update I missed.

@JH4C & @Lisias more consistency about the settings was a good idea, I've take it a bit further :

1OoqY7n.png

All settings are now within the stock difficulty screen :D

Except for some morse settings that I couldn't squeeze into :

z8QINGo.png

To access those you need to enable the "More Morse Settings" and hit accept twice :

N8tFWe0.png

 

Now the not cool part : It is, for now, only on KSP 1.4.3 (yes I'm late :sticktongue:) There is a few bug that needs to go away before I release a version for KSP 1.5.1

 

On 8/25/2018 at 7:31 PM, JH4C said:

Hello @Li0n, it's me again. I've been using this in 1.4.5 without incident for a little while now, right up until I tried fitting some headlights to a new rover I was building...

The hidden setting for enabling/disabling Motion Sensitive lights is giving me one hell of an interesting glitch! There's no specific error recorded in the ksp.log, and it only affects some parts with no real rhyme or reason as to which or why... Well, there's more info in the link. Have a look, maybe you can figure out why it's happening - I'm pretty sure it was okay before I upgraded from 1.4.3 (I skipped 1.4.4) so maybe it just needs recompiling? I only changed the setting to streamline my parts dialogues (I never use Motion Sensitivity and have a lot of other mods adding entries to things); I've changed it back and everything works normally again. This is repeatable on a clean install with only CrewLight and Module Manager added.

I can reproduce it. There is another bug in the motion detector function : the sphere that represent the reach of the detector catch the click but it shouldn't.

On 7/25/2018 at 2:19 PM, robson1000 said:

With "Electric Light " installed, when last kerbal is leaving cockpit lights don't turn off. Module name "ModuleAnimateGenericConsumer".

They do turn on ? Anyway I'll look into it

Link to comment
Share on other sites

Crew Light v1.17 is up on GitHub, and SpaceDock

Quote
  • fix duplicate part bug when motion detector is disabled, thanks @JH4C
  • fix gui sphere of the motion detector catching click when it shouldn't
  • settings clean up
  • recompile for KSP 1.5.1
  • bundle ModuleManager 3.1.0

And the in-game settings mentioned 2 post above

On 7/25/2018 at 2:19 PM, robson1000 said:

With "Electric Light " installed, when last kerbal is leaving cockpit lights don't turn off. Module name "ModuleAnimateGenericConsumer".

I can't reproduce this. If you can send me a save with only Electric Light and CrewLight installed where the bug is reproducible I'll look into it.

Link to comment
Share on other sites

Well, by some clicking magic I got the morse settings, but nothing was saved to GameData\CrewLight\PluginData\Settings.cfg

And also this:

Exception handling event onGameStateLoad in class GameSettingsLive:System.NullReferenceException: Object reference not set to an instance of an object
  at CrewLight.GameSettingsLive.ParseMorseCode () [0x00000] in <filename unknown>:0 
  at CrewLight.GameSettingsLive.ParseSettings () [0x00000] in <filename unknown>:0 
  at CrewLight.GameSettingsLive.DoStart () [0x00000] in <filename unknown>:0 
  at CrewLight.GameSettingsLive.GameLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 
  at EventData`1[ConfigNode].Fire (.ConfigNode data) [0x00000] in <filename unknown>:0 
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

NullReferenceException: Object reference not set to an instance of an object
  at CrewLight.GameSettingsLive.ParseMorseCode () [0x00000] in <filename unknown>:0 
  at CrewLight.GameSettingsLive.ParseSettings () [0x00000] in <filename unknown>:0 
  at CrewLight.GameSettingsLive.DoStart () [0x00000] in <filename unknown>:0 
  at CrewLight.GameSettingsLive.GameLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 
  at EventData`1[ConfigNode].Fire (.ConfigNode data) [0x00000] in <filename unknown>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
EventData`1:Fire(ConfigNode)
Game:Load()
FlightDriver:Start()
 
(Filename:  Line: -1)

 

Link to comment
Share on other sites

8 hours ago, Gordon Dry said:

Well, by some clicking magic I got the morse settings, but nothing was saved to GameData\CrewLight\PluginData\Settings.cfg

This is expected, all settings are now saved in persistent.sfs

It shouldn't be necessary but can you try to delete your CrewLight folder and reinstall it ?

On 10/31/2018 at 10:01 PM, Gordon Dry said:

After moving a Kerbal to another part with SM / CLS and the setting for crew light: auto the light did not turn on automatically, I had to enable it manually.

Didn't do any test with CLS, will take a look. I think it was working with a previous version of CrewLight ?

Edited by Li0n
Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...
17 minutes ago, AlexO said:

Hi,

I get a warning with installed KIS:

 


[WRN 18:45:21.820] [ModuleManager] 1 warning related to GameData/CrewLight/MMPatch/KISWhiteList.cfg

 

Post just before yours , You might read ?

On ‎11‎/‎23‎/‎2018 at 11:54 AM, Critter79606 said:

@Li0n I found a typo in one of your config files

CrewLight/MMPatch/KISWhiteList/@KISConfig[KISConfig]:NEED[KIS]:FOR[CrewLight] NEED should be NEEDS.

Tanks for the great mod!

 

Link to comment
Share on other sites

Crew Light v1.18 is up on GitHub, and SpaceDock

Quote

* Fix for the morse settings not being correctly applied, thanks @Gordon Dry
* fix a typo in the KIS white-list, thanks @Critter79606
* bundle ModuleManager 3.1.1

 

On 10/31/2018 at 10:01 PM, Gordon Dry said:

After moving a Kerbal to another part with SM / CLS and the setting for crew light: auto the light did not turn on automatically, I had to enable it manually.

CLS is not yet updated to KSP 1.5.1, I'll take a look at this issue when it is.

On 11/21/2018 at 9:54 PM, Mecripp said:

With the motion detector is there away to add a animation to play at said range ? 

Like if there is a hatch or door to open when in range it will open like the lights going on ?

Not currently, a function like that has been discussed before, it will need a lot of rewrite/rethinking of the code. It's not something I'm willing to do, at least not in the foreseeable future...

Link to comment
Share on other sites

  • 1 month later...
  • 4 weeks later...

Bug report:

KSP: 1.6.1.2401 (LinuxPlayer)
Aviation Lights: 4.0.7
Crew Light: 1.19

The compatibility for the Aviation Lights mod doesn't seem to work 100%. The navigation lights (Blue, Green, Red, White) seem to turn on at night, but the beacons don't flash on throttle-up and strobes don't double-flash like they are supposed to, they just use the standard "on" setting instead.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...