BankSeller 1.0.3: support F2P trade-restricted accounts - #528
Conversation
- Detect the per-item trade-restriction notice in the sell offer setup and skip to the next inventory item without leaving the GE screen - List every offer at 50% of the actively traded price for instant fills - Sell each item's full stack in a single offer - Abort leftover unsold offers at the end, re-list them at 1gp, then collect and stop - Wait for pending offers and collect coins before stopping; final chatbox verdict when the bank is fully processed
5a29015 to
d868d3d
Compare
|
Thanks — the build and live-session results look good, but I found one merge-blocking safety issue in the forced-liquidation path. In There is also a smaller reliability issue in Once those paths are isolated from pre-existing offers and transient failures, this should be in much safer shape to merge. |
…failures Address review on chsami#528: - liquidateLeftoverOffers() no longer calls abortAllOffers(). Slots occupied when the plugin starts are snapshotted as foreign, and the liquidation now only aborts, collects and re-lists slots that hold an item this run actually listed. Aborts are slot-targeted (no collect-all), collection is per-slot to the inventory, and the 1gp re-list pass is filtered to owned items, so pre-existing or other plugins' offers can no longer be aborted or have their contents sold at 1gp. Completed unrelated offers are likewise never collected into the liquidation inventory. - placeSellOffer() now distinguishes a genuine refusal from a transient UI failure. Only the explicit trade-restriction notice marks an item unsellable. A setup that never opens or a widget timeout is retried and, after repeated failures, the item is just parked for the session instead of populating unsellableItemIds.
Updates the Bank Seller plugin to 1.0.3, tested live on a new F2P trade-restricted account.
What changed
Only files under
bankseller/(plus its docs readme) are touched.Testing steps
./gradlew build -PpluginList=BankSellerPlugin(JDK 11, client 2.6.19).