#server-plugins-read-only

1 messages · Page 108 of 1

tribal venture
#

Ah, I prob need to get which world the event triggers in then

#

Can I just do event.setBlock instead? It only has a vector input though

west elk
tribal venture
#

lol fair, I'm trying to use a BreakBlockEvent to have a chance at spawning a block in the world in the position where you broke the block

#

Then I'll add an interaction to it that'll open a GUI but that'll come later

opaque cape
#

What would you want out of an electrical mod

west elk
opaque cape
#

Whats that

west elk
#

energy api standard

opaque cape
#

Is that a thing you made?

west elk
#

no, I believe @marsh edge is the custodian

#

it's a big community project

opaque cape
#

I guess there's probably not much room left for adding my own stuff then lel

west elk
#

it's an api, not a content mod

marsh edge
#

Well, you could say I am the custodian, but the history of it all goes way back 😅 And the project has evolved in many directions, all of which are waiting for proper reveal 🙈

#

I want to be absolutely clear. The ECS framework Hytale is based off of has broken any concept we had for an Energy API. Everyone's working hard to re-implement their ideas in a way that makes sense with ECS

subtle spoke
marsh edge
steel coral
#

How do I dynamically update data in a custom HUD? I'm making my own coordinate display HUD for practice. I was able to display a placeholder, but I don't know how to change the data in real time.

steel coral
regal relic
#

i am losing my mind with this rust server

bleak lynx
#

how do u guys register a custom interaction on a npc, lets say im cloning the klops gentelman npc, and i want to register a interaction on the asset editor so player can press F on him. any idea?

desert apex
opaque cape
#

I suppose one could always make their own system, And later add a block that converts their power to Hyperion

empty wyvern
#

is it possible to detect player interact with other player ?

marsh edge
#

Well, any API that involves inheritance. When we first built it, we didn't quite understand ECS, so we tried to standardize thinking of "what IS an energy block" (buffers, generators). We needed to shift to "what DOES an energy block HAVE". You may find this obvious, but coming from OOP oriented experiences, it wasn't.

desert apex
marsh edge
ripe trout
#

is the ui code that hytale ellie au produces causing errors for anyone else too? i keep geting "Failed to load CustomUI documents"

desert apex
#

personally i really like the ecs, never been a big fan of inheritence, in general it's over-used and over complicates things, so glad hytale uses ecs, you're a fan or not?

marsh edge
#

It is definitely interesting Sven 🙂 and it's a great approach for games, especially voxel games

leaden glade
#

a

dim osprey
#

I like the ECS so far, haven't ran into many issues so far for my projects.

marsh edge
#

To me the greatest obstacle is not ECS itself, but CODECS. Not having much documentation, sometimes I find it difficult to create more complex data structures.

dusty venture
#

I mean, MapCodec and ArrayCodec exist; but yeah its a little hard to figure out

marsh edge
#

It's quite easy if you need basic codecs,but once you start having dynamic codecs it gets a bit cloudy

desert apex
marsh edge
desert apex
#

give it access to the hytale decompiled source to search in and it goes hard

marsh edge
opaque cape
#

Claude Sonnet 4.5 is my preferred Model for coding rn

marsh edge
#

And you build better understanding of how the code works

opaque cape
#

Its good to understand what changes its asking you to make

steel coral
#

I wrote a small plugin that shows the player’s current coordinates in the top-right corner when using the /coordinates command.

The HUD appears correctly, but the values do not update.
If the player moves, the coordinates stay the same as when the command was executed.

How can I make the HUD update dynamically while the player is moving?

dim osprey
#

I just got this working

desert apex
opaque cape
#

I suppose it helps that my work pays for it 😄

#

Atleast I think the one on my desktop is my work account >.>

desert apex
opaque cape
#

I'm not really sure lmao

west elk
desert apex
opaque cape
#

Ah yes I am logged into my Work account for Github Copilot 😄

#

Thank god for that

#

I've used 81.3% of my Premium Requests for this month

dusk fern
urban gate
#

Hello, As far as i noticed, I do not write a code for specific block, but make a custom object like interaction or something which then I can use on my custom asset.

Now I want to do this think: I have asset prepared, I want it to spawn a specific block constantly on top of it. If i brake that block I want it to appear again and again. I know it needs be done with ticking but i cannot find any documeentation on that, someone might provide a link to docs that cover it?

desert apex
pastel fox
#

Hello, do you know any mod that has a clickable interface directly in the inventory, similar to the backpack feature? I’m trying to get into Hytale modding, and I wanted to create an interface that you can open through the in-game inventory instead of using a command. Is there already a mod that does this? I’d like to see how they implemented it. Thanks in advance!

minor oasis
west elk
pastel fox
minor oasis
pastel fox
opaque cape
#

I dont believe they plan to let you have any client mods

pine holly
#

bald

wheat vale
desert apex
#

yea no need, but would be cool to have the EyeSpy on every server you join tho

#

not sure if that will become possible at some point

tribal venture
#

How can I spawn a block in the world? I'm trying to use a BreakBlockEvent to have a chance at spawning a block in the world in the position where you broke the block

flint mauve
#

Someone should make the "gathering chunks" mod from Minecraft into hytale

upper coyote
#

I got an issue with mods.. Playing singleplayer on my deck, and I got some mods downloaded and activated. Made a new world, activated them all. But they don't show up in game.

Does anyone know how to fix this?

flint mauve
#

What mods, I'm not on steamdeck but I'm on Linux so I may be able to help

west elk
# tribal venture lol fair, I'm trying to use a BreakBlockEvent to have a chance at spawning a blo...

I figured out how to use these EcsEvents. You create an ecs system around it. The handle method then gives you all the necessary references:

public class BlockBreakEventSystem extends EntityEventSystem<EntityStore, BreakBlockEvent> {
    public BlockBreakEventSystem() {
        super(BreakBlockEvent.class);
    }

    @NullableDecl
    @Override
    public Query<EntityStore> getQuery() { return Player.getComponentType(); } // Only run for players

    @Override
    public void handle(int index, @NonNullDecl ArchetypeChunk<EntityStore> chunk, @NonNullDecl Store<EntityStore> store, @NonNullDecl CommandBuffer<EntityStore> commandBuffer, @NonNullDecl BreakBlockEvent event) {
        var ref = chunk.getReferenceTo(index);
        var player = store.getComponent(ref, Player.getComponentType());
        var blockId = event.getBlockType().getId();
        if (blockId.equals("Empty")) return;
        var position = event.getTargetBlock();
        player.sendMessage(Message.raw("Broke block: "+blockId+" at x:"+position.x+" y:"+position.y+" z:"+position.z));
        if(Math.random()<0.1) {
            event.setCancelled(true);
            var world = store.getExternalData().getWorld();
            world.setBlock(position.x, position.y, position.z, "Rock_Gold_Brick_Smooth");
        }
    }
}

CC @subtle spoke

subtle spoke
#

Oh thanks for the copy 🙂

tribal venture
#

Thanks, been trying to wrap my head around how ecs works so this helps a lot

west elk
tribal venture
#

I should probably rewatch that, feel like I missed how refs work

blazing cosmos
#

how would you take the tint brush's functionality and expand upon it and make it into an item that can paint more than just grass blocks?

bronze granite
#

Hello, maybe someone writes simple plugins, I need a command after death

west elk
# tribal venture I should probably rewatch that, feel like I missed how refs work

A ref is basically just a uuid. The EntityStore uses it as a key to keep track of components:

EntityStore:
 (ref1, PlayerRef):     PlayerRef component with handler to the network connection
 (ref1, Player):        Player component with gamemode, inventory, etc
 (ref1, EntityStatMap): EntityStatMap component with numeric data like heath, stamina, mana 
 (ref2, PlayerRef):     Player 2's network data
 (ref2, Player):        Player 2's network data
 (ref2, EntityStatMap): Player 2's stats
 (ref3, Horse):         Horse-related data (i haven't worked with npcs so this is a guess)
 (ref3, Mountable):     This entity is mountable
 (ref3, EntityStatMap): Horse also has numeric stats like health
 (ref1, DeathComponent) Player 1 is currently dead. Component includes cause and item loss data
upper coyote
upper coyote
rustic pollen
#

when hytale will give an option to disable the "MEMBER left WORLDNAME" ... This message is annoying in chat. It appears every time a player changes worlds, and it looks as if the player is leaving the server. It would be great to have an option to disable this on the server!

valid viper
#

Yall know if there is a vr mod yet?

flat flare
#

Chat is there a class file or a json file for the vanilla items descriptions that you can edit? Or for an example if you want to add some extra details etc. can you do it with the vanilla UI or do you need a custom UI?

glossy shadow
valid viper
#

k

dusty venture
urban gate
# west elk If I understand you correctly, you are trying to extend the **RefSystem**. It ha...

Ok, I might do it another way, i just created a custom water_source_block and added interaction to bucket so it doesnt call TransformFluid: "Empty" when i use it. Problem is I still connot figure out how to spawn that custom water source block when i place my well Item.

I tried using similar approach from container_bucket when in state filled_water it has a secondary interaction:

"Interactions": {
"Secondary": {
"Interactions": [
{
"Type": "PlaceFluid",
"FluidToPlace": "Well_Water_Source",
"Effects": {
"ClearSoundEventOnFinish": true,
"LocalSoundEventId": "SFX_WATER_MoveOut"
}
}
]
}
},

Butt now it acts as bucket and only places fluid source not itself. I can manualy put my fluid into the well.

desert apex
west elk
calm sable
#

Does someone also run into not working projectile configs after the hotfix update?

solemn flame
#

Is anyone using Pterodactyl on Hytale experiencing lag/TPS/ticks on their server?

#

I tried opening the server directly in cmd on the same server, and compared to pterodactyl, it works much better.

#

Or if anyone can recommend something lighter than pterodactyl for creating a server that doesn't consume many resources, I would appreciate it.

shell vigil
# west elk I figured out how to use these EcsEvents. You create an ecs system around it. Th...

Also have a similar solution working for block detection with handle, so far working very well:

    
    private final World world;

    public AreaBreakSystem(HytaleLogger logger, World world) {
        super(BreakBlockEvent.class);
        this.world = world;
    }

    @Override
    public void handle(int entityId, ArchetypeChunk<EntityStore> chunk, Store<EntityStore> store, 
                       CommandBuffer<EntityStore> commandBuffer, BreakBlockEvent event)

The only thing I need to do after is register the system on a start():

AreaBreakSystem system = new AreaBreakSystem(getLogger(), world);
EntityStore.REGISTRY.registerSystem(system);
lunar pawn
#

@sharp rock his pidoras

lucid spire
#

how do i detect collission with a block? (e.g. if a player walks over it)

desert apex
# rustic pollen i don't know what this is?

if you could find the packet that causes the message to be displayed client side, you could manipulate the packet and remove the message without an "official" api
"dev/en/docs/guides/plugin/listening-to-packets" on hytalemoding website has nice info (can't link here...)

summer fern
#

Hey guys, does anybody here knows how to detect that my custom item was swaped off?

urban gate
#

Final question guys 😄

I have this

  "Interactions": {
    "Secondary": {
      "Interactions": [
        {
          "Type": "PlaceBlock",
          "BlockTypeToPlace": "Well_Test",
          "RemoveItemInHand": true
        },
        {
          "Type": "PlaceFluid",
          "FluidToPlace": "Well_Water_Source",
          "RunTime": 0.5,
          "Effects": {
            "ClearSoundEventOnFinish": true,
            "LocalSoundEventId": "SFX_WATER_MoveOut"
          }
        }
      ]
    }
  }

When i right click with item twice it places the block and then water, how can i make it so iit does both interactions one after another

dim osprey
#

i found the most jank way to detect collisions im not sure its worth, is there an official way im not seeing? without needing to make HitBox assets etc?

bronze granite
#
KIT_COOLDOWN = Message.raw("cooldown").color(Color.RED).bold(true);

Does anyone know how to save half of the text in a different color?

west elk
open current
#

Hello guys !
Is there a way to have access to mouse movement/position when the player use a custom UI (Page) ?

bronze granite
#

some template

#

im starting with plugins

west elk
#
Message.join(
  Message.raw("Cooldown: ").color(Color.RED).bold(true),
  Message.raw("3...").color(Color.CYAN)
);
bronze granite
#

working thx @west elk

ancient cosmos
#

is there an exposed API by which I can check my server status and number of player in it (probably with their names). I'm trying to write a monitoring tool for my server.

#

(without a plugin actually, I want to be running on a different server)

west elk
bronze granite
#

ok and now I have a question how to save hex color because .color(Color.decode("#FF5733")) doesn't work xdd

west elk
bronze granite
#

Message.raw("Cooldown: ").color(new Color(255, 87, 51)),

#

maybe work

rustic pollen
west elk
torn stone
#

where u guys put earlyplugins ?

bronze granite
#

Being a beginner, it's hard to understand some functions and rewrite them into the Hytale API

torn stone
#

im kinda confuse where is it sry

bronze granite
#

@torn stone main folder

#

where aslo here mods logs etc

torn stone
#

same folder as mods? or other?

bronze granite
#

other

pseudo bear
#

I'm currently working on a tool to decode binary region files and view their contents. For now there's a lot of stuff I'm missing, like decoding "biomes" format, "TileEntities", inventories and more. For now I can only view the block palette and the decoded block layout in a chunk.
Once it's done I'll work on the possibility to edit the file, just like NBTExplorer would. The goal is to have a tool that could convert Hytale maps to Minecraft maps and vice versa

west elk
bronze granite
#

the same folder as your "mods", sorry

lucid spire
#

when cancelling a BreakBlockEvent the cracks still appear (even to other players)
is there a way to set the "block health"?

west elk
west elk
#

looks like that's intended for this on first glance

topaz cipher
#

Which placeholder mod should I be using to support placeholders and by who?

sullen pasture
#

Would it be a mistake to utilize the portal shard system for a main gameplay loop on a server? Would many portals being entered and used at the same time destroy a server?

foggy sentinel
#

Hay is there anyone that could make me a addon that has my merch that you can wear as a cosmetic in game? I want to have my artist logo on a shirt and hat in a custom crafting table. Is there anyone that can make a mod for that?

sullen pasture
#

Yup lol

foggy sentinel
#

I need it for a custom map i am making

last raptor
#

good morning

west elk
halcyon rapids
#

anyone know how to create a portal and specify its location?

#

is it even possible to do that or do I need to render a portal and have the collision interaction as a separate thing?

foggy sentinel
spark belfry
#

Can anyone explain to me why my vanilla override keeps reverted back to vanilla on server restart? I made an override of an iron repair kit and it works fine until I restart my server, then it reverts back to the vanilla repair kit.

slate lake
#

How would I forbid players from moving? Is there a player move event? Or do I need a system that looks for a certain component?

lapis marlin
#

🙂

west elk
olive canopy
#

Hey is it possible to change mob aggro using mods?

craggy solar
#

Is this the correct channel to ask if there is a website or how can I find a list of servers to chose where I want to play with others?

olive canopy
#

or edit mob ai?

dim osprey
# slate lake How would I forbid players from moving? Is there a player move event? Or do I ne...
        world.execute(() -> {
            try {
                // Get entity store to check position
                Store<EntityStore> store = world.getEntityStore().getStore();
                if (store == null) return;
                
                Ref<EntityStore> entityRef = playerRef.getReference();
                if (entityRef == null || !entityRef.isValid()) return;
                
                TransformComponent transform = store.getComponent(entityRef, TransformComponent.getComponentType());
                if (transform == null) return;
                
                Vector3d position = transform.getPosition();
                int blockX = (int) Math.floor(position.getX());
                int blockY = (int) Math.floor(position.getY());
                int blockZ = (int) Math.floor(position.getZ());
                
                // Check if player moved to a new block
                boolean hasMoved = blockX != tracking.lastBlockX || 
                                  blockY != tracking.lastBlockY || 
                                  blockZ != tracking.lastBlockZ;
#

not sure if this is ideal at all lol but this is how i track if a player has moved a block

mossy arrow
#

Does anyone know if anyone is working on a Spleef (minigame) plugin?

static turtle
#

Hello hello, I have a question which is the following!
I wrote a small plugin/mod which displays a text in the chat which is the following: "ő" "ű"
The problem is the following, the accented betas are displayed with a ?, maybe the game does not support double accents?

fiery lodge
#

So, i had an issue trying to read or reference the hytale server source code. In intellij it rakes a few seconds (4-5) per search, which i do repeatidly trying to track down where the flow of data is going. I created a HTML page that lets you do the same search and ingress in 5MS (given you have at least a GB of spare memory)

The question is this: would this be something anyone else would find useful?

I call it "Quick Cash Search"

#

If anyone else finds this potentially useful, i will upload it to a dedicated site. I just dont want to be the only one using it lol!

west elk
fiery lodge
fiery lodge
#

And thanks for replying 😁

west elk
#

If you put it on github, I'd probably use it.

craggy solar
#

Is this the correct channel to ask if there is a website or how can I find a list of servers to chose where I want to play with others?

west elk
#

you already asked this and this channel is for discussing about plugin development

spark belfry
#

where would my question be best asked? Cause no one seems to know.

fiery lodge
#

What question @spark belfry

spark belfry
# fiery lodge What question <@157573759304204289>

Can anyone explain to me why my vanilla override keeps reverted back to vanilla on server restart? I made an override of an iron repair kit and it works fine until I restart my server, then it reverts back to the vanilla repair kit.

strange trout
#

anyone around with experience for worldgen and prefabs? kinda stuck on the density

spark belfry
#

My custom version is still there, and will work if I make a change to it and save it... Until I restart again and then its right back to the vanilla version.

copper anchor
west elk
fiery lodge
spark belfry
fiery lodge
#

Weird, my overrides didnt require the mods parameter

strange trout
#

i know @fiery lodge but still stuck on the density, my prefabs are buildings that wont spawn together as a cluster for some reason.

fiery lodge
#

You have to mess around with the generation settings to get them to spawn in clusters.

west elk
fiery lodge
#

You.may be able to just offset the generation values to achieve that affect

spark belfry
strange trout
#

@fiery lodge i know m8, ive got them all to spawn but even in clusters of the same buildings, but they wont spawn together as a cluster.

fiery lodge
spark belfry
#

They are inside of a custom mod in the mods folder.

strange trout
#

@fiery lodge working on a villager mod like MC but its a pain in the ass so far hehe

west elk
#

@spark belfry when the server starts, check /packs list to see if it's loaded. If not, check the console for errors

fiery lodge
strange trout
#

ye its getting to know the api i know

spark belfry
fiery lodge
strange trout
#

think im getting somewhere now im getting multiple different prefabs clustered... not all of m but still

minor tapir
#

Any news about Discord Hosting ?

exotic ocean
#

has anyone figured out how to add AI to mounts? or even just simple movement while mounted? i cant seem to move the player along with a mount since mounts seem to be controlled 100% by the client. Once the player is on, the server cant change the position.

quartz plover
minor tapir
#

It’s still in beta but discord will allow you to host a game server and it’ll work with Hytale

#

I had the pop up on Discord PC, and it will work on Hytale for sure

quartz plover
#

Checked it out, interesting feature for discord to add ngl. I didn't know they dabbled in server hosting, but it seems like they just delegate the hosting to shockbyte and add extra fees on top

raw roost
#

If you want paths between each building I have a density method for that but it’s a bit intensive

strange trout
#

ok ty will take this in consideration

strange trout
zenith adder
#

Hi, I'm using hytale.ellie.au to generate some UI. The problem is that when I enter my server it throw "Failed to load CustomUI documts". I dont know if there is a problem with that page

hot gorge
#

What plugin are people using for networks?

opal parrot
minor oasis
#

Anyone?

main elm
#

I have my own interaction type:

"Interactions": {
   "Use": "OpenUI"
},

but another plugin is blocking a usage of "use" in certain region... is there any way to bypass it?
I thought I might replace "Use" with my own type of interaction but I'm not sure if it's even possible. so it'd look like this:

"Interactions": {
   "RootInteraction_OpenUI": "OpenUI"
},

does anybody know if it even makes sense?

orchid lichen
#

so my local server has always worked now they released update and i imported new assets and server.jar but the server wont start anyone know why? Do i need to import something more from new version etc?

arctic mist
civic zephyr
#

You can make custom interactions if you register them fine

civic zephyr
arctic mist
#

I believe you are talking about operations, there are fixed interactions types. Unless you refere to create interactions for assets?

civic zephyr
#

Oh you’re talking about the literal action you have to do to preform the operation

#

Yeah you can’t make new ones of those

#

But what they have displayed would work just fine (F key) if they registered an OpenAI interaction. Theoretically, if the plugin wasn’t blocking all uses and they registered the interaction properly

ruby flint
#

guys is there any official api referrence what the api calls are made?

arctic mist
arctic mist
lucid spire
#

anyone here can explain how to detect a player walking over a block using block colissions?

civic zephyr
#

There’s a bug with NPC interactions and creative mode where they don’t register unless you turn on NPC noticing on yourself in creative

civic zephyr
#

I assume you’re asking because you don’t want to just check every tick

main elm
#

I think the plugin is blocking all uses, I'll ask the owner if there is any bypass to that, thank you for your help, @civic zephyr & @arctic mist

lucid spire
#

good idea, ill check it out
and yeah I need it for a game mode so if theres like 50 players and 20 blocks to check every tick at 30 TPS thats 30k checks per second lol

civic zephyr
#

I see

weary oar
#

@zenith hatch do you have discord server?

zenith adder
west elk
weary oar
#

is it the link?

#

oh yea thanks

zenith hatch
#

It's my guilds discord. I don't have any official "Hytale Mods" Discord

wary lion
velvet fossil
#

Hey so I have been struggling with finding a way to do this in the asset editor if it's even possible but how would I make it so you can fire 3 projectiles instead of 1 from one of the staff's

pine holly
#

check everything every tick all the time always

proven gyro
velvet fossil
woven siren
#

someone can help me, i install hytale launcher on my windows laptop, but when i try to sign in, is not open nothing to sign in

velvet fossil
proven gyro
#

I haven’t tried melee weapons yet but I imagine it’s a similar process, ie on swing / hit trigger interaction to spawn projectile

velvet fossil
#

How would you make them not going all on the same line? like going in 3 dif directions.

proven gyro
outer cairn
#

I have issues setting Text in UI as anything other than a translated Message. When I set a joined or raw message my client gets kicked for: Set command couldn't set value. Is this known and is there any solution?

velvet fossil
proven gyro
#

Yeah can all be done in the asset editor

velvet fossil
#

May ask for your help in a bit if i can't figure it out is that fine lol

safe pendant
#

How can I get the name of the item using itemId (ex: Rock_Stone) ?

proven gyro
#

so there is gonna be a lot of files lol

steel coral
#

How can I update a HUD in real time?
I made a simple plugin that shows the player’s coordinates on the screen when they run the /coordinates command, but the values never change.
It always displays the coordinates from the moment the command was executed.

How can I make the coordinates on my HUD update continuously as the player moves?

outer cairn
obsidian bay
#

How i can build my project to .jar in IDEA?

outer cairn
velvet fossil
fading bolt
#

Hello @queen verge i come from your github account and i'd like to get some help from you to build your project correctly. I tried to do modifications but it resulted in the mod not loading any schematics anymore and sadly the overwrite.txt files are not providing enough options for what i want to do.

i'll wait for your answer

narrow cypress
#

questing, trying to make my first mod for hytale, is this the correct channel?

#

question*

junior rapids
proven gyro
velvet fossil
junior rapids
proven gyro
steel coral
# junior rapids probably you need DelayedEntitySystem

I literally just found an article about this, and you sent me a message. I haven't read it yet, so the question might be stupid, but anyway. Am I correct in assuming I need to create this DelayedEntitySystem in which I'll specify the logic for how my HUD will be updated?

queen verge
velvet fossil
narrow cypress
#

ya im in the assists editor, im trying to make custom coal, i got icon color changed, im having issues changing model texture, i got a texture made in paint.net, but its not updating

proven gyro
#

Yeah make sure you’re in th right pack and the action is either projectile or launch projectile, depending on whether you are using a config or not

fading bolt
junior rapids
junior rapids
queen verge
fading bolt
narrow cypress
#

still showing default texture

green yoke
#

uh

terse leaf
#

Hello, is it possible without plugin to retrieve throught ping protocol or query all server datas like number of players and max players etc ?

west elk
narrow cypress
#

does the texture need a special path to file

terse leaf
west elk
velvet fossil
narrow cypress
#

fk it, keep it old charcoal color the basechar coal has no texture refrence in it

safe pendant
stray pasture
loud canyon
#

dose anyone wanna playa hytale ive never played

west elk
stray pasture
west elk
#

yeah it's a basic prometheus exporter

stray pasture
#

I just want a simple metrics to trigger my orchestrator to scale. and down scale. 😄 - I actually dunno which is best. 😛 - Prometheus sounds better and battle tested.

west elk
#

for sure

#

I think that's exactly what you want then

stray pasture
#

Oh I jsut realized, that is basically putting a exporter process INTO the server. Oh that is quite nice. 😄

#

Hey, what was this patch that I just downloaded today? - I got one yestarday and one now today. 😄

charred fulcrum
#

Any good AFK Zone mod?

wary lion
outer cairn
#

the client will then translate it in its language

tribal venture
#

Is there a way to add an interaction component to a block? I wanted to open a UI when right clicked on that block

#

I'm not sure if there's another way like making an entity disguised as a block

gloomy maple
#

Is there a Server Essentials plugin for Hytale?

storm heron
outer cairn
simple thunder
#

is there a way to access prefabs?

gloomy maple
#

Is there a Server Essentials plugin for Hytale?

west elk
gloomy maple
#

with /menu etc...

#

warps

outer cairn
outer cairn
#

go look on curseforge. probably multiple

safe pendant
tribal venture
#

Kinda wanted to use a mud block since this block would spawn underground

outer cairn
#

You want to add an interaction to an existing block?

tribal venture
#

Pretty much, yeah

copper heron
#

I am trying to make a message command. How can I get the message argument that has more than 1 word?

I am doing /msg <player> Hello how are you. And its saying Expected 2, Actual 5

storm heron
weary oar
#

how to link?

west elk
warm veldt
#

Anyway of running 2 hytale clients for development test of plugin ?

west elk
#

you'd probably have to containerize it somehow or run the second client in a vm

quartz plover
#

You could probably just launch the client manually in 2 different instances, but you need at least the session token, identity token, name and uuid of the player you're logging in as

#

The launcher is a go application, so you could easily just launch it with GODEBUG=http2debug=2 env var to get them logged after the transaction is complete

#

Do note that it's quite a verbose output and not very easy to read

#

I have no idea how you could get the 2 accounts in the same server though if they are the same account

west elk
lost mist
#

Hi there has anyone experienced this client crash when teleporting to and from worlds/instances?

2026-01-28 15:31:46.6041|INFO|HytaleClient.Utils.SentryHelper|Sentry event captured: 18838d092a54401e91e127ae40ff803a
2026-01-28 15:31:46.7698|ERROR|HytaleClient.Application.Program|System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
at HytaleClient!<BaseAddress>+0xa9b5ab
at HytaleClient!<BaseAddress>+0x3db934
at HytaleClient!<BaseAddress>+0x3f9c88
at HytaleClient!<BaseAddress>+0x2f38ef
at HytaleClient!<BaseAddress>+0x2ea377
at HytaleClient!<BaseAddress>+0x640e41
at HytaleClient!<BaseAddress>+0x63bf50
at HytaleClient!<BaseAddress>+0x653ba7
at HytaleClient!<BaseAddress>+0x65374c
at HytaleClient!<BaseAddress>+0x120bc57

2026-01-28 15:31:46.7698|INFO|HytaleClient.Utils.SentryHelper|Sentry event captured: b3ec165184a14bc9ab95fdc82c194c0d

quartz plover
#

You'll have to figure out how to launch the client manually on your own though

warm veldt
quartz plover
#

The client is an executable the launcher executes for you. You could skip the launcher and use the client yourself

wary lion
# tribal venture Pretty much, yeah

if you're trying to do this with code feel free to check out the documentation i created in my bio i will be adding a whole asset editor page with tutorials, examples and a general breakdown of how it works (if you check out the editor please star it and if you find any issues or want to make an addition please lmk or you can create a pull request)

tribal venture
warm veldt
storm heron
tribal venture
#

In an IDE

quartz plover
west elk
#

3rd party launchers might actually become a thing for hytale ^^

storm heron
# tribal venture In an IDE

use the asset editor to add interactions to your block

use IDE to make a custom interaction to suit your needs (place them in resources/Server/Item/Interactions)

tribal venture
#

Ah, I'll give that a shot, ty

#

I tried to add an interaction to an existing block, probably why I couldn't find a way to do it

quartz plover
velvet fossil
#

Yo how do you make multiple projectiles go flying elsewhere from each other.

warm veldt
storm heron
tribal venture
#

I kinda wanted to go with making an entity disguised as a block like in minecraft but that doesn't seem like an option

storm heron
#

what are you trying to make here?

summer sapphire
tribal venture
stray pasture
#

For anyone curious, each time a player transfers world on a basic server you are bursting ~40MB of data per player. Scale that up 100X40 = 4G. - Its high but not unusual. This is with basically no extra content but a performance mod and my mod, and a 12 chunk view distance. - This is for each hop even the same servers.

Hope to see some optimizations later, but bump up your Linux UDP buffers as they are defaulted to 200KB. and at least 5 seconds between hops

Also something that has been affecting my "reliable" transfers is the Fluid Plugin, takes 1-4 seconds per chunk. That is about 4000ms or if you do that math 80ticks spent on one chunk.

storm heron
#

then yeah interactions seem like the way to go and you'd probably want to create a custom interaction

would recommend watching OG_Ali's video on them or just finding the custom interactions section on hytalemodding (d_o_t) dev (links are no fun here...)

tribal venture
#

I'll check them out, ty for the help

#

Pretty hard to find information online since most docs are mostly incomplete

#

So I've been pretty lost lol, feel like I've been asking around too much

oblique thorn
#

Hi everyone,
is anyone else getting this error when entering instances like the Forgotten Temple?

"Disconnected from server – Exception when adding player to world!"

Server logs show a lot of:

  • Took too long to run pre-load process hook for chunk
  • BlockTickPlugin / ChunkStore warnings
  • GC running during chunk preload

This started after the January 2026 hotfix.
Just want to confirm if this is a known issue or something server-side only.
Thanks!

storm heron
woven heart
#

Hii, Is it possible to change MaxHealth or MaxSpeed when a sensor detects it?

simple thunder
#

hi how could I get ComponentAccessor<EntityStore> for placing prefabs?

storm heron
#

using the store for the world you're placing it in - World.getEntityStore().getStore() IIRC

simple thunder
storm heron
#

that is the accessor

rotund willow
#

Anyone know how to create and trigger a custom event?

simple thunder
storm heron
rugged gale
#

Im hosting a server for my friends and one friend has an issue with item names, whenever he hovers over items they're long strings like server.item.... or server.instance.... (hes on linux)

#

anyone had this issue?

stray pasture
rugged gale
spark belfry
#

So I'm pretty sure it was something broken in my assets. I returned to the drawing board and found a different method for restricting unarmed block interactions. Thanks for trying.

quartz plover
#

I use arch btw

jaunty forum
#

Does anyone know how to give a piece of armor to a player and equip it directly?

celest iris
#

hello how to play with my friend for free in the same world ?

quartz plover
velvet fossil
#

@proven gyro sorry for the ping but do you know how to make it so 2 projectiles dont go the same direction.

celest iris
jaunty forum
celest iris
#

i can't click

jaunty forum
#

on online play or on the code ?

celest iris
#

on online play

velvet fossil
jaunty forum
#

maybe your game isn't updated to the latest version ?

tawdry lion
#

Or just open the port on your own router 🤔

celest iris
tawdry lion
#

Thousands of YouTube tutorials

celest iris
#

i look on the site but that look hard

celest iris
tawdry lion
#

It looks scarier than it is

celest iris
#

ok i trust you

rugged gale
steady wolf
#

Is there any way to not need --<argName>= for Optional Arguments? it is kinda dumb when you don't have multiple optional args

lapis ravine
#

How can I make it so non op players cannot destroy blocks in my map for my plugin?

stable solar
#

Hi, im working on a plugin and I have my own entity system that should process entities with the TransformComponent and my custom component. So I did:

    @Override
    public Query<EntityStore> getQuery() {
        return Query.and(ProjectileEmitter.getComponentType(), TransformComponent.getComponentType());
    }

But on server startup I get this error:

java.lang.IllegalArgumentException: Query in AndQuery cannot be null (Index: 1)
    at com.hypixel.hytale.component.query.AndQuery.<init>(AndQuery.java:35)
    at com.hypixel.hytale.component.query.Query.and(Query.java:50)
    at com.daanb.testplugin.ProjectileEmitterSystem.getQuery(ProjectileEmitterSystem.java:51)

I assume this is because my plugin loaded before the EntityModule plugin, which loads the transformComponentType. How can I ensure that my plugin loads after the EntityModule plugin?

stable solar
#

but how do I do that

steady wolf
#

your manifest?

sly shuttle
#

🐱

stable solar
steady wolf
hollow lava
#

yeah

#
    "com.remy:RemyUtils": ">=1.0",
    "Ellie:HyUI": ">=0.5.0",
    "com.remy:Remconomy": "*",
    "Hytale:Instances": "*"
  }``` something like this
stable solar
#

thanks! it worked with

"Dependencies": {
    "Hytale:EntityModule": "*"
},
ebon grove
#

is there a way to use custom fonts in ui assets?

quasi escarp
#

I know thats a super easy plugin but i have just started learning java and i can't figure out how do i call a player and send a message about broken and placed block


import com.hypixel.hytale.server.core.Message;
import com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType;
import com.hypixel.hytale.server.core.entity.entities.Player;
import com.hypixel.hytale.server.core.event.events.ecs.BreakBlockEvent;
import com.hypixel.hytale.server.core.event.events.ecs.PlaceBlockEvent;

public class gameListener {

    public static void onBlockBreak(BreakBlockEvent event, Player player) {

        BlockType brokenBlock = event.getBlockType();

        player.sendMessage(Message.raw("You have broke " + brokenBlock));
    }

    public static void onBlockPlace(PlaceBlockEvent event, Player player) {

        var placedBlock = event.getItemInHand();

        player.sendMessage(Message.raw("You have placed " + placedBlock));
    }
}
lucid spire
#

how can i detect when a player walks over a block?

azure narwhal
#

Whats the workBench id for the crafting in the inventory

olive rampart
#

i found a issue where right after teleporting to a different world, the world represented by playerRef.worldUuid was diff then playerRef.reference.s't'ore.externalData.world

anyone know why its like this?

west elk
solemn trellis
#

I'm messing around with Asset Editor in my server.. I'm trying to make custom block just to get the hang of putting in custom Items/Blocks. im following "Modding by Kaupenjoe" on Youtube but I cant seem to get my Translations name to auto fill so that everything is cleaned up and block looks clean in inventory & while holding in hand.. instead its just saying server.items.Ore_Sulfur_Basalt.name=Sulfur Ore - Basalt .. wont auto complete at all here is all in my server.lang file. Is doing it in normal worlds vs server different? do i gotta find a way to do it server wise?

server.items.Ore_Sulfur.name=Sulfur Ore
server.items.Ore_Sulfur_Basalt.name=Sulfur Ore - Basalt

olive rampart
junior rapids
#

Finally I've released my mod. It took a while to figure it out. I was thinking of using the hytale apis for storing player data, it turns out they store it as plain json, so I decided to go with a sql database as it is less complicated

jaunty forum
#

How can i give an armor piece to a player directly in the armor slot ?

junior rapids
#

player.getInventory().getCombined... something

#

they use a short for slot ids too

jaunty forum
#

getCombinedArmorHotbarStorage ?

junior rapids
#

this should be it

amber linden
azure narwhal
amber linden
plain pebble
#

how to get camera/rotation direction using player?

sonic thorn
#

Sorry I'm asking you from a long time ago! Is it confirmed? I'm about to use it for my mod and I wouldn't like it to be removed

azure narwhal
junior rapids
#

If there is a way

plain pebble
quasi escarp
junior rapids
#

I believe so. I don't know much about it

plain pebble
junior rapids
#

try seeing the spawn code

spark belfry
#

Yeah, its still happening and I have no idea why. I made a custom pack, override asset for wooden hatchet, make my changes and they are there, quit to main menu and reload world, its now a vanilla wooden hatchet again. Why is this happening? D:

loud lintel
#

quick question: is checking for a players mouse input(s) possible? if yes, then also is checking for a player crouching and doing a mouse input possible?

civic zephyr
#

The alternative to not using their blockstate system is tracking your own per-block components

polar plaza
#

Did you ever figure this out? I am having the same thing happen 🙁

civic zephyr
#

You can get the rotation from an entity’s transformcomponent

#

Its in radians not degrees iirc

tulip stirrup
plain pebble
civic zephyr
#

Were you getting the transformcomponent?

#

I think theres some kind of getTransform in the PlayerRef or something but Im not sure how valid that is

plain pebble
#

but i think it gets player rotation instead of camera rotation

civic zephyr
#

I think theres a getHeadRotation somewhere but I can’t check at the moment

plain pebble
#

there isnt

civic zephyr
civic zephyr
civic zephyr
#

Have you got a Store<EntityStore> and a Ref<EntityStore>

plain pebble
civic zephyr
#

Just a PlayerRef?

plain pebble
civic zephyr
#

Im on mobile so forgive me for the lack of formatting and I might get a specific method name incorrectly:

plain pebble
#

nw

plain pebble
#

u are the only one helping me im thankfull for that

wide yoke
#

my game doesnt download or extremly slow. any idead to fix it? i tried everything... and google doesnt help either

civic zephyr
# plain pebble nw

var entityRef = playerRef.getReference();
var store = entityRef.getStore();
var transformComponent = store.getComponent(entityRef, TransformComponent.getComponentType());

spark belfry
civic zephyr
plain pebble
spark belfry
#

I should just have to make a new pack, override asset, make my changes and I'm good to go right? Nothing else I should be doing?

plain pebble
civic zephyr
#

It might I haven’t used getTransform directly

#

Lots of weird and useless methods in Hytale atm

wide yoke
plain pebble
#

ye

plain pebble
hollow bane
#

Is it possible to prevent player from moving an item to a chest

plain pebble
civic zephyr
#

Oh then nevermind then

wide yoke
plain pebble
plain pebble
hollow bane
wide yoke
#
  1. generation
lucid spire
#

whats the best way to detect a player walking over a block?

timid shell
#

Is there a way to make a server available 24/7? And are there any guides how to do it?

short oasis
#

You can use a dedicated host

wide yoke
swift nexus
#

Just made a GPortal server , cant seem to join it, Anyone else have this issue?

tired gyro
#

why when ijoin any server he said tome faild to conect to server in single player

stable solar
#

is there a way to get all living entities in a x block radius from the player?

timid shell
short oasis
#

I've been using Dathost, they've been pretty good

#

It's extremely easy

plain pebble
native pike
#

when the interaction system will get updated?

tired gyro
#

why when ijoin any server igot error

wide yoke
plain pebble
#

bro watching hytale from mc is so weird imgur com/a/uKv3QWZ

plain pebble
wide yoke
plain pebble
kind osprey
wide yoke
drowsy solar
#

I have a bad pc but a good pc I Dont get to access often I play on via moonlight, I got hytlae on the bad pc orignally which should have good enoguh specs, but it always just hung and died

#

well loadogin into a world

tawny delta
#

Whats currently a good Plugin-Template to start? Not sure what the best start is.

spark belfry
#

Yep, no matter what I do, these items just revert back to vanilla. i cant figure this out and it seems like no one else is having this issue.

wide yoke
kind osprey
drowsy solar
wide yoke
#

error applying update to jre etc....

fleet sphinx
#

Has anybody indexed the Hytale maven pre-release artifacts to see everything that's provided?

wide yoke
drowsy solar
#

wat

wide yoke
#

yes xD

next tartan
#

Does someone know how to replace a block with the java code? Tried several functions but he does not replace the block.

lethal imp
#

Has anyone tested what happends if 2 plugins edit the same asset?

opaque cape
#

My Mod has reached 14 Downloads 😄

tawdry lion
stray pasture
opaque cape
#

I want to iron out any further bugs so we can go live with it on our own server

#

This was a ploy all along, Release it so others can test it >:)

stray pasture
#

I just ironed out my UDP relay. And now no more random disconnects and packet loss! 😄

olive flint
#

Having the game and server run from my IDE at the same time keeps triggering the OOM killer 😭, I have 32GB of ram

stray pasture
olive flint
#

well i'm just triggering gradle

opaque cape
#

gradle is triggered

stray pasture
#

I had issues with IDEs running everything because for an example Rider caps you and you have to manually adjust the resources allowed to be controlled and allocated.

stable solar
#

Does anyone know how to get the references to all living entities near the player?

olive flint
#

the hytale client in a singleplayer game is using ~11GB RAM

stray pasture
merry edge
#

Does anyone know if its possible to hide the player model when mounting an npc?

velvet fossil
#

Can anyone offer any advice on this so I have a staff it's shooting two projectiles but I cannot seem to get it to allow them to go a different direction from each other

olive flint
#

OK - I officially have modding working in Clojure (for however long the server lasts before it starts sending terrain)

#

It's mostly vibe coded so I'ma do a full rewrite by hand, but I got nice shorthands like defplugin, defcommand, defcomponent, and defsystem

open kite
#

Hello quick question about teleporting players:
The docs say to use Teleport.createForPlayer(world, pos, rot), but that method doesn't seem to exist in the Teleport class.
Has this been renamed or moved? How are you guys instantiating the Teleport component for players?
Current setup: SimpleInstantInteraction + world.execute().
Thanks!

stray pasture
primal cypress
#

guys if i want to send a message in the chat, but i don't want to use the player.sendMessage() how can i do that? i use Universe or World?

fleet sphinx
olive flint
stray pasture
simple thunder
#

how can I tp a player to a different world and coordinates?

opaque cape
olive flint
simple thunder
lucid spire
#

how do i detect a player walking over a block?

fleet sphinx
#

Does anybody know if there's a CDN for hytale server JAR and assets yet?

primal cypress
lucid spire
north current
timid shell
#

Does aternos have 24/7 uptime feature? Like servers always up or nah?

primal cypress
# lucid spire how do you register a interaction though?

example of interaction:

public class ChestConnectorEnableInteraction extends SimpleInteraction {

    private static final HytaleLogger LOGGER = HytaleLogger.forEnclosingClass();

    public static final BuilderCodec<ChestConnectorEnableInteraction> CODEC= BuilderCodec.builder(
            ChestConnectorEnableInteraction.class,
            ChestConnectorEnableInteraction::new,
            SimpleInteraction.CODEC
    ).documentation("Interaction for enabling the chest connector").build();


    @Override
    protected void tick0(
            boolean firstRun,
            float time,
            @Nonnull InteractionType type,
            @Nonnull InteractionContext context,
            @Nonnull CooldownHandler cooldown_handler) {....//what need to appen in the interaction..}
``` (in my case i've extended SimpleInteraction becase i needed that)

you make an interaction class (that extend SimpleInteraction, SimpleBlockInteraction, or other classes) and then in the main of the plugin you register the interaction like this (in the setup()):

//======== Register new interactions ========
this.getCodecRegistry(Interaction.CODEC).register(
"NewInteractionId",
ChestConnectorEnableInteraction.class,
ChestConnectorEnableInteraction.CODEC
);


, then the "NewInteractionId" will be the id that you will put in the asset editor under the interaction section (you can chose what trigger the interaction directly from the asset editor, in your case you can chose something called "onCollision" or similar now i don't remember)
rotund willow
#

How does one allow for parameters on a command? I know you can add setAllowsExtraArguments(true); and parse the context.getInputString(); but then that doesn't show up on the help info.

stray pasture
primal cypress
olive rampart
#

can someone help me w/ my manifest? { "Group": "org.orbis.industries", "Name": "OrbisIndustries", "Version": "1.0.0", "Description": "Your plugin description here.", "Authors": [ { "Name": "bananababoo", "Email": "banababnana@gmail.com", "Url": "https://example.com" } ], "Website": "", "ServerVersion": "*", "Dependencies": {}, "OptionalDependencies": {}, "DisabledByDefault": false, "IncludesAssetPack": false, "Main": "org.orbis.industries.OrbisIndustries" }

fervent lava
#

anyone a UI wiz wanna help me create one for my mod? I'm pulling teeth over here

olive rampart
#

its saying Skipping pack at Bananababoo_OrbisIndustries: missing or invalid manifest.json

loud osprey
#

is there a way to make npcs into shopkeepers?

olive rampart
#

see how the interaction is set up

loud osprey
#

k

storm ocean
#

When a player joins the server, I see a UUID in the console. Can you please tell me if this UUID is unique to my server? Or is it unique to all servers?

nocturne panther
jaunty forum
#

How can i give and equip an item in the offhand of a player ?

stray pasture
primal cypress
#

if i want a component to make an action every 5secs (for example) i need to use the ticking system right?

north current
#

Anyone know how I would go about adding an overlay? like a leaderboard on the side of my screen?

elfin swallow
#

Is there an explanation somewhere of what the hytalemodding dot dev guide setting up environment page (can't post the link) means by it being outdated but correct but there are better ways of setting up your evironment?

broken grail
#

How to move a Player from one Server to another? Are there plugins for that?

dreamy stratus
#

How do I run a command ingame from a plugin?

finite vault
#

has anyone figured out, when apply velocity to an enitity, how to cap the top speed?

#

(or just how to do that in general, excluding the appling velocity part if it's not relavent)

slate harness
#

Hi, I am having the same problem. Have you find any solutions?

alpine kite
#

hello, how to freeze npc on position?

merry harbor
#

How can I select a chunk, with world.getChunk?

alpine kite
signal vale
#

I want to open links from the UI and i can't figure out how 😄

storm ocean
#

Can I find documentation for Hytale API somewhere?

#

Swagger??

alpine kite
quartz wave
fringe herald
#

How can I add a custom block to the world that should be considered in world gen?

alpine kite
#

how to handle projectile hit block by code?

north current
#

anyone know how to import sounds?

remote plume
#

hey sorry if this has already been asked but where can I find links to documentation on getting started with plugin development

charred fulcrum
#

AFK Zone plugin?

broken grail
past flame
#

Guys, can we make commands like "/plugin lobby create <name>". My plugin constantly says it has 0 arguments issues.

velvet fossil
#

does anyone know how to make 2 projectiles go different ways

stray pasture
storm ocean
#

Is it possible to somehow create a clickable link in the game?

tender tangle
#

Hmm, the Assets.zip is not available through some cdn/maven right? only lancher installation.
-# want to make a devserver run fully independent of a launcher

storm ocean
alpine kite
woeful ice
#

Hello guys! Does anyone here knows how "config.json" file is created for instanced portals?

#

I would like to prevent the temporal worlds to be deleted on exit, but i don't know why, the config.json is being overwritten with DeleteOnRemove: true when it's set on false in the config.bson of the instance

ocean lake
#

is there a way to store data in held item ?> like position of rightclicked block?

quartz plover
opaque cape
#

Look up "Shubshub Server Jump" it even has Inventory Sync

quartz plover
opaque cape
#

For Inventory Sync both servers need the mod btw

glossy turret
#

When I do CommandContext.sendMessage, is that sent to everyone or just whoever typed in that command?

quartz plover
tender tangle
glossy turret
glossy turret
sharp island
#

another update... damn

primal cypress
#

guys if i want to do an operation every 5seconds, i need to make a function that get called every tick and check if the tick is a multiple of 5x<server tick per second> ? or there are other function in the ticketing system that will help me doing that better?

quartz plover
alpine kite
primal cypress
merry harbor
#

Is there a way to use a in game command in a plugin? Like set blocks?

alpine kite
young bone
#

Did you find a solution at your problem ? I have the same ?

valid burrow
# young bone Did you find a solution at your problem ? I have the same ?

not sure which of them fixed the issue, but I ended up deleting the server jar, the aot cache, and the assets.zip BEFORE copying the new ones over to make sure they were actually copying over,

and then i regenerated the aot cache for my java version with
java -XX:AOTCacheOutput=HytaleServer.aot -cp .\HytaleServer.jar com.hypixel.hytale.Main --assets ../Assets.zip --backup --backup-dir backups --backup-frequency 30

and then when i started the server again after this the error was gone

coarse frost
#

how to auto-update server

loud osprey
#

is there a way i can set up interactions with npcs, for example dialogue, where the npc will ask something and depending on how the player responds will affect what they say next

boreal echo
merry harbor
glossy turret
steady wolf
shut widget
calm sable
#

Does anyone know how effects are applied, for example "Burn"?

shut widget
nocturne panther
#

I'm making a server referral system to enforce that users join a subserver from a main server. I'm checking against the PlayerSetupConnectEvent and if the server is not properly referred I'm referring it to an expected main server:

                    val server = getRandomServer() ?: return@registerGlobal
                    event.reason = "EzLobby Linked Server - Forced Referral"
                    event.referToServer(server.host, server.port)
                }

I don't know why the referral seems to be working partially: the user is referred but disconnected due to an "unexpected error", but once the user presses the "try again button" they are on the expected server to which it was referred.

Any idea what I might be missing?

past flame
#

Does hytale supports sub commands like /plugin lobby create <name> ?

broken grail
past flame
nocturne panther
jaunty shoal
#

Anyone that needs a dev hmu

finite pond
#

Anyone that needs a non-dev acquainted with AI to research classes/methods/fields/etc... I gotchu 😄

nocturne panther
# jaunty shoal Anyone that needs a dev hmu

I'm actually looking to assemble a team for my network, while also having a secondary dev team (being a dev myself), but we are targetting right now the Spanish community

quartz plover
nocturne panther
quartz plover
#

True tbf

primal cypress
finite pond
#

I'm a nice guy 😄

jaunty shoal
finite pond
#

I bring to the table my two mods 😄 HomePlus and LootPlus !!

nocturne panther
shut widget
#

@steady wolf open your private messages, i have made a class for this

high bane
calm sable
nocturne panther
jaunty shoal
#

AI all over it

finite pond
#

Wait, is AI bad? Even fortune 500 companies are using it? I thought it was good 🙁

nocturne panther
#

Doc generation? Yup, for sure, but that's mostly it. But as I said, not gonna fight you. You are entitled to your opinion

primal cypress
finite pond
#

overall it is not yes bad LOL

nocturne panther
stray pasture
warm crown
#

Anyone else getting this error every time they restart the server?
[2026/01/28 22:50:12 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!

stray pasture
opaque cape
#

Anything is slop if you just use it without understanding it

nocturne panther
warm crown
#

yes, I don't know why it tries to create the world and crashes since it exists

opaque cape
#

I used to be extremely Anti AI too at the start
And then I realized actually only AI Art is bad because it offers no real creativity to the process

nocturne panther
warm crown
#

it's vanilla

strange tapir
finite pond
warm crown
#

maybe it's a permissions issue

merry harbor
#

why it doesnt work when i try usuing my plugin? commandManager.handleCommand(player, "/selectchunksection");
it says that command dooesnt exist when trying to use my command in game

opaque cape
#

I would imagine drop the /

merry harbor
#

makes sense

nocturne panther
opaque cape
stray pasture
opaque cape
#

It can be null though, Its just referraldata

warm crown
#

CMD ["java", "-XX:AOTCache=HytaleServer.aot", "-jar", "HytaleServer.jar", "--assets", "Assets.zip"]
What commnds do you use to start the server?

primal cypress
#

is possible to set a ui button to "enabled" or "disabled" like clickable or not?

dusky sable
#

Does anyone know how to disable player collisions and prevent a player from picking up dropped items?

nocturne panther
merry harbor
#

is there like a context.getarguments()? for commands like /levelup "argument"

opaque cape
opaque cape
#
                        world.execute(() -> {
                            if (isAuthoritative) {
                                playerData.setAuthoritativeServer(playerUuid, targetHost, targetPort);
                            }

                            playerRef.referToServer(targetHost, targetPort, customData);
                        });
                    }, CompletableFuture.delayedExecutor(500L, TimeUnit.MILLISECONDS));```
nocturne panther
nocturne panther
opaque cape
#

Let me grab the code I use in my Player Connect event

opaque cape
tribal sapphire
#

hi there wanted to ask does anyone know how to fix the issue going on with the game after the current update not letting you connect with friends online via code ?

#

any help with this issue would be great

finite pond
#

@haughty sand hey saw your friend request, I don't really friend up, but you can send me messages if you need.

haughty sand
opaque cape
#

I saw that

dusky sable
# opaque cape I saw that

I realized you were doing something different but I still don't trust CompletableFuture with world thread lol

merry harbor
#

Something like this work? T_T
` String input = context.getInputString();
String[] args = input.split("\s+");

    int level = 1; 

    if (args.length > 1) {
        try {
            level = Integer.parseInt(args[1]);
        } catch (NumberFormatException e) {
            player.sendMessage(
                    Message.raw("§cUsage: /resetchunk <level>")
            );
            return;
        }
    }`
quartz plover
#

You can optionally put the language of the codeblock in front of the first ```, like ```java

dusky sable
opaque cape
merry harbor
dusky sable
#

Actually, I would use Hytale's built in Scheduler

opaque cape
#

Hytale has a built in scheduler?

nocturne panther
#

Forget about I wrote, nope, coroutines are working in another way xD

dusky sable
opaque cape
#

Thanks

strong night
#

Guys, is there a mod or plugin that allows me to create other worlds on the same server?

dusky sable
strong night
quiet jacinth
#

You can also use the /world command

granite palm
#

Does anyone have a small example of how to dynamically apply or build a UI? My idea is to create a leaderboard.

quartz plover
primal cypress
#

guys, i'm not sure how it's work the UIEventBuilder.addEventBinding() function work, if i want to add two different event binding i need to call this fuction two time for the 2 different trigger, but then in the handleEventData() how can i see what event triggered the function?

strong night
nocturne panther
#

Doh, neither the CompletableFuture nor the scheduled executor did the trick. But thanks in any case!

I'll keep giving it a spin tomorrow as it's getting quite late already 😅

haughty sand
#

if u write /world u get help in chat, but for create /world add (name)

strong night
strong night
merry harbor
#
        super.setup();
        getCommandRegistry().registerCommand(
                new ResetChunkCommand(
                        "resetchunk",
                        "Resets the current chunk with a level preset",
                        false
                )
        );
    }

do you guys know how can i add a new parameter?

strong night
opaque cape
#

Alternatively whats the actual error you're seeing on the other side or on your server?

nocturne panther
opaque cape
#

Why not cache the data you need and then grab it in the PlayerConnectEvent

nocturne panther
nocturne panther
stray pasture
stray pasture
stable solar
#

Has anyone ever had this bug [InteractionManager] Client finished chain earlier than server!? If so, what might cause it?

nocturne panther
stray pasture
nocturne panther
nocturne panther
stray pasture
nocturne panther
#

For further info, I've already made a push against github on
Degoos-Team/EzLobby
feat/lobby-referral branch

compact ore
#

going to sound DUMB but i would like ot know what config commands i need to put in to keep inventory on death and no fall damage.

summer ibex
#

falldamage is in by default, you have to add the rest. Its in your worlds config.json

tall hemlock
#

Hello is there a way to setup a server to auto-update? Link to a guide on how to make a server update without having to manually copy the files in?

tender tangle
#

its on the hytale support page

#

they have downloader that you can run with your periodical restart process to update the server files

woven siren
#

someone knows why when on a player I put canFly = false, is still flying the player?

tall hemlock
#

I don't see anywhere that talks about auto updating if you wouldnt mind providing a link to the page?

tender tangle
warm sedge
tender tangle
warm sedge
#
    public UpdateCommand() {
      super("update", "server.commands.update.desc");
      this.addSubCommand(new UpdateCheckCommand());
      this.addSubCommand(new UpdateDownloadCommand());
      this.addSubCommand(new UpdateApplyCommand());
      this.addSubCommand(new UpdateCancelCommand());
      this.addSubCommand(new UpdateStatusCommand());
      this.addSubCommand(new UpdatePatchlineCommand());
   }
wanton hemlock
#

hey, is there anyone here using the simple claims mod? how does it work as a party? do we get the standard amount of chunks in total as a party or do we get the standard amount each?

shut widget
#

For all of those who experience the issue: "The wrong number of required argument was specified. Expected: 0, actual 1:" if you use RequiredArg you need to provide the arg if you use OptionalArg it's like a flag arg you have to set --<argName> arg else you can use none of them (excepted your own type of args) and use setAllowsExtraArguments(true) in your constructor

summer ibex
wanton hemlock
tall hemlock
tall hemlock
#

when i do that it says i need to manually add the files

night coral
#

Hey guys, does anyone knows how to get all entities in HytaleAPI?

warm sedge
#
[TMP] Cannot download update: folder layout not compatible with auto-update.
Expected Assets.zip and launcher scripts in parent directory.
Use '/update download --force' to download anyway.
tender tangle
#

never seen the command work, there must be some undocumented step
-# (to be fair, I had not spent hours on it to figure it out)

tall hemlock
#

yes i did that and manually moved to files like with the external downloader just wondering how i fix the parent directory issue

warm sedge
#

its just looking for Assets[dot]zip and start[dot]sh / start[dot]bat to be in the parent directory

shut widget
night coral
#

I wanna remove all entities like /entity remove all

warm sedge
#
server/
 - HytaleServer[dot]jar
 - ...
start[dot]sh (linux)
start[dot]bat (windows)
Assets[dot]zip
shut widget
#
import com.hypixel.hytale.server.core.universe.World;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.component.Store;
import com.hypixel.hytale.component.Ref;

// Get the world
World world = player.getWorld(); // or Universe.getWorld(worldUUID)

// Execute in world's thread context
world.execute(() -> {
    // Get EntityStore
    Store<EntityStore> store = world.getEntityStore();
    
    // Iterate through all entities
    store.forEach(entityRef -> {
        // entityRef is Ref<EntityStore>
        if (entityRef.isValid()) {
            // Do something with entity
            System.out.println("Found entity: " + entityRef.id());
        }
    });
});

woeful gyro
#

Hii, someone knows a server plugin for skywars?

tall hemlock
shut widget
warm sedge
#

just make sure assets.zip and the bat are in the parent directory of the server and then the updater should work

#
public static boolean isValidUpdateLayout() {
      Path parent = Path.of("..").toAbsolutePath();
      return Files.exists(parent.resolve("Assets.zip")) 
            && (Files.exists(parent.resolve("start.sh")) 
              || Files.exists(parent.resolve("start.bat")));
   }
shut widget
#

server/
- HytaleServer*.jar
- ...
start
.sh (linux)
start
.bat (windows)
Assets
.*zip

#

Use Formatting
to send paths 🙂
Assets*.*zip
for example

warm sedge
#

ah does making it bold get around the automod?, nice to know

#

Assets.zip

shut widget
#

yes since making it bold prevents it to make it Hyperlink

warm sedge
#

backslash should also works then

shut widget
#

Assets.zip yes it does

#

but please don't use it with bad behavior guys 🙂

ancient venture
#

How many of you are running this off Proxmox LXC?

tall hemlock
#

I am code illiterate would i put the folder address in the ".."? Also do i copy that into the bat file?

shut widget
ancient venture
#

If you don’t know then why comment? Lol

warm sedge
shut widget
#

to know what this is 🙂

stray pasture
red pike
#

how do I access hytales Api if I'm using IntelliJ

pine holly
#

I know what it is but I'm not that cool

winged shard
#

Guys I've let my server on for a few days and it corrupted?

When I joined in it said no world available

#

then i restarted the server and now it crashes with

[2026/01/29 00:47:57 SEVERE] [ChunkStore] Failed to load chunk! 22, -9
java.util.concurrent.CompletionException: java.lang.IllegalArgumentException: capacity < 0: (-950530401 < 0)
        at java.base/java.util.concurrent.CompletableFuture.wrapInCompletionException(CompletableFuture.java:323)
        at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:359)
        at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:364)
        at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1791)
        at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1781)
        at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:511)
        at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1450)
        at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2019)
        at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:187)
Caused by: java.lang.IllegalArgumentException: capacity < 0: (-950530401 < 0)
        at java.base/java.nio.Buffer.createCapacityException(Buffer.java:289)
        at java.base/java.nio.Buffer.<init>(Buffer.java:252)
        at java.base/java.nio.ByteBuffer.<init>(ByteBuffer.java:323)
        at java.base/java.nio.ByteBuffer.<init>(ByteBuffer.java:331)
        at java.base/java.nio.MappedByteBuffer.<init>(MappedByteBuffer.java:114)
        at java.base/java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:104)
        at java.base/java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:367)
        at com.github.luben.zstd.ZstdDecompressCtx.decompress(ZstdDecompressCtx.java:350)
        at com.github.luben.zstd.Zstd.decompress(Zstd.java:1560)
        at com.hypixel.hytale.storage.IndexedStorageFile.readBlob(IndexedStorageFile.java:612)
        at com.hypixel.hytale.server.core.universe.world.storage.provider.IndexedStorageChunkStorageProvider$IndexedStorageChunkLoader.lambda$loadBuffer$0(IndexedStorageChunkStorageProvider.java:122)
        at com.hypixel.hytale.sneakythrow.supplier.ThrowableSupplier.get(ThrowableSupplier.java:13)
        at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1789)
        ... 5 more

what i should do?

copper summit
#

woah

#

format that my guy

winged shard
pine holly
#

yup, dats world ending doom right there

copper summit
#

``` above and below that log

winged shard
#

but i didn't do anything weird i just let my ovh vps on for like 3 days straight

pine holly
#

you can load a backup of the world probably, see of that works

winged shard
quartz plover
dusky sable
#

@nova void How's your C# server software coming along?

sinful storm
#

What's the alternative for the Didn't Make the Cut mod that was re-enabling and fixing up a good chunk of vanilla content? I see the modder discontinued the mod.

quartz plover
#

Someone's making a C# server?

#

Interesting, afaik we have like 4 people making rust servers, 1 in C, 1 in java and now 1 in C#

nova void
quartz plover
#

Asset stuff is a bummer indeed, it's just so much work to get the codecs done

dusky sable
nova void
#

Not really just asset its pain

copper summit
dusky sable
nova void
#

I could try making some converter to always have fresh data but idk

dusky sable
#

You should open source the project, maybe some people can help

quartz plover
dusky sable
#

Sure!

quartz plover
#

The projects are linked there for the most part

sly shuttle
#

Does anyone know how to block a command for a player in code? (I mean, block it for X seconds at certain moments)

finite pond
# winged shard then i restarted the server and now it crashes with ``` [2026/01/29 00:47:57 SEV...

I've never had something like this happen yet but you do know where the bad chunk is the 22, -9

You probably have backups of your world in your server, could backup the server yourself make a copy

Then you could try to go into your universe -> worlds -> default -> chunks aaand try to figure out which ones could be that 22, -9 and then ...

I don't know. Since it would be a copy you backed up, you could try deleting?

twin ember
#

Any servers available?

copper summit
#

How do i call my .ui file correctly?
commandBuilder.append("ui/skytale_menu.ui");

hexed lynx
twin ember
#

Alright

copper summit
lucid spire
copper summit
#

Oh okay, thanks!

nova void
#

the max in the C# server I did just mostly getting client to loading state of assets like hello server pls gimme xyz

#

I was mostly working after this to get some assets to load

lucid spire
bright pelican
#

Does anyone know how to get a more updated hytale.serverjar in my Intellij?

quartz plover
#

But it might lead to unexpected compilation failures if you updated the game

bright pelican
#

So make Intellij point directly to the real server ?

quartz plover
#

You might find the project no-longer compiling after an update

bright pelican
#

I'm currently only hosting the server through the app, what's the method to udpate the one in the project? Do i just open the folder and replace it with a newer version and refresh?

quartz plover
#

It would be safer to depend on the maven artifact, check if the latest version is being used and emit an error if there's a new release

lucid spire
#

or whichever version you need

quartz plover
lucid spire
#

than you can just add something like

compileOnly(files("libs/HytaleServer.jar"))
nova void
#

@quartz plover can you send discord link o? for that server

quartz plover
nova void
#

I think I opened dms now

bright pelican
#

Thanks all

quartz plover
#

Still nope

nova void
#

ree

velvet fossil
#

Can anyone explain why this projectile wont't fly from each other oh cant upload files

quartz plover
velvet fossil
#
  "TranslationProperties": {
    "Name": "server.items.Weapon_Staff_Frost.name"
  },
  "Categories": [
    "Items.Weapons"
  ],
  "Quality": "Common",
  "ItemLevel": 40,
  "Model": "Items/Weapons/Staff/Frost.blockymodel",
  "Texture": "Items/Weapons/Staff/Frost_Texture.png",
  "PlayerAnimationsId": "Staff",
  "Interactions": {
    "Primary": "Staff_Primary",
    "Secondary": "Staff_Primary"
  },
  "InteractionVars": {
    "Staff_Cast_Summon_Charged": {
      "Interactions": [
        {
          "Parent": "Staff_Cast_Summon_Charged",
          "Costs": {
            "Mana": 50
          }
        }
      ]
    },
    "Staff_Cast_Summon_Cost": {
      "Interactions": [
        {
          "Parent": "Staff_Cast_Cost",
          "StatModifiers": {
            "Mana": -50
          }
        }
      ]
    },
    "Staff_Cast_Summon_Launch": {
      "Interactions": [
        {
          "Type": "Parallel",
          "Interactions": [
            {
              "Interactions": [
                {
                  "Type": "LaunchProjectile",
                  "RunTime": 0.25,
                  "ProjectileId": "Ice_Ball",
                  "SpawnRotationOffset": {
                    "Yaw": -45
                  },
                  "Effects": {
                    "ItemAnimationId": "CastSummonCharged"
                  }
                }
              ]
            },
            {
              "Interactions": [
                {
                  "Type": "LaunchProjectile",
                  "RunTime": 0.25,
                  "ProjectileId": "Ice_Ball",
                  "SpawnRotationOffset": {
                    "Yaw": 45
                  },
                  "Effects": {
                    "ItemAnimationId": "CastSummonCharged"
                  }
                }
              ]
            }
          ]
        }
      ]
    },
    "Staff_Cast_Summon_Effect": "Staff_Cast_Effect",
    "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"
  },
  "IconProperties": {
    "Scale": 0.27,
    "Translation": [
      -52,
      -50
    ],
    "Rotation": [
      45,
      90,
      0
    ]
  },
  "Icon": "Icons/ItemsGenerated/Weapon_Staff_Frost.png",
  "Particles": [
    {
      "TargetEntityPart": "PrimaryItem",
      "TargetNodeName": "Crystal1",
      "SystemId": "Weapon_Frost_Mist",
      "PositionOffset": {
        "Y": 0
      },
      "RotationOffset": {
        "Pitch": 0,
        "Yaw": 0,
        "Roll": 90
      },
      "Scale": 1
    },
    {
      "SystemId": "Weapon_Frost_Mist",
      "TargetEntityPart": "PrimaryItem",
      "TargetNodeName": "Crystal1",
      "RotationOffset": {
        "Roll": 90,
        "Yaw": 90
      },
      "Scale": 1
    }
  ],
  "DroppedItemAnimation": "Items/Animations/Dropped/Dropped_Diagonal_Left.blockyanim",
  "Tags": {
    "Type": [
      "Weapon"
    ],
    "Family": [
      "Staff"
    ]
  },
  "Weapon": {},
  "Light": {
    "Color": "#146",
    "Radius": 1
  },
  "ItemSoundSetId": "ISS_Weapons_Wood"
}
  "Parent": "Projectile_Config_Ice_Ball",
  "SpawnRotationOffset": {
    "Yaw": 45
  },
  "SpawnOffset": {
    "X": 0
  }
}```

anyone know why the projectials will not move from each other

{
  "Parent": "Projectile_Config_Ice_Ball",
  "SpawnRotationOffset": {
    "Yaw": -45
  },
  "SpawnOffset": {
    "X": 0
  }
}
#

Been trying all day to see what can be done and this pos will not allow them to move from each other at all.

quartz plover
#

Holy json dump

velvet fossil
#

Yeah.... But needed to actually get help on it

olive rampart
#

if i modify a component, does it automatically apply if i then do getComponent from somewhere else?

finite pond
#

000zzzZx

#

Sorry one of my two children decided to faceroll my keyboard when I went to the bathroom.

copper summit
copper summit
stable solar
pliant cradle
#

Hello, I was wondering if I want to teleport a player when it connect to the server, can I do it from the PlayerConnectEvent, or should I use another one ?

west elk
pliant cradle
#

My goal is that the player "could" disconnect in a world that would be deleted when he log back to the server

#

So I can send it like to world "X" and when it's added to it, I move it using onEntityAdded ? Am I correct?

west elk
#

or in a refchangesystem when the transform component gets added

pliant cradle
#

Is there any community recommended docs now?

west elk
#

hytalemodding . dev is what I mostly reference

bright chasm
#

yo, is there a way to test my mod locally which requires another player interaction? Like I can connect to my local but is there a way to spawn or something like that another account / entity etc that I can control to test interactions?

pliant cradle
stray pasture
stray pasture
winged shard
bright chasm
glacial field
#

Hello, I made a server on my linux free tier vps from oracle, I want to know how to update it, I have the instaler and I've downloaded the zip with the latest version, how do I update it without losing my world?

stray pasture
winged shard
#

when i restarted the server i got the corruption in the chunks

stray pasture
stray pasture
winged shard
#

without logging in and i got that as result

#

i just got anxiety issues that my world can anytime corrupt and im doing like /backup every 15 minutes lmao

#

also because the argument in the java server that makes automatic backup didnt work at all I just got 3-4 backups

stray pasture
#

Yeah, early access. Im suprised this isnt happening more.

finite pond
finite pond
#

If you have a server that you want to share information with me, I can join and test whatever you'd like. Assuming we can reciprocate for my mods lol. Since I'm kind of in a similar boat.

hexed lynx
cinder lily
#

any one just wanna play

dull junco
#

Does anyone know how to programmatically retrieve the name of an NPC using their ID?

For example using entityID "Skeleton_Burnt_Gunner" to retrieve displayName "Burnt Skeleton Gunner"

finite pond
copper summit
#

If you stack two uis on top of each other does it break the second ui?

#

The second one just says loading forever when i click something on it

copper summit
tight herald
#

Anyone have success with /update command?
Got weird file structure I suppose but don't see any documentation how to correct it.. can use hytale-downloader, but figured this method is probably gonna be the "official" one

Cannot download update: folder layout not compatible with auto-update.

swift crest
#

Hi guys! I just recently got Hytale pretty fun game! I had an issues about joining Into my friend’s server for some reason I got an error joining the same thing is happening to my last game is there an another way to connect with them? It work when they join mine but I can’t join theirs

copper summit
#

Anyone able to tell me why this doesnt work?

It doesnt even cancel the UseBlockEvent and doesnt open the ui either


import com.hypixel.hytale.component.Ref;
import com.hypixel.hytale.component.Store;
import com.hypixel.hytale.server.core.entity.entities.Player;
import com.hypixel.hytale.server.core.event.events.ecs.UseBlockEvent;
import com.hypixel.hytale.server.core.inventory.ItemStack;
import com.hypixel.hytale.server.core.universe.PlayerRef;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;

import javax.annotation.Nonnull;

public class MenuItemListener {
    
    private static final String MENU_ITEM_TYPE = "Deco_Book_Pile_Small";
    
    public static void onUseBlock(@Nonnull UseBlockEvent.Pre event) {
        Ref<EntityStore> entityRef = event.getContext().getEntity();
        Store<EntityStore> store = entityRef.getStore();
        
        Player player = store.getComponent(entityRef, Player.getComponentType());
        if (player == null) {
            return;
        }
        
        ItemStack itemStack = event.getContext().getHeldItem();
        if (itemStack == null || ItemStack.isEmpty(itemStack)) {
            return;
        }
        
        String itemType = itemStack.getItemId();
        if (MENU_ITEM_TYPE.equals(itemType)) {
            event.setCancelled(true);
            
            PlayerRef playerRef = store.getComponent(entityRef, PlayerRef.getComponentType());
            if (playerRef != null) {
                player.getPageManager().openCustomPage(entityRef, store, new MenuPage(playerRef));
            }
        }
    }
}

register in my main plugin class

this.getEventRegistry().registerGlobal(com.hypixel.hytale.server.core.event.events.ecs.UseBlockEvent.Pre.class, MenuItemListener::onUseBlock);
copper summit
copper summit
# copper summit Should i be doing this with the PlayerMouseButtonEvent?

PlayerMouseButtonEvent dont work either

package com.SkyTale.STWMS;

import com.hypixel.hytale.component.Ref;
import com.hypixel.hytale.component.Store;
import com.hypixel.hytale.server.core.entity.entities.Player;
import com.hypixel.hytale.server.core.event.events.player.PlayerMouseButtonEvent;
import com.hypixel.hytale.server.core.asset.type.item.config.Item;
import com.hypixel.hytale.server.core.universe.PlayerRef;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.protocol.MouseButtonEvent;

import javax.annotation.Nonnull;

public class MenuItemListener {

    private static final String MENU_ITEM_TYPE = "Deco_Book_Pile_Small";

    public static void onMouseButton(@Nonnull PlayerMouseButtonEvent event) {
        // 1. Check for Right Click using the string name to avoid "Symbol not found"
        // Most Hytale enums for buttons are "RIGHT" or "BUTTON_1"
        String buttonName = String.valueOf(event.getMouseButton());
        if (!buttonName.contains("RIGHT") && !buttonName.contains("BUTTON_1")) {
            return;
        }

        // 2. Validate the item in hand
        Item itemInHand = event.getItemInHand();
        if (itemInHand == null || !MENU_ITEM_TYPE.equals(itemInHand.getId())) {
            return;
        }

        // 3. Get the Player and PlayerRef directly from the event
        Player player = event.getPlayer();
        PlayerRef playerRef = event.getPlayerRefComponent();

        // Use the Ref provided in the constructor (inherited from PlayerEvent)
        Ref<EntityStore> entityRef = event.getPlayerRef();

        if (player == null || playerRef == null || entityRef == null) {
            return;
        }

        Store<EntityStore> store = entityRef.getStore();

        // 4. Cancel and Open
        event.setCancelled(true);
        player.getPageManager().openCustomPage(entityRef, store, new MenuPage(playerRef));
    }
}
this.getEventRegistry().registerGlobal(com.hypixel.hytale.server.core.event.events.player.PlayerMouseButtonEvent.class, MenuItemListener::onMouseButton);

Anyone got another idea or just happen to know why my method isnt working?

tight herald
swift crest
#

I don’t think we did we just very recently got it

copper summit
#

Still havent updated my server yet

worldly willow
#

How do I loop entities in a radius of another entity/player

swift crest
hollow kettle
#

I'm guessing mods are written in JS?

west elk
#

and a lot can be done without any coding, via the Asset Editor

nova void
#

if someone wonders yes, client runs which is in C# runs java server when creating single-player worlds soo mods stay still as java

hollow kettle
#

Does HT have documentation yet?

west elk
hollow kettle
#

Ok thanks for the help

fleet gulch
#

tip: decompile and use an LLM to learn the patterns

final pulsar
#

Has anyone figured out how to setup a world border/limit to how far players can explore? I'm trying to limit my server to 250kx250k

quartz wave
#

@wary lion do you have a version of the server that compiles for the quantized thing you're working on?

copper summit
opaque cape
#

Yknow what I was just thinking about

copper summit
opaque cape
#

Using AI as an assistant helps to take away the stress of figuring out how to implement something, And instead makes the process more about the specific flow and concept of what needs to happen

minor oasis
opaque cape
minor oasis
copper summit
opaque cape
opaque cape
opaque cape
fleet gulch
opaque cape
#

Nobody has to use AI if they dont want to and they can use it to whatever extent they wish

broken condor
opaque cape
strong musk
broken condor
#

That recognizable?

strong musk
#

nice lol, I recognize it because I have implemented like, 2 wad parsers lol

copper summit
strong musk
#

and the playpal is one of the easiest lumps to extract

#

spare flats, but you have to parse the playpal to visualize them nicely

broken condor
#

Based based

opaque cape
copper summit
opaque cape
#

Fair

fleet gulch
#

🫂

broken condor
fleet gulch
#

he may be trollin ya

opaque cape
#

Thats what we call gatekeeping now wether you hate ai or not

strong musk
#

unrelated, but for certain things like program data, I like to implement a wad-style format lmao
mostly for the funnyness of it, particularly with small bits of program data

opaque cape
#

Fun fact, People also had similar reactions when photoshop first became a thing

#

But I dont support ai image generation for the record

opaque cape
#

If a tool can assist me then thats good

I dont want a tool doing the entire job for me

strong musk
kind osprey
upbeat prairie
#

Yo what does ts have to do wit server plugins

copper summit
upbeat prairie
kind osprey
broken condor
fleet gulch
broken condor
opaque cape
kind osprey
#

Rage baiting in 2026 🫠
What a joke 😭

upbeat prairie
copper summit
broken condor
fleet gulch
#

oh come on, embrace moloch won't ya

opaque cape
upbeat prairie
#

If yo statement is so fkn stupid it looks like bait jus stop talkin atp ykwim

strong musk
opaque cape
#

Its capable of generating coherent imagery sure

But there will always be something about a piece youre making that you couldnt control with a 10gb prompt

upbeat prairie
blazing cosmos
#

whats the command for converting a world to world gen v2? i forgot it