Factorio Standard Library 2.1 Continued deprecated


Community-maintained continuation of Factorio Standard Library for Factorio 2.1. Provides commonly used utilities and helper APIs for other mods.

Content
5 days ago
2.1
26
Logistics Blueprints

g This again?

4 days ago

There's already stdlib for Factorio 2.1, the only one that ever actually maintained stdlib through Factorio 2.0, unlike everyone else who just dropped the project after their initial updates.

4 days ago
(updated 4 days ago)

There's already stdlib for Factorio 2.1, the only one that ever actually maintained stdlib through Factorio 2.0, unlike everyone else who just dropped the project after their initial updates.

Yeah, I couldn’t find an up-to-date repo, so I assumed it wasn’t being maintained anymore. I mostly needed it for Nanobots anyway.

My fork was based on Jackie P. Mueller’s repository, not on yours. I only found your maintained version after you mentioned it and I looked up your name. Even then, as far as I can tell, the repository itself isn’t updated to match the current Mod Portal version.

As far as I understand, the licence allows forks, modifications, and redistribution as long as the original copyright and licence notices are retained, which I have done.

So I don’t currently see a licensing issue with keeping the fork public. That said, I genuinely don’t mind taking it down or transferring the full repo and my changes to you if that avoids unnecessary duplication. Most of the work is already done, and the repository is public anyway, so I’m happy to cooperate.

4 days ago
(updated 4 days ago)

For clarity, I do intend to keep maintaining my version for future major Factorio releases, at least until the final version of Factorio is stable and Wube has moved on to another project.

I originally made the update because I needed it myself, but now that the work is done, I’m happy to keep it compatible rather than let it break again with the next major release.

This was never about stepping on anyone’s toes, even though maintaining and publishing the fork is perfectly allowed under the licence. I just wanted to clarify my intentions and leave it at that.

4 days ago
(updated 4 days ago)

Yeah, I had a feeling it was just lack of knowledge, rather than an act of malice, and I do know about the license thing; it's not about licensing, it's just that seeing so many different forks of the same stdlib on 2.0 kinda watered down the name to the point where nobody uses it except for me. I would have preferred not going through that again on 2.1

And yeah, unfortunately, I don't personally use github for stdlib or any other mod; I considered it at first, when everyone seemed open to collaboration, but that support quickly fizzled out as I realized nobody actually cared about maintaining the mod, and it just made more sense for me to update it on my own without using github


I mostly needed it for Nanobots anyway

In theory, assuming I grabbed all the fixes from the various repo's, Nanobots should have just worked with my version of stdlib to begin with; I'm almost positive that I took everything that was in Regi_Mahler's version of stdlib for sure (though mine has far more data stage related fixes in addition). I don't know why that version has all the Nanobots forks

But yeah, the biggest problem is just that everyone who made a 2.0 version of stdlib did it just for one mod, and that's why there were so many unnecessary forks; one for each submod, instead of just consolidating into one singular version

4 days ago
(updated 4 days ago)

@Kryzeth Just let me know what you’d prefer.

I had a quick look through your 2.2.4 version while I was at work, so I may have missed some things, but from what I can see, there are useful fixes on both sides.

Your version is clearly much further developed overall. It has more modules, newer data-stage helpers, event improvements, and the spread-across-ticks system.

Mine does seem to have a few Factorio 2.1 fixes that may still be missing from your current release, mainly the updated statistics APIs and replacing the remaining use of global with storage. I also added some testing and release automation, although that is obviously less important for players.

So yeah, I agree that keeping two separate versions going would probably only cause more confusion.

I would recommend considering updating or publishing your current repository, though. The main reason I created my fork was that I could not find an actively maintained source repository, and the repository I did find did not appear to match the current Mod Portal release.

Having the current source available somewhere publicly would make it easier for people to find the maintained version, report problems, contribute fixes, and hopefully prevent someone else from creating another fork for the same reason.

Feel free to take any changes from my repository that are useful. If you add the relevant Factorio 2.1 fixes to your version and I have confirmed that Nanobots works with it, I will deprecate my version and point people to yours instead.

It is a bit of a shame after putting about a week of work into it, but that is fine. I can live with that if it avoids splitting stdlib into even more versions.

I only made mine because I could not find an actively maintained version at the time, not because I wanted to compete with yours.

4 days ago

Alright, I'm willing to make one more attempt at github.

I'll make a fork of the original stdlib repo, fold in your changes (since I haven't personally made many changes with the event scripts, though I do remember going through and making all the global -> storage replacements with Kuxynator's help), then add in my own changes at the end

I'll set it up after work later today (roughly 8 hours from now)

I'll admit that I wrote this one off at a glance, assuming it was a simple version bump to cash in on the name (since I've recently seen so many other mods getting 2.1 forks with very minimal changes)

4 days ago

That sounds great, thank you.

And no worries about the initial reaction. Given the number of minimal version-bump forks that appear after every Factorio update, I can understand why it looked that way at first glance.

I appreciate you being willing to give GitHub another try and merge the useful changes. The repository probably will not receive a huge amount of traffic most of the time, but when a major Factorio update happens, you can at least mention there that an update is being worked on. That would make it much clearer for the people who still depend on stdlib and actively look for a maintained version.

That being said, I will change Nanobots2 over to your version as soon as possible, so it is no longer unnecessarily tied to my fork.

Once the repository is available, I can also take a more thorough look when I am not at work and help compare or test anything where useful.

After the changes are merged and I have confirmed Nanobots works correctly with your version, I will deprecate mine and redirect users to yours.

4 days ago
(updated 4 days ago)

I forgot that I had already made a fork, so I just updated the name to what I've been using on the mod portal, then setup a new branch to merge in the various changes piece-by-piece

I think most of the non-github related changes were already included in my mod-portal version of stdlib, though there were a few minor fixes where I chose your version over the ones included (mostly some reformatting of the helpers)

The integration branch is available here ready to publish as v2.2.5; tested with all of my own mods, and seems to work perfectly so far, settings-stage, data-stage, and control-stage

4 days ago

Hi, just a quick note: I sent a message on Discord to an account using the same name, since that may be easier than continuing the longer discussion here.

Just checking that I reached the right person. No need to share any personal details here—simply confirming whether that account is yours is enough.

New response