SmartPets Pro icon

SmartPets Pro -----

Pets That Think, Feel, and Live



SmartPets

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


SmartPets is a revolutionary AI-driven pet system for Minecraft servers featuring emotional intelligence, advanced behaviors, dynamic evolution, and automatic database driver downloads. Experience the most sophisticated pet plugin with 12+ intelligent behaviors, 8-stat emotion system, and seamless multi-server compatibility.

Key Features
Advanced AI System
  • 12+ Intelligent Behaviors: Follow, Guard, Hunt, Play, Rest, Attack, Flee, Assist, Scout, Patrol, Search Food, Alert
  • 8-Stat Emotion System: Hunger, Energy, Affection, Happiness, Trust, Loyalty, Fear, Anger
  • Context-Aware Decision Making: Pets consider time, environment, and player interactions
  • Dynamic Behavior Switching: Emotions and needs influence pet actions
  • Adaptive Personality Archetypes (NEW): Nurturer, Guardian, Explorer, or Playmate profiles bias decisions and dialogue

Rich Gameplay Features
  • Experience & Leveling: Pets gain XP through various activities and level up
  • Skill System: Unlock new abilities as pets advance (7+ skills available)
  • Evolution System: Transform pets into more powerful forms
  • Pet Shop: Adopt from 8+ available pet types with different characteristics
  • Memories Dashboard: Pin favorite spots, praise/flag known players, tag safe or dangerous zones, and get compass guidance or behavior boosts directly from the UI
  • Personality Evolution: Traits shift dynamically based on memories, behavior reinforcement, and owner preferences
  • Complete GUI System: Intuitive menus for players and administrators

Technical Excellence
  • Automatic Driver Downloads: No manual database setup required
  • Multi-Storage Support: YAML (default), SQLite, MySQL with automatic fallback
  • Lightweight Distribution: JAR under 2MB, drivers downloaded at runtime
  • Universal Compatibility: Paper/Spigot/Folia/Purpur support (1.16.5-1.21.8)
  • Professional Integrations: Vault, PlaceholderAPI, DecentHolograms, LuckPerms
  • Adaptive Behavior Manager: Personality-weighted modifiers harmonised with reinforcement learning

Requirements
Mandatory
  • Minecraft: 1.16.5 - 1.21.10
  • Server: Paper, Spigot, Folia, Purpur, or Luminol
  • Java: 17 or higher
  • Vault: Required dependency for economy features

Optional
  • PlaceholderAPI: Custom placeholders for other plugins
  • DecentHolograms: Holographic displays for pets
  • LuckPerms: Advanced permission management
  • Citizens: NPC integration potential
  • ModelEngine 4: Attach bespoke 3D models and animate them with SmartPets emotion/trigger hooks
  • MythicMobs: Map SmartPets triggers to Mythic skills or apply Mythic mob profiles to pets

Installation
  1. Download SmartPets-2.0.jar
  2. Install Vault plugin (required dependency)
  3. Place SmartPets jar in your plugins/ folder
  4. Start your server - drivers download automatically
  5. Configure using `/petadmin reload` after first run

Commands

Player Commands

/pet (Aliases: /pets, /smartpet, /mascota)
Main pet management command with multiple sub-actions:

Code (Text):

/pet                    - Open main pet menu
/pet help              - Show help information
/pet list              - List your owned pets
/pet select <name>     - Select active pet
/pet rename <name>     - Rename your active pet
/pet release           - Release your active pet
/pet shop              - Open pet adoption shop
/pet evolve            - Evolve your active pet
/pet info              - Show detailed pet information and personality snapshot (NEW)
/pet personality [ID]  - Analyze personality traits and latest adjustments (NEW)
/pet memories          - Review social memories, relationships, and events (NEW in v2.0)
/pet memories mark <name> - Pin your current location as a memorable spot (NEW)
 
Required Permission: `smartpets.command.pet` (default: true)


Admin Commands

/petadmin (Aliases: /smartpetadmin, /petsa)
Administrative management commands:

Code (Text):

/petadmin reload                    - Reload plugin configuration
/petadmin give <player> <type>      - Give pet to player
/petadmin reset <player>            - Reset player's pet data
/petadmin delete <player> <name>    - Delete specific pet
/petadmin debug                     - Show system debug information
/petadmin debug learning [player]   - Inspect learning signals and preferences (NEW in v2.0)
/petadmin debug integrations        - Summarise ModelEngine/MythicMobs integration status (NEW)
/petadmin menu                      - Open admin management GUI
 
Required Permission: `smartpets.command.admin` (default: op)


Permissions

Hierarchical Permission System

Code (YAML):

# Master permissions
smartpets.*                    - All SmartPets features (Super Admin )
smartpets.command.*            - All commands
smartpets.pet.*                - All pet-related permissions
smartpets.admin.*              - All admin permissions
smartpets.shop.*               - All shop permissions

# Basic permissions
smartpets.command.pet         - Use /pet command (default
: true )
smartpets.command.pet.memories.mark - Pin locations with /pet memories mark (default
: true )
smartpets.command.admin       - Use /petadmin commands (default
: op )
smartpets.pet.own             - Own pets (default
: true )
smartpets.pet.evolve          - Evolve pets (default
: true )
smartpets.pet.rename          - Rename pets (default
: true )

# Advanced permissions
smartpets.pet.limit.bypass    - Bypass pet ownership limits (default
: op )
smartpets.pet.limit.2         - Own up to 2 pets
smartpets.pet.limit.3         - Own up to 3 pets
smartpets.pet.limit.5         - Own up to 5 pets
smartpets.pet.limit.10        - Own up to 10 pets

# Pet type restrictions
smartpets.pet.type.WOLF       - Acquire Wolf pets (default
: true )
smartpets.pet.type.FOX        - Acquire Fox pets (default
: true )
smartpets.pet.type.CAT        - Acquire Cat pets (default
: true )
smartpets.pet.type.IRON_GOLEM - Acquire Iron Golem pets (default
: op )

# Shop permissions
smartpets.shop.use            - Access pet shop (default
: true )
smartpets.shop.buy            - Purchase pets (default
: true )

# Admin permissions
smartpets.admin.reload        - Reload configuration (default
: op )
smartpets.admin.give          - Give pets to players (default
: op )
smartpets.admin.reset         - Reset player data (default
: op )
smartpets.admin.delete        - Delete specific pets (default
: op )
smartpets.admin.debug         - View debug information (default
: op )
smartpets.admin.menu          - Access admin GUI (default
: op )
 
Configuration
Main Configuration (config.yml)
SmartPets provides extensive configuration with 490+ lines of options.

General Settings (Enhanced in v1.9)

Code (YAML):

general
:
  storage-type
: "YAML"           # YAML, SQLITE, MYSQL
  max-pets-per-player
: 1         # Default pet limit
  debug
: false                   # Enable debug logging
  metrics
: true                   # bStats metrics
  language
: "en"                 # Language file to use
 
communication
:
  conversation-enabled
: true     # Enable /pet talk conversations
  conversation-cooldown
: 30       # Seconds between conversations
  interaction-feedback
: true     # Show interaction results
  emotion-display-enabled
: true   # Rich visual emotion display
  emotion-display-duration
: 10   # Seconds to show emotions
  species-responses
: true         # Species-specific responses
 
Logging Profiles (v2.0)
Code (YAML):

logging
:
  level
: "NORMAL"
  default-rate-limit-seconds
: 30
  categories
:
    anti-conflict
:
      enabled
: true
      rate-limit-seconds
: 30
    entity-spawn
:
      enabled
: true
      rate-limit-seconds
: 20
    tasks
:
      enabled
: false
 
Fine-tune which subsystems write to console; enabling `general.debug` automatically boosts the level to `DEBUG` while still respecting category toggles.

Memory System (v2.0)
Code (YAML):

memory
:
  enabled
: true
  player-limit
: 64
  location-limit
: 128
  events-limit
: 50
  snapshots-limit
: 200
  snapshots
:
    interval-seconds
: 300
    async
: true
 
Configure how many players, locations, and events each pet remembers and how frequently emotional snapshots are captured. All limits support per-server overrides.

  • Drop-click a player memory to praise that ally; Ctrl+Drop flags them as caution cases.
  • Drop-click a location memory to mark it as safe; Ctrl+Drop marks it as dangerous.
  • Shift/Right-click shortcuts remain available for quick trust boosts and compass guidance.

Personality Evolution & Adaptive Behavior (v2.0)

Code (YAML):

personality
:
  enabled
: true
  evolution
:
    interval-seconds
: 120
    snapshot-max-age-seconds
: 600
    trait-decay
: 1
    snapshot-weight
: 1.5
    behavior-weight
: 2.0
    preference-weight
: 1.5
    experience-history-limit
: 12
    notify-on-change
: true
  adaptive-behavior
:
    enabled
: true
    positive-threshold
: 65
    negative-threshold
: 35
    neutral-dead-zone
: 8
    max-positive-boost
: 0.2
    max-negative-penalty
: 0.15
    archetype-alignment-bonus
: 0.08
  feedback
:
    play-sound
: true
    sound
: "ENTITY_PLAYER_LEVELUP"
    sound-volume
: 0.8
    sound-pitch
: 1.2
    spawn-particles
: true
    particle
: "HEART"
    particle-count
: 12
 
Control evaluation cadence, the size of the personality timeline, the strength of adaptive modifiers, and audiovisual cues triggered when archetypes shift.

Pet Type Configuration
Code (YAML):

pet-types
:
  enabled-pet-types
:
   - "WOLF"
    - "FOX"
    - "CAT"
    - "PARROT"
    - "SHEEP"
    - "RABBIT"
    - "PIG"

  blocked-pet-types
:
   - "IRON_GOLEM"
    - "SLIME"
 
AI Behavior System (Enhanced in v1.9)
Code (YAML):

behavior
:
  behavior-task-interval
: 10
  emotion-task-interval
: 60

  follow-chance
: 0.3
  guard-chance
: 0.2
  hunt-chance
: 0.15
  play-chance
: 0.25
  rest-chance
: 0.1

  hunt-range
: 16
  guard-range
: 8
  follow-distance
: 3

  interaction-types
:
    comfort-enabled
: true
    praise-enabled
: true
    play-enabled
: true
    celebration-enabled
: true

  search-food
:
    scan-radius
: 8.0
    eat-radius
: 3.0
    max-search-time
: 30
    scan-interval
: 2
    hunger-per-food
: 40
    full-hunger-threshold
: 90
 
Emotion System (Enhanced in v1.9)
Code (YAML):

emotions
:
  hunger-decay-rate
: 1
  energy-decay-rate
: 1
  affection-decay-rate
: 1
  fear-decay-rate
: 1
  anger-decay-rate
: 1

  minimum-hunger
: 0
  minimum-energy
: 0
  minimum-affection
: 0
  minimum-happiness
: 0
  minimum-trust
: 0
  minimum-loyalty
: 0
  minimum-fear
: 0
  minimum-anger
: 0

  neglect-threshold-minutes
: 30
  neglect-happiness-penalty
: 5
  neglect-trust-penalty
: 3

  visual-communication
:
    enabled
: true
    update-interval
: 5
    display-duration
: 10
    intensity-levels
: 5
    combination-display
: true
    contextual-expressions
: true

  fear-threshold-to-attack
: 50
  fear-threshold-to-flee
: 70
  happiness-threshold-play
: 60
 

Experience System

Code (YAML):

experience
:
  base-exp-requirement
: 100
  level-multiplier
: 1.5
  max-level
: 50

  feeding-exp-gain
: 5
  petting-exp-gain
: 3
  killing-mob-exp-gain
: 10
  defending-player-exp-gain
: 15
  following-period-exp-gain
: 2
  playing-period-exp-gain
: 4
  assisting-player-exp-gain
: 8
  successful-hunt-exp-gain
: 12
  guarding-area-exp-gain
: 6
  scouting-area-exp-gain
: 7
 
Integration Settings
Code (YAML):

integrations
:
  luckperms
:
    enable
: true
  decentholograms
:
    enable
: true
  placeholderapi
:
    enable
: true
  modelengine
:
    enable
: true
    auto-fallback
: true
    models
:
      WOLF
:
        model-id
: "smartpets:wolf_guardian"
        idle-state
: "idle"
        walk-state
: "walk"
        emotion-animations
:
          HAPPY
: "tail_wag"
          ANGRY
: "battle_ready"
          SCARED
: "cower"
        trigger-animations
:
          summon
: "summon_pop"
          event.levelup
: "celebrate"
          feedback.feeding_success
: "eat_treat"
  mythicmobs
:
    enable
: true
    profiles
:
      WOLF
:
        mob-id
: "SmartPetsGuardian"
        mob-level
: 10.0
        apply-to-entity
: true
        trigger-skills
:
          summon
: "SP_GuardianSpawn"
          event.levelup
: "SP_GuardianCelebrate"
          feedback.petting_happy
: "SP_GuardianPurr"
 
ModelEngine Animation Bridge

  • SmartPets decorates vanilla entities after spawn when ModelEngine 4 is available.
  • Configure integrations.modelengine.models per pet type with a model-id, optional idle/walk states, and mappings for both emotions and triggers.
  • Emotion keys mirror the PetEmotion enum: HAPPY, SAD, ANGRY, LONELY, HUNGRY, PLAYFUL, PROUD, SCARED, SLEEPY, EXCITED.
  • Trigger keys emitted by SmartPets: summon, despawn, event.adopt, event.evolve, event.levelup, event.death, event.remove, feedback.feeding_success, feedback.feeding_full, feedback.petting_happy, feedback.petting_annoyed, feedback.level_up_hint, feedback.evolution_ready, feedback.skill_unlock.
  • Set auto-fallback: true to revert to vanilla entities when a model mapping fails or the API is unavailable.
  • Run /petadmin debug integrations to confirm runtime detection and mappings.

Sample mapping ties animations to emotions and SmartPets triggers so custom rigs respond to memory and learning changes.

MythicMobs Skill Bridge
  • Define profiles in integrations.mythicmobs.profiles to apply MythicMob templates.
  • Trigger list matches ModelEngine bridge, keeping animations and abilities synchronized.
  • Skill execution is routed through MythicBukkit; failures fall back to vanilla behavior.
  • Run /petadmin debug integrations to list configured profiles and wired skills.

Integration Quick Start Checklist
  1. Enable the bridge: set integrations.modelengine.enable or integrations.mythicmobs.enable to true.
  2. Map the content:
    - ModelEngine → define model-id, emotion-animations, trigger-animations.
    - MythicMobs → register mob-id and trigger-skills.
  3. Reload: run /petadmin reload or restart the server.
  4. Diagnose: execute /petadmin debug integrations to confirm mappings.
  5. Monitor: check bStats metrics for modelengine_* and mythicmobs_*.
  6. Fallbacks: with auto-fallback: true, SmartPets returns to vanilla entities if integration fails.

Database Configuration
Code (YAML):

database
:
  mysql
:
    host
: "localhost"
    port
: 3306
    database
: "smartpets"
    username
: "root"
    password
: ""
    ssl
: false

  sqlite
:
    filename
: "smartpets.db"
 
Skills Configuration (skills.yml)
Code (YAML):

skills
:
  heal
:
    name
: "Healing Aura"
    description
: "Regenerates health over time"
    unlock-level
: 5
    cooldown
: 30
    effect-duration
: 10

  shield
:
    name
: "Protective Shield"
    description
: "Absorbs incoming damage"
    unlock-level
: 10
    cooldown
: 60
    shield-amount
: 4

  speed
:
    name
: "Swift Movement"
    description
: "Increases movement speed"
    unlock-level
: 3
    cooldown
: 45
    speed-boost
: 2
 
Pet Shop Configuration (available_pets.yml)
Code (YAML):

available-pets
:
  wolf_basic
:
    type
: "WOLF"
    name
: "Loyal Wolf"
    description
: "A faithful companion"
    price
: 1000
    permission
: "smartpets.pet.type.WOLF"

  fox_clever
:
    type
: "FOX"
    name
: "Clever Fox"
    description
: "An intelligent scout"
    price
: 1500
    permission
: "smartpets.pet.type.FOX"
 
Language Configuration (lang.yml)
SmartPets v1.9 adds 50+ new translation keys for the conversation and interaction systems.

Code (YAML):

commands
:
  pet
:
    help
: "&6SmartPets Help:"
    no-pets
: "&cYou don't have any pets!"
    pet-selected
: "&aSelected pet: &f{pet_name}"
    talk-started
: "&aStarting conversation with {pet_name}..."
    stats-header
: "&6=== Pet Statistics ==="
    no-active-pet
: "&cYou don't have an active pet."

menus
:
  main
:
    title
: "SmartPets Management"
    adopt-pet
: "&aAdopt New Pet"
    manage-pets
: "&eManage Pets"

  conversation
:
    title
: "Talk to {pet_name}"
    current-state
: "Current State: {emotion_display}"
    cooldown-active
: "&cYou talked to your pet recently. Wait {time} seconds."

feedback
:
  hunger
:
    low
: "&e{pet_name} is getting hungry!"
    critical
: "&c{pet_name} is starving!"

interactions
:
  comfort
:
    scared-success
: "&aYou comfort {pet_name}. They feel safer now."
    not-needed
: "&e{pet_name} doesn't need comfort right now."
  praise
:
    success
: "&aYou praise {pet_name}. They beam with pride!"
    cooldown
: "&eYou recently praised {pet_name}. Give them time to process."

responses
:
  wolf
:
    happy
: "*wags tail happily and pants contentedly*"
    scared
: "*whines softly and moves closer to you*"
    hungry
: "*looks at you hopefully with puppy eyes*"
  cat
:
    happy
: "*purrs contentedly and rubs against your legs*"
    scared
: "*flattens ears and crouches low*"
    tired
: "*yawns and stretches gracefully*"
  parrot
:
    happy
: "*sings melodiously and flaps wings excitedly*"
    curious
: "*tilts head and chirps inquisitively*"
    content
: "*preens feathers and chirps softly*"
 
AI Behavior System

Behavior Types

1. Follow Behavior
  • Description: Pet follows the player maintaining optimal distance
  • Triggers: Player movement, high affection
  • Configuration: follow-distance, follow-chance

2. Guard Behavior
  • Description: Pet protects player from hostile entities
  • Triggers: Nearby threats, high loyalty
  • Configuration: guard-range, guard-chance

3. Hunt Behavior
  • Description: Pet actively seeks and attacks prey
  • Triggers: Low hunger, high energy
  • Configuration: hunt-range, hunt-chance

4. Play Behavior
  • Description: Pet performs playful animations and interactions
  • Triggers: High happiness, medium energy
  • Configuration: play-chance, play-duration

5. Rest Behavior
  • Description: Pet finds safe spots to recover energy
  • Triggers: Low energy, high trust
  • Configuration: rest-chance, energy-recovery-rate

6. Attack Behavior
  • Description: Pet aggressively defends against threats
  • Triggers: High anger, player in danger
  • Configuration: attack-range, damage-multiplier

7. Flee Behavior
  • Description: Pet retreats from dangerous situations
  • Triggers: High fear, low health
  • Configuration: flee-distance, fear-threshold

8. Assist Behavior
  • Description: Pet helps player with various tasks
  • Triggers: High loyalty, player activity
  • Configuration: assist-range, assist-types

9. Scout Behavior
  • Description: Pet explores surroundings and reports findings
  • Triggers: High curiosity, new areas
  • Configuration: scout-range, report-interval

10. Patrol Behavior
  • Description: Pet guards a designated area systematically
  • Triggers: Guard mode, territorial instinct
  • Configuration: patrol-radius, patrol-speed

11. Search Food Behavior
  • Description: Pet looks for food when hungry
  • Triggers: High hunger, available food sources
  • Configuration: search-range, food-types

12. Alert Behavior
  • Description: Pet warns player of potential dangers
  • Triggers: Detected threats, high awareness
  • Configuration: alert-range, alert-types

Emotion System
Core Emotions

  • Hunger (0-100): Drives food-seeking behavior
  • Energy (0-100): Affects activity levels and rest needs
  • Affection (0-100): Influences loyalty and following
  • Happiness (0-100): Affects playfulness and general mood

Social Emotions
  • Trust (0-100): Determines willingness to follow commands
  • Loyalty (0-100): Influences protective behaviors
  • Fear (0-100): Triggers defensive and flee behaviors
  • Anger (0-100): Drives aggressive responses

Emotion Interactions
Code (Text):

High Affection + High Trust = Strong Following Behavior
High Hunger + Low Energy = Food Search Priority
High Fear + Low Health = Immediate Flee Response
High Loyalty + Threat Detected = Guard/Attack Mode
 
API Integration
SmartPets API (Java Example)


Code (Java):

// Get API instance
SmartPetsAPI api = SmartPets. getInstance ( ). getAPI ( ) ;

// Get player's pets
List <Pet > pets = api. getPlayerPets (player. getUniqueId ( ) ) ;

// Get active pet
Pet activePet = api. getActivePet (player. getUniqueId ( ) ) ;

// Create new pet
Pet newPet = api. createPet (player. getUniqueId ( ), PetType. WOLF, "Buddy" ) ;

// Trigger behavior
api. triggerBehavior (pet, BehaviorType. FOLLOW ) ;

// Update emotions
api. updateEmotion (pet, EmotionType. AFFECTION, 10 ) ;
 
Custom Events
Code (Java):

@EventHandler
public void onPetAdopt (PetAdoptEvent event ) {
    Player player = event. getPlayer ( ) ;
    Pet pet = event. getPet ( ) ;
}

@EventHandler
public void onPetLevelUp (PetLevelUpEvent event ) {
    Pet pet = event. getPet ( ) ;
    int newLevel = event. getNewLevel ( ) ;
}

@EventHandler
public void onPetEvolution (PetEvolutionEvent event ) {
    Pet pet = event. getPet ( ) ;
    PetEvolutionStage newStage = event. getNewStage ( ) ;
}
 
PlaceholderAPI Placeholders
Code (Text):

%smartpets_active_pet_name%
%smartpets_active_pet_level%
%smartpets_active_pet_type%
%smartpets_active_pet_hunger%
%smartpets_active_pet_energy%
%smartpets_active_pet_affection%
%smartpets_active_pet_happiness%
%smartpets_active_pet_trust%
%smartpets_active_pet_loyalty%
%smartpets_active_pet_fear%
%smartpets_active_pet_anger%
%smartpets_pet_count%
%smartpets_max_pets%
 
Database System
Storage Options

  • YAML Storage: Easy setup, slower for large data.
  • SQLite Storage: Fast, embedded, automatic driver download.
  • MySQL Storage: High performance, scalable.

Automatic Driver Download
Code (Text):

SQLite: sqlite-jdbc-3.42.0.0.jar
MySQL: mysql-connector-java-8.0.33.jar
 
Drivers include SHA-256 integrity verification and automatic fallback to YAML if download fails.

Database Schema
Code (SQL):

CREATE TABLE pets (
    id VARCHAR ( 36 ) PRIMARY KEY ,
    owner_uuid VARCHAR ( 36 ) NOT NULL ,
    name VARCHAR ( 32 ) NOT NULL ,
    TYPE VARCHAR ( 32 ) NOT NULL ,
    level INTEGER DEFAULT 1 ,
    experience INTEGER DEFAULT 0 ,
    hunger INTEGER DEFAULT 100 ,
    energy INTEGER DEFAULT 100 ,
    affection INTEGER DEFAULT 50 ,
    happiness INTEGER DEFAULT 50 ,
    trust INTEGER DEFAULT 50 ,
    loyalty INTEGER DEFAULT 50 ,
    fear INTEGER DEFAULT 0 ,
    anger INTEGER DEFAULT 0 ,
    created_at BIGINT NOT NULL ,
    last_interaction BIGINT NOT NULL
);
 
Support & Contribution

Quick Start Guide
  1. Install Vault plugin.
  2. Add SmartPets JAR to plugins folder.
  3. Start the server (drivers download automatically).
  4. Configure settings in config.yml.
  5. Test with /pet shop to adopt your first pet.

Essential Commands
Code (Text):

/pet
/pet shop
/pet list
/pet stats
/pet memories
/pet talk
/petadmin debug
 
SmartPets v2.0 – Memory & Intelligence Foundations
Resource Information
Author:
----------
Total Downloads: 19
First Release: Jun 5, 2025
Last Update: Oct 28, 2025
Category: ---------------
All-Time Rating:
1 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings