Jump to content

[PLUGIN+PARTS][0.23] SCANsat terrain mapping


damny

Recommended Posts

DMagic, I am even more impressed than before for how you are implementing resource mapping :D. Excellent.

Getting rid of hexes is a good choice, when locations are respected and drawing is made easier. The ability to see the amount of a resource under the pointer, perfect. Letting background scanning be possible with kethane sensors, wonderful.

Just a small detail I want to suggest. Kethane mod itself deals with two different localised resources (Kethane and Ore*), plus many more resources may be represented in future (still thinking at ORS? yes). Then I foresee many different overlays available, and the "kethane button" you added may be turned into a selector for the one overlay the user wants to see.

EDIT: * Ore is added by Extraplanetary LaunchPads mod, but is integrated in the hex grid presentation with kethane.

Edited by diomedea
Link to comment
Share on other sites

DMagic, let me say - amazing work, absolutely astonishing!

I have not followed the thread ever since your first rc, so I would like to ask - your latest work in collaboration with the Kethane mod and maybe Majiir is great, but does it mean we can get rid of the Kethane scanner parts or does it just implement the ability to display their data on the ScanSat Big Map?

I am tired of all satellites looking like Christmas trees with various parts slapped on them.

Link to comment
Share on other sites

Loving the kethane scanner window! I always preferred the window to in game world textures (pretty weird tbh).

I was thinking, while this is in development, could you make it so you could open multiple scanning windows at once, so you could view the progress of, say, biome cover and hires terrain height at the same time, individually?

Link to comment
Share on other sites

Kolonazation mod adds several different resources via Kethane all presented though the Kethane grid overlay and would be very advantageous to be displayable on the SCANSat map as well :) Maybe, if possible, some automatic addition for any that Kethane recognizes to also future proof a bit like the hex overlay has

Link to comment
Share on other sites

I think the idea is to search through all of the existing resources on any given game, find out which ones are Kethane resources, and allow for the user to select which one to display. I'm not sure about displaying multiple resources at the same time though.

The settings menu could probably have (as long as the right plugins are found) a button to enable/disable the overlay, another to select the resource and a check box to enable background scanning. Then the big map would have a button controlling the overlay for the selected resource. There's probably a better way of rebuilding the Kethane cell database, but that can be improved upon later.

I was thinking, while this is in development, could you make it so you could open multiple scanning windows at once, so you could view the progress of, say, biome cover and hires terrain height at the same time, individually?

I'm not sure that there's really a need for more than the two maps already available. You can already monitor elevation data on the small map while refreshing the big map for biomes.

Link to comment
Share on other sites

I think the idea is to search through all of the existing resources on any given game, find out which ones are Kethane resources, and allow for the user to select which one to display. I'm not sure about displaying multiple resources at the same time though.

Yes, that is quite close to my (basic) idea. Allow all localised resources to be mapped (with the proper detectors in place for scanning), at most one of them to be displayed at a time. Multiple overlays open at one time would probably make a mess.

Link to comment
Share on other sites

So apparently this isn't really difficult at all. Ok, SCANsat already has a method for background scanning built in, but still, it took me literally five minutes to come up with a workable solution. The trick is that SCANsat doesn't actually scan anything in the background, it just records what sensors have flown over what area of the planet. The elevation and biome scanning is all done when the map is drawn. The same thing is possible with Kethane, you just check which areas of the planet have been scanned and which cell those areas correspond to.

The active vessel, with the blue orbit, does not have a Kethane scanner and is orbiting at ~750km. The inactive vessel, in grey, has a small Kethane scanner with a SCANsat module attached to it and is orbiting at ~250km. It took about 15 sec at max time warp to go from the map shown in my last post to this map. The Kethane grid doesn't seem to accept my additions to its database until I reload, but the SCANsat map (note the "Rebuild Kethane" button) works fine.

I added a Kethane sensorType to SCANsat (using sensorType = 4, the old slope scanner number), set the fov = 1 and the best alt = 250000. The rebuild button checks which cells have been scanned and adds them to the Kethane database. I'm guessing you need an active Kethane sensor or part on the vessel for the grid to update without reloading.

So if the reason for not having background scanning really is technical and not philosophical then I don't see any reason why this can't be added to SCANsat. Working out how best to handle the part modules is another question, but that's not really a big deal.

http://i.imgur.com/Wxzksl3.png

Edit: The code for all of this is available on a branch of my Github page, the base is technogeeky's latest build.

I finally check in after a lot more around-the-house work than I expected this weekend.

Lovely work DMagic.

Psawhn (who made the ideal altitude calculator) figures that you can replicate the correct swath width of the Kethane hexes by simply using an FOV (or was it swath width?) of 2.25. Or maybe a shade less, to handle the case where you are scanning between two Kethane grids.

One other feature I would like to add ASAP is to represent the MechJeb landing target reticle on the SCANsat map. That way you could see not only which hex you are going to land in (important!) but also you could see what the slope is where you are projected to land.

However, this may or may not be a dependency problem.

Link to comment
Share on other sites

DMagic, let me say - amazing work, absolutely astonishing!

I have not followed the thread ever since your first rc, so I would like to ask - your latest work in collaboration with the Kethane mod and maybe Majiir is great, but does it mean we can get rid of the Kethane scanner parts or does it just implement the ability to display their data on the ScanSat Big Map?

I am tired of all satellites looking like Christmas trees with various parts slapped on them.

From reading what he wrote, he has not decided yet.

Also, many scanning satellites do look like Christmas trees with various parts slapped on them. :o

Link to comment
Share on other sites

Does anyone particularly care if the SCANsat map's Kethane overlay actually looks like a grid of hexagons? The performance impact of really accurately matching every pixel to the Kethane grid is significant. Displaying the grid at a lower resolution is very easy to do and reduces the performance impact to almost negligible levels.

Note the "Kethane" button below, next to the "Grid" button, that can be used to turn the overlay on and off, and the Kethane quantity indicator showing the amount in the cell under the mouse pointer. The color of the overlay is a little bit more saturated now and it's easier to see on colored maps; cells that actually have resources under them are emphasized. The overlay works on all map types now, but the polar projection breaks my low resolution grid method, so I'm using a higher resolution (though still not as high as possible) for that.

http://i.imgur.com/Y0wZw3d.png

http://i.imgur.com/xBcChF0.png

These pictures and my previous work make me think that the opacity of many of these overlays should be adjustable in the UI.

Nice work!

Link to comment
Share on other sites

What the status of an official V6 release? I'm mostly interested for patching MJ, SCANsat, and RPM to play nice again.

I have said and will stick by: v6 will be released this weekend.

I may have to use some technicality to actually reach that goal (like, midnight PST even though I'm in EST), but I'll get it out tonight.

It will not have the kethane resource views in. It almost certainly will have the cached bigmap in.

Link to comment
Share on other sites

It will not have the kethane resource views in.

Yes, this is nowhere near ready.

That said, I put in some options in the settings menu to control the overlay and to allow for multiple resources that use the Kethane system. These options work (turning off the overlay all together, selecting which resource to display), but there are multiple problems. One is that they don't take effect until the map is rebuilt. I think there will also be problems if people have too many Kethane resources; it probably needs some better way of handling the options, preferably a pop-up menu of some sort.

There is currently only one SCANsat sensor type that works for Kethane. The way it's coded right now that sensor will reveal every resource that uses the Kethane system, which obviously isn't good. It's possible to add different SCANsat sensor types for each different resource, but I'm not sure if it's really feasible to continue adding more scanner types.

I also fixed the empty cell color. I realize that the Kethane grid varies the color based on the amount of resources in the deposit, I don't think that's a good idea here, it would probably make it much harder to see when layered on top of the regular map.

Edit: It should also be noted that this has all of the same dependency problems that everything else does. Making Kethane a required dependency is obviously not an option. Kethane is relatively stable though, so maybe it's a good idea to make a separate .dll specifically for handling Kethane interactions. Adding a MechJeb target overlay would also be great (it would finally make the slope map really useful), but probably will have the same problem the RPM does.

You can see the settings menu options here on the left and the fixed empty cell colors. The ore map from extra-planetary launchpads is below.

f0kjjzl.png

hKngJeG.png

Also, this happens sometimes. I think it has something to do with right-clicking and dragging to move the camera while the mouse is over the big map, the Kethane grid, or maybe both.

XrCiDXJ.png

Edited by DMagic
Link to comment
Share on other sites

Wow, I'm impressed with this. I just downloaded it earlier for anomaly hunting and scanned 99.8% of Kerbin in about 4 game days... Would have been faster but my orbit was a bit wonky. It's a tiny bit taxing on my computer depending on what you're doing with it, but I expected that. Most of it is pretty straightforward but I was curious is there a way (built in or planned) to select a place you're headed to find it easier? Like a compass arrow or one of the markers like you get for a lander etc? Maybe I'm just not used to it yet but I feel like it's going to be a little difficult to land / drive to a specific spot... Guess I can just use the infinite zoom if I'm already on the ground.

No disrespect to the author of ISA Mapsat which was great while it was maintained from what I hear, but this blows it out of the water especially since it's pretty much been broken since I started trying to use it (.22 or .23 can't remember). Look forward to seeing where this goes.

Edited by Duke23
Link to comment
Share on other sites

As promised, here is the final v6 release. The last feature to make it in was the big map caching. Which is awesome.

DOWNLOAD SCANsat v6 (from GitHub)

SCANsat v6 SOURCE (hosted by GitHub)

This version, like all new versions, has a hardcoded version ("1.0.6.0", meaning SCANsat 1 version 6).

Please also check out the new README. I have converted it to nice, link-filled, table-filled markdown. Please suggest fixes, changes, or additions.

Unless this has any breaking changes, this freezes v6. All future features or bugfixes will be in v7 (or later).

If everything is reported as good, and Mihara is able to compile against these official versions (please inform s/he to try and do so), then I will make a new thread inthe Showcase for the release version, and make a new thread in Development for us developers.

Edited by technogeeky
Link to comment
Share on other sites

I have said and will stick by: v6 will be released this weekend.

I may have to use some technicality to actually reach that goal (like, midnight PST even though I'm in EST), but I'll get it out tonight.

It will not have the kethane resource views in. It almost certainly will have the cached bigmap in.

I dont know if it is a time to do requests, but coudl you maybe allow displaying anomaly markers on small map?

And some indicator of current coordinates of active vessel, right now you can only have coordinates of point you are hovering your cursor, right?

Coordinates of specific anomaly woudl be cool too.

Another thing, optional orbit lines (ground track) display on small map.

edit: oh it seems im too late, release post is above mine :)

well maybe for next update

Edited by kiwiak
Link to comment
Share on other sites

I dont know if it is a time to do requests, but coudl you maybe allow displaying anomaly markers on small map?

And some indicator of current coordinates of active vessel, right now you can only have coordinates of point you are hovering your cursor, right?

Coordinates of specific anomaly woudl be cool too.

Another thing, optional orbit lines (ground track) display on small map.

edit: oh it seems im too late, release post is above mine :)

well maybe for next update

The next release will have a totally revamped "bottom of big map" section. This will include displaying of coordinates, colors, height color gradients, etc.

As for anomaly coordinates: The ability to drop map markers should get you arbitrarily close (this includes the MechJeb landing reticle, if we do that). I don't think I want to display anomaly coordinates anywhere. There are a few reasons: it's a step closer to cheating; displaying none of their coordinates is easy; displaying all of their coordinates is easy; but displaying just some of them is hard (how do I track selection? clicking them on bigmap? they already seem to have alignment issues). But maybe.

It should be easy to allow small map markers, so I'll check that out. It should be easy to do ground track on the small map. I may be interested in doing line-style ground track on the big map too, since having on the order of ten thousand dots to represent several orbits is quite taxing. :)

Link to comment
Share on other sites

On the RPM subject, it turns out that you don't have to rebuild all three plugins every time(at least with my setup). Apparently, any given RPM codebase spits the same version numbers out regardless of which plugins you build it with, the problem's just that the 'release' source spits out a different build ID from the official pre-built release.

So you can build all three *once*, and then only have to do do the <X>RPM for whichever one changes as long as you use the same RPM code.

To change RPM versions you'd have to do all three again, though. Isn't this whole thing wonderfully terrible?

Link to comment
Share on other sites

Did I just do something wrong, or the low-res altimetry part no longer have any science points?

Is this version 6? Are you using the default part.cfg files, the ones included in the download? Do the other sensors have an "Analyze Data" button?

The way that the analyze button is handled was changed a little bit. It should always be present, even if you aren't scanning, and the MapTraq part shouldn't show the button at all. If any one scanner type is working properly then all of them should be.

Edit: A brief check of the latest build shows everything working fine for me.

Is that the SCANsat toolbar icon shown in your picture above, the last icon on the right? It shouldn't be so small like that. Maybe try deleting and reinstalling the SCANsat folder.

Edited by DMagic
Link to comment
Share on other sites

Is this version 6? Are you using the default part.cfg files, the ones included in the download? Do the other sensors have an "Analyze Data" button?

Yes, this is v6. I am using the default part.cfg files - I just deleted the entire SCANsat directory and copied over the new one.

The way that the analyze button is handled was changed a little bit. It should always be present, even if you aren't scanning, and the MapTraq part shouldn't show the button at all. If any one scanner type is working properly then all of them should be.

Nope, the other ones do.

Is that the SCANsat toolbar icon shown in your picture above, the last icon on the right? It shouldn't be so small like that. Maybe try deleting and reinstalling the SCANsat folder.

Ah, that's a known conflict with SCANsat and Active Texture Management. There was a workaround posted somewhere in this thread, but I haven't put it in place (since I reinstalled ATM). I haven't modified anything in the SCANsat folder.

EDIT: Demo of the high-def radar altimeter with the Analyze Data button:

5Ki4vXp.png

Edited by leops1984
Link to comment
Share on other sites

The next release will have a totally revamped "bottom of big map" section. This will include displaying of coordinates, colors, height color gradients, etc.

As for anomaly coordinates: The ability to drop map markers should get you arbitrarily close (this includes the MechJeb landing reticle, if we do that). I don't think I want to display anomaly coordinates anywhere. There are a few reasons: it's a step closer to cheating; displaying none of their coordinates is easy; displaying all of their coordinates is easy; but displaying just some of them is hard (how do I track selection? clicking them on bigmap? they already seem to have alignment issues). But maybe.

It should be easy to allow small map markers, so I'll check that out. It should be easy to do ground track on the small map. I may be interested in doing line-style ground track on the big map too, since having on the order of ten thousand dots to represent several orbits is quite taxing. :)

There is much to be done in making the different windows match up better, in style, content, and some aspects of their behavior. Close buttons on some windows, X boxes on others, different behavior when dragged off-screen, the ability to minimize the bottom info section of the small map, etc...

Much of the information about your current scanning vessels could be included on the big map, in addition to the mouse-over information. It might also be a good idea to add a way to minimize this bottom info panel too, especially if you make the big map relatively small.

Some changes to the small map might not actually work well though. Because it is much lower resolution, in terms of pixels and the granularity of the data it shows, I don't think biome or slope maps would be useful. They would probably just end up being difficult to read and not very helpful.

I agree about the anomaly coordinates too. Aside from making things too easy there are some technical problems with relying too much on the exact position. The "anomaly" position doesn't always match up exactly with the actual structure, and there are further complications when you have more than one structure per anomaly.

Link to comment
Share on other sites

Yes, this is v6. I am using the default part.cfg files - I just deleted the entire SCANsat directory and copied over the new one.

Can you set an action group for analyzing data in the VAB? And if so does it work?

Link to comment
Share on other sites

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