Factorio Standard Library

by Kryzeth

Unofficial temporary fork of the Factorio Standard Library, which was a project to bring Factorio modders high-quality, commonly-required utilities and tools. Compatibility with older mods which relied on the original stdlib mod is not guaranteed. This fork will likely eventually be folded into one of the other stdlib forks on the mod portal, if and when all mods that rely on it can be safely switched over.

Internal
20 days ago
2.0
20.6K

i [Pending] Sourcecode?

28 days ago
(updated 28 days ago)

do you have a GitHub repository?
I would use and test some things, mainly the area.lua und utils.lua
Also the Orbital Ion Cannon ist completely based on this lib.

28 days ago

Unfortunately not; I don't have the most experience with github. I could try making this an actual fork, it just seemed a bit.. complicated, for what I needed it for.

28 days ago
(updated 28 days ago)

you get experience by doing. :-)
a repo is needed for code exchange, or do you always want to compare every changed line of code individually ;-)
it also makes it easier to keep track of changes.
do you work locally with git? or other source management tools? does commit and push mean anything to you?

28 days ago
(updated 28 days ago)

Thank you for the advice, I get the feeling I will be needing a lot of it for this project. My experience with github is limited to one solo, non-Factorio-related project (which I never actually finished, but besides the point; available here).

I did make use of push and commit after each influential change, using them like checkpoints to revert back to, in case I made too many changes all at once that broke things and needed a full reset back to a functional state.

I don't exactly know how to use forks within a project though; I tried it once, and it was messy and time-consuming trying to reintegrate the changes back to the main branch, so I avoided it entirely after that. And I know enough about community projects, that there will be a lot of that sort of thing, trying to merge people's changes into the main branch.

In that other project, I was using Visual Studio, since it was easier to work with for that type of code and works with git out of the box, but for Factorio, I've always just used Notepad++ (since there are far fewer moving parts involved with Factorio, at least for what I've made)

28 days ago

and you're taking on a big project like Factorio Standard Library?
I think it would have been better to leave it private
i just mean, since you keep the same name for the mod, many (like me) now think that someone wants to take over. whether official or not ;-)
But apart from that, nothing will happen officially, I wrote something a year ago, but I haven't had a reply yet.
OK, back to you. I think it's great that you've brought this to 2.0 and published it. but have you thought about how you want to deal with support requests? Do you want to do everything on your own? A github repo would help, that others can also make changes and then add them to your repo. Yes, merge conflicts usually only have to be handled by the people doing the PR. you would just have to accept them. or allow other contributors to do so, you don't have to be the one managing the repo alone, even if you were the owner.
If you want I can create an repo on github and add you changes, with code directly from the mod. and than you can take over the repo,

28 days ago

BTW Notepadd++ is not really suitable for such development.
Use e.g. VSCode with the extensions "Lua" and "Factorio Modding Tool Kit"
With syntax highlighting, code completion etc.
This is a difference between black and white and colour television ;-)

28 days ago
(updated 28 days ago)

I think it would have been better to leave it private

That sentiment is understandable, but literally all of my mods required stdlib, so I just needed to get something on the mod portal, otherwise my mods would all appear as downloadable in 2.0, but then cause an error about missing dependencies (due to them being off-site). I was hoping that if I patched up the parts of the code that weren't working, that the rest would.. take care of itself. Anything that was working before and didn't require changes should still be working now, right? I mean, Nexela hadn't updated the library in over a year, so it must have been working perfectly until then, and not require any more maintenance (I assumed)

I was considering if I should change the name of the mod to reflect that this version of the project is mostly for personal use, and I did detail that in the description, at least. But I mean, if the rest of it ain't broken, then it should still be usable for anyone?

As for the support requests thing.. I am used to doing it alone, though I have accepted code from those more knowledgeable than myself to make things work better or more efficiently. It would probably be easier to do that in this case as well... I will admit that I am out of my depth with a significant portion of the library, specifically the parts revolving around the runtime part of Factorio, I have not really delved into at all (aside from patching some things up to make some of the Picker mods work without errors)

If you want I can create an repo on github and add you changes, with code directly from the mod. and than you can take over the repo,

Would there be any difference compared to me forking the github repo on my own? Apart from you already being marked as a collaborator or whatever it's called that's allowed to make changes?

Use e.g. VSCode with the extensions "Lua" and "Factorio Modding Tool Kit"

I will look into it; that does sound quite helpful! Anything to make the process more efficient!

28 days ago
(updated 28 days ago)

leaving it ‘private’ was only referring to the name ;-)
kry_stdlib is perfecly choosen. and "Factorio Standard Library" is only a display name you can change it any time.
The parts that use the Factorio API will not rewrite themselves, and the API has changed massively in Factorio.
Parts that do not depend on the API can probably still be used 1:1.

you can of course create a fork yourself. then clone it to your hd, copy in your changes and push it again.
however, i would have structured the repo a little better beforehand, so that not everything is published in the mod that doesn't belong there.

It's easiest if I just do it, and then you can decide whether you want to take it over that way or prefer to do everything yourself.

28 days ago
(updated 28 days ago)

BTW just to make it clear, I have no intention of succeeding stdlib because I already have my own lib.
i just have to deal with it because some of my mods (still) have dependencies to stdlib
But anything I need to fix in the lib, I'll be happy to pass on to you.

28 days ago

Ah, I think I see what you mean; that sounds good to me, go ahead!

28 days ago

do you use telegram? then pls contact me (same name)

New response