Skip to content

Repository files navigation

Adapt

image

Overview

gitlocalized

Adapt is a drag and drop solution for balanced passive abilities and skills that players can enjoy on a server.

Description

Adapt Abilities are all accessible in the in-game GUI by right-clicking any bookshelf face, providing a more user-friendly experience to a "skills" system. Most servers aim to enhance the quality of the "vanilla" experience. However, most skill-based plugins offer powers, game-breaking systems, and are riddled with bugs. That's where Adapt comes in, being lightweight on the server and providing mere quality-of-life enhancements to a user's experience.

Below is a WIP list of features (and descriptions) that I'll fill in when I can. But this should give you a good idea of the roadmap for this plugin! Keep in mind that this is all WIP, can change at any time, and all of these features can be configured/disabled!

The master branch is for the latest version of Minecraft.

Language and Localization

Do you know a language other than English? Do you want to play a big part in Adapt's localization into different languages? Join the Discord and let us know or visit the gitlocalize repository to help remotely with language localizations!

If you don't see a language you can easily add it, or let us know here in discussions! We take this on an honor system, so please submit a translation key only if you are confident in the language, and they will be verified.

Building

Download .jar release

Consider supporting our development by buying Adapt On SpigotMC! We work hard to make Adapt the best it can be for everyone.

Build your own .jar

Building Adapt can be challenging and requires some technical knowledge, such as with Iris. However, you will need to set up a few things if your system has never been used for Java development.

Build Steps

So this is fairly similar to Iris, but a bit modified.

IDE Builds (for development & Compilation)

You NEED TO BE USING Intelij To build this project, or anything that can support the plugin Manifold

Preface: if you need help compiling and you are a developer / intend to help out in the community or with development we would love to help you regardless in the discord! however do not come to the discord asking for free copies, or a tutorial on how to compile.

  1. Install Java JDK 21

  2. Set the JDK installation path to JAVA_HOME as an environment variable.

    • Windows
      1. Start > Type env and press Enter
      2. Advanced > Environment Variables
      3. Under System Variables, click New...
      4. Variable Name: JAVA_HOME
      5. Variable Value: C:\Program Files\Java\jdk-21 (verify this exists after installing java don't just copy the example text)
    • MacOS
      1. Run /usr/libexec/java_home -V and look for Java 21
      2. Run sudo nano ~/.zshenv
      3. Add export JAVA_HOME=$(/usr/libexec/java_home) as a new line
      4. Use CTRL + X, then Press Y, Then ENTER
      5. Quit & Reopen Terminal and verify with echo $JAVA_HOME. It should print a directory
  3. Setup Gradle

Gradle Setup
  • Run gradlew setup any time you get dependency issues with craftbukkit
  • Configure ITJ Gradle to use JDK 21 (in settings, search for gradle)
  • Resync the project & run your newly created task (under the development folder in gradle tasks!)
  1. INSTALL MANIFOLD
  2. If this is your first time building Adapt for MC 1.19+ run gradlew setup inside the root Adapt project folder. Otherwise, skip this step. Grab a coffee, this may take up to 5 minutes depending on your cpu & internet connection.
  3. Once the project has setup, run gradlew adapt
  4. The Adapt jar will be placed in Adapt/build/Adapt-XXX-XXX.jar Enjoy! Consider supporting us by buying it on spigot!

Credits

Helping out in any way you can is appreciated, and you will be listed here for your contributions :)

Language
Code
Skill/Adaptation List (110 Adaptations)

Agility (4 adaptations)

AdaptationDescriptionStatus
AgilityArmorUpProgressive armor boost while sprinting with wind-up rampWorking
AgilitySuperJumpEnhanced vertical jump when sneakingWorking
AgilityWallJumpMid-air jumps by sticking to wallsWorking
AgilityWindUpProgressive movement speed boost while sprintingWorking

Architect (5 adaptations)

AdaptationDescriptionStatus
ArchitectElevatorTeleports players between vertically-linked note block elevator markersWorking
ArchitectFoundationCreates temporary tinted glass blocks beneath sneaking playersWorking
ArchitectGlassSilk-touch glass when breaking bare-handedWorking
ArchitectPlacement3x3 block placement preview and batch place while sneakingWorking
ArchitectWirelessRedstoneBind redstone torches to target blocks for remote pulsesWorking

Axes (6 adaptations)

AdaptationDescriptionStatus
AxeChopRight-click logs with an axe to mine vertical columns of connected woodWorking
AxeCraftLogSwapCrafting recipes to convert log types using saplings as catalystsWorking
AxeDropToInventoryRedirects axe block drops into player inventoryWorking
AxeGroundSmashAoE ground slam when sneaking and hitting mobs with an axeWorking
AxeLeafVeinminerVein-mines connected leaves when sneaking with an axeWorking
AxeWoodVeinminerVein-mines connected logs when sneaking with an axeWorking

Blocking (2 adaptations)

AdaptationDescriptionStatus
BlockingChainArmorerCrafting recipe for chainmail armor from iron nuggetsWorking (recipe-only)
BlockingMultiArmorCombine chestplate and elytra into auto-switching MultiArmor itemWorking

Brewing (13 adaptations)

AdaptationDescriptionStatus
BrewingAbsorptionBrewing recipe for Absorption potionsWorking
BrewingBlindnessBrewing recipe for Blindness potionsWorking
BrewingDarknessBrewing recipe for Darkness potionsWorking
BrewingDecayBrewing recipe for Wither/Decay potionsWorking
BrewingFatigueBrewing recipe for Mining Fatigue potionsWorking
BrewingHasteBrewing recipe for Haste potionsWorking
BrewingHealthBoostBrewing recipe for Health Boost potionsWorking
BrewingHungerBrewing recipe for Hunger potionsWorking
BrewingLingeringExtends potion durations and adds lore via BrewEventWorking
BrewingNauseaBrewing recipe for Nausea potionsWorking
BrewingResistanceBrewing recipe named "Resistance" but applies ABSORPTION effectBug (effect type mismatch)
BrewingSaturationBrewing recipe for instant Saturation potionsWorking
BrewingSuperHeatedAccelerates brewing speed based on adjacent lava/fire blocksWorking

Crafting (7 adaptations)

AdaptationDescriptionStatus
CraftingBackpacksCrafting recipe for bundles from leather, lead, chest, and barrelWorking
CraftingDeconstructionRight-click floating items with shears while sneaking to deconstructWorking
CraftingLeatherCampfire recipe to cook rotten flesh into leatherWorking
CraftingReconstruction16 recipes to reconstruct ore blocks from stone and ingotsWorking
CraftingSkullsCrafting recipes for mob skulls from bone blocks and materialsWorking
CraftingStationsRight-click portable crafting station items to open their UIsWorking
CraftingXPGrants XP orbs when crafting itemsWorking

Discovery (4 adaptations)

AdaptationDescriptionStatus
DiscoveryArmorGrants armor points based on hardness of nearby blocksWorking
DiscoveryUnityGrants random XP to a random unlocked skill when gaining vanilla XPWorking
DiscoveryVillagerAttSteal XP and get Hero of the Village when right-clicking villagersWorking
DiscoveryXpResistConverts XP levels into damage reductionBroken (always-false condition)

Enchanting (3 adaptations)

AdaptationDescriptionStatus
EnchantingLapisReturnChance to return lapis lazuli when enchantingWorking
EnchantingQuickEnchantApply enchanted books to items by swapping cursor in inventoryWorking
EnchantingXPReturnReturns XP orbs when enchanting itemsWorking

Excavation (4 adaptations)

AdaptationDescriptionStatus
ExcavationDropToInventoryShovel drops go directly to inventoryWorking
ExcavationHasteGrants Haste when starting to mineWorking
ExcavationOmniToolMulti-tool that auto-switches between tool types based on blockWorking
ExcavationSpelunkerSneak with glowberries to highlight nearby ores with glowing markersWorking

Herbalism (10 adaptations)

AdaptationDescriptionStatus
HerbalismCraftableCobwebCrafting recipe for cobweb from stringWorking (recipe-only)
HerbalismCraftableMushroomBlocksCrafting recipes for mushroom blocks from mushroomsWorking (recipe-only)
HerbalismDropToInventoryHoe crop drops go directly to inventoryWorking
HerbalismGrowthAuraAura that accelerates nearby crop growth at hunger costWorking (TODO notes XP is busted)
HerbalismHungryHippoBonus food saturation when eatingWorking
HerbalismHungryShieldConverts incoming damage to hunger consumptionWorking
HerbalismLuckChance to drop seeds and food when breaking grass and flowersWorking
HerbalismMyconidCrafting recipe for mycelium from dirt and mushroomsWorking (recipe-only)
HerbalismReplantRight-click mature crops with hoe to harvest and auto-replant in radiusWorking
HerbalismTerralidCrafting recipe for grass block from seeds and dirtWorking (recipe-only)

Hunter (9 adaptations)

AdaptationDescriptionStatus
HunterAdrenalineIncreased damage output when at low healthWorking
HunterDropToInventorySword kill drops go directly to inventoryWorking
HunterInvisGrants invisibility when taking damage with optional hunger penaltyWorking
HunterJumpBoostGrants jump boost when taking damageWorking
HunterLuckGrants luck when taking damageWorking
HunterRegenGrants regeneration when taking damageWorking
HunterResistanceGrants damage resistance when taking damageWorking
HunterSpeedGrants speed when taking damageWorking
HunterStrengthGrants strength when taking damageWorking

Nether (3 adaptations)

AdaptationDescriptionStatus
NetherFireResistChance to negate fire damage scaling with levelWorking
NetherSkullYeetLeft-click with wither skull to launch a wither skull projectileWorking
NetherWitherResistChance to negate wither damage scaling with netherite armor countWorking

Pickaxe (5 adaptations)

AdaptationDescriptionStatus
PickaxeAutosmeltAuto-smelts ores into ingots when mined, respects fortuneWorking
PickaxeChiselRight-click ores to extract raw drops with tool damageWorking
PickaxeDropToInventoryPickaxe drops go directly to inventoryWorking
PickaxeSilkSpawnerSilk-touch or sneak to pick up spawners preserving propertiesWorking
PickaxeVeinminerSneak-mine to break all connected ores and obsidian in radiusWorking

Ranged (5 adaptations)

AdaptationDescriptionStatus
RangedArrowRecoveryChance to recover arrows on hit scaling 10% to 80%Working
RangedForceIncreases projectile velocity on launchWorking
RangedLungeShotLaunches player backward when shooting arrows mid-airWorking
RangedPiercingIncreases arrow pierce level based on adaptation levelWorking
RangedWebBombThrowable snowballs that create temporary cobwebs on impactWorking

Rift (7 adaptations)

AdaptationDescriptionStatus
RiftAccessBind ender pearl to a container for remote inventory accessWorking
RiftBlinkShort-range teleport in look direction while sprinting mid-airWorking
RiftDescentRemoves levitation and grants slow falling when un-sneakingWorking
RiftEnderchestRight-click while holding ender chest to open it anywhereWorking
RiftGateBind eye of ender to locations for teleportation recallWorking
RiftResistGrants damage resistance when interacting with ender pearls or eyesWorking
RiftVisagePrevents endermen from targeting players carrying ender pearlsWorking

Seaborne (5 adaptations)

AdaptationDescriptionStatus
SeaborneFishersFantasyBonus drops and XP when catching fishWorking
SeaborneOxygenGrants water breathing when in waterWorking
SeaborneSpeedGrants Dolphin's Grace when swimming without Depth StriderBug (early return exits loop for all players)
SeaborneTurtlesMiningSpeedGrants Haste when underwaterWorking
SeaborneTurtlesVisionGrants Night Vision when underwaterWorking

Stealth (5 adaptations)

AdaptationDescriptionStatus
StealthEnderVeilPrevents Endermen from targeting or attacking the playerWorking
StealthGhostArmorRegenerating armor points that reset on damageWorking
StealthSightGrants night vision while sneakingWorking
StealthSnatchAuto-collects nearby dropped items while sneakingWorking
StealthSpeedGrants speed while sneakingWorking

Swords (3 adaptations)

AdaptationDescriptionStatus
SwordsBloodyBladeApplies bleeding DoT effect to sword-hit targetsWorking
SwordsMacheteLeft-click with sword to harvest vegetation in an areaWorking
SwordsPoisonedBladeApplies poison and bleed to sword-hit targetsWorking

Taming (3 adaptations)

AdaptationDescriptionStatus
TamingDamageIncreases attack damage of tamed entitiesWorking
TamingHealthBoostIncreases max health of tamed entitiesWorking
TamingHealthRegenerationGrants regen to tamed entities when they take damageWorking (minor concurrency concern)

Tragoul (4 adaptations)

AdaptationDescriptionStatus
TragoulGlobeDistributes damage dealt to all nearby entities as AoEWorking
TragoulHealingHeals player on melee hit as percentage of damage dealtWorking
TragoulLanceSpawns seeking projectiles that chain between enemies on killWorking
TragoulThornsReflects damage back to attackers including melee and projectileWorking

Unarmed (3 adaptations)

AdaptationDescriptionStatus
UnarmedGlassCannonAmplifies unarmed damage inversely proportional to armorWorking
UnarmedPowerPassive unarmed damage increase scaling with levelWorking
UnarmedSuckerPunchAmplified unarmed damage while sprintingWorking

Known Bugs

AdaptationIssue
DiscoveryXpResistCondition p.getLevel() < p.getLevel() - getXpTaken(...) is always false; damage reduction never triggers
SeaborneSpeedreturn; inside player loop exits entire onTick() when any player has Depth Strider, skipping all remaining players
BrewingResistanceNamed "Bottled Resistance" but applies ABSORPTION effect instead of RESISTANCE

About

Adapt Vanilla Gameplay with better skills and implementations than anywhere else!

Topics

Resources

Contributing

Stars

91 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages