In a multiplayer game of Dungeon of the Endless, resources that get generated each door get shared weirdly between each player. There is some non-trivial rounding going on behind the scenes, and sometimes upgrading a generator or placing a mechanical pal does nothing. How does it work?
The total amount of a resource generated gets divided between players, rounded up.
Complicating things is the fact that the initial resource yields are not uniform (on an Easy difficulty it's 5 industry, 2 science, 4 food), and the true yield is not displayed anywhere.
Due to this rounding, it is possible to not see any effect from an upgrade, or to maximize your benefit by crossing the "threshold" and squeezing an extra +1 from the system.
In a 3-player game the starting 5 industry per door gets divided 3-ways and rounded up to 2 per player. Starting 2 science is similarly divided into 3 shares and rounded up to 1, while starting 4 food is divided and rounded up to 2.
In such a game, building a first tier generator which adds 3 resources per door opened will give every player +1. Building a single second tier generator produces no improvement over the first tier ones: the total yields would become 5+4=9 for Industry, 2+4=6 for Science and 4+4=8 for Food. However, constructing a second second tier Industry or Science would give each player an effective +2 to the corresponding resource, while a second second tier Food generator would only give +1.
Mechanical pals, multiple generators and Operating further complicate the picture, but the calculations seem to hold: find the actual (hidden) yield, divide, round up or down. This is a chore, but can save one from wasting resources on a useless mechanical pal. And in a roguelike, every last drop counts.