Engineer Alpha's Log #83: Making Things Unlocked Earlier

Engineer Alpha

An open world survival and automation game. Engineer Alpha combines an infinite editable world, building and connecting of automated machinery, and RPG style player progression.

In the last update to Engineer Alpha I moved around both Magnetubes and Cranes in the tech tree to make them reachable earlier. I did this for several reasons but will go into each individually. Conveyors have been causing me a fair bit of lag in my personal playing of Engineer Alpha. Of course buildings/objects that are inefficient are always going to be looked at to be improved. When it comes to conveyors their current implementation is not very good and leaves a lot of room for improvement. For those of you who know a bit of code each conveyor uses a for loop every update for all the items on it i.e. very slow to update. I have started working on an update for conveyors that will hopefully make them much faster but in doing so I realized that I was taking the wrong approach to the problem. Conveyors are great and serve a very specific purpose in the game best; move a single type of item from A to B. The problem is that from the moment you build your first quarry you have to deal with "dirty" belts that contain several different items that all need to go different places to be processed. Belts are terrible at dealing with this situation you need to make a main line that has splits for each item to be sent off of it then when you saturate that main belt you need to build another one all over again. This is not what I want you to have to deal with when playing Engineer Alpha. To that end I changed Magnetubes to be in the copper tier researchable just after struct pack 1. The goal is that conveyors and Magnetubes will exist alongside each other, and both serve a purpose in the factory. Magnetubes will be the "main bus" to transport large quantities of items medium to short distances as well as sorting items while conveyors will move items short distances like one machine to the next in a crafting chain. It will likely take a bit of balancing until the costs and everything work out for both conveyors and tubes but hopefully things will work out. The rewrite for conveyors is likely going to have to wait a while but Magnetubes are much more efficent in their updating as they have no item collision to worry about and they use path caching when an item wants to go along a path that has already been calculated for the network given the start and end points it can just grab it out of a hash table. Cranes were moved to be in the middle of iron tier because I felt like if they stayed in steel they would be too late to the party as it were. By the time you would unlock the first tier of crane they would be basically useless and you would just say "I wish a had this hours ago because that when I needed it" which is never a good feeling. I am also considering a change to the way that cranes operate, the decoupling of the movement of the hook with the building of objects. The concern is that because the game is 3D and therefor cubic the number of blocks you can need to build something can skyrocket very quickly; in order for cranes to build in a reasonable timeframe they will need to build rather fast. The current working plan is that builds will be on a timer say 2-10 per second or whatever feels right and the crane will only need to move within a few blocks or so to be able to perform the build action and it will likely have a faster movement speed to match. All this is because the current speed makes you want to pull your hair out as you say "I could do it faster by hand" which is not the intended goal. Sure you can do something else while it is going but the manual aspect should still be faster so you don't feel like you are constantly waiting for the crane to catch up with you. If there is anything else that you find that you feel like once you get it no longer has a purpose please let me know and I will consider changing it because making a fun gameplay experience with cool and useful unlock is one of my top priorities.