Game Mechanics Ability to make upside-down half-tile

TheCheeseBroker

Terrarian
Also left and right half-tile

It would be a nice addition to the game.

Since there's slope in all 4-direction
It only fair that half-tile got the same too.
 
This may seem like a very small addition, but actually it's a pretty big one.

First of all, every single tile in Terraria would need an additional sprite for upside down (and left or right) blocks, which is a huge amount of work. Secondly, tiles only have room for two more slope variants, so you wouldn't be able to add upside down, left and right half tiles, only two of the three.

That's not saying it's a bad suggestion, only that on the technical side things get pretty finicky.
 
Secondly, tiles only have room for two more slope variants, so you wouldn't be able to add upside down, left and right half tiles, only two of the three.
Wait, What? Why Is That?
 
Wait, What? Why Is That?
Okay, so this is rather technical, but I'll try to explain it.

Every tile in Terraria has a bunch of data that defines its state. For instance, if it contains any wires (and which colours of wire), what paint is applied to it, and of course what slope it has. Because a world has so many tiles, this data is quite expensive to have, so ideally you want to use as little data per tile as possible.

This data is stored in bits, and an individual bit can either be 0 or 1, acting like a switch that can be either on or off. Slope data has three bits assigned to it (000), giving it a total of eight (two to the power of three) different slope states. One (0) is reserved for "no slope", four (1, 2, 3 and 4) are reserved for diagonal slopes and one (5) is reserved for half-blocks. That only leaves you with two unused states: 6 and 7. If you wanted to add more than two slope states, you'd have to allocate additional bits.

In the most ideal situation, you would have unused bits available, but that would still require you to shuffle around the existing allocations (not strictly necessary, but not doing so would make slope handling unnecessarily cluttered). If those bits are not available however, you'd have to allocate additional bits to every tile in the world, which for a game that already uses a relatively high amount of memory is a hard sell. And regardless of whether you already have unused bits available or need to allocate more, you are committing them to give yourself eight additional slope states, but you're only using one of them. That's not efficient. Sure, you could come up with seven extra ones, but that also means you have to sprite seven new frames for every tile in the game, which would take an immense amount of time and frankly defy the point of being efficient in the first place.

In short, you can only add two more slope states before you have to start doing expensive concessions, on top of the already cumbersome task of drawing the slopes. That is, at least in my eyes, the biggest hurdle to overcome here.
 
Ok, That Makes Sense. Thanks For Clearing That Up
 
i would be perfectly fine with just the upwards direction one, the other two would be cool but aren't exactly necessary (granted none of this is necessary lol).
 
Back
Top Bottom