jeremyshannon / Exile

This repo is parked, moved to codeberg.org
https://codeberg.org/Mantar/Exile
GNU General Public License v3.0
16 stars 12 forks source link

Added Tsaplop as cactus like plant #198

Closed Ceeee closed 1 year ago

Ceeee commented 1 year ago

Meant for the barren lands, woody, edible with low hunger and medium thirst boost.

Ceeee commented 1 year ago

I think there's still a need to improve the colouring. … and done!

Izzyb1234 commented 1 year ago

Looking good. It's running on EX7 now

DokimiCU commented 1 year ago

Ignore me if I'm confusing myself, but shouldn't this go in with the new biomes? Looks like it's going in the old system?

In the new biomes you'll see a plant that partially meet this need:

Jogalan was added as a rare woody stick source for barren lands (might need balance tweaks, but that was the idea). So, maybe make this cactus non-woody? A cactus is probably too mushy for sticks. Maybe do "thorn" damage too (like with tiken/maraka). Also balance the frequency to match jogalan? Remember barren areas are intended to be hard!

Otherwise... cool! A new plant! The first one not by me! Hooray!

(ignore me if I've misunderstood everything)

Izzyb1234 commented 1 year ago

Hey DokimiCU,

EDIT: Yes this is intended to be applied against the v4 release. I'm manually cherry-picking it for testing on the servers currently. Mantar will likely merge it into the v4 branch the same way. I have it running on ex7 now with the spawn rate of 0.000300 for both currently.

Think you make a good point. The plant table entry was initially based off Jogalian. but it didn't seem to be spawning much so I bumped it up to mushroom levels (0.000500). Problem is, barren lands are excessivly hard to survive in. Hard to find food or sticks which makes for a really hard start, especially for new players. Part of the goal was to help with both.

I agree we should take woody off it. But I think bumping up the spawn rate of both would be helpful and likely fix both problems. Maybe a level of 0.000300 for both would be better? Think Jogalian is currently at 0.000150 so this would double it. I'll set that for testing on one the ex7 dev server and see how it is for balance.

Izzyb1234 commented 1 year ago

Initial tests aren't looking good. seems your only chance of surviving in barren lands is to get out of them ASAP. Not a workable goal at -20 or +40 weather - Especially for new players. I was lucky enough to find wet blocks in a cave where I spawned, so was able to create water puddles, but still haven't found any sticks or food. I know from flying around with my admin account that I seen 3 Jogalian plants in the biome and 2 Tsaplops. Even if I could locate them from my spawn location, I doubt it'd be enough to survive.

So, even at 0.0003, the spawn rate is super rare. Wouldn't be enough to make a difference for an experienced player. A new player wouldn't make it unless they got lucky enough to spawn close to the edge of the biome. This one is on the edge of a volcano and in another world there was a gravel biome and a volcano on the edges, So if you go in the wrong direction trying to find your way out, you'd have a 50% chance of heading in the wrong direction for survival. The EX7 world at least has some trees between the volcano and the barren land, so is more survivable.

Shrinking the size of the gravel biome is planned which should help some. Screening the spawn areas of a map to insure gravel biomes aren't within the spawn area (think its EX6 that has a huge gravel biome in the center of the map making it a bad world to start in). It'd be better not to have to pre-screen maps though.

I think the barren lands could be made more survivable while still being a hard place to survive. That was my goal when I suggested a cactus plant which Voxeel was kind enough to provide. I'm thinking it needs to spawn a lot more to make any difference. Taking woody off it makes sense given Jogalian already exists, but it is too rare as the only source of wood in the biome. I'll test it again with both Jogalian and tsaplop at a rate of .0005, to see how that is to play.

I'm also working to import the noogberry plant. It has a melon type fruit, so makes more sense for it to spawn in moist areas, but there is already plenty of food in them. Was thinking of putting them in costal_shrubland_soil which spawns on the edge of barren lands. Shrub land already has plenty of resources though. maybe it'd be better to put the noogberry into the forest or swamp areas and move one of the plants from there to the edges of barren lands?

wizardofgcc commented 1 year ago

At least in desert on the Arabian peninsula melon-like colocynths (their seeds are also apparently used for oil) grow, so the melon-like plant in the barrenlands would not be totally illogical. Would be cool to have an actual vine plant with fruits being individual nodes for a change would be cool. Although I wonder what a good name for it would be, do we have any precedent for what language the barrenland plants should take their names?

Izzyb1234 commented 1 year ago

@wizardofgcc thanks for the input. So noogberry may not be out of place in coastal shrub land. I'm still working on the port for it; not expecting it to be done this weekend. It was based on default which isn't in exile so need to rewrite some things. Making its seeds a source for oil may not be a bad idea also.

wizardofgcc commented 1 year ago

Oil seeds need to be generalized, currently it only accepts vansano seeds for the craft. However, just having it say the group may be too confusing - when I was just starting out it was hard enough to find which plant was vansano. Perhaps for some crafts it could list what items are in a group? But that needs changes to the crafting mod.

Also, suggestion for the noogberry: I think in Exile it would be better to make the berries nodeboxes instead of planlikes. In my opinion it would fit the artstyle far more.

Ceeee commented 1 year ago

Well the idea of making the cactus woody (there are some which are extremely tough in terms of outer shell and stability) and rich in water did appeal to me, as it is not unrealistic for such a plant to exist (think of bamboo and coconut) and IMO it suits the barren lands' inhospitable ecology to have a plant that banks its water under a safe and resilient shell. Surviving in barren lands you would have to chew some hard stuff to get your water out! And having a second source of wood is also far from exaggerated – even if the area is meant to be extra hard and barren, comparing it to other biomes where you have for example plenty of gitiri + chalin or tiken + tree leaves + logs. Here you'd otherwise not even be able to get a fire stick lest the wood to light with it.

I see your point Dokimi, and I will not insist on any of it as it was quite a spontaneous birth of ideas when we talked it through on IRC. Afterall it should suit your long term vision of the game which brought us all together here. Still I don't see a true problem if it was implemented the way it is, as far as my impressions of Exile's look&feel, lore and gameplay go.

Thorn damage on the other hands sounds like a really suitable addition. It may even open up new possibilities for food processing in future development, where you might have to get rid of the thorny outside (recycle the woody shell) to eat the water rich insides. Might be a potential use for one of those flint knives? Maybe we could have a health effect, a rare chance you hurt your teeth chewing woody cactus? Once you have a fissure that might get worse!

DokimiCU commented 1 year ago

I was mostly just checking this had been developed with the real new biomes, not the experimental ones I'd done earlier.

I'm spitballing ideas just like everyone else! This is a community project, take it were you guys want to go. Much of what I've implemented was always in need of extra balancing (or overhauls!). I'll only ever do a hard veto on something if it seriously contradicts the design vision - not something that's happened yet, certainly not with small things like this. Please don't ever feel you have to "do what I say", just because I spit-balled an idea based on 2 minutes analysis!

As to barrenlands difficulty - yeah. I made jogalan super-rare so you have to figure out how to live with only one stick. Might've been a bit too extreme. (I've been doing a play through that's only half on barren lands... goddamn is that hard!).

An idea: both jogalan, and tsaplop could be made into clump distributions. The clumps themselves could be super-rare, but when you find one you've got several plants to use.

Naming: everything got kind of random. But I mostly typed stuff into google translate to get ideas, then modified it slightly sometimes. For barrenlands I was going central asian languages e.g. tashvish = anxiety in Uzbek.

Melon plant: I did have an idea for a plant with nodebox melons like Wizard suggests (some other mod out there has pumpkins like that). My idea was to have something extremely slow growing, but gives an enormous hit of food/water. A kind of life-saver if you find one. Might be suitable for barren/highlands.

Balance: my only caution in designing plants is watch out for making things overpowered - especially when people start farming and trading them. e.g. if you get both food and wood, then it might need some drawbacks too. (I suspect lambakap ended up OP in this sense. It's easy to do!)

Anyways, go crazy with ideas people! Experiment. Have fun!

Ceeee commented 1 year ago

Well then I'd leave it at woody and edible for water (4-1 thirst to hunger). Unfortunately I do not have the slightest idea (yet, I hope!) on how to make the plants cluster when spawning – so that's for another day. Instead I'll wait for izzyb1234 to finish the mapgen experiments and we'll balance jogalan and tsaplop against one another for now and gear them both towards a low wood supply (but a supply :-D ). Sound good?

DokimiCU commented 1 year ago

Cluster spawning: see v4 biomes e.g. forest merki (line 176) might be close to the distribution needed (maybe??)

{ --[[ forest: merki ]] "fr_nn:merki" , "simple" , forest_on , nil, 16, nil , {offset = 0.00, scale = 0.0200, spread = {x = 32, y = 32, z = 32}, seed = 1112, octaves = 2, persist = 0.7}, highland_max, lowland_max, "nodes_nature:merki" , nil , nil, nil , nil , nil, 2, nil, },

You're looking for the {offset, scale, spread...} stuff. It's much more fiddly to do though.

Seriously guys, take things where you want to go :-) I've set the design vision as a kind of boundary to stay within, but within that space you have total creative freedom. Go for it! I only occasionally look at this stuff anyway. I find it really cool to see people adding new content.

Ceeee commented 1 year ago

Thanks! With that I think we'll figure it out! Setting PR to draft until we get this straight.

jeremyshannon commented 1 year ago

I'm cool with having both Tsaplop and Jogalan being woody, it feels right for hardscrabble plants surviving in this tough environment.

Izzyb1234 commented 1 year ago

So, I've been playing a world trying to survive in barren lands on only what is available there and the new tsaplops. It's very hard. Even with the strangely high population of pegasun around. I wouldn't have survived except that I died twice (froze once and fell the other) which restarted my hunger bar. Some more balancing is needed to reach the goal of making it possible, although hard, to survive in the barren lands. Like playing on hard mode.

The biggest challenge at first is still the lack of sticks. Even bumping up the spawn rate of Jogalan, I found it hard to find enough for basics like a torch, fire, and fire sticks. So being able to make sticks from Tsaplop as well as Jogalan may still be a good idea. The noogberry could also be a wood source, but don't see that spawning inside the heart of the barren lands. Something you're likely to find on the edge or maybe in a riverbed in a deep valley. Likely to also find a tree in such a place, at which point wood is no longer a problem. I ended up needing to use a couple tsaplops for wood - which was a tough choice because I also needed food at the time.

I found with sticks in short supply, I could get away with burning grass to stay warm and cook bugs even. Think it burns way too long for a grass fire. You pretty much get the benefits of a wood fire without any wood. Maybe we could have a fire block made mostly from fibre plants that burns quicker then a mostly wood fire? And make grass fires burn up in a few minutes? Would probably help with fire spread also.

Food wise, I think the tsaplop needs to be a stronger food source. Pegasuns are too common in the barren lands, so I think I'll adjust that down and increase the amount of bugs to compensate. I found I ate a lot of bugs initially, even after starting a tsaplop garden. By the time I had a garden capable of sustaining myself, I'd pretty much eaten all the bugs and Pegasuns around me.

Looking at the food tables, I see Momo has the same hunger value as an Anperla tuber (1.2% for hunger, 0.2% for thirst), but only 0.1% for thirst. I was initially going to set the tsaplop at that level also, but seeing as its planned to be a water source also, I'm thinking the Lambakap would be a better choice. It has slightly less hunger (1.0%), but also 1.0% for thirst. You'd need quite a large farm to survive on them alone. 12 bugs added to a pot would give you another 4.8% (0.4% each). 3 Pegasuns would give you another 6% (2% each). Spiders seemed somewhat rare, which I could bump up also if there are bugs for them to eat. They'd add another 1.2% so 3.6% for stack limit of 3.

I'm going to setup a fresh world to test how the game plays using the Lambakap levels and an adjustment to the Pegasuns and bugs. It'll likely need more balancing, but think it'll at least be possible to survive without needing things from outside the biome.

On another note, I'm thinking of making the knife a tool based crafting station for cutting the tsaplops. Could make it return sticks in addition to cactus meat that can be eaten then. Will do the same with noogberry once I get it ported to work in exile. The idea being right clicking with it will give you a crafting station for things a knife can produce. Thinking sticks in general should go in there, but also be in the crafting spot. The noogberry I'm thinking will have seeds that can be turned to oil also. So add another source of oil to the game. And I have an upgrade for the knife to a machete an the drawing board as an iron craft.

DokimiCU commented 1 year ago

Trivial side note regarding "noogberry". That style of name is exactly how I started naming plants in very early versions. I actually went back and re-done all of them to get away from having English words in plant/animal names. It just felt wrong, for some reason. If you want to be consistent with my approach, that's how I done things.

On the other hand, name it what you like. You make it, you get to name it. The creator deserves naming rights (within reason!) ;-)

Izzyb1234 commented 1 year ago

In this case, the name is based on the name of the mod - It's a stand alone mod I found that looked easy to import so I figured I'd give it a try.

https://forum.minetest.net/viewtopic.php?t=12664

I was just looking for more plants we could use for food in the biomes without much resources. I see no reason we can't rename it for the game. Its name does stand out as not fitting with the existing plant names in the same way the sea* plants did.

I hadn't expected Ceeee to be so quick with providing an image let alone the code for his tsaplop cactus. I've been busy testing and adjusting the levels for it, and learning how the plant system works in exile already. Kind of like it, but the noogberry wont work with it I don't think. At least I hadn't intended to import it that way. It may be better to create another new plant that works within the existing plant infrastructure. The limiting factor for me is the art. I have no artistic ability.

The things I like about this mod is the large glow in the dark fruit/melon on a cane type plant. It has a unique look that I think fits with the other plants in game. I like the idea of using the melon for food and its seeds for oil. And maybe the stalk for wood, We could forgo importing it and just use it's images - assuming anonymous_moose doesn't mind that - or create new images for a new plant with these characteristics. I'll have to see how the code for cana plants works currently but I may be able to get the same effect using it.

DokimiCU commented 1 year ago

Ah, I see!

Concept is intriguing. That mod's current textures are a bit crude for my liking. Consider raiding my old Aotearoa mod for textures, also the Australia mod has a lot of compatible textures - I've already raided it for stuff, even just to get textures. But I'm not sure either have anything suitable for noogberry.

If you're willing to experiment with beginner art skills, then try modifying an existing texture. Use Gimp (or a similar program) to change the colors a bit. (e.g. adjust color balance, that kind of stuff). That's about as entry level as it gets :-)

The plants system does need work to handle more variety e.g.

Spawning them in world is easy. The problem is growth/regrowth. These are all small enough that the player should be able to grow them, but unlike canes they are complex shapes.

(anyway, I should stop distracting myself! It's been one of those times lately... have fun with it)

Izzyb1234 commented 1 year ago

Thanks for the tips Dokimi. I'll give that a try. I have a little experience with gimp and blender, but lack artistic skills and techniques. Messing with the textures I could probably handle though. I'll have a look at whats available. maybe I can make it fit a little better. Or maybe someone else with artistic skills can take it on.

I'll have a look at extending the plant system to grow plants like the noogberry. Think that'd be the best way to integrate it. It's really simple in implementation so should be easy to extend the exile plant system to handle it. Now that I know more about how it works.

Izzyb1234 commented 1 year ago

I've played through far enough on a fresh world that I think it's working well now. Its a struggle at first because you're mostly eating bugs until you get your first crop from farming tsaplops. I'm at about 30 plants growing now and think I'm getting 4 crops off a year. That probably needs to be reduced. should have a longer grow period I think. 2 per year is likely too much still, but seems more reasonable. Not sure how that is adjusted. The food level at the same as lambakap is about right I think. I'm still eating about 2 bugs for every tasaplop and struggling to survive. I'm going to have to step up my scavenging a bit if I want to survive.

Voxeel, when you have a chance, I recommend setting the food levels the same as lambakap's - 10 thirst and 10 hunger. Sawn rate: 0.000500 works for now. but adjusting it to use the cluster spawn sounds better but I haven't figured out how it works just yet. We can do that part later though with some more overall balancing.

I'm going to submit a PR that adjusts the spawn rate of the mobs and other plants in the area. I created new groups for badland_soils_on and not_badland_soils_on and set badlands half the 'scale' value for pegasuns; doubled it for snatchens, and added kubwakubwa to spawn on barren lands at the same rate as forest. Haven't seen many yet. Think I'll also cut back on the grass in the area; seems to have an unreasonable amount of Tashvish around for such an area.

Overall, a very nice addition. Thanks Voxeel. Think barren land biome is now difficult, but survivable if you decide to make a home instead of running to greener pastures :)

Izzyb1234 commented 1 year ago

My adjustments to spawn rates has been merged. Also added a pr to combine slabs to blocks - makes it possible to make charcoal using thatch instead of wood fires. There's a 50% chance of a burning thatch block to turn into a small wood fire which you can extinguish and now combine to make charcoal. I lowered the spawn rate for Tashvish so you'll have to farm it or go find some cana to farm. At least until we add something to prevent that. Its at least now possible to get to iron using only what is available in barren lands.

Ceeee: a couple changes you should make to your branch.
1) Increase plant growth rate to 2 in mods/nodes_nature/data_plants.lua Think it grows too fast; I'm getting about 4 crops per year off, which seems too quick for the area and type of plant. 2 is the same as anperla. 2) Increase food level to 10/10 - same as lambakap in mods/health/data_food.lua That seems to be working well in the dev server I'm testing it on. 3) Add thorns to it. Not sure how that's done but Tiken would be an example to follow for that.

I think this is ready to merge even without making these changes. I can help you bring it to a v4 branch anytime. Think that needs to happen before the merge because this spawns in the new biomes. Think the easiest way to do that is to cherry-pick the commits into a v4 branch. That's how I've been doing it for the dev servers. A few conflicts to resolve but far less then the rebase way.

My next project in this area will be to add tool based crafting with right click on the knife to produce sticks/cactus meat. I'll need an image for cactus meat. Figure you should get both sticks and food/water not one or the other. That moves us a step closer to Dokimi's idea of tool based crafting also :)

DokimiCU commented 1 year ago

Thorns can be done with an override (if you haven't found that already). --maraka thorns minetest.override_item("nodes_nature:maraka_leaves",{damage_per_second = 1})

jeremyshannon commented 1 year ago

Merged by hand to v4