Commit Graph

53 Commits

Author SHA1 Message Date
Anuken
f174d1b2b4 Faster power graph reload / Fixed iOS editor margin 2020-12-27 12:59:49 -05:00
Anuken
57ad1d5366 Fixed #3899 2020-12-09 20:19:54 -05:00
Anuken
e847a74a25 Fixed #3362 2020-11-12 09:41:49 -05:00
Anuken
782307374f Fixed #3189 / Fixed #3187 2020-10-30 09:24:05 -04:00
Anuken
2f54edf34f Sector refactoring, invasions and cleanup 2020-10-16 11:02:24 -04:00
Anuken
35af71c613 Moved Nullable to utils package 2020-10-02 23:11:26 -04:00
Anuken
5861fe61b2 Cleanup 2020-10-02 19:51:30 -04:00
Anuken
a3224b7082 Improved replacement system 2020-10-02 11:14:18 -04:00
Anuken
cf13717cc8 Fixed #2671 2020-09-22 22:52:55 -04:00
Anuken
ba6ab8483e Various tweaks 2020-09-22 20:42:36 -04:00
Anuken
74cefb3ec9 Dacite decoration block / Environmental renaming 2020-09-10 15:17:10 -04:00
Anuken
8e17571824 Fixed #2449 / Fixed #2456 / Fixed #2458 / Fixed #2459 / Fixed #2466 / Fixed #2474 2020-09-01 11:34:03 -04:00
Anuken
e41b17543f Update LiquidModule.java 2020-08-30 08:58:53 -05:00
Anuken
58182fe040 16bit items 2020-08-25 20:56:44 -04:00
Anuken
fefef3bc47 Decreased throughput of instant transfer blocks chained to routers 2020-08-23 17:08:07 -04:00
Anuken
b128155615 Added T3 logic processor 2020-08-22 11:16:15 -04:00
Anuken
819835fbc0 Fixed #2373 / Fixed #2378 2020-08-19 10:35:24 -04:00
Anuken
0372ec7c9f Bugfixes, balancing 2020-07-24 12:42:59 -04:00
Anuken
988da3b8e9 Balancing / Bugfixes 2020-07-22 11:03:38 -04:00
Anuken
43ca3ca210 Correct flow rate scaling 2020-07-21 19:51:57 -04:00
Anuken
973d907218 Balancing & bugfixes 2020-07-21 19:49:46 -04:00
Anuken
f9b6b8e5b7 recieve -> receive 2020-07-14 11:16:32 -04:00
Anuken
a9333baa78 Research tweaks 2020-07-08 12:11:27 -04:00
Anuken
5f6c71b9d3 Replaced concept of "turns" with raw seconds 2020-07-01 11:50:33 -04:00
Anuken
b3f29f100d Custom launch items 2020-06-28 13:33:53 -04:00
Anuken
6386cae19a Launching dialog bugfixes & requirement display 2020-06-28 11:40:03 -04:00
Anuken
bd274f804a Loadout selection + custom loadout schematics 2020-06-27 23:04:38 -04:00
Anuken
fdf7c88083 argh 2020-06-26 14:27:26 -04:00
Anuken
b5660a50ca Certain team-specific rules 2020-06-15 12:00:32 -04:00
Anuken
5f79040faa Testing doc script 2020-06-14 18:41:42 -04:00
Anuken
8ea28e1ced Seq. 2020-06-08 17:19:47 -04:00
Anuken
1ae9d04f47 Experimental: block loader/unloaders 2020-05-25 14:36:40 -04:00
Anuken
46bc2207ff Initial reconstructor impl 2020-05-23 18:49:28 -04:00
Anuken
a4987f864f Refactoring / Launch pad tweaks 2020-05-14 22:00:04 -04:00
Anuken
aab97fefc8 Fixed puddles not appearing / Overdrive tweaks
- Bridges, routers and junctions can (probably) be overdrived now, untested
2020-05-08 16:41:59 -04:00
Anuken
2b9d618bd2 Implemented various suggestions
- Pathfinding weighs walls more
- C disables all HUD
- Unloader doesn't store items
- Some bugfixes
2020-05-07 21:37:41 -04:00
Anuken
cdc8d2bfe4 Removed experimental tag 2020-05-01 11:31:25 -04:00
Anuken
e75d1a51a6 More accurate resource display / Server fix 2020-05-01 11:23:36 -04:00
Anuken
09e08a474b Plastanium conveyor + bugfixes 2020-04-24 20:17:24 -04:00
Anuken
280f3dd428 Added experimental package 2020-04-16 16:31:43 -04:00
Anuken
3bdd6e04ca cleanup 2020-03-27 15:34:46 -04:00
Anuken
152a987c3a Experimental flow display 2020-03-26 17:19:18 -04:00
Anuken
7d5ceafff2 Implemented #1129 / Bugfixes 2020-03-24 12:02:26 -04:00
Anuken
e9994794aa Sector lock state 2020-03-19 11:29:18 -04:00
Anuken
77f406e9b8 Fixed core errors 2020-03-06 15:22:13 -05:00
Anuken
18d4efa315 Merge 2020-02-17 09:30:36 -05:00
Anuken
b96d5c417f Fixed #1601 2020-02-17 09:27:51 -05:00
Anuken
09c57c32d6 Better IO 2020-02-13 22:11:59 -05:00
Anuken
f6b1420103 c l e a n u p 2020-02-05 18:28:19 -05:00
InvalidError404
ea6490cf9f Improved ItemModule::take() behavior (#1495)
* Improved ItemModule::take() behavior

The original take() behavior spams items in whatever order they appear in the items list until each index is depleted, which is problematic when non-specific unloaders are competing against dedicated unloaders for a low-index resources.

My modification makes the take() loop persistent so take() will do complete laps around the item list starting from wherever the previous call returned from, never repeating the same item twice in a row unless there is nothing else to return. A significant improvement IMO.

How is this an improvement? With the original behavior, if you converge a bunch of belts on a storage block or launcher, want to unload a few belts of specific resources (ex.: copper, lead, silicon and titanium for surge alloy) and pass everything else including overflows along using non-specific unloaders, you are out of luck when the resources you want are at the top of the list since most of those will get swept away by non-specific unloaders. With the rotating take(), non-specific unloaders are equal-opportunity across all available resources, which gives single-resource unloaders that many more chances to unload more of their resources before non-specific unloaders get to them. It also reduces the rate at which items further down the list that may hardly ever get touched by the existing implementation will race toward the storage block's cap. The even drain across all items will help prevent things like mass driver stalls due to receivers filling up with an excess resource that isn't getting cleared.

It would be even nicer if dedicated unloaders had priority over non-specific ones (non-specific unloaders don't touch resources with dedicated unloaders unless the dedicated unloaders are overflowing), though that would require a rework beyond my current "getting the stupid IDE and tool chains to work" level of familiarity with Java development.

To sum it up: trivial change, big impact for people who like mixing belts and sorting them out with unloaders.

* Update core/src/mindustry/world/modules/ItemModule.java

Co-Authored-By: Patrick 'Quezler' Mounier <Quezler@me.com>

* Update core/src/mindustry/world/modules/ItemModule.java

Co-Authored-By: Patrick 'Quezler' Mounier <Quezler@me.com>

* Formatting

* Anuken's take() rotator.

Co-authored-by: Patrick 'Quezler' Mounier <Quezler@me.com>
2020-02-03 20:27:25 -05:00