Cuberite Forum
Great job guys !! - Printable Version

+- Cuberite Forum (https://forum.cuberite.org)
+-- Forum: Cuberite (https://forum.cuberite.org/forum-4.html)
+--- Forum: Development (https://forum.cuberite.org/forum-13.html)
+--- Thread: Great job guys !! (/thread-1170.html)

Pages: 1 2 3


RE: Great job guys !! - mgueydan - 07-03-2013

(07-03-2013, 04:39 PM)xoft Wrote: Wow, you seem uniquely drawn to weird generator settings, I'm especially curious how you managed to generate the screenshot in post #8, can you post your world.ini?

With pleasure

Thanks for the world.ini, this is working now.
I wouldn't have the idea to use "flat".


RE: Great job guys !! - mgueydan - 07-03-2013

Here is a more rules-compliant version of 277.patch


RE: Great job guys !! - xoft - 07-03-2013

* xoft likes, will merge it soon (ish)

Congratulations on your first contribution! Welcome to the dev team Smile


RE: Great job guys !! - mgueydan - 07-04-2013

(07-03-2013, 06:02 PM)xoft Wrote: Well, if you really want something to do, it'd be great if you had a look at FS #348: http://www.mc-server.org/support/index.php?do=details&task_id=348
It calls for a per-world configuration of the mobs allowed to spawn (if any at all).
I had imagined the world.ini would contain a section like this:
Code:
[Mobs]
Enabled=1
Allow=Cow,Sheep,Pig
This would be read into cWorld and the mob spawning would take this into account, together with the current biome (which imho is better than current dimension) when deciding what mob to spawn. Also, keep in mind that the spawning will need to be changed later, so that it takes the current light value into consideration and can spawn mobs underground;

Ok that's pretty clear, and a bit more challenging than previous task.
As I understood, a World contains more than 1 Biome.
That mean the world.ini file cannot have the structure you provided.
At minimal, it would be :
Code:
[BiomeForest]
Allow=Cow,Sheep,Pig

[BiomeWater]
Allow=Squid
or
Code:
[mobs]
BiomeForestAllow=Cow,Sheep,Pig
BiomeWaterAllow=Squid
or
Code:
[Cow]
AllowedIn=Forest,Plains,Tundra

Or am I wrong ?

Or it is time to refactor the ini file structure


RE: Great job guys !! - xoft - 07-04-2013

No, I think the individual entities should have each their own set of biomes where they spawn, those will be hardcoded (or maybe globally settable in settings.ini? ). So even if a nether world allows cows, they wouldn't spawn because the biome would be netherish.


RE: Great job guys !! - mgueydan - 07-04-2013

You mean a new mobs.ini file that would not be inside a world folder ?
Or a hardcoded set of biome for each Mob ?

Or a hardcoded set of mob for each biome ?


RE: Great job guys !! - xoft - 07-04-2013

A hardcoded set of biomes for each mob seems like the most logical way to go. Later on we can add customization to this, either global, or even per-world.

Hm, or wait, it might get interesting. Are there per-biome dependencies in mob spawning rates? Then it might be better to have a table of per-biome mob frequency.


RE: Great job guys !! - mgueydan - 07-04-2013

Nice.

(07-03-2013, 11:40 PM)xoft Wrote: Congratulations on your first contribution! Welcome to the dev team Smile

And my very first contribution doesn't even compile. A parenthesis disappeared somehow between last compilation and patch posting.

Sorry for that.

There is a new one.


RE: Great job guys !! - xoft - 07-04-2013

I fixed the patch before committing, get the updated sources.


RE: Great job guys !! - mgueydan - 07-04-2013

There are a lot of comportment we can expect. And the implementation really depends on what we want to do.

I assumed that this page describe the algorithm we want to implement in the end.

That is much more complicated that just rates. And I won't do everything in a single row of course. But at least, that confirms that we :
- We first determine mob mega-type (hostile / passive / ambiant / water)
- We then pick up location (through complicated rules)
- We finally pick up mob type (depending on location, light, biome ...)

What I suggest for the interaction with the world.ini configuration, is to impact the final step. Additionally we will use a shortcut to make no test at all for mega-type if no type at all is allowed in the world (typically : no hostile or no water).

One of the worse consequences would be that, de-activating all Passive mobs but one would conduct to an overspawning of this one. The alternative would be : almost no spawn.

Maybe we should split this thread in 2.