# Hytale Modding Documentation > The number one community resource for modding Hytale, featuring comprehensive guides, detailed documentation, and essential tools to kickstart your modding journey. ## Docs - [Introduction](https://hytalemodding.dev/en/docs): Essential knowledge for modding Hytale. - [Quick Start](https://hytalemodding.dev/en/docs/quick-start): How to start modding. - Established Information - [Frequently Asked Questions](https://hytalemodding.dev/en/docs/established-information/faq): Frequently Asked Questions about Hytale modding. - [Developer Q&A Technical Insights](https://hytalemodding.dev/en/docs/established-information/developer-qa-insights): Comprehensive summary of technical insights from Hytale developers covering architecture, modding, gameplay systems, and development philosophy. - [Server Code Insights](https://hytalemodding.dev/en/docs/established-information/server-plugin-insights): Slikey shared some insights about server code on 12/15/2025. This document covers key points and takeaways from that discussion. - Specific Categories - Server - [Server-First Development](https://hytalemodding.dev/en/docs/established-information/server/server-first-dev): Information regarding what Server-First Development means, and more. - Content Categories - [Modelling & Texturing / Art Assets](https://hytalemodding.dev/en/docs/established-information/server/content-categories/art-assets): Information about 3D Modelling, Texturing and Art Assets in Hytale. - [Data Assets](https://hytalemodding.dev/en/docs/established-information/server/content-categories/data-assets): Information about data assets in Hytale and how they drive gameplay behavior and content creation. - [Java Modding (Server Plugins)](https://hytalemodding.dev/en/docs/established-information/server/content-categories/plugin): An introduction to what we know of Hytale's Java-based modding system as of writing this article. - [Visual Scripting](https://hytalemodding.dev/en/docs/established-information/server/content-categories/visual-scripting): An introduction to what we know of Hytale's visual scripting system as of writing this. - Interface - [Inputs](https://hytalemodding.dev/en/docs/established-information/server/interface/inputs): Information about input methods supported in Hytale. - [UI Customization](https://hytalemodding.dev/en/docs/established-information/server/interface/ui-customization): Information about UI customization in Hytale. - [Client](https://hytalemodding.dev/en/docs/established-information/client): Information regarding the Hytale client. - Gameplay - [Creative](https://hytalemodding.dev/en/docs/established-information/gameplay/creative): Information regarding the creative mode in Hytale. - Official Documentation - [NPC Meta](https://hytalemodding.dev/en/docs/official-documentation/npc-doc): Official documentation for NPC creation and configuration. - [Custom UI](https://hytalemodding.dev/en/docs/official-documentation/custom-ui) - [Common Styling](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/common-styling) - [Layout](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/layout) - [Markup](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/markup) - [Type Documentation](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation) - Elements - [ActionButton](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/actionbutton) - [AssetImage](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/assetimage) - [BackButton](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/backbutton) - [BlockSelector](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/blockselector) - [Button](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/button) - [CharacterPreviewComponent](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/characterpreviewcomponent) - [CheckBox](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/checkbox) - [CheckBoxContainer](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/checkboxcontainer) - [CircularProgressBar](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/circularprogressbar) - [CodeEditor](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/codeeditor) - [ColorOptionGrid](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/coloroptiongrid) - [ColorPicker](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/colorpicker) - [ColorPickerDropdownBox](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/colorpickerdropdownbox) - [CompactTextField](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/compacttextfield) - [DropdownBox](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/dropdownbox) - [DropdownEntry](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/dropdownentry) - [DynamicPane](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/dynamicpane) - [DynamicPaneContainer](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/dynamicpanecontainer) - [FloatSlider](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/floatslider) - [FloatSliderNumberField](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/floatslidernumberfield) - [Group](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/group) - [HotkeyLabel](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/hotkeylabel) - [ItemGrid](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/itemgrid) - [ItemIcon](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/itemicon) - [ItemPreviewComponent](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/itempreviewcomponent) - [ItemSlot](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/itemslot) - [ItemSlotButton](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/itemslotbutton) - [Label](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/label) - [LabeledCheckBox](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/labeledcheckbox) - [MenuItem](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/menuitem) - [MultilineTextField](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/multilinetextfield) - [NumberField](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/numberfield) - [Panel](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/panel) - [ProgressBar](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/progressbar) - [Elements](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/README) - [ReorderableList](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/reorderablelist) - [ReorderableListGrip](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/reorderablelistgrip) - [SceneBlur](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/sceneblur) - [Slider](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/slider) - [SliderNumberField](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/slidernumberfield) - [Sprite](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/sprite) - [TabButton](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/tabbutton) - [TabNavigation](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/tabnavigation) - [TextButton](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/textbutton) - [TextField](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/textfield) - [TimerLabel](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/timerlabel) - [ToggleButton](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/elements/togglebutton) - Enums - [ActionButtonAlignment](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/actionbuttonalignment) - [CodeEditorLanguage](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/codeeditorlanguage) - [ColorFormat](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/colorformat) - [DropdownBoxAlign](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/dropdownboxalign) - [InputFieldButtonSide](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/inputfieldbuttonside) - [InputFieldIconSide](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/inputfieldiconside) - [ItemGridInfoDisplayMode](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/itemgridinfodisplaymode) - [LabelAlignment](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/labelalignment) - [LayoutMode](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/layoutmode) - [MouseWheelScrollBehaviourType](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/mousewheelscrollbehaviourtype) - [ProgressBarAlignment](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/progressbaralignment) - [ProgressBarDirection](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/progressbardirection) - [Enums](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/README) - [ResizeType](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/resizetype) - [TimerDirection](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/timerdirection) - [TooltipAlignment](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/enums/tooltipalignment) - Property types - [Anchor](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/anchor) - [BlockSelectorStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/blockselectorstyle) - [ButtonSounds](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/buttonsounds) - [ButtonStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/buttonstyle) - [ButtonStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/buttonstylestate) - [CheckBoxStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/checkboxstyle) - [CheckBoxStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/checkboxstylestate) - [ClientItemStack](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/clientitemstack) - [ColorOptionGridStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/coloroptiongridstyle) - [ColorPickerDropdownBoxStateBackground](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/colorpickerdropdownboxstatebackground) - [ColorPickerDropdownBoxStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/colorpickerdropdownboxstyle) - [ColorPickerStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/colorpickerstyle) - [DropdownBoxSearchInputStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/dropdownboxsearchinputstyle) - [DropdownBoxSounds](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/dropdownboxsounds) - [DropdownBoxStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/dropdownboxstyle) - [InputFieldButtonStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/inputfieldbuttonstyle) - [InputFieldDecorationStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/inputfielddecorationstyle) - [InputFieldDecorationStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/inputfielddecorationstylestate) - [InputFieldIcon](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/inputfieldicon) - [InputFieldStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/inputfieldstyle) - [ItemGridSlot](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/itemgridslot) - [ItemGridStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/itemgridstyle) - [LabeledCheckBoxStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/labeledcheckboxstyle) - [LabeledCheckBoxStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/labeledcheckboxstylestate) - [LabelSpan](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/labelspan) - [LabelStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/labelstyle) - [NumberFieldFormat](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/numberfieldformat) - [Padding](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/padding) - [PatchStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/patchstyle) - [PopupStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/popupstyle) - [Property Types](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/README) - [ScrollbarStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/scrollbarstyle) - [SliderStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/sliderstyle) - [SoundStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/soundstyle) - [SpriteFrame](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/spriteframe) - [SubMenuItemStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/submenuitemstyle) - [SubMenuItemStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/submenuitemstylestate) - [Tab](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/tab) - [TabNavigationStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/tabnavigationstyle) - [TabStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/tabstyle) - [TabStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/tabstylestate) - [TextButtonStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/textbuttonstyle) - [TextButtonStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/textbuttonstylestate) - [TextTooltipStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/texttooltipstyle) - [ToggleButtonStyle](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/togglebuttonstyle) - [ToggleButtonStyleState](https://hytalemodding.dev/en/docs/official-documentation/custom-ui/type-documentation/property-types/togglebuttonstylestate) - NPC Documentation - [1 - Know Your Enemy](https://hytalemodding.dev/en/docs/official-documentation/npc/1-know-your-enemy) - [2 - Getting started with Templates](https://hytalemodding.dev/en/docs/official-documentation/npc/2-getting-started-with-templates) - [3 - The importance of being idle](https://hytalemodding.dev/en/docs/official-documentation/npc/3-importance-of-being-idle) - [4 - Drawing the rest of the ogre](https://hytalemodding.dev/en/docs/official-documentation/npc/4-drawing-the-ogre) - [5 - NPC Sleep Behavior](https://hytalemodding.dev/en/docs/official-documentation/npc/5-sleep-behavior) - [6 - A brief interlude](https://hytalemodding.dev/en/docs/official-documentation/npc/6-a-brief-interlude): or: how I learned to stop worrying and love building NPC components - [7 - Sleep Animations](https://hytalemodding.dev/en/docs/official-documentation/npc/7-sleep-animation) - [8 - Feeding the Ogre](https://hytalemodding.dev/en/docs/official-documentation/npc/8-food) - [9 - Inter-NPC Interaction](https://hytalemodding.dev/en/docs/official-documentation/npc/9-inter-npc-interaction) - [10 - Attacking a Player](https://hytalemodding.dev/en/docs/official-documentation/npc/10-attack-a-player) - [11 - Melee Combat](https://hytalemodding.dev/en/docs/official-documentation/npc/11-melee-combat) - [12 - Appendix](https://hytalemodding.dev/en/docs/official-documentation/npc/12-appendix) - World Generation - Worldgen Pack Tutorial - [Asset Packs](https://hytalemodding.dev/en/docs/official-documentation/worldgen/pack-tutorial/asset-packs): Covers how to create and install Asset Packs - Worldgen Tutorial - [Density Generation Concepts](https://hytalemodding.dev/en/docs/official-documentation/worldgen/worldgen-tutorial/density-generation-concepts): Explores the basic concepts of world generation in the context of Hytale. - [Materials Generation Concepts](https://hytalemodding.dev/en/docs/official-documentation/worldgen/worldgen-tutorial/materials-generation-concepts): Explores the basic concepts of world generation in the context of Hytale. - [Optimization (WIP)](https://hytalemodding.dev/en/docs/official-documentation/worldgen/worldgen-tutorial/optimization-wip): Living document about performance optimization in world-gen content. - [Prop Generation Concepts](https://hytalemodding.dev/en/docs/official-documentation/worldgen/worldgen-tutorial/prop-generation-concepts): Explores the basic concepts of world generation in the context of Hytale. - [How to edit and create Biomes](https://hytalemodding.dev/en/docs/official-documentation/worldgen/worldgen-tutorial/README): Explores where world generation assets can be found and how to edit them. - Technical Hytale Generator - [Assignments](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/assignments): Assigns Props to each position in a Positions field. - [Block Mask](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/block-mask): Determines which Materials get to replace which other Materials when placing content in the world. - [Curves](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/curves): Curves map decimal values to other decimal values. They enable the basic f(x) = y math expression. These nodes can be used to build the functions you need in world-gen. - [Density](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/density): Defines a 3D decimal value field. - [Material Providers](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/material-providers): Determines which Material to use where. - [Material](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/material): Defines a block Material. - [Patterns](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/patterns): Validates a world location based on its Material composition and other criteria. - [Positions Provider](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/positions-provider): Determines an infinite 3D positions field. - [Prop Distributions](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/prop-distributions): Determines a field of Positioned Props. - [Props](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/props): Localized content that can read and write to the world. - [Scanners](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/scanners): Scans a local part of the world for valid positions. - [Vector Provider](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/vector-provider): Defines a 3D decimal vector {x, y, z}. - [World Structure](https://hytalemodding.dev/en/docs/official-documentation/worldgen/technical-hytale-generator/world-structure): Defines the contents of an entire world. - Guides - [Learning to Learn](https://hytalemodding.dev/en/docs/guides/learning-to-learn): A guide to help you become a better learner and adapt to new information effectively. - Java Basics - [00 - Introduction to Java](https://hytalemodding.dev/en/docs/guides/java-basics/00-introduction): A beginner's guide to understanding the fundamentals of Java programming for Hytale modding. - [01 - Variables & Data Types](https://hytalemodding.dev/en/docs/guides/java-basics/01-variables): An introduction to variables and data types in Java programming. - [02 - Operators and Expressions](https://hytalemodding.dev/en/docs/guides/java-basics/02-operators): An introduction to operators and expressions in Java programming. - [03 - Control Flow If Statements](https://hytalemodding.dev/en/docs/guides/java-basics/03-control-flow-if): Learn how to control the flow of your Java programs using if statements. - [04 - Control Flow Loops](https://hytalemodding.dev/en/docs/guides/java-basics/04-control-flow-loops): Learn how to repeat code efficiently using loops in Java - [05 - Arrays](https://hytalemodding.dev/en/docs/guides/java-basics/05-arrays): Learn how to store and manage collections of data using arrays. - [06 - Methods (Functions)](https://hytalemodding.dev/en/docs/guides/java-basics/06-methods-functions): Learn how to organize and reuse code with methods. - [07 - Introduction to Object-Oriented Programming](https://hytalemodding.dev/en/docs/guides/java-basics/07-introduction-oop): Learn the fundamentals of classes and objects in Java. - [08 - Encapsulation and Access Modifiers](https://hytalemodding.dev/en/docs/guides/java-basics/08-access-modifiers): Learn how to protect and control access to your class data. - [09 - Working with Strings](https://hytalemodding.dev/en/docs/guides/java-basics/09-string): Master text manipulation and string operations in Java. - [10 - ArrayList and Collections](https://hytalemodding.dev/en/docs/guides/java-basics/10-arraylist): Learn to use flexible, resizable collections in Java. - [11 - HashMap and Key-Value Storage](https://hytalemodding.dev/en/docs/guides/java-basics/11-hashmaps): Learn to store and retrieve data using key-value pairs. - [12 - Exception Handling](https://hytalemodding.dev/en/docs/guides/java-basics/12-exception-handling): Learn how to handle errors gracefully in your Java programs. - [13 - Inheritance](https://hytalemodding.dev/en/docs/guides/java-basics/13-inheritance): Learn how to create class hierarchies and reuse code effectively. - Server Plugins - Getting Started - [Setting Up Your Development Environment](https://hytalemodding.dev/en/docs/guides/plugin/setting-up-env): Learn how to set up your development environment for modding Hytale. - [Build and Test Your Mod](https://hytalemodding.dev/en/docs/guides/plugin/build-and-test): Learn how to build your Hytale mod and test it in-game. - [Browsing the server.jar code](https://hytalemodding.dev/en/docs/guides/plugin/browsing-serverjar): Learn how to decompile the HytaleServer.jar and browse the source code. - [Logging](https://hytalemodding.dev/en/docs/guides/plugin/logging): Learn how to log messages on the server using Hytale's server logging. - Core Concepts - [Creating Commands](https://hytalemodding.dev/en/docs/guides/plugin/creating-commands): Learn how to create custom commands for your Hytale mod. - [Creating Events Listeners](https://hytalemodding.dev/en/docs/guides/plugin/creating-events): Learn how to create event listeners for your Hytale mod. - [Storing Persistent Data on the Player](https://hytalemodding.dev/en/docs/guides/plugin/store-persistent-data): Learn how to save and load persistent data using Components - [Creating a Configuration File](https://hytalemodding.dev/en/docs/guides/plugin/creating-configuration-file): Learn how to create and manage configuration files for your Hytale mod. - [Permission Management](https://hytalemodding.dev/en/docs/guides/plugin/permission-management): Learn how to manage permission nodes and groups in your Hytale plugin. - Custom Creations - [Create Custom Item and Interaction](https://hytalemodding.dev/en/docs/guides/plugin/item-interaction): Learn how you can create a custom item interactions for your custom items - [Creating custom blocks](https://hytalemodding.dev/en/docs/guides/plugin/creating-block): Learn how to create custom blocks for your Hytale mod. - [Animated Block Textures](https://hytalemodding.dev/en/docs/guides/plugin/animated-block-textures): Learn how to attach a .blockyanim to a block - Player - [Teleporting the player](https://hytalemodding.dev/en/docs/guides/plugin/teleporting-players): Learn how to teleport the player. - [Inventory Management](https://hytalemodding.dev/en/docs/guides/plugin/inventory-management): Learn how to manage player inventories in your Hytale mod. - [Player Stats](https://hytalemodding.dev/en/docs/guides/plugin/player-stats): A simple guide on how to edit player stats. - [Player Death Event](https://hytalemodding.dev/en/docs/guides/plugin/player-death-event): Learn how to use the OnDeathSystem. - Player Input - [Player Input Guide](https://hytalemodding.dev/en/docs/guides/plugin/player-input-guide): Learn how to handle player input. - [Packets: Client-to-Server Reference](https://hytalemodding.dev/en/docs/guides/plugin/client-inputs-reference): Complete reference for every packet the client can send to the server. - [Packet Interception](https://hytalemodding.dev/en/docs/guides/plugin/customizing-hotbar-actions): Step by step breakdown on customizing hotbar functionality via packet interception. - [Customizing Camera Controls](https://hytalemodding.dev/en/docs/guides/plugin/customizing-camera-controls): Intro to custom camera modding. - World & Entities - [World Generation System](https://hytalemodding.dev/en/docs/guides/plugin/world-gen): Learn how to create custom world generation features for your Hytale mod. - [Instance System](https://hytalemodding.dev/en/docs/guides/plugin/instances): Learn how to create, manage, and teleport players into instances in Hytale. - [Spawning Entities](https://hytalemodding.dev/en/docs/guides/plugin/spawning-entities): Learn how to spawn Entities in Hytale - [Spawning NPCs](https://hytalemodding.dev/en/docs/guides/plugin/spawning-npcs): Learn how to easily spawn NPCs using the NPCPlugin helper. - Visual/Audio - [Sending notifications](https://hytalemodding.dev/en/docs/guides/plugin/send-notifications): Learn how to send notifications (similar to item pickup) with your Hytale Plugin - [Formatting the chat](https://hytalemodding.dev/en/docs/guides/plugin/chat-formatting): Learn how to format the chat using the PlayerChatEvent and rich text with TinyMessage - Items & Inventory - [Working with the Item Registry](https://hytalemodding.dev/en/docs/guides/plugin/item-registry): Learn how to access and query the game's item registry to list all items, check if items exist, and retrieve item properties. - [Create Custom Item and Interaction](https://hytalemodding.dev/en/docs/guides/plugin/item-interaction): Learn how you can create a custom item interactions for your custom items - [Inventory Management](https://hytalemodding.dev/en/docs/guides/plugin/inventory-management): Learn how to manage player inventories in your Hytale mod. - More Topics - [Add a Custom Mod Icon](https://hytalemodding.dev/en/docs/guides/plugin/add-mod-icon): Learn how to add your mod icon to the World Mod Settings tab. - [Interactable NPCs](https://hytalemodding.dev/en/docs/guides/plugin/Interactable-NPCs): Bringing NPCs to Life: How Custom NPC Interactions Work in Hytale. - [Listening to Packets](https://hytalemodding.dev/en/docs/guides/plugin/listening-to-packets): Learn how to listen to packets that are sent or received from the Client - [Playing Sounds](https://hytalemodding.dev/en/docs/guides/plugin/playing-sounds): Learn how to Play Sounds with your Hytale Plugin - [Title Holograms](https://hytalemodding.dev/en/docs/guides/plugin/text-hologram): Learn how to create title holograms. - [Tracking Mod Analytics with HStats](https://hytalemodding.dev/en/docs/guides/plugin/tracking-mod-analytics-with-hstats): Learn how you can track Analytics for your Hytale Mod for Free using hstats.dev - [Custom UI](https://hytalemodding.dev/en/docs/guides/plugin/ui): Learn how to show custom UI to the player - Entity Component System - [Entity Component System](https://hytalemodding.dev/en/docs/guides/ecs/entity-component-system): A basic introduction into ECS (Entity Component System) - [Hytale ECS Theory](https://hytalemodding.dev/en/docs/guides/ecs/hytale-ecs-theory): In this guide you will learn about the basics of Hytale's powerful ECS system as well as create your own component, a system, and work together with other systems to create gameplay logic. - [Systems](https://hytalemodding.dev/en/docs/guides/ecs/systems): In this guide you will learn about how systems work inside of Hytale. - [Example ECS Plugin](https://hytalemodding.dev/en/docs/guides/ecs/example-ecs-plugin): In this guide you will learn how to create a simple poison system utilizing all of the features you previously learned about Hytale's ECS system - [Block Components](https://hytalemodding.dev/en/docs/guides/ecs/block-components): Learn how to use the block components. - NPC Inner Workings - [NPC Introduction](https://hytalemodding.dev/en/docs/guides/npc-workings/npc-intro): A introduction and demystifier of NPCs. - [NPC Roles](https://hytalemodding.dev/en/docs/guides/npc-workings/npc-role): Step into your new role, Ms Fairy. - [NPC States](https://hytalemodding.dev/en/docs/guides/npc-workings/npc-states): The state of matter, or in this case the state of NPCs. - Gameplay Systems - [Prefabs](https://hytalemodding.dev/en/docs/guides/prefabs): Documentation about Prefabs in Hytale. - Documentation - [ArgTypes](https://hytalemodding.dev/en/docs/server/argtypes): Available ArgTypes - [Entities](https://hytalemodding.dev/en/docs/server/entities): List of all Entities in Hytale - [Events](https://hytalemodding.dev/en/docs/server/events): List of all events in Hytale - [Interactions](https://hytalemodding.dev/en/docs/server/interaction-reference): A list of most Interaction types provided by Hypixel, along with the meaning of their fields, and how they fit together. - [Sounds](https://hytalemodding.dev/en/docs/server/sounds): List of all Sounds in Hytale - Community - [Publishing Your Mod](https://hytalemodding.dev/en/docs/publishing): Learn how to publish your mod to the community. - [Modtale](https://hytalemodding.dev/en/docs/publishing/modtale): Complete guide to publishing and managing your Hytale mods on Modtale. - [CurseForge](https://hytalemodding.dev/en/docs/publishing/curseforge): Learn how to publish your mod to CurseForge - [BuiltByBit](https://hytalemodding.dev/en/docs/publishing/builtbybit): Complete guide to publishing and selling your Hytale creations on BuiltByBit. - [Modifold](https://hytalemodding.dev/en/docs/publishing/modifold): A step-by-step guide to publishing your mod on Modifold. - [Thunderstore](https://hytalemodding.dev/en/docs/publishing/thunderstore): Let's go over the prerequisites for Thunderstore - Package Creation and Publishing - [1. Thunderstore Package Setup Basics](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-basics): Let's go over the basics of setting up a Thunderstore package. - [2. Community Package Setup](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-setup): Let's go over how to put your content into the Thunderstore Package. - [Early Plugin](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-setup/early-plugins): Let's go over how to put Early Plugins into the Thunderstore Package. - [Plugin](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-setup/plugins): Let's go over how to put Plugins into the Thunderstore Package. - [Asset Pack](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-setup/asset-packs): Let's go over how to put Asset Packs into the Thunderstore Package. - [Save](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-setup/saves): Let's go over how to put Saves into the Thunderstore Package. - [Universe](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-setup/universes): Let's go over how to put Universes into the Thunderstore Package. - [World](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-setup/worlds): Let's go over how to put Worlds into the Thunderstore Package. - [3. Thunderstore Package Upload](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-upload): Let's go over the basics of uploading a Thunderstore package. - [4. Thunderstore Package Updating](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-update): Let's go over the basics of updating a Thunderstore package. - Package Installation - [Thunderstore Community](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-install): Let's go over the basics of installing your Thunderstore Packages. - [Early Plugin](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-install/early-plugins): Let's go over how to install Early Plugins from the Thunderstore Package. - [Plugin](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-install/plugins): Let's go over how to install Plugins from the Thunderstore Package. - [Asset Pack](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-install/asset-packs): Let's go over how to install Asset Packs from the Thunderstore Package. - [Saves](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-install/saves): Let's go over how to install Saves from the Thunderstore Package. - [Universes](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-install/universes): Let's go over how to install Universes from the Thunderstore Package. - [Worlds](https://hytalemodding.dev/en/docs/publishing/thunderstore/package-install/worlds): Let's go over how to install Worlds from the Thunderstore Package. - [Contributing](https://hytalemodding.dev/en/docs/contributing) - [PR Guidelines](https://hytalemodding.dev/en/docs/contributing/pr-guidelines): Guidelines that reviewers and contributors should follow when submitting and reviewing pull requests. - [Translate](https://hytalemodding.dev/en/docs/contributing/translate): How to translate HytaleModding to your language - [Writing Guides](https://hytalemodding.dev/en/docs/contributing/writing-guides) - [Wiki](https://hytalemodding.dev/en/docs/wiki): What is Hytale Modding Wiki. - [1 - Account Creation](https://hytalemodding.dev/en/docs/wiki/1-create-account): How to create and set up your account. - [2 - Creating a Wiki for Your Mod](https://hytalemodding.dev/en/docs/wiki/2-create-mod): How to create and configure a wiki for your mod. - [3 - Creating Pages](https://hytalemodding.dev/en/docs/wiki/3-creating-pages): How to create and manage your mod pages. - [4 - Editing and Organizing Pages](https://hytalemodding.dev/en/docs/wiki/4-editing-pages): How to edit pages and organize them. - [5 - Styling](https://hytalemodding.dev/en/docs/wiki/5-styling): How to make your wiki pages look great. - [5.1 - Markdown](https://hytalemodding.dev/en/docs/wiki/5-styling/5-1-markdown): Markdown formatting reference for wiki pages. - [5.2 - Images](https://hytalemodding.dev/en/docs/wiki/5-styling/5-2-images): How to upload and use images in your wiki pages. - [5.3 - Custom CSS](https://hytalemodding.dev/en/docs/wiki/5-styling/5-3-custom-css): How to customize the appearance of your wiki. - [6 - GitHub Sync](https://hytalemodding.dev/en/docs/wiki/6-github): How to sync your wiki documentation from a GitHub repository. ## Links - [Full Documentation (LLM-optimized)](https://hytalemodding.dev/llms-full.txt) - [Wiki](https://wiki.hytalemodding.dev) - This is the official Wiki project from HytaleModding. It allows mod teams to create and manage documentation for their mods, making it easy for players and developers to find the information they need.