Перейти к содержимому
Mineforgian

Crystal Powers

A Minecraft Spigot/Paper plugin that adds crystal-powered abilities and unique powers, inspired by the popular Origins mod.

Загрузки
162
Подписчики
1
Обновлён
8 июня 2025 г.
Лицензия
DSL

Опубликован 8 июня 2025 г.

Crystal Powers Minecraft Plugin

A Minecraft Spigot/Paper plugin that adds crystal-powered abilities and unique powers, inspired by the popular Origins mod.

Features

Available Crystal Powers

  1. Human - Balanced power with no special abilities or weaknesses
  2. Avian - Bird-like beings who can fly but are fragile
    • Flight ability
    • No fall damage
    • Less health (8 hearts)
    • Weak to projectiles
  3. Enderian - Mysterious beings from the End with teleportation abilities
    • Enhanced ender pearl teleportation
    • Night vision
    • Takes damage from water and rain
  4. Arachnid - Spider-like beings who can climb walls
    • Wall climbing (sneak against walls)
    • Night vision
    • Poison immunity
    • Less health (8 hearts)
  5. Merling - Aquatic beings who thrive underwater
    • Water breathing
    • Faster swimming
    • Night vision underwater
    • Slower movement on land
  6. Phantom - Ghostly beings with phasing abilities
    • Invisibility toggle (sneak + right-click)
    • Immune to fall damage
    • Burns in sunlight
    • Less health (7 hearts)

Chest-Based Interface

The plugin features an immersive mystical chest GUI interface for crystal power selection:

  • Interactive Chest GUI: Crystal powers are presented in a beautifully designed chest interface
  • Detailed Descriptions: Each power has detailed tooltips with lore-friendly descriptions
  • Visual Selection: Click through power items to explore different options
  • Random Selection: Includes a "Random Power" button for random assignment
  • Permanent Choice: Once selected, powers cannot be changed (as warned in the GUI)
  • Immersive Experience: Themed items and mystical presentation enhance roleplay
  • Easy Navigation: Back buttons and intuitive layout for seamless browsing

The chest GUI automatically opens when new players join the server, or can be accessed anytime with /crystalpower, /cp gui, or /power menu.

Installation

  1. Download the latest release
  2. Place the CrystalPowers.jar file in your server's plugins folder
  3. Restart your server
  4. Configure the plugin in plugins/CrystalPowers/config.yml if needed

Commands

  • /crystalpower - Open the mystical Crystal Powers chest GUI
  • /cp gui - Open the Crystal Powers chest GUI (explicit)
  • /power menu - Open the Crystal Powers chest GUI (alternative alias)
  • /crystalpower select <power> - Select a specific crystal power
  • /crystalpower random - Let fate choose a random crystal power for you
  • /crystalpower info [power] - Show information about your current power or a specific power
  • /crystalpower list - List all available crystal powers
  • /crystalpower reload - Reload the plugin configuration (requires crystalpowers.admin permission)

Debug Commands (Admin Only)

  • /crystalpower debug - Show detailed debug information about crystal power system
  • /crystalpower reload - Reload the plugin configuration (requires crystalpowers.admin permission)

Permissions

  • crystalpowers.select - Allows players to select a crystal power (default: true)
  • crystalpowers.admin - Allows access to admin commands (default: op)
  • crystalpowers.bypass - Bypass crystal power change cooldown (default: op)

Configuration

The plugin creates a config.yml file where you can:

  • Enable/disable specific crystal powers
  • Modify crystal power properties
  • Change cooldown settings
  • Customize messages
  • Configure GUI settings
  • Adjust debug logging levels

License

This project is licensed under the DSL License - see the LICENSE file for details.

Credits

Inspired by the Origins mod by Apace100 for Fabric/Forge.

Ченджлог

1.0.0Релиз1.19.2, 1.19.3, 1.19.4 · 8 июня 2025 г.

Changelog

All notable changes to the Crystal Powers plugin will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.1.0] - 2025-06-08

Added

Core Plugin Features

  • Complete plugin rebranding from "Origins" to "Crystal Powers"
  • Crystal Power system with 6 unique powers: Human, Avian, Enderian, Arachnid, Merling, and Phantom
  • Immersive chest-based GUI for crystal power selection with mystical theming
  • Persistent player data storage with YAML configuration
  • Command system with intuitive aliases and tab completion

Crystal Powers

  • Human: Balanced baseline power with no special abilities or weaknesses
  • Avian: Flight ability, fall damage immunity, reduced health (8 hearts), weakness to projectiles
  • Enderian: Enhanced teleportation with ender pearls, night vision, water/rain damage vulnerability
  • Arachnid: Wall climbing when sneaking, night vision, poison immunity, reduced health (8 hearts)
  • Merling: Water breathing, faster swimming, underwater night vision, slower land movement
  • Phantom: Invisibility toggle (sneak + right-click), fall damage immunity, sunlight vulnerability, reduced health (7 hearts)

Advanced Abilities Implementation

  • Flight system with proper game mode checks and persistence
  • Teleportation mechanics with enhanced ender pearl functionality
  • Wall climbing physics for Arachnid power
  • Invisibility mechanics with light level detection for Phantom
  • Swimming enhancements with speed modifiers for Merling
  • Damage immunity system for fall damage, poison, and other effects
  • Health modification system with proper attribute handling
  • Speed multipliers for land and water movement

GUI System

  • Mystical chest interface with themed item representations
  • Interactive power selection with detailed tooltips and lore
  • Random power assignment option for fate-based selection
  • Confirmation system with permanent choice warnings
  • Visual feedback with chat messages and sound effects
  • Automatic GUI opening for new players

Commands and Permissions

  • /crystalpower - Main command with GUI access
  • /cp, /power, /crystal - Command aliases for convenience
  • Subcommands: select, random, info, list, reload, debug
  • Permission system: crystalpowers.select, crystalpowers.admin, crystalpowers.bypass
  • Tab completion for all commands and crystal power names
  • Debug command for troubleshooting crystal power issues

Technical Features

  • Event-driven architecture with comprehensive player event handling
  • Equipment management including Elytrian auto-elytra and restrictions
  • Potion effect system with permanent and temporary effects
  • Damage modification system with multipliers and immunities
  • Game mode compatibility ensuring proper functionality across all modes
  • Error handling with extensive logging and debug information

Code Protection

  • yGuard integration ready for JAR obfuscation (Maven profile prepared)
  • Source code protection against reverse engineering
  • Build system integration with Maven for automated obfuscation

Developer Features

  • Comprehensive API for other plugins to interact with Crystal Powers
  • Modular architecture with separated managers, models, and utilities
  • Extensive documentation with detailed README and code comments
  • Debug logging system for troubleshooting and development

Technical Details

Architecture

  • Package structure: com.crystalpowers.plugin with organized subpackages
  • Manager classes: CrystalPowerManager, PlayerDataManager
  • Model classes: CrystalPower, PlayerData with builder patterns
  • Event listeners: Comprehensive PlayerListener for all game events
  • GUI system: CrystalPowerBookGUI with chest-based interface
  • Utility classes: JsonBuilder, EncryptionUtil for data handling

Data Management

  • YAML-based storage in playerdata.yml
  • UUID-based player identification for server compatibility
  • Cooldown system for crystal power changes (24-hour default)
  • Data persistence across server restarts
  • Automatic data migration from legacy Origins format

Performance Optimizations

  • Efficient event handling with null checks and early returns
  • Minimal memory footprint with optimized data structures
  • Lazy loading of player data when needed
  • Scheduled tasks for delayed operations and checks

Compatibility

  • Minecraft Version: 1.19.4+
  • Server Software: Spigot, Paper (recommended)
  • Java Version: 17+
  • Dependencies: None (standalone plugin)

Migration

  • Complete migration from Origins plugin structure
  • Automatic data conversion from legacy Origins format
  • Preserved player selections during transition
  • Backward compatibility with existing configurations

Known Issues

  • None reported in initial release

Security

  • Permission-based access control for admin functions
  • Input validation for all commands and interactions
  • Safe data handling with proper encoding and validation
  • Code obfuscation ready for production deployment

Note: This is the initial release of Crystal Powers, representing a complete rewrite and rebranding of the Origins plugin with enhanced features, improved architecture, and comprehensive crystal power implementations.

Комментарии

Загружаем…