[Modpack] 3D Armor [0.4.8] [minetest-3d_armor]

NyankoSensei
Member
 
Posts: 14
Joined: Fri Feb 28, 2014 11:29

by NyankoSensei » Thu Apr 17, 2014 21:12

Error is this one

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
20:28:39: ERROR[main]: ServerError: ...luca/.minetest/mods/minetest-3d_armor/3d_armor/armor.lua:388: attempt to call field 'get_formspec' (a nil value)
20:28:39: ERROR[main]: stack traceback:
20:28:39: ERROR[main]:     ...luca/.minetest/mods/minetest-3d_armor/3d_armor/armor.lua:388: in function <...luca/.minetest/mods/minetest-3d_armor/3d_armor/armor.lua:368>
20:28:39: ERROR[main]:     /opt/minetest/share/minetest/builtin/misc_register.lua:348: in function </opt/minetest/share/minetest/builtin/misc_register.lua:336>


Minetest last git
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

by stu » Thu Apr 17, 2014 23:17

NyankoSensei wrote:Error is this one

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
20:28:39: ERROR[main]: ServerError: ...luca/.minetest/mods/minetest-3d_armor/3d_armor/armor.lua:388: attempt to call field 'get_formspec' (a nil value)
20:28:39: ERROR[main]: stack traceback:
20:28:39: ERROR[main]:     ...luca/.minetest/mods/minetest-3d_armor/3d_armor/armor.lua:388: in function <...luca/.minetest/mods/minetest-3d_armor/3d_armor/armor.lua:368>
20:28:39: ERROR[main]:     /opt/minetest/share/minetest/builtin/misc_register.lua:348: in function </opt/minetest/share/minetest/builtin/misc_register.lua:336>


Minetest last git


I have just pushed a change that should hopefully fix this, I am just guessing here so please let me know the outcome if you try it.

Thank you for reporting this.
 

NyankoSensei
Member
 
Posts: 14
Joined: Fri Feb 28, 2014 11:29

by NyankoSensei » Sat Apr 19, 2014 08:04

Probably the problem is not related to your mod but to craftingpack, i have try it with only invetory-plus enabled and work fine.

Sorry for the mistake and tanks for the fast reply
 

User avatar
JPRuehmann
Member
 
Posts: 334
Joined: Fri Mar 21, 2014 21:40

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by JPRuehmann » Mon Apr 21, 2014 06:47

Hello

I had the following Problem.
I use unified_inventory and modmenu with inventory_plus (compatibility mod)
3d_armor then thinks inventory_plus is installed an disables the Button in unified_inventory.
I made it work by adding a new setting to the armor.conf named INVENTORY and changed the if and elseif lines in the armor.lua.

-- You can use this to change the used Inventory.
-- INVENTORY = "unified_inventory" will use the unified Inventory.
INVENTORY = "unified_inventory"

changed armor.lua
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
ARMOR_INIT_DELAY = 1
ARMOR_INIT_TIMES = 1
ARMOR_BONES_DELAY = 1
ARMOR_UPDATE_TIME = 1
ARMOR_DROP = true
ARMOR_DESTROY = false
ARMOR_LEVEL_MULTIPLIER = 1
ARMOR_HEAL_MULTIPLIER = 1
INVENTORY = "unified_inventory"

local modpath = minetest.get_modpath(ARMOR_MOD_NAME)
local input = io.open(modpath.."/armor.conf", "r")
if input then
   dofile(modpath.."/armor.conf")
   input:close()
   input = nil
end
local time = 0

armor = {
   player_hp = {},
   elements = {"head", "torso", "legs", "feet"},
   physics = {"jump","speed","gravity"},
   formspec = "size[8,8.5]list[detached:player_name_armor;armor;0,1;2,3;]"
      .."image[2,0.75;2,4;armor_preview]"
       .."list[current_player;main;0,4.5;8,4;]"
       .."list[current_player;craft;4,1;3,3;]"
       .."list[current_player;craftpreview;7,2;1,1;]",
   textures = {},
   default_skin = "character",
}

if  INVENTORY == "inventory_plus" then
   armor.formspec = "size[8,8.5]button[0,0;2,0.5;main;Back]"
      .."list[detached:player_name_armor;armor;0,1;2,3;]"
      .."image[2.5,0.75;2,4;armor_preview]"
      .."label[5,1;Level: armor_level]"
      .."label[5,1.5;Heal:  armor_heal]"
      .."list[current_player;main;0,4.5;8,4;]"
elseif    INVENTORY == "unified_inventory" then
   unified_inventory.register_button("armor", {
      type = "image",
      image = "inventory_plus_armor.png",
   })
      unified_inventory.register_page("armor", {
      get_formspec = function(player)
         local name = player:get_player_name()
         local formspec = "background[0.06,0.99;7.92,7.52;3d_armor_ui_form.png]"
            .."label[0,0;Armor]"
            .."list[detached:"..name.."_armor;armor;0,1;2,3;]"
            .."image[2.5,0.75;2,4;"..armor.textures[name].preview.."]"
            .."label[5,1;Level: "..armor.def[name].level.."]"
            .."label[5,1.5;Heal:  "..armor.def[name].heal.."]"
         return {formspec=formspec}
      end,
   })   
end

armor.def = {
   state = 0,
   count = 0,
}

armor.update_player_visuals = function(self, player)
   if not player then
      return
   end
   local name = player:get_player_name()
   if self.textures[name] then
      default.player_set_textures(player, {
         self.textures[name].skin,
         self.textures[name].armor,
         self.textures[name].wielditem,
      })
   end
end

armor.set_player_armor = function(self, player)
   if not player then
      return
   end
   local name = player:get_player_name()
   local player_inv = player:get_inventory()
   local armor_texture = "3d_armor_trans.png"
   local armor_level = 0
   local armor_heal = 0
   local state = 0
   local items = 0
   local elements = {}
   local textures = {}
   local physics_o = {speed=1,gravity=1,jump=1}
   local material = {type=nil, count=1}
   local preview = armor:get_player_skin(name).."_preview.png"
   for _,v in ipairs(self.elements) do
      elements[v] = false
   end
   for i=1, 6 do
      local stack = player_inv:get_stack("armor", i)
      local item = stack:get_name()
      if stack:get_count() == 1 then
         local def = stack:get_definition()
         for k, v in pairs(elements) do
            if v == false then
               local level = def.groups["armor_"..k]
               if level then
                  local texture = item:gsub("%:", "_")
                  table.insert(textures, texture..".png")
                  preview = preview.."^"..texture.."_preview.png"
                  armor_level = armor_level + level
                  state = state + stack:get_wear()
                  items = items + 1
                  local heal = def.groups["armor_heal"] or 0
                  armor_heal = armor_heal + heal
                  for kk,vv in ipairs(self.physics) do                     
                     local o_value = def.groups["physics_"..vv]
                     if o_value then
                        physics_o[vv] = physics_o[vv] + o_value
                     end
                  end
                  local mat = string.match(item, "%:.+_(.+)$")
                  if material.type then
                     if material.type == mat then
                        material.count = material.count + 1
                     end
                  else
                     material.type = mat
                  end
                  elements[k] = true
               end
            end
         end
      end
   end
   if minetest.get_modpath("shields") then
      armor_level = armor_level * 0.9
   end
   if material.type and material.count == #self.elements then
      armor_level = armor_level * 1.1
   end
   armor_level = armor_level * ARMOR_LEVEL_MULTIPLIER
   armor_heal = armor_heal * ARMOR_HEAL_MULTIPLIER
   if #textures > 0 then
      armor_texture = table.concat(textures, "^")
   end
   local armor_groups = {fleshy=100}
   if armor_level > 0 then
      armor_groups.level = math.floor(armor_level / 20)
      armor_groups.fleshy = 100 - armor_level
   end
   player:set_armor_groups(armor_groups)
   player:set_physics_override(physics_o)
   self.textures[name].armor = armor_texture
   self.textures[name].preview = preview
   self.def[name].state = state
   self.def[name].count = items
   self.def[name].level = armor_level
   self.def[name].heal = armor_heal
   self:update_player_visuals(player)
end

armor.update_armor = function(self, player)
   if not player then
      return
   end
   local name = player:get_player_name()
   local hp = player:get_hp() or 0
   if hp == 0 or hp == self.player_hp[name] then
      return
   end
   if self.player_hp[name] > hp then
      local player_inv = player:get_inventory()
      local armor_inv = minetest.get_inventory({type="detached", name=name.."_armor"})
      if not armor_inv then
         return
      end
      local heal_max = 0
      local state = 0
      local items = 0
      for i=1, 6 do
         local stack = player_inv:get_stack("armor", i)
         if stack:get_count() > 0 then
            local use = stack:get_definition().groups["armor_use"] or 0
            local heal = stack:get_definition().groups["armor_heal"] or 0
            local item = stack:get_name()
            stack:add_wear(use)
            armor_inv:set_stack("armor", i, stack)
            player_inv:set_stack("armor", i, stack)
            state = state + stack:get_wear()
            items = items + 1
            if stack:get_count() == 0 then
               local desc = minetest.registered_items[item].description
               if desc then
                  minetest.chat_send_player(name, "Your "..desc.." got destroyed!")
               end
               self:set_player_armor(player)
               armor:update_inventory(player)
            end
            heal_max = heal_max + heal
         end
      end
      self.def[name].state = state
      self.def[name].count = items
      heal_max = heal_max * ARMOR_HEAL_MULTIPLIER
      if heal_max > math.random(100) then
         player:set_hp(self.player_hp[name])
         return
      end
   end
   self.player_hp[name] = hp
end

armor.get_player_skin = function(self, name)
   local skin = nil
   if skins then
      skin = skins.skins[name]
   elseif u_skins then
      skin = u_skins.u_skins[name]
   end
   return skin or armor.default_skin
end

armor.get_armor_formspec = function(self, name)
   local formspec = armor.formspec:gsub("player_name", name)
   formspec = formspec:gsub("armor_preview", armor.textures[name].preview)
   formspec = formspec:gsub("armor_level", armor.def[name].level)
   return formspec:gsub("armor_heal", armor.def[name].heal)
end

armor.update_inventory = function(self, player)
   local name = player:get_player_name()
   if INVENTORY == "unified_inventory" then
      if unified_inventory.current_page[name] == "armor" then
         unified_inventory.set_inventory_formspec(player, "armor")
      end
   else
      local formspec = armor:get_armor_formspec(name)
      if INVENTORY == "inventory_plus" then
         local page = player:get_inventory_formspec()
         if page:find("detached:"..name.."_armor") then
            inventory_plus.set_inventory_formspec(player, formspec)
         end
      else
         player:set_inventory_formspec(formspec)
      end
   end
end

-- Register Player Model

default.player_register_model("3d_armor_character.x", {
   animation_speed = 30,
   textures = {
      armor.default_skin..".png",
      "3d_armor_trans.png",
      "3d_armor_trans.png",
   },
   animations = {
      stand = {x=0, y=79},
      lay = {x=162, y=166},
      walk = {x=168, y=187},
      mine = {x=189, y=198},
      walk_mine = {x=200, y=219},
      sit = {x=81, y=160},
   },
})

-- Register Callbacks

minetest.register_on_player_receive_fields(function(player, formname, fields)
   local name = player:get_player_name()
   if INVENTORY == "inventory_plus" and fields.armor then
      local formspec = armor:get_armor_formspec(name)
      inventory_plus.set_inventory_formspec(player, formspec)
      return
   end
   for field, _ in pairs(fields) do
      if string.find(field, "skins_set_") then
         minetest.after(0, function(player)
            local skin = armor:get_player_skin(name)
            armor.textures[name].skin = skin..".png"
            armor:set_player_armor(player)
         end, player)
      end
   end
end)

minetest.register_on_joinplayer(function(player)
   default.player_set_model(player, "3d_armor_character.x")
   local name = player:get_player_name()
   local player_inv = player:get_inventory()
   local armor_inv = minetest.create_detached_inventory(name.."_armor",{
      on_put = function(inv, listname, index, stack, player)
         player:get_inventory():set_stack(listname, index, stack)
         armor:set_player_armor(player)
         armor:update_inventory(player)
      end,
      on_take = function(inv, listname, index, stack, player)
         player:get_inventory():set_stack(listname, index, nil)
         armor:set_player_armor(player)
         armor:update_inventory(player)
      end,
      on_move = function(inv, from_list, from_index, to_list, to_index, count, player)
         local plaver_inv = player:get_inventory()
         local stack = inv:get_stack(to_list, to_index)
         player_inv:set_stack(to_list, to_index, stack)
         player_inv:set_stack(from_list, from_index, nil)
         armor:set_player_armor(player)
         armor:update_inventory(player)
      end,
      allow_put = function(inv, listname, index, stack, player)
         return 1
      end,
      allow_take = function(inv, listname, index, stack, player)
         return stack:get_count()
      end,
      allow_move = function(inv, from_list, from_index, to_list, to_index, count, player)
         return count
      end,
   })
   if INVENTORY == "inventory_plus" then
      inventory_plus.register_button(player,"armor", "Armor")
   end
   armor_inv:set_size("armor", 6)
   player_inv:set_size("armor", 6)
   for i=1, 6 do
      local stack = player_inv:get_stack("armor", i)
      armor_inv:set_stack("armor", i, stack)
   end   

   -- Legacy support, import player's armor from old inventory format
   for _,v in pairs(armor.elements) do
      local list = "armor_"..v
      armor_inv:add_item("armor", player_inv:get_stack(list, 1))
      player_inv:set_stack(list, 1, nil)
   end

   armor.player_hp[name] = 0
   armor.def[name] = {
      state = 0,
      count = 0,
      level = 0,
      heal = 0,
   }
   armor.textures[name] = {
      skin = armor.default_skin..".png",
      armor = "3d_armor_trans.png",
      wielditem = "3d_armor_trans.png",
      preview = armor.default_skin.."_preview.png",
   }
   if minetest.get_modpath("skins") then
      local skin = skins.skins[name]
      if skin and skins.get_type(skin) == skins.type.MODEL then
         armor.textures[name].skin = skin..".png"
      end
   elseif minetest.get_modpath("u_skins") then
      local skin = u_skins.u_skins[name]
      if skin and u_skins.get_type(skin) == u_skins.type.MODEL then
         armor.textures[name].skin = skin..".png"
      end
   end
   if minetest.get_modpath("player_textures") then
      local filename = minetest.get_modpath("player_textures").."/textures/player_"..name
      local f = io.open(filename..".png")
      if f then
         f:close()
         armor.textures[name].skin = "player_"..name..".png"
      end
   end
   for i=1, ARMOR_INIT_TIMES do
      minetest.after(ARMOR_INIT_DELAY * i, function(player)
         armor:set_player_armor(player)
         if inventory_plus == nil and unified_inventory == nil then
            armor:update_inventory(player)
         end
      end, player)
   end
end)

if ARMOR_DROP == true or ARMOR_DESTROY == true then
   minetest.register_on_dieplayer(function(player)
      local name = player:get_player_name()
      local pos = player:getpos()
      if name and pos then
         local drop = {}
         local player_inv = player:get_inventory()
         local armor_inv = minetest.get_inventory({type="detached", name=name.."_armor"})
         for i=1, player_inv:get_size("armor") do
            local stack = armor_inv:get_stack("armor", i)
            if stack:get_count() > 0 then
               table.insert(drop, stack)
               armor_inv:set_stack("armor", i, nil)
               player_inv:set_stack("armor", i, nil)
            end
         end
         armor:set_player_armor(player)
         if unified_inventory then
            unified_inventory.set_inventory_formspec(player, "craft")
         elseif inventory_plus then
            local formspec = inventory_plus.get_formspec(player,"main")
            inventory_plus.set_inventory_formspec(player, formspec)
         else
            armor:update_inventory(player)
         end
         if ARMOR_DESTROY == false then
            if minetest.get_modpath("bones") then
               minetest.after(ARMOR_BONES_DELAY, function()
                  pos = vector.round(pos)
                  local node = minetest.get_node(pos)
                  if node.name == "bones:bones" then
                     local meta = minetest.get_meta(pos)
                     local owner = meta:get_string("owner")
                     local inv = meta:get_inventory()
                     if name == owner then
                        for _,stack in ipairs(drop) do
                           if inv:room_for_item("main", stack) then
                              inv:add_item("main", stack)
                           end
                        end
                     end
                  end
               end)
            else
               for _,stack in ipairs(drop) do
                  local obj = minetest.add_item(pos, stack)
                  if obj then
                     local x = math.random(1, 5)
                     if math.random(1,2) == 1 then
                        x = -x
                     end
                     local z = math.random(1, 5)
                     if math.random(1,2) == 1 then
                        z = -z
                     end
                     obj:setvelocity({x=1/x, y=obj:getvelocity().y, z=1/z})
                  end
               end
            end
         end
      end
   end)
end

minetest.register_globalstep(function(dtime)
   time = time + dtime
   if time > ARMOR_UPDATE_TIME then
      for _,player in ipairs(minetest.get_connected_players()) do
         armor:update_armor(player)
      end
      time = 0
   end
end)



Thanks,
JPR
 

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

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Iqualfragile » Mon Apr 21, 2014 17:12

I left you a bug report on github
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Mon Apr 21, 2014 18:22

Iqualfragile wrote:I left you a bug report on github

I assume this is happening when a player joins the server? I have now added a check that should prevent the crash, however, the player's armor will not be set in such a case. You may also need to increase ARMOR_INIT_DELAY if you get initialization glitches (like armor not showing up on newly connected players)

Thank you for the bug report.

JPR: Thanks for letting me know, I may add something like this myself, it just never occurred to me that someone might use both inventory systems :-/
 

Amaz
Member
 
Posts: 328
Joined: Wed May 08, 2013 08:26
GitHub: Amaz1
IRC: Amaz
In-game: Amaz

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Amaz » Mon May 05, 2014 21:43

There appears to be a bug with this and simple mobs. When I wear any armor, it instantly protects me against all mob attacks... It works fine in 0.4.9 stable, but in the dev build, this is a problem. And ideas on what may be causing it?
EDIT: Got it. I had put damage = 1 for a mob, and armor makes damage = 1 do nothing. Sorry.

And what does the armor_heal value do?
Anyway, this is a great mod!
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Tue May 06, 2014 18:37

Amaz wrote:There appears to be a bug with this and simple mobs. When I wear any armor, it instantly protects me against all mob attacks... It works fine in 0.4.9 stable, but in the dev build, this is a problem. And ideas on what may be causing it?
EDIT: Got it. I had put damage = 1 for a mob, and armor makes damage = 1 do nothing. Sorry.

And what does the armor_heal value do?
Anyway, this is a great mod!


Thanks, armor_heal is a cumulative percentage chance the armor will restore some player health. I would really like to get rid of this but people tend to complain every time I try to remove something ;-)

Note that the current git master of 3d_armor provides config options to dumb down the armor level and/or disable the 'heal' feature.
 

Spartacuscat
New member
 
Posts: 9
Joined: Fri Nov 25, 2011 20:37

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Spartacuscat » Sun May 11, 2014 00:53

Getting an error here, can't even load a new or old world when I have your mod turned on.

ERROR: ModError: Failed to load and run /home/My Name/.minetest/3d_armor/init.lua
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Sun May 11, 2014 19:02

Spartacuscat wrote:Getting an error here, can't even load a new or old world when I have your mod turned on.

ERROR: ModError: Failed to load and run /home/My Name/.minetest/3d_armor/init.lua


You will need to provide a bit more information than that i'm afraid, pastebin the relevant section of your debug.txt file, also tell me what version of minetest and what version of this modpack you are using. It is important that you choose the correct one.
 

Spartacuscat
New member
 
Posts: 9
Joined: Fri Nov 25, 2011 20:37

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Spartacuscat » Sun May 11, 2014 21:41

stu wrote:You will need to provide a bit more information than that i'm afraid, pastebin the relevant section of your debug.txt file, also tell me what version of minetest and what version of this modpack you are using. It is important that you choose the correct one.


Chose the newest one, for 4.9, running Ubuntu 12.04 and for some reason I'm not getting a debug.txt file when the error happens.

How do I get the debug.txt?
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Sun May 11, 2014 21:50

Spartacuscat wrote:
stu wrote:You will need to provide a bit more information than that i'm afraid, pastebin the relevant section of your debug.txt file, also tell me what version of minetest and what version of this modpack you are using. It is important that you choose the correct one.


Chose the newest one, for 4.9, running Ubuntu 12.04 and for some reason I'm not getting a debug.txt file when the error happens.

How do I get the debug.txt?

You should find debug.txt in your minetest/bin directory, when you find it, delete it and run the program again to reproduce the error. debug.txt will now contain only relevant information, thanks.
 

Spartacuscat
New member
 
Posts: 9
Joined: Fri Nov 25, 2011 20:37

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Spartacuscat » Sun May 11, 2014 21:57

Okay here it is

+ Spoiler
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Sun May 11, 2014 22:20

Are you by any chance using a different game to minetest_game? If so then there is a chance it's version of default player.lua may not be compatible.

I can think of no other reason you would get that error, player_register_model should not be a nil value in minetest 0.4.9 stable.
 

Spartacuscat
New member
 
Posts: 9
Joined: Fri Nov 25, 2011 20:37

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Spartacuscat » Sun May 11, 2014 23:01

Well I used these command parameters on my terminal to install it.

sudo add-apt-repository ppa:minetestdevs/stable
sudo apt-get update
sudo apt-get install minetestc55

So that's a big no.
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Sun May 11, 2014 23:12

Spartacuscat wrote:Well I used these command parameters on my terminal to install it.

sudo add-apt-repository ppa:minetestdevs/stable
sudo apt-get update
sudo apt-get install minetestc55

So that's a big no.

So you will also need to download minetest game
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
cd minetest/games
git clone git://github.com/minetest/minetest_game.git

This mod does not work with minimal, I guess I should make this more clear in the top post.
 

Spartacuscat
New member
 
Posts: 9
Joined: Fri Nov 25, 2011 20:37

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Spartacuscat » Sun May 11, 2014 23:18

Aw shyucks, I'm sorry man, I joined this community nearly 3 years ago so I wasn't able to keep up with stuff like that, which mostly everyone knows about by now.
 

User avatar
Vazon
Member
 
Posts: 191
Joined: Sat Aug 17, 2013 17:20
IRC: Vazon
In-game: Vazon

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Vazon » Sun May 11, 2014 23:57

Hey I thought this would be cool, if the wield hand was a 3d item like in the built_items when they are droped, in stead of just a flat image. But its just a idea.
 

Spartacuscat
New member
 
Posts: 9
Joined: Fri Nov 25, 2011 20:37

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Spartacuscat » Mon May 12, 2014 02:41

stu wrote:So you will also need to download minetest game
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
cd minetest/games
git clone git://github.com/minetest/minetest_game.git



So I ran that code and installed it and compiled it to the best of my abilities twice and the armor pack still doesn't work. Care to tell me what I'm doing wrong?

+ Spoiler


Should I just uninstall everything and start fresh?

I also followed this wiki entry's directions http://dev.minetest.net/Compiling_Minetest

If you can't help me please redirect somewhere where I can receive help, please.
 

User avatar
Topywo
Member
 
Posts: 1718
Joined: Fri May 18, 2012 20:27

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Topywo » Mon May 12, 2014 08:31

cd minetest-minetest-286edd4 (or similar), cd minetest-minetest-286edd4

-->

286edd4 is the example directory. You need another letter/number combination. It's in a directory/folder you created seconds before. Look in your home directory for the right number/letter combination after minetest- and copy it from there. It could be something like cd minetest-minetest-15740ff.
 

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

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Inocudom » Thu May 15, 2014 02:01

I have an interesting idea. How about the ability for a player to make his/her armor invisible?
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Thu May 15, 2014 21:49

Vazon wrote:Hey I thought this would be cool, if the wield hand was a 3d item like in the built_items when they are droped, in stead of just a flat image. But its just a idea.


Sorry, I missed this post. I already did that with my wield3d mod, unfortunately I am currently unable to get both bone attachment and multiple materials to work together. The former works in .b3d and the latter only in .x, from what I can gather, the blender exporters may be to blame in both cases. I am still looking into it, however.

Inocudom wrote:I have an interesting idea. How about the ability for a player to make his/her armor invisible?


Seems a little counter productive for a modpack entitled 'Visible Wielded Items & Player Armor'
I guess I could call it 'Air Armor', it would make a nice match for the 'Air Sword' ;-)
 

Glünggi
Member
 
Posts: 126
Joined: Wed Apr 16, 2014 08:13

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Glünggi » Sun May 18, 2014 16:13

Vote for Nyan Cat Armor :P... in rainbowcolors of curse ;)

Edit:
And is there a way to suspend Breathdamage under Water from Armordamage?
 

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

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Inocudom » Sun May 18, 2014 20:55

stu wrote:
Inocudom wrote:I have an interesting idea. How about the ability for a player to make his/her armor invisible?


Seems a little counter productive for a modpack entitled 'Visible Wielded Items & Player Armor'
I guess I could call it 'Air Armor', it would make a nice match for the 'Air Sword' ;-)

I know, but sometimes players want to look at their skins and have protection at the same time. The option could apply to all types of armor. It would be a step up from Minecraft.
 

User avatar
nman3600
Member
 
Posts: 168
Joined: Fri Feb 07, 2014 17:06
GitHub: nman3600
IRC: nman3600
In-game: nman3600

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by nman3600 » Mon May 19, 2014 07:01

Very cool mod :-) It's fun to play
 

Nubelite
Member
 
Posts: 161
Joined: Mon Jul 16, 2012 23:10

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Nubelite » Thu May 22, 2014 23:30

Question:
This might be more server config related but how can you limit the attack range so both players have to be close to each other?

Issue:
With armor on an empty hand attack does more damage then a sword would. This is mostly noticeable with the steel armor.
 

User avatar
Vazon
Member
 
Posts: 191
Joined: Sat Aug 17, 2013 17:20
IRC: Vazon
In-game: Vazon

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Vazon » Sun May 25, 2014 04:06

stu wrote:
Vazon wrote:Hey I thought this would be cool, if the wield hand was a 3d item like in the built_items when they are droped, in stead of just a flat image. But its just a idea.


Sorry, I missed this post. I already did that with my wield3d mod, unfortunately I am currently unable to get both bone attachment and multiple materials to work together. The former works in .b3d and the latter only in .x, from what I can gather, the blender exporters may be to blame in both cases. I am still looking into it, however.


Ok, ya I found it and started working with it along side unified_skins, and 3d_armor. I managed to get the item in the right place I just cant get the item to attach to his hand but other wise it seems to work fine. If there was anyway just to attach the two then it would be fine.
 

User avatar
stu
Member
 
Posts: 737
Joined: Sat Feb 02, 2013 02:51
GitHub: stujones11

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by stu » Sun May 25, 2014 13:34

Vazon wrote:
stu wrote:
Vazon wrote:Hey I thought this would be cool, if the wield hand was a 3d item like in the built_items when they are droped, in stead of just a flat image. But its just a idea.


Sorry, I missed this post. I already did that with my wield3d mod, unfortunately I am currently unable to get both bone attachment and multiple materials to work together. The former works in .b3d and the latter only in .x, from what I can gather, the blender exporters may be to blame in both cases. I am still looking into it, however.


Ok, ya I found it and started working with it along side unified_skins, and 3d_armor. I managed to get the item in the right place I just cant get the item to attach to his hand but other wise it seems to work fine. If there was anyway just to attach the two then it would be fine.


There is but it's a bit messy, you need to 'doctor' the model so that is can be exported with the right handed coordinate system.
Unless you are a wizard with blender, this will not be a trivial matter for the 3d_armor model.

This post on gamedev.net is about the best info I have found so far.
http://www.gamedev.net/topic/627603-strange-problem-with-irrlicht-and-attaching-objects-to-bone-nodes/
 

User avatar
Vazon
Member
 
Posts: 191
Joined: Sat Aug 17, 2013 17:20
IRC: Vazon
In-game: Vazon

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by Vazon » Sun May 25, 2014 14:18

Ya, I'm not a blender person, so I would have no idea how to do that.
 

User avatar
ak399g
Member
 
Posts: 160
Joined: Tue Jul 30, 2013 02:36
In-game: SAFR

Re: [Modpack] minetest-3d_armor [0.4.1] [minetest-3d_armor]

by ak399g » Sat Jun 07, 2014 18:59

Is there any way to get this to work with Unified Inventory instead of Inventory++?
 

PreviousNext

Return to Mod Releases

Who is online

Users browsing this forum: No registered users and 71 guests

cron