datguy:
I tested the auction with stacked items, they listed normally. Also tested with an auction making sure I filled in some of the optional settings I'd skipped before, that auction posted normally. I didn't try to set up an automatic auction posting macro with Razor, it's possible that may be the actual problem. When testing, I made more than 5 auctions, and as I was testing with a GM account it didn't stop me once I passed the limit. I don't know what the actual max limit is per player, it's listed as 5 but the system seems able to handle it.
That said, this system is prone to either crashes or complications, I'd recommend using it very carefully.
Line 171 is this
Code:
foreach( TextRelay t in info.TextEntries )
{
tr[ t.EntryID ] = t.Text;
}
It's pulling the variables from the gump to assign them, the error means that it's trying to do something past the bounds of the array, which seems that Razor is messing with the variables it sends back, maybe adding an extra one or something, or the macro isn't formed correctly, or some optimization between Razor and RunUO leads to too little or too much data being sent back.
nadious:
The day it just stopped (when you tried to add an auction and no gumps came back) it was probably giving the error about the cliloc on the console.
Changes to either RunUO or the client will break certain things, in RunUO and especially in the SDK (ultima.dll) - the auction system may stop working again. I do regular updates to the client data files and RunUO SVN, to try and keep things sync'd, but that doesn't always help. =)
I'm not sure why it's not reading your config file, mine always says 'success' even if it ignores some of the data in the file... ^.^; Not sure what to suggest other than double check the file, verify the location is where it should be (RunUO\Data\AuctionConfig.xml) and make sure it has the same (OS) ownership permissions as RunUO. If you only have one (OS) user account, that should be the case, but who knows if something weird happened.. Worst case you can always copy the contents of your old AuctionConfig.xml into a new file that you make, (rename the old one) and see if RunUO still fails to read it. Also editing in something like notepad++ will highlight all the 'code' and colorize it appropriately, letting you see if something is malformed in your XML file.
Edit:
It, uh, it just started reading properly from my AuctionConfig.xml file.
; Every other time it detected the cliloc as null, now it works. :> Heh.
Here's my AuctionConfig.xml
Code:
<?xml version='1.0' ?>
<Xanthos>
<AuctionSystem version='2.0'>
<MessageHue type="int">64</MessageHue>
<DaysForConfirmation type="int">7</DaysForConfirmation>
<MaxReserveMultiplier type="double">3.0</MaxReserveMultiplier>
<BlackHue type="int">2000</BlackHue>
<AllowPetsAuction type="bool">true</AllowPetsAuction>
<AuctionAdminAcessLevel type="AccessLevel">Administrator</AuctionAdminAcessLevel>
<ClilocLocation type="string">E:/Games/Ultima Online/cliloc.enu</ClilocLocation>
<EnableLogging type="bool">true</EnableLogging>
<LateBidExtention type="double">5.0</LateBidExtention>
<CostOfAuction type="double">0.01</CostOfAuction>
<ForbiddenTypes type="array">
<a type="Type">Server.Items.Gold</a>
<a type="Type">Server.Items.BankCheck</a>
<a type="Type">Server.Items.DeathRobe</a>
<a type="Type">Arya.Auction.AuctionGoldCheck</a>
<a type="Type">Arya.Auction.AuctionItemCheck</a>
</ForbiddenTypes>
<GoldInterestRate type="double">0.01</GoldInterestRate>
<TokensInterestRate type="double">0.01</TokensInterestRate>
<EnableTokens type="bool">false</EnableTokens>
</AuctionSystem>
</Xanthos>
Another Edit:
I think the main problem is a logic one.. When you first set up the auction system, it won't initialize AuctionItem until you start an auction, however if there are existing auctions when you load the world, it sets up AuctionItem before reading AuctionConfig.XML...
Code:
RunUO - [www.runuo.com] Version 2.0, Build 2949.42379
Core: Running on .NET Framework Version 2.0.50727
Scripts: Compiling C# scripts...done (cached)
Scripts: Compiling VB.NET scripts...no files found.
Scripts: Verifying...done (2501 items, 587 mobiles)
Regions: Loading...done
World: Loading...AuctionItem.cs: AuctionItem(): DEBUG: Beginning AuctionItem()
AuctionItem.cs: AuctionItem(): DEBUG: AuctionConfig.ClilocLocation is NULL, proc
eeding with auto-detection...
AuctionItem.cs: AuctionItem(): DEBUG: Cliloc detection worked! E:\Games\Ultima O
nline\cliloc.enu
done (175637 items, 12965 mobiles) (5.66 seconds)
Onsite Dueling System: DuelPoints loaded.
RandomEncounters: **WE'RE LIVE, BABY***...
[picker=sqrt language=en-US skiphidden=False delay=600 intervals=600:600:600
cleanup=1800 grace=0 debug=False animateDebug=False]
Xanthos.Utilities.ConfigParser attempting to load Data/ShrinkConfig.xml...
Xanthos.Utilities.ConfigParser success!
Xanthos.Utilities.ConfigParser attempting to load Data/AuctionConfig.xml...
Xanthos.Utilities.ConfigParser success!
Searches: Initializing....
Reports: Stats: Loading...done
Reports: Staff: Loading...done
Restricting client version to 6.0.6.2. Action to be taken: Warn
Listening: 127.0.0.1:2593
Listening: 192.168.1.96:2593
Warning: 149 bad spawns detected, logged: 'badspawn.log'
Warning: 229 bad spawns detected, logged: 'badspawn.log'
So that's why cliloclocation is null if there are existing auctions, but works fine if no auctions exist when the world loads.
To all
If I missed any updates in my xanthos.zip please let me know, I can include them and update the file so everyone can have a (hopefully) working auction system. Thank you.