mistername / RiskOfRainModding

3 stars 7 forks source link

VoteSaving breaks my game #1

Closed Higgs1 closed 5 years ago

Higgs1 commented 5 years ago

Hello there,

Your VoteSaving mod breaks my game such that all of the voting options are un-clickable in the lobby, and thus don't change anything. This is due to the fact that on the line linked below...

https://github.com/mistername/RiskOfRainModding/blob/4b7eb854536d0984f46d7050dd252848603a1b5d/VoteSaving/VoteSaving.cs#L28

path.LastIndexOf("BepInEx") returns -1, resulting in path = path.Substring(0, -1 + 7); simplified to path = path.Substring(0, 6); which then dutifully returns the first 6 characters of the path to where the mod dll is located, and then sticks \config\VoteSaving.cfg to the end of that, which results in a path that just doesn't exist. I'm sure that causes all sorts of problems with my game, I just don't understand how, but regardless my game runs fine without VoteSaving installed.

I don't think it's possible to get anything useful with Assembly.GetExecutingAssembly().Location, and certainly not any BepInEx directory. Please use BepInEx! Using BepInEx IMO is much easier than having to read a file and do all that dirty file stuff.

I also have a hunch that this isn't the only mod that suffers from this issue - I'll take a look if I have time and will make new issues for each one.

Thanks :D

mistername commented 5 years ago

While writing the code for this mod I thought BepInEx config did not allow writing the value in the config via code, this is however not true and as such I refactored most of the code to use BepInEx config so your issue should be fixed starting from commit d7cff19f38742d9b4edeb0c4259d0d667886e24a