Commit Graph

593 Commits

Author SHA1 Message Date
Ivan Pekov
0a19056af0
Drop akarin's stream replacements
Fixes bad performance out of the box for production. 
Apparently there's another issue which is thinkering our minds up, it is that after certain amount of time the gc just can't keep up. We're investigating into this, but until it is fixed - this is gonna be a stable build 

Co-authored-by: Mykyta Komarn <nkomarn@hotmail.com>
2020-10-08 14:04:22 +03:00
Mykyta Komarn
5431509f72 Greatly improve recipe and furnace performance
Remove more fucked up stream conversions. Also use cached recipe in furnaces when possible, and only lookup when absolutely necessary.

On a server with 8.8K furnaces, the average tick rate was ~0.3-1ms higher when furnaces were burning vs idle furnaces, as compared to ~10ms difference in earlier revisions of these patches.
2020-10-06 18:36:00 -07:00
Ivan Pekov
2eaa32ff53
Avoid at least 3 ops when creating aList
Should reduce BehaviorFindPosition load more
2020-10-06 20:04:03 +03:00
Ivan Pekov
407939c26d
Some small fixes here and there
Improved some stream replacements
Fixes GH-243
2020-10-06 18:59:16 +03:00
budgidiere
1f4226774b
remove ci-skip because apparently we just don't have the plugin 2020-10-06 10:35:00 -05:00
budgidiere
929ba7377e
[ci-skip] add ci-skip 2020-10-06 10:29:30 -05:00
budgidiere
9066454960
Clean Workspace If build failure 2020-10-06 10:10:51 -05:00
ishland
c8b5db96a6
Bandaid fix for recursive awaitTasks call 2020-10-06 17:47:23 +03:00
Ivan Pekov
1039afef5d
Advancement optimizations
This drops rainforest's async advancements patch, which was very unsafe, and replaces it with our own optimization patch, which isn't async, but it is enough to lower the pressure upon join.
2020-10-06 17:26:45 +03:00
Mykyta
c8320920b0
Entity tracker optimizations (#232)
* Async entity tracking

This is very basic, and I plan to commit the full entity tracker optimizations in the near future.

* Fix compatibility with Citizens

This also simplifies the patch quite a bit

* Make the patch much more safer

* Current progress

Maybe most of those \"ensureMain\" calls are unnecessary, but it has to be tested.
the only problems now are that entities are teleporting instead of normally moving

* Fix entities "teleporting"

* Fixup some of the diff

* Add some notes

Co-authored-by: Ivan Pekov <ivan@mrivanplays.com>
2020-10-05 22:05:57 -05:00
Mykyta Komarn
2019524096 [CI-SKIP] Change Glue List patch names for licensing 2020-10-05 18:53:27 -07:00
Mykyta Komarn
d62c2f7cca Remove Tic-TACS threading fix from WeightedList patch 2020-10-05 18:24:35 -07:00
Mykyta Komarn
9d72c63586 Remove faulty stream replacements
We had some old, faulty stream replacements in place before, which caused a lot of tick lag compared to just using Mojang's streams in vanilla.

Removing these stream replacements lowered average tick from 12ms w/ 1 player online to 3.5ms with 3 players online.

References and benchmarks:
Performance impact in ms: https://imgur.com/a/yuZs5Il
MSPT comparison: https://imgur.com/a/X4hqZ2P
Old, faulty stream replacement flow: https://imgur.com/a/meSXmaJ
Mojang's vanilla streams flow: https://imgur.com/a/9Yf6yQc
2020-10-05 17:40:09 -07:00
budgidiere
b172cd842f
Remove some old debug messages from scripts (#241)
* Update applyUpstream.sh

* Update importSources.sh
2020-10-05 14:01:29 -05:00
Ivan Pekov
2c55264dba
Ensure pools create daemon threads 2020-10-05 17:53:08 +03:00
Mykyta
93580df5f2
Better appearance to the TPS command
Use Purpur's isLagging() API and combine mspt + nspt into one line.

Pretty sexy.
2020-10-05 13:48:12 +03:00
Ivan Pekov
d12a716ef7
Where did this go?
This is a very important piece of minecraft ticking. How did I miss this? Maybe I need new glasses...
2020-10-04 18:57:55 +03:00
Ivan Pekov
755f429c32
Patch port changes
Dropped some patches from purpur, added 2 patches from purpur.
Readded hopper optimizations from origami.
2020-10-04 18:43:50 +03:00
ishland
82a792e786
Improve task performance (#233)
* Improve task performance

* Yatopia comments

* Remove unnecessary diff

* Rebuild patches

* Fixes

* Polish things up

* Minimize diff and Yatopia comments

* Update PATCHES.md

* Made suggested changes
2020-10-04 10:25:36 -05:00
Ivan Pekov
62a4ea74fd
Your local dumbass did it again 2020-10-04 12:10:31 +03:00
Ivan Pekov
9e9a295053
Updated Upstream and Sidestream(s) (Tuinity/Purpur)
Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
d41103d Updated Upstream (Paper)

Purpur Changes:
4984bb7 Updated Upstream (Paper)
a16a79c Updated Upstream (Paper)
bd83a6b Add predicate to recipe's ExactChoice ingredient (missing NMS side)
d469979 Rebuild patches
802a659 Persistent TileEntity Lore & DisplayName
2020-10-04 12:00:34 +03:00
Mykyta
960b9733e5
[CI-SKIP] Clean up the README (#231)
* Clean up the README

* Update headings and dev build download link

* Minor spelling shit
2020-10-03 12:05:10 -07:00
Ivan Pekov
8a67951956
Updated Upstream and Sidestream(s) (Tuinity/EMC/Purpur)
Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
1d73f6c Updated Upstream (Paper)

EMC Changes:
81f5e1fa Updated Paper
faf92d5c Updated Paper
7e1e4bad Update patch name to reflect what actually is being changed
019ceb9f Update patch name for fishing hook api
647b2063 Separate out a patch for using getType in the ItemStack isSimilar method
38734f9b Updated Paper
ac260ccd Update to 1.16.3
4977edff Updated Paper

Purpur Changes:
debedee Add predicate to recipe's ExactChoice ingredient
2459033 Rebuild patches
17d8ee8 Add option to disable zombies pathfinding to villagers only when lagging
1e25c2f Fix typo/error in a purpur world setting
da9953a Updated Upstream (Paper)
2020-10-03 10:16:41 +03:00
Ivan Pekov
f33511fdd2
Replace asynchronous json list save with json list save timings
so we see if this patch is necessary first. then we will reimplement it properly, as the current patch
is not race condition safe.
2020-10-02 17:54:16 +03:00
Ivan Pekov
d065d41c0e
Drop this unsafe shit
Apparently caused issues we werent aware of.
Unfortunately there's no way to improve it without blocking the main thread.
2020-10-02 17:00:13 +03:00
Ivan Pekov
ef14088415
Don't save advancement and statistic data async
Fixes advancement reset
2020-10-02 14:45:30 +03:00
Ivan Pekov
25423541d6
Updated Upstream and Sidestream(s) (Tuinity)
Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
8ba1bab Updated Upstream (Paper)
2020-10-02 14:23:32 +03:00
Ivan Pekov
e7043ccbff
Replace ArrayList and LinkedList usage in our code with GlueList
Some stuff wouldn't be _that_ heavy with this change.
Is not a very big deal, but it provides extra performance.
2020-10-02 14:05:15 +03:00
Mykyta Komarn
f18a93c223 Remove EMC hopper optimization
This was causing hoppers to only attempt to suck in items every second. Needless to say, this broke vanilla hopper behavior.

I'll be bringing some better hopper optimizations in the near future.
2020-10-01 18:24:51 -07:00
Ivan Pekov
e14836e8ea
Drop lithium noise patches & voronoi
Fixes #226

All these were doing some kind of weirdness to the chunk generation, thats why they were dropped.
Unfortunately this will decrease performance, but bugs is our priority before speed.
2020-10-01 19:51:56 +03:00
budgidiere
576ab42b68
Heavily optimize recipe lookups in CraftingManager
Author is @nkomarn .
2020-10-01 17:52:27 +03:00
Ivan Pekov
5b37c44801
Updated Upstream and Sidestream(s) (Tuinity/Origami/Purpur)
Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
ac6b72e Updated Upstream (Paper)

Origami Changes:
b69a015 Fix pre spawn event shouldAbortSpawn not working correctly for golems

Purpur Changes:
8dfb30b Updated Upstream (Paper & Tuinity)
2020-10-01 14:30:11 +03:00
Ivan Pekov
2b10346ecf
Keep compatibility with ProtocolLib
Closes #225
2020-10-01 14:13:08 +03:00
Mykyta Komarn
0b9ce71ab6 Use FastUtil maps for fuel cache 2020-09-30 18:12:52 -07:00
Mykyta Komarn
78611f3653 Add GlueList
This is the fastest List implementation I could find. We will be using this heavily.
2020-09-30 18:06:10 -07:00
budgidiere
06ddd02263
Fix some Licencing stuff 2020-09-30 17:15:20 -05:00
budgidiere
320c8d8bf8
Update 0054-lithium-NoiseChunkGeneratorMixin.patch 2020-09-30 14:00:48 -05:00
budgidiere
7e465bead3
change height (#223) 2020-09-30 13:40:22 -05:00
budgidiere
221df32839
[ci-skip] use new logo 2020-09-30 13:35:46 -05:00
budgidiere
fd80ca40f3
[ci-skip] add logo 2020-09-30 13:35:09 -05:00
budgidiere
611b6ca461
Update PATCHES.md 2020-09-30 11:20:15 -05:00
budgidiere
2385dcb2b1
Update 0064-Configurable-flight-checks.patch 2020-09-30 11:19:16 -05:00
Ivan Pekov
db58abea26
Add nspt command
Also add configurable flight checks, and removed a unused method in BlockPosition
2020-09-30 18:35:35 +03:00
Ivan Pekov
239a43721f
Hey Ivan, why did u forgot to check for .rej files?
This manouver is gonna cost us 50 years.
2020-09-30 16:41:33 +03:00
Ivan Pekov
ef03360a82
Updated Upstream and Sidestream(s) (Tuinity)
Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
8d982c4 Updated Upstream (Paper)
2c7bad9 Merge branch 'master' of https://github.com/Spottedleaf/Tuinity into ver/1.16.3
88a2c88 Revert usage of region manager
08581cf More validation
2020-09-30 16:32:49 +03:00
budgidiere
e657ed2051
Update and rename 0060-Tic-Tacs-Threading-Fix.patch to 0060-tic-tacs-Threading-Fix.patch 2020-09-29 22:46:48 -05:00
budgidiere
81b19e0698
Update LICENSE.md 2020-09-29 22:46:09 -05:00
budgidiere
5fb0a9723d
Update README.md 2020-09-29 22:45:14 -05:00
budgidiere
9047fcc9d4
Dev/fast suffocation check (#222)
* Use faster block collision check for entity suffocation check

Improves the speed of checks by ~3,000ns per entity on average.

* Add alternative constructor for suffocation check

This fixes entities falling through non-full blocks, such as slabs or hoppers.

* add patches.md

Co-authored-by: Mykyta Komarn <nkomarn@hotmail.com>
2020-09-29 20:47:34 -05:00
budgidiere
3e6b1799a2
Fixes #202 (#220) (#221)
Co-authored-by: Mykyta <nkomarn@hotmail.com>
2020-09-29 16:54:47 -05:00