Git Product home page Git Product logo

oraxen / oraxen Goto Github PK

View Code? Open in Web Editor NEW
552.0 10.0 255.0 24.75 MB

Oraxen is a minecraft plugin that allows to easily use Minecraft 1.14 features in order to create new items with custom textures. It handles the resourcepack generation, upload (using Polymath) and has an extensible API.

Home Page: https://docs.oraxen.com/

License: Other

Java 100.00%
minecraft spigot minecraft-plugin spigot-plugin java

oraxen's Introduction


oraxen.com logo

☄️ Source code of the Oraxen spigot plugin, made with love in Java.

spigot

What is it?

Oraxen is a minecraft plugin that allows you to modify the game by adding new items, weapons, blocks, and more. One of its key features is to be able to generate the texture pack automatically from the configuration, which greatly simplifies the work of administrators. It also includes an extensive API which can be used by developers to be able to increase oraxen features.

Features

  • Automatically generate the resource-pack
  • Automatically upload the resource-pack
  • Automatically send the resource-pack to your players
  • Allow to create new items in a few lines of configuration
  • Support custom items, weapons, armors, blocks, and more
  • Modular mechanics system to empower your items
  • Automatically update configurations when you update the plugin
  • Handle configuration errors

Contributing

If you want to contribute to Oraxen, you can do so by creating a pull request.
You should make a pull-request to the develop branch.\

  1. Fork Oraxen on GitHub
  2. Clone your forked repository (git clone)
  3. Create your feature branch (git checkout -b my-feature)
  4. Commit your changes (git commit -am 'Add my feature')
  5. Push to the branch (git push origin my-feature)
  6. Create a new Pull Request to the develop branch
  7. Wait for your pull request to be reviewed and merged
  8. Celebrate your contribution!

API

Oraxen's API is primarily found in these four classes:

  • OraxenItems - methods related to Oraxen items
  • OraxenBlocks - methods related to custom blocks in Oraxen
  • OraxenFurniture - methods related to custom furniture in Oraxen
  • OraxenPack - methods related to the resource-pack

Repository

Gradle Kotlin:

maven("https://repo.oraxen.com/releases")

Groovy:

maven {
    url "https://repo.oraxen.com/releases"
}

Maven

<repository>
  <id>oraxen</id>
  <name>Oraxen Repository</name>
  <url>https://repo.oraxen.com/releases</url>
</repository>

Dependency version version

The latest version can be found at above.
Gradle Kotlin:

compileOnly("io.th0rgal:oraxen:VERSION")

Groovy:

compileOnly 'io.th0rgal:oraxen:VERSION'

Maven

Maven with exclusions
<dependency>
    <groupId>io.th0rgal</groupId>
    <artifactId>oraxen</artifactId>
    <version>1.167.0</version>
    <exclusions>
        <exclusion>
            <groupId>me.gabytm.util</groupId>
            <artifactId>actions-spigot</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.jetbrains</groupId>
            <artifactId>annotations</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.ticxo</groupId>
            <artifactId>PlayerAnimator</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.github.stefvanschie.inventoryframework</groupId>
            <artifactId>IF</artifactId>
        </exclusion>
        <exclusion>
            <groupId>io.th0rgal</groupId>
            <artifactId>protectionlib</artifactId>
        </exclusion>
        <exclusion>
            <groupId>dev.triumphteam</groupId>
            <artifactId>triumph-gui</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.bstats</groupId>
            <artifactId>bstats-bukkit</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.jeff-media</groupId>
            <artifactId>custom-block-data</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.jeff-media</groupId>
            <artifactId>persistent-data-serializer</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.jeff_media</groupId>
            <artifactId>MorePersistentDataTypes</artifactId>
        </exclusion>
        <exclusion>
            <groupId>gs.mclo</groupId>
            <artifactId>java</artifactId>
        </exclusion>
    </exclusions>
    <scope>provided</scope>
</dependency>
Snapshot builds are also available at [https://repo.oraxen.com/snapshots](https://repo.oraxen.com/snapshots). \

License

Click here to read the entire license.

Oraxen is a paid plugin, to use it you must purchase a license on spigotmc.org, nevertheless I will not try to prevent you from downloading the source code and rebuilding it, as long as you do not distribute it ( whether it is modified or intact and compiled or whether it is the source code, partial or complete). Public forks are allowed as long as you comply with the license (in order to propose a pull request). Buying a license will not only save you time, I will do my best to help you if you have any concerns and it will show me that you appreciate my work.

oraxen's People

Contributors

antoinejt avatar arubiku avatar boy0000 avatar brettsaunders21 avatar clementinise avatar dependabot[bot] avatar emibergo02 avatar euphillya avatar fishiat avatar igabytm avatar johnsonran avatar karlatemp avatar kiryu144 avatar lauriichan avatar lucian929 avatar mowstyl avatar mryoup avatar nelonn avatar nklyshko avatar playajames419 avatar pustinek avatar rafael5gr2 avatar sty13 avatar th0rgal avatar thedeadsnake avatar vergilprime avatar willfp avatar xiao-momi avatar youhavetrouble avatar yzl210 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

oraxen's Issues

Repairing Oraxen items with anvil doesn't work

I have an custom item with 1521 durability, when i use it, it reduces its durability as expected.

But when i repair from 823 to 1521 again, and use it it brings back to 821 minus the durability loss during item use.

Items with hat mechanic enable can be duped

Greetings here is how to reproduce the issue:

  1. Get the item with hat mechanic enabled
  2. Put the item as offhand
  3. Right click while having on your offhand (While having your main hand empty)
  4. Now you have two, one on your chest and another on your head

Some ideas I had

1: would it be possible to add vehicles to oraxen? I don't know how viable that would be, but I think it would be a fun addition.

2: compatibility with the customcrafting plugin (https://www.spigotmc.org/resources/customcrafting-advanced-custom-recipe-plugin-1-15-1-17-free.55883/) would be nice, I personally prefer it to the oraxen recipe system, as it provides much more options, and I think it would be nice if it would be able to recognize oraxen furniture and blocks in the custom item maker, to make custom 4x4+ crafting table with custom textures and more

3: compatibility with the plugin "PlayerParticles" (https://www.spigotmc.org/resources/playerparticles.40261/) which adds a ton of different types for particles, like "wings", "sphere", etc.

4: worldedit/fastasyncwordedit compatibility would be a nice addition, it's not as important, but would be useful for building with custom blocks

one small-ish suggestion, and two rather long suggestions




1: custom liquids, there is another plugin called itemsadder that can accomplish this, however it uses custom biome colors, and can only tint the default water texture, it's also incredibly buggy. I'm not sure whether or not it would be possible with core shaders, but that would be awesome, and would also allow for custom liquid properties as well most likely.

example liquid config:
custom_liquid:
displayname: "Honey"
Stickiness: (a value to define how much the liquid slows the player's movement, defaults to 0, which is equivalent to water)
damage: (how much damage it does to the player)
fire: (true/false, whether or not it sets the player on fire)
effects: (effects that it gives to the player, effects are listed in the format EFFECT_NAME|EFFECT_POTENCY|EFFECT_TIME|true/false (the true/false is whether to hide particles or not)
drowning: true/false (can the player drown in it?)
sponge: true/false (can sponges soak it up?)
burns_blocks: true/false (can it burn blocks?)




2: More technology-themed mechanics, like maybe pipe/storage-related mechanics along with a basic energy system for items and blocks

example energy system/type config (this would allow you to design a custom energy system, which could be optionally compatible/interchangable with other systems):
energy_type:
displayname: "example energy"
exchange_rates:
other_energy_system: %amount%=%other_system_amount%
other_energy_system: 1=3.5 (1 of energy_type would be equal to 3.5 of other_energy_system)

example pipe-block config:
basic_pipe:
displayname: "basic pipe"
material: DIAMOND
type: pipe
can_transfer: energy_type/Fluid_type/items
speed: (speed of how fast it transfers what it transfers)
limit: (how much it can transfer at once)

example battery item:
small_battery:
displayname: "small battery"
material: %material%
type: battery
energy: energy_type
storage: (how much energy it can store)
clickable: true/false (can insta-charge items by clicking on them with the battery)

example energy storage block config:
energy_storage:
displayname: "energy storage"
material: DIAMOND
type: energy_storage
multiblock: false
stores: energy_type
input_speed: (how fast it can input energy)
output_speed: (how fast it can output energy)
limit: (how much it can store)

example energy charger block config:
energy_charger:
displayname: "charger"
material: DIAMOND
type: charger
multiblock: false
energy: energy_type
charger_speed: (how fast it can charge items)
output_speed: (how fast it can output energy)
slots: (how many items it can charge at once)

example energy generation block config:
energy_generation:
displayname: "energy generation"
material: DIAMOND
type: energy_generation
multiblock: false
stores: energy_type
generation_speed: (how fast it can generate energy)
output_speed: (how fast it can output energy)
limit: (how much it can store)
fuel: (what it uses for fuel, can also be ambient_air, ambient_underwater, ambient_lava, ambient_custom. can have multiple)
worlds: %worldname%, %worldname% (defines what worlds it works in)
y_level: -7+ (works at y=-7 and above) / 9- (works at y=9 and below)
biomes: (defines biomes, same format as worlds for adding multiple)
custom: (only works when fuel is set to ambient_custom, defines a custom oraxen block/liquid(s))

example multi block config section:
multiblock: true

Multiblock_layout:
Block definitions:
O=obsidian
C=oraxen:cave_block
R=oraxen:reactor
I=oraxen:energy_input
T=oraxen:energy_output
Layer_1:
O C O
C O C
O C O
Layer_2:
O C O
I R T
O C O
Layer_3:
O C O
C O C
O C O

example energy powered item config section (this segment could be added to any item/armor and could replace durability, as well as using energy to use custom mechanics, like summoning lightning, or if armor let you fly, it could use up energy during it):

Energy: true
energy_type: %energy_system_name% (can have multiple)
capacity: (how much energy it can store)
replaces_durability: true/false (if it uses charge instead of durability)
breaks: true/false (whether or not it breaks when it runs out of energy, if it doesn't, it can be fixed by charging it.)
energy_mechanics:
mechanic_name: (amount of energy used each time/per second if it's an ambient effect)

creative option example: (this could be added to any energy_based item, generator, charger, storage block, etc., and would set it so it would constantly have full energy, which would be useful for creative builds)

creative_energy: true/false




3: Vehicles, but this time with a more in-depth explanation for how it could work along with default config examples


how vehicles could be designed:
Oraxen could use compatibility with modelengine, using the same system that modelengine uses to import custom mobs. This would allow to easily design vehicles with custom models, textures, hitboxes, seat positions, and even animations, (also heads if you wanted to add mechs or something) and Oraxen could then handle vehicle mechanics, effects, movement, etc. vehicles could be craftable, and would be placeable using an in-game item. you would also use right-click to board the vehicle, shift-right-click to open the fuel menu, and open your inventory while riding the vehicle to access the vehicle's inventory. since vehicles would have configurable health, you would collect the vehicle by using a custom tool item, maybe a "vehicle wrench", which would save the vehicles data, and drop it as an item. Also it could use the modelengine API to allow for multiple seats, each with different functions. (anything starting with "seat" would become a seat, but seats with special functions would use different names, so seat_driver would drive the vehicle, seat_turret could operate a turret on the vehicle, and anything else starting with "seat" would only allow you to sit)

controls:
W, A, S, and D controls are normal, space makes you move upwards, right/left click is used for custom mechanics, shift is dismount, and the sprint key can be used to make the vehicle move downwards (submarines, drills, flying vehicles)

example default vehicle types:

Boat: only works on liquids, what liquids it works on are configurable

submarine: works on and underneath liquids, liquid list is also configurable

land: works on land, if modelengine is used this could easily cover a very wide range of land vehicles, possibly all due to configurable seats, hitbox sizes, etc.

sky_momentum: needs momentum to take off (a runway), and cannot hover

sky_basic: can take off vertically, hover, etc.

void: essentially just like sky_basic, but hovers in place even after exiting the vehicle, perfect for travel through the end and custom dimensions with a void

still: a vehicle that does not move, perfect for easily controllable turrets, cannons, etc.

automated_still: does not require player interaction to do it's task, player interaction is only needed to define tasks

automated_sky: does not require player interaction to do it's task, player interaction is only needed to define tasks, uses the void type (can take coordinates/player names/entity whitelists/blacklists and can be used with the "Homing" subtype)

automated_still: does not require player interaction to do it's task, player interaction is only needed to define tasks

default subtypes (easy ways to implement advanced features):

interactive: can interact with blocks near it (drills, automated pathway construction, etc.)

homing: is given a target using coords, player name, entity white/blacklists, etc. and automatically goes to that location to perform it's task (detonation, attacking, message delivery, etc.)

example basic vehicle config:

drill:
displayname: "drill"
material: DIAMOND
type: land
subtypes: interactive
fuel: (uses a fuel type, or an energy type, energy/fuel will take any item that stores the needed fuel/energy type, like batteries, fuel tanks, fuel cells, etc. it can use multiple types)
speed: (how fast it can go)
capacity: (how much fuel/energy storage it has)
health: (how much health it has)
inventory: (how much it can store)
break_liquids: (a list of vanilla and/or custom liquids that will break the vehicle into an item upon contact)
interaction_blacklist: (a list of blocks that a vehicle with the subtype "interactive" cannot break)
interactive_mechanic: (would use some sort of format to describe how the vehicle interacts with the blocks in front of/under it, if it collects the blocks it mines, and if it places blocks to auto-build roads, minecart tracks, etc. (it must have the needed blocks in it's inventory)

example fuelsystem/type config (this would allow you to design a custom fuel system, which could be optionally compatible/interchangable with other systems):
diesel:
displayname: "&diesel"
exchange_rates:
other_fuel_system: %amount%=%other_system_amount%
petroleum: 1=3.5 (1 of diesel would be equal to 3.5 of petroleum)

example fuel item:
medium_diesel_container:
displayname: "medium diesel container"
material: %material%
type: fuel_container
fuel: fuel_type
storage: (how much fuel it can store)
clickable: true/false (can insta-refuel vehicles by clicking on them with the container)

Discord?

Do you have a discord? If not can you make one?

Any plan to support Geyser/Bedrock clients?

For obvious reasons, bedrock clients connecting through GeyserMC aren't supported by Oraxen.
Are you planning to add some kind of support? Geyser supports custom resource packs

It would be cool for example to just have custom chat ranks or emojis

[Bug] Packet Resource pack

Disconnecting TextComponent{text='DoctaEnkoda', siblings=[], style=Style{ color=null, bold=null, italic=null, underlined=null, strikethrough=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null, font=minecraft:default}} due to resource pack packet exploitation attempt

Give command returns null when Items in config have a numerical name

1:
  displayname: "&bZenith Embrace"
  material: NETHERITE_SWORD
  Enchantments:
    sharpness: 6
    looting: 4
    smite: 5
    unbreaking: 3
  lore:
    - ""
    - "&3&m----&b&m----&f&m----&b&m----&3&m----"
    - "&bLegendary Item"
    - "&3&m----&b&m----&f&m----&b&m----&3&m----"
  Pack:
    generate_model: true
    parent_model: "item/handheld"
    textures:
      - legendary_sword.png`

The above item shows up perfectly in both /o inv all and its respective /o inv folder in the gui. However if I am to do </o give Classicalad 1 1> it returns an incorrect syntax error, even though chat's tab autofill works correctly.

For compatibility reasons I would really appreciate if this could be resolved, thanks!

[Enhancement] Make use of 1.17's force resource pack settings.

In 1.17, the server-sided resource pack settings have received an update, allowing verification of the SHA1 hash, sending a message with the prompt, and forcing acceptance of the resource pack to play.

It would be great if Oraxen could make use of these settings natively.

Testing on version 1.14.4 returns errors.

When trying to run the plugin in version 1.14.4 I got the following error:

`...
[00:45:28] [Server thread/INFO]: [MythicMobs] File ExampleDropTables.yml not found! Creating a new one...
[00:45:28] [Server thread/INFO]: [MythicMobs] File ExampleRandomSpawns.yml not found! Creating a new one...
[00:45:28] [Server thread/INFO]: [MythicMobs] Spawners folder not found! Creating...
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 5 mobs.
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 3 vanilla mob overrides.
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 0 mob stacks.
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 3 skills.
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 2 random spawns.
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 3 mythic items.
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 2 drop tables.
[00:45:28] [Server thread/INFO]: [MythicMobs] ? Loaded 0 mob spawners.
[00:45:28] [Server thread/INFO]: [MythicMobs] MythicMobs configuration file loaded successfully.
[00:45:28] [Server thread/INFO]: [MythicMobs] Started up bStats Metrics
[00:45:28] [Server thread/INFO]: [MythicMobs] ? MythicMobs v4.9.1 (build 3295) has been successfully loaded!
[00:45:28] [Server thread/INFO]: [Oraxen] Plugin "MythicMobs" detected, enabling hooks
[00:45:28] [Server thread/INFO]: [Oraxen] Plugin "CrateReloaded" detected, enabling hooks
[00:45:28] [Server thread/INFO]: [Oraxen] Plugin "BossShopPro" detected, enabling hooks
[00:45:28] [Server thread/ERROR]: Error occurred while enabling Oraxen v1.42.2 (Is it up to date?)
java.lang.NoClassDefFoundError: com/syntaxphoenix/syntaxapi/nbt/NbtTag
at io.th0rgal.oraxen.items.ItemParser.buildItem(ItemParser.java:55) ~[?:?]
at io.th0rgal.oraxen.settings.ConfigsManager.parsesConfig(ConfigsManager.java:137) ~[?:?]
at io.th0rgal.oraxen.settings.ConfigsManager.parsesConfigs(ConfigsManager.java:119) ~[?:?]
at io.th0rgal.oraxen.items.OraxenItems.loadItems(OraxenItems.java:28) ~[?:?]
at io.th0rgal.oraxen.items.OraxenItems.loadItems(OraxenItems.java:24) ~[?:?]
at io.th0rgal.oraxen.OraxenPlugin.onEnable(OraxenPlugin.java:73) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:352) [spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:417) [spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugin(CraftServer.java:461) [spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugins(CraftServer.java:375) [spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:449) [spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at net.minecraft.server.v1_14_R1.DedicatedServer.init(DedicatedServer.java:266) [spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:775) [spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_201]
Caused by: java.lang.ClassNotFoundException: com.syntaxphoenix.syntaxapi.nbt.NbtTag
at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_201]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:135) ~[spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:81) ~[spigot-1.14.4.jar:git-Spigot-cbd1a1b-009d8af]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_201]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_201]
... 15 more
[00:45:28] [Server thread/INFO]: Server permissions file permissions.yml is empty, ignoring it

...`
I've been trying to fix this error for a few hours, however I can't find what the problem is. Any suggestions?

I find it a very interesting project and I am only trying to understand it for educational purposes. Thank you.

Texture pack problems

1: the new "need help?" banner shows up on the tooltips for emerald armor, I have regenerated the pack multiple times, and this still persists. screenshot:
image

2: upon joining the server, and downloading the resourcepack, it kicks me and says that the pack could not be downloaded, and manually placing the zip file in my resource pack folder does not work, it shows up only if I unzip, and it works then, it also works if I export the unzipped file to dropbox, and then download it from there, I think it's a problem with the compression or something, also it might be that I use a mac, is there a way to fix this?

Can't see recipes.

I can't see my recipes in-game. Is that intended? This happens when I do "/o recipes and recipes open"

recipes

I might be doing smt wrong, but pls help...

Hi, I just compiled the oraxen plugin and loaded it into my server and the server console throw me this:

[05:31:16 ERROR]: Error occurred while enabling Oraxen v1.116.0 (Is it up to date?)
java.lang.NoClassDefFoundError: dev/jorel/commandapi/CommandAPI
        at io.th0rgal.oraxen.OraxenPlugin.onEnable(OraxenPlugin.java:59) ~[oraxen-1.116.0.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:370) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:500) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.craftbukkit.v1_17_R1.CraftServer.enablePlugin(CraftServer.java:529) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.craftbukkit.v1_17_R1.CraftServer.enablePlugins(CraftServer.java:443) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.MinecraftServer.loadWorld(MinecraftServer.java:710) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.dedicated.DedicatedServer.init(DedicatedServer.java:307) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1197) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at java.lang.Thread.run(Thread.java:831) [?:?]
Caused by: java.lang.ClassNotFoundException: dev.jorel.commandapi.CommandAPI
        at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:146) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:103) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:519) ~[?:?]
        ... 11 more
[05:31:16 ERROR]: Error occurred while disabling Oraxen v1.116.0 (Is it up to date?)
java.lang.NullPointerException: Cannot invoke "io.th0rgal.oraxen.font.FontManager.unregisterEvents()" because "this.fontManager" is null
        at io.th0rgal.oraxen.OraxenPlugin.unregisterListeners(OraxenPlugin.java:98) ~[oraxen-1.116.0.jar:?]
        at io.th0rgal.oraxen.OraxenPlugin.onDisable(OraxenPlugin.java:92) ~[oraxen-1.116.0.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:405) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:533) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:374) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:500) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.craftbukkit.v1_17_R1.CraftServer.enablePlugin(CraftServer.java:529) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at org.bukkit.craftbukkit.v1_17_R1.CraftServer.enablePlugins(CraftServer.java:443) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.MinecraftServer.loadWorld(MinecraftServer.java:710) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.dedicated.DedicatedServer.init(DedicatedServer.java:307) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1197) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[patched_1.17.1.jar:git-Tuinity-"6fd7e2b"]
        at java.lang.Thread.run(Thread.java:831) [?:?]

I try adding in the shaded version and the un-shaded version into the server plugin folder and it still give me the error above, am I doing something wrong?

BlockMechanicFactory#setBlockModel causing NPE

Oraxen version 1.116.0 on Paper 255 (1.17.1).

The following code:

    public static void place(Block block, String name) {
        BlockMechanicFactory.setBlockModel(block, name); // <--- line 19 in OraxenHook.java
    }

causes this error:

[07:43:33 ERROR]: Could not pass event PlayerDeathEvent to AngelChest v4.11.0
java.lang.NullPointerException: Cannot invoke "io.th0rgal.oraxen.mechanics.MechanicFactory.getMechanic(String)" because "<local2>" is null
        at io.th0rgal.oraxen.mechanics.provided.gameplay.block.BlockMechanicFactory.setBlockModel(BlockMechanicFactory.java:84) ~[?:?]
        at de.jeff_media.angelchest.hooks.OraxenHook.place(OraxenHook.java:19) ~[?:?]
        at de.jeff_media.angelchest.data.MagicMaterial.placeInWorld(MagicMaterial.java:35) ~[?:?]
        at de.jeff_media.angelchest.data.AngelChest.createChest(AngelChest.java:355) ~[?:?]
        at de.jeff_media.angelchest.data.AngelChest.createChest(AngelChest.java:342) ~[?:?]
        at de.jeff_media.angelchest.data.AngelChest.createChest(AngelChest.java:338) ~[?:?]
        at de.jeff_media.angelchest.listeners.PlayerListener.spawnAngelChest(PlayerListener.java:810) ~[?:?]
        at de.jeff_media.angelchest.listeners.PlayerListener.spawnAngelChestHighest(PlayerListener.java:836) ~[?:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor343.execute(Unknown Source) ~[?:?]
        at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.17.1.jar:git-Paper-92]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.17.1.jar:git-Paper-92]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.17.1.jar:git-Paper-92]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:624) ~[patched_1.17.1.jar:git-Paper-92]
        at org.bukkit.craftbukkit.v1_17_R1.event.CraftEventFactory.callPlayerDeathEvent(CraftEventFactory.java:869) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.server.level.ServerPlayer.die(ServerPlayer.java:832) ~[?:?]
        at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1455) ~[?:?]
        at net.minecraft.world.entity.player.Player.hurt(Player.java:918) ~[?:?]
        at net.minecraft.server.level.ServerPlayer.hurt(ServerPlayer.java:998) ~[?:?]
        at net.minecraft.world.entity.LivingEntity.kill(LivingEntity.java:320) ~[?:?]
        at net.minecraft.server.commands.KillCommand.kill(KillCommand.java:32) ~[?:?]
        at net.minecraft.server.commands.KillCommand.lambda$register$2(KillCommand.java:25) ~[?:?]
        at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:263) ~[patched_1.17.1.jar:git-Paper-92]
        at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:177) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.commands.Commands.a(Commands.java:275) ~[?:?]
        at org.bukkit.craftbukkit.v1_17_R1.command.VanillaCommandWrapper.execute(VanillaCommandWrapper.java:45) ~[patched_1.17.1.jar:git-Paper-92]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159) ~[patched_1.17.1.jar:git-Paper-92]
        at org.bukkit.craftbukkit.v1_17_R1.CraftServer.dispatchCommand(CraftServer.java:821) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.handleCommand(ServerGamePacketListenerImpl.java:2165) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.handleChat(ServerGamePacketListenerImpl.java:1976) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.handleChat(ServerGamePacketListenerImpl.java:1957) ~[?:?]
        at net.minecraft.network.protocol.game.ServerboundChatPacket.handle(ServerboundChatPacket.java:46) ~[?:?]
        at net.minecraft.network.protocol.game.ServerboundChatPacket.handle(ServerboundChatPacket.java:6) ~[?:?]
        at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$1(PacketUtils.java:36) ~[?:?]
        at net.minecraft.server.TickTask.run(TickTask.java:18) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:149) ~[?:?]
        at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[?:?]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1348) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.server.MinecraftServer.shouldRun(MinecraftServer.java:190) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[?:?]
        at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1327) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1320) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:132) ~[?:?]
        at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1281) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1192) ~[patched_1.17.1.jar:git-Paper-92]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:316) ~[patched_1.17.1.jar:git-Paper-92]
        at java.lang.Thread.run(Thread.java:831) [?:?]

The block I'm passing isn't null, and in a loaded chunk. The name of the block I passed was "cart", one of the default builtin blocks.

Error occurred while enabling Oraxen v0.17.1

java.lang.NoClassDefFoundError: me/lucko/commodore/CommodoreProvider
        at io.th0rgal.oraxen.OraxenPlugin.registerCommands(OraxenPlugin.java:43) ~[?:?]
        at io.th0rgal.oraxen.OraxenPlugin.onEnable(OraxenPlugin.java:53) ~[?:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[patched_1.14.4.jar:git-Paper-232]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:338) ~[patched_1.14.4.jar:git-Paper-232]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:420) ~[patched_1.14.4.jar:git-Paper-232]
        at org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugin(CraftServer.java:467) ~[patched_1.14.4.jar:git-Paper-232]
        at org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugins(CraftServer.java:381) ~[patched_1.14.4.jar:git-Paper-232]
        at net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:474) ~[patched_1.14.4.jar:git-Paper-232]
        at net.minecraft.server.v1_14_R1.DedicatedServer.init(DedicatedServer.java:290) ~[patched_1.14.4.jar:git-Paper-232]
        at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:876) ~[patched_1.14.4.jar:git-Paper-232]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_221]
Caused by: java.lang.ClassNotFoundException: me.lucko.commodore.CommodoreProvider
        at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_221]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:139) ~[patched_1.14.4.jar:git-Paper-232]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:85) ~[patched_1.14.4.jar:git-Paper-232]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_221]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_221]
        ... 11 more```

[Bug]

Bonjour, il y a un bug avec la "vol de vie", si la vie maximal est atteinte d'un joueur, une erreur se génère dans la console :

Could not pass event EntityDamageByEntityEvent to Oraxen v1.34.0 java.lang.IllegalArgumentException: Health must be between 0 and 20.0, but was 20.999998092651367. (attribute base value: 20.0, player: Morex_78) at org.bukkit.craftbukkit.v1_15_R1.entity.CraftLivingEntity.setHealth(CraftLivingEntity.java:112) ~[server.jar:git-Purpur-"da22eb0"] at io.th0rgal.oraxen.mechanics.provided.lifeleech.LifeLeechMechanicListener.onCall(LifeLeechMechanicListener.java:35) ~[?:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor72.execute(Unknown Source) ~[?:?]

Rajouter une condition pour vérifier la vie maximum actuelle du joueur ou entité.

Feature Request - Custom models with inventories

Description

Hi,
I'd like to request a feature which enables users to set inventories (like chests, barrels, ...) for custom models (with a defined size).
That would be a great improvement for customization (cupboards, bedside tables, crates, ...), letting players store items inside those models (persistently).

Potential target group for this feature?

Anyone who has custom models.
Even more for people who are uisng Iris!

References

I saw the PR #202 which describes the feature as well.


Thanks in advance for the consideration!

Issues & Suggestions on Block Mechanic

  1. Netherite pickaxe in 1.16 doesn’t work with “minimal tool”.It seems that it isn’t being considered as a “tool” at all.
  2. Could you make custom blocks “unbreakable ” when not using a tool that reaches minimal requirement? Just to prevent players from breaking the block by accident and getting nothing.
  3. Ore generating for vanilla perhaps?

Resource Pack not working correctly

image

Maybe I missed something but when I updated the plugin, I'm now seeing this. I'm not sure if I was supposed to do something, but I didn't see any extra requirements.

Bug des armures lors de la résurrection

Si nous utilisons le totem de résurrections, les enchantements des armures ajoutés ne sont plus pris en compte.
Je ne suis pas dispo pour fixer ce soucis, je préfère le reporté si vous arrivez à le fixer.

[enchantment] Optifine blocks

Hey, do you think it could be possible to add custom optifine blocks with oraxen ?

Could be really cool since most people use Optifine and it's possible to create unlimited blocks with it.

Feature Request - MMOITEM Support

Please add MMoItem support where we can add our MMoItem into Oraxen. Also an ability to add Oraxen Items into MMoItem crafting system

Thanks in advance.

Oraxen removes Redstone Proximity Sensors default recipe

I've had issues from a user of my Redstone Proximity Sensor 2.4.9.2 for PaperMC 1.15.2 who also uses Oraxen. I don't know the details but it seems the Oraxen either overwrites or deletes the recipe as shown:

image

Does Oraxen provide a recipe like this or is it user error?

Better Documentation Please

So ive started with some basics of learning to use this, and im running into issues that I just cant find any documentation on to try and resolve.

I know this plugin is fairly new, but I feel like im lacking the info to actually make use of it.

Everytime I try to add an item, my textures wont load. I can create items with the default textures. But mine arent working, when I try to add a model, it defaults to the one of the textures you have provided. I downloaded a resource pack with a bunch of textures in it, so I know the textures/models arent the problem. And ive dropped the textures/models into Oraxen/pack, now ive tried them in subfolders and out of sub folders, tried renaming, with and without .json and .png file extensions...

Just feel like I dont have enough documentation to go anywhere with it, and I really love this plugin.

Texture pack cannot be used

latest.log
I built the plugin myself, but I can’t use the official texture pack
The same is true for the version shared by other people (I know this is not good)
@7{4)$B WF WXLQYJSFEEP3

Possible Solution to Resource Pack Lag

So when you first log into a server with Oraxen you have that moment where you cannot move as the resource pack loads, this can cause issues with mobs attacking you while you log in / general player dissatisfaction.

A possible solution to this would be to send the player to a different world and put them in spectator mode facing the sky while the pack loads, this makes it a sort of limbo zone so that the player cannot be attacked and can take a moment to breath while the resource pack loads.

Thoughts?

Using a structure void as opposed to a diamond.

This is something I've seen a Fabric plugin do so I thought I would suggest it here. Using a structure void for the custom blocks in inventory, as opposed to a diamond, means that the block place animation gets played, making things seem more natural, and since the structure void is almost always invisible the average player won't see the block getting placed and then replaced. The current method of using a diamond is fine but it would feel and look more natural to do this instead.

Cannot change best tool type of block

I have a block that defaulted to using AXE for best_tools:. I now need to change the type to PICKAXE, but noticed even after reloading the plugin, or restarting the server, the tag still stays as #minecraft:mineable/axe.

Suggestion

I have an idea to add a custom food mechanic, so that you can give an edible item custom hunger and saturation

Create a README.md

It will make your project pretty I think (if you do that correctly).

You will probably do that btw but you can :

  • add the spigotmc link where they can buy the plugin to support your work
  • specify that forking is forbidden by your license in it

Compile

I have been trying to compile it to add modifications, obviously these will not be distributed

java.lang.NoClassDefFoundError: me/lucko/commodore/CommodoreProvider

I get this error whenever the server enable Oraxen:

[19:04:54] [Server thread/INFO]: Reloading ResourceManager: Default, bukkit
[19:04:55] [Server thread/INFO]: Loaded 6 recipes
[19:04:55] [Server thread/ERROR]: Error occurred while enabling Oraxen v1.27.0 (Is it up to date?)
java.lang.NoClassDefFoundError: me/lucko/commodore/CommodoreProvider
	at io.th0rgal.oraxen.OraxenPlugin.registerCommands(OraxenPlugin.java:48) ~[?:?]
	at io.th0rgal.oraxen.OraxenPlugin.onEnable(OraxenPlugin.java:64) ~[?:?]
	at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[patched_1.15.2.jar:git-Paper-325]
	at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:380) ~[patched_1.15.2.jar:git-Paper-325]
	at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:483) ~[patched_1.15.2.jar:git-Paper-325]
	at org.bukkit.craftbukkit.v1_15_R1.CraftServer.enablePlugin(CraftServer.java:472) ~[patched_1.15.2.jar:git-Paper-325]
	at org.bukkit.craftbukkit.v1_15_R1.CraftServer.enablePlugins(CraftServer.java:386) ~[patched_1.15.2.jar:git-Paper-325]
	at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:488) ~[patched_1.15.2.jar:git-Paper-325]
	at net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:298) ~[patched_1.15.2.jar:git-Paper-325]
	at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:900) ~[patched_1.15.2.jar:git-Paper-325]
	at java.lang.Thread.run(Unknown Source) [?:1.8.0_231]
Caused by: java.lang.ClassNotFoundException: me.lucko.commodore.CommodoreProvider
	at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_231]
	at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:171) ~[patched_1.15.2.jar:git-Paper-325]
	at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:100) ~[patched_1.15.2.jar:git-Paper-325]
	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_231]
	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_231]
	... 11 more
[19:04:55] [Server thread/INFO]: [Oraxen] Successfully unloaded
[19:04:55] [Server thread/INFO]: Running delayed init tasks
[19:04:55] [Server thread/INFO]: Done (21.611s)! For help, type "help"

pastebin mirror

Server Software: Paper v1.15.2-325

Bigmining Mechanic ignores WorldGuard regions.

Hello !

Using those hammers / Bigming mechanic, it breaks as expected, but if an adjacent blocks to be breaked inside the radius is inside a worldguard Region, it ignores totally causing damage to protected regions.

Here is the version info:

Oraxen version 1.33.0
Worldguard 7.0.3 Snapshot
PaperMC 1.16.1

resource pack suggestion

I noticed that the oraxen pack automatically puts all the files into the /assets/minecraft folder, but my servers resource pack has a lot of the files in separate folders, like /assets/modelengine and a few others, would it be possible to adjust the files to show the "assets" folder so it would be possible to use oraxen's auto-compression instead of having to update dropbox constantly for resource packs like these?

Shapeless and furnace recipes support

Hey @yzl210,

I just tried your pr and ran into a few problems:

  • This is the error that I get when I try to load a shapeless recipe I just generated:
    https://hasteb.in/ififuqex.lua
  • I can't put an item in the result slot of the furnace builder inventory
  • When I already opened a builder, I can't replace it by another one (this is my fault but we could not see it before because we had only shaped recipes).
    I will work on the result slot issue by tomorrow, I'ld love if you could check the first one tho.

Thomas!

Errors occur when you click an Oraxen item

So When you click an Oraxen item, these will be printed(I'm using Paper 1.14.4):

[22:53:18 ERROR]: Could not pass event InventoryClickEvent to Oraxen v1.23.2 java.lang.NullPointerException: null at io.th0rgal.oraxen.utils.armorequipevent.ArmorType.matchType(ArmorType.java:29) ~[?:?] at io.th0rgal.oraxen.utils.armorequipevent.ArmorListener.inventoryClick(ArmorListener.java:117) ~[?:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor113.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.14.4.jar:git-Paper-243] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.14.4.jar:git-Paper-243] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.14.4.jar:git-Paper-243] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:2314) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.PacketPlayInWindowClick.a(SourceFile:33) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.PacketPlayInWindowClick.a(SourceFile:10) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:1029) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:1022) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:1006) ~[patched_1.14.4.jar:git-Paper-243] at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:929) ~[patched_1.14.4.jar:git-Paper-243] at java.lang.Thread.run(Unknown Source) [?:1.8.0_241]

It's really annoying, Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.