Productivity for Space Exploration

by Cerbion

Allows productivity modules in Space Exploration machines!

Tweaks
3 years ago
1.0
31

g Option to disable productivity for Arcosphere recipes?

3 years ago

Hello. I know that this mod already trivializes the SE experiences and that it's not supposed to be balanced for SE, but would it be possible to add in an option to make this mod not work on Arcosphere recipes? Since the whole point of Arcospheres is that you'll always have the same amount of arcospheres as you collected, but using productivity on them means that once you have gathered enough to start production, you never have to go arcosphere collecting again since you can just generate extra using productivity modules.

3 years ago

Yes, I am currently trying to fix a few of these cases with maybe an option for those that want this crazyness, as cooling liquids and other byproducts like data cards face the same issue!

3 years ago
(updated 3 years ago)

That's great to hear! Great job on the mod btw.

3 years ago

There is a new update out that fixes (most of) these problems at least for thermofluid, arcospheres and blank/junk/broken data cards, I also added an option to disable this fix in the mod settings (startup).

3 years ago
(updated 3 years ago)

Hey, thanks! It does indeed work for a lot of them. Junk data from space science is still affected, same with scrap with some of the recipes I checked out, but the liquids are working fine from what I can tell.
EDIT: The arcospheres are still generating excess through productivity when used with the folding recipes. Although that's probably because they don't count as a catalyst in those recipes. Arcospheres are not affected, though, in other recipes.

3 years ago

Yeah its still incomplete, there is just so many recipes to go through and my search criteria through the space exploration files might have been perfect, but if you find a recipe that still feels to not work well, you can let me know what it is, the best way is to use the debug view:

  1. Press F4 to bring up the Debug Options ingame
  2. Check "show-debug-info-in-tooltips" option
  3. Hover with your mouse over the object that is producing the faulty recipe
  4. The recipe name (the actual name) should be visible at the bottom of the tooltip under "Debug > Recipe"
3 years ago
(updated 3 years ago)

rigidity-data
pressure-containment-data
impact-shielding-data
friction-data
ballistic-shielding-data
radiation-shielding-data
explosion-shielding-data
experimental-alloys-data

These are all data cards for material science that seem to be missing from the code and they produce either scrap or contaminated scrap.

Also, looking at the code, it looks like you did include the science pack recipes, yet for some reason they still produce extra junk cards. The science pack don't produce extra thermofluid, however.

I think I looked at the code, properly, at least. My knowledge of coding is like high school level, so sorry if I'm wrong about something.

EDIT: Okay, I was using modules from another mod that gives productivity and speed, and they work, but for some reason, productivity modules from the actual SE mod won't work on a lot of these recipes even with the mod. Productivity modules (the regular ones) do work on items from the manufacturing tab.

3 years ago

I added those recipes and a few others that were missing, should be coming with the next release.
I will look into why its not working for regular productivity modules.

3 years ago

Just updated a while ago with a few more fixes, but Science still produces excess junk.. no clue why though, I will try to find out why tonight and hopefully fix it.

3 years ago

Adding productivity at any stage of a loop will produce excess stuff. This is unavoidable.

3 years ago
(updated 3 years ago)

Yes the main product should get duplicated, but not the secondary materials or catalysts. In this case I finally found out why it was weirdly behaving: Space Exploration itself created some of its recipes in a weird way, I am assuming its legacy code, as it omits the associated fields from the array of any product from a recipe, for example:

{ "se-junk-data", 3 }

instead of

{ name = "se-junk-data", amount = 3 }

and I was only checking for product.name, which was nil for all cases where it was initiated with the above mentioned reduced code.

But I fixed it, and it now finds all recipe products properly and their amounts and can flag them as catalysts so they wont get duplicated with productivity.

Also, the reason it flawlessly worked for all liquids, is because they NEED to have these fields, as well as the type field (for type = "fluid"). I hope this clears things up and I hope I didn't overlook any recipes where some byproducts are still getting affected by productivity, let me know, if thats the case.

3 years ago

both formats are valid, but only the latter can accept any fields other than name and amount.
for checking names, you should do (if recipe.name == name or recipe[1] == name), similar deal for amount.

3 years ago

Yes I didnt mean to say it wasn't valid, I got it to work for both the result[1] and result.name, but I feel the former (non-associative table) is less intuitive, especially for people like me that are new to modding in factorio.

3 years ago

huh. Personally I've seen it the other way around, but I guess that my first mod wasn't dealing with catalysts and what not.

This thread has been locked.