Inactive Blockinator


Org Co-Founder & Project Lead
Name: Blockinator
Summary: A tool that creates new blocks (a CustomBlock) out of a 2x2x2 or greater collection of blocks
Scope: Core Content
Current Goal: Make tool able to recreate a stair block dynamically
Phase: Inception

Sort of a follow-up to the miniaturizer begla put together, this time meant to scale down to exactly one normal block, possibly tied to a set of predefined dimensions (2^3, 3^3, 4^3, etc). Few notes:
  • Should work somewhat like the minituarizer - 1st left click = select first block; 2nd left click = select second block; 3 left click = new custom block appears in the player's inventory
  • On the third click two things happen
    • A new block definition is written (in SAVED_WORLDS/blocks or so, from where you could grab the file(s) and put them in your global dir as a "mod" block)
    • A new texture is created (optional/later)
    • A new block shape is created (optional/later)
  • For starters it'll be easier to just do 2x2x2 blocks all the same type into a single block with the same texture. Picture creating a staircase block out of any normal full block type
  • Little later the process should be able to detect an existing block shape definition and simply use that instead of generating a new duplicate block shape (again with the stair block example)
  • Way later the tool should have modes to determine what it does with the textures:
    • Maintain = simply use the (dominant) texture from the original structure for the new block. Stairs and other blocks primarily done for the shape might prefer this. Default.
    • Squash = first append the textures from the faces of the origin block together (per side) then shrink them back down to 16x16 for the new texture. For more creative users
    • Shrink = append the textures but create a higher resolution texture for the new block (waaay later when we can do higher res blocks)
  • Modes could be set by placing the tool on the ground like a block and some appropriate object next to it, then using some sort of crafting/pickup tool to make both items for combining, thus getting a new copy of the tool with the appropriate mode set
  • Tricky bit: How would the player differentiate betweeen wanting a slope vs. sharp corners? Think stair block vs full block with just a diagonal cut where the open stair piece would go. Maybe placing some special blocks would tell the tool to draw through the special block rather than along the edge?
  • Tricky bit: Complicated shapes like spheres (smoothing out big blocky models)
  • Tricky bit: More sophisticated shapes like a chair, especially if inner textures would be needed? If even possible (probably not in current state)
  • Tricky bit: What to do if a CustomBlock itself is part of the big block collection? Maybe just deny the shrink
Also might be a bit of practice for fancier in-game custom content creation down the road (one day: creatures?!?)