Skip to content

Changelog

Every release, what changed in it, and why. The same text the app shows you when it updates.

  1. 2.27.7

    Current
    • PandoraSF: every world now works, not only S1. S2, S3 and the coming S4 connect with the same rules, settings and their own web shop, and the direct login offers S1 to S4 as one press each. Thanks to ocsike2508 for asking.
  2. 2.27.6

    • Gems: new gems now go into empty sockets instead of being sold. Before, a gem could be sold as surplus before the bot ever tried to socket it, even with sockets free.
    • Full bag: the bot no longer asks for dungeon and Tower fights the game refuses without a free slot, and waiting for room in the bag no longer stops troops, attacks and building in the fortress.
  3. 2.27.5

    • Equipment: "Epic+Legendary" and "Only Legendary" now really restrict what is equipped, for you and your companions. Before, almost every item got through. Thanks to hdym for the report.
    • Witch: when she refuses to enchant a companion's item, the bot remembers it and moves on instead of asking again every minute.
  4. 2.27.4

    • Fortress: attacks no longer stop when the resources cover only part of a troop order. The bot orders a single soldier instead and attacks either way. Thanks to Querti for the report.
    • Black market: the bot can buy the weekly constitution potion and the potion of your main attribute for mushrooms, at most 12 mushrooms a week by default. Off by default, under Settings, Mushrooms, Black Market.
    • Black market: the big hourglass offer can be bought when you skip quests with hourglasses and are running low (own switch, off by default). The section shows every offer of the week and why it is or is not bought.
    • Event planner: six new switches, all off by default. City guard paid inside the gold event, dice kept for the event that multiplies them, paid wheel turns saved for wheel events, epics saved for Tidy Toilet Time, resource quests in fortress, souls and forge events, magic shop hourglasses only during Sands of Time.
    • Expeditions: up to three extra beers so an expedition day reaches the 100 or 300 thirst mark and its guaranteed mushroom, and a new strategy "Guide ranking" that plays the heroism chains. Both off by default.
    • Weekly event tasks: the bot can work toward the reward chest with the cheapest tasks and spends nothing when the reward cannot be reached. Off by default.
    • Wheel of Fortune: 40 turns on Lucky Day, and the upgraded wheel (2.0) is recognised, so its prizes are named correctly.
    • Fixes: one unexpected mushroom charge no longer holds back unrelated commands, and fights are no longer recorded twice for the learned models.
  5. 2.27.3

    • Settings import: a backup pasted on the phone or in the browser is now really applied, and the app says how many settings changed. Thanks to Querti and Phil for the report.
    • Android: Back no longer stops the bots. The app goes to the background and the bots keep running with their notification. If battery optimization is still on, Settings offers a button to turn it off.
    • Locked items are now also safe from the toilet, the witch and the blacksmith, not only from selling.
    • Arena: when the Server Start opening holds the arena back, the page says so and names what it is waiting for, instead of showing On Cooldown.
  6. 2.27.2

    • Pets: every habitat is fed again, not only Shadow. The feed command sent a wrong number that only worked for Shadow, so Light, Earth, Fire and Water pets stayed at level 1. Thanks to ocsike2508 for the report.
    • Pets: a feed that does not take is now a warning in the log and pauses that habitat for an hour, instead of quietly skipping its pets for the rest of the day.
    • PandoraSF web shop: the daily sliders now go up to Unlimited, and a new hourly limit (4 by default, also Unlimited) holds even across a restart.
    • PandoraSF web shop: the mushroom reserve and the spending limit can each be switched off for the web shop only. Two purchases are at least a minute apart, and a failed purchase waits 30 minutes.
    • PandoraSF: a new Fast interval lets the bot wait as little as half a second between two rounds. Off by default; official servers are not affected.
    • Potions: only the strongest bottle of each kind is kept, the rest can be sold. A bag full of the same potions no longer blocks the gem mine and other rewards.
  7. 2.27.1

    • PandoraSF: the bot can restock hourglasses and Thirst for Adventure in the server's web shop. Off by default, with a daily cap each; the mushroom reserve always applies.
    • Beer: the slider goes up to 12. The bot stops at what the game allows your character.
    • Shadow dungeons are simulated with your three companions, and in the Tower the companions fight first, as they do in the game.
    • The Twister, the Tower and the Loop of Idols are no longer taken as finished after 10 floors; the Loop of Idols has 30.
    • Underworld: the Gold Pit is built past 15 once every other building is at 15. Fortress: the Gem Mine goes up to 100 and the Treasury up to 45 once the Fortress is at 20.
    • Gems: legendary gems count for your main attribute and Constitution only, as in the game, and a weapon gem no longer counts twice for Assassins.
    • Fight simulator: an opponent with the first-strike glove enchantment now strikes first in the simulation too.
    • Item choice: the learned item weights are fitted per class and rate Luck much lower.
    • Companions only get the enchantments that work for them (weapon and gloves). The others cost the full price and did nothing.
    • Guild: no more personal Treasury or Instructor levels once the guild counts the full 500 member points (official servers).
    • The Simulation skill type and "equip by simulation" decide more reliably, and gems can be ranked by simulation (new setting, off by default).
    • New settings, all off by default: choose dungeons by XP, measure close dungeon choices again, Auto skill points by price, save mushrooms for the griffin, and an event planner for hourglasses and free beer.
    • More new settings, off by default: the guides' underworld order, keep the Gem Mine small early, hit back at fortress attackers, dungeon keys and eggs first, pets and juice by class, epics first at the toilet.
    • Simulator page: companion fights show the companions before your character.
  8. 2.27.0

    • The learned models are for everyone now: Mercy SF takes no money, and donations unlock nothing.
    • No licences any more: no keys, no tiers and no supporter features, everything is in every copy. The hosted server no longer runs other people's accounts.
    • All pictures in the app are our own now. The game's artwork is no longer shipped, which also makes the download much smaller.
    • Phone: the app can run the bot itself. At first start you choose: run it on the phone, control your PC, or connect to your own server. Changeable under Settings, System; on Android the bots keep running in the background.
    • Scrapbook: no longer stalls on a new server. The search reaches a fifth of your level, the shared pool keeps its players and is asked again when it runs dry, and two lost fights no longer ban a player for good.
    • Only Scrapbook: always attacks. First everybody at or below your level, then upwards, the nearest level first, reaching further at once when nobody is left; its preset crawls three times faster.
    • The Class World portal above the four class dungeons is fought once a day, never with mushrooms.
    • City guard: no longer waits all day for a beer the bot cannot buy.
    • Push to your phone with ntfy, no account needed. Every kind of message can be switched per channel: pop-ups, Discord, Telegram, ntfy.
    • Phone: sign in with Google or Discord, and connecting to your own PC on the home network works.
    • Hall of Fame: star and ban buttons per row for favourites and the never-attack list.
    • New setting fields: raid start time, favourite guilds, underworld favourites, protected players as a list.
    • The optimisation assistant finds settings that lock each other out and can save its suggestions as a profile.
    • Arena: the risk slider also sets how much a loss weighs. Legendary Dungeon: escape costs measured per band of floors.
    • Guild invitations: a refused one no longer uses up the day's allowance, and "cannot do this right now" pauses inviting for half an hour.
    • Analytics: trained attribute values are shown apart from what items, pets and potions add.
    • PandoraSF: quests are skipped with hourglasses, the guild portal and pet duels work again, and potions are bought for silver.
    • Command line: --timeout, --retry, --proxy, --log-file, --stats, and --plan shows the item module's next step.
    • The unfinished advertisement module was removed, which also makes the download smaller.
    • Companions: gear goes only to companions that exist, and an equip the server takes without moving the item is not repeated. A full bag no longer blocks dungeons, the gem search and the wheel for days.
    • Twitch viewer: signing in to Twitch works again. The viewer told Twitch it was Chrome 131 while the engine underneath is far newer, and Twitch refused it as an unsupported browser.
    • Fixes: settings scroll as one page on phones, the worker answers the panel beside its main loop, and the early game no longer buys beer it cannot pay for.
  9. 2.26.5

    • The arena fights for album pieces again when many players have been scanned: a missing piece now counts in full. On the test fleet the number of arena fights doubled. Reported on Discord.
    • Companion gear can be upgraded at the blacksmith to a level of its own, and gear from a chosen upgrade up is no longer handed to companions. Off by default. Asked for on Discord.
    • Choose single characters at login, not only whole servers. Asked for on Discord.
    • Every switch on the notifications page works: advertisement offers, the album target and the trust counter follow their switches, and the first switch is the pop-up on this computer. Asked for on Discord.
    • The app rests in the background: pages that only show something stop asking while the window is hidden. Asked for on Discord.
    • A second program on the same account no longer makes the bot sign in every few seconds.
    • The blacksmith pauses for half an hour where it is not unlocked yet, and dungeons are only checked when something would fight them. The toilet, washing and the World Boss no longer ask again for what the server has already refused. The fortress counts wood and stone from attacks even above the warehouse limit. The arena no longer searches every few seconds while it waits for the free fight. Companions are no longer handed gear before they have joined through the Tower.
    • Phone app: an expired sign-in leads back to the login, and the header no longer covers the content. Pairing with your own panel on the home network works now.
    • Hosted accounts: a direct login with a server reaches the fleet with that server, a board shared from a hosted account keeps its wiring, and a setting changed on one device shows up on your other open devices.
    • The advertisement offer and the viewer's settings only appear in builds that carry the viewer, since elsewhere the offer could not be closed. Linking the phone to a computer: the computer now answers the phone's permission check.
    • The fortress no longer sends the Hall of Knights upgrade every few seconds when the server takes it and changes nothing, and the rest of the fortress gets its turn again.
    • "No watch before ten arena wins" only waits for an arena that is switched on and fighting. With the arena off, or finding nobody, characters used to stand idle all day instead of going on watch.
    • Web panel 0.3.2: the Windows file starts however it is opened, download links always fetch the newest file, and the schedule page says what it does. "Take it over" in the marketplace saves again, accounts with a proxy or a server work, and a failed login is shown at the account.
  10. 2.26.4

    • Arena fights are chosen by the honour they are expected to bring. A loss costs honour, so a fight that would cost more than it wins is skipped (the ten daily XP fights and favourites excepted), and your record against each opponent now counts. First fleet numbers: 54 % wins instead of 16 %, and plus 13 honour per fight instead of minus 2.
    • The fight simulator gets the demon hunter's revive right and simulates arena fights as arena fights. Mages no longer look like the easiest opponents.
    • Stop any fortress building at a level of your choice, for example the Gem Mine at 1 through the early game. "Never upgrade" also blocks a building at level 0, so it could not say that. Asked for on Discord.
    • Legendary dungeon: the armoury is used as a room and no longer holds up a run. It had stood still 34 times in 14 hours.
    • Progress: mushrooms and found items from quests, expeditions, pets, the underworld, the fortress, the Hellevator and dungeons are counted, and no XP is lost at a level-up any more.
    • Guild upgrades that cost mushrooms have their own switch, and every mushroom spender (mount, potions, wheel, gambling) keeps to the spending limit.
    • Pets are not fed twice after a restart. On PandoraSF the arena, the dungeons and the fortress run again.
    • Web panel 0.3.0: control your hosted fleet, a legendary dungeon page with the game's artwork, character cards, settings laid out like the app, the phone app can connect to the panel, and the arena shows the expected honour of every opponent.
    • macOS, iOS and Android are on the current version again.
  11. 2.26.3

    • The legendary dungeon moves at the server's own pace: about a tenth of a second per step instead of half a second, and no room holds it up any more. Mimics, skeletons, piles of rocks, the soul bath and the trial rooms each get the command that actually moves them, measured on our test fleet.
    • A calculator now makes each dungeon decision. It learns from your own runs what a monster, a trap and a failed flight cost on each stretch of floors, and it takes the move with the best outlook. The dungeon page shows the numbers behind every decision.
    • The dungeon calculator starts from what the fleet measured: on the first floors an escape fails about four times in ten, not two, a fight from floor 25 on costs about 14 % of your health rather than 19, and a key saves about half the fights. Poison counts as already lost, so the bot no longer fights with health it is about to lose.
    • Reviving with mushrooms in the legendary dungeon works. It used to send the wrong command, the server refused it, and not a single mushroom was spent. It stays off unless you switch it on, keeps your mushroom reserve and the per-run limit, and buys only as much life as the next boss needs.
    • The dungeon page is new: the game's own artwork, the path through the floors, the gems of fate and curses in play, and when the next boss is due. You can also choose how far a character heals before it goes back in, instead of always waiting for 100 %.
    • Class World is part of the dungeons. The four class dungeons (from level 250) are fought like any other: the bot simulates every open dungeon, light, shadow, Tower and Class World, and fights the one with the best chance. They share the rest period with the normal dungeons, so it is still one dungeon fight at a time. On by default.
    • Profiles by time of day, now in the desktop app too: play differently at night than during the day, and the profile switches by itself.
    • The guild buttons (attack, defence, hydra, portal) and the city guard work for every account at once, and now also from the web dashboard.
    • Mercy SF now speaks 36 languages. New: Portuguese, Hungarian, Slovak, Dutch, Danish, Swedish, Norwegian, Finnish, Romanian, Turkish, Greek, Croatian, Slovenian, Serbian, Ukrainian, Lithuanian, Estonian, Bulgarian, Latvian, Korean, Thai, Indonesian, Hindi, Traditional Chinese, Filipino and Vietnamese. The website and this changelog are now also in Portuguese, Hungarian and Slovak.
    • Updates reach every install. Android phones are told about new builds again: the app and the download page were looking for two different names, so no phone had been offered an update since the end of August. An open web dashboard now offers a reload when a newer build is live.
    • Level-up notifications are per character. Five characters with the same name on five servers used to share one counter and set each other off.
    • The pet dungeon waits for the free fight. A fight that was about to become free was sometimes paid for with mushrooms because the game's clock and ours were a minute apart.
    • Fixes reported in Discord: the fortress no longer waits for wood or stone it never produces, the gold pit shows its real amount, and the mine can be upgraded while the gem search runs (a new switch, off by default).
    • Settings: ten contradictions removed, sections that belong to a switched-off module are greyed out, and the build order can be moved away from Custom again.
    • The update window tells you what is new in your own language.
  12. 2.26.2

    • The guild portal no longer takes the rest of the guild with it. Once the portal is done for the day the server answers “you can only fight once per day”, and that refusal was treated as a module error, which ends the pass and stands the whole module down. The war, the defence, the raid and the hydra all sit below the portal, so for anyone whose portal was already fought they were never reached at all — every cycle, all day. That is why an attack could stay unjoined with every setting switched on.
    • The guild screen is fetched every five minutes instead of every ten. A newly declared war only exists for the bot once that answer arrives, so the ten minutes sat in FRONT of the ready-up delay rather than inside it: a war declared a minute after a refresh waited nine minutes to be noticed and only then started its wait.
    • Guild wars are joined again. 2.26.1 changed the decision from what the bot remembers to what the game's own battles_joined field says. Measured on the fleet: 23 real joins in the hours before, ZERO in the hours after, and nobody signed up in the game. That field says “both” for practically every member, so it means something other than “signed up for this fight”. The decision is back to the bot's own record, which demonstrably joins. If you are on 2.26.1, this is the reason to update.
    • The guild fight memory survives a restart, at last. It has been written to a file since 2.25.0 and never read back: the key contains separators and the reader split on them, so every line was discarded on load. That is the bug 2.25.0 set out to fix — restart the app more often than the ready-up delay and you never sign up at all.
    • Four buttons for the guild: join attack, join defence, portal, hydra. The same commands the bot sends, by hand — for when something looks broken and nobody can tell which part. They deliberately do not claim success: a server that takes a command has not necessarily acted on it.
    • A guild step that did nothing no longer ends the cycle. When the guild adviser had no recommendation it still finished the pass, so the raid and the hydra below it got nothing for as long as the battle cooldown was up.
    • The legendary dungeon shows the game's own icon, instead of a 166-byte gradient stretched into an icon slot — reported as “no in-game assets”, and it looked exactly like that. The page also says when a character cannot act in the dungeon because it is on a quest, a watch or an expedition, instead of promising a run that cannot start.
    • Switching on the legendary dungeon trace sticks. It was missing from the settings the app sends back, so saving any other setting reset it to off.
    • The polling interval means what it says. The slider offered 3 seconds, the engine used 5 and said nothing, and the command line refused anything under 30 — three floors for one number. There is one now, and it drops to 1 second while the speedrun is on, which is the mode where the waiting is the bottleneck.
  13. 2.26.1

    • Guild wars are joined again. The bot remembered that it had readied up instead of asking the game whether it had, so a single missed request meant a character sat out every war from then on and the log said “already readied up” 14,433 times against 38 real joins. It now reads your own line in the guild roster, which is what the game says rather than what the bot remembers.
    • The guild hydra says why it is not fighting. It was never stuck, but all five of its reasons were hidden in the debug log, so from outside it looked like nothing was happening. The reason is now stated once an hour, and the guild page shows the same sentence instead of claiming it is ready while the bot correctly waits. The one that catches people: no guild pet is selected, which only a guild leader can change.
    • An expired sign-on renews itself. A character signed in through an S&F account holds a copy of the account session, and when that copy runs out the server still accepts the login and refuses everything after it. Nothing renewed it, so the character signed in for ever and never got anything done: thirteen hours, 41,175 dead sessions in six of them, not one module reached. Signing in over and over without getting anywhere now also slows down instead of asking the game server thirty times a minute.
    • The app is visible on a Raspberry Pi. The ARM64 build installed, started, logged perfectly and drew a window of horizontal stripes: WebKitGTK on Wayland with the graphics driver a Pi has. ARM machines on Wayland are now given the X11 backend, and only when it is really there, so a Wayland-only session is left alone rather than pushed onto something it does not have.
    • Skipping a quest with a mushroom explains itself. The hourglass has always said which of its conditions stopped it; the mushroom said nothing at all. The one that catches people is the mushroom reserve, a different setting on a different page that silently outranks this one, and it is now named with both numbers in it.
    • Your supporter licence follows your account, not your computer. It used to be tied to one machine, so a second PC or a reinstall looked like a different person. It now works on up to three of your own devices, and a fourth is refused with a message that says what to do about it.
    • A fortress that is saving up no longer looks like a fortress that is broken. With your own build order the bot follows it strictly: if the top entry is expensive, it saves for that one and builds nothing else. That is what a build order means, but from outside it was indistinguishable from doing nothing, and it cost one person a day across 49 accounts. The fortress page now names the building it is saving for, and says that moving it further down the order gets the rest built instead.
    • Wood and stone production past level 10 is left alone while anything else still needs building. That has always been true and was invisible: the page offered a Quarry the bot was deliberately walking past. Both now read the same rule, so the page and the bot cannot disagree.
    • On servers that do not have daily tasks, the bot stops asking for them. PandoraSF answers that the command does not exist, once per character per pass, for ever.
    • The desktop app is available for ARM64 Linux, for a Raspberry Pi and boards like it. It has now been installed and run on a real Pi, which is where the Wayland entry above came from. It still sits under the x64 download rather than replacing it.
  14. 2.26.0

    • Characters could stand in the legendary dungeon for hours without moving. Three separate causes were behind it: a run that had beaten the boss was asked to choose a gem the game never offered, a mage skeleton that had been woken was looted instead of fought, and a run that had finished healing was told to carry on when it could not. One character repeated the same action four thousand times in six hours and recorded nothing.
    • A run that has healed out now starts a new one. A dead run does not come back, so the floor it reached is lost either way, and waiting for it cost the rest of the event.
    • The escape threshold no longer applies in a boss room. The game refuses to let anyone flee a boss, and every refusal ended that character's turn.
    • Companions are given gem sockets only if you ask for it. It used to happen to every companion whether the setting was on or not.
    • A mimic is touched rather than fought, and left alone when there is too little health to risk waking it.
    • Seven more parts of the game can be read from outside the app: fortress, underworld, tavern, guild, pets, mail and arena. Five of them say not only what the state is but what the bot would do, and when it would do nothing, why.
    • The worker can hand back a character's settings. It could take settings and never return any, so a dashboard could watch a character and start it, and could not change a single switch.
    • When supporter features stay off, the reason is shown. A refused licence used to be swallowed and the app simply said free.
    • The dungeon ledger says for itself whether enough has been measured to fit a model, and names what is missing when it has not.
    • The download page is rebuilt. The self hosted dashboard has a place of its own, every file carries its version and its checksum, and there is a section on what virus scanners say about an unsigned build and why.
  15. 2.25.1

    • Settings downloaded from the board could break the settings page. The board leaves out the personal fields on purpose, and a field that is missing is not the same as a field that is empty: the page tried to read a list that was not there and showed an error instead of your settings. A field left out now falls back to its default, and settings saved before this are repaired when they are read.
    • Characters did not join a declared guild war, sometimes for hours. The moment a fight was first seen, which the waiting time counts from, was only remembered while the program was running. Every restart made the fight new again and started the wait over, so anyone restarting more often than the drawn delay never readied up at all. It survives a restart now, and the log says once per fight when the bot intends to ready up.
    • Six switches promised to buy potions and a seventh quietly cancelled all of them from another part of the page. The master switch now sits at the top of the same section, says what it does, and the bot writes a line when it is the reason nothing is bought.
    • After a run died in the legendary dungeon, nothing happened any more. The check that says "the run is out of health, wait for it to heal" also fired during the healing itself, so the part that decides about healing was never reached and reviving with mushrooms never did anything for the people who had switched it on. The healing now says once per run how far along it is, instead of leaving the screen silent.
    • The legendary dungeon said "healing, 100 per cent" for a run that had just died. When the game does not say when the healing started, the old code read that as the first of January 1970 and worked out fifty-six years of healing. A missing start time is not nought per cent and not a hundred: it is unknown, and the panel says so now instead of making a number up.
    • When the bot buys no potion, it now says which of the eight conditions stopped it: a bottle size switched off, a mushroom price, a gold reserve, a bigger one already running, or the same one already in the bag. Twice somebody reported a potion sitting in the shop with the money right there, and nothing anywhere said why.
  16. 2.25.0

    • The four class dungeons that the game opened at level 250 can now be fought. They are off by default: the game grants no experience for them yet, and whether they share the rest period with the normal dungeons is stated nowhere. The switch sits on the dungeon tab under Class World.
    • Win chances in the Twister were wrong, and always in the same direction. The enemy table held no damage for any of its thousand floors, so every enemy there counted as harmless and every fight looked certain. All thousand floors now carry the real values.
    • Two shadow dungeons carried placeholder values instead of real ones: Retro TV Legends and The Meeting Room were listed at level 450 with 405,000 health, while the same floor in the light version sits at 880 million. The Sandstorm was also missing its floors 901 to 1000. The whole enemy table has been fetched again: 2,750 enemies became 2,890, and where 1,794 of them had a name, 2,888 do now.
    • The artwork for the new enemies and items is in. Forty four enemy pictures and three hundred and twenty item pictures were missing, among them every enemy of the class dungeons.
    • Fifty achievements the bot did not know about. The game reports 142, the list here held 92, and the test that was supposed to guard it compared the short list against itself. The five achievements of the class dungeons were among the missing ones. Names and conditions now come from the game's own text, so they say what the game says: eleven of the old ones were wrong, among them one called Alter Ego that the game calls Explorer.
    • The world boss now buys the ammunition that is worth the most, not the one at the top of the shelf. Until the game made ammunition damage a percentage, two offers could not be compared at all, because the damage depended on the boss's own health. Now the same number means the same thing everywhere, so the choice is damage per catalyst.
    • A character on city guard or out on a quest was still sent into the legendary dungeon, where nothing it did could land. Four of them stood in the same room for seven hours, sending a command every seven seconds that the game accepted and ignored. The dungeon now asks the same question every other part of the bot asks before it moves, and there is a second way out to try for a room this build really does not know.
  17. 2.24.1

    • The legendary dungeon showed the health of a run that had already died, and showed it as a negative number. The value the game sends after a killing blow can fall below zero, and while a run is healing it stops moving at all: the game counts a recovery of 4.17 per cent an hour instead. Both are fixed at the source, so every page that shows health shows the right one, and the dungeon panel now says how far the recovery has come.
    • A character whose session was taken over by a login somewhere else could sit for hours doing nothing. The guard that protects a working session from one server's wording had no way out: it held a session that was already gone and never logged in again. It now checks its own assumption, and a character that gets nowhere for sixty commands in a row logs back in instead of waiting.
    • The bot can finally learn what an item is worth. Judging that needs pairs of items to compare, and the bag is almost always empty because gear gets sold or equipped at once. It now takes the shop's twelve items as well, which is the same question the buy decision asks anyway.
    • The command line can change amounts, not only yes-or-no switches. Beer amounts, the mushroom reserve, the poll interval and the daily wheel turns can all be set directly, each within the range its slider allows. Three switches joined the list too: buying beer on event days, letting beer spend against the mushroom reserve, and applying the learned fight model.
    • A new command says whether the learned models are arriving at all: `mercy-cli --models`. They are gated on a licence and delivered from the server, so the chain can break in three places and only the last one shows. It names the one that is shut instead of repeating the outcome.
    • The status command reports which server events are running, spelled the way the settings spell them. That matters because ticking anything under "which events are worth a mushroom" replaces the default list of five, and a character that stops buying beer because the running event fell out of that list looks exactly like one that is broken.
    • The command line can answer fifteen of the application's own panels: `mercy-cli --views` lists them, `mercy-cli --view <name>` answers one for a character. Legendary dungeon, hellevator, world boss, achievements, the learned fight model, what each equipment slot is worth, and more. Each one is the very function the application draws its page from, not a second implementation. That is the point: a number worked out twice is a number worked out differently sooner or later, and then two windows of the same installation disagree.
    • `--status` carries eight more sections from the same game state: the legendary dungeon, the hellevator, the world boss and its shop, the windows the protocol gives for both big events, the blacksmith, the dungeons as a count, the fortress building levels, and the inbox. The fortress resources are deliberately left out: what is there to collect is not in the game state but has to be worked out from the last reading, the production rate and the time since, so a raw number would be wrong at every moment somebody reads it.
    • `--config` no longer prints the Discord webhook and the Telegram token. Both are credentials: whoever holds the webhook writes into the channel, whoever holds the token is the bot. They sat in plain sight in the output of an ordinary read command, and any tool that asked for the configuration got them. Whether one is set is still shown, because that is the question an interface actually has. Setting them is unaffected, since whoever writes one already knows it.
    • The console banner said v1.7.0 on a build that answers 2.24.1 to `--version`. The number sat there as literal text because the frame around it is drawn out of spaces and an inserted number would have shifted it. It now comes from the build and is centred inside the box, so the frame still lines up. Whoever reads a banner has just started the program and is looking at the menu below it; whoever does notice concludes their install is years old.
  18. 2.24.0

    • The legendary dungeon gets a page of its own while the event is running. It shows the floor and the health with the line it runs at marked on the bar, the two doors with the one the bot is about to walk through, what is in the room, every blessing and curse with what is left of it, what the next revive would cost against what this run has already spent, and what has been found. Above all of it, one sentence saying what happens next.
    • Two faults that could have cost a whole legendary dungeon event, in silence. The dungeon was treated as closed whenever the server had not yet filled in its closing time, and a theme this version has no name for switched the event off without a word, which is the likeliest thing to happen on the first day of a new one. The first is fixed; the second is still refused, because entering needs a theme, but it now says so instead of doing nothing quietly.
    • The gem settings are rebuilt around one question at a time. Legendary gems are their own kind at last: they used to follow the black gem tick, so turning black gems off threw legendary ones away too, and the tick meant to say otherwise did nothing. Whether a gem is worth keeping and whether it jumps the queue ahead of an attribute gem are now two separate answers, and the three ways of choosing attribute gems are one chooser instead of three settings quietly overruling each other.
    • The album on one account could not be read, and an album that cannot be read is treated as missing, which switches off hunting for album items altogether. Nothing said so. The text was perfectly good; it was written in the other of the two alphabets this encoding has. All four are accepted now, and a refusal names the character that caused it.
    • A finished quest was read as a broken response. The reward arrives in a shorter block than an item needs, so the whole update failed, the quest module got an error instead of a finished quest, and it stood down for a minute. Every time. The same fault in the underworld's collection is fixed with it.
    • The underworld collects first, and collects everything that is due. It used to stop after the first thing it found, so gold and souls took two visits when the second one often never came.
    • The learned models are no longer part of the download. They are fetched while the app runs, held in memory and never written to disk, and they are for supporters of the project. Everything the bot does, it does without them: they correct numbers it already works out for itself, and without them it uses those numbers exactly as it did before any of this existed. There is a page that says which models exist, which are fitted and which are still only measuring, and it says all of that whether or not you are a supporter, so the decision can be made on what is actually there.
    • A correction is only applied if it beat doing nothing. The models trained across every character have always had to clear that bar before being published; the fit a character makes of itself never did, and two of them had fitted themselves into corrections measurably worse than leaving the number alone.
    • Notifications get a tab of their own, a switch for each kind, and a way to ask what happened while you were away.
    • The Premium licence is gone from the app, because it does not exist. Four pages still offered to sell one that would unlock modules the reader already had, and a page listed five features as supporter-only that have been free for months.
    • Quieter logs, by a lot. Three warnings between them fired several thousand times a day while saying nothing useful, and one of them was the album above, describing a string that was not wrong. Warnings that always fire are warnings nobody reads.
    • Fewer requests for the same work: a ladder nobody has changed is not read twice, a search that found nobody three seconds ago is not run again, and panels nobody has open are no longer kept fresh.
    • The app is complete in all ten languages again. The rebuilt gem page shipped in German only, so eight languages promised a finished app and showed an English page in the middle of it.
  19. 2.23.4

    • The offer to watch an advertisement now waits for a quiet moment instead of arriving on a timer. Accepting one stands the bot down for as long as the window is open, so it is only offered when nothing is ready and nothing is due for five minutes. A character in the middle of a quest counts as quiet: the quest runs on the server's clock and the bot is only waiting for it.
    • Forty-eight pieces of text were still English in every language, among them the item rarities, all the enchantment descriptions and every preset name. They are translated now, and the check that should have caught them had three blind spots which are closed.
  20. 2.23.3

    • The gem mine gets upgraded again. A new search started the moment the last one ended, and the mine cannot be upgraded while a search runs in it, so it stayed at whatever level it had reached. The search now stands aside when the mine is the next thing due, and starts again by itself once the upgrade is under way.
    • A settings check. It looks over the selected character's settings and says which ones are doing nothing, which ones are holding each other back, and what would help, then applies only what you tick. It runs on your own machine, offline, and costs nothing.
    • The win chance the bot decides on is now corrected from the first fight. A fit trained on 6,583 real fights found the simulator four points optimistic and about twice as confident as the results support. Until now a character ran uncorrected for its first forty fights; it starts on the trained figure instead and switches to its own once it has one. Turning the calibration switch off still gives the raw number back exactly.
    • Three sliders that set a character up: how much risk to take, how freely to spend mushrooms, and whether you are playing for experience, items or rank. Everything downstream of those is worked out for you, and only the settings they decide are touched.
    • Every arena fight now records what the matchup looked like, not just what was predicted and what happened: the level gap, each attribute as a ratio, health, armour, damage, both classes, who strikes first. Nothing reads it yet and it costs no extra request. It is what a model needs in order to learn when the simulator is wrong rather than only that it is.
  21. 2.23.2

    • An account that could not be reached when the app started comes back on its own. It used to stay missing until the app was restarted or the account was added again, and a restart during the same outage did not help.
    • The phone app sees new versions again and offers them.
    • A notification that Discord or Telegram refuses is written to the log with the reason, so a webhook with a typo in it no longer looks like a quiet evening.
    • The CLI reference on the website is displayed properly again.
  22. 2.23.1

    • Every account comes back after the connection drops, not just the first. A character signed in through the account sign-on holds a copy of that sign-on, and the copy expires. Logging in with an expired one fails as often as it is tried, so the second account stayed offline while the first returned. It renews the sign-on now and tries once more.
    • The beer the Thirsty Wanderer belt pays for is drunk. The first beer of the day costs nothing while the belt is worn, so the mushroom reserve never holds it back. If it turns out to cost something on your account, that is noticed on the first one and it is not bought that way again.
    • A beer that cost nothing is no longer taken as proof of a VIP pass. The belt reads exactly the same way once a day, and treating it as a pass waived the reserve for the rest of the day and charged a mushroom for every beer after the first.
    • The Gold Pit reports gold. It pays in hundredths of a gold piece and that number was printed beside the word Gold, so a collection of 228 gold was announced as 22,865.
    • A character waiting its turn says so. Where only one thing can happen at a time, the quest steps aside so the arena or the dungeon can go first, and it only mentioned that where nobody could read it. From outside, a character waiting looked exactly like one that had stopped.
  23. 2.23.0

    • Worlds running an older build of the game are played properly. The fortress, the potions you have running, your mount and the days left on it, the dungeon's own cooldown and the arena's opponents were all invisible before, so the bot behaved as though none of them existed.
    • A dungeon fight on those worlds no longer costs mushrooms. The daily fight always read as free, so the bot asked for it and the server charged rather than refusing. Two hundred and four mushrooms went that way in a single day on one character.
    • One mount at a time. The days left on it were not being read, so every mount looked expired and a second was bought on top of the first.
    • The fortress trains units again. Training was skipped for the whole of any building upgrade, and the bot builds almost continuously, so an army spent on one attack never refilled.
    • The underworld reports what it collected instead of what it guessed was waiting. A pit that holds 35,773 was reporting 146,355.
    • The gem mine names what actually arrived. It used to name the gem it had been digging for, so a dungeon key was reported as a gem.
    • Legendary gems have a switch of their own. They shared the one for black gems, so turning those off turned these off with them.
    • The Arena Manager can sacrifice on the clock, or once the offer reaches a share of the runes you already hold. Every strategy waited for a fixed amount before.
    • The bot can be started again after you sign in to the game by hand. Ending its session that way left it unable to reconnect, and pressing Start did nothing.
    • Beer says why it is not being bought, and where today's allowance came from. The reason was already known and written down where nobody could read it.
    • Characters that share settings stay linked, and characters on different worlds can no longer be linked, because they do not have the same features.
    • A setting that did nothing has been removed. Every switch on the settings page is now checked against the code that reads it.
    • The confirmation e-mail sends again.
  24. 2.22.41

    • A crash now says what caused it. The report used to look up its own symbols first and sometimes did not survive that, leaving a note about itself and nothing about the fault.
    • Switching to a character on a server without a part of the game now leaves that page instead of showing it empty.
    • Settings for a part of the game the server does not have are left out of the pages that every server shares.
    • The Add Account button is reachable with the account list open: the panel scrolls now.
    • A guild ranked above 65,535 in the hall of fame no longer breaks the whole lookup.
  25. 2.22.4

    • Play on servers other people run, not only the official ones. Type the world when you add the account and the rest follows.
    • The app now shows only what the server you are on actually has: pages and settings for parts of the game an older server does not carry are left out rather than shown empty.
    • A character whose backpack the game has not described yet is no longer treated as one with a full backpack, which used to mean it never quested.
    • The guild list counts the people in the guild. Invitations nobody has accepted are shown separately instead of filling it up.
    • Every mushroom that leaves your account is written to the log with the command that spent it.
    • An inbox the server will not let you empty no longer takes the whole cycle, so the wheel, the calendar and the daily task rewards get their turn.
    • A dungeon or a portal the server refuses is set aside for a while instead of being asked for again every few seconds.
  26. 2.22.3

    • Underworld: your own build order is followed again. The even order used to run after it and replace your choice with the cheapest building.
    • Arena Manager: it upgrades again. It kept picking a building the game will not sell, so the money it collected was never spent.
    • Arena Manager: write your own build order, building by building, each up to the level you want.
    • Fortress, underworld and Arena Manager: name the buildings no order may ever upgrade.
    • The extra beer the Thirsty Wanderer belt grants is drunk now instead of being left standing.
    • Pet fruit: 0 on a habitat now means it is left alone. It used to mean brewing as often as possible.
    • The gem mine says when a search is beyond its silver instead of asking for one for ever.
    • Fewer refused requests: no unit training while the fortress is building, and no beer with an empty mushroom balance.
  27. 2.22.2

    • Every .deb install can update again. A copy installed from the .deb was being offered the AppImage, refused it as the wrong kind of file, and said so only as "invalid updater binary format". It had been that way on every update since the .deb existed. There is one update file per way of installing now, and each one names what its own installer will accept.
    • A network blip while the app starts no longer costs you an account. One whose login could not reach the server was dropped and stayed gone until the app was restarted. It is tried three times now, and only when the failure is the network rather than the password.
    • A code that has stopped working retires itself. Once enough accounts that had never used it are refused, it comes out of the list, so nothing keeps trying a code the game no longer honours.
    • The phone app ships with every release again. It was built by a separate job that had to be started by hand, so a release shipped everything except it unless somebody remembered, and for one release nobody did. It is part of the release now, and a release without it does not go out.
  28. 2.22.0

    • The Lucky Wheel stays still when you have switched it off. A daily task that wanted a spin used to take the free turn anyway, and so did the Heavy Spinner achievement. One setting decides it now, wherever the spin would have come from.
    • A finished city guard shift is collected even with Auto Quest switched off. Collecting it lived inside the quest module, so with quests off the shift ran, finished, and sat at 100% for ever while everything else kept working.
    • You can send a character on a city guard shift by hand, for one, five or ten hours, without waiting for the bot to decide it is idle.
    • You choose which events are worth buying beer for. Twenty events with a line each saying what it is, and the five it always counted are still the default if you change nothing.
    • Twitch Drops runs several accounts side by side, each with its own login, so more than one account can be earning at once. Drops are earned per Twitch account, so two viewers on the same account still earn one lot.
    • The window comes back from the tray with a video still playing in it, and minimising no longer freezes the app while a viewer is open.
    • The gem division names the attribute it will actually use. The first share is your character's main attribute, which is Strength on a Warrior and Dexterity on a Scout, and the screen said 'main attribute' rather than which one that is.
    • One rule decides how much beer a day. The event amount raises the everyday amount instead of replacing it, so an account with beers set for every day and nothing set for events no longer stops buying the moment an event starts.
    • A crash that never reaches the usual handler now leaves one line behind saying what it was, in crashes.log beside the ordinary log.
    • The dice game stops after its two rolls. It read a finished game as a game still waiting and sent a third roll, which the server refused and which put the whole module to sleep for a minute each time.
    • Advertisements is switched off for now and says so. It opens the client, presses play and signs itself in, and the last stretch is not steady enough to leave running unwatched, so it is off rather than half working.
  29. 2.21.5

    • The Tavern page shows the server's advertisement trust counter. It is a number the game sends alongside an advertisement reward, it goes down, and on every account seen here it has never gone back up. It was previously visible only in a build made for working on the advertisement module, which is to say nowhere, and it is the one value that would explain what the game actually counts. Nothing reads it or decides anything from it. It is shown.
  30. 2.21.4

    • The Twitch viewer runs inside the Twitch Drops tab now, not in a window of its own. It is still Twitch's own site rather than an embedded player, so the login, the watch time and the Drops inventory are the same ones a browser would have. Switching to Rewards or Settings shrinks the stream into the corner instead of hiding it, because a stream that stops playing stops earning. The separate window is still one button away, for watching while the rest of the app is on screen.
    • The tab shows what you have earned. Which account is signed in, the drops still in progress with the minutes watched against the minutes needed, and the drops already collected with the day they arrived. It is read out of your own Twitch session in that viewer and goes nowhere else.
    • Three smaller things on the same tab. The viewer can be closed again, which it could not: the page had no close button and the X on the old window asked Twitch's page for permission to go, which a page with a video player in it can refuse. The two switches take a click anywhere on their row instead of only on the switch itself, which is a small target at the far right and looked like a setting that refused to change. And logging in to Twitch and linking the game account are buttons now instead of a sentence telling you to go and find them.
    • The app no longer freezes when the Twitch viewer is opened. Building a webview hands the work to the main thread and then waits for it to come back, and the command doing the asking was running on that same thread, so the answer could never arrive: everything stopped, with no error and nothing to click. Every command that touches a webview now runs off the main thread, and a test refuses any that does not.
    • The Twitch account has its own place under Settings on that tab. Who is signed in, a way to link the game account, and a way to log out. Signing in happens once, on Twitch's own page inside the viewer: the session is kept on this machine, so closing the viewer, switching to the separate window and restarting the app all leave you signed in until you log out there yourself.
    • The rewards list works, and the corner viewer shows the stream rather than the page around it. The inventory request asked Twitch to send cookies, which Twitch's API does not accept alongside the open origin it answers with, so the browser threw the answer away before anybody saw it: the account is named by the token in the header, and that is what it sends now. In the corner there is room for the player and nothing else, so the rest of the page folds away and the stream fills the rectangle.
    • The game account is linked in the game, and the button now goes there. It pointed at Twitch's connections page, which lists what Twitch has connected and never had Shakes & Fidget on it. The link is made under Settings, S&F Account, Twitch Drops, Connect Twitch Account, and the button opens the game in your own browser, where you are already signed in to it. The Twitch login button also turns into a logout button once you are signed in.
    • The corner player follows you to every other tab and can be dragged wherever you want it. It used to belong to the Twitch tab, so leaving the tab took the stream off the screen, and a stream that stops playing stops earning. It belongs to the app now. Drag it by the strip along its top, which is the only part of it that is ours: the rest of that rectangle is Twitch, and it takes every mouse click before this app hears about it. Where you put it is remembered.
    • Logging out actually logs you out. Twitch has no logout address, and everything after twitch.tv/ that is not one of their own routes is read as a channel name, so the button asked for the channel called logout and Twitch answered what it answers for a channel that is not there: suspended or unavailable. Nothing was ever wrong with anybody's account. The session lives in the cookies, and that is where it is ended now.
    • The drop pictures show up, and linking the game account opens the game here. The pictures come from Twitch's image host, which the app's content policy did not allow, so the rewards list drew a row of broken icons and said nothing about why. And the link button now opens Shakes & Fidget in a window of the app's, as the account you have selected: its bot stops first, because the game rotates the session id on every login and a bot and a game client signed in as the same character take turns throwing each other out. Closing the window starts the bot again, if it was running.
    • Twitch Drops is marked beta, in the sidebar and on the page itself. It works, and it reads Twitch through Twitch's own page rather than through anything this app controls, so what it reports is only as steady as what that page hands over. It comes off beta when enough people have run it for long enough to say otherwise.
    • An allocation that cannot be served now leaves a note before the process dies, and the first line of every log names the version. Several crash reports have arrived as a log that stops mid-sentence, with no panic and no crash file, because that kind of death is not a panic: when memory cannot be found the process is aborted outright, with no last words. Everything now allocates through a wrapper that writes down any request too large to be anything but a number believed from outside, and any request the system refused, with the line that asked for it.
  31. 2.21.2

    • New: a Twitch page, under Community. It says whether the official Shakes & Fidget channel is live, with the title, the game and how many are watching, and opens Twitch in a window of its own so the stream can run beside the bot. It is Twitch's own site in that window, not an embedded player, so the login sticks between restarts and the watch time counts where Twitch counts it. It opens by itself only if you ask it to; that switch is off to start with. The page also has the claim page one click away and says in four steps how a drop reaches your character.
    • Dialogs that float over a page stopped being see-through. The update prompt was drawn on a five per cent film, so its release notes were read through the settings page behind them, switches and all. It was three films deep in places: the panel, the line inside it and the Later button. The advertisement prompt had the same defect.
  32. 2.21.1

    • Fixed a crash that left no trace. The app builds its fight list to whatever number sits in the key the server sent, and two of those keys carry no limit, so a key naming fight four billion asked for seven hundred gigabytes of memory. An allocation that large does not report an error, it ends the process at once: nothing is caught, nothing is written to the crash log, and on Windows there is no console for a last word either. The application simply disappears, which is all anybody could describe. The number is now capped at a hundred, which no real response comes near, and the key is written to the log when one goes past it.
    • Fixed: a gem your ratio excludes is sold now. There are two ways to say "not this type": the per-type ticks, and a share of zero in the ratio. Everything that sockets gems honoured both, but the one rule that lets a gem past the free-slot reserve asked only about the ticks. So somebody whose ratio was Dexterity and Constitution kept getting Strength gems held in the bag until it was nearly full, while every other part of the app agreed they were rubbish.
    • The fortress gem mine no longer sounds like it is failing. It ended every collected gem with "was wrong: announced Constitution for a Strength gem", which describes a bug that was fixed long ago and reads as one happening right now. Both readings of the field stay in the line, because that is what settles the question in one look if the game ever renumbers it.
    • New: the phone app says when a newer build is out. It had no way of knowing before, because the updater the desktop uses does not run on mobile at all, and the app is handed out from the website rather than a store. It now checks the same download list the site is built from and offers to open the APK; Android's own installer asks whether to install it. It never installs anything by itself, and that prompt is the point: it is the system's, it names what is being installed, and it cannot be skipped.
  33. 2.21.0

    • Every setting now says what it does. A hundred and four controls had a name and nothing else, and a name is not enough when the control decides how your character spends its day. Each one carries a plain sentence now, in all ten languages.
    • New: take only part of a preset. Applying one used to reset every setting it did not itself name, so liking its fighting rules meant losing an evening spent on the fortress. The six areas the settings page already groups by can be ticked one at a time, and the ones you leave out keep what they have.
    • New: a quick setup of seven questions that leaves nothing unset. The older wizard asks seventeen and touches only what it asked about, which is right for adjusting a setup you already run and wrong on a first run. Skipping a question answers it with the suggested answer, so pressing straight through still ends in a working setup.
    • New: the speedrun. A day gives a fixed amount of thirst and no setting makes more of it, so the mode is a list of refusals: the fortress, the underworld, pets, the arena manager and the side games stand aside while it runs. It never spends a mushroom by itself, and switching it off puts everything back.
    • New: the battle preview can be corrected against what actually happened. It works out your chances from what both players show, and what they show is not all of it. Every fight is recorded either way, and the correction learned from those records can be switched on once there are forty of them.
    • Fixed: a bag full of gems still sold nothing. Selling gives way to a gem that could still improve one of your characters, and for a gem of your own main attribute that is true of every one that ever drops, so the bag filled and the character stopped. When nothing else in the bag can go, the weakest of those gems now goes. A first attempt at this shipped covering only gems whose type you had ticked by hand, which is off by default and was never the bag being reported.
    • The scouted win chance now says what it compared. It simulated a fight that never happens, treating an arena match as an ordinary one, and it arrived as a bare percentage with nothing beside it, so a hundred per cent against somebody far below you was the right answer and read as a broken one. It is an arena fight now, over a thousand runs instead of two hundred, with your level, attributes, health, armour and damage against theirs underneath it.
    • The scouting window no longer reads as see-through. The panel itself never was; what showed through was the dimming behind it, at sixty per cent, through which the whole page stayed legible.
    • The marketplace controls are one panel. The ordering strip and the four filters were two bare rows stacked with a gap, running straight into the first card, and stacked like that they read as eight controls of the same kind.
    • New: switch off log files entirely, under Performance. The log view also stops inventing its count: it said five thousand entries for everybody because that was a constant in the page, sitting beside a setting called "log lines kept in memory" that it ignored. It now holds what you asked for and draws the last three hundred, in both performance modes.
  34. 2.20.16

    • This one is a beta. It is not offered as an automatic update: it is there to be downloaded on purpose by anyone who wants to try it early.
    • Settings you change now actually reach the server. If your accounts run on a server instead of on this machine, every settings change ever made from the app was quietly thrown away before it was sent. The page said saved, and the bot never heard about it.
    • The phone app works. Nothing could be saved at all, the marketplace opened with an error, the whiteboard never finished loading, and the account list was three times wider than the screen, which is why it looked like it was showing the guild name where the character name belongs.
    • The phone uses about a tenth of the data it did. It was being sent the complete state of every character every thirty seconds, including the twelve nobody was looking at.
    • New: use this app as a server. Switch it on in Settings and your phone drives the bots running on this machine directly, with nothing in between. The connection is encrypted and asks for a pairing code once, so it is safe on a shared or public network.
    • On a phone, Back now closes the menu instead of closing the app, and the server address is remembered so it does not have to be typed in again.
  35. 2.20.15

    • The processor use while navigating the app is fixed, and this time it was measured rather than guessed. Two people reported it on Linux, one noticing it settles down on the Settings page, which is the one page with nothing that loops. Every glass surface was blurring whatever sat behind it, three hundred of them, and a dozen animations ran forever so the window never went idle and paid for all three hundred again every frame. On a machine with no graphics card, the same window that burned three processor cores now uses about a thirteenth of one.
    • New: a Performance section in Settings, holding everything that decides what the app costs. Performance mode, which stops decoration that moves on its own and keeps only the character on screen in memory. How many log lines are held for the log view, which was five thousand and fixed and is the largest single thing the window holds. And what the log folder may take up on disk.
    • That last one is now a real number instead of three multiplied together. It used to be half a gigabyte per file, twice for the rotated copy, times ten days of retention, which allowed ten gigabytes: somebody reported eleven, so nothing was broken, the design was simply being met. The budget is one gigabyte and the oldest files go first.
    • One line was most of your log. A character standing an hour of city watch had nothing new to say about it and said it on every pass anyway, four hundred and eighty eight identical copies for a single character in two hours. It now speaks when the decision changes, and otherwise every ten minutes.
    • The log now says why a mushroom purchase did not happen. There are three gates, the switch, the reserve and the spending limit, and only the switch is visible from outside. When the reserve or the limit refused, everything fell back to the free action in silence, so there was no way to tell a switch that was off from a reserve of twenty five with twenty seven in hand.
    • The Mushrooms page is sorted. It was thirty one controls under nine headings of the same weight, which reads as none, with Beer appearing twice and the two limits that govern every other row carrying no heading at all. Six groups now: the limits, skipping waits, buying fights, beer, buying things, gambling.
    • New: buy arena fights only while the ten daily experience fights are unspent, then stop for the day. This is the deliberate opposite of XP First, which waits for a free fight because that one gives the same experience for nothing. Right if you are minding your mushrooms, wrong if you want the ten done early.
    • New: buy fights while the album is still filling, and stop when there is nothing left to win. It still obeys XP First, so it will not spend where a free fight would have done.
    • New: finish the gem mine search early. This has worked inside the app for a long time and had no switch anywhere, settable only by editing a file or importing somebody else's setup.
    • New: finish fortress buildings and underworld upgrades early with mushrooms. The game does not tell us this price, so it is worked out from the gem mine's rule and the real cost is written down every time. It only switches itself off if a bill arrives at more than three times the estimate, which would mean the rule does not describe it at all. Both start at never.
    • Fixed: zero beers did not mean zero beers. Drinking the beer a task chest grants is on by default and added to the daily beer allowance after it was worked out, so an account that had claimed a chest bought beer on a configuration nobody had touched, at a mushroom each. The slider says nought means never buy beer, and it means it now. Saying none normally and some during an event still works.
  36. 2.20.13

    • Fixed: a character with no guild could never found one. Founding is the one thing the guild part can do without a guild, and the daily portal check sat in front of it and left the whole thing whenever there was none. So the character who most needed it was the one guaranteed never to reach it. Eight of thirteen test characters had sat guildless for days with the setting switched on.
    • The app stops writing gigabytes to disk. It saved a full copy of the game state every five seconds while the window was open, and on Linux that goes into a database whose log had grown to 11 GB on one machine. It is kept in memory now, and the old files are cleared out once at startup.
    • The high processor use while browsing the app is gone. Two things caused it and both were the same shape: work done over and over on the main thread. The save above, and the log page asking for all five thousand lines every two seconds instead of the handful that were new.
    • Dungeons stop asking the server for something that cannot have changed. The daily fight is on a timer the app already knows, so it no longer refreshes while that timer is hours away. On thirteen characters that was roughly 1,500 pointless requests every ten minutes.
    • New: the fortress can send what a fight actually needs instead of the whole garrison. The game itself says how many soldiers an opponent takes, and against somebody who has built no fortifications that is a handful. There is a matching switch for the opposite case: when the fight needs more soldiers than you own it is lost before it starts, so a token force loses it cheaply and draws a fresh opponent.
    • The soldier sliders move one at a time instead of ten.
    • The gem shares are gone. There is one bar now, holding exactly the sockets the character has, and you drag the dividers to split them. The numbers on it are sockets, not ratios, and they always add up. A switch decides whether the plan names the attributes for this character or is written once for all of them.
    • Black gems sit outside that division entirely. They raise every attribute at once, so a black gem suits whatever a socket was meant for and is taken whenever it is the best one you have. It takes no share and costs the division nothing.
    • Fixed: the send report window was see-through, and it never said whether the report arrived. It says so now, and it keeps your text if it did not.
    • One player declining a guild invitation no longer stops the rest of the guild work for a minute.
  37. 2.20.10

    • Black gems are out of the gem division entirely. They raise every attribute at once, so a black gem satisfies whatever a socket was meant for and can never be the wrong one: it now takes no share, costs the division nothing, and is accepted whenever it is the best gem you have. The bar decides only the sockets black has not already claimed.
  38. 2.20.9

    • Same as 2.20.8, under a new number. Two slightly different builds briefly went out as 2.20.8, so this makes sure every install ends up on the same one. Nothing else changed.
  39. 2.20.8

    • Fixed: the idea board on the website refused everything. Every form on the site answered "cross-site submissions are forbidden", so nobody could ever post an idea or vote on the roadmap. It had been failing since the site moved behind its current setup, and the board being completely empty was the evidence nobody read.
    • Fixed: the send report window was see-through. Its background was mostly transparent and the log scrolled behind the text you were typing.
    • The report window now says whether the report actually reached us, and stays open with your text intact if it did not. It used to close either way and tell you nothing.
    • Each gem share now says what it turns into on the character you are looking at, right under the slider. A share is not a count: six and three is six and three sockets on a nine socket character, and four and two on a six socket one. Adding a third number moves the others, which is easy to miss when the first two happened to add up.
    • The gem shares are gone. There is one bar now, holding exactly the sockets the character has, and you drag the dividers to split them. The numbers on it are sockets, not ratios, and they always add up. A switch decides whether the plan is written for this character with the attributes named, or for all of them with the first slice meaning whatever that class fights with.
    • Black gems come first now. They raise every attribute at once, so they are not one option among six competing for a proportion: you say how many sockets they get, those are taken off the top, and the bar divides what is left. It is a count, so 9 means nine of them, which is what everybody read the old number as and never got.
  40. 2.20.7

    • New: a guild adviser. It reads the guilds your crawler has already met and says which one to attack next, with a win chance and how much of that guild it has actually measured. It says raid instead when that is the better move, and always says why.
    • New: the guild can run itself. Found one under a name you choose, keep its description current, invite players the crawler saw without a guild, and run attacks, raids and the hydra to a schedule. Buttons your rank does not allow are greyed out with a note saying whose they are.
    • New: gems by ratio. Seven main attribute to two constitution to one luck becomes exact socket counts on every character, whatever number of sockets it has. A zero means never, and nothing is pulled out of a socket to reach the ratio.
    • New: a shared player index, with a switch. Turn it on and the players you crawl go to a pool for your game server, and the pool comes back, so a new character starts with thousands of players instead of spending its first hours building the list. What travels is what the hall of fame shows anybody. Your album never leaves your machine.
    • New: choose which characters the app logs in with. A character you play by hand stays yours.
    • New: hours for the town watch. Set a window, and inside it the watch can run without waiting for the day's motivation to be spent, so you can save the motivation for the evening.
    • New: an order for the arena. The ten daily experience fights first, then the album, then the hall of fame, or whichever order suits you, each with a minimum win chance you set.
    • The crawled player pool survives a restart. It used to live in memory, so every start threw away tens of thousands of players and read the hall of fame again for what the last run already knew.
    • The guild page shows the other guilds on your server: how many members of each the crawler has met, what they are worth on average, and the strongest one seen. It costs no extra requests, because every player lookup already said which guild that player was in.
    • The app goes quiet when you are not looking at it and wakes the moment you are.
    • Fixed: a finished town watch is collected even with quests switched off. It used to sit at 100 percent for ever and block everything else in the tavern.
    • Fixed: the start time now holds expeditions back as well as quests. On most accounts it was doing nothing at all, so the day's motivation was spent minutes after the reset.
    • Fixed: gems of a type you chose not to keep are sold instead of filling the backpack, and gems are replaced in every socket rather than only the ones holding your main attribute.
    • Fixed: readying up for a guild fight happens once. It was sent again every few seconds, and each one stopped the raid, the hydra, the invites and the adviser from running until the fight was over.
    • Fixed: the ten daily experience fights are taken from the arena's three suggested opponents, which is the only place the game awards them.
  41. 2.19.1

    • Fixed: the gem mine named the wrong gem. It read the wrong digit of the number the game sends, so a strength gem was announced as constitution. It also stopped asking for a new gem every few seconds once one was already on its way.
    • Fixed: publishing a whiteboard. Module names that start with a capital were refused as not being module names, and an entry that carried a board was told it needed one.
    • Save on a marketplace entry now files it where that kind of thing lives. A whiteboard goes to your whiteboards instead of among your settings, and saving the same entry again replaces it instead of leaving another copy.
    • Weapons show what you are wearing. The inventory dialog compared a weapon against nothing and offered no way to put it on, while every other slot did. For an assassin it compares against the weaker hand, which is the one a new weapon would replace.
    • Gear is judged better. A shield's block chance now counts towards its worth, which nothing looked at before, and the attribute simulation buys the cheaper point when the fights cannot tell two attributes apart.
  42. 2.19.0

    • The marketplace has two kinds of entry now, settings and whiteboards, with a tab for each. An author says which one they are sharing, and a whiteboard entry has to carry a whiteboard.
    • Whiteboards travel. The lines between modules always did, because they are part of the settings; the arrangement never left your machine, so a shared board arrived correctly wired and drawn in the default places. Now it arrives as its author built it, and an entry that has no board leaves yours alone.
    • Entries can be kept without being run. Save puts one among your own configurations under its own name, where the settings page already looks, and remembers its whiteboard beside it; applying that configuration later draws the board as well.
    • Entries can be corrected. The name, the description and who it is for always, the settings only when you ask, and the votes, the uses and the date it was published all stay. A typo used to cost an entry its history, because the only way to change a word was to delete it and publish again.
    • Fixed: settings applied to a single character did not stick. The app asked which character it was writing for in a way that had to wait for the bot's own network requests, so on a running character nothing reached the disk and the next start read the old settings back. Applying to every character worked, which is why this looked like it only happened sometimes.
    • Fixed: applying an entry to every character pushed the settings into the wrong running bots once any character had been removed, and applying one to a running character did not reach it at all until the next start.
    • A module page now says when its own master switch is off, with the one press that turns it on. Turning on the fortress details while Auto Fortress was off two tabs away is what "it doesn't work" has been in every report so far.
    • The mushroom warning stopped counting things that cannot spend anything: a budget under a switch that is off, a reserve that holds mushrooms back, and two settings nothing reads. Two more now describe what their switch actually does rather than what its name suggests.
    • Confirmation mail is tried again when a provider refuses it for a moment rather than for good, and the whole refusal is written down. Signing in no longer cares whether the address was typed with capitals, and a refused sign-in says so instead of quietly doing nothing.
  43. 2.18.0

    • New: a marketplace for settings. Share what a character is running, or a configuration you saved under a name, aimed at one class or at everybody. Sort by popularity, rating, newest or most used, filter by class, and search. Reading it needs nothing; publishing needs an account with a confirmed address, so every entry carries a name somebody can be reached at.
    • Every entry is checked on the server before it is stored. Only keys shaped like settings this app writes are accepted, and values must be true or false, a number, a short name or a list of those. Notification webhooks, tokens, proxy addresses, lists of named players and the guild name are removed and never travel, and the publisher is told exactly what was left out.
    • Mushrooms cost real money, so they get their own answer. Filter the board by whether a setup spends them, unfold any entry to see which switches are on and what they are set to, and before anything is applied a warning names every one of them with its amount.
    • Applying an entry writes over the defaults rather than over what your character already has, so an entry means what it names and nothing else.
    • One vote per account, changeable, and taken back by pressing the same arrow again. Entries carry the date they were published and the app version they came from, and anything can be reported with a reason.
    • New: an account page. Sign in, create an account, or use Google or Discord, confirm your address, change the name other people see, and set a password even if the account was made through a provider. The confirmation mail arrives in the language the app is set to. Signing in has moved out of the settings page.
    • Names and descriptions carry no links and no addresses, on the board and on the account, so a place people read cannot become a place people advertise.
  44. 2.17.7

    • Fixed: the Assassin never equipped a second weapon. Every weapon maps internally to the main hand, and the Assassin is the only class carrying a weapon in the second one, so that hand was never a candidate: nothing was equipped there, nothing was bought for it, and the seller treated every upgrade for it as junk and sold it. Reported as a level 60 character still holding a level 1 starter weapon.
    • Both hands are now compared separately and the weaker one gets the upgrade. A shield is refused for that hand outright, because wearing one would trade the class's second weapon for a block chance.
    • Fixed: applying a preset could reset settings on every character. The version stamp the frontend writes had fallen five migrations behind the bot, so applying a preset told it the settings were old and it re-ran them: World Boss upgrades back on, expeditions preferred, gem replacement on, the pet order rewritten, the achievement engine off. Applying to all characters did that to every account at once.
    • Clicking a preset or a saved profile now only opens it. Applying is a separate button, applying to every character asks first and says what it costs, and it can be undone afterwards: every character gets back exactly what it had.
    • Fixed: the gear analysis recommended nothing to the nine hybrid classes. It compared an item's class requirement against the character's class directly, which can only ever match for Warrior, Mage and Scout.
    • New: Server Start can push the album to a percentage you choose, spend at most a set number of mushrooms getting there, and write one line in the activity log when it arrives, so you can take the thirst back over by hand.
    • New: a star on every scanned player puts them on the attack-first list, for farming a missing item by hand.
    • Fixed: installing over an older version could leave both. There are two installers, .exe and .msi, and neither knew the other existed, so an .msi over an .exe install meant two entries in Apps & features and two copies of the program. Each removes the other now, before it installs anything.
    • Fixed: "delete application data" left almost all of it. It removed the webview cache and not the folder holding every setting, log, scrapbook cache and analytics file, which was 650 MB on the machine this was found on. Both go now, together with the start-with-Windows entry and the shortcuts older versions left behind.
  45. 2.17.4

    • New: Server Start, a page that runs the opening of a fresh server in phases. Guild first, then the arena until the album can be bought, then the album, then dungeons, then everything. Each phase holds back the modules that do not belong to it, and the page names them.
    • The album comes before the questing on purpose: its fill percentage is the experience bonus the game grants on everything, so every point of it makes every later quest worth more.
    • New: a live feed on that page. The current target with its win chance, the items that fight would collect drawn with the game's own artwork, the next eight targets in the order the bot weighed them, the dungeons behind them, and the gains as they arrive.
    • New: Speed Mode. One switch that pays a mushroom for the next fight instead of waiting for the free one, so the album fills at the speed you buy. Off by default, capped per day, and your mushroom reserve still applies.
    • Fixed: the scrapbook crawler started at the top of the Hall of Fame instead of at your own rank, so a low level character crawled players it could never fight. Ten minutes of crawling produced 701 cached players and 2 usable ones.
    • Fixed: the crawler spent a full player lookup on all 51 names of a page before checking their level, although the page already carries it. It now looks up only players inside your level range, so the same budget buys targets you can fight.
    • Fixed: anonymous mode printed real names in three places. The character name in front of each activity entry, the linked characters in the settings sync banner, and the player names inside the log's command payloads.
    • Fixed: thirst for adventure always showed a ceiling of 100. Every beer raises the day's maximum by 20, so a character on 320 read as 0/100.
    • Removed: the advertisement module is no longer built or shipped, for security reasons.
  46. 2.17.0

    • Hellevator: it never joined the event at all. Fixed
    • Hellevator: every treat purchase was refused, so it never got as far as fighting. Fixed
    • Hellevator: one refused step no longer stops the whole cycle
    • Hellevator: climbs on key cards first and buys a treat once fights start being lost
    • Hellevator: a page of its own on the Events tab while the event runs
    • Hellevator: its own settings, including whether to buy treats and how many cards one may cost
    • Hellevator: buy a treat by hand if you want a particular one
    • Hellevator: says why it is doing nothing when it cannot run
    • Hellevator: the guild rank is read correctly again
    • Guild raid signup is off by default, because the server refused it on every account
    • Whiteboard: draw the cycle, cut a single line, name and save boards, undo with Ctrl+Z
    • Whiteboard boards travel with the settings sync
    • Items: press one to see its stats beside the equipped item, with the difference in colour
    • Toilet and blacksmith show how many uses are left today
    • Eight more languages, all complete: Czech, Polish, Russian, Chinese, Japanese, Italian, French, Spanish
    • Chinese and Japanese are now readable, not just translated
    • Numbers and dates follow the language you picked, not the system's
    • The language menu is no longer see-through
    • Proxies: paste a list, and see which ones are really carrying traffic
    • The Wheel of Fortune's free turn is taken once, not twice
    • A headless build for ARM64 Linux, for a Raspberry Pi or similar
  47. 2.16.10

    • Fixed: the advertisements module was in the release but could not be reached. The build produces the interface twice, once explicitly and then again from inside the app build, and only the first run was told the module was enabled, so the second overwrote it with a version that has no advertisements page at all. The backend had the module the whole time; there was simply nothing on screen to switch it on with.
    • Fixed: the app could lock up shortly after signing in. The status poll runs every few seconds, and in the released build it asked the account's session for two pieces of text it could get elsewhere, while the bot holds that same session for the whole of a cycle, network requests included. Every poll that landed mid-cycle waited for the cycle to end, and the ones behind it queued up. Only the released build could hit this; the advertisements module is compiled out of every other build, and that is also why no test had ever run against it.
    • Fixed: the Reset Cooldown button on the Tavern page could hang for the same reason.
    • Note: the build that ships is now the build that gets tested. Linting and the Rust tests run with the advertisements module compiled in, and the interface tests run a second time with it enabled, because that switch decides whether the advertisement settings exist at all. Until now the one configuration users receive was the one configuration nothing checked.
  48. 2.16.9

    • New: a proxy per account. Each account can reach the game through its own, and it applies to every login including the automatic one at startup. A login that misses its proxy does not fail, it succeeds from your own address, which is the one thing a proxy is there to prevent. The URL is stored encrypted and never shown back.
    • New: click an opponent in the Progress Report and you get the full profile (portrait, attributes split into base and gear, every equipped item with its runes and enchantments) plus exactly what the fights against them paid: experience, gold, honour, mushrooms, scrapbook entries and the loot.
    • New: five Legendary Dungeon settings. When to flee rather than fight, how far to walk the dungeon per cycle, whether to buy blessings, whether to accept a curse when out of keys, and a ceiling on mushrooms spent reviving within one run. Every default matches what the bot did before.
    • Fixed: selling gemmed gear below level 90. The blacksmith unlocks at 90 and a socketed gem cannot come out before that, so those drops occupied a bag slot for good, and the setting meant to release them could never fire, because the check asked something that reports a blacksmith for every character at every level.
    • Fixed: scouting a player from the Hall of Fame flickered between loading and loaded without ever settling, asking the game server again each time round. It now opens as a proper window, with the player's portrait.
    • Fixed: every scouted player was drawn as a woman. Their portrait was sent in a shape the interface did not read, on the Arena page too.
    • Fixed: the dungeon detail window was see-through, so the list behind it read straight through the boss stats.
    • Advertisements: the ad-reward module was rebuilt around what the server actually does, and is now off by default. It sends the headers a real browser sends, detects success from the server's own remaining-watches counter rather than guessing from a coin change, and a response it does not understand can no longer wipe the game state.
    • Note: the command-line tool and the fleet node build again. The proxy work had reached for something only the desktop app has.
  49. 2.15.0

    • Fixed: "Something went wrong" on the overview when the app started. It cleared itself if you pressed Try Again, so it was easy to live with and easy to miss. The same fault was found and fixed on the Arena Manager page before anyone hit it.
    • Fixed: runes ignored their own ceilings. A rune already at its cap counted as full value, so a gold rune at 50/50, worth nothing, was chosen over an epic-chance rune at 0/50.
    • Fixed: "XP First" did not prefer XP opponents. The setting was read in one place, a guard on spending a mushroom, and nowhere near the choice of who to fight.
    • Fixed: guild ready-up never fired with a minimum delay set. The wait was measured backwards from the fight, so "at least 5 minutes" meant "do nothing until the last five", which is why turning the setting off appeared to fix it.
    • Fixed: anonymous mode still showed arena opponents by name.
    • Fixed: one entry in a custom fortress order could stop the whole fortress.
    • Fixed: the item seller threw away potions the potion module had just bought.
    • Fixed: the Current Action card could contradict itself, and the Arena page could crash outright.
    • New: filter the activity log by character and by kind, so one account's quests do not bury another's.
    • New: choose your columns on the accounts table: show, hide, reorder, drag to resize. Adds ALU, beer, mushrooms and mount. New columns start hidden, so nothing changes shape on update.
    • New: opponent lists. Attack these first, never attack those. Editable, with buttons on every row of the scrapbook target list.
    • New: tell the activity log when your scrapbook passes a number you set.
    • The download is about a third smaller, and so is every update from here on. The artwork is stored differently; nothing looks any different.
    • The German translation now covers every page, and stays covered, because the check that finds untranslated text runs over all of them.
    • Quieter logs: the "keep slots free" warning no longer repeats once per account, and a missing flag icon is no longer a warning.
  50. 2.14.0

    • New: schedules. Say which days and hours the bot may play. Outside them it stops rather than idling. Off by default; handles midnight and daylight saving.
    • New: a profile library. Save your settings under a name and come back to them in one click. Rename, duplicate, delete.
    • Each profile describes itself from its own settings, and says how many settings it differs from the one you are running.
    • New setting: sell gemmed items when the gem cannot be extracted. Off by default, a last resort: THE GEM IS LOST when it applies.
    • The settings wizard has two new pages of tick boxes: what to sell and keep, and which achievements to chase.
    • Fixed: items that could never be sold and never be worn. Four separate causes, including one refused item freezing the whole bag behind it.
    • The bot now names the item and the rule when something is not being sold, instead of leaving you to guess.
    • Fixed: "keep slots free" set higher than the bag holds silently meant "sell everything". It now says the setting cannot be met, and names the bag size.
    • The toilet sacrifice and the blacksmith dismantle now reach the bag before the seller does, because both have a daily allowance and selling has none.
    • Fixed: a fortress building could sit at "Finishing…" for ever and block every later upgrade. Only a manual login cleared it.
    • Fixed: eight settings were rendered twice under different labels, both working. One control per setting now, with a test against a repeat.
    • Fixed: the three beer settings now sit with the other mushroom spending, because that is what a beer costs.
    • Fixed: the settings wizard was too transparent to read.
    • The achievement engine (beta) is off now and switches itself off on update. It does deliberately odd things, which read as the bot refusing to equip anything.
    • Groundwork for the Bloodweaver: an unknown class used to fail outright instead of degrading. It is recognised now, though its abilities are not simulated yet.
  51. 2.13.0

    • New: choose the order your dungeons are fought in. Off by default: the bot still picks whichever dungeon it is most likely to win, which is the right answer for almost everybody. Turn it on under Dungeons and drag the ones you care about into the order you want. Anything closed, not yet unlocked, or filtered out by your level settings is skipped and the next one down is taken, and if none of them can be fought the bot falls back to the best odds. A list you have half-filled never means "fight nothing".
    • The win-chance minimum still applies to fights that cost a mushroom, priority list or not. Wanting the Tower first is not a reason to buy a fight it loses. A free attempt at the same odds is fine, because the attempt expires either way.
    • Every ordered list can now be dragged as well as nudged with the arrows: dungeons, fortress and underworld build orders, and the module order. One of them could already be dragged and the others could not, which is the sort of difference you notice at once and cannot explain.
    • New: minimizing no longer has to send the window to the tray. It always did, and there was no way to stop it, which is wrong for anyone switching between the bot and the game. The setting is under System and defaults to what it has always done, so nothing changes unless you change it.
    • Money now reads as gold, the way the game shows it, rather than as silver at a hundred to one. The building costs were the clearest case: they already used the gold icon next to a silver number. Below a gold the silver is shown on its own, because rounding it away would make broke and nearly-there look the same.
    • Fixed: a character too low level for a feature kept asking for it anyway. The attempt was already quiet and backed off for an hour, but an hour is the wrong unit: a level 1 character will not meet the Underworld's requirement today, so it asked twenty-four times a day, every day. The level the server refused at is now remembered and nothing is retried until the character has actually gained one.
  52. 2.12.0

    • Fixed: clicking a saved account made the accounts you had already logged in vanish from the app. Only the one you just clicked was left on screen, so with several accounts it looked as though only one would ever load. The others were still logged in and their bots were still playing. There was simply nothing left in the app pointing at them, which meant you could neither watch them nor stop them. The account list is now read from the running sessions themselves instead of from whatever the last login happened to hand back.
    • Fixed: saved accounts could be lost entirely when the app was closed or updated. The account file was emptied first and rewritten a fraction of a second later, so anything that stopped the app in between (closing it, a crash, an update replacing the program) left the file empty and every saved account gone with it. It is now written alongside the old one and swapped into place in a single step, so what is on disk is always either the complete old list or the complete new one, never nothing.
    • A copy of the previous account list is now kept, and a damaged file is reported in the log and recovered from that copy, instead of silently looking exactly like never having had any accounts at all.
    • New: log in every saved account with one button, showing progress as it works through them, and a tick box on the login screen to have that happen automatically at start. Clicking fifteen accounts one at a time was not a workflow.
    • Fixed: the login screen could not be scrolled once there were more than a few saved accounts. The list ran off the bottom of the window and took the login form with it, with no way to reach either.
    • An account that fails during a bulk login is named. Being told that three accounts failed is no help without being told which three.
    • The log now records every login, how many characters came back from it, and how many sessions are live afterwards, so an account that goes missing leaves a trail to follow instead of a guess.
    • Console build: a non-interactive mode for driving Mercy SF from another program or a dashboard. Arguments in, one JSON object out, covering the character list and a full character readout with attributes, equipment, arena, tavern and guild. There is a written contract for it on the website, so anyone building against it knows exactly what will not change underneath them.
    • The Arena Manager now says why it is idle instead of saying nothing at all. Most often the answer is that the character is below level 105 and it is not unlocked yet.
  53. 2.11.0

    • Anonymous mode. A switch in the header hides every name in the app (your characters, your accounts, opponents, guilds, guild members, the battle history, the activity feed and the log) so you can share a screenshot exactly as it is, with no editing and no blurring.
    • Names are replaced by a stable stand-in rather than blanked out. Blanking destroys what a screenshot is usually shared for: you could no longer tell whether the player who beat you twice was the same player, or follow who fought whom down a battle log. A stand-in keeps the shape of the story and drops the identity.
    • The stand-in is salted with a random value generated on your own machine, which never leaves it. Without that, anyone could work through a server's Hall of Fame and match the names straight back, so a screenshot would have hidden them from a casual reader and from nobody who actually cared. It is not a cryptographic guarantee, but it does defeat reading a name off a picture and matching a picture against a public player list.
    • Intel Macs are supported. The macOS build used to be Apple Silicon only, and an Intel Mac could not run it at all: the download simply failed to open. Both architectures are built now, for the app and for the console build.
    • The update dialog shows the actual changelog. It used to show a single line pointing at a link that did not work for anyone, and the same link was being served publicly in the update manifest. You are reading the replacement.
    • Fixed: the Tower refused every single attack and took the dungeons down with it. They share one daily fight, and the Tower usually wins that comparison because it is fought with three companions, so the fight was refused and never spent on anything else. It had been sending the floor you had already beaten instead of the one you were entering. A Tower the server refuses now steps aside for an hour so the dungeons get the attempt.
    • Fixed: two silent request leaks. The fortress asked the server about a player that does not exist whenever it had no opponent assigned, and skilling retried an upgrade it could never afford, on every cycle. Together that was roughly eleven thousand pointless requests a day.
    • Faster builds and a smaller download, carried over from 2.10.0: the artwork is lossless WebP, verified pixel-identical file by file, which took the installer from 364 MB to 238 MB. That comes off every auto-update too, not just the first install.
  54. 2.10.0

    • The arena stopped fighting altogether on some accounts. Arena fighting and scrapbook hunting spend the same free fight, but they were two separate modules with two copies of every rule, and the copies disagreed. One of them refused to let a win-chance minimum veto a FREE fight, because the cooldown expires whether you use it or not; the other applied that minimum everywhere. Once the ten daily XP fights were done, the strict one owned every decision, and a character whose odds all sat under the minimum simply stopped. The log said it the whole time: "none of the 47 players above us cleared the 55% win-chance minimum".
    • The two are now one module. It gathers candidates from all three sources at once (the arena's three opponents, the crawled player pool, and the Hall of Fame page around your rank), scores them on one scale, and fights the best: (items x 100 + daily XP x 60 + rank x 25) x win chance. Scrapbook first, then XP, then climbing, exactly as asked for. The difference matters: a chain of thresholds can reject everything, and did. A ranking always has a best.
    • The win-chance minimum now applies only when a mushroom is on the line. A free fight is free.
    • The Tower refused every single attack and took the dungeons down with it. They share one daily fight, and the Tower usually wins the comparison because it is fought with three companions, so the fight was refused and never spent on anything else. 2,108 refused Tower attacks against 54 dungeon fights in one day. The Tower counts floors you have beaten; the server wants the floor you are entering. A refused Tower now steps aside for an hour so the dungeons get the attempt.
    • The target pool could only ever shrink. When the simulator ruled a player out, that verdict was permanent, and only beating them undid it, which needs a fight you have just decided never to take. Every cycle retired up to eight more players for good. The verdict now expires as soon as you have outgrown it, and the app says so when the pool recovers.
    • Scrapbook targets are realistic now. A level-20 character was being offered level-600 players; the level window scales with your own level instead of being a flat number. Rare items also count for more than common ones, so free fights go to the pieces that are actually hard to find.
    • You can watch it think. The Arena page shows the decision: how many candidates came from each source, a bar per candidate split into items, daily XP and rank, dimmed by the part the odds take away, and the winner highlighted. During the cooldown it shows what it WILL fight next, and when it is not fighting it says why in one sentence instead of leaving "Ready" on screen as the only clue.
    • The eye button on Hall of Fame players opens a real profile: attributes split into base and gear, armour, weapon damage, your simulated chance against them, how many of their items your scrapbook is missing, and every equipped item with its artwork, bonuses, rune, gem and enchantment. It had never worked.
    • The accounts table sorts by any column, level first. Countdowns sort by the real time, so everything ready groups together instead of landing between "4m" and "51m".
    • The download is a third smaller, 364 MB down to 238 MB, and looks exactly the same. The artwork is lossless WebP, verified pixel-identical file by file. That comes off every auto-update too, not just the first install.
    • Also fixed: the Tower was excluded from the dungeon comparison entirely and could never be chosen; the two beer settings cancelled each other out; two silent request leaks (a fortress lookup that asked the server for player "0" thousands of times a day, and skilling retrying an upgrade it could never afford). New: a fifteen-question setup wizard, and a mushroom budget per day or week.
  55. 2.9.16

    • A new fortress never built anything at all. Reported as "he has enough materials for the Quarry but doesn't do it", and the log agreed: a thousand build requests, every one for the Woodcutter's Hut, every one refused. No building may stand higher than the Fortress itself, and a new fortress starts with both at level 1, so upgrading the hut was illegal until the Fortress went up. The bot only compared prices, picked the cheap hut, was refused, and made the identical choice next cycle. Forever. It now honours the game's rules too: the fortress-level cap, level requirements, buildings busy training or searching for gems, the Smithy's prerequisites. All of them mean skip, never save up: money does not fix an illegal move.
    • Underworld gold and souls were not collected. A refused upgrade returned early, and the gathering step came after it, so one refusal ended the whole cycle before anything was collected. Gathering now runs regardless, and when something genuinely cannot be collected the reason is stated.
    • Refused work was reported as done. A refused build is not an error, so the log announced upgrades that never happened. Both now check that an upgrade is really running before claiming one.
    • The Fortress and Underworld screens are now the actual screens: a yard and a cavern, each building a plot with its level, a countdown while it builds, and the cost of the next level. A building the game refuses says why. Every producer has a meter: what is waiting, how full the pit is, when it stops producing. A full pit is called out, because the game gives no warning and everything past the limit is lost.
    • Analytics took forever to open. The command that answers it took the account's session lock, purely to ask which character it was, and the bot holds that lock while it talks to the game server, so a request for two strings that never change queued behind every account's network traffic. Loading and saving a character's settings had the same fault.
    • Analytics also recorded a snapshot every poll, 17,280 a day per account, with the whole file rewritten on a timer. The charts are a few hundred pixels wide; a day of five-second data is one line. The series is sampled to one point a minute now, twelve times less to keep and load, with the running totals unaffected. Existing files shrink from about 1.5 MB to 90 KB the first time they are opened.
    • Skilling spent the gold enchanting needed. Both respect the Save Money reserve, but skilling buys attributes until the next price no longer fits, so whichever ran first took everything and the other found nothing. A module that cannot afford something now registers what it is saving for, and other spenders leave that much alone.
    • Accounts added with the "Add account" button were never saved. Credentials were written on the first login path only; adding an account and signing in a second character both went through code that never wrote them down.
    • The Continuous Loop of Idols had no boss data: it sits in the shadow list but is not a shadow version of anything, so it was looked up under a name that matches nothing. It has its own section now. That also turned up level bars fixed at ten for every dungeon but the Twister, so anyone past level ten of the Tower (100) or the Loop (30) was drawn as having cleared it.
    • Fixed: every weapon, shield, potion and gem rendered with no artwork, worst on the Blacksmith and Witch pages. The dice game's last reward read [object Object]. The journey strip showed "Quests" and "City Guard" as words. A third of all dungeon refreshes were immediate repeats. The Simulation skill mode now actually simulates. VIP is read from the beer allowance. Four internal collections grew without ever being trimmed.
    • Interface: the sidebar is grouped rather than twenty flat entries, plus a density switch, one-click presets for single modules, and a denser Overview page.
  56. 2.9.15

    • Nine of the twelve classes could not equip their own gear. An item asks for one of the three BASE classes, and the bot compared that to your class directly, which can only match if you ARE one of those three. Demon Hunter, Battle Mage, Assassin, Necromancer, Plague Doctor, Berserker, Paladin, Druid and Bard were therefore left with only the few items that ask for nothing, which is why a level 10 trinket with 5 luck beat 400 armour with 100 dexterity. The same check guards the seller, so those classes were also selling the gear they should have worn. Wrong since the very first release.
    • The arena fought nothing on some accounts. Three faults stacked: the arena module hands every fight to the scrapbook module, which returns at once on a character without a scrapbook and neither checked the other; an unresolvable simulation reported 0% instead of "no answer", so every target was vetoed; and one rejected target ended the whole cycle. That is why turning the minimum win chance down from 55 to 45 to 20 changed nothing: the code never reached that decision.
    • The app froze when opening Arena and Scrapbook, and the bot stopped fighting while it did. The player cache had grown to 187,136 players in 119 MB and was rewritten in full every 27 seconds while holding the lock the bot needs to pick a fight. The pool now lives in memory for the session, gear that can never be worth taking is not remembered, and old cache files are deleted on startup.
    • Weapons showed as [object Object]. Fixing it turned up three more places nobody had reported: the daily and event tasks, the Advent calendar and the Wheel of Fortune.
    • Achievements (BETA): a new page with all 92 achievements, what each one wants and whether the bot steers towards it, behind one master switch. Anything costing real money is never chased. Pursuing Naturism or St. Nicholas used to feed your own gear to the shredder. It is protected now on all four disposal paths.
    • Fix: the bot bought a potion and sold it seconds later. The general item seller had its own opinion about bottles and disposed of what the potion module had just bought. "Ignore Bottles" now means what its name says.
    • Fix: the fortress stopped building for days. A Custom order waits on its first unfinished entry by design, but if that entry costs more wood or stone than the warehouse can hold, the resources never arrive and everything behind it stops for good. Unreachable entries are passed over now, and the log says so. The Gem Mine also explains itself: it is left alone on purpose while a gem search runs.
    • Fix: twenty-two warnings on every start, one per pet, all saying nothing happened. Pets already at the level cap were fed anyway. The cap now comes from the game rather than a rule that a live account disproved.
    • Fix: the Current Action card contradicted itself, showing a leftover label from a broken image next to an invented expedition stage.
    • Quests are now ranked by reward per second of thirst rather than raw reward, the Save Money reserve is honoured by all ten spending modules instead of two, and weapon damage finally counts in the equipment comparison. German covers 185 strings that were still English.
  57. 2.9.10

    • Settings are saved for real now. Each account has its own settings file and the bot has always started from it, but the settings page loaded the GLOBAL one and never the selected account's, so the page showed one thing while the account ran another, and every save copied the global values over that account's own file. Eleven more settings were absent from what the page saves at all, so the backend reset them to their defaults on every save: the active-hours schedule, the module priority order, automatic gem-slot upgrades, coupon crawling and the event options among them.
    • Both daily portals are fought again. The personal Demon Portal ran last in the dungeon module, behind three blocks that end the cycle the moment they act; across four logged days on four accounts, two days had ZERO attempts. The Guild Portal was step 5 of 7, behind raids. Both now run first in their module, and neither costs a dungeon fight.
    • Hall of Fame fights are simulated before they are taken. Targets were picked for how many scrapbook items they could give and filtered only by total attributes, so anyone up to 120% of yours counted as beatable, which came to 38% won over a logged day. The battle simulator already used for dungeons is now asked first, and below the configured chance the target is skipped without spending a fight. Settings -> Arena, default 55%.
    • The Progress Report was showing three numbers that could never be true. Mushrooms was always 0 because no fight ever recorded them. Scrapbook Items was always 0 because it was measured immediately after the fight, and the fight response does not carry the updated collection. Real gains were happening the whole time. Gold was 0 by arithmetic: each fight was floored to whole gold BEFORE anything was summed, so 122 arena and 508 Hall of Fame fights each floored to zero.
    • Events know whether they are running. The server keeps sending the World Boss block after the event closes, so the app treated a finished event as live and the bot spent all day on commands the server refused, including a catapult purchase that stepped its rental length down 10h -> 9h -> 8h hunting for a price it could afford, when the answer was that no event was running. The Events page now says "Currently no Live Event" and shows the World Boss view only while the World Boss runs.
    • Pets: feeding and brewing stopped taking turns being ignored. The module acted once per cycle, so whichever went first took every fruit and the other never happened. On one account that meant 2,732 feeds in Earth and none at all in Fire. Both run every cycle now, and juice is brewed once a habitat reaches its threshold rather than ten fruits past it.
    • Gems: a wrongly-socketed gem could never be corrected, because replacement shipped switched off, so a Dexterity character wearing Strength gems had no way back. Black gems also always won, whatever their value, because they carried a flat weight above any single-attribute gem could reach. The trade-off is computed now, and gems are all socketed in one pass instead of one per cycle.
    • Fix: saved passwords were sent as their own ciphertext. The login screen read the credentials file verbatim, so a password encrypted at rest was pre-filled as "v1:..." and posted that way. That is the "still sending encrypted" report, and it is also what surfaced as "Could not communicate with the server".
    • A log you can read: refusals that are part of normal play are no longer warnings, server errors no longer drag a full state dump into the log, and one refusal no longer stops a whole module: "no more dungeon fights today" used to skip the underworld's resource collection and building upgrades too.
    • New: a Join my Discord button, settings export and import as buttons with a real file dialog, and a collapsible account list.
  58. 2.9.8

    • Mushrooms now have a settings page of their own: every switch that can spend them, in one place, marked as real money, all off by default. Nothing else in the app implies a mushroom spend any more.
    • Fix: shop items that cost mushrooms were bought even with that setting off. The check was "buy if silver covers it OR mushrooms are allowed", but such an item charges silver AND mushrooms, so having the silver let it through every time, ignoring your reserve. One test account bought the same 4-mushroom item 84 times.
    • Fix: "Skip Quests" was paying mushrooms. That switch is normally turned on for the free hourglass skip, but it also authorised paying real money for every quest and expedition wait. Hourglasses still work from it; mushrooms never do.
    • Fix: three mushroom switches had no control at all: the mushroom mount (a Dragon is 25 mushrooms and renews itself), Legendary Dungeon revives, and the VIP beer option. You can now turn them off.
    • Fix: amulet and ring images were broken everywhere they appeared. The artwork uses a different naming shape for those than for talismans, and the wrong one was used for all three.
    • Settings tidied: 13 switches that appeared on two pages now appear on one, two switches that did nothing are gone or wired up, and five settings the app saved but never read were removed.
  59. 2.9.7

    • Auto-update is now free for everyone, on every tier. It used to be a paid feature: free installs skipped the check entirely and were told "You are on the latest version", so people sat on old builds carrying bugs that had been fixed months earlier, with no way to find out. Note: if you are on an older unlicensed build you need one manual download from this page, after which updates arrive on their own.
    • Fix: "start with Windows" silently stopped working. The registry entry was only written when you flipped the switch and nothing ever checked it again, so if it went missing the app kept showing the switch as ON and never started with Windows. It now repairs itself on every launch.
    • Fix: "Could not communicate with the server" when logging in. Saved passwords are stored encrypted, and one build could not decrypt them, so it sent the encrypted text to the login server as your password and the failure looked like a network fault that retrying could never fix. Nothing had to be re-entered.
    • World Boss: catapult upgrades work, and are on by default. They are paid for with resources (gold, wood, stone, metal or arcane, plus catalysts) and never with mushrooms. Filling a catapult now takes minutes instead of hours.
    • Fix: a full inventory that sold nothing and equipped nothing. Selling and equipping disagreed about what "better" means, so items between the two were never worn AND never sold and filled the bag permanently.
    • Fix: the bot sold your best spare gear. It ranked items by shop price, which tracks item level more than usefulness. It now sells the weakest first.
    • Fix: gems disappeared overnight despite Manual Gem Selection. A gem type you ticked could still be sold for having no free socket at that moment. A type you ask to keep is never sold.
  60. 2.9.5

    • Fix: a full inventory that sold nothing and equipped nothing. Selling and equipping disagreed about what "better" means: equipping wanted a clear improvement, while selling protected anything better by even one point, so items landing between the two were never worn AND never sold, and they filled the bag permanently. Dungeon drops land there constantly.
    • Fix: the bot sold your best spare gear. Items to sell were ranked by shop price, which tracks item level far more than usefulness. It now sells the weakest gear first and keeps the strongest.
    • Fix: gems disappeared overnight despite Manual Gem Selection. A gem type you ticked was only used as a first filter, so a gem could still be sold for having no free socket at that moment, which with all sockets full is every gem. A gem type you ask to keep is now never sold.
    • World Boss catapult upgrades now work, and are on by default. Mercy buys them with the shop's resources button (gold, wood, stone, metal or arcane, plus catalysts) and never the mushroom one.
    • Fix: upgrades used to charge MUSHROOMS. The buy request had its two arguments the wrong way round, so every purchase asked for the real-money button, against a slot nobody picked. If Mercy switched upgrades off on your account because of that, this release turns them back on.
    • Fix: upgrades often bought nothing at all. The game rate-limits that request and answers a too-soon attempt with the same "cannot do this right now" it uses for a genuine refusal, so nearly every attempt was thrown away unread. Attempts are now spaced out.
    • Much faster: buying was capped at one upgrade per bot cycle instead of per attempt, so filling a catapult took hours. It now takes minutes.
    • New: the upgrade shop is rerolled when none of its three offers can be bought, because otherwise a shop full of offers for a tower segment you are not aiming at never resolves.
    • The log now explains every upgrade decision: your balances, the catapult, and each offer with the reason it was or was not bought, plus what every purchase actually cost.
    • Fix: World Boss daily chest types were labelled the wrong way round ("single hit" and "damage master" were swapped).
  61. 2.9.0

    • New: "Senseis Config", the creator's own tuned setup, is the new default preset and what new users start with. You can still switch to Standard / Safe Farm / Aggressive any time.
    • New: save your current settings as a named preset (Simple Mode) and switch back and forth between your own setups whenever you like.
    • Simpler settings: removed ~20 toggles that did nothing plus the redundant "Prefer Expeditions" switch (quests vs. expeditions is auto-detected). Your saved configs and backups still load unchanged.
    • Arena & Scrapbook reordered: your character and combat stats on top, then the 3 arena opponents, then the scrapbook scans, with collected items at the bottom.
    • Battle Sim now only lists dungeons you have not cleared yet, and shows the real floor numbers.
    • Fix: accounts no longer freeze on a bad connection. Network timeouts retry a stalled connection automatically instead of hanging the account until restart.
    • Fix: lower, steadier memory use over long scrapbook sessions.
    • Fix: the Battle Sim "1000 fights" win-ratio is correct now. It was ignoring the dungeon/floor you picked and simulating your current dungeon (an easy floor showed ~50%); it now simulates the enemy you selected (~100% for a floor you would clear).
  62. 2.8.21

    • The "Arena Manager" page is now the "Hall of Fame": it loads the ranking automatically, lets you search any player by name to scout them, and pages through the ladder. The unused rune-overview panel was removed.
    • New: off-class potions are sold automatically. A potion for an attribute your class never uses (e.g. Intelligence on a Demon Hunter) can't be drunk, so instead of clogging your bag it's now sold, while the potions you actually need (main attribute, Constitution, Luck, Eternal Life) are kept.
    • Fix: the Battle Sim dungeon/floor dropdowns are readable again. They were white-on-white and now follow the app theme.
  63. 2.8.20

    • Fix: quests/expeditions no longer get stuck idle with a "disabled by settings" error. The game has a server-side "quests vs expeditions" switch, and starting the wrong one for the current mode is rejected. The bot now auto-detects the current mode (no setting needed) and prefers expeditions, switching into them when it can, and only ever sending the action the server will accept.
    • The achievements bot and the app now share one achievement list so they can't disagree, and the Achievements page has a new "In Progress" section showing what's actively advancing.
  64. 2.8.19

    • New: the Battle Sim lets you pick any real dungeon and floor and fight its actual enemy, with a preview of who you'll face (portrait, name, level, class), instead of only guessing the first open dungeon.
    • New: fights now play out as an animated replay: both fighters' portraits, HP bars that drain, floating damage numbers (crits in gold), evade pop-ups and the engine's special-ability notes.
  65. 2.8.18

    • Fix: the Blacksmith & Witch page no longer shows "[object Object]" for your weapon, and slot names now appear in your selected language instead of English.
    • Fix: items show their real icons everywhere, including a broken image path that made amulets/rings/talismans fall back to a placeholder.
    • Fix: inventory potions now show their icon and what they actually are (e.g. "Stärke · Groß") instead of a generic "Trank" with no picture.
    • New: arena opponents show their name, portrait, level, class and honor instead of a bare player id.
    • The Scrapbook is now at the top of the Arena & Scrapbook page, and the Fortress gem search shows near the top when active.
    • Quest reward items now show their icon and name.
  66. 2.8.17

    • Fix: your mushroom reserve is finally respected. Dungeon fights, tower fights, arena fights and the fortress gem-search skip all checked whether the setting was on but never looked at your balance, so enabling any of them drained mushrooms to zero regardless of the reserve you set. Dungeon and tower were worst, paying for a fight every single cycle even while the free one was ready.
    • Fix: a mushroom is never spent on a dungeon fight the simulator says you lose. Free fights are unchanged, so progress is not stalled when everything is a coin-flip.
    • Fix: the Underworld upgrades units and attacks again. There is nearly always something to collect, and collecting ended the cycle, so the unit-upgrade and attack steps below it were never reached. Collecting is now the fallback rather than the first thing done.
    • Fix: the Underworld's overnight gathering pause works. A window crossing midnight (e.g. 22:00-06:00) was silently ignored and gathering continued all night.
    • Fix: coupon codes now work on every account. The "already redeemed" list was shared across the whole install instead of per character, so the first account to see a code claimed it and every other character skipped it.
    • Fix: clearing the inbox no longer destroys unredeemed coupon codes before they can be read.
  67. 2.8.16

    • Fix: the bot could stop questing entirely. On a fresh day it told the server "I prefer quests" and then stopped for that cycle without starting one, and since that message does not change your thirst, it repeated forever and no quest was ever started. This affected everyone on default settings.
    • Fix: Arena "Highest Rank" fought nobody. Opponent strength and your own were measured with different formulas (theirs counted main attribute, double constitution and portal bonuses; yours counted none), so two identical characters scored about 2:1 and every opponent looked too strong.
    • Fix: "Don't sell items with gems" refused to sell almost anything: an item with an EMPTY gem socket counted as gemmed, so your bag filled up and selling stopped. The same bug excluded nearly every weapon from washing.
    • Fix: scheduled guild raids and guild fights fired at the wrong time. The times are minutes from midnight but were read as seconds, so a raid set for 12:00 started at 00:12.
    • Fix: setting a guild skill cap blocked all upgrades, because it compared your guild's combined total against a per-player limit.
    • Fix: the Skills module ran twice per cycle, re-running the upgrade loop and spending silver a second time.
    • New: a "Check for updates" button in Settings, and updates are now noticed without restarting: the app checks every 30 minutes and whenever you switch back to the window (it used to be every 6 hours).
  68. 2.8.15

    • Fix: the scrapbook bot now skips targets far stronger than you. Attributes decide fights much better than level does, but nothing looked at them, so the bot only found out someone was out of reach by losing. Anyone above 1.2x your total attributes is passed over.
    • Fix: no more punching above your level. Scrapbook targets could be up to five levels above you (ten in the Hall of Fame scan); both now cap at your own level.
    • Fix: renaming no longer launders a losing record. The blacklist was keyed by name, so a player who beat you twice could return under a new name with a clean slate and leave a stale duplicate entry behind. It is now keyed by player id.
  69. 2.8.14

    • Fix: the bot no longer attacks the same player over and over. Legendary items have no scrapbook slot, so they can never be collected, yet they were still counted as "missing", which made anyone wearing one look permanently valuable and got them attacked every arena cooldown forever, while useful targets were ignored.
    • Fix: beating a player now retires them immediately. A win takes their whole collectable kit, but the bot waited for the server to confirm it, and if that refresh never carried the scrapbook, it re-attacked them indefinitely.
    • Fix: one defeat no longer blacklists a player, and a blacklist is no longer wiped moments later by the arena re-scan. Losses accumulate and a player is skipped after beating you twice.
    • Fix: equally good targets are now tie-broken by the weakest opponent instead of internal ordering, which had kept re-picking the same name.
    • Windows, macOS and Linux now all build from one tag, so no platform can be left behind again.
  70. 2.8.13

    • Fix: potions are no longer wasted on the wrong stats. The bot used to drink any attribute potion it found (a Mage would use Strength and Dexterity potions), and since you only have three active potion slots, those crowded out the useful ones. It now only uses your main attribute, Constitution, Luck and Eternal Life potions.
    • Fix: potion slots are filled by importance instead of bottle size, so a large off-class potion can no longer take the slot a smaller main-attribute one needed.
    • macOS and Linux builds are back: all three platforms ship this release for the first time since 2.8.3.
  71. 2.8.12

    • Fix: "Skill Optimal Now" now upgrades as many attributes as you can afford in one click, instead of only one.
    • New "Gear Comparison" setting with three strategies: Full (base + upgrades + gem), Base + Gem (ignore upgrades), or Base only, so you can let a higher-base item win when you have the materials to move the gem and re-upgrade.
    • Equipment comparison now counts item armor (previously ignored), and equips the biggest available upgrade instead of the first one found in the bag.
  72. 2.8.11

    • Automatic stat/skill upgrading now actually works. It was blocked whenever the character was on a City Guard shift, so attributes never went up. Skills now upgrade after each quest regardless of work shifts.
    • Fights are no longer all reported as losses: expeditions and other fights now show the correct win/loss and rewards in the session report and Battle History.
    • Multi-account fixes: one account running out of beer no longer forces every other account onto a work shift, and bonus beer from tasks no longer leaks across accounts.
    • Pet dungeons: the bot now attacks the habitat with the best win chance instead of always Shadow, so every habitat progresses.
    • Scrapbook: fixed the bogus "10/10 items". Target lists now show your real missing-item counts, with a scrollable Scrapbook Scans list and a "rescan from start" button.
    • Gems are now socketed into your companions too (valued per companion class), and a gem is never sold or dismantled while it would still improve any of your four characters.
    • New Blacksmith & Witch page with live data: equipped gear, upgrade stars, runes, cauldron status and enchantments, plus dedicated Blacksmith, Witch and Runes settings.
    • Blacksmith can now auto-upgrade equipped gear (opt-in). It always keeps a Metal/Arcane reserve so you can still extract gems from gear you replace.
    • Witch feeding fixed (it was skipping almost every eligible item) and now feeds the cheapest matching item.
    • Rune optimizer improved for the mannequin questing set, and the mannequin/rune lists now display correctly.
    • Blacksmith and Witch pages now unlock at the right character level (Witch 66, Blacksmith 90) with a friendly "come back at level X" screen.
    • Full German translation for all the new pages and settings.
    • Note: this release is Windows-only. macOS and Linux stay on 2.8.3.
  73. 2.8.4

    • New Scrapbook Targets viewer in Settings: see every Hall-of-Fame player the crawler has cached, sorted by most missing items, with level, missing/total counts and failed status. Copy the whole target list with one click.
    • Hall-of-Fame names are now logged to a per-account file as they are scanned, so you can farm a fresh server start from a real name list
    • Scrapbook fight stats (wins, losses, items gained) are now tracked in analytics and shown in the session report
    • Fix: drag & drop in the order editors works again. The unreliable HTML5 drag-and-drop was replaced with pointer-based dragging, and the arrow buttons now move an entry one step instead of jumping to the ends
    • Note: this release is Windows-only for now. macOS and Linux stay on 2.8.3
  74. 2.8.3

    • New Battle History page: a searchable log of every fight the bot runs (arena, scrapbook, dungeons, underworld, hellevator, legendary dungeon, pets, expeditions and more) with the enemy's portrait, win/loss and rewards (XP, gold, honor, scrapbook items)
    • Data & Storage settings: choose whether to keep Battle History & Analytics, and auto-delete history, analytics and logs older than a configurable number of days (default 10)
    • Fix: the bot never spends mushrooms by default (all mushroom-spending options are off; free mushrooms are still collected)
    • Fix: a rare UTF-8 parsing panic that could crash the app on certain server responses
    • Performance: Battle History uses an in-memory cache so it no longer re-reads its data file every cycle
  75. 2.8.1

    • Mercy SF is now FREE for everyone. Every feature is unlocked, with no license required (all automation modules, smart features and the battle simulation viewer)
    • Removed the in-app License page, because there is no license to enter anymore
    • Added a "Support on Ko-fi" link in the app and across the website. Donations are entirely optional and unlock nothing extra, since everything is already free
  76. 2.8.0

    • Underworld Gold Pit is finally emptied. Gold and Souls were swapped, so "collect gold" harvested souls; the correct resources are now collected
    • App no longer randomly closes. Each bot module runs behind a panic guard (isolated, with an automatic cooldown), the account loop restarts itself, and crashes are written to crashes.log
    • Sell Items works again: low-tier gear is sold to the shop the way the game expects
    • Fortress: Academy XP collection is more reliable (estimated from the production rate), and wins/losses are logged
    • Scrapbook: Hall of Fame targets are now actually attacked and logged; unbeatable targets are blacklisted
    • New Fortress Partner settings: a preferred Attack Partner and a Protected Players list (free reroll toward the partner, away from protected names)
    • Beer / City Guard: the bot now drinks the full configured daily beer before starting City Guard, and the daily beer amount is clamped to the game maximum
    • No more error-spam loops: predictable "not applicable yet" failures back off for 1 hour instead of retrying every 60 seconds
    • Two-tier logging: a full background dev log on disk plus a clean in-app Logs page; error reports now attach the full dev log, with an Open Logs Folder button
  77. 2.6.0

    • Underworld: souls are now reliably auto-collected every cycle. A failed upgrade can no longer block collection, and it works independently on every account
    • Fortress: experience (XP), wood, stone and silver are now always collected, and the gem mine keeps searching, even when a building or unit upgrade is capped
    • Smart dungeon algorithm: the bot now simulates the current enemy of every open dungeon against your character and fights the one you are most likely to win, so your free hourly fight is never wasted on a loss
    • Dungeons now cover normal dungeons, shadow dungeons, the Twister and the Tower (simulated together with your companions); the personal Portal is fought once per day
    • If nothing is winnable yet, the bot waits for better gear instead of throwing the fight away
    • Guild attacks and defenses are now joined immediately when declared, so you never miss a guild fight
    • Pet feeding automatically moves on to the next pet in order once a pet is fully maxed
    • Much quieter and faster: internal timers and per-action state replace blind retrying, so the bot no longer spams actions it cannot complete yet (portal already done, skill you cannot afford, maxed pet)
    • Coupon codes are now read directly from your in-game mail subject lines, so there is no more "message not found" noise
    • Fixed the app not reopening from the system tray after being minimized
    • General reliability, latency and safety improvements across every module
  78. 2.5.6

    • Underworld: upgrades no longer stall. It collects and upgrades every cycle and respects the Heart of Darkness build cap
    • Fortress: the gem mine now always searches for new gems as soon as it is free
    • Smart gems: sockets the best gems for your character (black/legendary first, then your main stat, then constitution and luck), fills empty slots first, never overwrites good gems, and pulls gems from old items with the forge instead of destroying them
    • Pets: pet duels and pet-dungeon fights now work correctly
    • Coupon codes sent to you in in-game mail are detected and redeemed automatically
    • Blacksmith no longer tries to dismantle non-equipment items
    • Character portrait and companion images fixed
    • Pages and Settings now open even when no account is connected, using your latest data
    • Pet names now show for every element (not just Shadow)
    • Dungeon boss names and stats now show correctly for all dungeons
    • Achievements now display the correct names for what you have unlocked
    • Arena Manager now shows your rune bonuses (resistances and damage) at a glance
  79. 2.3.0

    • Auto-update system: the app checks for new versions on startup and every 6 hours
    • Licensed users (Premium and Supporter) get a notification with Update and Restart when a new version is available
    • OS-level notifications work even when the app is minimized to the system tray
    • Signed updates with cryptographic verification for secure automatic updates
    • Discord role auto-assignment: subscribers automatically receive the Mercy SF Member and Mercy SF Supporter roles in the Discord server
    • Fixed premium features not unlocking after OAuth login without restarting the app
    • Fixed website login not auto-confirming when already logged in on mercysf.app
  80. 2.2.0

    • Log in to the desktop app straight from the website when you are already signed in on mercysf.app
    • Instant premium unlock: the app refreshes your license when its window regains focus and every 30 seconds, so new subscriptions and upgrades apply without a restart
    • Fixed premium features re-locking after switching windows or restarting (license signature is now cached and verified correctly)
    • Fixed website login not completing in the desktop app
    • Reliability improvements to account and license sync
  81. 2.1.0

    • Account login: sign in with your mercysf.app account (email, Google, or Discord) to sync your license automatically
    • Automatic license sync between the website and the desktop app
    • Security hardening: license signature verification, expiry checks, and deny-by-default feature gating
    • Premium overlay UI on locked features with upgrade prompts
    • Hardened Content Security Policy for the desktop app
    • Stability improvements and bug fixes
  82. 2.0.0

    • Cross-platform support: Windows, macOS (Apple Silicon & Intel), and Linux
    • Battle simulation viewer: replay fights with round-by-round breakdown
    • Smart item upgrade logic with class-aware weighted stat comparison
    • Arena opponent pre-scan for scrapbook targeting
    • Expedition encounter optimizer
    • Dungeon companion auto-equip
    • License tier system: Free, Premium, and Supporter tiers
    • Feature gating based on license tier
    • Stripe checkout integration with monthly and yearly subscriptions
    • Premium plan renamed from Basic to Premium (EUR5/month, EUR50/year)
    • Dynamic yearly discount calculation displayed on pricing page
    • Donate button in navbar now links directly to Ko-fi
  83. 1.7.0

    • Class-aware item evaluation: weighted stat comparison for intelligent equip decisions
    • Class-aware skills: simulation mode uses class-specific attribute priorities
    • Achievements bot module: auto-unlock features, track and complete achievements
    • Early game scrapbook priority: forces scrapbook arena when < 500 items
    • Hall of Fame scanning: scans HoF for players with missing scrapbook items
    • Level-filtered scrapbook targeting: only fights winnable opponents
    • Smart early-game: auto-buy beer, spin wheel, unlock features at low levels
    • Naturism achievement: unequips all items at early levels
    • St. Nicholas achievement: unequips boots on December 6th
    • Heavy Spinner achievement: auto-spins wheel with lucky coins
    • Globetrotter achievement: tracks location visits via quests
    • Invincible achievement: tracks 10 arena wins per day
    • Character status summary logged on bot startup
  84. 1.6.0

    • Duplicate login prevention: blocks spamming Add Account button
    • Backend session deduplication: skips already-logged-in characters
    • Login button disabled during authentication with loading state
    • Advanced Analytics: character progress tracking with persistent stats
    • Analytics dashboard with SVG charts: level, XP, silver, mushrooms, honor
    • Attribute growth comparison and recent snapshots table
    • Per-character analytics stored locally in JSON files
    • Bot runtime tracking and win/loss statistics
  85. 1.5.0

    • Multi-character support: run bots for multiple characters simultaneously
    • SSO login: automatically fetches all characters from an account
    • Per-character bot configuration saved separately
    • Add Account flow with SSO and direct login modes
    • Auto-login all saved accounts on startup
  86. 1.4.0

    • Pricing page with Stripe checkout integration
    • Monthly and annual subscription options
    • License activation flow in desktop app
    • License status display in sidebar
  87. 1.3.0

    • License tier system: Free, Premium, and Supporter tiers
    • Feature gating based on license tier
    • Auto-update system restricted to paid tiers
    • Free tier feature limits applied
    • Discord role auto-assignment based on subscription tier
  88. 1.2.0

    • Class-aware arena strategy: skips same-class opponents at low levels
    • Level-filtered scrapbook targeting: only fights winnable opponents
    • Configurable Hall of Fame lookup limit for scrapbook scanning
    • Improved bot module ordering: achievements run first
    • Character status summary logged on bot startup
  89. 1.1.0

    • Smart early-game mode: auto-unlock features at level thresholds
    • Class-aware item evaluation: weighted stats by character class
    • Class-aware skill upgrades: prioritizes main attribute per class
    • Achievement automation: Naturism, St. Nicholas, Heavy Spinner, Globetrotter
    • Scrapbook improvements: Hall of Fame scanning for missing items
    • Early-game beer buying for continuous questing
    • Free wheel spins for coins and items
    • Auto-claim reward mails and daily/event task rewards
  90. 1.0.0

    • Initial release of Mercy SF Bot
    • Full automation: Quest, Arena, Dungeon, Tower, Expedition, City Guard
    • Fortress & Underworld management
    • Pet management & Toilet
    • Guild automation
    • Calendar rewards claiming
    • Dice game automation
    • Hellevator & Legendary Dungeon support
    • Idle game automation
    • Mount management
    • Scrapbook automation
    • Web dashboard for bot control
    • Server-side bot execution
    • Auto-update system for desktop app
    • Discord & Google OAuth authentication
    • Stripe subscription integration