Jump to content

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


TaxiService
 Share

Recommended Posts

Are the NRE's related to JNSQ due to the newly introduced/altered groundstations, or is it just Kerbal Konstructs in general?

I've been chasing down some error-y stuff while building out my new career install, and wound up getting the non-stop NRE-spam related to CNC. I saw you had posted a new beta to use alongside CommNet Manager, so dropping those in fixed the spam, but I was still seeing some errors.

So instead, I've moved over to a separate stripped-down KSP install to do better testing (and for faster game loads),

I saw this at the bottom of my player.log (which was way too huge to share at the moment): [CommNet Constellation] Error: CNCCommNetScenario - Conflict with third-party CommNet mod(s)! Please remove this or other mod(s) -- yet I'm deliberately not using any other overt CommNet mods.

-----

After further stripping the game down, removing mods, flushing MM and game caches, new game, etc. I'm now having a dickens of a time getting the applauncher button to appear. Pods appear to have the CNC modules in them, and they have connection to the DSN, but no main button to access the network config. :/

Here is *that* log:

https://drive.google.com/file/d/1ys_RLBfrOJmZMnrB2CDMv6AHPUSMQMb5/view?usp=sharing

note-- it's saying AssemblyLoader: KSPAssembly 'CommNetConstellation' V1.5.0 but I double-checked that it was v 1.5.7 from the github release.

 

 

Link to comment
Share on other sites

15 hours ago, TaxiService said:

Hi, if possible, kindly provide the logs you checked.

I would like to find out what CNC version you used and whether CommNet Manager is installed.

Thanks.

Hi, based on your log, CNC 1.5.4 is standalone (have own CommNet infrastructure) and does not utilise CommNet Manager. Having both CNC and CNM on your installation will cause mod conflicts, including NullReference spam.

Short time ago, I created a new CNM port of CNC 1.5.7 but it only runs on KSP 1.11 due to 1 important KSP change introduced.

 

Thanks for the help!

Link to comment
Share on other sites

Posted (edited)
14 hours ago, Beetlecat said:

Are the NRE's related to JNSQ due to the newly introduced/altered groundstations, or is it just Kerbal Konstructs in general?

I've been chasing down some error-y stuff while building out my new career install, and wound up getting the non-stop NRE-spam related to CNC. I saw you had posted a new beta to use alongside CommNet Manager, so dropping those in fixed the spam, but I was still seeing some errors.

So instead, I've moved over to a separate stripped-down KSP install to do better testing (and for faster game loads),

I saw this at the bottom of my player.log (which was way too huge to share at the moment): [CommNet Constellation] Error: CNCCommNetScenario - Conflict with third-party CommNet mod(s)! Please remove this or other mod(s) -- yet I'm deliberately not using any other overt CommNet mods.

-----

After further stripping the game down, removing mods, flushing MM and game caches, new game, etc. I'm now having a dickens of a time getting the applauncher button to appear. Pods appear to have the CNC modules in them, and they have connection to the DSN, but no main button to access the network config. :/

Here is *that* log:

https://drive.google.com/file/d/1ys_RLBfrOJmZMnrB2CDMv6AHPUSMQMb5/view?usp=sharing

note-- it's saying AssemblyLoader: KSPAssembly 'CommNetConstellation' V1.5.0 but I double-checked that it was v 1.5.7 from the github release.

From the two player reports earlier, I found a nasty bug in the beta of CNC+CNM where few invalid ground stations would be created persistently throughout player session until exit, on top of the valid ground stations. It is possibly the same errors you encountered after installing this beta. JNSQ and KK are merely victims of the bug once I reproduced it in CNC+CNM build.

For the stripped-down game, I looked through the log and could not find any clue to explain why the CNC launcher button is not shown in Tracking Station or Flight Map Mode. Any idea you may have?

Edited by TaxiService
Link to comment
Share on other sites

On 3/15/2021 at 8:39 AM, TaxiService said:

From the two player reports earlier, I found a nasty bug in the beta of CNC+CNM where few invalid ground stations would be created persistently throughout player session until exit, on top of the valid ground stations. It is possibly the same errors you encountered after installing this beta. JNSQ and KK are merely victims of the bug once I reproduced it in CNC+CNM build.

For the stripped-down game, I looked through the log and could not find any clue to explain why the CNC launcher button is not shown in Tracking Station or Flight Map Mode. Any idea you may have?

No idea yet -- I'll do the typical "remove half the other mods 'til it works..." thing and see if I can narrow down why the button isn't being created. It's likely another mod breaking buttons in general, and CNC is the next victim.

CNC is one of my favorite QoL mods, so getting this working happily will be worth the hunt.

---

[edit] No idea what I was/wasn't seeing before, but after doing some other computer maintenance and a "normal" day of work, the mod is working fine on the *other* game-- so please ignore that particular report about the missing button. ;) 

 

Edited by Beetlecat
Link to comment
Share on other sites

  • 1 month later...

Great mod, thanks a lot. Really good to have the network uncluttered.

Not sure I am missing out on something, but I don‘t see the CNC button in the VAB. Would like to disable antennas (e.g. in probe cores) already when creating crafts, as my ones usually end up with a lot externally attached antennas anyway. Seems disabling antennas is only possible via CNC button, right? So not easy on the launch pad, with fairing hiding the craft. Which means I either got to head over to Tracking Station, while vessel on launch pad, or wait until in orbit to disable any unwanted antenna.

When launching big satellite networks consisting of indentical crafts, it would greatly speed up things, if the craft could be saved with antennas already disabled.

 

Kind regards 

---

[edit]

Since no reply yet, I like to add another question. When launching vessel, CNC button is first present and working when vessel is placed on launch pad. Change to map view & back and the CNC button is gone from the flight view. Not sure this is intended? Not a big deal, but if the CNC window is open in map view and then I leave map, the CNC window stays open and there is no way to close it (except change to map view again, to get the CNC button back.

Used your latest beta from Github on 1.11.2 KSP.

Edited by Cave_Lupum
Link to comment
Share on other sites

I seem to be having issues sorry.

KSP version 1.10.1 modded to crap so I am sure its that.

I think it might be because I am using Kerbal construct as on game start I get an error saying cant find ground station.

If I click the CNC button itsays object referance not set to an instance ETC.

I am using latest version made for 1.11 but I have tested a few versions all with same error.

 

thanks in advance

Link to comment
Share on other sites

11 hours ago, stk2008 said:

I seem to be having issues sorry.

KSP version 1.10.1 modded to crap so I am sure its that.

I think it might be because I am using Kerbal construct as on game start I get an error saying cant find ground station.

If I click the CNC button itsays object referance not set to an instance ETC.

I am using latest version made for 1.11 but I have tested a few versions all with same error.

 

thanks in advance

start by providing a log file so the mod author can begin to see what is going on

Link to comment
Share on other sites

This mod looks like it's exactly what I was looking for. Just a way to separate the CommNet networks without adding too many extra bells and whistles and too much realism. The ability to selectively upgrade ground stations is nice too. Thanks for making this!  

But now I have to redesign and relaunch all of my relays :D

 

Edit: Played about six with this. I really like the functionality. But there are some problems, my KSP.log ended up at 500mb :D 

[EXC 04:35:03.690] NullReferenceException: Object reference not set to an instance of an object
	KSP.UI.Screens.Flight.TelemetryUpdate.HideModeButton () (at <06f13185617646e5bc801baeab53ab75>:0)
	KSP.UI.Screens.Flight.TelemetryUpdate.Update () (at <06f13185617646e5bc801baeab53ab75>:0)
	UnityEngine.DebugLogHandler:LogException(Exception, Object)
	ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
	UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

At some point it went into an NRE loop and the above would get spammed in every scene, even after quitting to the main menu. KSP 1.11.2 and CommNetConstellation-1.5.7-cnm-149-commnet-manager-port-2, along with about 120 other mods so the potential for conflict is definitely there. Other symptoms were that the text on about half of the menu buttons (including all buttons in the hierarchy page) disappeared and some of the text elements in the ESC menu got displaced. 

I realize this isn't much to go on, I can't upload a 500mb log file though. I'll try to narrow this down a bit and see if I can find out anything useful. 

Edit2: Some days and many hours of KSP later, it seems like most of the issues stemmed from CommNetManager. After removing CommNetManager and using the standalone version of the mod, I no longer have constant NRE spam and slowdown/UI issues. 

Edited by Grimmas
Link to comment
Share on other sites

  • 3 weeks later...
Posted (edited)
On 4/18/2021 at 10:40 PM, Cave_Lupum said:

Great mod, thanks a lot. Really good to have the network uncluttered.

Not sure I am missing out on something, but I don‘t see the CNC button in the VAB. Would like to disable antennas (e.g. in probe cores) already when creating crafts, as my ones usually end up with a lot externally attached antennas anyway. Seems disabling antennas is only possible via CNC button, right? So not easy on the launch pad, with fairing hiding the craft. Which means I either got to head over to Tracking Station, while vessel on launch pad, or wait until in orbit to disable any unwanted antenna.

When launching big satellite networks consisting of indentical crafts, it would greatly speed up things, if the craft could be saved with antennas already disabled.

 

Kind regards 

---

[edit]

Since no reply yet, I like to add another question. When launching vessel, CNC button is first present and working when vessel is placed on launch pad. Change to map view & back and the CNC button is gone from the flight view. Not sure this is intended? Not a big deal, but if the CNC window is open in map view and then I leave map, the CNC window stays open and there is no way to close it (except change to map view again, to get the CNC button back.

Used your latest beta from Github on 1.11.2 KSP.

Hi, my apologies for this delayed response. Possibly it is too late for you now but I will add a new setting to change to set all probe core antennas off by default.

For the CNC button, it seems a recent KSP change interferes the button displaying. It will be changed to be displayed all the time regardless of flight or map view mode.

Hi @stk2008 and @Grimmas,

I believe the issue you encountered is related to the nasty ground station bug between CNC and CNM I was trying to resolve until now.

You can try a new CNC+CNM build and be sure to download "CommNetConstellation_PatchedCommNetManager.zip" to replace both CNC and CNM.

My CNM fix is pending acceptance into CNM codebase.

 

Edited by TaxiService
Link to comment
Share on other sites

Hi, thanks for the reply, no problem about the timing, wasn't in any hurry.

A general setting to disable all probe core is a possible solution, but wouldn't it be more open, if the CNC button was available in the VAB (& SPH) or is that not possible to achieve?

On second thought and as a feature suggestion: Would it be possible to add the enable/disable function for an antenna directly to its CNC settings, accessible via the CNC button when right-clicking an antenna in the VAB? Then there would be no need to have a setting to disable all probe cores, which is kind of an "All or nothing" situation. Having a possibility to enable/disable individual antennas (including the ones in the probe cores/command modules) directly in the VAB might give the most flexible solution.

Link to comment
Share on other sites

Posted (edited)
On 5/10/2021 at 11:29 PM, Cave_Lupum said:

Hi, thanks for the reply, no problem about the timing, wasn't in any hurry.

A general setting to disable all probe core is a possible solution, but wouldn't it be more open, if the CNC button was available in the VAB (& SPH) or is that not possible to achieve?

On second thought and as a feature suggestion: Would it be possible to add the enable/disable function for an antenna directly to its CNC settings, accessible via the CNC button when right-clicking an antenna in the VAB? Then there would be no need to have a setting to disable all probe cores, which is kind of an "All or nothing" situation. Having a possibility to enable/disable individual antennas (including the ones in the probe cores/command modules) directly in the VAB might give the most flexible solution.

Hi, it is not possible to put the CNC button in VAB/SPH because it requires underlying CommNet, which is not run in both scenes.

Your suggestion of toggling individual antennas in VAB/SPH is much better. I will make all internal (built-in) antennas of 5k power to be disabled by default and all Direct and Relay antennas enabled by default.

Update: Based on few play tests, I decide against disabling internal antennas by default and leave this to players' freedom.

Edited by TaxiService
Link to comment
Share on other sites

Beta 3 of CommNet Constellation + CommNet Manager

I ported this mod to utilize the common CommNet infrastructure, managed by CommNet Manager, instead of own infrastructure. This means other mods running CommNet Manager can work fine with this mod.

Also, it will work on your player save as if nothing is changed.

Please back up your save first before trying out!

Progress Update

  • Fix difficult bug behind NullReferenceException spam when additional ground stations are created. One related change is required in CommNet Manager (pull request)
  • Update CNC App button to display in both Flight and Map Mode
  • Add ability to toggle an individual antenna in VAB, SPH or Flight

Requirements

  • CommNet Constellation + Patched CommNet Manager (download)
  • ModuleManager 4.1.4

Request
Please let me know on any issue found. I plan to publish several betas with any fix included before releasing to the wide audience officially.

Thanks!

Link to comment
Share on other sites

Posted (edited)

So if I'm getting this right, this is how a good kerbin SOI network would look?(Per satellite)

 

Channel 0

>Channel 1 (Interstellar) (1 antenna(channel 0 to connect to the ground), 1 relay(channel 1) )

>Channel 2 (Kerbin Commnet) (1 antenna(channel 0 to connect to the ground), 1 relay(channel 2) )

                          > Channel 3 (Mun Commnet) (2 relay(Channel 1, Channel 0(For for ships to talk through) )

                          >Channel 4 (Minmus Commnet (2 relay(Channel 1, Channel 0(For for ships to talk through) )

 

Edited by Crimor
Link to comment
Share on other sites

Posted (edited)
16 hours ago, Crimor said:

So if I'm getting this right, this is how a good kerbin SOI network would look?(Per satellite)

 

Channel 0

>Channel 1 (Interstellar) (1 antenna(channel 0 to connect to the ground), 1 relay(channel 1) )

>Channel 2 (Kerbin Commnet) (1 antenna(channel 0 to connect to the ground), 1 relay(channel 2) )

                          > Channel 3 (Mun Commnet) (2 relay(Channel 1, Channel 0(For for ships to talk through) )

                          >Channel 4 (Minmus Commnet (2 relay(Channel 1, Channel 0(For for ships to talk through) )

 

Hi @Crimor, if I’m not mistaken, your Mun/Minmus CommNet requires a relay on its own channel (3 or 4), so it can provide the channel to its „clients“ and a direct antenna for channel 2, so it routes the comm signals through to your „Kerbin CommNet“, which in turn will pass the signal through to channel 0 of the Groundstations.

So the setup would look like this:

Channel 0 (Groundstations)

>Channel 1 (Interstellar), 1 relay (channel 1 for other crafts), 1 direct (channel 0 for pass-through to ground)
>Channel 2 (Kerbin Commnet), 1 relay (channel 2 for other crafts), 1 direct (channel 0 for pass-through to ground)

> Channel 3 (Mun Commnet),  1 relay (channel 3 for other crafts), 1 direct (channel 2 for pass-through to Kerbin CommNet)
> Channel 4 (Minmus Commnet),  1 relay (channel 4 for other crafts), 1 direct (channel 2 for pass-through to Kerbin CommNet)

 

E.g. Rover on Minmus: Rover, direct (4) => Minmus orbiter sat, relay (4), direct (2) => Kerbin orbiter sat, relay (2), direct (0) => Groundstation (0)

With Minmus being close, you can in fact put the Minmus orbiter satellite directly through to ground (channel 0), but the above setup is more challenging, as you first have to set up the Kerbin CommNet with enough relay satellites (3-4) to fully cover.

You might want to extend the numbering scheme a bit to help identify.
E.g. I set up my comms network by using 3-digit numbers, working from Kerbol outwards:

Kerbol Orbit 100
Moho Orbit 200, Surface 201
Eve Orbit 300, Surface 301
     Gilly Orbit 310, Surface 311
Kerbin Orbit 400, Surface 401
     Mun Orbit 410, Surface 411
     Minmus Orbit 420, Surface 421

... etc, etc, up to

DSN 999 (Deep Space Network, only KSC Groundstation and 6 Satellites on KSO => all orbiters from above connect to these)

Due to my separation between Orbit and Surface, my orbiter satellites require 2 relay (1x Orbit / 1x Surface) and 1 direct (999 => DSN).

Hope this made sense.

Edited by Cave_Lupum
Link to comment
Share on other sites

  • 2 weeks later...

@TaxiService -- Would it be possible to add an arbitrary number upgrades for ground stations? It would be interesting to have more granularity in ground station ranges with correspondingly increasing cost. e.g.,

  • First level only reaches to about 100-200km. Good for low-Kerbin orbit for early launches
  • Second level has a range of a few thousand km.
  • Third level can reach Mun/Minmus
  • Fourth level is sufficient for the inner solar system (i.e., Dres is just barely in range depending on orbital alignments)
  • Fifth level is true DSN

I realize this could be accomplished by parking relay craft on Kerbin next to level 1 ground stations but it would be nice to have an integrated solution

Link to comment
Share on other sites

On 6/7/2021 at 1:01 AM, somnambulist said:

@TaxiService -- Would it be possible to add an arbitrary number upgrades for ground stations? It would be interesting to have more granularity in ground station ranges with correspondingly increasing cost. e.g.,

  • First level only reaches to about 100-200km. Good for low-Kerbin orbit for early launches
  • Second level has a range of a few thousand km.
  • Third level can reach Mun/Minmus
  • Fourth level is sufficient for the inner solar system (i.e., Dres is just barely in range depending on orbital alignments)
  • Fifth level is true DSN

I realize this could be accomplished by parking relay craft on Kerbin next to level 1 ground stations but it would be nice to have an integrated solution

Hi, I took a look at the codebase and decided small changes would be sufficient to make the upgrade count arbitrary instead of hard-coded 3, provided that a player expands UpgradeableGroundStationCosts and UpgradeableGroundStationPowers in cnc_settings.cfg

You can try out the latest CNC+CNM build though I see some hint that underlying CommNet may take up to 3 power levels.

Do let me know if you are able to upgrade beyond the 3 upgrade count.

Link to comment
Share on other sites

  • 4 weeks later...
Uploading Crash Report
NullReferenceException: Object reference not set to an instance of an object
  at CommNetManager.ModularCommNetVessel.OnDestroy () [0x00007] in <12a711cea01f44db9398c6df7756949d>:0 
UnityEngine.Object:DestroyImmediate(Object, Boolean)
UnityEngine.Object:DestroyImmediate(Object)
<>c:<CompileModules>b__4_0(Type)
LoadedAssembly:TypeOperation(Action`1)
LoadedAssembyList:TypeOperation(Action`1)
VesselModuleManager:CompileModules()
<LoadObjects>d__90:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutineManaged2(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
<CreateDatabase>d__71:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutineManaged2(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
GameDatabase:StartLoad()
<LoadSystems>d__11:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutineManaged2(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
LoadingScreen:Start()

Using the above build. 

Link to comment
Share on other sites

On 7/8/2021 at 5:17 PM, Kielm said:
Uploading Crash Report
NullReferenceException: Object reference not set to an instance of an object
  at CommNetManager.ModularCommNetVessel.OnDestroy () [0x00007] in <12a711cea01f44db9398c6df7756949d>:0 
UnityEngine.Object:DestroyImmediate(Object, Boolean)
UnityEngine.Object:DestroyImmediate(Object)
<>c:<CompileModules>b__4_0(Type)
LoadedAssembly:TypeOperation(Action`1)
LoadedAssembyList:TypeOperation(Action`1)
VesselModuleManager:CompileModules()
<LoadObjects>d__90:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutineManaged2(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
<CreateDatabase>d__71:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutineManaged2(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
GameDatabase:StartLoad()
<LoadSystems>d__11:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutineManaged2(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
LoadingScreen:Start()

Using the above build. 

Hi, did this happen during the startup loading? You can ignore it as it is harmless. It won't happen after the main menu.

Link to comment
Share on other sites

On 7/11/2021 at 10:20 PM, CessnaSkyhawk said:

Im having a little trouble editing the confit for custom ground stations. The new ones spawn fine, but even when I delete all the default ones from the confit (Nye Island, Crater Rim, etc) they still spawn in anyways…

Ah um, I can't do anything with this. They are loaded by the game as default.

But you can tick off the option of enabling additional ground stations in the stock CommNet setting. It may work with your custom config.

Do let me know if it works.

Link to comment
Share on other sites

I got a noob question:

If I make contact via two direct antennas at frequency 0 can I then forward the signal using a relay to ground/relay connection at another frequency? Or do I need to have relays all the way down the connection path?

Link to comment
Share on other sites

3 hours ago, TaxiService said:

Ah um, I can't do anything with this. They are loaded by the game as default.

But you can tick off the option of enabling additional ground stations in the stock CommNet setting. It may work with your custom config.

Do let me know if it works.

Tracking this question from the other day since I was curious about this also. I just tried doing as suggested on a modified cnc_settings.cfg file where I delete all the stock ground station sites, save for two custom entries. I started a new game to test, and indeed when clicking off extra ground stations, only KSC still appears. However, when turning this feature back on everything, including the stock sites (ie Baikerbanur, etc) return. I checked the persistent file and all those entries were added despite not being included in the cnc_settings file. It appears that the game is still inserting the ground station sites as 'extras' along with any defined in cnc_settings file. Is it possible to add a GUI option in the game settings for CNC to override any and all stock groundstations and only use what is defined in cnc_settings?

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.

 Share

×
×
  • Create New...