It’s me again, mrmcduck, with another FOUNDRY FRIDAY episode. Today I am talking about the most common machines in the game: Loaders. First I want to talk about them in general and then we take a look at a recent change our team has made.
Let’s talk Loaders
Loader, Inserter, Sorter. There are many names for the key element in factory games: The thing that moves items between belts and other machines. Some games even come without them at all and some variants have more features while others have less. Even though there is the obvious commonality, there is also a lot of nuance in how the Loader can be designed in terms of a gameplay perspective. Here I’ll share my personal thoughts about the different variants and where I see the pros and cons for our first person 3D factory game.
Loaders or no Loaders?
The biggest question first: Should there be Loaders? They could be removed if all machines have had input/output connections for belts so that belts can go directly into or come out of the machine. For FOUNDRY I decided that this is not the way to go, and here’s why.
Benefits:
Having one less buildable object makes the game more streamlined, which is in most cases a good idea, it’s easier to understand.
It *might* look better, I think this depends on how both variants are implemented, but in general there is a good chance that this is going to look better.
Negatives:
If you want to supply a large amount of machines it takes a lot longer to set up everything necessary because you need an additional splitter per machine (to branch off your belt into each machine). Splitters tend to be large and it requires more complex builds if there are multiple inputs and outputs. Also it requires more slopes to bridge the mess of belts that starts to exist on each side of the row of machines. With Loaders of different ranges it’s easy to build two or even three parallel belt lanes next to a row of machines and connecting them is fairly simple. For player comfort we always aim to require the least amount of clicks possible to build what is needed.
Cannot do Filter Loaders where only a certain item is taken from the belt. It could alternatively be achieved with a filter splitter but that gets cumbersome quickly if you need multiple.
Loaders have more flexibility, for instance you could have two belts with the same item and connect them both to the same machine so that items are taken from whatever belt has items available. While this example is certainly not the most necessary thing, the general argument holds up, especially for more experienced players and complex builds.
All recipes will have to look the same in terms of amounts of inputs/outputs per machine type. Alternatively you could have a machine with 4 inputs and 4 outputs and only the ones needed would be used, but that isn’t great either.
Loader Throughput Speed
Many games have multiple Loaders with different speeds, providing an additional gameplay element of figuring out which or how many Loaders are necessary. So far we went with an extremely fast Loader speed which is always enough to satisfy the machine requirements. The reason is that building in first person is more time consuming than in 3rd person and forcing the player to build multiple Loaders per machine per same item type seems like it could backfire quickly. However, it’s something we’re still evaluating and maybe at some time FOUNDRY will have different Loader speeds.
Machine to Machine & Belt to Belt Connections
Some games have Loaders which can be used to connect two machines or even two belts to each other. I think this is a good feature as it allows for more flexibility and more advanced designs, yet I decided against it in FOUNDRY. This time the reason isn’t that there are gameplay related negatives, but that it’s hard to come up with a visually appealing design in a first person 3D environment that is capable of achieving that. The only design that works would be the Factorio-style rotating arm that grabs items from one side and puts them to the other side. That specific design has a few problems I’m going to explain in the next paragraph. Additionally I think it is more of a niche feature. Most players will rarely use a machine to machine setup as they are only rewarding in extremely advanced (ultra-high-throughput) designs where belt speed becomes the bottle-neck.
Identifying issues with our Loader design
After some testing and feedback we realized that the fully obfuscated belt tile beneath the Loader is not great and needs improvement.
First, here are the reasons I initially went with such a design:
Items can be placed on / taken from anywhere on the belt tile below, not just the exact center of the belt. This makes it tricky to simulate like a rotating arm (or other things that grab items) to be at the correct position. There are ways to solve or lessen the issue, but they all come with downsides, be it gameplay-wise (messing with throughput ratios) or visually (like heavy clipping into other items or jumping items). I’m fully aware that my explanation is not sufficient to lay out the problems, but the topic is so complex it could fill its own blog post - so I’ll just leave it with that.
Items can be squeezed into gaps that are too small for a full item, causing them to overlap for a brief period. The moving belt automatically unfolds those overlaps. The reason we do this is that it’s necessary to achieve maximum belt throughput, otherwise those gaps would never be filled and cause unreliable belt throughput ratios.
Now let us look at the problem our design caused. There are few smaller ones like mediocre visuals and sometimes less than ideal visibility, but there is one core issue we consider close to game-breaking: If there is an input Loader at the end of your belt it is impossible to find out what is beneath that Loader. And in case of a wrong item being there, it is impossible to figure out why it’s not working. Most people experiencing this expected the game to be broken. See the picture below:
The machine is configured to take Xenoferrite Plates to craft machinery parts, but it’s not working at all. On the picture on the left everything seems fine, however once you remove the Loader you see that some other item that shouldn’t be there was blocking it. Unless you demolish the Loader, this is impossible to figure out.
New Loader Design
To address those problems we redesigned our Loader. It’s not a huge change since we liked the general look and style, but we wanted to open up the visibility. So here is it:
The biggest change is that we can now see into the Loader, which makes understanding the factory a lot easier and solves our previous problem. The open space now features a teleport effect that gets more intense after an item has been moved, giving visual feedback whenever a Loader moves an item. We did an overall pass on the visuals but kept the general shape and look. It now features arrows on top making it even more obvious if it’s an input or output loader.
But did you spot the biggest change? The belts aren’t as high as they were before. We did this to be able to reduce the height of the Loader, which makes the factory feel a lot better. The Loaders don’t obstruct machine and screen panel visibility as much as they did before. But it turns out that lower belts itself helped dramatically with what we tried to achieve: They are less often in the way now, stepping onto them is less jarring as the step up height is smaller and you see more of your machines and factory.
So what about the problems I tried to conceal with the closed design? Yes you get to see items disappear or pop up inside the teleport effect, but the visual effect breaks it up nicely and doesn’t make it feel weird or unfinished. In future we might look into polishing this further with adding a fade effect to the item itself. Overlapping items: It’s almost impossible to see when the belts are moving, and if they are not and an item gets squeezed in it’s just something to accept. It’s rather rare to spot and the overall benefits outweigh the rare visual inconveniences.
We’re looking forward to hearing your feedback and thoughts around this change. This concludes today's episode of FOUNDRY FRIDAY and see you again in two weeks!
Witness the incredible journey of the Czechoslovak Legion and watch the first Gameplay Reveal Trailer of Last Train Home exclusively unveiled during the THQ Nordic Digital Showcase 2023.
Last Train Home is an epic survival strategy game. The gameplay reveal takes you through the steps required to reach your ultimate destination, Vladivostok:
Roam through war-torn cities and the vast Siberian countryside.
Send out squads from the train to scavenge along the Trans-Siberian Railway.
Lead your soldiers in intense real-time tactical battles.
Unlock new skills for your troops.
Skillfully manage and upgrade your train.
Gather and trade essential supplies.
If you find the gameplay intriguing, go ahead and pop the game onto your Steam wishlist to stay in the loop!
Cosmoteer: Starship Architect & Commander - Walt Destler
Cosmoteer patch 0.23.2 is now available! This update has a variety of quality-of-life improvements, bug fixes, and modding features.
Enjoy!
Each ship can now have a maximum storage limit set for each type of resource. To do this, either click the little menu button in the Resource Manager or right-click the Gather/Salvage/Mine Resources button. When a limit is set, it will not be possible to collect, trade, transfer, or produce resources above the limit.
The "Sell Surplus" and "Buy To Capacity" (which has been renamed to "Buy Needed") options now use the resource limits if any have been set.
Updated the resource management tutorial to mention resource limits.
Crew will now empty factories into non-designated resource storage tiles and will prefer to fill storages before filling factories.
Added 2 new Monolith ships: Aegis and Journeyman.
Added 4 new Imperium ships: Alamgir, Bonaparte, Saker, and Selim.
Added 2 new Fringe ships: Porca Miseria and Raghdirst.
Added 2 new Cabal ships: Auriga and Eltanin.
Various updates and fixes to existing ships.
Improved VFX while crew are constructing ships.
Translation updates for all languages.
The missing part warnings are now displayed in the lower-left corner of the ship editor (above the build/paint/crew/resources/comms buttons) instead of the lower-center.
Crew will now more aggressively deconstruct airlocks as long as they have at least one existing airlock not scheduled for deconstruction.
When returning to the multiplayer game setup screen after playing a Career mode game, the galaxy seed will now be re-randomized.
When using the "Restock Resources" feature, if the designated resource type for a storage tile is different than the type of resource it is actually storing, then the stored resources will be changed to the designated type.
A mining laser or deck cannon that force-targets its own ship will no longer actually be able to hit its own ship.
Placing a custom marker will now remember the last on-default name used.
When the Quick Saves tab is selected in the Load Game dialog, the quick-save and quick-load hotkeys will now be displayed.
Tutorial popups on the HUD are now displayed in red instead of green.
A sound will now be played when a new tutorial pops up.
Improved performance when many Resource Collector beams were firing.
Fixed the spelling of the word "isosceles". (Was literally unplayable.)
Bugfix: Loading a game that was saved during construction where resources had been pre-purchased from stations (or trade ships) could cause internal game data inconsistencies and lead to crashes and possibly other bugs.
Bugfix: Resources that dropped due to deconstruction could be automatically assigned to storages that are also queued for deconstruction, resulting in those resources being left outside once the assigned storage is actually deconstructed.
Bugfix: Resources Collectors could get stuck trying to deliver resources if the destination storage was full. They will now try to deliver to an alternate storage or, if none are available, just give up.
Bugfix: In some very specific circumstances, crew delivering power or resources from one room to another could get "stuck" oscillating between jobs, walking back-and-forth or spinning in circles.
Bugfix: Moving a ship to a completely different location on the build grid could cause an "ALL HANDS LOST" if it was the player's only ship and crew construction was enabled.
Bugfix: Crew wouldn't prioritize building airlocks if the airlocks didn't exist in the ship's blueprints.
Bugfix: It was impossible to salvage your own ships when playing as "All Players" in Creative Mode.
Bugfix: Splitting a ship with auto-fired thrusters into more than 2 pieces would result in some of the pieces losing their auto-fire toggle.
Bugfix: Thrusters would lose their ramp-up after splitting off from their ship.
Bugfix: Pressing the hotkey for Direct Control Mode while a part or parts are selected but no ship is selected would cause parts of the user interface to get "stuck" until the hotkey is pressed again.
Modding: Almost all ID strings are now case-insensitive.
Modding: The game will no longer crash if a string key is missing. Instead the U.I. will show the string key itself.
Modding: BlendSprite and BlendSpriteGrid now both support a 'GetColorFrom' parameter.
Modding: Random part sprites and UV rotations are now chosen deterministically based on the sprite's location.
Modding: ContinuousEffects components now support a 'GetColorFrom' parameter that is compatible with most visual effects.
Modding: All part Graphics and Sprite components now support a 'UseConstructionProgressAsDamage' paramater that, if set to true, will use the part's construction completion percentage (instead of health) for determining which damage level sprite to display.
Modding: Parts now support 'ConstructionProgressMediaEffects' and 'ConstructionProgressMediaEffectsTimeout' analogous to SalvageProgressMediaEffects and SalvageProgressMediaEffectsTimeout.
Modding: ResourceConverter now supports a 'CheckResourceLimits' parameter that, if true, will cause the ResourceConverter to not convert if the number of resources on the ship is at the resource limit specified by the player.
Communications for Call of Duty®: Modern Warfare® III have officially begun.
It’s time to adapt or die in a fight against the ultimate threat. Task Force 141 will be tested beyond the breaking point. The ultimate threat is here. And this time, it seems Captain Price needs all the allies and support he can muster.
The Worldwide Reveal in Warzone Operation Shadow Siege on August 17
Assemble a four-person fireteam and be ready to drop into Call of Duty: Warzone™ starting at 9:30 AM PT on Thursday, August 17. Double XP begins at this time, shortly before the commencement of the Shadow Siege Limited Time Event, scheduled to begin at 10:30 AM PT. The exact operation is shrouded in secrecy, but intel interceptions from Commander Phillip Graves seem to indicate the battle you should prepare for:
“This is an airborne to ground assault of the Konni-occupied Zaya Observatory.”
— Commander Phillip Graves, Call of Duty: Modern Warfare II
Join the ranks of Shadow Company, take on Konni forces, secure chemical weapons before it’s too late, and receive numerous rewards. Additionally expect to view the full reveal of Modern Warfare III. Complete additional objectives in Operation: Shadow Siege to claim further items, such as a new Base Weapon, all immediately available in Call of Duty: Warzone and Modern Warfare II . . .
. . . and eventually Modern Warfare III thanks to Carry Forward.
To save time I am planning to do one big update early in November which will be the Beta update, it will include all new things listed below. Then Little Hats will finally go from alpha to beta. During the next few months up until then I will be working daily to improve the current game, and make lots of changes based on feedback and research, which in the end should result in the best possible game I could ever hope to produce! :D
Here follows a quick overview of what's currently being worked on per month up until the big Beta update:
July (Completed):
A new small gnome town called Little Falls
New gnome roads to connect the world more.
Roads to caves.
The world has been made more pretty around the new roads.
Troll traps in which the player can get stuck can now be encountered around the map, once trapped a troll will appear.
Day trolls will spawn more often also in other areas now.
Foxes can now be tamed!
Bear traps will spawn in the forest with trapped animals in it. You can use a walking stick to break open the trap, then you can heal the animal and once it's healed it's tamed.
You can now tame a wild hare! Once you free one from a trap, and feed it carrots, it will be tamed! After which you can name it, and let it follow you around or order it to stay in place.
You can now craft Hare Back Storage, which will allow you to store up to 4 items on the back of your hare, then simply ask the hare to follow you and you will be able to take more items on your adventure!
A troll can now also get stuck in the bear trap, and you can free it and be rewarded with spirit points for your kindness or leave it there out of revenge.
There are now walk, run, sprint, and idle camera shake effects, making moving around feel more realistic. You can disable the effects in graphics settings if you get motion-sick easily as it might not be pleasant for everyone.
The player character now faces the direction that the player is walking in, which means running around will look way more realistic and pretty, before the character used to walk sideways, making it seem like he was some sort of crab, or slightly floating over the ground.
Player character now has dive animations for when jumping into water.
Player character now also has steep hill animations, when going up or down a steep hill he now bends his back slightly making walking up/downhill seem more realistic.
The player character now has an out-of-breath animation.
August:
Redesigned and better HUD.
Tons of balancing to make the game more playable and fun/challenging in all areas.
Creating a more consistently interesting experience, connecting all that is in the game better to each other, and making overall gameplay more smooth and intriguing.
Footstep particles and footprints.
Locked gnome doors.
Opening doors, drawers, etc, will take longer, and feel more like opening something.
New effects when hungry or thirsty.
Bug fixing.
Sleep will be required or else player will suffer damage.
Dirtyness will be added, making your character look dirty when running in mud, swimming in swamps, etc, characters will react to this and your health will also be affected by it.
A bathtub will be added to clean your character.
Dying will be improved, making it more fun and rewarding to respawn, while also raising the stakes when death occurs.
AI will now stalk player before attacking, making the forest a lot scarier ;D
AI will be louder and heard from afar, further increasing tension for player.
The player will have a magic ability.
Current story will be hugely improved, and in parts remade, giving the player an emotional story to follow.
More quests will be added, using the new story, new game elements, and a better-defined game loop.
Side quests will also be added along with the new quests.
The intro will be improved, players will get an immediate taste of the new basic game loop of LH and get emotionally invested in the story.
Building and crafting will be required to complete quests and dungeons
Creativity in building projects will be rewarded and encouraged.
Gold bars will likely be added as the final most precious resource.
September:
Improved audio and more satisfying and crisp sound effects will be added.
Player will have a lasting impact on world, stealing coins, food, etc, will have lasting consequences for NPCs.
Plates and other items in human houses will fall and break when pushed away, which will alert all nearby humans of your presence, making sneaking through human houses quite a bit more intense and fun.
NPC's will react to the state of player, they will notice when player is hungry, thirsty, hurt, sleepy, dirty, etc. Their dialogue will change based on this.
Hunters and trolls will interact in new ways with player bases and buildings, they might sneak to your front door and wait there or peak through your windows!
NPC's will look and behave more like they are real, smart, and they might even look at you judgemental when your character is dirty.
NPC's will have hand gestures and might have lip movement when in dialogue.
Human children will be added to the school in Klein Kampen and on the streets, further filling up the world, some will have sidequests.
NPC's will have more fun animations, inspired by the old Disney cartoons.
More human models will be made and added to the world, with new tasks, making everything feel more full and alive.
A subplot will be added with humans who secretly plot to overthrow the king of Steynwood to open the Steyndike gate so they can get food for their families, using sidequests you will be able to support them.
Human camps in the forest will be added.
A lot will be added to the actual map of Little Hats, the goal will be that every 60 to 120 seconds some interesting or scenic place will appear when going about the map. Places will tell small stories of their own and the world will be made to feel more like an actual place.
More interesting gnome npc tasks and dialogue will be added, gnomes that smoke a pipe, or play instruments.
New gnome models will be added, also more classic-looking gnomes will finally make an appearance in the game.
Wandering gnomes and humans will appear in the forest with dialogue and sometimes trading options.
The goose will be loose! A goose will be added to the game which you will be able to fly on, but only in the lowlands will you be able to craft a saddle that will allow you to fly as long as you want, in Steynwood you will only be able to fly for a few seconds before gliding off, but it'll still be fun.
More NPCs will spawn around player all the time.
NPCs will interact with each other and sometimes start fighting each other.
Foxes, deer, and the goose will have a click attack to scare away trolls and humans.
Caves will be more interesting, they will have troll houses in them along with traps and puzzles.
Ancient Huyne houses will be added to the map, large stone houses in which the race of Huynen used to live, they will be ruins and players will be able to build in them.
More atmospheric effects will be added like different types of clouds, more fog types, and particle effects in areas.
October:
Texture resolutions will be made consistent, making the game assets fit better and look better together.
Colors of all textures will be altered and slightly changed to make everything look more in one style.
Dropped tools will blink as resources making them easier to find.
Interactable items and objects will be generally made brighter than noninteractive objects and items, making it easier to spot them.
Overall style of the game will be made more consistent.
Small notes will be added on pieces of paper, revealing more lore about the world and the story.
Ways will be created that will allow for each player's adventure to be unique and different.
Bug fixing
The map will be physical instead of a widget on screen, player will hold an actual map when pressing M or F2.
Menus will be made to look more in tune with the game and feel better to use.
A fishing mini-game will be added to fish for tadpoles.
More bug fixing and improving.
Warm and cold effects will be added, when in cold areas you will need to wear warm clothes.
Lastly, the first part of the lowlands will be made and added to beyond the Steyndike, this will have a city, and some farms, and will all be in a winter snow theme!
November
Bug fixing/test-playing.
More bug fixing and improving.
Finally, the new Big, Beta update will be uploaded and made available for LH players!
After the Beta update, Little Hats might be raised in price slightly due to the extreme amount of change and additions made to the game since it was first released, so get it while it's cheap! ;D
Please share Little Hats with friends, family, and anyone you know! if you wish to help me make Little Hats reach its greatest potential or consider donating/buying it for a friend! As always thank you all for the amazing support, Im looking forward to releasing the Beta update, and can't wait to hear how you all like it! Tim :D
I have created an ammo management system. Guns will have a set amount of ammo they are able to hold at a given time, when you reload it checks for if you have ammo in your inventory and reloads according to how much you have spare.
Animal hitboxes and ragdoll constrains have been improved and now properly wrap around their bodies.
Moon Phases Fixed
The Moon phases now render correctly.
Weather Performance Improvements
There were some pretty major performance issues with the weather. The main issue is that when the tornado would contact a tree, it would tell it to change its mesh to a stump. This is normal and supposed to happen, the issue is that it would telling the tree to do this every frame, regardless if the tree was already a stump. This resulted in major CPU overhead trying to change the mesh constantly. This has been fixed and the performance is much better. Improvements to storm cloud rendering have also been made.
Host Parody
I have made a change to how player saves are loaded. The game will now always try to match the host save. What this means is that, if I have a world, and I have lots of items in my inventory that are vital to playing the world, and I give my friend the world file, he will load in with all the same items that I had.
Save Compatibility System
I have made many changes to how actors are saved and loaded. Previously if I were to do so much as move a file around, it would risk breaking save files. Now I have created a system that allows for greater compatibility over the long term. It uses lookup tables with identifiers to find the class it needs, rather than pointers to classes, which could change from build to build. Along with this I have created a versioning system for save files, which is able to detect what version the save was last loaded on, and perform any compatibility updates if needed, preventing the save from becoming corrupt. I have already put it into action by changing the location of the sea level, and landscape height. The system was able to correctly reposition all objects to the new ground location. There has also been simular compatibility code added for things like inventories, to detect if the amount of slots has changed since last load, and properly resize the amount of slots without corrupting items. BLAH BLAH BLAH BORING TECHNICAL SPEAK BLAH BLAH BLAH.
Small Changes/Bug Fixes
Animations have been optimized.
Equipable Items now use skeletal mesh.
Graphics Quality settings are now auto detected on first time launch.
Grass rendering has been improved for better performance.
Fog can no longer be completely opaque.
Lights will stop rendering at a distance of 30 meters.