About/Technical
- I created this system because:
- In the past, bidders had to refresh each new page constantly and carefully watch every single new post to catch new bids on items they want. I thought this was absurd.
- In the past, the first post often was not reliably updated during the most essential time of the auction, during the last 30 minutes. I thought this was also absurd.
- In the past, the auctioneer had to note down every single bid by hand, and update the first post accordingly. There was a moderate chance of human error after many bids and posts. With this system, such an error is impossible.
- Here, if you use the available features (enable PM/MM outbid notifications, or look at the bid log), you theoretically never have to read any of the other posts in the thread, and you don't even need to hover around the auction thread during the last few minutes as long as you're somewhere online on the forums or on HV.
- Post format: "code bid command" or "code command bid" or "code code code ... bid": (not case sensitive)
- Bid may be: "start" "100k" "10m" "10.245m"
- Command may be: "cancel" "notify" "notify pm" "notifypm" "notify mm" "notifymm" "stop notify" "stopnotify"
- Text (discussion, question, etc) before and after bids or commands is completely fine (just don't Quote anyone above a bid)
- Update limit is every 60 seconds.
- Posts are parsed by:
- All extra characters and a few filler words are removed and replaced with spaces. Currently, these are: \n (newline character) \t (tab character) \u3000 (fullwidth space) [ ] ( ) { } - , : "all" "every" "and" "bid" ". " (period followed by space or followed by end of line)
- In the post, characters 1-5 are checked to see if they are a valid item code, such as "one01" or "One01".
- If so, the next word after the item code is checked to see if matches a bid or command (a bid amount, or "start", "cancel", "notify (pm?) (mm?)", "stop notify"). If valid, the bid/command is carried out and the script repeats the same process with the next word.
- On the other hand, if the first next word is an item code instead of a command, the item code is ignored and the script goes on to the next word like above, but only recognizes subsequent bids as valid, not commands.
- This is what lets the script recognize "One01 One02 One03 50k" and "One01 One02 One03 start" as valid, but rejects "One01 One02 One03 notify" except when the first item code in (2) was One03.
- The above was after verifying that characters 1-5 matched an item code. After this, or if a correct item code was not found, the process repeats with checking characters 2-6 for an item code, and then 3-7, until the end of the post.
- (In this way, subsequent item codes that were ignored in (4) will eventually be parsed correctly exactly once)
- The above is why the rule is: "All posted bids should be in credits (or "Start" = starting bid) and must immediately follow the item code or codes."
- All posts on a page are saved to a database whenever a page is read, and each time the script runs it rebuilds the bid log and the edits to the first post from scratch, by parsing every post in the database again.
- Send a PM to Superlatanium if you see anything weird or have a suggestion. I want to do whatever I can to make the auction process less tedious for everyone.