Jump to content

[1.8 <= KSP <= 1.11.2] KSP Recall - 0.2.0.0 - 2021-0508


Recommended Posts

3 hours ago, Craze said:

When the game is closed, the symmetry and angle settings are permanently reset to not set (by default, "X" and "C"). Can this be fixed?

Editor Extensions Redux can't help on this? The additional editing tools worths the install by themselves, by the way.

Link to post
Share on other sites
13 hours ago, Lisias said:

Editor Extensions Redux can't help on this? The additional editing tools worths the install by themselves, by the way.

Maybe, but it's not always convenient. Hot keys, for me, are more familiar.

Link to post
Share on other sites
  • 2 weeks later...
On 1/6/2021 at 2:21 AM, Lisias said:

ANNOUNCE

KSP Recall 0.0.6.0 BETA in on the Wild, featuring:

  • Preliminary attempt to overcome the new bug on launching from KSP 1.11
  • Check the following posts for more information:
  • KSP Recall 0.0.6.0 APPARENTLY fixes this, but I don't know if I'm injecting collateral effects on the Physics Engine. PROCEED WITH CAUTION, this stunt can end up being worse than the problem!
    • Currently it's way agressive injecting the fix on everything. A smarter way to inject the fix only on the needing parts are something still to be done!

A new module, ChillingOut, was introduced for KSP 1.11, to fix that weird problem on launching crafts with some old meshes.

World Stabiliser is still needed.

KSP 1.11.1 had fixed this problem, so no planes exploding on launch due insane amounts of heat when using some older add'ons. #HURRAY

Users of KSP 1.11.1 should not install the 0.0.6.0 Beta.

However, really heavy crafts (the test I did had about 500 tons) are still exploding on launch and on unpacking the craft when the craft is over something with a collider (i.e., it's not directly on the PQS ground). I'm still scratching my head about this one, don't have a clue on how to work around it

-- -- -- POST EDIT -- -- --

Hummm.... Interesting. I think I found the magic number. At least on my rig, crafts with more than 129.5 tons blows down into the ground due the problem I described above. Crafts with less than 129.5 tons launchs fine.

Now that I have a M.O., I know (more or less) what to do. I only need to make work a new stunt of mine.

-- -- -- POST POST EDIT -- -- -- 

I was wrong. It's not related to weight. It's related to TweakScale *and* the MK1 Inline Cockpit as the root. Creating extra heavy crafts without TweakScale is not problem. Rerooting the affected craft to prevent the Mk1 Inline Cockpit from being the root (at least of the test craft) solves the problem.

This problem was moved to TweakScale's Issue Tracker as Issue #162.

-- -- -- POST POST POST EDIT -- -- -- 

I wrong on thinking I was wrong. It's not TweakScale (but I still need to do some more tests to be absolutely sure).

It's something on the upgradepipeline, that it's not upgrading propely some crafts from previous KSP versions. More details on this post on TweakScale thread.

Edited by Lisias
POST post post edit
Link to post
Share on other sites
  • 2 weeks later...

ANNOUNCE

KSP Recall 0.0.6.1 in on the Wild, featuring:

A new module, ChillingOut, was introduced for KSP 1.11, to fix that weird problem on launching crafts with some old meshes.

World Stabiliser is still needed.

As always, make Backups of your SaveGames - just in case.

Good Luck!  


This Release will be published using the following Schedule:

  • GitHub, reaching manual installers first and users of KSP-AVC. Right now.
  • CurseForge, soon™ 
  • SpaceDock (and CKAN users), soon™

-- -- POST EDIT -- -- 

I'm currently facing some problems on CurseForge, as my ticket to add support for KSP 1.11.1 was not solved yet.

The automatic response says I need to wait until next 13th, and then check if the issue was solved - otherwise I will need to open a ticked on the ticket! :P 

Edited by Lisias
post edit
Link to post
Share on other sites
  • 3 weeks later...
Posted (edited)

ANNOUNCE

KSP Recall 0.0.7.0 BETA in on the Wild, featuring:

  • A (dirty) workaround for the KSP 1.11.x faulty calculation of Funds on recovering crafts (Issue #12)

A new module, Refunding, as well a new Resource was introduced for KSP 1.11, to counter attack the miscalculation mentioned above.

When recovering the craft, the badly calculated refunds will still be there, but an additional Resource called Refunding will be present stealing giving back the losses.

109741166-49a36080-7bab-11eb-8b15-1fe074

DANGER, WILL ROBINSON, DANGER

This is a preliminary BETA version intended to be tested on the field. The kludge, I mean, the workaround worked on controlled environments, but I need to test this thing on the field in order to check both the effectiveness and safety of the stunt.

PLEASE, PRETTY PLEASE USE THIS ONLY ON DISPOSABLE SAVEGAMES.

Additionally, the solution doesn't works, YET, for every add'on on the wild - currently PartModules that changes the cost of the part on the flight scene may be missed. The next Release, 0.0.7.1, will support them but now I need to check how this thing will behave on the field first.

Add'On authors that make use of the IPartCostModifier please report your findings on the Issue #12.

I need your feedback.


This Release will be published using the following Schedule:

  • GitHub, reaching manual installers first and users of KSP-AVC. Right now.
  • CurseForge, will not be published.
  • SpaceDock (and CKAN users), will not be published.
Edited by Lisias
tyops. as usulla
Link to post
Share on other sites
Posted (edited)

ANNOUNCE

KSP Recall 0.0.7.1 BETA WAS DITCHED

I found a mishap on it and issued a new released with it fixed.

Edited by Lisias
0.0.7.1 was ditched.
Link to post
Share on other sites
Posted (edited)

ANNOUNCE

KSP Recall 0.0.7.2 BETA is on the Wild, featuring:

  • Further ehances the workaround for the KSP 1.11.x faulty calculation of Funds on recovering crafts (Issue #12), (hopefully) solving the problem on a way that would work for every Add'On.

A new module, Refunding, as well a new Resource was introduced for KSP 1.11, to counter attack the miscalculation mentioned above.

When recovering the craft, the badly calculated refunds will still be there, but an additional Resource called Refunding will be present stealing giving back the losses.

109741166-49a36080-7bab-11eb-8b15-1fe074

 Now works too with PayToPlay!

109873668-d5b99480-7c4c-11eb-9454-5a4784

And without double charges happening due a mishap while launching the craft! :)

109903598-bafe1480-7c7a-11eb-81c0-cfc870

DANGER, WILL ROBINSON, DANGER

This is a preliminary BETA version intended to be tested on the field. The kludge, I mean, the workaround worked on controlled environments, but I need to test this thing on the field in order to check both the effectiveness and safety of the stunt.

PLEASE, PRETTY PLEASE USE THIS ONLY ON DISPOSABLE SAVEGAMES.

Add'On authors that make use of the IPartCostModifier please report your findings on the Issue #12.

I need your feedback.


This Release will be published using the following Schedule:

  • GitHub, reaching manual installers first and users of KSP-AVC. Right now.
  • CurseForge, will not be published.
  • SpaceDock (and CKAN users), will not be published.
Edited by Lisias
tyops. Surprised
Link to post
Share on other sites
Posted (edited)

ANNOUNCE

KSP Recall 0.0.7.3 KSP-Recall 0.0.7.5 is on the Wild, featuring:

  • A (dirty) workaround for the KSP 1.11.x faulty calculation of Funds on recovering crafts (Issue #12)
  • Fixes a deployment mishap for CurseForge

A new module, Refunding, as well a new Resource was introduced for KSP 1.11, to counter attack the miscalculation mentioned above.

When recovering the craft, the badly calculated refunds will still be there, but an additional Resource called Refunding will be present stealing giving back the losses.

109741166-49a36080-7bab-11eb-8b15-1fe074

Users of EVERY add'on that implementsIPastCostModifier and are running on KSP 1.11.x NEED to install KSP-Recall - or your Career will be seriously hindered.

Affected (known) add'ons are:


This Release will be published using the following Schedule:

  • GitHub, reaching manual installers and users of KSP-AVC first. Right now.
  • CurseForge. Right now.
  • SpaceDock (and CKAN users). Right now.

The reasoning is to gradually distribute the Release to easily monitor the deployment and cope with eventual mishaps.

-- -- POST EDIT ---- 

A lame mistake was detected and fixed. KSP-Recall 0.0.7.5 was published.

Edited by Lisias
All distribution channels updated
Link to post
Share on other sites
  • 2 weeks later...
On 3/5/2021 at 9:16 AM, Lisias said:

Users of EVERY add'on that implementsIPastCostModifier and are running on KSP 1.11.x NEED to install KSP-Recall - or your Career will be seriously hindered.

I didn't even realize that this was a 1.11.x bug. I thought it was an issue with mod-added fuel tanks. I'd just been pulling out a calculator and cheating the missing funds back into my account by taking the recovery value and subtracting it from cost of the ship, minus the cost of fuel, and then figuring out where my money should be if I summed the remainder. I've been launching some monster interstellar SSTO warp-ships that cost like 15 to 20 million apiece, but only recovering 7.8 million or so, even though I hardly used any fuel. This is a lifesaver! Thanks!

Link to post
Share on other sites

NOTAM

KSP-Recall is still needed on KSP 1.11.2 , and it appears to be working fine.

Happy Refundings!  :)

Link to post
Share on other sites
On 3/5/2021 at 6:16 PM, Lisias said:

Users of EVERY add'on that implementsIPastCostModifier and are running on KSP 1.11.x NEED to install KSP-Recall - or your Career will be seriously hindered.

As if didn't already have more than enough reason to stay with 1.10.1 :( 

Thanks @Lisias for your efforts, although I'll probably never have to use your workaround.

Link to post
Share on other sites
7 hours ago, VoidSquid said:

As if didn't already have more than enough reason to stay with 1.10.1 :( 

I'm still playing on 1.7.3 - never did anything meaningful on 1.8.0 and newer. Just don't worth the trouble.

What's heartbreaking - because there're pretty good things on the newer KSPs - but by every good thing implemented, there're something else that broke (sometimes pretty important as this last one), and some of that things that broke I just can't fix without breaking Forum Rules (See 8. Legal boundaries).

It's a catch 22 situation, sooner or later some people will be coerced to stop publishing add'ons here on Forum.

Link to post
Share on other sites
Posted (edited)
2 hours ago, Beetlecat said:

Is there an obvious way of obscuring the "refunding" resource shown on craft/parts in flight?

There's a thingy somewhere setting the Resource as hidden or something, but RL pressures prevented me to spend more time researching the matter and I launched Recall with I had on hands.

Going back to this is already scheduled for my next KSP modding time window - it should be something extremely  simple, by the way.

Edited by Lisias
Tyop!
Link to post
Share on other sites
Posted (edited)
24 minutes ago, Gotmachine said:

This is a really ugly hack. See a proposition for a better solution here : https://github.com/net-lisias-ksp/KSP-Recall/issues/12#issuecomment-803686490

Of course it's a ugly hack. I have no access to KSP's code, I can't fix it properly. :) 

You proposition, if right, implies inner knowledge of KSP internals - something I'm not allowed to have due Forum Rules (See Legal Boundaries).

I have no (forum compliant) means to know what the error on the code really is, so I choose to counter act the misbehaviour this way. 

Given the time constraints I had (and still have), this ugly hack it's the best a non Dev Team member can cook:

  • It solves the problem
  • Can be audited by 3rd parties
    • As I don't have knowledge about what really is going on inside KSP's guts, I can't claim this will solve every problem, so doing this way will help people to find any missing use case
    • And anyone can double check it, not only developers
  • It don't get on the way of how KSP is doing things know, as I'm (ab)using a standard mechanism
  • It allows me to use reflection only on an artefact I have control, instead of risking changing someone else's code

Of course I have no special love for this stunt, something better (and Forum Rules compliant) is shown to me, I will throw this stunt on the bin can on the spot. But until there, I think it's safer (besides uglier) doing this way,

Edited by Lisias
Hit "Save" too soon.
Link to post
Share on other sites
3 hours ago, Hohmannson said:

adding isVisible  = false in resource definition(after IsTweakable) should be the thing. Will run the game soon and check how it looks

Yeah, it did the trick, thank you! :)

I knew it would be something pretty simple but I ran out of time for playing (not to mention modding) the whole week, so I didn't even tried to look for a solution.

For everybody (justifiably) annoyed by the Refunding resource on the UI, this will workaround the problem until I update Recall tomorrow night:

@RESOURCE[RefundingForKSP111x]:AFTER[KSPRECALL-REFUNDING]
{
	%isVisible = false
}

This patch will "fix" your rig in a safe way. Save it somewhere on your GameData where you can remember ir later (I suggest GameData/__LOCAL/KSP-Recall/RefundingFix.cfg) and you are done.

The nice part of it is that the Refunding resource is still shown on the Recovering Dialog Box, so it's still auditable! :)

Link to post
Share on other sites
35 minutes ago, Lisias said:

this ugly hack it's the best a non Dev Team member can cook

This is quite questionable, as are you other points. I understand perfectly that you already have a working solution and that you don't have the time to revisit it. Still :

  • You are spamming a partmodule on every part in the game for (I assume) getting modules costs and converting that into your "recovery" resource. Module costs are already saved in protoPartSnapshot.moduleCosts, you don't need to do that.
  • You are spamming a resource on every part in the game for refunding. You only need to do a Funding.Instance.AddFunds() from the the proper gameevent. Adding a custom widget to the recovery dialog is also not that hard.
  • If you want to use the resource trick instead (which can be justified if you don't want to dig into how to add a custom widget to the recovery UI), you can simply add it to the root part from GameEvents. OnVesselRecovered() instead of having it on every part.

These solutions don't involve any reflection use (which, BTW, is forbidden by the rules you are talking about), would be much cleaner and don't involve spamming resources and modules on all parts, which has a small but still present performance impact.

Link to post
Share on other sites

@Lisias Recall 0.0.7.5 on KSP 1.11.2 is causing the small stackable cargo parts to become unstackable. 

Steps:

  1. In VAB build something with cargo storage.
  2. Select Cargo tab at top left 
  3. pick up stackable part from parts menu, example EVA science kit
  4. Alt-F12 console entry appears: event on_partPicked not assigned to state st_place
  5. place part in the cargo space. Normal operation so far
  6. pick up a second identical part and place it on top of the first. It does not drop the part - it is still on the cursor
  7. Then place the second part in a different cargo space - that does work. Note both have a slider and quantity "1"
  8. Then pick up either part from cargo and place it in a different cargo space. Note the "1" and slider have ben erased from the part icon. Also has console entry: [ModuleCargoPart]: setting stackableQuantity to 1 as evaScienceKit contains resources

In the KER Resources HUD in the VAB, it indeed shows resource: RefundingForKSP111x:  0.0

I found this on my main KSP install with 30 mods but was able to eliminate it by removing Recall and made it come back by installing it again. The only part mod I have is TweakScale. Let me know if you want full logs. 

Link to post
Share on other sites
Posted (edited)
8 hours ago, Gotmachine said:

This is quite questionable, as are you other points. I understand perfectly that you already have a working solution and that you don't have the time to revisit it. Still :

Yep, every ugly hack is questionable - they would not be ugly hacks if they weren't. But still:

8 hours ago, Gotmachine said:
  • You are spamming a partmodule on every part in the game for (I assume) getting modules costs and converting that into your "recovery" resource. Module costs are already saved in protoPartSnapshot.moduleCosts, you don't need to do that.

But they will not work properly, AFAIK, for modules that change things at runtime, as Pay for Play. I need a simple and easily understandable solution that could be safely applied everywhere without relying on KSP, as I don't know where exactly the root problem is.

8 hours ago, Gotmachine said:
  • You are spamming a resource on every part in the game for refunding. You only need to do a Funding.Instance.AddFunds() from the the proper gameevent. Adding a custom widget to the recovery dialog is also not that hard.

Because, potentially, every part have custom modules that calculate the costs differently. Doing this way the Refunding costs will be echoed on the savefile, and where it can be audited and fixed if needed.

Remember, I DON'T KNOW what's happening inside KSP as I didn't reverse engineered it as requested by Forum Rules. So an external and minimally intrusive (from the code point of view) solution is preferable. The Resource spamming is exactly the collateral effect I need to keep the thing auditable.

8 hours ago, Gotmachine said:
  • If you want to use the resource trick instead (which can be justified if you don't want to dig into how to add a custom widget to the recovery UI), you can simply add it to the root part from GameEvents. OnVesselRecovered() instead of having it on every part.

But by them an eventual mishap on the calculation will be utterly harder to detect, not to mention that I would have to shove the Resource programatically instead of using a Patch.

Keep in mind that the code only acts on Parts where the Refunding stunt is injected, so any conflict would be easily solved by preventing the Refunding resource to be injected where we know it will cause problems.

I'm not the only modder around here. I need to cope with the fact that other people are modding things around here, and sooner or later this solution may stomp on someone's toes.

-- -- POST EDIT -- -- 

Being not an native anglophone, sometimes I may miss the tone - so I thought it would be a good idea to clarify:

I'm not telling you are wrong - you are not.

I'm telling you I'm not wrong neither - at least, until further information about the nature of the root cause is available with the insurance it's Forum Rules compliant.

Edited by Lisias
Yep. Grammars again. #facePalm
Link to post
Share on other sites
Posted (edited)
8 hours ago, Krazy1 said:

@Lisias Recall 0.0.7.5 on KSP 1.11.2 is causing the small stackable cargo parts to become unstackable. 

In the KER Resources HUD in the VAB, it indeed shows resource: RefundingForKSP111x:  0.0

I found this on my main KSP install with 30 mods but was able to eliminate it by removing Recall and made it come back by installing it again. The only part mod I have is TweakScale. Let me know if you want full logs. 

Have you KIS installed? I completely forgot about it, I need to patch it to accept parts with Refunding as stackable.

In a way or another, I reproduced the problem here using SEQ-9 and EVA Experiment Kits. I will get back ASAP with a patch to fix it while I don't update Recall.

(Q.E.D, @Gotmachine, I can fix things on the field by using patches and by preventing locking things on the Module, as you suggested!)

Edited by Lisias
Hate grammars! Don't you?
Link to post
Share on other sites
13 minutes ago, Krazy1 said:

No. Never tried it.

Well, in a way or another I got this fixed. Apply this patch somewhere on the GameData (I suggest GameData/__LOCAL/KSP-Recall/StackableFix.cfg) :

@PART[*]:HAS[@MODULE[ModuleCargoPart]]:AFTER[KSPRECALL-REFUNDING]
{
	-RESOURCE[RefundingForKSP111x],* { }
}

@KISConfig:AFTER[KIS]
{
	@StackableModule
	{
		moduleName = Attached
		moduleName = ChillingOut
		moduleName = Driftless
		moduleName = RefundingForKSP111x
		moduleName = Resourceful
	}
}

It will fix your issue with Stock Stackable parts, as well (hopefully, I will test it later) on KIS too. 

Link to post
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...