▶
![Steam Image](https://steamcdn-a.akamaihd.net/steam/apps/931270/ss_2877f69a04c718d78a0137001082053c367acf3f.1920x1080.jpg)
![Steam Image](https://steamcdn-a.akamaihd.net/steam/apps/931270/ss_6aa1ec938cfd962173742f3631eefcb536b22565.1920x1080.jpg)
![Steam Image](https://steamcdn-a.akamaihd.net/steam/apps/931270/ss_69a918e98eeb49298fff05b5ffc721b8c0f917dc.1920x1080.jpg)
![Steam Image](https://steamcdn-a.akamaihd.net/steam/apps/931270/ss_6f130036be6cf2a5e40dea4f651949fdd20aad33.1920x1080.jpg)
![Steam Image](https://steamcdn-a.akamaihd.net/steam/apps/931270/ss_9257b94351adfa91bc9b2b48305d75d4d75ed951.1920x1080.jpg)
![Steam Image](https://steamcdn-a.akamaihd.net/steam/apps/931270/ss_b8e110951d0a312d32200674acd29a6c74d8601a.1920x1080.jpg)
EA Update #22 - Leather update
I decided to make Leather production fairly involved with multiple production chains using all the different production mechanics - growing, harvesting, animals, crafting buildings, mining. Essentially, Leather is a high value item used for high value purposes and I wanted to represent that by having diverse and significant production requirements. (There aren't any final products yet except Codices (which are not balanced yet), but this should lay the foundation for the "next tier" items. Though I decided to publish the update before I get further carried away with changes.) Quarries can now build a Lime Mine, which produces Lime:![](https://clan.cloudflare.steamstatic.com/images/35266199/8367eb6a4bc652dbf63663600eb124b11867393a.png)
Arborists can now grow Wattle tree saplings and Foresters will plant them. These don't spawn/grow naturally and need to be grown from saplings.![](https://clan.cloudflare.steamstatic.com/images/35266199/073c8ebb8ae76fb292bbfc06e928aba3cfbf12da.png)
Wattle trees do not produce Logs, but instead Bark. These are also collected by Lumberjacks like other trees.![](https://clan.cloudflare.steamstatic.com/images/35266199/23852d940b4e79c18f274e3a56a1b8e05cfc6200.png)
Bark is used in Bark Mill to produce Tannin:![](https://clan.cloudflare.steamstatic.com/images/35266199/b3e84f10de1a912be25a9af09c81dfe71b667f70.png)
The Butcher building now comes with an Abattoir and a Table required auxiliary buildings, where animals are... processed. In addition to Meat, Butcher will now also harvest Hides from Pigs once Leatherworking is unlocked.![](https://clan.cloudflare.steamstatic.com/images/35266199/cc155f23f1894ffbfd4e59ab18a96187e204f2fe.png)
Animals brought to the Butcher now actually hang around the building as "real" units instead of magically disappearing into it as virtual items. The worker will actually fetch the individual animal and lead it to the Abattoir. I felt it was an important part of my "every item is real" design principle that I neglected with animal transfers (mostly due to implementation complexity).![](https://clan.cloudflare.steamstatic.com/images/35266199/22b9e4433c35e5b1d717c7dab8b531a1ef1fa390.png)
An optional Butcher's Pen can be constructed to keep the animals within certain tiles instead of wandering randomly:![](https://clan.cloudflare.steamstatic.com/images/35266199/e76f36f0c2c9711d9c433d8dc1571fd9f4605c0b.png)
This also means that animals can now die of old age if they aren't... processed fast enough by the Butcher. In addition to Butcher, Hunter can now also skin and harvest Hides from Boars and Deer:![](https://clan.cloudflare.steamstatic.com/images/35266199/3103c9b761a0c122f3992095ff397bba741cfa8d.png)
Similar to Butcher, Hunter now also produces Meat and Hides:![](https://clan.cloudflare.steamstatic.com/images/35266199/45bfee5d71b8d6a7612d96aa3a938ad31bf4a779.png)
Animals will now be double-harvested - first for Meat and second their Carcasses for Hides. Before Leatherworking is unlocked, the Hunters will just leave the Carcass.![](https://clan.cloudflare.steamstatic.com/images/35266199/28fb853034cfebcffa4a582cedb77f852311110b.png)
All (wild) animal (carcasses) now leave bones behind:![](https://clan.cloudflare.steamstatic.com/images/35266199/3815f1efb80f128cd5655da15949dff6331b57e6.png)
This adds a little bit of extra visual variety (instead of dead animals disappearing instantly):![](https://clan.cloudflare.steamstatic.com/images/35266199/d993ff1642fcd32302580bef661d440cd357d2cc.png)
Tannin, Lime and Hides are then taken to the Tannery building, which processes them through a Hide-preparation Bench, Liming Vat (using Lime) and Tanning Pit (using Tannin). This produces Leather.![](https://clan.cloudflare.steamstatic.com/images/35266199/af66d6cd537da0e4cfd63a1cab7589364cc3bc60.png)
Leather is currently used by Currier to produce Book Covers:![](https://clan.cloudflare.steamstatic.com/images/35266199/28ce0131c2bffa5dde9328575add1fa7fb510c12.png)
Bookbinder now requires Book Covers in addition to Paper to produce Empty Books:![](https://clan.cloudflare.steamstatic.com/images/35266199/4bde5c9e92dfe6beb6cb8cdecaad1419344eb5a3.png)
For now, there aren't any major changes to knowledge gathering and technologies. Some techs have moved around and adjusted requirements. I have also adjusted the details and buildings in preparation of making separate technology tiers. Notably, Scholars will now always produce Research Notes without requiring Paper and the Library is available from the start, where these Notes must be taken to get the Knowledge points.![](https://clan.cloudflare.steamstatic.com/images/35266199/98fd269a831eef3a8936a0640cd0d04707ad1bfb.png)
The Scribe will continue using Paper, but will make Research Scrolls instead. These are also taken to the Library.![](https://clan.cloudflare.steamstatic.com/images/35266199/f01d18c9127e44462424811a01c25eb363d01107.png)
Finally, The Bookbinder works similarly to before, producing the Research Codices:![](https://clan.cloudflare.steamstatic.com/images/35266199/640205ae1c3e8a54f0f01de76b487de373acf09d.png)
These changes serve to establish a common design language of a Library serving as the central location to "deposit knowledge" of different quality (tiers).![](https://clan.cloudflare.steamstatic.com/images/35266199/8462924bd21da58422618360322dcec511396403.png)
In the future, I will add additional tech tiers and unique knowledge type(s) that requires Scrolls/Codices for higher tiers. This would then make sense for Leather to be this expensive and involved to produce. Currently, Scholars are more than sufficient to produce all the knowledge you need to unlock all the techs. But I have to limit the scope of these updates or I'll never publish any at all! So for now Leather and Knowledge are not balanced. Notes and Codices will simply produce more knowledge - 2 and 3 respectively.
One thing (that I should have done from the start) is making sure all buttons have a visually-distinct and consistent appearance when pressed. And to account for color blindness, this cannot be simply a change in hue (in fact my beige + green UI choice is the worst possible one for most common color blindness types). Here is the setup for a "normal" UI button:![](https://clan.cloudflare.steamstatic.com/images/35266199/a2075eb8159f6c1e63042d397776f918132f4068.png)
Now, I don't use every possible combination of color and state and element, but there are a lot of them. I tried to keep everything modular and only use what I need. But this has nevertheless created a lot of individual pieces to maintain, which is one the reasons for taking a long time to adjust.![](https://clan.cloudflare.steamstatic.com/images/35266199/97075f5eea8ee5a4bc8ecf6854d3e50209a3b024.png)
I should reflect that doing such a change after so much of UI is already implemented and wired is really tedious. I basically have to adjust every single button and interactable control in-game. Some never had a "pressed" version, others mixed them up, others have conflicting states, etc. This is the sort of thing I should have done from the beginning and really planned how all UI elements would have clear states, and then never deviate from that in any particular UI part.
I also finally added dragging to build multiple roads (in an earlier mini-update).![](https://clan.cloudflare.steamstatic.com/images/35266199/4183024a5a641660391b07046a4a084e8e73949d.png)
The most tricky part of this was choosing which way to angle the road. There are almost always 2 symmetric layouts that a road can be drawn between two tiles. For this I had to decide where the player most likely intended the road, based on the mouse movement up to that point:![](https://clan.cloudflare.steamstatic.com/images/35266199/0de356612b1eb7f3e5e8461613284f0ebec60bc0.png)
![](https://clan.cloudflare.steamstatic.com/images/35266199/f2deddbcca80bc03db8fa1bd2f5cd68aa33adb1d.png)
In short, when dragging a road I keep track of every coordinate the player "visits". But I only keep one coordinate for every distance from the mouse. I then calculate how "far" the player's movement is from either of the two variants and pick the one that is "closer". This is much easier said than done, especially if you consider that you could be moving the mouse around a lot in all directions, passing the same point repeatedly, "rewinding" back, extending, dragging so fast tiles are skipped, changing your mind, etc. It basically ended up with me just playtesting until I couldn't really make it any better. The real difficulty was testing it and fixing all the corner cases. I suppose I could have done this ages ago. But, like I suspected, this one feature took me a full week to implement. If I had to do this feature by itself, it would probably take an afternoon. But within the game as it is, it has to be integrated with all the other systems - camera, input, controls, rendering, selection, construction, etc. And that's always very tricky and finicky, especially for something like this that breaks half the systems when they only expect one click and one action. I realize that I still haven't added multiple building drag-building. But this is a slightly different problem because it is an area-based operation and the actual area you would want to fill is kind of context-based. In fact, I need two operations (with a modified key, probably) - "circle" and "rectangle". I'm sure there are other things I'm not even thinking of yet.
Houses now have random chimney smoke. But only if they have Firewood available.![](https://clan.cloudflare.steamstatic.com/images/35266199/8c8574fe2eb7a1a9e04b06207002f3803f3423cb.png)
I'm sure this ranks really high-up on the important feature list. :) But, in seriousness, I made the Houses 7-tile buildings so that I can show visual feedback as the result of the player supplying them with all the items. This is important feedback that directly correlates to player's actions, in this case long-term supply. Furthermore, stuff like there being more chimney smoke during winter and less during summer is not something most people would immediately consciously notice, but I believe that it is an extremely positive overall experience when the player notices and experiences one of the rare moments like "wow, the game actually considers the current season for smoke amount". Selected buildings (technically, only Butcher for now) will now also have marker sprites for animals (and their carriers):![](https://clan.cloudflare.steamstatic.com/images/35266199/5dd7cf8bb927f0717795677e7b3c7954f2517237.png)
I didn't manage to add this before, because internally animals are units, which are not items. I mean, it sounds obvious, but that means all the code I have for item delivery markers needs a similar copy for animals/units. I do want to add more production involving animals in the future, so leading animals as inputs/outputs would be the kind of feedback I need markers for to be consistent. (There are other places like this - Pigs don't appear in item report and there's no designated Animal report window. So, technically, you cannot currently track your Pig production/usage.) You can now toggle newly-placed building worker slots between one and all filled - this menu shows up when placing a building with worker slots:![](https://clan.cloudflare.steamstatic.com/images/35266199/ae4319b92ede57100932cd8282b73fddaaddd772.png)
First of all, apologies for the slow updates. The real-life has gotten in the way and I had very little opportunity to work on the game. My immediate next concrete feature is likely the technology tiers. I don't have an exact idea of how it will work, but I have some probable solutions. As always, I suspect it will turn out more complex than I am thinking. The main goal is to make knowledge gathering more involved and less "rushable". And I just generally like the idea of multiple "science items" all needed together for late-game techs. And everything needs to be balanced. I have some ideas for Leather as well - namely, Work Clothes for residences (along with regular linen and warm wool clothes). There are a lot of things that logically follow leather availability. I might make a mini update for this and some other residence tweaks. And now that I have animal "harvesting", I also want to add Fur and Luxury Clothes of some sort, plus something to do with birds. Although this is getting dangerously close to needing residence levels and upgrades... The level generator has really taken the backseat for a while now. I still really want and need to finish it, so I can add some unique biomes and locations to the map that I cannot do right now due the technical limitations of randomly generating the world in a certain way. But it also has the hardest part left - the step where level generator output is converted to gameplay tiles. There is no lack of annoying technicalities to solve for this. As always, I have a long list of ideas and changes both my own and from the community. As usually happens, I'll try to pick some more requested and/or desired feature(s) to implement in parallel. Of course, I'm always happy to hear out ideas and requests.
Changes Add Leather item Add Leatherworking technology (requires Woolworking, Quarrying, Forestry and Hunting) Add Hide item Butcher now has Abattoir and Butcher's Table auxiliary buildings Animals delivered to Butcher now wait at the building instead of "disappearing" as inputs Butcher now produces Meat and Hide from Pigs Butcher will now properly list Pigs as "inputs" with tooltip info similar to items Butcher can build optional Butcher's Pen auxiliaries for animals to wait at Add Carcass props for hunted animals - Deer Carcass, Boar Carcass, Wolf Carcass and Wolf Carcass Hunter's Lodge will now leave behind animal Carcasses after skinning an animal Hunter's Lodge will now collect Deer Carcasses and Boar Carcasses for Hides once Leatherworking is unlocked When wild Animal corpses decay or Carcasses decay or are harvested, they will leave behind Bones (that will also decay eventually) Add Bark item Add new Tree species Wattle grown from Wattle Saplings and harvested for Bark (instead of Logs Lumberjack can now toggle Log and Bark production Add Tannin item Add Bark Mill building with Bark Roller that crafts Bark into Tannin Add Lime item Add Lime Mine to Quarry for Lime mining Add Tannery building with Tanner's Bench, Liming Vat and Tanning Pit that crafts Hide, Lime and Tannin into Leather Add Book Cover item Add Currier building with Leatherworking Table that can craft Leather into Book Cover Bookbinding now also requires Leatherworking Bookbinder now has a Bookbinding Table auxiliary building Bookbinder now requires Book Cover in addition to Paper to make a Blank Book Rename "Notes" to "Research Notes" Rename "Codex" to "Research Codex" Rename "Scholar" to "Observer" (and reuse the name "Scholar" for more advanced building) Observer building no longer requires Paper to produce Research Notes Observer building no longer directly produced Knowledge, but requires produced Research Notes to be taken to the Library Library is now unlocked by Research from the start Tutorial now includes Library construction Add Research Scrolls item Research Scroll is using visuals from former Notes, and Research Notes has new visual Add Research Scroll item Scribe building now takes Paper and crafts Research Scrolls (instead of Research Codices Add new building Scholar and Scholar's Desk that now uses Blank Books to make Research Codices Library building now accepts Research Notes, Research Scrolls, and Research Codices Reorganize the tech tree for the new technology dependencies Papermaking now requires Research (already unlocked at start) Bookbinding no longer requires Research (since the required Papermaking is based on it now) Add worker slot pre-fill toggle buttons for the construction tab/menu - a choice between default one slot or all slots filled when building Houses will now randomly have chimney smoke when they have Firewood (more in Winter, less in Summer) Make tech tree line intersections and splits clearer for certain ambiguous cases Add Markers for animals being led (currently Pigs to Butcher) Roads can now be placed by dragging (default right-click); dragging will show preview and construction availability for each tile; placing will succeed even with some tiles being blocked; dragging will also upgrade roads; dragging can be cancelled with opposite mouse button (default left-click) Add more frame cap limit options Diet need Sentiment tooltip for buildings will now show the underlying values Improve descriptions for Food Quality and Food Variety Import Stations and Export Stations tooltips will now mention that number of items types/stack and per-stack capacity Fixes Smith being unlocked too early by Smelting when there are no items that can be crafted yet Rare tutorial processing exception when loading an older save that redeploys a building while tutorials are active Fix internal exception when zooming while drag-building roads Fix UI windows (notably, tech panel) not sizing correctly to fit on the screen Saves would not load if there were old Quarries/Mines with disabled production Multiple items from the same Food Category not contributing correct Food Variety values Pickles not being included in Residence total food reserve count and thus some calculated values Diet need requiring too much Food Variety (technically achievable, but unintentionally strict) Some infolines not showing correctly Minor infoline fixes Fix error when toggling sale or export items while the building is under construction causing material items to be "reset" and cause subsequent internal errors Fix Boardwalks not buildable on Excavated Rocks Smith unlocking before Forge, which has nothing to craft by default Pickling-related building not being observable by Scholar Loading older saves could result in broken Forges, because they now require production item selection In rare cases, changing production or selling items would break item internal state Deposits would rarely not generate the correct amount Fix rare bug with older saves failing if the tutorial is active and some relevant building needs to be reset Fix rare potential exception when leaving the game world with non-default input mode (e.g. constructing) Rare internal error when a building or road with active Markers is removed and markers potentially recreated for invalid entities Add missing UI step for Glass Kiln Fix internal corrupted state for a case where a building is finishing de/construction, but an item that needs relocation appears on it (such as being dropped or unit dying and leaving a corpse), thus triggering item relocation which fails as the building is completed or removed Fix a rare case of building Markers causing an internal error when a unit performing some delivery to/from it dies Fix a very rare case where just-selected Import Stations and Export Stations would cause a game save to fail Fix Export Station route tooltip showing incorrect (inverted) list of items selected for shipping Balancing For now, Research Scrolls will provide 2 points of Knowledge and Research Codices will provide 3 points Adjust some tech costs Villagers will no longer die from consuming food items directly from storage without having a Residence early in the game Stone Deposit now provides twice the amount of harvests, i.e. 6 to 12 Non-food Reserves will now last roughly 50% longer Change Cheese quality to 2 up from 1 to make it easier to get the bonus of 2 without Pickles Optimizations Rendering updated sprites (especially when there are a lot) is slightly faster Reduce lagspike when updating changes to a large amount of sprites, such as when tile construction validation appears/disappears Reduce lagspike when showing a large number of similar sprites, such as toggling between tile construction validations Reduce sprite visibility change slowdown when scrolling and zooming when there are a lot of sprites Rudy Snowy Ash Games
[ 2023-06-12 18:32:52 CET ] [ Original post ]
This smaller update (but part or a larger direction) adds Leather item to the game and the production chains leading up to it; plus various changes.
Leather
I decided to make Leather production fairly involved with multiple production chains using all the different production mechanics - growing, harvesting, animals, crafting buildings, mining. Essentially, Leather is a high value item used for high value purposes and I wanted to represent that by having diverse and significant production requirements. (There aren't any final products yet except Codices (which are not balanced yet), but this should lay the foundation for the "next tier" items. Though I decided to publish the update before I get further carried away with changes.) Quarries can now build a Lime Mine, which produces Lime:
![](https://clan.cloudflare.steamstatic.com/images/35266199/8367eb6a4bc652dbf63663600eb124b11867393a.png)
Arborists can now grow Wattle tree saplings and Foresters will plant them. These don't spawn/grow naturally and need to be grown from saplings.
![](https://clan.cloudflare.steamstatic.com/images/35266199/073c8ebb8ae76fb292bbfc06e928aba3cfbf12da.png)
Wattle trees do not produce Logs, but instead Bark. These are also collected by Lumberjacks like other trees.
![](https://clan.cloudflare.steamstatic.com/images/35266199/23852d940b4e79c18f274e3a56a1b8e05cfc6200.png)
Bark is used in Bark Mill to produce Tannin:
![](https://clan.cloudflare.steamstatic.com/images/35266199/b3e84f10de1a912be25a9af09c81dfe71b667f70.png)
The Butcher building now comes with an Abattoir and a Table required auxiliary buildings, where animals are... processed. In addition to Meat, Butcher will now also harvest Hides from Pigs once Leatherworking is unlocked.
![](https://clan.cloudflare.steamstatic.com/images/35266199/cc155f23f1894ffbfd4e59ab18a96187e204f2fe.png)
Animals brought to the Butcher now actually hang around the building as "real" units instead of magically disappearing into it as virtual items. The worker will actually fetch the individual animal and lead it to the Abattoir. I felt it was an important part of my "every item is real" design principle that I neglected with animal transfers (mostly due to implementation complexity).
![](https://clan.cloudflare.steamstatic.com/images/35266199/22b9e4433c35e5b1d717c7dab8b531a1ef1fa390.png)
An optional Butcher's Pen can be constructed to keep the animals within certain tiles instead of wandering randomly:
![](https://clan.cloudflare.steamstatic.com/images/35266199/e76f36f0c2c9711d9c433d8dc1571fd9f4605c0b.png)
This also means that animals can now die of old age if they aren't... processed fast enough by the Butcher. In addition to Butcher, Hunter can now also skin and harvest Hides from Boars and Deer:
![](https://clan.cloudflare.steamstatic.com/images/35266199/3103c9b761a0c122f3992095ff397bba741cfa8d.png)
Similar to Butcher, Hunter now also produces Meat and Hides:
![](https://clan.cloudflare.steamstatic.com/images/35266199/45bfee5d71b8d6a7612d96aa3a938ad31bf4a779.png)
Animals will now be double-harvested - first for Meat and second their Carcasses for Hides. Before Leatherworking is unlocked, the Hunters will just leave the Carcass.
![](https://clan.cloudflare.steamstatic.com/images/35266199/28fb853034cfebcffa4a582cedb77f852311110b.png)
All (wild) animal (carcasses) now leave bones behind:
![](https://clan.cloudflare.steamstatic.com/images/35266199/3815f1efb80f128cd5655da15949dff6331b57e6.png)
This adds a little bit of extra visual variety (instead of dead animals disappearing instantly):
![](https://clan.cloudflare.steamstatic.com/images/35266199/d993ff1642fcd32302580bef661d440cd357d2cc.png)
Tannin, Lime and Hides are then taken to the Tannery building, which processes them through a Hide-preparation Bench, Liming Vat (using Lime) and Tanning Pit (using Tannin). This produces Leather.
![](https://clan.cloudflare.steamstatic.com/images/35266199/af66d6cd537da0e4cfd63a1cab7589364cc3bc60.png)
Leather is currently used by Currier to produce Book Covers:
![](https://clan.cloudflare.steamstatic.com/images/35266199/28ce0131c2bffa5dde9328575add1fa7fb510c12.png)
Bookbinder now requires Book Covers in addition to Paper to produce Empty Books:
![](https://clan.cloudflare.steamstatic.com/images/35266199/4bde5c9e92dfe6beb6cb8cdecaad1419344eb5a3.png)
For now, there aren't any major changes to knowledge gathering and technologies. Some techs have moved around and adjusted requirements. I have also adjusted the details and buildings in preparation of making separate technology tiers. Notably, Scholars will now always produce Research Notes without requiring Paper and the Library is available from the start, where these Notes must be taken to get the Knowledge points.
![](https://clan.cloudflare.steamstatic.com/images/35266199/98fd269a831eef3a8936a0640cd0d04707ad1bfb.png)
The Scribe will continue using Paper, but will make Research Scrolls instead. These are also taken to the Library.
![](https://clan.cloudflare.steamstatic.com/images/35266199/f01d18c9127e44462424811a01c25eb363d01107.png)
Finally, The Bookbinder works similarly to before, producing the Research Codices:
![](https://clan.cloudflare.steamstatic.com/images/35266199/640205ae1c3e8a54f0f01de76b487de373acf09d.png)
These changes serve to establish a common design language of a Library serving as the central location to "deposit knowledge" of different quality (tiers).
![](https://clan.cloudflare.steamstatic.com/images/35266199/8462924bd21da58422618360322dcec511396403.png)
In the future, I will add additional tech tiers and unique knowledge type(s) that requires Scrolls/Codices for higher tiers. This would then make sense for Leather to be this expensive and involved to produce. Currently, Scholars are more than sufficient to produce all the knowledge you need to unlock all the techs. But I have to limit the scope of these updates or I'll never publish any at all! So for now Leather and Knowledge are not balanced. Notes and Codices will simply produce more knowledge - 2 and 3 respectively.
Accessible buttons
One thing (that I should have done from the start) is making sure all buttons have a visually-distinct and consistent appearance when pressed. And to account for color blindness, this cannot be simply a change in hue (in fact my beige + green UI choice is the worst possible one for most common color blindness types). Here is the setup for a "normal" UI button:
![](https://clan.cloudflare.steamstatic.com/images/35266199/a2075eb8159f6c1e63042d397776f918132f4068.png)
Now, I don't use every possible combination of color and state and element, but there are a lot of them. I tried to keep everything modular and only use what I need. But this has nevertheless created a lot of individual pieces to maintain, which is one the reasons for taking a long time to adjust.
![](https://clan.cloudflare.steamstatic.com/images/35266199/97075f5eea8ee5a4bc8ecf6854d3e50209a3b024.png)
I should reflect that doing such a change after so much of UI is already implemented and wired is really tedious. I basically have to adjust every single button and interactable control in-game. Some never had a "pressed" version, others mixed them up, others have conflicting states, etc. This is the sort of thing I should have done from the beginning and really planned how all UI elements would have clear states, and then never deviate from that in any particular UI part.
Drag-building roads
I also finally added dragging to build multiple roads (in an earlier mini-update).
![](https://clan.cloudflare.steamstatic.com/images/35266199/4183024a5a641660391b07046a4a084e8e73949d.png)
The most tricky part of this was choosing which way to angle the road. There are almost always 2 symmetric layouts that a road can be drawn between two tiles. For this I had to decide where the player most likely intended the road, based on the mouse movement up to that point:
![](https://clan.cloudflare.steamstatic.com/images/35266199/0de356612b1eb7f3e5e8461613284f0ebec60bc0.png)
![](https://clan.cloudflare.steamstatic.com/images/35266199/f2deddbcca80bc03db8fa1bd2f5cd68aa33adb1d.png)
In short, when dragging a road I keep track of every coordinate the player "visits". But I only keep one coordinate for every distance from the mouse. I then calculate how "far" the player's movement is from either of the two variants and pick the one that is "closer". This is much easier said than done, especially if you consider that you could be moving the mouse around a lot in all directions, passing the same point repeatedly, "rewinding" back, extending, dragging so fast tiles are skipped, changing your mind, etc. It basically ended up with me just playtesting until I couldn't really make it any better. The real difficulty was testing it and fixing all the corner cases. I suppose I could have done this ages ago. But, like I suspected, this one feature took me a full week to implement. If I had to do this feature by itself, it would probably take an afternoon. But within the game as it is, it has to be integrated with all the other systems - camera, input, controls, rendering, selection, construction, etc. And that's always very tricky and finicky, especially for something like this that breaks half the systems when they only expect one click and one action. I realize that I still haven't added multiple building drag-building. But this is a slightly different problem because it is an area-based operation and the actual area you would want to fill is kind of context-based. In fact, I need two operations (with a modified key, probably) - "circle" and "rectangle". I'm sure there are other things I'm not even thinking of yet.
Miscellaneous
Houses now have random chimney smoke. But only if they have Firewood available.
![](https://clan.cloudflare.steamstatic.com/images/35266199/8c8574fe2eb7a1a9e04b06207002f3803f3423cb.png)
I'm sure this ranks really high-up on the important feature list. :) But, in seriousness, I made the Houses 7-tile buildings so that I can show visual feedback as the result of the player supplying them with all the items. This is important feedback that directly correlates to player's actions, in this case long-term supply. Furthermore, stuff like there being more chimney smoke during winter and less during summer is not something most people would immediately consciously notice, but I believe that it is an extremely positive overall experience when the player notices and experiences one of the rare moments like "wow, the game actually considers the current season for smoke amount". Selected buildings (technically, only Butcher for now) will now also have marker sprites for animals (and their carriers):
![](https://clan.cloudflare.steamstatic.com/images/35266199/5dd7cf8bb927f0717795677e7b3c7954f2517237.png)
I didn't manage to add this before, because internally animals are units, which are not items. I mean, it sounds obvious, but that means all the code I have for item delivery markers needs a similar copy for animals/units. I do want to add more production involving animals in the future, so leading animals as inputs/outputs would be the kind of feedback I need markers for to be consistent. (There are other places like this - Pigs don't appear in item report and there's no designated Animal report window. So, technically, you cannot currently track your Pig production/usage.) You can now toggle newly-placed building worker slots between one and all filled - this menu shows up when placing a building with worker slots:
![](https://clan.cloudflare.steamstatic.com/images/35266199/ae4319b92ede57100932cd8282b73fddaaddd772.png)
Future plans
First of all, apologies for the slow updates. The real-life has gotten in the way and I had very little opportunity to work on the game. My immediate next concrete feature is likely the technology tiers. I don't have an exact idea of how it will work, but I have some probable solutions. As always, I suspect it will turn out more complex than I am thinking. The main goal is to make knowledge gathering more involved and less "rushable". And I just generally like the idea of multiple "science items" all needed together for late-game techs. And everything needs to be balanced. I have some ideas for Leather as well - namely, Work Clothes for residences (along with regular linen and warm wool clothes). There are a lot of things that logically follow leather availability. I might make a mini update for this and some other residence tweaks. And now that I have animal "harvesting", I also want to add Fur and Luxury Clothes of some sort, plus something to do with birds. Although this is getting dangerously close to needing residence levels and upgrades... The level generator has really taken the backseat for a while now. I still really want and need to finish it, so I can add some unique biomes and locations to the map that I cannot do right now due the technical limitations of randomly generating the world in a certain way. But it also has the hardest part left - the step where level generator output is converted to gameplay tiles. There is no lack of annoying technicalities to solve for this. As always, I have a long list of ideas and changes both my own and from the community. As usually happens, I'll try to pick some more requested and/or desired feature(s) to implement in parallel. Of course, I'm always happy to hear out ideas and requests.
Full changelog
Changes Add Leather item Add Leatherworking technology (requires Woolworking, Quarrying, Forestry and Hunting) Add Hide item Butcher now has Abattoir and Butcher's Table auxiliary buildings Animals delivered to Butcher now wait at the building instead of "disappearing" as inputs Butcher now produces Meat and Hide from Pigs Butcher will now properly list Pigs as "inputs" with tooltip info similar to items Butcher can build optional Butcher's Pen auxiliaries for animals to wait at Add Carcass props for hunted animals - Deer Carcass, Boar Carcass, Wolf Carcass and Wolf Carcass Hunter's Lodge will now leave behind animal Carcasses after skinning an animal Hunter's Lodge will now collect Deer Carcasses and Boar Carcasses for Hides once Leatherworking is unlocked When wild Animal corpses decay or Carcasses decay or are harvested, they will leave behind Bones (that will also decay eventually) Add Bark item Add new Tree species Wattle grown from Wattle Saplings and harvested for Bark (instead of Logs Lumberjack can now toggle Log and Bark production Add Tannin item Add Bark Mill building with Bark Roller that crafts Bark into Tannin Add Lime item Add Lime Mine to Quarry for Lime mining Add Tannery building with Tanner's Bench, Liming Vat and Tanning Pit that crafts Hide, Lime and Tannin into Leather Add Book Cover item Add Currier building with Leatherworking Table that can craft Leather into Book Cover Bookbinding now also requires Leatherworking Bookbinder now has a Bookbinding Table auxiliary building Bookbinder now requires Book Cover in addition to Paper to make a Blank Book Rename "Notes" to "Research Notes" Rename "Codex" to "Research Codex" Rename "Scholar" to "Observer" (and reuse the name "Scholar" for more advanced building) Observer building no longer requires Paper to produce Research Notes Observer building no longer directly produced Knowledge, but requires produced Research Notes to be taken to the Library Library is now unlocked by Research from the start Tutorial now includes Library construction Add Research Scrolls item Research Scroll is using visuals from former Notes, and Research Notes has new visual Add Research Scroll item Scribe building now takes Paper and crafts Research Scrolls (instead of Research Codices Add new building Scholar and Scholar's Desk that now uses Blank Books to make Research Codices Library building now accepts Research Notes, Research Scrolls, and Research Codices Reorganize the tech tree for the new technology dependencies Papermaking now requires Research (already unlocked at start) Bookbinding no longer requires Research (since the required Papermaking is based on it now) Add worker slot pre-fill toggle buttons for the construction tab/menu - a choice between default one slot or all slots filled when building Houses will now randomly have chimney smoke when they have Firewood (more in Winter, less in Summer) Make tech tree line intersections and splits clearer for certain ambiguous cases Add Markers for animals being led (currently Pigs to Butcher) Roads can now be placed by dragging (default right-click); dragging will show preview and construction availability for each tile; placing will succeed even with some tiles being blocked; dragging will also upgrade roads; dragging can be cancelled with opposite mouse button (default left-click) Add more frame cap limit options Diet need Sentiment tooltip for buildings will now show the underlying values Improve descriptions for Food Quality and Food Variety Import Stations and Export Stations tooltips will now mention that number of items types/stack and per-stack capacity Fixes Smith being unlocked too early by Smelting when there are no items that can be crafted yet Rare tutorial processing exception when loading an older save that redeploys a building while tutorials are active Fix internal exception when zooming while drag-building roads Fix UI windows (notably, tech panel) not sizing correctly to fit on the screen Saves would not load if there were old Quarries/Mines with disabled production Multiple items from the same Food Category not contributing correct Food Variety values Pickles not being included in Residence total food reserve count and thus some calculated values Diet need requiring too much Food Variety (technically achievable, but unintentionally strict) Some infolines not showing correctly Minor infoline fixes Fix error when toggling sale or export items while the building is under construction causing material items to be "reset" and cause subsequent internal errors Fix Boardwalks not buildable on Excavated Rocks Smith unlocking before Forge, which has nothing to craft by default Pickling-related building not being observable by Scholar Loading older saves could result in broken Forges, because they now require production item selection In rare cases, changing production or selling items would break item internal state Deposits would rarely not generate the correct amount Fix rare bug with older saves failing if the tutorial is active and some relevant building needs to be reset Fix rare potential exception when leaving the game world with non-default input mode (e.g. constructing) Rare internal error when a building or road with active Markers is removed and markers potentially recreated for invalid entities Add missing UI step for Glass Kiln Fix internal corrupted state for a case where a building is finishing de/construction, but an item that needs relocation appears on it (such as being dropped or unit dying and leaving a corpse), thus triggering item relocation which fails as the building is completed or removed Fix a rare case of building Markers causing an internal error when a unit performing some delivery to/from it dies Fix a very rare case where just-selected Import Stations and Export Stations would cause a game save to fail Fix Export Station route tooltip showing incorrect (inverted) list of items selected for shipping Balancing For now, Research Scrolls will provide 2 points of Knowledge and Research Codices will provide 3 points Adjust some tech costs Villagers will no longer die from consuming food items directly from storage without having a Residence early in the game Stone Deposit now provides twice the amount of harvests, i.e. 6 to 12 Non-food Reserves will now last roughly 50% longer Change Cheese quality to 2 up from 1 to make it easier to get the bonus of 2 without Pickles Optimizations Rendering updated sprites (especially when there are a lot) is slightly faster Reduce lagspike when updating changes to a large amount of sprites, such as when tile construction validation appears/disappears Reduce lagspike when showing a large number of similar sprites, such as toggling between tile construction validations Reduce sprite visibility change slowdown when scrolling and zooming when there are a lot of sprites Rudy Snowy Ash Games
[ 2023-06-12 18:32:52 CET ] [ Original post ]
MicroTown
Snowy Ash Games
Developer
Snowy Ash Games
Publisher
2019-08-30
Release
Game News Posts:
28
🎹🖱️Keyboard + Mouse
Very Positive
(429 reviews)
Public Linux Depots:
- MicroTown Linux [82.11 M]
Build and manage your growing town in this relaxing village construction and management simulator with focus on production chains, villager desires and light combat elements.
Start with nothing and grow into a bustling town. Gather and process resources, establish supply and production chains, maintain your villager needs, and defend your settlement.
Collect and record knowledge, research and advance through technologies, and unlock new materials and professions.
Mr. Piggles agrees.
MINIMAL SETUP
- OS: Ubuntu 16.04+
- Processor: SSE2+ supportMemory: 1 GB RAM
- Memory: 1 GB RAM
- Graphics: 1280x720+. shader model 4.0+
- Storage: 500 MB available space
GAMEBILLET
[ 6059 ]
GAMERSGATE
[ 1312 ]
FANATICAL BUNDLES
HUMBLE BUNDLES
by buying games/dlcs from affiliate links you are supporting tuxDB