Spaceblock


Seablock but without the sea, and you make a rocket by duplicating resources instead of from water. Build your own space station / satellite / orbital rocket launchpad / factory thing

Overhaul
3 years ago
0.17 - 1.1
12.2K

g Angel's quick (and dirty) fix

3 years ago
(updated 3 years ago)

After almost half a day of poking and prodding, I managed to get the game to run with angel's industries mods + spaceblock. Must have been some changes on Angel's side, triggering some icons issues and some type mismatches on the petrochem side. I think some of the resources got changed to multiple icons instead of a single one, along with a size change from 64 to 32. Also had to change what got passed to the fluid recipes: fld.name instead of ore.name since the minable resource and mined resource are different in angel's mod, though that looks like a mistake on spaceblock side ( fld was defined, but not used).

3 years ago
(updated 3 years ago)

Also, compatibility with Angel's can be improved by adding a check for recipes being enabled/hidden when getting the initial science pack list. The landfill dupe recipe isn't usable otherwise since Angel's Industries disables the vanilla science packs but doesn't remove the prototypes.

3 years ago
(updated 3 years ago)

Please don't tell people to install your modified version of the code.

If you're encountering problems, please post them.
Don't take it upon yourself to fix it as this just creates more work for me, and in my experience most people diagnose the problem wrong and present fixes that lead to more serious problems further down the line.

I understand you have good intentions, and it's ok to try your hand at playing around with mod code, but again, please don't tell people to install 3rd party changes for a mod, particularly when it's actively maintained.
Instead, it's better to present your changes so i can merge it with the main branch of the mod where it is appropriate to do so, and saves everyone some double handling and potentially save-corrupting issues.

In this case, fortunately it's just one file with a small number of minor changes, I have gone ahead and added these to the main branch.

- Fixes for potential modded fluid resource naming conflicts
- Mod compatability fixes for icon crashes (Angel/bobs)

Now, you also mentioned there's some issues with the science pack logic with hidden/enabled recipes.
That is all working as intended.
Please provide me with a save to sync with (or minimum mods needed) so i can replicate and fix this issue.

3 years ago

To my defense, I wasn't suggesting for people to replace the file with mine, just provided a way for kindred souls to play spacepblock+angel's till the mod got updated, just for convenience's sake. Though, I do understand your concerns and have removed the link.
Also, the fixes I made were, just as the topic title said, quick and dirty. At the very least, the icon handling only got a band-aid. A more proper fix would be checking whether the source uses one or more icons and copy the data over rather than hardcoding the values as it's being done. That should solve the problem for good since changes from one icon to multiple layers or icon size changes in other mods would no longer cause conflicts. The icon size changes I patched only covered angel's mods, but bob's assemblers mod still has icon size conflicts with some of the other recipes I didn't patch. Not to mention that changing the icon size might have broken other mods that worked before (I only tested Angels and Bob's mods).
As for the science pack issue, it's enough to just use Angel's Industries mod. It overhauls the technology research by replacing vanilla science packs with it's own variety. And, as I've mentioned, the vanilla science packs have their recipes disabled so you can't craft them, nor obtain them in some other way, resulting in an uncraftable landfill-dupe recipe. Adding the additional check for the recipe being enabled did do the trick for me, removing the vanilla science pack from the recipe and using just the angel's industries ones instead. Unless some mod disables science packs temporarily, for whatever reason, the check should not cause any problems down the line.

3 years ago

To my defense, I wasn't suggesting for people to replace the file with mine, just provided a way for kindred souls to play spacepblock+angel's till the mod got updated, just for convenience's sake. Though, I do understand your concerns and have removed the link.

A similar situation happened with updating warptorio for 0.18.
Much delays in getting it pushed because it was coupled with a major update unrelated to 0.18 which wasn't quite finished at the time.
The mod was semi-updated by MFerrari who works on the expansion and it seemed to be fine .. then we learned what happens when you start playing with unofficial versions of mods.
There are 3 critical issues.

  1. Version mismatching. If you increment it manually and the mod portal gets updated, you won't receive the latest update. This can have a cascade effect on managing mod lists on save files (a form of save corruption) where saves won't receive migrations correctly, even if you delete/re-install to sync with the mod portal.

  2. Mod mismatch with servers, forcing everyone involved to manually manage their mod files. The only notice given of this issue is if the player joins a server using the mod and receives a mod mismatch error. The people most likely to use your edits are those who are working with time constraints, e.g. streamers, or people playing with friends, making this a problem that is extremely likely to happen. It becomes a challenge to invite another friend to play that doesn't have your changes added.

  3. Human error. Not everyone knows how mods are supposed to be structured so they are likely to accidentally break something along the way.

Also, the fixes I made were, just as the topic title said, quick and dirty.

Indeed. The issue was not the fix or posting the link, in fact i love it when people provide code <3, instead the issue was putting forward wide encouragement to use suggested changes before simply posting errors or presenting the fixes on their own, usually only needing to post the affected functions for which files.

I raised this because of the above 3 points and that those issues apply to every mod on the mod portal, and i believe you may not know about it. No need to be sorry, i didn't know either, or see it as big of a concern as i should have (and am making it now) until after i learned what happens, so you don't have to! :D

Unless the mod is abandoned, it is best to wait for the author to update it.
I can't think of any other reasons where it does not result in a bigger inconvenience at the end of the day than the person using it was trying to gain to begin with.

In short, it's worth the wait!

[*basically the code presented was quick and dirty]

Yep, noticed, and already way ahead of you! :D
You were pretty close.
I was also intrigued by the fluid naming conflict you changed as well, i figured yeah you've probably got the right idea on that one.

As for the science pack issue, it's enough to just use Angel's Industries mod.

Much appreciated!

Adding the additional check for the recipe being enabled did do the trick for me, ...... the check should not cause any problems down the line.

It causes problems down the line.
Though, functionally speaking, in the context of spaceblock and the landfill recipe it does not cause an issue, but rather in the context of my lib.lua's which handles the complex crafting logic it does cause an issue.
I've only used the crafting logic in spaceblock to pick up the "first" science pack, but it is used heavily in my other mods such as randotorio and scientorio.
If it's broken for spaceblock, it's broken for the others too so it's actually a somewhat bigger issue than it may appear.

3 years ago
(updated 3 years ago)

On the subject of compatibility with Angel's mods, there's no way to obtain the various trees and gardens which locks your progress to the 2nd tier of electronic circuits, since gardens are required for resin and the only other way to get resin is from a research that requires resin in the first place. I've seen Seablock handle it by generating trees/gardens on random patches of dirt throughout the map. Another possibility would be to make them with space matter, though it wouldn't fall in line with the duplication method (no trees/gardens to duplicate in the first place). I hope you can add some way to get them.

New response