Giter Club home page Giter Club logo

vane's Introduction

MIT License Join us on Discord

Overview Overview Overview

About vane

Vane is a group of plugins which provide many immersive and lore friendly extensions for vanilla minecraft. It runs on any papermc based server.

These plugins follow a strict no-nonsense rule:

  • If you dislike any feature, you can disable it individually.
  • Features must be lore friendly, properly integrated and unobtrusive
  • Additions should actually be useful
  • Augments the classic vanilla experience, and doesn't try to replace it.

Features

For a full overview and explanation of all features, visit the online overview.

All features are modularized and can be disabled independently of each other. If you don't want a certain feature, simply disable it.

Quality of life (vane-trifles)

  • Walk faster on grass paths
  • Harvest finished crops by right-clicking (or by using a Sickle)
  • Double doors open simultaneously
  • Sort chests with redstone
  • Modify individual connections of walls, fences, etc. and easily modify stair shapes using the File
  • Store XP in bottles
  • Limit anvil repair cost to remove 'too-expensive'
  • All recipes will be unlocked automatically when joining the server
  • Access to gigantic head library (>30000 heads) for decorative purposes, including in-game menu to search and acquire heads by category, tags or name.
  • Use the Portal Scrolls to get home or back to where you last used a scroll!
  • The Sickle allows you to harvest a small radius of finished crops. Similar to the hand-harvesting addition, this will drop only product and no seeds.
  • The File allows you to modify block individual connections of fences, walls, glass panes and blocks alike.
  • The Empty Experience Bottle allows you to bottle your experience (right click) for later use. Drinking the full bottle will grant you the stored experience. Storing experience will cost a small percentage of the bottled xp. It will also calculate in terms of experience and not levels.
  • The Portal Scroll (Home) will teleport you to your bed, but it only has a limited amount of uses!
  • The Portal Scroll (Unstable) will teleport you back to the location where you last used a portal scroll.
  • The Reinforced Elytra allows you to have armor and an Elytra.

Core features (vane-core)

  • Full localization support, currently provides english (default), german and french.
  • Automatically generated resource pack will provide client side translations
  • Inaccessible commands will not be shown to players (sends "Unknown Command" instead)

Administrative (vane-admin)

  • The server can be automatically stopped after a specified duration without players. Using this together with vane-waterfall to start the server on demand will allow you to save server resources while nobody is online.
  • Slightly colorized chat message format for better readability
  • Convenience commands for time, weather, gamemode, spawn, ...
  • Hazard protection against creeper/wither explosions, door breaking, ...
  • Stylish world rebuilding after explosion hazards.
  • Whitelist for worlds in which the Wither may be spawned

Permissions (vane-permissions)

  • Builtin lightweight permissions plugin (permission groups, group inheritance, live editing). For better control, all default permissions are revoked and need to be added explicitly.
  • Players without any permissions cannot alter the world (just look, no touch!)
  • Verified players can vouch for new players with /vouch <player>, which will assign a configured group to the new player.

Multiplayer sleeping (vane-bedtime)

  • Skip night with 50% of players sleeping
  • Dynmap integration shows player beds

Custom enchantments (vane-enchantments)

  • Seamless integration of custom enchantments with the vanilla system
  • Wings: Occasionally boost your elytra mid-air by sneaking.
  • Soulbound: Soulbound items will be kept on death. Also prevents yeeting your best tool out of existence.
  • Rake: Tilling farmland again will till the nearest block around it. Use repeatedly on farmland to create a circle.
  • Careless: Tilling long grass will remove it and till the block below. Useful in combination with Rake to automatically till grass with long grass on top.
  • Seeding: Right click your crops to plant crops of the same type around them. Use multiple times to create a circle.
  • Takeoff: Double jump to start gliding with your elytra and receive a small boost.
  • Hell Bent: Don't hurt your head when flying into a wall. Again.
  • Grappling Hook: Finally put that fishing rod to good use!
  • Leafchopper: Remove leaves instantly with your axe. Leaves will drop items as if they decayed naturally.
  • Angel: A legendary enchantment to accelerate your elytra while pressing shift! Gives a more natural feeling than using rockets. Elytra go brrrr! (Replaces Wings)
  • Unbreakable: Well... A legendary enchantment for truly unbreakable items. Extremely expensive. (Replaces Unbreaking and Mending)

Portals (vane-portals)

  • Build portals of arbitrary shape and orientation to get around easily (even horizontal!)
  • Correctly retains velocity of players, so you can fly through it
  • Apply different styles to portals so they fit your building style
  • Dynmap integration shows icons for global portals

Regions (vane-regions)

  • Players can buy a patch of land, and may control certain environmental conditions and player permissions for that area
  • Regions created by admins can be used to protect global areas (e.g. spawn).
  • Seamless integration into chest-like menus instead of commands.
  • Integrates with portals to allow only players with the portal permission to operate portals in the region
  • Integrates with dynmap to make regions visible on the online map
  • Visual region selection indicator

Proxy plugin (vane-waterfall)

  • Authentication multiplexing: Grant players any amount of additional accounts (e.g. useful for secondary spectator accounts). This works by proxying logins from a different port and changing UUIDs.
  • Servers can be started automatically when a player tries to join.
  • ping command to check server ping as recieved by the proxy.
  • maintenance command to schedule maintenance times. While maintenance is active, players without a bypass permission can't join servers.

Remarks

[as of 1.16.2] Showing enchantment names inside the enchantment table doesn't work due to protocol limitations. Custom enchantments will be shown without any tooltip, and therefore cannot be distinguished from one another.

[as of 1.16.2] Vane technically supports enchantments to be acquired using the enchanting table, but all enchantments from this plugin will be acquired by treasure or crafting. The reason is that adding all these enchantments at high levels would not work out well regarding the relative probability of common and rare enchantments. At the time of writing, there are only 4 rarity categories, and the vanilla rarities cannot be conveniently modified. So as the custom enchantments are on average more powerful than the vanilla ones, we would need more categories to balance the enchanting process. This system is not suited for giving out valuable traits (like Angel or Unbreakable), so we decided to create crafting recipes and modify loot tables instead.

Installation

For a comprehensive guide, visit the Installation Guide on the wiki.

This plugin requires Java 16!

To install vane, begin by downloading/compiling and placing all desired module jars into the plugins/ directory.

  1. Start the server to generate configuration files, and edit them to your preference.
  2. Either restart the server, or type /vane reload to apply the changes.
  3. Execute /vane generate_resource_pack. This will place the required resource pack in the server's working directory.
  4. Copy the resource pack to a publicly accessible webserver and configure the related section in plugins/vane-core/config.yml. Beware that minecraft has problems with https connection as outlined below.
  5. Either restart the server again, or type /vane reload to apply the changes.

Enjoy playing!

[as of 1.16.2] Beware that the minecraft client currently has issues with webservers that serve resource packs via https and don't allow ssl3. This protocol is considered insecure and therefore should NOT be used. To workaround this issue, you should host the file in a http context. Using http is not a security issue, as the file will be verified via its sha1 sum by the client.

Installation (vane-waterfall)

Again, download/compile and place vane-waterfall jar into the proxy server's plugins/ directory. The configuration will be generated on first start.

To enable the authentication multiplexing, you need to do the following:

  1. Define multiple listeners (distinct ports) for your servers in the proxy's config.yml.
  2. Map these ports to multiplexer ids in plugins/vane-waterfall/config.yml. The specific multiplexer ids must be >0. Other than that the ids are only important to check player permissions.
  3. Assign the corresponding permission(s) vane_waterfall.auth_multiplexer.<multiplexer_id> to the desired group in the proxy's config.yml.
  4. Assign the group to a player using the players' UUID. THIS IS IMPORTANT and won't work with player names.

Optionally, you can configure the second configuration section in plugins/vane-waterfall/config.yml to allow automatic server start. An example is provided in the config file.

Building from source

You can of course build the plugin yourself. To do that you need at least JDK 17.

  1. Execute ./gradlew build
  2. All resulting jar files that can be used on a server will be in target/.

If you experience "peer not authenticated" issues from gradle, just retry. Seems to be a skittish integration between gradle and maven repositories.

FAQ

Please refer to the FAQ in the wiki.

Acknowledgements & 3rd-party software

I would like to thank the following projects and people maintaining them:

  • Spigot for the awesome baseline server software.
  • PaperMC for the valuable additions missing from Spigot, and for Waterfall.
  • ProtocolLib for the awesome protocol layer library.
  • DynmapCoreAPI (Apache-2.0), dynmap integration

Included software

The following software packets will be included in the compilation step:

vane's People

Contributors

karthanistyr avatar oddlama avatar rozefound avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.