#server-plugins-read-only

1 messages ยท Page 104 of 1

rustic plover
#

windows is where i have my games installed and powershell is yucky

warm sedge
#

9 times out of 10 you will disconnect the vm from the internet before it does what you actually want

stable vessel
#

CAN YALL TELL ME WHY MY GAME WITH 20FUHING DAYS DIDNT LOAD

pine holly
#

me and my wsl instance running my server sheepishly

rustic plover
#

i don't care how slow it is, it's for development

#

i have a dedi in texas for the speeds

pallid imp
#

hi i'm learning how to make a mod is there a discord i could join in? I'm new to modding and I wanna learn more

pine holly
pine holly
#

i've never heard something so real in my life

stray pasture
#

Just stick with the 127 I just see it hardcoded and never ever gonna change unless y ou want to go messing in the bowels of HyerV. Its not worth it. It maps to your host mchine IP anyway

warm sedge
#

๐Ÿ˜ญ chooses a virual machine to use an interpreted scripting platform over microsofts jitted scripting language

rustic plover
pine holly
#

it's one of the 7 deadly sins, the deadliest, sloth

warm sedge
rustic plover
#

i should mention i'm not super familiar with the backend of WSL and whatever microsoft decided was "good" for the internal virtual networking

stray pasture
warm sedge
rustic plover
#

i guess there's nothing stopping me from using node or something and creating a udp socket proxy

pine holly
#

so, i had no success connecting to my wsl instance from like... within my own network like that

warm sedge
stray pasture
pine holly
#

yeah that would probably do it

warm sedge
pine holly
#

i never looked into it that much, because i had no need to connect to it directly but yeah

rustic plover
stray pasture
warm sedge
#

yeah ik

pine holly
#

that is the point

stray pasture
#

Oh understood, yeah relays are much easier. ๐Ÿ˜„ I have one written if you want to use it

warm sedge
#

if hytale sets the preferred address and its setup properly it will migrate off his relay too

rustic plover
#

man in the middle attack my own server just to even be able to connect from the laptop sitting next to me

warm sedge
stray pasture
pine holly
warm sedge
stray pasture
warm sedge
stray pasture
warm sedge
stray pasture
warm sedge
heavy willow
#

does anyone know of a mod that injects Flora into worldGen currently? im looking to test my EZDev Modding tool (making it for modders to test their mods), what i want it to test is to see if it appears in my list of wild grown flora(s) to teleport to if within a 16 chunk radius of it. its already working for in-game flora, Trees, Biomes, and zones. and its working with injected ores and basegame ores. just need to test the modded things that are injected

rustic plover
#

i just realized i made the proxy server and i'm trying to run it in the WSL instance...

loud osprey
#

After I get them made how do I implement them into the server and make sure it overrides the default oak tree ones

crimson quarry
#

how do you fix the strict firewall error

nocturne widget
#

Instead of redownloading, I just moved the assets into the server folder and it worked.

glass charm
#

so after messing around in editor my exploration worlds no longer work ๐Ÿ™

tepid walrus
#

how do I create a server?

weak spear
pine holly
rose atlas
#

u can either self host or pay a hosting like nitrado for example

tepid walrus
rose atlas
#

self host or pay?

copper anchor
#

I do not recommend self hosting if you dont know much about it

warm sedge
pine holly
#

I do recommend it! we all start somewhere

warm sedge
#

I just assumed you couldnt ๐Ÿ˜ญ

sinful citrus
primal cypress
#

guys is possible to make an event that its called when a chest change its content?

dusky sable
#

Does anyone know how to prevent players from picking up dropped items?

rose atlas
analog knoll
#

Day 4 of asking Hypixel to fix the parent/child asset bug that makes vanilla json data override modded json data.

lofty cliff
#

Is it possible to add a bench category to the official benches using the asset editor? I didn't see any category assets for the benches, but I see the category IDs in the benches themselves.

solemn trellis
#

Little curious there is TinyMessage/Color support correct? when making Mods? im currently trying to polish my mod with Color like it says from wiki. docs/guides/plugin/chat-formatting but in chat i keep getting just normal text no color is rendering?
context.sendMessage(Message.raw("You don't have a colony!").color("red")); but its coming out as normal white text in chat? is there just not color support currently?

opaque cape
#

I've just tested end to end all scenarios
We are successfully syncing inventories between servers with no issues

solemn trellis
unreal crow
#

Anyone know which DamageEventSystem I need to extend in order to tap into the damage dealt to an NPC by a player? Is it NPCDamageSystems.DamageReceivedSystem or NPCDamageSystems.DamageDealtSystem? I can't tell which perspective it is, lol.

left wind
dusky sable
unreal crow
#

Right on, I'll give that a shot, thanks!

primal cypress
dusky sable
warm sedge
#

you can look in the PlayerItemEntityPickupSystem

fleet sphinx
#

Is it possible to disable gravity in a world for all entities; and still existing as a player with collisions enabled. Just movement is in zero-G.

strong musk
# stray pasture How does that even work?

its funny stuff -- I have seen a few proxies that do it, but basically, its pretty similar to mc proxies -- they hyjack the connection and inject thier own packets to the clients stream

dusky sable
stray pasture
warm sedge
dusky sable
warm sedge
#

if you want to disable all pickups with no filter you can just set the pickup time to an absurdly large number

dusky sable
warm sedge
dusky sable
warm sedge
#

if you build the camera settings wrong you might

left wind
dusky sable
warm sedge
#
internal fun buildFreecamSettings(
    pos: Vector3d,
    headYaw: Float,
    headPitch: Float,
    speed: Int = DEFAULT_SPEED
): ServerCameraSettings {
    return ServerCameraSettings().apply {
        positionLerpSpeed = 1.0f
        rotationLerpSpeed = 1.0f
        speedModifier = 1.0f
        allowPitchControls = true
        displayCursor = false
        displayReticle = false
        mouseInputTargetType = MouseInputTargetType.Any
        sendMouseMotion = true
        skipCharacterPhysics = true
        isFirstPerson = false
        movementForceRotationType = MovementForceRotationType.CameraRotation
        movementForceRotation = Direction(0.0f, 0.0f, 0.0f)
        attachedToType = AttachedToType.None
        attachedToEntityId = 0
        eyeOffset = true
        positionDistanceOffsetType = PositionDistanceOffsetType.DistanceOffset
        positionOffset = Position(0.0, 0.0, 0.0)
        rotationOffset = Direction(0.0f, 0.0f, 0.0f)
        positionType = PositionType.Custom
        rotationType = RotationType.Custom
        position = Position(pos.x, pos.y, pos.z)
        rotation = Direction(headYaw, headPitch, 0.0f)
        canMoveType = CanMoveType.Always
        applyMovementType = ApplyMovementType.Position
        val horizontal = max(1.0f, speed.toFloat())
        val vertical = max(0.5f, 0.4f + (speed * 0.12f))
        movementMultiplier = com.hypixel.hytale.protocol.Vector3f(horizontal, vertical, horizontal)
        applyLookType = ApplyLookType.Rotation
        lookMultiplier = Vector2f(1.0f, 1.0f)
        mouseInputType = MouseInputType.LookAtTarget
        planeNormal = com.hypixel.hytale.protocol.Vector3f(0.0f, 1.0f, 0.0f)
    }
}

stolen from a friend

warm sedge
#

the main things i think are

attachedToType = AttachedToType.None
attachedToEntityId = 0
dusky sable
warm sedge
hazy anvil
#

I've been trying to clone a world (works) and spawn an entity to which the player will teleport and have its camera set to it.

Currently, the entity initially spawns with a entityId of 0, but when the player teleports and tries to set the camera, suddenly, it is invalid and is set to Integer.MIN_VALUE.

I am not sure what is happening.


    private void setupCamera(World world) {
        Store<EntityStore> store = world.getEntityStore().getStore();
        int entityId = store.getExternalData().takeNextNetworkId();

        world.execute(() -> {
            parent.getCameraHolder().addComponent(NetworkId.getComponentType(),
                    new NetworkId(entityId));

            Ref<EntityStore> ref = store.addEntity(parent.getCameraHolder(), AddReason.SPAWN);

            assert ref != null;

            parent.setCameraRef(ref);
            System.out.println(ref.getIndex()); // 0
        });
    }
WorldUtils.loadWorldWithUUIDAsync(UUID.randomUUID(), worldName, worldPath)
                    .whenCompleteAsync((world, _) -> {
                        game.setWorld(world);
                        setupCamera(world);
                        parent.nextState();
                    });

//...

Sorry for the lack of code, it is spread out and hard to put together. But the logic follows as:

  1. Create world
  2. Add entity to the world right after
  3. Teleport player
  4. Set camera
dusky sable
#

Does anyone know how to set an entity's target?

hazy anvil
#

what happened to my formatting

warm sedge
hazy anvil
#

fixed msg

warm sedge
#

\_ like this \_

primal cypress
#

how can i see if a block have a determined component? i was trying to do this:

Store<ChunkStore> chunk_store= blockEntity.getStore();
        Component<ChunkStore> component= chunk_store.getComponent(blockEntity, NewClassComponent.getComponentType());

but i think is pretty wrong, but looking at the asset editor, every block can have every type of component (it's how ECS work right?) so, how can i do?

dusky sable
primal cypress
#

i use snake case for variables and camel for classes and objects, yeah is strange

warm sedge
dusky sable
primal cypress
dusky sable
warm sedge
dusky sable
primal cypress
primal cypress
warm sedge
dusky sable
warm sedge
#

yeah but you probably tried it in java where every library uses its own convention

dusky sable
#

No, I used it in Python

warm sedge
#

python has coding guidelines?

dusky sable
#

Yes, snake_case is standard for variable names

warm sedge
#

i dont think ive ever seen a python variable longer than 1 word

dusky sable
#

Probably because they want to abide by Python's recommendations but don't want to use the worst naming convention

primal cypress
warm sedge
#

I just opened pycharm and in one file i have three different naming conventions

opaque cape
dusky sable
#

Does anyone know how to set an entity's target?

warm sedge
dusky sable
opaque cape
#

Would that not be what its hostile to?

dusky sable
warm sedge
#

Sensor.getSensorInfo()

dusky sable
#

I will try that later, thanks!

warm sedge
#

check if its a EntityPositionProvider ( or PositionProvider )

#

then you can .setTarget

hazy anvil
#

Kotlin or Java

dusky sable
hazy anvil
#

Why? (Unfortunately? ๐Ÿ’€)

dusky sable
#

I'm not a fan of Java lol

warm sedge
#

you can use kotlin

hazy anvil
#

You could also take it another level and use Scala

warm sedge
#

no, please no

#

scala can sit in the corner with groovy and we can all pretend they dont exist

dusky sable
opaque cape
#

Make it so you can use JS

finite crane
tired arrow
#

Iโ€™m misunderstanding the authentication tokens required for servers. Is there permanent tokens that you can apply so you donโ€™t have to authenticate every 10 minutes? If I rent a dedicated server would my server be able to restart the server while Iโ€™m away and reauthenticate? Because I read they arenโ€™t allowing any more tokens out

warm sedge
warm sedge
tired arrow
#

Where do you get the refresh token from?

warm sedge
#

when you /login on the server for the first time it gets one, and then stores it on disk encrypted

tired arrow
#

Legend. I miss all the important parts

#

I read the document and missed all that

warm sedge
#

I read they arenโ€™t allowing any more tokens out
every account has a limit of 100 servers. they were giving server hosts a special permission to go above this limit but they have disabled the form until it can be automated

copper anchor
tired arrow
#

Ah right makes sense now thank you

copper anchor
finite crane
opaque cape
finite crane
opaque cape
#

Lel

#

Im hoping to make a video of my mod tonight

warm sedge
finite crane
opaque cape
finite crane
finite crane
opaque cape
#

Its just a server jumping mod

#

And your inventory comes with you

copper anchor
#

I havent made a video for my mod tbh and its doing fine for what it does

opaque cape
#

Its about 2000 ish lines of code

copper anchor
opaque cape
twilit mantle
opaque cape
dim osprey
#

oh so you can send colored text in chat cool

dire cloak
#

Does nametags support colors?

lyric saddle
#

anyone know if you can set an area of blocks without making a selection manually? like a command that lets you input the 2 positions of the area to set blocsk in

lyric saddle
glossy shadow
#

nope, these commands are player only as i know

warm sedge
#

/updateselection also wants a real player

finite crane
glossy shadow
lyric saddle
#

dang, ive technically already got a solution for it automatically via a plugin, but ive noticed the /setblocks command is WAY more efficient than my code and i couldnt really figure out how the command set blocks itself

warm sedge
#

nope

glossy shadow
#

nvm, nop

finite crane
lyric saddle
#

thats what i mean, i looked at it and couldnt figure it out

#

im just not that experienced with java dev or how hytale does stuff yet

glossy shadow
#

there is no command which can be used in the console directly for these things, you would have to make an own for that

lyric saddle
#

already done that with my inefficient setblock code, i just wanted to see if there was a vanilla way because as i said i couldnt figure out how to do it the efficient way the commands do it

#

but if not then i guess ill try and see if i can figure it out

finite crane
#

I think I found the code that does it, for what that's worth.

lyric saddle
#

whats it under? might as well take a look again

warm sedge
#
BuilderToolsPlugin.addToQueue(playerComponent, playerRef, (r, s, componentAccessor) -> s.set(pattern, componentAccessor));
finite crane
#

src\main\java\com\hypixel\hytale\builtin\buildertools\BuilderToolsPlugin.java

#

Line 2892:
public void set(@Nonnull BlockPattern pattern, ComponentAccessor<EntityStore> componentAccessor) {

#

Under that method is one called fill, which might also be what you want.

lyric saddle
#

oh yea actually pretty sure this is exactly what i need

pure thicket
#

had u fix this?

orchid harbor
#

anyone also has some very high perf issues with their server? i'm currently in asia and my server is in the us so it may be from that but I'm feeling more than just latency, I feel like the server tickrate is really slow, but when I check my server's health is seems alright (it's self hosted btw)

vale tiger
#

How exactly do plugins work here (in hytale)? (considering every mod is server-sided only)

orchid harbor
#

check this ytb video watch?v=UTfNWGLvc9Y

vale tiger
vale tiger
warm sedge
#

you can make custom items with custom effects etc entirely via assets

vale tiger
warm sedge
#

yes but its not a plugin ;)

vale tiger
#

But I was talking about the mods

orchid harbor
# vale tiger Okay, so every server-sided mod is a plugin

i'm not sure to really know everything about this but from what I understand

mods have two parts, asset packs, and plugins, the plugins are the server side mods, the asset packs (items, block animations etc) are client mods (not touching the code tho) but they are delivered by the server

#

so at the end you may have a single mod containing both that you put on your server, but there is a part that goes to the client

vale tiger
orchid harbor
#

but you store them on the server that then sends them to clients

cyan swallow
azure violet
#

is it possible to make a raycast from the player when they run a command to get the entity they are looking at?

hushed quest
#

Someone know an event listener when a player right click on npc ?
The situation is i made a mod with pet and i want an to execute code when the player right click on it.

orchid harbor
rotund fossil
#

Is there a way to "break" a block instead of just setting it to air? Also getting the drops if that block was broken by a pickaxe?

orchid harbor
#

@hushed quest if you find how to do this could you please share your code?

hushed quest
copper anchor
hushed quest
dim osprey
#

let me try

rotund fossil
copper anchor
rotund fossil
orchid harbor
copper anchor
little anchor
#

how do you update that?

burnt radish
#

Does anyone know how to tamper with the item a player is holding? Right now I'm just trying to add/remove durability from it

copper anchor
rotund fossil
copper anchor
#

Yeah I dont think there is a getDrops method in this game

rotund fossil
#

I found BlockHarvestUtils.getDrops but I haven't had luck figuring out how it works.

little anchor
coarse wasp
#

Ok I'd love to make this myself but I'm so busy making my server I can't (Ngl I also don't got the hytale modding knowledge currently either) ๐Ÿ˜ซ We all would love if one of you beautiful lads would make a item banning mod where admins can still access the banned items or like just gate them behind conditions ๐Ÿ˜” โค๏ธ currently REALLY hard to make a themed server/even playthrough with players/myself being able to just craft everything

copper anchor
inland palm
#

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

inland palm
coarse wasp
inland palm
#

what is rust (not the game) ? as in i would have assumed you meant the game

proven gyro
#

Has anyone figured out getting a projectile to use a projectile config?

coarse wasp
inland palm
rotund fossil
final pulsar
#

Has anyone experienced issues with capture crates on their server since Hytale launch? And if so, have they become more stable & causing less crashes in the recent update?

azure violet
#

How can i run a raycast from the player to get what entity they are looking at?

copper anchor
red lily
#

Does anyone have a current download link for the latest .jar? I can't find it.

dusky sable
warm sedge
#

instanceof

dusky sable
calm pasture
#

ayo new there is there a post in this server with instructions on how to play with friends?

brazen sphinx
#

Are there any reasons why my custom animation inst even playing??

 protected void execute(@NonNullDecl CommandContext commandContext,
                           @NonNullDecl Store<EntityStore> store,
                           @NonNullDecl Ref<EntityStore> ref,
                           @NonNullDecl PlayerRef playerRef,
                           @NonNullDecl World world) {

        ServerCameraSettings settings = new ServerCameraSettings();
        settings.distance = 10.0f;           // Zoom distance from player
        settings.isFirstPerson = false;      // Third-person mode
        settings.positionLerpSpeed = 0.2f;   // Smooth camera follow

        playerRef.getPacketHandler().writeNoCache(
                new SetServerCamera(ClientCameraView.Custom, true, settings)
        );

        //AnimationUtils.playAnimation(ref, AnimationSlot.Action,"Gangnam",true,store);
        AnimationUtils.playAnimation(ref, AnimationSlot.Action, (String)null, "Gangnam", true, store);

        try {
            ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor();

            // 3. Schedule the reset to happen after a delay
            // Parameters: The task, The delay, The unit of time
            scheduler.schedule(() -> {
                playerRef.getPacketHandler().writeNoCache(
                        new SetServerCamera(ClientCameraView.Custom, false, null)
                );

                // 4. Clean up the scheduler thread after the task is done
                scheduler.shutdown();
            }, 5, TimeUnit.SECONDS);
        } catch(Exception e) {
            playerRef.sendMessage(Message.parse(e.getMessage()));
        }

    }```
#

i did it here on event code when player joins, it even shows in the logs, but its not playing when i use command

ModelComponent modelComponent = store.getComponent(ref,ModelComponent.getComponentType());
        Model model = modelComponent.getModel();
        Object2ObjectOpenHashMap<String, ModelAsset.AnimationSet> animationSetMap = new Object2ObjectOpenHashMap(model.getAnimationSetMap());
        BsonDocument mockData = BsonDocument.parse("""
        {
          "Animations": [
            {
              "Animation": "Characters/Animations/Gangnam.blockyanim"
            }
          ]
        }
        """);
        ModelAsset.AnimationSet animSet = ModelAsset.AnimationSet.CODEC.decode(mockData);

        animationSetMap.put("Gangnam",animSet);

        animationSetMap.forEach((k,v) -> {
            HytaleLogger.getLogger().atInfo().log(k);
            HytaleLogger.getLogger().atInfo().log(v.toString());

        });```
dusky sable
warm sedge
brazen sphinx
warm sedge
#
  1. you have to add it before the players join
#
  1. you can send the asset via packets but you bypass the only caching mechanism and this is only meant for the editor
brazen sphinx
#

id have to use some hytale asset register thing to modify the AnimationSetMap of that model in the code?

#

im basically new here but im experienced on other languages

warm sedge
dusky sable
#

There's also WorldProtect

warm sedge
bright terrace
#

how to get curseforge to recgonize Hytale?

dusky sable
dusky sable
brazen sphinx
dusky sable
#

You shouldn't need a paid plugin. Just check both of them out to see which better fits your needs

brazen sphinx
warm sedge
warm sedge
dusky sable
brazen sphinx
spice bramble
#

After the HealthBar mod was updated, many floating health text displays appeared on the world, but there are no creatures around, and the floating text can't be removed. What should I do? Has anyone encountered a similar situation?

brazen sphinx
#

thanks for the help i guess i have to figure this thing out for days

dusky sable
#

Does anyone know how to get the SensorTarget from an entity?

warm sedge
dusky sable
warm sedge
#

you can probably just create a custom instruction telling it to attack x player

opaque cape
#

Is there a way to hook into a Server Crash/Shutdown ?

opaque cape
warm sedge
#

Runtime.getRuntime().addShutdownHook

opaque cape
#

That'll run if the Server Crashes also?

warm sedge
#

as long as it doesnt crash the jvm

opaque cape
#

Hmmm

#

How likely is that to happen?

copper anchor
#

Nothing will realistically be able to run while a server crashes...

dusky sable
warm sedge
opaque cape
#

Basically need to post the Players authority back to the Main Server, If a Sub Server crashes

dusky sable
warm sedge
#

I dont think so? stats component for health?

dusky sable
#

right, thanks lol

#

Is there a better way I can spawn entities without having to manually add all the components?

rain shard
#

can someone make mod to give limited access to entity tool in survival
๐Ÿ‘‰ ๐Ÿ‘ˆ

opaque cape
#

I wonder if itd be possible to have the Server boot an external monitoring tool that will then Monitor if the server is accessible....

opaque cape
warm sedge
#

p.sure all of them just use docker/containerization

opaque cape
#

I basically just want to be able to Send the Players most recent inventory back to the Main Server, In the event their server of authority crashes

warm sedge
opaque cape
#

So if there's a server crash, Then shutdown code will still run?

#

In most cases?

warm sedge
opaque cape
#

Good to know

warm sedge
#

if the jvm crashes no more java code can run so the only code that could survive is either in another process or native, then you'd have to port your code for linux/windows/mac and things get messy

warm sedge
opaque cape
warm sedge
#

every 5~ seconds check if the inventory has changed, if it has broadcast to main

opaque cape
#

Though I guess then I'd have to hook into Player Death also

#

If the Player Dies, Send their new inventory to Main

warm sedge
#

if a player can crash the server on command when they die, you have bigger problems

hearty ermine
#

any server available?

opaque cape
#

Assuming their Server of Authority is still up, As soon as they join Main or another server, their inventory will be brought over, So there isnt any issue if the servers are up

#

I dont really want to be spamming a server with HTTP Requests if a player is constantly changing their inventory

warm sedge
#

you could make it 30, just think of it as a fallback mechanic

opaque cape
#

30 is probably more reasonable, Although we also have to consider potentially how many players are on the server

dusky sable
#

@warm sedge I figured it out. Thanks a lot for your help and patience

lucid spire
#

I wanna remove a custom HUD
but when i do
player.getHudManager().resetHud(playerRef)
the game just crashes ("Failed to apply CustomUI HUD commands")

opaque cape
#

I suppose I could bundle up a bunch of Inventory Changes into one request

dusky sable
dusky sable
lucid spire
dusky sable
#

Create a hud with nothing on it and set it to that

#

I would recommend checking out the EyeSpy mod though, they might have found a better solution

lucid spire
#

alright empty hud works but i ll check out the mod ty

unreal crow
#

Are the devs publishing the server source or are we going to have to decompile the JAR? I have a feeling there are some code comments that would be really helpful that get stripped out when compiled.

warm sedge
fading bolt
#

Anyone know how to prevent mobs from spawning in a wold by code? like there is no event to cancel from entitySpawn but there is for entityRemoval.

unreal crow
lucid spire
#

whats the best way to refresh a custom hud every second?

vale garden
ancient cosmos
# warm sedge

by launch, does it mean after EA?
btw it might be after V2 world gen implementation as I suspect

timber rapids
#

I'm wondering if there is a tutorial to make a mod or a already created mod that will replace a persons model for a server on an individual baces - i got my own model working and imported. i just now need to figure out if i can get it to work for everyone that joins

opaque cape
#

How can I iterate over all the Players in
PlayerStorage playerStorage = Universe.get().getPlayerStorage();

lone burrow
#

hey guys, what is the blockTypeKey for empty ? I tried :

world.setBlock(spawner.x, spawner.y, spawner.z, "AIR");

but not working

novel jungle
#

How to open 2 hytales (Different accs) for test my games?

#

any can help me pls?

hybrid yoke
#

Can we add images to hytale ui from links not local file?

brazen sphinx
#

does anyone have HytaleAssetStore.js? im trying to decompile hytale but my cpu cant handle this

#

and ranork unpacked hytale has that but its empty

opaque cape
#

Hmmmm

public void run() {
                // Code to run during shutdown (e.g., cleanup tasks)
                System.out.println("Shutdown hook is running! Performing cleanup...");
                ShubshubServerJump plugin = ShubshubServerJump.getInstance();
                PluginConfig config = plugin.getConfig();

                //We want to bundle up all the Authoritative Players Data and send it back to the Main Server
                String mainServerHost = config.getMainServerHost();
                int mainServerPort = config.getMainServerPort();

                String thisServerHost = config.getThisServerHost();
                int thisServerGamePort = config.getThisServerGamePort();

                // Load player data from PlayerStorage
                Map<UUID, PlayerData> playerDataMap = plugin.getPlayerDataCache();
                for (Map.Entry<UUID, PlayerData> entry : playerDataMap.entrySet()) {
                    UUID playerUuid = entry.getKey();
                    PlayerData playerData = entry.getValue();

                    // Prepare data to send
                    String[] authoritativeServer = playerData.getAuthoritativeServer();
                    String authoritativeServerHost = authoritativeServer[0];
                    int authoritativeServerPort = Integer.parseInt(authoritativeServer[1]);

                    String fullAuthoritativeServer = authoritativeServerHost + ":" + authoritativeServerPort;
                    String fullThisServer = thisServerHost + ":" + thisServerGamePort;

                    if (fullAuthoritativeServer.equals(fullThisServer)) {
                        // We want to give authority back to the Main Server so we will cache their Inventory for saving
                        inventoryMapToSend.put(playerUuid, plugin.getOfflinePlayerInventory(playerUuid));
                    }
                }
                // Example cleanup: close database connections, save data
            }
#

Will this be too much code to run on Shutdown? I'm then planning to send out an HTTP Request

ornate raven
stark tulip
ornate raven
lone burrow
hushed quest
#

Someone know how to execute code when u interact with an npc
The situation is i made a mod with pet and i want an to execute code when the player interact with him

stark tulip
ornate raven
#

it was giving error in 4.1

stark tulip
#

Hmh interesting. And you reported it?

ornate raven
#

nah

stark tulip
opaque cape
#

Is it possible to apply a player inventory if a Player is offline?

fickle pecan
dusty venture
opaque cape
pure thicket
#

is there a way to remove this join message?

#

player has joined default

blazing warren
#

is there a way to implement a custom MovementState?

pure thicket
#

hih did u found a way to change or disable

onyx sphinx
#

Can anyone help me figuring out why I cant load the Hud I created?

Client Log Says it added it to the Cache:
2026-01-26 12:50:59.2532|INFO|HytaleClient.Application.AppStartup|Added cached reference to asset a9f1b7da4c48493b501b1a9cbc2d031fce81aa44b5b4e68c0193a41c80209a9f: 1, UI/Custom/Hud/nv_debug_hud.ui

But I still get kicked, with the message he couldnt find the Asset:
2026-01-26 12:51:01.7518|INFO|HytaleClient.Application.AppGameLoading|System.Exception: Could not find document Hud/nv_debug_hud.ui for Custom UI Append command. Selector: System.Exception: Could not find document Hud/nv_debug_hud.ui for Custom UI Append command. Selector:

Normal Pages are loading fine.. I am on the pre-release

Am I referencing it wrong?
uiCommandBuilder.append("Hud/nv_debug_hud.ui");

fading bolt
#

i'm gonna post this here in case anyone want to do what i was trying to do.

to prevent npc spawning, disable npc spawn, there is a command named /spawning disable, and you can also disable it in code using world config

high bane
#

Anyone know how to grab a translation string for a built-in item, like, from an ItemID? Or item.getItem().getTranslationKey(); ?
AH! I got it. It really is Message.translation(translationKey) : ```java
private Message getDisplayName(ItemStack item) {
final String translationKey = item.getItem().getTranslationKey();
return Message.translation(translationKey);
}

alpine creek
humble plume
#

yo, im trying to remove block shadows from below a platform:
is there some kind of light source block, night vision-like potion effect or other ways to achieve this?

alpine creek
#

Is there a way to hot reload changes in UI files?

alpine creek
# onyx sphinx Yes

Maybe it's the name "nv_debug_hud"? Try to name it with capital letter at the start, and all capital after each "__"

high bane
calm robin
#

Is there any event that precedes onPlayerReady? I need to make it so that when a player joins a server, they are automatically redirected to another server, but without loading anything from the server.

calm robin
#

Thanks

muted trout
#

Is there a way to launch multiple Hytale clients at the same time to test multiplayer logic for my mod?

distant pollen
#

Hey guys, how can i change text colors in chat? ยงd* or ยง6 dont work

humble plume
thorn python
#

Hey! Is it possible to modify already existing UI? Like user inventory or chest inventory

humble plume
thorn python
#

I mean the functionallity

#

For example when i press the sort button, send a message

#

instead of sorting

humble plume
#

maybe you could hook into inventory events or smth if its handled server side

muted trout
humble plume
#

buy a second pc ๐Ÿ‘

alpine creek
delicate patio
#

Iโ€™m running into a bug in my code, does anyone have ideas on how to fix it?
I have a world that contains two sub-worlds (world1 and world2). In world1, I assign a custom Component to a block, and Iโ€™m sure that operation works correctly. However, if I switch to world2 and then go back to world1, it looks like that block has lost the Component. Any idea?

buoyant sable
#

Has anyone found out how to open a UI or run a command from a block interaction?
I have been searching in the asset editor but I haven't found it yet

alpine creek
dim osprey
#

I got server transfers working with synced inventories yay

alpine creek
# delicate patio Iโ€™m running into a bug in my code, does anyone have ideas on how to fix it? I ha...

I made a custom state for my custom BlockState for the block with CODEC and register it like this:
this.getBlockStateRegistry().registerBlockState(CustomBlockState.class, "Example_State", CustomBlockState.CODEC, CustomBlockState.Data.class, CustomBlockState.Data.CODEC);

CustomBlockState.CODEC - it's about block specific block in the world.
CustomBlockState.Data.CODEC - it's general for all blocks of this type.

cosmic pond
#

Irie will return with the Hytale devkit plugin for IntelliJ.

calm robin
# tawdry lion PlayerConnectEvent

I tried it, but I haven't actually had any success yet. It's redirecting the player before completing client authentication with the server, which ends up breaking the connection.

private void onPlayerSetupConnect(PlayerSetupConnectEvent event) {
        if (connectionConfig == null) {
            return;
        }

        // Verifica se o jogador tem dados de conexรฃo referrals
        byte[] referralData = event.getReferralData();
        if (referralData == null || referralData.length == 0) {
            scheduleRedirectToLobby(event);
            return;
        }

        String token = new String(referralData, java.nio.charset.StandardCharsets.UTF_8);
        boolean valid = ReferralTokenService.validateToken(token, connectionConfig.getSecret(), event.getUuid());
        
        if (!valid) {
            scheduleRedirectToLobby(event);
        } else {
            LOGGER.atInfo().log("Player %s authorized with valid token", event.getUuid());
        }
    }

    private void scheduleRedirectToLobby(@Nonnull PlayerSetupConnectEvent event) {
        LOGGER.atWarning().log("Invalid or missing referral token for player %s. Will redirect to lobby in %d seconds.", 
                event.getUuid(), REDIRECT_DELAY_SECONDS);
        
        redirectScheduler.schedule(() -> {
            event.referToServer(connectionConfig.getLobbyHost(), connectionConfig.getLobbyPort(), null);
        }, REDIRECT_DELAY_SECONDS, TimeUnit.SECONDS);
    }```
#
[2026/01/26 12:51:28   INFO] [SessionServiceClient] Exchanging authorization grant for access token
[2026/01/26 12:51:33   WARN] [SessionServiceClient] IO error while exchanging auth grant: request timed out
[2026/01/26 12:51:33 SEVERE]     [HandshakeHandler] Failed to exchange server auth grant for access token
[2026/01/26 12:51:33   INFO]               [Hytale] Disconnecting with the message: Server authentication failed - please try again later```
#

I believe that using onPlayerReady would be ideal, right?

delicate patio
surreal flame
#

Anyone knows how i can adjust the Text from "Press F to interact" to "Press F to <text>"? i have a custom item and a custom interaction class. i cant find any clue but on chests you have "Press F to open <itemname>"?

coral zealot
#

Hey. How can i cast a context in a command to a player?

sand prism
#

Hey, i have a problem on my server while loading the Memories plugin from hytale, it say failed to load plugin, does anyone already had this problem and can help me please ?

high bane
glossy shadow
calm robin
minor oasis
#

I'm getting this error today, somebody know what's up?

[2026/01/26 13:21:23   WARN]          [AssetModule|P] Skipping pack at Hytale_Shop: missing or invalid manifest.json
[2026/01/26 13:21:23   WARN]          [AssetModule|P] Skipping pack at MPC_LivingLandsReloaded: missing or invalid manifest.json
glossy shadow
#

It's not an error

#

Just means there is no manifest in these folders

minor oasis
#

there are tho

#

One is the vanilla Hytale folder, one is my mod. Both contain the JSON files.

It seems to be related to CustomUI stuff, but haven't figured it out yet.

glossy shadow
#

what do you expect now? no one can see how they looks like

slate lake
#

missing or invalid manifest.json

minor oasis
#

They are not invalid.

glossy shadow
minor oasis
glossy shadow
#

When you get these messages, the manifest file is missing or invalid, as no one knows how they looks for you, no one is able to help you ๐Ÿคทโ€โ™‚๏ธ

minor oasis
glossy shadow
#

In my Hytale_Shop folder is no manifest.json ๐Ÿคทโ€โ™‚๏ธ

finite pond
minor oasis
glossy shadow
#

That warning message is not a problem or error, it just means there is no manifest or it's just invalid. All folders in the mods folder will be searched for assets ๐Ÿคทโ€โ™‚๏ธ

undone oar
#

randomly got an idea of a mod that detects when a player is out of combat and then gives them infinite stamina based on that. might spend some time making it

minor oasis
#

Also, here's the content of my manifest:

{
  "Group": "MPC",
  "Name": "LivingLandsReloaded",
  "Version": "${version}",
  "Description": "Survival mechanics mod with hunger, thirst, and energy systems",
  "Authors": [
    {
      "Name": "Living Lands Team"
    }
  ],
  "Website": "",
  "ServerVersion": "*",
  "Dependencies": {},
  "OptionalDependencies": {},
  "DisabledByDefault": false,
  "Main": "com.livinglands.LivingLandsReloadedPlugin",
  "IncludesAssetPack": true
}
graceful ridge
#

Trying to get my custom npc to spawn in zone0 is absolutely doing my head in. On every server restart I just get this error: Caused by: java.lang.IllegalArgumentException: Fae_Wild does not exist as a role!
I'm thinking it's just failing to validate the role, probably a syntax error, but asset editor won't say that it's invalid or where the issue is.

glossy shadow
#

show some code

delicate patio
finite pond
high bane
#

Anyone else got issues authenticating a server or it just me because I'm restarting too often >.<

minor oasis
finite pond
#

Try removing the -beta and test the mod again

minor oasis
glossy shadow
high bane
#

Ok, well... sadge I guess, but at least I'm not the only one.

undone oar
restive aurora
#

[2026/01/26 13:45:17 INFO] [SessionServiceClient] Creating game session...
[2026/01/26 13:45:22 WARN] [SessionServiceClient] IO error while creating session: request timed out
[2026/01/26 13:45:22 WARN] [ServerAuthManager] Trying force refresh of OAuth tokens because game session creation failed
[2026/01/26 13:45:22 INFO] [ServerAuthManager] Refreshing OAuth tokens...
[2026/01/26 13:45:22 INFO] [SessionServiceClient] Creating game session...
[2026/01/26 13:45:23 WARN] [SessionServiceClient] Failed to create game session: HTTP 429 - Rate exceeded.
[2026/01/26 13:45:23 WARN] [ServerAuthManager] Game session creation with force refreshed tokens failed
[2026/01/26 13:45:23 WARN] [ServerAuthManager] Failed to create game session
Browser authentication failed. Check server logs.

Any clue about that?

glossy shadow
#

Wait few minutes and try again

high bane
#

Literally everyone can't play multiplayer right now, it's not just us devs ๐Ÿ˜ข

restive aurora
#

Welp. I should wait

restive aurora
opal glen
#

hytale api is fked atm

high bane
steep spade
#

I have the same error here

restive aurora
#

HAHHAA

opal glen
#

there api is cooked

#

anyways good night lads

pine holly
#

devs knew i had to go back to work so sent you all to suffer with me muahaha

waxen surge
#

cant do online?

minor oasis
# glossy shadow do your assets getting downloaded when you join ?

If by downloaded you mean cached, this is the output I get:

2026-01-26 14:47:26.6605|INFO|HytaleClient.Application.AppStartup|Added cached reference to asset fadc6a4b678ab6dcfc88999ecc063791ade43425862e39bb8f1cbe4ee81b9ca6: 1, UI/Custom/Hud/LivingLandsHud.ui 
2026-01-26 14:47:26.6686|INFO|HytaleClient.Application.AppStartup|Added cached reference to asset b902795e96f8e6c24da7c3ff1e47c65f16168627c85bb5c95c01bfaa02281a92: 1, UI/Custom/Hud/ProfessionsPanel.ui 
2026-01-26 14:47:26.6686|INFO|HytaleClient.Application.AppStartup|Added cached reference to asset e7676fb95e760d29f22f87c3cf8aac239a01d3eb19852a9d2f977d81b869d84e: 1, UI/Custom/Hud/MetabolismHud.ui 
2026-01-26 14:47:26.6686|INFO|HytaleClient.Application.AppStartup|Added cached reference to asset 9b6f5af9e0c8245ae00ae16405f20116e81c1c76bd5847900ec54711ace7c2cb: 1, UI/Custom/Hud/
glossy shadow
#

then you can ignore the warn messages

waxen surge
#

online play is disabled currently?

pure thicket
#

do u guys use hyfixes?

sterile raft
high bane
#

I just restarted my server and it's ok. Hytale servers hiccup and everyone's going mad ๐Ÿคฃ

finite pond
glossy shadow
#

everything like

1.0.0-alpha
1.0.0-alpha.1
1.0.0-beta
1.0.0-rc.1
1.0.0

1.0.0+20130313144700
1.0.0-beta+exp.sha.5114f85

is valid lol

finite pond
minor oasis
glossy shadow
#

just saying he can ignore these warnings because they are only for the mod folders, not the plugin jar

#

i mean it looks weird but it's normal lol

twilit mantle
gaunt forge
#

i guess if we need to store server-level data we can just do whatever we need to for the time being. like writing a json file or something.

unkempt musk
patent rock
#

Is there any type of unique identifier im able to use? i.e serverip/id

sterile raft
#

is there an event that fires before player disconnect?
I want to get player's inventory before they quit basically

round cove
#

Is anyone looking for a Brazilian developer for their Hytale project? I'm available.

sterile raft
glossy shadow
#

i mean maybe DrainPlayerFromWorldEvent
idk if that get's fired when disconnecting

sterile raft
#

eh should be fine regardless ig for my use case

will check it out ig thanks

drowsy solar
#

why do people ever need to get some player reference from <PlayerRef>? where does that ocme form?

#

omg the channel isnt acitve for the first time in the 13 days hytales existed

high bane
#

Hmmmmmmm does anyone know if you can persist metadata changes on an item without replacing it in the hotbar? I think I initial did this because otherwise durability restores weren't working, but it's completely deleting any Q charges when I do this ๐Ÿ˜ข

drowsy solar
#

also do yall really make a new class every time you need a new say component? I thought I was just being overcomplex when i automated turning addComponent("Thing", "hi", "string"); in javascript instead of a new class? do yall just, make new classes?

minor oasis
versed sleet
#

[HandshakeHandler] Server session token not available - cannot request auth grant

are hytale auth servers off? just restarted my server and now i get this

drowsy solar
high bane
versed sleet
#

all that matters honestly lol Hypixel_BigShy

high bane
#

nope, had that earlier and people seem to continue having it in #game-discussion so...

minor oasis
drowsy solar
#

oh wait, do you get intellisense or whatever from just registering events? you can see the type in Java automatically???

sterile raft
drowsy solar
#

maybe Java has a few advantages over JS

#

also, do you need to use the asset editor alwas to make a new entity? or can you reuse assets temporarily?

#

does anybody know how to register a new entity?

dusty venture
#

in the main plugin class start()
getEntityStoreRegistry().registerComponent()

I forgot the params though

drowsy solar
#

component? Ik that, II mean an entiy (I just made a registry system for components)

#

you gotta pass a whole damn class, its horrifying

dusty venture
#

oh i cant read mb

onyx sphinx
keen grove
drowsy solar
plain pebble
#
getEventRegistry().register(PlayerChatEvent.class, "chatChannel", event -> {
                GameEvent gEvent = new GameEvent(EventType.CHAT_EVENT, "<Hy-" + event.getSender().getUsername() + "> " + event.getContent(), null, 0);
                sendEvent(gEvent);
            });

why is the event not being called guys?

shut widget
#

anyone has experienced problems when using subcommands & aliases for the subcommands ?

drowsy solar
frosty scroll
#

is there a way to respawn all the loot chests on the map, server side? I feel like once a player clears a mob camp and loots the chest the game whould regenerate the chest every so often? Sort of like an MMO? At least that is how I am trying to confgure my hosted server ๐Ÿ˜„

shut widget
#

i made a better explanation with perplexity: I'm encountering a command parsing issue with Hytale's command framework when using AbstractAsyncCommand with subcommands.

The Problem
When I execute /f c, I get this error:

The wrong number of required argument was specified. Expected: 0, actual: 1
Usage: /f
f create <name>
f disband
f info [--name=?]```
...
The framework treats "c" as an argument to the root command instead of attempting to match it to a subcommand like create or chat.

My Setup
I have a FactionRootCommand extends AbstractAsyncCommand with multiple subcommands registered via addSubCommand():
โ€‹

```java
public FactionRootCommand(@Nonnull FactionsPlugin plugin) {
    super("faction", "Faction root command");
    this.plugin = plugin;
    
    // Register subcommands
    CreateSubCommand create = new CreateSubCommand(plugin);
    InfoSubCommand info = new InfoSubCommand(plugin);
    ChatSubCommand chat = new ChatSubCommand(plugin);
    // ... more subcommands
    
    // Aliases
    info.addAliases("f");  // โ† This seems to cause the issue
    list.addAliases("ls");
    
    this.addSubCommand(create);
    this.addSubCommand(info);
    this.addSubCommand(chat);
    // ... etc
}

@Override
protected CompletableFuture<Void> executeAsync(CommandContext ctx) {
    // Shows help text when no subcommand provided
    ctx.sendMessage(Message.raw("Faction Commands Help")...);
    return CompletableFuture.completedFuture(null);
}

Root Cause Analysis
I believe the issue is caused by info.addAliases("f") creating a conflict where /f is both the root command name AND an alias for the info subcommand. This appears to break the subcommand dispatch logic.

minor oasis
shut widget
#

Questions
Is aliasing a subcommand with the root command name supported? Should /f be able to simultaneously be the root command and an alias for a subcommand?

How does subcommand matching work? Does it support partial matching (e.g., /f c โ†’ create), or does it require exact names/aliases?

What's the proper pattern for default behavior? If I want /f alone to show faction info but /f create to work, what's the recommended approachโ€”should I handle this in the root's executeAsync() or use a different pattern?

Why does the framework report "Expected: 0, actual: 1"? It seems like the argument "c" is being passed to my root command's executeAsync() even though I have no required arguments defined on the root command itself.

Any guidance on the correct architecture for this use case would be appreciated.

finite pond
drowsy solar
#

yeah isnt register just per instance, like register for a player, and registerglobal is for the handler?

sterile raft
#

ig I can't access player's inventory when they leave
any ideas what are some workarounds to save inventory properly?
I need to save it in database so I'd rather not spam it like crazy

drowsy solar
plain pebble
onyx sphinx
arctic mist
undone oar
latent turret
#

is there a place i can find a raw list of every item in the game?

shut widget
#

the main command alias is set and working correctly but i'll try for subcommands to set the aliases at class level ๐Ÿ™‚

unreal crest
#

hey, do you know how to unregister an entity system? in entity store registry

keen grove
shut widget
plain pebble
shut widget
#

but i think they are making conflicts

sterile raft
frosty scroll
keen grove
warm sedge
finite pond
#

I take zero credit

plain pebble
#

well, now i am 1 step further in hytale minecraft crossplay

finite pond
#

I expect my name to be listed... lmao jk

sterile raft
plain pebble
#

first version is still being reviewed on modrinth

shut widget
#

maybe a mistake or smth like that

warm sedge
sterile raft
#

requires PlayerStorage yeah
I can set a empty one with getPlayerStorage but idk how to get the one from actual player
sorry I really can't find anything related to this

warm sedge
#

^

sterile raft
#

oh I probably wasn't clear then my bad
I am not having issue with inventory saving/loading
rather that I can't get the players current inventory when they leave the server

#

that's wild hahaha

warm sedge
#

@sterile raft when a player leaves the server, it calls the playerstorage to SAVE the player data, that is how hytale saves it. if you replace it you are responsible for saving and loading

sterile raft
#

I see okay
thank you

sorry guys really really new to all this โค๏ธ

pine holly
#

you're learning we all are

finite pond
sterile raft
unkempt musk
#

I was wondering yesterday how some people are already making such good mods, did they get their hands on the decompiled server before the release? Or how on earth do they have so much information about all the methods and structure of hytale already. Or are they just built different ๐Ÿ˜„

grave peak
dusty venture
#

some modders did get access before the launch

#

some are just built different/lucky

sterile raft
brisk basin
#

MC modding exp comes handy in this case

finite pond
drowsy solar
finite pond
#

I check every few days for a mod for the chests to be per player loot haha ๐Ÿ˜„

pine holly
#

bro just make an ender chest

dusty venture
#

thats not-... thats not what he means

drowsy solar
pine holly
#

you guys seriously can't take a joke huh

warm osprey
#

how i can make clickable links?!!!!

drowsy solar
pine holly
#

i said craft an item from another game but i get it ig

drowsy solar
#

???

finite pond
#

It was pretty impressive how quickly people had ender chests here

pine holly
#

i'm not explaining this any further

dusty venture
#

so you think he means enderchests but in hytale? now youve really lost me

frosty scroll
drowsy solar
drowsy solar
warm osprey
#

how i can make clickable links?!!!!

drowsy solar
warm osprey
drowsy solar
#

They do? Where can you put a link what

keen matrix
#

Quick question: what about items in your hand? Can I also create an interaction if I have a specific item in my hand and right-click while holding the item? How do I intercept this right-click so that I can open my specifically created UI, for example? If so, could you please tell me how, because I can't figure it out...

finite pond
#

In chat you should be able to do links

frosty scroll
#

as the game stands now, once a player wipes the camps. the chests stay emty for that plater, yes I am running the mods so there is chest loot per player. the NPCS respawn, but the chests (loot) does not. It would be nice to respawn the loot chest at a much slower rate and keep NPC resppawn the same. similar to other MMOs

drowsy solar
#

Does it confirm before taking you out?

drowsy solar
dusty venture
rustic rock
#

Guys, to use my world save and my character's items, all I have to do is save the universe folder. ?

dusty venture
#

might also wanna save the memories folder (i forgot if theyre in the universe folder or not)

finite pond
pine holly
#

yo, why did i get pinged in gen just because my name is vi

frosty scroll
rustic rock
drowsy solar
frosty scroll
#

right now the mobs auto respawn (which is good). just need a way to do the same for the loot chests inside the same mob camps. but on different timers. its a standard video game request man, if you run servers lol

dusty venture
#

what he means is that a player can just run a specific route looting a bunch of chests on repeat every now and then; basically infinite loot. wondering why you would want that rather than explore more?

warm osprey
drowsy solar
dusty venture
#

well, if people wanna play like that let them i guess

drowsy solar
frosty scroll
#

with HyFactions and what I am trying to setup, players will be local territory

dusty venture
keen matrix
frosty scroll
#

its just odd the mob camp nps auto respawn but the chests do not.

finite pond
drowsy solar
dusty venture
sterile raft
#

I still get null for holder though

    public void onPlayerDisconnect(PlayerDisconnectEvent event) {
        UUID playerUUID = event.getPlayerRef().getUuid();
        Holder<EntityStore> holder = event.getPlayerRef().getHolder();```
drowsy solar
sterile raft
#

yeah figured, any workarounds you know of?

dusty venture
sterile raft
#

will check if that one fires

waxen heath
#

Anyone figure out how to make a window pop with a keybind instead of hotbar yet?

thick cypress
#

Maybe someone knows if there is any way to turn off construction in the world? Or only through plugins?

frosty scroll
# drowsy solar Should it be custom chests they can't break or put loot back in? How do you hand...

I messaged the HyFactions author, asked him if it were possible to make the chests "interactive" when they are under the red "War Zones". then I could claimn the big mob camps as red zones. players could not destory the blocks. only go in, fight the mobs (and each other) and loot the chests. right now if I do that, they can fight the mobs and each other, not destroy the blocks, but cannot access any of the loot chests

drowsy solar
frosty scroll
#

it would be nice to have chests interactive on the green safe zones also.

dusty venture
#

wdym by interactive

#

you cant open them now?

frosty scroll
#

right when when you claim either. you cannnot access any crates ๐Ÿ™

dusty venture
#

I mean

#

so suppose you can open them; would you want their loot to regenerate (in those red zones)? thats what you said earlier

frosty scroll
#

that would be awesome. yes.

sterile raft
#

does holder contain uuid of player?

dusty venture
#

so you want warzones with loot for players to fight over aaaaaaaah that is understandable

dusty venture
drowsy solar
sterile raft
dusty venture
#

well im pretty sure the Player has a getUuid function

weary totem
#

Does anyone have an idea of how to limit world sizes?

drowsy solar
sterile raft
#

ig this would do it


        Holder<EntityStore> holder = event.getHolder();
        PlayerRef player = holder.getComponent(PlayerRef.getComponentType());
        UUID playerUUID = player.getUuid();

let's hope it doesn't die

versed sleet
#

so be careful about how much you use it ๐Ÿคท๐Ÿปโ€โ™‚๏ธ

sterile raft
#

^ hence why I went for playerref, not deprecated
yet. ๐Ÿ˜‚

round cove
#

Does anyone have the server jar file for HytaleServer.jar that they could please send me?

sterile raft
#

DrainPlayerFromWorldEvent doesn't seem to fire on disconnect weirdly enough

twilit mantle
heavy plank
#

Is there a way to register system only for one world or instance?

drowsy solar
sterile raft
#

how did you handle it?
saving for example on player disconnect and such

twilit mantle
#

that is a work in progress, need to write a plugin i think. Am currently piecing everything together :D
first hurdle was setting up player inventories that are shared by the servers in the first place

sterile raft
#

I can't seem to find an event I could use
because on player disconnect, it's already unloaded
and on world drain it doesn't fire on quit so

twilit mantle
restive valve
#

I've installed a mod on my server, then uninstalled it. I've removed the .jar and any/all of it's config/folders from /mods.
Now, I'm seeing errors related to that now-uninstalled mod on the server console, after many many shutdown/restarts of the server.
Is there any way to remove/undo this persistence change that the mod made to the server? And/or where can I look within the folder structure of the server regarding where/what might have been changed?

fickle pecan
#

i cant have more than 1 of the same component type on a player right?

dusty venture
drowsy solar
dusty venture
dire acorn
#

Is there any component that has block information?

safe pendant
#

Can we set a block limit for the world we create, like a world border in Minecraft?

misty sphinx
inland palm
#

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

fickle pecan
heavy plank
dusty venture
misty sphinx
fickle pecan
misty sphinx
# heavy plank yeah, like right now i just register it to EntityStoreRegistry, i think it regis...

I think this shines a light, although I'm not sure if you can do .getRegistry()
But it should light a path

  1. Listen for StartWorldEvent (dispatched in World.java:onStart() ~lines 300-400).
  2. Filter by world: if (event.getWorld().getName().equals("your_world")) { ... } or event.getWorld().getWorldConfig().getUuid().equals(UUID.fromString("...")).
  3. Access store: EntityStore entityStore = event.getWorld().getEntityStore();
  4. Register: entityStore.getStore().getRegistry().registerSystem(MySystem.class, new MySystem()); (Store exposes ComponentRegistry internally; proxy delegates here).
grave peak
#

I've only looked at some of the decompiled code so far: Is per-item scripted affects anywhere or is that achieved through the asset editor somehow?

dusty venture
fickle pecan
dusty venture
#

hmmm interesting

fickle pecan
#

im current busy with stats and abilities

#

my repo is public if youre interested :)

dusty venture
#

same username?

misty sphinx
fickle pecan
#

in my bio

dusty venture
sterile raft
supple stratus
#

hi everyone

#

does there is somes documentations link pinned somewhere ?

fickle pecan
analog phoenix
#

say I wanted to access the target entities health, how would I do that?

 public FreezeCommand(@Nonnull String name, @Nonnull String description) {
        super("freeze", "Freezes the specified player");
        playerArg = withRequiredArg("player", "Target player", ArgTypes.PLAYER_REF);
    }

 @Override
    protected void executeSync(@Nonnull CommandContext commandContext) {
        CommandSender player = commandContext.sender();
        PlayerRef targetPlayer = playerArg.get(commandContext);
        //Ref<EntityStore> entityRef = targetPlayer.getReference();


    }

I can't just do targetPlayer.setHealth, which is why I'm confused.

misty sphinx
dusty venture
fickle pecan
analog phoenix
fickle pecan
#

where stats is the statmap

silver belfry
#

Thanks a LOT for that! Been searching for something like that for days

#

Now I have working 3D models!!!

fickle pecan
dusty venture
silver belfry
grave peak
jagged lintel
#

Wondering if there is a reliable way of getting death messages from the server side
Without it causing translation keys to show up

fickle pecan
# analog phoenix thank you, i just found something on the docs do you also have any idea on how ...
 private static void ModifyMovement(Player player, @NonNullDecl Store<EntityStore> store, @NonNullDecl Ref<EntityStore> ref, PlayerRef playerRef, boolean modify, float modifierValue) {
        MovementManager movementManager = store.getComponent(ref, MovementManager.getComponentType());
        MovementSettings movementSettings = movementManager.getSettings().clone();
        float speedIncrease = 1 + modifierValue;

        movementSettings.baseSpeed = 5.5f;
        if(modify){
            movementSettings.baseSpeed *= speedIncrease;
        }
        PhysicsValues physicsValues = store.getComponent(ref, PhysicsValues.getComponentType());

        movementManager.setDefaultSettings(
                movementSettings,
                physicsValues,
                player.getGameMode()
        );
        movementManager.applyDefaultSettings();
        movementManager.update(playerRef.getPacketHandler());
        player.sendMessage(Message.raw("Applied MoveSpeed modifier: " + modifierValue));
    }

my method i use.
basically change the config (settings)

analog phoenix
rocky python
#

hello guys, is there a way to disable mod in a specific world in server?

misty sphinx
grave peak
#

I saw there was a little visual scripting system, but I haven't used it.

rocky python
#

is there a way to disable mod in specific worlds in server? (not singleplayer)

misty sphinx
rocky python
hallow fractal
#

how to spawn npc's / entitys with the api?

last harness
#

Hello! I'm trying to develop a custom plugin/mod for my Hytale server.

I've set up the Maven dependency as shown in the official documentation:

<dependency>
<groupId>com.hypixel.hytale</groupId>
<artifactId>Server</artifactId>
<version>2026.01.22-6f8bdbdc4</version>
<scope>provided</scope>
</dependency>

However, I'm getting this error when compiling:

"Could not find artifact com.hypixel.hytale:Server๐Ÿซ™2026.01.22-********
in hytale-release (https://maven.hytale.com/release)"

Questions:

  1. Is the Maven repository publicly available yet?
  2. Do I need special access or credentials?
  3. Is there documentation for plugin/mod development?

My goal is to create a lobby system with NPCs that teleport players
between worlds. Any guidance would be appreciated!

Server version: 2026.01.24

zinc flint
#

Use server jar you get from setting up a localhost server

lethal rover
sinful storm
#

Specific players report their crops don't grow, they're watered etc, anyone know if this is an hytale issue or should be looking further?

misty sphinx
#

I think 1 is the most practical you can get

copper heron
#

Is there an ArgsType that supports multi worded string?

misty sphinx
last harness
solemn trellis
#

is there special Character or Emoji support for Text chat? if so where or what?

misty sphinx
# copper heron Is there an ArgsType that supports multi worded string?

No, there isn't.
You can try something like this

@Nonnull
protected CompletableFuture<Void> execute(@Nonnull CommandContext context) {
// Assume arg at position 0 is single-word prefix
String prefix = this.myArg.get(context); // e.g., ArgTypes.STRING

// Get remaining input after arg position (handles multi-word)
String remainingInput = context.getParserContext().getRemainingInputAfter(1); // After index 1
String multiWord = remainingInput.trim(); // Full multi-word string

// Use multiWord...
return CompletableFuture.completedFuture(null);

high bane
#

Has anyone attempted to apply poison/burn to a mob? I'm doing addEffect() on the entity, it's applying poison, turning green, damaging (not showing damage numbers, sadly) for the 15 seconds it should and then it removes the green color but not the "skull particles" around it. Tried everything I could and I can't get it to clear those particles so the mob just keeps that effect forever ๐Ÿ™

misty sphinx
high bane
earnest silo
#

Hello. How do I upload prefabs to the server? Which directory?

haughty anchor
#

Anyone been able to get something like a multi-line $C.@TextField working? I don't think it's possible with out current options without writing your own, right?

quick pendant
#

Where are the plugins located? I wanna add some to my server.

haughty anchor
#

should just be a 'mods' folder in your server, you can place them in there

heavy plank
glass charm
#

So I spent a while in the asset editor creating a mod and now I canโ€™t use any exploration worlds ๐Ÿ™ anyone know why?

scarlet cradle
#

I deleted eyespy off of my server and now my server fails to load, is my save corrupted?

bleak lynx
#

did anyone managed to catch the craftevent? its not working for me

misty sphinx
heavy plank
civic zephyr
misty sphinx
civic zephyr
#

Its an emoji

misty sphinx
civic zephyr
#

The weather system ticks every world it just fetches a resource per store

drowsy solar
#

how does the worlds system work? is it copies of the base world or can you do dimensions?

civic zephyr
#

You can generate whatever world you'd like

worthy vessel
#

How do I fix this error?

Could not find document HUD/LevelingCore/xpbar.ui for Custom UI Append command. Selector:
I cant join my own server

pine holly
#

imaginaaation

fickle pecan
#

my face when i cant use node system cause im on linux :(

civic zephyr
#

You can make worlds with V2 and generate them, register your own world chunk generator in code and do whatever you'd like there, lots

solemn coyote
#

is there any example project for idea where I can learn where to put assets?

civic zephyr
#

You can create, remove, and send players to worlds whenever you'd like

drowsy solar
drowsy solar
civic zephyr
#

Hytale has a multithreaded architecture

drowsy solar
#

well yeah, but everything eventually lags no?

civic zephyr
#

Each world gets its own thread if possible

misty sphinx
civic zephyr
#

Well yeah haha theres always a limit, if you're not keeping old worlds or having a bunch of players in different worlds you should be alright in regards to the upper limit

drowsy solar
civic zephyr
#

You can't modify rendering related behaviors since those are on the client

fickle pecan
#

hey question. is heavy on Hytale to getComponent on a tick?

minor oasis
civic zephyr
#

But in regards to making custom shaders and things like that you can't do that no

#

Particles and such can be made

drowsy solar
#

well yeah, thats like, one of the advertised modding points, like how much can you configure the cleint screen view?

#

oh wait, you can always spoof stuff to clients, so ig for this idea jsut spoof that all blocks are some white texture and that theres no entities?

civic zephyr
civic zephyr
stone bay
#

Has anyone done any custom player animations. I added new item is their any way to add custom player animations for first and 3rd person. Any documentation or any help is appreciated

civic zephyr
#

You can also just get rid of entities regularly per world serverside

#

Or make a world composed of white blocks

drowsy solar
civic zephyr
#

Transition? Transition what?

drowsy solar
#

between worlds?

civic zephyr
#

Entities? Im not sure what you mean

minor oasis
drowsy solar
minor oasis
drowsy solar
versed sleet
#

is there any way to spawn an entity with a specified player name in multiplayer?

#

so i can have a npc with a player skin

tired vine
#

is the stamina a client side thing? cuz i cant find anything to modify it

drowsy solar
civic zephyr
tired vine
civic zephyr
#

You need to save the PlayerSkin somewhere (It is not automatically serialized) and change the default player model definition

civic zephyr
drowsy solar
versed sleet
#

cant do like /npc spawn <playerName> <useSkin=true> kind of stuff basically yet

civic zephyr
tired vine
civic zephyr
#

You can decompile it and poke at what I do

high bane
#

The fact that the Q charge is wiped any time the hotbar item is updated or switched is such an annoyance. Ugh.

drowsy solar
tired vine
civic zephyr
fickle pecan
#

is there an existing feature in place that detects the proximity of entities or not?

tame swallow
#

Ey Leute was soll das ????

misty sphinx
#

according to my search,


Stamina is likely client-side only (UI/prediction for sprinting/actions), with server validation via packets like MouseInteraction or InteractionManager (server/core/entity/InteractionManager.java: full file) for movement limits. Client handles visuals (e.g., bar depletion), server enforces via speed caps or cooldowns (e.g., CooldownHandler in interactions).```

Weird
civic zephyr
#

There is

#
DefaultEntityStatTypes.getStamina();

Returns you the index of the stamina stat type

drowsy solar
#

wait when yall decompress hytal,e do you include fastutils?

civic zephyr
#

Are you using vineflower

dusty venture
drowsy solar
#

I am, but i got a few mem errors durignit and just did hhypixel.hytale

dusty venture
#

yea thats enough

civic zephyr
#

I decompile the whole thing in one go, but make sure you reserve more than the default 4G

dusty venture
#

fastutil doesnt have anything really that matters

tired vine
#

is stamina also a entity?

drowsy solar
#

yeah but curiou cus it takes so long

civic zephyr
haughty anchor
#

Sorry to repeat my question, but is there an available multi line text input? I tried searching everywhere but couldn't find one.

civic zephyr
#

Do you have a Store<EntityStore> and a Ref<EntityStore> ? I can write you an example, just need to know what you've got access to

drowsy solar
civic zephyr
#

"Adding floats" ? Like arbitrary data?

drowsy solar
#

yeah

civic zephyr
#

That would be best done with a custom component

dusty venture
#

dont add anything to entities; wrap it in components. thats the entire point of ecs. then add the components to entities

drowsy solar
#

ah, so I was right, but do yall really make a new class for each component? it seems so awful to do

misty sphinx
tired vine
tired vine
#

why is esc so hard ๐Ÿ™

drowsy solar
#

really? omg

civic zephyr
#

Its not

drowsy solar
#

its simple but very bloated, I suddenly am very happy I chose to use graalvm instead

wooden sky
#

Anyone know how the CraftingManager is used by the crafting benches? Trying to create a block that automatically crafts an item using items from nearby chests. Like a combination of a processing bench and a crafting bench. Just can't seem to track down how or where the CraftingManagers methods are being used

civic zephyr
tired vine
heavy plank
civic zephyr
tired vine
#

it could be possible that its not possible due to client ye indeed

#

i mean idk

drowsy solar
#

its very possible, just tell the cleitn your stamina isnt empty, its at 1, but remove the bonus, and then as logn as they're "sprinting", wait until the regen is full,

tired vine
#

maybe ye

drowsy solar
#

as in spoof to the rest of the server they're no longer spirnting, but tell em tehy have 1 stamina left, then as logn as they keep "sprinting" and its full again, stop spoofing

#

the only issue is client fx if it increasees fov but see waht server scrwery you can do

#

ngl playing the game you're modding is kinda important

tired vine
drowsy solar
#

well no, I mean as in, I have played the game uhh, for like 10 minute, and just mind omse tress, went in acve, mined osme orses, came out, find some camp, raided it, fell in pit fall, then foudn a ruin strucutre,s got attacked by a goalem some and got out

high bane
#

Is there a way to add permanent particle effects to a weapon directly from code, without duplicating the item's asset jsons in my plugin resources? And I mean, like, programmatically (doing a weapon upgrade system, and the effect is chosen by the player)

drowsy solar
#

my setup does amke playing the game hard, btu imo its abit important to know how the gameplay of the agme you're modding works at all

tired vine
#

what?

#

lol. i saw people coding the game the moment the game got released

drowsy solar
tired vine
#

like wait bro DO U EVEN LIKE THE GAME?

uneven shoal
pine needle
#

How do I launch the game with the console enabled?

waxen heath
#

go to settings and at the very bottom there is a debug toggle.

tired vine
#

guys i have an idea. Im just gonna steal code and edit it

high bane
pine needle
drowsy solar
#

I can go ltry to dig it up but gonna take a wihle-

waxen heath
pine needle
#

diagnostic mode?

waxen heath
#

exactly

#

then you can hit "~" in game and open console

pine needle
#

Got it, thank you

bronze granite
#

I need help with the plugin, I want to change one command in command.class
pay $5

tired vine
#

why are decompilers so bad

high bane
proper shoal
#

is there anyone i can consult about an idea i have? i don't have very extensive java knowledge and i don't even know where to start in regards to the idea i have if anyone is willing to give any advice or guidance.

high bane
#

Didn't find BytecodeViewer yet? ๐Ÿคฃ

drowsy solar
#

does anybdoy know how to make a new block and/or entity and just reuse assets?

tired vine
bronze granite
uneven shoal
#

i think its 20$ of work

bronze granite
#

okey

high bane
#

Ah well I absolutely definitely do not directly use decompiled code so I wouldn't know.

bronze granite
#

go cry

high bane
misty basin
#

if its 2 minutes of work just use ai

minor cloud
#

hy

pine needle
#

BRUH, why is the advertisment filter so strict. I cant even say you can d-m me for help??

bronze granite
#

because someone who did it before needed so much time

pine needle
minor cloud
#

pls someone can help me

high bane
proper shoal
bronze granite
#

anyone want to help me?

high bane
uneven shoal
high bane
pine needle
high bane
drowsy solar
uneven shoal
#

has anyone done bad apple already in hytale?

high bane
misty basin
pine needle
high bane
#

We wanted a popular game, we got a popular game ๐Ÿ˜‰

drowsy solar
#

use ai to learn not do it all bc its annoying to have ai redo code, unlessi ts a horrid language

high bane
misty basin
high bane
#

In other words, unless I'm doing something that is against the rules of the server, or being a jerk, you don't control what I say, bro.

drowsy solar
short orbit
#

What server commands mod is everyone happy with? i.e. tpa, set home, warps? The one I keep seeing on CurseForge seems to be really buggy since the last update

grave peak
#

I watched a guy try and make a game in Unity using ChatGPT. It was so painful.

misty basin
#

Its ok to encourage it as a tool rather than an engineer

drowsy solar
#

yeah, for small tasks you got no clueh ow to mkae it should be fine, but not for big things

pine needle
#

Yeah getting quick refrences for stuff is not vibe coding. Vibe coding is asking a model to write something for you and copy pasting it with no comprehension of what said code does

drowsy solar
#

precisely, thats wshat alterion said, you should be able to skim over your code and undertsnad it, not only have ai write it

uneven shoal
#

gas is too expensive for this request

high bane
#

I'm using mostly AI to create my mod and I'm reviewing its code, and you can't stop me โค๏ธโ€๐Ÿ”ฅ

minor cloud
#

?

drowsy solar
high bane
#

You can if you want, I don't really mind.

minor cloud
drowsy solar
#

or ig, if you're writing java that is okay

misty basin
#

lazy people are the ones that finds workarounds just to make things quicker

tender tangle
#

oh yeah, using LLMs for making code that is trained from LLM halucinated descriptions of the said code

minor cloud
#

pls provide me acc hytale

high bane
#

I can't control what you think of me and you can't control what I say, so, y'know... feedoms and all that jazz. Let's just get along, bros.

minor cloud
#

or coupons

pine needle
high bane
tender tangle
#

Gotta say people making 15 pages of "docs" with AI actually helps getting rid of AI ๐Ÿ˜„

spice oak
high bane
bronze granite
#

nerds

proper shoal
drowsy solar
spice oak
thorny minnow
#

bruh i installed an intellij extension someone made for hytale development and it corrupted my files wtf did i just install a virus?

pine needle
misty basin
#

I am not a mod developer but i have an idea, can we draw scar sprites on enemies based on a ray cast from the weapon of the player

uneven shoal
#

is bcuz we can use 2billion claude opus tokens per minute

pine needle
ornate torrent
wintry dawn
#

Is there a way to rotate a block using the API or we have to set the block again to basically overwrite it?

misty basin
#

like can we add a scar sprite to a specific entity, not the class itself

spice oak
pine needle
#

What did you install @thorny minnow

still field
calm robin
#

[2026/01/26 17:05:49 INFO] [Hytale] Referring player XXX (uuid) to ip:5520 with 0 bytes of data

private void onPlayerReady(PlayerReadyEvent event) {
        if (connectionConfig == null) {
            return;
        }

        PlayerRef playerRef = event.getPlayer().getPlayerRef();
        if (playerRef == null) {
            return;
        }

        PlayerAuthentication auth = playerRef.getPacketHandler().getAuth();
        if (auth == null) {
            return;
        }

        byte[] referralData = auth.getReferralData();
        if (referralData == null || referralData.length == 0) {
            LOGGER.atWarning().log("Player %s joined without valid referral. Redirecting to lobby.", 
                    playerRef.getUuid());
            
            playerRef.referToServer(connectionConfig.getLobbyHost(), connectionConfig.getLobbyPort());
        } else {
            LOGGER.atInfo().log("Player %s authorized with valid referral", playerRef.getUuid());
        }
    }```


Does anyone have any idea what might be happening? It simply doesn't redirect to another server.
stray pasture
thorny minnow
#

on hytale - docs dot com there was a link to there new mcp intellij plugin

arctic mist
drowsy solar
uneven shoal
#

ai is just a short cut but i always end up refactoring more when i use an llm for the majority of my codebase ๐Ÿคท๐Ÿฟโ€โ™€๏ธ

stray pasture
drowsy solar
#

thats something of cocnern if you cnat remember syntax, ig it is java but just use JS then

misty basin
#

I just tell it why an error is happening and what is the expected outcome and maybe some hints that i know is the right way towards the solution then rest is on ai

still field
calm robin
drowsy solar
#

Im acutally doing better than yall bc in one line I can defifne a new component, or well property on my custom component, instad of writnig a whole new stupid class

stray pasture
wintry dawn
drowsy solar
stray pasture
arctic mist
haughty anchor
#

Sounds like you're working in a very inefficient environment if everything is made in a different language ๐Ÿ˜‰

misty basin
stray pasture
thorny minnow
#

you're an enabler

spice oak
calm robin
# arctic mist Any subsecuent logs after that INFO log? Seems to me that is executing correctly...
[2026/01/26 17:05:47   INFO]          [World|lobby2] Player 'KalebSZ' joined world 'lobby2' at location Vector3d{x=-122.1933822631836, y=257.0, z=-28.07897186279297} (d73cffb0-...)
[2026/01/26 17:05:47   INFO]       [WorldMapTracker] Started Generating Map!
[2026/01/26 17:05:49   WARN]                [Hytale] {Playing(QuicConnectionAddress{connId=05165d3ef5c9ff50f7fa10f92f572f68b083f3fe} (/170.84.xx.xx:64877, streamId=0)), d73cffb0-e2e5-4d01-baa7-fbbc67420693, KalebSZ}: Received com.hypixel.hytale.protocol.packets.player.ClientReady@9da1
[2026/01/26 17:05:49   WARN]             [LobbyCore] Player d73cffb0-e2e5-4d01-baa7-fbbc67420693 joined without valid referral. Redirecting to lobby.
[2026/01/26 17:05:49   INFO]                [Hytale] Referring player KalebSZ (d73cffb0-...) to 152.53.xx.xx:5520 with 0 bytes of data

No connection attempt logs or anything of that sort appear on the destination server.

toxic trail
#

guys how i calculate the real opposite direction of the player? i cant get it right

thorny minnow
misty basin
frosty scroll
#

@dusty venture looks like the author added door and chest access to the HyFaction mod!!!! For Save and War Zones!!!! wohoo!

arctic mist
haughty anchor
high bane
#

```java
put your code here
```

Edit your message to wrap your code with codeblocks it'll look much better ๐Ÿ™‚

wintry dawn
stray pasture
haughty anchor
#

theres no reason to choose a "new" language for every project. They don't have that many advantages over other languages.

#

But i guess if your management is always chasing the big new hype they may see it that way

spice oak
arctic mist
glass charm
thorny minnow
calm robin
stray pasture
still field
misty basin
#

oops nvm it did

wintry dawn
arctic mist
calm robin
stray pasture
arctic mist
spice oak
minor oasis
#

Anyone know if there is the possibility to register new EntityStatTypes? Like adding Armor stat to the game?

calm robin
arctic mist
#

Not what I meant. let me rephrase it. Can Server 1 ping server 2? Does packages sent from server 1 can reach server 2?

prime orbit
#

Im looking for server permissions to use commands. I installed quality of life plugins and im not able to use them unless i op myself - but i cannot op all players. Can i do it in files, like permissions? I could not find any info how to add certain commands.