ED5 Pets - Breeder Plugin
$0.99
Free for Pro subscribersREQUIRES ED5 PETS
ED5 Pet Breeding System
Complete documentation for the ED5_Pets_Breeding plugin
Contents
- Overview
- Setup Instructions
- Pet Template Setup
- Using the Breeding System
- Compatibility Rules
- Offspring Traits
- Multiple Eggs
- Troubleshooting
- Example Use Case
Overview
The ED5 Pet Breeding system is an extension to the ED5_Pets plugin that allows pets to breed and produce eggs, which can hatch into offspring with combined traits from their parents.
Note: This plugin requires the base ED5_Pets plugin to be installed and configured properly.
Changelog
v1.1.0 – November 4, 2025
🐾 Breeding Fixes & System Hardening
- Improved breeding data validation to prevent invalid offspring entries and ensure counters stay within safe limits.
- Fixed rare edge cases where breeding attempts could create duplicate child IDs or orphaned references in the Pet Bank.
- Enhanced compatibility checks between parent pets and egg templates, with clearer log messages for mismatched pairings.
- Added defensive cleanup routines to avoid stale memory handles when breeding timers are canceled or reset.
- Updated File:
js/plugins/ED5_Pets_Breeding.js(validation, ID handling, compatibility logic)
⚙️ Quality of Life & Debug Improvements
- Added more debug logging for breeder workflows to simplify testing and bug tracking.
- Refined error messages for invalid breeding setups for easier troubleshooting.
- Updated File:
js/plugins/ED5_Pets_Breeding.js(debug utilities and error reporting)
Setup Instructions
Installation
- Ensure
ED5_Pets.jsis installed and functioning - Place
ED5_Pets_Breeding.jsin your project's/js/plugins/folder - Enable both plugins in Plugin Manager (with ED5_Pets_Breeding placed AFTER ED5_Pets)
Plugin Parameters
| Parameter | Description | Default |
|---|---|---|
| DefaultBreedTime | Time in minutes to complete breeding | 10 |
| DefaultBreedSteps | Steps required to complete breeding | 1000 |
| BreedingMethod | Choose time-based or step-based progression | time |
| EggIconId | Icon ID used for egg items | 97 |
| EggItemTypeId | Database item type for created eggs | 1 |
Pet Template Setup
Add these comments/notetags to your pet template events:
<breed:type> // Breed type (same types can breed together) <breedPower:50> // Determines which parent's traits are dominant (higher = more influence) <breedMulti:3> // Maximum number of eggs that can be produced <breedMultiChance:25> // 25% chance for multiple eggs <eggIcon:97> // Icon ID for egg items // Gender settings (optional) <gender:m> // Fixed male gender <gender:f> // Fixed female gender <gender:m 75> // 75% chance of being male, 25% female <breedAnyGender> // Can breed regardless of gender restrictions // Gender stat modifications <genderMaleStats:10%> // Males get +10% to all stats <genderFemaleStats:5> // Females get +5 to all stats
Important: Each pet needs a breed type to identify compatibility with other pets. If not specified, "any" will be used as the default.
Using the Breeding System
Starting a Breeding Session
Use the plugin command openBreedingMenu with these parameters:
breederId: ID for different breeding locations with unique settingscompleteEventId: Common event to run when breeding completesallowCancel: Whether breeding can be stopped once startedtimeRequired: Custom time required (minutes)stepsRequired: Custom steps requiredmethod: "time", "steps", or "default"
Example Script Call:
// Open basic breeding menu $gameSystem.petBreeding().openBreedingMenu(); // Open breeding menu with custom settings $gameSystem.petBreeding().openBreedingMenu({ breederId: 2, completeEventId: 15, timeRequired: 5, method: "steps", stepsRequired: 500 });
Breeding Interface
1. Select two compatible pets
- Pets with same breed type can breed
- Pets with "any" breed type can breed with any type
- Different genders required unless
breedAnyGenderis set
2. Start the breeding process
- Click "Start Breeding" button
- Breeding will progress based on time or steps
- Pets are removed from inventory during breeding
3. Collect results
- When breeding completes, eggs become available
- Click to collect eggs (they become items in inventory)
- Use eggs like regular pet eggs to begin hatching process
Compatibility Rules
Breed Type Compatibility
- Same breed types can breed together
- Breed type "any" can breed with any other type
- Different breed types cannot breed together
Gender Compatibility
- Requires male + female unless
breedAnyGenderflag is set - Can set gender probability with
<gender:m 75>(75% male, 25% female)
If a pet has no gender tag specified, it will randomly be assigned male or female with 50/50 chance.
Offspring Traits
When eggs hatch, offspring inherit traits according to these rules:
Dominant Parent
The parent with higher breedPower passes more traits:
- If equal, traits are chosen randomly between parents
- Default
breedPoweris 50 if not specified
Stat Inheritance
Stats are averaged between parents, with slight variance
Type Inheritance
- Offspring inherits breed type from dominant parent
- Special case: if parent is "any" type with
<hatchAny>tag, treats differently
Gender
- Randomly determined (50/50) unless specific weights set
- Can be influenced by parent gender tags
Multiple Eggs
- Set
<breedMulti:X>to determine maximum number of eggs possible - Set
<breedMultiChance:Y>for percentage chance of multiple eggs - When breeding completes, collect each egg individually
Warning: Setting breedMulti too high may flood the player's inventory with eggs!
Troubleshooting
| Problem | Solution |
|---|---|
| Pets Not Compatible | Check breed types and genders. Make sure they're the same breed type or one is "any". |
| Breeding Progress Not Saving | Make sure to save game after starting breeding. Check if plugin is below ED5_Pets in load order. |
| Missing Pets After Breeding | They should be returned to inventory after collecting eggs. If not, try restarting the game. |
| Eggs Not Hatching | Ensure they're properly registered in pet system and hatch steps are set correctly. |
| Gender Not Working | Check syntax of gender tags. Make sure they're formatted as <gender:m> or <gender:f>. |
| No Breed Type | Check if breed types are properly defined in pet template events. |
Example Use Case
- Create two compatible pet templates with breed types:
<breed:dragon> <breedPower:60> <gender:m>
- Open breeding menu through plugin command or script call
- Select two compatible pets and start breeding
- Wait for breeding to complete (progress shown in UI)
- Collect resulting egg(s)
- Use egg item to start hatching process
- After sufficient steps, egg hatches into offspring with combined traits
This breeding system allows for creating pet lineages and encouraging players to collect and breed different pet combinations to discover unique offspring.
Purchase
$0.99
Reviews
Comments
Sign in to comment
