#server-plugins-read-only
1 messages · Page 85 of 1
Do block entities exist in hytale?
Is there a workaround for PlayerInteractEvent and PlayerMouseButtonEvent ?
yo, ima add you as a friend, first one to get it shares the code with the other?
Help me plz!!
container@pterodactyl~ Server marked as offline...
[Pterodactyl Daemon]: Updating process configuration files...
[Pterodactyl Daemon]: Ensuring file permissions are set correctly, this could take a few seconds...
container@pterodactyl~ Server marked as starting...
[Pterodactyl Daemon]: Pulling Docker container image, this could take a few minutes to complete...
[Pterodactyl Daemon]: Finished pulling Docker container image
/entrypoint.sh: line 8: ./hytale-downloader/hytale-downloader-linux: Not a directory
container@pterodactyl~ Server marked as offline...
absolutely
So it's actually better to force Player instead of PlayerRef? Since you can downgrade playerref to player. But then things like uuid become deprecated (like the uuid)
I have a cheap and powerful hosting for Hytale message me for offers
I have the file /hytale-downloader/hytale-downloader-linux
It really depends on what you are trying to do TBH.
yeah i think the same, but this is better than nothing, it's a start.
Anyone know how to (easily) add mods if using a 4netplayers server?
nvm that
what's the command to generate a world with new gen v2?
help
tyring to create an auction house plugin:
C:\Users\Admin\Desktop\AuctionHouse\GreaterEssenceAH_PLUGIN\src\main\java\com\user\auctionhouse\commands\AuctionHouseCommand.java:39: error: cannot find symbol
ItemStack heldItem = inv.tools.getStack((short) slotIndex);
^
symbol: method getStack(short)
location: variable tools of type ItemContainer
14 errors
1 warning
Is there a workaround for PlayerInteractEvent and PlayerMouseButtonEvent ?
if only there's a proper documentation
Made a tiny implementation of PlaceholderAPI basically. But I support:
public abstract String onPlaceholderRequest(PlayerRef playerRef); and
public String onPlaceholderRequest(Player player) -- I tagged this deprecated for now with default return
Do you suggest leaving it up to the developer itself to know which one is being used?
Again, it really depends on what information they want. A username is the same for Player and PlayerRef so Player is better, but if you want the placeholder of a players language, then PlayerRef is the place to go
Basically, if everything you need is in the Player object, just stick to that. Otherwise, stick to the PlayerRef only.
I have a cheap and powerful hosting for Hytale message me for offers
If this is meant for a plugin which can be used with many use cases, I would defo reccomend the PlayerRef, especially because you can just call Player#getReference();
Guys, how to teleport items?
Can I cast a playerref back into a player then? -- I simply don't know this
oof, i keep getting this errorCould not find document Pages/Machine.ui for Custom UI Append command. Selector:
You what? Dropped items on the ground?
Yes
wait guys how do set a players health to 0?
You can call /damage <player> <amount>
How can i set a custom weather to other world on the same server with the asset editor? Is it possible?
this is the server plugins channel. . . I was asking how to in Java 😑
Basically I have a Ref<EntityStore> for the items, how to teleport them?
Havnt investigated it too much so don't exactly know. But there should be a world entity somewhere that has this information
And from that comment you can probably try and read the server files? :)
Hello, So im trying to set up a system where I can detect when an arrow is shot, and I was able to do that successfully with the EntityTickingSystem, but I cant seem to find a way to find who shot the arrow. Does the arrow have any component on it that I could access that could provide me with the data of who shot the arrow? The ProjectileComponent has all this data, but the arrow for some reason does not have this component attached to it, it only has the basic Projectile class, which does not have much data at all.
Hi, did anyone manage to simply play a custom ogg file with a server command already and is keen to share an example?
Hello, does Hytale have a Javadocs page?
huh?
Right now in the game if you shoot an arrow, and while its flying switch to a different weapon
Then the new weapon's interaction will be used for ProjectileHit 💀
I assume you want to kill a specific player?
I have the same issue :/
if any player meets a condition
Is an entity's bone rig only client-side? I want to attach a custom entity to the arm of the player (not armor but have to match its arm transform), although I don't see anything for this kind of data in the server jar 🤔
Search for command commands player KillCommand
Anyone make essentials yet
What object stores block positions? I'm extending TickableBlockState, and i need to get position and blockposition of self but i am unsure where to start
Does anyone know how to loop through a player's inventory?
ItemContainer storageContainer = inventory.getCombinedEverything();
for (ItemStack itemStack : storageContainer) {
}
this is what I thought of but it's giving "Foreach not applicable to type 'com.hypixel.hytale.server.core.inventory.container.ItemContainer'"
Are items even considered entities when dropped, for some reason getAllEntitiesInSphere() doesn't seem to get them
I’m looking for inquirys, anyone need a Hytale plugin developer shoot me a msg.
Does anyone have anything on teleporting a player to a certain block coordinate
tp user …
There is a forEach(x -> {}) on the ItemContainer you can use (which just loops through the capacity)
add a teleport component to the player, when you make the Teleport it asks for a position in its constructor
I don't mean a command thanks... @amber violet
Hi folks,
I'm working on a metabolism mod and I'm interested to know how I can detect item consumption for a player in my mod, e.g. when player consumes food or potion item.
Any help is very much appreciated!
Thank you @wintry dawn
found this snippet
public static void teleportPlayer(Player player, int x, int y, int z) {
World world = player.getWorld();
if (world == null) return;
world.execute(() -> {
if (player.getReference() == null) return;
Store<EntityStore> store = player.getReference().getStore();
Teleport teleport = Teleport.createForPlayer(world,
new Vector3d(x ,y, z), // Target position
new Vector3f(0, 0, 0) // Target rotation (pitch, yaw, roll)
);
store.addComponent(player.getReference(), Teleport.getComponentType(), teleport);
});
}```
is it possible to add in commands on the clients side without having a plugin?
Thanks a ton @wintry dawn
ui TextField align right? does anyone know the property?
For the hitboxes, why does my hitbox render as the hitbox i created but only when i look at the block I originally placed the block? Like, it has physics, but its only interactable from the block where it would be with a normal block hitbox
Does anyone know where the bug comes from where our custom prefabs do not appear in the list when we are on a server?
Anyone able to help me with this? I have a server of about 20 players atm but when players try to chop trees down it kicks them from the game
I have a pastebin if anyone wants to help with the console log
@vapid tulip hey, I saw your video about adding Hytale Mod for adding minecraft blocks etc, your mod is WAAAAAAY better then mine (Talecraft) that I hava published, you have mention that you can't post on CurseForge but there is a way to do that I did at my mod, if you want, let's chat about it because I would love to drop my mod work and just keep it ours because looks so good and much better
is it work on world creation and teleport to it when creation done ?
I mean you can call this func when world is done creating and pass in that world and coords as function params, just modify it slightly, didn't test it tho
I did test teleporting just not across worlds
what is their mod even called? cuz now im interested
I created world, get chunk async, tp without wrap in world execute, no tp happens.
When I wrap the tp in execute method, error because in different world thread
I don't think there is a name because I say he would not publish the mod because of Mojang stuff
hmm, try searching this channel for teleporting to other worlds, cause I have no idea lol, didn't have to do that yet (and I am not one of those who crawl the decompiled code)
This might be some java knowledge issue but I don't think I understood the function, what's that ShortObjectConsumer? It tells me I can't call methods on short type.
kk thank you lol
How to remove player leave/join messages?
Packet EntityStatsEffect i think
When are you trying to teleport?
I was doing this on PlayerConnectEvent and would get the same error.
lol
I still not find the solution, tp work in command
But not work after world creation with random chunk and coord selected
Are you doing it on world creation?
When
are
You
doing
it
@wintry dawn Can I dm?
Has anyone got an example of a plain TickableBlockState class i can learn from?
add world > apply async > get chunk async > apply async > generate random position > tp
Is there a guide for a how to create a server? Like in MC
on my custom class, not in command.
Like startGame() then do the world creation then tp
Oh my bad I gave the wrong number of args
storage.forEach((index, stack) -> {
});
can I get entitystore of oiffline players?
how can I apply damage to a block through a system?
Hi does someone got the ECS DamageEntityEvent class by anychance ?
So every time your server starts, you make a new world, find a random spot, and tp player to it?
When I got the thread error on teleportation it was because I was calling the teleport too early.
What solved it for me was setting the players' world on connect (which could be making the world on connect, then setting it as their world), then, on ready, teleporting them to the certain location on that world.
Hopefully that helps...
Sure, but I am not an expert in java lol, just moved from C++ yesterday
Yo no puedo jugar, no me conecta al servidor, solo puedo localmente
Im making a minigame, player can create match and join by command, okay so when queue players is enough to start and the game can be started
and you are using store.addComponent(ref, Teleport.getComponentType(), new Teleport(world, spawn3d, spawn3f));
?
Yes
What wrong with it ?
Is there a guide for a how to create a server? Like in MC. How can i make a server on VPS?
Is there a way to override interaction of an item ?
Hmm unsure. that's what works for me. When I got thread error is because I was calling the teleportation too soon. Maybe the world is not ready yet/fully created?
should I change to get store from new world and do the tp ?
Because current store is get from player , but player is in old world
Is it possible to modify the existing UI in the game? I noticed most of the UI in the game is on the Client
Most interactions yes, its easier if you have the decompiled docs to find exact things to hook into
Does anyone know of a mod that allows users on my server's hub to connect to other servers via IP address? Or how can I do this?
I know you can add fo the UI so I reckon yes
I would figure that, if it had to correspond, you'd want the store of the world theyre currently in.. so that makes sense to me. I suppose try the other way around.. are you getting store from getPlayer() or getPlayerRef()?
Im listening to packets atm and check for items id
Like i would add an interaction to wild berries
If right clicked then something happens
Hello guys, I need some help, i am trying to join the server of my wife in the game but i see everythin in white and nothing mooves
Store from PlayerRef
I will try again tmr , anyway thank you
Anyone have a good article on setting up a server using a hosting provider like Digital Ocean?
when is someone going to cut out curse and host proper mod site ❤️
lmao almost lost my mind over that. another question if u don't mind, do you know if getItemId() returns something similar to "hytale:dirt"?
holy C divine intellect
With the line: this.getBlockStateRegistry().registerBlockState( SprinklerBlock.class, "Iron_Sprinkler", SprinklerBlock.CODEC);
Im getting the error: [HytaleServer] Failed to boot HytaleServer! java.lang.NullPointerException: Cannot invoke "com.hypixel.hytale.registry.Registration.unregister()" because "registration" is null at com.hypixel.hytale.registry.Registry.lambda$register$0(Registry.java:111) at com.hypixel.hytale.server.core.plugin.PluginBase.cleanup(PluginBase.java:466) at com.hypixel.hytale.server.core.plugin.PluginBase.shutdown0(PluginBase.java:437) at com.hypixel.hytale.server.core.plugin.PluginManager.setup(PluginManager.java:763) at com.hypixel.hytale.server.core.plugin.PluginManager.setup(PluginManager.java:236) at com.hypixel.hytale.server.core.HytaleServer.boot(HytaleServer.java:345) at com.hypixel.hytale.server.core.HytaleServer.<init>(HytaleServer.java:303) at com.hypixel.hytale.LateMain.lateMain(LateMain.java:54) at com.hypixel.hytale.Main.main(Main.java:43)
What am i doing wrong? Am i calling this too early? If so its currently in setup(), where do i put it instead?
He was a great guy
sometimes
Hi yall! I'm new to hytale and just got the game. are there any servers anyone would reccomend joining?
Im listening to packets atm and check for items id
Like i would add an interaction to wild berries
If right clicked then something happens
is there a way to override default interaction / add new interactions to vanilla items ?
Where do I even start for learning to make a plugin? Is there documentation somewhere?
nope
Do you guys know when knocking down trees will be fixed?
anyone knows the event class of a player leaving the server?
right hah a im just helping the guy out
how do i modify worldgen? i wanna add a new ore that spawns in a specific zone
the simple answer is its possible with tweaking, idk how to explain that to you, it just takes a little more knowledge of java and how the basic cpu instructions lock onto different threads
From what I can tell, it seems to be the names you see in the asset editor, like Deco_Lantern. From my checking with them on the item stack they aren't prefixed (at least for that example). They might be for plugins, but I haven't checked.
i guarantee you i could.
ill make it happen live on stream here 🙂 cheers
im just looking to help out thats all you all have something good going, your website tho looks very ai generated atm.
Do chests ingame only get populated once theyre opened? It seems like theyre not accessible if theyre just spawned
guys is there like a documentation for java plugins?
Anyone know the best way to stop mobs from spawning? Is there a config setting, or should I add a listener?
there are some tutorial videos
and you could decompile jar
LOL
😉
you here is crazy
Do you guys know when knocking down trees will be fixed?
yep
Hello, I'm creating a command (let's say /msg <player> <message>), how could I register the "message" argument ? I tried to do like for "player" but since the "message" argument should accept multiple arguments (like "hello world") I can only access the first word 🥲
Im listening to packets atm and check for items id
Like i would add an interaction to wild berries
If right clicked then something happens
is there a way to override default interaction / add new interactions to vanilla items ?
Anyone know the best way to stop mobs from spawning? Is there a config setting, or should I add a listener?
Hey gamers! Wondering about best practice with the command buffer. I see it passed into systems, but how can I access it generically? Should I?
Context: Trying to pass info from the packetwatcher to a specific component in the world. But the packet watcher exists on server thread & seemed like the command buffer was the best solution.
CommandContext got methods like getInput and getInputString. I think if your command has setAllowExtraArguments(true) you could retrieve them this way.
yes I already tried that. The getInput(argument) and will only return the first word (not the extra arguments) and the getInputString() will give the whole command.
So the only solution I have is to do a getInputString() and get the argument via the index and forward the rest of arguments
It wouldn't let me link it here but there's a website that visualizes the formatting automatically, I haven't used it but it might help with setting up your UI
the Hytale UI Builder its called
I've been using the built-in intellij one, but it doesn't let you fully decompile as far as I'm aware. Any suggestions for best java decompilers?
Does Hytale already have something similar to BungeeCord?
hey i need a bit of a help.. i need to reset the player's stats like health and effects like burning and stuff when they enter theworld.... how do i properly reset and update these components? I tried following the built-in command classes that reset the player's data but it seems to have no effect...
I tried calling this in PlayerReadyEvent and AddPlayerToWorldEvent
[Kotlin]
fun Holder<EntityStore>.reset() {
val player: Player = getComponent(Player.getComponentType())!!
val playerRef: PlayerRef = getComponent(PlayerRef.getComponentType())!!
val ref: Ref<EntityStore>? = playerRef.reference
// Get components
val stats: EntityStatMap? = getComponent(EntityStatsModule.get().entityStatMapComponentType)
val effects: EffectControllerComponent? = getComponent(EffectControllerComponent.getComponentType())
// Reset
//stats?.reset()
if (stats != null) {
repeat(stats.size()) { index ->
if (stats.get(index) != null) {
stats.resetStatValue(index)
}
}
}
if (ref != null && ref.isValid) {
effects?.clearEffects(ref, ref.store)
}
}
Yeah, getInputString() returns the whole user input. I'd just strip the /msg <player> part for now on that string. More convient than forcing users to put their message into quotation marks for being a single arg. Dunno of a more elegant way as you can't access a args[] as far as I'm concerned.
also using intelij in-build
best I can is jd-gui as additional tool
Ah gotcha. I know a friend has fully decompiled so you can do more advanced searches
There's built-in support to forward users to other servers, no need for BungeeCord :)
How do I do that?
default connect:
lobby
server mode:
game1
game2
someone know where i can find documentarion for moding i wanna make a mod for server stats death kills mobs killed time survived etc
PlayerRef.referToServer(@Nonnull final String host, final int port, @Nullable byte[] data)
its easy thanks!
also I might be wrong, but I think that the ItemContainerBlockState should have definitions for item inputs and outputs
Just checking right.... so the EntityStatMap is coded with indexes.... (where do I find these indexes? are they locked?)
Do you guys know when knocking down trees will be fixed?
how many people are working on tech/sci-fi mods ?
🖐️
in mind from simple drills, electric furnaces and item pipes to more advanced
well... more space themed actually :P
how can i disable creative tools on my lovely hytale server
did you make item movers/belts/conveyors ?
one way might be /deop self
everyone who joins seems to be able to pull out creative tools and crash my server
Nah. We're focused on spaceship creation & flight. Curently I'm working on passing the controls and I feel like a moron because of the above mentioned issues
well I made item pipes but there be small iseue which makes me wonder am I stupid or is something missing
anyone know how to change text color with the ui command builder
something like this
commands․set("#Difficulty․Style", "(TextColor: " + component․getDifficultyColor() + ")");
would you or anybody else have idea how to get to know what sub containers of CombinedItemContainer are inputs and outputs ? @lone wadi
Style.TextColor as selector
Im create few mini games for server, so im tired. Can someone explain how i can copy my 'map" and paste in void( no terrain) just void and my map. Thx
Can i get some help to get my game working? i tried numerous time with IA (Gemini pro) to help me looking on the log files , Why the game is not letting me be online, i can´t change my avatar, config a server, nothing, i had 2 hours on this and i feel so frustrated by now...
a faction mod / plugin is it a good idea? Does something like this already exist?
nah haven't touched that part of the code yet. If I end up digging into that part I'll le tyou know
👍
Java is not like python 😑 I just spent like 2h trying to see if I could make a simple 3x3 mining drill and... I have failed to understand this ECS system. I get that everything is a component and all but theory and practice are very different things.
I understood how it kinda works... can try to help
😭 why didnt i try that
There are some on CurseForge for sure. But I'd say if you can provide benefit beyond the currently available one's, it's definetly worth to take your shot :)
Am I suppose to map the entitystatmap myself? or is there a known enum out there with locked indexes? Or can I pull it from id like 'Stamina'?
like Saber faction
also I just gona add I made ticket on hytale support with question about that part of modding
Take note there are 2 systems at the moment that are for blocks to be interactive
I intellij files has the decompiler it uses itself java-decompiler.jar i think it uses fernflower, but anyways you can locate their jar and use it to decompile other jars fully, im guessing u ment decompiling full sources at once?
is there like a block type enum in the game to figure out a block id?
Is it possible to parse a PlayerRef from a UUID? I for seem to have hit a brain-malfunction
Anyone got a proper doc of all the existing interactions types and options by any chance?
Hi, im trying to make a UI right now and get the content of some number input fields in handleDataEvent(...) to use for configuration stuff
Anybody know if this is possible? I dont see a way of accessing the content of a CustomUIPage after its been built
It was more of a lack of knowledge on my part. Thanks. I don't do much java I"m more of a C++ dev
Just use HyUI! Much easier
Can somebody please explain:
Is it better to use Kotlin for modding, or just Java? I didn't have ANY experience with Kotlin so I dunno about it, but heard that it's kinda gud
I think world.getPlayerRefs() is a thing if I remember correctly
they're players
depends
mb read the question wrong
i mean all entities
like i want to figure out if a block the player is standing below is the string id that i want or something
This is the code that I came up with regarding my goal of 3x3 mining tool. Forgive my AI/W3 School java. I am more of a devops guy JSON/PY first time working with java.
@EventHandler
public void onBlockBreak(PlayerBreakBlockEvent event) {
String heldItemId = event.getPlayer().getHeldItem().getId();
if (!heldItemId.equals("custom:heavy_pickaxe")) {
return;
}
if (event.isPluginCaused()) return;
Vector3i center = event.getBlock().getPosition();
BlockFace hitFace = event.getPlayer().rayTraceBlocks(5.0).getFace();
breakNeighbors(event.getPlayer().getWorld(), center, hitFace);
}
private void breakNeighbors(World world, Vector3i center, BlockFace face) {
int xMin = -1, xMax = 1;
int yMin = -1, yMax = 1;
int zMin = -1, zMax = 1;
if (face == BlockFace.UP || face == BlockFace.DOWN) {
yMin = 0; yMax = 0;
}
else if (face == BlockFace.EAST || face == BlockFace.WEST) {
xMin = 0; xMax = 0;
}
else if (face == BlockFace.NORTH || face == BlockFace.SOUTH) {
zMin = 0; zMax = 0;
}
for (int x = xMin; x <= xMax; x++) {
for (int y = yMin; y <= yMax; y++) {
for (int z = zMin; z <= zMax; z++) {
if (x == 0 && y == 0 && z == 0) continue;
Vector3i targetPos = center.add(x, y, z);
Block targetBlock = world.getBlock(targetPos);
if (!targetBlock.getType().equals("hytale:air") &&
!targetBlock.getType().equals("hytale:bedrock")) {
world.breakBlock(targetPos, true);
}
}
}
}
}
} ```
But like where does this go?
first would you like help on pm ?
where do i add custom sounds?
are there cases in which Java is better than Kotlin or vice versa?
second you need to make class that implements component
i want to compile it with my mod so not via asset editor
How can I check a player's max health?
check com.hypixel.hytale.builtin.crafting.state.BlockState
hi guys i'm trying to have my plugin generate worlds with pvp enabled by default, but they keep being created with the default config. any ideas how to fix this?
Well its preference. My self I have used java for 11 years and kotlin 2 years and i like kotlin more, it makes code cleaner, but I would recommend learning java first, as it might be easier to learn. If you do amods with kotlin you have to have some more knowledge of stuff since u have to take into account stuff line how java sees your kotlin stuff, libraries and what stuff you can/should use to make ur mod have better api for other devs
thank you very much for giving the solution! :)
I can't see anything in the World class but I'm probably blind
Huh, thanks, I'll consider using it later then
How hard would it be to get the world data in the plugin?
Is there an equivalent to getUuid?
Also kotlin has a lot of magic it does behind the scenes so it might be confusing, with java there is very little magic compared to kotlin
In what context?
how can I dispatch a DamageBlockEvent?
idk if here is the right place to ask, but
How can i reduce lag on server?
Server running win server 2016 with 24GB ram 12 allocated to server
couple of vCPU cores
plenty of disk space
im seeing 10k+ ping sometimes and im very local to the server
(I actually just peaked 100Kms LOL)
getUuid has been depreciated for some reason
My game simply closed and won't load again, it's giving me a crash message. Can someone please help me?
You wanna get the UUID prom the PlayerRef class
I wanna get the player's uuid, yeah
Yeah so you want to use PlayerRef instead of Player
Does anyone know how to check a player's max health including armor?
Do other people get bad ping?, when do you have bad ping, during heavy load or even when not moving?
my friend as well. we're the only two on the server. its random
ah, gotcha, thanks
PlayerRef playerRef = store.getComponent(senderRef, PlayerRef.getComponentType());
if (playerRef == null) return;
UUID pUuid = playerRef.getUuid();
For example ^
I’ve been working on a very lightweight IntelliJ plugin focused on improving the experience when working with .ui files.
It’s a lightweight IntelliJ IDEA plugin that enhances .ui file editing with syntax highlighting, bracket matching, code formatting, and more — making UI definition work easier and more productive.
What’s new in the latest updates:
- IntelliSense & Code Completion with component type suggestions
- Live Preview Tool Window to visually render .ui files
- New UI File Action to quickly create .ui files via the context menu
- Hierarchical AST Parsing for better code folding and correct indentation of nested elements
Feel free to share ideas, feedback, or even contribute to the project.
The main goal is to gather feedback and hopefully help some of you while developing.
You can get it from Jetbrains Marketplace or GitHub.
Sorry for posting this in the wrong channel.
I just wanted to share this small project for anyone who wants to get into .ui work while waiting for more feature-rich plugins in the future.
because isnt a community fanart, btw, any news about dev kit?
Any best practice for configurations ?
Also whats ur cpu cores usage when u have high ping?
in what sense?
what's the plugin name? (can't wait to check it out!)
Like, for Spigot you have YAML, for Hytale there is Json
But i suppose there is already a Gson built with some objects formats
just use the built-in system. no point in re-inventing it when they provide you with a working system already that works out of the box
i need someone to come test my skyblock plugin
Does anyone know how block state is stored? Like, how would I get the state of the furnace, or create my own block state?
Any docs for the built-in? I see nothing on moddinghytale
pm me
Search for hytale in jetbrains marketplace
The name is „Hytale .ui Support“
Ill have my friend monitor it and get back to you
no best practice as its all user defined, and strict syntax 🙂 just look at examples
"Duration": 1000000,
"ApplicationEffects": {
"EntityBottomTint": "#ffffff",
"ModelVFXId": "Burn",
"ScreenEffect": "ScreenEffects/Sand.png",
"EntityTopTint": "#ff0000",
"HorizontalSpeedMultiplier": 1.6,
"KnockbackMultiplier": 0
},
"ValueType": "Percent",
"RemovalBehavior": "Infinite"
}
This is an entity effect, really depends on a class you want to use json for
But do i have to create new Gson object ?
Anyone wanna come test my skyblock plugin rq? take like 10 mins max
for what though?
you mean for making the codec?
this is an example i found online earlier which worked for me, if you want the link i can send it to you in DM (cant post it in here):
public class ExampleConfig {
// 1. Codec definition for serialization/deserialization
public static final BuilderCodec<ExampleConfig> CODEC =
BuilderCodec.builder(ExampleConfig.class, ExampleConfig::new)
.append(new KeyedCodec<Double>("LuckIncreaseChance", Codec.DOUBLE),
(exConfig, aDouble, extraInfo) -> exConfig.LuckIncreaseChance = aDouble, // Setter
(exConfig, extraInfo) -> exConfig.LuckIncreaseChance) // Getter
.add()
.build();
// 2. Configuration variable with default value
private double LuckIncreaseChance = 0.40;
// 3. Constructor
public ExampleConfig() {
}
// 4. Getter method (optional but recommended)
public double getLuckIncreaseChance() {
return LuckIncreaseChance;
}
}
Sure, ty
Hi, I'm using the PlayerChatEvent event but I'm unable to get the Player object, I can only get the PlayerRef. How is it possible to convert this into (or retrieve the object) Player ?
anyone? i just really need to be able to reset the player's health to default
store.getExternalData().getWorld().execute(()-> {
EntityStatMap statMap = store.getComponent(
player.getReference(),
EntityStatMap.getComponentType()
);
if(statMap == null) return;
int healthIndex = DefaultEntityStatTypes.getHealth();
statMap.minimizeStatValue(healthIndex);
});
I generally prefer Kotlin, it's a more modernizezd Java in my opinion, and it works quite well with Hytale.
why does my permissions.json file keep resetting every time i start the server
yessssss
+1 with what Vaelian said but there can be a slight lurning curve from what I remember when I first learnt Kotlin 6 years ago
aight imm a try that thx
execute() is for thread safeness
I suspect that the vcpu cores arent fast enough it could also be the cause
is this an issue anybody else has encountered? or is it just me
It's the permissions module and there virtual permissions, they always reset, I made a plugin to store the permissions to a different file, then apply them to the module on startup which works
What's the end goal? Most things can be done with playerref in my experience.
hi guys i'm trying to have my plugin generate worlds with pvp enabled by default, but they keep being created with the default config(no pvp). any ideas how to fix this?
the goal is to show a HUD
I will definitely try it later, thanks again to everyone for answering me
You can improve Java quite a bit also via support from e.g Lombok, and while that generally helps with the amount of boilerplate you have to write, Kotlin reduces that drastically even more.
Hello!
(Authentication failed because the remote party sent a TLS alert: 'IllegalParameter'.) does anyone know how to fix this? everyone else can join the server but me.
is there any way to modify worldgen?
Is it possible to shorten the hit delay so that you can hit faster?
i found the command. its
/entity clean --confirm
Howdy yall, im wondering where you would access the certain plugins, Not downloaded ones off curseforge, Like basegame ones? idk how to properly explain. Basically my server is saying that the "memories" plugin isnt working. So my players are getting disconnected everytime they interact with memories
Lombok? I'm hearing about it for the first time, which is, uh, quite typical cuz' I don't have much experience with Java
although I tried minecraft modding with fabric, that was HARD, really hard
Oh I haven't done that yet. I think I saw a good example in AdminUI mod. It's on gh. check:admincommand.java. Idk if it's exactly what you're looking for though
its Intel Xeon E5-2630 v3 @ 2.40GHz
8 Sockets
8 Virtual processors
setting the graph in task manager to logical processors it kinda looks like its only really utilizing one core
i'm trying my best to experience lag and now that i want to its just not happening.. lol
AdminUI is only Pages UI I think, not HUD 😔
did you ever figure this out? im trying to cancel damage entirely with my own system, the log message is being printed in my handle method but damage.setCancelled(true) seems to do nothing
Is it possible to shorten the hit delay so that you can hit faster?
Oh! Lombok is an open source library that helps you reduce repetitive Java code by automatically generating methods and logic at compile time.
e.g you can apply @Getter and @Setter to methods or fields:
@Data // Generates getters, setters, hashCode etc
public class Person {
private String name;
}
Yoooo! That's so cool actually!
Check Server Logs for errors should bring you in the direction of the Problem
Not very fast cpu could be the problem, i can help u more tomorrow if needed im on phone and its late
yup, I can recommend looking into @AllArgsConstructor
@AllArgsConstructor
public class Profile {
private final UUID uuid;
private long credits;
as you dont have to create
public class Profile(UUID uuid, long credits) ....
its just automatically there too
Is it possible to shorten the hit delay so that you can hit faster?
Does anyone know how to get entity type (if there are any) from entity ref?
@Override
public void handle(int index, @Nonnull ArchetypeChunk<EntityStore> chunk,
@Nonnull Store<EntityStore> store,
@Nonnull CommandBuffer<EntityStore> commandBuffer,
@Nonnull Damage damage) {
// Skip if already cancelled by another system
if (damage.isCancelled()) {
return;
}
// Get reference to the damaged entity
Ref<EntityStore> targetRef = chunk.getReferenceTo(index);
if (!(damage.getSource() instanceof Damage.EntitySource entitySource)) {
return;
}
// Attacker entity
Ref<EntityStore> attackerRef = entitySource.getRef();
// Check if attacker is a player
Player attacker = store.getComponent(attackerRef, Player.getComponentType());
if (attacker == null) {
return;
}
System.out.println(attacker.getDisplayName() + " attacked entity.");
//Add karma to player's persistent data.
}
that's golden, I'm totally gonna look at that library
Also would skip lombok at first if ur new to java, so you learn more how things work :)
Yeah I know a few things in Java, but I'll still train a little making mods and my bot with JDA, then I'll take a look
Does anyone know if there's a way to shorten the hit delay or if it's possible to check whether someone has right-clicked on a block?
Although I tried working with SQL and Java lately, it was a lot easier with C# cuz' of Entity Framework
MongoDB > SQL
What if i wanted to reset ALL stats for a player?
I see there is an option to reset a stat with a specific name but ther is no easy way to get a list of all the names or the indexes needed
Hi guys, someone know how i can cancel the player pickup on a Rubble_Basalt for example ? I want the block doesnt disapear , actually i do an ECSEvent, i cancel the pickup & the throw, but the block totally disapear , idk how to cancel this or if its a bug
Mongo 😨
we are not doing this again

Hello! my friend is attempting to host a dedicated server for us, but we keep getting an error about the connection timing out due to inactivity? i see that could be an issue with mods but we arent running any. any tips?
THAT'S WHAT IT'S CALLED GOD DAMNIT, I tried to remember something really important related to Databases and Java while searching for info, but forgot
that's what was it
why is it better though?
Comparing SQL with NoSQL, you are ragebaiting at this point
Hynetic devs wya
Well, get all of the stats indexes and minimize them 🙂
how to retrieve current player chunk?
thats what ive been trying to figure out but there is no easy way that i can see
please dont feed him..
we cant go through that again
It's more of personal preference to me really. Im just really used to it, and with frameworks like MongoDB Morphia, or the Nest.js module, it has made my life easy.
private static int HEALTH;
private static int OXYGEN;
private static int STAMINA;
private static int MANA;
private static int SIGNATURE_ENERGY;
private static int AMMO;
Those are the stats
ummmh do Refactor
Am I the only one that feels like SQL is similar to assembling some ancient chinese runes and praying that everything doesn't go to shite each query update?
get all the static int fields for now
yeah reflection is the only way im thinking
EntityStatType.getAssetMap() returns a map with all the assets registered
if you cant do sql yes
if you can do sql no.. sql is easy
I can do it enough for me to still hate it
yeah but its all private/protected
IndexedLookupTableAssetMap<String, EntityStatType> assetMap = EntityStatType.getAssetMap();
HEALTH = assetMap.getIndex("Health");
OXYGEN = assetMap.getIndex("Oxygen");
STAMINA = assetMap.getIndex("Stamina");
MANA = assetMap.getIndex("Mana");
SIGNATURE_ENERGY = assetMap.getIndex("SignatureEnergy");
AMMO = assetMap.getIndex("Ammo");
you are pretending sql is some sort of science.. which it isnt
public static IndexedLookupTableAssetMap<String, EntityStatType> getAssetMap() {
return (IndexedLookupTableAssetMap)getAssetStore().getAssetMap();
}
its public
oh wait
yes
oh right i can just grab the keys and get the indexes 😅
any idea how to retrieve chunk player is in?
Yep
The map already has the String - Key
So if you want to reset them all just forEach(key, index)
Or values()
i am btw planing to overengineer my waypoint mod adding sqlite to it so i get persistence
i dont know why but the worldMapManager only stores points of interest in memory so i am doing the persistence for it
funny enough that gives me way more benefits than i even thought about first
i can basicly make waypoints togglable which is a nice thing to have i guess (i really hope hytale is getting that natively at some point)
i just still need to figure out what makes waypoints render on the map since mine only appear on the compass as of now
havent been able to find what code in the server tells the client what waypoints to render on the map or where that is even decided
i am trying to change the way stamina functions but i cant find the regeneration system I cri. There is no stamina event either, I can see the player damage events tho
Does anyone know if there's a way to shorten the hit delay or if it's possible to check whether someone has right-clicked on a block?
I have seen an Hologram (or another thing) in a server with line jumps and colors, any idea how to get that? Nameplate is white and no break lines :S
i mean that map isnt <String, Int>, its <String, EntityStatType> but i can iterate the keys and do getIndex() for each
Hey, need some help. Don't know who or where to ask 😅
Having an issue where if someone goes through a specific portal they get stuck in limbo, the whole server crashes and we have a person permanently stuck there so whenever they log in it crashes the server. I have tried to teleport them once they log in but it just says player could not be found. PLEASE, ANYONE, HELP! 😭
OH yes, gotta do .getIndex mb
cant you delete his player data? as a quick fix
I haven't tried but I was really hoping to not have to do that.
only his data is not that bad, gl thou
Can someone VC with me for a few mins to help me test my Skyblock plugin
Does anyone know how to cancel damage conditionally? I made my own system class and the debug log in the handle method gets called but damage.setCancelled(true) doesn’t seem to do anything
Is anyone familiar with how to get the inventory of a container?
I'm working with the UseBlockEvent, and i just can't figure it out
Does Hytale engine supports parent/children entities relation. By this I mean entity (Parent) that have multiple children. When parent will be moved then children got moved relative to parent position? Is it such functionality build-in or do I need to code it from scratch?
Any fix to the disconnecting issue when farming wood problem? :/
Skip my door please
Go on server lists
Hi did you know if a mod exist for up de build limit like 2032 block height in minecraft please for the build ?
curseforge com/hytale/mods/hyskills-easy-custom-skills
Features now:
*Create your own in-depth custom skills
*Custom level scaling per skill
*Event triggers (more to come): breaking blocks, killing mobs, sprinting, crafting, placing blocks, chatting
*Item requirements — make it so that you need to use specific items at specific levels
*Unlocks — set custom rewards for reaching certain levels or every level (including items and stats)
*Locked items — lock the use of items behind levelling up a specific skill until the skill reaches a specific level (this stops you breaking blocks with locked items)
*Admin panel — add/edit all skills from a menu, edit other players' stats and skills, search items and entities to add them by clicking
*Custom stats include: mining speed, strength (multiply damage), defense (damage reduction), crafting proficiency (chance of double craft or extra XP), vampirism (lifesteal), crit hit chance, crit hit damage, max health, max mana, max stamina, max oxygen, stamina regen.```
where i can found a common.ui file?
seriously?
seriously what?
advertising that dry
Yeah, i know there was a few before following this.
uh wait its not a server
Sry i thought you were one of the 32145344 server people that was just spaming his server
could have read it a tiny bit better
How much ram and cores are needed for server with like 30 ppl? (Approx.)
Yeah no, not a server lol. Just a neat mod for custom skills with custom stats like lifesteal that are now options. Lots of features now.
i see now 👀
there's no official coms about this but it's less than minecraft so you can refer to minecraft stats
Hi did you know if a mod exist for up de build limit like 2032 block height in minecraft please for the build ?
Curse Plugins I have not seen any new ones for like 8 hours... I'm guessing curse themselves have to click a button or something
ty
Im expecting some bugs, especially around the scaling of stats, but from my testing its mostly good
scaling is a tomorrow problem
i mean i haven't released anything on there yet but i think they have a review process that might just take longer
all the people in here that were talking about vibecoding mods wont help in that regard probably
best sign for a knowledge share server and connections when it's private
what kind of spam is this...
holy sh*t how many mods are there already on curse
Mostly developed before the release
Hi did you know if a mod exist for up de build limit like 2032 block height in minecraft please for the build ?
its still insane how many mods hytale already has
I found a .jar file for a mod that I like, but I can only upload .zip files to my server host. Any suggestions on how to convert or am I sol?
Please tell me what causes the error: Failed to load CustomUI documents
bunch of ai slop
i got that suspicion to
@upbeat harness I added you for an invite, cant message you
dont you have access by fpt
How might I reuse frames and change the values in the frames?
protected void build(@Nonnull UICommandBuilder builder) {
builder.append("Gui/Wrapper.ui");
builder.append("#Wrapper", "Gui/Item.ui");
builder.set("#ItemName.TextSpans", Message.raw("Item A"));
builder.append("#Wrapper", "Gui/Item.ui");
builder.set("#ItemName.TextSpans", Message.raw("Item B"));
}
when u look into the jars all function ai like comments and always saving in local json files xD
A lot, turn on diagnostic mode in settings for better error
rename to .zip send and rename to .jar again
Hi did you know if a mod exist for up de build limit like 2032 block height in minecraft please for the build ?
it is easier than in MC, not scripting ones, but blocks, assets, doesnt need technical knowledge anymore
Not sure what that means lol
You know of a thing called settings?
i mean while i see writing to jsons makes sense.. everything.. yeaaaa..
i allways forget thats a thing
who do you guys recommend to host a server between friends?
How do I make a block get recognized as an entity when its placed/loaded?
Aternos
I do zero comments in my code
they didnt post their hytale ad as a joke? 0.o
where are sound effects stored/what do I do to add a sound file so the asset can locate it
$1B ai data center for at most 5 people
Me and mine have been using them for a bit, just cant upload .jar files as mods 🙁
we had that already a while ago
while most of us (me including) agree not everyone has the mean or the know how to do that
Hi did you know if a mod exist for up de build limit like 2032 block height in minecraft please for the build ?
yea i mean aternos i think never allowed that
they already didnt back when i still used them 10 years or so ago
has anyone got the UseBlockEvent to work? Im trying to cancel events but nothing happens, I can open every door, interact with every craft station, anything
public class Test extends JavaPlugin {
public Test(@Nonnull JavaPluginInit init) {
super(init);
}
protected void enable() {
getEventRegistry().registerGlobal(
UseBlockEvent.Pre.class,
this::onBlockUsePre);
}
private void onBlockUsePre(UseBlockEvent.Pre event) {
if (event.getInteractionType().equals(InteractionType.Use))
event.setCancelled(true);
}
}
whats the recommended way to go about updating a server?
i run one locally on my server computer and idk if its easier to just install a clean server and move the universe/worlds and configs over, or just replace the assets zip?
Do you mean the config.json file?
Settings. In your game not some config
oh
Thank you! My and my friends were looking at Bisect Hosting for it
used a hashmap with ui today with dynamic keys to have inputs onchange save in entries depending on keys. it was so terribly bad. hope they fix their ui
but we werent sure if it was good
Just replace the jar and Assets.zip with new ones
kk
Ive just been trying to get something working to remove/replace the eating sounds for my friend who has Misophonia. My mod creation efforts werent panning out and I havent found anything that I could use otherwise
why dose private CompletableFuture<Void> universeReady start null in Universe It kind of ruins the point of having a async field, they even have a public getter for it in Universe
Our network made a mod that allows player owned instances on our server. Create a Realm solo, or to share with friends. Share your homes with players in your realm, have complete control etc.
have you ever used Bisect Hosting?
avoid BH
anyone know how i host my own online official server on hytale
No i am selfhosting
ty
try playit.gg?
really? is it bad?
Read what you replied on and try again
performace is terrible i got a free server but wouldnt pay ever
Use in game asset editor and override the sound using it
(Authentication failed because the remote party sent a TLS alert: "IlegalParameter.)
My son when he try’s to connect to my server gets this but no one else does? Sorry if this is a stupid question
nah
Then dont bother me
pfft
I've done that, but whenever I have the .ogg files replaced in a mod folder, I get errors about a missing interaction
bro couldnt get playit to work and now mad
Anyone know how to stop mob spawns? Theres config settings for NPC markers and NPC spawns. But I still seem to have some spawning. Any ideas? i really don't want to implement a listener unless really needed
Anyone know how to fix my ping when playing with friends, should renting a server be better?
I am looking for someone to help me out with a plugin
No clue then hmm
hi there,
im having a problem with my friend joining in my server. he tries to join but the connection fails during the loading chunk part. when i create the code it says " your network configuration may prevent others from connecting", is that the problem? and how do i fix it?
I am running a full root Server.. the f*ck are you even on about 🤣 why would i even want that.. ITS a literal downgrade in every way 😂
whatever you said screams security risk but you do you
Does it though?
root server? yeah doesnt sound good
Chat properly configured root Server Security Risk yes or no lets Vote
likely firewall, router, or modem settings preventing it from working
Root Server = V-Sever with root access
so you got a VPS then?
yeah ^ that sounds bad
shouldnt run server with root perms no different than games
Do you know what a vps even is?
yes
Some people just like to learn by the FAFO method.
So you Just dont understand Linux then
And you sudo everything?
i allowed hytale through the firewall. i also tought the problem was my modem setup. do u perhaps know what the issue?
audi is a brand 🤣 🤣
Guys how to register new codec ?
sorry for repeating myself but does someone here knows how to get a Player object inside the PlayerChatEvent ? Or at least how can I set a custom HUD to all connected players from the PlayerChatEvent ?
The only (and worst) solution I probably have is to use a PlayerJoinEvent and save the players in a HashMap :/
Read again and then try again
Does anyone know how to dynamically build a ui via CustomUIHud with component reuse?
does hytale have a built in scheduler, similar to bukkit's runnable stuff
bro i aint helpin
someone needs to figure out what rage baiting is super poplour onm this server
Why do you need to do in the chat event?
You do know that i am Just playing along right? I even tried to make it obvious for you 👀
sure bro
can you run a command through a plugin?
Someone needs to pet the Egos of ragebaiters so they dont Stop : )
when someone says something in the chat, the custom HUD should disappear for all players
your modem needs to support Upnp for hytale, so both your modem and router need to be configured to allow those requests to work, your router and modem may be a single device or they could be seperate
or load a world through a plugin? i some code that makes a new one, but cant seem to load it
i gave a suggestion
hytale-docs•pages•dev/modding/plugins/tasks/
you came back bein a dick first
I've made a bug report about this hopefully it gets fixed next update
oh ok ty man, ill see later and try to fix
tyty
You do know what you replied you "Suggestion" on right? Buddy you can Stop baiting now
How to transfer a player to another world?
bro cant stop, gota go after typin too
gotta be the last reply right
You should attach the custom huh add at the beginning when the players is added to the world. Then you tell the custom HUD to hide wherever you need it. At least that's a similar approach to what I did
I actually save a map with player: customHud on addedToWorld
get the last laugh, well enjoy i got important things to do 👋
How to add new data type codecs ? Like for interfaces and save / load them in configs
Done now?
so basically save player data when they join the server ?
not sure it helps ya but:
public void init() {
Universe.get().getEventRegistry().registerGlobal(StartWorldEvent.class, this::onWorldLoad);
}
public void onWorldLoad(StartWorldEvent event) {
var world = event.getWorld();
if (!world.getName().equals("default")) return;
Universe.get().getUniverseReady().thenRun(() -> {
world.execute(() -> loadAndSpawn(world));
});
}
this is what I did for Bridge
public void transferPlayer(@Nonnull PlayerRef playerRef) {
var currentWorld = Universe.get().getWorld(playerRef.getWorldUuid());
currentWorld.execute(() -> {
try {
playerRef.removeFromStore();
hWorld.execute(() -> {
CompletableFuture<PlayerRef> future = hWorld.addPlayer(playerRef);
if (future != null) {
future.exceptionally(throwable -> {
BridgePlugin.logger().atSevere().log(throwable.getMessage());
return null;
});
}
});
} catch (Exception e) {
BridgePlugin.logger().atSevere().log(e.toString());
}
});
}
This discord really needs a Mod Team when i See people Like that regularly Here
Basically add the custom HUD plus the player it belongs to in a map when they join
Then you can use that to access the custom HUD for each player later
It won't fix my situation because I need to run a method when a player joins the world and I need to get the world, so I need to wait until the universe is init
do I need to pass deltaTime inside commandBuffer functions? or does it already executes based on ticks?
oh I see
I see, thanks ^^
Anyone else having issues with the Wayback Charm Mod? I get kicked from the world when I press F
public final void onEntityAdded(Ref<EntityStore> ref, AddReason reason, Store<EntityStore> store,
CommandBuffer<EntityStore> cmd) {
Universe.get().getUniverseReady().thenRunAsync(() -> {
var playerRef = store.getComponent(ref, PlayerRef.getComponentType());
var hWorld = Universe.get().getWorld(playerRef.getWorldUuid());
if (hWorld != null) {
var bWorld = BridgeWorldFactory.getBridgeWorldFromWorld(hWorld, hWorld.getName(), null);
bWorld.getBridgeWorldComponent().onPlayerJoinWorld(bWorld, playerRef);
BridgePlugin.logger().atFine().log("TEST");
}
});
}
Does the Server Log anything?
Be sure that removeFromStore and addPlayer are ran on their respective world threads
Wayback is also kicking people out on my server
anyone know how to make a projectile explode
Hey, sorry to disturb. I keep getting "Failed to apply CustomUI HUD commands", someone can look at my .ui ?
It's a bug in the API he's using (spellbook), gotta wait for a fix
Does anyone know how to add custom asset types?
Group #QuestHUD {
Anchor: (Top: 10, Right: 10, Width: 360, Height: 140);
Label #Line1 { Anchor: (Top: 5, Left: 5, Right: 5, Height: 20); Text: ""; }
Label #Line2 { Anchor: (Top: 30, Left: 5, Right: 5, Height: 20); Text: ""; }
Label #Line3 { Anchor: (Top: 55, Left: 5, Right: 5, Height: 20); Text: ""; }
Label #Line4 { Anchor: (Top: 80, Left: 5, Right: 5, Height: 20); Text: ""; }
Label #Line5 { Anchor: (Top: 105, Left: 5, Right: 5, Height: 20); Text: ""; }
}
if someone can tell me where is the problem, it would help. Thanks !
Gotcha, thanks!
That's the cost of day 1 mods 
I just found it!
it just says I got disconnected
I'm not sure, I'm a noob with Java. I looked up the simple claims mod on GitHub
It's an extension of the interaction block event system
The spellbook mod needs an update for it.
Check your sever log file or enable the debug setting at the bottom of the general settings
It'll help you figure out what's wrong
Hi there, how do you guys manage different inventories per world ? if uanna have a creative and an adventure one ?
If someone has hints on how to find it, i'd be glad 🙏
My only intention is to cancel chest / doors interaction at certain moments, so I won't touch any other block but thanks for the advice
Hey, I actually came across your message because I was trying to figure out the same thing myself.
After digging around a bit, I found that you can listen to the player join/ready event by registering a global event handler.
Here’s a quick example using PlayerReadyEvent:
public class ExampleEvent {
public static void onPlayerReady(PlayerReadyEvent event) {
Player player = event.getPlayer();
player.sendMessage(
Message.raw("Welcome " + player.getDisplayName())
);
}
}
Then register it in your plugin:
public class MyPlugin extends JavaPlugin {
@Override
public void setup() {
this.getEventRegistry()
.registerGlobal(PlayerReadyEvent.class, ExampleEvent::onPlayerReady);
}
}
Once that’s set up, the handler will fire whenever a player becomes ready/joins.
hey, i'm trying to have the worlds that my plugin generates have pvp enabled, but they keep using the default config with it disabled. anyone have any ideas
public HelloCommand(@Nonnull String name, @Nonnull String description, boolean requiresConfirmation) { super(name, description, requiresConfirmation); }
Figuring some things out here lol
Wondering how I can set permission to ALL.
I believe right now the command default to OP only.
Also not sure how you do that nice clean code box LOL
I want to make just as a test a weapon that functions like the magic missile of terraria, a staff that throws proyectiles that follow where the player is looking, does anyone know how to modify a proyectile to behave like this?
Is there a list of potion StatModifiers anywhere?
anyone here else uses a raspberry pi to host hytale servers?
how could you set up a /commands witha pop up in sever
I think you can set the permission to anonymous and that works
ok gotcha. Ill check that
How do I get an Player from its playerRef?
do i have to update my server in order to play the new update? or is just updating my client fine
Hi there, how do you guys manage different inventories per world ? if uanna have a creative and an adventure one ?
If someone has hints on how to find it, i'd be glad 🙏
yee figured
Damn we alr have luckperms in hytale
anyone know why my server doesnt load when this line is added to a class? it runs when a command is run.
Universe.get().loadWorld(newWorldName);
Crazy!
Player player = event.getPlayer();
PlayerRef playerRef = player.getPlayerRef();
Hope that helps
i am looking for a developer for a server (paid)
is there a way to use Common.ui assets in appendinline()? seems like it breaks the parser
I think that's marked as deprecated though
thx
Ive seen that it depends on the event type
Anyone tried making custom connected block rulesets? one of the CODECs are decompiling wrong and I can't pinpoint how to fix this
true, but I have not found any other ways to get the playerRef.
Im doing it like this:
public Player getPlayer(PlayerRef playerRef) {
if(playerRef == null)
{
return null;
}
Ref<EntityStore> ref = playerRef.getReference();
if (ref == null || !ref.isValid()) {
return null;
}
Store<EntityStore> store = ref.getStore();
return store.getComponent(ref, Player.getComponentType());
}
where are the docs
See my last message
Yeah that seems to be the best way for now
This is the correct way as far as I know since the other way is deprecated. This is also how I’m handling it
The ECS is a bit complicated but I understand why it's done this way. Makes it really easy to access all different kinds of data
Has anyone had issues with the server actually crashing VPS's? I'm running it on an 8gb server with just me playing and the whole server just gave up, can't even get a response when pinging the IP.. 💀
I’m not on a VPS, but crashes are pretty common. I ended up upgrading to 32gb of ram and my server always sits at around 14gb even at idle
Is there any commands to restrict/block certain portals/dimensions?
Damn.. legit all I did was break a few trees- try crafting a workbench and BOOM, whole server gave in
The lack of need for a proxy like bunjee cord fuels me
Hi, I'm new here. I've been trying to find any official resources for server setup and mod development, but haven't had much luck. Could someone point me in the right direction? Thanks.
Official reference and documentation has yet to be released
Can just, have all your servers connected, luckperms has sql support, what would take hours of setup is now just dragging and dropping mods
Is dropping items while running something prevented from Hytale side? If I tie into the packet can i override it?
Does anyone know how to add a new asset type? I've figured out I can implement the JsonAsset type but I'm not sure how to actually register it?
How can I make a plugin interact with another plugin?
It registers automatically. Just make sure you put it in the correct folder
what can i do? "Server requires development mode which is not supported in this build"
dont think you can unless you have their code. maybe adding it as a dependency?
Yeah it would be my own plugin. I'll look into dependencies though, thanks
Why not make one plugin then?
This can be done using the HubPortal interaction. Specify a world name and it will teleport players to the world spawn. No code necessary.
Multiple plugins need to access it
That just means you have to design the API well
It can still be a plugin
Oh gotcha
modder md me custom mod
Yep, I was just wondering how I could make other plugins interact with it
Thanks for the example. I’m choosing to keep the simpler implementation for now. While getPlayerRef() is deprecated, it’s still the most readable option, and I’d rather wait for a proper replacement than introduce extra indirection. For now, adding @SuppressWarnings("removal") keeps things clean.
They would depend on your plugin as implementation
What happens if you hook 2 different plugins to same event? Which one gets called first?
Yeah those other plugins would add it as a dependency similar to how you're adding hytale-server.jar i believe
👍 thanks
Both would prob be called at same time unless you have @override
So undefined behavior...?
how do i hide a mods ability to put things on the crafting menu? i want to disable the ability to craft the violet's benches for now
It's likely priority queued based on how it was registered
But haven't tested
Understandable
I just tend to avoid deprecated stuff.
what can i do? "Server requires development mode which is not supported in this build"
Yep, I get that! Deprecated methods can be a bit risky 😅
I think you're talking about assets themselves... I want to add a completely new type
I'm just a bit confused, let's say I want to change the way WateringCan works, right now there's a UseWateringCanInteraction that extends SimpleBlockINteraction that has a interactWithBlock method.
Now if I hook to event interactWithBlock, will it call the UseWateringCanINteraction interactWithBlock first and then whatever I do with my hook? What if I wanted to just change the water duration for example? Would I just overide the whole method, copy everything but just change the duration variable...? Feels like a weird system to me, but never really been into modding
does anyone know how to multi player
java link ? help
you can add the plugin's jar as a dependency in your plugin and use it
Thanks
21 or 25? java
Hello, i want to do a modify on furnace processing, but i dont have idea where to find the code to do it. someone knows?
hello, does anyone knows why my installed mods does not show in server config to enable them?
i've installed them through the curse app
you re running a dedicated server or local? on local you turn them on it the world creation
a local one, they doesnt show in world creation :c
Is there anywhere to download the server and SDK now, or do we all have to wait for the official release?
The page has a server manual
im working on a local page to manage them with out touching the cmd
i have open for my friends to open the server allways my pc its on
the server jar is the sdk
there's a server guide but it doesn't really help. if you want i can dm you a few links of 3rd party documentation ive found online. i would send them here but links are blocked
it work all for me, i opened with the oficial documentation, there its some videos on youtube too
yea, if you look up "hytale mod documentation" or something similar you can find some websites like gitbook pages people have made
Thanks, I’d really appreciate that.
Refactored my whole project to Kotlin from Java. It's so nice with Hytale 😎
There's a mod on curseforge called Quick Crafting by Jarden that does it, u just gotta edit config file and change modify processing to true.
{
"CraftingModifier": 0.0,
"ModifyProcessing": false
}
Compared to Vanilla Speeds:
1.5x Faster: 0.666
2x Faster: 0.5
3x Faster: 0.333
5x Faster: 0.2
Instant: 0.00 (default)
if wanna make ur own mod idk
do you have any documentation or examples how it works better than java? Im interested
I can do that on the asset editor, but im making an alloy furnace, i need to edit the processing code it self to consume both spaces and give me one item, and i need to know how to add my custom ore to furnace whitelist
The unban command does not go to the server. Please pass it on to the developers
I'm trying to install mods on my server and I get this warning message like 20 times per second:
[2026/01/19 01:21:40 WARN] [HudManagerService] MHUD plugin not available - cannot set HUD: LevelProgress
any idea how to fix it
anyone know whats wrong with my Death Watcher?
HytaleServer.SCHEDULED_EXECUTOR.scheduleAtFixedRate(() -> {
Universe.get().getPlayers().forEach(playerRef -> {
Ref<EntityStore> ref = playerRef.getReference();
if (ref == null) return;
Store<EntityStore> store = ref.getStore();
if (store == null) return;
boolean currentlyDead =
store.getComponent(ref, DeathComponent.getComponentType()) != null;
boolean previouslyDead =
wasDead.getOrDefault(playerRef.getUuid(), false);
if (currentlyDead && !previouslyDead) {
wasDead.put(playerRef.getUuid(), true);
playerRef.sendMessage(
Message.raw("DEBUG: Death detected!")
);
}
if (!currentlyDead && previouslyDead) {
wasDead.remove(playerRef.getUuid());
playerRef.sendMessage(
Message.raw("DEBUG: DeathComponent removed! Teleporting now...")
);
handleRespawn(playerRef, store, ref);
}
});
}, 0L, 200L, TimeUnit.MILLISECONDS);
}```
it never detects deaths
for check death better add own system. Check OnDeathSystem.class
When there’s no one on it sits at 14gb. But even with 10+ people on it doesn’t really go much further above that, usually spikes around 16gb
this isnt even a class, also this is my own system, i made this so idk what youre saying
anyone know why getPlayer().getWindowManager().getWindows() doesn't contain the map window/include it even when its opened?
Do you maybe have -Xmx16G argument on your server starting command?
if anyone wants to build a community together on a server and play via discord voice chat, message me!
Is it possible to create custom cosmetics today?
I know that it is possible to change cosmetics through PlayerSkin, but is it possible to add custom to the server?
Using custom assets i think it's possible
Hytale is built on the ESC pattern. Entity System Component. Instead of SCHEDULED, it is better to add your own system for the player. Take a look at the "com.hypixel.hytale.server.core.modules.entity.damage.DeathSystems$PlayerKilledPlayer" class in the core
I tried it, but it keeps saying invalid texture
is there not a player leave event?
What's the full error
okay, i searched OnDeathSystems and it showed nothing, ill check DeathSystems
oh i see, its a class inside of the class my bad
This is an error in the client's logs. The server is quietly hanging a model that doesn't even exist
Probably a caching issue, clear the cache and recompile the mod / plugin then restart
State sensor or State setter action/motion exists without accompanying state/setter: Idle anyone know what this means
Maybe, I’m just using Nitrado, im not sure what their defaults are
Someone got fnaf in hytale 😭
you need like
`public static class MyOwnPlayerKilledPlayer extends OnDeathSystem {
@Nonnull
private static final Query<EntityStore> QUERY = Archetype.of(new ComponentType[]{Player.getComponentType(), Nameplate.getComponentType()});
@Nonnull
public Query<EntityStore> getQuery() {
return QUERY;
}
public void onComponentAdded(@Nonnull Ref<EntityStore> ref, @Nonnull DeathComponent component, @Nonnull Store<EntityStore> store, @Nonnull CommandBuffer<EntityStore> commandBuffer) {
// YOUR MACIG CODE
}`
and register in EntityStoreRegistry
[2026/01/19 01:38:49 INFO] [CommandManager] SILC executed command: vc
[2026/01/19 01:38:49 INFO] [SOUT] [Debug] VoiceConfigCommand execute
[2026/01/19 01:38:49 INFO] [SOUT] [Debug] Opening voice config for SILC
[2026/01/19 01:38:49 INFO] [SOUT] [Debug] openVoiceConfig called for SILC
[2026/01/19 01:38:49 INFO] [SOUT] [HyUI] Script tag found with content length: 846
[2026/01/19 01:38:50 INFO] [SOUT] [Debug] Select Microphone button clicked
[2026/01/19 01:38:50 INFO] [SOUT] [Debug] Found microphone: Primary Sound Capture Driver
[2026/01/19 01:38:50 INFO] [SOUT] [Debug] Found microphone: SteelSeries Sonar - Microphone (SteelSeries Sonar Virtual Audio Device)
[2026/01/19 01:38:50 INFO] [SOUT] [Debug] Found microphone: Microphone (Sonic Studio Virtual Mixer)
[2026/01/19 01:38:50 INFO] [SOUT] [Debug] Found microphone: Microphone (Arctis Nova 7)
[2026/01/19 01:38:50 INFO] [SOUT] [Debug] Found microphone: Microphone (Fifine Microphone)
[2026/01/19 01:38:50 INFO] [SOUT] [Debug] Found microphone: Headset Microphone (Oculus Virtual Audio Device)
any clues of how we made a hub/lobby?
So close to being done with it and then yall can curse each other out in proximity lmao
what are the best usa hytale server host?
About UI modification, do we have some examples or doc ?
No, everything by oneself
example in other mods or in game files
We are in Utah!
There is:
hytale dot limetta dot dev/reference/ui/ui-files
hytale-docs dot pages dot dev/gui/
anyone know how to make custom structures that can generate in the world?
Does the server have control over a users key bindings? Say I wanted to add a new keybinding option for a player to open a UI.
Yeah, okay, cuz it’s pretty unusual the .ui thing
It's very clever, they basically have their own css
When you find this out please let me know, i've been looking for a while but found nothing credible
Guys, correct me if I'm wrong, but doesn't "BlockingDiskFile" have a race condition?
I noticed that syncSave() acquires a readLock() instead of a writeLock(). This allows multiple threads to write to the file simultaneously. If this hits the permission file or any config under load, it will definitely corrupt the data
hi everyone, so I'm having issues with the Custom HUD.
I was able to automatically show the custom HUD to all players automatically by adding to a List a custom object that contains:
- Player
- PlayerRef
- my custom HUD class instance (which needs a PlayerRef to be given)
The issue comes when calling the method hudManager.resetHud(playerRef);
The error I get in Hytale is Failed to apply CustomUI HUD commands
The error I see in the client logs is System.NullReferenceException: Object reference not set to an instance of an object.
But when I print the Player/PlayerRef/Hud data I don't see anything "null"
if you need code just ask me (I have a lot of prints 🤣)
i keep getting this when i try to use salvage bench "[ProcessingBenchState] No FuelDropItemId defined for Salvagebench fuel value of 0.0 will be lost!"
Has anyone found out how to change the speed of mounts? I'd love to modify the railcarts to move faster 👀
I've looked in a number of different assets but they were all wrong
Anyone know how to change the background texture of a ui within the gui code?
when I try the command builder set text function it always errors out
I have a 2026.01.17-4b0f30090 client connected to a 2026.01.13-dcad8778f server. Infinite ult boosting (scroll+q) AND stamina cancel work. So it must be server side
need to check how your getting/setting the reference.
I've managed Hyxin to work (in the end I need it 😝 )
Do you need any help with that?
src/main/resources/manifest.json:
{
//...
"Main": "com.example.exampleplugin.ExamplePlugin",
"Hyxin": {
"Configs": [
"plugin.mixins.json"
]
}
build.gradle.kts:
repositories {
//...
// remove [ ], added to avoid spam detection
maven("https[:]//cursemaven[.]com") {
name = "CurseMaven"
}
}
dependencies {
compileOnly(files(serverJar))
compileOnly(files(hytaleAssets))
// read on cursemaven how to build this string
compileOnly("curse.maven:hyxin-1405491:7399430")
}
var installPlugin = tasks.register<Copy>("installPlugin") {
dependsOn(tasks.jar)
from(tasks.jar.get().archiveFile)
into(file("run/earlyplugins"))
}
val runServer = tasks.register<JavaExec>("runServer") {
dependsOn(installPlugin)
classpath=files(serverJar)
mainClass.set("com.hypixel.hytale.Main")
workingDir("run")
jvmArgs=listOf(
"-XX:AOTCache=$gameDir/Server/HytaleServer.aot",
"--enable-native-access=ALL-UNNAMED",
)
args=listOf(
"--accept-early-plugins",
"--allow-op",
"--disable-sentry",
"--assets=$gameDir/Assets.zip",
)
}
`
Hey guys im having issues with the salvage workbench not giving me rubble when i give it stone. What could be the issue?
has anyone found any way to apply arbitrary velocities to players? I see the Player.class having a resetVelocity method that takes in a new velocity- but...
I both cant figure out how to get to this class from a PlayerRef, how to get the current velocity, and also this seems like not the right way to do it
the PlayerRef or which one ?
anyone using simple claims and know if this causes lag? "ForceSimpleClaimsChunkWorldMap": true
i saw a big server turned it off so i was curious
yes
Hi, I have a question. I was playing peacefully in my world, but suddenly it crashed. When I placed blocks, they weren't being removed, the mobs weren't moving, and I couldn't break blocks. I exited and came back in after a while, but when I logged in, it was still crashed, except the chunks weren't loading; only the spawn point was loading.
Any solutions?
wait like actually yeah seriously I cannot figure out how to get to the Player.class from PlayerRef or the UUID or anything, does anyone know how?
its not for myself bvut for my players ^^
probobly server crashed in some invalid way, duplicate the world and try it again, otherwise create a new world and transplant the save data
Edited my message to include useful config files
anyone using simple claims and know if this causes lag? "ForceSimpleClaimsChunkWorldMap": true
i saw a big server turned it off so i was curious
Yeah looks like theres an Inventory object you can just throw around at will
is there a template for a plugin for hytale?
Is it enough? Or do you need smth else?
@Nonnull
public Inventory setInventory(Inventory inventory) {
return super.setInventory(inventory, true);
}
its in Player.class
me personally I still have no idea how to get to this class though I'm really hoping someone can help me out 😭
@solid fox if you figure it out please let me know dawg ts has been on my mind all day
its really funny cause the Player class has a PlayerRef but not the other way around (its also tagged deprecated for removal though lmao)
Looks like I can't send links here but look up Hytale-Example-Plugin-Template on github or on google
thanks
how do I enable pvp?
its in the config.json for the world
go to Hytale/UserData/Saves/[save name]/universe/worlds/[world name, prolly default]/config.json
@proven owl its the key "IsPvpEnabled"
press escape its just in the menus there
To get the player class, you have to get the component because player is a component. So do something like
Player player = commandBuffer.getComponent(reference, Player.getComponentType())
uh if you're working in an event, player reference and command buffer should be available. if not, try using a store to get the component in places in the code where you don't have access to those. I think you can also do playerref.getHolder() to get a class so you can querey for components in the player. sumthn like playerref.getHolder().getComponent(playerref, Player.getComponentType())
dont do this, im silly and wrote something wrong
we have done that but none of us can joiun each other
says fire wall but we checked those still no
/world config pvp true
its not guaranteed to work, it uses a peer to peer system that is subject to tons of edge cases with your network configuration
i just realized how wrong i was. thats what i get for staying up all night.
try having each person being the host thats worked for me
we tryed one is trying to set up a server now to see if it works that way
have we already found the best server initialization arguments? or are we still using the default?
Good evening everyone! I'm new here!
does anyone know if there is any documentation ...
wait what is there something simpler? I'm kinda getting steamrolled by ecs I have no idea how im operating right now- right now I have a simple packet interceptor that I'm just running things from, I intend to make a System later for handling what im adding
i'm trying to make something along the lines of those hooks from terraria
nothing official, try googling it(there are many unofficial doc sites)
yeah I wish bruh 😭 - its in the works though hopefully we don't have to wait too long
finally got loading and saving player data to work 🙏
check out https:[//]github[.]com/Ranork/Hytale-Server-Unpacked
I decompiled and extracted it as well to lookup the classes lol
made a WAILA mod! but idk how to share it on here lol
hey yall this is abit complex of a question but can anyone help me find where the backpack icon in the inventory is referenced, i am trying to make it so you can have multiple different backpacks of different types but am unsure how i can change the interaction for when you click the backpack button in the ui
wait yeah theres not really anything new here idk
from what i know, there's no packet sent from the client when a key is pressed, but you can listen for certain client actions (e.g. interact). look into SyncInteractionChains packet
Is there anyway to dynamically update a texture in the UI? (Within the gui handler?)
It's still been useful for me just looking through the source code lol
somebody has the mcp?
you should be able to see the server code decompiled in your IDE actually under one of the panes on the left jsyk
or just decompile it with vineflower if you dont run one of those ides
is there any mods to add a "resource" world that resets every few days?
There's still some documentation on it I like to be able to code while looking at the source code
public class PacketListener implements PacketWatcher {
@Override
public void accept(PacketHandler packetHandler, Packet packet) {
if (packet.getId() != 290) {
return;
}
SyncInteractionChains interactionChains = (SyncInteractionChains) packet;
SyncInteractionChain[] updates = interactionChains.updates;
for (SyncInteractionChain item : updates) {
PlayerAuthentication playerAuthentication = packetHandler.getAuth();
UUID uuid = playerAuthentication.getUuid();
InteractionType interactionType = item.interactionType;
if(interactionType == InteractionType.Ability2){
PlayerRef player = Universe.get().getPlayer(uuid);
EventTitleUtil.showEventTitleToPlayer(
player,
Message.raw("Test1"),
Message.raw("Test2"),
true
);
}
}
}
}
I just started seeing errors on my console after trying to setup votifier mod from a serverlist provider.
I could have but was too lazy lol
How to create a server local?
Is this checking for a player's keybind press?
yeah under Gradle in Intellij, then External Libraries you can see it without doing anything extra
I run a server for friends. We have been trying to play while I manage the server, but it is so buggy. I look forward to the game maturing. Right now the WHO command so I can just see who is on the server shows 3 copies of the same person. And right now I cannot get on the server because it thinks I am already on.
Is there a place we can go to look at the known bugs discovered?
you can always create a new world and copy the save data if the server starts falling apart (assuming restarting it didn't work)
I come from C# so still kinda new to Java and Vs Code 💀 was just trying to help bud
Please shove my face into a guide or some solid info on how to make a functional block.
For example, I want to create an energy generator, something like IC2.
Do I need to do this with a plugin?
I already have a block, but I need a custom UI for it and I just do not get how this works.
I am completely confused. I have watched like a hundred tutorials and understood nothing.
I want to press F and see a Ul, like a furnace or crafting table, but my own custom one.
Guys, please help. You are my last hope.
I have already spent 10 hours on this and I am losing my mind.
ok mb gng same
If I knew what was wrong I would feel better about that. I've already lost one world due to the upgrade. And at the moment being able to see who is logged on isn't as bad as 'me' not being able to play on my own server.
Honestly the most annoying thing I've run into so far with Java Is the access modifiers. There's really no way to make a true internal class or field without having a messy package or going through hoops lol
you mean, like, just a private class?
no Internal where only the namespace can access it or in Java language package
So when it's used as a lib you can hide certain things form the user
oh, yeah, I guess private would only apply if you want it on a per file basis
hey quick question is the internal logic behind the inventory ui like for the helmet and memories and such inside a .ui file or inside the jar or is it something that can be modified in the asset editor?
C# has something called internal where only the local code can access it, Even outer classes with different namespaces aka packages, Java doesn't have any true equivalents to it though other than modules but all libs you use must also be built as a module
protected
does anyone know how i can go about making hytaleserver.jar available to a github action so i can build my project on github but not have the file be included in my repo?
That's for inheritance/subclass
protected allows other classes in the same package to access them
is there any "TickEvent" event or something like that in the HytaleServer ?
Quick question yall, I've been kind of banging my head against this, how can I make an NPC attack faster? Like, I tried speeding up the anim, tried giving the weapon a low cooldown, I equipped a npc with the Weapon_Assault_Rifle but it still only would attack like once every second. Am I just missing something or is this something that would need an actual custom plugin for or can this be modified in the asset editor?
wait yeah this is correct(or at least google/stackoverflow seems to think it is)
look online at some tutorials around ECS, hytale has a system that handles timing events at different intervals and one of them is every game tick
aight i got all stats working. now i have a slight problem... i am using the player data loaded by the PlayerStorage and i'm tring to to clear all effects on the player when they enter a world. I got it to clear the stats i think but the problem is that the on-screen red vignette caused by damage (fire damage in this case) doesnt disappear when I call this on PlayerReadyEvent:
Funnily enough, the red vignette also appears when i first join the game while there is no reference to it in the player data (the EffectController field is empty)
/**
* Copy effects from disk data
* **/
fun PlayerRef.copyEffects(other: Holder<EntityStore?>?) {
val ref: Ref<EntityStore?>? = reference
val store = ref?.getStore()
val world = store?.getExternalData()?.world
val effects = store?.getComponent(ref, EffectControllerComponent.getComponentType())
if (store == null || world == null || effects == null) {
return
}
world.execute {
println("[World-Bound] Clearing effects..")
effects.clearEffects(ref, store)
effects.invalidateCache()```
found it, thanks 🙂
Wait actually there is a class calleld EntityTickingSystem that you need to extend
It has the same issue as no modifier where you have to have everything bundled up in the same package
yes I see that, but I have a doubt, like what does the "Entity" mean ? I need a Tick event but nothing related to the game entities
oh mb I thought thats what you were looking for
Thx but no, coming from C# I'm used to my code being organized into namespaces I just don't want everything junked up into one folder lol
Hytale uses a structure called ECS, Entity Component System as supposed to OOP Object Oriented Programming
Are all plugins called "early plugins"? or what is the difference?
"entity" in this case doesnt necissarily point to like a creature or projectile
Welcome to Java
is there a good server i can join to play on?
ask in #game-discussion
I've heard it's one of the biggest pain points with Java so I feel welcomed
oh then in that case yeah just use folders instead of namespaces and then use protected as you would in C#
you could host it externally and make it download via url, i know its not the best solution but i dont think they officially support downloading server jar yet unless you do it through the client. technically you could try find the url the client downloads it from but it might require authorization
You get an error though if your folder structure doesn't match your package XD
oooh ok ok, and I just found the extends TickingSystem<EntityStore> right under the EntityTickingSystem (reading the description it seems to be what I was looking for)
YEA, I got u hold on let me pull it up
The Java creators really like let's make everyone's code as messy as possible 😭
change the package to match the folder structure
Then I can't access protected and non access modifiers 💀💀💀
github.com/system32developer/Hytale-templates/
what? no protected allows access from all other classes in the same package
if you want it accessable from another package, make it public, otherwise if you want it only accessable from that class make it private
I may just suck at namespaces in C# I am realizing I apologise
When it says same package it means the exact same package it can't be package/one then package/one/two so they would all have to be in package.one and because of the folder restrictions everything would have to be in the same folder, I've been trying to find a solution for hours and I just give up
you get this
The declared package "com.bridge.systems" does not match the expected package "com.bridge.core.systems"
uh I couldn't figure it out lmao sorry, you can of course like write something in your flow to collect it from somewhere online but I don't think you really can
do i have to manually edit jsons for NPCs or can i use some java to define their AI
.gitignore?
Im trying to rename my plugin. Im using the template plugin from Kaupenjo.
Usually I'd just say screw it and cntrl F change names in the entire solution. But idk, is that possible still in IntelliJ or is there a better way
use mine
yeah but i need to keep it updated too. guess i'll have to work out hytale-downloader.
wym by "keep it updated"
keep the server jar updated.
why lol
I just created a shell script that runs the downloader and unzips it, you can have it if u want
api changes...?
i created an item in the asset editor(a block) and i set two different states on it, each one with a different model and texture.
my question is, can i access these states to change them in the api? to change the model and texture with java?
just run hytaleGradle plugin
better to create a layer on top instead of building it directly in the jar
what?
can you not do it through a plugin?
have a link?
i have a plugin, i'm trying to implement a build process for it on github.
/MrMineO5/HytaleGradlePlugin/
huh
github.com/system32developer/Hytale-templates/
oh yeah, you can organize your project like that in Java but you'll just have to use public a lot
That's what my initial comments about Java was about I wish there was more modifier/accessibility control
How do I create a command that doesn't require OP or permission?
public ExampleCommand(String pluginName, String pluginVersion) {
super("test", "Prints a test message from the " + pluginName + " plugin.");
this.setPermissionGroup(GameMode.Adventure); // Allows the command to be used by anyone, not just OP
this.pluginName = pluginName;
this.pluginVersion = pluginVersion;
}
thanks ❤️
have you figured out the more correct way to do this perchance?
Yeah I figured it out. Im just an idiot. Thank u tho
can anyone explain the command buffer to me?
could anyone try to help with solutions to this error?:
connection handshake was canceled due to the configured timeout of 00:00:0 seconds elapsing
we have a private server and everyone except 1 can join, he gets this error. he tried a lot of the common fixes for it and it still just doesnt work
In the asset editor, i try to add to behavior/gatheting/harvest/drop list and it crashes
Does anyone know how to set a player to noclip mode?
is there a way to add ui in the asset editor?
Is dropping items while running something prevented from Hytale side? If I tie into the packet can i override it?
Hello, does anyone have a tutorial for dev and how to properly put the project on iDea?
i actually have a repo as an example project for IDEA in kotlin
builder.remove("#Texture");
builder.appendInline("#LeftPanel", "Group #Texture { Anchor: (Width: 550, Height:733); Background: (TexturePath: \"Placeholder.png\", Border: 0); }");```
even this results in an error texture ;-;
github/TominoCZ/Hytale-Example-Project-Kotlin
github.com/system32developer/Hytale-templates/
thank you as you
does anyone know how to access the CommandBuffer? like is it a property of Universe or what- I'm assuming it gets instantiated somewhere but I can't find it
is this available anywhere else? the plugin url returns a 404.
wym
minecraft development plugin?
is there any solution to test things with two accounts on a local server ? like pvp things
no the hytale gradle plugin you linked above. the ultradev / hytalegradle url returns 404.
it's being printed on the console?
console prints, "Plugin [id: 'app [dot] ultradev [dot] hytalegradle'] was not found in any of the following sources:"
oh probably i miss something, let me see
the maven url shown in the Installation section on the plugin project page returns 404, probably an issue with that
do you have something like this
pluginManagement { repositories { gradlePluginPortal() maven("someurlhere") } }
on settings.gradle?
they have an official doc or now is really by decompile my self ?
I'm stuck with the Minecraft development plugin. It's not working. What should I do once it's installed? I don't understand.
follow the guide
download the repo, then add it to templates
yes but i have the url listed on the plugin page as the parameter for the maven() function instead of just empty string.
this is in settings.gradle.
I got the player from an asset store using Player player = store.getComponent(ref, Player.getComponentType()) ECS events are given an asset store to get the player from. u might be able to do thst in context of what where your trying to get the player. that's the only way that I know but idk
edit: sorry I meant entity store
uhh let me see the repo
get the player object. you will usually get this as a parameter in an ECS system, or you can use any of the overloads of Universe.get().getplayer if not working in ECS.
I would struggle with the settings because I don't speak English and Google Translate was inaccurate.
they are the same for all languages
Anyone knows if i can edit the "Process" bench type, i want to edit the furnace processing to make somethins like an alloy furnace, but i dont know where to see, to create the child logic
this gets a player reference though not the Player class i thought
oh ok ok I see, it also looks like the playerRef.getHolder().getComponent(Player.getComponentType()) maybe does work, i'm about to try it out
Yes, I mean, I just didn't understand what the tutorial meant.
guys it's 4:27 AM, I have schol at 9:00 AM and I still haven't solved this issue 🥲
I understand now
Yeah exactly I was trying to specifically get the Player.class component not just the PlayerRef
is like a template system, you just put the plugin name and packages and the plugin does all the files
@gusty socket try with 1.6.7 version of app.ultradev.hytalegradle plugin
still error, Could not find method maven() for arguments [<url>] on repository container of type org.gradle.api.internal.artifacts.dsl.DefualtRepositoryHandler
so im planning on renting a server from shockbite for hytale but ive never done this kind of thing before how hard is it going to be?
Player.class is literally returning the class Player. there's really not much difference between Player and PlayerRef. what are you trying to do exactly?
settings.gradle
how do you have it
will dm you if that's ok, this anti url bot is a pita
sure
Yes, thank you, honestly, you saved my life. I struggled for two hours trying to find a way to dev
does someone know why the server kicks me from the server when I try to reset my custom HUD like this ? hudManager.resetHud(playerRef);
great question 😭 - I am trying to apply velocities to the player- this is almost definately the wrong way of going about it but I can't seem to find any way else
seriously if anyone knows how to simply add any sort of physics impulse to the player please lmk
np
nobody here have experience with custom HUDs ? 😭 🙏
hytale[.]ellie[.]au/
nono I'm not talking about that
Anyone know how to get a player by name/uuid? Almost like Bukkit has Bukkit.getPlayer(name/uuid). I'd assume there is a collection of players that are stored by the server somewhere
What would you like to know?
Does "world config pvp true --world (x)" not work when sent from console? i'm going crazy rn lol
you can get to Player like this:
PlayerRef test = Universe.get().getPlayer();
Ref<EntityStore> ref = test.getReference();
if (ref != null) {
Store<EntityStore> store = ref.getStore();
Player player = store.getComponent(ref, Player.getComponentType());
}
but i haven't looked into getting or setting velocity.
Is there any reason that Hytale wouldn't have a SQL Driver implemented in it?
because hytale doesnt use it
server
I gotchu, yeah thats what I'm doing now but I think I hit a dead end for sure
Does anyone know how to disable creative brush tools?
I have a valid .ui file, I'm loading the custom HUD from task (the task is run from the start() method in the main class).
Everything's good, the HUD is rendered.
I have registered a PlayerChatEvent that when the player sends a specific message (not command) the custom HUD has to disappear (for that, the event calls the stopTask method I created, so it will stop rendering the custom HUD and then after that it will reset the
HUD).
But when doing hudManager.resetHud(playerRef); in the stopTask method my client crashes (I get kicked) with the following error in the client log file:
2026-01-19 04:38:33.9995|INFO|HytaleClient.Application.AppGameLoading|Disconnecting with error during stage InGame: Failed to apply CustomUI HUD commands
2026-01-19 04:38:33.9995|INFO|HytaleClient.Application.AppGameLoading|System.NullReferenceException: Object reference not set to an instance of an object. System.NullReferenceException: Object reference not set to an instance of an object.
for those wondering about curse approval speeds and such:
Sunday, Monday, Tuesday, Wednesday, Thursday: 3:00 AM - 11:00 AM (Your time)
Friday, Saturday: Some moderation is done, but not as quickly as during the other days.
Projects are moderated First in, First out. If you submit late in the work day, it will likely get left until the next day!
New Projects or anything flagged for manual review: 1-3 Working Days
Updates to approved projects not needing manual approval: 1 Hour
-If your file has been "Under Review" for more than an hour, then it is at manual review!```
oh duh, the Ref is a ref to the entity of which Player is a component. so try:
var velocity = store.getComponent(ref, Velocity.getComponentType());
wait ❤️ is this real
yes, the way ECS works is that entities are the "things" and components are data packs that can be added to the things. so to get velocity, you need to get the Velocity component from the entity.
Instead of resetting the hud, try simply updating the CustomUIHUD which will rebuild it (recall the .build for you). - basically just .show the hud again.
(fyi hyui supports huds now with the hud builder handling multiple/refreshing for you/etc.)
I notice that if you stand in fire and teleport to a different world then the red vignette from burning stays on-screen
yes but by resetting the HUD I mean that I want it to be removed from the player screen, not rebuilt
Oh, just hide it by setting the root node to Visibility: false.
How r people putting floating custom images into the game?
aka commandBuilder.set("#RootNodeId.Visibility", false) then .show/refresh it again
Its my favorite thing to see so many people being exposed to an ECS!!! - 😄
i hate ecs
very new to making plugins. I want to make it so a block doesnt drop. Any good documentation on plugins with blocks?
ecs good, corekeeper also implemented one it was fun
any advice for making the game harder for my server? THis game is pretty easy. Any mods people are using to make it more challenging?
one day it will click and it will become dead simple to you
Had not idea! - This is good news for me 😄
Memory Leaks will!
loool
Im trying to add the slight glowing vfx that wans wonder weapon has on my custom weapon, does anyone know how?
i got 48gb of ram
Oh, Void world 1 person burned 20Gigs I am sure you can do it!
I built my own server a while ago. So I do all my self hosting on Pterodactyl. server hosts are charging too much for rent
now second issue : how tf I access the commandBuilder from an event or from my TaskManager class XD
er, reference it somehow from your hud
what kind of voodoo are you working there? lol
you'll get it in the .build method
I'm working with Hell rn I think
so just have a field in your hud that when it rebuilds and "shouldHide" is true, set visibility to nothin'.
you know what ? it's almost 5 am, I have school at 9 so I'll go sleep with my tiny 4 hours of sleep and I'll redo the project from scratch
I run my home lab like a little mini enterprise. - But I agree, I will never run any public servers via my home lab though WAY to risky, I rather pay for risk mitigation and better performance. 😄
But! I get to build my own orchestrator... For the second time because I accidentally deleted all my source for my last. So two days goin to that now!
plsusehyuithx :) :)
in your main plugin class, use this.getCommanRegistry, then pass it as a parameter to wherever it needs to go. for an event that would be the constructor of the event class. for whatever else it would probably also be the constructor there. 🙂
yea all my self hosting is for my friends only. I run truenas but run a VM for my server hosting platform
This is the way, friends are all good! I fully agree here.
hyui ? you mean the ui builder or what ?
What demonic tounge did you type in?
No I mean the plugin.
nono I mean de uiCommandBuilder for building the UI, nothing about commands
I will play big servers will factions are good. But im not paying 20 dollars a month for a low tier garbage server just for me and 2 other friends lol.
Aka makes your life easier to make UI's and HUD's and accepts UI files, or HTML-like syntax with full CSS selector support.
oh sorry haven't done anything with ui yet. lots of people have been asking questions about ui modding, and i haven't seen really any answers.
so is it just plugins out and not mods?
plugins are mods. they're just called plugins to differentiate them from other types of mods.
plugins are mods afaik
I'll take a look later
There's no client mods.
for now developing UIs is kinda brainf*ck with unofficial docs, but with trial and error you can learn a few things 🙂
Hytale's Entity Component System (ECS) Explained! (Part 1/2)
^ Youtube. Just skimmed it, if yall want to learn what an ECS is and how it works and how to approach it take a look at this.
They're all just server plugins/data packs
this whole community started out that way. all existing documentation is UNOFFICIAL. so you're not alone. 🙂
is there anyway i can simulate another player to test multiplayer interactions?
HudBuilder.detachedHud()
.fromHtml("<div class=\"container\">Hey</div>")
.withRefreshRate(1000)
.show(playerRef, store);
Not too bad.
has anyone been able to get prefabs on nitrando sever?
Uh, yeah, seems way more easier. I’ll test that tomorrow and contact you for more info if I doesn’t bother you
No probv
how would i go about checking to see if a player is standing on a certain block? i guess i could just always check the block under them but that doesnt sound performant at all lol
any way to hook into the asset interaction system with collisions or something? or just a better way lol
how come noone has made a bauble mod yet
how come noone has made a fabric mod yet? /s
We can say that for anything that isn't made. Go make it :)
sadly i dont have the skills to make such a major mod
I mean I made mixin support, does that count xD?
Yep :)
is it public ?
working on uploading it rn.
does it require the easyplugin folder ?
earlyplugins yea
Any way that works is the better way. Then you make it better when you learn a better than that way.
Though I don't see why that would be ill performant, just depends how its checking and when it executes.
wait how do i get a free hytale acc ?
... you don't?
like a code or smth ?
You get the account for free when you buy the game!
try to get a j*b
wher does it come
im 17 so thas not possible
https://store.hytale.com/ there you go, just buy the game then you get a free account and you can login with it
im broke i have mc tho
how come no one has made a ragdoll mod
Then ask your parents.
if i want to override a function from one of the systems or components in the server jar, how would i mod that in since extending the class would only create a child class
u think if they allowed i would be here rn
work a small side job once charge 20$ for it and boom hytale
What are you expecting right now? You're one of hundreds of children crying about not being able to buy the game, go beg in #game-discussion like everyone else.
you can literally get it for 10$
hm ye like wht ? online .. i need it to be online im too scared to touch grass
Depends on how the components flow. You could ask to be executed as a system after the other system and fix components that the other system changed.
This channel is about server plugin modding, please, go to #game-discussion
i want to modify the system itself, basically i want to change knockback behavior inside the knockback systems
Anyone figured out if we can move a player from one server to another via plugin/code? Or is that not possible? I'm trying to implement a queue system
is there any fps boosting mods ?
Game already runs at 256fps
how old are you
i get 60 fps with random lag spikes
on a game you didn't buy yet?
16 turning 17 this year
then thats a you problem idk what you can or cant do but i doubt anyone will just dish you out a free copy of the game with nothing in return. and if youre 17 and not allowed to play hytale then you may or may not want to talk with your parents. or ask your parents if you can do some work for them for 20$ and if that is also not an option then i dont think anyone can help you aside you using your brain and figuring it out as hard as it sounds
Are they still asking for free copies?
yes
no im notg
Bro it's so pathetic
r ther fps boosting mods or no ?
Don't need 'em
theres no need for them the engine is optimized very well
Just check cursed forge
okie
Imma ask my question again but, Anyone figured out if we can move a player from one server to another via plugin/code? Or is that not possible? I'm trying to implement a queue system
gng i havve a i3 11th gen with intel integrated graphics 8 gb ram
maybe you should stick with roblox
no i use sodium adn all for mc so i m ok
Do you know the command to maintain inventory?
dont think anyone figured that out yet
Sigh
idk if that helps but there is a refer command that you can send from the server
description says "Refer a player to another server for testing"
or if its even possible i am guessing you mean something like minecraft multiverse?
I'm tryna send players from one server (lobby) using a queuing feature to another open server (for bedwars)
why not use worlds?
👀👀👀 you got any more info on it?
One server can't handle all that stress
nah, just saw the command in the help menu in the creative tools. Thats all the info i got
Ah no worries
is there a guide to getting started with Hytale plugins? I tried to follow Getting Started with Plugins on Curseforge
but I get an error when connecting to the local server:(Server requires development mode which is not supported in this build)
any ideas? more up to date guide?
youtube has lots of guides idk if theres any written ones out yet
Should honestly just be a question of putting the files in the mods/ folder
I mean authoring my own plugins
kaupenjoe is a good example or TroubleDev
oh nice we're blocking the most popular modding docs website here. brilliant.
I cant post links or I would share the guide I tried to follow, it must be out of date, the local server is running inside intelliJ and it sees me try to connect but refuses, I wonder if this guide broke with the new update?
links in general i believe
Ah yeah ok I guess that makes sense
What community docs have you guys been using?
Just google "hytalemodding" you'll find it