About when will we get proper mobs in minetest?

Thermal_Shock
Member
 
Posts: 76
Joined: Mon Jun 24, 2013 09:10

by Thermal_Shock » Mon Jun 24, 2013 09:24

shaneroach wrote:For me, mobs will be far more fun if/when there is enough AI for them to form towns and communities (monsters and people, obviously. Not animals... Well, maybe baboons...)

I envision a 3d dwarf fortress in my minds eye, though I would think that is a very long term goal and one I am setting more for myself than for the Minetest community at large.

That's an awfully high bar to set. Especially with the hope for a 3D Dwarf Fortress. As much as I would love to see the same.

Personally my hope is for an AI with multiple states.

Neutral- A wandering mob that doesn't react to the player.
Avoidant - Runs from the player at a certain distance.
Aggressive - Pursues the player

I'd assume that could fulfill most players needs without being to pie in the sky for the devs.
 

Nore
Member
 
Posts: 468
Joined: Wed Nov 28, 2012 11:35
GitHub: Ekdohibs

by Nore » Mon Jun 24, 2013 09:51

A 3D Dwarf Fortress? That would take years to code! And it would have to be done with the engine itself, and no control for lua, so bad.
 

shaneroach
Member
 
Posts: 141
Joined: Sat Apr 20, 2013 21:05

by shaneroach » Mon Jun 24, 2013 20:07

Nore wrote:A 3D Dwarf Fortress? That would take years to code! And it would have to be done with the engine itself, and no control for lua, so bad.


Hehe, as I said... more for my own personal motivation than anything the community needs to bother with here. The beginnings of it though would be pretty simple. People go home at night, go to a shop or other appropriate work place during the day, and react with the basic AI Thermal Shock was discussing.
In order to change yourself, you must believe the change is possible and that there are rewards for making the change.
- Inspired by Hebrews 11:6
 

User avatar
MirceaKitsune
Member
 
Posts: 809
Joined: Sat May 21, 2011 22:31
GitHub: MirceaKitsune
IRC: Taoki
In-game: MirceaKitsune

by MirceaKitsune » Wed Jul 03, 2013 10:21

This is something I consider one of the top concerns right now too. From what I heard, the reason mobs aren't in by default is that there's no mob system that's good enough. There are currently two implementations developed by two people, both of which have their own issues:

- MOB Framework by sapier: More detailed and complex, but slow and CPU intensive at times.

- Simple Mobs by PilzAdam: Lightweight and less resource intensive, but simpler and a bit buggy.

My suggestion is to go with PilzAdam's (which also has properly themed 3D models for animals) and slowly add features to it over time. I got a glimpse of it on VanessaE's server, and IMO it looks pretty good... although some minor movement issues are visible.
 

SilverWolfLily22
Member
 
Posts: 76
Joined: Sat Oct 20, 2012 10:11

by SilverWolfLily22 » Tue Jul 09, 2013 09:30

There isn't a mob system that is good enough? What? We can make one up.
It wouldn't be too hard. Tell me if I should put my thinking cap on.
I love hunting ;)
 

User avatar
MirceaKitsune
Member
 
Posts: 809
Joined: Sat May 21, 2011 22:31
GitHub: MirceaKitsune
IRC: Taoki
In-game: MirceaKitsune

by MirceaKitsune » Tue Jul 09, 2013 11:47

SilverWolfLily22 wrote:There isn't a mob system that is good enough? What? We can make one up.
It wouldn't be too hard. Tell me if I should put my thinking cap on.


There already are two, and their developers are experienced. So if it was possible to make a perfect one, such would have surely existed already.

I think some issues and limitations are problems with Lua entities overall, and will require code improvements also.
 

User avatar
Casimir
Member
 
Posts: 1101
Joined: Fri Aug 03, 2012 16:59

by Casimir » Tue Jul 09, 2013 14:36

That means we still have time to think about a proper concept for mobs.
The two current mods try to copy the minecraft model, which I don't like at all. It make the night unusable - minecraft is unplayable without bed, you can do noting but waiting for sunrise. Or you spend the night slaying an infinite number of zombies.
There are some alternative concepts:
* Mobs are friendly until you attack them.
* Mobs only spawn in certain areas. E.g.: dungeons for the dungeonmaster, desert ruins for the sandmonster.
* Mobs are created at generate, and when they are dead they stay dead. (problem with clear_objects)
* Generate mobspawners instead of mobs. E.g.: graveyards for skeletons, cursed trees for treejumpers.
 

User avatar
Jordach
Member
 
Posts: 4412
Joined: Mon Oct 03, 2011 17:58
GitHub: Jordach
IRC: Jordach
In-game: Jordach

by Jordach » Tue Jul 09, 2013 15:21

SilverWolfLily22 wrote:There isn't a mob system that is good enough? What? We can make one up.
It wouldn't be too hard. Tell me if I should put my thinking cap on.
Re-inventing the wheel takes way too long. It's probably best to contribute to Simple Mobs and go from there.

( ͡° ͜ʖ ͡°) ( ͡o ͜ʖ ͡o) [$ ( ͡° ͜ʖ ͡°) $] ( ͡$ ͜ʖ ͡$) ヽ༼ຈل͜ຈ༽ノ



My image and media server is back online and is functioning as normal.
 

User avatar
MirceaKitsune
Member
 
Posts: 809
Joined: Sat May 21, 2011 22:31
GitHub: MirceaKitsune
IRC: Taoki
In-game: MirceaKitsune

by MirceaKitsune » Tue Jul 09, 2013 17:05

Casimir wrote:That means we still have time to think about a proper concept for mobs.
The two current mods try to copy the minecraft model, which I don't like at all. It make the night unusable - minecraft is unplayable without bed, you can do noting but waiting for sunrise. Or you spend the night slaying an infinite number of zombies.
There are some alternative concepts:
* Mobs are friendly until you attack them.
* Mobs only spawn in certain areas. E.g.: dungeons for the dungeonmaster, desert ruins for the sandmonster.
* Mobs are created at generate, and when they are dead they stay dead. (problem with clear_objects)
* Generate mobspawners instead of mobs. E.g.: graveyards for skeletons, cursed trees for treejumpers.


I believe those would be the easy part. Main problem I noticed is that mobs either don't have an intelligent and complete behavior yet (eg: they walk into walls because they don't detect the path is blocked), either have various glitches and lag a lot (eg: animations can't be matched properly), either are CPU intensive. Some of those things could be solved in the mod, but I believe issues with Lua entities in C++ need to be fixed primarily.
 

Sokomine
Member
 
Posts: 2980
Joined: Sun Sep 09, 2012 17:31

by Sokomine » Tue Jul 09, 2013 19:52

The peaceful "normal" animals from mobf are already quite good and useful. The cpu usage doesn't raise that much if you just keep a few meadows with several dozen sheep, cows and chicken. It only gets bad when hostile mobs start spawning.

What I'd like to see are more types of animals. Those could easily be added if someone does a model for them.

The Minecraft way of letting hostile mobs spawn in the dark may be ok for players seeking adventures, but it's not so great for those who try to build. Perhaps that "spawning in mines" that was suggested might be a good idea. We ought to have peaceful inhabitants that spawn in villages and live there. Plus animals that roam the wild (and are sometimes dangerous if they consider the player to be food :-))
A list of my mods can be found here.
 

SilverWolfLily22
Member
 
Posts: 76
Joined: Sat Oct 20, 2012 10:11

by SilverWolfLily22 » Wed Jul 10, 2013 14:05

Well we definitely need something to turn mobs on and off.
Like in mobf u can turn certain mobs off.
I love hunting ;)
 

Diamond knight
Member
 
Posts: 262
Joined: Sun Apr 19, 2015 19:50
In-game: Diamondknight or diamond_knight

Re: About when will we get proper mobs in minetest?

by Diamond knight » Sun Jun 28, 2015 00:35

i think that mobs should be something that is configurable

the game kind of feels dead when you are the only non plant life form in the entire game

a few lightweight animals would be good but should have some settings if the minetest conf (like making them even more stupid, making them 2d, etc) for slower computers

with the developers support they could even be added in the c++ for even less lag
I can never get enough MESE!!!!!!!!!

my subgame: https://forum.minetest.net/viewtopic.php?f=50&t=11901
 

User avatar
TenPlus1
Member
 
Posts: 1874
Joined: Mon Jul 29, 2013 13:38
GitHub: tenplus1

Re: About when will we get proper mobs in minetest?

by TenPlus1 » Sun Jun 28, 2015 07:42

I already use a slow computer when playing Minetest and Mobs Redo runs fine for me and adds a healthy number of entities to the world...

viewtopic.php?f=9&t=9917
 

User avatar
MirceaKitsune
Member
 
Posts: 809
Joined: Sat May 21, 2011 22:31
GitHub: MirceaKitsune
IRC: Taoki
In-game: MirceaKitsune

Re: About when will we get proper mobs in minetest?

by MirceaKitsune » Sun Jun 28, 2015 11:03

I seriously believe my Creatures mod is something I can offer to this thread:

viewtopic.php?f=9&t=9240

It is based on PilzAdam's SimpleMobs, although at this stage it's been so heavily rewritten it's mostly the code layout that remains recognizable. Make no mistake however, it is still as lightweight and optimized and cleanly written.

What makes Creatures different firstly is that it takes a new approach to mobs: Players aren't considered people while mobs are animals or monsters or villagers. Everyone is simply a creature, with the same features and capabilities (to the best extent technically possible), the difference between players and AI minimized as much as possible. To better illustrate this, players spawn as ghosts and become ghosts when they die, and possess a mob in order to gain its body and features (species, appearance, etc). They can possess a person, a monster, or even animals like sheep or rats!

You can write your own creature settings as well as mods (modules) on top of Creatures, which offers a lot of code hooks and modding flexibility. The API is however still at the stage where it can undergo changes, so it's best to suggest features for the default creature set instead. In either case, I really think it's something Minetest users should try out and will enjoy at this stage.
 

User avatar
pandaro
Member
 
Posts: 266
Joined: Sun Jan 08, 2012 21:34
GitHub: pandaro

Re: About when will we get proper mobs in minetest?

by pandaro » Sun Jun 28, 2015 14:59

I also believe that an efficient API for MOB is necessary, I also agree with a sensible planning their introduction:
first in many other parts minetest should be further improved, to give extreme stability and speed minetest.
When the rest of the complex system minetest will be completed, then it will be investigated what is the most efficient compromise for creatures within minetest.
I think there are at least two types of creatures needed to create different games and they should be able to be chosen by modders and server administrators:
stupid creatures (not using or use limited computational resources)
intelligent creatures (much more expensive)
not only survival games require intelligent creatures, games that require, for example, complex farming or trading may require very complex entity refined.
So there is the need for efficient API that can vacate the modders to introduce AI complex as they please.
 

Dragonop
Member
 
Posts: 1178
Joined: Tue Oct 23, 2012 12:59
GitHub: Dragonop
IRC: Dragonop
In-game: Dragonop

Re: About when will we get proper mobs in minetest?

by Dragonop » Sun Jun 28, 2015 15:25

Oh man, you had to remember me the good old mobs from the 3.0...
 

4aiman
Member
 
Posts: 1208
Joined: Mon Jul 30, 2012 05:47

Re: About when will we get proper mobs in minetest?

by 4aiman » Sun Jun 28, 2015 18:36

You know, I've longed for an C++ mobs API.

But now I'm sure that even if that *will* happen - I'll never get the AI *I* wanted all along.

Hoping to be able to provide some binaries (*.dll or *.so) is even more stupid as someone will definitely think that a dynamic library == security issue. Even if it will be Minetest that will call several functions from a library.


Thus I don't want API as such. Pathfinder, ground/air flags exposed to lua, animations selection, fast code for jumps or for being pushed back - having some of those as a part of AI (which is to be used in Lua) may be a good idea on the other hand.

Even if Lua isn't the best way to add any mobs, there's NO alternative to create AI/API that some certain person wants to create.

Having all that in mind I can say that I've became indifferent to mobs in default.
Not only I've created my own mobs.
I don't play minetest_game either.
I have my game which is not compatible with minetest_game (and is overlooked by many for that reason including it's mobs API) while simplemobs mod has become a standard of sorts and I'd rather not change that.
I can brag all I want about how cool my game and mobs are, but...
meh...
Everyone's free to guess why.


Those who can add a mod or use a custom game won't complain too much.

Those who can't...
My experience with android port showed me that it doesn't really matter whether mobs lag or not and how poor their AI is.
I don't think that adding a stupid mobs just for the sake of those who are too small/inexperienced to add a mod is worth doing it.


Those who want mobs in default should create a list of features that they want to have, like:
- breeding
- feeding
- projectile weapons
- flying/swimming mobs
- different attack procs
- XP drops
- items drop (which?) upon kill
- jumping over obstacles
- finding a clear view of a player for a distant attack
- exploding attacks
- environmental damage
- spawn rates control
- available animations
- collision box rotation
- disable collision box
- equip armour
etc.

Then that list should be broken in to 2 categories: C++ and Lua.
C++ goes into engine,
Lua becomes a part of builtin.

Some of those functions will require adoption of some mods like "3d_armor".
Chose wisely ;)
 

Sokomine
Member
 
Posts: 2980
Joined: Sun Sep 09, 2012 17:31

Re: About when will we get proper mobs in minetest?

by Sokomine » Mon Jun 29, 2015 20:09

pandaro wrote:not only survival games require intelligent creatures, games that require, for example, complex farming or trading may require very complex entity refined.

Not really. Trading is pretty inexpensive regarding computation time as it only happens when a player clicks on a mob and wants to trade. If that takes a bit of time then, it's usually not an issue. It's more important to have efficient spawning of mobs (do we need to spawn another one right now? and if so, where? -> expensive) and optimized code at those places that get executed by all mobs every fraction of a second is usually more important.
A list of my mods can be found here.
 

golthem
Member
 
Posts: 43
Joined: Tue Jan 21, 2014 20:22
In-game: Golthem

Re: About when will we get proper mobs in minetest?

by golthem » Wed Jul 01, 2015 14:58

My suggestion is that someone do run over of simple mobs making it fit in better with the default game (if that's possible ;) ). Perhaps tweaking the mobs themselves. Then bring that to the table and we can have this discussion.

My belief is that simple mobs has a "fake AI" that with the proper programming, could be put to pretty good use and at least that would give us a foundation to start perfecting.
Last edited by golthem on Wed Jul 01, 2015 15:29, edited 1 time in total.
Golthem

I don't write code so others don't have to, I write code so others can see why they should too.
 

4aiman
Member
 
Posts: 1208
Joined: Mon Jul 30, 2012 05:47

Re: About when will we get proper mobs in minetest?

by 4aiman » Wed Jul 01, 2015 15:23

@golthem
To better fit minetest_game mobs should be accompanied by 3d_armour and many other mods. w/o those I'd have to agree that mobs are needed only to slay smth.
 

golthem
Member
 
Posts: 43
Joined: Tue Jan 21, 2014 20:22
In-game: Golthem

Re: About when will we get proper mobs in minetest?

by golthem » Wed Jul 01, 2015 15:31

@4aiman
For what purpose? The player or the mobs?

It's probably a good idea to have some armor options in the default game anyways.
 

4aiman
Member
 
Posts: 1208
Joined: Mon Jul 30, 2012 05:47

Re: About when will we get proper mobs in minetest?

by 4aiman » Wed Jul 01, 2015 16:08

@golthem
w/o adding armour mobs have to be made too weak (to compensate the inability to protect from their attacks).

I believe that the whole AI of mobs for a game w/o armour should differ from that for a game with armour.
That includes sieges, group-attacks, fractioning, mobs walking/running speed, max view distance and much more.

Of course that is only my opinion - I'm all for singling out some feature that are in-common for any kind of AI and adding that to C++.
 

User avatar
TenPlus1
Member
 
Posts: 1874
Joined: Mon Jul 29, 2013 13:38
GitHub: tenplus1

Re: About when will we get proper mobs in minetest?

by TenPlus1 » Wed Jul 01, 2015 16:17

We need a mob system that works on the same principles as the player, certain nodes can hurt (fire, lava), you can drown in water (can be disabled), can wear armor if available, as well as the AI to handle each one... This is something Minecraft does quite well and is more of an ENTITY system which has features you can turn off or on (AI, hurt, hunger, drowning, armor, flying, walking etc.)... Kudos to MirceaKitsune in making some of this possible in his Creatures mod...
 

4aiman
Member
 
Posts: 1208
Joined: Mon Jul 30, 2012 05:47

Re: About when will we get proper mobs in minetest?

by 4aiman » Wed Jul 01, 2015 16:33

Actually, my mobs are hurt by lava, can be made to drown, can fly, can wear armour, can be fed and much more :)
(all but armour is out there in the old magichet release)

The problem is: to properly code that all, the minetest_game should be overhauled.
That's what some of us are trying to do.

Too bad I can't afford shipping magichet with Minetest.
Well, it's not like MT would *allow* me to do that - the license is rather similar to CC-BY-SA-NC.
I'm still struggling with new biomes system, but other than that I'm pretty ready to make a release.
(I still have to decide whether to buy a server or host myself - the price is nearly the same.)
 

golthem
Member
 
Posts: 43
Joined: Tue Jan 21, 2014 20:22
In-game: Golthem

Re: About when will we get proper mobs in minetest?

by golthem » Wed Jul 01, 2015 16:42

That all makes sense for sure. This is one thing I think Minecraft has really got down (not trying to compare the two, just making a reference...) hostile mobs spawn at night and in dark. There, right from the beginning you have some protection, just go out at day and carry torches when mining. For those who desire to battle, they can make armor, weapons, etc. and then venture into the night or without armor, the mobs still don't have crazy health just enough to add a challenge. The question is, what type of mobs are we referencing? Hostile, friendly, or both? What are the benefits to each?
 

User avatar
TenPlus1
Member
 
Posts: 1874
Joined: Mon Jul 29, 2013 13:38
GitHub: tenplus1

Re: About when will we get proper mobs in minetest?

by TenPlus1 » Wed Jul 01, 2015 17:42

Sorry 4aiman, what I meant was that an all round entity system would be an advantage in that no-matter WHAT the mob; player; animal, they all follow the same damage system, armor system instead of being coded seperately...
 

4aiman
Member
 
Posts: 1208
Joined: Mon Jul 30, 2012 05:47

Re: About when will we get proper mobs in minetest?

by 4aiman » Thu Jul 02, 2015 07:52

No need to apologize, Ten :)

I wasn't intended to prove anything or to argue about anything :)

What I meant was that the current system allows us to create rather complex mobs+players interaction (including all the effects you've mentioned).
But the ways of doing that are very hacky sometimes.


@everyone
Now, the reason why I've written about adbs is simple:
If there would be any "movements" towards creating a *generic* system for all entities (like TenPlus1 suggests), devs will absolutely need to look into all current mobs implementations and compare the code.
I'm aware of at least 3 kinds of mobs: animals (MOBF), Simplemobs and adbs.
MOBF is a heavy but *very* complex system.
Simplemobs has many derivatives each fixing bugs and/or introducing new features.
Abds were inspired by simplemobs but were coded from scratch and went further towards MC-like mobs in all possible ways.

IMHO it would be rather stupid to not take a notice on what can await one on the path of creating a generic entities system.

I'd rather give you an example:
Just a couple of days ago a new "get_player_velocity" function was introduced.
I've already suggested to change the name to "get_velocity" - all for the sake of a generic method names and ease of programming.


My point?
Look at those _player_ functions. Think about impossible tasks (on_move for a *non-detached* player inventory). Notice how many sanity checks there are which serve the one and only purpose: make sure that the method exists.

API was made by a C++ coder(s) with little to no regard (just my opinion) to Lua side.
Thanks to a design like this, *is_player* was a player-only method for quite a while, which rendered it being a method and not a field useless (was fixed, "quite a while ago" too).


So, in two words:
I'm all for a kind of a system that Ten proposes.
My only hope that the assigned coder will take a look at some mobs and make some corrections.
 

Sokomine
Member
 
Posts: 2980
Joined: Sun Sep 09, 2012 17:31

Re: About when will we get proper mobs in minetest?

by Sokomine » Thu Jul 02, 2015 15:00

4aiman wrote:My only hope that the assigned coder will take a look at some mobs and make some corrections.

It's open source...whoever takes the job gets it. If the result is good enough, and other people are convinced of it, it will get used.

I'd love to have a system with a generic interface for registering mobs, which then can be extended by adding more complex behaviour through further mods.
A list of my mods can be found here.
 

4aiman
Member
 
Posts: 1208
Joined: Mon Jul 30, 2012 05:47

Re: About when will we get proper mobs in minetest?

by 4aiman » Thu Jul 02, 2015 18:37

@Sokomine
I was talking about looking into existing mobs' Lua code to make less design errors in C++.
That has nothing to do with open-sourceness, e.g of course it's open source ;)
 

golthem
Member
 
Posts: 43
Joined: Tue Jan 21, 2014 20:22
In-game: Golthem

Re: About when will we get proper mobs in minetest?

by golthem » Fri Jul 03, 2015 01:11

4aiman wrote:@Sokomine
I was talking about looking into existing mobs' Lua code to make less design errors in C++.
That has nothing to do with open-sourceness, e.g of course it's open source ;)

I believe Sokomine was meaning that the job is not assigned to someone, someone volunteers to take it up.
 

PreviousNext

Return to Minetest Features

Who is online

Users browsing this forum: No registered users and 43 guests