nightingale Posted September 8, 2020 Author Share Posted September 8, 2020 New release, should be working again in KSP 1.8. Contract Configurator 1.30.2 Backport localization tags missing from KSP 1.8 into Contract Configurator (thanks MatjaBrown, TomTheHand, IonTracks & Lignite). Quote Link to comment Share on other sites More sharing options...
Lignite Posted September 10, 2020 Share Posted September 10, 2020 (edited) @nightingale - Sorry I missed your reply! I got it working again by going back to the last stable 1.8 version (1.28). But glad to see there's an update! Sorry, I'm a bit new still to this; where would I find the log that you would like to see? Now that I have my saved career working, should everything still be ok when I update the mod? Edited September 10, 2020 by Lignite Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 10, 2020 Author Share Posted September 10, 2020 39 minutes ago, Lignite said: @nightingale - Sorry I missed your reply! I got it working again by going back to the last stable 1.8 version (1.28). But glad to see there's an update! Sorry, I'm a bit new still to this; where would I find the log that you would like to see? No worries. No log needed anymore, but next time you can get it the KSP.log file from your KSP directory (if you're on Windows/Steam it's C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP.log by default). 39 minutes ago, Lignite said: Now that I have my saved career working, should everything still be ok when I update the mod? Yup, everything should be fine now. Quote Link to comment Share on other sites More sharing options...
NermNermNerm Posted September 14, 2020 Share Posted September 14, 2020 I've been working on adding a contract to Progressive Colonization System. The first one I want to make involves rescuing a kerbal from orbit of a random moon of Jool and bringing it to a moon of Jool that as an evolved colony. I've made some progress towards figuring out ContractConfigurator, but I'm stuck on a couple points. The big two are: I can't seem to figure out how to reference the kerbal that gets spawned by SpawnVessel I can't seem to figure out how to get a random ORBIT out of SpawnVessel If anybody wants to point me in the right direction, maybe it'd make more sense to comment on this pull request instead of putting it here so you can see exactly what stupid I'm perpetrating: https://github.com/SteveBenz/ProgressiveColonizationSystem/pull/7/files Thanks in advance! Quote Link to comment Share on other sites More sharing options...
TranceaddicT Posted September 14, 2020 Share Posted September 14, 2020 1 hour ago, NermNermNerm said: I can't seem to figure out how to reference the kerbal that gets spawned by SpawnVessel https://github.com/jrossignol/ContractConfigurator/wiki/SpawnKerbal-Behaviour 1 hour ago, NermNermNerm said: 2. I can't seem to figure out how to get a random ORBIT out of SpawnVessel https://github.com/jrossignol/ContractConfigurator/wiki/SpawnVessel-Behaviour Quote Link to comment Share on other sites More sharing options...
gamerscircle Posted September 14, 2020 Share Posted September 14, 2020 Hi there! Thank you for the update, I ran into a slight issue and was curious if this is a known issue, I can supply a .log file, but I thought I would post a screen shot first. Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 14, 2020 Author Share Posted September 14, 2020 7 hours ago, NermNermNerm said: I've been working on adding a contract to Progressive Colonization System. The first one I want to make involves rescuing a kerbal from orbit of a random moon of Jool and bringing it to a moon of Jool that as an evolved colony. I've made some progress towards figuring out ContractConfigurator, but I'm stuck on a couple points. The big two are: I can't seem to figure out how to reference the kerbal that gets spawned by SpawnVessel Untested, but looking at the code I think you would want to just reference it with a Kerbal expression. So something like this: DATA { type = Kerbal myKerbal = Skeebop Kerman } BEHAVIOUR { type = SpawnVessel VESSEL { name = A vessel CREW { name = Skeebop Kerman } } } Using the above you could then just reference @/myKerbal whenever a Kerbal is allowed. You could also shorthand this with just Kerbal(Skeebop Kerman). I *think* it should work. 7 hours ago, NermNermNerm said: I can't seem to figure out how to get a random ORBIT out of SpawnVessel Looks like it's not possible. Create a feature request on GitHub with exactly what you want and I'll give some thought of how to do it (I'm thinking either new Orbit functions to generate orbits, OR just having it so you can actually get the Orbit out from OrbitGenerator. The OrbitGenerator is responsible for other stuff though (like drawing the orbits), so it may be a little heavy for what we want here. 2 hours ago, gamerscircle said: Hi there! Thank you for the update, I ran into a slight issue and was curious if this is a known issue, I can supply a .log file, but I thought I would post a screen shot first. I have the same thing in mine. I'll take a look. Quote Link to comment Share on other sites More sharing options...
NermNermNerm Posted September 15, 2020 Share Posted September 15, 2020 15 hours ago, nightingale said: Untested, but looking at the code I think you would want to just reference it with a Kerbal expression. So something like this: DATA { type = Kerbal myKerbal = Skeebop Kerman } BEHAVIOUR { type = SpawnVessel VESSEL { name = A vessel CREW { name = Skeebop Kerman } } } Using the above you could then just reference @/myKerbal whenever a Kerbal is allowed. You could also shorthand this with just Kerbal(Skeebop Kerman). I *think* it should work. i think it would too - but the trouble is that I need to generate a new kerbal; we can't have a whole lotta Skeebop's running around the station. Life would get confusing. 15 hours ago, nightingale said: Looks like it's not possible. Create a feature request on GitHub with exactly what you want and I'll give some thought of how to do it (I'm thinking either new Orbit functions to generate orbits, OR just having it so you can actually get the Orbit out from OrbitGenerator. The OrbitGenerator is responsible for other stuff though (like drawing the orbits), so it may be a little heavy for what we want here. Yeah I thought you'd say that based on my reading of the code. A random orbit would be pretty much required e.g. if multiple contracts pop up, they'd all stack on top of each other... hm. or would they? Perhaps they'd be like the Kerbals that spawn in LKO in stock, where they all spawn at a precise 72km equitorial orbit, just staggered by time (probably not so much by-design as by the workings of the contracts engine). That wouldn't be so bad. Only hassle being that I'd have to come up with a whole bunch of contracts because an orbit for Jool wouldn't work well at Bop... Still, not so bad as a temporary measure. One thing that I'm pretty sure would work would be for kerbals that need to be rescued from krash-sites on the ground. You could bind lat/long to a variable that's generated from a random number. But... I have a feeling that there's no code to place the kerbal at the surface at that position. (Might it spawn them at sea level, rather than ground level if height isn't supplied or supplied incorrectly?) Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 15, 2020 Author Share Posted September 15, 2020 29 minutes ago, NermNermNerm said: i think it would too - but the trouble is that I need to generate a new kerbal; we can't have a whole lotta Skeebop's running around the station. Life would get confusing. The example was meant to be simple - you could instead do this: DATA { type = Kerbal myKerbal = NewKerbal() } 29 minutes ago, NermNermNerm said: Yeah I thought you'd say that based on my reading of the code. A random orbit would be pretty much required e.g. if multiple contracts pop up, they'd all stack on top of each other... hm. or would they? Perhaps they'd be like the Kerbals that spawn in LKO in stock, where they all spawn at a precise 72km equitorial orbit, just staggered by time (probably not so much by-design as by the workings of the contracts engine). That wouldn't be so bad. Only hassle being that I'd have to come up with a whole bunch of contracts because an orbit for Jool wouldn't work well at Bop... Still, not so bad as a temporary measure. Well, without a code change, the orbit can have some randomness, but it's not easy to control as with the orbit generator: BEHAVIOUR { type = OrbitGenerator // Use this to generate an orbit with specific parameters FIXED_ORBIT { targetBody = Kerbin // Actual orbit details. Note that REF represents the reference // body - but will be overriden by the targetBody. ORBIT { // Semi-major axis SMA = Random(100000, 1000000) // Eccentricity, keep less than 1 for an non-escaping orbit ECC = Random(0, 0.5) // Inclination INC = Random(-45, 45) // Longitude of Periapsis LPE = Random(0, 360) // Longitude of Ascending Node LAN = Random(0, 360) // You can pretty much ignore these for a random orbit - they just move the ship along the orbit. // They are important when you want a ship at an exact position at an exact time. MNA = 1.55872660382504 EPH = 31.3999999999994 // Always ignored by Contract Configurator REF = 1 } } } If you want anything more fancy, it would be a code change similar to what I suggested above (SpawnKerbal and WaypointGenerator are already hooked into the expression system, so it wouldn't be much of a stretch to do it for OrbitGenerator). 29 minutes ago, NermNermNerm said: One thing that I'm pretty sure would work would be for kerbals that need to be rescued from krash-sites on the ground. You could bind lat/long to a variable that's generated from a random number. But... I have a feeling that there's no code to place the kerbal at the surface at that position. (Might it spawn them at sea level, rather than ground level if height isn't supplied or supplied incorrectly?) SpawnKerbal supports this. If you specify an altitude, it's above sea level. If you leave out the altitude attribute, they are spawned on the ground. Quote Link to comment Share on other sites More sharing options...
NermNermNerm Posted September 17, 2020 Share Posted September 17, 2020 Thanks @nightingale - I think I have all the pieces put together. I hope to have some time to play around with it this weekend. As I read it - it allows the possibility of building an actual craft rather than just a boring old mk1-capsule for the kerbal to be found in... I'm thinking that my space-adventuring would-be-colonists might just end up needing to be collected from some interesting spacecraft. That would give contract fulfillment a more interesting vibe. Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 17, 2020 Author Share Posted September 17, 2020 29 minutes ago, NermNermNerm said: Thanks @nightingale - I think I have all the pieces put together. I hope to have some time to play around with it this weekend. As I read it - it allows the possibility of building an actual craft rather than just a boring old mk1-capsule for the kerbal to be found in... I'm thinking that my space-adventuring would-be-colonists might just end up needing to be collected from some interesting spacecraft. That would give contract fulfillment a more interesting vibe. Yup, that was the idea, but you definitely have to be careful when building the craft (the wiki page for SpawnVessel has examples of things to watch out for). Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 20, 2020 Author Share Posted September 20, 2020 New release, changelog below. But first, a couple items to discuss. There is now support for localization, but so far I only have @tinygrox's Chinese localization. If anyone wants to put in the effort for localization in other languages, please let me know. There is also better support for contract pack localization. I'll make updates to any of my contract packs that people want to localize, but only if Contract Configurator already supports the language, and only if someone says they are interested (because there's a non-trivial amount of work of re-organizing the contract pack for localization. I re-enabled the Reload Contracts button. I honestly can't remember what was broken about it now (it was a specific scenario). I think the safest is to do re-loads in the main menu, but otherwise let me know if you run into any problems with that functionality. Contract Configurator 1.30.3 Deployed Science from Breaking Ground no longer generates tons of message spam. Instead, the messages (including screen messages) are intercepted and combined into a single more useful message. Re-enable the reload contracts button (may or may not work). Fixed issue where invertRequirement was no longer allowed for Any (and All) REQUIREMENT nodes (thanks Morphisor). Made Asteroid and Comet science into Sun-only science to prevent them from showing up in weird (but valid according to the game) scenarios. Prevents contracts for things like "comet sample while landed on Kerbin" (thanks Lathari). Cleaned up some duplicated name in the contract type selection settings window (thanks gamerscircle). Added Experiment.ID(). Removed a workaround for a stock bug fixed in 1.4.3 (#18267). Quote Link to comment Share on other sites More sharing options...
VoidSquid Posted September 21, 2020 Share Posted September 21, 2020 Thank you for the update, @nightingale, I was already wondering about some weird new contracts about surface based comet science experiments on Minmus Quote Link to comment Share on other sites More sharing options...
VoidSquid Posted September 21, 2020 Share Posted September 21, 2020 Hey there @nightingale, Seriously: what you did and do for the KSP community, namely CC - I doubt I'd still be here, still playing KSP without that. So please accept my heartfelt Thanks (even if it sounds odd to write such flat and direct words). Quote Link to comment Share on other sites More sharing options...
boribori Posted September 21, 2020 Share Posted September 21, 2020 18 hours ago, nightingale said: New release, changelog below. But first, a couple items to discuss. There is now support for localization, but so far I only have @tinygrox's Chinese localization. If anyone wants to put in the effort for localization in other languages, please let me know. There is also better support for contract pack localization. I'll make updates to any of my contract packs that people want to localize, but only if Contract Configurator already supports the language, and only if someone says they are interested (because there's a non-trivial amount of work of re-organizing the contract pack for localization. I re-enabled the Reload Contracts button. I honestly can't remember what was broken about it now (it was a specific scenario). I think the safest is to do re-loads in the main menu, but otherwise let me know if you run into any problems with that functionality. Contract Configurator 1.30.3 Deployed Science from Breaking Ground no longer generates tons of message spam. Instead, the messages (including screen messages) are intercepted and combined into a single more useful message. Re-enable the reload contracts button (may or may not work). Fixed issue where invertRequirement was no longer allowed for Any (and All) REQUIREMENT nodes (thanks Morphisor). Made Asteroid and Comet science into Sun-only science to prevent them from showing up in weird (but valid according to the game) scenarios. Prevents contracts for things like "comet sample while landed on Kerbin" (thanks Lathari). Cleaned up some duplicated name in the contract type selection settings window (thanks gamerscircle). Added Experiment.ID(). Removed a workaround for a stock bug fixed in 1.4.3 (#18267). After the update to 1.30.3 I get this error: KeyNotFoundException: The given key was not present in the dictionary. at System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (TKey key) [0x0001e] in <ad04dee02e7e4a85a1299c7ee81c79f6>:0 at KSP.Localization.Localizer.GetStringByTag (System.String tag) [0x00005] in <948fceea813942b7ac6b6d1b2dc2d0a3>:0 at ContractConfigurator.ScienceReporter..cctor () [0x00036] in <bc64947a45c449da9ea110e47628c100>:0 Rethrow as TypeInitializationException: The type initializer for 'ContractConfigurator.ScienceReporter' threw an exception. Then nothing works anymore and I have to kill KSP from the commandline (I'm on linux). Full log https://drive.google.com/file/d/1PSPx5bFuXhnhSk56Iemq4mqlUdcgdzd6/view?usp=sharing I have over 100 mods installed and more stability issues, but at least this one I could trace back. It doesn't happen happen when I revert to 1.30.2. Quote Link to comment Share on other sites More sharing options...
Morphisor Posted September 21, 2020 Share Posted September 21, 2020 While I did not get the error reported above and found no difference in the loading sequence so far, of course I could not resist trying out the reload contracts button. As recommended, I clicked it from the main menu. The game proceeded to hang for a while, after which the graphics started glitching and I could see in the debug log that all game models were being loaded in anew. It did not end well: The contracts menu never recovered and the graphics/models never seemed to load back in properly. Quote Link to comment Share on other sites More sharing options...
KPD87 Posted September 21, 2020 Share Posted September 21, 2020 I had issue with the latest update of this mod. I'm playing 1.9.1 with JNSQ and bunch of other mods; Whenver I went to the Mission Control and tried to exit from it the MC stayed open and had to either force quit or reload the game, it didn't even allow me to quit to main menu, just load saves and alt+f4. Unfortunately I did not take screenshots from it before jumping back to older version. I can try to reproduce the issue with either same mod loadout or with stock world of 1.9.1 if you need any info about the issue- =D Otherwise, thanks for keeping CC updated! Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 21, 2020 Author Share Posted September 21, 2020 @boribori - Oops, looks like it's an issue when Breaking Ground isn't installed. I may have to testing with & without expansions. I'll fix it shortly. @Morphisor - Hmmm... okay, don't do that then. Curious, if you do a Module Manager reload (through the Alt-F11 menu), does it do the same thing? @KPD87 - I'm guessing you hit the same issue as boribori, for which I'll be release a fix ASAP. If it's still not working after that, please send a KSP.log file. Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 21, 2020 Author Share Posted September 21, 2020 New release! Contract Configurator 1.30.4 Fixed major issue when Breaking Ground wasn't installed (thanks boribori). Quote Link to comment Share on other sites More sharing options...
KPD87 Posted September 21, 2020 Share Posted September 21, 2020 22 minutes ago, nightingale said: New release! Contract Configurator 1.30.4 Fixed major issue when Breaking Ground wasn't installed (thanks boribori). Works fine now, thanks for the fast fix! Quote Link to comment Share on other sites More sharing options...
Morphisor Posted September 22, 2020 Share Posted September 22, 2020 8 hours ago, nightingale said: @Morphisor - Hmmm... okay, don't do that then. Curious, if you do a Module Manager reload (through the Alt-F11 menu), does it do the same thing? That pretty much has the same result, indeed. Though I dare say it may actually be even worse - it threw loads of nullref exceptions on basically everything that was reloaded, except the part models. It also takes way longer than the original game startup. Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 22, 2020 Author Share Posted September 22, 2020 11 minutes ago, Morphisor said: That pretty much has the same result, indeed. Though I dare say it may actually be even worse - it threw loads of nullref exceptions on basically everything that was reloaded, except the part models. It also takes way longer than the original game startup. Yaaaaaaah.... okay, that's why it was disabled. It's funny because in my one (very quick) test it seemed okay. I'll still try to play around with it, but it may just be a lost cause. Quote Link to comment Share on other sites More sharing options...
boribori Posted September 22, 2020 Share Posted September 22, 2020 14 hours ago, nightingale said: New release! Contract Configurator 1.30.4 Fixed major issue when Breaking Ground wasn't installed (thanks boribori). I still see a KeyNotFoundException in the log, but no more crashes, so I guess it's fine. Thanks! Player.log: https://drive.google.com/file/d/1q9W-ocaPuA2Ek87ZoNyEAuo8_2ZA35_o/view?usp=sharing (The log shows ContractConfigurator v1.0.0.0 / v1.30.3, but the version file shows 1.30.4) Quote Link to comment Share on other sites More sharing options...
nightingale Posted September 22, 2020 Author Share Posted September 22, 2020 1 hour ago, boribori said: I still see a KeyNotFoundException in the log, but no more crashes, so I guess it's fine. Thanks! Player.log: https://drive.google.com/file/d/1q9W-ocaPuA2Ek87ZoNyEAuo8_2ZA35_o/view?usp=sharing (The log shows ContractConfigurator v1.0.0.0 / v1.30.3, but the version file shows 1.30.4) I fixed the downloaded (the version that was up just had the version number wrong in one part, nothing else). The KeyNotFoundException where it's happening now shouldn't have any adverse effect (but I've still cleaned it up for next release). Quote Link to comment Share on other sites More sharing options...
VoidSquid Posted September 25, 2020 Share Posted September 25, 2020 (edited) Hey @nightingale, Since a couple of days I have an quite interesting issue between CC and the new ScanSat (20.4 atm), though this also happened with the two or three previous CC versions. What happens is, when I accept a new contract (seems independent of the contract pack), fly the rocket, switch to map view, and active a ScanSat overlay (terrain, or biome, makes no difference), the terrain info under the mouse pointer flickers alternating with the initial contract duration time (e.g. recover a satellite after 60 days, the ScanSat terrain info alternates with a small box displaying "60 days") several times a second. Finishing the contract, all all is back to normal. Console doesn't give any output about this, and before I bother you with any logs: any at least faint idea what's going, or have you heard / seen this ever before? Edited September 25, 2020 by VoidSquid 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.