Custom skulls are now implemented within the world when placed as a block. This is achieved by placing a fake player entity in the same spot.
Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
Co-authored-by: bundabrg <brendan@grieve.com.au>
Co-authored-by: bundabrg <bundabrg@grieve.com.au>
Co-authored-by: Camotoy <20743703+DoctorMacc@users.noreply.github.com>
Leave the window open so the user understands there is an error.
This also changes the exit code to 1 when exiting without a GUI since we have an error.
Movement is now significant better, especially on slabs, stairs, and other half-blocks.
Co-authored-by: RednedEpic <redned235@gmail.com>
Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
Co-authored-by: Tim203 <mctim203@gmail.com>
Co-authored-by: Camotoy <20743703+DoctorMacc@users.noreply.github.com>
* Fix regressions from 1.16.100
- Update mappings to fix recipe regressions and item differences
- Villager trading NBT now prefers the String identifier and not the integer ID
* Fix lodestone compass breaking
* Initial work on 1.16.100 - currently crashes the client
* Update runtime item states
* Use new Bedrock runtime IDs
Bedrock now hardcodes block runtime IDs in alphabetical order of the identifiers. This commit updates Geyser to accomodate.
- Remove runtime_block_states.dat and replace it with blockpalette.nbt
- Calculate the block runtime ID based on the order of the block palette
- Separate BlockTranslator.AIR into Bedrock and Java values
- Update the second layer of chunks to use air when not waterlogged
- Don't send item palette for now, as that's what crashes the game (will look into for v415)
- Other misc. changes
* Improve second layer chunk translation
* v415 support
- Add a message warning people they are on a beta version of Geyser
* Update to protocol v417
There are still some mappings changes that need to be gone through.
* Update runtime item states and clean up item frames
* Future-proof enchanment table
* Update for v418
* Update to v419
* Apply proper air ID to waterlogged chunk layer
* Fix missing import
* Remove beta warning
* Update mappings
* Manually patch runtime_item_states and send the ITEMS registry
* Update README
* Disable grindstone and smithing inventories (since they're broken)
* Use artifactory jenkins plugin (#1548)
* Use artifactory jenkins plugin
* Bump version to 1.2.0-SNAPSHOT
Co-authored-by: SupremeMortal <6178101+SupremeMortal@users.noreply.github.com>
* Rewrite message handling in MessageUtils to use Adventure
* Move to static Adventure commit to fix a bug
* Initial test implementation
* Add RGB downgrade test
* Move MessageUtils and rename
* Clean-up and fix tests
* Fixed sign and book content handling
* Fix blank signs causing NPEs
* Fix reset before message being stripped
* Add comment about the reset character
* Fix legacy style server motds
* Fix more messages being handled wrong
* Fix title packets being handled wrong
* Fix trailing formatting characters on the end of sign lines
* Add auto updating of Java locale files
* Add en_us locale updating and hash caching
* Changes to hash determining
Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
* Fix GlobalPalette translation
Global palettes don't have their own internal palette, which cannot be iterated through to create a Bedrock palette. Therefore we simply iterate over the whole palette one time. This commit also fixes a regression with flowers/pistons being on multiple chunk sections.
* Don't declare bedrockPalette until after global palette check
* Add more interactive tags (mobile buttons)
This expands our support for showing the interactive tags on touchscreen and console setups. This is not complete - specifically, the food compatibility of creatures needs to be expanded upon (I will work on this later and does not stop this PR from being mergable). This also includes:
- Creepers who are ignited with flint and steel now show up properly
- Zombie villagers now shake properly when converting and show their region outfits
* Add more food choices and add more panda entity metadata
* Re-add eating flag
* Remove debug line
* Refactor dimension usage, finish interactive tag usage, bees
* Print statements... ._.
* Don't make eating item packet data a non-constant
* Move BAMBOO to ItemRegistry
* Add missing break
* Make changes
* Minor final changes
* Fix even more entity metadata flags
* Add comment explaining magic value
* Fix horse flags and add more information
* Add more information about the Horse eating particles
* Fix crash with GSit lay and use Java bed position data
* Fix GSit's lay position
* Move Bed Position metadata to the right class
* Actually fix lay for PosePlugin
* Revert "Actually fix lay for PosePlugin"
This reverts commit 3f21261162.
Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
* Fixes some issues related to Scoreboard Teams
* The cached Score info should update no matter what kind of update the Team got.
* Team entities specified at the create Team packet should also be checked if they exist as Score in the registered Objectives
* Rewrote some Scoreboard code and fixed various issues
* Minor formatting changes
* Add config option for enabling achievements
* Disabled achievements by default and added warning about commands being disabled
* Update config.yml
* Rename achievements-enabled to xbox-achievements-enabled for clarity
Co-authored-by: Camotoy <20743703+DoctorMacc@users.noreply.github.com>
* Fireball and ghast improvements
- Ghasts now visually show if they're charging a fireball
- Fireballs are now vastly better and will update better
* Add gravity and drag to projectiles
* Add check for session close and improve fireball
* Remove motion stuff from fireball
* Make fireball hittable
* Add wither skull entity
* Small changes
* Add note about laggy fireballs
Co-authored-by: David Choo <davchoo3@gmail.com>
* BlockEntity performance improvements
* Use chunk cache if possible for block caching
* Get new block state from ViaVersion if block entity
* Add Javadoc for FlowerPotBlockEntityTranslator.isFlowerBlock
* Remove debug line
* Don't add all RequiresBlockState instances if cache chunks is enabled
* Double chest map get optimization
* Last changes
Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
* Fix bell sound and visuals
The bell sound now correctly plays.
Bells will also visually ring when rung by another player.
* Compress elses
* Add more whitespace to new code
* Send position update every 3 seconds if idle
Prevents timeouts in certain instances when AFK.
* Cancel position sending on dimension switching
* Remove debug lines
* Create function to centralize movement translation
* 1.16.4-pre1 support
* Update to support ViaVersion 3.2.0 (#1358)
* Update to support ViaVersion 3.2.0
This commit updates ViaVersion integration to support their recent mappings changes.
Co-authored-by: Nassim <jahnke.nassim@gmail.com>
* Send adventure settings on gamemode change after gamemode swap
* Update Velocity to 1.1.0 proper
* Update to 1.16.4
Co-authored-by: Nassim <jahnke.nassim@gmail.com>
* Add support for more recipes
- Tool repairing
- Book cloning
- Suspicious stew
- Tipped arrows
What still needs to be done:
- Map cloning/extending (though there may be item mapping mismatch getting in the way)
- Banner duplication (couldn't figure this out)
* Add some more spacing
* Explain recipe UUIDs
* Create and position Ender Dragon Bounding Box
Currently allows the player to "kill aura" target
the ender dragon.
* Use an entity to handle attacks for each hitbox
* Use the proper flag to make entities invisible
* Clean up and add some comments
* Ender dragon entity metadata improvements
* Add doc to segment functions
* Add changes
Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
* Introduce CommandSender.getLocale()
This allows Geyser-specific commands (e.g. `/geyser help`) to be displayed in the (Java or Bedrock) player's default language, which stops those commands from simply being displayed in the default locale.
* Tweak Javadoc
* Set CommandManager's GeyserConnector to final
* Clean up