Skip to content

joordih/helektra-practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ Helektra Practice

Solar Lightning

A modern, high-performance Minecraft practice server plugin built from scratch

Version Minecraft License


Solar Star About

Helektra is a comprehensive practice server plugin designed and built entirely from scratch with zero dependencies. It's completely plug-and-play, featuring an optimized custom arena system, full version compatibility, extensive configuration options, and a powerful event system.

Solar Target Core Philosophy

  • Zero Dependencies - No external plugins required, works out of the box
  • Performance First - Custom-built systems optimized for speed
  • Version Compatibility - Full support from 1.8.x to 1.21.x and beyond
  • Highly Configurable - Every aspect can be customized via YAML
  • Modern Architecture - Clean code following industry best practices

Solar Bolt Features

Solar Widget Core Systems

  • Solar Users Profile System - Persistent player data with MongoDB integration
  • Solar Sword Kit System - Fully customizable kits with editor GUI
  • Solar Map Arena System - Advanced arena management with multiple reset strategies
  • Solar Ranking Scoreboard System - Dynamic scoreboards based on player state
  • Solar Settings Configuration - Everything configurable via YAML files

Solar Database Arena System

Our custom-built arena system is designed for maximum performance and flexibility:

  • Multiple Reset Strategies

    • Journal-based (track & revert changes)
    • Section-based (chunk snapshots)
    • Chunk Swap (instant swap)
    • Hybrid (best of both worlds)
  • Smart Pooling - Pre-generated arenas ready for instant use

  • Physics Guard - Prevent TNT/liquid spread between arenas

  • Block Tracking - Intelligent change detection

  • Metrics - Real-time performance monitoring

Social Scoreboard Scoreboard System

  • State-Based Display - Different scoreboard for each game state
  • PlaceholderAPI Support - Full PAPI integration
  • Custom Placeholders - Register your own placeholders
  • Fully Configurable - Customize via scoreboards.yml
  • Performance Optimized - Efficient update system

Solar Calendar Event System

  • Custom Events - Host tournaments and special matches
  • Participant Tracking - Automatic player management
  • Configurable Rewards - Set up prizes and incentives

Solar Translation Multi-Language

  • Localization System - Full i18n support
  • Easy Translation - Simple YAML-based translations
  • Per-Player Language - Players can choose their language

Solar Download Version Compatibility

Minecraft Version Status Features
1.8.x Solar Check Supported Core features, basic arenas
1.9-1.12 Solar Check Supported All core features + dual wielding
1.13-1.16 Solar Check Supported Full feature set + new blocks
1.17-1.19 Solar Check Supported Full support + modern mechanics
1.20-1.21+ Solar Check Supported Latest features + optimizations

Solar Code Version-Specific Features

  • NMS Abstraction Layer - Seamless version compatibility
  • Strategy Pattern - Different implementations per version
  • Automatic Detection - Plugin detects and adapts to server version
  • Future-Proof - Easy to add support for new versions

Solar Box Installation

Solar List Check Requirements

  • Minecraft Server - Paper, Spigot, or compatible fork (1.8-1.21+)
  • Java - Java 21+ (for 1.20.5+) or Java 17+ (older versions)
  • MongoDB - For persistent data storage
  • PlaceholderAPI - Optional, for extended placeholder support

Solar Play Quick Start

  1. Download the latest release from Releases
  2. Place the JAR file in your plugins/ folder
  3. Configure MongoDB connection in config.yml
  4. Restart your server
  5. Done! The plugin is ready to use
# Download
wget https://github.com/joordih/helektra/releases/latest/download/Helektra.jar

# Move to plugins folder
mv Helektra.jar /path/to/server/plugins/

# Restart server
./restart.sh

Solar Settings Configuration

All configuration files are located in plugins/Helektra/:

Solar Document Configuration Files

File Purpose
settings.yml General plugin settings
kits.yml Kit configurations
arenas.yml Arena templates and settings
scoreboards.yml Scoreboard layouts and content
menus.yml GUI menu configurations
translations/ Language files

Solar Code File Example Configuration

# scoreboards.yml
scoreboard:
  enabled: true
  update-interval: 20

  states:
    LOBBY:
      enabled: true
      title: "&6&lHELEKTRA &7┃ &fLobby"
      lines:
        - " "
        - "&6&lInfo"
        - " &7* &ePlayers&7: &f{online_players}"
        - " &7* &eLevel&7: &a{player_level}"
        - " "
        - "&fWelcome back, &e%player_name%"

Solar Command Commands & Permissions

Solar Code Square Player Commands

Command Description Permission
/kit Open kit selector helektra.kit
/kit edit <name> Edit a kit helektra.kit.edit
/settings Open settings menu helektra.settings

Solar Shield Admin Commands

Command Description Permission
/arena create <name> Create new arena helektra.arena.admin
/arena delete <name> Delete arena helektra.arena.admin
/arena setspawn <name> Set arena spawn helektra.arena.admin
/helektra reload Reload configs helektra.admin

Solar Programming For Developers

Solar Layer Architecture

Helektra follows a clean, modular architecture:

helektra/
├── api/          - Public API interfaces
├── plugin/       - Core implementation
│   ├── model/    - Domain models
│   ├── service/  - Business logic
│   ├── repository/ - Data access
│   ├── di/       - Dependency injection
│   └── utils/    - Utilities
└── nms/          - Version-specific code

Solar Folder Path Design Patterns

  • Dependency Injection - Google Guice for loose coupling
  • Repository Pattern - Abstract data access
  • Service Pattern - Business logic separation
  • Strategy Pattern - Version-specific implementations
  • Adapter Pattern - External library wrappers
  • Observer Pattern - Event-driven architecture

Solar Link API Usage

// Get the API
IHelektraAPI api = Helektra.getInstance().getAPI();

// Profile Service
IProfileService profiles = api.getProfileService();
profiles.getProfile(uuid).thenAccept(profile -> {
    // Work with profile
});

// Arena Service
IArenaService arenas = api.getArenaService();
IArena arena = arenas.requestArena("duels");

// Kit Service
IKitService kits = api.getKitService();
IKit kit = kits.getKit("warrior");

Solar Graph Performance

Solar Wind Benchmarks

  • Arena Reset - < 50ms for medium arenas
  • Profile Load - < 10ms from cache
  • Scoreboard Update - < 1ms per player
  • Memory Usage - ~50MB for 100 players

Solar Battery Optimizations

  • Async database operations
  • Smart caching system
  • Efficient event handling
  • Optimized packet usage
  • Pool-based arena management

Solar Buildings Building

Solar Sledgehammer Build from Source

# Clone repository
git clone https://github.com/joordih/helektra.git
cd helektra

# Build with Maven
mvn clean package

# Output: plugin/target/plugin-1.0-SNAPSHOT.jar

Solar Checklist Requirements

  • Maven 3.8+
  • JDK 21+
  • Git (for cloning)

Solar Help Support

Solar Chat Get Help

Solar Bug Found a Bug?

Please report it on GitHub Issues with:

  • Server version
  • Plugin version
  • Steps to reproduce
  • Error logs (if any)

Solar Star Shine Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

Solar Users Contributors

Thanks to everyone who has contributed to Helektra!


Solar Document License

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


Made with Solar Heart by the Helektra team

Solar Lightning

⚡ Practice redefined. Performance perfected. ⚡

WebsiteDiscordTwitter

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages