New AI for Mobs
I think it's safe to use the current cMonster::eType enum for "mob base", it corresponds to the protocol's entity type, so it makes sense.

I don't have a vision of what the "configurations" are exactly. Is it just "having member variables dedicated to X", or is there something more, such as a specific combination of "components"?

Where will undead-sunlight-burning go, component-wise? Does it go under Reactions? Or will there be a specific component for "environment reactions"? How about nether mobs not taking damage from fire and lava?
Reply
Thanks given by:
Honestly, I don't know where sunlight-burning would go. I do think that "Environmental Reactions" would be a good place to put those. That way, squids can burn when exposed to air, nether mobs don't react to anything (maybe drown in liquids?), and regular mobs drown in liquids and burn in lava.
Though do nether mobs burn when exposed to sunlight?
Reply
Thanks given by:
Another question is, can you use multiple components for one "slot"? It would make *some* sense - we need the zombie pigmen to not react to lava, yet to have a very specific reaction to being hit by a player. On the other hand, it should be fairly easy to actually derive a single new component from those two. The only disadvantage is that all these combinations need to be defined compile-time, rather than combine various components in runtime.

We should make a mindmap of all these thoughts so that we don't get lost Smile
Reply
Thanks given by:
Agreed.

Adding multiple to a slot would make it very complex... Plus, having multiple slots of a single type would make it difficult to prevent collisions. For instance, what would happen if I had multiple move types? If I had slime movement and squid movement on the same target, they would naturally conflict.

Do you have a tool that you usually use for a mindmap?
Reply
Thanks given by:
I used FreeMind a lot, I liked it (except for the fact that it's in Java).
http://freemind.sourceforge.net/wiki/ind.../Main_Page
Reply
Thanks given by:
Found a free online one that saves mind maps as json:
http://mindmap.crazenut.org/mindmapswebapp.html

Anyways, I'm putting it together as a mind map. I'll post the results so that you can take a look at it and change it/comment on it.

Is there anything specific you would like in the mind map?

So here's one that I just threw together:
[Image: Screen%20Shot%202013-12-23%20at%203.14.23%20PM.png]
Reply
Thanks given by:
Will the player be represented in the same way? It would make some sense - we could then have players controlled by an AI instead of a real network client. On the other hand it would very much complicate the API to plugins, and most plugins would need rewriting a lot of code, because the cPlayer object provides quite a lot of functionality extra to entities.
Reply
Thanks given by:
I think it would be really cool, IDK if it's possible in any sort of real timeframe though.
Reply
Thanks given by:
It might just be easier to make an "adapter" class that would allow us to put any AI component into a cPlayer object, rather than modifying the cPlayer object to fit in this new architecture.
Reply
Thanks given by:
We could also create a special mob class called cMobPlayer?
Reply
Thanks given by:




Users browsing this thread: 29 Guest(s)