CloudNet | The Cloud Network Environment Technology 2.1.13

The Minecraft server cloud network environment technology

  1. Dytanic
    Tested Minecraft Versions:
    • 1.7
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    Source Code:
    https://github.com/Dytanic/CloudNet
    [​IMG]

    CloudNet is a cloud computing service for Minecraft networks. With a wide range of functionality, it offers both Minecraft Server (Craftbukkit / Spigot) and BungeeCord.

    CloudNet is to be the manager and network extension with new technologies the administration of a Minecraft network to the side. The second direction is the unlimited development possibility with its own modules, and extensive programming interfaces.
    Support for a wide range of needs and future opportunities, such as support for a Round Robin DNS management with the CloudFlare company service and the multi-proxy functionality for networks with more than 500 players, the project is important to enable high performance and stabilization for a Minecraft network.


    [​IMG]

    » Java 8 or 10.0.1
    » Linux/Windows server with min. 2GB DDR3 Memory and 2 vCores

    » A FTP/SFTP client for mange your linux or windows server

    [​IMG]
    Support:
    Spigot-Support » 1.7.x - 1.13.1 ● PaperSpigot, TacoSpigot, Hose, Torch

    BungeeCord-Support » 1.7.x - 1.13.1 ● HexaCord, Waterfall, TraverTine

    Cloud:
    • dynamic server and BungeeCord starting via wrapper service
    • multi - root support
    • synchronized Bungeecord API
    • multi - BungeeCord via proxy group support
    • module support for master and wrapper
    • memory and resource manager
    • cpu provider
    • Network security system BungeeCord exploid protection
    • balance management system
    • server group system
    • template system
    • balanced template system
    • url template management
    • dynamic signs-system
    • dynamic entity server selectors
    • server portals
    • server priority system
    • dynamic memory management
    • automatic server start and stop system
    • server records of log files
    • a big game and bungeecord API
    • ingame minecraft commands
    • static servers
    • custom servers
    • auto start with player force
    • server group maintenance system
    • simple server management
    • proxy version selection
    • spigot version selection
    • premium join on network
    • log web service with /cloud log <server>
    • programming modules for cloudnet

    Sub features:
    • bungeecord motd and maintenance system
    • maintenance whitelist
    • multi random motd
    • multi - root support
    • synchronized Bungeecord API
    • multi - BungeeCord via proxy group support
    • fast connect
    • ssl support via "--ssl" argument on start script
    • permissions-system for bukkit and bungeecord
    • player register system
    • cloudflare support
    • alternative console header for the master, wrapper and bukkit/bungeecord
    • random hub-system and /hub command
    • global TabList
    • kick force fallback
    • auto updates
    • cloudflare support
    • round robin support via multi - proxy and cloudflare dns mangement
    Description:

    TabList:

    You can use colour codes and patterns.
    You can break the line via "\n"


    %server% - the currently server
    %proxy% - the currenttly proxy
    %online_players% - the currently network online count
    %max_players% - the currently max players
    %group% - the currently server group of the server

    Notify System:

    The permission which allows a player notify all incoming network messages is "cloudnet.notify".

    config.properties cloudnet-core

    Code (Text):
    notifysystem=true

    Maintenance Handling:

    The permission which allows a player to join if the network is in maintenance is use the "cloudnet whitelist" command or add you to the whitelist in the config.json for the group if you execute the command
    Code (Text):
          "proxyConfig": {
            "enabled": true,
            "maintenance": true,
            "motdsLayouts": [
              {
                "firstLine": "   §b§lCloud§f§lNet§8■ §7your §bfree §7cloudsystem §8§l【§f%version%§8§l】",
                "secondLine": "         §aOnline §8» §7We are now §aavailable §7to §ball §e%proxy%"
              }
            ],
            "maintenanceMotdLayout": {
              "firstLine": "   §b§lCloud§f§lNet§8■ §7your §bfree §7cloudsystem §8§l【§f%version%§8§l】",
              "secondLine": " §e%proxy% §bMaintenance §8» §7We are still in §bmaintenance"
            },
            "maintenaceProtocol": "§8➜ §bMaintenance §8§l【§c✘§8§l】",
            "maxPlayers": 1000,
            "fastConnect": false,
            "autoSlot": {
              "dynamicSlotSize": 0,
              "enabled": false
            },
            "tabList": {
              "enabled": true,
              "header": " \n§b§lCloud§f§lNet §8× §7your §bfree §7cloudsystem §8➜ §f%online_players%§8/§f%max_players%§f\n §8► §7Current server §8● §b%server% §8◄ \n ",
              "footer": " \n §7Twitter §8» §[email protected] §8▎ §7Discord §8» §fdiscord.gg/UNQ4wET \n §7powered by §8» §b§b§lCloud§f§lNet \n "
            },
            "playerInfo": [
              " ",
              "§b§lCloud§f§lNet §8× §7your §bfree §7cloudsystem",
              "§7Twitter §8» §[email protected]",
              "§7Discord §8» §fdiscord.gg/UNQ4wET",
              " "
            ],
            "whitelist": [
              "Dytanic",
              "Dytanic",
              "FemtoYT"
            ]
          }

    Full Join:
    The permission which allows a player to join if the network is full is
    "cloudnet.fulljoin".


    Multi templates:

    Since CloudNet2, you can create templates for each server group, which can be stored or retrieved via URL or LOCAL
    The URLTemplates must be a ".zip" archive

    Code (Text):
            {
              "name": "default",
              "backend": "LOCAL",
              "url": null
            },
            {
              "name": "urltemplate",
              "backend": "URL",
              "url": "https://dytanic.de/cloudnet2/TestTemplate.zip"
            }

    Server groups:
    The collection of server which use a server template is a group. You can modify the group settings like memory or similar.

    Code (Text):

    {
      "wrapper": [
        {
          "id": "Wrapper-1",
          "hostName": "xxx.xxx.xxx.xxx",
          "user": "admin"
        }
      ],
      "serverGroups": [
        {
          "name": "BauServer",
          "wrapper": [
            "Wrapper-1"
          ],
          "kickedForceFallback": false,
          "serverType": "BUKKIT",
          "groupMode": "STATIC",
          "globalTemplate": {
            "name": "globaltemplate",
            "backend": "LOCAL",
            "url": null,
            "processPreParameters": [],
            "installablePlugins": []
          },
          "templates": [
            {
              "name": "default",
              "backend": "LOCAL",
              "url": null,
              "processPreParameters": [],
              "installablePlugins": []
            }
          ],
          "memory": 1024,
          "dynamicMemory": 1024,
          "joinPower": 50,
          "maintenance": false,
          "minOnlineServers": 1,
          "maxOnlineServers": -1,
          "advancedServerConfig": {
            "notifyPlayerUpdatesFromNoCurrentPlayer": false,
            "notifyProxyUpdates": false,
            "notifyServerUpdates": false,
            "disableAutoSavingForWorlds": false
          },
          "percentForNewServerAutomatically": 0,
          "priorityService": {
            "stopTimeInSeconds": 180,
            "global": {
              "onlineServers": 0,
              "onlineCount": 100
            },
            "group": {
              "onlineServers": 1,
              "onlineCount": 100
            }
          },
          "settings": {
            "picture": "http://dytanic.de/cloudnetv2/cloud.png"
          }
        },
        {
          "name": "TestServer",
          "wrapper": [
            "Wrapper-1"
          ],
          "kickedForceFallback": false,
          "serverType": "BUKKIT",
          "groupMode": "DYNAMIC",
          "globalTemplate": {
            "name": "globaltemplate",
            "backend": "LOCAL",
            "url": null,
            "processPreParameters": [],
            "installablePlugins": []
          },
          "templates": [
            {
              "name": "default",
              "backend": "LOCAL",
              "url": null,
              "processPreParameters": [],
              "installablePlugins": []
            }
          ],
          "memory": 356,
          "dynamicMemory": 356,
          "joinPower": 100,
          "maintenance": false,
          "minOnlineServers": 0,
          "maxOnlineServers": 2,
          "advancedServerConfig": {
            "notifyPlayerUpdatesFromNoCurrentPlayer": false,
            "notifyProxyUpdates": false,
            "notifyServerUpdates": false,
            "disableAutoSavingForWorlds": true
          },
          "percentForNewServerAutomatically": 0,
          "priorityService": {
            "stopTimeInSeconds": 180,
            "global": {
              "onlineServers": 0,
              "onlineCount": 100
            },
            "group": {
              "onlineServers": 0,
              "onlineCount": 100
            }
          },
          "settings": {
            "picture": "http://dytanic.de/cloudnetv2/cloud.png"
          }
        },
        {
          "name": "Lobby",
          "wrapper": [
            "Wrapper-1"
          ],
          "kickedForceFallback": true,
          "serverType": "BUKKIT",
          "groupMode": "LOBBY",
          "globalTemplate": {
            "name": "globaltemplate",
            "backend": "LOCAL",
            "url": null,
            "processPreParameters": [],
            "installablePlugins": []
          },
          "templates": [
            {
              "name": "default",
              "backend": "LOCAL",
              "url": null,
              "processPreParameters": [],
              "installablePlugins": []
            }
          ],
          "memory": 356,
          "dynamicMemory": 512,
          "joinPower": 0,
          "maintenance": false,
          "minOnlineServers": 0,
          "maxOnlineServers": -1,
          "advancedServerConfig": {
            "notifyPlayerUpdatesFromNoCurrentPlayer": false,
            "notifyProxyUpdates": false,
            "notifyServerUpdates": false,
            "disableAutoSavingForWorlds": true
          },
          "percentForNewServerAutomatically": 50,
          "priorityService": {
            "stopTimeInSeconds": 300,
            "global": {
              "onlineServers": 1,
              "onlineCount": 100
            },
            "group": {
              "onlineServers": 0,
              "onlineCount": 100
            }
          },
          "settings": {
            "picture": "https://pbs.twimg.com/profile_images/904045982475833344/2_9F3qbm_400x400.jpg"
          }
        },
        {
          "name": "Premium",
          "wrapper": [
            "Wrapper-1"
          ],
          "kickedForceFallback": false,
          "serverType": "BUKKIT",
          "groupMode": "DYNAMIC",
          "globalTemplate": {
            "name": "globaltemplate",
            "backend": "LOCAL",
            "url": null,
            "processPreParameters": [],
            "installablePlugins": []
          },
          "templates": [
            {
              "name": "default",
              "backend": "LOCAL",
              "url": null,
              "processPreParameters": [],
              "installablePlugins": []
            }
          ],
          "memory": 512,
          "dynamicMemory": 512,
          "joinPower": 0,
          "maintenance": true,
          "minOnlineServers": 1,
          "maxOnlineServers": -1,
          "advancedServerConfig": {
            "notifyPlayerUpdatesFromNoCurrentPlayer": false,
            "notifyProxyUpdates": false,
            "notifyServerUpdates": false,
            "disableAutoSavingForWorlds": true
          },
          "percentForNewServerAutomatically": 50,
          "priorityService": {
            "stopTimeInSeconds": 180,
            "global": {
              "onlineServers": 0,
              "onlineCount": 100
            },
            "group": {
              "onlineServers": 1,
              "onlineCount": 100
            }
          },
          "settings": {}
        }
      ],
      "proxyGroups": [
        {
          "name": "Bungee",
          "wrapper": [
            "Wrapper-1"
          ],
          "template": {
            "name": "default",
            "backend": "LOCAL",
            "url": null,
            "processPreParameters": [],
            "installablePlugins": []
          },
          "proxyVersion": "BUNGEECORD",
          "startPort": 25565,
          "fallback": "Lobby",
          "startup": 2,
          "memory": 128,
          "proxyConfig": {
            "enabled": true,
            "maintenance": true,
            "motdsLayouts": [
              {
                "firstLine": "   §b§lCͩʸlͭoͣᶰuͥdͨNʷeͦtͬᵏ§8■ §7your §bfree §7cloudsystem §8§l【§f%version%§8§l】",
                "secondLine": "         §aOnline §8» §7We are now §aavailable §7to §ball §e%proxy%"
              }
            ],
            "maintenanceMotdLayout": {
              "firstLine": "   §b§lCloud§f§lNet§8■ §7your §bfree §7cloudsystem §8§l【§f%version%§8§l】",
              "secondLine": " §e%proxy% §bMaintenance §8» §7We are still in §bmaintenance"
            },
            "maintenaceProtocol": "§8➜ §bMaintenance §8§l【§c✘§8§l】",
            "maxPlayers": 1000,
            "fastConnect": false,
            "autoSlot": {
              "dynamicSlotSize": 0,
              "enabled": false
            },
            "tabList": {
              "enabled": true,
              "header": " \n§b§lCloud§f§lNet §8× §7your §bfree §7cloudsystem §8➜ §f%online_players%§8/§f%max_players%§f\n §8► §7Current server §8● §b%server% §8◄ \n ",
              "footer": " \n §7Twitter §8» §[email protected] §8▎ §7Discord §8» §fdiscord.gg/UNQ4wET \n §7powered by §8» §b§b§lCloud§f§lNet \n "
            },
            "playerInfo": [
              " ",
              "§b§lCloud§f§lNet §8× §7your §bfree §7cloudsystem",
              "§7Twitter §8» §[email protected]",
              "§7Discord §8» §fdiscord.gg/UNQ4wET",
              " "
            ],
            "whitelist": [
              "Dytanic",
              "Dytanic",
              "FemtoYT"
            ]
          },
          "proxyGroupMode": "DYNAMIC",
          "settings": {
            "picture": "http://dytanic.de/cloudnetv2/cloud.png"
          }
        }
      ]
    }
     

    Spigot Group Modes:


    DYNAMIC

    • active joinpower system
    • will delete the tmp folder for the instance on stop
    • no signs system
    • perfect for game servers
    • auto start on percentlly configuration

    LOBBY
    • inactive joinpower system
    • will delete the tmp folder for the instance on stop
    • signs system is active
    • mob selectors is active
    • service portals are active
    • perfect for hub servers
    • auto start on percentlly configuration

    STATIC
    • one server can start per group
    • active joinpower system
    • the world and all other data from the server will save (+ Auto save) on stop
    • no signs system
    • perfect for freebuild servers

    Server Priority:
    The priority system is made up of the priority groups and the global priority. Server is started because of a relationship. In the standard, the ratio as many servers with 100 players are to be there. The servers are bsp. At a ratio of 4 servers with 100 players for an active player number of 75 a 3 server started. The servers are then stopped by a priorityStopTime after a certain time in seconds. In the default, the time is 180. You can set the time as well as the ratio in the config.

    groups.json at cloudnet core
    Code (Text):
          "priorityService": {
            "stopTimeInSeconds": 180,
            "global": {
              "onlineServers": 0,
              "onlineCount": 100
            },
            "group": {
              "onlineServers": 0,
              "onlineCount": 100
            }
          },


    Joinpower:
    Joinpower is the permission to enter a server from the permission system. You can set for each group a number of joinpower. The permission group (ex. member) must have the same or higher joinpower to enter the server. Server with the mode LOBBY are ignore this feature.

    groups.json and permissions.json
    Code (Text):
          "joinPower": 100,

    At: 1.0.20 -> JoinPower permission for servers: "cloudnet.joinpower.<joinpower from group>"

    Dynamic Memory-System:
    The dynamic memory system should provide the first servers with more resources than the new servers. The resources are calculated on the basis of the active servers from the group and from the global Cloud consumption. That is, the bsp. In a dynamic memory of 1024MB the first server also starts and the next with 956, 872 etc ... so the first server stable run :)
    Important is the output from the standard memory value and the dynamic work memory is seen in the relationship


    Permission system:
    The permission system is network wide, means all components such as BungeeCord and Bukkit have the same permissions. The permissions are divided into groups, which are available via the permissions.yml in the CloudNet proxy folder. New groups can be added or modified via copy and paste. Take care of the already given permissions and options. The options are for developers, that they can record different metadata like ts3 server groups and ids that it remains stored in the network and is accessible.

    The permissions are BungeeCord AND Bukkit, these are added with a true for right and are denoted with false as permission.

    To update the permissions, enter the command "rl config" in the CloudNet console. If there is a misconfiguration, an error occours. You can then find the failure and correct it.

    You can assign players to permission groups in the same console via the "perms user Dytanic group set Admin lifetime" command. You can use it like: "/cperms user Dytanic group set Admin lifetime" ingame.

    usage:
    /cperms creategroup <name>
    /cperms deletegroup <name>
    /cperms group <group> add permission <permission>"
    /cperms group <group> add permission <permission> (servergroup)"
    /cperms group <group> delete permission <permission>"
    /cperms group <group> delete permission <permission> (servergroup)"
    /cperms group <group> add implementation <group>"
    /cperms group <group> delete implementation <group>"
    /cperms group <group> set display <display>"
    /cperms group <group> set prefix <prefix>"
    /cperms group <group> set suffix <suffix>"
    /cperms group <group> set tagid <tagid>"
    /cperms group <group> set permissiondefault <DEV, ADMINISTRATOR, TEAM_MEMBER, USER>"
    /cperms group <group> set default <true : false>
    /cperms group <group> set fallback <fallback>
    /cperms user <user> group set <groupName> <lifetime or time in days>
    /cperms group <group> group add <groupName> <lifetime or time in days>
    /cperms user <user> group remove <groupName>
    /cperms user <user> add permission <permission>
    /cperms user <user> remove permission <permission>

    permissions.json
    Code (Text):
    {
      "enabled": true,
      "groups": [
        {
          "name": "default",
          "prefix": "§eMember §7| §e",
          "suffix": "§f",
          "display": "§e",
          "tagId": 9999,
          "joinPower": 0,
          "defaultGroup": true,
          "permissions": {},
          "serverGroupPermissions": {
            "Lobby": [
              "test.permission.for.group.Lobby"
            ]
          },
          "options": {},
          "implementGroups": [],
          "permissionFallback": {
            "enabled": false,
            "fallback": "Lobby"
          }
        },
        {
          "name": "Test",
          "prefix": "&4Test &7| &4",
          "suffix": "§f",
          "display": "§7",
          "tagId": 98,
          "joinPower": 200,
          "defaultGroup": false,
          "permissions": {
            "minecraft.command.gamemode": true,
            "minecraft.command.tp": true
          },
          "serverGroupPermissions": {},
          "options": {},
          "implementGroups": [],
          "permissionFallback": {
            "enabled": false,
            "fallback": "Lobby"
          }
        },
        {
          "name": "Moderator",
          "prefix": "&cMod &8|&7 ",
          "suffix": "§f",
          "display": "§7",
          "tagId": 2,
          "joinPower": 0,
          "defaultGroup": false,
          "permissions": {
            "minecraft.command.gamemode": true,
            "minecraft.command.tp": true
          },
          "serverGroupPermissions": {},
          "options": {},
          "implementGroups": [],
          "permissionFallback": {
            "enabled": false,
            "fallback": "Lobby"
          }
        },
        {
          "name": "Supporter",
          "prefix": "&bSup &8|&7 ",
          "suffix": "§f",
          "display": "§7",
          "tagId": 2,
          "joinPower": 0,
          "defaultGroup": false,
          "permissions": {
            "minecraft.command.gamemode": true,
            "minecraft.command.tp": true
          },
          "serverGroupPermissions": {},
          "options": {},
          "implementGroups": [],
          "permissionFallback": {
            "enabled": false,
            "fallback": "Lobby"
          }
        },
        {
          "name": "Admin",
          "prefix": "§cAdmin §7| §c",
          "suffix": "§f",
          "display": "§c",
          "tagId": 2000,
          "joinPower": 100,
          "defaultGroup": false,
          "permissions": {
            "*": true,
            "test.permission": true
          },
          "serverGroupPermissions": {
            "Lobby": [
              "test.permission.for.group.Lobby"
            ]
          },
          "options": {},
          "implementGroups": [],
          "permissionFallback": {
            "enabled": false,
            "fallback": "Lobby"
          }
        }
      ]
    }


    Global folder:

    In the Global directory, you can add your own files if required. E.g. provide a bukkit.yml or spigot.yml for all servers. (Plugins and folders aswell) :)


    Signs:
    » dynamic sign animations with the signlayout.json
    » /cloudserver createSign <group>
    Look at the active sign and write the command "/cloudserver createSign". The sign should be create from the network in a few seconds.
    » removing a sign with:
    Look at the active sign and write the command "/cloudserver removeSign". The sign should be removed from the network in a few seconds.


    %server% - server name
    %online_players% - online count
    %max_players% - max onlinecount
    %state% - state of the server (LOBBY)
    %wrapper% - wrapper name
    %extra% - a extra string from the cloudnet-api
    %group% - group name
    %template% - template which started
    %memory% - Memory
    %port% - Port of the server
    %host% - HostName of the server
    %id% - GroupInitId of the server (Lobby-"1")

    Code (Text):
    {
      "layout_config": {
        "fullServerHide": true,
        "groupLayouts": [
          {
            "name": "default",
            "layouts": [
              {
                "name": "online",
                "signLayout": [
                  "%server%",
                  "&e%state%",
                  "%online_players%/%max_players%",
                  "%motd%"
                ],
                "blockId": 159,
                "subId": 0
              },
              {
                "name": "full",
                "signLayout": [
                  "%server%",
                  "&ePREMIUM",
                  "%online_players%/%max_players%",
                  "%motd%"
                ],
                "blockId": 159,
                "subId": 0
              },
              {
                "name": "maintenance",
                "signLayout": [
                  "§8§m---------",
                  "maintenance",
                  "§cmode",
                  "§8§m---------"
                ],
                "blockId": 159,
                "subId": 0
              }
            ]
          }
        ],
        "searchingAnimation": {
          "animations": 33,
          "animationsPerSecond": 10,
          "searchingLayouts": [
            {
              "name": "loading1",
              "signLayout": [
                "&8&m----------",
                "server loading",
                "●                ",
                "&8&m----------"
              ],
              "blockId": 159,
              "subId": 14
            },
            {
              "name": "loading2",
              "signLayout": [
                "&8&m----------",
                "server loading",
                " ●               ",
                "&8&m----------"
              ],
              "blockId": 159,
              "subId": 14
            },
            {
              "name": "loading3",
              "signLayout": [
                "&8&m----------",
                "server loading",
                "  ●              ",
                "&8&m----------"
              ],
              "blockId": 159,
              "subId": 14
            },
            {
              "name": "loading4",
              "signLayout": [
                "&8&m----------",
                "server loading",
                "   ●             ",
                "&8&m----------"
              ],
              "blockId": 159,
              "subId": 14
            }
            [...]
          ]
        }
      }
    }
    [​IMG]

    CloudNet-Core:
    This is the actual network program of the cloud, here all configurations, the internal database management and the players are managed and calculated. The Minecraft Server as well as the BungeeCord server are supported by the "brain"
    To the CloudNet wrappers. All configurations (except for the wrapper) are stored in the CloudNet core.


    Console commands:
    "create | creates new Wrapper, ServerGroups, PermissionGroups, ProxyGroups, custom server",
    "stop | Stop the CloudNet and all Wrapper's",
    "clear | Clear the console",
    "reload | Reload the config and modules",
    "shutdown | Stop wrappers, proxys, servers or proxy/server groups",
    "perms | Manage the permissions from the permissions-system",
    "screen | managed the console of one server",
    "cmd | Executes a command on one game server or proxy server",
    "statistic | A list of all statistic of cloudnet!",
    "modules | Lists all modules, versions and authors",
    "clearcache | Clear for all wrappers the plugin and template cache",
    "list | Lists some informations of the network",
    "installplugin | Plugin install for one server",


    CloudNet wrapper:

    This software is the slave of the CloudNet core. It receives all requests on server and manages them in a queue. The wrapper looks very much at the CPU, and starts server when the CPU is under 50% of the load. The wrapper manages the servers, monitors the status, and executes the commands of the cloud


    The goal of CloudNet:
    CloudNet is a Minecraft server / BungeeCord cloud system, which is to come with a base so that the user of the software will find the benefits of the cloud in the future. CloudNet is designed specifically for every network of people, and provides sufficient networking for each to allow have a stable start into the future of the network.
    CloudNet goes so to speak to anyone who would like to have a Minecraft network, which also with 2 players an advantage to save resources would like to offer.


    BungeeCord Commands:

    /cloud (cns, cn, cnp, cloud) | cloudnet.command.cloud
    /hub (quit, game, l, leave, lobby)
    /cperms (perms, permissions) | cloudnet.command.permissions


    Bukkit Commands:
    /cloudserver | cloudnet.command.cloudserver
    /resource | cloudnet.command.resource


    [​IMG]

    Developers have a big JavaDoc lib with the CoreAPI, Lib and BukkitProxyAPI from CloudNet and can use a lot of functions with CloudNet
    bsp. Custom Servers

    CloudAPI Download

    http://dytanic.de/cloudnet/version/release/2.1.12/CloudNetAPI.jar

    Java Documentation:

    https://cloudnetservice.eu/cloudnet/docs/v2.1.12/

    CloudNet-Repo
    Code (Text):

    <!--- Repository --->
    <repositories>
            <repository>
                <id>cloudnet-repo</id>
                <url>https://cloudnetservice.eu/repositories/</url>
            </repository>
    </repositories>

    <!--- CloudNet-API for Bukkit and BungeeCord --->
    <dependency>
        <groupId>de.dytanic.cloudnet</groupId>
        <artifactId>cloudnet-api-bridge</artifactId>
        <version>2.1.12</version>
        <scope>provided</scope>
    </dependency>

    <!--- For Modules --->
    <dependency>
        <groupId>de.dytanic.cloudnet</groupId>
        <artifactId>cloudnet-core</artifactId>
        <version>2.1.12</version>
        <scope>provided</scope>
    </dependency>
     
    [​IMG]
    [​IMG]

    [​IMG]

    [​IMG]

    [​IMG]

    [​IMG]


    [​IMG]

    [​IMG]

    Setup 2.1.PXI getPlugin


    Setup 2.1.PXI getPlugin


    Setup 2.1.PXI getPlugin


    Setup 2.1.PXI getPlugin


    Setup 2.1.PXI getPlugin


    Setup: 2.0.03 BETA Dytanic


    [​IMG]

    » Designs made by https://twitter.com/FemtoYT
    » Language update by https://twitter.com/EUDevNet
    » Thanks to BukkitFAQ for the setup video https://www.youtube.com/channel/UCsMGD91_Wye-5RMSZsk4w1A
    » The Discord server is managed by https://twitter.com/byRoadrunner
    » Thanks for all Supporters on Discord and maker of the Forum and Website and all Addons or supports for CloudNet <3
    » Thanks to all YouTuber who recorded a vide
    » Thanks for the design help at start of this project https://twitter.com/byTit4n and https://twitter.com/einpume
    Stine2009_, Unbemerkt, Rex33 and 66 others like this.

Recent Reviews

  1. LeonPlayzz
    LeonPlayzz
    5/5,
    Version: 2.1.12
    Dies ist einfach ein Mega geiles CloudSystem, Anfangs hatte ich ein Problem mit Sonderzeichen aber die Nette und Informierte Community konnte mir auf dem Discord im linux-talk helfen mein Problem zu beheben das ich das CloudSystem jetzt im vollen umfange genießen kann. Mein größten Respekt und Dank dafür das du so ein Umfangreiches CloudSystem frei zur Verfügung stellst. Ebenfalls meinen größten Resptekt an den Support und die Community die einem bei allen Problemen helfen und man schlussendlich zu einem Ergebnis kommt

    Mit freundlichen grüßen
    LeonPlayzz
    1. Dytanic
      Author's Response
      Danke erstmal für deine ausführliche Review!

      Ich bin glücklich, dass du so zufriedenstellende Erfahrungen mit dem Projekt gemacht hast, und dazu das ganze auch noch hier schreibst.

      L.G.

      Dytanic
  2. yendric19
    yendric19
    5/5,
    Version: 2.1.12
    THE BEST CLOUD SYSTEM EVER!!!!!!!!!!!!



    Your review must be at least 80 characters. Using filler characters to bypass this limit will get you punished, please write a proper and constructive review.
    1. Dytanic
      Author's Response
      Thanks for your Review!
      I hope you will stay your mind!
  3. TechFreakHD
    TechFreakHD
    5/5,
    Version: 2.1.12
    Best Minecraft Server Cloud System!
    Im using your plugin now on my Network.

    have a nice Day
    1. Dytanic
      Author's Response
      Thanks that you reviewed my project!

      I wish you good luck for the network.
  4. BxmseBiene
    BxmseBiene
    5/5,
    Version: 2.1.12
    Hi, ich finde dein CloudSystem echt gut gelungen und sehr einfach zu bedienen. Ich habe nur eine Frage: Gibt es eine Permission, damit, wenn der Server im Wartungsmodus ist, auch spieler drauf können, die keine "*" Perms haben?
    1. Dytanic
      Author's Response
      Hallo BxmseBiene,

      Es freut mich, dass dir das Programm so gut gefällt, dass du sogar eine Review hier auf dieser Plattform geschrieben hast!

      Um deine Frage zu beantworten: Es gibt eine Permission, um in den Wartungsmodus das Netzwerk zu betreten.
      Diese ist cloudnet.maintenance. Die Funktioniert auch außerhalb meines Rechte-Systems mit jedem BungeeCord Rechte System, welches die BungeeCordAPI um die Rechte zu erfragen verwendet.

      L. G.
      Dytanic
  5. TUBEOF
    TUBEOF
    3/5,
    Version: 2.1.12
    Zu dem Cloud-System selbst kann ich nichts bemängeln, top System!

    Zum derzeitgen Support allerdings schon: Vor einigen Monaten war ich bestens zufrieden mit dem Support. Heute ist es jedoch erstmal eine Herausforderung, einen Support zu finden. Auf dem Discord wurde der Support-Bereich entfernt, sowie viele andere Channel. Man kommt sich mit seinen Problem allein vor, so wie ich es derzeit tue. Würde mich daher freuen, wenn man nicht nach Support suchen müsste, sondern direkt welchen zur Seite gestellt bekommt.

    Zudem: Wie ich es bereits jetzt SEHR OFT im Internet gelesen habe, als ich auf der Suche nach einer Problemlösung war ist, dass es Probleme mit dem Permission-System gibt. Das heißt, in Grundlegend allen Fällen, in denen man z.B. "essentials.warp.*" vergibt, bekommt man nur von dem betroffenen Plugin die Rückmeldung, dass man keine Rechte hat. Dazu kommt noch, wenn man Admin mit "*" Permission ist und eine Funktion eines Plugins mit einer negativen Permission vergabe (z.B. "-essentials.motd") für diese Gruppe deaktivieren möchte, bringt dies nichts!

    Ich habe mich mit diesen Problemen schon sehr lange befasst und keine Lösung gefunden! Hoffe das die Problem schnellstmöglich behoben werden! Denn so macht es das ganze System für mich unbrauchbar derzeit!
    1. Dytanic
      Author's Response
      Guten Tag,

      Danke erstmal für deine Review.

      Ich habe jetzt darüber nachgedacht, wie ich dir Antworten sollte und bin zum Schluss gekommen, dass es so am besten ist.

      Seit einiger Zeit haben wir einen DiscordBot, wo man unter #rules Die Regeln mit einem Häckchen Emoji akzeptieren muss, damit man Zugriff auf die anderen Channel besitzt. Du hast dies anscheinend noch nicht gemacht, und dafür kann ich leider nichts.

      Dazu noch kann man mich hier auf dieser Plattform in einer privaten Konversation anschreiben, und ich versuche jeden Tag 1 - 2 mal diese mir durchzulesen.

      Also was den Support angeht, finde ich deine Kritik unverständlich, den alle Channel sind nach wie vor verfügbar.

      Zu dem Rechte System: Wildcards sind wirklich ein Problem, was man noch beheben sollte, jedoch kann CloudNet nur mit den Plugins zusammenarbeiten, die das Bukkit Rechte-System nutzen, und sich nichts darüber basteln. Die * permsision und das vergeben mit negativen Permissions wurde schon seit einiger Zeit korrigiert.

      Das Rechte-System von CloudNet ist nur ein relativ kleiner Teil des ganzen Programmes und entfernbar, weshalb ich nicht verstehe, dass du nicht in der Lage sein sollte dann damit arbeiten zu können. Es gibt einige unserer Moderatoren, die auch Luckperms als alternative nutzen. CloudNet ist ja nicht nur ein Rechte-System sondern eine Software, welche Minecraft Server und BungeeCord server dynamisch bereitstellen und einfach zu verwalten sein soll.

      Wir werden uns für das Rechte-System trotzdem nochmal Verbesserungen überlegen für die 2.1.13

      Mit freundlichen Grüßen
      Dytanic
  6. fabianzocktYT
    fabianzocktYT
    5/5,
    Version: 2.1.12
    Sehr geiles plugin aber eine frage habe ich wie creade ich einen weiterem unterserver
    1. Dytanic
      Author's Response
      Guten Tag,

      Du kannst einen weiteren Unterserver in der Master Konsole mit dem Befehl "create" erstellen, oder auch in der Konfigurationsdatei der jeweiligen Gruppe den minOnlineCount umstellen.

      Mit freundlichen Grüßen
      Dytanic
  7. Stine2009_
    Stine2009_
    5/5,
    Version: 2.1.12
    Das ist das beste Cloud system ever :)
    :)
    1. Dytanic
      Author's Response
      Hey es freut mich, dass dir das Programm so gut gefällt, dass du sogar dies hier bewertet hast!

      Mit freundlichen Grüßen
      Dytanic
  8. Zweibot
    Zweibot
    5/5,
    Version: 2.1.12
    Hey. Das ist das Beste System, das ich je gesehen habe. Nur ich habe ein Problem. Wie kann ich das beheben: http://prntscr.com/l8kif2 und wie funktioniert /installplugin genau?
    1. Dytanic
      Author's Response
      Entschuldige für meine relativ späte Antwort zu deiner Review!

      Der "installplugins" Befehl würde via einer url Angabe eigentlich ein Plugin auf einen Server installieren, da dies aber nicht sehr gut läuft, wird dieser bald entfernt werden.

      Bei deinem Fehler kann es sein, dass der Wrapper 2 Instanzen hat oder der Schlüssel veraltet ist.
  9. zJavaPlugins
    zJavaPlugins
    4/5,
    Version: 2.1.12
    Hey erstmal,
    Mir gefällt das System gut, dennoch habe ich ein Problem ich weiß nicht wie ich einstellen kann das ich /server und /send rechte habe.
    Könntest du mir dabei helfen?
    1. Dytanic
      Author's Response
      Guten Tag,

      Freut mich das dir die Anwendung gefällt. Zu deinem Problem: Wenn du mein Rechte System verwendet, musst du die permsisions für dich in der perms.yml Datei eintragen.

      Sonst einfach über die BungeeCord Konfigurationsdatei, die Permissions von /server und /send Eintragen.

      In beiden Fällen sind es die Rechte:

      - bungeecord.command.send
      - bungeecord.command.server

      Mit lieben Grüßen
      Dytanic
  10. mickdom
    mickdom
    5/5,
    Version: 2.1.12
    Das beste System, mit dem ich je gearbeitet habe! Kostenlos, stabil und macht aus jedem Minecraft-Server etwas Professionelles. Klasse Arbeit!
    1. Dytanic
      Author's Response
      Hallo mickdom,

      Herzlichen Dank, für deine Review. Ich freue mich, dass dir das Programm so zusagt und du dem eine entsprechende Wertung übermittelst hier auf diese Plattform!

      Mit lieben Grüßen
      Dytanic