📜 Changelog
What changed in UrbanPact, newest first.
August 10, 2026
- 🏚 The Lodge and your hunt message could quote the same catch at two different pelt counts. When a trip returns, the 🏹 hunt message names what you bagged and what it's worth in Pelts. The 🏚 At the Lodge list on your hunt panel then quotes that same catch again while it waits for the hour to turn — and for an unusual catch the two could disagree, with the Lodge's figure, and the running total above it, not matching what you'd just been told. The two always agree now, and the total at the top of that list is what actually reaches your city's stockpile. Thanks to Jensen for spotting the mismatch.
- 💡 The advice line at the end of your hour report should stop going missing. Roughly one report in twenty-five was arriving without its 💡 tip — not because there was nothing to say, but because the game gave up waiting for the advice a moment too early and then quietly sent the report without it. Nothing told you it had happened, which is why it went unnoticed for so long. The game now waits long enough, and makes a note for us whenever a tip still doesn't arrive, so we can see it instead of guessing.
August 9, 2026
- 🌟 Something remarkable brought back from an expedition now announces itself. A 🎒 Hunting Expedition ranges over the same wildlife your own hunts do, so a party can come back with something genuinely out of the ordinary. When that happened on a hunt of your own, the game said so — a message of its own, naming what you'd found. On an expedition it didn't: the animal's name appeared only in the ordinary 🆕 New to your Wildlife Passport line of your hour report, in among whatever else the trip happened to bag, so the find of a lifetime read exactly like a hare. Expeditions now send the same announcement your own hunts do, and the find is kept out of that ordinary list so you're never told about it twice in the same breath. Short-supplied trips count too — a reduced expedition can still bring one home. Thanks to Jörg for reporting it.
August 8, 2026
- 🏅 Three medal ladders had run out of rungs — Fortune, Renown and Boomtown all go two higher. A medal is supposed to have something left to chase, and these three didn't: players had already passed the top of 💰 Fortune (gold ever held), the leader of ⭐ Renown was inside the last few percent of its ceiling, and four cities were past the top of 🏘 Boomtown with nowhere left to climb. All three now continue into Obsidian and Mythic. Nothing anyone already earned changed — new rungs only ever sit on top, and if a top rung turns out to be too far away it can come down, never up.
- 🦌 The Wildlife Passport line in
/huntstatswas quoting the wrong total. It said your species count out of 42 — the size of the roster before the hunting expansion. There are 78 public species now, so a collector who had found 60 of them read "60/42", which is both wrong and oddly discouraging in two directions at once. It now reads the same live total/wildlifeuses, so the two can never disagree again. - 🔨 The Crafting panel was quoting the wrong Workbench price. It said a Workbench costs 2,000g at the vendor; the vendor charges 1,500g. The panel now reads the real price straight from the shop, so it can't drift again.
- 💬 A batch of messages that could silently never arrive. Continuing the sweep from earlier today: if a city name, a landmark name, or a player's own Telegram name contained a
<or a>, a whole run of messages simply never showed up — the city list, joining a city, founding one, the welcome message, invite links, group linking, the roles panel,/profile,/stats, admin screens, and the city-wide Bingo and Scratch win announcements. Nothing was ever lost; the messages just couldn't be delivered as written, and the game gave you no sign of why. All of them now handle those names properly. Names that contain an&— an ordinary "Mom & Dad" — were caught by the same problem and are fixed too. - 🏛 The little story after a landmark visit is styled again, instead of showing you its markings. Travel to a Premium Building and a short story about the visit follows your hour report. It's written to carry a touch of emphasis — a bold name over it, a word or two in italics — and lately those had stopped being emphasis and started being punctuation, arriving as literal tags printed in the middle of the sentence. Nothing was wrong with the story itself; it was being handled as though every character in it were plain text, so the parts meant to be read as styling were read out loud instead. They render properly now. Thanks to Jörg and Jensen for reporting it within the same hour.
- 🛍 The one-line hour report was leaving your shops out of it entirely. If you've set your hour report to the short summary, it never mentioned your shops at all: not the ⏳ warning that a shelf has less than a day of stock left, not the ⚠️ alert on the hour a shelf sells out, not even what your shops sold and earned. The full report has carried all three since last week — the short one had simply never been taught them, so a shelf could go from healthy to bare with the report saying nothing at either end. It says all three now, on the same single line and in that order: shelves sold out first, shelves running low next, then what sold and what it brought in. Shop-by-shop detail is unchanged and still lives where it always has — 👑 Tycoon → 🛍 Shops, and the 🛍 Supply Run picker in your queue.
- ⚡ Your hour report could arrive with names missing from it. The city and landmark name fixes of the last few days covered the screens you tap; this one covers the message that arrives on its own. If a name containing a
<or a>appeared anywhere in your hourly report, it couldn't be sent as written, and what arrived instead was a stripped-back version with that name gone from it. Everything else was intact and nothing was ever lost from your city or your pockets — but the line naming a place read as though the place had no name. If your own city's name contained one of those characters, this hit every report, every hour, because your city heads the report. It also reached names belonging to other people: a landmark you visited, a city you supplied, a visitor who came to see your Premium Building, and the family names on a finished district. All of them now come through exactly as they were typed. - 📋 The Supply Run line in your queue no longer shows stray characters. A 🛍 Supply Run headed to a city whose name contained a
<or a>printed a run of odd symbols where the name should have been — in the queue section of your hour report, and as literal punctuation in the short one-line version. The name now appears as typed in both. - ✏️ The second tap on a city rename no longer claims it worked. Tapping ✅ Confirm twice showed "Already done — see the message above." That reads as the rename succeeded, and it isn't always what happened: the first tap can still stop on something — the treasury being spent elsewhere in the same moment, or the rename being cancelled from another device — and the message it points you at would then say so while the note over it said the opposite. It now says the rename has already been resolved and to read the result above, which is the one thing the second tap can actually know.
August 7, 2026
- 🏛 The whole City panel could go dark, on every tab. Following the two fixes below, we went looking for anywhere else a city, building or district name could break a screen rather than waiting for it to be reported — and found the biggest one: if a city's name contained a
<or a>, /city itself showed nothing at all, on all five tabs, for anyone who opened it. Overview, Buildings, Districts, Shops and Roles all share the same heading, so a single name took out the lot. That's fixed, along with the Building Stats, Residential Districts, Reserve floor and Commerce screens. Every panel in the game has now been checked against names like these, and names render exactly as they were typed. - ✏️ Tapping Confirm twice on a city rename no longer tells you the rename never happened. Confirming a new city name takes a moment, and tapping the green ✅ Confirm button again while you're waiting used to answer with "❌ No city rename in progress" — written straight over the "✅ City renamed to…" line that had just appeared. The rename had gone through perfectly; the second tap simply arrived after the first had finished with it, and then said so in the most alarming way available. The extra tap now shows a small note saying it's already done and leaves your message exactly as it was, so what you're left looking at is the real outcome. The same fix closes something you couldn't see: a mayor with enough treasury for two renames could be charged for both. One confirmed rename costs 500💸, once, however many times the button gets pressed. Thanks to Jörg for reporting the confusing message.
- 🌟 The website has stopped giving away how many secret discoveries there are. Your Wildlife Passport on the website headed its 🌟 Secret discoveries section with your count and a total — the only place in the game that did. In
/wildlifeand on your profile it has always shown just how many you've found, and that is deliberate: how many are out there is meant to be something you find out by finding them, not something you read off a page. That total was also a fixed number that had been sitting there unchanged for a long time, so it had gone out of date on top of everything else — one passport was reading an impossible 4/3. The section now says how many you have found and nothing more. Nothing about anyone's discoveries changed. Thanks to Jörg for spotting it. - 📋 The Queue and Masterwork buttons could do nothing at all — and it might not have been your doing. Same root as the Premium Buildings fix below, but with a sting in it: a city name containing a
<or a>didn't only break panels for that city's own members. Because your queue names the city a 🛍 Supply Run is headed to, and the hour report lists your queue, someone else's city name could sit inside your panel and make it unsendable — so tapping 📋 Queue or ⚒️ Masterwork produced silence, with nothing to suggest the cause was in another city entirely. Both panels now handle those names properly, wherever the name comes from, and they render as typed. Thanks to Jörg and Mark for reporting the two halves within hours of each other. - 🏛 Some cities couldn't be visited at all, and the button gave you nothing to go on. If a city's name — or the name someone had given one of its landmarks — contained a
<or a>, tapping that city in the 🏛 Premium Buildings panel did precisely nothing: no error, no message, the screen just sat there. The city listed normally on the way in, which made it look like the tap itself was being ignored. It wasn't your queue, your tier or the city's stock — those names were being passed through in a way that made the whole screen unsendable, so it was quietly thrown away instead of shown. They're handled properly now and every city opens, with names appearing exactly as they were typed. Thanks to Jensen for the report, and for correctly guessing the cause.
August 6, 2026
- 🖼 Or fly a picture of your own. If none of the 36 crests suit your city, you can send your own photo instead — in the crest panel, tap 🖼 Upload your own picture and send it as your next message. Every picture is looked at by a person before it appears anywhere: while it's waiting your city carries on flying whatever it had, nothing changes until it's approved, and you'll hear back either way. It's trimmed to a square, so put what matters in the middle. Once you've had one approved you can switch between it and a crest whenever you like without losing either, or delete it for good. Same two people as crests — the mayor or the minister of treasury — and it's free.
- 🛡 Your city can fly a crest now. Pick from 36 badges — a domed city hall, a construction crane, a harbor, a lighthouse, a castle — sorted into six sets: Civic, Skyline, Industry, Trade, Nature and Culture. Open it from your city panel with 🛡 City Crest. Anyone in the city can look, so you can always see which one your city flies, and the mayor or the minister of treasury can change it. It's free, it takes effect straight away, and you can change your mind as often as you like. Once you've picked one it appears beside your city's name on its page on the website, next to your city in the rankings and on the Top Cities cards on the front page, and in the game whenever someone opens your city or travels to it. Not keen on pictures in your chat? Settings → 🛡 Hide city crests turns them off for you alone — crests still show on the website. Thanks to ☃ for the idea, including the suggestion that there be a way to switch them off.
- ✅ Every way of sending feedback now confirms it the same way. There are five routes into the suggestion box — typing
/feedback, replying to a message with it, replying to the bot in your DMs with a plain note, or sending a screenshot — and they all say "saved", but not all of them looked like it./feedbackanswered with a green ✅ while the others used a small plain ✓, so the same act came back looking more definite or less depending on which route you happened to take. They all use the ✅ now. What each one says is still tailored to how you sent it: the reply route still points out the shortcut and still carries its ↩️ Undo button, and a screenshot still comes back with its number. Thanks to ☃ for the report. - 🔦 The Library panel now says what its first three levels are for. "What the Library gives you" listed Level 4 and Level 5 and nothing else, so anyone reading down it was left wondering what had happened to Levels 1, 2 and 3. Nothing had: those levels pay reputation, which the panel was already telling you a couple of lines higher up — it just never joined the two halves together. The list now opens with the reputation rung, so all five levels are accounted for in the same place: Levels 1–3 pay (each level adds to the hourly reputation every active member earns, and it keeps climbing at Levels 4 and 5), Level 4 acts, Level 5 advises. Nothing about the building changed. Thanks to ☃ for asking.
- 🔦 Back out of the Library and you land where you came from. The Library panel can be opened from two places — your city's Overview, and the 🔦 button on your queue — but its Back button only ever knew about one of them, so opening the Library from your queue and tapping ◀ Back to city dropped you on the Cities screen you'd never been on, with your queue two taps away again. The button now remembers which way you came in: from the queue it reads ◀ Back to queue and takes you straight back there, and from your city it's unchanged. Refreshing the panel keeps track too, and so does taking one of the Librarian's suggestions — work down all five and Back still points home. Thanks to ☃ for the report.
- 🛍 Your hour report no longer warns that a shelf is running low in the same breath as telling you that you just restocked it. If a Supply Run delivered this hour, the report could announce the delivery — "1,263 units delivered to your 3 shops" — and then, a few lines further down, warn that one of those very shelves was running low. Nothing was wrong with the delivery or the shelf: the warning is worked out earlier in the hour than the delivery lands, so it was describing the shelf as it stood before your units arrived. It now takes the delivery into account. A shelf you've genuinely filled up goes quiet, and one that's still thin after a partial restock keeps its warning — with the "about N hours of stock" figure counting the stock that's actually on the shelf now, not what was there before your run.
August 5, 2026
- 🧹 Emptying your hunt queue is one tap now, and your hunter in the field keeps going. Queued a run of long trips and then changed your mind about where to send them? Clearing them meant tapping the 🚫 buttons one at a time — and because removing a hunt slides the ones behind it up, the whole row shuffled between every tap, so the button you were aiming at next had already moved. Worse, when a Reserve trip got refused for setting out after your invitation ran out, the game's own advice was to go and do exactly that by hand. The hunt panel now has the 🧹 Clear queue (keep current) button the workbench crafting queue has always had — the same button, in the same place, doing the same thing: it drops every trip waiting in line in one go. The hunt that's currently out is never touched, so your hunter finishes the trip and comes home with the catch and nothing you've already waited for is lost. It only appears when there's actually something behind the current trip, and since hunts cost nothing to queue, 📋 Fill puts a whole new queue back in a single tap. Thanks to Jörg for asking for it.
- ⚓ A Market Run can now fill your whole Letter-of-Credit allowance in one go. The picker offered 1, 5 or 10 at a time — but your ceiling starts at 25 and climbs to 65 at Mogul, so topping up from empty meant queueing three, four, even seven separate runs, each one eating a queue slot that could have been a gather or a craft. The cost was never the gold; it was the queue. There's now an ⚓ Max button on the Market Run picker, in both
/tycoonand/queue, that buys everything you have room for in a single action — and it tells you exactly how many credits that is and what they'll cost before you tap, so there's no guessing. One run, one slot, whatever the size. The old 1 / 5 / 10 buttons are still there for when you'd rather spend gradually, and the button quietly disappears when you're already at your ceiling with nothing to buy. - 💰 Your gold statement was emptiest for whoever had the most going on — and there's now an ⚡ Hour by hour view behind it.
/goldreached back a fixed number of entries in our records, and every hour writes one entry per shop you own. So the more shops you ran, the less history the statement could show you: a busy shopkeeper's whole statement was reaching back barely two hours, folding both of them into one line, and reading — in its entirety — "⚡ +1,486g · 2 hour reports". Every purchase you might have opened it to find was already off the end, and ⬇️ Show more couldn't reach it either. The statement now counts movements instead: one hour is one movement, one thing you bought is one movement, so it covers the same stretch of your history whether you run twenty shops or none. The same statement now opens on nearly a day of history with every card, crate and purchase in it. And the new ⚡ Hour by hour button opens what those folded hour lines were hiding — each hour in turn, broken down by where the gold actually came from (🏪 Shop sales +507g · 18× · 💰 Wages +211g · 🏦 Bank dividend +22g), with your shop sales totalled and counted rather than listed one by one. Thanks to Jörg for asking for the hourly reports separately, or in more detail — it turned out to be both. - ✍️ A name you type has to fit on one line now. Names could contain line breaks, and one that did tore apart every panel it appeared in: a city named with a dot, a dozen blank lines and another dot rendered its
/cityheader as a lone🏛 ., a screenful of nothing, and then the rest of the heading stranded at the bottom. The real problem was what you couldn't see — a panel can only be so long before the end of it is cut off, so a name padded out with enough blank lines quietly shoved the treasury, the score and the building list off the bottom. Line breaks, tabs and the other invisible characters that do the same thing are now refused when you type the name, with a note saying why, and it applies everywhere you name something yourself — your city, your buildings, your districts and your pets. Spaces, punctuation, accents and emoji are all still fine, and names already in use are left exactly as they are. Thanks to Jörg for spotting the third hole in that gate after finding the first two. - ✨ The "Bonus yield!" line on a finished craft was under-selling itself — your stockpile was always right. A while back, crafting at Town Hall 4 and 5 got a boost: the same craft with the same tool started delivering half again as much at Level 4, and twice as much at Level 5. The total added to your city's stockpile has always included that boost. The "✨ Bonus yield! Your tool produced an extra N" line underneath it did not — it was still quoting the pre-boost figure, so at Town Hall 5 it named half the bonus units your tool had actually just banked, and at Town Hall 4 it was a third short. Nothing was ever missing from your stockpile; if you added the numbers up and they came out wrong, the line was wrong and you were right. It now names the real figure. Thanks to Vik for doing the arithmetic and asking why the number looked like it had gone backwards.
- 🛍 The Shops tab now explains why you can have more shops than trades. It opens with "🎯 Trades: 2 of 4" and then lists your shops right underneath — so if you hold two trades and three shops, the two numbers sat next to each other looking like they disagreed, with nothing on the screen to say they count different things. Nothing was ever wrong with anyone's account: a trade is a good you're licensed to sell, a shop is one storefront selling it, and you may hold one shop of a type per city — so a single trade opened in three towns is three shops. That's the whole point of a portfolio, and the panel now says so in a line under the count. Thanks to Vik for saying it looked confusing.
August 4, 2026
- 🏠 The "you can afford your next home" reminder no longer gives up after one mention. Your hour report used to tell you exactly once that you'd saved enough for your next Estate upgrade — and one line in one busy report is easy to scroll past, which is how a player sat on an affordable Manor for two days without knowing it. The reminder now appears in every hour report for as long as you can still afford the upgrade (the first says "You can now afford", the rest say "Reminder"), and it goes quiet the moment you spend below the cost or make the upgrade.
- 🔦 The Library's fill button now does what the Librarian says. At Library Level 5 the panel could argue with itself: the Librarian would recommend one thing (say, crafting provisions) while the fill button underneath poured your whole queue into your build project's materials — even when the city's stockpile already covered everything that project still needed, which means those gathers sped up nothing at all. Two fixes landed together. First, every fill now understands that a project whose remainder is already in the stockpile isn't short of anything — the city draws those materials in on its own. Second, at Level 5 the fill button (now labelled Queue the Librarian's plan) queues exactly what the Librarian is recommending: urgent shortages get the most slots, your project's genuinely-missing materials come next, and if the plan includes an expedition or a premium visit, one of each is queued too. The one thing it will never do on a bulk tap is run a Market Run — that spends your Letters of Credit, so it stays its own button. The Librarian also learned a new trick along the way: it now tells you when your build project still needs something the stockpile can't cover.
- ✍️ An abandoned rename prompt no longer swallows everything you type later. If you ever tapped "Rename City" (or started naming a building, district, or pet) and walked away without finishing, the game kept quietly waiting for that name — and from then on, replying to any message got you a baffling "Name must be 1–32 characters" instead of doing what you meant. Replies are now always treated as replies: reply to any of the bot's messages and it saves as feedback like it's supposed to, even with a naming prompt still open. Typing a name normally (as a fresh message, not a reply) still works exactly as before.
- 💡 The AI coach stopped crying wolf about supplies. Almost every city always has something trending downward, so the hourly tip had turned into a near-permanent "you're running low on…" warning — and everything else the coach knows about went unsaid. It now only raises a shortage when the city is genuinely a couple of hours from running dry; the rest of the time it moves on to whatever's actually most useful — an export order sitting switched off, a premium visit that would close your tier gap, a tool you can afford, an idle workbench. When it does warn you now, take it seriously.
- 💬 The
/feedbackhelp now shows the reply route the way it actually works. Typing/feedbackon its own prints a short usage hint, and the tip at the bottom of it read "reply to any message with /feedback to send feedback about it" — leaving out the part where you type your note after the command. In a private chat you could get away with it (a bare/feedbackreply opens a prompt and asks for your note), but in the community group there is no prompt — a bare/feedbackreply just lands you back on the same hint, which was then telling you to do the thing that had not worked. The tip now reads "reply to any message with /feedback <your comments>", matching the Usage line right above it. Thanks to ☃ for the correction. - 🏪 The vendor asks before it takes your gold on anything permanent. Buying a tool, the Master's Charter, the Grandmaster's Charter or a queue slot used to be a single tap — the gold was gone the moment your thumb landed, with no way back. Those purchases now open a confirmation screen first: what you're buying, what it costs, what you hold, and what you'd hold afterwards. Nothing is charged until you tap Yes, buy it, and Cancel puts you back on the shelf you were browsing. It matters most where the numbers are largest — a permanent queue slot runs to 250,000💰 and climbs from there, and a mis-tap on one was unrecoverable. Things you buy over and over — potions, boosts, luxury restocks, scratch tickets — deliberately stay one tap, because you meant to buy them and you'll buy them again next week. Thanks to ☃ for the report, who put it best: "I never liked or trusted One-Click purchasing."
- 📜 Your gold statement now names the right Charter. The Grandmaster's Charter was recording its 50,000💰 under the Master's Charter's name, so anyone who bought the second one and went looking for it in
/goldfound the biggest line on their statement labelled as something they'd bought months earlier. Both now appear under their own names. Older entries are left as they were — your statement is a record of what happened, not something we go back and rewrite. - ⏩ Rush Tokens stack now — spend a second one while the first is still running and it adds two hours instead of being turned away. Every other timed item in the game works this way: Hired Help, Second Shift, the Hunting Party and Mr. Crane's Invitation all extend the clock when you redeem another. The Rush Token was the odd one out. It refused, and worse, its button disappeared from the Crafting panel while a boost was running — so if you owned three of them and wanted a long unattended run, there was no way to line them up. You had to sit and watch for the window to lapse, then catch it. The button now stays put and reads Extend Rush Token, and three tokens burned back to back give you one continuous six-hour stretch at double speed. One detail worth knowing: crafts you queue during a boost are already running at the faster rate, so extending doesn't speed them up a second time — it buys you more of the same speed, not compounding speed on top of itself.
- 🎯 The hunt panel now says why Big Game trips are long — because that's what you're buying. A Crossbow trip takes far longer than a quick Bow hunt, and the panel showed you the two numbers and left you to draw your own conclusion. The usual conclusion was "the Crossbow is slower," which gets the trade exactly backwards. Hunts go out one at a time, so your hunt slots aren't extra hunters — they're runway, and a longer trip buys more of it out of the same slot. A full queue of Big Game keeps hunting for most of a day while you're away, where the same slots filled with quick hunts run dry in about two hours and then earn nothing until you come back. The panel now spells that out for Crossbow owners, with both figures worked out from your slots and your deepest ground. A quick hunt still pays a shade better per hour actually spent hunting, so if you're at the panel every hour or two, the Bow is your faster lane — but for anyone checking in a couple of times a day, the Crossbow brings home several times as much. Thanks to Jörg for the report that surfaced it. (No hunting numbers changed: every ground still earns pelts at the same rate per hour, near ones and far ones alike.)
- 🚢
/tradeis in your command menu now — it should have been there all along. Trade was the one city panel you could only reach by knowing the word and typing it. It wasn't in the slash menu, it wasn't in/helpunless you were a Mayor or Trade Minister, and there was no button to it from anywhere — so if you closed it, finding your way back was guesswork. Worse, your hourly report points you at the trade history when its routes list runs long, and that history has always been open to every member of a city, not just the ones who negotiate — so the people that pointer was written for were exactly the people with no way to follow it./tradenow appears in the menu and in/helpfor everyone with a home city. Viewing your city's deals and their full history is open to all members, as it always was; offering, accepting and ending deals is still the Mayor's and Trade Minister's call. Thanks to Brad for reporting it, and to ☃, who spotted the same thing first and got a tidier answer than he deserved. - 💰 Your gold statement could fail its own arithmetic — and the thing that was wrong was the receipt, never your gold.
/goldfinishes by doing the sum in public: what you started with, everything since, and whether that lands on what you're holding. For some of you it didn't land, and the panel said so and asked you to report it. That check was doing exactly its job. Here's what it caught. Your hourly wage is paid to everyone in turn, and the balance written down beside your wage was read a moment before the paying started — so if you spent gold in that gap, by restocking a shop or buying from a vendor, your wage line noted down a balance that hadn't heard about the purchase yet, and the statement came out short by exactly what you'd spent. Your actual gold was never affected by any of this, not by a single coin; only the statement's account of how you got there was off. Every wage now reads your balance at the moment it's paid, so the sum closes. The same stale reading also fed the net this hour figure at the foot of your hour report, which could be wrong by the same amount — that's right now too. Thanks to Buzzaroo for forwarding the warning rather than shrugging it off: a panel built to catch us out is only worth having if someone tells us when it fires.
August 3, 2026
- 🏪 Your stockroom is now sized to the trade your shop actually does — and if you're the only one selling a good in town, it just got up to four times deeper. This one runs the opposite way to how it sounds, so it's worth a moment. When nobody else in a town sells your good, every buyer comes to you — so you sell about four times as fast as a merchant splitting that market with three rivals, and a shelf of the same size runs bare four times as often. Cornering a market was quietly the most expensive thing you could do: the merchants who had done it best were making a supply trip every day or two just to stay stocked, while shops in crowded markets coasted for a week. A shelf line now scales with how few rivals you have — four times the standard lot on your own, twice with one rival, standard with three or more — so a full shelf lasts about as long whoever you are. Nothing changes for shops in busy markets; those lines are exactly where they were. The line follows the market, so a rival opening in your town will lower it and one closing will raise it again — but it never drops below the standard lot for the good, and nothing already on your shelf is ever taken away: if you're stocked above a new lower line, you simply keep it and buy nothing more until it sells down. Filling a much deeper shelf costs more gold up front, so if you can't cover it all at once the run still goes ahead and gives every shop the same share of what it needed. Thanks to Mark for asking why keeping his shops stocked was eating half his day's queue — it turned out to be the reward for being the only bookseller in the realm, working backwards.