What's new in Mys v1.3.3: Breeding System Overhaul

Forum
Last Post
Threads / Messages

Hall of Famer

Administrator
Staff member
Administrator
Joined
Dec 15, 2008
Messages
4,563
Points
48
Location
United States
Mysidian Dollar
214,216
Well it is about time for me to introduce another new feature available in the upcoming release Mys v1.3.3. This one is an overhaul of the old breeding system. The old heuristic breeding mechanism is simple, but perhaps a bit way too simple that it does not achieve what many users hope it to. To summarize the old mechanism, the below equation can be used:

A + B => Offspring(50%A, 50%B)

If species A and B are interbreedable (adoptables belong to the same class), there's an equal chance for its offspring to be species A or B. It is usually a good assumption, but there's a problem with it. First of all, there's no way to generate a different species C, while in many cases users want to have certain species only available through breeding. Second, the breeding mechanism always produce one and exactly one offspring. Third, the baby adoptable has 100% chance to survive, also breeding has an 100% chance to succeed. There are several other useful features missing from the simple breeding mechanism, which gives rises to the idea that a breeding system overhaul is necessary.

The new advanced breeding system in Mys v1.3.x is a lot more complex, but its flexibility gives admins almost complete control over the breeding system. At first, lettuce take a look at what settings are available through ACP:

6yoaok.jpg



So yeah, you can specify various settings for your own breeding system. Other than specifying minimum breeding level and required wait time, you can also define ineligible species(adoptables not capable of breeding), breeding capacity(max time an adoptable can breed), max of offsprings possible(can be way more than one), chance of successful breeding attempt, cost of breeding, usergroup/item required to breed, and even turn off the whole breeding system at times. The advanced breeding system is powerful, and you may need to play with it for a few times to get a feel of how it works out.

The breeding validator object can check if a user's adoptables meet the requirement to have offspring. Depending on the circumstances, your users may get various error messages as shown in the screenshot below. Note the screenshot is not a complete collection of the restrictions you can set. Sure you may annoy some of them, but the advanced breeding system will give you as much control as you need to run a successful site:
http://oi45.tinypic.com/25a7r04.jpg


Now comes the fun part. You can create adoptables breeding relationship in ACP, which is refered to as 'breed adopt'. This will enable adoptables to give birth to offspring with alternative species different from both parents. You may wonder that a pair of two adoptables can have various possible outcomes for their offspring, this is where the term 'probability' comes into play. The value for 'probability' can be any positive integer, but keep in mind that there's no need to sum up total probability to 100 since the script normalizes it for you automatically once the parents species are decided. If you enable multi-offspring breeding on your site, you can give a try testing how the probability distribution works. You can also set survival rate of the particular offspring type, and an additional level requirement for the mother to breed her offspring. Last but not least, you can enable/disable a breed adopt relationship by checking/unchecking the last form entry. Sounds easy, doesnt it?

rtgx8w.jpg



The advanced breeding mechanism can be a bit complex here, especially when it comes down to the parents vs mother/father confusion. To summarize, the two fields mother and father are gender-specific, it requires the female species to match the mother column, and/or the male species to match the father column to get the proper child species. For instance, a male donkey and female horse's offspring is different from a male horse and female donkey. If your offspring does not depend on the gender of its parents, you should use the parents field instead since its more generic.

At the very last, I will show you a few screenshots of the demo site running a complex breeding simulation. The mother is a Charizard, whose offspring can be Charmander(60%), Charmeleon(30%), orCharizard(10%). The father is a Venusaur, whose offspring can be Bulbasaur(60%), Ivysaur(30%) or Venusaur(10%). Hey dont stare at me with that weird look, I know it violates the principle of Pokemon breeding mechanism but this is just for illustration purposes. Nothing more, nothing less lol. After running the simulation for one time, I ended up with 10 offspring. It is noticeable how baby Bulbasaur/Charmander are more common than baby Ivysaur/Charmeleon, while baby Venusaur/Charizard almost do not exist:
29wsmxf.jpg


On a live site you'd never want a user to get 10 baby adoptables through one attempt, you can easily lose control of your site with users flooding your database with adoptables. Anyway the above example simply proves that the probability system is working out as planned, and that you can play with the 'probability' value to determine which baby adoptable has higher chance to show up in breeding center. Note if neither of your two parent adoptables have at least one defined 'breed adopt' relationship, the heuristic breeding mechanism will apply and yield what you've been familiar with in Mys v1.3.2 and earlier versions. So yeah, I've designed the breeding system to be as flexible as possible.

If breeding is successful, you will get the screen as below. However, if the survival rate is low for each baby adoptable, you may end up with nothing at all from breeding center. Should this happen, you can only blame your bad luck. Well, probably not since as site admins you can play with this value, cant you?
10rnv48.jpg



Guess this should conclude my long and exhausting introduction of the advanced breeding system in Mys v1.3.3, I hope you guys/gals like it. Unfortunately, genetic breeding system is not available at this moment, it is perhaps way more complicated since your users can technically create new species through genetic breeding. For this current breeding system though, you have to predefine all parent and child species in ACP. Its more likely for genetic breeding system to be released as a Mod/Plugin for Mys v1.4.x someday, though I currently do not have any plan for writing such a script yet.

With this breeding system completed, I will work on the customizable sidebar feature and possibly an adoptable daycare center feature before releasing Mys v1.3.3. The trade system overhaul is planned for Mys v1.3.4, together with several minor improvements. I am not sure if Mys v1.3.4 is the end of life for Mys v1.3.x series yet, but there's a good chance for Mys v1.4.0's official development to start after Mys v1.3.3 is made available in public. Anyway keep track with my blogposts and you will find out whats new in Mysidia Adoptables. Have a great week, everyone.
 
Some body has certainly been busy! The new breeding system looks absolutely wonderful! I know tons of users have been wanting features like these (me included!) and I'm really pretty amazed that you've been able to figure out how to work/create some of the features.

It seriously looks amazing :)
 
This is just what I wanted!
Thank you so much....
You have improved my life SO much!
 
absolutely incredible. I am literally overjoyed to see this, thank you so much, for us breeders, it's a dream come true!!
 

Similar threads

Users who are viewing this thread

  • Forum Contains New Posts
  • Forum Contains No New Posts

Forum statistics

Threads
4,267
Messages
33,048
Members
1,602
Latest member
BerrieMilk
BETA

Latest Threads

Latest Posts

Top