Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update feature/forge branch to 1.20.4, target neoforge #4396

Conversation

onebeastchris
Copy link
Member

@onebeastchris onebeastchris commented Jan 16, 2024

This would update the forge branch so it's up to date.

Current issues left:

  • the per platform executor seems to no longer be needed - removed
  • the modinjector currently prevents geyser from shutting down (both on fabric and neoforge); disabling the injection fixes it
    Found the issue: The "fake connection" that is sent out once for some reason prohibits it. For now, i've just commented that out
  • the runServer tasks for neo and fabric are broken - not going to fix, since this would require a bigger restructure

Opening as a PR instead of pushing directly as I'm unsure whether we actually want to target NeoForge.

onebeastchris and others added 30 commits November 21, 2023 23:31
* Start on 1.20.50

* Add 1.20.50 block_palette.1_20_50.nbt, creative_items.1_20_50.json and runtime_item_states.1_20_50.json

* fix stone and planks mappings

* add and do something with the new SetPlayerInventoryOptionsPacket

* Add readme version bump

* Cleanup/Explain the new BedrockSetPlayerInventoryOptionsTranslator
… have a message (GeyserMC#4306)

* Don't send an awkward "null" when a cause doesn't have a message

* Fix accidental regression leading to unhandled "CraftingEventPackets"
* Ensure that a custom text display entity name doesn't show up - it doesn't show on Java, and if we show it, the text display contents aren't shown.

* Update core/src/main/java/org/geysermc/geyser/entity/type/TextDisplayEntity.java

Co-authored-by: Konicai <[email protected]>

---------

Co-authored-by: Konicai <[email protected]>
* Re-implement subchunk v9 with proper index

Signed-off-by: Joshua Castle <[email protected]>

* typo in comment

---------

Signed-off-by: Joshua Castle <[email protected]>
* Clear mob spawners if the Java server so requests

* Empty spawners by replacing the spawner block with a new one instead of adding an invalid identifier to them.
Unfortunately, sending one UpdateBlockPacket that replaces the spawner does not work, we need to set the spawner to air first. Cool. But at least we don't summon particles for all empty spawners now

* store position vector (address review by @Konicai)

* remove empty line
We only need to use recipe tags when there is more than one possible ingredient option. For example, before this, we applied a logs item tag to the planks recipe, which caused an issue with plank type suggestions. (GeyserMC#4321)
* Added onlineMode, platformName, and Minecraft version to dump - renames platformVersion to loaderVersion since that is more fitting to modded structure

* rename loaderVersion back to platformVersion

* address review by @Konicai

* Fix geyser dump creation (regression from the syntax/annotation PR)
…rMC#2523)

* Update config.yml
I will in no way be offended if this is not merged. Essentially, it makes Geyser slightly more configured at the start for plugin versions by forwarding more information about the server to Bedrock players.

* remove unused

---------

Co-authored-by: onebeastchris <[email protected]>
* Fix collision problem,the wide for bedrock is 0.5 but for java is 0.5625 when only one side connect.

* Fixed an issue where the collision box was abnormal at the corner when two sides of the glass panel were connected.

* Merge similar methods, adjust code.

* More lenient judgment; reduce redundant code to avoid repeated calls.
…C#4331)

* Catch unknownhostexception to avoid network errors when using legacy ping passthrough

* Catch UnknownHostException separately, log a warning but no stacktrace
- Port out of bounds checking
- Proper encoding of ip's to check
- Don't assume "cache" response is nonnull; it is null when there's an error
- Send users the error message that we get when server is unreachable
* Add support for loading locale overwrites. Any lang files in this new folder will be appended to the main lang file when loaded.
* A locale will no longer attempt to be downloaded and loaded if it already is loaded. Previously a lang file was reloaded everytime a player joins.
* Switch some io bits to nio
* formatting fixes
* Update core/src/main/java/org/geysermc/geyser/text/MinecraftLocale.java
* Rename isLocalLoaded to isLocaleLoaded
* Rename overwrites to overrides
* Catch separate exceptions when parsing locale file. Similar to previous implementation
* Add //no-op to try/catch
* Apply suggestions to fix issues that might arise with the Norwegian locale
* Properly resolve override locale path for nb_no
* Yeet temporary fix - addresses @Camotoy's review
* Catch IOException properly

---------
Co-authored-by: onebeastchris <[email protected]>
* Change fabric version

* Update java version

* Update Bedrock version also
Konicai and others added 20 commits December 14, 2023 21:31
…C#4355)

* Test for outdated netty to avoid GeyserMC#3814

* capitalization

* bad spigot, go paper
* bump cloudburst's netty-transport-raknet

* bump cloudburst protocol/codec/connection bump
bump netty due CVE-2022-41881

Changes in cloudburst libs:
- uses netty 4.1.101.Final
- bumps netty-transport-raknet which fixes CloudburstMC/Network#36, an issue where some connection attempts did not work
…tform

# Conflicts:
#	bootstrap/mod/src/main/java/org/geysermc/geyser/platform/mod/GeyserModBootstrap.java
#	bootstrap/mod/src/main/java/org/geysermc/geyser/platform/mod/command/GeyserModCommandExecutor.java
#	bootstrap/mod/src/main/java/org/geysermc/geyser/platform/mod/mixin/client/IntegratedServerMixin.java
#	bootstrap/mod/src/main/java/org/geysermc/geyser/platform/mod/world/GeyserModWorldManager.java
#	build-logic/src/main/kotlin/geyser.modded-conventions.gradle.kts
#	gradle/libs.versions.toml
Signed-off-by: Joshua Castle <[email protected]>
Signed-off-by: Joshua Castle <[email protected]>
* lookup players by uuid instead of name

* Fix: look up Players by UUID for permissions, dont throw if a player can't be found (e.g. disconnected)

* use api method
* fix: protocol being null during online mode login

* gimme more space

* add debug logging for too early downstream packet sending
* Fix mixins on neoforge
* Update build/pr file names
* Update mods.toml to new neoforge standard
* Fix refmap naming
- no need to include gson
- cleanup nullable/nonnull annotations
- add more info to geyser dumps on neoforge
…eature/forge-platform

# Conflicts:
#	build.gradle.kts
@onebeastchris onebeastchris added PR: Feature When a PR implements a new feature Work in Progress The issue is currently being worked on. labels Jan 17, 2024
@onebeastchris onebeastchris merged commit bb76158 into GeyserMC:feature/forge-platform Jan 21, 2024
1 check passed
@onebeastchris onebeastchris deleted the feature/forge-platform branch March 7, 2024 12:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: Feature When a PR implements a new feature Work in Progress The issue is currently being worked on.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants