Creating Animal Buyer

Bonaccorso

Rookie
Mar 1, 2019
78
13
8
32
I'm trying to make Animal Trainer (or some separate vendor) also to buy animals, but so far I didn't find how can it be done properly. Of course jsut adding animals in to buy list doesn't work, sadly :-(
I read the code from Ultima Adventures (UpdatedAnimalTrainerLord.cs) where there is such a vendor, but that one is really heavy moded, and I didn't find how can I implement this vendor this way.
Maybe somebody has any suggestions what to try?
 
  • Like
Reactions: 12d3

Vorspire

Vita-Nex: Core
Admin
ServUO Developer
Jul 29, 2013
1,171
277
83
33
United Kingdom
core.vita-nex.com
Shard Name
Ultima Shards: Multiverse
Donate
Donate money to this user
Implement a pet shrinking system that lets you turn them into statuettes - there are a few available - then add the shrink item to the vendor buy-back list with a price of 0.
After that, you'll need a little special handling to take care of what kind of pet the idols contain, if you want to differentiate the pricing between them.
You should be able to modify GetSellPriceFor in GenericSell.cs and add the handling for the shrunken item...

C#:
        public int GetSellPriceFor(Item item, BaseVendor vendor)
        {
            #region Shrunk Pet Handling

            if (item is Xanthos.ShrinkSystem.ShrinkItem shrink)
            {
                IBuyItemInfo buyInfo = vendor.GetBuyInfo().OfType<GenericBuyInfo>().FirstOrDefault(info => info.Type == shrink.ShrunkenPet.GetType());

                if (buyInfo != null)
                    return buyInfo.Price;
            }

            #endregion Shrunk Pet Handling

        //...rest of GetSellPriceFor code
This will effectively add buy-back support to all vendors that sell animals, so long as you list the ShrinkItem as a buyable and the player is trying to sell a shrunken version of a pet they can buy from that vendor.
 
  • Like
Reactions: 12d3

12d3

Citizen
Jul 20, 2020
4
0
1
34
Philadelphia
Shard Name
UOsponge
I absolutely love this concept for a hunters challenge, or a MOTM, or even tied into events, but IMHO usually the last thing tamers need is more income lol
 

Bonaccorso

Rookie
Mar 1, 2019
78
13
8
32
I absolutely love this concept for a hunters challenge, or a MOTM, or even tied into events, but IMHO usually the last thing tamers need is more income lol
It's more abotu flavor and quests than about income :) But btw, howcomes that tamers don't have much need for cash?
Post automatically merged:

Implement a pet shrinking system that lets you turn them into statuettes - there are a few available - then add the shrink item to the vendor buy-back list with a price of 0.
After that, you'll need a little special handling to take care of what kind of pet the idols contain, if you want to differentiate the pricing between them.
You should be able to modify GetSellPriceFor in GenericSell.cs and add the handling for the shrunken item...
Thank you so much, I'll experiment today! I found Shrink.cfg and ShrinkTables.cs in the distrib but they don't seem to be what I need. Is this a good one - https://www.servuo.com/archive/xantos-shrink-system.613/ ?
Post automatically merged:

UPD: I get an error while try to complie Xantos shrink system, maybe there's better one?
 
Last edited:
  • Like
Reactions: 12d3

12d3

Citizen
Jul 20, 2020
4
0
1
34
Philadelphia
Shard Name
UOsponge
Lol oh don't misunderstand I'm mostly busting stones, just from what I've seen over the years skilled maxed out tamers, especially tamer-bards were always quite well off lol, although the downside of being quasi-pvm invincible with no real skill based goldsinks is you may fall into the trap of the rare-hoarding aristocratic banksitter lol
 

Bonaccorso

Rookie
Mar 1, 2019
78
13
8
32
Solved the problem in Xantos shrink - it has two, in fact:
1. its XML has weight in wrong format, 10.0 instead of 10,0
2. The error during the complie in HitchingPost.cs - changed the line:
public override bool ForceShowProperties{ get{ return ObjectPropertyList.Enabled; }}
on this:
public override bool ForceShowProperties => true;
Post automatically merged:

@Vorspire I'm sorry but I didn't ocmpletely get the part of the scheme - so they selling player has to shrink pets manually before selling?