Engines NIFE Roadmap Shatterloop Game Projects
Deprecated Saepes Mundi Other Projects Blog

Game Projects

Gem Genie

Posted November 8, 2021 by Xhin

Development Progress

This project is going up fast.

  • Rendering engine works -- basically rebuilt shatterloop's code from scratch, with a few imports and some much-needed improvements.

  • I can debug terrain patterns. This tool is so useful and the engine is so simple outside of this that I'm going to export this project so I can use it elsewhere.

  • I used this tool to come up with a pretty good-looking sculpting algorithm for the game.

  • There are 17 Replies


    Other mechanics

  • Automation pipelines would be nice -- it would be nice to work out some of the kinks with these systems before developing them in Shatterloop or CMG.

  • Real-time combat might make sense with weird procgen movement. Idk if I want to implement something like that though. If there's a death mechanic, you'd get teleported somewhere else entirely at random -- not terrible but pretty rough as you might never find where you were again.

  • There might be other obstacles and mechanics. I didn't want to introduce any of these into CD to keep it simple, but they make more sense here.

  • Whatever mechanics I introduce, it's important that the items system allows you to interact with them in odd ways. This game is a beta test of Shatterloop's magic system more than anything else. It also is important that I don't change the core principles of this game or extend its scope -- it needs to be completeable and fairly simple so I don't just have a second shatterloop on my hands.

  • November 8, 2021
    Xhin
    Sky's the limit

    Next Steps

  • I want some kind of a framework for map chunks -- this will store the early part of the terrain rendering code (maybe do a lookup/cache thing the way table{} is currently working, except chunk-based?) as well as the color palette, which should vary. Hook these back into the rendering engine.

  • November 9, 2021
    Xhin
    Sky's the limit

    Resources Notes

    I have some kind of idea of how I want to do this.

  • Resources have a Color that matches their xcolor. These colors should be maximum-distinguishably colors, so I'm thinking Red, Yellow, Green, Blue, Purple, Cyan/Gray, White, Black (with a tinge of brown to contrast it against black backgrounds).

    Solids

  • Solids should generate as █, ▓, ▒, and ░ in order from most common to rarest. Solid colors should be a like of around 50 to one of the resource colors, and that particular color of resource should be more common (idk on the appearance though, that makes less sense now).

  • You can turn any solid into any other solid through a kind of ratio (between 2-9 I guess). The actual amount here depends on the color and the world seed -- some trades are going to be easier than others.

  • Solids should have earthen names -- maybe stone, clay, dirt and sand respectively. So combining this together, you might be able to turn 5 green stone (█) into 1 green dirt (▓). The other way probably makes more sense, but idk what's going to look better aesthetically. If the other way looks better I'll definitely swap.

  • Solid generation should be veins or ideally "streaks". Idk how this will actually work in practice.

  • All told, you should have 32 resources here (8 colors, 4 solid types).

    Other resources

    These resources only spawn on pre-existing solids.

  • Metals (■) should be scattered around in rare quadrilateral veins.

  • Gems (♦) should be peppered around rarely.

  • Runes (▲) there should be exactly one per biome. Its location is generated on biome generation (which there should be framework for).

    There's a second ratio called the Purity ratio (P). It should be between 2-4 depending on the color and seed. Each type above also has an "impurity color" attached to it that isn't its current color.

  • High-level solid (stone probably) can turn into metal at a rate of R*P of the current color and R of the impurity color. So for example if P is 3 and R is 5 then to make a black metal you might need 15 black stone and 5 red stone.

  • Gems cost 2RP + R of the metal, so to make black gems you might need 30 black metal and 5 green metal.

  • Runes cost 3RP + R of the gem, so to make black runes you might need 45 black gems and 5 cyan gems.

  • All told you have 24 resources here (8 colors, 3 types).

    These formulas should be upgradeable via the modules system, which will be really really extensive.

    Reverse Transformations

    A special unlockable fixture will let you reverse these transformations, however you'll lose 50% of the yield rounded down (upgradeable). So a black rune might turn into 22 black gems and 2 cyan gems.

    Energy

    Resources can be Atomized into Energy, which is used in making ammo and/or can itself be used as a kind of ammo for some items.

    When you collect more resources than you have space for, it turns into energy instead.

    When you die, all of your energy disappears.

    Energy can be stored in your Base via a special fixture that will collect it for you or make less-efficient batteries that at least won't disappear on death.

  • November 10, 2021
    Xhin
    Sky's the limit

    Recipes

    Recipes are procedurally-generated and attached to various upgrades or items. Since all resources are technically available from the outset, there are no limits on the ways that they generate.

    Recipes can call any of the following (with some exceptions):

  • Regular resources like black gems or red sand.

  • Refined materials like ebony or moss. Refined materials are procedurally generated -- their names are based on the color (black and green respectively here) and require a variety of materials within that color. Like ebony might require 4 black gems, 10 black stone, 2 black sand.

  • Prismatic materials like Unicornite or Candyite -- these take on prismatic names (with -ite) and require a variety of materials that are any color.

  • Magical materials are a combination of Refined materials and prismatic materials. These take on pseudo-magical names like Neptunium or Lodestonium.

    Refined materials must be created at the appropriate color of Refiner -- like only a Red Refiner can make Magmite or Rosewood. Refiner fixture recipes always cost 2-4 base materials.

    Prismatic materials can be created at the appropriate color of Prismizer, the color being based on whatever the color of the dominant ingredient is. If it's a split it can be made at either one. So like a recipe of 5 red sand, 1 blue dirt and 5 black gems can be made at either a black prismizer or a red prismizer, but not a blue prismizer. Prismizers are made from 1-3 refined materials of the appropriate color.

    Magical materials can be crafted at an Magicizer of the appropriate color, the color being the color of the dominant material same as the above -- skipping prismatic materials since they're colorless. Magicizers are made from 1-3 prismatic materials.

  • November 10, 2021
    Xhin
    Sky's the limit

    Things requiring Recipes

  • Fixtures are structures you can place in your Base, basically without limit. You can then interact with them or automate them.

  • Modules are permanent upgrades to your person like jump height upgrades, carry capacity increases, crafting recipe improvements, etc.

  • Items are things that you can use with Ctrl or Shift. Haven't mentioned it anywhere else, but you should only be able to craft or upgrade them in a Base for UX/gameplay loop reasons.

    Inventory Management

    Your inventory is broken into categories:

  • Solids (Stone, Dirt, Clay, Sand)

  • Rares (Metal, Gems, Runes)

  • Items (might be broken up depending on what the item types are)

    Since refined/prismatic/magical materials are only made at a base (and it's easy to get into your base) it doesn't make sense to carry them around. They should instead be stored at a base inventory, and crafting can use either inventory without issues.

    Similarly, fixtures are only placed in a base so they're again pushed to that inventory. Modules go immediately on your person. Base storage of any of the above should be infinite; there's no sense limiting it and overcomplicating game mechanics.

  • Each category above has a limit attached to it (based on total number of items). Since items can only be crafted in a base, crafting an item past your limit will just store it in your base instead. Resources past your limits there meanwhile will turn into energy.

  • Category limits can be extended with Storage Modules with procgen recipes, all of which require at least 1 of refined/prismatic/magical materials. These limits can be extended without limit.

  • Idk what the initial storage limits are. Might be a difficulty setting or something.

  • November 10, 2021
    Xhin
    Sky's the limit

    Special Items

  • Macro -- lets you chain item commands together into a program, like "destroy east, then collect east". Programs consume composite ammo but let you automate various actions. There are upgrades to macros that will let you do other actions as well like jump, atomize something, etc.

  • Looper -- lets you run the same item command or macro continuously according to the looper's speed.

    Both of these cost some procgen amount of resources to make.

  • November 10, 2021
    Xhin
    Sky's the limit

    Item Ideas

    Ideally, all of these will be implemented and more. I have no idea what any of these cost -- they might cost an ammo like "fuel" (more on that in the ammo section) or might cost just straight energy. Want to make sure I import everything I possibly can out of both shatterloop and CD as well. Maybe call on other fun sidescrollers for inspiration as well.

  • Jetpack -- resist gravity while using by itself, get boosts when directional.

  • Bomb -- destroys solid tiles within a certain radius via the directions then applies gravity. By itself would probably destroy the radius around you. Could also potentially be lines or w/e like shatterloop bombs. An upgrade here would let you absorb solid resources rather than just destroying them.

  • Collect -- collects resources within a certain radius. Pairs good with bomb. Costs straight energy probably.

  • Builder -- takes a solid out of your inventory and puts it in the appropriate direction. Upgrades could create lines.

  • Gun -- various weapons with various effects. Costs plasma ammo or something, idk. Depends on how combat works I guess.

  • Swap -- swaps you and the tile in that direction. By itself will prioritize up, right, left, then down.

  • Warp -- warps various distances in various directions. Less controlled than the jetpack but a greater range.

  • Parachute -- no directionals, but while holding you fall slower.

  • Jump -- jumps over solid tiles up to a certain range.

  • Grapple -- lets you cling to the sides of walls.

  • Climb -- if you're on a solid tile, lets you move around it like you're grappling to the front of it. Hard to appreciate how weird the concept is in 2D.

  • Reverse climb -- idk how this works or what to call it, but basically the same as Jump but from solid to solid.

    Both climb and reverse climb require actually getting into a solid, which can be done through a couple methods (warp splinching, possibly portals or maybe a specific item).

  • Bounce -- if you time things just right when landing after a jump, will create a second jump half as high (upgradeable to the full jump height probably). Based on total air time, which should be tracked since there's no gravity acceleration.

  • Portal Gun -- works identical to shatterloop, except simpler. Probably just creates a portal that goes to both whatever the last portal was and whatever the next portal is. Shooting it on a portal should erase it and bridge those links together. Pressing it by itself should go to the most recent portal. Or maybe the direction you enter it is important to go back or forward (I like this a lot).

  • Gravity -- changes the flow of gravity in the specified direction. Probably costly in a lot of different ways. Jump and drop are also affected.

  • Pull -- pulls you to a solid in the specified direction, basically hookshot mechanics.

  • Rope -- creates rope in the specified direction or lets you move on ropes. I guess the keypad should also work (like with climb).

  • Better drills

  • Special -- Remote -- can be chained to a specific item, direction and then will place a use of that item there when directional. When directionless will run the first command and then pull it out of the list. Can be used for bombs but maybe also things like ropes or builder. Idk how it would work with things like pull but now I kinda want to try it! Pair it with a looper and you can detonate all bombs at once or w/e.

  • November 10, 2021
    Xhin
    Sky's the limit

    Mass simplification

  • The UX changes above (to simplify the inventory) makes it so that there's no longer any sense in having field crafting. Removing that mechanic streamlines the core gameplay loop a lot more and adds difficulty to the game.

  • Given this, you no longer need basic materials in the field, except to collect them. So when you enter a base your resource totals should be aggregated together at your base automatically. You can still keep your existing items however.

  • To simplify things even further, instead of having an ammo mechanic you should have a refuel station that lets you recharge items to whatever amount you want, based on the unique materials needed. This opens up interesting possibilities like world fixtures that refuel any item whatsoever.

  • Instead of having batteries, you have "battery" items that have a certain amount of charge (20w, 100w, etc) and when used adds to your energy total. These can have different capacities, though charging them is harder. Their charge can also max out meaning you might need to carry multiple batteries. Batteries also aren't 100% efficient from base energy to their storage, but this is also upgradeable.

    Atomization

    Your inventory screen should have all of the resources you have and you should be able to atomize them -- the rates are completely random though the amount of "work" put into it (like a procgen recipe) adds a multiplier to the base amount. You should also have descriptions and stuff here -- the game has waaaaay less resources so I should be able to improve the UX a whole heck of a lot easier.

    Items can't be atomized -- if you want to get rid of them you have to put them in an Item Recycler which will give you half the materials they are made out of (at random). This percentage is upgradeable.

  • November 11, 2021
    Xhin
    Sky's the limit

    Core Gameplay Loop

    The above set of simplification changes alters the gameplay loop a good bit:

  • Collect resources with items.

  • Gather or use energy to enter your Base.

  • Your resources auto-dump and you can switch out items and energy here.

  • Craft new modules, refuel items, craft fixtures to help you craft better, craft or upgrade items.

    Rinse, repeat.

    Base Mechanics Draft 2

  • "Bases" aren't a thing that exists -- instead you have zones where you can place base fixtures or interact with the world in a more detailed way.

  • These zones are based on being reasonably close to a Pylon which essentially networks all bases scattered around the world together.

  • The first pylon is costly (in terms of energy), but the cost goes down the more pylons are on screen, each one with a 20% decrease until the cost is zero when 5 pylons are present. This means you can expand an existing base infinitely if you have the patience for it and come up with a good way of getting the geometry right.

  • You have a base inventory/energy capacity which is shared across all instances of bases. However you're never "in" a base -- instead, the fixtures themselves are what let you interact with your base. The limiter here is the pylon system.

  • When you create your first pylon in an area you can either name it ("Create Hub") or do a "Pylon Warp". If you name it, it becomes a permanent "hub" pylon, which should look a bit different and be unmovable.

  • If you pick the Pylon Warp option, the pylon gets destroyed (or is never built) and you get to teleport to the hub pylon of your choice for an energy cost. This allows you to get to your base from weird locations more easily. Pylon warps can't be done again with hubs -- if you want permanent teleportation you'll need to unlock the portal gun.

  • All of this pylon stuff is handled with the Pylon Gun, which is an item you start out with and can't get rid of.

    Pylon menu

    The pylon menu has two parts:

  • Remove pylon -- if there are no fixtures attached to the pylon, you can remove it and reclaim some percentage of the energy that was used to make it (upgradeable to 100%). If there are fixtures attached, you'd have to remove them first.

  • Fixtures -- lets you place fixtures, either by using one that exists in your base inventory or by crafting them as you need them.

    More on that second option:

  • Pylons allow you to place Fixtures near them within some upgradeable radius. Fixtures can be placed anywhere -- they don't have to obey the law of gravity. The actual placement will probably use polar coordinates for easier movement -- like left and right will spin around and up and down will go inwards or outwards. There might also be a free move option or other UX stuff depending on how well the system works. You should get a circle of all allowable positions and a highlight of your specific height and line for movement key UX, unless it looks absolutely awful or something.

  • You can also remove fixtures that are "attached" to a pylon. This will get stored in your base inventory and you can place it elsewhere.

  • Lastly, you can interact with any fixture attached to a pylon remotely. You can also interact with them directly, but this helps with interacting with things that defy gravity as you only need to make sure your pylons are accessible. It also lets you place farming fixtures close together since you'd otherwise be unable to interact with stuff in the middle.

    Fixture Interaction

  • Fixtures let you "stick" to them -- when you touch one you get "attached" to them and have to press spacebar (jump) to exit the fixture. This locks your arrow keys down to the fixture menu and also prevents gravity in case you jump into a fixture or something.

  • Fixture menus appear on the right side of the screen. Unlike shatterloop, this is also where your inventory appears and anything whatsoever that you interact with will appear here.

  • Fixture menus are designed to be fully keyboard-usable and as simplified as possible to promote this. You can use the arrow keys to scroll around and enter to make selections, or there might be spots to type in text. There might also be keyboard shortcuts for various things to simplify things even further.

  • Fixtures do various things. I'll cover all of them in a separate section.

  • Fixtures make use of an ethereal "base inventory" which you may or may not be able to pull things out of (like fixtures just stay in the base inventory forever). Unlike your personal storage, base storage is infinite.

  • Your base inventory is shared across all base instances -- you can be a million tiles away and will still be able to pull from the same set of raw or refined resources, fixtures and so on. It can therefore make sense to pre-make fixtures if you know you're going to be really far away from your primary base.

  • November 11, 2021
    Xhin
    Sky's the limit

    Farming

  • Farming requires a special fixture called a Hydra -- this requires something more than basic materials to create.

  • Hydra require a type of seed known as a Oreseed. Over time these Oreseeds will produce resources.

  • The actual proportion of resources produced, the production speed, how often they put out new Oreseeds and how mutated they are are all seed stats that are procedurally generated.

  • Time should be real-time -- everything else is. Can import the quantum clock code so you can track time in real-time easily.

  • What determines the combination of resources produced and also all of the various properties is the resources that are put together in a Oreseed Maker fixture. so like 2 red sand + 1 green stone will return something that can produce either red sand or green stone and any seed made from that combination will be like that. However 3 red sand and 1 green stone will make an entirely different Oreseed with those two resources. Oreseeds require 2-5 different raw resources (there are 24 total) to be put into them.

  • The Oreseed Maker lets you see the plant you're going to make but don't necessarily make it -- you have only a certain upgradeable chance to create an Oreseed (starts at 10%), so you can experiment with different options.

  • Oreseeds produce new Oreseeds over time which have their stats mutated slightly or strongly depending on the parent Oreseed's Mutation stat. They can't produce new resources however, they're locked to whatever the 2-5 are.

  • Two oreseeds can be combined at an Oreseed Breeder -- these will average their properties or randomly pick them where that isn't possible. There are no limits here, you can combine oreseeds of different types. Like if one puts out either red gems or blue stone and the second one puts out green metal or black metal, the new plant can put out any 2-length combination of red gems, blue stone, green metal or black metal. If the second one instead could also put out white metal, then you'd get any 2 or 3 length combination of the resources.

  • Oreseeds can also be cloned at an Oreseed Cloner for whatever the resources are that made them and the chance that you'll successfully get a seed. The new seeds will duplicate the old seed's properties.

  • By default you have to collect produced resources manually, however with Automation you can collect resources with their Pylon or network them together with other pylons.

  • November 11, 2021
    Xhin
    Sky's the limit

    Menu/Controls/UI

  • Anything base-related happens through interacting with pylons or interacting with fixtures attached to those pylons. These menus appear on the right and only require the keyboard, no mouse.

  • Pressing Enter will bring up your personal menu. From here you'll see three tabs -- Inventory (the default), Recipes, Modules. Pressing Enter again exits your menu.

    Inventory tab

  • The inventory tab will show your inventory and its storage limits and let you atomize raw resources. You'll also have a soft link to the recipe entry for upgrading a particular storage category so you can see it or pin it. You can also "atomize all" (which will confirm that you indeed want to do this).

  • From the items tab you can equip items to your hotbar. The sanest way to do this is to select the item (via the keyboard key corresponding to it) and then select the numeric slot (1-0, though you don't have many starting out, maybe 3).

    Recipes tab

    From here you see all possible recipes in the game. Recipes are probably unlockable in "packages" just to reduce clutter.

    Recipes that have to be made at a particular fixture will tell you as much and will soft link to a page for that fixture that tells you if you have any in your base, if you've placed any, a soft link to the recipe for it and anything else that's relevant.

    Recipes aren't actually craftable from here -- all crafting is done in your base at fixtures dedicated to it. However this gives you a handy reference guide for your next steps.

    Recipes tell you if you have the resources needed for them. Red means no, green means yes. I'd like it to be able to tell you if you have something that can turn into that resource, but that gets potentially very complicated very quickly when considering recipes that require both X and things that can turn into X.

    As a compromise, each ingredient can however go to a page dedicated to it. This will tell you how many you have, where to get it, and all the different ways you can craft it.

    Any number of recipes can be "pinned" -- this will put them at the top of your menu at all times and update when you get items. This way you can track what you're doing more easily.

    Modules

    This menu shows all of the modules you've attached and also your total stats (jump height, etc). There's also a soft link to the modules category(s) of recipes.

  • November 11, 2021
    Xhin
    Sky's the limit

    Portal Gun

    This unlockable item is heavily simplified from its Shatterloop equivalent. It basically allows you to link various areas together in things called "networks" using single portals.

  • When you place a portal you're obligated to name it. Placing it requires Ctrl + an arrow key.

  • If you ctrl+arrow on an existing portal you can remove or modify it. Removing it restores some of the energy used in making it (upgradeable).

  • Walking into a portal activates it and lets you pick your destination from a list. You then warp to that portal at whatever orientation you were when you activated it. If you activate it remotely somehow (there might be an item that does that) you end up in that relative position from the portal you go to -- could be useful!

  • If your list of destinations gets too long or you just want to organize it better, you can create new "networks" to store lists of destinations. Your portal modification screen will let you create a new network for a portal or assign it to an existing network. You can also add alt-network links to a specific portal. Network creation or network linking costs energy, and deletion of either one restores some energy (upgradeable). Network reassignment is free.

  • November 11, 2021
    Xhin
    Sky's the limit

    Combat

    Combat is real-time and is based on "Nest" fixtures (ᴥ). Whenever a nest enters your field of view, combat spawning will start. Nests have a special color and xcolor which are identical to the resource colors, giving each world a total of 56 (black+black or w/e isn't allowed) nest types.

    The nest color procedurally generates the nest "size", spawn speed, spawn range and everything that the enemy actually does.

    As long as a nest is on screen, enemies will start spawning via the spawn speed up until they reach the nest size. If you kill an enemy a new one will spawn via the spawn speed. Where they spawn is within their spawn range stat. Enemies can move on solids if they splinch there for whatever reason (some can actually move onto them intentionally occasionally).

    Enemies can move outside your field of view. However if a nest is off-screen (or destroyed) enemies that are outside your field of view will despawn.

    You have a health bar that basically appears as you need it. If it runs to zero you die, which will erase all of your energy, erase all your raw resources and will randomly teleport you somewhere completely random. If a nest is on screen, you dying will also create a new nest somewhere near the first nest to make it even harder to pass through that area again. Very bad potentially. There might be lava in certain zones or w/e that makes you lose health too. Idk what kind of obstacles I want to introduce just yet. There should therefore also be a "healer" item.

    I'm not sure how enemies move or attack. Probably a good bit of layered randomization in there.

    If you interact with a nest, you can destroy it. You'll also see detailed information about the nest which is maybe viewable elsewhere (maybe a specialized module grants you access). Nests contain some combination of resources which you're guaranteed to get for destroying them. Because of nest replication on death it should theoretically be possible to farm nests, which would be one of the many ways of breaking the game (by design).

    November 11, 2021
    Xhin
    Sky's the limit

    End Goal and Story

    There's a very simple story and some kind of lore attached to the game. Idk how these systems work, but it would be fun to see how challenging that kind of thing is before applying it to Shatterloop. What I do know about the story is that you're in one of those universes in the dodecaverse, you're an automaton, and you dying has made it so that you get teleported really really far away but are still alive, so you need to find a way back to your other automatons and be able to tell them about this.

    The end goal is to find a Transmitter that lets you do this. Each world seed has exactly one somewhere, but it's really really really far away and you're very unlikely to find it by accident. You can however find it on purpose on a subsequent playthrough.

    Finding a Transmitter requires building a Scanner, which takes one of every item type or stuff in various systems and an absurd amount of resources. You'll probably be able to make components one at a time to break this task up into pieces that you do over time. You then have to find a way to actually get there -- this probably involves fundamentally breaking the game in some way with item or module upgrades.

    November 12, 2021
    Xhin
    Sky's the limit

    Fixtures

    In this second-to-last section I'm going to outline all of the fixtures in the game.

    Any "Modules" here count as personal modules rather than machine-specific modules (don't want a framework for that, will complicate things too much I think).

    TODO

    when I implement them these I'll need to say what the fixture recipes are like and also what the module recipes are like.

    Pre-existing Fixtures

  • Research Station -- Lets you unlock various packages, which contain organized swathes of items/fixtures/modules. Research exclusively costs energ or time maybe y; the point of it is to keep menus uncluttered for new users, not to limit exploration of gameplay.

  • Dropper -- A free fixture that dumps your raw materials into your base inventory. Interacting should do the dropping thing and then also show the contents of all the raw materials in your base.

  • Concentrator -- lets you turn raw resources into more concentrated forms of them, like metal into gems.

  • Atomizer -- lets you atomize resources of any type since they aren't technically in your inventory anymore. Items are excluded like they are in the field atomizer.

  • Capacitor -- Lets you put in or withdraw energy from your base's energy supply.

  • Module Maker -- Creates modules from items. Once created they attach to your person directly, no inventory work required.

  • Item Maker -- lets you create items. Items that are created go into your base inventory.

  • Item Locker -- Lets you swap out your items for items in your base inventory. Should be reasonably easy to make.

  • Item Recycler -- Gives back 50% of the materials that were used to make the item (at random). Is upgradeable. Can only pull from your base inventory, so you need to stick the offending item in an Item Locker first. This should help prevent errors and also simplify things on a technical basis. This item should be handy before you're able to refuel items -- you can just re-create them and then recycle them when they run out of charge.

  • Deep Scanner -- Lets you find the world's Transmitter. Costs an absurd amount of resources and items.

    Unlockable Fixtures

  • Diffuser -- lets you turn concentrated forms of resources back into unconcentrated forms, with some upgradeable efficiency (starts at 50%).

  • Red, Green, Blue, Yellow, Purple, Cyan, Black, White Refiner -- lets you refine materials of the appropriate color into Refined materials.

  • Red, Green, Blue, Yellow, Purple, Cyan, Black, White Prismizer -- lets you create prismatic materials based on the color of the dominant ingredient(s).

  • Red, Green, Blue, Yellow, Purple, Cyan, Black, White Magicizer -- lets you crate magical materials based on the color of the dominant refined ingredient(s).

  • Item Upgrader -- lets you upgrade items, often without limit. (the size of the screen wrt stuff that affects it is the only hard limit for performance reasons).

  • Refuel Station -- lets you refuel items according to the specific procgen materials/energy they require.

  • Oreseed Maker -- creates Oreseeds out of raw materials with a 10% likelihood. This percentage is upgradeable.

  • Hydra -- lets you farm Oreseeds.

  • Oreseed Breeder -- Lets you combine two Oreseeds together, averaging or randomizing their properties where appropriate.

  • Oreseed Cloner -- Lets you clone an oreseed for the resources that make it. The likelihood of successful cloning relies on the percentage defined in the Oreseed maker above, which is upgradeable with modules.

  • Battery Station -- Lets you create battery items from base energy and a recipe. The ratio between the energy cost and the energy in the battery starts at 50% but is upgradeable to a full 100%.

    Decoration Station

    This fixture should be reasonably easy to create (only requires raw materials at tier metal and below). It allows you to create Decoration Items. Decoration items can only be used if you have a Pylon on screen, so you need to actually be near a base.

  • Placer -- Takes resources out of your base inventory and places them in the world according to what they looked like. You'd have to mine them again to get them again.

  • Colorizer -- Lets you color arbitrary tiles' colors and xcolors. Costs energy, but it's light. There's also a decolorizer option that reclaims all the energy from tiles you yourself have colored (so a boolean flag I'm guessing). There will be some kind of palette system for easier builds.

  • Texter -- Lets you create text on screen. They count as floor tiles, and cost character-based energy. Very light amounts however. A detexter option will also reclaim player-placed text at full efficiency.

  • Sign Maker -- Lets you create "Signs" that display text on the interaction screen. Cost energy to make, less light but not that bad overall.

  • Symbolizer -- lets you change the syms of anything whatsoever on screen to whatever you desire. Costs energy. A Desymbolizer will revert everything like other de-items do (so I guess the old value needs to be stored in the object).

    Idk how the UI of this works. It's important that it be keyboard-based and it's also important that you're able to do UX-friendly batch effects, but idk how either of those actually look or feel yet. Batch effects cost the same amount as affecting individual tiles, so bolder is better!

  • November 12, 2021
    Xhin
    Sky's the limit

    Minor UX things

  • Your jump, down and up functions are "Arms" that should be customizable and upgradeable. I need to detail the existing functions (and their specific conditions) and come up with variations. Unlike Tools, Arms don't cost energy -- they're kinda necessary for UX due to the weird jump mechanics.

  • You should be able to customize tools and arms to be lesser values of their fully upgraded value (which is a max). I guess I'm going to need the customizable Tool menu after all, dammit. Any property that's prefixed with max__ or min__ isn't rendered, it's a property of the property.

  • 1:10 "unicorn" biomes that have a random contrast rather than the normal ones. Should be a fixed 1:10, like add the X and Y chunks together plus a 1-9 offset based on the world seed.

  • Unicorn generators too that mix things up terrain-gen wise and use shatterloop's neat base algorithm

  • December 9, 2021
    Xhin
    Sky's the limit

    Generated interactables

    These items are procedurally generated (region-wise), as are their props, and do various things according to a lite version of the magic system.

  • Slide or warp you in various directions (including diagonally). Splinching may be possible (TODO: also I need to do better with splinching mechanics -- currrently they have gravity).

  • Collect rares around you. (TODO: rares should include runes here and on the collector item)

  • Safely destroy tiles (doesn't affect rares)

  • Give or take or trade raw resources.

  • build structures

  • alter various properties (like jump height) temporarily. Could be bad or good.

    They should have random syms and color/xcolor and you have absolutely no idea what they do. Interacting with them should record them in your logbook however to help you remember.

    I'll need to revisit this system after doing the tools system as well, making sure all possibilities are covered. Additionally, I might want to add weapons functionality to them after I do that update.

  • December 9, 2021
    Xhin
    Sky's the limit

    Reply to: Gem Genie

    Username
    Password