Jump to content

[Released][1.3.1] Antenna Helper [v0.90] (27 Feb 2018)


Li0n

Recommended Posts

  • 2 weeks later...

One big new awesome feature today :cool: :

3h3IHGh.png

U16Hyss.png

Graphical display of the antenna range in the map view ! (look way more awesome in live than on screenshot)

I've talked about it a few months ago as a more understanding way of displays the range of your antenna, no more incomprehensible big numbers, it's all graphic :D

To activate it go to the map view and click on the Antenna Helper toolbar button Ii6G55t.png

The color are the same used in-game (almost) and on the distance / signal strength display in the editor I added in 0.6 :

  • Green : signal between 100% and 75%
  • Yellow : signal strength between 75% and 50%
  • Orange : signal strength between 50% and 25%
  • Red : signal strength between 25% and 0%

Now what to expect in this first iteration :

  • it works only for the DSN, the circles will be drawn if you are out of range or connected to a relay but the range they show will be for a direct connection to the DSN
  • It works only on the Map View, for the active vessel
  • It's not ultra precise :P
  • the circle are 2D object that align to the ship and the planet, they can look strange on a polar orbit with time-wrap as they turn to stay aligned
  • the circle are 4 superposed objects with transparency so the green circle is more opaque than the yellow, which is more opaque than the orange, etc...

So what next :

  • make it work for relay too, not only DSN connection (mostly done)
  • make it available in the tracking station
  • in the tracking station, show a list of vessel saved in the editor and show their possible range. I'd like to have a map directly available in the editor but it will be too much trouble, I think
  • maybe, use a different/custom shader for a better handling of the transparency between the circles

And everything else on the OP's road-map :wink:

 

Release is on GitHub. (works for KSP 1.2.2 to 1.3.1)

Enjoy and please report any bugs or suggestion :)

 

Link to comment
Share on other sites

  • 1 month later...

Version 0.8 is up, on Github !

Quote

* apply range modifier in the editor
* automatically set the target in the editor
* minor UI improvement
* map view : draw range circle around relay, see README.md on github
* code clean up

Take me way longer that I expected to get the range circle to draw around relay but it is done, well, not fully, the maximum range is correct but the circle of different color representing the decaying signal strength are not scaled properly.

I write a good (I hope so) read me on GitHub, please check it out. I'll update the OP too, later...

Enjoy :) And please share your suggestions, and bug report.

Link to comment
Share on other sites

@Poodmund, @Nightside thanks for the kind words :)

17 hours ago, Agustin said:

What do you mean by: 

"signal strength decay when connected to a relay is wrong, so green, yellow and orange circle are not properly scaled. "

?

Take this screenshot :

NPIFmOD.png

The circle around the DSN, on the left, represent accurately the signal strength you'll get if you fly in it. If you're in the green your signal will be clamp between 100% and 75%, in the yelllow 75% to 50%, etc.

Those around the relay, on the right, are not scaled properly, except for the red one, representing the maximum range from the relay. So you could be flying in the yellow circle but get a signal strength of less than 50%.

They are still useful (kinda) : in this screenshot the fact that there is a yellow circle but no green one mean that the maximum signal strength you could get when connected to this relay is clamp between 50% and 74% :confused: So if you see only a red circle around a relay you'll know the maximum signal strength is 24%, if there is a orange one : 49%, a yellow : 74% and if there is a green circle the signal strength could be up to 100%.

This is, obviously, still a work in progress.

Edited by Li0n
typo
Link to comment
Share on other sites

  • 2 weeks later...
On 30/11/2017 at 12:15 AM, AlexALX said:

Very cool mod! But is this normal? (look at panel on right, same goes in builder but on bottom panel)

@wile1411

Of course, it's an hidden mini-game where you have to find the right icon :confused:

Kidding, obviously it's a bug. I'll look into it, I already got the same thing happened in an earlier version, shouldn't need a lot of changes.

For the next version I'll fix the range display for connection coming from a relay, I hoped to finish it earlier but I started playing Oxygen Not Included, awesome game, very addictive (and with little green man too :D, when they're sick). So there may be some delay before the next release...

Link to comment
Share on other sites

@AlexALX, @wile1411 I can't reproduce this bug, not in flight nor in the editor. I'll need you to do some digging : 

First could you try to reinstall / re-download Antenna Helper,  delete the AntennaHelper folder in your GameData folder before doing so.

If it doesn't work please test on a stock game and send me your log.

 

 

Link to comment
Share on other sites

18 hours ago, Li0n said:

@AlexALX, @wile1411 I can't reproduce this bug, not in flight nor in the editor. I'll need you to do some digging : 

First could you try to reinstall / re-download Antenna Helper,  delete the AntennaHelper folder in your GameData folder before doing so.

If it doesn't work please test on a stock game and send me your log.

 First up - I love the mod and I'd be happy to help troubleshoot anything you'd like more info on. I had an idea like this mod ages back but had no idea how to mod / still learning to code. Very glad you brought it to life as will be a staple for me until I learn how to go interplanetary. Graphical representations are awesome!

I've reinstalled and I'm still trying to reproduce the toolbar issue for a repeatable sequence for you. While doing that, I ran into a separate issue.

I now get vessels where the range disks are drawn at the orientation of the vessel when viewed specifically in Relay mode and viewed from the control of a vessel that is relaying through that vessel with the angled disks.  (ie the controlled vessel doesn't have angled disks.) The disks angle shown seems to be the angle from the focused vessel and the vessel with the slanted disks.

When I switch to the vessel with the angled disks, it then shows 2 disks at 90 degree from each other. These seem to flicker between the 90 degree offsets of the vessel orientation. I can see both disks move if I rotate the ship while in map view. I can't capture a screenshot of the flicking disks as the screenshot only grabs a single frame and thus only shows 1 disk at an angle. Do you have two different draw methods occurring in the same frame?

The below screenshot is of a vessel that is drawn fine, but can see a vessel with the angled disk issue. It seems to only occur in Relay mode.

zA4ikZdh.png

 

This screenshot is of another vessel seeing a vessel with the angled disk (in relay mode again). Vessel is in low minmus equatorial orbit, angle disk vessel is the one you can just make out in high orbit.

Other issue: You can also see that the Antenna helper menu has climbed it's way off the screen. (screenshot not clipped) I've seen the menu do this in windowed and fullscreen mode. I don't seem to be able to move the window, but I assumed that was due to it not being movable at the moment. Any chance that window could spawn next to the antenna helper toolbar icon like Kerbal Engineer Redux does?

S2lWByjh.png

 

Edited by wile1411
Link to comment
Share on other sites

@wile1411 Thanks for the detailed report.

First let me explain how the circles are oriented, it may explain the behavior you're seeing :

  1. They are positioned and parented to the relay (or home planet), meaning their center will always be at the position of their parent, they also follow their parents rotation.
  2. Each frame they are oriented so their normal vector point at the active vessel (or next relay connection). This is done with a Unity method (Transform.LookAt) which can manipulate all 3 vectors in one call. (The normal vector is the vector perpendicular to the circle's plan)
  3. Next the circle is rotated 90° around its right vector. So the surface of the circle intersect with the active vessel (or next relay connection).

This is an "easy" method but unpredictable for the orientation of the circle as it depends on the relay/home planet orientation and what does Transform.LookAt. The only sure thing is that the circle surface will intersect the active vessel.

What I like to add to this method :

      4. Rotate the circle around its normal vector so the right vector point at the active vessel.
      5. Rotate the circle around its right vector so the forward vector point at the camera. This is tricky, rotating around one vector won't be enough to point directly at the camera.

One other way I had think about will be to have the circle parallel to the orbit plan of the active vessel.

 

6 hours ago, wile1411 said:

I now get vessels where the range disks are drawn at the orientation of the vessel when viewed specifically in Relay mode and viewed from the control of a vessel that is relaying through that vessel with the angled disks.  (ie the controlled vessel doesn't have angled disks.) The disks angle shown seems to be the angle from the focused vessel and the vessel with the slanted disks.

Not really sure I represent myself correctly what you're saying. Does the explanation above explain what you see ? If not can you send me your save so I can see by myself ?

6 hours ago, wile1411 said:

When I switch to the vessel with the angled disks, it then shows 2 disks at 90 degree from each other. These seem to flicker between the 90 degree offsets of the vessel orientation. I can see both disks move if I rotate the ship while in map view. I can't capture a screenshot of the flicking disks as the screenshot only grabs a single frame and thus only shows 1 disk at an angle. Do you have two different draw methods occurring in the same frame?

The below screenshot is of a vessel that is drawn fine, but can see a vessel with the angled disk issue. It seems to only occur in Relay mode.

zA4ikZdh.png

Again a save or a video will help, it can be two circle, from two relay, acting strange due to the unpredictable rotation. As for the draw method each set of circle is an Independent GameObject so they are all (re-)draw at each frame.
The circle do jitter due to their orientation being set in the Update method but the rest of the map view graphic a bit latter, sarbian proposed a fix for that but I haven't implement it yet.

7 hours ago, wile1411 said:

Other issue: You can also see that the Antenna helper menu has climbed it's way off the screen. (screenshot not clipped) I've seen the menu do this in windowed and fullscreen mode. I don't seem to be able to move the window, but I assumed that was due to it not being movable at the moment. Any chance that window could spawn next to the antenna helper toolbar icon like Kerbal Engineer Redux does?

It should spawn next to the icon (I didn't extensively tested it, I admit). I'll take a look at KER code to see how they do it. Not being able to move the window is normal, I'll add that possibility for the next release.

Link to comment
Share on other sites

this seems like an interesting mod,

few questions though:

(i'm new to the game so i don't entirely understand antennas and didn't realize they were a thing i needed to worry about, honestly i've just bee using what looks cool >.>; )

first off, if i have 100% signal strength does this mean radioing back my science = 100% science return? or is that wrong?

secondly(and thirdly), i notice the max ranges aren't far enough sometimes between planets to "talk to" each other, so i would assume a relay would need to be set up, is there any tips/help with setting up a set of relays? i.e. (thirdly) i'm trying to set up a set of stations orbiting kerbal so that my satalites always have a comm link with KSC, i'm thinking 3-4 rotating around roughly an equatorial orbit should do the trick, but how do i get them all roughly evenly spaced apart to prevent black spots in my comms? (i know how to launch them and get them into orbit, i'm just not sure how to get my timing or distance between them accurate)

Link to comment
Share on other sites

5 hours ago, Hs.Panda said:

first off, if i have 100% signal strength does this mean radioing back my science = 100% science return? or is that wrong?

You'll get 100% of the transmit-able science.

5 hours ago, Hs.Panda said:

secondly(and thirdly), i notice the max ranges aren't far enough sometimes between planets to "talk to" each other, so i would assume a relay would need to be set up, is there any tips/help with setting up a set of relays?

Place your relay as far away as possible from the DSN but remember that the last vessel on the connection path won't have a signal strength greater than the smaller signal strength of any relay on the path.

Check this mod/contract pack, it can help/guide you :

 

5 hours ago, Hs.Panda said:

i.e. (thirdly) i'm trying to set up a set of stations orbiting kerbal so that my satalites always have a comm link with KSC, i'm thinking 3-4 rotating around roughly an equatorial orbit should do the trick, but how do i get them all roughly evenly spaced apart to prevent black spots in my comms? (i know how to launch them and get them into orbit, i'm just not sure how to get my timing or distance between them accurate)

You don't really need an accurate spacing, just use the map view to roughly place them a quarter of orbit apart from each other (for 4 relays, a third if you use 3). The thing that need to be accurate is the orbital period (ie the time it take an object to complete an orbit). For displaying it you'll need KER of MechJeb. Push gently all your relay so their orbital period is the same (the more precise you get the more time you have before they move apart). For my taste it is too much of an hassle to maintain a constellation of relay around Kerbin, I use the extra ground station (in the advanced settings), it place DSN-like antenna all other Kerbin so you only need relay when you go beyond the reach of the DSN.

One last thing, this thread is not really the place to ask general gameplay question, you'll find more info (and quicker response) there : https://forum.kerbalspaceprogram.com/index.php?/forum/16-gameplay-questions-and-tutorials/

 

Link to comment
Share on other sites

3 minutes ago, Li0n said:

You don't really need an accurate spacing, just use the map view to roughly place them a quarter of orbit apart from each other (for 4 relays, a third if you use 3). The thing that need to be accurate is the orbital period (ie the time it take an object to complete an orbit). For displaying it you'll need KER of MechJeb. Push gently all your relay so their orbital period is the same (the more precise you get the more time you have before they move apart). For my taste it is too much of an hassle to maintain a constellation of relay around Kerbin, I use the extra ground station (in the advanced settings), it place DSN-like antenna all other Kerbin so you only need relay when you go beyond the reach of the DSN.

One last thing, this thread is not really the place to ask general gameplay question, you'll find more info (and quicker response) there : https://forum.kerbalspaceprogram.com/index.php?/forum/16-gameplay-questions-and-tutorials/

 

i have mechjeb but not sure how to get things syncronized apart from each other, it's not something i've actually tried yet/before and not sure where/how to start....i'll try asking in the general gameplay forum :)

Link to comment
Share on other sites

1 hour ago, Hs.Panda said:

i have mechjeb but not sure how to get things syncronized apart from each other, it's not something i've actually tried yet/before and not sure where/how to start....i'll try asking in the general gameplay forum :)

The guys of RemoteTech made very good tuts about positioning relay, most of it is true for the stock commnet too : https://remotetechnologiesgroup.github.io/RemoteTech/tutorials/c16network/

Check their others tuts too :wink:

Link to comment
Share on other sites

Version 0.9 is up, on Github !

Quote

* range circles around relays are now properly scaled
* map view window can now be moved, its position isn't saved tho

@wile1411 I've not really fixed the window issue but at least you can move it now, its position will only persist until you reload. Tell me if it get entirely off-screen, I'll made a "real" fix.

 

So now that the graphical display on flight are done, next step will be to bring it to the tracking station. Make it work with all in-flight vessel should go ok but the ultimate goal is to be able to see the connection range of vessel not yet launched.

Enjoy, and keep reporting bug and suggestion :)

Link to comment
Share on other sites

1 minute ago, Li0n said:

Version 0.9 is up, on Github !

@wile1411 I've not really fixed the window issue but at least you can move it now, its position will only persist until you reload. Tell me if it get entirely off-screen, I'll made a "real" fix.

 

So now that the graphical display on flight are done, next step will be to bring it to the tracking station. Make it work with all in-flight vessel should go ok but the ultimate goal is to be able to see the connection range of vessel not yet launched.

Enjoy, and keep reporting bug and suggestion :)

Thanks for the update - I'll download and check now.

Just a suggestion I thought of, is there a way to ensure that circles with smaller radii are drawn higher than those with bigger a radius? When I had the DSN and relay view on occasionally the smaller circles would disappear behind the DSN disks. 

I'm going to find out if I can record a video with windows so I can show a real time example, rather than screenshots.

Link to comment
Share on other sites

2 minutes ago, wile1411 said:

Just a suggestion I thought of, is there a way to ensure that circles with smaller radii are drawn higher than those with bigger a radius? When I had the DSN and relay view on occasionally the smaller circles would disappear behind the DSN disks.

There may, I'll test.

2 minutes ago, wile1411 said:

'm going to find out if I can record a video with windows so I can show a real time example, rather than screenshots.

If you have window 10, press Win + G, it bring the game recorder thingy

Link to comment
Share on other sites

25 minutes ago, wile1411 said:

Just a suggestion I thought of, is there a way to ensure that circles with smaller radii are drawn higher than those with bigger a radius? When I had the DSN and relay view on occasionally the smaller circles would disappear behind the DSN disks.

Do you mean completely disappear ? Or beeing drawn underneath ? For the latter I've just tried to drawn relay's circle a few pix higher than the DSN one but that don't change the blending between the two.
For the first I think it's a camera culling issue, if you zoom enough all circle disappear, the smaller one first. Another know issue for the list...

For the blending issue, the problem come from the shader I use (Unlit/Transparent), I did found a better one in Unity but couldn't get how to access it in KSP.

Edited by Li0n
Link to comment
Share on other sites

Just now, Li0n said:

Do you mean completely disappear ? Or behind drawn underneath ? For the latter I've just tried to drawn relay's circle a few pix higher than the DSN one but that don't change the blending between the two.
For the first I think it's a camera culling issue, if you zoom enough all circle disappear, the smaller one first. Another know issue for the list...

For the blending issue, the problem come from the shader I use (Unlit/Transparent), I did found a better one in Unity but couldn't get how to access it in KSP.

just drawn underneath. It mostly work, it only seems to duck underneath the DSN at certain camera angles.

Link to comment
Share on other sites

9 minutes ago, wile1411 said:

just drawn underneath. It mostly work, it only seems to duck underneath the DSN at certain camera angles.

Ok. Not sure what I can do about that, first I should address the unpredictable orientation issue discussed earlier. If I fix it now, if I can, I most likely have to re-fix it when I'll made the better orientation method.

Link to comment
Share on other sites

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