actuating-lemons / bobcraft-minetest

Bobcraft, A Minecraft 1.2.5 Re-imagining. Deprecated.
MIT License
5 stars 2 forks source link

16 Million colours! (or atleast 256...) #13

Closed ACBob closed 3 years ago

ACBob commented 3 years ago

Let's be better than minecraft and give players many colours to dye with!\ Either 256, or just try to support infinite colour mixing!

..In terms of implementation, 256 colours may be easier, however the issue comes in how do we mix the colours together?\ How do we have dyes? Do we have 256 individual dyes? etc. etc.

16 million colours may be actually impossible due to engine limitations.

I, at present, have no idea how this could actually be implemented!

swissChili commented 3 years ago

Perhaps there would be the normal handful of dyes you can make from flowers/etc, and you can craft them together to make a different color? I.e.: red dye + blue dye yields purple dye, purple dye + blue dye yields dark purple dye, etc. Not sure how this would work in minetest, adding hundreds of recipes by hand seems tedious, perhaps the colors could be mixed programmatically, so if it detects you are just putting dyes into the crafting recipe it will calculate the "average" of the colors.

ACBob commented 3 years ago

Yeah, I was thinking you'd have "primary" colours, being the ones that generate naturally.\ You'd then mix them and they'd yield the extended palette

I think to keep resources down, the dye item would just be coloured based on its' dye value, and then that dye value could also be used in crafting(?)\ Kind-of like leather armour in minecraft.

The issue then comes in implementing this idea, as the crafting api seems simple, and not able to use metadata/whatever for items (maybe there's a callback exposed?)\ And even then; It's a question of how we satisfyingly mix the colours, Averages between the two mixed dyes could work but might end up washed out/dull...

ACBob commented 3 years ago

There seems to be a project that does something not dissimilar to what we're looking at, although it appears to be a prototype.\ It also does not have a license applied to it.

ACBob commented 3 years ago

Implemented as of world-improvements branch