minetest / minetest_game

Minetest Game - A lightweight and well-maintained base for modding [https://github.com/minetest/minetest/]
http://minetest.net/
Other
1.43k stars 578 forks source link

Improve corals #2040

Closed paramat closed 5 years ago

paramat commented 6 years ago

This is something that needs doing but i'm too busy to.

We now have the 'plantlike rooted' drawtype so plantlike corals can now be used if rooted on a cubic coral reef node. More colours of the cubic 'brain corals' could be added. EDIT i think we have enough of those now, best add plantlike rooted corals. If schematics are used, to create the schematic file edit https://github.com/minetest-mods/saveschems/blob/master/init.lua#L967 and run that mod in any world, the .mts file will appear in the folder. For textures i prefer those from the 'seacoral' mod in the 'sea' modpack by Topywo, i'm not suggesting all 6 have to be used, less is probably better. https://forum.minetest.net/viewtopic.php?f=11&t=4627&hilit=sea+modpack

screenshot_20171106_173019

seacoral_coralaqua

seacoral_coralcyan

seacoral_corallime

seacoral_coralmagenta

seacoral_coralredviolet

seacoral_coralskyblue

Ezhh commented 6 years ago

Corals really do need improvement, but we need to think carefully about what we want for them.

The current coral nodes are already in existing worlds, so we shouldn't replace them with plantlike nodes without knowing what that might do to what people have created, on the other hand, though it could be nice to have more than one type of coral, coral still has no actual use. We would also need to make sure the two types looked good together.

This is something I'd be happy to work on, but we need to have a definite direction for it first.

paramat commented 6 years ago

Yes i suggest not altering the current cubic coral nodes but adding new ones to those. Corals drop coral skeleton so the coloured cubic corals are only present where they were generated.

Ezhh commented 6 years ago

Experiment using some of these textures: hw_coral_test This is simple enough if we can decide exactly what we want.

paramat commented 6 years ago

I like the idea of each 'plantlike rooted' coral being on top of a 'coral skeleton' node, as is realistic, the contrast against white will look good. Then the combination could either be included in the existing schematic or placed individually as here. We still need to place the prevous orange and brown cubic corals too.

One possibility is to keep the schematic reefs but make them mostly skeleton plus plantlike coral, with a few of the cubic corals too. However individual placement as you have done may work out better.

paramat commented 6 years ago

I think it's worth trying individual placement (no schematics), each node would be a plantlike coral on top of coral skeleton, or a cubic coral (itself perhaps on top of coral skeleton?). Since these are simple decorations a list can be used for random selection on placement.

Noise params can be tuned to create dense clusters of corals in a more organic way than using schematics. I can help out with tuning noise, but i recommend 3 octaves, a persistence of around 1, a scale of around 1, and a negative offset (maybe start with -1) tuned to make the coral clusters quite rare in each suitable biome.

I think all corals should continue to drop only coral skeleton when dug. Due to this no special placement function is needed because the plantlike corals are never dropped.

I like how you have chosen the best of each colour of coral, for 3 plantike corals, which seems the optimum number.

Ezhh commented 6 years ago

This test is currently set up similar to the kelp changes I made, in that the node beneath the coral remains after removing the coral itself, but they currently can't be placed and drop coral skeleton, not live coral, when removed.

I've also used random placement through a single register_decoration and was thinking noise would be a better way to place these, so I can experiment with that more.

What I can't work out is how to relate these to the existing coral. I'm not sure if having the two types together will look right, but I guess there is only one way to check that. I'm also not sure if placing these on coral skeleton is the right way to go.

Will play around with this some more, time permitting.

paramat commented 6 years ago

If you mean you're not sure about cubic corals being on top of skeleton, i agree, possibly ugly. I'm also not sure about how to use the cubic corals. Maybe work on the plantlike ones first.

Ezhh commented 6 years ago

Better distribution using noise: hw_coral_test1

ghost commented 6 years ago

@Ezhh That's pretty. It turned a baron planet surface into a sea bottom.

DartPower commented 6 years ago

Please, more detail Like the https://github.com/minetest/minetest_game/issues/2040#issuecomment-364653292

paramat commented 6 years ago

I don't like corals being placed directly on stone. Coral reefs are structures formed from calcium carbonate (coral skeleton) that build up from seabed level. For MTG i think each plantlike coral should have 'coral skeleton' as the base node, and the base node is placed on the seabed instead of in it to form the reef structure. The contrast against white will look good.

Ezhh commented 6 years ago

It doesn't matter what this is taken from, since for now it's just experimental and the textures used are very easy to switch. I'll do a proper MTG version at some point to see what it looks like with the different types of coral mixing, but wanted to get general thoughts on these corals first.

paramat commented 6 years ago

Labelled as essential for 5.0.0. :)

Ezhh commented 6 years ago

I'm not sure it is, but I'll take the hint. :)

Ezhh commented 6 years ago

So adding them to sand alongside the current coral cubes gives this: corally

Personally I feel they highlight just how drab and ugly the existing coral is. It's mostly the colours that let them down.

Question 1 - can we change the colours of the original coral? (Keep in mind, they are named by the colours, so we face either weird naming or aliases if we change them).

And here we have skeleton coral added under the new corals: corally2

Question 2 - Do we prefer them on sand or dead coral (or another alternative)?

Question 3 - Most plants are snappy, but cube corals are cracky. Which group should the new corals be?

Question 4 - Brown and orange corals drop coral skeleton when dug. Should the new ones also drop skeleton (even though we're then getting a solid node from a plantlike one)?

There'll probably be more questions, but these are the first points to settle.

paanrama commented 6 years ago

From Wikipedia, I vote that corals drop calcium carbonate but not a complete block. Calcium carbonate is the principal compound of minerals calcite and aragonite that form limestone. It has a lot of uses including soil additive and building material.

paramat commented 6 years ago

I don't like the existing coral schematics, so would prefer we remove those and just use the nodes in the new implementation.

I did some research into corals, they appear on a structure of coral skeleton, not sand, so we can use the existing nodes as the foundation for the plantlike nodes, in which case the unexciting colours become a benefit as they won't colour-clash too much with the plantlike nodes. So i see no need to change their colours (i hate adding aliases anyway). The foundation could be mostly 'skeleton' with occasional orange and brown cubic corals mixed in.

The 'plantlike rooted' corals could directly drop a 'calcium carbonate' resource item (which will certainly have uses later), dropping a whole cube seems wrong. The coral skeleton node could then craft to multiple 'calcium carbonate' items. Or for the moment, the 'plantlike rooted' corals could drop nothing, that could always be changed later. Or a generic-looking plantlike skeleton could be dropped but i can't see much use for it apart from crafting to calcium carbonate.

About distribution: Corals tend to cluster together (it seems) but i prefer placing individually instead of using schematics as before, so i can come up with noise params that cause dense clusters.

Since we will be using 'plantlike rooted' the base cube can be 'coral skeleton'. That's 3 decorations, then i would add 2 more which are the orange or brown cubic corals. All 5 could be registered as a single decoration that randomly chooses from a list of 5, so will be lightweight for mapgen.

Q: When a plantlike rooted coral is dug does it drop the calcium carbonate item (if used) and the coral skeleton below? Or just the item and places skeleton below? (the kelp behaviour).

Ezhh commented 6 years ago

Q: When a plantlike rooted coral is dug does it drop the calcium carbonate item (if used) and the coral skeleton below? Or just the item and places skeleton below? (the kelp behaviour).

I'd prefer it just drops the item. You can then choose to collect the coral skeleton separately.

paramat commented 6 years ago

That's fine for me and consistent with kelp.

paramat commented 6 years ago

Removed 'blocker' label for new coral decorations. However i would like to, at least, stop placing the current decorations before 5.0.0 (while keeping the node defs of course). Ezhh is it ok if i make a PR to do that now?

Ezhh commented 6 years ago

How about I stop being lazy and just do this?

I'll work on it tonight or tomorrow at the latest.

paramat commented 6 years ago

LOL ok.