While attempting to write up the checklist for this feature, I had some issues because there's too many mechanics going on simultaneously. So I'm rewriting my notes with some simplifications I've made. There was also a bit of an organization problem, which should also be fixed now.
Bases have three main points to them that tie them into the game:
Bases have a Research feature that opens up a lot of optional systems in the game, as well as a couple which are essential for game progression.
A Base Inventory lets you store infinite items, compared to your personal inventory which is pretty limited even when upgraded.
Bases can contain Fixtures, which do specialized tasks such as modifying or transforming materials or letting you farm.
The Base Tab
When you enter or leave a Base, a "Base" tab will appear in your tabs area. This contains several subtabs:
Research -- This unlocks new features, either essential or optional. A lot of what it's doing is helping to improve the overall UX of the game.
Storage -- With specialized fixtures known as Crystechs, you can store and retrieve things from your Base Inventory.
Pylons -- Pylons are a specialized fixture that lets you build tiles for a whole lot cheaper. This can be useful for building bases obviously but their improvements can be used in other ways like walling off enemies or increasing resource yield.
Fixtures -- This menu gives you other fixtures that can be placed in a room. These all have to be researched in one way or another, with the exception of Labs.
Starting out, you're only given access to the Research and Fixtures tab, and the Fixtures tab only has a Newflesh Node in it. This will sort of introduce you to the fixtures system while also making sure that you go through the Research tab and aren't confused about general game progression.
Research unlocks systems and features. They help guide base progression as well as the progression of other optional systems as well. Research is also essential to overall Game Progression.
Research is accessed in two ways:
The "Research" subtab in your Bases tab will let you research whole slews of features at once -- these will be titled either "X Package" or "X Lab". Packages can contain Labs (which you'll see in the description), but will unlock other features as well.
At the top of the research subtab, you're able to place Labs in your base -- these are fixtures that offer more specialized research, unlocking specific fixtures and features at your leisure. Labs are interacted with by touching them.
When you first open your Research menu, you're given the Explorer Lab to unlock. You can unlock it for free and then place it. Unlocking it and placing it is required before you can do anything else, as it concentrates vital game progression. You get some messages in the general research area about all this while it's happening. This sort of forces you into placing Labs which is important for other Base progression.
Once you have done that, then you can access a long list of research packages and unlock whatever you want. The top two entries are highlighted in some way, as they unlock the Pylons and Storage systems for Bases, which makes Bases a lot more useful (and easier to build). However you can technically skip them if you want (idk why you'd want to).
Research packages have a name, a description, and a button to unlock them. With the exception of the Pylons and Storage research packages, they all cost significant amounts of aether. You're therefore somewhat constrained in what you can research generally and get to choose which optional systems you want to access.
As pointed out before, sometimes all you're unlocking is a Lab which then unlocks other stuff.
Labs can always be placed for free. They look a bit different from each other, which is indicated when you select them from the labs selection section prior to placing them. There's also a table you can open that shows you what all of them look like, which might make it easier to place or just scan your base's display and see what kind of labs you're looking at.
The lab's menu is basically a second research menu -- you can place other Labs from it and you get a long list of unlockable research. Instead of being packages though, you're unlocking fixtures or features. You can occasionally unlock additional Labs as well.
Labs also differ a bit from the Research tab in terms of how they unlock things:
Lab unlocks tend to cost a lot less Aether than stuff on the Research tab does.
Research can need specific items in order to unlock it. These can be homogeneous materials (like Quartzshards) or very specific materials (like Radiant Upsesium Ore). This shouldn't require much -- it's there mainly to make sure you're progressing in the game correctly. I'd make them specific materials like that to improve the fetching aspect a bit, simplify the menu and add a small procedural element to the game.
Research can require other research within the Lab be unlocked first. This isn't organized in a tree-like structure because no individual Lab should be that complicated. You will however get to see it before unlocking (grayed out in some way) and see what you need to unlock first.
Overall the Lab system should heavily simplify research from a player's perspective but should also make it a lot easier for me to add new features without overwhelming players.
The Explorer Lab
This unlocks several things, some of which are essential for game progression, and others which are good to have for that but not required:
Caves -- This unlocks the Caves section of your crafting menu, allowing you to craft Torches, Ropes, Grappling Ropes, Bombs, and Quartzshards.
Base Portal -- This fixture is free and gives you an access point back to your base after you go to the nearest town. You can only have one Base Portal at a time, and it's somewhat expensive to teleport there but it does at least give you an access point back to your base.
Portals -- (requires Base Portal) -- This unlocks the Portals subtab in your Atomizer menu. This feature will let you warp to the nearest town or your base portal -- however you won't be able to use it at all until you place a base portal (as an attempt to prevent players from stranding themselves.)
After this point, the unlocks are indicated a bit different -- while not strictly essential to game progression, they're good to have:
Portals Lab (requires Portals) -- Upgrades your Portals feature a lot, adding Attractors, Tangles and later on Repulsors and Transdimensional Attractors.
Fuel Refinery -- Lets you create Fuel from plant products which ties into metalworking and industry.
Forge -- Lets you turn metal ores into metals and precious metal ores into precious metals.
Smithy -- Lets you use metals and precious metals to craft metal stuff like weapons or lockpicks.
Altar/Aether Lens -- these fixtures mimic the ones found in Caves or Shops and both cost quartzshards and starshards to craft.
Unlike in other games, you have one global Base Inventory which is available from anywhere in the base. Bases in Shatterloop are also somewhat unique in that you have the same Base regardless of where a particular room is (or even which dimension it's in!) As a result of all this, you have a great inventory storage solution that's readily available anywhere you're capable of building -- rooms don't necessarily have to border one another in order to belong to the same base.
While your base inventory is infinite, you don't necessarily get immediate access to its infinite capabilities, which is where a Fixture known as Crystechs come in.
Crystechs are accessed on the Storage menu of the Base tab -- these fixtures will allow you to access your Base Inventory and are the only means to do so. There are two types:
These fixtures let you store and retrieve anything in your base inventory, however you're limited to 50 total items. This limit is true regardless of which Universal Crystech you access, so the only reason to have multiple ones is to be able to access your base inventory in multple places.
Universal Crystechs can be placed for free -- so essentially as soon as you build a base you can start using it to store stuff. You can place as many as you want in as many areas of your base as you want.
If you need more storage than that, you can build Specialized Crystech fixtures -- these let you store an infinite number of items, however you can only store or retrieve items in that particular set of categories, for example Weapons. These are at least categorized together more rather than just being individual categories (for example, plant products instead of "branches").
Given this change, it makes sense to alter the Backpacks system to apply to groupings of categories as well.
Specialized Crystechs are crafted from the equivalent Backpack and Starshards or Quartzshards.
Pylons are a special type of fixture that makes placing tiles via the Build menu cost less Aether. They can either be placed in a Base without restrictions or placed outside of a base provided they're within 10 tiles of another pylon.
Whenever you place down a base tile, if there are pylons on the screen, the aether cost of building goes down by 33% for each Pylon on the screen. This calculation is cumulative, not stepwise -- so for example for building a Door:
# / Green Pylons
These numbers are subject to change for balance reasons -- I've got to start somewhere though.
Pylons are basically identical to Jewelry -- your Pylons tab will list all the Jewelry you have available in your personal or base inventory and let you click on it to place it as a pylon in the world.
There are also three submenus you can open, which open within this menu and can update on their own:
Stats -- if your Pylons subtab is open, then every time you walk around or place/remove pylons, a number will reflect however many are on the screen so you don't have to count them manually. You'll also be able to see how much each type of tile costs.
Reclaim Jewelry -- This shows all jewelry associated with the pylons on screen. Clicking any unit will highlight which pylon it is, and the pylon's range (for pylon placement). You can then click a button to reclaim it -- this deletes the pylon from the world but adds the jewelry back into your inventory.
Fixtures do various specialized tasks that usually involve materials or other items. Placing them requires having the appropriate Fixture in your persoanl inventory or base inventory.
The fixtures menu is a table that condenses the fixtures into rows and columns. These might be organized somewhat, and you might also be able to filter them somehow -- depends really on how many there are by alpha.
Each "brick" of the table shows the symbol of the fixture, the name, and the amount you have. If you don't have any, it's italicized, grayed out, and clicking it takes you to a special crafting menu.
Fixture crafting matches that of modules but is somewhat different from other crafting systems. The recipes are procedurally-generated and require very specific materals (such as "Muddy Lancewood Branches") that can be found in whichever dimension you're in. The recipes change if you're in an alternate dimension, but you can still use fixtures you've crafted elsewhere.
Fixture crafting is also occasionally materials-based and handcrafted, such as Altars which require quartzshards and starshards.
Fixture items can also be found as loot. They could potentially be buyable from guild shops, but you won't find them in normal shops. Melange planes might have them as well. Overall there are ways to get them outside of tracking down rare items, but they're still hard to find.
This update isn't related to Bases but it definitely helps reorganize some stuff.
You have a new "Atomizer" menu that unlocks once you craft the Atomizer Bypass. Your Aether is always shown at the top of it and updates as you do stuff.
This menu contains subtabs, the first being the new home of the Build tab (it's currently in Bases).
Once you've unlocked the Portals package, Portals becomes a subtab here.
When you craft the manaflute, both the prompt and song names go here. This change has made the manaflute verb system even more worthless, so I might just scrap it and have several buttons instead. Probably a good thing honestly since it lowers the complexity of the core game.
Various features in these menus become research unlocks, such as portal types or some of the more complex features in building (like color combining).
There are also features that improve aether cost -- for example the initial building cost (very useful if you want to make outposts later in the game)
You can't ordinarily build in Caves, the Quantum or Entropic Plane, Elemental Planes, or Alternate Provinces. These features are unlockable from the Building Lab and cost either Myrtriads for the first three or the appropriate elemental shard for the latter two. (alternate provinces are assigned an element). The features are named "Monad building" and "Fire/Water/Wood/Earth/Ice/Wind Building" respectively.
Obviously better menus if I get to it (might just be something I get to before alpha in general)
You can only place attractors in the starting dimension (and not the caves layer). With research unlocked from the Building Lab you can place Transdimensional Attractors. Transdimensional portals require either Myrtriads (for Caves/Quantum/Entropic placement) or the appropriate-element Myriad for planes or alternate dimensions (based on their element).
These then let you connect seamlessly to other planes without going through mana cracks or other weird gateways.
I had a bunch of notes about having to do special things to place portals in bases. This has all been scrapped -- placing portals within bases should now work intuitively, just letting you connect base rooms together in a cool way without extra work.
Connecting base portals to non-base portals should also automatically make you enter or exit the base. Like the above point it should just be intuitive to use and not require specialized fixtures or rooms.
Procedurally Generated Recipes System
This system will exist alongside the normal crafting recipes -- it applies exclusively to Fixtures as well as Modules for things like the Fishing Rod or Bow. Potentially Researched Features as well, depending on what that system looks like.
What this system does is it generates recipes for different optional features based on the materials that are potentially possible to find/extract/etc in whichever province you're in. These recipes call for specific materials.
There are several points to this system:
It cuts down on the amount of work I have to do. I have no idea how to design/balance the crafting of those optional systems, so this does the work for me.
It makes each seed more unique, which is a core part of the game so this is a good thing.
It integrates the procedural generation more into basic gameplay, which is another core part of the game.
It also integrates back into the materials system -- you have to explore more (or use scouts more) or use the crops/etc system or shop systems to get the materials you need. This is yet another core part of the game.
A couple notes for this:
Alternate provinces have different requirements. This is kinda confusing but it does encourage more exploration if you're going to be building a base or upgrading things in an alternate province. It also fits into the Lore. Nonetheless I might rethink this to cut down on confusion.
You can "reseed" a recipe if it's literally impossible -- this requires Starshards. Or if you're just annoyed with some set of difficult requirements.
This reorganized everything I mentioned previously in drafts 1-5. Hopefully this time I'll be able to come up with a checklist easily.
This is my next project. Since I don't currently have a large project, this means next-next -- will start working on it as soon as I get the checklist up.
Building even an initial base is way too hard at the moment, so these are some upgrades that will make it easier:
Prebuilt structures -- lets you build squares of a fixed size starting out, and can be upgraded for more shapes and adjustable sizes.
Magic select -- convert entire chunks into some tile, up to a certain limit of tiles (upgradeable).
Actions cost aether, not just individual blocks. So the prebuilt structures and magic select are each worth an action, as are individual block placements. Should overall make setting up an initial base less of a pain in the ass -- which is important since a base is required for a lot of stuff.
Creating a base should make all nat solids used in it become a part of it -- this is a glitch more than anything else.
Creating a base should let you have a base node -- the portal gun can window here so you can always find your way back to your base. Not sure fully how this works.
Pylon first placements should be within range of the base node. Any after that are within 10 of another pylon.
Pylons need an interact menu -- you can reclaim them or place additional pylons. Possibly other stuff down the road.
Pylons should cut down on the cost of Portals and Farming machines as well.
You should also be able to place a portal pylon for a good bit of non-pylonable aether -- this let's you set up additional pylon lines ij melange dimensions, etc.
Given this it would make sense to make pylons the way to automate Farming machines (assuming I haven't done this already).
Tl;Dr some fairly essential quality of life upgrades for new players.
The old caves terco generators should be deprecated -- I'll leave the code in just in case. This is being done to simplify the system and also keep players from having to worry about too much in caves other than using the Tools associated with them.
Each dimension has exactly six cave rocks, corresponding to the six elements, and found in different locations:
Wind -- found where floors would spawn.
Earth -- found where solids would spawn.
Water -- where water would spawn.
Lava -- found where lava would spawn.
Ice -- symbiotic with crystals, altars and aether lenses.
Wood -- on level 10. Overwrites the above.
These should look appropriate to their element.
These all spawn on the second pass of generation -- picking them up reveals the old tile beneath.
Alternate dimensions occasionally spawn their elemental metal ore mixed in with other veins the same way precious metals used to work (can match the generation if I want to though the color flashes should be based on elemental colorings).
Cave rocks can also be extracted for starshards with a 1-10% probability, Quartz for a 25-50% probability, and Petroleum for a 1-100% probability. Petroleum is important to the late-game fuel refinery, while Quartz is a necessary ingredient in Industry fixtures, can be used to make metallic keys, and is used to upgrade Pets instead of Starshards (that should be reserved for magic, reseeding stuff, etc).
Cave rock colors should be appropriate to the element they're representing. The actual names can be the weird thing they are now, minus the elemental classification -- the extraction and discovery color scheme should make that clear enough. The item colors should also match, ideally (grayscale variants of the element color).
The only real difference with alternate dimension cave rocks now is starshard/quartz/petroleum extract percentages. Also spawning their element in more frequently (and on all cave levels).
This update changes the farming system a bit, which to be honest is somewhat awkward around cave resources anyway.
I'm keeping the fishing rod on the new system, but the crossbow will probably be put on this system. I may also make more property-based tools to strengthen this system somewhat (though idk what they'd do -- rearrange terrain?). Maybe bombs should be refueled rather than being consumed - they could also have placement ranges. This would make a lot of sense, though they'd have to be named something else. Anything whatsoever where the properties are random and nothing is really essential (like caves/spectral fishing properties) can go on this system.
Drop anything whatsoever related to metal crafting, and combine the other tools recipes together like the above one (like lockpicks). Each tool should have multiple material types associated with it for more procgen possibilities. I'll handle weapons later during that update.
Stick all the tools together in the same menu, move bombs to "consumables" or something.
This update also applies to weapons, but that's a TODO thing until the weapons update.
Fuel Refinery v1
Wood will become the weak version of the stage 1 fuel system, with the best being branches.
Wood/Branches/Bark can be turned into Charcoal (with wood being the best). This process requires fuel but produce far more than the base materials do. The amount of actual fuel generated is procgen and is an order of magnitude higher than the last system, though the cost to start that process is in between the two.
Petroleum and Gashrooms can be turned into Gasoline. This process requires stage 2 fuel (above) but produces an order of magnitude more fuel.
There are several fixtures associated with this update, not sure what the Lab splay looks like yet:
Fuel refinery -- Exists Lets you turn items into Fuel.
Forge -- Exists Lets you turn metal ores and precious metal ores into metals and precious metals.
Smithy -- Lets you turn tools/weapons into metal equivalents.
Blast Furnace -- Lets you forge together two metal items of the same type and opposing elements, averaging their properties.
Anvil -- lets you upgrade tool properties with precious metals of the appropriate element. This is infinite, or has obvious hard cutoffs like torch light radius. Different properties cost different amounts of precious metals -- this is static and based on game balance.
Catalyst Station -- lets you turn potion ingredients into elemental catalysts. Catalysts are in use anywhere properties are modified, like the upcoming Genetics system. They're in use here in the Blast Furnace
Industry fixtures should also cost fuel to use in some capacity.
All of these fixtures cost quartz in some capacity. You can mine quartz from cave rocks (with some being better than others), get it as a late-stage genetics trait, or do the gashroom bomb / quartzbomb thing on altars/aether lenses.
Having Quartz in the same location as the fixture that uses it (the aether lens) and also in the location where you're going to be using scout/mount animals heavily is great for integration. Same deal with crystals / starshard extracts and altars.
Some smaller things around these fixtures that aren't obvious:
Each potion ingredient has an element associated with it and can be turned into one of that type of catalyst. Magical potion ingredients work the same way but can be turned into 5.
Each property has an element associated with it -- you see this with the kind of precious metal you have to use on an anvil. Here you can use a catalyst of the appropriate element to preserve one of the properties on one side, rather than averaging the properties. These aren't required to match the weapon/tool element, thankfully.
This will probably effect the extraction of cave fish.
I'm not sure how you unlock this or where it is in the labs.
The Prism fixture lets you turn various elemental items into other elemental items via Recipes.
The basic way it works is that you have to give it some medium-sized amount of a type of elemental item -- this will then become something you can craft. Alternately you can create the unlock via the procgen recipes system or a blueprint thereof -- this should open up additional options like getting fusions really early on potentially (depending on the dimension/seed).
You can also Prismize various elemental items -- this will add their element to the prism (or more specifically the base)'s element count. The amounts here are static and are based on rarity / game balance (scraps/cores/keys are definitely going to have 1:3:9 ratios for example).
You can also Prismize Quartz, Starshards, Aether, Money, base fuel and other basic things like that -- these are necessary base qualities of recipes.
Recipes are random but can be reseeded with starshards. They take some amount of the element and some amount of base qualities.
Any element-based item can go into a prism, including split-elemental things like tetradshards, myr triads or fusions.
If you "Use" your elemental superpowers on elemental fixtures like doors, shrines, strange loops, etc, you get some kind of base element item that can be put in the prism for an equivalent amount of that element quality.
There should be some way of expanding or contracting the size of rooms without messing up the integrity of the base. Maybe a way of "unlocking" a room so you can work on it and then making you check the integrity again when you're done. When a room is unlocked you can't use any fixtures in it, so this requires assigning fixtures to rooms. Unlocking should also kick you out of the base, and have a prompt to confirm.
There needs to be a way to delete base tiles. I think maybe this is already covered under the base building upgrade.
There should be a way of collecting water and then placing it elsewhere, maybe via pylons. Maybe a way to collect absolute water colors too optionally.
I probably won't reach this before alpha -- trying to do a feature freeze. Will probably incorporate simple parts of it however.
This is also just a general set of ideas, nothing concrete yet.
Creating whole lines at once is pretty essential.
Squares shouldn't be too hard as well.
If I generalize the code being used to create ruins, then you'd be able to create any shape made by that system -- circles, spirals, etc.
Since the magic-select system is generalized, you should be able to "select" chunks of floor or solid and change them all at once.
By rendering a table inside the table cell, I should be able to implement "microtiles", which allow finer detail in a tile, allowing for corners and curves.
Microtiles would cost the same as a normal tile, and would probably be a Lab unlock unless they're intuitive enough to use from the outset.
You should be able to place text, with one character per tile. This could be as intuitive as just typing it out in a world-of-text way. The game already uses unicode heavily so it'll have full unicode support.
You should be able to set axises of symmetry -- this will let you create the inverse of tiles on the other side, allowing you to make symmetrical builds of tiles and especially microtiles much easier. Shatterloop should support both vertical and horizontal axises (including simultaneously).
You could potentially rotate individual shapes or chunks of tiles with a "tolerance" slider to determine what to do with partial tiles, though auto-microtiling would also be neat. This is definitely low-priority; looks like a lot of work though the right algorithms are already in place.
This update would alter building so that you can add/revert changes "in theory" before actually spending the aether to do it. These "blueprints" would be accessible/viewable but wouldn't actually exist in the world until you spent the aether.
Obviously there need to be better revision tools as well, although to be fair literally the only thing you can do right now is place single tiles with your mouse (which is actually an upgrade over the old system, ironically).
Kind of a loosely-defined idea, but this would let you take whole chunks of tiles and package them into a kind of "module" that you could then place elsewhere, letting you scale up builds really quickly. You could also theoretically use this with symmetry or rotate tools to get even more variety.
I don't know how much of this is going to make it into the final game, and I also don't know how much is going to make its way into the alpha. The current building system definitely needs some work, and as fun as the color system is, the actual building is lacking. The following upgrades seem like they're pretty essential though:
Lines, squares, magic select
Reverting tiles to the original generation through either of those tools
Having a "select and then place" mode.
I have all of the above working in my map editor project, which is very intuitive to use.