#server-plugins-read-only

1 messages · Page 98 of 1

civic zephyr
#

getReference() ?

lunar cedar
#

i will update my code to this, thx

strong musk
#

probably because nothing in that packet should be trusted until verified -- its like, literally entirely unchecked until later in the protocol

cyan dawn
#

Im working on a Hunger/Thirst system which will be expanded into my Skill/Stat system.

My problem at the moment is making stamina regen decrease by 80% once thirst is under 20%. Its my first mod and im a newb but how? LUL

primal cypress
#

try looking in the decompiled server files, there are some classes for the single difference benches type (crafting, processing, simple ecc) i found the files under com.hypixel.hytale.builtin.crafting.windows

lunar cedar
#

also, you shouldn't use var if you are not going to update the reference Hypixel_TongueOut

gentle venture
civic zephyr
#

"Update the reference"? Do you not know what var does?

strong musk
lunar cedar
civic zephyr
#

Thats java

blissful wigeon
#

how do you change the weather to Zone1_Sunny programmatically im copying exactly what the /weather set command does and it doesn't do anything

primal cypress
# blazing fable cheers

and, there you are, in the same .crafting folder there is the .state folder with BenchState and ProcessingBenchState (the one used for the campfire)

lunar cedar
#

oh sry, in kotlin there's val

strong musk
still field
#

The player file named by UUID is created not immediately on first connect but on the first save event, such as player disconnect or periodic save, if player saving is enabled in the world config.

blissful wigeon
civic zephyr
zenith adder
#

aah okay, I think I get it now. I also realized that calling a tick method from a command doesn’t really make sense, since commands are executed only once

civic zephyr
#

This is JAVA we realll outdated over here

grave peak
#

👴 Remember ActiveX guys?

lunar cedar
#

you all should try kotlin, you write a lot less code Hypixel_LMAO

wet field
#

Moving it to PlayerReadyEvent makes everything work. Thank you. Now I can enjoy MiniMessage and (automatical) conversion of all my plugins to Hytale

blissful wigeon
still field
strong musk
placid maple
#

is there a way to reset player velocity entirely after a teleport ?

#

to not keep any momemtum/inertia

civic zephyr
#

Whats happening instead? Absolutely nothing?

grave peak
blissful wigeon
strong musk
lunar cedar
jagged dock
grave peak
civic zephyr
#
WeatherResource weatherResource = store.getResource(WeatherResource.getResourceType());
weatherResource.setForcedWeather(forcedWeather);
WorldConfig config = world.getWorldConfig();
config.setForcedWeather(forcedWeather);
config.markChanged();
#

Store in this context being a Store<EntityStore> but a ComponentAccessor<EnityStore> works too

unkempt musk
civic zephyr
#

One second

fringe heath
#

Anyone else getting an issue where when they try to open the eclipse application it gets blocked saying its a dangerous file from the web

lunar cedar
#

how should I get the PlayerRef from a Player object?

#

bcs getPlayerRef is deprecated

civic zephyr
#

Have you got a Store<EntityStore> and a Ref<EntityStore> or just one or none

lunar cedar
#

i made some static functions to work with the Player object but i want to avoid the use of getPlayerRef

civic zephyr
# lunar cedar none
Ref<EntityStore> ref = playerComponent.getReference();
Store<EntityStore> store = ref.getStore();
PlayerRef playerRef = store.getComponent(ref, PlayerRef.getComponentType());
rancid apex
#

Thank's bro, I got it

frail birch
#

Does anyone know anything about when we are going to get the ability to add per item names and lores/descriptions? I doubt anyone knows but figured id ask anyway

cerulean glacier
#

Is there a Maven Central artifact yet or are we all just deploying the server artifact to the local .m2 repo?

civic zephyr
#

playerRefComponent is a PlayerRef

fringe heath
#

what IDE are you all using

inner holly
#

anyone found a way to disable Ancient gateways ?

frail birch
civic zephyr
cerulean glacier
fringe heath
lunar cedar
civic zephyr
#

The game pulls translation/lore from the Item itself, not the ItemStack, there are states that items have on them but internally they are registered as entirely different Item instances

strong musk
still field
#

its not "normal" in java either

civic zephyr
rancid apex
#

@lunar cedar Do you have any idea how I can generate a world with a ready-made prefab? For example, a building, and set the spawn in that specific location?

cerulean glacier
#

I had originally thought the client was also Java, but looks like the client is probably C#, is that right?

lunar cedar
strong musk
frail birch
cerulean glacier
# strong musk correct

Can server plugins drive certain client-side behavior like UI stuff, camera etc? The obvious answer is no, but figured I'd ask.

civic zephyr
#

Yeah

strong musk
cerulean glacier
#

Oh interesting

vast yacht
still field
burnt pelican
lunar cedar
civic zephyr
#

Linq......

cerulean glacier
#

I see. So basically there's not a strong need to mod the client. Server plugins can add new assets and UIs

civic zephyr
#

Yeah

cerulean glacier
#

That's really cool. A complete departure from Minecraft

lunar cedar
frail birch
strong musk
placid maple
civic zephyr
#

I haven't tried it with velocity weapons

misty sphinx
primal cypress
frail birch
west bolt
#

Has anyone else encountered a situation where the game disconnects you from the server and after reconnecting, you can no longer see the chat? Is there a fix for this?

ripe bramble
#

I spent about 5 hours trying to figure exactly this out as well. The only thing I can tell you is that in creative, you can spam click and break blocks as fast as you can click with your hands, but when you switch to a tool, you can not. I spent a long time trying to figure out what the difference is and where to change it, but ultimately through in the towel after even finally pulling out Claude Code to try and help find it.

placid maple
rancid apex
#

Is this not available yet? It says that flat doesn't exist.

/worlds add test --gen="flat"
cerulean glacier
civic zephyr
empty wyvern
#

com.hypixel.hytale.server.core.universe.PlayerRef.getReference() is null after player disconnect and reconnect?
Although I store UUID and get through Universe.get().getPlayer(uuid)

lunar cedar
primal cypress
rancid apex
still field
civic zephyr
#

You'd have to modify the clients registry of their items to pull from

cerulean glacier
primal cypress
vast yacht
civic zephyr
#

And tell the client that an item they have in their inventory is of the new fake item you just pretend registered

civic zephyr
frail birch
cerulean glacier
#

Alright, very cool. Hytale is less of a game, more of a game development platform haha

#

Very impressive

primal cypress
# cerulean glacier Can you add new model animations?

you can even add like new chests, with new animation, and new sizes (but this is actually bugged, for example if you make a chest with 600 slot, the gui get bugged out of the game windows and dont add a scroll line thing (the one for scroll down and up))

vast yacht
cerulean glacier
#

One community, one client: We want to avoid a fragmented ecosystem where every server requires a different modded client. For that reason, we don't intend to support any client mods. The client should remain stable, secure, and consistent, while servers provide the creativity and variation.
Yeah, this makes a lot of sense.

still field
#

there are already client mods being made but they are agianst the rules

lunar cedar
#

@civic zephyr in this ECS thingy, what is a ComponentAccessor<EntityStore> used for?

civic zephyr
#

A Store is a ComponentAccessor

#

Its used to access components

#

Stores are collections of data that store Refs of a given type that each contain their own data

lunar cedar
languid onyx
#

[OFF]

🇺🇸 Hey guys, I just want to promote a Discord server I created for Brazilian modders here. If that's not allowed, please delete my message.

🇧🇷 🇵🇹 Galera, criei um servidor de Modders para Hytale especialmente para Brasileiros e Portugueses, quem tiver interesse chama DM!

misty sphinx
civic zephyr
#

Hacks and such

upbeat condor
#

is there any way to increase mining speed or attack speed or attack damage of player?

civic zephyr
#

Haven't heard of any actual good real purpose client mods

strong musk
upbeat condor
# vast yacht Mods

But how do I do that, i thought maybe stats but I don't see any stat like miningspeed

vast yacht
lunar cedar
ripe bramble
outer elbow
#

is there a way to update a specific ui every 1 second?

vast yacht
civic zephyr
#

No client resource packs yet which is surprising but hopefully they add the functionality eventually

still field
#

github com/kran27/HytaleClientMod adds zooming

ripe bramble
primal cypress
zenith adder
#

How can I add parameters to a AbstractPlayerCommand?

civic zephyr
outer elbow
#

is there a way to update a specific ui every 1 second?

zenith adder
stark snow
#

how do i give myself (owner of my server) permission to use commands

lunar cedar
#

@civic zephyr sry for the ping, did you try to use the BuilderToolsPlugin? i'm trying to select an area for the player when running a command but the selection tool is not updated

lunar cedar
civic zephyr
ripe bramble
# primal cypress every pickaxe have a mining speed or something called with a similar name, that ...

Yea, that speed value is misleading. Because it literally does not change the speed at which you can swing. Or "swings per second", per se. Only the damage. So at the highest "speed", it just means a single swing of a pickaxe will break a block with one swing. Instead of halving the damage, but increasing the number of swings per second to do the same amount of damage per second to a block, but in a smoothed out way that would allow for being able to just wildly swing a pickaxe around to insta-mine like you would in Minecraft with insta-mining.

stark snow
#

on shockbyte panel?

zenith adder
lunar cedar
primal cypress
civic zephyr
# zenith adder Okay, thank you, I will try it out

You don't have to specify them in the constructor

private final RequiredArg<Integer> numberArg = this.withRequiredArg("theNumberName", "your description", ArgTypes.INTEGER);

Can work at the top of your class

#

The order you call withRequiredArg in is the order they are going to be

ripe bramble
civic zephyr
#

In your execute

zenith adder
primal cypress
ripe bramble
cerulean glacier
#

I checked for a Maven Central artifact but couldn't find one, so I just did this:

mvn install:install-file -Dfile=HytaleServer.jar -DgroupId=com.hypixel.hytale -DartifactId=HytaleServer -Dversion=2026.01.17-4b0f30090 -Dpackaging=jar

Is this is basically what everyone else is doing as well?

outer cairn
#

I am teleporting the player while playing a particle animation at the destination. I would like the player that gets teleported to also see the last part of the animation after they've teleported. I've tried sending the packet to the client directly but it seems the client just ignores it since its too far away. Is it possible to force the client to keep track or have access to the area around the destination so they properly handle that packet and calculate the particle animation?

sharp pumice
#

anyone know why this custom component isnt working?

public class PlayerDataComponent implements Component<EntityStore> {
    private static ComponentType<EntityStore, PlayerDataComponent> PlayerDataComponent;
    public static final BuilderCodec<PlayerDataComponent> CODEC;

    static {
        CODEC = BuilderCodec.builder(PlayerDataComponent.class, PlayerDataComponent::new)
                .append(
                        new KeyedCodec<>("PlayerState", Codec.INTEGER),
                        (component, value) -> component.PlayerState = (int) value,
                        (component) -> component.PlayerState
                )
                .documentation("PlayerState is a value from 0 to 100")
                .add()
                .build();
    }
    public PlayerDataComponent() {
        super();
        this.PlayerState = 0;
    }
    private int PlayerState;
    @Nullable
    @Override
    public Component clone() {
        try {
            Component component = (Component) super.clone();
            return component;
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
            return null;
        }
    }
    @Nullable
    @Override
    public Component cloneSerializable() {
        return Component.super.cloneSerializable();
    }
    public int getPlayerState() {
        return PlayerState;
    }
    public static ComponentType<EntityStore, PlayerDataComponent> getPlayerDataComponentType() {
        return PlayerDataComponent;
    }
    public void addPlayerState(int PlayerState) {
        this.PlayerState += PlayerState;
        this.PlayerState = Math.clamp(this.PlayerState, 0, 100);
    }
    public void setPlayerState(int PlayerState) {
        this.PlayerState = PlayerState;
    }
}```
#
   public static void onPlayerConnect(PlayerConnectEvent event) {
        Store<EntityStore> store = event.getWorld().getEntityStore().getStore();
        PlayerRef ref = event.getPlayerRef();

        store.addComponent(ref , store , new PlayerDataComponent());
    }```

`Inferred type 'T' for type parameter 'T' is not within its bound; should implement 'com.hypixel.hytale.component.Component<com.hypixel.hytale.server.core.universe.world.storage.EntityStore>'`
white frost
#

How can I trigger an animation for a player inside for ecample a command?

desert wing
#

if anyone knows a bit about modding, i would like to do something simple but i dont know how to do it on my own, i would just like to have a mods that allow staff to use mana instead of essence ( i just think that grinding ice and fire essence is a way too long process for the little we get )

vast yacht
desert wing
vast yacht
desert wing
civic zephyr
inland palm
#

Anyone who knows how to code that wants to join a project? we are working on making a highly runescape inspired server and are looking for more people who want to join the cause 😄 if you want to join or just want more info hit me up!

civic zephyr
#

And thats not the right way to add a component, you need the component type

#

And your clone method is wrong it should be of Component<EntityStore> and return a copy of PlayerDataComponent with the PlayerState carried over to it

lyric mountain
#

Guys quick question: I want to add a new world on my server that, everytime the server restarts, the world gets "reset". So basically a world just for exploring and gathering resources. Can I just delete and recreate it everytime the server restarts with comands on the console? If I give the world the same name, will the teleports still work?

lyric mountain
#

That would make it always look identical. I want it to be regenerated 🙂

delicate lava
#

Hello, does anyone have a guide to creating your own instances?

opaque jetty
#

Hi guys, i can't find link to wiki with YamlConfiguration, who can send this to me?

ripe bramble
fading current
#

Check your modem's firewall, it may not be redirecting port 5520 correctly to your server's IP.
It may also be a software firewall not doing the port forwarding for UDP 5520 to your server's IP.

Network configuration
Hytale differs from Minecraft on a crucial point: it uses the QUIC protocol over UDP (and not TCP).

Default port: 5520 (UDP)
Firewall rule: You must open port 5520 in UDP. No need to open TCP.
stark snow
#

right so is the server for hytale not created properly as me and my friend are crashing games after killing a skeleton

delicate lava
# ripe bramble "Instances" is suuuuuper broad. Instances of what?

do you see the /inst? I tried to remake the person who created the Yung dungeon mod. Currently in solo when I /inst I see my instance but it tp me in an empty world without taking into account my prefab. So I'm still experimenting for these reasons if anyone knows a complete guide to instance creation a bit like /inst goblin dungeon I'll be interested ^^

sharp pumice
weary lantern
#

Heyy qwick question! after setting up a Config CODEC and using it in my plugin how and where do I setup the config json file

civic zephyr
sharp pumice
#

ah i didnt see the others 1 sec

civic zephyr
#

From there you can call .save() (On shutdown) and .load() (On startup) on the config and a folder will be generated in the mods folder for your plugin

weary lantern
#

and the String name paramter is just the name of the json file?

civic zephyr
#

Yeah

weary lantern
#

tyty

#

Actually another question, I keep using the hytale logger but I can't seem to see any of the logs in-game

opaque jetty
#

is anyone made Yaml Config ?

#

so not BuilderCODEC

civic zephyr
weary lantern
#

Ok I'm kinda dumb cause i can see the logger in my console but I was wondering if it would show any logs in-game

deft cloud
cerulean glacier
#

Looking through the server jar, I see a lot of the built-in game features are implemented as plugins. That's cool.

calm sable
#

Is the Mana system already working in Hytale?

rotund willow
#

Is there a way to get a player uuid and playerref by their username?

merry geyser
#

How do i get the PlayerRef from an event

surreal flame
#

hey im currently writing a pvp arena plugin for my server and i need someone for a few minutes whos willing to test a match with me - i need a second person

radiant ore
#

hi there i have a question regarding my local world and network connections, if anyone can help me.
im playing on local lan with a friend, using my local world and opening to online play. If my friend uses the code in "Share Code" option he can connect ok, and he can find the server under Local tab on servers, but if he tries to connect via the Servers Local menu the connection fails. Also the server appear on the Local tab with a generic name not my world name. Any ideas what can i do to fix that ? I can still use the "Join Via Code" option and it works fine, but the code is different every time I load up the game, so the process is a bit more tedious that if he could just find the server on Local list and double click there, that I think should be a normal case

surreal flame
merry geyser
opaque jetty
#

Can anyone help me find a link to documentation on creating YamlConfigurations in Hytale plugin (mod) ?
i lost that

surreal flame
# merry geyser i have an PlayerReadyEvent

Player player = event.getPlayer();
Ref<EntityStore> entityRef = event.getPlayerRef();
PlayerRef playerRef = store.getComponent(entityRef, PlayerRef.getComponentType());

#

hope it helps

merry geyser
surreal flame
#

import it then 😛

surreal flame
# merry geyser I do not have an EntityStore object

private void onPlayerReady(PlayerReadyEvent event) {
Player player = event.getPlayer();
Ref<EntityStore> entityRef = event.getPlayerRef();
Store<EntityStore> store = entityRef.getStore();

    PlayerRef playerRef = store.getComponent(entityRef, PlayerRef.getComponentType());
hearty dragon
#

So I'm trying to make a portal that will create a new world every week. This should be straight forward by copying the hubworld portal, but setting the name of the world to prefix+date where date is the date of a specific day based on the local system's calendar.

This works for generating the world, but when trying to use the portal again, it fails at teleportToLoadingWorld, when attempting
componentAccessor.addComponent(playerRef, Teleport.getComponentType(), new Teleport(targetWorld, spawnPoint));

It produces an error:
Exception while ticking entity interactions! Removing!
java.lang.NoSuchMethodError: 'void com.hypixel.hytale.server.core.modules.entity.teleport.Teleport.<init>(com.hypixel.hytale.server.core.universe.world.World, com.hypixel.hytale.math.vector.Transform)'

Anyone have any idea why?

surreal flame
#

@merry geyser this in fact works since im doing it the same way ^^

sweet sparrow
#

Do you have a Hunger Games plugin?

opaque jetty
merry geyser
surreal flame
opaque jetty
#

ohh

opaque jetty
sweet sparrow
#

Do you have a Hunger Games plugin?

#

UHC ITS HUNGER GAMES ?????

opaque jetty
#

because .json it not comfortable

surreal flame
fervent jungle
#

Hello guys, I don't understand how Hytale reads files or if something is wrongs in my configuration.
I'm trying to read a document (file .ui) from my mod/server plugin and I'm currently getting this error from Hytale (Loading the UI from a player command) "Could not find document assets/ui/x.ui for Custom UI Append command. Selector:"

My command is reading with cmd.append("assets/ui/x.ui") and I have includesassetpack: true in my manifest, also in my pom.xml (using maven) I do add resources to my build.

Am I missing something? Or does just hytale handle the files in a weird way?

Also I have a debug function that in my server log says it FINDS the file, so idk

austere rune
#

guys my multiplayer friend join isnt working ???

rancid apex
#

Is it possible to change a world's spawn point to a fixed value or using some developer feature?

austere rune
#

how do i fix this this shi is a headache

sweet sparrow
#

Do you have a Hunger Games plugin?
UHC ITS HUNGER GAMES ?????

formal quiver
#

Can anyone point me to a guide on what the scope of a plugin is and how you can set them up?

hot warren
# ripe bramble I spent about 5 hours trying to figure exactly this out as well. The only thing ...

I made some progress earlier! By setting several runtime variables to 0 in the Assets Editor, I finally got a result that proves this is possible.

I managed to achieve an extremely fast 'fastmine,' though currently, it only triggers when holding a 'block' type item. This leads me to believe that if I can locate the specific files to modify, we can make it work universally.

I had to step away for a moment, but I’ll get back to it soon. If I find the solution, I’ll send it your way!

gray wigeon
#

Does anyone know how to actually get IntelliJ and Maven to actually work with Hytale? I've been struggling for hours

hot warren
ornate raven
#

i suggest you try gradle so much easier

sweet sparrow
#

Everyone screws up

gray wigeon
#

Can someone send me a link? Also, I've been getting the same errors with Gradle as well

#

The import for Hytale isn't even working in IntelliJ for me

ornate raven
ornate raven
hot warren
gray wigeon
ornate raven
#

do you use ai?

#

i saw a lot of people get wrong imports from ai and get 100+ errors decompile hytaleservers.jar look what you import you using search on it find real path

gray wigeon
# ornate raven do you use ai?

As much as I hate to admit it, yes I do; coding is not something I know scrap about. I have decent ideas but very little knowledge of coding other than modifying config files

#

Yet, I've pulled off making my own Minecraft plugins before with AI

ornate raven
#

problaby decompiling hytaleserver and finding correct imports fix your errors

gray wigeon
#

How long would it hypothetically take to decompile HytaleServer using a 2022 Macbook Air

ornate raven
#

i dont know the cpu power problaby not more than few min i can send you latest decompiled if you want

plain zephyr
#

Buenas, alguien que hable español que me pueda decir porque no me llega el codigo de verificacion al email? gracias

primal cypress
#

guys, do you know a way to view the various .ui files, or for example, an application that would let me see the content of a .ui file so I can modify it and see the result?

quartz plover
#

For example, anything that is not inside com dot hypixel dot hytale

#

There are a bunch of open-source or data structure classes that aren't needed to understand the server code

#

It shortens decompilation A LOT

ornate raven
autumn island
#

🇧🇷 boa tarde pessoal, alguem consegue me dizer se consigo editar os sons que o player faz ultilizando os Nós?
até agora só consegui editar a geração de mundo, quando seleciono qualquer outro arquivo ele não é carregado na linha do tempo.


🇺🇸 Good afternoon everyone, can anyone tell me if I can edit the sounds the player makes using the Nodes? So far I've only been able to edit the world generation; when I select any other file, it's not loaded into the timeline.

primal cypress
# ornate raven hytale,ellie,au

so i need to open the game every time? or is like using the assets editor where i can see the changes in game every time i edit it? (like for making a new block adding sounds, etc from the assets editor)

primal cypress
gray wigeon
ornate raven
quartz plover
gray wigeon
quartz plover
#

That includes com hypixel fastutils btw

#

That's just extra data structures

quartz plover
#

Open with any text editor

primal cypress
quartz plover
#

Oh, it wasn't very clear. Glad you found your answer, though.

slow shadow
#

Does anyone know how to play/change a player animation in code? I want to make custom attacks, but can't find anything on how animations work

weary lantern
#

Hello!! I have a question, if I wanted to create a test player to check how my plugin would act in multiplayer would I use addPlayer? it seems that addPlayer needs authentication... maybe I'm missing something?

quartz plover
#

You kinda need to test in multiplayer to check how your plugin would act in multiplayer tbf

weary lantern
#

but I need to test locally I can't predict how certain things would act

rare sundial
#

Is it possible to set chest loot in a prefab with chances? Like 5% chance for a sword and so on?

dusty venture
weary lantern
#

like individually, I can't convince people to join my server and stay idle and rejoin everytime I restart the server to test a feature

ripe bramble
torpid loom
#

Has anybody figured out how to run commands in plugins yet?
I can send messages to the player but that's it

desert wing
ornate raven
#

like console running commands? or creating command?

torpid loom
ripe bramble
desert wing
#

i tried this in the asset editor, the goals was to remove the ice essence consumption and switch it to mana, but so far there is no progress, Note that im using a pre-made mode for Mana and Mana bar

slate wren
#

Is there a way to verify the Server permanently becouse I am tired to start Server every Time with verivy it ?

fickle pecan
#
 case "MoveSpeed":
                    MovementManager movementManager = store.getComponent(ref, MovementManager.getComponentType());
                    MovementSettings movementSettings = movementManager.getSettings().clone();
                    float speedIncrease = 1 + modifierValue.floatValue();
                    movementSettings.baseSpeed *= speedIncrease;
                    movementManager.setDefaultSettings(
                            movementSettings,
                            store.getComponent(ref, PhysicsValues.getComponentType()),
                            player.getGameMode()
                            );
                    movementManager.applyDefaultSettings();
                    player.sendMessage(Message.raw("Applied MoveSpeed modifier: " + modifierValue.floatValue()));
                    break;

@civic zephyr this updates the movement but doesnt persist when i rejoin, you have a clue why?

calm sable
ornate raven
torpid loom
#

YO im gonna try this right away

desert wing
#

im trying to share the progress i made so far

ornate raven
civic zephyr
fickle pecan
civic zephyr
#

Or actually, maybe its not persistent

ornate raven
#

use ```

civic zephyr
#

You might have to just reapply it

fickle pecan
#

😭

ornate raven
#

start and end with same thing ```

desert wing
#
  "TranslationProperties": {
    "Name": "server.items.Weapon_Staff_Crystal_Ice.name",
    "Description": "server.items.Weapon_Staff_Crystal_Ice.description"
  },
  "Categories": [
    "Items.Weapons"
  ],
  "Icon": "Icons/ItemsGenerated/Weapon_Staff_Crystal_Ice.png",
  "Quality": "Rare",
  "ItemLevel": 50,
  "Recipe": {
    "TimeSeconds": 5,
    "Input": [
      {
        "ItemId": "Rock_Gem_Sapphire",
        "Quantity": 1
      },
      {
        "ItemId": "Ingredient_Bar_Silver",
        "Quantity": 8
      },
      {
        "ItemId": "Wood_Azure_Trunk",
        "Quantity": 10
      },
      {
        "ItemId": "Ingredient_Ice_Essence",
        "Quantity": 20
      }
    ],
    "BenchRequirement": [
      {
        "Id": "Arcanebench",
        "Type": "Crafting",
        "Categories": [
          "Arcane_Misc"
        ]
      }
    ]
  },
  "Model": "Items/Weapons/Staff/Crystal_Ice.blockymodel",
  "Texture": "Items/Weapons/Staff/Crystal_Ice_Texture.png",
  "PlayerAnimationsId": "Staff",
  "IconProperties": {
    "Scale": 0.31,
    "Translation": [
      -26.31,
      -23.91
    ],
    "Rotation": [
      45,
      90,
      0
    ]
  },
  "Particles": [
    {
      "SystemId": "Ice_Staff",
      "TargetNodeName": "TopPommel",
      "RotationOffset": {
        "Pitch": 0,
        "Yaw": 180,
        "Roll": 0
      }
    }
  ],
  "Interactions": {
    "Primary": "Root_Ice_Staff_Primary_Wrapper",
    "Secondary": "Root_Ice_Staff_Primary_Entry"
  },
  "InteractionVars": {
    "Staff_Cast_Summon_Cost": {
      "Interactions": [
        {
          "Parent": "Staff_Cast_Cost",
          "StatModifiers": {
            "Mana": 0
          }
        }
      ]
    },
    "Staff_Cast_Summon_StaminaCost": {
      "Interactions": [
        {
          "Type": "Simple",
          "RunTime": 0
        }
      ]
    },
    "Staff_Cast_Summon_StaminaRegenDelay": {
      "Interactions": [
        {
          "Type": "Simple",
          "RunTime": 0
        }
      ]
    },
    "Staff_Cast_Summon_Launch": {
      "Interactions": [
        {
          "Type": "Parallel",
          "AdjustHeldItemDurability": -0.5,
          "Interactions": [
            {
              "Interactions": [
                {
                  "Type": "ChangeStat",
                  "StatModifiers": {
                    "Mana": -25,
                    "Stamina": -5
                  }
                }
              ]
            },
            {
              "Interactions": [
                {
                  "Type": "ChangeStat",
                  "Behaviour": "Set",
                  "StatModifiers": {
                    "StaminaRegenDelay": -1.5
                  }
                }
              ]
            },
            {
              "Interactions": [
                {
                  "Type": "Projectile",
                  "RunTime": 0.25,
                  "Config": "Projectile_Config_Ice_Ball",
                  "Effects": {
                    "ItemAnimationId": "CastSummonCharged"
                  }
                }
              ]
            }
          ],
          "Failed": "Staff_Cast_Fail"
        }
      ]
    },
    "Staff_Cast_Summon_Effect": {
      "Interactions": [
        {
          "Type": "Simple",
          "RunTime": 0.5
        }
      ]
    },
    "Staff_Cast_Summon_Fail": "Staff_Cast_Fail",
    "Spear_Swing_Left_Damage": "Spear_Swing_Left_Damage",
    "Spear_Swing_Right_Damage": "Spear_Swing_Right_Damage",
    "Spear_Swing_Left_Effect": "Spear_Swing_Left_Effect",
    "Spear_Swing_Right_Effect": "Spear_Swing_Right_Effect"
  },
  "DroppedItemAnimation": "Items/Animations/Dropped/Dropped_Diagonal_Left.blockyanim",
  "Tags": {
    "Family": [
      "Staff"
    ],
    "Type": [
      "Weapon"
    ]
  },
  "Weapon": {},
  "Light": {
    "Radius": 1,
    "Color": "#146"
  },
  "ItemSoundSetId": "ISS_Weapons_Wood",
  "MaxDurability": 300,
  "DurabilityLossOnHit": 0.5
}```
ornate raven
#

well thats a long one

desert wing
ornate raven
#

hmm

desert wing
#

but so far it doesnt seems to work

fickle pecan
#

huh is baseSpeed not used?? i set it to 0.5 instead of 5.5 and nothing changed

calm sable
#

ahhh

desert wing
torpid loom
ornate raven
desert wing
#

i believe that farming ice essence to use the staff is not efficient, because it is realy time consuming for the little you get

calm sable
merry fjord
#

They are all located in com\hypixel\hytale\server\core\asset\type. I do have a question, though: does each .json file represent a single asset ? Is there a one to one relationship?

calm sable
#

Did somebody here ever tried to change the basic stats? Health, Stamina, mana, Defense? Where can i touch that in the code?

civic zephyr
desert wing
# calm sable i dont think the underlaying system works(mana), sadly

well, i have a mod pack that make it work with some staff created by a modder, basicly this mod pack add mana as a value in the game and the staff use this mana to work, and those staff are working perfectly fine, there has to be a way, but yes, adding a simple recipe for ice essence could do the tricks as well

civic zephyr
#

But for the most part yes each json file is a singular asset

calm sable
#

How is the mana mod called?

fickle pecan
desert wing
calm sable
desert wing
storm nest
#

en mi perfil

merry fjord
civic zephyr
merry fjord
opaque cape
#

So I'm trying to Build my Mod using VS Code gradle build from the terminal But I just get a bunch of errors, But it builds perfectly in IntelliJ, What else am I needing to do to make this work??

      @Override
      ^
  C:\Users\Chris\Repositories\HytaleServerJump\HytaleServerJump\src\main\java\com\shubshub\plugin\HytaleServerJumpCommand.java:24: error: method does not override or implement a method from a supertype
          @Override
          ^
  C:\Users\Chris\Repositories\HytaleServerJump\HytaleServerJump\src\main\java\com\shubshub\plugin\HytaleServerJump.java:8: error: cannot find symbol
  public class HytaleServerJump extends JavaPlugin {
                                        ^
    symbol: class JavaPlugin
  C:\Users\Chris\Repositories\HytaleServerJump\HytaleServerJump\src\main\java\com\shubshub\plugin\HytaleServerJumpCommand.java:17: error: cannot find symbol     
  public class HytaleServerJumpCommand extends AbstractPlayerCommand {
                                               ^
    symbol: class AbstractPlayerCommand
  32 errors```
opaque cape
ornate raven
slate wren
civic zephyr
delicate lava
#

I took the basis of YUNG's dungeon addition mode and currently I manage to create a new instance and tap into it and it works very well with the prefabs he put in.

On the other hand, I don't understand how he managed to create such a prefab.
there are various prefab files and a prefab start file.

when on the map I solo I create a building and I put it in prefab I have a simple json

name.prefab

Do you have any idea of ​​the procedure he could have done to have such a prefab file?

fickle pecan
#
case "MoveSpeed":
                    MovementManager movementManager = store.getComponent(ref, MovementManager.getComponentType());
                    MovementSettings movementSettings = movementManager.getSettings().clone();
                    float speedIncrease = 1 + modifierValue.floatValue();
                    movementSettings.baseSpeed *= speedIncrease;
                    PhysicsValues physicsValues = store.getComponent(ref, PhysicsValues.getComponentType());

                    movementManager.setDefaultSettings(
                            movementSettings,
                            physicsValues,
                            player.getGameMode()
                            );
                    movementManager.applyDefaultSettings();
                    
                    player.sendMessage(Message.raw("Applied MoveSpeed modifier: " + modifierValue.floatValue()));
                    break;

Am i forgetting a step? this updates it, i can print the modified value from a command but the players doesnt move slower or faster....

opaque cape
ornate raven
#

seems like your imports wrong

civic zephyr
opaque cape
slate wren
summer otter
#

I send you a friend request

#

the server has locked down message policies

fickle pecan
civic zephyr
#

Just make one in the asseteditor

#

They're in the MovementConfig folder

calm sable
civic zephyr
desert wing
civic zephyr
#

That probably would fix it

opaque cape
thorn hamlet
#

@fathom junco accept my friend req

unkempt musk
grim wharf
fickle pecan
# civic zephyr That probably would fix it

can i get the PlayerRef from Ref<EntityStore> ref or Store<EntityStore> store or CommandBuffer<EntityStore> commandBuffer
or Player? im working within OnComponentAdded right now which doesnt pass PlayerRef

hot warren
civic zephyr
grim wharf
hot warren
#

ohhh

hot warren
#

i send you in private srry

echo forum
#

Is this place where folks are posting servers/groups to play with?

desert wing
# calm sable Ahh i see the items give you a total of "+10 Mana when equipped in Main-Hand"

welp including you 2 others modder trying to help me to fix this and so far we have no concrete answers of why this fix isn't working as the JSON synthax make sense, perhaps im gonna have to wait until players get interested into fixing the balance of the staff usage, either someone who release receipe for essence or convert the required ressource to mana like im trying to do

ripe bramble
calm sable
echo forum
fickle pecan
civic zephyr
ripe bramble
coral umbra
#

So if I make a plugin using the hytale's api, run the server locally on my pc, it is a public server where people can use an IP to join and play but i wont distribute the plugin online.Will the hytale team be able to legally ask for a copy of my plugin as the section 3.1 of eula says so

fickle pecan
desert wing
# fickle pecan whats your problem atm?

so basicly my idea come from the fact that i have noticed that farming ice essence or fire essence is a way too long process to use the staff, to fix this, i tried switching the staff usage from ice essence or fire essence to MANA instead, My mana value is already to 25 as im using a mods who use it, now i have tried to modify the JSON code for the staff to use MANA ressource instead of essence, and when i applied the new code on the assets editor, the code is working but the change did not take place in my game as its still using essence

fickle pecan
#

i see

#

i dont know what it looks like but mana is a stat and essence is an item iirc. you might need a custom component that does this for you if you havent already

#

(i have zero seconds in asset editor so im making assumptions)

desert wing
brisk surge
#

Has anyone had a problem with overwritten standard assets? Sometimes overwriting works correctly and sometimes it doesn't. I've already added “Dependencies”: { “Hytale:AssetModule”: “*”, “Hytale:CommonAssetModule”: “*”, “Hytale:InteractionModule”: “*”, “Hytale:NPCObjectives”: “*” }, but it didn't help

sage mango
#

hey does anyone know of a plugin that will teleport players back to safety if they fall into the void?

wet skiff
#

does anyone here know if the Hytale server.lang file can utilize variables/placeholders? My use case is a repeated element in a description that i don't want to type out/copy paste each time i make a new item.

hearty dragon
#

So I'm trying to make a portal that will create a new world every week. This should be straight forward by copying the hubworld portal, but setting the name of the world to prefix+date where date is the date of a specific day based on the local system's calendar.

This works for generating the world, but when trying to use the portal again, it fails at teleportToLoadingWorld, when attempting
componentAccessor.addComponent(playerRef, Teleport.getComponentType(), new Teleport(targetWorld, spawnPoint));

It produces an error:
Exception while ticking entity interactions! Removing!
java.lang.NoSuchMethodError: 'void com.hypixel.hytale.server.core.modules.entity.teleport.Teleport.<init>(com.hypixel.hytale.server.core.universe.world.World, com.hypixel.hytale.math.vector.Transform)'

Anyone have any idea why? Its literally all the exact same code except I set the name to a generated name at the beginning of the tick.

vast yacht
junior rapids
#

Planning on readding mana to the game. I think I am on the right path now

devout atlas
#

Any way to remove an entity with a command, like a enemies

junior rapids
#

The only unknown is how would I cast magic

jaunty vapor
#

@young sierra unban twat

opaque cape
#

So I've made a Custom Item in the Asset Editor, How do I attach that to my Mod with Custom Java Functionality?

Is there a good tutorial video on that?

junior rapids
dusty venture
#

If the player is attacking; How can I get the player in my handle() in my custom damageeventsystem? the player isn't the target (which is the store being passed in as a parameter) and it isnt the Damage.Source.getRef() either

devout atlas
#

¿Where i can find the docs?

opaque cape
wet field
#

how can I get the current language for server or player?

primal cypress
opaque cape
#

I've got a Custom_Asset.json file in Server/Item/Items/

devout atlas
junior rapids
#

src/main/resources/Server/Item/Items/Custom_Asset.json

primal cypress
devout atlas
storm nest
wet field
ancient pagoda
# dusty venture If the player is attacking; How can I get the player in my handle() in my custom...

Did you try this:

public class MyCustomDamageSystem extends DamageEventSystem {

    // ... setup, dependencies, query ...

    @Override
    public void handle(int index, @Nonnull ArchetypeChunk<EntityStore> archetypeChunk, @Nonnull Store<EntityStore> store, @Nonnull CommandBuffer<EntityStore> commandBuffer, @Nonnull Damage damage) {
        
        // 1. Get the abstract source
        Damage.Source source = damage.getSource();

        // 2. Check if the source is an EntitySource (This covers Melee, Projectiles, etc.)
        // Note: ProjectileSource extends EntitySource, so this works for arrows too.
        if (source instanceof Damage.EntitySource) {
            
            // 3. Cast it to get access to .getRef()
            Damage.EntitySource entitySource = (Damage.EntitySource) source;
            Ref<EntityStore> attackerRef = entitySource.getRef();

            // 4. Ensure the reference is valid
            if (attackerRef != null && attackerRef.isValid()) {
                
                // 5. Check if the attacker is actually a Player (vs a Skeleton, etc.)
                // You can use commandBuffer or store to get the component.
                Player attackerPlayer = commandBuffer.getComponent(attackerRef, Player.getComponentType());
                
                if (attackerPlayer != null) {
                    // Logic for when a player attacks
                    // Example: attackerPlayer.sendMessage(Message.raw("You attacked something!"));
                }
            }
        }
    }
}```
opaque cape
# junior rapids src/main/resources/Server/Item/Items/Custom_Asset.json

I assume I also need to edit the CollisionEnter Interaction

      "CollisionEnter": {
        "Interactions": [
          {
            "Type": "HubPortal",
            "WorldName": "shubshub_world",
            "WorldGenType": "Hytale",
            "Next": {
              "Type": "Simple",
              "Effects": {
                "LocalSoundEventId": "SFX_Portal_Neutral_Teleport_Local"
              }
            }
          }
        ]
      }
    },```

To call a Java Function or something, How can I do that?
unkempt musk
opaque cape
#

Also what is the import for the Interaction.CODEC

junior rapids
west elk
#

com.hypixel.hytale.server.core.modules.interaction.interaction.config.Interaction

opaque cape
#

So for example

package com.shubshub.plugin;

import com.hypixel.hytale.server.core.plugin.JavaPlugin;
import com.hypixel.hytale.server.core.plugin.JavaPluginInit;
import com.hypixel.hytale.server.core.modules.interaction.interaction.config.Interaction;

import javax.annotation.Nonnull;

public class HytaleServerJump extends JavaPlugin {

    public HytaleServerJump(@Nonnull JavaPluginInit init) {
        super(init);
    }

    @Override
    protected void setup() {
        super.setup();
        this.getCodecRegistry(Interaction.CODEC).register("YourInteraction", HytaleServerJumpCommand.class, HytaleServerJumpCommand.CODEC);
    }

}

This is correct?

west elk
#

Does it error if you run it?

opaque cape
# west elk Does it error if you run it?
Execution failed for task ':compileJava'.
> Compilation failed; see the compiler output below.
  C:\Users\Chris\Repositories\HytaleServerJump\HytaleServerJump\src\main\java\com\shubshub\plugin\HytaleServerJump.java:18: error: cannot find symbol
          this.getCodecRegistry(Interaction.CODEC).register("ShubshubServerJump", HytaleServerJumpCommand.class, HytaleServerJumpCommand.CODEC);
                                                                                                                                        ^       
    symbol:   variable CODEC
    location: class HytaleServerJumpCommand
  1 error```
junior rapids
#

You're not using commands, it is better you extend an interaction which suits your use case. There are various interactions in the sources

opaque cape
#

I was just using a pre-existing file I had xD

#

But thanks I'll based it off an existing Interaction

opaque cape
#

I need to decompile HytaleServer.jar right?

junior rapids
#

yes

#

you can google it how to do it yourself

#

I had to run a python script to get mine

west elk
#

i downloaded vineflower from the github and ran it from the command line

dusty venture
robust quiver
#

hcf

zinc lake
#

Hey yall, is the network down or something? I wanted to play so bad so i made an account and bought the game but i never got to try it. Says when i try to login that i already have a account with the same email.

#

Cant login to any accounts what so ever

knotty goblet
#

Hello! Need some assistance with something. Trying to make a bat house using the chicken coop as the concept. Bat goes in and produces poop as the product. I am trying to add bats to the Accepted NPC groups but am not finding the bat. What should I do?

rose steppe
#

hyfactions is broken with last update?

primal cypress
#

guys do you know any methods to open the assets editor without opening the game directly?

hearty garden
#

Do I have to update server after update 1?

#

Same question for pre release update 2

desert wing
#

@calm sable just letting you know that i have successfully completed a mod that allow craftable Fire and Ice essence, currently trying to understand how to upload this on curseforge, this should fix things while we are working on finding a way to convert essence to mana usage for staffs

primal cypress
hearty garden
#

Any idea how to enable update 2 pre release for server?

gaunt forge
#

succeeded in adding a custom workbench to the game with my plugin. does anyone know where / how the developers take screenshots of their models for the icons? i'd like to do this too in order to match the style / camera angle / background that they have.

primal cypress
dusty venture
#

hmmmm anybody know why components added to the player entity in a PlayerReadyEvent dont exist on the source entity for damageevents caused by the player?

gaunt forge
#

i made the thing entirely without using the asset editor

primal cypress
gaunt forge
finite fern
#

Made my first scoreboard plugin similar to tab in minecraft

primal cypress
gaunt forge
#

man i may have to find some volunteer modeler / texturers later on when ive got more of the functionality programmed. i can a bit, but.. i just don't have the patience or desire to spend huge amounts of time matching the art style of this game pixel by pixel lmao

opaque cape
#

Using vineflower to decompile HytaleServer.jar

  1. Its taking literally ages
  2. I keep getting OutOfMemoryError for various files?
fickle pecan
#

vineflower? im using PeaZip, works like a charm

quartz wave
#

try cfr?

opaque cape
quartz wave
#

benf dot org slash other slash cfr

gaunt forge
#

im a total noob when it comes to making plugins / mods for any game and big (but not complete) noob to Java in general. I just used a template i found from the curseforge guide and the instructions from that and chatgpt help to help me get everything setup and running. im unfamiliar with this decompiling concept. can someone please tl:dr for a newb?

primal cypress
gaunt forge
primal cypress
quartz wave
opaque cape
#

Trying CFR now will let youses know how we get on

primal cypress
quartz wave
#

other features like ctrl + shift + f to search files works better after decompiling

opaque cape
#

So good that Hytale isnt Obfuscating their code from the start

gaunt forge
mystic canyon
#

Hey, i'm getting an error registering an event.

Cannot invoke "com.hypixel.hytale.component.query.Query.validateRegistry(com.hypixel.hytale.component.ComponentRegistry)" because "query" is null

Anybody know a fix?

    public Query<EntityStore> getQuery() {
        return PlayerRef.getComponentType();
    }```

```   @Override
    protected void setup(){
        this.getEntityStoreRegistry().registerSystem(new DamageEvent());
    }```
primal cypress
# gaunt forge great idea

like i've made some model that includes metallic part, i've extracted the armor workbench and the iron ingot model, opened them in blockbench and cloned the paint, if you need to know specifically how to do that just ask i will try to explain it

gaunt forge
quartz wave
gaunt forge
primal cypress
gaunt forge
zenith adder
#

If I have a List inside a System, and I add new objects to that list from a command, should the System be able to see those new objects inside the tick() method? In my case, the command successfully adds the objects, but when the system iterates over the list in tick(), the new instances do not appear.

gaunt forge
#

though i have not played terraria so i have no idea how that particular mod works. i plan to do something mildly inspired by Refined Storage, but kinda different.

primal cypress
quartz wave
opaque cape
#

For VS Code, Once I have the Server Decompiled, How can I configure it so I can use that code for Autocompleting Imports and such in my Mod code?

#

If that makes sense

primal cypress
quartz wave
quartz wave
north current
opaque cape
zenith adder
north current
#

Okay fair enough!

opaque cape
#

I did start with it, Just VS Code is my preferred IDE 😛

gaunt forge
# primal cypress oh okok, the one of terraria is similar to the rs, but have this special craftin...

i see. im thinking of doing a system where you can craft server blocks. a server block can have a certain number of devices / peripherals that it supports on your overall computer network, such as monitors for accessing the computer storage and storage blocks which act as the actual storage place for things you put in the inventory there. more servers connected together = greater device capacity, more storage blocks on network = greater item storage capacity on network. is this close at all to what you are doing?

opaque cape
#

No hate here

north current
#

So what you’re saying is you’re on a VSCode fork that allows integrated AI capabilities

opaque cape
#

Its Ok I think I figure it out anyway

north current
#

😅🤣

opaque cape
quartz wave
north current
#

Bingo

quartz wave
gaunt forge
opaque cape
#

Please dont assume I'm a vibecoder Because I'm not

north current
#

At the very minimum use something like vineflower to decompile it so you get .java files instead of classes.

covert tide
#

I use vscode too, it's better than itellej

opaque cape
#

I'm 95% a traditionalist, And sometimes just ask the AI some questions

north current
opaque cape
#

You've heard of tradwife, Now get ready for tradcoder

covert tide
#

itellj has built in ai now, like what

north current
#

Trad coders know how to decompile and index

#

😂😂😂

opaque cape
north current
#

Fair enough

opaque cape
#

Dont need to decompile JS or C++ or Game Maker Language and the likes

covert tide
#

you didnt decompile java in college?

#

thast crazy, what are they teaching

opaque cape
#

It was a Game Development Specific course actually

gaunt forge
#

my experience mostly surrounds typescript with npm/nestjs/nextjs/react stuff but im also very familiar with general programming concepts and practices. i have small amounts of experience with C#/Python/Lua/PHP/Ruby on Rails and a very long time ago a tiny bit of Java. So.. im not exactly a vibe-coder, but i am kind of a vibe-learner in that im using AI to help me figure out how stuff like gradle works. or what gradle even is.

covert tide
#

c++ and java are base for most colleges, game engine is weird unless you were some specific major

#

ah gotcha

opaque cape
north current
#

Surprised that you went to college for this and you prefer VSCode. Usually those guys are preaching arch and vim

primal cypress
opaque cape
gaunt forge
covert tide
#

now thats a self conflicting name lol.
software engineering in game development... lol

north current
#

Lowkey makes it even more surprising

covert tide
#

what engineering does a game dev do.

gaunt forge
#

but i also know VSCode is not setup to work well with Java projects so im trying to learn intellij.

north current
#

Most swe foreigners I know are on some sort of Linux distro

opaque cape
covert tide
#

writting code is development work, not SWE

opaque cape
#

uwot

unkempt musk
covert tide
#

SWE is integrating with real world hardware

opaque cape
#

Writing code is a form of engineering software, What are you smoking bro

north current
primal cypress
opaque cape
#

Can I have what you're smoking bro

covert tide
#

nah people just dimish the word to amke thier job sound cooler

worthy marten
north current
#

I think you’ve got it a little twisted dragonhunter

opaque cape
gaunt forge
#

idk that we really need to get the chat distracted with super specific technical differences. end of the day we're all trying to do more or less the same thing in here

opaque cape
#

Yeah lets get back to Hytaling

primal cypress
gaunt forge
primal cypress
gaunt forge
primal cypress
gaunt forge
primal cypress
covert tide
ancient burrow
#

could it be that something is going wrong when using event.setWorld(...) in PlayerConnectEvent? I noticed killing the player usually tells me if something is wrong with the player entity and i see this error message on respawn after i redirected the player

[2026/01/24 00:00:13 SEVERE] [World|8dc081c5-3fba-4b38-9f2a-80579697bc5c] Failed to run task!
java.lang.IllegalStateException: Invalid entity reference!
gaunt forge
#

i like the idea of using the vanilla chests i just dont know how that would work with that limiation in there. you can't inform the user how much storage space they have left because there is no way to really know

worthy marten
charred fulcrum
#

Anyone have a good AFK Zone plugin for my server? People gets rewards for stay AFK

gaunt forge
zenith adder
# quartz wave depends on how you use the system or how the system works underneath, if the sys...

I register the System once using the second constructor, so it starts with one object already added to the internal list. That specific object works correctly in the world.
However, when I try to add a new object through a command in-game, two strange things happen.

  1. When I log the list from the system, inside the game it appears to be empty, as if the constructor never added the object I passed when registering the system.
  2. When I run the command and log the list again, the new object does appear in the log, but it still does not work in the game.

It’s like the list being iterated in the tick method and the list stored as a system attribute are not the same list. But that doesnt make sense because they are the same
I can give you the actual code and some logs

opaque cape
#

Ok so CFR finished decompiling.... Where did it put the decompiled code lmao

primal cypress
gaunt forge
# primal cypress yes yes

well im willing to at least share things that i find useful. though im just literally getting started now.

opaque cape
#

I didnt specify any specific directory to decompile into

primal cypress
uneven tide
#

I've been trying to figure out how to create custom instances but when I select my bson file in /instances the game just gets stuck on "Loading..."

primal cypress
gaunt forge
#

ill let you know if i find anything about it.

primal cypress
harsh quiver
surreal flame
#

hey guys i have a custom chest defined by and in the inventory it gets its name and description however when trying to interact with it it Still says F to open Small XXXX Chest.anyone know what i need to set in the json to set it to something else?

primal cypress
surreal flame
quiet gulch
#

is there any documentation on this

summer sapphire
#

Is it just me or does the asset editor search SUCK!

primal cypress
#

you need to set up the name in the server.lang file, and then in the translation field in the json you put the path like "server.<name of the variable>" "server." is the name of the file .lang that need to be put in the "Languages" > "en-US" folder for example "item.name.my_new_chest.name=Custom chest" in the json under translation you will put server.item.name.my_new_chest.name and the game will update that after the reboot of the server i think(for me work only after that) @surreal flame

surreal flame
primal cypress
surreal flame
#

nah only name and i already added description but why you gave me a clue lets check the original file

opaque cape
#

java -jar .\cfr-0.152.jar C:\Users\Chris\Repositories\HytaleServerJump\HytaleServerJump\libs\HytaleServer.jar --outputdir /tmp/decompiled

So I ran this command, I cant for the life of me fine where its put the files

I made a /tmp/decompiled directory inside the folder with CFR and the code isnt there

keen sail
#

Has anyone developed any towny plugin that has war mechanics?

slim hatch
#

Hey has anyone used ProjectileConfigs? cant seem to trigger any damage even with vanilla ones

opaque cape
#

Ok I've solved it now I had to put a . before /tmp

still field
#

Is there a way to display floating text in the world

storm ocean
#

How to turn off server auth?

#

for players

still field
west elk
primal cypress
primal cypress
primal cypress
west elk
#

By reading the guide you acutally learn something

primal cypress
#

not sure if you need to trust the ai for decompiling file

mystic canyon
#

is there a component for living creatures? like animals who attacked me? (entitysource)

primal cypress
mystic canyon
#

where is is located? @primal cypress

opaque cape
tawdry crescent
#

Hey !
Do you have some doc about giving a custom component to a custom bloc ?

slim hatch
#

Hey has anyone used ProjectileConfigs? cant seem to trigger any damage even with vanilla ones

primal cypress
final adder
#

whats a good server

unkempt musk
rotund fossil
#

Is there some good documentation on making a custom event?

unkempt musk
primal cypress
#

guys, simple question, if i've a local server that i start for test the plugin, 1 the server automatically reload the plugin if i make some change in the code (i think that doesn't do that)? 2 there is a method for reloading the plugin, like a button in-game or a command prompt to the server?

west elk
primal cypress
#

ok

cerulean arrow
#

My friend and I are working on a faction / claim plugin I want the claims to show up in chunk size on the map, how can I do that? We managed to get a marker created on the map in the middle of the chunk but that also creates a waypoint on the compass

hallow ferry
#

What development library do yall suggest using for creating my own plugins? I've seen a few out in the wild. I've seen "HytaleDevLib" and "TaleLibs" plus other smaller ones that do one specific thing or another.

sonic mauve
#

Hey,
can I add my own blocks to my plugin?

Or is this only possible with packs?

(I've managed to do it with items, but I'm stuck with my plugin at the moment).

west elk
#

just add the "resources" folder to your plugin

sonic mauve
#

ok thanks

west elk
#

actually, you should already have the manifest.json, right?

sonic mauve
#

yeah

west elk
#

yeah that's the root of the pack. just add "IncludesAssetPack": true

sonic mauve
#

ok i try

rotund fossil
#

For custom events do I have to make my own event system? I'm not finding much on it.

west elk
rotund fossil
#

I have only seen some stuff on listening for pre made events not how to create, call, and list for custom events. Could you point me in the right direction?

west elk
rotund fossil
#

Ahhh thank you I did follow a pre made event to see how they were made so I do have one created I just couldn't find how it was triggered! Thanks

winged shard
#

did anyone experienced
java.lang.IllegalArgumentException: World default already exists on disk! while uploading a backup world?

winged shard
#

where?

west elk
#

uuid field in the config.json (and config.json.bak)

winged shard
#

there's only a world

#

(which is default)

rotund fossil
west elk
#

each world has an asset store

rotund fossil
#

Okay thank you

west elk
#

where the entity components are stored

wicked swallow
#

Hello, when I start my server it simply gives this error which I can only resolve by deleting the default folder.
2026/01/24 01:17:59 SEVERE] [SERR] java.util.concurrent.CompletionException: com.hypixel.hytale.common.util.CompletableFutureUtil$TailedRuntimeException: java.util.concurrent.CompletionException: java.lang.IllegalArgumentException: World default already exists on disk!

The problem is that it freezes the rest of the startup process.

winged shard
# winged shard did anyone experienced `java.lang.IllegalArgumentException: World default alrea...

For context, I'm dockerizing the server, I'm using a already built image which is open source rxmarin/hytale-docker:latest

I've tried deleting universe and uploading my backup I got this error.

I also tried generating from the dockerized application a world (which started)
and when I deleted the volume, started again the container and uploaded the same backup generated from the same binaries I got the world already exists on disk

winged shard
wicked swallow
winged shard
#

is there a selector for the version?

#

Version

✅ Downloader: 2026.01.09-49e5904
✅ Server: 2026.01.17-4b0f30090

wicked swallow
#

I simply copied the Server folder from the game itself; I didn't use the downloader.

winged shard
#

Lemme check the patchline real quick

#

PATCHLINE release Release channel

wicked swallow
winged shard
#

i'm on release

#

It's not that the problem I do have the assets zip and all the binaries right

#

Nope, it replicates everytime I download the binaries with fresh worlds generated on the same binary version

#

😵‍💫

sharp pumice
#

Hey there! Anyone know why im getting this error?

        this.getEntityStoreRegistry().registerComponent(
                PlayerIntTag.class, "PlayerIntTag",
                BuilderCodec.builder(PlayerIntTag.class, PlayerIntTag::new)
                        .append(new KeyedCodec<>("Value", Codec.INT),
                                PlayerIntTag::set, PlayerIntTag::get)
                        .build());```
Cannot resolve symbol 'INT'
winged shard
#

World loads fine in singleplayer, I'm using java 21 and on a world generated in runtime everything works, IDK about the docker image I checked it, doesnt do that much it's also open source software

#

romariin/hytale-docker i can't send up the link but if you add the github domain before you should see the source for the cli and the docker image

pulsar oak
#

does anybody have any clue on how to make a created entity walk forward. just that

sharp pumice
winged shard
#

i need an isolated enviroment

glossy shadow
#

CI + K3s = ❤️

winged shard
#

hytale-docker it's actually using this image as runtime and not java21
FROM eclipse-temurin:25-jre-alpine

#

but idk tho doesnt seems to me an issue of the image

#

please tell me u got the solution xd

#

it's default

#

to a random name or do i have to rename the directory default?

#

it's already that

#

yes

junior flame
#

Does anyone know where the new download for the Hytale dedicated server and asset files are because mine seems to be out of date and I don't see them on the Hytale website?

winged shard
#

first day of asking simon to open source the server so i can solve the problem myself

fleet sphinx
#

It's not obfuscated

winged shard
#

I'm trying to upload a backup world into a dockerized server

primal cypress
#

guys, i need some help in making a .ui file, for now this is the content:

$C= "../Common.ui";

Group {
  Anchor: (Width: 400, Height: 250);
  Background: #1a1a2e(0.90);
  LayoutMode: Top;
  Padding: (Full: 5);

  Label #Title {
    Text: "Test Interactive GUI";
    Anchor: (Height: 40);
    Style: (FontSize: 20, TextColor: #ffffff, Alignment: Center);
  }

  $C.@TextField #TextInput_name {
    Anchor: (Height: 25);
    PlaceholderText: "Enter the text to print in the chat";
  }

  $C.@TextButton #TextButton_send {
    Anchor: (Height: 45);
    Text: "SEND";

  }
}

if i try to join with this setup the game doesn't allow me to enter saying "unable to load CustomUI" i think the problem is the $C.@TextField and $C.@TextButton (because if i remove them i can join) i followed a yt video of troubleDEV and his video work everything, and i've the same folder structure

fleet sphinx
#

There's some GUI tools like Recaf, CFR and ASM, JByteMod that can make it easier

winged shard
#

by using that docker image, it does almost everything for you

its a typescript cli which handles

token auth
server download and extraction

#

then the startup works by itself

strong musk
fleet sphinx
#

Mixins as well, you can patch method functionality. That's the cleanest way to do it

winged shard
#

i just delete universe and paste the backuped one

primal cypress
winged shard
#

the world structure is not that big, i checked most of the file and they seems right

#

I also tried that same output

glossy shadow
winged shard
#

yes

#

it wouldn't start tho even if default and config has a different name i tried that as well

#

it looks to me like a server bug

glossy shadow
#

can you show the entire exception which you get on start ?

winged shard
#

works in local?

primal cypress
winged shard
#

did you try to replace universe?

#

a fresh world works, the error occours only when switching universe

#

can you share your dockerfile if possible or are you using my same repo?

#

not your world just the dockerfile

#

so i can test the same enviroment as yours

brittle egret
#

I just successfully made a plugin GUI menu for checking and updating plugins and selecting a version and download all through the GUI 🙂

winged shard
#

.

brittle egret
#

wish I could post a picture lol

sonic mauve
strong musk
winged shard
#

u did that using plain wsl?

fleet sphinx
#

"Plain WSL"? what does that mean

strong musk
glossy shadow
winged shard
fleet sphinx
night fossil
#

Can players have a more simple way to Play with each other?

strong musk
sonic mauve
# glossy shadow are u sure it loads on start ? there should be messages about the assetpacks

I only find this error

java.lang.NullPointerException
        at java.base/java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011)
        at java.base/java.util.concurrent.ConcurrentHashMap.putIfAbsent(ConcurrentHashMap.java:1541)
        at java.base/java.lang.ClassLoader.getClassLoadingLock(ClassLoader.java:681)
        at com.hypixel.hytale.server.core.plugin.PluginClassLoader.loadLocalClass(PluginClassLoader.java:130)
        at com.hypixel.hytale.server.core.plugin.pending.PendingLoadJavaPlugin.load(PendingLoadJavaPlugin.java:43)
        at com.hypixel.hytale.server.core.plugin.pending.PendingLoadJavaPlugin.load(PendingLoadJavaPlugin.java:15)
        at com.hypixel.hytale.server.core.plugin.PluginManager.setup(PluginManager.java:215)
        at com.hypixel.hytale.server.core.HytaleServer.boot(HytaleServer.java:345)
        at com.hypixel.hytale.server.core.HytaleServer.<init>(HytaleServer.java:303)
        at com.hypixel.hytale.LateMain.lateMain(LateMain.java:54)
        at com.hypixel.hytale.Main.main(Main.java:43)
winged shard
fleet sphinx
#

Have you tried to load your universe without docker? Just on your host machine, if that's where you test

winged shard
glossy shadow
fleet sphinx
#

What's SP

winged shard
#

I also think that, but I don't get which data is wrong

#

there are not that much of variables and the hytale server manual doesn't help

#
  "Version": 3,
  "ServerName": "Hytale Server",
  "MOTD": "",
  "Password": "",
  "MaxPlayers": 100,
  "MaxViewRadius": 32,
  "Defaults": {
    "World": "default",
    "GameMode": "Adventure"
  },
  "ConnectionTimeouts": {
    "JoinTimeouts": {}
  },
  "RateLimit": {},
  "Modules": {},
  "LogLevels": {},
  "Mods": {},
  "DisplayTmpTagsInStrings": false,
  "PlayerStorage": {
    "Type": "Hytale"
  }
}
#

me too, i'm asking because there arent many info out there

#

idk tomorrow i will also try on wsl or my host machine

#

im more confused than anything

#

lemme try

#

"WorldGen": {
"Type": "Hytale",
"Name": "test"
},

#

I've found this setting into config.json of the worlds/default

#

yes i'm chaing also that to test

#

it was Default before

raven hollow
#

anyone seen the memories plugin crash before?

glad juniper
#

What is the name of the property called to make elements in the .ui file scrollable?

winged shard
#

okok

winged shard
#

i changed config.json of the root directory to test

this is my tree structure

universe

  • players
    (empty)
  • worlds
    • test
#

done, launching it

#

Caused by: java.lang.IllegalArgumentException: World test already exists on disk!

#

server is release

#

client should be released as well i didnt change any flag in the client

#

Version: 2026.01.17-4b0f30090

client

#

launcher version
release/2026.01.23-e5bfce5

#

patchline is release

#

Idk because it comes from aternos

I also had that doubt so I tried generating with my enviroment a world backuping it

Deleting the volume -> importing the generated world

I got the same error

#

so its not def a version issue

opaque cape
#

For anyone using VS Code, Please assist

I've added the DecompiledServer folder to my Workspace, How can I attach it to Intellisense?

winged shard
#

yes LMAO

but i tried another world generated from the same enviroment (my docker) and i got the same error

#

i would just post the world but i cannot do it here i can send it to u in private

#

but there's nothing special in it i generated it yesterday

#

yes but as i said I also used a generated world from the same enviroment and I occurred into the same error

sharp pumice
#

does anone know how to register this component?

public class PlayerDataComponent implements Component<EntityStore> {

    private Integer PlayerState;
    private Integer Team;

    public PlayerDataComponent(Integer state, Integer Team) {
        this.PlayerState = state;
        this.Team = Team;
    }
    @Override public Component<EntityStore> clone() { return new PlayerDataComponent(PlayerState , Team); }
}```
winged shard
#

yea but which flag xd

winged shard
#

this is my aternos config.json

{
    "MaxPlayers": 20,
    "MaxViewRadius": 5,
    "Password": null,
    "Defaults": {
        "World": "kyrokun",
        "GameMode": "Adventure"
    },
    "Modules": {
        "IdleTimeout": {
            "TimeoutMinutes": 30
        }
    },
    "Version": 3,
    "ServerName": "Hytale Server",
    "MOTD": "",
    "LocalCompressionEnabled": false,
    "ConnectionTimeouts": {
        "JoinTimeouts": {}
    },
    "RateLimit": {},
    "LogLevels": {},
    "Mods": {},
    "DisplayTmpTagsInStrings": false,
    "PlayerStorage": {
        "Type": "Hytale"
    }
}
humble bronze
winged shard
#

with a fresh world also lol

hybrid quartz
#

Looking for German Mod/Plugin Creators they like to create a unique Server with a cool unique Playfeeling (Theme: medival Life) if ur interest let me know. Note: its a just for fun project. We will upgrade the Gaming Life for much players that life and love the Hytale vibe feel free to dm💚 but pls just germans for a better communication.

I respond later 🙂

static shadow
winged shard
#

I also tried importing the world config and the backup I ran into the same error

#

i can import the same configuration and the backup, it's gonna give the same error xd

#

lemme try

gaunt forge
#

is there documentation on things like block .json files and things like categories?

tidal tusk
#

alghuem ai com mundo criado??

sharp pumice
winged shard
#
{
  "Version": 4,
  "UUID": {
    "$binary": "REDACTED",
    "$type": "04"
  },
  "Seed": 1769119301873,
  "WorldGen": {
    "Type": "Hytale",
    "Name": "Default"
  },
  "WorldMap": {
    "Type": "WorldGen"
  },
  "ChunkStorage": {
    "Type": "Hytale"
  },
  "ChunkConfig": {},
  "IsTicking": true,
  "IsBlockTicking": true,
  "IsPvpEnabled": false,
  "IsFallDamageEnabled": true,
  "IsGameTimePaused": false,
  "GameTime": "0001-01-02T06:48:40.334817603Z",
  "ClientEffects": {
    "SunHeightPercent": 100.0,
    "SunAngleDegrees": 0.0,
    "BloomIntensity": 0.30000001192092896,
    "BloomPower": 8.0,
    "SunIntensity": 0.25,
    "SunshaftIntensity": 0.30000001192092896,
    "SunshaftScaleFactor": 4.0
  },
  "RequiredPlugins": {},
  "IsSpawningNPC": true,
  "IsSpawnMarkersEnabled": true,
  "IsAllNPCFrozen": false,
  "GameplayConfig": "Default",
  "IsCompassUpdating": true,
  "IsSavingPlayers": true,
  "IsSavingChunks": true,
  "SaveNewChunks": true,
  "IsUnloadingChunks": true,
  "IsObjectiveMarkersEnabled": true,
  "DeleteOnUniverseStart": false,
  "DeleteOnRemove": false,
  "ResourceStorage": {
    "Type": "Hytale"
  },
  "Plugin": {}
}
#

java.lang.IllegalArgumentException: World kyrokun already exists on disk!

I imported the same config and universe from aternos

static shadow
winged shard
#

Yes it does!

#

😭

#

and it even restarts fine it's some option hidden somewhere

#

yea lmaooooooo it does

#

I tried doing that like a couple of hours ago, I tried also playing with the json file and adding the new generated id to my backup (guess what? it didnt work)

#

I don't get what's the unique hash or string which identifies a valid world from a not valid world

summer ibex
#

Is there a plugin to spawn prefabs in during world generation?

winged shard
#

lemme generate a world i'll download it

summer ibex
#

yes

#

i have prefabs already, im jsut trying to figure out how to get them to be spawned/created when the world is generated.

desert hill
#

does anyone know if getUuid() is deprecated. I'm using ctx.senderAs(Player.class) to get the player, but player.getUUID() is marked as deprecated on my intellij. if so whats the recommended way to get it

winged shard
#

my backup

  "SpawnSuppressorMap": {
    "266f710e-453a-3c96-a893-85b777636df1": {
      "Position": {
        "X": 86.0,
        "Y": 105.0,
        "Z": -178.0
      },
      "Suppression": "Spawn_Camp"
    }
  }
}

fresh world

{
  "SpawnSuppressorMap": {}
}
#

all the other config files are the same

#

Let me import just the seed of the world lets see the outcome

#

it booted

#

next ill reimport the players

static shadow
winged shard
#

LOOOOL i managed to reimplement my items and my last position

opaque cape
#

Ok so I've just compiled my mod and booted up my world with the mod enabled
My file structure is as follows

src > main > java > com > shubshub > plugin > [Code for the Mod]
src > main > resources > Server > Item > Items > [My Custom Item].json

But I cant seem to find my item in the Creative menu at all, How do I give it to myself?

Is there something extra I need to do to make the gradle build command include these files in the mod?

winged shard
#

It just misses the edited chunks, lemme reimport them as well lets see

glossy shadow
opaque cape
#

Yeah the mod is enabled for the world

winged shard
#

[2026/01/24 02:31:46 SEVERE] [ChunkStore] Failed to load chunk! 6, -8

opaque cape
#

Where do I find that?

winged shard
#

Too good to be true

glossy shadow
#

bruh

opaque cape
#

Ok 1s

#

Huh.... I guess it doesnt appear there

midnight burrow
#

has anyone had issues with mods that add ores where an ore will overwrite another mods ore generation?

opaque cape
#

Oh wait if I disable "Show only descriptive features" it does appear 😄

winged shard
#

yea, i tried also using the sp backup which loads the edited chunks

while in sp works the server crashes
there's probably some unique value somewhere which is not mentioned

better than nothing ill also try this behaviour on host machine just to have a confirmation

opaque cape
winged shard
#

Everything is back except the blocks i've added/removed into the world

glossy shadow
#

I just asked you a thing

#

If it's not loaded on start, it wont work lol

opaque cape
glossy shadow
#

give a look in the log and look if the server loads the mod also as assetpack

opaque cape
#

Where do I find the logs xD

glossy shadow
#

In the root folder of your world / server ?

opaque cape
#

Oki 1s

#
[2026/01/24 02:33:43   INFO]          [PluginManager] Loading pending plugins from directory: C:\Users\Chris\AppData\Roaming\Hytale\UserData\Mods
[2026/01/24 02:33:43   INFO]          [PluginManager] - com.shubshub:HytaleServerJump from path HytaleServerJump-0.0.1.jar
[2026/01/24 02:33:43   INFO]             [Universe|P] Scheduled backup to run every 30 minute(s)
-=|Setup|1.0```

Yup it is
#
-=|Starting|99.0
[2026/01/24 02:33:54   INFO]                  [PluginManager] Enabled plugin Hytale:NPCObjectives
-=|Starting|100.0
[2026/01/24 02:33:54   INFO]                  [PluginManager] Enabled plugin com.shubshub:HytaleServerJump
[2026/01/24 02:33:54   INFO]                   [HytaleServer] Plugin manager started! Startup time so far: 11sec 947ms 131us```
glossy shadow
#

Thats Plugin and not assets load.

opaque cape
#

Oh ok, What do I need to do to make sure the Asset loads then?

glossy shadow
#

Look after [AssetModule|P] Loading packs from directory: mods

opaque cape
#

Hmmm I dont think it loads, Is there a piece of code I need to add to my mod to make it do that?

glossy shadow
#

Google for hytale mod assets doc, there should be many docs for example from "HytaleModding" ^^

iron sail
#

Can someone help me? I can't enter any world; it says connection error.

glossy shadow
#

more context? singleplayer/multiplayer ?

iron sail
#

singleplayer

glossy shadow
#

whats the exact error ?

iron sail
#

This appears when I enter a world: FAILED TO CONNECT TO SERVER ( an unexpected error occurred) server failed to boot

solid fox
#

Hi there, originally JS environment & rust developer here.
I wanna dev my own mods for my server and started relearning java. I used an example plugin made by a modder, compliled it and it works like a charm.
I would like to know where i can find all the official (& unofficial useful ?) documentation to start with all the informations we have to date.
Could someone guide me through the ecosystem and recommand links please ?

molten crystal
rose atlas
#

i made a dust2 1v1 server XD guns and everything

static shadow
solid fox
#

britakee-studios gitbook hytale-modding-documentation i guess is the only thing i need, right ?

solid fox
molten crystal
ancient scaffold
#

Hey everyone, I'm looking for a team or group of people to join in doing development stuff, I was a minecraft plugin dev for many years and want to get into hytale devving more and creating mods and plugins. If anyone has any opportunities or communities I could join, let me know!

patent vapor
#

how do i make a new entity?

nocturne kettle
#

Does anyone know how to make it so that everytime a player joins, it brings them to a spawn? I am stuck 🙁

primal cypress
primal cypress
#

try to look in the Events folder

nocturne kettle
#

I have a PlayerJoinedEvent

formal flax
#

my game crashed and I cant rejoin my world :/

opaque cape
#

alright lads, I did it, The Portal works, It triggers my custom function

Now.... How do I go about actually Jumping servers xD

#

What docs should I be reading

pulsar oak
#

does TransformComponent contain head rotations as well?

gentle maple
#

no

ancient fox
#

no

primal cypress
#

guys, i was starting to doing a new type of blockstate, but looking at the source files its says that will be deprecated, can i stil use blockstate or i need to use another class?

muted lark
#

Hey guys does anybody know of a plugin where u can customize the claim block custom ids with custom sizes, cuz me and buddy have made custom claim assets we want to use for our server to sell in shop!

jade osprey
#

how to use blocks invisibles?

gentle maple
swift merlin
primal cypress
#

oh ok

woven siren
#

someone know how load dynamically images on .ui?

spare kraken
#

@fluid coral Re: Prefab builder, would it be possible to have it pre-populate with vanilla prefabs?

static shadow
opaque cape
#
                    });```
#

This does the trick right here

static shadow
opaque cape
#

VS Code provides a nice little UI for Copilot, But I dont let it actually write any of the code

desert hill
#

bit of a dumb question, how do you get player ref from player

opaque cape
#
        
        PlayerRef playerRef = commandBuffer.getComponent(ref, PlayerRef.getComponentType());```
random briar
#

Start by creating a new class that extends DeathSystems.OnDeathSystem. This allows your system to automatically react whenever an entity dies. it does not say how to add it in to the system, how do i add this to the system?

#

like how i added the Damage but i tried to add the deathsystem to but nothing happens
entityStoreRegistry.registerSystem(new DamageEvent());

onyx carbon
#

Both dont work for me

opaque cape
fading light
#

Whats the best reference for documentation? Wanting to make a plugin/mod

opaque cape
#

And context is an @Nonnull InteractionContext context,

onyx carbon
#

what is thatHypixel_ThisIsFine

opaque cape
#

Its an argument on firstRun x..x For an Interaction

#
                        @Nonnull InteractionContext context, 
                        @Nonnull CooldownHandler cooldownHandler) {
        CommandBuffer<EntityStore> commandBuffer = context.getCommandBuffer();
        Ref<EntityStore> ref = context.getOwningEntity();
        
        PlayerRef playerRef = commandBuffer.getComponent(ref, PlayerRef.getComponentType());

        if (playerRef == null) {
            return;
        }

        World world = commandBuffer.getExternalData().getWorld();
        
        // Show them a title before transferring
        EventTitleUtil.showEventTitleToPlayer(
            playerRef,
            Message.raw("Transferring to Server in 5 Seconds"),
            Message.raw("Please wait..."),
            true
        );
            
                  // Schedule the server transfer after a delay (e.g., 2 seconds)
            CompletableFuture.runAsync(() -> {
                    world.execute(() -> {
                        playerRef.referToServer(targetHost, targetPort, null);
                    });
                }, CompletableFuture.delayedExecutor(5000L, TimeUnit.MILLISECONDS));
    }```
sharp pumice
#

anyone know why im getting an error here (custom component)

PlayerData customData = store.ensureAndGetComponent(ref, HelloPlugin.PlayerDataPlugin.instance().getYourPlayerDataComponent());
^ Cannot resolve method 'instance' in 'PlayerDataPlugin'

heres the regestry

public class PlayerDataPlugin extends JavaPlugin {

        private ComponentType<EntityStore, PlayerData> PlayerDataComponent;

        public PlayerDataPlugin(@NonNullDecl JavaPluginInit init) {
            super(init);
        }

        @Override
        protected void setup(){
            this.PlayerDataComponent = this.getEntityStoreRegistry().registerComponent(
                    PlayerData.class,
                    "PlayerDataComponent",
                    PlayerData.CODEC
            );
        }

        public ComponentType<EntityStore, PlayerData> getPlayerDataComponent() {
            return this.PlayerDataComponent;
        }
    }```
#

and heres the actual class

public class PlayerData implements Component<EntityStore> {

    // define some vars!
    private int someInteger;
    private String someString;
    private Map<String, String> someMap;

    public static final BuilderCodec<PlayerData> CODEC =
            BuilderCodec.builder(PlayerData.class, PlayerData::new)
                    .addField(new KeyedCodec<>("SomeInteger", Codec.INTEGER),
                            (data, value) -> data.someInteger = value, // setter
                            data -> data.someInteger) // getter
                    .addField(new KeyedCodec<>("SomeString", Codec.STRING),
                            (data, value) -> data.someString = value, // setter
                            data -> data.someString) // getter
                    .addField(new KeyedCodec<>("SomeMap",
                                    new MapCodec<>(Codec.STRING, HashMap::new, false)),
                            (data, value) -> data.someMap = value, // setter
                            data -> data.someMap) // getter
                    .build();
    // Getters and Setters are for the purpose of this example omitted.

    // constructor
    public PlayerData() {
        this.someInteger = 0;
        this.someString = "";
        this.someMap = new HashMap<>();
    }

    // copy constructor for cloning
    public PlayerData(PlayerData clone) {
        this.someInteger = clone.someInteger;
        this.someString = clone.someString;
        this.someMap = clone.someMap;
    }

    @NullableDecl
    @Override
    public Component<EntityStore> clone() {
        return new PlayerData(this);
    }
}```
static shadow
random briar
static shadow
# sharp pumice wdym?

The PlayerDataPlugin is an instance of JavaPlugin and JavaPlugin doesn't contain a static instance() function by default.

Add this below private ComponentType<EntityStore, PlayerData> PlayerDataComponent;:

private static PlayerDataPlugin instance;
public static PlayerDataPlugin instance() { return instance; }

Then in the setup() function, add this at the top:

instance = this;
onyx carbon
#

@opaque cape what is firstRun

#

Sorry I'm new to modding lmao

opaque cape
tranquil tendon
#

Hi. I want to make a hollow stone box at an undetermined time in a world, say, when a player types a command. Am I supposed to use prefabs to spawn, and if so, how do i do this? I know you can use world.setBlock() but is this good to use performance wise for complex shapes that aren't just a single block?

ornate raven
#

did you update assets.sip

opaque cape
#

I'm trying to open a custom UI when I interact with my Block

I've got this setup

      "Use": {
        "Interactions": [
          {
            "Type": "OpenCustomUI",
            "Page": {
              "Type": "PortalSettings"
            }
          }
        ]
      },
      "CollisionEnter": {
        "Interactions": [
          {
            "Type": "ShubshubServerJump",
            "Next": {
              "Type": "Simple",
              "Effects": {
                "LocalSoundEventId": "SFX_Portal_Neutral_Teleport_Local"
              }
            }
          }
        ]
      }
    }```

Claude Sonnet is no help here, What am I doing wrong?
I already registered PortalSettings 
```OpenCustomUIInteraction.registerBlockEntityCustomPage(
            this,
            PortalSettingsPage.class,
            "PortalSettings",
            (playerRef, blockEntityRef) -> {
                return new PortalSettingsPage(playerRef, blockEntityRef, CustomPageLifetime.CanDismiss);
            }
        );```
Like so, But in game I get a Missing Interaction for the Use Interaction
#

Hang on I mightve just solved it, Please hold

static shadow
opaque cape
#

Well I changed "Type" to ID, And now the error doesnt occur but my GUI doesnt popup, Might be an issue with my code now, Will be back

#

Ok looks like because I am dumb, And was relying too much on the AI here, It didnt even tell me how to actually load the UI xD

vocal imp
#

Is there a way to access/modify players components even if its offline?

jade sky
#

anybody know how to listen for packets

hearty dragon
#

Losing my mind here, so I'm trying to create a custom version of the hub portal that will make a new world every week. All that needs is for the name to change every week automatically.

However, if you copy the HubPortalInteraction, it works fine to go to the world when you're creating it, but then if you ever use the portal again, it returns a No Such Method error: NoSuchMethodError: 'void com.hypixel.hytale.server.core.modules.entity.teleport.Teleport.<init>(com.hypixel.hytale.server.core.universe.world.World, com.hypixel.hytale.math.vector.Transform)'

The code of the interaction is identical to the original, the only difference is that the interaction is registered by a mod plugin.

static shadow
jade sky
opaque cape
#

Ok I managed to make my Use Interaction work
But my world keeps crashing saying "Could not find document Pages/PortalSettingsPage.ui" for Custom UI Append command
My UI file is in >resources>Pages>PortalSettingsPage.ui

#

@static shadow I ended up using a Custom Interaction Handler like you, Maybe you can assist here?

#

Does Pages need to go under the Server folder?

random briar
opaque cape
#

Oh ok

random briar
#

and enable assets in the manifest

opaque cape
#

and Common goes under resources?

random briar
#

yeah

static shadow
calm birch
#

Anyone know best way of loading a prefab into a new instance so its children spawn too? I seem to be able to spawn the prefabs, but chests, and randomizations for the prefabs dont seem to spawn?

fading light
#

how should i go about non ops not building/breaking?

opaque cape
severe agate
#

Anyone know of a stress test plugin that can actually utilize 256gb ram? I've tried two but they cap at 64

opaque cape
#

Is there somewhere I can see an example of a UI File I think mine might be wrong, Now its crashing not being able to load the UI file cause its bad

random briar
desert hill
#

is it possible to make a void world?

random briar
#

"/world add worldName --gen=Void" i think

onyx carbon
#

or set that as the default of the server

random briar
#

you should check out the /help
/tp world worldName

jade sky
#

ah packetwatchterfilter i suppose

opaque cape
#

Alright we're in boys.... Time to test, Moment of truth

random briar
opaque cape
#

Ah nevermind we're not in

static shadow
# opaque cape I dont see any Custom UI files here

Oh, I thought you meant help with the Custom Interaction Handler 😅
My plugin doesn't yet use custom UI, only ContainerBlockWindow to show a small inventory. (This will be changed to a completely custom UI soon)

worn kernel
#

is API out?

desert hill
random briar
random briar
sharp pumice
#

anyone know how i can get data from each specific field?

public class PlayerData implements Component<EntityStore> {

    // define some vars!
    private int someInteger;
    private String someString;
    private Map<String, String> someMap;

    public static final BuilderCodec<PlayerData> CODEC =
            BuilderCodec.builder(PlayerData.class, PlayerData::new)
                    .addField(new KeyedCodec<>("SomeInteger", Codec.INTEGER),
                            (data, value) -> data.someInteger = value, // setter
                            data -> data.someInteger) // getter
                    .addField(new KeyedCodec<>("SomeString", Codec.STRING),
                            (data, value) -> data.someString = value, // setter
                            data -> data.someString) // getter
                    .addField(new KeyedCodec<>("SomeMap",
                                    new MapCodec<>(Codec.STRING, HashMap::new, false)),
                            (data, value) -> data.someMap = value, // setter
                            data -> data.someMap) // getter
                    .build();



    // Getters and Setters are for the purpose of this example omitted.

    // constructor
    public PlayerData() {
        this.someInteger = 0;
        this.someString = "";
        this.someMap = new HashMap<>();
    }

    // copy constructor for cloning
    public PlayerData(PlayerData clone) {
        this.someInteger = clone.someInteger;
        this.someString = clone.someString;
        this.someMap = clone.someMap;
    }

    @NullableDecl
    @Override
    public Component<EntityStore> clone() {
        return new PlayerData(this);
    }
}```
#

is it a void world? void worlds are bugged rn and all of the grass is black (its dumb) id recommend using i think its summer grass if you need? let me check

vocal imp
rocky moat
#

Would it be possible to make a mod that lets you tweak individual damage instances in a combo or a single type of attack?

So, for example, lets say i just want to change a Charged Attack's damage but leave the basic hits in the combo untouched. Would a Config.json file let you tweak those values yourself? Or is it all tied to a same damage pool?

opaque cape
#

For my UI how do I set the value of a Checkbox?

commandBuilder.set("#SyncInventory.Checked", settings.isSyncInventory());

And in my UI Code I have

  $C.@CheckBoxWithLabel #SyncInventory {
    @Text = "Sync Inventory";
    @Checked = false;
    Anchor: (Height: 28);
  }```
#

I've got everything else working this is the final frontier of the UI xD

wise heron
#

Are the people who made this game in charge of the server, because I'm requesting a refund, and I haven't heard back from them

minor tapir
#

Someone tell me how to host with discord pls

#

How many boosts do you need ?

static shadow
opaque cape
#

The world crashes saying Checked isnt a property

#

Let me get the error

static shadow
#

Right, should it really be @Checked and not Checked?

opaque cape
#

Hmmm let me try that

#

I get

CustomUI set command selector doesnt match a markup property Selector: #SyncInventory.@Checked

steep ember
#

try setting .Value

opaque cape
#

Ok lets see

opaque cape
reef pulsar
#

Did anyone have found how to attach a loot table on a item Secondary Action ?

floral cradle
#

Does anyone know why the map I've already explored turns black again when I relog?

nocturne star
#

Has anyone found a way to create custom server side HUDs?

ornate raven
#

check these ones

jolly kelp
#

Anyone got some good resources for learning Java? Ive got experience with GDscript and the ECS structure but Im completely unfamiliar with Java.

midnight condor
#

erm do aternos servers work on hytale?

blissful rampart
#

Could anyone create a window (for inventories) with custom ui design? I have been trying with lots of work arounds but no one works

ornate raven
midnight condor
random briar
scenic edge
#

patch upted 2 today?

ornate raven
ornate raven
sharp pumice
#

ive spent all day on this and im starting to feel stupid 😭

anyone know why this custom component isnt working? its just not working in game

 store.addComponent(playerRef.getReference(), HelloPlugin.PlayerDataPlugin.instance().getPlayerDataComponent());

ornate raven
sharp pumice
sharp pumice
# ornate raven do you register on your main ?

this is in setup

public class PlayerDataPlugin extends JavaPlugin {

        private ComponentType<EntityStore, PlayerData> PlayerDataComponent;

        private static PlayerDataPlugin instance;
        public static PlayerDataPlugin instance() { return instance; }

        public PlayerDataPlugin(@NonNullDecl JavaPluginInit init) {
            super(init);
        }

        @Override
        protected void setup(){
            this.PlayerDataComponent = this.getEntityStoreRegistry().registerComponent(
                    PlayerData.class,
                    "PlayerDataComponent",
                    PlayerData.CODEC
            );
        }

        public ComponentType<EntityStore, PlayerData> getPlayerDataComponent() {
            return this.PlayerDataComponent;
        }
    }```
desert hill
#

is it possible to paste a prefab in code cant figure ts out

ornate raven
ornate raven
onyx carbon
#

is that in the decompiler jar?

steep ember
opaque cape
#

So the settings I've set up for my Custom UI seem to not persist between Saving and Exiting the World and reloading, Is there something else I Need to do?

@steep ember I managed to sort it all, Its working now ❤️

midnight condor
#

what does connection timed out waiting for a response from the peer mean

sharp pumice
# ornate raven can you with private static PlayerDataPlugin INSTANCE; and public PlayerDat...

didnt fix it, but i found the error its running

java.lang.NullPointerException: Cannot invoke "com.example.plugin.HelloPlugin$PlayerDataPlugin.getPlayerDataComponent()" because the return value of "com.example.plugin.HelloPlugin$PlayerDataPlugin.instance()" is null
        at ThirdPartyPlugin//com.example.plugin.SpleefTicking.lambda$SpleefTick$0(SpleefTicking.java:62)
        at com.hypixel.hytale.server.core.universe.world.World.consumeTaskQueue(World.java:894)
        at com.hypixel.hytale.server.core.universe.world.World.tick(World.java:395)
        at com.hypixel.hytale.server.core.util.thread.TickingThread.run(TickingThread.java:89)
        at java.base/java.lang.Thread.run(Thread.java:1474)```
#

this is the new one



    public class PlayerDataPlugin extends JavaPlugin {

        private ComponentType<EntityStore, PlayerData> PlayerDataComponent;

        private static PlayerDataPlugin instance;
        public static PlayerDataPlugin instance() { return instance; }

        public PlayerDataPlugin(@NonNullDecl JavaPluginInit init) {
            super(init);
            instance = this;
        }

        @Override
        protected void setup(){
            this.PlayerDataComponent = this.getEntityStoreRegistry().registerComponent(
                    PlayerData.class,
                    "PlayerDataComponent",
                    PlayerData.CODEC
            );
        }

        public ComponentType<EntityStore, PlayerData> getPlayerDataComponent() {
            return this.PlayerDataComponent;
        }
    }
opaque cape
# opaque cape So the settings I've set up for my Custom UI seem to not persist between Saving ...

Ok I resolved this by doing

import com.hypixel.hytale.server.core.modules.block.BlockModule;

....

public void handleDataEvent(@Nonnull Ref<EntityStore> ref, @Nonnull Store<EntityStore> store, 
                                @Nonnull PortalSettingsPageEventData data) {
        // Get the chunk store and portal settings component
        ChunkStore chunkStore = store.getExternalData().getWorld().getChunkStore();
        PortalSettings settings = chunkStore.getStore().getComponent(this.blockEntityRef, PortalSettings.getComponentType());
        
...

        // Mark the chunk as needing to be saved
        BlockModule.BlockStateInfo blockStateInfo = chunkStore.getStore()
            .getComponent(blockEntityRef, BlockModule.BlockStateInfo.getComponentType());
        if (blockStateInfo != null) {
            blockStateInfo.markNeedsSaving();
        }
        
        // Close the page
        this.close();
    }
quick oracle
#

Does anyone know if they plan on making this online mod eless dumb for friends to pla together without havign to rent a server from nitrado?

mortal monolith
#

did anyone have a mod or plugin that fix the hatched problem everyone that cuts a tree on my server crash

floral cradle
#

Does anyone know why the map I've already explored turns black again when player relog back to server?

#

do you think it's because this "IsUnloadingChunks" in the config.json? Hypixel_Think

keen grove
random briar
#

is playerRef an online player? or can i use playerRef even the player is offline?

quick oracle
keen grove
random briar
keen grove
random briar
#

can i get players name from uuid while the player is offline?

rare sundial
#

Hello! I got a big platform with archers on it, but when i come near they always run down to me instead of shooting, anyone knows which part of the NPC Role JSON i need to change?

rare sundial
ashen sparrow
#

I have a question: if I remove a mod that generates minerals, could it corrupt the map once it's installed?*

static shadow
rare sundial