#server-plugins-read-only

1 messages · Page 112 of 1

pulsar oak
#

i just cant get it to work, the events will NOT cancel

digital zinc
#

hi guys

#

I need help, does Hytale have a style similar to Minecraft's Chest Commands?

#

I just created an economy plugin, but I wanted to implement a command to open a vault with the information.

#

or GUI systems?

patent vapor
#

how do you send a message to console that goes to the log file?

opaque cape
#

Is there a site I can use to check my UI file for Syntax Errors?

tawdry crescent
digital zinc
opaque cape
#

I used hytale ellie au and added the UI file to my Mod
But when I try to go into the world, It tells me it failed to Load CustomUI Documents and doesnt let me in

#

Did you ever get these issues resolved?

signal vale
#

Is there any plan to add a method to suppress world leave broadcasts in DrainPlayerFromWorldEvent?

Currently AddPlayerToWorldEvent has setBroadcastJoinMessage(false) which works great for suppressing join messages, but there's no equivalent for leave messages. So we can hide "PlayerName has joined explore" but not "PlayerName has left explore".

solar gorge
#

ooo heres the right chat. Im wanting to set up my laptop as a server using ubuntu live server is it possible?

stoic swan
#

Did you find a way to remove it?

solar gorge
#

well ive never done it before so im just making sure if i break it itsjust my fault

strange trout
#

get the correct java and you good to go 🙂

solar gorge
#

the correct java?

strange trout
#

yes or the server wont run

solar gorge
opaque cape
#

Whats a good documentation for me to feed to Claude so it can magically find the problems with my UI Code?

ocean kite
#

lf devs lmk

low nebula
#

How do I put attributes of a class in an NPC role json?

pseudo prawn
#

Maybe an easy question. Is there a way to remove an item recipe from a workbench, other read-only modded items and vanilla items, without having to override/duplicate every item, make a new workbench with a new ID, and assign items back to the workbench?

stoic swan
#

Is there a way to get Player right before disconnect?

unreal crest
#

Way to set max/full health is: (set max health)
⁨⁨```java
public static void setMaxHealth(final @NotNull Ref<EntityStore> entityStoreRef, final float maxHealth) {
final Store<EntityStore> entityStore = entityStoreRef.getStore();
final EntityStatMap statMap = entityStore.getComponent(entityStoreRef, EntityStatMap.getComponentType());
if (statMap == null) {
return;
}

    final int healthIndex = DefaultEntityStatTypes.getHealth();
    final EntityStatValue healthStat = statMap.get(healthIndex);
    if (healthStat == null) {
        return;
    }

    StaticModifier modifier = new StaticModifier(
            Modifier.ModifierTarget.MAX,
            StaticModifier.CalculationType.ADDITIVE,
            maxHealth - DEFAULT_MAX_HEALTH
    );

    statMap.putModifier(EntityStatMap.Predictable.ALL, healthIndex, MAX_HEALTH_COMPONENT_KEY, modifier);
    statMap.setStatValue(EntityStatMap.Predictable.ALL, healthIndex, maxHealth);
If you use NONE in EntityStatMap#Predictable#, you will see that when a player receives damage that would normally kill them, they will live but will not be able to receive damage, and the animation will break. If you use SELF, the player will visually have N amount of HP, but if they receive damage exceeding 100 HP, the same thing will happen as with NO
thorn python
#

Does anyone have any ideas?

ocean kite
#

looking for devs to help make a server,

dawn scaffold
#

Hey, is there easy way to listen to interactions with entitys? I want to open a custom UI on interaction with a klobs for instance

rustic pollen
#

hey our world crashes all the time... does anyone knows a fix for that? 🙁

opaque cape
#

Itd be really nice if the Logs gave more insight into UI file errors

fringe herald
#

Are there examples available on how to use or create a Component<ChunkStore>. There are plenty of examples for Component<EntityStore>, but not the other way around.
What I don't understand how can I store block data on a chunk component

dusky bobcat
#

Anyone know how to enforce damage onto a LivingEntity?

sharp lake
#

to simulate a damage event

#

No clue

severe scarab
#

hey everyone is it possible to make clickable web links on the UI page?Hypixel_ThisIsFine

civic elm
#

i think yes, i saw an plugin on yt with an clickable Link on the UI page

severe scarab
civic elm
#

let me look

stoic swan
elfin mango
#

Cool that you figured that out, can you explain me how you added entity to the block?

civic elm
severe scarab
dawn scaffold
civic elm
#

I'm trying to move a player to another world using ⁨targetworld.addPlayer(playerRef)⁩ but I keep getting an error message saying the player is already in a world. Does anyone know how to fix this?

bronze granite
#

[SYXS] Multi-Server Warp anyone use this?

#

I have a problem with this

severe scarab
bronze granite
stoic swan
# dawn scaffold yes

You can easily create your own interaction and use it from anywhere, asset editor...
⁨```java
@Override
protected void setup() {
this.getCodecRegistry(Interaction.CODEC).register("PortalEnter", PortalEnterInteraction.class, PortalEnterInteraction.CODEC);
}

public class PortalEnterInteraction extends SimpleInteraction {

public static final BuilderCodec<PortalEnterInteraction> CODEC =
        BuilderCodec.builder(
                PortalEnterInteraction.class,
                PortalEnterInteraction::new,
                SimpleInteraction.CODEC
        ).build();

@Override
protected void tick0(
        boolean firstRun,
        float time,
        @NonNullDecl InteractionType type,
        @NonNullDecl InteractionContext context,
        @NonNullDecl CooldownHandler cooldownHandler) {
    Ref<EntityStore> owningEntity = context.getOwningEntity();
    Store<EntityStore> store = owningEntity.getStore();
    Player player = store.getComponent(owningEntity, Player.getComponentType());
    assert player != null;
    onPortalEnter(player);
}

private void onPortalEnter(Player player) {
    player.sendMessage(Message.raw("Using custom interaction!"));
}

}

#

thats one that i made

merry harbor
#

how can I make so all my commands are public to use in the server, cus all my plugins commands can only be used by op's

bronze granite
fresh fox
#

hey guys im sorery but how do you resgister onComponentADD from OnDeathSystem im dumb :/

#

i no its not directly but what do i do

dawn scaffold
#

I send u a dm, should we write there maybe?

#

Thanks for ur help so far

civic elm
velvet fossil
#

hey question when messing with the default battle axe when I try to add an interaction var it says insert key?

civic elm
#

yr welcome

merry harbor
#

How can i add a delay? so that for example I do /example and it prints something and in 3 secs it prints another message

thorny dew
#

Schedule the work like anything else

tawdry crescent
glossy turret
#

When would I use a ⁨BlockState⁩ to store info on a block and when would I use the ⁨ChunkStore⁩?

vast briar
#

Any devs looking for work?

strange tapir
last harness
#

Can someone tell me if there's a plugin that renames items and changes their color?

royal mural
#

Hey, is there any limit size in assets plugin? I have a weird error, whenever I add few sprite sheets, the hud I’m developing becomes fully blsck, if I remove the images it works normally lol

glossy turret
narrow pelican
#

Yes, it broke with the release of Patch 2. There's nothing you can do to work around this issue on the client side. However, it seems to be working again with the latest pre-release version... So let's hope for the best that it will actually be fixed with the next regular release.

strange tapir
empty wyvern
#

is anyone know how to deal with error index out of bounds array when append child element into group in UI?

strange tapir
#

yeah it borked, the pre-release has a fix and we have added some additional testing to avoid breaking it in the future so hopefully won't break again in the future

fresh fox
#

Could someone please help with question above, or explain how to registered a custom class from DeathSystem

woeful grove
#

i cant send my code discord says you are promoting

elfin mango
woeful grove
#

i am trying to import things from com hypixel hytale server am i doing wrong?

last harness
#

Can someone tell me if there's a method that renames items and changes their color?

west elk
woeful grove
#

@west elk i cant send my import code here the bot is blocking my message could you look your dm it just a 5 lines import code

glossy turret
tawdry crescent
#

anywhere

woeful grove
west elk
spice oak
#

Any idea of setting zones as colored in worldmap?

glossy turret
elfin mango
fresh fox
#

@west elk correct, I dont get any info from it

tulip hamlet
#

Anyone else use shockbyte hosting? I’m trying to download a schematic but can’t find a file to put it into, I keep putting it different places but it never shows up when I go into creative mode

tawdry crescent
#

and there is a section component

west elk
fresh fox
#

no the server doesnt crash, it just stops my plugin to stop. i have another test plugin working, it kills the other plugin

west elk
random furnace
#

what would you need?

opaque cape
#

Managed to get the UI working after turning on Diagnostic Mode and actually reading the errors instead of just endlessly telling the AI "Nah sorry it doesnt work"

random furnace
#

I'm not sure how I can help, but I'd like to try

#

I'm good with art stuff, if you need anything like banners and stuff like that, I could give a hand...

fresh fox
#

@west elk it doesnt let me paste it but the warnings from when i remove the plugin request and without it are from my perception the same, anywhere else i can look besides intellij?

fleet plover
#

⁨```@Override
protected void execute(@Nonnull CommandContext commandContext, @Nonnull Store<EntityStore> store, @Nonnull Ref<EntityStore> ref, @Nonnull PlayerRef playerRef, @Nonnull World world) {
world.execute(() -> {
TransformComponent transform = store.getComponent(playerRef.getReference(), EntityModule.get().getTransformComponentType()).clone();
Pair<Ref<EntityStore>, INonPlayerCharacter> result = NPCPlugin.get().spawnNPC(store, "NPC_Elf", null, transform.getPosition(), new Vector3f(0,0,0));
if (result != null) {
Ref<EntityStore> npcRef = result.first();
INonPlayerCharacter npc = result.second();

            }
        })
        ;```⁩

⁩⁩When trying to summon a NPC, im not getting any spawn nor error, and the result is null, any idea why ?

west elk
royal mural
#

is it possible to change an sprite texturepath in runtime?

final forge
#

does somebody know how to handle PlayerMoveEvent?

fresh fox
#

@west elk sorry dani where should i look, i see errors in intelij, im noy use to this, can u suggest a file, i apologize 4 my ignorance and i appreciate the help

west elk
final forge
timid citrus
#

me and my friend cant play together because "hytale failed to connect to any available address. The host may be offline or behind a strict firewall"
what we have to do any tips ?

royal mural
#

I want to show a different animation depending on an item quality, whenever I update the texture path of the sprite I get an error that says is not possible to update it

#

I update via command builder

west elk
#

I mean it has to be in the pack (or a different pack) that's loaded. You can't change it to an image that's located somewhere outside on the file system

woeful grove
royal mural
#

Hmm yeah they are in pack, but somehow I’m having some issues? Did you experience any limitation with asset names? Like using @ and _

#

On the image file name

west elk
#

Yeah I noticed that vanilla uses @2x and stuff in the file names, but leaves that out when referencing it in the AssetPath

#

I don't know what those specifiers mean

west elk
royal mural
fresh fox
#

i found the error

final forge
fresh fox
#

[2026/01/31 23:07:59 SEVERE] [ExamplePlugin|P] Failed to setup plugin ExampleGroup:ExamplePlugin
java.lang.NullPointerException: Cannot invoke "com.hypixel.hytale.component.ComponentType.getRegistry()" because "componentTypes[0]" is null
at com.hypixel.hytale.component.Archetype.of(Archetype.java:288)
at com.example.exampleplugin.PlayerDeathEvent.<init>(PlayerDeathEvent.java:26)
at com.example.exampleplugin.ExamplePlugin.setup(ExamplePlugin.java:27)
at com.hypixel.hytale.server.core.plugin.PluginBase.setup0(PluginBase.java:389)
at com.hypixel.hytale.server.core.plugin.PluginManager.setup(PluginManager.java:763)
at com.hypixel.hytale.server.core.plugin.PluginManager.setup(PluginManager.java:242)
at com.hypixel.hytale.server.core.HytaleServer.boot(HytaleServer.java:385)
at com.hypixel.hytale.server.core.HytaleServer.<init>(HytaleServer.java:343)
at com.hypixel.hytale.LateMain.lateMain(LateMain.java:54)
at com.hypixel.hytale.Main.main(Main.java:43)

I think this is the bad part

woeful grove
# west elk Is that a real event?

hi dani my mvn folder has hytale server files but i am trying to import from my custom plugin i cant import my hytale server files in patcher-main folder

west elk
opaque cape
#

Is there an example of how I can use this?

opaque cape
#

I'm currently in the middle of upgrading my solution from JSON Files on a Disk to using sqlite-jdbc

west elk
west elk
fleet plover
#

What's the best way to make an entity invulnerable / unkillable ?

west elk
west elk
fresh fox
#

@west elk could it becvause the Query is flagging null?

#

ty for the help too !

west elk
digital zinc
#

.

fresh fox
#

ill continue digging and breaking, thank you @west elk im self taught and slow, so ty for the help!

left wind
#

Hey is there a registration needed to access the death system? Because I watching the Component added override with printing a console message but it's literally not working. I also put the query on the player only

shut delta
#

Anyone know if theres a way to get entity HP ?

west elk
lean ocean
#

Hello 🙂 Is there a specific event for when lava/water generate cobblestone, or alternatively how best would I access that?

heady narwhal
#

Anyone know how i'd go about altering a creature inside a capture crate, or where I can find the UseCaptureCrate interaction?

nova frigate
#

heyy anyone know how to change the player camera orientation?

ocean lake
#

did anyone made custom ui that have access to inventory/hotbar ?

stray pasture
burnt cradle
#

Heyy how should I go about interacting with MAP tab? for example displaying shaders or overlays? I tried doing some reaserch but got no luck

west elk
burnt cradle
#

yes, thank you

merry harbor
#

can i use CommandRegistry for commands that are part of another installed plugin?

royal mural
#

I see my plugin cannot load more than 50MB of images even if i dont use them? is it normal?

opaque cape
#

The only issue with sqlite-jdbc is it balloons my mod from like 30kb to 95mb

fleet plover
#

When creating a NPC with the frozen component, it doesn't move anymore, but it's stuck on a walking animation. Anyone got the same issue / knows a fix ?

dusky sable
fleet plover
#

Do you know the difference between the spawnNPC and spawnEntity methods@dusky sable ?

#

(also where do you find all roles indexes?)

outer cairn
#

how can I get the entities in a radius around a position in a world?

digital zinc
#

Hey guys, how do I access the UI imports, buttons, etc.? Does anyone know if they are available yet?

west elk
last harness
#

Can someone tell me if there's a method that renames items and changes their color?

dusky sable
fleet plover
#

I see

dusky sable
#

Role 15 makes it so they cant be damaged (I think?), and role 18 seems similar to 53

dusky sable
last harness
royal mural
dusky sable
last harness
#

ok thanks

ocean kite
#

Looking for devs to help build a network (commision opportunities are avalible)

stiff walrus
#

Did you get it working? I tried to configure it using ⁨HytaleServer.get().config.playerStorageProvider = CustomPlayerStorageProvider()⁩ but I get a CodecException on startup

opaque cape
#

Ok I've updated my Balance workflow to use SQLite and flush the cache every 5 minutes

short plover
#

Hi! Does anyone know how to mod in a language?

west elk
opaque cape
#

Actually we use Malbolge

short plover
#

Yeah, that's fine I know java, but I would essentially be writing a mod to patch in a language for the blocks already present in the game

#

I think we should use uiua actually

opaque cape
#

scheduledFuture = new ScheduledFuture[]{HytaleServer.SCHEDULED_EXECUTOR.scheduleWithFixedDelay(() -> { saveAllPlayerBalance(); scheduledFuture[0].cancel(false); }, 5L, 5L, TimeUnit.MINUTES)};

I've got this scheduler running, But it seems like it only runs once ever, Do I need to Reschedule it manually or is there a method to make it do that automatically

west elk
smoky mural
#

anybody has any ideas how to replace the default UI? (when you press TAB)

or at least how to cancel it permanently

even if I use a subpacket handler, for some reason it will still open the menu 🙁

nova frigate
#

heyy anyone know how to change the player camera orientation?

smoky mural
#

i thought so too since it will ALWAYS open it and it'll throw an exception if I just override the behavior for client open window. but is there a way to recreate that UI at least? i'm very interested in the thingy which shows your skin

#

WindowType.PocketCrafting

#

what is that menu called, I couldn't find it!!!! 😭

royal mural
stiff walrus
#

None of the PlayerStorage methods are called and none of my code is referenced in the stacktrace:
⁨⁨```
Caused by: java.lang.NullPointerException: Cannot invoke "Object.hashCode()" because "key" is null
at java.base/java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:948)
at com.hypixel.hytale.codec.lookup.ACodecMapCodec.encode(ACodecMapCodec.java:237)
at com.hypixel.hytale.codec.KeyedCodec.encode(KeyedCodec.java:181)
at com.hypixel.hytale.codec.KeyedCodec.put(KeyedCodec.java:144)

ocean kite
#

Looking for devs to help build a network (commision opportunities are avalible)

hushed totem
#

Any way to have a client read custom name for ItemStack's being sent in ContainerWindow? I dont want to require any client side assets for this.

stiff walrus
#

Unfortunately it still happens after restarting. It also only happens as long as I use the custom PlayerStorage 😢

royal mural
#

does anyone here have more than 50MB of images in their plugin?

smoky mural
#

@pale turtle btw do you think it's possible to have custom keys?

short plover
smoky mural
#

how? custom UI or what

dusky bobcat
#

If I want to catch an event when someone puts on an armor piece do I need to use the Ticking system? or is there a better way to catch those events

ocean kite
stiff walrus
#

It's not empty. I even deleted the universe and regenerated it but I still get that exception. I guess I'm doing something else wrong. Thanks for your help though!

#

Yeah it prevents the server from starting 😄

dusky sable
#

Does anyone know why when I add instructions to my NPC role, the NPC doesn't spawn?
json { "Type": "Generic", "MotionControllerList": [ { "Type": "Walk" } ], "Appearance": "Player", "MaxHealth": { "Compute": "MaxHealth" }, "Parameters": { "MaxHealth": { "Value": 100, "Description": "Max health for the NPC" } }, "Instructions": [ { "Continue": true, "Sensor": { "Type": "Any" }, "Actions": [ { "Type": "SetInteractable", "Interactable": true } ] }, { "Sensor": { "Type": "HasInteracted" }, "Actions": [ { "Type": "SendExampleMessage", "Message": "Example Message" } ] } ], "NameTranslationKey": "Citizen" }

solar gorge
#

hey guys whats the dockers im gonna need for a hytale server running on ubuntu servers via a laptop

north current
#

"Failed to load CustomUI Documents"

We all know this feeling? Lol.

dusky sable
civic zephyr
#

It doesn't spawn? Is there a console error?

dusky sable
north current
#

I have the same issue

civic zephyr
#

When this role is loaded into the assets does it error? If you tried to spawn a role that doesn't exist it displays a warning in the console like couldn't find role index -integerlimit

dusky sable
#

Its fine if I don't add any instructions

ornate raven
civic zephyr
#

That seems like the role is not loading

civic zephyr
north current
dusky sable
#

Oh wait, there is an error!

civic zephyr
dusky sable
#

I'm guessing I need to create an interaction json haha

civic zephyr
#

Interaction json?

#

Whats the error?

dusky sable
#

Maybe?
java [2026/02/01 01:05:46 SEVERE] [NPC|P] FAIL: /Server/NPC/Roles/Citizen_Role.json: SetInteractable not valid in instruction the default behaviour instruction at: Role|Generic|Instructions|???|Actions|-|SetInteractable [2026/02/01 01:05:46 SEVERE] [NPC|P] FAIL: /Server/NPC/Roles/Citizen_Role.json: HasInteracted not valid in instruction the default behaviour instruction at: Role|Generic|Instructions|???|Sensor|HasInteracted [2026/02/01 01:05:46 SEVERE] [NPC|P] FAIL: /Server/NPC/Roles/Citizen_Role.json: Builder SendExampleMessage does not exist

civic zephyr
#

Yeah thats not setup properly

#

You registered SendExampleMessage ? With its builder?

dusky sable
#

Nope. How is that done?

outer cairn
#

How can I get all entities in a world around a location in a radius?

civic zephyr
#

I'll send you an example shortly

#
BuilderActionBase

My mistake

dusky sable
civic zephyr
dusky sable
civic zephyr
#

Well where did you think SendExampleMessage would come from haha

dusky sable
#

Well, I'm aware of that, I was just trying to get the role setup first and then set up the interaction. I thought they would still spawn

civic zephyr
#

No the role has to have 100% validity when loaded

#

Its some kind of preprocessor

dusky sable
merry harbor
#

is there a way to get Player with the playerref?

civic zephyr
#

Or just a PlayerRef

merry harbor
#

the Store too

dusky sable
dusky sable
civic zephyr
dusky sable
civic zephyr
#

In the build override

ornate raven
#

anyone knows is there any item looks like key?

civic zephyr
civic zephyr
#

The builder

public class BuilderActionOpenGrave extends BuilderActionBase {
    @Nullable
    @Override
    public String getShortDescription() {
        return "Opens the grave UI";
    }

    @Nullable
    @Override
    public String getLongDescription() {
        return "Opens the grave UI on the corpse";
    }

    @Nullable
    @Override
    public Action build(BuilderSupport builderSupport) {
        return new OpenGraveActionBase(this);
    }

    @Nullable
    @Override
    public BuilderDescriptorState getBuilderDescriptorState() {
        return BuilderDescriptorState.Stable;
    }
}
dusky sable
civic zephyr
#
NPCPlugin.get().registerCoreComponentType("OpenGrave", BuilderActionOpenGrave::new);
dusky sable
#

I'll try that, thanks a lot!

civic zephyr
#

When you make your ActionBase you'll probably wonder how to get the player that interacted, its:

Ref<EntityStore> playerReference = role.getStateSupport().getInteractionIterationTarget();
civic zephyr
#

Your action that you wanted takes in an optional parameter that my builder did not need for the message

#

You can look at the

BuilderActionOpenShop

class ingame for passing data through the interaction definition

hushed totem
#

Anyone figure out how to have custom display name for items sent using page window?

outer cairn
dusky sable
civic zephyr
#

It returns a list of Refs

outer cairn
vocal kelp
#

hey does anyone know if they will let server plugins disable the auto step up/down client feature in the future? I can disable mantling from a server plugin but the auto step up/down is a bit more obfuscated

dusky sable
# civic zephyr Your action that you wanted takes in an optional parameter that my builder did n...

Two questions.

  1. Is it possible to pass in some data about the NPC that the player is interacting with?
  2. What should my actions be?
    ⁨⁨json "Instructions": [ { "Continue": true, "Sensor": { "Type": "Any" }, "Actions": [ { "Type": "SetInteractable", "Interactable": true } ] }, { "Sensor": { "Type": "HasInteracted" }, "Actions": [ { "Type": "CitizenInteraction", "Message": "Example Message" } ] } ],⁩⁩
opaque cape
#

Consider the following concept design

We have what we are calling an AuctionContract, Which will hold The Item being sold, The history bids, Who sold it, Who last bid, And a buyout price

Bid History is a Map of AuctionBid objects that contain details about that Bid

Would it be valid to just store AuctionContract as a Map of Contracts to display in the AuctionHouse ? How should I identify them, Should I just give them a Unique UUID for the AuctionContract or store it by Player UUID?

merry harbor
#

Holy I suck at doing plugins, can some1 help me with this code, im srsly stuck in how does a scheduler and player pos works:
⁨``` world.getScheduler().schedule(() -> {

        TransformComponent currentTransform = entityStore.getComponent(
                player.getReference(),
                EntityModule.get().getTransformComponentType()
        );

        if (currentTransform == null) return;

        Vector3d currentPos = currentTransform.getPosition();

        if (startPos.distance(currentPos) > 0.1) {
            error(playerRef, "Teleport cancelled, you moved!");
            return;
        }

        int radius = SPACING * 3;
        double angle = Math.toRadians((mineNumber - 1) * 36);

        int rawX = (int) Math.round(radius * Math.cos(angle));
        int rawZ = (int) Math.round(radius * Math.sin(angle));

        int x = Math.floorDiv(rawX, CHUNK_SIZE) * CHUNK_SIZE;
        int z = Math.floorDiv(rawZ, CHUNK_SIZE) * CHUNK_SIZE;

        Vector3f rotation = currentTransform.getRotation();

        Teleport teleport = Teleport.createForPlayer(
                world,
                new Vector3d(x + 0.5, Y_LEVEL, z + 0.5),
                rotation
        );

        entityStore.addComponent(
                player.getReference(),
                Teleport.getComponentType(),
                teleport
        );

        playerRef.sendMessage(
                Message.raw("Teleported to Mine " + mineNumber + "!")
                        .color(Color.GREEN)
        );

    }, 60); 
}
civic zephyr
#

The ref of the execute override is the ref of the entity that was interacted with not the interactor

dusky sable
civic zephyr
#

If the builder has no functionality to read the message key then it will just be ignored it shouldn't error

stoic swan
#

How can i get an entity with entityId?

merry harbor
#

oh i just fixed the position stuff i just dont know how to use the scheduler

west elk
dusky sable
# civic zephyr If the builder has no functionality to read the message key then it will just be...

Perfect. In the example you gave me, what do your descriptions do? Do they display text on the screen when looking at the NPC?
⁨⁨```java
public class BuilderActionInteract extends BuilderActionBase {
@Nullable
@Override
public String getShortDescription() {
return "Opens the grave UI";
}

@Nullable
@Override
public String getLongDescription() {
    return "Opens the grave UI on the corpse";
}

@Nullable
@Override
public Action build(BuilderSupport builderSupport) {
    return new OpenGraveActionBase(this);
}

@Nullable
@Override
public BuilderDescriptorState getBuilderDescriptorState() {
    return BuilderDescriptorState.Stable;
}

}

civic zephyr
civic zephyr
dusky sable
#

Ahh okay

civic zephyr
#

All the builders have descriptions and such

#

The interaction text is a different field that I forgot

opaque cape
# civic zephyr Theres a ```java HytaleServer.SCHEDULED_EXECUTOR ```

import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; import com.hypixel.hytale.server.core.HytaleServer; // Schedule saving auctions every 5 minutes scheduledFuture = new ScheduledFuture[]{HytaleServer.SCHEDULED_EXECUTOR.scheduleWithFixedDelay(() -> { saveAllAuctions(); }, 5L, 5L, TimeUnit.MINUTES)};

dusky sable
civic zephyr
civic zephyr
# dusky sable Would there be a default text or do I need to set it up? Also, could you send me...
public class OpenGraveActionBase extends ActionBase {
    public OpenGraveActionBase(@Nonnull BuilderActionBase builderActionBase) {
        super(builderActionBase);
    }

    public boolean canExecute(@Nonnull Ref<EntityStore> ref, @Nonnull Role role, InfoProvider sensorInfo, double dt, @Nonnull Store<EntityStore> store) {
        return (super.canExecute(ref, role, sensorInfo, dt, store) && role.getStateSupport().getInteractionIterationTarget() != null);
    }


    public boolean execute(@Nonnull Ref<EntityStore> ref, @Nonnull Role role, InfoProvider sensorInfo, double dt, @Nonnull Store<EntityStore> store) {
        super.execute(ref, role, sensorInfo, dt, store);

        Ref<EntityStore> playerReference = role.getStateSupport().getInteractionIterationTarget();
        if (playerReference == null) return false;

        PlayerRef playerRefComponent = (PlayerRef)store.getComponent(playerReference, PlayerRef.getComponentType());
        if (playerRefComponent == null) return false;

        Player playerComponent = (Player)store.getComponent(playerReference, Player.getComponentType());
        if (playerComponent == null) return false;

        var npcEntityGot = ref.getStore().getComponent(ref, NPCEntity.getComponentType());

        var gotInv = npcEntityGot.getInventory();

        var containerWindow = new ContainerWindow(gotInv.getStorage());
        containerWindow.registerCloseEvent((w -> {
            if (gotInv.getStorage().isEmpty()){
                npcEntityGot.remove();
            }
        }));

        playerComponent.getPageManager().setPageWithWindows(ref, store, Page.Bench, true, containerWindow);
        return true;
    }
}
nova frigate
#

heyy anyone know how to change the player camera orientation?

coral wraith
#

Hello !
Saw Kaupenjoe's introduction video to server plugin where he said Hytale plugin creation would be more difficult in Java (I exclude the visual coding here) than creating a mod in another game
I'm of an intermediate level in programming and never tackled java before but I'm planning to intensively learn it to create complex mods !

Should I train myself doing mods for the other game before trying to code plugins for Hytale ? Or do you think it's a waste of time as Hytale may be too different ?
(i'm in love with Hytale and not so much with the other game also)

opaque cape
west elk
coral wraith
opaque cape
#

For context, I developed Shubshub Server Jump, Which is a mod that lets you jump to another server and take your inventory with you

And now I am developing Shubshub Economy

west elk
#

Kaupenjoe is a great source of tutorials and early help, as well as TroubleDEV on youtube

opaque cape
#

And to answer your next question, Yes I do intend to use the name Shubshub in all my mods as much as possible

rose atlas
#

i just launched a survival server and its crazy

coral wraith
mellow path
#

anybody know how to check where a player put a marker in the map?

dusky sable
#

@civic zephyr sorry
Do I need to setup the "SetInteractable" and "HasInteracted" sensors or can they be removed?
json "Instructions": [ { "Continue": true, "Sensor": { "Type": "Any" }, "Actions": [ { "Type": "SetInteractable", "Interactable": true } ] }, { "Sensor": { "Type": "HasInteracted" }, "Actions": [ { "Type": "CitizenInteraction" } ] } ],

coral wraith
civic zephyr
#

It might just be a property on the entity

opaque cape
royal mural
#

having a plugin of more than 50MB basically breaks all the uis

dusky sable
opaque cape
#

Question

is it recommended to initialize my managers in my main class and have getters for them there that other classes can access?

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

private static ShubshubEconomy instance;

private final EconomyManager economyManager;
private final AuctionManager auctionManager;
private final ConfigManager configManager;

public ShubshubEconomy(JavaPluginInit init) {
    super(init);
    instance = this;

    configManager = new ConfigManager();
    economyManager = new EconomyManager();
    auctionManager = new AuctionManager();
    
    LOGGER.atInfo().log("ShubshubEconomy plugin initialized.");
}```⁩
#

⁨```public EconomyManager getEconomyManager() {
return instance.economyManager;
}

public ConfigManager getConfigManager() {
    return instance.configManager;
}

public AuctionManager getAuctionManager() {
    return instance.auctionManager;
}```⁩
#

That way I have a Global Manager object for each of them I can pass around

#

EG:

In my EconomyManager we do the following to grab configManager

this.configManager = shubshubEconomy.getConfigManager(); this.config = configManager.getConfig();

west elk
# stoic swan and how ?
var ref = world.getEntityRef(uuid);
var store = world.getEntityStore().getStore();
var component = store.getComponent(ref, componentType);
dusky sable
coral wraith
#

Thank you for your answers! It is time for me to binge watch TroubleDEV's videos :3

opaque cape
#

His video on the Command Structure is pretty good

dusky sable
opaque cape
opaque cape
#

Is there a command type that would let me execute it against the Item I am currently holding in my Inventory Hand?

merry harbor
#

Now my problem is that it doesn't detect when the player moves

civic zephyr
opaque cape
dusky sable
# civic zephyr You're putting the instructions in InteractionInstruction ?

Uh. Just like this lol:
json "Instructions": [ { "Continue": true, "Sensor": { "Type": "Any" }, "Actions": [ { "Type": "SetInteractable", "Interactable": true } ] }, { "Sensor": { "Type": "HasInteracted" }, "Actions": [ { "Type": "CitizenInteraction" } ] } ], "NameTranslationKey": "Citizen" }

#

I just found that instructions code in this channel, so I thought I should try it. I have no idea if its correct

civic zephyr
#

Well, its right, but only if you put that block in "InteractionInstruction"

opaque cape
#

Ok I think I'll do it this way

How can I grab the Item from my Hotbar that I have currently selected?

civic zephyr
#

Its not a regular instructionset

dusky sable
#

Does this look correct?
I'm not getting any errors, but the interactions aren't working and it doesn't have the "Click F to interact" text.
json { "Type": "Generic", "MotionControllerList": [ { "Type": "Walk" } ], "Appearance": "Player", "MaxHealth": { "Compute": "MaxHealth" }, "Parameters": { "MaxHealth": { "Value": 100, "Description": "Max health for the NPC" } }, "InteractionInstruction": { "Instructions": [ { "Continue": true, "Sensor": { "Type": "Any" }, "Actions": [ { "Type": "SetInteractable", "Interactable": true } ] }, { "Sensor": { "Type": "HasInteracted" }, "Actions": [ { "Type": "CitizenInteraction" } ] } ] }, "NameTranslationKey": "Citizen" }

ornate rover
#

Hi, I'd like to understand how to retrieve the runtime list of ids of all the Mod and vanilla entities loaded in the game world. I'd like to make a mapping to assign each entity a different weight for a mod I'm trying to create. Can you help me or give me some documentation on this?

dusky sable
#

nope

civic zephyr
#

You positive? Ive just pasted that role and its working for me perfectly fine

civic zephyr
#

I just replaced the type with OpenBarterShop, are you sure you registered your type properly?

dusky sable
#

If I didn't I would be getting errors 🤔

civic zephyr
#

Yes, maybe you are, are you checking?

#

Are you sure your action is working properly? Try logging

dusky sable
#

Yes, no errors.
⁨⁨```java
NPCPlugin.get().registerCoreComponentType("CitizenInteraction", BuilderActionInteract::new);

⁨⁨```java
public class BuilderActionInteract extends BuilderActionBase {
    @Nullable
    @Override
    public String getShortDescription() {
        return "Interact";
    }

    @Nullable
    @Override
    public String getLongDescription() {
        return "Interact";
    }

    @Nullable
    @Override
    public Action build(BuilderSupport builderSupport) {
        return new CitizenInteractionActionbase(this);
    }

    @Nullable
    @Override
    public BuilderDescriptorState getBuilderDescriptorState() {
        return BuilderDescriptorState.Stable;
    }
}
```⁩⁩
civic zephyr
dusky sable
#

⁨```java

public class CitizenInteractionActionbase extends ActionBase {
public CitizenInteractionActionbase(@Nonnull BuilderActionBase builderActionBase) {
super(builderActionBase);
}

public boolean canExecute(@Nonnull Ref<EntityStore> ref, @Nonnull Role role, InfoProvider sensorInfo, double dt, @Nonnull Store<EntityStore> store) {
    return (super.canExecute(ref, role, sensorInfo, dt, store) && role.getStateSupport().getInteractionIterationTarget() != null);
}


public boolean execute(@Nonnull Ref<EntityStore> ref, @Nonnull Role role, InfoProvider sensorInfo, double dt, @Nonnull Store<EntityStore> store) {
    super.execute(ref, role, sensorInfo, dt, store);

    Ref<EntityStore> playerReference = role.getStateSupport().getInteractionIterationTarget();
    if (playerReference == null) {
        return false;
    }

    PlayerRef playerRefComponent = store.getComponent(playerReference, PlayerRef.getComponentType());
    if (playerRefComponent == null) {
        return false;
    }

    playerRefComponent.sendMessage(Message.raw("Interacted"));
    return true;
}

}```⁩

gritty current
#

For those who find it useful in #1467337635864510680 , please publish a plugin fork to help with .ui files.

royal mural
#

guys, does someone has more than 50MB in installed plugins in their server?

dusky sable
opaque cape
opaque cape
dusky sable
compact spoke
#

have someone found a way to fix the ratelimit of 50mb in mods folder for server?

royal mural
dusky sable
civic zephyr
civic zephyr
#

You don't see the interaction text on the NPC?

dusky sable
#

Nope

civic zephyr
#

Are you SURE you aren't in creative when you're trying to interact with the NPC

dusky sable
#

yes lol

civic zephyr
#

How are you spawning the NPC? Can you try spawning your role through the ingame entity spawn menu and seeing if that works for you

dusky sable
#

I just spawned an NPC through the entity spawn menu, and same issue. Although I just noticed if I left click the NPC, I get disconnected...

opaque cape
civic zephyr
opaque cape
#

Thanks

dusky sable
civic zephyr
#

What plugins have you got on? Just the one you're developing?

dusky sable
#

It's multiple but nothing that should be interfering

#

Okay the crash was one of my plugins, but still no interactions

civic zephyr
#

Can you go to the memory temple and interact with the shop keeps in the other dimension

dusky sable
#

Nope, it doesn't let me go through the portal

#

I think this empty server is bugged though since I have other issues with the world

civic zephyr
#

You have a problem with your server that is unrelated to the plugin you're facing

dusky sable
#

This is a different server though

#

My main one isnt bugged like this one

civic zephyr
#

Whatever is happening is some other result of the plugin you're making, something else you're probably doing in the plugin where you register the NPC action

opaque cape
#

Oh you can just.... Pass a CODEC to another KeyedCodec... Thats so neat

.append(new KeyedCodec<>("Item", ItemStack.CODEC), (contract, value) -> { contract.item = value; }, contract -> contract.item) .add()

#

Here I thought I was restricted to what was on the CODEC Object xD

civic zephyr
dusky sable
#

It's happening on an empty server though without any other plugins 😬

civic zephyr
#

Welp

dusky sable
#

I've already taken up a lot of your time, but do you have time to download the source code on github to try yourself?

civic zephyr
#

Can you send a built jar to my inbox

#

And the source code I'll look at it

south current
#

Opa

outer cairn
#

What do I have to worry about when teleporting a player to another world? Is there anything to worry about or can I just do it like this like I would for teleportation in the same world: entityStore.addComponent(
entityRef,
Teleport.getComponentType(),
Teleport.createForPlayer(world, transform)
);

#

Not sure if there is anything with the component system that would maybe not make this optimal

tawdry crescent
#

do you know a mod with block contening component and system interacting with this component block ?

I really need to see an exemple with block component

west elk
deft shard
#

anyone else using hytalemetrics plugin? I can't seem to get the plugin to populate to my account at the hytalemetrics website

west elk
nocturne star
#

Hey guys, does anyone know if its possible to block all combat with all entities? I figured how to disable damage but entities are still recieving knockback, sound effects and effects.

arctic mist
noble horizon
stoic swan
opaque cape
#

Shubshub Economy now supports starting an Auction 😄

noble horizon
opaque cape
#

The CODEC system is so cool

#

It might be my favourite part about the Modding API so far

#

Its just so easy to serialize and deserialize anything at all

deft shard
west elk
opaque cape
#

My Economy Mod will let you have 50 quintillion dollars if you so choose

opaque cape
#

Would it be recommended to store my Command.java files in their own folder seperate of the main class and then import them?

solid trail
#

Does anyone know how to add pvp kills reward the player with coins with TheEcononmy

opaque cape
#

I dont know but thats something I'm planning to allow supporting in my own mod 😄

solar gorge
#

hey guys i got the server running but id love to OP myself to do creative mode ive put in my UUID into the .json file in /data/ but it aint giving me anything

solid trail
#

@opaque cape how long til it releases

opaque cape
#

But im planning to support AuctionHouse, Player to Player Trading, Rewards for Activities, And more

west elk
opaque cape
#

Currently ive got the start of the Auction House done

lethal mauve
#

is there a wya to remove offhand items with an interaction

solar gorge
#

how do I do a console command. I got the server running in the terminal

west elk
solar gorge
#

perfect ill work on that thanks

sly igloo
#

is anyone willing to work with me on a minigames server.

solar gorge
west elk
#

it depends on how the image was built and how the container was started

#

can work though

solar gorge
#

the image was on the ubuntu website and im just running docker idk im new to this lmao with slight previous knowledge? cyber security was a hobby i had not really a passion so im familiar but no where near fluent

west elk
#

what's the command you used to start the container?

solar gorge
#

sudo docker attach hytale

west elk
#

i mean to start it in the first place

solar gorge
#

just docker start hytale && docker logs -f hytale

west elk
#

no docker create or docker run?

solar gorge
#

well docker run for the start yes

west elk
#

that's what I'm looking for

north current
#

How do I view the errors/warnings that show in the top right after turning on debug mode

solar gorge
#

docker run hytale

west elk
#

at most it would have to be something like user/hytale

solar gorge
#

what does that mean

sly igloo
#

is there a hytale moddng server or a hub where ppl do stuff i need some modders to help me out on a project

west elk
solar gorge
#

ah welp time to turn it off then on again lol

west elk
#

good luck but we can't help you without information about your setup. If you're not comfortable with containers, I would recommend running it directly via java

west elk
#

Yeah nobody likes someone who's only there to beg for free labor

#

You have to get people excited about your project and build a welcoming community by showing off your progress and building connections

solar gorge
west elk
opaque cape
#

Does SQLite natively support LONGs as a column type?

last harness
#

Hey guys, does anyone know if it's possible to spawn an invisible entity with a name?

opaque cape
#

I need to be able to store Unix time but unsure if an INTEGER type will be enough

arctic mist
solar gorge
copper orbit
#

hi im new hear

arctic mist
copper orbit
#

im looking for any server to join

marble totem
#

Can anyone explain how to get the game to start with EarlyPlugins like Hyxin? As in, where does one apply launch flags? Asking here because it's a flame war in the Game-Discussion thread.

solar gorge
opaque cape
# arctic mist You should only need Integer for Unix Time, if you need something bigger, try bl...

⁨```public Map<UUID, AuctionContract> loadAllExpiredAuctions() {

    Map<UUID, AuctionContract> expiredAuctions = new ConcurrentHashMap<>();

    try {
        String query = "SELECT auction_uuid, contract_data, auction_end_time FROM auctions WHERE auction_end_time <= " + System.currentTimeMillis();

        ResultSet rs = auctionSqlManager.executeQuery(query);

        while (rs.next()) {
            String auctionUuidStr = rs.getString("auction_uuid");
            String contractDataJson = rs.getString("contract_data");
            
            UUID auctionUuid = UUID.fromString(auctionUuidStr);
            
            // Deserialize JSON to BSON to AuctionContract
            BsonDocument bsonDoc = BsonDocument.parse(contractDataJson);
            ExtraInfo extraInfo = new ExtraInfo();
            AuctionContract contract = AuctionContract.CODEC.decode(bsonDoc, extraInfo);
            
            expiredAuctions.put(auctionUuid, contract);
        }
    } catch (Exception e) {
        LOGGER.atSevere().log("Failed to load expired auctions: " + e.getMessage(), e);
        return new ConcurrentHashMap<>();
    }
    
    return expiredAuctions;
}

Created my loadExpiredAuctions method 😄
last harness
#

Hey guys, does anyone know if it's possible to spawn an invisible entity with a name?

west elk
arctic mist
opaque cape
west elk
opaque cape
#

Shouldnt be too bad because expiredAuctions only needs to be accessed internally to Process Winnings and whatnot

west elk
# last harness I didn't understand

The plugin EasySigns spawns floating text in the world by summoning invisible entities with a nametag. That sounds like what you were asking about. You can see how they do it by looking at the code on GitHub

last harness
#

Okay, I understand. Thank you very much.

stark tulip
arctic mist
opaque cape
#

Ok it sounds like I dont have to refactor my existing methods to be CompleteableFuture but I can call them from a CompleteableFuture

arctic mist
west elk
arctic mist
remote shadow
#

anyone have a clue how to make mobs fight for you when summoned? i can make different mobs spawn from the grimoire just not fight for me

west elk
arctic mist
stray pasture
#

Haha, I still havent figured how to actually access hytale console within a docker container. To be fair I also havent tried

arctic mist
north current
#

Where do I turn off item drops/ durability % lost on death?

west elk
unkempt lotus
#

Hi guys.... I'm working in a VIP plugin, and I'm need it to send same commands throght consele, like l/lp user <player> parent add <vip_name> how can I do that, wicht function should I use?

last harness
#

Hey guys, does anyone know if it's possible to spawn an invisible entity with a name?

west elk
unkempt lotus
west elk
solar gorge
#

ok i do need to ask a noob question about dockers. I am in cahcyOS and i find myself not being able to get out of dockers like ctrl + c or crtl = P doesnt get me out and im looking at like ^C or something in the terminal line

west elk
# last harness I didn't find it...

check main/java/com/easysigns/sign/SignDisplayEntity.java and /src/main/java/com/easysigns/sign/SignDisplayManager.java#268
It creates a new entity without a model and then modifies the "Nameplate" component to set the text.

hushed totem
#

Any way to have custom item names in ContainerWindow using page manager without having to register fake items?

solar gorge
#

crtl c three times forced closure

upper wyvern
#

CTRL + A, CTRL + D was a fun one in Linux, I don't know if it has similar behavior, or whatever keybind I'm trying to remember

unkempt lotus
west elk
last harness
upper wyvern
unkempt lotus
north current
#

anyone want to do a quick trial run on my server and give me some feedback

#

? ❤️

west elk
fervent lava
#

We're plannning a "Phase 1" release late Feb '26 that will have a fresh start for the basics such as Classes, clans, claims, economy, "warring factions", pvp objectives, dungeonns and supporter perks and some more goodies. We hope to get your feedback about a lot of things so we can do better to you guys. Our primary focus will ensuring the gameplay feels good and we need you guys to tell us!

We're looking to get more staff members going.
Devs
Designers
Hypemen
Builders/Modelers
Moderation/Guides

Please let me know if you're interested!

woven siren
#

Does anyone know what event I can listen to in order to know when a player is eliminated from the world?

unkempt lotus
west elk
west elk
woven siren
unkempt lotus
west elk
west elk
blissful wigeon
#

hi did they fix InteractivelyPickupItemEvent yet

woven siren
blissful wigeon
unkempt lotus
west elk
west elk
blissful wigeon
#

no, it does get dispatched, i know that for certain, it doesn't get cancelled when you set it to cancelled, that's the problem

west elk
#

oh yeah found it

#
InteractivelyPickupItemEvent event = new InteractivelyPickupItemEvent(itemStack);
componentAccessor.invoke(ref, event);
if (event.isCancelled()) {
 dropItem(ref, itemStack, componentAccessor);
}
```![Hypixel_Think](https://cdn.discordapp.com/emojis/1437483239580106762.webp?size=128 "Hypixel_Think")
#

so you can cancel picking it up, but not breaking the block

#

for that you probably need to go earlier in the chain

jolly wadi
#

The server manual says that HytaleServer.jar would be published at https://maven.hytale.com/release , but that site does not exist. Is that information outdated, or is that intended for a future time, or is the site just down right now?

west elk
#

you can download it from there if you plug in the artifact group, name, and version

jolly wadi
#

So there's no web interface fo rit, but it can be accessed by maven?

#

Because I'm just looking for a reliable way to fetch specific versions.

west elk
#

just have to plug in the latest version

jolly wadi
#

OK. Awesome. That's much more convenient than using the downloader script.

west elk
jolly wadi
#

The reason I'm interested is because I want to make a port for FreeBSD and an ebuild for Gentoo to automate the installation of the server for users.

opaque cape
#

Shouldnt it just run already if you install Java on FreeBSD?

jolly wadi
#

No. The srver is missing some stuff necessary to run on FreBSD. But I submitted some code this afternoon to the devs so hopefully they will fix that.

opaque cape
#

Oki

last harness
#

guys Is there a method to set the direction of a block via code?

olive saffron
#

whatever happens to Hytale, they should never sell out

jolly wadi
#

If you try to run it on FreeBSD as it is, it will complain abouta missing library. Even if you compile that library and ad it to the classpath, it won't be able to create an encryption key meaning it won't save your credentials, and you have to reauthorize every time you start the server -- big hassle.

quartz plover
quartz plover
#

???

opaque cape
olive saffron
#

and maybe an early reminder in 10 years

opaque cape
#

Not actually running out of copies to sell

quartz plover
#

I know, I'm just playing around

opaque cape
#

Oh ok, Text doesnt convey that well xD

quartz plover
#

Reading back, yeah, it doesn't really match the playful intention I had
Oh well

olive saffron
#

in all serious, hope this game never sells out in anyway, I'd much rather let this game die than be bought out by a corpo just like last time but they're adding things against the wishes of the playerbase

last harness
#

guys Is there a method to set the direction of a block via code?

jolly wadi
#

How many arguments I've had with my wife because a text message didn't convey the intended voice inflection...

quartz plover
random briar
west elk
#

No sorry, don't have time

sharp pumice
#

anyone know why this is throwing me an error?

            for (PlayerRef ref : world.getPlayerRefs()) {

                Store store = ref.getReference().getStore();

                PlayerRef playerRef = (PlayerRef) store.getComponent(ref.getReference(), PlayerRef.getComponentType());

                MovementManager movementManager = (MovementManager) store.getComponent(ref.getReference(), MovementManager.getComponentType());
                movementManager.getSettings().baseSpeed = 1;
                movementManager.getSettings().jumpForce = 1;
                movementManager.update(playerRef.getPacketHandler());
            }```
#

errors is on MovementManager movementManager = (MovementManager) store.getComponent(ref.getReference(), MovementManager.getComponentType());

random briar
# west elk No sorry, don't have time

just not sure why my friend could open chests and use stuff like he was the owner of the chunk claim, the events are so weird, i think it collects every entity inside the chunk and saw me in there and said yes my friend has access to it because i was inside the chunk

#

sadly he does drugs so he has no time

opaque cape
#

⁨```String query = "SELECT auction_uuid, contract_data, auction_end_time FROM auctions WHERE auction_end_time <= " + System.currentTimeMillis();

        ResultSet rs = auctionSqlManager.executeQuery(query);```⁩

Is this valid SQL?

#

Notably the <=

west elk
#

yes

opaque cape
#

Thanks 😄

strong musk
# opaque cape Notably the <=

⁨⁨SELECT auction_uuid, contract_data, auction_end_time FROM auctions WHERE auction_end_time <= 1000;⁩⁩
is valid sql

opaque cape
strong musk
#

I know

opaque cape
#

This is for finding Expired Auctions so I can process them 😄

strong musk
#

but anyways, as I was saying, you should probably end the line with a semicolon

opaque cape
#

There is a semi colon?

west elk
#

not in the query

opaque cape
#

Or do you mean like on the actual query string?

#

Why is that important here?

strong musk
#

I mean the actual query

opaque cape
#

<--- Never really written much SQL

west elk
#

and you should get used to using prepared statements, even though it's not important in this specific case

rare sundial
#

Looking for someone to make a very simple plugin for me that restricts NPC Interaction to a specific Class a user picked before out of a json savefile :>

opaque cape
rare sundial
#

Managing a server all alone is hard :>

random briar
#

what is the diffrence from these two, archetypeChunk and commandBuffer

#

just wonder why my friend could use stuff inside my claim
does this collect entire players inside the chunk if i use this
var playerRef = store.getComponent(archetypeChunk.getReferenceTo(index), PlayerRef.getComponentType());

opaque cape
#

Is this a custom claims mod you've made?

random briar
#

yeah, not difficult to make if you have the chunk long

#

just wonder why its not working right

opaque cape
#

Probably would need to see more of the code, But I also dont have much understanding of archetypeChunk to begin with

random briar
#

i have a feeling my worldguard is bugged to, if i am a builder then it would read it as others has builder to just because i have it

balmy vault
#

how to make a server

dawn torrent
#

It’s 3am and I’ve been trying to get my cables to work how I want it to 🙁 I think having 4096 models is a bit too much lol. Maybe I can reduce that by rotating and stuff for different amounts of connections and connection types… but it’d be nice if I can just visually turn on/off certain nodes in the model via like BlockState or something

random briar
#

should i use commandBuffer or store to get the player who did the event?

#

whish we could get the player by event.getPlayer()

pallid spoke
west elk
# random briar what is the diffrence from these two, archetypeChunk and commandBuffer

Archetypes are a performance optimization for Hytale's ECS system. Entities that have the same components (e.g. all bears) are all stored together which makes it faster to iterate over them each game tick to apply bear-related updates.
Check TroubleDEV's YouTube video on the Entity Component System (Part 1) at timestamp 24:28-25:48
ArchetypeChunk would be a grouping of all chunk/block entities, I believe.

CommandBuffer is a buffer of commands that get queued executed on the store after the game tick. If you read data from the store, it's fine to do it directly, but if you want to modify the store, you should do it via the commandBuffer so it all gets executed nice and orderly. Otherwise you can run into race conditions like Hytsu said.

random briar
west elk
#

I don't know what you mean, lol

random briar
# west elk I don't know what you mean, lol

no worries but this is fine right?

@Override
    public void handle(int index,
                       @NonNullDecl ArchetypeChunk<EntityStore> archetypeChunk,
                       @NonNullDecl Store<EntityStore> store,
                       @NonNullDecl CommandBuffer<EntityStore> commandBuffer,
                       @NonNullDecl PlaceBlockEvent event) {
        var ref = archetypeChunk.getReferenceTo(index);
        var playerRef = commandBuffer.getComponent(ref, PlayerRef.getComponentType());
        if (playerRef == null)return;
        var uuid = playerRef.getUuid();
        var world = store.getExternalData().getWorld();
        var vector3i = event.getTargetBlock();
        var chunkLong = getChunkHandler().getChunk(vector3i.x, vector3i.z);
        if (!getChunkHandler().isClaimed(world, chunkLong))return;
        if (getChunkHandler().hasAccess(uuid, world, chunkLong))return;
        event.setCancelled(true);
        playerRef.sendMessage(Message.join(
                Message.raw("Chunk is owned by ").color(Color.RED),
                Message.raw(getChunkHandler().getOwnerUsername(world, chunkLong))
        ));
    }
pallid spoke
#

rest seems fine, but also i'm prety new to java

random briar
#

i hope they add event.getplayer this is crazy

pallid spoke
# random briar i hope they add event.getplayer this is crazy

theres a couple of things i'm trying to figure out myself, I made a mod to persist arrows when on miss but had a Issue Projectiles weren’t persistent because the game doesn’t auto-claim them. When they miss, they just despawn. I had to explicitly catch the projectile and turn it into a real item, otherwise it’s gone.

random briar
left jacinth
#

Running a pretty high population server - is there any way to make the server just...faster, generally? Things like block breaking lag, combat lag, etc. I've tried to throw every server spec I can at it, but it feels like a software issue. We do patch some bugs in house too, but it doesn't feel like its enough.

Anyone have recs for improving performance?

pseudo prawn
#

What’s the easiest way to go about disabling a read-only recipe?

tranquil dagger
left jacinth
#

I've run dedicated servers, everything from 9950X3D with 64gb ram to our k8s box with like 192 vcpu (decent clock) and 800gb ram

random briar
left jacinth
#

Yeah I unfortunately think it's just Hytale right now, but you know players. Telling us to throw better servers at it, need more RAM, etc. Not really sure what we can improve. We've patched some things like fluid dynamics and other things but, not much luck really impacting the random performance spouts that happen w/ no traces

pseudo prawn
#

The single world is still only running off a single thread correct?

#

Would it be better design to create the server in a way that has multiple worlds and utilize multiple threads of your CPU to offset the load?

#

Lemme know if my understanding is incorrect

left jacinth
#

Server performance is based off of single core clock speed, so it's actually best to run less in parallel to ensure you get boost clock speeds (i.e more perf) That's my understanding

west elk
#

yes, each world has it's own main thread, so if you can split your players up into as many worlds as you have threads, that would be ideal. of course players want to play together, so that's where single-core performance comes in

west elk
opaque cape
#

I have a ton of explicit calls to NotificationUtil.sendNotification in my code, Even just in the same function as each other, One has literally 10 calls to it

Should I just make a NotificationsManager?

#

Or does it not really matter

naive imp
#

If any server or user wants a mod or custom plugin, let me know and I’ll open commissions. You can include art, animations, and functionality.

west elk
fervent lava
#

why ping

west elk
#

you were asking for devs earlier

fervent lava
#

stop pinging

west elk
#

aye aye boss

opaque cape
#

Asks for Devs
Someone says they're open for Comissions
Gets pinged to notify
omg stop pinging me

what

warped folio
#

Hey, is anybody else getting exception from netty pipeline in ChannelInitializer? It says PEER_DID_NOT_RETURN_A_CERTIFICATE

proven osprey
#

How can i get the event of a player died?

warped folio
blazing fiber
#

Hi Idk where’s the server with friend thing so do anyone want to play like chill vanilla

minor frost
#

Im down

gusty epoch
#

I’m trying to reverse-engineer the UI system and I suspect it isn't fully dynamic within the Asset Manager. When a .ui file is selected, the available modes seem to be hardcoded to a system Enum or anyother .json for example Teleporter.ui only showing "Full" and "Warp". When I manually add a third mode to the code, it doesn't appear in the editor and triggers a chat error in-game. Is this logic hardcoded into the game's core or is there a way to extend these enums or .json?

west elk
#

Many ui functionalities, especially interactivity, requires Java code, yes

charred yacht
#

hey, where do i place the mods that arent .jar files? like the violets-music-players

stone tartan
#

Anyone want to join my Modded dedicated server? Online 24/7, not too many mods, exploring/building and no mic required. 😄

charred yacht
#

oki

solar apex
#

Me out here waiting for hytale to allow color for nameplate Hypixel_Crying

charred yacht
#

do i need to unzip them?

west elk
paper hamlet
#

U can't msg him

west elk
#

wow

#

and the website in his bio is an apache default page

paper hamlet
west elk
#

might have been troll, lol

paper hamlet
#

Or a scammer. Hypixel_ThisIsFine

#

But scammers do not have DMs blocked. Hmm.

#

I was bout to ask for his portfolio

west elk
#

oh i was talking about the wrong guy

paper hamlet
#

Haha

west elk
#

@naive imp you might wanna open DMs

paper hamlet
#

Guess I will have to learn Java myself.

copper anchor
solar apex
#

what i miss?

west elk
copper anchor
#

I hate the UI system in this game so much lmao... I have almost completed the webpanel for my mod but the UI pains me

thin rover
#

can anyone test my levelling system out on my server? alone its hard to test. I would pay you if you get any skill to level 100 and let me know how it went! nimbus.dathost.net:15512

copper anchor
thin rover
#

ha

opaque cape
#

Does SQL support a BOOLEAN type?

storm heron
#

im all for helping people but dude... just google it?

west elk
opaque cape
#

Hmmm ok

fringe herald
#

Are there already some kind of liquid storage in the game? I want to introduce a new liquid for my mod and objects that can store them (imagine some kind of water tank)

opaque cape
#

Consider the following concept

  1. You win an auction
    Would you expect the Transfer of Items from Seller to Bidder to be on the AuctionManager or the EconomyManager ?
#

EconomyManager handles stuff like Transfer of Balance
AuctionManager is processing the expired auction

#

But there's also a plan to have a Trading System in the future, So should I get ahead of that and make a TradeManager to do this instead?

west elk
#

I would expect an EconomyManager to only handle money, not items

opaque cape
#

Makes sense

west elk
#

Put it on the AuctionManager and when/if you implement TradeManager in the future, consider if you want to refactor it at that point

#

avoid preemtive optimization

opaque cape
#

Fair enough

frigid zinc
#

how does one get player input like the player is using their shield?

rotund willow
#

Can someone provide a reference as to how I can setup a plugin as a library to be used by some of my other plugins?

opaque cape
#

How can I check if the Players Inventory is full?

#

And how can I add an ItemStack to the first available empty slot in the Inventory?

worthy vessel
#

Can anyone help me test my mod

ocean lake
#

How do i set item slot in ui to empty ? when i set "" as item id it says invalid item on slot

opaque cape
#

⁨``` ItemStack currentActiveItem = playerComponent.getInventory().getActiveHotbarItem();
short currentActiveSlotIndex = playerComponent.getInventory().getActiveHotbarSlot();

    playerComponent.getInventory().getHotbar().setItemStackForSlot(currentActiveSlotIndex, null);
ocean lake
#

i have custome ui that have ItemSlot and after i remove items from SimpleItemContainer i need to update UI
⁨```
cmd.set("#InputSlot.ItemId", inItem.getItemId());
cmd.set("#InQt.Text", (state.getInputQty() == -1 ? "": state.getInputQty()+""));

but what do i set if SimpleItemContainer is emnpty?

⁨```
cmd.set("#InputSlot.ItemId", "Empty");
cmd.set("#InputSlot.ItemId", "");
```⁩
twilit mantle
#

anyone happen to know the replacement api for the deprecated ⁨world.getBaseBlock()⁩?

opaque cape
#

What is cmd in this context

ocean lake
#

⁨```
UICommandBuilder cmd

opaque cape
#

It looks like its taking an ItemID so "" would be an invalid ItemID

#

So I would wager null is gonna be valid

ocean lake
#

yup
⁨```
Ambiguous method call. Both
set
(String,
Value<Object>)
in UICommandBuilder and
set
(String,
String)
in UICommandBuilder match

#

null gives error

west elk
#

if not null, then maybe "Empty"? That is usually the id for the air block

#

haven't worked with those types of ui yet, though

opaque cape
#

Although let us know what works because, I'll need to know for my Auction House UI 😄

#

⁨```public void transferItem(ItemStack item, UUID winnerUuid) {
// Implementation depends on the rest of the economy system
LOGGER.atInfo().log("Transferring item to winner: " + winnerUuid);
PlayerStorage playerStorage = Universe.get().getPlayerStorage();

    CompletableFuture<Holder<EntityStore>> loadFuture = playerStorage.load(winnerUuid);
    Holder<EntityStore> playerHolder = loadFuture.join(); // Block until loaded

    if (playerHolder != null) {
        Player player = playerHolder.getComponent(Player.getComponentType());
        if (player != null) {
            Inventory inventory = player.getInventory();
            if (inventory != null) {
                CombinedItemContainer inventoryContainer = inventory.getCombinedHotbarFirst();

                boolean canAddItem = inventoryContainer.canAddItemStack(item);
                if (canAddItem) {
                    inventoryContainer.addItemStack(item);
                    LOGGER.atInfo().log("Transferred item to player " + winnerUuid);
                    return;
                } else {
                    // We want to cache the item for Later Delivery
                }
            }
        }
    }

}```⁩

So I've got this code here

In my else statement, I want to store the Item for later delivery

Should I make a MailManager here? hmmm

ocean lake
empty wyvern
#

how to update UI while it's opening or have to open new instance?

west elk
pseudo prawn
#

Still trying to figure out if there’s an easy way to remove recipes from benches successfully.

Overriding them and changing/removing the recipe does not work because the original item will reappear.

The only way I’ve found it to work is creating a new workbench with a different ID and adding every other single item I want to actually keep, and assigning them to the new bench.

If there’s an easier way, that’d be appreciated.

balmy harness
#

Is there a getting started somewhere about plugin dev? Or SDK documentation / availability etc?

west elk
opaque cape
#

Check out some tutorials on youtube, TroubleDevs a good one

urban gate
#

Hello, how does water spreading work? I made a custom water source that does not spread to the sides but if i place it against a wall and there are air blocks below it "duplicates" itsself downward in a column

#

⁨```
{
"MaxFluidLevel": 1,
"Effect": [
"Water"
],
"Opacity": "Transparent",
"Textures": [
{
"Weight": 1,
"All": "BlockTextures/Fluid_Water.png"
}
],
"BlockParticleSetId": "Water",
"BlockSoundSetId": "Water",
"FluidFXId": "Water",
"Ticker": {
"CanDemote": false
},
"Tags": {
"Fluid": [
"Water"
]
}
}

worthy vessel
#

is anyone free to help me test my enchantments mod

west elk
ocean lake
random briar
worthy vessel
urban gate
#

Yeah thats what i though, it set to "MaxFluidLevel": 1 and it still flows downward
S is block
W is water source block

Lets say i have blocks
S
S
S
S
I put it here
S W
S
S
S
It will flow like this
S W
S W
S W
S W

signal vale
#

Is the referToServer stuff broken in the latest update? I have this code which definitely worked a couple of days ago, which no longer is:
public static void onConnect(PlayerSetupConnectEvent event) {
event.referToServer("blastmc.tech", 5520);
}

It is registered, and I do get the redirect info on my client, but then I see this screen:
well I can't send an image, but 'An unexpected error occurred.' in the disconnect message

signal vale
#

thx

wind gull
#

How would I go about getting players uuid from outside of the game/sever?

west elk
#

what do you mean by that?

wind gull
#

in the plugin u can do this 'playerRef.getUuid()' but if I want to find players uuid from an external app where the user enters its username only?

west elk
#

player lookup api is not for public consumption and requires a server's authentication token

#

proper apis for that will come later

wind gull
#

damm... okay

#

wait do I understand correctly that the uuid is a global thing and not just per server?

lyric stone
#

Anyone know the exact cli or download link for the debian install files for the JDK version that is compatible with the AOT file?
I keep getting AOT Errors preventing it loading, this was the best match I could find:

⁨⁨[0.011s][info][aot] _jvm_ident expected: Java HotSpot(TM) 64-Bit Server VM (25.0.1+8-LTS-27) for linux-amd64 JRE (25.0.1+8-LTS-27), built on 2025-09-25T16:41:16Z with gcc 14.2.0 [0.011s][info][aot] actual: OpenJDK 64-Bit Server VM (25.0.1+8-LTS) for linux-amd64 JRE (25.0.1+8-LTS), built on 2025-10-21T00:00:00Z with gcc 14.2.0 [0.011s][warning][aot] The AOT cache was created by a different version or build of HotSpot

signal vale
#

Is there any plan to add a method to suppress world leave broadcasts in DrainPlayerFromWorldEvent?

Currently AddPlayerToWorldEvent has setBroadcastJoinMessage(false) which works great for suppressing join messages, but there's no equivalent for leave messages. So we can hide "PlayerName has joined explore" but not "PlayerName has left explore".

west elk
wind gull
#

okay

lone zinc
#

how can i update my server to the newes version of the game ?

west elk
mossy plover
west elk
wind gull
lone zinc
lyric stone
#

I tried to get Temurin 25.0.1+8-LTS from the website but looks like it's only available on macos. the versions the got for debian is now differnt. 🙁

west elk
#

@lyric stone instead of trying to match your jdk version, generate an aot cache for your jdk and environment.

primal raven
#

Guys, how would you approach dinamicly add a portal that teleports another world? Like a command ⁨/spawn portal⁩ or on plugin/server setup

final zephyr
#

Does anyone have intellij project template?

west elk
final zephyr
#

Good, i'll see if i can make it work for scala lol

woeful sapphire
#

15 dollars is wild

final zephyr
#

Just for the case, is there technical capacity to connect N clients to single server, all locally, as minecraft modding setup allows?

spiral marsh
oak hemlock
#

Hi guys, please help me how can i find any part of the code that interests me (for example, player effects that exists in game, as i understand they should containing in enum or some constant view)? Maybe i should change settings on my IDEA or something? As i understant Intellij just decompiling .jar file of HytaleServer and indexed search doesnt work in it.
I have HytaleServer.jar in my project directory libs, and im using "Find in Files..." function by clicking on it or on libs/HytaleServer.jar/com/hypixel/hytale
Sometimes it is not comfortable to learn lib code exploring it only by files.

spiral marsh
#

It's easier to decompile the JAR youself using fernflower and open the result as a project in IntelliJ - way better indexing etc

signal vale
#

Why am I editing common.ui, but I don't see any changes on the client?

west elk
#

the client only seems to hot-reload ui files that are loaded directly. I had to rejoin to see changes of imported files

#

what you can do during development is to paste the elements of your common.ui into your current ui file and edit them there. then when you're happy with it, put them back

fervent bronze
#

what does getGathering do?

#

blockType.getGathering?

tribal pecan
#

Hi, is there any way to dynamically change the properties of an item or a block? For example changing the model of block after placing a specific block next to it, or increasing the power of a pickaxe every 10 hits

hushed totem
#

Are ui files required on client or can server send everything client needs?

west elk
dusty heron
#

Hey now that I hope the modding community of hytale has grown more experienced.. did we have a way to hot reload or something servers to not need to relaunch and re auth (that part is the one that annoys me the most) when making and testing a mod?

hollow wasp
#

Does anyone know how to use the asset editor whilst making a java plugin. My mod shows as read only and I can't edit it.

hushed totem
west elk
dusty heron
#

amazing thank you very much

west elk
hushed totem
west elk
lucid spire
#

Can Events have a return value?
Currently making a custom event implementing IEvent
I'd like the handler to do some chekcs based on the content of the event and then return a boolean

hushed totem
#

Has anyone figured out a way to update display name of item sent through page window manager?

past flame
#

Are you a coder or animator/model creator, lemme know!

hushed totem
lucid spire
lyric stone
west elk
#

only use it on systems where only people you trust have access

lyric stone
#

you would need to use it on a hosted server that is always on.

thorny minnow
lucid spire
thorny minnow
fervent bronze
#

how can I change the movespeed of a player?

thorny minnow
lucid spire
sweet bronze
oblique copper
#

Need any info about EntitySpawnItemsPanel.ui. How to use it in my custom ui?

#

All what I know this is a client file, found it here: \Roaming\Hytale\install\release\package\game\latest\Client\Data\Game\Interface\InGame\Pages
And it looks like panel with items by categories in build tools, when you select Spawn Entity.
EntitySpawnPage is server class, but IDK why items panel are client.

fringe herald
#

How can I make a block an entity? Or should I always use Component<ChunkStore> instead of Component<EntityStore>?

upper mauve
#

Yes

warped folio
#

Hi, have you managed to make the player input listener work?

clear kite
#

Spent two days trying to figure this out, If your trying to clear custom icon buffs with ClearEntityEffect, Make sure Run Time is greater than 0 otherwise the icon is constantly being removed q.....q

dry dagger
#

Tell your friend they might be coming soon 🤷‍♂️ 🤌 🤩. I've got a proof of concept working calling the native hytale API from js bindings. Just needs a ts type package on top for sanity

inland palm
#

Any Coders/Modders that want 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!

ocean lake
#

Do anyone know how to do proper ui update ?
i have some elements in custome ui made like this

⁨⁨```
cmd.set("#Energy.Value", Math.max((double)0.0F, Math.min((double)1.0F, state.getEnergyFill())));
cmd.set("#Energy.TooltipText", String.format("%d/%d Energy", state.getStoredEnergy(), state.getCapacity()));

    cmd.set("#Progress.Value", Math.max((double)0.0F, Math.min((double)1.0F, state.getProgress())));
    cmd.set("#Progress.TooltipText", String.format("%d%%", state.getStoredEnergy()*100));

    //ItemSlots
    ItemStack outItem = state.getOutputStack();
    ItemStack inItem = state.getInputStack();


    if(inItem != null){
        cmd.set("#InputSlot.ItemId", inItem.getItemId());
        cmd.set("#InQt.Text", (state.getInputQty() == -1 ? "": state.getInputQty()+""));
    }else{
        cmd.setNull("#InputSlot.ItemId");
        cmd.set("#InQt.Text", "");

    }

    if(outItem != null){
        cmd.set("#OutputSlot.ItemId", outItem.getItemId());
        cmd.set("#OutQt.Text", (state.getOutputtQty() == -1 ? "": state.getOutputtQty()+""));
    }else{
        System.out.println("Empty output");
        cmd.setNull("#InputSlot.ItemId");
        cmd.set("#OutQt.Text", "");
    }
and i need to update them after change 
now im using SCHEDULED_EXECUTOR ther ticks every 250ms and cals render function that sets values , 
it kinda works but itemslots are buggy,(label updates but ther is no item in slot visualy, itemslot updates after 1 process ends, when i take item away and update it dont disapear until i close ui)
mellow flume
#

How can I prevent users to open Workbench?

tulip hamlet
#

Anyone wanna help a brother out, i have a shockbyte hytale server and i can't for the life of me figure out how to download a prefab onto my server. Id really really appreicate the help ive been going at this for almost a day

remote garnet
lost mist
#

Is there any physical way to change a blocks health so it is a 1 click to destroy?

analog phoenix
#

any idea how to change / disable gravity?

west elk
#

can I use HytaleServer.SCHEDULED_EXECUTOR to easily schedule something for the next tick, or do I have to use a TickingSystem?

surreal flame
#

is there a way to get the total player count across all worlds?

west elk
tall grotto
#

hey there brand new to mod making in hytale . so i was able to add the 2h sword 1h mace and axe to crafting table i am able to craft those i can do the normal attack and charged one as well as block but i dont gain any energy from hits to use Q so i was wondering if someone could guide me thru how to make that one work coz i tried few things like attaching attacks from different weapons but that didnt help and i am a bit lost so if somone would find a bit of time to even point me directions of what i am suppose to search for

rotund jetty
#

I have server hytale online

warped folio
#

Does anybody know if I can call interaction from code (or on keypress/use/ability)?

inland rock
vast fulcrum
#

anyone figured out how to change the blockdrop when breaking a block, want to drop other items.

heavy willow
north current
#

But I had a pretty hard time with that. Got it working but barely

#

I would say listening to packets might be a better way to go about it

vast fulcrum
warped folio
# north current I would say listening to packets might be a better way to go about it

Yeah, i ve seen that event but it says that it is deprecated, so i have decided not to use it. Now i am trying by listening packets and i have managed to get id of entity player is interacting with, but i still haven't figured out how can i get the entity by its id. I might use EntityUtils getEntity method even though it is deprecated, but it requires archetypechunk and I don't know how i can get reference to it

wise briar
#

Hi @vital jetty,

Is there any chance we can get some kind of "id" for mods/plugins, that doesn't relies on the mod name itself? Currently, renaming a mod will have unintended consequences to players, since the mod will be disabled in their world, and the default data directory location will change, making old config files not work out of the box after a mod rename.

wintry dawn
#

How do I make block emit light? Block light and item light property in asset editor does not change how much light it emits when placed down

last harness
#

guys Is there a method to set the direction of a block via code?

wintry dawn
last harness
#

?

wintry dawn
#

Chunk.setBlock(x,y,z,id, blockType, rotation, filler, settings)

last harness
#

oh

wintry dawn
#

rotation is an int tho

last harness
#

I understand! Thank you.

wintry dawn
#

It won't replace the block it will just rotate it, despite its name

wintry dawn
last harness
#

Okay, thank you!

wintry dawn
# last harness Okay, thank you!

No problem, also a guy sent me this before so just gonna paste it here if you want to read:
⁨```• Rotation is stored as a small integer index into RotationTuple presets, not as a free‐form vector or quaternion.

Key points:

  • RotationTuple represents yaw/pitch/roll using the 4‑way Rotation enum (None, Ninety, OneEighty, TwoSeventy) on each axis.
  • RotationTuple.index() returns a compact int (0..23 for the defined combinations) used in chunk storage.
  • To work with it, convert between index and tuple:
    • From stored int → RotationTuple current = RotationTuple.get(rotationIndex);

    • To compute a new orientation, modify the tuple and take its index:

      RotationTuple current = RotationTuple.get(rotationIndex);
      RotationTuple next = RotationTuple.of(current.yaw().add(Rotation.Ninety), current.pitch(), current.roll());
      int nextIndex = next.index();

  • WorldChunk.setBlock(...) expects that rotation index; it just writes the index, no math. The renderer/logic reads the index and uses the tuple for facing/hitboxes/etc.
  • If you need a “face the player” rotation: compute desired yaw from player → pick nearest Rotation (Rotation.closestOfDegrees(deg)), build a RotationTuple with that yaw (pitch/roll usually Rotation.None), then use
    tuple.index().

So think of the int as a packed enum combination, not an angle in degrees/radians; RotationTuple is the helper API to go back and forth.```⁩

last harness
#

That helps a lot.

tepid fossil
#

Anyone knows a mod that teleports you to spawn on reconnection?

urban gate
steep saffron
#

J

acoustic rampart
#

does anyone know where the ore generation configs are? i want to change how an ore spawns but i caant find the generation fuctions anywhere

north current
#

What is node editor used for?

#

woahh nevermind this is where people have been doing worldgen huh

wintry dawn
#

Am I crazy or is Block Light property bugged? It only works on certain XZ coordinates. When I copy the winter light asset its block light is 0 but it works?

graceful zephyr
#

Anyone having problems doing heavily custom GUIs? I can do basic generic ones, but anything too custom it just crashes

tepid fossil
mellow flume
#

hey, why my damage system is triggering only when player receive damage?

junior rapids
#

Perhaps you used the player entity store

last harness
#

Guys, I'm trying to spawn a chest in the west direction, but it always spawns in the south. I can't fix it no matter what. Can anyone help me?

ancient osprey
#

How to prevent horse mount event?

Event named Mount not work.

upper wyvern
#

I'm working on a mod where I'm considering an announcer voice + subtitles (for non-audio users).. would be so strange to hear a voice-over for cinematic shots 🤣

solid trail
#

how to i get these place holders to register ive already done /Wpapi ecloud download all and nothing is working

frail ingot
#

is there a way to use a 3rd party app (like notepad++) to edit json files in the asset editor?
cuz i've tried to export them and then go to the folder they are and open them but the changes don't apply.

short temple
#

How do I get a mod or plug-in to disable player names on maps in my hytale server

dawn torrent
#

Sooo, does anyone know the feasibility of making a block that behaves like "pipez" from MineCraft? From what I can tell, I can "easily" get the pipes to attach to eachother, but not so easily visually display if it's "pulling" or "pushing" from an adjacent tile. It comes to like 4096 possible states (4 states per side [disconnect, connect, push, pull] to the power of 6 for each possible connection per side combo). Baking in 4k models doesn't sound ideal or manageable with the current "ConnectedBlock" system.... so I'm not sure how to approach this.

I've explored having the block just be the base texture, then adding the "arms" to visually collect stuff as model assets for props, but that ran into other issues of removing them when the block is destroyed...

last harness
#

Guys, I'm trying to spawn a chest in the west direction, but it always spawns in the south. I can't fix it no matter what. Can anyone help me?

vast fulcrum
#

anyone knows how to get the drops on BreakBlockEvent?

lucid spire
#

I'm trying to set a custom damage in a DamageEventSystem
⁨```
System.out.println("Base Damage: " + damage.getAmount());
damage.setAmount(100000f);
System.out.println("New Damage: " + damage.getAmount());

It prints that new damage schould be correct
But it just doesnt apply it in game
Doesnt matter if i set the amount to 0 or 100000 or anything in between
merry harbor
#

Hello, is there a way to block block placement in a certain zone but enable block breaking?

warped folio
merry harbor
#

I just figured it out thx

urban gate
#

Hi, why is every fluid "flowing" downward in a column even tho i removed SpreadFluid. Is there anotherr option so i can have 1 block fluid source that doesnt spreat anyway?

⁨```

"Ticker": {
"CanDemote": false,
-- "SpreadFluid": "Water" <- i removed this line and it stopped flowing sideways but still goes down.
}

south jungle
#

anyone know of any server plugins that can add a bit of difficulty to mid-game/end-game without adding a system like food/water?

real canyon
#

Is this the right place to find out how to make a prefab show up in world generation?

cursive gorge
#

kinda stupid question here but in the "/world add (name) -gen=____" what do i put in the gen category for a superflat world?

cursive gorge
#

thanks

real canyon
#

Does anyone know how to make a prefab show up in world generation?

finite crane
merry harbor
#

Is there a way to do something like this? ik theres no word.getPlayers() so i wanted to know how to do it and get their pos:
⁨```private static boolean isPlayerStandingHere(
World world,
BrokenBlockTracker.BlockPos pos
) {
return world.getPlayers().stream().anyMatch(player -> {

    int px = (int) Math.floor(player.getPosition().x());
    int py = (int) Math.floor(player.getPosition().y());
    int pz = (int) Math.floor(player.getPosition().z());

    return px == pos.x()
        && py == pos.y()
        && pz == pos.z();
});

}```⁩

real canyon
stoic sigil
#

setBlock(int x, int y, int z, String blockTypeKey, int settings) has anyone figure out what i can do with the settings here? i'd like to place a block rotated upside down in code

finite crane
warped folio
#

Does anybody know what is the proper way how to get entity by its id?

real canyon
finite crane
sharp lake
#

Did you end up having any luck?

real canyon
finite crane
native prawn
real canyon
finite crane
real canyon
finite crane
real canyon
finite crane
real canyon
finite crane
real canyon
finite crane
sharp lake
#

What is his language lol
Edit: oops sorry i didn't see it was an old message

finite crane
merry harbor
#

how can i itereate over online players?

signal vale
#

@strange tapir Is there any plan to add a method to suppress world leave broadcasts in DrainPlayerFromWorldEvent?

Currently AddPlayerToWorldEvent has setBroadcastJoinMessage(false) which works great for suppressing join messages, but there's no equivalent for leave messages. So we can hide "PlayerName has joined explore" but not "PlayerName has left explore".

fresh fox
#

has anyone gotten intelisence to work with the decompil;ed code or bc there is no documentation yet

hearty salmon
#

Hi, I have a question. My mod worked perfectly before the update, but now, for some reason, the interaction effects don't work if there's a runtime delay beforehand. I'm not sure if I'm explaining myself well, but basically, now the particles, sounds, etc., don't work if there's a delay created by the runtime.

If anyone can help me, I'd really appreciate it. It's quite frustrating, and I don't know what to do, haha.

hearty salmon
fleet plover
#

How to add interactions ? I created my mod to interact with an NPC, and added another mod with the assets (interaction + UI) but when clicking on the NPC I get "Missing interaction : Test_interaction"

#

Do the interaction mod needs to be in a .jar or just folders ?

short temple
#

can someone help how do I get a mod or plug-in to disable player names on maps in my hytale server

ornate raven
#

on my main class i do

⁨```
protected LuckPerms luckPerms;

@Override
protected void start() {
    this.luckPerms = LuckPermsProvider.get();
}

    @Override
protected void setup() {
        somethingManager = new SomethingManager(this.luckPerms);
}

and get it with

⁨```
    private final LuckPerms luckPerms;

    public SomethingManager(LuckPerms luckPerms) {
        this.luckPerms = luckPerms;
    }

        if (luckPerms == null) {
            logger.atWarning().log("luckperm null");
            return false;
        }
```⁩
but still my luckperm is null anyone have a idea?
zenith moat
#

What does LuckPermsProvider look loke?

lucid spire
#

any ideas how to modify jump hight?

mint osprey
#

Has any noticed or had reports of block breaking delay when passing the 30+ players mark?

TPS is constant 30+ TPS and CPU load averaging 6-7%

#

I’ve tried everything at this point

#

Became very noticeable after update 2

fresh fox
#

anyone who has gotten intelisence to work?

lavish salmon
#

Anyone figured out how to add new keybinds yet?

heady grove
#

In the ⁨executeSync⁩ method of ⁨CommandBase⁩ is there a way to set a block in the world the sender is in? Something like ⁨World.setBlock(x, y, z, "Rock_Stone")

dusky bobcat
#

Anyone know how I can get the commandBuffer?

tidal mauve
pearl plinth
#

@full swallow @tawny seal regarding error 403. I've searched through the chat and seen a lot of people asking the same question. do you have to purchase the game in order to run the dedicated server? when using the installer after going through the authorization we are getting an error code 403 and the download does not continue.

north current
lavish salmon
#

Well that's a bummer

azure narwhal
#

are there any blocks that by default have interactions with projectiles like arrows?

dawn scaffold
#

Is there some easy way to track if a player right cliked some item?

placid plaza
#

Is there a plugin to add corner shallow roof pieces

sick creek
ancient night
#

Is there a way to damage all Entities within a given range around a given coordinate?
(Without using ExplosionUtils if possible)

glossy turret
#

When I want to store a reference to a world, I could store a UUID or a name as a string, both allow me to do ⁨getWorld⁩ on the universe but I don't see how I would get the UUID of a world. Calling ⁨addWorld⁩ on the universe does not return a UUID but just a world and I don't see it holding an UUID

#

ah, it's part of the world config

timid trout
#

Hi group,
I need help:
⁨```java
package net.latinhy.nexus.systems;
public class ExampleBreakSystem extends EntityEventSystem<EntityStore, BreakBlockEvent> {
public ExampleBreakSystem() {
super(BreakBlockEvent.class);
}
@Override
public void handle(int i, @NonNullDecl ArchetypeChunk<EntityStore> archetypeChunk, @NonNullDecl Store<EntityStore> store, @NonNullDecl CommandBuffer<EntityStore> commandBuffer, @NonNullDecl BreakBlockEvent event) {
// Ignore empty blocks / air
if (event.getBlockType() == BlockType.EMPTY) return;

    // Get the Player entity
    Ref<EntityStore> ref = archetypeChunk.getReferenceTo(i);
    Player player = store.getComponent(ref, Player.getComponentType());

    if (player == null) return;

    // Example Logic: Prevent breaking a specific block (e.g., the Nexus block)
    // Let's assume we are checking for a specific block type string
    String targetBlockName = "nexus:nexus_core"; 
    
    if (event.getBlockType().toString().equals(targetBlockName)) {
        
        // Send a message to the player
        player.sendMessage(Message.raw("You cannot break the Nexus core!"));

        // MY CURRENT WORKAROUND:
        // I let the block break, but I immediately replace it to simulate it wasn't broken.
        // event.setCancelled(true); <--- This is causing the issue I will describe below.
        
        player.getWorld().execute(() -> {
             // Reset the block immediately to simulate cancellation
             player.getWorld().setBlock(event.getTargetBlock().x, event.getTargetBlock().y, event.getTargetBlock().z, targetBlockName);
        });
    }
}

@NullableDecl
@Override
public Query<EntityStore> getQuery() {
    return Player.getComponentType();
}

}

timid trout
# timid trout Hi group, I need help: ⁨```java package net.latinhy.nexus.systems; public class ...

I'm trying to cancel the event when a player hits a specific block. However, when I use event.setCancelled(true), the block visually keeps its 'crack' (damage) state at 100%. This means that if the player hits the block again immediately, the break event fires instantly without any delay.
If I wait a few seconds, the block eventually restores itself, but I need it to be instant.
Currently, my workaround is to NOT cancel the event (letting the block break) and then immediately using world.setBlock() to place it back, effectively resetting it.
Does anyone know if there is a proper way to programmatically reset the block's crack/damage level to 0 without having to replace the block entirely?"

molten relic
#

does anyone know how to get an entity ref from ⁨InteractionChainData.entityId⁩?

spare kraken
#

Anyone do a mod to make the toolbenches that do not access chests able to access chests? i.e the builder bench? Would be great if that worked the same as the block selection screen in the inventory-tied toolbenches and allowed you to see what blocks you can make based on your inventory + inventory of chests in range. Grabbing stacks to see what they can do in the builder bench can be very time consuming and clunky compared to using the inventory-tied workbenches

subtle sage
#

[2026/02/01 22:10:39 WARN] [Universe|P] Timeout or error waiting for player 'VarNotUsed' removal from world store
java.util.concurrent.CompletionException: java.lang.IllegalStateException: Invalid entity reference!

when trying to use
⁨⁨⁨⁨```java
freshStore.addComponent(freshEntityRef, Teleport.getComponentType(),
new Teleport(targetWorld, spawnPoint.getPosition(), spawnPoint.getRotation()));


Anyone experienced the same? is tp api bugged?
fleet sphinx
#

Did you check if it's null before creating the Teleport component

merry harbor
#

How can I iterate over the online players to get their location

molten relic
#

I can't even figure out what component type to use for generic npcs

somber python
#

Hello! Someone knows how to interact with mobs healthbars ? I´m trying to figure if the fadein/out, distance before disappearing, things like that can be modified

ancient night
#

Where do I get a List of the available Particle IDs accepted by "ParticleUtil.spawnParticleEffect"?

dawn torrent
#

Welp I found a limitation 🤣
Caused by: ProtocolException: Packet UpdateBlockTypes serialized to 2028639560 bytes, exceeds max size 1677721600

primal cypress
dreamy pecan
#

been attempting top add adjustment of death penalty and day/night duration to my server through PingPlayers hosting but every time I try the server doesn't allow connection just default fails any attempt to join - Just removed death penalty adjustment and left time adjustment and can join, so death penalty is still holding back

subtle sage
#

does sandboxie work to have 2 hytale instances open? would reaaaaally like to test multiplayer plugins alone 😂

strong musk
#

thats... impressively horrible lol

#

every mod ever?
though I thought the vanilla server broke up those into several packets, I guess not

dawn torrent
#

Not sure why it ballooned like that. It started happening when I added a 3rd item that uses the same set of 4096 models with just a different texture...

molten relic
#

where are they at?

dawn torrent
#

fwiw, that's not 4k resolution, that's 4k models

strong musk
molten relic
#

okay well I finally figured out that it's the network id that the index is

#

how you get that without looping over every entity.. I have no idea

dawn torrent
#

They aren't, they're different variations of an "item pipe" and I'm using block states to choose which one to use... "ConnectedBlocks" can't do what I'm looking for sadly.
It's 4 states per side (disconnect, connect, push, pull), then to the power of 6 for the 6 sides

molten relic
#

okay cool. getNetworkId is deprecated.

dawn torrent
#

So all 3 items were using the same exact set of models, but idk why it'd have ballooned up to 2GB 🙃

dire cloak
#

Is possible to cancel all commands expect some, is there some PlayerCommandEvent or smthng?

molten relic
#

I very much hate this code

⁨⁨```java
playerRef.sendMessage(Message.raw("ea sports ent id: " + item.data.entityId));
player.getWorld().getEntityStore().getStore().forEachEntityParallel(NPCEntity.getComponentType(), (index, archetypeChunk, commandBuffer) -> {
Ref<EntityStore> inner_ref = archetypeChunk.getReferenceTo(index);
var ent = commandBuffer.getComponent(inner_ref, NPCEntity.getComponentType());
if (ent.getNetworkId() == item.data.entityId) {
player.sendMessage(Message.raw(index + ": " + ent.toString()));
player.sendMessage(Message.raw("Role: " + ent.getRoleName()));
}
});

#

uh ignore the ea sports thing
definitely not debug madness

#

but hey, it works!! ||🗿||

dire cloak
molten relic
#

if you know a better way.. feel free to share.

#

this is my first time working with an ECS

heavy willow
#

anyone in here have a server that floods with these:

[2026/02/01 22:38:22 SEVERE] [World|default] Took too long to run pre-load process hook for chunk: 296ms 530us 600ns > TICK_STEP, WorldChunk{x=8, z=20, flags=00000000000000000000000000000100}, Hook: com.hypixel.hytale.builtin.fluid.FluidPlugin$$Lambda/0x000000002fc4d638@329b4b8b
[2026/02/01 22:38:23 SEVERE] [World|default] Took too long to run pre-load process hook for chunk: 357ms 591us > TICK_STEP, Has GC Run: true, WorldChunk{x=-8, z=6, flags=00000000000000000000000000000100}, Hook: com.hypixel.hytale.builtin.fluid.FluidPlugin$$Lambda/0x000000002fc4d638@329b4b8b

i thought it was my mod but when i remove all mods they are still happening on my server even with a new universe BUT someone else in another discord says they "dont get any severes" on their console or logs of their server" im trying to figure out if something is wrong with both my Gportal AND local hosted server or if this other person is just FoS. I would send a screenshot but i cant so just know the console gets FLOODED with them when players are walking around

molten relic
#

and it's not like I have any documentation on this

dawn torrent
#

I get those, it's probably just too many chunks getting generated for the processor, probably what it means by 'pre-load'

#

I mostly see that on new worlds when it's freshly generating everything around me

native pawn
#

Hola, como están, soy modder pero nunca pude con Hytale ya que tengo un problema, realmente me compre el juego hace bastantes dias pero nunca pude probarlo por que para iniciar sesión me envian un codigo al hotmail pero nunca llega, tampoco para recuperar la contraseña o algo (yo tengo acceso al correo y si se cual es la contraseña) no se si a alguien le paso algo similar

#

Hi, how are you? I'm a modder, but I've never been able to get Hytale working because I have a problem. I actually bought the game a few days ago, but I've never been able to try it because they send a login code to my Hotmail address, but it never arrives. I also can't get a code to recover my password or anything like that (I have access to the email and I know the password). I don't know if anyone else has had a similar experience.

copper summit
#

Any chance i can get someone to test something with me on my Skywars plugin rq?

heavy willow
dawn torrent
#

I wouldn't worry too much about that, it's just stuff in that specific chunk might lag a little. If world tps stays ok it's probably fine

primal cypress
heavy willow
#

I have now Spent two days trying to debug that because this other person says it doesnt happen on their server so i just thought it was my oreGenLib doing it ugh lol

glossy turret
#

I use the ⁨EntityStore⁩ to store components on entities and ⁨ChunkStore⁩ to store components on blocks and such, but where can I store state in items?

molten relic
#

I guess it's amazing that I'm like the only person trying to do that?

#

maybe it's better to just make a custom interaction than do whatever this bs is

oblique thorn
#

Is anyone still having issues with the Discord game server? When you enter the Forgotten Temple and exit through the portal, the game starts having problems and kicks you out. Is this issue still affecting most people?

last harness
#

Guys, I'm trying to spawn a chest in the west direction, but it always spawns in the south. I can't fix it no matter what. Can anyone help me?

subtle sage
fallow geyser
#

If any of you server dudes are using nocube bakehouse mods This is the correct output it should read.
⁨⁨```
{
"ItemId": "NoCube_Ingredient_Corn_Dough"
}


not 
⁨⁨```
{
  "ItemId": "Ingredient_Dough"
}
```⁩⁩
cant get ahold of the mod owner to fix it, but its like that with all his json files that have the wrong outputs. Looks like it was templated and just not updated.  So if anyone is using just wanted to make ya aware enjoy. Had to manually fix there stuff on our own world.
upper wyvern
#

is it @elder saddle maybe, same tag so maybe maybe not

viscid wren
#

Does anyone know what VectorSphereUtil and BlockSphereUtil are for? Can you use them to run code at each position in a sphere? Is vector sphere along the lines of how MC handles it's explosions, because that's exactly what I'm looking for?

mellow flume
#

getEntityStoreRegistry().registerSystem(new MyDamageListener());

⁨```public class MyDamageListener extends DamageEventSystem {

@Override
public Query<EntityStore> getQuery() {
    // Return Query.any() to handle all entities, or a specific query
    return Query.any();
}

@Override
public void handle(int index, ArchetypeChunk<EntityStore> chunk,
                   Store<EntityStore> store, CommandBuffer<EntityStore> commandBuffer,
                   Damage damage) {
    // Get reference to the damaged entity
    Ref<EntityStore> targetRef = chunk.getReferenceTo(index);

    // Modify damage
    damage.setAmount(damage.getAmount() * 0.5f);

    // Or cancel it
    damage.setCancelled(true);
}

}```⁩

I'm trying to receive the player attack here ://

molten relic
#

ok so custom interactions just don't seem to work at all??

#

I'm just getting ⁨Missing interaction: ABC

#

even though I very clearly registered it

last harness
#

Guys, I'm trying to spawn a chest in the west direction, but it always spawns in the south. I can't fix it no matter what. Can anyone help me?

azure cove
#

Dude, why is there still no fix for Forgotten temple crashing the entire server???

#

Someone enters the portal and the server goes crazy

#

Let us at this point just disable those portals in config

finite crane
azure cove
finite crane
stoic swan
#

is there a way to get Player before the player disconnects?

finite crane
azure cove
#

Thanks

finite crane
#

I hope it works for you.

bold helm
#

Anyone know if there's any way to get syntax highlighting and suggestions for .ui files? surely there's something

finite crane
#

I think there is an official plugin for it, but it doesn't really work in my experience.

low mortar
#

there's a jetbrains extension

low mortar
bold helm
finite vault
#

bruh

#

I just tried posting a question and it got blocked for advertisement

bold helm
finite crane
#

Did you have a website link in it?

finite vault
#

no, ofcourse not haha

bold helm
#

just a link to my own X account

lucid spire
#

What does settings do here? Its an int
World.breakBlock(int x, int y, int z, int settings);

finite crane
#

Yeah, I think all links are dissallowed.

bold helm
#

ahh

finite vault
#

For some reason when I do ⁨⁨setBlockInteractionState⁩⁩ it's causing it too fail to get the blockReference in the next tick.

I'm at full stop blocker right now haha, because I'm unsure how to trigger a block animation without this method

#

I would show code, but as soon as i do that it getting blocked...