Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

Cheerio

Last Update: What Happens Now?

Recommended Posts

Cheerio    2685
Hey modders,

 

Now that the last update has been release and that last few hot fixes being pushed, I'm sure that a bunch of you are wondering what happens now?  

 

In regards to the lua api and all the lua files and provided by the game, these will remain largely unchanged for the foreseeable future.  There will definitely be new things introduced by the DLC but the api shouldn't really change.  We're not quite sure how it will work just yet but we will also provide some way of handling mods which depend on the DLC being used with the vanilla version of the game.

 

In regards to the mod tools package, we will be releasing the source for these to the public so that anyone interested can contribute to them.  Any contributions submitted will be reviewed and integrated into the official Mod Tools on Steam.  

 

And as to the forums, we will continue to monitor the forums and help answer any questions you have, so please keep them coming.

 

We've been extremely humbled by the enthusiasm shown by the modding community and we're looking forward to see what you guys come up with :).  

Share this post


Link to post
Share on other sites
squeek    236

Yeah, gotta say this is extremely disappointing news and quite discouraging. I was optimistic that the end of updates would not mean the complete end of code changes in general; just that we'd no longer be getting announced/named updates.

It's definitely possible to envision a point that could be reached at which the modding API would be mature enough to no longer need any updates, but Don't Starve is certainly not quite there yet. As simplex said, mod save data is a huge oversight and really limits what mods can do. Another big sticking point for me is that many of the userdata that are exposed to Lua are extremely limited in what they can do (only the member functions that have been used by Klei are exposed, with a seemingly complete disregard of what would be useful to modders, even though I know for certain that exposing those useful functions would be beyond trivial) and are completely undocumented.

I'm fine with the game not getting updates, however I'm definitely not fine with the state of the mod API being considered "finished". It's probably too late, but one final patch that focuses 100% on the mod API, using requests from the modding community about what should be included, would really help out.

Share this post


Link to post
Share on other sites
Cheerio    2685

But... mod savedata... :/

Could you give me an example of something you'd like to save which you currently can't with the existing systems?

Share this post


Link to post
Share on other sites
simplex    2619

Could you give me an example of something you'd like to save which you currently can't with the existing systems?

As @squeek already mentioned, this comes from a discussion I started with Bigfoot, which evolved in that thread squeek linked to.

The original point in question was mod configurability, since Workshop mods can't place user-editable configuration files in their mod folder (since changed just get overwritten by the Workshop sync). I see this matter as of great relevance.

However, somewhat biased by my work in Up and Away, my main concern at the moment is persistency of mod savedata. While a mod can freely save whatever it wants through OnSave methods, if a save is loaded with such mod disabled (either explicitly by the user or due to a previous crash) all its savedata is lost, because the corresponding OnLoad methods will not be there to fetch the data (nor will the OnSave methods be there to put them back in the next time the game saves). So in a mod such as U&A, which creates a whole new world with barely any vanilla assets, having all that data lost leaves the user stranded in a (now permanently) empty world, in particular having no way of getting out without using the console. I briefly discussed this with Ipsquiggle a while back (the forum collapsed my post into one big paragraph, sorry).

Share this post


Link to post
Share on other sites
simplex    2619

And oh, my previous mention of mod dependencies was a reference to this. Though the code I had provided has been squashed into a single line (and I don't believe I have a copy of it). What it did was add two new optional fields to modinfo: dependencies and optionaldependencies, both being tables (arrays) listing mod names. Then it created a directed graph whose vertices were the enabled* mods and whose edges (u,v) were given by the relation "u is a dependency of v". Then it computed a topological sorting of the vertices using Kahn's algorithm.

* What I don't believe it did, but a release version should, is automatically enable mods listed as dependencies of enabled mods prior to running the algorithm.

Share this post


Link to post
Share on other sites
tehMugwump    447

 

Hey modders,
 
Now that the last update has been release and that last few hot fixes being pushed, I'm sure that a bunch of you are wondering what happens now?  
 
In regards to the lua api and all the lua files and provided by the game, these will remain largely unchanged for the foreseeable future.  There will definitely be new things introduced by the DLC but the api shouldn't really change.  We're not quite sure how it will work just yet but we will also provide some way of handling mods which depend on the DLC being used with the vanilla version of the game.
 
In regards to the mod tools package, we will be releasing the source for these to the public so that anyone interested can contribute to them.  Any contributions submitted will be reviewed and integrated into the official Mod Tools on Steam.  
 
And as to the forums, we will continue to monitor the forums and help answer any questions you have, so please keep them coming.
 
We've been extremely humbled by the enthusiasm shown by the modding community and we're looking forward to see what you guys come up with :-).  

 

Well, it's been no secret that all these past changes have completely burnt me out and buried more than one epic mod (and modder), but I'm glad I was able to hang on to the 'end' where things are finally (reasonably) stable and no longer need constant attention and re-plumbing to keep working.  It's been a great ride folks.

Share this post


Link to post
Share on other sites
Cheerio    2685

 

Hey modders,
 
Now that the last update has been release and that last few hot fixes being pushed, I'm sure that a bunch of you are wondering what happens now?  
 
In regards to the lua api and all the lua files and provided by the game, these will remain largely unchanged for the foreseeable future.  There will definitely be new things introduced by the DLC but the api shouldn't really change.  We're not quite sure how it will work just yet but we will also provide some way of handling mods which depend on the DLC being used with the vanilla version of the game.
 
In regards to the mod tools package, we will be releasing the source for these to the public so that anyone interested can contribute to them.  Any contributions submitted will be reviewed and integrated into the official Mod Tools on Steam.  
 
And as to the forums, we will continue to monitor the forums and help answer any questions you have, so please keep them coming.
 
We've been extremely humbled by the enthusiasm shown by the modding community and we're looking forward to see what you guys come up with :-).  

 

As promised, here's the initial commit of the github project of the mod tools.  

 

https://github.com/kleientertainment/ds_mod_tools

Share this post


Link to post
Share on other sites
_Q_    644

Mod config is needed.

Crock pot modding stopped at all, we can add new recipes but the food won't be visible on crock pot without overwriting game files, there should be other way.

Thats not only for mod api but where is cave config screen, we can configure surface worlds to our taste but we can't configure caves at all.

Correcting code of some components so they use less local variables, so they can be modified from modmain easier.

Mod api is far from finished.

 

Also the problems with missing mod textures is still in game, I just removed Hunter mod from steam workshop cause I don't know why custom dirtpiles vanish.

 

It all ended in quite unfinished state, that goes for game and mod api.

Share this post


Link to post
Share on other sites
TheDanaAddams    577

Mod config is needed.

Crock pot modding stopped at all, we can add new recipes but the food won't be visible on crock pot without overwriting game files, there should be other way.

Thats not only for mod api but where is cave config screen, we can configure surface worlds to our taste but we can't configure caves at all.

Correcting code of some components so they use less local variables, so they can be modified from modmain easier.

Mod api is far from finished.

 

Also the problems with missing mod textures is still in game, I just removed Hunter mod from steam workshop cause I don't know why custom dirtpiles vanish.

 

It all ended in quite unfinished state, that goes for game and mod api.

That's very strange! I haven't had a problem with vanishing textures since the update that fixed it.

 

But yes, we definitely need some way to allow users to configure the mods. Some way to create a settings or options screen - to change key bindings, or alter some numerical, or true/false variable. To give the players options; allow them to set things up more to their liking, rather than being stuck with what we give them.

Share this post


Link to post
Share on other sites
simplex    2619

That's very strange! I haven't had a problem with vanishing textures since the update that fixed it.

 

But yes, we definitely need some way to allow users to configure the mods. Some way to create a settings or options screen - to change key bindings, or alter some numerical, or true/false variable. To give the players options; allow them to set things up more to their liking, rather than being stuck with what we give them.

Create a screen we can do ourselves. The issue is having a proper way to store those values, as well as (possibly, but less importantly) a standard way to hook up a button to the mod view within the mods screen to push the configuration screen. I say the second matter is of less importance because we can mod that in, it just wouldn't be ideal for every mod to roll its own solution, creating a non-uniform GUI.

Share this post


Link to post
Share on other sites
Cheerio    2685

Create a screen we can do ourselves. The issue is having a proper way to store those values, as well as (possibly, but less importantly) a standard way to hook up a button to the mod view within the mods screen to push the configuration screen. I say the second matter is of less importance because we can mod that in, it just wouldn't be ideal for every mod to roll its own solution, creating a non-uniform GUI.

As long as you store your configuration outside the mod folder, the Workshop won't delete your data.

Share this post


Link to post
Share on other sites
simplex    2619

As long as you store your configuration outside the mod folder, the Workshop won't delete your data.

But that's precisely the point! Where should this file be placed? I had suggested giving each mod its own folder placed alongside the saves folder (in the user's home directory*), where it'd store data files (possibly more than one), but the idea of letting mods deal with the filesystem, even if at limited capacity, was not well received. So the discussion was revolving around giving each mod a single, fixed file.

We can't create folders, so a roll your own approach would just clutter the standard game folders, not to mention it'd be susceptible to filename clashes unless each modder was quite careful. Additionally, this would prevent such data from being deleted (which should not happen if the mod is just disabled, but should if the mod is not longer present, i.e. has been uninstalled).

* Being able to localize configurations per user instead of per Don't Starve installation would be a huge plus if compared to just putting it in the mod folder.

Share this post


Link to post
Share on other sites