|
||
|
|||||||
| Custom Script Releases This forum is where you can release your custom scripts for other users to use. Please note: By releasing your scripts here you are submitting them to the public and as such agree to publish them under the GPL licensing terms. The RunUO Team has made its software GPL for you to use and enjoy you should do the same for anything based off of RunUO. |
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 (permalink) |
|
Forum Novice
|
Attachment 16852VAM 2.0 - Hawkins' Vendor, Auction and Mall System 2.0
Credit: First I would like to thank those from the RunUO community, especially Lord GreyWolf, Soteric, Jeff, Vorspire and others, for without their help directly and indirectly, I can hardly finish this project. Introduction: - Mall Mall no longer links to house such that you, the shard owner, can set up your vendor mall anywhere as you wish. You can setup your mall surrouding Britain Bank, and you can establish your black markets deep inside the dungeons. - Vendors There are 3 types of staff setup walking vendors and 1 stationed player run vendor. The walking vendors will not go away but wandering inside the mall region. a) Commissioned Vendor They are enhanced version of Player Vendors, setup and run by players. They can be set to basing on sales commissions instead of a daily charge. They bill a percentage on every sales transaction. Players no longer need to worry about the dismissal of their vendors due to the lack of fund, this is true especially in less crowded shards. Commissioned vendors are fully functioning when in Malls. When bringing home, they function the same except that auction/biding will not be possible, as auction and biding is allowed only in malls. Since they are inherited from Player Vendor, you can treat them as traditional Player Vendors, and to place items to their backpacks to sell them in the classical way. b) Wandering Trader They are vendors selling bidable items. They are only walking inside the defined mall region and will not wander away. They are owner setup vendors selling unique items allowing players to place bids. c) Pet Seller Although all 4 types of vendors are capable of selling pets, pet sellers are more specialized in that they show off the selling pets when players are around. That is, they are actually selling your pets. d) Restockable Vendor They sell non-unique items with their inventory automatically refilled, more or less like the usual NPC vendors. The difference is that, the shard owners/game masters in game can dynamically place items and pets for them to sell. - Auction Players can place bids or bargain back on selling items and pets. Pre-requisite: You need to install Callandor2k's RunUO with Mondain's Legacy. Coz it's the version this development is based off. Installation: - unrar the package and place it to your Custom folder - to merge the "distro" scripts - start server There are only 2 distro files you need to change, and only slide changes are made in the 2 scripts 1. PlayerVendor.cs 2. Snooping.cs Instruction:
Package de-installation/removal: - delete all vendors in mall - delete the manager - type [Save to save the shard, which will force a proper after deletion clean-up - then type [SaveStone to go to the Mall Save Stone which is used to store auction records and etc., and [remove it - shut down the server and remove the package Package: It is better to download the most updated copy from CodePlex, http://vendorauctionmall.codeplex.com/ ( 17-May-2009 ).( 21-May-2009 ).( 30-May-2009 ).( 14-Jun-2009 ).( 30-Jun-2009 ) Last edited by Hawkins; 06-30-2009 at 11:51 AM. |
|
|
|
|
|
#2 (permalink) |
|
Forum Novice
|
Updates:
[21-May-2009] - enhanced the Bidding features, added a Staff Bid Ledger for staff to manage bid approval for staff setup vendors - corrected some bugs, including the commission calculation and charging - added region control such that whether spell "Mark" is allowed can be set by staff's [props on the manager . . [28-May-2009] More uptodate files are kept in CodePlex, here, http://vendorauctionmall.codeplex.com/ Release Notes Hawkins' Vendor Auction and Mall System 2.0 Revision 11 Bugfix: - corrected pet seller showtime issues - corrected a bug in StaffBidLedger causing null reference error - corrected a bug in RestockableVendor and items can be removed properly - Stackable items added to Restockable vendor will have a quantity of 1 - Restockable vendors now can sell 60000 stackable items and 999 non-stackable items New features: - Restockable vendors can be set to sell stackable items in bulk up to 60000 in quantity. They are now called Bulk Orderers. To do so, just [props a Restocker and set 'IsBulk' to true. When 'IsBulk' is set to 'true', stock refilling will no longer increase or reduce the max quantity by half. [30-May-2009] Release Notes Release: Revision 12 CodePlex Build: 17332 Bugfix - bug of HoldGold deserialization is fixed, such that vendor commission is reduced correctly after each server re-start - bug of Pet Seller sending already sold pets to Internal map is fixed, such that during the road shows sold pets will be handled correctly - road show pets after server re-start are handled more properly New Features - other than the "Mark" spell, both "Teleport" and "Recall" spells can be disabled from being casting inside a vendor mall [14-Jun-2009] Release: Revision 15 CodePlex Build: 20805 Bugfix - distro file "BaseVendor.cs" is updated such that multiple currency purchase using classical vendor buying gump will handle the currencies correctly - corrected a bug where pets on show purchased are with invulnerable status - pets in forms of humans ( such as evo mercenary ) will not use the pet's own hue as shopitem, such that the displayed hue will not be 'black' in color [30-Jun-2009] Release: Revision 16 CodePlex Build: 22715 Bugfix - Petseller didn't handle currency sales correctly, it always gives Gold to the owner instead of the correct currency ( fixed ) - Petseller didn't charge commission for hired pet sales ( fixed ) - Bidding may cause server crash when multiple players are competing for the same item ( fixed ) - Only the bid with highest amount placed can be approved ( after fixing, any bid can be approved ) - When Gold is used as currency, the owner is billed instead of the bider (fixed) - Commissioned Vendor didn't dismiss properly ( fixed ) Improvement - Mall tiles are automatically added on commissioned vendor dismissal ( can be set in CommissionedVendor.cs ) - Useless "Buy" and "Sell" context menu options are removed from wandering traders and pet sellers - Commissioned vendor's backpack can be disabled from being displayed to buyers ( option set in CommissionedVendor.cs ) . . . ---- A vendor mall is quickly setup in Ankh Dungeon of Ilshenar, the vendors are dancing with the critters, while the guards are busy killing them. anhk manager.jpg Here, you can view the classic buy gump, the new graphical buy gump and the true item itself side by side at the same time. You can place bids, view detailed pet info and manage your own items by just a single click. buy menu.jpg While the pet seller starts a road show to demostrate his selling pet, I am viewing the detailed pet info which will dynamically extend to FS:ATS or Xanthos Evo System ( or other pet systems easily ) if you have them installed, detail info such as Level, Max Level, Generation, Ep, Stage and etc. Moreover, do you notice any difference between the first screen shot and the third? The vendor tiles are totally different. It's because by a single click, you can change the vendor tiles inside the mall to any tiles of your favor. ![]() road show.jpg Both tiles and their color hues can be setup and applied to the whole mall. And single click on vendors, manager or items will bring up the corresponding context menu. Here, "Offer" = to place a bid, or to display all items which are under auction. tile and hue.jpg Click the item will bring up the context menu, choose "Offer" will display the bidding info, such as currently who have placed bids on the item, and their prices offered. On the other hand, your own account book will show all the bids you have placed. Moreover, if you are the owner of the auction items, you will be informed of the last active bid right after your login the game. Notice that in the screen shot, currency has been set to Daat99Tokens instead of Gold. And everytime when you enter the mall region, random UO music will be played. ![]() bid menu.jpg Last edited by Hawkins; 06-30-2009 at 11:56 AM. |
|
|
|
|
|
#3 (permalink) |
|
Master of the Internet
|
the auction vendors, are they for staff to use only or for players to use also for selling items?
do they have a date/time set up for when auction ends? do they auto remove from banks or what ever? and auto give to player? and what happens if player does not have funds, etc? also how extensive of testing have you done with the auctioning?
__________________
http://www.AoAUO.com
:) ..... Come for the Customs, Play for the Fun. Return to see your new Friends ..... :) |
|
|
|
|
|
#4 (permalink) | |||||
|
Forum Novice
|
Quote:
Wandering traders, Restockable vendors - for staff Petsellers - for both, players can 'hire' them to sell their pets Quote:
Quote:
As for bids, items will be delivered to players' backpack or bankbox, pets will be stabled if there's enough slot. Quote:
Quote:
![]() I will keep testing thou. Last edited by Hawkins; 05-17-2009 at 04:43 AM. |
|||||
|
|
|
|
|
#5 (permalink) | |
|
Master of the Internet
|
Quote:
from below answers looks like they can, but not sure look forward to using parts of this for sure (all ready have mall vandors for players, but auction and commission sounds great )
__________________
http://www.AoAUO.com
:) ..... Come for the Customs, Play for the Fun. Return to see your new Friends ..... :) |
|
|
|
|
|
|
#6 (permalink) | |
|
Forum Novice
|
Quote:
Hope that answers your question, and apology for my poor English. ![]() Last edited by Hawkins; 05-17-2009 at 08:04 AM. |
|
|
|
|
|
|
#7 (permalink) |
|
Master of the Internet
|
ok so the commisioned vendors can also hold auctions then, or it is started through them anyways
you may want to include a list of how to do all this stuff in detail lol
__________________
http://www.AoAUO.com
:) ..... Come for the Customs, Play for the Fun. Return to see your new Friends ..... :) |
|
|
|
|
|
#8 (permalink) | |
|
Forum Novice
|
Quote:
And yes, I am going to prepare a detailed user guide, perhaps after the frist round reported bugs or suggested improvements are done. ![]() Last edited by Hawkins; 05-18-2009 at 12:01 AM. |
|
|
|
|
|
|
#10 (permalink) |
|
Forum Novice
Join Date: Dec 2003
Posts: 316
|
Here is the Errors i get
Code:
Errors:
+ VendorAuctionMall/Mobiles/CommissionedVendor.cs:
CS0506: Line 346: 'Server.Mobiles.CommissionedVendor.Dismiss(Server.Mobile)'
: cannot override inherited member 'Server.Mobiles.PlayerVendor.Dismiss(Server.M
obile)' because it is not marked virtual, abstract, or override
|
|
|
|
|
|
#11 (permalink) | |
|
Forum Novice
|
Quote:
![]() Such an error occurs when you compile the package without first merging the above 2 scripts in the "distro" folder with your existing scripts. the 2 modifications made in PlayerVendor.cs PHP Code:
PHP Code:
And the 1 modification in Snooping.cs PHP Code:
Last edited by Hawkins; 05-18-2009 at 03:44 AM. |
|
|
|
|
|
|
#13 (permalink) | |
|
Forum Novice
|
Quote:
So in case you don't the have "Allured" defined, you may make the following change in VendorManager.cs, line 2535, from: PHP Code:
PHP Code:
|
|
|
|
|
|
|
#14 (permalink) |
|
Forum Novice
Join Date: Jul 2007
Age: 23
Posts: 137
|
Server Crash
Code:
Server Crash Report =================== RunUO Version 2.0, Build 2959.20979 Operating System: Microsoft Windows NT 5.1.2600 Service Pack 2 .NET Framework: 2.0.50727.42 Time: 18.05.2009 12:40:08 Mobiles: 2418 Items: 99897 Exception: System.NullReferenceException: Object reference not set to an instance of an object. at Server.Mobiles.Maintenance.OnStarted() at Server.EventSink.InvokeServerStarted() at Server.Core.Main(String[] args) Clients: - Count: 0 |
|
|
|
|
|
#15 (permalink) |
|
Forum Novice
|
The most critical bug I found by far is in CommissionedVendor.cs, the last code line of the file,
Code:
if ( !cv.Deleted && cv.IsComm && cv.CommRate > 0 && cv.CommRate <= 100 && cv.LastHold > cv.HoldGold )
{
int left = cv.HoldGold - cv.LastHold;
int comm = (int)( left * cv.CommRate / 100 );
cv.HoldGold -= comm;
cv.LastHold = cv.HoldGold;
}
without adding the highted line, the commission calculation is wrong, HoldGold will be reduced time and again. ![]() |
|
|
|
|
|
#16 (permalink) | |
|
Forum Novice
|
Quote:
Thanks so much. |
|
|
|
|
|
|
#18 (permalink) |
|
Forum Novice
|
Still, there's no line number info. I will try to simulate this when I am home. The OnStarted() method contains only several lines. Unless the "if ( list == null" is removed, it doesn't seem that it will cause any error on start up. But I will try to reproduce it.
|
|
|
|
|
|
#19 (permalink) |
|
Forum Novice
Join Date: Dec 2003
Posts: 316
|
Exception:
System.NullReferenceException: Object reference not set to an instance of an object. at Server.Mobiles.Maintenance.OnStarted() in c:\ Server2\Server\Scripts\VendorAuctionMall\Misc\Main tenance.cs:line 92 at Server.EventSink.InvokeServerStarted() at Server.Core.Main(String[] args) |
|
|
|
|
|
#20 (permalink) | |
|
Forum Novice
|
Quote:
? ).I've figured out a better way to spawn this 'SaveStone', that is, to spawn it when the first manager is created. I am going to launch a new update very soon, together with other issues fixed ( such as the commission deduction logic and timer ). Yet if you wish to continue to try out the package at the moment, you can comment out or remove line 92 in Maintenance.cs, and manually generate the 'SaveStone' anywhere as you wish by typing the command [add SaveStone in game. Thanks so much for your help. ![]() Sincerely Last edited by Hawkins; 05-19-2009 at 12:25 AM. |
|
|
|
|
|
|
#23 (permalink) |
|
Forum Novice
|
Updated, please refer to the 2nd post under OP, and re-download the package.
chagnes include,
Pre-requisite: You need to install Callandor2k's RunUO with Mondain's Legacy. Coz it's the version this development is based off. |
|
|
|
|
|
#24 (permalink) |
|
Forum Novice
|
More uptodate files are kept in CodePlex, here,
http://vendorauctionmall.codeplex.com/ Release Notes Hawkins' Vendor Auction and Mall System 2.0 Revision 11 Bugfix: - corrected pet seller showtime issues - corrected a bug in StaffBidLedger causing null reference error - corrected a bug in RestockableVendor and items can be removed properly - Stackable items added to Restockable vendor will have a quantity of 1 - Restockable vendors now can sell 60000 stackable items and 999 non-stackable items New features: - Restockable vendors can be set to sell stackable items in bulk up to 60000 in quantity. They are now called Bulk Orderers. To do so, just [props a Restocker and set 'IsBulk' to true. When 'IsBulk' is set to 'true', stock refilling will no longer increase or reduce the max quantity by half. |
|
|
|
|
|
#25 (permalink) |
|
Forum Novice
|
After applying to my own production shards, 2 major issues are reported. So I am sorry that I have to jet another release so soon.
You need to re-download the package, better from CodePlex: http://vendorauctionmall.codeplex.com/ Release Note Release: Revision 12 CodePlex Build: 17332 Bugfix - bug of HoldGold deserialization is fixed, such that vendor commission is reduced correctly after each server re-start - bug of Pet Seller sending already sold pets to Internal map is fixed, such that during the road shows sold pets will be handled correctly - road show pets after server re-start are handled more properly New Features - other than the "Mark" spell, both "Teleport" and "Recall" spells can be disabled from being casting inside a vendor mall Last edited by Hawkins; 05-30-2009 at 05:54 AM. |
|
|
|
![]() |
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|