Caerfinon Posted July 12, 2021 Author Share Posted July 12, 2021 THE CKAN ISSUE HAS BEEN CORRECTED! HUZZAH! Everyone dive safe. Quote Link to comment Share on other sites More sharing options...
Eskandare Posted July 13, 2021 Share Posted July 13, 2021 Hello, I've come to visit. You'll be happy to hear I'm working on a bunch of water based statics plus some under water anomalies for a future under water parts expansion I've been working on. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 13, 2021 Author Share Posted July 13, 2021 4 minutes ago, Eskandare said: You'll be happy to hear I am very happy to hear that! I'm working on a mission framework for anomaly exploration that can be adapted to any sites that are created! Quote Link to comment Share on other sites More sharing options...
Angelo Kerman Posted July 13, 2021 Share Posted July 13, 2021 3 minutes ago, Eskandare said: Hello, I've come to visit. You'll be happy to hear I'm working on a bunch of water based statics plus some under water anomalies for a future under water parts expansion I've been working on. I cannot stress how delighted I am to see people making underwater statics and anomalies. I cancelled Rocket Shark, my first aquatic parts mod, when I realized that there was so little to explore in the water. Seeing @Caerfinon and @Eskandare making contracts and statics/anomalies, respectively, inspires me to keep making SunkWorks. Well done folks! Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 13, 2021 Author Share Posted July 13, 2021 3 minutes ago, Angel-125 said: inspires me to keep making SunkWorks It's process is a feedback loop... When I see the stuff you and @ColdJ working on, it inspires me to come up with more ideas for nautical inspired contracts! Quote Link to comment Share on other sites More sharing options...
Eskandare Posted July 13, 2021 Share Posted July 13, 2021 19 minutes ago, Angel-125 said: I cannot stress how delighted I am to see people making underwater statics and anomalies. I cancelled Rocket Shark, my first aquatic parts mod, when I realized that there was so little to explore in the water. Seeing @Caerfinon and @Eskandare making contracts and statics/anomalies, respectively, inspires me to keep making SunkWorks. Well done folks! I have that submarine mod that I had been working on for a while as well as the under water base construction set. 32 minutes ago, Caerfinon said: I am very happy to hear that! I'm working on a mission framework for anomaly exploration that can be adapted to any sites that are created! Very nice! I hope to have more water launch systems and maybe an oceanic base for launching sub missions. With the better hangar module, you can store your subs in the the sub pen. It is in planning stages at the moment. Currently Kerbin Side Remastered is undergoing a new art pass, upgrading the 'ground' to the new mapping system. I think I'll make a new lower dock as well for smaller vessels. The current dock was designed for the CVX aircraft carriers. Those carriers take a lot of work to make. I think I've done 5 or more art passes on them and i'm still not satisfied. The LSD Wasp class may also be a great craft for having a mobile base for water research. I hope to have enough goodies hidden for discovery in KSR and the carriers for that added fun, because carriers are fun. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 13, 2021 Author Share Posted July 13, 2021 Current Status: Play testing the "site dive" contracts. Can be applied to any undersea KK static site with customization of names, way-point locations, etc. Underwater cave dive complete Sunken temple dive complete Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 14, 2021 Author Share Posted July 14, 2021 Current Status Replenishing fish stocks Mammoth geological formation site dive completed Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 15, 2021 Author Share Posted July 15, 2021 Current Status: Minor tweaks to Site Dive code Created KK Static "Hatchery" and plugged coordinates into site dive mission Site Dive missions 4 of 8 completed. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 16, 2021 Author Share Posted July 16, 2021 Current Status Hip deep in Kerbal Konstructs designing a thermal vent to explore. I'm pretty pleased with it. toyed briefly with the idea of writing some code to "boil" divers who go too close to it, but it I'll save that for a future "project" Quote Link to comment Share on other sites More sharing options...
ColdJ Posted July 16, 2021 Share Posted July 16, 2021 1 hour ago, Caerfinon said: Current Status Hip deep in Kerbal Konstructs designing a thermal vent to explore. I'm pretty pleased with it. toyed briefly with the idea of writing some code to "boil" divers who go too close to it, but it I'll save that for a future "project" I think the world is already dangerous enough without turning Kerbals into Hard Boiled Eggs. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 16, 2021 Author Share Posted July 16, 2021 Current Status Hydrothermal Vent mission completed and tested. (take some lights, it is dark down there) minor tweaks and spelling corrections. Site Dive missions 5 of 8 completed. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 17, 2021 Author Share Posted July 17, 2021 Was a busy day yesterday, and so... Version v1.0.1 for Kerbal Space Program 1.12.1 Released on 2021-07-17 Adds functionality for 8 underwater Kerbal Kontructs sites and accompanying exploration mission for each. Now on SpaceDock. Quote Link to comment Share on other sites More sharing options...
fxcustoms Posted July 20, 2021 Share Posted July 20, 2021 Can someone assist me with a question, on one of the first missions where you go to a spot then send a diver down it has under the - have the required equipment, says -with module: Data Transmitter Is this just supposed to be an antenna or is there a part I just cant seem to find, I have several other mods, so this may be a conflict or I just cant find the part. I have tried several items that I thought this may be but have yet to find the right one. Thanks for any help and sorry if this is a bonehead question with a obvious answer Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 20, 2021 Author Share Posted July 20, 2021 1 hour ago, fxcustoms said: with module: Data Transmitter Any stock antenna will do. Each one has the module data transmitter as part of it's config to be able to transmit science data. Which is a later step in the mission I believe. Quote Link to comment Share on other sites More sharing options...
NipperySlipples Posted July 20, 2021 Share Posted July 20, 2021 (edited) I love this. These missions are fun, add lots more to do to the game and are well designed and feel different with each repeat. In my hardcore playthrough they REALLY help flesh out the early game and provide a wonderfully fun source of income. Took me a few hours to build 16 custom harbors in KK, spread them out around my customized JNSQ game and setup the co-ordinates in the groups config. Easy given how much I got out of it with these new missions. I really appreciate the effort you took into making it so configurable. The dive sites were harder to adapt. Needed to setup all the waypoints after finding a new home for all the KK sites and anomalies. That took me the better part of a day. 100% worth it though. (and gave me a chance to over decorate the crap out of the areas around some of them with more statics) - Having done all this i have a few small suggestions. Im not sure its possible in a contract config ,but to make this extremely easy to configure to custom planets/ rescaled systems it would be nice if the dive site waypoints were automatically created relative to the KK dive site co-oridinates . something like dive1lat = SiteLocationLat - offset. This way we would only have to set up harbor location and Observer location. in the same vein multiplying the rewards by a distance factor could be helpful, so if using a rescaled system or another planet pack the rewards are more worthwhile without changing each contracts config. Also the starting KUMA dive certification, on a rescaled system it wants to dive to a reasonable depth (like 300m) and then the second part of the certification requires you to leave your vessel and touch the sea floor with a scuba-kerbal. However the sea floor might be a lot deeper than the 300m point your supposed to leave the sub at assuming your not on standard kerbin. I know the mod is just meant for stock and I'm using it in a way not (yet) intended but you may want to consider an optional depth check rather than the sea floor for the first dive. (like 500m or something) . better yet have it be dive to the sea floor or X depth whatever comes first. In JNSQ I wasn't able to complete the dive certification (and unlock the other contracts) until I was able to dive to around 1000m with pressure limits (and rational bouyancy/pressure mod) which was either very hard or very slow (just letting the kerbal sink the 700m). with your JNSQ-GAP and now this in my JNSQ game my biggest problem is that I'm not sure I'm ever going to leave kerbin. Thanks for all your work! Edited July 20, 2021 by NipperySlipples Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 20, 2021 Author Share Posted July 20, 2021 17 minutes ago, NipperySlipples said: Thanks for all your work! Many thanks for your comments. Nice work adapting it for JNSQ. The problem with the "depth" of missions is that there is currently no way in Contract Configurator to determine the depth of any given location. Everything between ocean floor and sea level is pure guess work. The choice to go to the bottom of the ocean was made because it as an achievable goal in stock and there is a state change from SPLASHED to LANDED that occurs when a kerbal on eva reaches it which was easier to code into the contract parameter. The dive locations are randomly set to water a fair distance from the port in water so I guessed that 200 to 300 meters would be OK for a check. (There is a statistical chance that a situation will occur where the dive point is placed in very shallow water but I haven't run across it yet, and I've play-tested a lot of dives). I haven't used the rational buoyancy/pressure mod I should take a look at it. dive values could be patched if the mod is detected. The Dive Site locations could be set as offsets to the the KK sites, As well, the harbor and observer locations could be offset to the KK site they are associated with. This is a good suggestion and I will test out it's feasibility. The distance to reward ratio could be multiplied by the planet size in the group.cfg and then not only rewards could be changed via the multiplier, but randomly set way-point distances could also be increased on larger worlds. I was planning a port of this to JNSQ at some point but it looks as though you've done the lion's share of the work moving all of the KK statics. If you interested in collaborating on the work let me know. Again thanks for your post and you've given me a lot to think about. (Also, I rarely get to space any more either) Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 21, 2021 Author Share Posted July 21, 2021 Into every life some bugs must fall... Issue #6 - Site Dive Mission Legend Dialog. Incorrect Kerbal is shown Issue#7 - Dive Site Mission Coral Lagoon 1st Waypoint is not underwater. First one is cosmetic. second is game breaking for the mission. Investigating and will release an update shortly. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 21, 2021 Author Share Posted July 21, 2021 Version v1.0.2 for Kerbal Space Program 1.12.1 Released on 2021-07-21 BUG FIX #7 Site Dive Missions - Waypoints not generating correctly - Fixed #6 Site Dive Legend Dialog does not render Kerbal picture correctly. Feature removed Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 21, 2021 Author Share Posted July 21, 2021 @NipperySlipples The upgrade for v.1.0.2 should work with your JNSQ set up. All the same variable look-ups are in play. There is a weird Contract Configurator bug that doesn't set the altitude of way-points correctly if the value is derived form an array using non-detrministic variables (like a random number). This resulted in all of the Site Dive missions having the wrong dive locations. The new code works, but requires a config file for every site so that a deterministic variable can be used to set the altitude. Very frustrating, but functional. Quote Link to comment Share on other sites More sharing options...
Warro Posted July 21, 2021 Share Posted July 21, 2021 22 minutes ago, Caerfinon said: @NipperySlipples The upgrade for v.1.0.2 should work with your JNSQ set up. All the same variable look-ups are in play. There is a weird Contract Configurator bug that doesn't set the altitude of way-points correctly if the value is derived form an array using non-detrministic variables (like a random number). This resulted in all of the Site Dive missions having the wrong dive locations. The new code works, but requires a config file for every site so that a deterministic variable can be used to set the altitude. Very frustrating, but functional. I'm not programmer myself but want to ask if you are making calculation right in the waipoint defining process? like "Waypoint1(Lat=Lat1,Lon=Lon1,Alt=some_calculations_here)" ? or previously defined Alt as varable for example like Alt1 and THEN define waypoint with this variable? Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 21, 2021 Author Share Posted July 21, 2021 @Warro All variables are defined in arrays at the group level. there are eight entries in each array, one for each dive site. A random integer variable is generated and the way-point is defined by each variable in the various arrays and the index of the random integer. The process works for all elements of the way-point except altitude. If I replace the random number variable that sets the index to a specific value, then the way-point generator works correctly. In the contract log whenever the variable for the index is "non-deterministic" the way-point altitude setting is incorrect but when the variable index is "deterministic" it works correctly. The way-points are defined like this; WAYPOINT { name = @KSRTLA:dive1Name.ElementAt(@/siteSelected) targetBody = @/targetBody icon = ContractPacks/KerbinSideRemasteredTLA/Assets/Icons/dive altitude = @KSRTLA:dive1ALT.ElementAt(@/siteSelected) latitude = @KSRTLA:dive1LAT.ElementAt(@/siteSelected) longitude = @KSRTLA:dive1LON.ElementAt(@/siteSelected) parameter = step0Reached } The variable siteSelected is the index to the arrays Quote Link to comment Share on other sites More sharing options...
Warro Posted July 21, 2021 Share Posted July 21, 2021 I'm not the all_knowing_guru, so I may be wrong somewhere. I don't know even right syntax of this config. But let's talk about algorithm itself. So you don't have array of elements where lat/lon/alt will be properties of each element(not sure if that is possible in config, but I'm about algorithm itself) but instead 3 separate arrays: lat array, lon array, alt array and then in waypoint you read all three serially to complete definition, right? So I guess you should narrow the problem - find out first what is wrong - the array generating process ends up writing wrong data to array or reading process in the waypoint definition don't like your data in the array. Can you check the data in array itself? Does it look like what you expect? Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted July 21, 2021 Author Share Posted July 21, 2021 6 minutes ago, Warro said: Can you check the data in array itself? Does it look like what you expect? Yes. As I mentioned the exact same code and arrays work when the index variable is deterministic. It doen't work when the variable is non deterministic. In both cases the index variable is the exact same integer value. If I set the index value to "7" then the correct altitude values are shown. If i have the RNG process set the index and it happens to be "7" then incorrect altitude values are shown. In both cases the correct LAT and LON values are always shown. The issue is the CC Way-point Generator function is not working the same way for altitude as it does for LON and LAT. Quote Link to comment Share on other sites More sharing options...
NipperySlipples Posted July 21, 2021 Share Posted July 21, 2021 (edited) 21 hours ago, Caerfinon said: I was planning a port of this to JNSQ at some point but it looks as though you've done the lion's share of the work moving all of the KK statics. If you interested in collaborating on the work let me know. Unfortunately my game is far to custom for my KK harbors to be of much use to anyone. Its mostly a role play scenario. My kerbin is heavily edited to be more of a radioactive wasteland with kerbalism, Ive got custom paralax configs, terrain and texture edits and the sites themselves are all designed with the "kerbals live underground and its the end of a nuclear winter" thing in mind. I'm happy to share but I don't imagine it's what anyone else wants in their game. (and some of my sites require an additional mod for the statics, so extra dependency aswell ) Truth be told if it wasn't so customized, i'd of waited for you to do a better job of a jnsq version. I just knew with my terrain being different, i was going to have to move them all anyway. 4 hours ago, Caerfinon said: There is a weird Contract Configurator bug that doesn't set the altitude of way-points correctly if the value is derived form an array using non-detrministic variables Thats an odd one and I was a little curious so i had a quick read through of some of the code on contract configurators git hub, I noticed in the way point generator there is .... Quote valid &= ConfigNodeUtil.ParseValue<bool>(child, "underwater", x => wpData.underwater = x, factory, false); and Quote // Check water conditions if required if (!nearWaypoint.celestialBody.hasSolidSurface || !nearWaypoint.celestialBody.ocean || (wpData.waterAllowed && !wpData.underwater)|| (wpData.underwater && altitude < 0) || (!wpData.underwater && altitude > 0)) { break; } Quote if (wpData.randomAltitude) { if (wpData.underwater && body.ocean) { Vector3d radialVector = QuaternionD.AngleAxis(wpData.waypoint.longitude, Vector3d.down) * QuaternionD.AngleAxis(wpData.waypoint.latitude, Vector3d.forward) * Vector3d.right; double oceanFloor = body.pqsController.GetSurfaceHeight(radialVector) - body.pqsController.radius; wpData.waypoint.altitude = random.NextDouble() * (oceanFloor); } There are a bunch of other places this underwater flag comes up to. I'm not going to be in a position to test for a day or two, and I could be off the mark but it looks like there is an "underwater = true" property you can add to the waypoint definition to change the way it generates when the way point is underwater. Might be worth a quick test if it saves you having to write additional configs for each mission. Edited July 21, 2021 by NipperySlipples Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.