[1.5] HugsLib (11.0.3) Lightweight modding library

Started by UnlimitedHugs, December 15, 2016, 02:20:14 PM

Previous topic - Next topic

UnlimitedHugs

Quote from: scuba156 on June 09, 2017, 11:01:04 AM
- snip -

That sounds quite handy. I might drop my checker for that, once it's stable.
Being a separate mod, you could make the additions you like without anyone poking at your ideas ;)
If it does become a thing, I would include a mechanism that runs only the latest version of this checker of all those available among the loaded mods- that way it will be easy to make updates and fix things.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

Fregrant

"Share logs" not working. Was it moved elsewhere?

[HugsLib][ERR] Exception during PrepareLogData: System.IO.FileNotFoundException: Log file not found:C:/Games/RimWorld/RimWorldWin_Data\output_log.txt

UnlimitedHugs

Quote from: Fregrant on June 12, 2017, 03:49:48 PM
"Share logs" not working. Was it moved elsewhere?

This is quite odd. Are you playing on Windows? What are your command line options?
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

Fregrant

Not sure. Maybe it was deleted by a cleaner tool)

scuba156

Quote from: UnlimitedHugs on June 09, 2017, 07:23:02 PM
That sounds quite handy. I might drop my checker for that, once it's stable.
Being a separate mod, you could make the additions you like without anyone poking at your ideas ;)
If it does become a thing, I would include a mechanism that runs only the latest version of this checker of all those available among the loaded mods- that way it will be easy to make updates and fix things.
I'll let you know when its ready, I don't know when it will be though. I have 3-4 projects going atm, I seem to be more efficient working on multiple than one as I switch between them when I feel like doing another.
Haha Ideas are always welcome, and that actually is a good idea. I'm not sure how I'll only execute from the latest assembly yet, have to think about how best to achieve it without slowing down start times too much.
Off the top of my head I'll probably just hold a variable of an assembly somewhere and compare versions to each assembly init, then execute on that assembly.

Quote from: Fregrant on June 12, 2017, 03:49:48 PM
"Share logs" not working. Was it moved elsewhere?

[HugsLib][ERR] Exception during PrepareLogData: System.IO.FileNotFoundException: Log file not found:C:/Games/RimWorld/RimWorldWin_Data\output_log.txt
Also check you have write permissions in that folder.

UnlimitedHugs

Updated to 3.1.1

- Added a ModBase callback for the recent MapGenerated event.
- Added a fix for the log uploader when running in low integrity mode. Contributed by debugzxcv.
- Merged translation updates by PelucheKawaii, 53N4, and dragomano.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

UnlimitedHugs

Quote from: scuba156 on June 13, 2017, 04:20:35 AM
- snip -

Multiple projects are great for keeping your creative flow up. The non-profit nature of the projects is also a nice boost, I find.
As for executing only the latest version, that's what I do in the checker- just compare versions against all other matching assemblies, then execute and leave behind a GameObject that prevents multiple executions.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

scuba156

Quote from: UnlimitedHugs on June 13, 2017, 12:55:29 PM
-snip-
I should of looked at that before I started haha. I've got it finding the latest assembly, and executing it directly but unloading all the other assemblies will add a bit of bulk so I might just "borrow" your code for holding a GameObject if you don't mind of course.

UnlimitedHugs

Quote from: scuba156 on June 13, 2017, 01:49:22 PM
I should of looked at that before I started haha. I've got it finding the latest assembly, and executing it directly but unloading all the other assemblies will add a bit of bulk so I might just "borrow" your code for holding a GameObject if you don't mind of course.

By all means. Everything is always up for grabs.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

scuba156

Quote from: UnlimitedHugs on June 13, 2017, 01:56:53 PM
By all means. Everything is always up for grabs.
Thank you. I might end up using a large portion of it and adapting it to what I need.

scuba156

I've got some base code down and can find and store the latest assembly of my mod within a GameObject component and execute on the latest assembly. I also store the mod Identifier for each mod with an assembly in the same way. It should be enough information stored to allow future updates with as much compatibility as possible I think. I need to get this part correct from the start for maximum compatibility.

The ability to easily store data within a GameObject could go in HugsLib too if your interested in that feature. The code is only 2-3 files, should come under 100 lines when I finish it, and can store any data type. It would allow mods to easily store/retrieve data across different mods, instances of a mod, or even just a single instance. The code might even be useful for achievements somehow.

UnlimitedHugs

Quote from: scuba156 on June 15, 2017, 04:16:22 PM
- snip -

GO's have somewhat limited utility in Rimworld- but they're easy to make if a mod needs them. They are quite handy as an event provider- but even that almost falls into the "meh" category, now that we have patches. So, not really worth adding to the library, methinks.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

scuba156

Quote from: UnlimitedHugs on June 15, 2017, 06:04:20 PM
GO's have somewhat limited utility in Rimworld- but they're easy to make if a mod needs them. They are quite handy as an event provider- but even that almost falls into the "meh" category, now that we have patches. So, not really worth adding to the library, methinks.
I shouldn't post ideas at 6am :)

I dropped my laptop on a hard floor the other day, killed the windows install, luckily my data was safe but I'm still reinstalling everything. I only had to finish up the UI and some more work on the missing/inactive/outdated mods parsing and it should be done. I've got a few projects waiting on it.

Nok_

#253
I'm getting an error wherein the share log function can't find the logs file. [HugsLib][ERR] Exception during PrepareLogData: System.IO.FileNotFoundException: Log file not found:~/Library/Logs/Unity/Player.log

I'm on a mac, if that makes a difference.

Edit: And I have also made sure that I have read/write permissions on the file and folder.

UnlimitedHugs

Quote from: Nok_ on June 23, 2017, 09:55:26 PM
I'm getting an error wherein the share log function can't find the logs file. [HugsLib][ERR] Exception during PrepareLogData: System.IO.FileNotFoundException: Log file not found:~/Library/Logs/Unity/Player.log
I'm on a mac, if that makes a difference.

Unfortunately I don't have the required fruity hardware to diagnose this one. Perhaps scuba156 can chime in on this.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam