CrisStealCore+ | All-in-One Lifesteal, Shop, Anti-Exploit & Custom Items System ✨ icon

CrisStealCore+ | All-in-One Lifesteal, Shop, Anti-Exploit & Custom Items System ✨ -----

All life. All power. One system.



Diseño_sin_título__1_-removebg-preview.png
Forge your life. Lose it or steal it.

CRISSTEALCORE - LIFESTEAL CORE PLUGIN
======================================================================================
HEARTS • ⚔️ LIFESTEALCOINSSHOPANTI-EXPLOITCUSTOM ITEMS
[​IMG]
WHAT IS CRISSTEALCORE?
CrisStealCore is a powerful Lifesteal Core Plugin built for Paper/Spigot servers.
It provides full control over Lifesteal, Shops, Custom Items, Anti-Exploit mechanics, and more.

✔️ Lifesteal mechanics (steal, lose, min/max hearts)
✔️ Creation of 100% configurable items, complete ecosystem
✔️ Custom ban & lives system
✔️ Custom Events
✔️ Anti-exploit checks
✔️ Advanced YAML-based creation
✔️ Multi-page GUI Shop, custom opening commands
✔️ Coins (SQLite) + Vault support
✔️ PlaceholderAPI & full customization

⚙️ INSTALLATION
Code (Text):

[*]Place the CrisStealCore.jar inside /plugins/

[*]Start your server to generate default files.

[*]Edit configurations in /plugins/CrisStealCore/

[*]configuration.yml → core settings
[*]lang/ → language messages
[*]items/ → custom item definitions
[*]shop/ → shop pages
[*]events/ → events manager

[*]Reload with /criscoreadmin reload all or restart the server.
 

CORE CONFIGURATION FILES
  • configuration.yml → Main settings, Lifesteal, Anti-Exploit
  • events/ → Events creator
  • deaths-messages.yml → Custom kill/death messages

  • items/ → Custom item files

  • coins.yml → Currency settings

  • shop/ → Shop pages
  • shop-configuration.yml → Command mapping & world restrictions

  • lang/ → Language customization
  • cusom-drops.yml → create custom item drop
  • resurrection-logic.yml → Configure the entire system for reviving a player
  • placeholders.yml → Edit the placeholders to your liking
  • chat.yml → Edit the chat format and more

❤️ LIFESTEAL & LIVES SYSTEM
Code (Text):
settings:
  lives:
    enabled: true #disable to not use lives system
    max-deaths: 3      # deaths before ban
    reset-hearts-on-ban: true #disable to not reset hearts on ban
    ban:
      use-command: true #disable to not use a command to ban players
      command: "ban {PLAYER} {TIME} CrisSteal elimination"
      duration-minutes: -1  # -1 permanent, 0 no ban, >0 minutes when using internal ban
Control:
  • Heart stealing and loss

  • Min/max limits

  • Bans on zero hearts

  • World restrictions

  • Fully custom lives-based elimination system

ANTI-EXPLOIT SYSTEM
Code (Text):

anti-exploit:
  enabled: true #disable to not use anti-exploit system
  block-same-ip: true #disable to not block same ip kills
  repeat-kill-window-seconds: 120 #time in seconds to prevent same ip kills
  prevent-drops-on-exploit: true #disable to not prevent drops from custom-drops.yml
  warn-message-withSameIp: "&c{player} &eentered with the same IP address as &4{player-other}&e!" #message to warn admins when same IP detected
  admin-bypass:
    enabled: true #disable to not bypass anti-exploit for admins
    permission: "cris.core.bypass" #permission to bypass anti-exploit
 
Prevents exploit abuse:
  • Detects same-IP kills

  • Prevents repeated kills

  • Removes drops if exploit detected

ON-DEATH EFFECTS & COMMANDS
Code (Text):
on-player-death:
  enabled: true #disable to not show any effects
  particles-effect: "WITCH"
  disabled-worlds: ["example_world", "example_world_2"] #disable in specific worlds
  execute-commands:
  - criscoreadmin add healt %player_name% 1
  messages:
    enabled: true #disable to not show any messages
    on-death:
    - "&c❤︎ &aYou gained 1 heart on death!"
  title:
    message: "&c&lYou died!"
    fade-in: 10
    stay: 60
    fade-out: 20
  subtitle:
    message: "&7Be careful next time..."
  actionbar:
    message: "&eLost items? Check your grave!"
 
Customize death actions with titles, sounds, particles & commands.
Full PlaceholderAPI support.

⚔️ RESURRECTION SYSTEM
Code (Text):
# Resurrection System Configuration
# ===================================

# Enable/disable the resurrection system
enabled: true

# Item ID from "items/" folder that players need to revive others
revive-item-id: "item-resurrection" # this is item-resurrection.yml

click-action: "ALL_CLICK" # ALL_CLICK, LEFT_CLICK, RIGHT_CLICK, SHIFT_LEFT_CLICK, SHIFT_RIGHT_CLICK

# Time in seconds for the resurrection process (player must hold right-click)
resurrection-time: 12

# Cancel resurrection if the reviver moves (moves more than 0.5 blocks)
cancel-on-move: true

# Time in seconds before the dead player permanently dies (0 to disable)
death-timeout: 60

# Cooldown in seconds before the resurrection item can be used again (0 to disable)
cooldown: 0

# Consume the item when resurrection is successful (true/false)
consume-on-use: true

# Maximum range in blocks to detect dead players (player must be within this range and looking at them)
revive-range: 1.5

on-bleeding:
  message: "&4{player} &cis bleeding..."

# Messages and display during resurrection countdown
countdown:
  # Actionbar message shown during countdown
  # Placeholders: {time} (seconds remaining), {victim} (dead player name)
  actionbar: "&e&lResurrecting {victim}... &7{time}s remaining"
 
  # Title shown during countdown
  title:
    message: "&a&lRESURRECTING..."
    fade-in: 5
    stay: 10
    fade-out: 5
 
  # Subtitle shown during countdown
  subtitle:
    message: "&7Hold still! &e{time}s"
 
  # Message when resurrection is completed
  success:
    title: "&a&lRESURRECTED!"
    subtitle: "&7{victim} has been brought back to life!"
    actionbar: "&aSuccessfully resurrected {victim}!"
 
  # Message when resurrection is cancelled (moved)
  cancelled:
    title: "&c&lCANCELLED"
    subtitle: "&7You moved! Resurrection cancelled."
    actionbar: "&cResurrection cancelled - don't move!"

# Messages for the dead player waiting to be revived
dead-player:
  # Time remaining before permanent death
  # Placeholders: {time} (seconds remaining), {reviver} (player trying to revive, if any)
  countdown:
    actionbar: "&c&lWaiting for revival... &7{time}s until permanent death"
    title:
      message: "&c&lYOU ARE DEAD"
      fade-in: 10
      stay: 40
      fade-out: 10
    subtitle:
      message: "&7Someone can revive you with a resurrection item! &e{time}s"
 
  # When someone starts reviving
  being-revived:
    actionbar: "&a&l{reviver} &7is resurrecting you! &e{time}s"
    title:
      message: "&a&lBEING RESURRECTED"
      fade-in: 5
      stay: 10
      fade-out: 5
    subtitle:
      message: "&7{reviver} is bringing you back to life!"
 
  # When successfully revived
  revived:
    title: "&a&lYOU WERE RESURRECTED!"
    subtitle: "&7{reviver} brought you back to life!"
    actionbar: "&aWelcome back to life!"
 
  # When time runs out
  permanent-death:
    title: "&c&lPERMANENT DEATH"
    subtitle: "&7Your time ran out..."
    actionbar: "&cYou have permanently died."

# Messages for the reviver
reviver:
  # When starting to revive
  started:
    actionbar: "&eHold right-click to resurrect {victim}! &7{time}s"
 
  # Effects when starting resurrection
  start:
    sound: "BLOCK_NOTE_BLOCK_PLING" # Sound to play when starting
    particles: "SPELL_WITCH" # Particles to show when starting
    title: "&e&lRESURRECTING..." # Title shown when starting
    subtitle: "&7Hold still! &e{time}s" # Subtitle shown when starting
    title:
      fade-in: 5
      stay: 20
      fade-out: 5
 
  # When resurrection is successful
  success:
    title: "&a&lSUCCESS"
    subtitle: "&7You resurrected {victim}!"
    actionbar: "&aYou successfully resurrected {victim}!"
    sound: "ENTITY_PLAYER_LEVELUP" # Sound to play on success
    particles: "TOTEM" # Particles to show on success
    title:
      fade-in: 10
      stay: 40
      fade-out: 10
 
  # When cancelled (moved)
  cancelled:
    actionbar: "&cYou moved! Resurrection cancelled."
 
  # Cooldown messages
  cooldown-message: "&cYou must wait &e{time}s &cbefore using this again!"
  cooldown:
    sound: "ENTITY_VILLAGER_NO" # Sound when on cooldown
    particles: "SMOKE_NORMAL" # Particles when on cooldown
    title: "&c&lON COOLDOWN" # Title when on cooldown
    subtitle: "&7Wait &e{time}s &7more!" # Subtitle when on cooldown
    title:
      fade-in: 5
      stay: 20
      fade-out: 5
 
  # When no target found
  no-target-message: "&cNo dead player found nearby! Stand within &e{range} &cblocks and look at them."
 
  # When someone else is already reviving
  already-reviving-message: "&cSomeone is already reviving this player!"

# Disabled worlds (resurrection won't work in these worlds)
disabled-worlds: []

# Corpse appearance configuration
corpse:
  # Hologram (text above the corpse)
  # To edit the hologram and head height, only configure one if you have "separate: false" they act as one.
  hologram:
    # Text to display above the corpse
    # Placeholders: {player} (dead player's name)
    text: "&c&l✟ &7{player}"
    text2: "&4&l{time}"
 
    # Y offset for hologram position (relative to death location)
    # Positive = higher, Negative = lower
    offset-y: 1.4
 
    # Y offset for text2 position (relative to text position, only when separate: true)
    # Positive = higher than text, Negative = lower than text
    # If not specified, defaults to text2 appearing 0.25 blocks below text
    text2-offset-y: 0.25
 
    # If true, creates a separate armor stand for the hologram (more flexible positioning)
    # If false, the hologram text is on the same armor stand as the head
    separate: true
 
  # Head (floating player head)
  head:
    # Y offset for head position (relative to death location)
    # Positive = higher, Negative = lower
    # Note: If separate hologram is enabled, this only affects the head position
    offset-y: -1.4

# Messages for the reviver when interaction fails
reviver:
  # When player doesn't have the resurrection item
  no-item-message: "&cYou need a resurrection item to revive this player!"
 
  # When item activator doesn't match (e.g., item only allows LEFT_CLICK)
  wrong-activator-message: "&cThis item cannot be used to revive players!"
 
  # When item requires shift but player isn't sneaking
  need-shift-message: "&cYou must be sneaking to use this item!"
 
Allows custom resurrection using items or events.

SHOP SYSTEM
shop-configuration.yml
Code (Text):
# Custom command for open the spesific shop yml file.
shop-commands:
  shop: # the yml file name
    command: /heart shop
    permission: criscore.heartshop
    aliases: [hrt]
  shop_page_2:
    command: /heart shop 2
    aliases: [heart2]

disable-world: [example_world, example_world_2] # disable in specific worlds

not-enough: "ENTITY_VILLAGER_NO"
purchased: "ENTITY_PLAYER_LEVELUP"
# Price display format (only used for Vault economy, Coins uses coins.yml format)
# Format string using Java DecimalFormat syntax, e.g.: "%,.0f" for "1,000" or "%.2f" for "1000.00"
price-format: "%,.0f"
Now the shops are configured within the "shop" file where you can create your own shops.

shop.yml
Code (Text):
# This is the main shop file, you can use it to create a shop with multiple pages.
# You can use the "PAGE" action to go to specific shop, using .yml file name.
# You can use the "CLOSE" action to close the shop.

title: "&8Heart Shop - Page 1"
gui:
  size: 27
  background:
    material: "BLACK_STAINED_GLASS_PANE"
    decoration-range: "all"
global-lore:
  - ""
  - "&7&r-----------------------------"
  - "&7Price: &6${price}"
  - "&aClick to buy"
items:
  heart1:
    slot: 13
    item-id: heart_1
    # material: STONE # you can use normal items from minecraft
    price: 250
  heart2:
    slot: 11
    item-id: heart_2
    price: 450
  heart3:
    slot: 15
    item-id: heart_3
    price: 750
  to_page_2:
    slot: 26
    sound: "UI_BUTTON_CLICK"
    material: ARROW
    name: "&e&lNext Page"
    lore:
      - "&7Go to page 2"
    action: "PAGE,shop_page_2" #you can use "PAGE" to go to specific shop, using .yml file name
  close_button:
    slot: 22
    sound: "UI_BUTTON_CLICK"
    material: BARRIER
    name: "&c&lClose Shop"
    lore:
      - "&7Click to close this shop"
    action: "CLOSE"
Features:
  • Multi-page GUI system

  • Custom sounds per page or globally
  • Custom open commands

  • Vault/Coins support

  • Full YAML customization
  • AND MORE

CHAT SYSTEM
Code (Text):
# Chat Configuration
# ===================

# Enable/disable chat customization
enabled: true

# Chat Format
# Placeholders: {displayname}, {username}, {world}, {message}
# Supports colors (&a, &b, etc.) and RGB (&#RRGGBB)
chat:
  format: "&7[{displayname}] &f{message}"
 
  # Permissions for colors
  permissions:
    colors: "criscore.chat.color"  # Permission for basic colors (&a, &b, etc.)
    rgb: "criscore.chat.rgb"        # Permission for RGB colors (includes colors)
 
  # Hover messages (shown when hovering over player name in chat)
  # Edit line by line, supports placeholders
  hover-messages:
    - "&8&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
    - "&c❤ &7Hearts: &c{hearts} &7{hearts_symbol}"
    - "&7Kills: &a{kills} &7| &cDeaths: &c{deaths}"
    - "&7K/D Ratio: &e{kd_ratio}"
    - "&7Hearts Stolen: &c{stolen} &7| &7Lost: &c{lost}"
    - "&7Level: &b{level} &7| &7Health: &c{health}/20"
    - "&8&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
    - "&eClick to send private message!"
 
  # Click command when clicking on player name
  # Options: "msg {player} ", "tell {player} ", or "none" to disable
  click-command: "msg {player} "

# Private Message Commands (/msg, /tell)
commands:
  msg:
    usage: "&cUsage: /msg <player> <message>"
    player-not-found: "&cPlayer not found: {player}"
    cannot-message-self: "&cYou cannot message yourself."
    sender-format: "&7[&eYou &7-> &e{receiver}&7] &f{message}"
    receiver-format: "&7[&e{sender} &7-> &eYou&7] &f{message}"
 
  tell:
    # Uses same format as /msg
    usage: "&cUsage: /tell <player> <message>"
    player-not-found: "&cPlayer not found: {player}"
    cannot-message-self: "&cYou cannot message yourself."
    sender-format: "&7[&eYou &7-> &e{receiver}&7] &f{message}"
    receiver-format: "&7[&e{sender} &7-> &eYou&7] &f{message}"
 
  reply:
    usage: "&cUsage: /r <message>"
    no-one-to-reply: "&cYou have no one to reply to."
    player-offline: "&cThat player is offline."

# Placeholders available in hover messages:
# - {player} - Player name
# - {displayname} - Player display name
# - {hearts} - Current hearts
# - {hearts_symbol} - Heart symbol (❤)
# - {kills} - Total kills
# - {deaths} - Total deaths
# - {stolen} - Hearts stolen
# - {lost} - Hearts lost
# - {kd_ratio} - Kill/Death ratio
# - {world} - Current world
# - {level} - Player level
# - {health} - Current health
# Also supports PlaceholderAPI placeholders if installed
Includes:
  • Private messaging (/msg, /tell, /r)

  • RGB and color chat support
    Permissions:
  • Hover System
  • Click detection

  • criscore.chat.color

  • criscore.chat.rgb

CUSTOM EVENTS
You can create your own events, for example blood-moon.yml:
Code (Text):
# Enable or disable this event (true/false)
# If false, the event will NOT start even if manually triggered
enabled: true

# Duration in seconds (1200 seconds = 20 minutes)
# How long the event will stay active after starting
duration: 1200

# Messages displayed to all players when event starts/ends
# Supports color codes (&c, &a, etc.) and placeholders
messages:
  start:  # Messages broadcast when event starts
    - "&8&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
    - "&4&lBLOOD MOON RISING!"
    - "&7All players steal &c2 hearts &7per kill!"
    - "&8&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
  end:  # Messages broadcast when event ends
    - "&8&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
    - "&7The &4Blood Moon &7has ended!"
    - "&8&m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
  interval: []  # Periodic reminder messages (empty list = disabled)
  interval-seconds: 0  # How often to show interval messages (0 = disabled)

# Worlds where this event is valid (empty list = all worlds)
# Leave empty [] to affect all worlds, or add specific world names
valid-worlds: []

# BossBar configuration (displayed at the top of screen)
bossbar:
  enabled: true  # Enable or disable bossbar for this event
  color: "RED"  # BossBar color: BLUE, GREEN, PINK, PURPLE, RED, WHITE, YELLOW
  text: "&4&lBLOOD MOON &7- &c%time_left%"  # BossBar text (supports color codes)
  # Time format placeholders: %hours%, %minutes%, %seconds%, %h%, %m%, %s%
  # %time_left% uses the format below, %time_left_raw% shows seconds only
  time-format: "%m%m %s%s"  # Format: "15m 30s" example

# Commands to execute when event starts/ends (executed as console)
commands:
  start:
    - "time set night"
    - "weather thunder"
  end:
    - "time set day"
    - "weather clear"

# Visual and audio effects when event starts
effects:
  particle: "SMOKE_LARGE"  # Particle effect name
  sound: "ENTITY_WITHER_SPAWN"  # Sound effect name

# Multipliers that modify game mechanics during the event
# All values are relative to 1.0 (100%)
# 1.0 = no change | 2.0 = double | 0.5 = half | etc.
multipliers:
  lifesteal: 2.0  # Hearts stolen on player kill: 200% (double the normal amount)
  mob-drops: 1.5  # Drop chances from killing mobs: 150% (50% more drops)
  player-kill-drops: 1.5  # Drop chances from player kills: 150% (50% more drops)
  mob-health: 1.2  # Mob maximum health: 120% (mobs have 20% more health)
  mob-damage: 1.3  # Mob damage dealt: 130% (mobs deal 30% more damage)
 
Includes:
  • Periodic reminder messages

  • Custom Multipliers
  • Custom Bossbar
  • Commands that are executed at startup and shutdown

CUSTOM ITEMS
Code (Text):
name: "&8&lShadow Scroll"
lore:
  - "&7Use to gain &8&lShadow Arts &7for 2 minutes."
  - ""
  - "&eDrop item to activate"
material: PAPER
custom-model-data: 1301
glow: true
consume-use: true
cooldown: 120
Hiders:
  - 'HIDE_ATTRIBUTES'
  - 'HIDE_ENCHANTS'
disable_drop: false
cancel_place: false
need-to-activate:
  requirement1:
    conditions:
      - IS_INVISIBLE
    messages:
      - "&cYou must be &fInvisible &cto use this scroll."
activators:
  my_activator:
    option: DROP_ACTIVATE
    sound: "ENTITY_ENDERMAN_TELEPORT"
    particles-success: "SPELL_WITCH"
    execute-as: CONSOLE
    messages:
      when-using: "&7You channel the &8&lShadows&7..."
      on-cooldown: "&cYou must wait &f{cooldown} &cbefore using this again."
      denied_sound: "ENTITY_VILLAGER_NO"
      particles-denied: "SMOKE_NORMAL"
    commands:
      - "effect give %player_name% minecraft:speed 45 1 true"
      - "effect give %player_name% minecraft:night_vision 60 0 true"
    extras-success:
      title:
        message: "&8&lShadow Arts"
        fade-in: 5
        stay: 40
        fade-out: 10
      subtitle:
        message: "&7Empowered while unseen"
      actionbar:
        message: "&8Silent power flows through you"
    extras-denied:
      title:
        message: "&c&lRequirement missing"
        fade-in: 5
        stay: 40
        fade-out: 10
      subtitle:
        message: "&7You must be invisible to use this"
      actionbar:
        message: "&cBecome invisible first"
Code (Text):
# Example item with passive actions
# This item demonstrates passive actions

name: "&6&lDivine Ring of Power"
material: GOLD_INGOT
lore:
  - "&7A legendary ring imbued with"
  - "&7divine power that enhances"
  - "&7the wielder's abilities."
  - ""
  - "&7Simply holding this ring grants"
  - "&7incredible strength and vitality."
  - ""
  - "&eRight click to activate special ability!"
glow: true
Hiders:
  - 'HIDE_ATTRIBUTES'
  - 'HIDE_ENCHANTS'
# Passive actions - apply automatically when item is in inventory
passive-actions:
  when: INVENTORY  # Options: INVENTORY, HAND, OFF_HAND, ALL_HANDS
  your_passive0: # can be any name
    - INCREASE_STRENGTH,5
    - INCREASE_HEARTS,4
    - BOOST_SPEED,1.2
  example1: # can create multiple passive actions
    - INCREASE_ARMOR,3
    - REGENERATION,1
# Optional: Activator for manual use (separate from passive actions)
activators:
  main:
    option: RIGHT_CLICK
    commands:
      - "heal %player_name%"
    sound: ENTITY_PLAYER_LEVELUP
    messages:
      when-using: "&aDivine energy flows through you!"
Supports:
  • Health, biome, world, potion, region, fire, underwater checks

  • Activators: LEFT_CLICK, RIGHT_CLICK, DROP_ACTIVATE

  • Particles, sounds, cooldowns & titles
  • Pasives

ECONOMY & COINS
Code (Text):

settings:
economy:
use-vault: true
use-coins: true
 
Includes:
  • SQLite-based Coins system

  • Vault integration

  • Symbol and format customization (K/M scale)

PLACEHOLDERS (PAPI)
Auto-registers with PlaceholderAPI.

Guide:
❤️ Hearts
%criscore_hearts% Displays player’s formatted heart count (uses placeholders.yml > hearts.formatted) ❤ 15 Hearts
%criscore_hearts_raw% Displays only the raw heart number 15
⚔️ Stats
%criscore_kills% Total kills of the player 23
%criscore_deaths% Total deaths of the player 7
%criscore_stolen% Hearts stolen by the player 12
%criscore_lost% Hearts lost by the player 5
K/D Ratio
%criscore_kd_ratio% Kill/Death ratio (raw number) 3.28 or ∞
%criscore_kd_ratio_formatted% Formatted ratio using placeholders.yml > stats.kd_ratio &7K/D: &f3.28
Coins & Economy
%criscore_coins% Formatted player balance (uses plugin’s format system) 12.3K
%criscore_coins_raw% Raw coins amount 12345.5
%criscore_coins_formatted% Custom text format from placeholders.yml > balance.formatted ⛁ 12.3K
⏳ Cooldowns
Placeholder Description Example Output
%criscore_cooldown_<itemid>% Displays remaining cooldown for an item by ID (auto formats hours/minutes/seconds) 1h 23m 12s, 3m 45s, or Ready
%criscore_debug_cooldown% Lists all registered item IDs with cooldown tracking Item IDs: heart_sword, lifebow, heart_totem...
%criscore_debug_cooldown_<itemid>% Shows cooldown details for specific item (for testing/debugging) `Item: heart_totem
Events
%criscore_active_event% List of active events
%criscore_active_event_count% Number of active events
%criscore_event_time_<event>% Time remaining for specific event
%criscore_event_active_<event>% Whether specific event is active (Yes/No)
⚙️ Utility & Debug
Placeholder Description Example Output
%criscore_test_format% Tests your cooldown format output Format: %hours%h %minutes%m %seconds%s → 2h 30m 45s

COMMANDS & PERMISSIONS
Player Commands:
/hearts
/withdrawheart <amount>
/redeemheart
/stats <player>
/coins
/heart shop
- Heart Managment:
/criscoreadmin set healt <player> <amount>
/criscoreadmin add healt <player> <amount>
/criscoreadmin remove healt <player> <amount>
- Item Managment:
/criscoreadmin give <item> <player> <amount>
/criscoreadmin take <item> <player> <amount>
- Player Managment
/criscoreadmin stats <player>
/criscoreadmin normalize stats <player>
/criscoreadmin kill <player>
/criscoreadmin revive <player>
/criscoreadmin unban <player>
/criscoreadmin reset <player>
- Utility Commands
/criscoreadmin reload <all|items|shop|lang>
/criscoreadmin transfer <player> <amount>
/criscoreadmin broadcast <message>
/criscoreadmin save
- Event Management
/criscoreadmin event start <event-name>
/criscoreadmin event stop <event-name>
/criscoreadmin event pause <event-name>
/criscoreadmin event resume <event-name>
/criscoreadmin event list
- Extra Commands
/withdrawheart
/redeemheart
/msg /tell /r
/coins
/stats
/heart shop
Remember that for the shop you can create your own commands, create new shops, etc.

Permission:
criscore.admin → Full admin access

EFFECTS REFERENCE
Code (Text):
# ==========================================
# CrisSMPCore Effects Reference Guide
# ==========================================
# This file contains all available sound and particle effects
# Copy the effects you want to use in your custom items
#
# Usage in item files (inside activators section):
# activators:
#   example_activator: #Name you want
#     option: ALL_CLICK
#     sound: "SOUND_NAME"
#     particles-success: "PARTICLE_NAME"
#    extras-success:
#      title:
#        message: "&aMessage here"
#        fade-in: 5
#        stay: 40
#        fade-out: 10
#      subtitle:
#        message: "&7Great plugin!"
#      actionbar:
#        message: "&eGreat plugin &7activated!"
#     commands:
#       - "your command here"
#     messages:
#       on-cooldown: "Cooldown message"
#       denied_sound: "DENIED_SOUND_NAME"
#       particles-denied: "DENIED_PARTICLE_NAME"
#       when-using: "Success message"
#    extras-denied:
#      title:
#        message: "&c&lMenssage here"
#        fade-in: 5
#        stay: 40
#        fade-out: 10
#      subtitle:
#        message: "&7sadly!"
#      actionbar:
#        message: "&cactivation failed!"

# ==========================================
# SOUND EFFECTS
# ==========================================
# Popular Sounds:
# - "ENTITY_PLAYER_LEVELUP" - Level up sound
# - "ENTITY_EXPERIENCE_ORB_PICKUP" - XP pickup
# - "ENTITY_ENDERMAN_TELEPORT" - Teleport sound
# - "ENTITY_WITCH_AMBIENT" - Witch cackle
# - "ENTITY_VILLAGER_YES" - Villager happy
# - "ENTITY_VILLAGER_NO" - Villager angry
# - "ENTITY_IRON_GOLEM_ATTACK" - Iron golem attack
# - "ENTITY_ENDER_DRAGON_GROWL" - Dragon growl
# - "ENTITY_LIGHTNING_BOLT_THUNDER" - Thunder
# - "BLOCK_FIRE_AMBIENT" - Fire crackling
# - "BLOCK_WATER_AMBIENT" - Water sounds
# - "BLOCK_GLASS_BREAK" - Glass breaking
# - "BLOCK_NOTE_BLOCK_BASS" - Low note
# - "BLOCK_NOTE_BLOCK_PLING" - High note
# - "ENTITY_GENERIC_EXPLODE" - Explosion
# - "ENTITY_SLIME_JUMP" - Slime jump
# - "ENTITY_SPIDER_AMBIENT" - Spider hiss

# ==========================================
# PARTICLE EFFECTS
# ==========================================
# Basic Particles:
# - "HEART" - Hearts floating up
# - "VILLAGER_HAPPY" - Green sparkles
# - "VILLAGER_ANGRY" - Red angry particles
# - "SMOKE_NORMAL" - Small smoke
# - "SMOKE_LARGE" - Large smoke
# - "FLAME" - Fire particles
# - "LAVA" - Lava droplets
# - "WATER_SPLASH" - Water splash
# - "BUBBLE_POP" - Bubbles
# - "SNOWFLAKE" - Snow particles
# - "ITEM_SNOWBALL" - Snowball particles

# Magic Particles:
# - "PORTAL" - Purple portal particles
# - "ENCHANT" - Enchantment sparkles
# - "SPELL_WITCH" - Purple magic particles
# - "SPELL_MOB" - Colored magic particles
# - "DRAGON_BREATH" - Dragon breath cloud
# - "ELECTRIC_SPARK" - Lightning sparks
# - "CRIT" - Critical hit stars
# - "SWEEP_ATTACK" - Sweep attack particles

# Explosive Particles:
# - "EXPLOSION_NORMAL" - Small explosion
# - "EXPLOSION_LARGE" - Large explosion
# - "FIREWORKS_SPARK" - Firework sparks

# Special Particles:
# - "WITCH" - Witch particles
# - "SLIME" - Slime particles
# - "SPLASH" - Water splash
# - "VILLAGER_WORK_FARMER" - Farmer particles
# - "VILLAGER_WORK_LIBRARIAN" - Librarian particles
# - "VILLAGER_WORK_CARTOGRAPHER" - Cartographer particles
# - "VILLAGER_WORK_CLERIC" - Cleric particles
# - "VILLAGER_WORK_ARMORER" - Armorer particles
# - "VILLAGER_WORK_WEAPONSMITH" - Weaponsmith particles
# - "VILLAGER_WORK_TOOLSMITH" - Toolsmith particles
# - "VILLAGER_WORK_BUTCHER" - Butcher particles
# - "VILLAGER_WORK_LEATHERWORKER" - Leatherworker particles
# - "VILLAGER_WORK_MASON" - Mason particles
# - "VILLAGER_WORK_SHEPHERD" - Shepherd particles
# - "VILLAGER_WORK_FISHERMAN" - Fisherman particles
# - "VILLAGER_WORK_FLETCHER" - Fletcher particles

# ==========================================
# PREDEFINED EFFECT COMBINATIONS
# ==========================================
# You can also use these predefined combinations:
# (These are handled by EffectsManager.java)
#
# Magic Effect:
# sound: "ENTITY_ENDERMAN_TELEPORT"
# particles-success: "PORTAL"
#
# Villager Happy:
# sound: "ENTITY_VILLAGER_YES"
# particles-success: "VILLAGER_HAPPY"
#
# Villager Angry:
# sound: "ENTITY_VILLAGER_NO"
# particles-success: "VILLAGER_ANGRY"
#
# Witch Effect:
# sound: "ENTITY_WITCH_AMBIENT"
# particles-success: "WITCH"
#
# Slime Effect:
# sound: "ENTITY_SLIME_JUMP"
# particles-success: "SLIME"
#
# Hearts Effect:
# sound: "ENTITY_PLAYER_LEVELUP"
# particles-success: "HEART"
#
# Flame Effect:
# sound: "BLOCK_FIRE_AMBIENT"
# particles-success: "FLAME"
#
# Explosion Effect:
# sound: "ENTITY_GENERIC_EXPLODE"
# particles-success: "EXPLOSION_LARGE"
#
# Lightning Effect:
# sound: "ENTITY_LIGHTNING_BOLT_THUNDER"
# particles-success: "ELECTRIC_SPARK"
#
# Water Effect:
# sound: "BLOCK_WATER_AMBIENT"
# particles-success: "WATER_SPLASH"
#
# Ice Effect:
# sound: "BLOCK_GLASS_BREAK"
# particles-success: "SNOWFLAKE"
#
# Poison Effect:
# sound: "ENTITY_SPIDER_AMBIENT"
# particles-success: "SPELL_MOB"
#
# Heal Effect:
# sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
# particles-success: "HEART"
#
# Denied Effect:
# sound: "ENTITY_VILLAGER_NO"
# particles-success: "VILLAGER_ANGRY"
#
# Cooldown Effect:
# sound: "BLOCK_NOTE_BLOCK_BASS"
# particles-success: "SMOKE_NORMAL"

# ==========================================
# EXAMPLE ITEM CONFIGURATIONS
# ==========================================

# Healing Item:
# activators:
#   example1:
#     option: ALL_CLICK
#     sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
#     particles-success: "HEART"
#     commands:
#       - "heal %player_name%"
#     messages:
#       denied_sound: "ENTITY_VILLAGER_NO"
#       particles-denied: "VILLAGER_ANGRY"
#       when-using: "You feel healed!"

# Magic Item:
# activators:
#   my_activator:
#     option: RIGHT_CLICK
#     sound: "ENTITY_ENDERMAN_TELEPORT"
#     particles-success: "PORTAL"
#     commands:
#       - "effect give %player_name% minecraft:levitation 5 1"
#     messages:
#       denied_sound: "ENTITY_VILLAGER_NO"
#       particles-denied: "SMOKE_LARGE"
#       when-using: "You feel magical!"

# Combat Item:
# activators:
#   example2:
#     option: LEFT_CLICK
#     sound: "ENTITY_IRON_GOLEM_ATTACK"
#     particles-success: "CRIT"
#     commands:
#       - "effect give %player_name% minecraft:strength 30 1"
#     messages:
#       denied_sound: "ENTITY_VILLAGER_NO"
#       particles-denied: "EXPLOSION_NORMAL"
#       when-using: "You feel stronger!"
 

HOW TO CONFIGURE ITEMS
Code (Text):

CRISSTEALCORE - HOW TO CONFIGURE ITEMS
======================================

Overview
--------
All custom items are defined as individual .yml files inside the `plugins/CrisStealCore/items/` folder. Each file represents ONE item and its full behavior: visuals, activators, cooldowns, effects, sounds, particles, commands, messages, restrictions, etc.

This document explains every supported option, shows full examples, and lists common pitfalls/conflicts so your items work as intended on modern Minecraft (1.20+ / 1.21+).


Basic Structure (top-level fields)
----------------------------------
name: "&6My Item Name"
material: PAPER | DIAMOND | head-<base64_or_texture_url>
custom-model-data: 1234               # optional (resource pack models)
lore:                                 # optional lines
  - "&7Line 1"
  - "&7Line 2"
glow: true | false                    # cosmetic enchanted glow
Hiders:                               # optional item flags
  - 'HIDE_ATTRIBUTES'
  - 'HIDE_ENCHANTS'
consume-use: true | false             # remove 1 item on successful use
cooldown: 60                          # seconds (per-player, per-item)
cancel_place: false                   # prevent block placement of this item
disable_drop: true | false            # prevent dropping item with Q
disable_drop_message: "&cYou cannot drop this item!"
disable-world: [world1, world2]       # list of worlds where the item is disabled
# AuraSkill support
need-mana: 10
[/SIZE]
# All interactions are defined under `activators:` (see below)
activators:
  <key>: # example: activator1
    option: RIGHT_CLICK | LEFT_CLICK | DROP_ACTIVATE or ALL_CLICK
    sound: "ENTITY_IRON_GOLEM_ATTACK"          # plays on success
    particles-success: "CRIT"                  # shows on success
    messages:
      when-using: "&aUsing item..."           # message on success
      on-cooldown: "&cCooldown: %criscore_cooldown_<item-id>%" # supports PAPI # or own system: {cooldown}
      denied_sound: "ENTITY_VILLAGER_NO"      # when denied (cooldown/world, etc.)
      particles-denied: "VILLAGER_ANGRY"
    commands:
      - "effect give %player_name% minecraft:strength 120 1 true"
    extras-success:                         # per-activator displays when succeed
      title:
        message: "&a&lSuccess!"
        fade-in: 5
        stay: 40
        fade-out: 10
      subtitle:
        message: "&7Power flows"
      actionbar:
        message: "&eBuff applied"
    extras-denied:                          # per-activator displays when denied
      title:
        message: "&c&lDenied!"
        fade-in: 5
        stay: 40
        fade-out: 10
      subtitle:
        message: "&7Try later"
      actionbar:
        message: "&cOn cooldown"

# Global display (optional). These show in addition to activator extras.
title:
  message: "&a&lSuccess!"
  fade-in: 10
  stay: 60
  fade-out: 20
subtitle:
  message: "&7Sub info"
actionbar:
  message: "&eActionbar text"


Materials
---------
- Use any valid Bukkit material name (e.g., PAPER, DIAMOND, NETHER_STAR).
- Custom heads: `material: head-<value>`
  - <value> may be:
    - A Base64 texture string
    - A full texture URL (e.g., https://textures.minecraft.net/texture/...) possibly base64-wrapped
  - The plugin decodifies Base64 to extract the texture URL and applies it to a skull item.


Model/Stacking
--------------
- `custom-model-data` lets you bind the item to a resource pack model.

Visibility/Glow
---------------
- `glow: true` gives an enchanted appearance without adding a real enchant.
- `Hiders` accepts Bukkit ItemFlag constants like 'HIDE_ATTRIBUTES', 'HIDE_ENCHANTS'.


Use, Cooldown, Drop, World Restriction
--------------------------------------
- `consume-use: true` consumes one unit upon successful activation.
- `cooldown: <seconds>` per-player; the placeholder `%criscore_cooldown_<item-id>%` shows remaining time.
- `disable_drop: true` blocks Q-drop; `disable_drop_message` shows when blocked.
- `disable-world: [world1, world2]` — item cannot be used in listed worlds (denied effects/messages will be shown).


Activators and Messages
-----------------------
- `activators:` defines how the item is triggered.
  - `option: RIGHT_CLICK` — right click in air/block.
  - `option: LEFT_CLICK`  — left click in air/block.
  - `option: DROP_ACTIVATE` — press Q to activate (distinct from disable_drop).
  - `option: ALL_CLICK` - all clicks detections.
- `messages:`
  - `when-using`: shown on success.
  - `on-cooldown`: shown when item is on cooldown.
    - Supports PlaceholderAPI and CrisCore placeholders. Use `%criscore_cooldown_<item-id>%`.
      - If your item id has hyphens, placeholders convert `-` to `_`. Example: id `scroll-strength` => `%criscore_cooldown_scroll_strength%`.
  - `denied_sound` and `particles-denied`: when usage is blocked (world disabled, cooldown, etc.).
- `extras-success` and `extras-denied` can display titles/subtitles/actionbars specifically for this activator outcome.
- At the item root you can also set global `title/subtitle/actionbar` shown on success.


Sounds and Particles
--------------------
- `sound:` and `messages.denied_sound:` accept valid Bukkit sound names.
- `particles-success:` and `messages.particles-denied:` accept particle keys (e.g., CRIT, WITCH, VILLAGER_ANGRY, VILLAGER_HAPPY, HEART, FLAME, ENCHANTMENT_TABLE, SPELL_WITCH, SLIME, CLOUD, etc.).
- See `EFFECTS_REFERENCE.txt` for a curated list of examples.


Commands (1.21+ examples)
-------------------------
- Commands are executed from console by default. If the line starts with `criscore` or `criscoreadmin`, it will be performed by the player.
- Use modern syntax:
  - `effect give %player_name% minecraft:strength 120 1 true`
  - `give %player_name% minecraft:experience_bottle 50`
  - `xp add %player_name% 50 points`
  - `effect give %player_name% minecraft:regeneration 10 1 true`
- Placeholders available:
  - `%player_name%`, and PAPI placeholders (if PlaceholderAPI is installed)


Examples from This Plugin
-------------------------
1) Heart (simple, anti-drop, global displays)
--------------------------------------------
name: "&cHeart Fragment"
material: NETHER_STAR
custom-model-data: 1001
glow: true
consume-use: true
cooldown: 60
disable_drop: true
disable_drop_message: "&cYou cannot drop this!"
activators:
  use:
    option: RIGHT_CLICK
    sound: "ENTITY_PLAYER_LEVELUP"
    particles-success: "HEART"
    commands:
      - "effect give %player_name% minecraft:absorption 60 0 true"
    messages:
      when-using: "&aYou used a Heart Fragment!"
      on-cooldown: "&cCooldown: {cooldown}"

2) Scroll of Strength (per-activator displays)
----------------------------------------------
name: "&6Scroll of Strength"
material: PAPER
glow: true
consume-use: true
cooldown: 400
activators:
  example1:
    option: RIGHT_CLICK
    sound: "ENTITY_IRON_GOLEM_ATTACK"
    particles-success: "CRIT"
    extras-success:
      title:
        message: "&a&lStrength II"
        fade-in: 5
        stay: 40
        fade-out: 10
      subtitle:
        message: "&7You feel stronger!"
      actionbar:
        message: "&e&lStrength II &7activated!"
    commands:
      - "effect give %player_name% minecraft:strength 120 1 true"
    messages:
      on-cooldown: "&cThis item is on cooldown &c%criscore_cooldown_scroll_strength%&c!"
      denied_sound: "ENTITY_VILLAGER_NO"
      particles-denied: "VILLAGER_ANGRY"
    extras-denied:
      title:
        message: "&c&lStrength II"
        fade-in: 5
        stay: 40
        fade-out: 10
      subtitle:
        message: "&7You feel weaker!"
      actionbar:
        message: "&c&lStrength II &7activation failed!"

3) Magic Scroll (DROP_ACTIVATE example)
--------------------------------------
name: "&dMagic Scroll"
material: PAPER
custom-model-data: 1200
consume-use: true
cooldown: 120
activators:
  drop:
    option: DROP_ACTIVATE
    sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
    particles-success: "ENCHANTMENT_TABLE"
    messages:
      when-using: "&dArcane surge!"
      on-cooldown: "&cWait &f%criscore_cooldown_magic_scroll% &cbefore using again."
    commands:
      - "xp add %player_name% 50 points"
      - "effect give %player_name% minecraft:luck 60 1 true"

4) Custom Head (texture by Base64)
----------------------------------
name: "&bMystery Head"
material: head-<BASE64_OR_TEXTURE_URL>
consume-use: false
cooldown: 0
activators:
  click:
    option: RIGHT_CLICK
    messages:
      when-using: "&bSpooky!"
    particles-success: "CLOUD"
    sound: "ENTITY_ENDERMAN_AMBIENT"


5) Requirements (need-to-activate) and Money Requires
-----------------------------------------------------
# This item only works if player has at least 20 health (10 hearts),
# has at least 20 armor points, is in world "world", and has either
# 1000 Vault money or 1000 Coins (configured separately).

name: "&aTanky Activation Test"
material: NETHERITE_INGOT
consume-use: false
cooldown: 10
activators:
  use:
    option: ALL_CLICK
    commands:
      execute-as: [console]
      - "criscoreadmin add healt %player_name% 1"
    messages:
      when-using: "&aActivated!"
      on-cooldown: "&cWait: %criscore_cooldown_tanky_activation_test%"
    extras-denied:
      title:
        message: "&c&lRequirements not met"
        fade-in: 5
        stay: 40
        fade-out: 10
      subtitle:
        message: "&7See chat for details"

need-to-activate:
  requirement1:
    conditions:
      - HEALTH,20
    messages:
      - "&cYou need at least &4❤20 &chealth (10 hearts)."
  requirement2:
    conditions:
      - ARMOR_POINTS,20
    messages:
      - "&cYou need at least &f20 &carmor points."
  requirement3:
    conditions:
      - WORLD_NAME,world
    messages:
      - "&cUse this in world: &fworld"

# Optional money requires: choose one or include both; they are all required
# Formats: BALANCE_VAULT,<amount> or BALANCE_COINS,<amount>
money_requires:
  - BALANCE_VAULT,1000
  - BALANCE_COINS,1000
  - BALANCE_COINSENGINE,100 # Coins Engine Support
money_requires_messages:
  - "&cYou do not have enough balance to use this item."

Supported condition keys:
- KILLS,<min>              - Player kills (plugin stats)
- DEATHS,<min>             - Player deaths (plugin stats)
- OFFHAND_ITEM              - Must have any offhand item
- HAS_POTION_EFFECT         - Any active potion effect
- HAS_EFFECT_SPEED          - Specific potion effects also available:
- HAS_EFFECT_STRENGTH
- HAS_EFFECT_REGEN
- HAS_EFFECT_FIRE_RESISTANCE
- HAS_EFFECT_JUMP_BOOST
- IS_ON_FIRE                - Player burning
- IS_FROZEN                 - Frozen state (1.17+)
- IS_INVISIBLE              - Invisible (via effect)
- WORLD_NAME,<name>        - Exact world name
- BIOME,<biome>            - Current biome name
- REGION,<name>            - Requires WorldGuard; fails if WG not installed
- IS_UNDERWATER             - Eye is in water
- IS_IN_LAVA                - Standing in lava
- IS_ON_GROUND              - Standing on ground
- Y_LEVEL,<minY>           - Y coordinate >= value
- TIME_OF_DAY,<minTick>    - World time >= value (0..24000)
- IS_RAINING                - World is raining
- IS_NIGHT                  - Time between 13000 and 23000
- HEALTH,<min>
- MAX_HEALTH,<min>
- ARMOR_POINTS,<min>
- ATTACK_DAMAGE,<min>
- ATTACK_SPEED,<min>
- MOVEMENT_SPEED,<min>
- LUCK,<min>
- KNOCKBACK_RESISTANCE,<min>
- SATURATION,<min>
- FOOD_LEVEL,<min>
- LEVEL,<min>
- EXPERIENCE,<min>

Notes:
- If a requirement fails, the item will show its `extras-denied` (if present),
  play denied sound/particles if configured, and print the requirement's
  `messages` lines to the player.
- Money requires check balance only; they do NOT deduct money.
- REGION needs WorldGuard. If WG is not present, REGION requirements will fail.


Conflicts and Tips
------------------
- DROP_ACTIVATE vs disable_drop:
  - If you want Q to ACTIVATE the item, keep `disable_drop: false` or unset; otherwise the drop-block will cancel before the activator runs.

- Cooldown placeholders:
  - Item ids in placeholders use underscores: `%criscore_cooldown_<item_id_with_underscores>%`.
    - Example: file id `scroll-strength` becomes `%criscore_cooldown_scroll_strength%`.

- World restrictions:
  - If the item is used in a world listed in `disable-world:`, usage is denied; your `messages.particles-denied` and `messages.denied_sound` apply.

- Commands syntax:
  - Use 1.21+ syntax shown above. Old forms like `give experience` no longer work.

- Titles/Subtitles/Actionbars:
  - You can define global displays at root and per-activator displays under `extras-success` / `extras-denied`.
  - All support PlaceholderAPI.

- Head textures:
  - If using Base64, the plugin extracts the skin URL from the decoded payload.
  - If a direct texture URL is used, ensure it is a valid textures.minecraft.net URL.


Troubleshooting
---------------
- Item not loading:
  - Confirm the file ends with `.yml` and is in `plugins/CrisStealCore/items/`.
  - Check console for load errors.

- Cooldown always shows 0s in messages:
  - Ensure the placeholder matches your item id with underscores.
  - Verify the item actually went on cooldown (use /papi parse for debugging if PlaceholderAPI is installed).

- Sounds/particles not playing:
  - Verify the names are valid for your server version; use entries from `EFFECTS_REFERENCE.txt`.

- Nothing happens on Q:
  - Remove/disable `disable_drop` if using `DROP_ACTIVATE`.


That’s it! Create as many item files as you want, fully dynamic—no hardcode required.
 

TROUBLESHOOTING

✔️ Death effects not working → Check "on-player-death.enabled"
✔️ Cooldown shows 0 → Use underscores in placeholder IDs
✔️ Shop won’t open → Check YAML file names and syntax
✔️ Sounds missing → Match valid Spigot sound enums
✔️ I killed myself with another account and the player wasn't banned. → Check that you don't have anti-exploit protection enabled
"enabled: true"

SUPPORT

  • For bugs or help, provide:

    • Server version (Paper/Spigot)
    • CrisStealCore version
    • Relevant YAML configs
Join for support: DISCORD
*Do NOT upload the error or copied file directly to the support chat, use something like Pastebin.

✅ Tested on Paper 1.18–1.21
✅ Optimized for performance


IMAGES

[​IMG] [​IMG]
[​IMG]
[​IMG]
[​IMG] [​IMG]
[​IMG]

VIDEO SHOWCASE



SUPPORT - CLICK

For bugs, enable minimal reproduction and share your YAML snippets. Ensure you’re on a supported Paper/Spigot build and using the latest version of CrisStealCore.
Important: Do not copy and paste the .yml/error file into the Discord chat; send it in an online document such as Pastebin.
Resource Information
Author:
----------
Total Downloads: 1
First Release: Nov 10, 2025
Last Update: Nov 10, 2025
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings