Ludeon Forums

RimWorld => Releases => Mods => Outdated => Topic started by: user19990313 on April 28, 2017, 06:57:29 AM

Title: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on April 28, 2017, 06:57:29 AM
RuntimeGC In-Game Cleaner
For A16


Description
How could you salvage your over-sized savegame?
How could you make your game running smoothly as it used to be?
Well,you're lucky because you're using this mod!

You can:
-Remove unnecessary World Pawns to alleviate burden of GameSystem
-Clear AvoidGrids to reduce the size of your savegame
-Remove useless members(dead or of other factions) in an animal family
-Remove filth in HomeArea
-Fix some faction relationships error(Those caused by mod conflicts are excluded!)
-Re-generate faction leaders to fix some CommTable issues.
-Reclaim Memory used by GameSystem to boost up game performance

You can view help documentation for these tools by clicking "?" buttons in the GUI.

Usage:
1.Activate this mod(after Core mod)
2.Load your savegame
3.Find a tab called "RuntimeGC" at the bottom of your screen
4.Click,and do some cleaning with the GUI

Enjoy!

PS
PS. The longer you played(year-in-game),the more effective this cleaning will be.
PS2. Sometimes errors occur like "Tried to remove xxx from RimWorld.WorldPawns,but it's not here."They're unavoidable as I should thouroughly de-register every pawn(to avoid further bugs).But,they're harmless,so just ignore them.
PS3. Post any errors or bugs on my forum page.Your effort contributes to a better mod.Thanks!
PS4. (Too expensive to buy)

Other
Compatibility:
No known mod conflict yet.
Installation:
Add this mod any time you like.
Remove this mod any time you like.
You don't have to create a new game.
License(brief):
-Can modpack makers include your mod in their modpack?
-Whatever,as long as you don't remove <author /> tag.

-Can other modders make derivative mods based on yours?
-No.I'll take it into consideration in ver A17.

Languages
English & Chinese Simplified
Update:New English language pack released!
See Reply #7 for downloadThe new language pack is integrated into Update 01.
(Thanks a lot Dr_Zhivago :P)

Author:
user19990313


Download:
[See the second floor please]

Special Thanks:
@夜幻boy凌
@FDF__515
@rsxx4488
@忆丨落叶丶飘零
@_漆原琉华
@878957003
@gagalelife
@上电视看看看
@左手平凡heart
@海流疾冰99
@Auuger灬nice
@一小毛孩子
@735143342
@周杰伦赛亚人
@ydy357071317
Thanks for your splendid work in Close-Alpha tests!
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on April 28, 2017, 07:04:14 AM
Download:
See the attachment

PS:Maybe you should log in to see the attachment.

Update 01:May 1st
-Corrected English language pack(Thanks a lot Dr_Zhivago :P)
-Bug fixed
Bug Description:The tool "Animal family tail-in" might destroy corpses of dead animals(tamed in your colony) remained on the map as well.You have to butcher or burn these corpses before using to avoid DebugLog errors.Other corpses won't be affected.Bug Fixed!

Please make sure you're downloading the latest update(Update01).

[attachment deleted by admin due to age]
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Dr_Zhivago on April 28, 2017, 07:44:20 AM
How does this compare to Zhentar's mod?

https://ludeon.com/forums/index.php?topic=30114.0
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on April 28, 2017, 08:04:35 AM
Quote from: Dr_Zhivago on April 28, 2017, 07:44:20 AM
How does this compare to Zhentar's mod?

https://ludeon.com/forums/index.php?topic=30114.0

Well this mod could clean WorldPawns too,but I managed to keep the relationship networks...And there are many other functions.
By the way,this is BUG FREE(I invited many other players to test this mod,and there're no bugs in at least 4 game-year)

Detailed introduction:
-Removes all unnecessary World Pawns to alleviate burden of GameSystem
-Keeps all faction leaders
-Keeps all pawns existing in a map
-Keeps all relatives(alive or dead) of your colonists or prisoners
-Keeps all pawns traveling in world map(caravans,transport pods...)
-All tales used by artworks will be kept,but some(a small proportion of) unused tales will be deleted

In fact,you could compare it with Zhentar's one yourself...I'm busy these days sorry :P
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Dr_Zhivago on April 28, 2017, 10:56:21 AM
I'll play with it a bit on my mod collection and see how it does, thanks.


Edit: Noticed one spelling error so far. "animal famalies"
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: skyarkhangel on April 28, 2017, 11:22:42 AM
Very interesting and at the same time sad when modders make mods TO FIX CRITICAL GAME BUGS and when developer is engaged in something else. Soon 5 month without update :(
P.S. "Thank you" for players who voted to add new content for A17.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on April 28, 2017, 11:32:10 AM
Quote from: Dr_Zhivago on April 28, 2017, 10:56:21 AM
I'll play with it a bit on my mod collection and see how it does, thanks.


Edit: Noticed one spelling error so far. "animal famalies"

Thank you for pointing out this spelling error,but where is it?
(I use notepad.exe to write the lang files,so no more spell check :()
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Dr_Zhivago on April 28, 2017, 01:04:59 PM
Here. Just made some quick grammar/spelling edits. Didn't change format of mod.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on April 30, 2017, 08:44:41 AM
Oh the thread is sinking rapidly... :-\
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: NotTerriBubble on April 30, 2017, 10:45:41 AM
I'm currently using it and am 2-3 years in and can still run on 4x speed which is ground breaking for me, normally x4 speed is gone after the first 60 days due to lag :)
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on April 30, 2017, 11:16:18 AM
Quote from: NotTerriBubble on April 30, 2017, 10:45:41 AM
I'm currently using it and am 2-3 years in and can still run on 4x speed which is ground breaking for me, normally x4 speed is gone after the first 60 days due to lag :)
Happy to hear that ;D This mod could work better if the savegame is over 5 years,which would lag even at 2x speed!
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Iwillbenicetou on April 30, 2017, 01:30:42 PM
does this work continuously? Like restart the process every day or month or tick?
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Dr_Zhivago on April 30, 2017, 02:49:50 PM
Quote from: Iwillbenicetou on April 30, 2017, 01:30:42 PM
does this work continuously? Like restart the process every day or month or tick?

I might be wrong, but I believe it only works when you physically tell the mod to do cleaning
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Iwillbenicetou on April 30, 2017, 06:34:21 PM
Quote from: Dr_Zhivago on April 30, 2017, 02:49:50 PM
Quote from: Iwillbenicetou on April 30, 2017, 01:30:42 PM
does this work continuously? Like restart the process every day or month or tick?

I might be wrong, but I believe it only works when you physically tell the mod to do cleaning
Yeah I guessed that. There should be a way for the creator to set a time for the mod to execute. And maybe make it configurable for the user.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on April 30, 2017, 09:28:09 PM
Quote from: Iwillbenicetou on April 30, 2017, 06:34:21 PM
Quote from: Dr_Zhivago on April 30, 2017, 02:49:50 PM
Quote from: Iwillbenicetou on April 30, 2017, 01:30:42 PM
does this work continuously? Like restart the process every day or month or tick?


I might be wrong, but I believe it only works when you physically tell the mod to do cleaning
Yeah I guessed that. There should be a way for the creator to set a time for the mod to execute. And maybe make it configurable for the user.
In fact this mod is designed to be a plug-then-use one.The cleaning to WorldPawns will actually damage your gaming  experience partially (the relation networks will be condensed)So I hope that you execute the cleaning only when you think it's too lag to play.Tick-based cleaning schedules might cause errors as well.By the way the cleanings cost lots of memory,so it'll lag frequently and ruin your gaming experience if it's tick-based.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: faltonico on April 30, 2017, 09:46:03 PM
I have tried everything for my colony last as much as it can (14 yrs now), your mod was the latest addition, i wish i can say yours helped reduce lag but i can't because i did so many things, but i must certainly say it helped! xD
Now my game is somewhat fluent on 1x speed but now instead of fps drop (or lag) i have it stutter, (its fluent for a couple seconds and then it stops for less than a second), i'm not sure if i can do anything about it, it is probably related to CPU choking.
I think i have way too much food ..i grew to hate manhunter packs -_-'.

Do not worry if you are not getting much feedback, sometimes not having news is good news, and it is hard to see it the mod is actually working. Keep up the good work!
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 01, 2017, 11:02:56 AM
Quote from: Dr_Zhivago on April 28, 2017, 01:04:59 PM
Here. Just made some quick grammar/spelling edits. Didn't change format of mod.
I've integrated your language pack into newly-released Update 01.
I do appreciate your work,but...
Do you know you've just messed up all the line separators?Oh my god... :'(
(Maybe you didn't save the xml with UTF-8 charset)
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Dr_Zhivago on May 01, 2017, 11:16:21 AM
Quote from: user19990313 on May 01, 2017, 11:02:56 AM
Do you know you've just messed up all the line separators?Oh my god... :'(
(Maybe you didn't save the xml with UTF-8 charset)

Ah... apologies if I muddled something.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Tgr on May 02, 2017, 02:42:16 AM
This looks lovely, but any chance you could post a slightly more comprehensive explanation of what each of these exactly does (and for those which might affect the play experience, how / how much?, other than the really obvious ones?
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Tgr on May 02, 2017, 02:44:23 AM
whoah, nevermind. this is quite well documented in-game.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: madd_mugsy on May 02, 2017, 10:30:54 AM
This is working better for me than Zhentar's WorldPawnGC.  Unfortunately that one ended up deleting my colonist + robot pawns and corrupting my save games.  I'm betting it's an issue with some mods (misc. robots and/or alien framework).  This one, however, lets you run it as needed so I never need to worry about my savegame getting corrupted -- I can just save before running it if I'm worried.  But so far, so good :)
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 03, 2017, 08:20:23 AM
Quote from: madd_mugsy on May 02, 2017, 10:30:54 AM
This is working better for me than Zhentar's WorldPawnGC.  Unfortunately that one ended up deleting my colonist + robot pawns and corrupting my save games.  I'm betting it's an issue with some mods (misc. robots and/or alien framework). 
Glad to see you're fond of it ;D I've added many filters to guarantee that no non-human colonists will be deleted.The mod passed the close alpha test with Misc. Robots ,but there're no tests with mod "Call of Cluthu"(incorrect spelling maybe)right now.Well it's most likely that my mod could handle all saves with non-vanilla races,but I still suggest that backup your saves before cleaning,if you have any mods with new races. :P
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Zhentar on May 03, 2017, 02:36:06 PM
Quote from: user19990313 on April 28, 2017, 08:04:35 AM
Detailed introduction:
-Removes all unnecessary World Pawns to alleviate burden of GameSystem
-Keeps all faction leaders
-Keeps all pawns existing in a map
-Keeps all relatives(alive or dead) of your colonists or prisoners
-Keeps all pawns traveling in world map(caravans,transport pods...)
-All tales used by artworks will be kept,but some(a small proportion of) unused tales will be deleted

In fact,you could compare it with Zhentar's one yourself...I'm busy these days sorry :P

At a high level, this is roughly the same as mine, except that mine doesn't do any pruning of tales. But based on your other comments, it sounds like yours is much more aggressive with relationship pruning than mine is, so the in game effects of yours will be more visible but with a greater performance improvement.

I'll have to take a look at your safety checks though; mine shouldn't ever delete colonists either so I'm curious what cases I might have missed.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 04, 2017, 10:34:32 AM
Quote from: Zhentar on May 03, 2017, 02:36:06 PM
I'll have to take a look at your safety checks though; mine shouldn't ever delete colonists either so I'm curious what cases I might have missed.
Firstly I want to clarify that the mod won't delete tales on purpose;A tale related to a discarded world pawn will be removed by TaleManager class automatically.You could see it as a side effect but it makes no difference to the gaming experience of average players.

In fact I came up with this idea when using some crude "saves cleaner".Those tools(separated .exe) are designed for .rws files,and they couldn't stop creating errors,and finally the saves were corrupted.
So I referred those bug reports posted by other victims and set patches for all these exceptions.

Generally speaking,you should check whether a pawn is a colonist/corpse/forcefully-kept-pawn.Additionally you should avoid disposing members of player-controlled caravans or in transport pods,PawnUtility class may come in handy.
You can also ILSpy the assembly to see details...if you could read the code "optimized" by compiler :-\

Please let me know if you copy or refer to my codes.I don't want to see someone "stealing" my codes without permission,for I really devote my heart into this mod.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Iwillbenicetou on May 04, 2017, 10:15:07 PM
Will you keep it on the forums or will you take it to the Steam Workshop?
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 05, 2017, 10:39:04 AM
Quote from: Iwillbenicetou on May 04, 2017, 10:15:07 PM
Will you keep it on the forums or will you take it to the Steam Workshop?
No, I won't publish this mod on Steam Workshop,but I'll keep on maintaining it at this forum,including an A17 version of this mod.(Surely I'll wait for a stable A17 release of the game to get started,so wait patiently  ;))
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 06, 2017, 09:30:46 AM
Aaah...I remembered someone replied with a weird request:a System.GC.Collect() button on main menu...
Seems that he deleted his reply...
Well if you are still watching my mod,I'd like to tell you I'm researching it and I'll build an exclusive version of this mod for you...but I can't guarantee when it'll be done.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 07, 2017, 09:37:35 AM
It's really uncomfortable  between A16 & A17,for I have to decide whether I should try it out right now or just wait for mods...I'm longing for the stable version of A17 and I can get to work with my mod as soon as it's released.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 12, 2017, 09:05:59 AM
Aaah!I WILL update my mod to adapt A17,but that won't happen until a stable version of the game is released!Please stop PM-ing me :(
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: bullet on May 15, 2017, 03:03:55 PM
OMG! Man, You helped to return of my interest for this game. Thanks Dude
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: skyarkhangel on May 16, 2017, 09:19:37 AM
Quote from: Zhentar on May 03, 2017, 02:36:06 PM
Quote from: user19990313 on April 28, 2017, 08:04:35 AM
Detailed introduction:
-Removes all unnecessary World Pawns to alleviate burden of GameSystem
-Keeps all faction leaders
-Keeps all pawns existing in a map
-Keeps all relatives(alive or dead) of your colonists or prisoners
-Keeps all pawns traveling in world map(caravans,transport pods...)
-All tales used by artworks will be kept,but some(a small proportion of) unused tales will be deleted

In fact,you could compare it with Zhentar's one yourself...I'm busy these days sorry :P

At a high level, this is roughly the same as mine, except that mine doesn't do any pruning of tales. But based on your other comments, it sounds like yours is much more aggressive with relationship pruning than mine is, so the in game effects of yours will be more visible but with a greater performance improvement.

I'll have to take a look at your safety checks though; mine shouldn't ever delete colonists either so I'm curious what cases I might have missed.

tested on Hardcore SK with player who previously using worldpawnGC and still have problems with lags. RuntimeGC In-Game Cleaner solve it.
A Magic mod!  :P
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 17, 2017, 08:48:09 AM
Quote from: skyarkhangel on May 16, 2017, 09:19:37 AM
tested on Hardcore SK with player who previously using worldpawnGC and still have problems with lags. RuntimeGC In-Game Cleaner solve it.
A Magic mod!  :P
Thanks ;D and I'm waiting for a stable release of A17 to update my mod,so you could enjoy RuntimeGC A17 with HardcoreSK A17 in the near future! :P
By the way,don't forget to post any bugs to make this mod better!

PS. I didn't figure out what happened until I searched in the forum...So could you just leave a message in the modders' threads to declare that their mods are referred by your mod pack?I don't mind whether you've informed me of it,but maybe some other modders do...

PS2.Are you sure you're using the latest version (Update01) in your pack?
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Dr_Zhivago on May 18, 2017, 06:17:30 PM
After running this on a 645 day old colony, I am now able to run on x4 speed smoothly again. (This is also with over 200 mods installed)

Appreciate your work!
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: skyarkhangel on May 20, 2017, 04:12:24 AM
Quote from: user19990313 on May 17, 2017, 08:48:09 AM
Quote from: skyarkhangel on May 16, 2017, 09:19:37 AM
tested on Hardcore SK with player who previously using worldpawnGC and still have problems with lags. RuntimeGC In-Game Cleaner solve it.
A Magic mod!  :P
Thanks ;D and I'm waiting for a stable release of A17 to update my mod,so you could enjoy RuntimeGC A17 with HardcoreSK A17 in the near future! :P
By the way,don't forget to post any bugs to make this mod better!

PS. I didn't figure out what happened until I searched in the forum...So could you just leave a message in the modders' threads to declare that their mods are referred by your mod pack?I don't mind whether you've informed me of it,but maybe some other modders do...

PS2.Are you sure you're using the latest version (Update01) in your pack?

Thank you, yep, already added reference to mod, with link to main mod topic.
Yep, latest 01 version, works perfect. Keep it up!
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 24, 2017, 11:55:58 AM
By the way,I'll work on another mod for A17...It would help keep your cargo when you settle in world map,instead of dropping them onto the ground.A tiny mod,but maybe it could make your RimWorld experience better...just like this mod :)
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: indeed on May 27, 2017, 01:55:41 PM
So, any chance you will release source code?
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 28, 2017, 01:26:36 AM
Quote from: indeed on May 27, 2017, 01:55:41 PM
So, any chance you will release source code?
In fact the "optimize" switch of Visual Studio didn't work very well...So you could ILSpy the assembly for (almost exactly) my source code :P

Of course,please let me know if you're going to refer to my codes...well I think there's nothing valuable here to refer to :P

PS.When will the StackXXL A17 release?
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: rudew on May 28, 2017, 10:11:49 PM
Any idea when this is gonna get updated? I always feel alot better about long term play when I have performance mods :P mostly asking if its gonna be soon or if its gonna be far away, dont need exacts if you cant give em.
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Jerryn on May 28, 2017, 11:43:40 PM
Yeah I dont mind how long it takes I just want peace of mind it'll be updated lol
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on May 29, 2017, 12:53:09 AM
Quote from: rudew on May 28, 2017, 10:11:49 PM
Any idea when this is gonna get updated? I always feel alot better about long term play when I have performance mods :P mostly asking if its gonna be soon or if its gonna be far away, dont need exacts if you cant give em.
Yeah I promise I will update this mod this July...I have to verify all the changes in my code and test the mod with a large save file,you know,it takes time to create such a save.
But don't worry,this mod is designed to be added and activated halfaway,so you could just play as you wish,and when it starts to lag,the mod is about to release ;)
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: indeed on May 31, 2017, 12:00:12 PM
Quote from: user19990313 on May 28, 2017, 01:26:36 AM
Quote from: indeed on May 27, 2017, 01:55:41 PM
So, any chance you will release source code?
In fact the "optimize" switch of Visual Studio didn't work very well...So you could ILSpy the assembly for (almost exactly) my source code :P

Of course,please let me know if you're going to refer to my codes...well I think there's nothing valuable here to refer to :P

PS.When will the StackXXL A17 release?
I updated on GitHub and Steam Workshop and somehow forget to update it here. sorry lol
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: zortan on June 02, 2017, 06:48:22 AM
post and followed hope a new version is out soon
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Jerryn on June 02, 2017, 11:17:22 AM
By July, did you mean June? I can make a huge save in a couple days lol but maybe ive no life
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Patrick on June 03, 2017, 09:19:25 PM
Alpha 17 Please :3
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: user19990313 on June 03, 2017, 10:53:32 PM
Quote from: Jerryn on June 02, 2017, 11:17:22 AM
By July, did you mean June? I can make a huge save in a couple days lol but maybe ive no life
Quote from: zortan on June 02, 2017, 06:48:22 AM
post and followed hope a new version is out soon
Quote from: Patrick on June 03, 2017, 09:19:25 PM
Alpha 17 Please :3
Well I said I'll be busy,and I promised the A17 update will be published around July.
While everything's running smoothly,@zortan complained about the unbearable lag in A17,so tynan released a new version(and it turned out to be the formal version currently)
Well I'm glad tynan has optimized his code,but on the other hand I have to verify all the changes in his code for a second time :(
So my progress is reseted now,and I'll try my best to work on the mod ASAP,just please wait for me :P
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: NeverEvil on August 02, 2017, 08:57:27 PM
Is it still getting updated?
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: Der Failer on August 03, 2017, 11:07:52 AM
A17 Thread (https://ludeon.com/forums/index.php?topic=33484.0)
Title: Re: [A16]RuntimeGC In-Game Cleaner
Post by: madox on May 17, 2021, 01:32:25 PM
Quote from: user19990313 on April 28, 2017, 07:04:14 AM
Download:
See the attachment

PS:Maybe you should log in to see the attachment.

Update 01:May 1st
-Corrected English language pack(Thanks a lot Dr_Zhivago :P)
-Bug fixed
Bug Description:The tool "Animal family tail-in" might destroy corpses of dead animals(tamed in your colony) remained on the map as well.You have to butcher or burn these corpses before using to avoid DebugLog errors.Other corpses won't be affected.Bug Fixed!

Please make sure you're downloading the latest update(Update01).

[attachment deleted by admin due to age]