Jump to content

nightingale

Members
  • Posts

    4,137
  • Joined

  • Last visited

Everything posted by nightingale

  1. @steve_v - I'll be working on it as soon as I'm able. Can you provide info for the flight scene though? I've moved all contract generation *out* of the flight scene as it's the biggest culprit for garbage. As such, I'm only interested in seeing numbers for the flight scene.
  2. Actually, I'd be more inclined to fix it so that it won't allow a contract to be accepted if the advance funds would cause the player to go negative - so please raise a GitHub issue to that effect. The reason I don't want it to click on click is that it then causes player confusion, when clicking actively changes the availability of a contract. The other option is to re-check all contracts when another one is accepted, but I think that'd be unacceptably laggy. Also, look for the ALLOW_NEGATIVE_FUNDS in settings.cfg - got that added in 1.1.x (can't remember exactly which release).
  3. @5thHorseman - Raise a GitHub issue - there shouldn't be any reason it won't work in the Space Center, so I'd call it a bug. @Merkov - Not really helpful, since DMOS doesn't use Contract Configurator, as you said. This is more a case of a bug - normally it works under all the circumstances you've described.
  4. @5thHorseman - That would be the Duration parameter. Which is separate from the Timer parameter for either historical or technical reasons (I honestly can't remember which). Which is different still from the MissionTimer parameter, which just counts up for fun & profit.
  5. @Maxsimal - no works been done for that recently. @5thHorseman - can't check right now, but using Tech(start) instead of just start might've worked.
  6. Moderate difficulty. I'd probably copy the prefabs from the archive tab and use those, so it's not *too* bad. But big enough that I wouldn't even consider it until after 1.2.
  7. Short answer: Dynamic Loading or Scripting. I'd suggest starting with the basics. Solidify your understanding of programming fundamentals before diving straight into a topic that people have written entire dissertations on. Work up from there. Also, google.
  8. This should be from before engines and tanks were split. I think it was left for backwards compatibility with logic to put stuff in the right category (only guessing at the criteria, but presence of ModuleEngines or ability to hold fuel are two likely candidates).
  9. Speaking as someone with experience of many incomplete games and mods and other projects (and a few completed/active ones to boot): Be prepared to fail. But more importantly: embrace failure. Learn from your failures. Fail fast. Fail often. Fail small and fail big. Each time you'll come out the other side better. What I mean by this is don't be afraid to throw away ideas if they turn out to be bad. Don't be afraid to rewrite stuff from the ground up once you've realized all your mistakes. Your idea is incredibly ambitious. Probably 99.999% of individuals that attempt something of that scale will never finish it. But as long as you can keep your end goal in mind and you learn things along the way it's a worthwhile effort. My personal advice - start with something smaller, but make it something that can eventually be fit into your grand design. Take one specific aspect and build a small game or tech demo out of it. For example, build out something that showcases what you have in mind for the evolution mechanics with an extremely simple UI (see: The Game of Life). Another good option is to start with modding. Again, you can do something with this theme that either helps you learn, helps you prototype different ideas/mechanics or even can be partially reused later for "the big game". Being where we are, the obvious example would be a KSP mod. Join the Kopernicus scene and make a planet out two. Dog into the internals and think about what KSP did well, and what they did poorly. Experience that would go a long way in procedural planet generation. Good luck, I expect great things!
  10. Maybe this is what you want? rewardFunds = 10000.0 / (@targetBody.IsHomeWorld() ? @targetBody.Multiplier() : 1.0) If you're looking to do this with Module Manager.... well I'm fairly certain that's not possible (or at least very difficult) because I don't believe MM has an 'append to value' operation:
  11. @5thHorseman - New stuff for next release in Part expressions: int UnlockCost() The cost to unlock a part when part entry purchase is required. List<Resource> Resources() Returns a list of all resources that this part can hold. double ResourceCapacity(Resource) The part's capacity for holding the given type of resource. @Chippy the Space Dog - What contract packs do you have installed? If I remember correctly, there's one or two that disable rescue contracts (but I forget which). In the space centre, click the Contract Configurator icon, and then check whether the RecoverAsset line is disabled or not (you can mouseover to see what disabled it, and click it to re-enable for that save).
  12. Awesome, excited to see this is back under development! I'll be the first one to put some contracts together to support this once it gets released.
  13. @jenden - There's a pending fix that I suspect will resolve your issue (will try to release it tonight). Meanwhile if you're able to test out the dev dll and let me know if that fixes your problem, it would be helpful.
  14. You can grab the dev dll and let me know if that fixes your issue. @AccidentalDisassembly, @Conventia, @gemini4 - I think these problems all stem from the same issue - if you guys don't mind taking the dev version for a test drive as well it would be appreciated.
  15. Congrats on the release! I'll try to get the update out in the next day or so. As far as the contract descriptions go, you may want to consider utilizing @part.Description() in some way (it tends to be more flavour text than useful stuff, but it's better than something generic).
  16. @Starfire70 - You can't attach files directly in the forum. Most people use dropbox or google drive. I'll take a look at your issue in the next couple of days and let you know.
  17. @AccidentalDisassembly - That would probably explain the issue the RP-0 people have been reporting. Will get a fix out ASAP.
  18. @gemini4 - Sounds like the same issue as @Conventia (which I haven't investigated yet). It's all in the wiki (somewhere). Yes, that was something else I just fixed when I was testing that sample out... now it'll do the proper human-readable name (as of dev/1.18.2). Right - I didn't want to solve every problem for you. For both, you can look at the methods available on the Part in Contract Configurator here. My suggestion would be something like this: sortKey = @advanceFunds advanceFunds = @part.Cost() * 10 Let me know if there's anything else you want in those expressions and I can add it if it's reasonable (for example, the unlock cost appeared to be missing).
  19. Not a known issue. Are you using Strategia? Can you provide a log with debug turned on (instructions here). I'll have a look at this and let you know. Most definitely: CONTRACT_TYPE { name = PartAero group = PartsUnlimitedAero sortKey = 0020000 genericTitle = Unlock the @part genericDescription = Use the @part to gain access to it for good. title = @part description = Unlock the @part synopsis = Use the @part to gain access to it for good. completedMessage = You now have access to the @part for good. prestige = Trivial declinable = false targetBody = Kerbin agent = Parts Unlimited Ltd. maxCompletions = 1 minExpiry = 0 maxExpiry = 0 advanceFunds = -0020000 rewardScience = 0 rewardReputation = 0 rewardFunds = 0 failureFunds = 0 failureReputation = 0 DATA_EXPAND { type = AvailablePart part = AllParts().Where(p => p.Category() == Aero) hidden = true } PARAMETER { name = PartValidation type = PartValidation part = @/part } BEHAVIOUR { name = ExperimentalPart type = ExperimentalPart part = @/part } BEHAVIOUR { name = UnlockPart type = UnlockPart part = @/part unlockTech = true } } That version is just for the aero stuff, but should be a simple template for you to work off of. Unfortunately, it doesn't work in 1.18.1 because it uncovered a bug in the part parser. I've fixed it for the next release, in the meantime if you want to test that out, try the dev dll here. It works for me, but I saw Texture Replacer doing stuff to it in my logs. I'd double check the sizing of the scaled logo file (I forget the exact size it's supposed to be - check the stock ones to find out). Not currently, although I agree that would be nice. How I'd hack it: Create one agency per part. Use a picture of the part for the agency logo Assign the correct agency for each part Yup, good suggestion - mind raising it on GitHub for me?
  20. Could be a bug, hard to say. If you wait about 30 seconds, does one come up then? Are there errors/exceptions in your log (if you're not sure, send the log and I'll take a look).
  21. New release! Download here. EDIT: Hotfix to a possibly save breaking issue. Contract Configurator 1.18.1 Fixed NRE on contract save (thanks CecilFF4). ontract Configurator 1.18.0 New Base and ISRU agent icons from Enceos. Added Resource.Density() method. Added partModule and partModuleType to TechResearchedRequirement. Fixed problem with requirement data for offered data not getting fixed until contract save (thanks severedsolo). Fixed sorting of contract groups (thanks pap1723). Fixed Resource parsing limitations (thanks hargn). Fixed issue with DATA nodes and child contract groups (thanks hargn). Disallow DMOS Seismic Impact Hammer at KSC in science subsystem (thanks BeafSalad). Remove short-circuit in Any/All requirement texts for players aren't given incorrect information (thanks inigma). Fixed an issue that prevented expressions from working in resource loading (thanks hargn). Cycle through new contracts to generate in a random order to prevent certain contracts from getting preference. Fixed issue where contract expiries were never getting set (thanks DarkonZ). Fixed issue with some parameters combined with the All parameter causing incorrect contract failure (thanks tomf). Fixed issue with selected contract in mission control getting unselected when a new contract is generated (thanks AccidentalDisassembly).
  22. @JakeSparkleChicken & @eddiew - Glad you guys both enjoyed the ending! Jay will return... if I ever get around to writing the planned sequel.
  23. @DarkonZ - That's a bug, it's not getting set properly. I've fixed it for the next release. The CooldownDuration can be a random value if you use the Random() expression, such as: cooldownDuration = Random(10d, 200d)
×
×
  • Create New...