Monsters and Animals

edited October 2014 in Monsters and NPCs
Because this is the place to ask...

1. Procedurally-generated monsters?
2. What kind of monsters will we see?
3. Will they stick around in one place, or will they have decent AI too?
4. If they have AI, will they know to stick around certain biomes where they're "comfortable", or will they be placed there automatically?
5. If you somehow destroyed their home, would they know to look or new places?
6. Could you conceivably get really far in the game without bothering with humans, and only leveling on monsters?
7. Are there animals too, such as domesticated livestock, deer, or chickens? Non-hostile mobs, I mean to say.
8. Will they reproduce, or are you effectively culling the population?
9. Can you train/tame them as pets? Could you be followed around by a cat, or a pet demon, for instance?
10. Will there be eggs? Could you gather eggs and sell them?
11. If there are non-hostile animals, they know to run from predators? Will there be predators?
12. Will monsters drop unique items?

What are everybody else's preferences, hopes and thoughts?

Animal/monster discussion thread. Annndddd... Go.

Comments

  • What I really would like to see are procedurally generated monsters like in Dwarf Fortress. In DF, monsters can have the wierdest properties, like "made out of soap" or "blood that gives dwarfs a flesh eating disease, when they get in contact with it", etc.
  • 1. I like the idea of procedurally generated monsters, but it is tricky to do well, esp when graphics are required.
    3. I would like to see a much wider range of AI capabilities than for NPCs. It seems perfectly fine to me to have a wolf that has a really dumb AI, while a lich may be as competent as any other NPC.
    6. I would like to see this, with the implication that the crafting system is powerful enough to provide all of your needs.
  • I mostly would like to see a framework in place where people can add their own images and properties to.
    This way the community can populate the world with monsters using mods. I'm imagining monsters being built like in Spore. Perhaps even a mix of how starbound does it.
  • Pain, as you seem to be a DF player, I have to give you a big +1. :D

    Graphics in particular, as Mystify said, is the primary issue with procedurally-generated monsters. I'm the author of a DF utility called DFRandCreatures, which produces X number of random creatures when you run it... It's not updated for the current version, unfortunately, but it worked fine in 34.xx.

    The biggest issue with random generation is how the creature looks. That's really it. If you could somehow do something akin to what Spore does that could throw creatures together on the fly from a set of algorithm, that works great! If not, there's not much chance of random-genned creatures.


    And on to Mystify: The wolf vs lich example is excellent. Much want. (And I'd hope the crafting system is powerful enough for all items in the game to be manufactured - perhaps with the exception of artifacts.)

    Katorone, what you describe sounds very similar to DF. :P That's exactly how DF works.



    As to some of the other stuff, I'm really hoping they'll reproduce, though perhaps with "spores" as in DF, and you'd have to be careful to make sure they didn't overpopulate an area. Something else - the AI could have them lean towards either clumping together, or spreading out. That way, fights with them would be mostly predictable - at least in the sense of, "Holy carp, why are there 40 spiders behind this bush?!"

    Also, farm animals - very much want. It would add to that VQ countryside charm.
  • edited October 2014
    While DF's random monsters have some interesting emergent behavior, my desire is to keep the monster properties static (although it would be easy to throw in a "randomize" button, another question is balancing the results).

    The reason is, as with other entities like items, I want people to see something and be familiar with it immediately, just as you would a chess piece if you knew how to play chess. Randomizing properties ups the learning curve, and the time spent examining every item, monster, etc. I want people to see things and know what they do. And it also prevents things from getting too nonsensical (nothing against humor in games, but I prefer a coherent, logical playthrough).

    There is no difference between monster AI and human AI in terms of how they are processed, only how the rules are setup. Many monsters can't speak or have a limited vocabulary (to express anger, fear, submission, etc). Some monsters might have weak sight, good hearing and/or sense of smell, etc. Some monsters might be herbavores, some might be hoarders (i.e. a dragon guarding a bunch of gold).

    To answer @Talvieno‌ questions:


    1. Procedurally-generated monsters?
    Yes.

    2. What kind of monsters will we see?
    Standard fantasy affair. Sets of monsters will probably be tied to one of six elemental planes, like MTG, Heroes of Might and Magic, etc.

    3. Will they stick around in one place, or will they have decent AI too?
    They will go wherever their AI says is best. AI described above a bit, just as good as humanoids.

    4. If they have AI, will they know to stick around certain biomes where they're "comfortable", or will they be placed there automatically?
    Again, depends on what AI tells them. Maybe they will flee their home area if chased out by a predator, perhaps into a new biome.

    5. If you somehow destroyed their home, would they know to look or new places?
    Yes, they will seek whatever means to satisfy their needs for food, shelter, reproduction, etc.

    6. Could you conceivably get really far in the game without bothering with humans, and only leveling on monsters?
    Yes. Its possible leveling may not be related to killing stuff at all. One idea is finding shrines, we will see how it works.

    7. Are there animals too, such as domesticated livestock, deer, or chickens? Non-hostile mobs, I mean to say.
    Yes.

    8. Will they reproduce, or are you effectively culling the population?
    Yes (funny how I'm addressing some of these answers in advance accidentally).

    9. Can you train/tame them as pets? Could you be followed around by a cat, or a pet demon, for instance?
    This is tricky. There is no learned behavior, only gathering facts (there is a difference in the world of AI). If I specified a rule - "humans likely to give food to cute animals", and "cat is cute" then cats might seek out a human if hungry. But they cannot learn that particular person gives out food at a certain interval - there are some things that are just too computationally expensive or memory consuming to track. You can always fake it though.

    10. Will there be eggs? Could you gather eggs and sell them?
    Yes, anything that lays eggs to reproduce (chickens, dragons, etc).

    11. If there are non-hostile animals, they know to run from predators? Will there be predators?
    Yes, staying alive is the number one motivator for almost any NPC/beast. They will know what is hostile, even if indirectly (eats(carnivores,herbivores); sheep: herbivore, wolf: carnivore, onEaten(isDead,true) ) -- again just pseudo code, not syntactically correct.

    12. Will monsters drop unique items?
    No, but you can skin their hides, cut off their horns, harvest their meat, gather their bones, etc).
  • gavanw said:

    12. Will monsters drop unique items?
    No, but you can skin their hides, cut off their horns, harvest their meat, gather their bones, etc).

    I've wanted this in a game for a long time. Before release of Guild Wars 2, I was hoping their crafting system would be about more than just random drops from mobs. That with skill you'd get to use more of their /parts/ to use in crafting.
    Tied in with a butchery skill this could lead to interesting possibilities. The better you are at butchering, the more usable resources you could get from a creature you killed (perhaps even humans?). Or the less likely you'd poison the meat increasing its quality.
    If you lack the butchery skill, you could go find a butcher and drop off the carcass (in a reasonable time).

    Anyone would be able to get some kind of resource from kills, but if you're good you can perhaps make leather from the skin, get more and higher quality meat, harvest the eyes, brains, organs for magic users, and so on.
    In combination to this I'd require the player to have a toolset they can collect for doing those things. It would take up a single inventory slot or pouch and contain all the butchery tools you collect. The quality of these tools would also determine your efficacy (efficiency?)
  • edited October 2014
    Katorone... I'm going to fire up DF. Be back in a bit.

    image
    There we go. This already exists. :D Butchery is a bit easy at the moment, but it's planned to become more difficult. Brains, eyes, organs, meat, bones, skins - all there. It requires a sharp, bladed weapon to butcher a creature, too - and that's the butchery tool. Quality doesn't make much of a difference yet, but hey - it exists. :D

    And now I'm going to go back up and read Gavanw's post. >.> Because I think I missed it.
  • Gah! People will think I'm ripping suggestions from DF... While I haven't played it. (trees from the forest and all that.)
  • Re: pets, it should be possible to do it with the AI system, it would just need to be a bit more explicit. Add in an action that will designate you as their owner, and their AI will prioritize staying close to and protection g their owner
  • Lol, Mystify beat me to it. You simply add more detail.

    "Humans give food"
    "Humans give food when I'm cute"
    "Some humans give food when I'm cute"
    "Some humans sometimes give food when I'm cute"
    "The butcher sometimes gives me food when I'm cute"

    So the cat here has learned to go to the butcher when it's hungry (and potentially other NPCs as well) - provided, of course, that the AI can equate the word "food" with the physical need "hunger".

    It might also require the data:

    "The butcher is often around coordinates X,Y,Z" - that way the cat knows to go there and then search for the butcher. With the added data:

    "The butcher comes to me when I meow", if you hook that into the search algorithm, then the cat could meow when it's looking for the butcher.


    This is all very complex stuff, though, especially on a large scale.
  • Katorone said:

    The better you are at butchering, the more usable resources you could get from a creature you killed (perhaps even humans?).

    image

    (From the design doc)

    Skills get a bit more specific than butchering, as you can see. In the current plan, the butcher was someone who mainly extracted meat (and perhaps bones, as some butchers do) from an animal. A hunter captures the animal, a tanner skins it and tans the hide, and a seamstress/tailor makes something out of the hide.

  • *checks his wallet to see if he can throw more money at VQ*
  • edited October 2014
    Talvieno said:

    Lol, Mystify beat me to it. You simply add more detail.

    "Humans give food"
    "Humans give food when I'm cute"
    "Some humans give food when I'm cute"
    "Some humans sometimes give food when I'm cute"
    "The butcher sometimes gives me food when I'm cute"

    So the cat here has learned to go to the butcher when it's hungry (and potentially other NPCs as well) - provided, of course, that the AI can equate the word "food" with the physical need "hunger".

    It might also require the data:

    "The butcher is often around coordinates X,Y,Z" - that way the cat knows to go there and then search for the butcher. With the added data:

    "The butcher comes to me when I meow", if you hook that into the search algorithm, then the cat could meow when it's looking for the butcher.


    This is all very complex stuff, though, especially on a large scale.


    This is definitely doable, but "learned" AI is quite different from explicitly specifying certain rules (even if the result is not direct). Learned AI typically revolves around things like neural networks:

    http://www.cheshireeng.com/Neuralyst/nnbg.htm

    Its been a long time since I've messed with neural networks, but iirc, a neural network is something that takes an input set of data (a learning set), and a desired output set, and it learns how to weight each node in the neural network until the errors are reduced (every input set tends towards the desired output set with little or no error). In other words, it trains itself on a base set of data, so that it can comprehend new sets of data in the future.
  • a proper learning AI is probably far too intensive to be practical. However, I could see some learned things being coded in the knowledge set.
    like, add certain events as features, with counts.
    "This human gave me food *x* times"
    "Humans that give me food at least *y* times are likely to do it again"
    The AI doesn't learn novel features, but the individual NPC does learn.

    Also, a relationship system can work towards this. If another entity takes an action that helps you reach your goal (I was hungry and he gave me food; I was going to die and he killed my attacker), your relationship with them increases. The higher your relationship the higher you weight their own safety among your goals. So, if a creature has a really high relationship with something, it will actively try to protect it, and will follow it around to ensure its safety. This would work for building a relationship with an animal to make it into your pet, and having it act to protect you, as well as a mother bear protecting her cubs, or a herd of animals sticking together. Naturally, not every NPC will act the same way with a high relationship, which will naturally create a divide as to creatures suitable for being pets and those that aren't. a dog/wolf would be a social animal, and hence would have the necessary logic to act socially andbond, and so you could win it over to be a friend, while a lizard is asocial and doesn't care about other entities.
  • An AI like this could come in handy when trying to get NPC to join your party (or even pets). People with a common interest tend to group together. If you're an adventurer who likes combat a lot, then it wouldn't be far fetched that a combat-focussed NPC gets to know this about you and tags along. You would be the tool for them to get into combat.
  • edited October 2014
    Or, perhaps, to take what Mystify said a step farther:

    "The baker gave Oscar food __ times."
    "The baker is a human."
    "Oscar is a cat."
    "Cats are animals."
    "Humans that give animals food __ times are likely to do it again."
    "I am a cat."
    "The baker is likely to give me food."

    This way something could learn purely through observation.



    Another thing that's important to note: beneficial actions shouldn't be the only thing that increases relationships - simply being around someone should raise your relationship with them, though that gain should become more gradual over time. This would help things such as bonds between siblings, or relationships between a mother and her children. When a child is "born", the child would have no knowledge of its mother, but its mother, having carried it for the past X amount of time, would already have formed a strong bond.

    Just an idea, though... it could be a bit overcomplicated. :\
  • Katorone said:

    An AI like this could come in handy when trying to get NPC to join your party (or even pets). People with a common interest tend to group together. If you're an adventurer who likes combat a lot, then it wouldn't be far fetched that a combat-focussed NPC gets to know this about you and tags along. You would be the tool for them to get into combat.

    This fits in pretty well with the class/skill system ideas being kicked around in another thread.

    If the learning system that @Talvieno described in the above post is possible, I'd also like to see characters using/talking to other characters to gain information that relates to their end goals. Say Mr. Stonemason wants to know where he can find the new kind of crystal he heard about in the market. He talks to someone who knows the adventurer that brought the crystal, and they set up a meeting. Depending on how complicated this gets, this network of relationships could drive politics and drama. Even if that's not feasible, it would be pretty cool to see characters grouping together to reach their goals. Maybe if I worked on an AI mod, I could relate this to swarm robotics and write my thesis on it... ;)
  • Katorone said:

    An AI like this could come in handy when trying to get NPC to join your party (or even pets). People with a common interest tend to group together. If you're an adventurer who likes combat a lot, then it wouldn't be far fetched that a combat-focussed NPC gets to know this about you and tags along. You would be the tool for them to get into combat.

    This fits in pretty well with the class/skill system ideas being kicked around in another thread.

    If the learning system that @Talvieno described in the above post is possible, I'd also like to see characters using/talking to other characters to gain information that relates to their end goals. Say Mr. Stonemason wants to know where he can find the new kind of crystal he heard about in the market. He talks to someone who knows the adventurer that brought the crystal, and they set up a meeting. Depending on how complicated this gets, this network of relationships could drive politics and drama. Even if that's not feasible, it would be pretty cool to see characters grouping together to reach their goals. Maybe if I worked on an AI mod, I could relate this to swarm robotics and write my thesis on it... ;)
    Yes, there will be "learning" in the sense of gathering existing information, but not "learning" in the sense of pattern recognition in existing information, if that make sense. In AI terms, gathering knowledge is different from pattern learning/recognition.

  • I consider that learning, more or less... For instance, your NPC might go up to another and ask, "Do you know where food is?" The second answers, "No, but Bob over there might know where food is." The NPC has now learned that there is a possibility that Samuel knows where food is. If checking this has a high enough "importance score", the NPC will go over to Bob and say, "Alice told me you know where food is. Do you?" At which point Bob might answer, "Yes, there's a field of strawberries just south of town."

    Gathering information is a rudimentary form of "learning"... but there's something else I'd like to add... I guess I should do that in the AI thread.
  • *Wonders if he can use his Kickstarter reward level to name a creature "Rainbow Butt Monkey"*?
  • You'll have to forgive me if anything I ask has already been covered in one of the kickstarter updates or one of the streams, I'm a little out of date here. Oh, and maybe forgive my sloppy articulation, my terms are out of date too ;P

    How are the animations of characters handled? It's not uncommon for voxel-based games to handle animation by cycling pre-cooked frames. Much like traditional frame-by-frame animation, a walk-cycle would be a small number of frames, each frame being a configuration of voxels representing each motion of the walk, and then looping upon it's completion. Or are the animations generated through rules, joints and constraints? Yeah, like I said, sorry about my wobbly articulation, haha. I ask this because while a full Spore-like creature creation system may be a long-shot, it's always a great time-saver if creatures can be built of common pieces that are animated by the use of values/sliders, rather than the more detailed but time-consuming frame-by-frame style. I'm thinking in terms of content creation later on, as people are bound to grow wild ideas for species and they would like to add.

    Here's an easier one : Internal materials in living creatures.
    In retro style games/engines, all too often the dynamic destruction of an item reveals that it's internal material is just a solid mass of same-coloured blocks. For something as detailed as this, have you considered the generation of 'internal details' for living entities? Such as automatically colouring voxels below the outer 'skin' layer with the colour of their blood, and perhaps interspersing whitened sections to represent bone? It may not sound like much, and depending on how the game feels while in action, it might not even fit, but its an irksome thing to some. As an aside, have you considered something similar for non-living entities? While the natural geography has grass layers, then dirt, and then stone which can be generated through magic algorhythms way beyond my comprehension, what about constructions such a brick roads or common structures, or even trees? A tree impacted by a spell or something heavy would not be a singular shade of brown effected only by light, but should ideally show some minor detail such as the internal ring pattern. Or for instance, a building has a hole blown open in it by a fireball, the edges around the gaping structural damage would need to be automatically (temporarily?) blackened to avoid the usual voxel "play-doh world" effect.

    Wait, I'm sure I had a question in there somewhere...
  • Last I heard, there are not going to be animations in the core game. A creature may have several preset poses, though.
    The engine is full capable of generating the internal structure of objects. This is demonstrated in many of the videos, if you want to see.
  • As an aside, have you considered something similar for non-living entities? While the natural geography has grass layers, then dirt, and then stone which can be generated through magic algorhythms way beyond my comprehension, what about constructions such a brick roads or common structures, or even trees? A tree impacted by a spell or something heavy would not be a singular shade of brown effected only by light, but should ideally show some minor detail such as the internal ring pattern. Or for instance, a building has a hole blown open in it by a fireball, the edges around the gaping structural damage would need to be automatically (temporarily?) blackened to avoid the usual voxel "play-doh world" effect.

    I have some good news for you. :) Like @Mystify‌ said, the videos show some internal structures of objects like tree rings and the interiors of bricks. Also, voxel colors can be hotswapped, so the engine already has the potential to blacken the edges of buildings that were blown apart. Whether or not Gavan chooses to implement these effects is up to him, of course.

    At the moment, animation will consist of posing characters in predetermined poses.
  • Whelp, it's official. gelatinous cubes are the first monsters in the game, featured on the latest stream :D
  • Japa said:

    Whelp, it's official. gelatinous cubes are the first monsters in the game, featured on the latest stream :D

    Haha yep. Remember when he said everything was abstracted so the AI could understand? Jello is about as abstract as you can get :)
Sign In or Register to comment.