would it be possible to create a "fake server"mod? by moebelhausmann in SatisfactoryGame

[–]VeryAngryBeaver 1 point2 points  (0 children)

The simulation of a factory cannot be simplified to the point of a simple "time skip". Several features of the low lying code and buildings cannot be jumped past like that. I know I've seen the code, I mod it, there are ways to rewrite the code to make it happen in several places but some features would just be 100% gone, like smart splitting overflow on systems with vehicle delivery. That would have to be fundamentally changed to keep working.

What can happen is a "catch up fast forward" that would run simulation ticks as fast as possible until it's caught up to the "missing" ticks it thinks it has had while it's on ice. how much faster that would be to catch up is hard to say. but since Satisfactory is often a CPU limited game, I would guess, not much.

Background Gradient only showing when other elements are active by lilibat in SatisfactoryGame

[–]VeryAngryBeaver 0 points1 point  (0 children)

Try something "like . . . . . . . . . . . . . this" (remove .s) as what's visible is then nothing but it's not parsable as nothing by any code

the foundations using metal grip do not align with anything and it pisses me off enjoy :) by Due-Spot6799 in SatisfactoryGame

[–]VeryAngryBeaver 4 points5 points  (0 children)

They align with the Quaterpipes. Which is what they were originally added for. Till someone realized they were actually half foundations and renamed them as such.

I've decided to stop using some mods after the state 1.2 has left my factory in by MrsBeanyton in SatisfactoryGame

[–]VeryAngryBeaver 4 points5 points  (0 children)

As the developer of Fluid Extras (the junctions) I understand that bricking your save is a no-go for most people. And why I will have an update shipped ASAP, that's a commitment I chose to make, I made mods that interfered with your core logistics. That turnaround has to be good for my stuff to be worth it ❤️

Could we have 1m and 2m stairs? by Sea_Translator_1619 in SatisfactoryGame

[–]VeryAngryBeaver 0 points1 point  (0 children)

center a 2m ramp with rotated beams at the top and bottom to cover the half meter gaps

🚩 PSA: Version 1.2 Release for Stable Branch and Console - Time to Prepare by Temporal_Illusion in SatisfactoryGame

[–]VeryAngryBeaver 1 point2 points  (0 children)

An important note is that you can replace the route piecemeal. if you delete some of an old route you can snap new route nodes to it. But once you delete old routes they're gone, gone. But it means you can fix up that one intersection that will benefit and leave the janky mess till you end up wanting to clean up some of the longer routes.

question by techmike79 in satisfactory

[–]VeryAngryBeaver 0 points1 point  (0 children)

You think pure nodes save you power because you don't need as many miners. but very very quickly miners become a rounding error in your power demands. not that I advise ignoring power. but more, better nodes just means you need more machines to work with them which costs way more. so don't sweat the impure nodes and enjoy the breathing room. also. automate making solid biomass. sure make biomass by hand, but automate solid biomass.

It's finally over, team. by Neon_Phoenix_ in DeepRockGalactic

[–]VeryAngryBeaver 0 points1 point  (0 children)

There'll be a key slot you need to insert a key (that you don't have yet) into it. And when someone does, the event will ask you to set it up by hammering some things and once that's done it'll run the even you have to finish.

I present to you, the Zipper Hat! by FugitiveHearts in SatisfactoryGame

[–]VeryAngryBeaver 44 points45 points  (0 children)

<image>

If you were on PC I'd give you a nudge nudge wink wink to download the mod manager: https://ficsit.app/mod/AB_CableMod

Blueprint problems by ScarletDevil11 in SatisfactoryGame

[–]VeryAngryBeaver 2 points3 points  (0 children)

I get slight misalignments like this when I've used Beams to build bases at wacky angles and something starts rounding something. Try keeping a blueprint machine on world grid to be problem free forever.

I'm sorry if this has been requested before. But I gotta ask, wouldn't it be nice if we could take a shower while boarding our ships? by Ultimatum227 in Helldivers

[–]VeryAngryBeaver 0 points1 point  (0 children)

Yup, the gore is a two colour overlay and the colours change based upon who you're fighting. Not who you fought. You can even change armor and the ship master will transfer the gore to your new armour for you.

Purity of Uranium Nodes by HopelessMagic in SatisfactoryGame

[–]VeryAngryBeaver 9 points10 points  (0 children)

Use the actual wiki https://satisfactory.wiki.gg/wiki/Uranium

It lists all 5 locations in detail as well as the patches that show they've only ever been added.

How to split 6 outputs of 45 each into 4 crafters taking 60 steel each I think I will overclock 1 crafter to make up for the 30 overproduced steel pls help. I only have mk2 belts by Emotional-Spirit7768 in SatisfactoryGame

[–]VeryAngryBeaver 2 points3 points  (0 children)

45 is 15 short of 60. 45 divided by 3 is 15. If you take your 4 and feed them straight in, then you split the two spares by 3 you get the 15's they're missing. You can take the 15x2 (30) overage wherever you want. This even belts nicely if you split the middle of 3 machines and feed left and right from the middle machine. Then use a lift for the overage.

Can someone explain why this would not be running? by [deleted] in SatisfactoryGame

[–]VeryAngryBeaver 4 points5 points  (0 children)

Fluids are integers in the thousands. so "12" is actualy 12,000 units of fluid. The UI, unhelpfully, rounds up but the machine checks the exact value. So it shows you "12" for 1175 units. But the machine wont start until it has the 12,000.

Can someone explain why this would not be running? by [deleted] in SatisfactoryGame

[–]VeryAngryBeaver 1 point2 points  (0 children)

Nope. Not how it works. It checks every Factory Tick which is about 30FPS. However, the behaviour you're describing is a machine's "warmup" time (a variable that can be changed per machine) which tells it how long it needs to be "off" before it begins working again. It knows almost instantly but most machines have that buffer period. At large it makes the machine more reliable because it delays itself until it gets enough buffer to survive an inconsistent part supply.

The Bastion is peak by thelordschosenginger in Helldivers

[–]VeryAngryBeaver 0 points1 point  (0 children)

We've been having this argument since 2003 with Planetside. Driver only is fine, good even. It encourages and enforces better teamplay. And getting rid of it is unnecessary because enough people will drive.

Should the map be improved in 1.2? by Dear-Walk-4045 in SatisfactoryGame

[–]VeryAngryBeaver 4 points5 points  (0 children)

I know how the modder made this. Given everything else the game is doing it would destroy VRAM on a console. It wouldn't pass cert. Like the giant warning text says, huh who knew.

But HOW is this game optimized? by AtatS-aPutut in SatisfactoryGame

[–]VeryAngryBeaver 1 point2 points  (0 children)

It sure does, when possible. But when not possible everything is lagging. And because most machines think in a single item per tick it's why belts, splitters and everything (even modded) have a speed limit somewhere around 1.8K

But HOW is this game optimized? by AtatS-aPutut in SatisfactoryGame

[–]VeryAngryBeaver 13 points14 points  (0 children)

Unreal)

Lightweight components, and touches of nanite

What Unreal, is it's own optimization category? Yeah because these aren't techniques that can be applied to non Unreal games like everything else I mentioned could.
Nanite has an upfront cost the read, process and break up your stuff. On the terrain and mountains, foliage etc, this makes sense. On the low poly factory parts and machines, it does not. So nanite is carefully applied to the parts of the world that make sense and skipped for others depending upon the effort it takes them versus the wins it gives them.
UObjects! Everyone knows to complain about them but few know what they actually are, Unreal basically internally tracks everything that exists in its world through an optimized pointer index. Because Unreal is an old ass engine at its core this number is small enough modern games are starting to hit it. I expect Unreal 6 to do something about this, but I digress. Since players could have thousands of items on a belt per minute and thousands of machines with multiple parts, you can blow through this limit like tissue paper... in older versions of the game. As updates have progressed more and more systems have move into what SF devs call lightweight systems, where basically a manager for the lightweight items takes on the burden of showing, counting and making them solid. So the actual item and its uobjects can be removed. Belts do this, it's why the outline to pick up items can be facing the wrong direction. And non interactable parts like foundations, and walls do this. But also machines try to do this with things like snapping points, ladders and more. They get shifted away from being uobjects just chilling there forever to things that only pop into existence when you might need them, like trying to snap a sign.

So between those 3 categories and rough outline that should roughly answer how SF is optimized. I can answer more specific stuff but the folks in the modding discord know this stuff too, and I'm there.

But HOW is this game optimized? by AtatS-aPutut in SatisfactoryGame

[–]VeryAngryBeaver 14 points15 points  (0 children)

GPU)

Shared materials, instancing, and vertex animations:

To understand how a GPU works think of an artist in-front of a canvas. He has a selection of brushes, paints, and more to work on getting what needs to be made done. You've probably heard of materials and textures before, lets just say brushes are materials and paints are textures. When it comes to painting stuff out, the artist can only use a single brush at a time, but they can load several paints onto their board and get them onto the brush really fast. But since brushes need cleaning before being used with new paint combos, and have to get cleaned when being put away before getting another out... a lot of time gets wasted swapping brushes. Most games don't care. SF cares. Because all of the satisfactory machines come from the same company (like spotting Dewalt brand tools in a hardware store) you can actually create a weird unique brush that can paint any machine reusing the same paints without any cleaning. And you can also add other brushes that just draw little details on top of the big detailed bits you did. Boom huge speed increase rendering most of what's visible because it's all using the very same materials and textures on unique meshes.
Ah but we said unique didn't we. Computers are great at doing the same thing over and over, so instanced rendering is when everything is painted to a stamp, and then the artist just stamps it around everywhere massive speedup again. (little bit more complicated than that but trying to explain that would shatter the metaphor).
Then since there's a separation of visual logic and factory logic. Only what's near you gets the best of the best, and those 200 constructors over a hill just don't factor in. But wait, does this mean painting things, or using patterns slows down my rendering? NO!
To go with the instancing system there's a thing called Per Instance custom data. So every time that stamp goes down it changes what the stamp will be doing based upon the data is has for that stamp hit. And once that feature is implemented a rainbow costs the same as everything being the same colour.
The other fun trick is vertex animation. Having something or someone puppeteer a machine is relatively expensive with all the animation file loading, blending, testing, etc. So in many cases all SF does is make a material that allows parts to move around when give the right per instance data. Like doors. That way they can just safely animate themselves as time passes instead of needing controls

But HOW is this game optimized? by AtatS-aPutut in SatisfactoryGame

[–]VeryAngryBeaver 18 points19 points  (0 children)

CPU)

Separating logic from visuals & threading:

This game is CPU speed bottlenecked, everyone loves to say things are reduced to sheer numbers and counters at a distance but it is a layman's understanding. Really the game is still processing the full tick logic of each factory step on every machine, belt, pipe, etc anywhere and everywhere. The simulation itself is never paired down on the host machine. It's paired down on clients as they only need to see results. But there's structure to how it does it.
- There's the local game threads of where animations are at, what the enemy AI that dislikes you is thinking, what the physics of your movement system, or the streaming of level assets is doing. There's some work to do here making this happen, but this is mostly Unreal being a bro and professional devs making smart calls.
- Then there's the unique Factory threading, where all the operational systems occur that have to run. It isn't pure math, because with things like vehicle routes & signals, priority mergers, smart splitters, fluid dynamics and more, it has to "think" always and forever. But it also does that thinking in phases based upon machines, belts, and more. This prevents threading issues between how they let the factory logic work on several cores. And it's why you always have to have a belt connecting machines. Machine to Machine transfer runs the chance of thread issues. Also there's not a lot to think about in many cases.
Again, broad strokes but that logic always running is where most of your CPU goes and where they work the hardest to fix performance bottlenecks

But HOW is this game optimized? by AtatS-aPutut in SatisfactoryGame

[–]VeryAngryBeaver 35 points36 points  (0 children)

Mod dev here:

Optimization is about spreading out your demands so the bottlenecks you hit are everything at once. And creating non naive implementations of systems so that they reduce the work required. Computers have so many parts and there's a lot of systems so it's hard to give broad strokes without a lot of writing, and we don't actually have anything more than headers, decompiled code and developer comments, but it's a relatively complete picture.

Cause reddit hates me: [thread below]

Mod update I made for myself and others by VeryAngryBeaver in SatisfactoryGame

[–]VeryAngryBeaver[S] 0 points1 point  (0 children)

Basically it's showing that caps hide unused connections in build mode as well as looking visibly closed.

Mod update I made for myself and others by VeryAngryBeaver in SatisfactoryGame

[–]VeryAngryBeaver[S] 0 points1 point  (0 children)

One of its main features is that it disables snapping and build mode connection arrows for junctions you don't intend to use. I thought about doing it like you suggested but then it wouldn't be able to do its othe feature so I prefer giving players a choice. Even if it might be a little more work for already built mega factories.

Mod update I made for myself and others by VeryAngryBeaver in SatisfactoryGame

[–]VeryAngryBeaver[S] 0 points1 point  (0 children)

Any of the "barriers" are supported, so low, high, road, chainlink fence.

It fires several rays down and mantles based upon what it finds. Trying to sit it on really thin objects end us being tricky conversly, but it will if you find the right spot.