{"id":136134,"date":"2026-06-08T03:58:25","date_gmt":"2026-06-08T00:58:25","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/"},"modified":"2026-06-08T03:58:25","modified_gmt":"2026-06-08T00:58:25","slug":"schneckenhaus","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/","title":{"rendered":"Schneckenhaus"},"content":{"rendered":"<p># Schneckenhaus Plugin<\/p>\n<p>Ever wanted to know how a shulker box looks from the inside?<br \/>\nEver wanted to enter a chest?<br \/>\nEver wanted to store your house in your inventory?<br \/>\nThis plugin has you covered!<\/p>\n<p># Videos<\/p>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/xf2QPnSS7HA\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe><\/p>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/IyzkvMfx4t4\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe><\/p>\n<p>Every snail shell (an enterable block) can be customized using a graphical interface:<br \/>\n&#8211; Rename your snail shell<br \/>\n&#8211; Manage permissions (owners, enter permissions, build permissions, whitelists, blacklists)<br \/>\n&#8211; Keep track of where you placed down your snail shell<br \/>\n&#8211; Upgrade its size<br \/>\n&#8211; Change its color (for shulker boxes)<br \/>\n&#8211; Change its wood type (for chests)<\/p>\n<p>If you aren&#8217;t convinced yet, the plugin also features:<\/p>\n<p>&#8211; Support for **completely custom shell types**!<br \/>\n  &#8211; Configure the template, item, spawn position, exit blocks, menu block, initial blocks and more<br \/>\n  &#8211; Simple **importing and exporting** to a custom file format.<br \/>\n  &#8211; Share and download your custom shell types on our Discord server.<br \/>\n&#8211; **Nested snail shells**: Enter a snail while already inside another one! (Recursion means that something is recursive)<br \/>\n&#8211; Finely grained **permissions**<br \/>\n&#8211; Enable **home shells** to automatically give every new player a new snail shell<br \/>\n  &#8211; Configure its type, color, size, etc. in the config<br \/>\n  &#8211; Prevent homelessness on your server and make home shells impossible to lose<br \/>\n&#8211; Custom, highly configurable **crafting recipes**<br \/>\n  &#8211; specify optional ingredients that increase the snail shell&#8217;s size<br \/>\n  &#8211; specify an optional ingredient that enabled rainbow mode<br \/>\n  &#8211; support for items with custom model data<br \/>\n&#8211; Use hoppers to transfer items into shells and out of them. You can build whole factories inside a shell and connect them to the outside world!<br \/>\n&#8211; Your snail shell will stay loaded if you have it in your inventory or placed in a loaded chunk<br \/>\n&#8211; Support for **multiple worlds**, for example, one world where player-crafted shells are stored in, and one for command-created ones<br \/>\n&#8211; Powerful tab-completed syntax-highlighted commands<br \/>\n&#8211; **Ultra powerful shell management tools**:<br \/>\n  Ever wanted to delete all light blue shulker box shells of size 13 with whitelist enabled owned by some player crafted in the last week?<br \/>\n  Let&#8217;s be honest: You always wanted to do exactly that. And this plugin makes it possible.<br \/>\n&#8211; Data is stored efficiently and securely in an **SQLITE database**<br \/>\n&#8211; &#8230; and much more!<\/p>\n<p>## Documentation<\/p>\n<p>Table of contents:<br \/>\n1. [Commands](#command-system)<br \/>\n2. [Custom Shells](#custom-shells)<br \/>\n3. [Configuration](#configuration)<br \/>\n4. [Permissions](#permissions)<\/p>\n<p>## Command System<\/p>\n<p>### Shell Selectors<\/p>\n<p>When a command requires you to specify one or multiple shells like `\/sh tp shell <shell>` or `\/sh info <shell>`,<br \/>\nyou have multiple ways to do so:<\/p>\n<p>&#8211; `here` resolves to the shell at your location, this is the default value for many commands<br \/>\n&#8211; `selection` resolves to all shells you selected, see [Selections](#selections)<br \/>\n&#8211; `<id>` resolves to the shell with the specified id<\/p>\n<p>### Commands<\/p>\n<p>&#8211; `sh`<br \/>\n  &#8211; `tp`<br \/>\n    &#8211; `shell <shell>` teleport to a shell<br \/>\n    &#8211; `world <world>` teleport to a world that contains snail shells<br \/>\n  &#8211; `info <shell>` displays a lot of information about a certain shell in the chat<br \/>\n  &#8211; `menu <shell>` opens a snail shell&#8217;s menu<br \/>\n  &#8211; `item <shell>` gives you an item associated with the given shell<br \/>\n  &#8211; `count`<br \/>\n    &#8211; `total` displays the total number of snail shells on this server<br \/>\n    &#8211; `world <world>` displays the number of snail shells which are stored inside a world<br \/>\n  &#8211; `delete <shell>` deletes a shell, cannot be undone<br \/>\n  &#8211; `create <type>` type can be `shulker`, `chest`, `head` or `custom`; depending on the type, you specify one or more of these options:<br \/>\n    &#8211; `owner <owner>`<br \/>\n    &#8211; `world <world>` world in which the snail shell will be stored<br \/>\n    &#8211; `permission`<br \/>\n      &#8211; `enter <enterPermissionMode>`<br \/>\n      &#8211; `build <buildPermissionMode>`<br \/>\n    &#8211; `size <size>` only for shulker and chest shells, will be random in unspecified<br \/>\n    &#8211; `color <color>` only for shulker shells, will be random if unspecified<br \/>\n    &#8211; `rainbow <rainbow>` only for shulker shells, false by default<br \/>\n    &#8211; `head-owner <headOwner>` only for head shells, will be the creator by default<br \/>\n    &#8211; `template <template>` only for custom shells, **required to create custom shells**<br \/>\n    &#8211; `position` specify at which position in the grid the shell will be generated, has some quirks<br \/>\n      &#8211; `id <id>` id of the position<br \/>\n      &#8211; `grid <x> <z>` coordinates of the position<br \/>\n      &#8211; `here` position at your current location<br \/>\n  &#8211; `home`<br \/>\n    &#8211; `tp` teleports to your own home shell<br \/>\n    &#8211; `tp <player>` teleport to someone else&#8217;s home shell<br \/>\n    &#8211; `set <player> <home>`<br \/>\n    &#8211; `unset <player>`<br \/>\n  &#8211; `language <language>` changes the plugin&#8217;s language<br \/>\n  &#8211; `discord` shows the link to join our discord server<br \/>\n  &#8211; `tag <shell>`<br \/>\n    &#8211; `list`<br \/>\n    &#8211; `add <tag>`<br \/>\n    &#8211; `remove <tag>`<br \/>\n    &#8211; `clear`<\/p>\n<p>### Selections<\/p>\n<p>Selections is a powerful feature, which enables you to search for snail shells using a variety of criteria. Besides,<br \/>\nselections make it possible to run other commands on all shells that are selected.<br \/>\nEvery player and the server console has a current selection, which is empty be default.<\/p>\n<p>&#8211; `sh`<br \/>\n  &#8211; `selection`<br \/>\n    &#8211; `clear` deletes your current selection<br \/>\n    &#8211; `list` lists the ids of currently selected snail shells<br \/>\n  &#8211; `select` this command takes one or more criteria that must all be true:<br \/>\n    &#8211; `id <id>` you also specify a range like `7..` or `7..42`<br \/>\n    &#8211; `world <world>` the world where the shell is stored<br \/>\n    &#8211; `position <position>` the id of the shell&#8217;s position, can also be a range<br \/>\n    &#8211; `type <type>` the type of the shell, like `shulker`, `chest`, `head` or `custom`<br \/>\n    &#8211; `creation`<br \/>\n      &#8211; `reason <creationType>` can be `crafting`, `command` or `home`<br \/>\n      &#8211; `time` timestamps must be specified like this: &#8216;2025-08-21 21:01:42&#8217;<br \/>\n        &#8211; `after <creationTimeMin>`<br \/>\n        &#8211; `before <creationTimeMax>`<br \/>\n        &#8211; `between <creationTimeMin> and <creationTimeMax>`<br \/>\n    &#8211; `creator <creator>` can be an uuid, name or player selector<br \/>\n    &#8211; `name <name>` name of the shell<br \/>\n    &#8211; `permission` permission modes can be `whitelist`, `blacklist`, `everybody`, `nobody`<br \/>\n      &#8211; `enter <enterPermissionMode>`<br \/>\n      &#8211; `build <buildPermissionMode>`<br \/>\n    &#8211; `size <size>` size of chest and shulker shells, can also be a range like `4..8`<br \/>\n    &#8211; `color <color>` color of shulker shells<br \/>\n    &#8211; `rainbow <rainbow>` a boolean that indicates whether rainbow mode is enabled for a shulker shell<br \/>\n    &#8211; `wood <wood>` the wood type of a chest shell like `oak`<br \/>\n    &#8211; `template <template>` the template name of a custom shell<br \/>\n    &#8211; `head <head>` the head owner of a head shell<br \/>\n    &#8211; `tag <tag>` selects shells that have a certain tag<br \/>\n    &#8211; `owner <owner>`<br \/>\n    &#8211; `sort by <sortCriterion> <sortOrder>`<br \/>\n      &#8211; the sort criterion can be `id`, `position`, `size` or `creation_date`<br \/>\n      &#8211; the sort order can be `ascending` or `descending`<br \/>\n    &#8211; `limit <limit>` only includes the first `<limit>` results in the selection<br \/>\n    &#8211; `offset <offset>`<br \/>\n    &#8211; `combine <combine>` specifies how the old and new selection should be merged<br \/>\n      &#8211; `replace` (default) means to replace the old selection with the new one<br \/>\n      &#8211; `append` means to append the new to the old (excluding duplicates)<br \/>\n      &#8211; `remove` keep the old selection except for the shells that are in the new selection<br \/>\n      &#8211; `intersect` keep only shells in both the new and old selection<\/p>\n<p>## Custom Shells<\/p>\n<p>### Creating Custom Shells<\/p>\n<p>You first have to build a template for your custom shell type.<br \/>\nWhen the custom shell type is instantiated, e.g. through crafting, a copy of the template is created in the snail shell world.<\/p>\n<p>The template can be built in any world, but it is advisable to build it in the snail shell world.<br \/>\nTo do that, execute `\/sh tp world schneckenhaus` to be teleported to the default snail shell world.<br \/>\nYou must build your template at a position where every block of the template has either a negative x or z coordinate.<br \/>\nOtherwise, there could be conflicts between shells created by the plugin and your template.<\/p>\n<p>When you are finished building, run `\/sh custom add <name> <world> <position1> <position2> <item> <ingredient>`.<br \/>\n`name` can be freely chosen by you and is used to identify your custom shell type.<br \/>\nRenaming your custom shell type afterward is not possible.<br \/>\n`world` is the world where you built the template, for example `schneckenhaus`.<br \/>\n`position1` and `position2` are the corner positions of your template.<br \/>\nLook at these corner blocks and use tab completion to make your life easier.<br \/>\n`item` is the item\/block that will represent an instance of your custom shell.<br \/>\n`ingredient` is an ingredient used to craft your custom shell type.<br \/>\nYou can later edit and add ingredients in the config file.<\/p>\n<p>Using the command `\/sh custom edit <name> &#8230;` you can set some other properties of your custom shell type.<br \/>\nYou could also change this is the config file.<\/p>\n<p>#### Spawn Point<\/p>\n<p>`\/sh custom edit <name> set-spawn`<\/p>\n<p>Configure where the player spawns in the snail shell and in which direction he will look.<\/p>\n<p>#### Initial Blocks<\/p>\n<p>`\/sh custom edit <name> add-initial-block <position>`<\/p>\n<p>`\/sh custom edit <name> add-initial-block-area <position1> <position2>`<\/p>\n<p>If you want a block to be copied, but you want the player to be able to break it and replace it afterward, configure the block as an initial one.<\/p>\n<p>#### Menu Block<\/p>\n<p>`\/sh custom edit <name> set-menu-block <position>`<\/p>\n<p>Clicking this block will open the snail shell menu. <\/p>\n<p>#### Exit Blocks<\/p>\n<p>`\/sh custom edit <name> add-exit-block <position>`<\/p>\n<p>Clicking one of these blocks will make the player leave the shell.<\/p>\n<p>#### Block Restrictions<\/p>\n<p>`\/sh custom edit <name> set-block-restrictions <position> [<restriction1>] [<restriction2>] [<restriction3>]`<\/p>\n<p>`\/sh custom edit <name> set-block-area-restrictions <position1> <position2> [<restriction1>] [<restriction2>] [<restriction3>]`<\/p>\n<p>`\/sh custom edit <name> clear-block-restrictions <position1>`<\/p>\n<p>For every block in your snail shell, there is a list of block types, which is called &#8220;block restrictions&#8221;.<\/p>\n<p>If this list is empty for a block, it means that there are no restrictions,<br \/>\nand that the player can break the block and place another block at this position.<br \/>\nActually adding a block as an initial block (using `\/sh custom <name> edit add-initial-block`), will under the hood<br \/>\nset the block restrictions list for that block to be empty.<\/p>\n<p>If the restriction list of a block is not empty, that block&#8217;s type must be contained in the list.<\/p>\n<p>Players won&#8217;t be able to place\/break blocks if this invariant is not fulfilled after that.<br \/>\nBesides, the repair system also enforces this.<\/p>\n<p>If you don&#8217;t explicitly specify the restriction list for a block, the list&#8217;s default value depends on whether the block is an air or non-air one.<br \/>\nIf it is an air block, the restriction list defaults to an empty list, meaning that players can place anything they want at that block position.<br \/>\nIf it is a non-air block, the restriction list defaults to a list only containing the block type of that non-air block.<br \/>\nThis means that players can&#8217;t break any blocks that are part of the template by default.<\/p>\n<p>The default values can also be changed by using `\/sh custom edit <name> set-protect-air true`.<br \/>\nIf the `protect_air` property is set to true, the restriction list of an air block in the template will default to a list<br \/>\ncontaining only air. Therefore, players can&#8217;t place blocks in the custom shell unless they are explicitly allowed to do so<br \/>\nat a certain location.<\/p>\n<p>### Exporting Custom Shell Types<\/p>\n<p>Run `\/sh custom export <name>`. Copy the file created in the `plugins\/Schneckenhaus\/export` directory.<br \/>\nYou can share your creations on our Discord server.<\/p>\n<p>### Importing Custom Shell Types<\/p>\n<p>Place the file to import in the `plugins\/Schneckenhaus\/import` directory.<br \/>\nMove to the world and position where you want the template to be placed.<br \/>\nIt is recommended to place your template in the default snail shell world.<br \/>\nTo do that, type `\/sh tp world schneckenhaus` to be teleported to this world.<br \/>\nNow make sure that your x and z coordinate are both negative, and that you are far enough away from positive x or z coordinates (e. g. x = z = -100)<br \/>\nThis is important because if you place the template too near to other shells (which always have positive x and z coordinates), the template&#8217;s area<br \/>\nand the shell&#8217;s area could overlap.<br \/>\nNow run `\/sh custom import <filename> as <name>`<br \/>\n`name` will be the alias you use to refer to the newly imported shell type.<br \/>\nCustom shell types can&#8217;t be renamed afterward.<br \/>\nAfter importing, you can use the crafting recipe (see config file) or `\/sh create custom template <name>` to create instances of your custom shell type. <\/p>\n<p>## Configuration<\/p>\n<p>### Shulker \/ Chest \/ Head Shell Configuration<\/p>\n<p>&#8220;`yaml<br \/>\n# This documentation applies to chest and head shells accordingly<br \/>\nshulker:<br \/>\n  # whether shulker shells can be crafted<br \/>\n  crafting: true<br \/>\n  # ingredients needed for crafting besides a (colored) shulker block<br \/>\n  ingredients:<br \/>\n    &#8211; item: &#8216;minecraft:spyglass&#8217;<br \/>\n      amount: 1<br \/>\n      # model refers to the custom model data attached to an item (used to create custom items)<br \/>\n      model: null<\/p>\n<p>  # the size if no size ingredient is used<br \/>\n  initial_size: 4<br \/>\n  # the maximum size that can be achieved through adding size ingredients<br \/>\n  max_size: 30<br \/>\n  # can be optionally added to the crafting recipe to increase the shell&#8217;s size<br \/>\n  size_ingredient: { item: &#8216;minecraft:gold_ingot&#8217;, amount: 1, model: null }<br \/>\n  # how much the size will increase if one size ingredient is added<br \/>\n  size_per_ingredient: 2<\/p>\n<p>  # the maximum size that can be achieved through upgrades<br \/>\n  max_upgrade_size: 30<br \/>\n  # used to upgrade the size in the snail shell menu<br \/>\n  upgrade_ingredient: { item: &#8216;minecraft:gold_ingot&#8217;, amount: 1, model: null }<br \/>\n  # how much the size increases per upgrade<br \/>\n  size_per_upgrade_ingredient: 2<\/p>\n<p>  # number of ticks between color changes in rainbow mode<br \/>\n  # this is also limited by shell_instances_sync<br \/>\n  rainbow_delay: 60<br \/>\n  # can be added to the crafting recipe to enable rainbow mode<br \/>\n  rainbow_ingredient: { item: &#8216;minecraft:clock&#8217;, amount: 1, model: null }<br \/>\n&#8220;`<\/p>\n<p>### Custom Shell Configuration<\/p>\n<p>*NOTE*: While it is possible to add and edit custom shell types through the config file, it is way easier to do so<br \/>\nby using the commands [described here](#creating-custom-shells)<\/p>\n<p>&#8220;`yaml<br \/>\ncustom:<br \/>\n  # name of your custom shell type, don&#8217;t change this unless you know what you are doing<br \/>\n  portable-garden:<br \/>\n    item: minecraft:birch_wood # the item \/ block representing this shell type<br \/>\n    crafting: true<br \/>\n    # ingredients needed to craft this custom shell type<br \/>\n    ingredients:<br \/>\n    &#8211; {item: &#8216;minecraft:birch_log&#8217;, amount: 64, model: null}<br \/>\n    &#8211; {item: &#8216;minecraft:birch_sapling&#8217;, amount: 1, model: null}<br \/>\n    &#8211; {item: &#8216;minecraft:bone_meal&#8217;, amount: 16, model: null}<br \/>\n    &#8211; {item: &#8216;minecraft:moss_block&#8217;, amount: 32, model: null}<br \/>\n    &#8211; {item: &#8216;minecraft:spyglass&#8217;, amount: 1, model: null}<br \/>\n    template_world: schneckenhaus # name of the world where the template for this shell type is placed<br \/>\n    template_position: -30 0 -30 -20 10 -20 # area of the template<br \/>\n    protect_air: false # whether players can build anywhere inside the shell by default<br \/>\n    block_restrictions: # see the section about creating custom shells for a detailed explanation of what this means<br \/>\n      -25 1 -25: [&#8216;minecraft:cauldron&#8217;, &#8216;minecraft:lava_cauldron&#8217;, &#8216;water_cauldron&#8217;]<br \/>\n    spawn_position: {x: -188.50940344422307, y: 122.9375, z: 219.30000001192093, yaw: -18.117798,<br \/>\n      pitch: 3.7506914}<br \/>\n    # clicking one of these blocks teleports you back<br \/>\n    exit_blocks: [-189 124 218, -189 123 218]<br \/>\n    # opens the snail shell menu<br \/>\n    menu_block: -188 123 218<br \/>\n&#8220;`<\/p>\n<p>### Home Shell Configuration<\/p>\n<p>If home shells are enabled, players will automatically receive a new shell when they join the server<br \/>\nand don&#8217;t already have a home belonging to them.<br \/>\nThe player must have the permission `schneckenhaus.home_shell` (which is false by default).<br \/>\nIf players additionally have the permission `schneckenhaus.never_homeless` (which is true by default),<br \/>\nit is impossible for them to lose their homes.<br \/>\nBecause if they lose it, it will be given back to them on rejoin \/ respawn.<\/p>\n<p>Examples:<\/p>\n<p>&#8220;`yaml<br \/>\nhome_shell:<br \/>\n  type: shulker,<br \/>\n  size: 16,<br \/>\n  color: white<br \/>\n  enter_permission_mode: everybody # this can be specified regardless of shell type<br \/>\n  build_permission_mode: whitelist # but is not repeated for the following<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\nhome_shell:<br \/>\n  type: chest<br \/>\n  size: 16<br \/>\n  wood: birch<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\nhome_shell:<br \/>\n  type: head<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\nhome_shell:<br \/>\n  type: custom<br \/>\n  template: your-template-name<br \/>\n&#8220;`<\/p>\n<p>### World Configuration<\/p>\n<p>Example:<\/p>\n<p>&#8220;`yaml<br \/>\nworlds:<br \/>\n  # name of the world<br \/>\n  schneckenhaus:<br \/>\n    fallback: true # whether this is the default world for snail shell creation, can only be true for one world<br \/>\n    biome: &#8216;plains&#8217; # biome of the void world, this value is only used when newly creating the world, not for already existing ones<br \/>\n    time_sync_world: world # will sync the time with another world<br \/>\n    conditions: []<br \/>\n  schneckenhaus_homes: # for example, a second world that should contain all home shells<br \/>\n    fallback: false<br \/>\n    time_sync_world: world<br \/>\n    conditions: # at least one of the following conditions must be true for a shell to be created in this world<br \/>\n      # example condition: all shells created by the home shell system will be created in this world<br \/>\n      type: creation<br \/>\n      creation_type: home<br \/>\n&#8220;`<\/p>\n<p>### Shell Conditions<\/p>\n<p>Shell conditions are YAML objects that can be evaluated for shells that are being created or are already created.<br \/>\nUsing these conditions, you can enable some features only for some shells.<br \/>\nThere are multiple types of shell conditions.<br \/>\nIf you have to specify a list of conditions, usually at least one has to be true.<\/p>\n<p>Examples of the different condition types:<\/p>\n<p>&#8220;`yaml<br \/>\ntype: shulker<br \/>\nsize: {min: 5, max: 10} # optional<br \/>\ncolors: green, red, white # optional<br \/>\nrainbow: false # optional<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\ntype: chest<br \/>\nsize: {min: 5, max: 10} # optional<br \/>\nwood: birch # optional<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\ntype: head<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\ntype: custom<br \/>\ntemplate: your_template_name # optional<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\ntype: creation<br \/>\ncreator: 7370723c-1f89-4e7c-a9fe-30ba8b4f0ae3 # optional<br \/>\ncreation_type: crafting # optional, can also be command or home<br \/>\npermission: some.permission # optional, permission which the creator must have,<br \/>\n                            # can only be checked for online players<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\ntype: tag<br \/>\ntag: some-tag-name<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\ntype: not<br \/>\ncondition:<br \/>\n  type: shulker<br \/>\n  size: {min: 10}<br \/>\n&#8220;`<\/p>\n<p>&#8220;`yaml<br \/>\ntype: and<br \/>\nconditions:<br \/>\n  &#8211; type: shulker<br \/>\n  &#8211; type: creation<br \/>\n    creation_type: crafting<br \/>\n&#8220;`<\/p>\n<p>### Miscellaneous Config Options<\/p>\n<p>&#8220;`yaml<br \/>\n# if enabled, the chunks of a snail shell stay loaded if it is in an online player&#8217;s inventory or placed in a loaded chunk<br \/>\nchunk_loading:<br \/>\n  enabled: true<br \/>\n  conditions: []<br \/>\n  delay: 100<br \/>\n# if enabled, hoppers can be used to transfer items into snail shells and out of them<br \/>\nhoppers:<br \/>\n  enabled: true<br \/>\n  conditions: []<br \/>\n# this system handles animations (rainbow mode) and manual color changes<br \/>\nshell_instances_sync:<br \/>\n  enabled: true<br \/>\n  conditions: []<br \/>\n  delay: 20<br \/>\n  shells: true<br \/>\n  placed_shells: true<br \/>\n  placed_shells_range: 32<br \/>\n  items: true # animate items in inventory<br \/>\n  dropped_items: true # animate dropped items<br \/>\n  dropped_items_range: 16 # max range near a player<br \/>\n# if enabled, players can&#8217;t break other players&#8217; snail shells<br \/>\n# there can be exceptions to this via permissions<br \/>\ntheft_prevention:<br \/>\n  enabled: true<br \/>\n  conditions: []<br \/>\n# will prevent exploits like using pistons \/ ender pearls etc. to escape a shell<br \/>\nescape_prevention:<br \/>\n  enabled: true<br \/>\n  conditions: []<br \/>\n  delay: 20<br \/>\n# will revert even the most severe kinds of damages to snail shells (WorldEdit etc.)<br \/>\nrepair_system:<br \/>\n  enabled: true<br \/>\n  conditions: []<br \/>\n  delay: 200<br \/>\n# players will be teleported here when leaving a shell, but no exit location is known<br \/>\n# set to null to use world spawn<br \/>\nfallback_exit_location:<br \/>\n  world: world<br \/>\n  x: 0<br \/>\n  y: 80<br \/>\n  z: 0<br \/>\n  yaw: 0<br \/>\n  pitch: 0<br \/>\n# don&#8217;t change this<br \/>\ndata_version: 3.0.0<br \/>\n&#8220;`<\/p>\n<p>## Permissions<\/p>\n<p>&#8211; `schneckenhaus.craft_shell` (default: true)<br \/>\n&#8211; `schneckenhaus.place_shell` (default: true)<br \/>\n&#8211; `schneckenhaus.enter_shell` (default: true)<br \/>\n&#8211; `schneckenhaus.quickly_enter_shell` (default: false)<br \/>\n&#8211; `schneckenhaus.enter_nested_shells` (default: true)<br \/>\n&#8211; `schneckenhaus.ask_for_enter_permission` (default: true)<br \/>\n&#8211; `schneckenhaus.change_enter_permission` (default: true)<br \/>\n&#8211; `schneckenhaus.bypass_shell_enter_permission` (default: op)<br \/>\n&#8211; `schneckenhaus.change_build_permission` (default: true)<br \/>\n&#8211; `schneckenhaus.bypass_shell_build_permission` (default: op)<br \/>\n&#8211; `schneckenhaus.bypass_theft_prevention` (default: op)<br \/>\n&#8211; `schneckenhaus.home_shell` (default: false)<br \/>\n&#8211; `schneckenhaus.never_homeless` (default: true)<br \/>\n&#8211; `schneckenhaus.shell_in_ender_chest` (default: true)<br \/>\n&#8211; `schneckenhaus.open_own_snail_shell_menu` (default: true)<br \/>\n&#8211; `schneckenhaus.open_other_snail_shell_menus` (default: op)<br \/>\n&#8211; `schneckenhaus.create_snail_shell_copies` (default: op)<br \/>\n&#8211; `schneckenhaus.rename_snail_shell` (default: true)<br \/>\n&#8211; `schneckenhaus.edit_owners` (default: true)<br \/>\n&#8211; `schneckenhaus.change_snail_shell_color` (default: true)<br \/>\n&#8211; `schneckenhaus.toggle_rainbow_mode` (default: true)<br \/>\n&#8211; `schneckenhaus.upgrade_snail_shell_size` (default: true)<br \/>\n&#8211; `schneckenhaus.change_shell_wood` (default: true)<br \/>\n&#8211; `schneckenhaus.delete_shell` (default: op)<br \/>\n&#8211; `schneckenhaus.placements.view` (default: true)<br \/>\n&#8211; `schneckenhaus.placements.view_positions` (default: true)<br \/>\n&#8211; `schneckenhaus.placements.teleport` (default: op)<br \/>\n&#8211; `schneckenhaus.bypass_escape_prevention` (default: op)<br \/>\n&#8211; `schneckenhaus.command.select` (default: op)<br \/>\n&#8211; `schneckenhaus.command.list` (default: op)<br \/>\n&#8211; `schneckenhaus.command.create` (default: op)<br \/>\n&#8211; `schneckenhaus.command.info` (default: op)<br \/>\n&#8211; `schneckenhaus.command.tag` (default: op)<br \/>\n&#8211; `schneckenhaus.command.item` (default: op)<br \/>\n&#8211; `schneckenhaus.command.count` (default: op)<br \/>\n&#8211; `schneckenhaus.command.delete` (default: op)<br \/>\n&#8211; `schneckenhaus.command.tp` (default: op)<br \/>\n&#8211; `schneckenhaus.command.home.tp.own` (default: op)<br \/>\n&#8211; `schneckenhaus.command.home.tp.others` (default: op)<br \/>\n&#8211; `schneckenhaus.command.home.manage` (default: op)<br \/>\n&#8211; `schneckenhaus.command.discord` (default: op)<br \/>\n&#8211; `schneckenhaus.command.menu` (default: op)<br \/>\n&#8211; `schneckenhaus.command.language` (default: op)<br \/>\n&#8211; `schneckenhaus.command.custom` (default: op)<br \/>\n&#8211; `schneckenhaus.command.debug` (default: false)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ever wanted to see how a chest looks from the inside? Ever wanted to take your buildings with you in your inventory?<\/p>\n","protected":false},"featured_media":136135,"template":"","meta":{"_minecraft_slug":"schneckenhaus","_minecraft_project_id":"uZrfAQxK","_minecraft_author":"Lama06","_minecraft_license":"MIT","_minecraft_downloads":116,"_minecraft_follows":6,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"schneckenhaus.zip","_minecraft_size_bytes":863422,"_minecraft_version_count":1,"_minecraft_updated_at":"2026-05-15T19:17:01.391408Z","_minecraft_date_created":"2025-09-05T23:08:53.853089Z","_minecraft_date_modified":"2025-09-03T19:31:44.386870Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/schneckenhaus","_minecraft_icon_attachment_id":136135,"_minecraft_imported_at":"2026-06-08T00:58:26+00:00","_minecraft_import_hash":"606ec25411b0d13e879acc02dd1e93ac","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[89,127,91,869],"mod_loader":[132],"minecraft_version":[38,78,79,80,81],"class_list":["post-136134","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-game-mechanics","mod_category-paper","mod_category-storage","mod_category-transportation","mod_loader-paper","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Schneckenhaus - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Schneckenhaus - Minecraft\" \/>\n<meta property=\"og:description\" content=\"Ever wanted to see how a chest looks from the inside? Ever wanted to take your buildings with you in your inventory?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"16 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/\",\"name\":\"Schneckenhaus - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/schneckenhaus-icon-4b436bb82812264456b1f6113ff46b88bde400ec.png\",\"datePublished\":\"2026-06-08T00:58:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/schneckenhaus-icon-4b436bb82812264456b1f6113ff46b88bde400ec.png\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/schneckenhaus-icon-4b436bb82812264456b1f6113ff46b88bde400ec.png\",\"width\":96,\"height\":96},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/schneckenhaus\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Schneckenhaus\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Schneckenhaus - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/","og_locale":"en_US","og_type":"article","og_title":"Schneckenhaus - Minecraft","og_description":"Ever wanted to see how a chest looks from the inside? Ever wanted to take your buildings with you in your inventory?","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"16 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/","name":"Schneckenhaus - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/schneckenhaus-icon-4b436bb82812264456b1f6113ff46b88bde400ec.png","datePublished":"2026-06-08T00:58:25+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/schneckenhaus-icon-4b436bb82812264456b1f6113ff46b88bde400ec.png","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/schneckenhaus-icon-4b436bb82812264456b1f6113ff46b88bde400ec.png","width":96,"height":96},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/schneckenhaus\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"Schneckenhaus"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/136134","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/136135"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=136134"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=136134"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=136134"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=136134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}