Commit Graph

6040 Commits

Author SHA1 Message Date
Patrick 'Quezler' Mounier
8bb533f646
3rd times the charm (#1509) 2020-02-05 13:06:16 -05:00
Anuken
67106abb9b Updated arc 2020-02-03 20:30:18 -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
Patrick 'Quezler' Mounier
627321304d
zzzz (#1503) 2020-02-03 15:55:53 -05:00
Arkanic
d2c2fd7d5f
aaaa (#1502) 2020-02-03 14:44:54 -05:00
GioIacca9
b4be655d0c
Translated stat.playtime (#1485) 2020-02-03 12:54:06 -05:00
LauweJoster
19da1e1306
Update bundle_nl.properties (#1499)
Improved some grammar and sentencing. Also added a few translations.
2020-02-03 12:37:28 -05:00
Patrick 'Quezler' Mounier
9bc24ae47a
Darken yellow square on nucleus core (#1497)
#1496
2020-02-03 08:51:19 -05:00
Anuken
ad84329688 Abstract component method support 2020-02-02 17:21:35 -05:00
Anuken
ae6d33cad1 Bugfixes 2020-02-02 16:44:51 -05:00
Anuken
ad9dd83032 Better entity code generation + minor refactoring 2020-02-02 16:13:25 -05:00
Anuken
382ca09f6e Merge branches 'master' and 'splinterface' of https://github.com/Anuken/Mindustry 2020-02-02 13:59:41 -05:00
Anuken
c978410cb3 Scale cleanup / Name cleanup 2020-02-02 13:59:24 -05:00
Anuken
5eb3f0f3de Interface + base component support 2020-02-02 12:25:46 -05:00
Anuken
acb3438cc8 More entity processor features 2020-02-02 11:51:58 -05:00
Patrick 'Quezler' Mounier
4c369dd17c
Hide drop zone warning if you're part of the wave team (#1492) 2020-02-02 10:41:09 -05:00
Anuken
7ddfcbfabd Utility method copying 2020-02-02 00:39:29 -05:00
Anuken
da2aee7d31 Entity components based on code generation - experiment 2020-02-01 23:54:41 -05:00
Anuken
9f20ff151c Shortened annotation processors 2020-02-01 17:27:24 -05:00
Anuken
5f7fc3441c Merge remote-tracking branch 'origin/master' 2020-02-01 17:17:08 -05:00
Anuken
62179233ef Bugfixes 2020-02-01 17:17:03 -05:00
fuzzbuck
376e3d6ef1
Add mindustry.io to servers.json (#1467)
- huge community (~1.5k members)
- anti-grief measures (discord bot <-> in-game moderation)
- huge map pool (50+)
- stable, powerful server based in europe
2020-02-01 17:14:06 -05:00
Anuken
eabebcefc7 Disabled data folder button due to terrible file manager support 2020-01-31 23:09:21 -05:00
Anuken
63d84bead3 Cleanup 2020-01-31 20:10:21 -05:00
Anuken
51b4824c92 Fixed #1484 2020-01-31 11:07:25 -05:00
Anuken
2721aa550d Implemented #1444 2020-01-30 22:56:17 -05:00
Anuken
f92b91c17b Switched to arc bloom 2020-01-30 17:50:35 -05:00
Anuken
221b28c153 Merge remote-tracking branch 'origin/master' 2020-01-30 17:43:48 -05:00
Anuken
7c2541afa2 Fixed bloom black screen on iOS/Android 2020-01-30 17:43:36 -05:00
Vam-Jam
36782a2454
[Fix] lastMessage doesnt change if prevented by antispam (#1471)
Fixes issue #1470
2020-01-29 11:32:41 -05:00
Anuken
97cfc33abb Merge remote-tracking branch 'origin/master' 2020-01-28 13:44:13 -05:00
Anuken
867a642859 Fixed #1460 2020-01-28 13:44:06 -05:00
Anuken
d99cad8793
Update SERVERLIST.md 2020-01-28 13:28:34 -05:00
kf-games
2a11f65e10 Add server MINDUSTRY.RU (#1463)
Add server MINDUSTRY.RU
Server 24/7 Online
380+ Maps
Have a motd
There are moderators
Server in uninterrupted operation since October 2019
2020-01-28 13:05:55 -05:00
Anuken
89e1c5afc0 Conveyor tweaks 2020-01-28 00:21:05 -05:00
Anuken
a2933e030a More severe votekick 2020-01-27 15:43:17 -05:00
Anuken
d21c47a582 Merge remote-tracking branch 'origin/master' 2020-01-27 13:15:15 -05:00
Anuken
5ad0193a86 Fixed reduced conveyor edge throughput 2020-01-27 13:15:12 -05:00
MWestfall
881eca636d Update servers.json (#1457) 2020-01-27 12:55:18 -05:00
Daniel Jennings
d849a3a87f Adding Steam Rich Presence support. (#1453)
* Steam Rich Presence support. I opted to put this code inside of
DesktopLauncher.java instead of SNet.java because it heavily overlaps
with the work the DiscordRPC code was already doing.

Testing wasn't easy because I had to figure out how the Steam version
actually runs normally, but it was straightforward once I figured out
what version information to slam into the JAR and fixed 'desktop:steamtest' to work locally with my paths.

Because of how Steam currently expects SetRichPresence to be used, I had
to upload to the Steam partner site a trivial Rich Presence loc token
called 'steam_status_raw' that just gets entirely substituted for the
'steam_status' RP token string. I didn't expect that I'd need to do
anything for localization support (and instead just let it use English
for everyone like Discord) but apparently Steam isn't happy if you
directly set 'steam_display' to a raw string (but I'm going to look at
that when I'm back at work because I don't know that we need that
requirement.)

* Whoops, left this in there from debugging the Steam connection.

* Fixing coding style, and also triggering another CI build
2020-01-27 12:17:52 -05:00
Anuken
5ebc04ab29
Update SERVERLIST.md 2020-01-27 11:59:17 -05:00
Anuken
379f860a6b Merge remote-tracking branch 'origin/master' 2020-01-27 11:01:57 -05:00
Anuken
65211a6021 Fixed #1447 2020-01-27 11:01:48 -05:00
Anuken
9395fa99be
Create SERVERLIST.md 2020-01-27 10:50:08 -05:00
Anuken
b7e1adb8b1 Fixed 103 network compatibility 2020-01-27 10:19:18 -05:00
Anuken
b9e8694e68 Added synced server label + effect methods 2020-01-27 00:25:32 -05:00
Anuken
cd1ed97e52 Merge branch 'master' of https://github.com/Anuken/Mindustry 2020-01-27 00:11:24 -05:00
Anuken
a61234d21e Minor tweaks 2020-01-26 21:50:55 -05:00
키에르
9499b9dfaf Add custom text on screen (#1448) 2020-01-26 17:56:11 -05:00
Anuken
9baaacc8ac Crash fix 2020-01-26 16:55:24 -05:00