[Mod] Technic [0.4.11] [technic]

1244
Member
 
Posts: 45
Joined: Fri Jul 13, 2012 16:40
Location: Poland

by 1244 » Sat Feb 02, 2013 20:38

In which way I can add new machine to function check_LV_node_subp in battery box? I ask because I create new mod wich use energy from LV battery box.
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Sat Feb 02, 2013 21:04

1244 wrote:In which way I can add new machine to function check_LV_node_subp in battery box? I ask because I create new mod wich use energy from LV battery box.

by now only manually by adding there your power receiver (or producer)
i need to make an API call to register new machines easily
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Sun Feb 03, 2013 01:22

- added fully functional MV furnace

Image

put RE batteries into upgrade slots to increase internal energy buffer
or put there Control Logic Unit for furnace send cooked items into tubes
Furnace can accept tubes input from any side (but left is recommended)
Output is only to the right.

crafting recipes:

output = 'technic:mv_electric_furnace',
recipe = {
{'technic:stainless_steel_ingot', 'technic:electric_furnace', 'technic:stainless_steel_ingot'},
{'pipeworks:tube_000000', 'technic:mv_transformer', 'pipeworks:tube_000000'},
{'technic:stainless_steel_ingot', 'technic:mv_cable', 'technic:stainless_steel_ingot'},
}

end:
output = 'technic:control_logic_unit',
recipe = {
{'', 'moreores:gold_ingot', ''},
{'moreores:copper_ingot', 'technic:silicon_wafer', 'moreores:copper_ingot'},
{'', 'moreores:copper_ingot', ''},
}
Last edited by RealBadAngel on Sun Feb 03, 2013 01:29, edited 1 time in total.
 

Nore
Developer
 
Posts: 404
Joined: Wed Nov 28, 2012 11:35
GitHub: Novatux

by Nore » Sun Feb 03, 2013 09:02

I tried to use the MV furnace, but it looks like it doesn't receive power from the MV cables, battery boxes and solar panels. Am I doing something wrong?

EDIT: found where the bug comes from: you should add the following at line 320 of battery_box_mv.lua:
Code: Select all
if minetest.env:get_node(pos1).name == "technic:mv_electric_furnace" then     new_node_added=add_new_cable_node(RE_nodes,pos1) end       
if minetest.env:get_node(pos1).name == "technic:mv_electric_furnace_active" then     new_node_added=add_new_cable_node(RE_nodes,pos1) end       


It could be even better if you used something in the node definition, so one could easily define new machines and power producers, and the code would be more simpler.
Last edited by Nore on Sun Feb 03, 2013 09:20, edited 1 time in total.
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Sun Feb 03, 2013 09:26

Nore wrote:I tried to use the MV furnace, but it looks like it doesn't receive power from the MV cables, battery boxes and solar panels. Am I doing something wrong?

EDIT: found where the bug comes from: you should add the following at line 320 of battery_box_mv.lua:
Code: Select all
if minetest.env:get_node(pos1).name == "technic:mv_electric_furnace" then     new_node_added=add_new_cable_node(RE_nodes,pos1) end       
if minetest.env:get_node(pos1).name == "technic:mv_electric_furnace_active" then     new_node_added=add_new_cable_node(RE_nodes,pos1) end       


It could be even better if you used something in the node definition, so one could easily define new machines and power producers, and the code would be more simpler.


hehe, forgot to update this file :) ofc youre right, i will make register function
 

Nore
Developer
 
Posts: 404
Joined: Wed Nov 28, 2012 11:35
GitHub: Novatux

by Nore » Sun Feb 03, 2013 09:28

About the HV tier, you could perhaps make them compatible with filters... It could be useful for taking out items at a high rate.
 

Nore
Developer
 
Posts: 404
Joined: Wed Nov 28, 2012 11:35
GitHub: Novatux

by Nore » Sun Feb 03, 2013 10:35

Suggestion for tube crafting recipes:

Code: Select all
minetest.register_craft({
    output = 'pipeworks:accelerator_tube_000000',
    recipe = {
        {'technic:copper_coil', 'pipeworks:tube_000000', 'technic:copper_coil'},
        }
})

minetest.register_craft({
    output = 'pipeworks:detector_tube_off_000000',
    recipe = {
        {'mesecons:mesecon', 'pipeworks:tube_000000', 'mesecons:mesecon'},
        }
})

minetest.register_craft({
    output = 'pipeworks:sand_tube_000000',
    recipe = {
        {'default:sand', 'pipeworks:tube_000000', 'default:sand'},
        }
})

minetest.register_craft({
    output = 'pipeworks:teleport_tube_000000',
    recipe = {
        {'default:mese_crystal', 'default:desert_stone', 'default:mese_crystal'},
        {'default:desert_stone', 'pipeworks:tube_000000', 'default:desert_stone'},
        {'default:mese_crystal', 'default:desert_stone', 'default:mese_crystal'},
        }
})
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Sun Feb 03, 2013 12:27

Nore wrote:Suggestion for tube crafting recipes:

Code: Select all
minetest.register_craft({
    output = 'pipeworks:accelerator_tube_000000',
    recipe = {
        {'technic:copper_coil', 'pipeworks:tube_000000', 'technic:copper_coil'},
        }
})

minetest.register_craft({
    output = 'pipeworks:detector_tube_off_000000',
    recipe = {
        {'mesecons:mesecon', 'pipeworks:tube_000000', 'mesecons:mesecon'},
        }
})

minetest.register_craft({
    output = 'pipeworks:sand_tube_000000',
    recipe = {
        {'default:sand', 'pipeworks:tube_000000', 'default:sand'},
        }
})

minetest.register_craft({
    output = 'pipeworks:teleport_tube_000000',
    recipe = {
        {'default:mese_crystal', 'default:desert_stone', 'default:mese_crystal'},
        {'default:desert_stone', 'pipeworks:tube_000000', 'default:desert_stone'},
        {'default:mese_crystal', 'default:desert_stone', 'default:mese_crystal'},
        }
})


Recipes added, with some changes to teleport tube.

Also added Injector.
crafting recipe:
output = 'technic:injector 1',
recipe = {
{'', 'technic:control_logic_unit',''},
{'', 'default:chest',''},
{'', 'pipeworks:tube_000000',''},
}
output: bottom, input from all sides
Use it like a chest, it will put everything stored here into the tubes

Injector is on the left side:
Image

Another setup of injector and furnace, quite nice:
Image
Last edited by RealBadAngel on Sun Feb 03, 2013 13:12, edited 1 time in total.
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30
 

User avatar
VanessaE
Moderator
 
Posts: 3336
Joined: Sun Apr 01, 2012 12:38
Location: Waynesville, NC
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaEzekowitz

by VanessaE » Sun Feb 03, 2013 17:37

I like that crafting recipe for the accelerator tube - reminds me of a coilgun :-)
You might like some of my stuff:
Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (16-512px)
Tips (BTC): 13LdcdUFcNCFAm7HfvAXh5GHTjCnnQj6KE
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Sun Feb 03, 2013 18:47

1244 wrote:In which way I can add new machine to function check_LV_node_subp in battery box? I ask because I create new mod wich use energy from LV battery box.


Implemented.

To register new power machine please use:

register_LV_machine (node_name,machine_type)
or
register_MV_machine (node_name,machine_type)

where node_name is name of registered machine
machine_type can be "PR" when machine produces energy, "RE" when machine is energy receiver

also metadata of registered machine shall have 3 additional variables defined

for LV machines:
technic_power_machine=1,
internal_EU_buffer=0;
internal_EU_buffer_size=value;

for MV machines
technic_mv_power_machine=1,
internal_EU_buffer=0;
internal_EU_buffer_size=value;

technic_power_machine=1 or technic_MV_power_machine=1 is used by wireing check routines
 

1244
Member
 
Posts: 45
Joined: Fri Jul 13, 2012 16:40
Location: Poland

by 1244 » Tue Feb 05, 2013 18:00

When I used technic 0.94 I have bug in unified inventory:

18:57:40: VERBOSE[main]: error_message = ServerError: LuaError: error: ...n\..\mods\minetest\technic\unified_inventory/api.lua:465: bad argument #1 to 'lower' (string expected, got table)
 

Nore
Developer
 
Posts: 404
Joined: Wed Nov 28, 2012 11:35
GitHub: Novatux

by Nore » Tue Feb 05, 2013 18:15

Try to upgrade to latest stairplus.

Also, I have a more or less working frame code:

Code: Select all
function get_face(pos,ppos,pvect)
    ppos={x=ppos.x-pos.x,y=ppos.y-pos.y+1.5,z=ppos.z-pos.z}
    if pvect.x>0 then
        local t=(-0.5-ppos.x)/pvect.x
        local y_int=ppos.y+t*pvect.y
        local z_int=ppos.z+t*pvect.z
        if y_int>-0.4 and y_int<0.4 and z_int>-0.4 and z_int<0.4 then return 1 end
    elseif pvect.x<0 then
        local t=(0.5-ppos.x)/pvect.x
        local y_int=ppos.y+t*pvect.y
        local z_int=ppos.z+t*pvect.z
        if y_int>-0.4 and y_int<0.4 and z_int>-0.4 and z_int<0.4 then return 2 end
    end
    if pvect.y>0 then
        local t=(-0.5-ppos.y)/pvect.y
        local x_int=ppos.x+t*pvect.x
        local z_int=ppos.z+t*pvect.z
        if x_int>-0.4 and x_int<0.4 and z_int>-0.4 and z_int<0.4 then return 3 end
    elseif pvect.y<0 then
        local t=(0.5-ppos.y)/pvect.y
        local x_int=ppos.x+t*pvect.x
        local z_int=ppos.z+t*pvect.z
        if x_int>-0.4 and x_int<0.4 and z_int>-0.4 and z_int<0.4 then return 4 end
    end
    if pvect.z>0 then
        local t=(-0.5-ppos.z)/pvect.z
        local x_int=ppos.x+t*pvect.x
        local y_int=ppos.y+t*pvect.y
        if x_int>-0.4 and x_int<0.4 and y_int>-0.4 and y_int<0.4 then return 5 end
    elseif pvect.z<0 then
        local t=(0.5-ppos.z)/pvect.z
        local x_int=ppos.x+t*pvect.x
        local y_int=ppos.y+t*pvect.y
        if x_int>-0.4 and x_int<0.4 and y_int>-0.4 and y_int<0.4 then return 6 end
    end
end


for xm=0,1 do
for xp=0,1 do
for ym=0,1 do
for yp=0,1 do
for zm=0,1 do
for zp=0,1 do

    local outimgs = {}

    if yp==1 then
        table.insert(outimgs, "technic_lv_cable.png")
    else
        table.insert(outimgs, "default_stone.png")
    end
    if ym==1 then
        table.insert(outimgs, "technic_lv_cable.png")
    else
        table.insert(outimgs, "default_stone.png")
    end
    if xp==1 then
        table.insert(outimgs, "technic_lv_cable.png")
    else
        table.insert(outimgs, "default_stone.png")
    end
    if xm==1 then
        table.insert(outimgs, "technic_lv_cable.png")
    else
        table.insert(outimgs, "default_stone.png")
    end
    if zp==1 then
        table.insert(outimgs, "technic_lv_cable.png")
    else
        table.insert(outimgs, "default_stone.png")
    end
    if zm==1 then
        table.insert(outimgs, "technic_lv_cable.png")
    else
        table.insert(outimgs, "default_stone.png")
    end
   
    local nameext=tostring(xm)..tostring(xp)..tostring(ym)..tostring(yp)..tostring(zm)..tostring(zp)
    local groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}
    if nameext~="111111" then groups.not_in_creative_inventory=1 end
   

    minetest.register_node("technic:frame_"..nameext,{
        description = "Frame",
        tiles = outimgs,
        groups=groups,
        frame=1,
        drop="technic:frame_111111",
        frame_connect_all=function(pos)
            local nodename=minetest.env:get_node(pos).name
            l2={}
            l1={{x=-1,y=0,z=0},{x=1,y=0,z=0},{x=0,y=-1,z=0},{x=0,y=1,z=0},{x=0,y=0,z=-1},{x=0,y=0,z=1}}
            for i,dir in ipairs(l1) do
                if string.sub(nodename,-7+i,-7+i)=="1" then
                    l2[#(l2)+1]=dir
                end
            end
            return l2
        end,
        on_punch=function(pos,node,puncher)
            local ppos=puncher:getpos()
            local pvect=puncher:get_look_dir()
            local pface=get_face(pos,ppos,pvect)
            if pface==nil then return end
            local nodename=node.name
            local newstate=tostring(1-tonumber(string.sub(nodename,-7+pface,-7+pface)))
            if pface<=5 then
                nodename=string.sub(nodename,1,-7+pface-1)..newstate..string.sub(nodename,-7+pface+1)
            else
                nodename=string.sub(nodename,1,-2)..newstate
            end
            node.name=nodename
            minetest.env:set_node(pos,node)
        end
    })

end
end
end
end
end
end


function frame_motor1_on(pos,node)
    local npos={x=pos.x,y=pos.y+1,z=pos.z}
    local nnode=minetest.env:get_node(npos)
    if node.param2==0 then
        dir={x=1,y=0,z=0}
    elseif node.param2==1 then
        dir={x=0,y=0,z=-1}
    elseif node.param2==2 then
        dir={x=-1,y=0,z=0}
    else
        dir={x=0,y=0,z=1}
    end
    if minetest.registered_nodes[nnode.name].frame==1 then
        local connected_nodes=get_connected_nodes(npos)
        move_nodes_vect(connected_nodes,dir)
    end
end

function frame_motor2_on(pos,node)
    local npos={x=pos.x,y=pos.y-1,z=pos.z}
    local nnode=minetest.env:get_node(npos)
    if node.param2==0 then
        dir={x=1,y=0,z=0}
    elseif node.param2==1 then
        dir={x=0,y=0,z=-1}
    elseif node.param2==2 then
        dir={x=-1,y=0,z=0}
    else
        dir={x=0,y=0,z=1}
    end
    if minetest.registered_nodes[nnode.name].frame==1 then
        local connected_nodes=get_connected_nodes(npos)
        move_nodes_vect(connected_nodes,dir)
    end
end

function frame_motor3_on(pos,node)
    local npos={x=pos.x,y=pos.y,z=pos.z}
    if node.param2==0 then
        dir={x=1,y=0,z=0}
        npos.z=npos.z-1
    elseif node.param2==1 then
        dir={x=0,y=0,z=-1}
        npos.x=npos.x-1
    elseif node.param2==2 then
        dir={x=-1,y=0,z=0}
        npos.z=npos.z+1
    else
        dir={x=0,y=0,z=1}
        npos.x=npos.x+1
    end
    local nnode=minetest.env:get_node(npos)
    if minetest.registered_nodes[nnode.name].frame==1 then
        local connected_nodes=get_connected_nodes(npos)
        move_nodes_vect(connected_nodes,dir)
    end
end

function frame_motor4_on(pos,node)
    local npos={x=pos.x,y=pos.y,z=pos.z}
    if node.param2==0 then
        dir={x=-1,y=0,z=0}
        npos.z=npos.z-1
    elseif node.param2==1 then
        dir={x=0,y=0,z=1}
        npos.x=npos.x-1
    elseif node.param2==2 then
        dir={x=1,y=0,z=0}
        npos.z=npos.z+1
    else
        dir={x=0,y=0,z=-1}
        npos.x=npos.x+1
    end
    local nnode=minetest.env:get_node(npos)
    if minetest.registered_nodes[nnode.name].frame==1 then
        local connected_nodes=get_connected_nodes(npos)
        move_nodes_vect(connected_nodes,dir)
    end
end

function frame_motor5_on(pos,node)
    local npos={x=pos.x,y=pos.y,z=pos.z}
    if node.param2==0 then
        npos.z=npos.z-1
    elseif node.param2==1 then
        npos.x=npos.x-1
    elseif node.param2==2 then
        npos.z=npos.z+1
    else
        npos.x=npos.x+1
    end
    dir={x=0,y=1,z=0}
    local nnode=minetest.env:get_node(npos)
    if minetest.registered_nodes[nnode.name].frame==1 then
        local connected_nodes=get_connected_nodes(npos)
        move_nodes_vect(connected_nodes,dir)
    end
end

function frame_motor6_on(pos,node)
    local npos={x=pos.x,y=pos.y,z=pos.z}
    if node.param2==0 then
        npos.z=npos.z-1
    elseif node.param2==1 then
        npos.x=npos.x-1
    elseif node.param2==2 then
        npos.z=npos.z+1
    else
        npos.x=npos.x+1
    end
    dir={x=0,y=-1,z=0}
    local nnode=minetest.env:get_node(npos)
    if minetest.registered_nodes[nnode.name].frame==1 then
        local connected_nodes=get_connected_nodes(npos)
        move_nodes_vect(connected_nodes,dir)
    end
end


minetest.register_node("technic:frame_motor1",{
    description = "Frame motor 1",
    tiles = {"pipeworks_filter_top.png", "technic_lv_cable.png", "technic_lv_cable.png",
        "technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png"},
    groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
    paramtype2 = "facedir",
    mesecons={effector={action_on=frame_motor1_on}},
    frames_can_connect=function(pos,dir)
        return dir.y~=-1
    end
})

minetest.register_node("technic:frame_motor2",{
    description = "Frame motor 2",
    tiles = {"technic_lv_cable.png", "pipeworks_filter_top.png", "technic_lv_cable.png",
        "technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png"},
    groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
    paramtype2 = "facedir",
    mesecons={effector={action_on=frame_motor2_on}},
    frames_can_connect=function(pos,dir)
        return dir.y~=1
    end
})

minetest.register_node("technic:frame_motor3",{
    description = "Frame motor 3",
    tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
        "technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png"},
    groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
    paramtype2 = "facedir",
    mesecons={effector={action_on=frame_motor3_on}},
    frames_can_connect=function(pos,dir)
        local node=minetest.env:get_node(pos)
        if node.param2==0 then return dir.z~=1
        elseif node.param2==1 then return dir.x~=1
        elseif node.param2==2 then return dir.z~=-1
        else return dir.x~=-1 end
    end
})

minetest.register_node("technic:frame_motor4",{
    description = "Frame motor 4",
    tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
        "technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png"},
    groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
    paramtype2 = "facedir",
    mesecons={effector={action_on=frame_motor4_on}},
    frames_can_connect=function(pos,dir)
        local node=minetest.env:get_node(pos)
        if node.param2==0 then return dir.z~=1
        elseif node.param2==1 then return dir.x~=1
        elseif node.param2==2 then return dir.z~=-1
        else return dir.x~=-1 end
    end
})

minetest.register_node("technic:frame_motor5",{
    description = "Frame motor 5",
    tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
        "technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png"},
    groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
    paramtype2 = "facedir",
    mesecons={effector={action_on=frame_motor5_on}},
    frames_can_connect=function(pos,dir)
        local node=minetest.env:get_node(pos)
        if node.param2==0 then return dir.z~=1
        elseif node.param2==1 then return dir.x~=1
        elseif node.param2==2 then return dir.z~=-1
        else return dir.x~=-1 end
    end
})

minetest.register_node("technic:frame_motor6",{
    description = "Frame motor 6",
    tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
        "technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png"},
    groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
    paramtype2 = "facedir",
    mesecons={effector={action_on=frame_motor6_on}},
    frames_can_connect=function(pos,dir)
        local node=minetest.env:get_node(pos)
        if node.param2==0 then return dir.z~=1
        elseif node.param2==1 then return dir.x~=1
        elseif node.param2==2 then return dir.z~=-1
        else return dir.x~=-1 end
    end
})




function move_nodes_vect(poslist,vect)
    for _,pos in ipairs(poslist) do
        local npos=addVect(pos,vect)
        if minetest.env:get_node(npos).name~="air" and not(pos_in_list(poslist,npos)) then return end
    end
    nodelist={}
    for _,pos in ipairs(poslist) do
        local node=minetest.env:get_node(pos)
        local meta=minetest.env:get_meta(pos):to_table()
        nodelist[#(nodelist)+1]={pos=pos,node=node,meta=meta}
        minetest.env:remove_node(pos)
    end
    for _,n in ipairs(nodelist) do
        local npos=addVect(n.pos,vect)
        minetest.env:set_node(npos,n.node)
        local meta=minetest.env:get_meta(npos)
        meta:from_table(n.meta)
    end
end

function get_connected_nodes(pos)
    c={pos}
    local nodename=minetest.env:get_node(pos).name
    connected(pos,c,minetest.registered_nodes[nodename].frame_connect_all(pos))
    return c
end

function addVect(pos,vect)
    return {x=pos.x+vect.x,y=pos.y+vect.y,z=pos.z+vect.z}
end

function pos_in_list(l,pos)
    for _,p in ipairs(l) do
        if p.x==pos.x and p.y==pos.y and p.z==pos.z then return true end
    end
    return false
end

function connected(pos,c,adj)
    for _,vect in ipairs(adj) do
        local pos1=addVect(pos,vect)
        local nodename=minetest.env:get_node(pos1).name
        if not(pos_in_list(c,pos1)) and nodename~="air" and
        (minetest.registered_nodes[nodename].frames_can_connect==nil or
        minetest.registered_nodes[nodename].frames_can_connect(pos1,vect)) then
            c[#(c)+1]=pos1
            if minetest.registered_nodes[nodename].frame==1 then
                local adj=minetest.registered_nodes[nodename].frame_connect_all(pos1)
                connected(pos1,c,adj)
            end
        end
    end
end


 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Tue Feb 05, 2013 20:20

Nore wrote:Try to upgrade to latest stairplus.

Also, I have a more or less working frame code:



Yikes! im testin it right now

WOW !
Image
Last edited by RealBadAngel on Tue Feb 05, 2013 21:13, edited 1 time in total.
 

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

by Inocudom » Tue Feb 05, 2013 23:36

In creative mode in the latest xyz build of 0.4.4, unified_inventory's inventory menu disappears and never comes back. Instead, I end up having to use the default creative menu.
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Wed Feb 06, 2013 13:53

Inocudom wrote:In creative mode in the latest xyz build of 0.4.4, unified_inventory's inventory menu disappears and never comes back. Instead, I end up having to use the default creative menu.


Please delete folder "creative" from minetest_game
UI replaces its functionality
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Wed Feb 06, 2013 14:57

Nore's frames code merged. I made for it nodeboxed frames.
Image
Last edited by RealBadAngel on Wed Feb 06, 2013 14:57, edited 1 time in total.
 

Nore
Developer
 
Posts: 404
Joined: Wed Nov 28, 2012 11:35
GitHub: Novatux

by Nore » Wed Feb 06, 2013 16:35

Thanks. Could you make better textures for the frame motor? Moreover, have you got a way to rotate a frame motor without using 6 different nodes?
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Thu Feb 07, 2013 02:56

Nore wrote:Thanks. Could you make better textures for the frame motor? Moreover, have you got a way to rotate a frame motor without using 6 different nodes?

im workin on the motor right now
to rotate stuff just use screwdrivers, theyre very handy :)
ofc i will need to modify its code to support also up/down
Last edited by RealBadAngel on Thu Feb 07, 2013 02:56, edited 1 time in total.
 

Axel
Member
 
Posts: 15
Joined: Wed Sep 05, 2012 18:50

by Axel » Thu Feb 07, 2013 13:51

I've got an error while generating a map
Code: Select all
ERROR[EmergeThread]: ERROR: An unhandled exception occurred: LuaError: error: ...n\..\mods\minetest\technic-master\technic/rubber.lua:111: attempt to call method 'spawn_tree' (a nil value)

It sounds like it depends on something missing.
 

BZab
Member
 
Posts: 126
Joined: Mon Jan 28, 2013 10:04
Location: Poland

by BZab » Thu Feb 07, 2013 14:07

I go t it too - you need to get latest version of minetest from git
 

User avatar
VanessaE
Moderator
 
Posts: 3336
Joined: Sun Apr 01, 2012 12:38
Location: Waynesville, NC
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaEzekowitz

by VanessaE » Thu Feb 07, 2013 17:05

if something (technic, plantlife, moretrees, or otherwise) calls for spawn_tree, you need a build of Minetest dated Jan. 7 or later, either from one of PilzAdam's, thexyz's, or sfan5's prebuilt binaries (all for Windows), or from a nightly builds repository or compiled from source code (generally Linux users).
You might like some of my stuff:
Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (16-512px)
Tips (BTC): 13LdcdUFcNCFAm7HfvAXh5GHTjCnnQj6KE
 

BZab
Member
 
Posts: 126
Joined: Mon Jan 28, 2013 10:04
Location: Poland

by BZab » Fri Feb 08, 2013 14:08

1. Am I alone? im using latest technic, but MV wires, vertical are 'invisible'... isnt missing texture?
Image



PS how to use frames and f. motors? (I think they arent just decorative)
Last edited by BZab on Fri Feb 08, 2013 14:14, edited 1 time in total.
 

User avatar
RealBadAngel
Developer
 
Posts: 539
Joined: Wed Jul 18, 2012 16:30

by RealBadAngel » Fri Feb 08, 2013 16:09

BZab wrote:1. Am I alone? im using latest technic, but MV wires, vertical are 'invisible'... isnt missing texture?

PS how to use frames and f. motors? (I think they arent just decorative)


Sorry but i cannot see anythin on this screenshot.
MV wires works here without any problems.
Image

About frames: theyre still work in progress, if you would like to see them in action, please visit VanessE server, theres workin setup which uses frames.
Last edited by RealBadAngel on Fri Feb 08, 2013 16:14, edited 1 time in total.
 

BZab
Member
 
Posts: 126
Joined: Mon Jan 28, 2013 10:04
Location: Poland

by BZab » Fri Feb 08, 2013 16:47

OK i know ss isnt good but:
Vertical parts of MV wires are invisible
Isolation is only in "middle" of section with wire...
I'll try do better SS ;)

EDIT:
Image

(Using a bit old Misa's pack, which was made before adding MV..)
Last edited by BZab on Fri Feb 08, 2013 16:56, edited 1 time in total.
 

PreviousNext

Return to Mod Releases

Who is online

Users browsing this forum: No registered users and 3 guests