StreamableResourcePackManager 1.0.1

Allows your server to self-serve resource pack requests. Also force resourcepacks

  1. JaverPanda
    Native Minecraft Version:
    1.16
    Tested Minecraft Versions:
    • 1.16
    Source Code:
    https://gitlab.com/P4ND4-1100010/StreamableResourcePackManager
    StreamableResourcePackManager
    Disclaimer: Development builds (Work in progress)


    What is this?
    StreamableResourcePackManager allows your server to self-serve resource pack requests. An additional port is required for the mini http daemon used to handle client requests.

    Cool, so how does this work?
    StreamableResourcePackManager hosts a mini http daemon which listens for client requests. Once it recieves a request, it will check if the ip of the client requesting matches an online player's ip. If so, it will send it to the player.

    How secure is it?
    The mini http daemon only serves resource packs inside the config, and no more than that. Premium resource packs are safe and can only be accessed by people with the right permissions, since the ip of the request and player are checked so that it's not possible to request a resource pack from a computer that is not connected to the server.

    Commands
    • /resourcepack load {IdPack} - Lets players download resource packs they have access to.
    • /resourcepack send {IdPack} {PlayerName} - Allows server admins or the console to prompt the desired player with a custom resource pack.
    • /resourcepack retry - Lets players retry to download the onJoinPack.
    Permissions
    • srpm.user - True by default; lets players change their own resource pack.
    • srpm.admin - OP by default; lets admins set players' resource packs. The desired player must have permission to use the resource pack specified.
    • srpm.pack.{id} - False by default; Allow players to download the resource pack (Has no effect onJoinPack).
    • srpm.bypassOnJoinPack - Lets players bypass the onJoinPack
    The Config
    Requires a restart to update in-game.

    # The port to use for the mini-http daemon
    # IMPORTANT: Open the port in your router and firewall (TCP)
    port: 60765
    # Whether or not the console should print a message whenever a player attempts to fetch a resource pack
    verbose: false
    # Whether or not the server is localhost; Useful for testing situations if you're not able to open a port
    localhost: false
    # ResourcePack maping
    # IMPORTANT: The packs should be placed inside the '/plugins/LocalResourcePackHoster/resourcepacks/' folder
    # Format to follow:
    # packs:
    # <id1>: <filename1>
    # <id2>: <filename2>
    packs:
    testPack: testResourcePack.zip
    # Whether or not send a ResourcePack on player join
    sendPackOnJoin:
    enabled: true
    packId: testPack
    retryMessage: "Retrying to download..."
    events:
    onAccept:
    message: "Wise choice"
    commands:
    - say [player] accepted the resource pack!
    onSuccessfulLoad:
    message: "Right choice"
    commands:
    - say [player] successfully loaded the resource pack!
    onDecline:
    message: ">:C!"
    kick:
    enabled: true
    message: "Please accept the resource pack :C"
    commands:
    - say [player] denied the resource pack!
    onFail:
    message: "Failed to download the resource pack! Try to run: '/resourcepack retry' or contact the staff"
    commands:

    Features
    • Self-hosted
    • Bungeecord support
    • Force resourcepack
    Authors
    • P4ND4_1100010
    Forked from:
    https://github.com/Aeternum-Studios/LocalResourcePackHoster

    TODO:
    • Clean and reformat code
    • Perform a more exhaustive test

    Images

    1. SRPM.png
    ccorp2002 likes this.

Recent Reviews

  1. Chis900
    Chis900
    5/5,
    Version: 1.0.1
    It's a simple plugin that allows the addition of a resource pack to your server in an easy and effective way. I have been testing it and everything has worked correctly, thank you very much.