Jump to content

[0.22] ISA MapSat 4.0 Dev Build


Innsewerants

Recommended Posts

I\'ve done some passes around the equator and with a 30-35 degree inclination.

This is a really cool project, let\'s hope you can get the scanning beam implemented soon.

My current dev build has, expect it sooner rather than later when I get around to a public update.

---

The part model and animations are now all done and working.

Still working on a feature I really badly want in the next update, but if it takes too long I will do an intermediate update with the new mapgen features and the part model.

Link to comment
Share on other sites

Will it allow Kerbin mapping? remember that there are lusers like me who need 3 tries to configure the ascent autopilot...

As it is no, Kerbin\'s atmosphere gets in the way of being low enough for the terrain to be there to be scanned.

I have been looking into ways around this since the beginning but so far no luck.

Progress on this is also slow because every time I think of something that might work I need to leave a sat orbiting for hours just to test if it does or not.

Mapping every body is a feature I want to have so hang in there I\'ve not given up on safer more realistic altitudes and perhaps Kerbin.

Link to comment
Share on other sites

Has anyone asked Mu if there\'s any way for terrain data to be read from orbit? If there is, then that\'d be the way to fix the issue. Maybe he can do something in a future release to allow it too. Having 'Mapping Missions' would be important for the final KSP release, so it\'s something that benefits everyone.

Link to comment
Share on other sites

Having 'Mapping Missions' would be important for the final KSP release, so it\'s something that benefits everyone.

In the game, such missions will probably be handled in a more abstract/'gamey' way: fulfill required parameters -> unlock data from the planetary map. This is a very clever and funny hack, but it takes hours and hours to scan a planet, as in would in reality... I think that actually simulating a radar scanner like this plugin does isn\'t necessary ;)

Link to comment
Share on other sites

In the game, such missions will probably be handled in a more abstract/'gamey' way: fulfill required parameters -> unlock data from the planetary map. This is a very clever and funny hack, but it takes hours and hours to scan a planet, as in would in reality... I think that actually simulating a radar scanner like this plugin does isn\'t necessary ;)

I think it is necessary actually. Doing it by yourself, and knowing you ARE actually scanning the Mun, Kerbin or other planets, and that the data you have is actually generated from your satellites adds a level of accomplishment and excitement which you don\'t get from the generic: 'Orbit 3 times around the Mun at 5000m, 7500m and 10000m'. But that\'s my view on it anyway :)

Link to comment
Share on other sites

Remember that time acceleration is available in KSP to offset the time need for mapping missions. Additionally, I would hope that in the future the module could be running even when you\'re not focused on it (like in the real world) so that you\'re flying other missions while the mapping is going on, again, just like in the real world. NASA didn\'t stop launching rockets just because the first Surveyor mission had launched. There were other things they needed to do once Surveyor was in orbit of the Moon before they could actually use its data. Things like the Gemini and early Apollo missions that needed to prove the systems before the ultimate goal could be reached.

Link to comment
Share on other sites

Remember that time acceleration is available in KSP to offset the time need for mapping missions. Additionally, I would hope that in the future the module could be running even when you\'re not focused on it (like in the real world) so that you\'re flying other missions while the mapping is going on, again, just like in the real world. NASA didn\'t stop launching rockets just because the first Surveyor mission had launched. There were other things they needed to do once Surveyor was in orbit of the Moon before they could actually use its data. Things like the Gemini and early Apollo missions that needed to prove the systems before the ultimate goal could be reached.

This is unfortunately a game limitation. Unless there is some other way to get mesh data, it\'s only loaded close to your currently controlled ship.

Link to comment
Share on other sites

Remember that time acceleration is available in KSP to offset the time need for mapping missions. Additionally, I would hope that in the future the module could be running even when you\'re not focused on it (like in the real world) so that you\'re flying other missions while the mapping is going on, again, just like in the real world.

It would be very heavy on resources; all the involved planets would have to be fully instantiated, as all the involved ships... also, the terrain code couldn\'t keep up if you switched to 10000x time... it goes against the whole idea of the rails system. That\'s why I think the game will simulate the results, instead of actually producing them.

(Some amendment to the rails system would be welcome, for example to make possible things like ion drives, but this seems too difficult)

Link to comment
Share on other sites

Today I found the time to have a look at it and it seems i managed to make it not rely on the mesh intersection.


Vector3d rad = isa_Position - vessel.mainBody.position;
isa_RAM_Elevation = Math.Round(vessel.mainBody.pqsController.GetSurfaceHeight(rad) - vessel.mainBody.Radius, 1);

Replacing the existing 'isa_RAM_Elevation = ...' with those two lines makes it read the height from the height map.

I\'m orbiting Kerbin from a 100km high orbit and it seems to spit out reliable data. The only issue is that the mapgen tool doesn\'t work for height < 0, that is when the craft is above an ocean.

@Innsewerants

Can we have the source of mapgen too?

Link to comment
Share on other sites

Remember that time acceleration is available in KSP to offset the time need for mapping missions. Additionally, I would hope that in the future the module could be running even when you\'re not focused on it (like in the real world) so that you\'re flying other missions while the mapping is going on, again, just like in the real world. NASA didn\'t stop launching rockets just because the first Surveyor mission had launched. There were other things they needed to do once Surveyor was in orbit of the Moon before they could actually use its data. Things like the Gemini and early Apollo missions that needed to prove the systems before the ultimate goal could be reached.

-In the game structure parts need to be activated by the stage they are in to have their module code run, I could run the code all the time but I doubt that\'s the intention of Squad letting us play around with making modules, you would also end up with 5 seperate instances of code trying to access the same file at the same time which might lead to weird problems and a load of console spam.

-Too much time acceleration throws measurements out of whack.

I\'ve have tested what you said from very early on before I made the mod public. more than 50% of my time has been spent verifying it works or not and the data is good or not and not writing code. (Well I usually code something in the mapgen tool while I leave ksp sat gathering test data after changing module code but still.)

I am working on a completely different method of scanning which should make most limitations and questions being asked at the moment irrelevant, but I have run into a big problem with it, after a few hours of data collecting showed some really weird values and further testing while staring at the satellite and console with a zillion print outs on various things showed it\'s ksp giving me weird values and nothing in my code. About 40 variables onwards I haven\'t found one or a combination of that lets me check for or prevent this happening. I\'ve reached out to Mu yesterday about my findings to hopefullly at minimum confirm the possibility or impossibility of doing scanning in this new fashion.

Because it is taking so long I am thinking of porting over the wider beam to the old scanning method currently in use and release an intermediate update together with the new mapgen features.

Today I found the time to have a look at it and it seems i managed to make it not rely on the mesh intersection.


Vector3d rad = isa_Position - vessel.mainBody.position;
isa_RAM_Elevation = Math.Round(vessel.mainBody.pqsController.GetSurfaceHeight(rad) - vessel.mainBody.Radius, 1);

Replacing the existing 'isa_RAM_Elevation = ...' with those two lines makes it read the height from the height map.

I\'m orbiting Kerbin from a 100km high orbit and it seems to spit out reliable data. The only issue is that the mapgen tool doesn\'t work for height < 0, that is when the craft is above an ocean.

@Innsewerants

Can we have the source of mapgen too?

PLEASE do not use this code, it will give crap data which might be hard to detect at first on the mun but it\'s really bad crap data.

This is the feature and code that\'s taking so long, it takes so long because the interval at which it gives bad data is really long and I only discovered it after an overnight test when a render showed it overwriting land with ocean and vice versa.

I check my code/data overnight and in depth before making code part of the module and have tested all the variables you can get direct from pqsController and found 6 or 7 ways to get terrain data that way but they all do the same, almost like inverted data, crap in long random intervals.

@giucam

Scan for a really long time, it screws up. It\'s the feature that\'s taking so long and delayed the update past the planned weekend.

After a while you\'ll get continents over ocean, ocean over continents.

Thanks for pretty much forcing me to reveal the surprise before it\'s confirmed working lol.

Please don\'t mix data got with the new method with csv\'s being shared.

Hours of checking revealed it, I went hallelujah just like you at first and then checked the data of an overnight session of scanning while I slept and the data seems to invert randomly, at least it drew a swaft of ocean through where it before found land and after watching console output on everything in the pqscontroller while watching my sat confirmed it. I have tested every possible variable you can read on pqsController and they all do the same random screwing up of values in concert.

Next time please pm me, in all likelyhood I already tested it and am not using it in the mod for a reason.

If it\'s something I haven\'t tested and I confirm it\'s working I will give credit where it\'s due.

Link to comment
Share on other sites

You\'re right, it screws up.

Anyway, maybe i\'m too used of working in open source projects, but i think the best way to deal with these problems is to make them public, so that many people can look at it, rather than keeping them private.

Link to comment
Share on other sites

You\'re right, it screws up.

Anyway, maybe i\'m too used of working in open source projects, but i think the best way to deal with these problems is to make them public, so that many people can look at it, rather than keeping them private.

I\'m not really keeping it private. I\'m just more on irc as many other coders are and the line of communication is more direct and timely over there.

Run into a snag? r4m0n will be on to talk to directly for example, no waiting for the forum.

The main reason for a bit of privacy was that I wanted to surprise people with Kerbin after all the talk of impossibility instead of getting hopes up and potentially failing to live up to them and didn\'t expect this problem to be so difficult to solve and take this long, but I have literally run out of things you can check on pqs and haven\'t found anything that can at the least be a check to stop collecting data when it happens or prevent this odd problem from happening to begin with.

It\'s okay though, my main concern is people getting their data polluted if they use experimental code and share data collected with it here.

My apologies if I seemed like coming on too strong.

Link to comment
Share on other sites

I have followed instructions exactly as per the readme installation, though cant seem to get the mod to spit out a .csv file.

I spent over an hour going around and around the mun at an orbit of 3.8km, only to get no data.

Am I doing somthing wrong? I\'ve checked the Isa_Ram_Mapper folder is in the KSP_Win\ folder

Link to comment
Share on other sites

I\'m not really keeping it private. I\'m just more on irc as many other coders are and the line of communication is more direct and timely over there.

Run into a snag? r4m0n will be on to talk to directly for example, no waiting for the forum.

The main reason for a bit of privacy was that I wanted to surprise people with Kerbin after all the talk of impossibility instead of getting hopes up and potentially failing to live up to them and didn\'t expect this problem to be so difficult to solve and take this long, but I have literally run out of things you can check on pqs and haven\'t found anything that can at the least be a check to stop collecting data when it happens or prevent this odd problem from happening to begin with.

It\'s okay though, my main concern is people getting their data polluted if they use experimental code and share data collected with it here.

My apologies if I seemed like coming on too strong.

It might be that the height values, or coordinates or something are overflowing, which makes them point to somewhere else. It\'s the only thing that seems a somewhat logical explanation for the bug. But yeah, one of the devs will prolly be able to answer with more certainty. I hope you\'ll be able to fix it, and are learning and having fun at the same time ;)

Link to comment
Share on other sites

It seems i managed to fix the bug (or maybe workaround it, i don\'t know yet).


Vector3d rad = QuaternionD.AngleAxis (isa_RAM_Longitude, Vector3d.down) * QuaternionD.AngleAxis (isa_RAM_Latitude, Vector3d.forward) * Vector3d.right;
isa_RAM_Elevation = Math.Round(vessel.mainBody.pqsController.GetSurfaceHeight(rad) - vessel.mainBody.pqsController.radius, 1);

I\'m now testing it yet but from the first few orbits it seems to work right.

Link to comment
Share on other sites

I have followed instructions exactly as per the readme installation, though cant seem to get the mod to spit out a .csv file.

I spent over an hour going around and around the mun at an orbit of 3.8km, only to get no data.

Am I doing somthing wrong? I\'ve checked the Isa_Ram_Mapper folder is in the KSP_Win\ folder

I\'m having the same problem, except my orbit was below 3K before it crashed (at least three complete orbit before the crash). ALT-F2 showed nothing, I had an antenna in the current stage, and still no .csv ...

would somebody dumb down the installation process just to see if it\'s something I overlooked? (both plugins and parts are in their respective folder)

Link to comment
Share on other sites

v2.0.0 is out.

Kerbin mapping, thicker 'beam', high altitudes, new projection options :)

Thanks to guicam for figuring out yet another way to get elevation data which doesn\'t seem to go all nutty.

I\'ve listed the new features in the features etc spoiler tag, there are quite a few new things, updated the arguments section with all the new mapping arguments.

The natural colour scheme doesn\'t scale yet though and is more or less optimized for Kerbin. I wanted to get Kerbin mapping out on the forum, will do a small update of mapgen when I have tweaked that option a bit more.

Hope you all enjoy,

Most questions, previous problems etc are irrelevant now, different code.

If any problems pop up, please let me know and I will get to it asap.

Now I only hope I didn\'t forget to pack anything and wake up to a zillion 'it doesn\'t work' replies.

Link to comment
Share on other sites

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