[Modpack] Animals Modpack [2.5] -- 2.6 approaching

Nebucad
Member
 
Posts: 13
Joined: Sat Apr 06, 2013 06:31

by Nebucad » Wed Apr 17, 2013 14:25

clarksallador wrote:i have the latest update .. but still cannot kill a mob


your problem sounds for me familiar. Go to post 936.
 

User avatar
Jonathan
Member
 
Posts: 119
Joined: Tue Apr 02, 2013 14:07

by Jonathan » Wed Apr 17, 2013 15:01

I love this mod, and the flexibility to modify, add, and remove creatures. For my personal use, I removed most creatures and I modified the npc trader so guards and archers could be purchased with wood (to be able to easy rebuild armies after destroyed). I also tweaked so one player's soldiers can defeat another player's soldiers (originally they would fight forever). In the Minetest game I played with my brothers, I seized my brother's castle by placing around 25 soldiers in the courtyard and outside lol.

Unfortunately, my brother is having issues joining the game now (minetest 0.4.5) that I have to figure out how to fix it :P (probably too many soldiers in one location and/or his player got in some odd state lol).
By perseverance the snail reached the ark.
- Charles Spurgeon
 

deivan
Member
 
Posts: 452
Joined: Fri Feb 15, 2013 10:16

by deivan » Wed Apr 17, 2013 18:56

Is a very nice idea to a mod, have your code in some place to download Jonathan?
 

User avatar
Jonathan
Member
 
Posts: 119
Joined: Tue Apr 02, 2013 14:07

by Jonathan » Wed Apr 17, 2013 20:07

deivan wrote:Is a very nice idea to a mod, have your code in some place to download Jonathan?


No, I don't. Besides, this is sapier's mod which might include some of these type of changes in the future. Although below is what I replaced:

In the mob_npc init.lua I replaced the trader_inventory group:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
trader_inventory = {
                goods = {
                            { "mob_archer:archer 1","default:tree 4",nil},
                            { "mob_guard:guard 1","default:tree 4",nil},
                        },
                random_names = {"Honest Hank","Hungry Hungry Hans","Flip Flop Franz","Tough Tom","Frantic Fritz","Timid Thomas","Marvelous Martin","Furry Frank","Bobblehead Bobby","Sticky Stinky Steve"},
            }
        }


In the mobf fighting.lua around line 845:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
        --TODO call punch instead of manually setting health for player too
        if target:is_player() then
            local target_health = target:get_hp()

            --do damage
            target:set_hp(target_health -damage_done)
        else
--Jonathan added
            local target_health = target:get_hp()
            target:set_hp(target_health -damage_done)
            if target:get_hp() <= 0 then
                target:remove()
            end

--Jonathan commented out
--            target:punch(entity.object, 1.0, {
--                            full_punch_interval=1.0,
--                            groupcaps={
--                                fleshy={times={    [1]=1/(damage_done-2),
--                                                [2]=1/(damage_done-1),
--                                                [3]=1/damage_done}},
--                                snappy={times={    [1]=1/(damage_done-2),
--                                                [2]=1/(damage_done-1),
--                                                [3]=1/damage_done}},
--                            }
--                        }, nil)
        end


In the mobf fighting.lua line 928 remove "+1" added to mob_pos.y+dir.y:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
y=mob_pos.y+dir.y,


In the mobf weapons.lua around line 395:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
    if self.timer>0.2 then
--Jonathan changed radius area from 2 to 1.
        local objs = minetest.env:get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 1)
        for k, obj in pairs(objs) do
            if obj:get_luaentity() ~= nil and
                obj ~= self.owner then
                if obj:get_luaentity().name ~= "mobf:arrow_entity" and
                    obj:get_luaentity().name ~= "__builtin:item" then
--Jonathan added
                    local target_health = obj:get_hp()
                    obj:set_hp(target_health -self.damage)
                    if obj:get_hp() <= 0 then
                        obj:remove()
                    end
--Jonathan commented out
--                    obj:punch(self.object, 1.0, {
--                        full_punch_interval=1.0,
--                        groupcaps={
--                            fleshy={times={    [1]=1/(self.damage-2),
--                                            [2]=1/(self.damage-1),
--                                            [3]=1/self.damage}},
--                            snappy={times={    [1]=1/(self.damage-2),
--                                            [2]=1/(self.damage-1),
--                                            [3]=1/self.damage}},
--                        }
--                    }, nil)
                    self.object:remove()
                end
            else
--Jonathan added
                local target_health = obj:get_hp()
                obj:set_hp(target_health -self.damage)
                if obj:get_hp() <= 0 then
                    obj:remove()
                end

--Jonathan commented out
                --punch a player
--                obj:punch(self.object, 1.0, {
--                    full_punch_interval=1.0,
--                    groupcaps={
--                        fleshy={times={    [1]=1/(self.damage-2),
--                                        [2]=1/(self.damage-1),
--                                        [3]=1/self.damage}},
--                        snappy={times={    [1]=1/(self.damage-2),
--                                        [2]=1/(self.damage-1),
--                                        [3]=1/self.damage}},
--                    }
--                }, nil)
                self.object:remove()
            end
        end
    end


Some of the changes I made were to improve the arrows some. the arrow originally could always hurt you behind a wall if you were directly beside it. Now it only can hurt you behind the wall sometimes (due to going through the wall/ceiling corner!):P. It also makes it to where the arrow has to more directly hit you.

FYI: my code is very possibly not the most efficient, and I don't understand the punch function or armor groups very well. You might want to adjust the health of the archer and guard as well.

Note: Before I made some of the changes, arrows did not even hurt me (version minetest-0.4.6-1f42479-bugfixes-win32). Also, before I made some of the changes, one player's soldiers could not hurt another player's soldiers.
By perseverance the snail reached the ark.
- Charles Spurgeon
 

deivan
Member
 
Posts: 452
Joined: Fri Feb 15, 2013 10:16

by deivan » Wed Apr 17, 2013 21:45

Nice. I will test it ASAP. :D
-*-
I don't found the "mob_archer:archer" or the other one in my sources, have another version fo this mod?
Last edited by deivan on Wed Apr 17, 2013 22:38, edited 1 time in total.
 

User avatar
Jonathan
Member
 
Posts: 119
Joined: Tue Apr 02, 2013 14:07

by Jonathan » Thu Apr 18, 2013 13:07

deivan wrote:Nice. I will test it ASAP. :D
-*-
I don't found the "mob_archer:archer" or the other one in my sources, have another version fo this mod?


I used the version 2.0.82 from the first post:
sapier wrote:Prerelease Download
Primary : Version 2.0.82 - finding a way out


Hope you enjoy it :)
By perseverance the snail reached the ark.
- Charles Spurgeon
 

deivan
Member
 
Posts: 452
Joined: Fri Feb 15, 2013 10:16

by deivan » Thu Apr 18, 2013 13:08

I found. Thanks.
 

sapier
Member
 
Posts: 763
Joined: Tue Aug 16, 2011 18:17

by sapier » Fri Apr 19, 2013 20:38

@Jonathan thanks for your contributions. I think I've fixed the damage issues for 2.0.83 ... I don't wonder you didn't understand the damage system it's quite strange I had to debug c++ code to understand how this works now too.

I'll add a configurable trader inventory to 2.2, I'm sorry but for 2.1 it's to late to add a feature like that, as I need to write a gui to add this in a conveniant way.

I don't quite understand what you want to achieve by removing the +1 in fighting.lua? It's quite some time since I wrote that but I believe to remember this was required to get a clear target. Am I wrong with this assumption?
Last edited by sapier on Fri Apr 19, 2013 20:38, edited 1 time in total.
DON'T mention coding style!
(c) sapier all rights reserved
 

User avatar
Jonathan
Member
 
Posts: 119
Joined: Tue Apr 02, 2013 14:07

by Jonathan » Fri Apr 19, 2013 23:41

Well if I remember right, I removed the "+1" so the arrow would still be able to hit the player after changing line 396 in weapons.lua

Weapons.lua line 396:
From:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
local objs = minetest.env:get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2)

To:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
local objs = minetest.env:get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 1)


I changed the radius value from 2 to 1 so the arrow had to hit the player more accurately in order to hurt him. Also, with a radius of 2 it was easier for it to hurt a player behind a wall. (Although there might have been a better way to accomplish this)

Thanks for your work on this mod. I really enjoy it. I also like all your work you have been doing on pathfinding. It would be awesome to have creatures that can use path-finding efficiently, and that could open wood doors! :)
By perseverance the snail reached the ark.
- Charles Spurgeon
 

sapier
Member
 
Posts: 763
Joined: Tue Aug 16, 2011 18:17

by sapier » Sun Apr 21, 2013 00:02

Hmm maybe 1.5 is a good value to use ... I'll have a try.

I've just updated download link for 2.0.83, main enhancements:
-Updated trader inventory
-hirelings can be rotated by punching them
-naked sheeps get wool again
-mobf_settings is working for non admin players (at least those parts they should be able to use)
-damage should work now as expected plz have a try!
-many other small fixes, see changelog or github commit list
DON'T mention coding style!
(c) sapier all rights reserved
 

User avatar
jojoa1997
Member
 
Posts: 2890
Joined: Thu Dec 13, 2012 05:11

by jojoa1997 » Sun Apr 21, 2013 13:39

i get a 2.8.2 but the link says 2.8.3.
Coding;
1X coding
3X debugging
12X tweaking to be just right
 

oxenfreedan
Member
 
Posts: 218
Joined: Tue Jan 22, 2013 01:39

by oxenfreedan » Sun Apr 21, 2013 22:29

How do I use the trader?
My Awesome Map please try:
http://forum.minetest.net/viewtopic.php?id=5028
I've played minetest since 0.3.1 came out!
Mostly when on forums I'm using a uniden tablet!
 

deivan
Member
 
Posts: 452
Joined: Fri Feb 15, 2013 10:16

by deivan » Sun Apr 21, 2013 23:22

A question, after many time playing my local game many of the spawns disappear from my main area, how I add some back?
 

User avatar
Inocudom
Member
 
Posts: 2889
Joined: Sat Sep 29, 2012 01:14
IRC: Inocudom
In-game: Inocudom

by Inocudom » Mon Apr 22, 2013 03:11

For the sake of keeping mobs from destroying buildings, there could be an option as to whether enemies (like big reds) can destroy nodes or not.

You could have the archers and the guards attack the monsters from PilzAdam's simple_mobs mod as well. If only there was an entity classification for hostile creatures.
 

User avatar
windmere33
Member
 
Posts: 100
Joined: Thu Apr 04, 2013 19:21

by windmere33 » Mon Apr 22, 2013 10:54

Whenever I spawn vombies, or just see them, they are never on fire...is it disabled by default?
Active Contributor To Thaumtest!
 

Jouster27
Member
 
Posts: 117
Joined: Fri Mar 29, 2013 14:16

by Jouster27 » Mon Apr 22, 2013 18:16

windmere33 wrote:Whenever I spawn vombies, or just see them, they are never on fire...is it disabled by default?


It is a setting. Access the settings by typing "/mobf_settings".
 

Idanwin
Member
 
Posts: 22
Joined: Tue Apr 23, 2013 14:41

by Idanwin » Tue Apr 23, 2013 14:43

Vombies (and other animals) don't get hurt in fire ... any chance you might add this feature in future versions?
I just modded Pillz throwing mod so that player arrow actually do something (they didn't seem to hurt vombies, or players). But a vombie in the middle of a burning house, or in the middle of a burning forest still stays alive and I don't have a clue about how to fix this.
Last edited by Idanwin on Wed Apr 24, 2013 10:06, edited 1 time in total.
This is a signature virus. Add me to your signature so that I can multiply.
 

DerpinHerp
New member
 
Posts: 2
Joined: Tue Apr 23, 2013 10:22

by DerpinHerp » Wed Apr 24, 2013 00:03

how do you breed animals? i place my barn down but nothing happens with my 2 diff gender animals...help?
 

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

by Sokomine » Wed Apr 24, 2013 01:04

Put leaves into the barns.
A list of my mods can be found here.
 

sapier
Member
 
Posts: 763
Joined: Tue Aug 16, 2011 18:17

by sapier » Wed Apr 24, 2013 21:45

Ok 2.0.84 is next to release version unless there are major incidents mobf 2.1 will be released this weekend. If someone knows bugs plz tell me!

Plz add all ideas about new features to github issues, this way you can be sure they won't be forgotten.
Last edited by sapier on Wed Apr 24, 2013 21:46, edited 1 time in total.
DON'T mention coding style!
(c) sapier all rights reserved
 

User avatar
Jonathan
Member
 
Posts: 119
Joined: Tue Apr 02, 2013 14:07

by Jonathan » Wed Apr 24, 2013 22:05

I think it would be neat if there was a type of guard you could buy from the npc trader that uses path-finding to get other players. A possible name for it could be "The Hunter".

Also, I have not tried the latest version yet, but when I used my modified version of 2.0.82 it would sometimes corrupt players :/. I think what promoted it was when one player got finished off by a bunch of another player's guards. Not sure if that would happen with 2.0.84 though...

Note: Not a big deal, but (at least in 2.0.82) when you placed a bunch of guards and/or archers in one area (lets say 60) and leave, and then come back to that area, it would only keep around 40 to 50 of them, but that might be the game engine.
By perseverance the snail reached the ark.
- Charles Spurgeon
 

oxenfreedan
Member
 
Posts: 218
Joined: Tue Jan 22, 2013 01:39

by oxenfreedan » Wed Apr 24, 2013 22:57

Pls how do I use trader!!!!!
My Awesome Map please try:
http://forum.minetest.net/viewtopic.php?id=5028
I've played minetest since 0.3.1 came out!
Mostly when on forums I'm using a uniden tablet!
 

sapier
Member
 
Posts: 763
Joined: Tue Aug 16, 2011 18:17

by sapier » Thu Apr 25, 2013 07:36

1) find a trader in your world
2) rightclick
3) drag thing to buy in leftmost slot
4) look at it's price in middle slots
5) drag pay to pay slot
6) drag bought item from takeaway slot
DON'T mention coding style!
(c) sapier all rights reserved
 

sapier
Member
 
Posts: 763
Joined: Tue Aug 16, 2011 18:17

by sapier » Sun Apr 28, 2013 12:48

I've just released 2.1.0 it's functional identical to 2.0.84 just containing additional doxygen fixes

This is new stable mobf, 1.4 is considered deprecated now, 2.0 is oldstable.

Main target Minetest version is 0.4.6, any features added after 0.4.6 may be supported but are largely untested.
DON'T mention coding style!
(c) sapier all rights reserved
 

Iqualfragile
Member
 
Posts: 160
Joined: Tue Sep 18, 2012 22:11

by Iqualfragile » Sun Apr 28, 2013 15:46

has the speed improved?
Gr8 b8, m8. I rel8, str8 appreci8, and congratul8. I r8 this b8 an 8/8. Plz no h8, I'm str8 ir8. Cr8 more, can't w8. We should convers8, I won't ber8, my number is 8888888, ask for N8. No calls l8 or out of st8. If on a d8, ask K8 to loc8. Even with a full pl8, I always have time to communic8 so don't hesit8.
 

sapier
Member
 
Posts: 763
Joined: Tue Aug 16, 2011 18:17

by sapier » Sun Apr 28, 2013 16:13

Speed hasn't been a problem with mobf since 2.0 release. At least not to be told by anyone testing without prejudice.
If you still have a problem you should check other mods to cause those issues. If there are no other possible explanations except of mobf you're welcome to help me to find out what exactly causes this problems in your special case.

For me mobf runs fluid on 1.8 GHz single core server.
So maybe you could even run minetest with mobf on a netbook. Still I suggest using a real PC to play.
DON'T mention coding style!
(c) sapier all rights reserved
 

User avatar
onpon4
Member
 
Posts: 517
Joined: Thu Mar 21, 2013 01:54

by onpon4 » Sun Apr 28, 2013 16:28

Well, this modpack does slow my old laptop down noticeably (which has a Celeron processor @ 2.2 GHz). It's not the worst (moretrees slows things down a lot more), but it's enough that I prefer to use Simple Mobs ("mobs") on any server hosted on my laptop.
 

Iqualfragile
Member
 
Posts: 160
Joined: Tue Sep 18, 2012 22:11

by Iqualfragile » Sun Apr 28, 2013 16:59

nah, i am just trying to find out wether i should re-enable it on my server, i think i will give it a try
Gr8 b8, m8. I rel8, str8 appreci8, and congratul8. I r8 this b8 an 8/8. Plz no h8, I'm str8 ir8. Cr8 more, can't w8. We should convers8, I won't ber8, my number is 8888888, ask for N8. No calls l8 or out of st8. If on a d8, ask K8 to loc8. Even with a full pl8, I always have time to communic8 so don't hesit8.
 

sapier
Member
 
Posts: 763
Joined: Tue Aug 16, 2011 18:17

by sapier » Sun Apr 28, 2013 17:12

Of course this modpack will require cpu power it's adding active objects that need to do calculations. Difference to simple mobs is bought by simplemobs lack of features. So if you're fine with the glitches simplemobs doesn't fix you'll be better with simplemobs.

Btw there are some pull requests that will reduce cpu requirements of mobf even more, If they're added mobf will use it instantly.
DON'T mention coding style!
(c) sapier all rights reserved
 

vktRus
Member
 
Posts: 67
Joined: Wed May 01, 2013 07:23

by vktRus » Fri May 03, 2013 17:39

Server down.
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
15:38:42: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=9 m_static_exists=true but static data doesn't actually exist in (46,1,-58)
WARNING: StaticObjectList::remove(): id=9 not found
15:38:42: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=11 m_static_exists=true but static data doesn't actually exist in (45,1,-56)
WARNING: StaticObjectList::remove(): id=11 not found
15:38:42: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=12 m_static_exists=true but static data doesn't actually exist in (45,1,-56)
WARNING: StaticObjectList::remove(): id=12 not found
15:38:42: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=17 m_static_exists=true but static data doesn't actually exist in (44,1,-57)
WARNING: StaticObjectList::remove(): id=17 not found
15:38:42: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=33 m_static_exists=true but static data doesn't actually exist in (46,1,-58)
WARNING: StaticObjectList::remove(): id=33 not found
15:38:42: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=82 m_static_exists=true but static data doesn't actually exist in (52,-1,-53)
WARNING: StaticObjectList::remove(): id=82 not found
15:38:43: ERROR[main]: ERROR: An unhandled exception occurred: ServerError: LuaError: error running function 'on_step': ...est/.minetest/mods/minetest/animals/mobf/weapons.lua:52: bad argu
ment #1 to 'punch' (userdata expected, got nil)
15:38:43: ERROR[main]: stack traceback:

In thread b6d92700:
/build/buildd/minetestc55-0.4.6/src/main.cpp:1967: int main(int, char**): Assertion '0' failed.
Debug stacks:
DEBUG STACK FOR THREAD b6d92700:
#0  int main(int, char**)
(Leftover data: #1  Dedicated server branch)
(Leftover data: #2  virtual void ServerMap::save(ModifiedState))
(Leftover data: #3  virtual void ServerMap::saveBlock(MapBlock*))
(Leftover data: #4  void ItemStack::serialize(std::ostream&) const)

 

PreviousNext

Return to Mod Releases

Who is online

Users browsing this forum: No registered users and 53 guests

cron