Jump to content

[1.11] CommNet Constellation v1.5.7 [10 January 2021] - Beta 4 of CNC+CNM for KSP 1.12.2!


TaxiService

Recommended Posts

As you may be aware of, there is certainly a lot of room for improvements over the initial single-frequency interaction (it is too simple as you pointed out). I propose these major changes below.

1) Antennas of a host vessel

  • Assignment of one frequency to each antenna
  • A custom name to distinguish from other identical antennas on the host vessel
  • Can only key in one of the existing frequencies with a few exceptions (when an existing constellation is deleted, only update vessel's frequency list)
  • Stock Comm Power of the antenna will be preserved
  • By default, the frequency will be the public one (0)
  • The stock antenna combination will be preserved though it is applicable to the same frequency.

2) Probe core/manned pod parts of a host vessel

  • Each part stores a list of frequencies persistently. In the scenario of a multi-staging vessel (mothership and landers), newly-staged vessels rebuild their lists from their own antennas
  • By default, the list of unique frequencies is constructed from all the antennas
  • A button in the Part-Action menu to bring up an user interface to manage the said list

3) Management interface of a host vessel

  • The obsolete "Talk to members only" option will be removed since desired frequencies can be explicitly assigned to the vessel
  • Display a stored list of frequencies (Active Frequency List)
  • Optional functions on the list
    • Activate/de-activate some antenna-frequencies in the list (the whitelist/blacklist)
    • ???

4) Connection between two nodes based on their Active Frequency Lists

  • Since the antennas of a vessel can be configured independently, the connection will be the strongest link of the antennas' matching frequency, instead of juggling multiple matching frequencies.
  • For example, Vessel A has Antenna X of Freq 1 and Comm Power 50k and Antenna Y of Freq 2 and Comm Power 10k. Vessel B has Antenna Z of Freq 1 and Comm Power 20k and Antenna Y of Freq 2 and Comm Power 30k. Then, the connection between Vessels A and B is the link of Antenna X and Z since this link is stronger than the link of Antenna Y's.

What is your feedback on this? I have trouble of thinking up more management functions on the frequency list.

Edited by TaxiService
Updated 5/5/17
Link to comment
Share on other sites

My Thoughts On:

A) The UI. Usable, yes... but I wonder if a tabbed version might be more streamlined. There are three sections to it, and when it's up, it takes up a lot of screen real estate. Definitely a wish more than a requirement, but I think it warrants some thought, if possible.

B) The feature changes. If I read this right, it would now be a requirement for ANY vessel, even a very early one, to have at least two antennae: One to tune to the ground station(s), the other to talk to the intended constellation/network. For a stock (mostly) game, this could be a problem with part counts and weight. For a modded (heavily) game, say for instance my current lineup, it could create an unintended side effect. Instead of explaining it fully, let me ask a question first: If a capsule/core had, through module manager, had antenna functionality added to them, would this mod see them as a antenna or would it ignore that? Radio-Free Kerbin does this, and I would hate to lose that functionality in favor of having to use MORE antennae instead of (at least) one less, like that mod is intended to.

 

Link to comment
Share on other sites

26 minutes ago, Shadriss said:

B) The feature changes. If I read this right, it would now be a requirement for ANY vessel, even a very early one, to have at least two antennae: One to tune to the ground station(s), the other to talk to the intended constellation/network. For a stock (mostly) game, this could be a problem with part counts and weight. For a modded (heavily) game, say for instance my current lineup, it could create an unintended side effect. Instead of explaining it fully, let me ask a question first: If a capsule/core had, through module manager, had antenna functionality added to them, would this mod see them as a antenna or would it ignore that? Radio-Free Kerbin does this, and I would hate to lose that functionality in favor of having to use MORE antennae instead of (at least) one less, like that mod is intended to.

For early game, my solution would be to only have antennas for communication to ground stations really - although from my understanding if every antenna is on the same channel, the end effect is that the game behaves exactly as stock: You can relay through other ships on the (universal) network, or just talk to home.

Link to comment
Share on other sites

2 hours ago, TaxiService said:

As you may be aware of, there is certainly a lot of room for improvements over the initial single-frequency interaction (it is too simple as you pointed out). I propose these major changes below.

1) Antennas of a host vessel

  • Assignment of one frequency to each antenna
  • A custom name to distinguish from other identical antennas on the host vessel
  • Can only key in one of the existing frequencies with a few exceptions (when an existing constellation is deleted, only update vessel's frequency list)
  • Stock Comm Power of the antenna will be preserved
  • By default, the frequency will be the public one (0)

2) Probe core/manned pod parts of a host vessel

  • Each part stores a list of frequencies persistently. In the scenario of a multi-staging vessel (mothership and landers), newly-staged vessels rebuild their lists from their own antennas
  • By default, the list of unique frequencies is constructed from all the antennas
  • A button in the Part-Action menu to bring up an user interface to manage the said list

3) Management interface of a host vessel

  • The obsolete "Talk to members only" option will be removed since desired frequencies can be explicitly assigned to the vessel
  • Display a stored list of frequencies (Active Frequency List)
  • Optional functions on the list
    • Activate/de-activate some antenna-frequencies in the list (the whitelist/blacklist)
    • ???

4) Connection between two nodes based on their Active Frequency Lists

  • Since the antennas of a vessel can be configured independently, the connection will be the strongest link of the antennas' matching frequency, instead of juggling multiple matching frequencies.
  • For example, Vessel A has Antenna X of Freq 1 and Comm Power 50k and Antenna Y of Freq 2 and Comm Power 10k. Vessel B has Antenna Z of Freq 1 and Comm Power 20k and Antenna Y of Freq 2 and Comm Power 30k. Then, the connection between Vessels A and B is the link of Antenna X and Z since this link is stronger than the link of Antenna Y's.

What is your feedback on this? I have trouble of thinking up more management functions on the frequency list.

I like where you're going with this. 

The only thing you didn't address is multiple antennas in the same vessel tied to the same frequency. Can we swap antennas from one frequency to another to form an array and boost power?  Stock makes antenna combinable, is that being preserved?

I think this looks great!

Link to comment
Share on other sites

On 5/1/2017 at 11:27 AM, DStaal said:

For early game, my solution would be to only have antennas for communication to ground stations really - although from my understanding if every antenna is on the same channel, the end effect is that the game behaves exactly as stock: You can relay through other ships on the (universal) network, or just talk to home.

I understand this - I'm looking at edge cases as much as anything else. Additionally, the second half of my question remains unanswered - if using a mod such as Radio-Free Kerbin that combines some antenna functionality into the capsules/cores, will this still see them as having an antenna or no?

Link to comment
Share on other sites

On 5/1/2017 at 10:58 PM, Shadriss said:

My Thoughts On:

A) The UI. Usable, yes... but I wonder if a tabbed version might be more streamlined. There are three sections to it, and when it's up, it takes up a lot of screen real estate. Definitely a wish more than a requirement, but I think it warrants some thought, if possible.

B) The feature changes. If I read this right, it would now be a requirement for ANY vessel, even a very early one, to have at least two antennae: One to tune to the ground station(s), the other to talk to the intended constellation/network. For a stock (mostly) game, this could be a problem with part counts and weight. For a modded (heavily) game, say for instance my current lineup, it could create an unintended side effect. Instead of explaining it fully, let me ask a question first: If a capsule/core had, through module manager, had antenna functionality added to them, would this mod see them as a antenna or would it ignore that? Radio-Free Kerbin does this, and I would hate to lose that functionality in favor of having to use MORE antennae instead of (at least) one less, like that mod is intended to.

 

A) It is actually easy to switch to the tabbed interface since much of the interface is based on my interface-tab work in RemoteTech 2.x. I would do it some versions later.

B) To your mod question, I plan to add via MM my own antenna module to every part that has ModuleDataTransmitter module. As such, probe cores and manned cockpits contain ModuleDataTransmitter. But those internal antennas have very weak stock Comm Power. How would you deal with this weak power even if my mod can support and preserve the internal antennas? Maybe a third-party MM patch to increase those powers by a factor?

Edit: I realise a third-party mod like Radio-Free Kerbin can change these Comm Power so I can grab the power variable of ModuleDataTransmitter.

 

On 5/2/2017 at 1:21 AM, MaxPeck said:

I like where you're going with this. 

The only thing you didn't address is multiple antennas in the same vessel tied to the same frequency. Can we swap antennas from one frequency to another to form an array and boost power?  Stock makes antenna combinable, is that being preserved?

I think this looks great!

I forget about this stock's antenna-power combination as It is too subtle to notice in my play sessions. You should be able to change your multiple antennas to the same frequency to boast the signal power. I will try to preserve this combination there.

I updated the change list on this stock combination.

Edited by TaxiService
Link to comment
Share on other sites

7 hours ago, TaxiService said:

A) It is actually easy to switch to the tabbed interface since much of the interface is based on my interface-tab work in RemoteTech 2.x. I would do it some versions later.

B) To your mod question, I plan to add via MM my own antenna module to every part that has ModuleDataTransmitter module. As such, probe cores and manned cockpits contain ModuleDataTransmitter. But those internal antennas have very weak stock Comm Power. How would you deal with this weak power even if my mod can support and preserve the internal antennas? Maybe a third-party MM patch to increase those powers by a factor?

Edit: I realise a third-party mod like Radio-Free Kerbin can change these Comm Power so I can grab the power variable of ModuleDataTransmitter.

 

I forget about this stock's antenna-power combination as It is too subtle to notice in my play sessions. You should be able to change your multiple antennas to the same frequency to boast the signal power. I will try to preserve this combination there.

I updated the change list on this stock combination.

A) Wonderful to hear, and given that the change would be more a QOL change than anything else, entirely understandable on the time frame.

B) I would have to go back and check, but I'm pretty sure RFK uses the weakest of the comm-power setups. It hasn't been a problem for me so far because (hangs head in shame) despite how much I've played the game, I have yet to make it out of Kerbin-local space... IE, I've never been out of Kerbin's SOI. So I know that the RFK version can handle comms from Minmus, and that's as far as I can really test. On the other hand, going past that threshold and building a craft intended to be interplanetary, the part counts and weight would be null issues anyhow, so that would be a moot point I'd think. As I explained earlier, this is more an edge case anyhow - and if you are going to add in the same essential functionality as RFK in addition to the already present functionality, then RFK's settings are irrelevant since this would then replace that one for that purpose.

You do, however, gloss over the first part of the question - to quote myself here, "If I read this right, it would now be a requirement for ANY vessel, even a very early one, to have at least two antennae: One to tune to the ground station(s), the other to talk to the intended constellation/network." Is this an accurate representation of the system as you are designing it, or did I miss something?

Link to comment
Share on other sites

8 hours ago, Shadriss said:

 As I explained earlier, this is more an edge case anyhow - and if you are going to add in the same essential functionality as RFK in addition to the already present functionality, then RFK's settings are irrelevant since this would then replace that one for that purpose.

You do, however, gloss over the first part of the question - to quote myself here, "If I read this right, it would now be a requirement for ANY vessel, even a very early one, to have at least two antennae: One to tune to the ground station(s), the other to talk to the intended constellation/network." Is this an accurate representation of the system as you are designing it, or did I miss something?

I think I need to implement the antenna functionality core first to get some gameplay insight. At this point, I am 70% certain that this edge case of a very early playing without resorting to antenna parts is possible.

For your first question part, I echo what DStaal said. Assumed the antenna change is implemented, the stock CommNet is a special case of this mod because the CommNet network is of exact one frequency and the green color. So any vessel requires the minimum number of one antenna (either antenna part or internal antenna in probe core/kerbal cockpit) to communicate to every other vessel in the green network of the same frequency.

Link to comment
Share on other sites

Then I was correct, and TWO frequencies would be required (One to the ground station, one to the rest of the network) for this to function as I would want it to. Thanks for the clarification.

Link to comment
Share on other sites

I have run into an issue and I am not sure this mod is the culprit, but I am going to ask my question here as it is a good starting point.

 

all of my extra ground tracking stations have ceased to function.  I am not sure if it was at the same time I installed this but it was close...   I have tried resetting all my craft back to the frequency of "0" but I still cant talk to the extra ground stations.  I have verified in KSP settings that these stations are active, and also I have checked in Kerbal Konstructs and they are active there as well.  any ideas if this mod could cause this issue, or any other mods that someone may know of that disables the extra ground stations?

Link to comment
Share on other sites

7 hours ago, Bit Fiddler said:

I have run into an issue and I am not sure this mod is the culprit, but I am going to ask my question here as it is a good starting point.

 

all of my extra ground tracking stations have ceased to function.  I am not sure if it was at the same time I installed this but it was close...   I have tried resetting all my craft back to the frequency of "0" but I still cant talk to the extra ground stations.  I have verified in KSP settings that these stations are active, and also I have checked in Kerbal Konstructs and they are active there as well.  any ideas if this mod could cause this issue, or any other mods that someone may know of that disables the extra ground stations?

 I'm not sure if KK and CNC play nice together.perhaps you might need to enable the "extra groundstations" setting from the ksp menu. 

Link to comment
Share on other sites

10 hours ago, Bit Fiddler said:

I have run into an issue and I am not sure this mod is the culprit, but I am going to ask my question here as it is a good starting point.

 

all of my extra ground tracking stations have ceased to function.  I am not sure if it was at the same time I installed this but it was close...   I have tried resetting all my craft back to the frequency of "0" but I still cant talk to the extra ground stations.  I have verified in KSP settings that these stations are active, and also I have checked in Kerbal Konstructs and they are active there as well.  any ideas if this mod could cause this issue, or any other mods that someone may know of that disables the extra ground stations?

 

3 hours ago, Ger_space said:

 I'm not sure if KK and CNC play nice together.perhaps you might need to enable the "extra groundstations" setting from the ksp menu. 

 

38 minutes ago, Bit Fiddler said:

yes they are enabled there and in KK both. 

 

but CNC should not remove them right?  if it does not understand what they are they should just remain on frequency "0 - Public" as far as this mod is concerned yes?

Confirmed to happen without Kerbal Konstructs.    Happened on install of CommNet Constellation.

Link to comment
Share on other sites

ok, so if this is the case how can I go back and re-enable them...    I am about to just forget it and leave them off, as when I used RT I always had to ensure a connection to KSC, so I can do it again.  the idea of multiple tracking stations was just making my life easier.

Link to comment
Share on other sites

13 hours ago, Bit Fiddler said:

I have run into an issue and I am not sure this mod is the culprit, but I am going to ask my question here as it is a good starting point.

 

all of my extra ground tracking stations have ceased to function.  I am not sure if it was at the same time I installed this but it was close...   I have tried resetting all my craft back to the frequency of "0" but I still cant talk to the extra ground stations.  I have verified in KSP settings that these stations are active, and also I have checked in Kerbal Konstructs and they are active there as well.  any ideas if this mod could cause this issue, or any other mods that someone may know of that disables the extra ground stations?

Can I see your output_log.txt per this Log section in the guideline, please? On KSP 1.2.2 with CNC 1.0.1, I could turn on/off the extra ground stations and correctly connect to the stations when on. The mod does not directly interact with the extra ground stations as it only reads the extra ground stations, controlled by the KSP settings.

@Bit Fiddler Edit: I just realize that I have worked with KK's author on the extra ground stations. I gave him some advice on how to handle the extra ground stations but I haven't set up mine on my own side. KK and CNC are not compatible yet.

 

13 hours ago, Gordon Dry said:

It seems that I can't edit any ground stations at all - on Earth !

How about RSS compatibility?

Sorry, this edit ability of the ground stations is not available to the public yet because it is implemented only recently. I haven't tested RSS compatibility before but I preserve the Comm Power of the stock antennas. You may have difficulty of connecting two probes far apart in RSS.

Edited by TaxiService
Link to comment
Share on other sites

On 5/18/2017 at 3:47 AM, Shadriss said:

OOC: Any idea when the next iteration of this will hit? I know you've been working on it, just curious if there is an ETA or no.

Sorry for the delayed response. I had unexpected short-term commitments in my real life and it should be gone by now.

Given that so much codes in my mod are changed and no testing feedback yet, I do not want to release a next official version in one go. Instead, I will release in my other dev thread a number of pre-release versions to gather some pre-release bug reports and feedback.

You can expect a first pre-release version within a week. I finished the ground-station GUI, individual antenna GUI, master list of frequency in a vessel, the underlying changes in the network connections. I am doing a GUI for the vessel master list and later a strongest-connection change.

Edit: Oh and input locks whenever a GUI is up! No more surprise staging when pressing the space key

Edited by TaxiService
Link to comment
Share on other sites

No worries on the late reply - as far as I'm concerned, in a mod community, there is no such thing... they're just delayed for a bit.

Like what I'm hearing, and looking forward to seeing how all the discussion turns into reality. Thanks much for the work.

Link to comment
Share on other sites

I got several of these:

ArgumentException: The requested value 'RELAY' was not found.
  at System.Enum.Parse (System.Type enumType, System.String value, Boolean ignoreCase) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ExpressionParser.EnumExpressionParser`1[ContractConfigurator.RemoteTech.HasAntennaParameter+AntennaType].ParseIdentifier (ContractConfigurator.ExpressionParser.Token token) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ExpressionParser.ExpressionParser`1[ContractConfigurator.RemoteTech.HasAntennaParameter+AntennaType].ParseVarOrIdentifier (ContractConfigurator.ExpressionParser.Token token) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ExpressionParser.ExpressionParser`1[ContractConfigurator.RemoteTech.HasAntennaParameter+AntennaType].ParseSimpleStatement[AntennaType] () [0x00000] in <filename unknown>:0 
Rethrow as Exception: Error parsing statement.
Error occurred near '*':
RELAY
.....* <-- HERE
  at ContractConfigurator.ExpressionParser.ExpressionParser`1[ContractConfigurator.RemoteTech.HasAntennaParameter+AntennaType].ParseExpression (System.String key, System.String expression, ContractConfigurator.ExpressionParser.DataNode dataNode) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ConfigNodeUtil.ParseSingleValue[AntennaType] (System.String key, System.String stringValue, Boolean allowExpression) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ConfigNodeUtil.ParseValue[AntennaType] (.ConfigNode configNode, System.String key, Boolean allowExpression) [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ConfigNodeUtil.ParseValue[Nullable`1] (.ConfigNode configNode, System.String key, Boolean allowExpression) [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)
ContractConfigurator.LoggingUtil:LogException(Exception)
ContractConfigurator.ConfigNodeUtil:ParseValue(ConfigNode, String, Action`1, IContractConfiguratorFactory, Nullable`1, Func`2)
ContractConfigurator.ConfigNodeUtil:ParseValue(ConfigNode, String, Action`1, IContractConfiguratorFactory, Nullable`1)
ContractConfigurator.RemoteTech.HasAntennaFactory:Load(ConfigNode)
ContractConfigurator.ParameterFactory:GenerateParameterFactory(ConfigNode, ContractType, ParameterFactory&, ParameterFactory)
ContractConfigurator.ContractType:Load(ConfigNode)
ContractConfigurator.<LoadContractConfig>d__26:MoveNext()
ContractConfigurator.ContractConfigurator:PSystemReady()
EventVoid:Fire()
<Start>c__Iterator77:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
 
(Filename:  Line: -1)

Issue is crossposted to:

Log:
https://www.dropbox.com/s/yiues5ewf09h4ja/2017-05-23-1 KSP.log.zip?dl=1

Edited by Gordon Dry
Link to comment
Share on other sites

Personally looking forward to the option to pick individual frequencies for each antenna, makes more realistic designs like the NASA one below more practical (that is, one dish pointed towards a Kerbin ground station, then another tuned to say: a ground base on the Mun, rather than the current system)

Spoiler

tdrs_1st_generation.jpg

Though, not sure how feasible it is or if it's possible within the proposed framework... I would love to see a feature that allows for backup networks as well, that is, for those of us that do a bit of roleplay type building in their saves or like having redundancies (where they might not want to hinge on a single network, where if connection suddenly drops, it can automatically attune to a different one). Also: another personal idea for a simple housekeeping feature (that I'd feel would be useful for people with lots of probes), potentially a "network merge" option to combine two networks into a single one? That is, if I have 5 satellites on network A, 5 satellites on network B, and 10 satellites on both: I could merge Network A and Network B into a single one, rather than jumping around all of them, resetting them to Network A and then deleting Network B.

 

Loving where this mod is going though, just started using it recently in my newest save game on GPP, beginning to set up a network around Iota using it. Apologies if what I'm suggesting is already there in some way, still early into using the mod.

Edited by Markrc93
Clarification
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...