Nanotorio


Factorio but everything is nano sized. Procedurally and semi-intelligently resizes and reshapes all entities, included modded ones to 1x1 as much as possible.

Overhaul
5 years ago
0.17
11

b Fluid box issue with boilers, second issue with big factories (factory planet)

4 years ago
(updated 4 years ago)

Boilers don't always connect to turbines. I looked at raw.txt and a serpent.log after your changes, and I see that the boiler has a -1.5 for y as the fluid output before and -.5 after, even though it should be resized 1/2. I'll hack something in for my local version but you can figure out the right thing to do.

Related, warptorio2's factory planet gives me a pretty self-descriptive error:
26.274 Error ModManager.cpp:1332: Error while loading entity prototype "wsf-big-refinery" (assembling-machine): Invalid pipe connections specification for offset {-1.5000000000, -2.0000000000}. The offset must be outside of the entity bounding-box

I saw the note of the chem plant, if the pipe connections are fixed in these cases it might fix the chem plant.

Edit: Changed fluid box rounding to nearest 1/4 instead of nearest 1/2. Looks to work for boilers.

4 years ago
(updated 4 years ago)

Hrrrm there might be another issue, not sure if my fault or not. I picked up a water pump to see where it could be placed (there's something weird with wp placement I think?), and it didn't reconnect to a pipe, but if I picked up and put down the pipe it connected. Works by placing the pipe so I'm ignoring it.

4 years ago

Found a way to fix the fluid boxes and get the chem plant working reliably. Gonna test advanced oil processing or w/e soon for the refinery. I won't spoil it. Y'all moving in to uni?

4 years ago
(updated 4 years ago)

This math is very complicated, particularly because there is no reliable way to "measure" somethings size due to how +-0.5 snapping works.

The objective is to find the formula that can perfectly resize anything, including those with fluidboxes, and including any modded entity. If you need to make special cases for things, you're already doing it wrong.
So this is more for proof of concept and for fun, rather than a true gamemode in and of itself.

4 years ago

That's the spoiler: I completely disregarded "resizing" the pipe locations, and force the pipes to exist in the half-spots. Certain pipes move in relation to others because of how I do it (my petroleum gas on the refinery is in the middle now), but 100% of the pipes are centered in their square, and the connection is exactly .5 outside the goalsize. It looks nothing like how your code is written, but it works.

I noticed today there was another mini-machine mod, but I think I'd prefer this one, since it replaces the existing machines. I already started getting ideas for reactors/exchangers and heat boxes, since those aren't working 100% normally. Need to generalize a fix, but neighbor bonuses can work for 1x1 reactor resizes (actually not sure if a reactor should be 1x1 or 3x3 because of the heatbox connections, ya know?)

4 years ago

If you had wanted to see the changes I made:

https://pastebin.com/rZy9Ui2U

The lib_data_resize changes are more relevant (the resize function is mostly the same, but I threw the output vector thing resize at the bottom). There's hard-tweaks I made in data-final-fixes for my sake. The oil-refinery still has an off-center graphic, not sure what's up with that, but most everything looks and works right.

New response