Closed Silari closed 1 year ago
There wasn't a lot left that I could see that could be swapped without making major changes, which I wanted to avoid, or wasn't already handled with the stuff already available.
Biggest one would be adding a recipe for the vanilla infinity pipe, same as there's one for the infinity chest. They have an advantage of being able to select any fluid but also setting the temperature to any allowed value. The new void pipes are one internally, but modified with a bigger fluid box so they remove fluid just as fast as the old ones. Fluid sources are still assemblers because those push out fluid faster - I believe because a) they have a ton of fluid inside due to the recipe size, and b) they have a base_level of 1 compared to the default 0 of pipes. Could be fixed maybe with proper fluid box settings on an infinity pipe, but tbh I didn't think about it until just now.
Duplicating chests could have been changed to also use infinity chests - when placed throw them into a list like they are now, except when an item is put inside (in any slot) and the on_tick catches it, set the infinity filter to match and remove it from the list. That way there's only scripting required before the item is set. Downside is you can't unset it easily - could probably have repurposed the GUI checkbox for that easily though. Didn't think it was worth the time since you can just use an infinity chest to duplicate whatever.
Similarly the autofill requesters could have been changed to use infinity chests, but again we've got an infinity requester chest already. The autofill one still has a use in that it can set it's requests based on the circuit network, then have those requests filled by the script. Technically, that functionality could be moved to the infinity requester chest, but that would require it have on_tick scripting which is what this entire update is trying to avoid.
Matter sources and voids are still entirely scripted, but most uses can be replaced with an infinity chest and a loader easily - slightly larger but much more efficient. Can't replace a source/void pointing at a building/container to add/remove multiple items - mostly that's just useful to fill the rocket silo though.
The super boiler/cooler can't really be replaced with anything well. Infinity pipes can alter the temperature of whatever passes through, but unfortunately it REQUIRES it to be set to 'at least' mode with at least 1%, which of course would create free fluid. They COULD possibly be changed to furnaces so that whatever fluid is put in, it heats/cools to it max/default but that has some tradeoffs. Big one being that recipes work in set amounts, so if the recipe takes 100/gives 100 that would limit the input/output to 100 per tick. Setting it higher would increase the possible throughput, but it also means that it doesn't do anything until you get that much fluid.
No idea on the wands and alien attracters. There were some changes to selection tools and such which might be useful but nothing I can think of offhand.
Super personal roboport can't be changed to use a void energy source because that's apparently not valid for equipment.
That turned out way longer than expected.
That turned out way longer than expected.
You're crazy! 🤯 Will try this out tomorrow and then I'll create a new package. Thank you so much! 🏅
There wasn't a lot left that I could see that could be swapped without making major changes, which I wanted to avoid, or wasn't already handled with the stuff already available.
You seem to be somewhat interested in the future of this mod. Can talk about this offline, maybe on Discord (jodli#7163
)?
Unfortunately between two jobs and transitioning I don't really have a lot of time/enthusiasm for modding for a while, not even my own stuff. That was why I didn't add code to automatically swap the old fluid voids to the new ones by checking for extra connections to ensure it was safe - not enough time to do much more than what I already had done.
And really this all came out of being annoyed that using a fluid source on an SE spaceship broke when it teleported since the fuel filtering broke.
Which is probably something that should be fixed for the remaining scripted entities by listening for the events, if possible.
Resolves #39
The pull includes everything that should be required to release it as 1.8.1, including info.json and changelog.txt changes.
UPS test results - measuring time spent in creative-mod on an otherwise empty map: Empty map - 0.065ms average with 1.8.0, to 0.06ms average with 1.8.1 Map with 400: fluid source into tank into fluid void - ~3.5ms average, to ~0.07ms avg Map with 805 super radars - ~1.9ms average, to ~0.07ms average Map with 350: inf chest into loader onto blue belt into loader into void chest - ~0.13ms avg, to ~0.068ms Map with 140 heat exchangers + pipes + heat pipes + 14 heat source + 14 heat void + 16 vanilla infinity pipe, making 347K steam per minute: 0.17ms avg, to 0.078ms and still making 347K steam.
Full change log is in the pull, but here's the truncated change log: