Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - scuba156

#1
Releases / Re: [1.0] Without Steam v1.1
October 07, 2019, 10:16:34 AM
Updated to version 1.1

  • Added null check
#2
Releases / [1.0] Without Steam v1.1
October 02, 2019, 12:49:06 AM

Description
Removes the warning that Steam is offline that pops up when launching RimWorld without Steam running. It was created as it gets tedious closing the window every time when testing mods

Downloads
#3
Quote from: raydarken on November 05, 2018, 01:21:41 PM
I would love to see this updated and continued for 1.0!
While I have made no plans for it, I have been thinking about it.
#4
Quote from: Nightinggale on January 23, 2018, 04:20:11 AM
Quote from: scuba156 on January 22, 2018, 11:40:01 PMYou may be interested in this. It allows easier updates to .dll mods that get bundled with other mods. It stores which version of the assembly is the latest into a unity GameObject and only executes on that assembly. It will only need a few small changes to work for you.
Thanks, but after close examination of the source code as well as testing, I ended up not believing it to work for me. Say we have a DLL where version 1.1 and 1.2 are present in Assemblies and loaded in that order. Your approach is to call both in [StaticConstructorOnStartup]. First 1.1 detects that it's outdated and does nothing, then 1.2 is called and it executes. ModCheck has to work on PatchOperations, which are executed prior to [StaticConstructorOnStartup] calls. This mean all I have available is method calls from vanilla. It will start by calling 1.1 and even if I decide not to do anything, it will not call 1.2 afterwards. ModCheck has caused a number of issues from being loaded this early because not all features are available until some time after patching.
If I understand correctly, then you should be able to load the latest assembly into memory and invoke a class in there. Activator.CreateInstance(string,string) should help, there is also Activator.CreateInstance(Type). It has examples there that should help, also check the remarks section.

You could then store a bool on whether you have executed and use reflection to read the variable. HugsLibChecker has an example here.
#5
Quote from: Kiame on December 16, 2017, 02:44:08 PM
A heads up to other developers. I was having issues on Mac and Linux (Ubuntu specifically) systems where RW would crashing when my mods were enabled. I tracked the problem down to the simple act of patching Window.PreClose:

[HarmonyPatch(typeof(Window), "PreClose")]

Just patching it will causes the game to crash. More info here: https://ludeon.com/forums/index.php?topic=37269.msg385072#msg385072
The same happens with Window.ExtraOnGUI(). Since the code I was executing wasn't all that important, my temporary solution was to manually patch it only on windows platforms, leaving unix unpatched. It works, but it's situation dependent.
#6
Quote from: Nightinggale on January 22, 2018, 01:14:00 PM
It's a standalone DLL and while it can handle multiple versions of other DLL files, it can't handle multiple different versions of itself, which is why I want to get it right in the first release.
You may be interested in this. It allows easier updates to .dll mods that get bundled with other mods. It stores which version of the assembly is the latest into a unity GameObject and only executes on that assembly. It will only need a few small changes to work for you.

It starts at the Main.cs constructor, the first instance ran will call Init() which finds all available assemblies and determines the newest version (my code also uses GameObjects to store other data, so Init() does some other things too). Then back at the constructor, it calls Execute() if the current instance is the latest version, otherwise it skips this version and will not execute. Everything inside Execute() is then safe to change in future versions if needed, everything before it cannot be updated without ensuring it will be called since only the first instance will actually run it and that could be any version. From what I remember, RimWorld will only load one instance of an assembly that has the same name and version, no matter where it comes from, so you don't have to check for that.

Other classes you will need are GameObjectUtils.cs (you can remove StoredModIdentifiers and the ComponentModIdentifiers class) and AssemblyUtility.cs.

Side note: I rediscovered this code snippet yesterday for anyone intersted. If you want to use use any translated strings for any sort of UI when you have a dll like this that gets bundled with other mods, but want to everything contained in a single dll file, then set all your language files as an EmbeddedResource and then you can use this class to extract and load them when you need them. Only thing is I cannot remember if I tested it with a dll that has multiple languages, so a check might need to be added to determine the current language and only load that one, but it also might not need it, no idea. It can also be adapted to work on other file types like images.
#7
Quote from: DoctorVanGogh on September 18, 2017, 02:26:14 PM
I'm sorry scuba - but I think you're so far off base, you don't even see the stands any more....

As for the mod being back up (for now?)... oh well... just when the hard stuff was done ;)

Regarding your 'perceived' issue with steam... you're conflating so many issues here... first you imply bad stuff comes from chinese websites... well maybe.... then you suddenly veer into that being an issue with steam... well, if you get something from a third party site then it's decided not from steam...

Then you suddenly notice that 'hey this is a managed assembly.... this can do stuff' well... duh... yes - and it's not an issue with steam... like in at all.
Because, as you implied... you can get this from anywhere... If anything this might be an issue with Unity or even Rimworld, because Unity can load assemblies, and Rimworld supports user written assemblies in mods...

Brilliant idea trying to get that restricted...

So... why don't you try taking a long walk instead of planning to light the world on fire while screaming "ATTENTION! DANGER! This is flammable!" 8)
Use the code to improve your own mod at your own will. A18 will be out at some point. I won't be adding to it or fixing it's issues at all. As I said, "Do with it what you will. I'm only a hobbyist programmer, there is more talented people out there."

Sorry but I don't really care for your opinion on the security issue with the Steam Workshop. If it can be done, then I will do it. Yes assembly can do damage, duh, but Steam can easily allow for it to happen on a pretty large scale without notice. I'd rather not have the potential for damage.

Regarding "some chinese" website, that was quoted from you. My other mod that has the exact same features is still up on a fans website which is what I believe the original person who you were talking to was referring to. It was YOU that imparted that it was "some chinese website".

I didn't just imply bad stuff can come from "some chinese" websites either. Things should be installed from a trusted source. Please quote me anything anywhere that would suggest it is a good idea to install anything from an unknown source. Anywhere. Please contradict it.

I believe you need to reread what I actually wrote carefully.

Edit: Even if I do anything with an exe or sites, there is still quite a few problems with Steamworks that can be heavily abused, I just won't be saying anything more about them.
#8
Quote from: SpaceDorf on September 18, 2017, 01:05:58 PM
Quote from: scuba156 on September 18, 2017, 12:32:00 PM

I have to do this.


Go get them :)
Seldom has being right felt so good.

And thank you for republishing.
Thank you.

I know exactly how I'm going to do it, I won't say exactly how as I would really hate for it to be sneakily patched in by Valve (paranoid) but I can say it will be safe and non-destructive as it is only to prove what malicious things can be done, and that I seriously believe that this could trigger some serious exposure to the issue. Serious.
#9
Quote from: megrim on September 18, 2017, 10:32:27 AM
The part that really bothers me is that Steam Workshop has the power to delete a mod from your system, without your explicit permission.

So essentially, when the author delete their mod through Steam Workshop, they have issued a kill command that deletes the mod on all end-users computer.

In my opinion, this is completely unethical, and a malicious action, equivocating almost to a mod author writing a virus or malware that disrupts a user's gameplay.

I'm well aware of the mod authors rights to stop further distribution of the mod, or prevent others from altering it, or even to try and charge us money (the future), but to issue a clandestine delete command with no prior warning is tantamount to a denial of service action aimed at gamers.

Instead, the author could have chosen to quietly fade to the background and not respond to other requests, or even told us, "I'm done modding. Don't bother me ever again. Here's the keys to the kingdom." Instead, he or she chooses to self-destruct all of their property and causes collateral damage and chaos throughout the RimWorld community. So I would like to know, board moderators, why do you support such behavior in your modder community? Do you realize modders are not as precious as you may believe, and that many people may be able to pick up such skills and produce their own content? Do you also realize that such behavior continues to set a bad example for other modders, and perpetrates a negative stereotype about the modding community? I await your civil response and further discourse, or your 2-week/perma-ban, depending on how you interpret my queries.
I'll quickly reply to this.

You're first two paragraphs outlines one of the major flaws of the Steam Workshop perfectly, but it's no ones fault but Valves as that is what they choose to do once content is removed from the workshop.

It was something unintended on my part. There is no 'Delete this from everyones machine' button when you remove content, there is only a 'Delete' button on the workshop page.

It's not something Ludeon or Tynan can control. The process for removing content from the workshop just plain sucks as demonstrated by this event.

I can only ask reuploaded content be removed as per the Steam ToS regarding content must be originally created or contributed to by the uploader.

On a side note, I also don't recommend installing ANYTHING from 'some chinese' website. Just for a mod, it is extremely easy to inject an exe into the mod, and execute it when you start RimWorld, encrypting your drive and holding your data for ransom. Or even just adding code to open up a bunch of links to malicious sites in the background. Always use trusted sources.

This is also another major issue with the Steam Workshop.

Edit: Shit, I can't just put that information up and not do anything about it. I'm going to prove to Valve that there is a security issue with the Steam Workshop with a non-destructive Proof of Concept. Maybe that will seriously prompt a response from them in doing something about the Workshop. I have to do this.

The mod is currently up on GitHub. Do with it what you will. I'm only a hobbyist programmer, there is more talented people out there.
#10
I'm about to start working through a reply now. I don't know when I will get around to posting it, maybe sometime tomorrow.

Thank you for your patience. :-[
#11
Sorry everyone, i just .... can't do it anymore. Anything. :'(
#12
Quote from: sirskips on September 16, 2017, 10:21:01 AM
Do it my opinion stands and I wont apologize moders like this pollute the air for the community. I will check my emotions however will not change my mind ban me for that if you want PEACE!
You are not entitled to any of my work, or anyone else's work. I think you need to re-evaluate what community and Intellectual Property means.

Edit: You also need to re-evaluate what abuse means.
#13
Quote from: sirskips on September 16, 2017, 09:52:13 AM
Thanks so much I can tell you care have a great fucking life, do us all a favor and stay away from making mods or doing anything with a PC. Fade away so we can forget you even existed. Like a bad break up get on with your life and forget about modding forever ya cunt!
Your argument faded away and turned to abuse, the highlight of any intellectual. Congratulations.

Attached you will see how long I spent on this project alone (with testing and merging into Mod Menu Enhanced, also not counting any other projects), but sure, I never cared for the community ;)

[attachment deleted by admin: too old]
#14
Quote from: sirskips on September 16, 2017, 09:35:55 AM
Then let somebody else put this up its a must have. Its also a stab in the face to anybody who has ever sent you shit for your hard work. Moders like you need a sign that says may delete my mods dont get to attached and I dont give a fuck about the community that helps test fix and build upon my mods. I hate moders like you with a burning passion. You made my life easy only to fuck it all up again get bent!
No one has ever given me anything at all for my hard work other than kind words, I've never asked for anything, and I spent a lot of money repairing my laptop so I could get this mod out, then spent a hell of a lot of time on multiple RimWorld projects. The community has been using this for a while, someone else can create and maintain a mod with similar functionality if they wish, but they cannot use my direct work.

This is my work, no one else's. It is my intellectual property, no one else's. I need it gone and that is my final decision.
#15
Quote from: sirskips on September 16, 2017, 09:21:21 AM
You decision to remove this fucked me and a play thru I had for weeks like 150 hrs just gone!!! THIS IS THE KIND OF SHIT THAT MAKES YOU LOOSE SUPPORT! I know I am going to be very wary of getting any mod your behind from here on out. You have also striped the fun away from Rimworld for me and I cant even bring myself to turn on the game anymore, time will change that but YOU are the cause of me loosing interest in the game for awhile.
Literally read the post above yours to fix the issue.

There will be no more RimWorld Mods from me. I don't require support.