Page 3 of 5

PostPosted: Fri Jun 22, 2012 21:50
by MilanFIN
It was there before, I had my cellar's walls full of unworking tnt, it just didn't explode
Is there server side hack to make the normal tnt craftable and usable again...

PostPosted: Sat Jun 23, 2012 14:55
by sfan5
Yes

PostPosted: Mon Aug 06, 2012 01:40
by SegFault22
I got an idea - what about a block that is exactly the same as iron TNT but, instead of blowing up a region, it only activates other TNT that's in range... it would be perfect for a TNT cannon, as currently there is no way to make a working TNT cannon without it blowing itself up. Or, make stronger blocks like mese and steel blocks ''not affected'' by the explosions, and anything ''behind'' the stronger blocks will not be destroyed...? that would be perfect for making TNT cannons, and would help a lot for my airship fleet in the sky and using the cannons to blow up the towers made by invading sky pirates...

PostPosted: Sun Aug 12, 2012 17:40
by durtective6
This is great. Whenever I get a new version of minetest this is the first mod I installed but how do u make hardcore TNT (whats the other material on the sides)

PostPosted: Sun Aug 12, 2012 17:48
by sfan5
Its Coal

PostPosted: Sat Sep 08, 2012 19:51
by FooeytheMiner
...... My world is no longer a world because of this.... :(

PostPosted: Sun Sep 09, 2012 15:14
by webdesigner97
This is very cool! Well done :D

PostPosted: Sun Sep 09, 2012 19:12
by sfan5
Thanks!

PostPosted: Sun Sep 09, 2012 22:25
by jordan
sfan5 wrote:just modify the "local MESE_TNT_RANGE = 12" Line xD

Where do I find that?

PostPosted: Mon Sep 10, 2012 14:54
by PilzAdam
jordan wrote:
sfan5 wrote:just modify the "local MESE_TNT_RANGE = 12" Line xD

Where do I find that?

In init.lua line 178.

PostPosted: Thu Oct 11, 2012 17:59
by Comp52
is there a way to remote-detonate this? like, using mesecons? I wanted to make a trap using a pressure plate over mese TNT, but the pressure plate didn't detonate it. so then, i tried using mesecon wire to remote-detonate it, and that didn't work either.

PostPosted: Thu Oct 11, 2012 18:03
by Jeija
It's quite easy to add support for mesecons. Just have a look at the developers' section at mesecons.tk. You have to register the nuke as effector.

That compatibility thing should be added to the nuke mod (not to mesecons). You could make it only execute the compatibility code if the mesecons mod is found (e.g. by trying to get the directory or checking if mesecons ~= nil)
I hope Comp52 or sfan5 can do it, I propably won't have the time in the very near future.

PostPosted: Thu Oct 11, 2012 18:19
by Comp52
I sure can't do it. I have no idea how to do something like that. I'm working on my first mod, and using mostly code from someone else's mod and trying to suit my purposes with it.

PostPosted: Thu Oct 11, 2012 19:48
by Temperest
Add something along these lines to the bottom of the code:

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
-- Mesecon Stuff:
if minetest.get_modpath("mesecons") then
    mesecon:register_on_signal_on(function(pos, node)
        --activate the TNT here
    end)
end


Replace "--activate TNT here" with whatever you need to do to activate the TNT.

PostPosted: Thu Oct 11, 2012 20:07
by Comp52
um...I hate to have you do all the work, but I don't even know enough about the code to replace the "--activate the TNT here" line! If you could just re-write that small block of code with a line that lets it be activated either by pressure plate over it or by mesecon wiring, that would be stupendous. Thanks in advance, and sorry that I'm so illiterate in the game coding. I'm trying to learn, tho.

PostPosted: Thu Oct 11, 2012 20:21
by Temperest
Certainly.

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
-- Mesecon Stuff:
if minetest.get_modpath("mesecons") then
    mesecon:register_on_signal_on(function(pos, node)
            if node.name:find("nuke:") then
            minetest.env:remove_node(p)
            spawn_tnt(p, node.name)
            nodeupdate(p)
        end
    end)
end

PostPosted: Thu Oct 11, 2012 22:11
by Comp52
where should I put this? at the end? that didn't seem to work.

PostPosted: Thu Oct 11, 2012 22:17
by Temperest
Yes, put it at the very end.

Didn't seem to work? What does that mean? Was there an error? If so, what was it? Check your debug logfile for it, if necessary.

PostPosted: Thu Oct 11, 2012 22:26
by Comp52
no, no error, but when I run the game, i place a pressure plate over the TNT, stand on it, and it doesn't activate the TNT. I also tried hooking mesecons to the TNT, and it still didn't do anything(actually, it didn't connect to the TNT)

PostPosted: Thu Oct 11, 2012 23:35
by Temperest
Hmm, does the TNT mod work for you? The one by PilzAdam, I mean. If it does not, then perhaps it's a different problem.

I'll see if I can get around to testing it later.

PostPosted: Thu Oct 11, 2012 23:57
by Comp52
no, I don't have the dev build. I use 0.4.3. But, I know that the Nuke mod works, and I know that mesecons works, so...i dunno.

PostPosted: Sun Oct 14, 2012 07:35
by breinzter11
Can you make it
we can active it with mesecons

PostPosted: Mon Oct 15, 2012 20:23
by Temperest
The problem was that the code didn't register the effectors:

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
-- Mesecon Stuff:
mesecon:register_effector("nuke:iron_tnt", "nuke:iron_tnt")
mesecon:register_effector("nuke:mese_tnt", "nuke:mese_tnt")
mesecon:register_effector("nuke:hardcore_iron_tnt", "nuke:hardcore_iron_tnt")
mesecon:register_effector("nuke:hardcore_mese_tnt", "nuke:hardcore_mese_tnt")
if minetest.get_modpath("mesecons") then
    mesecon:register_on_signal_on(function(pos, node)
        if node.name:find("^nuke:") then
            minetest.env:remove_node(pos)
            spawn_tnt(pos, node.name)
            nodeupdate(pos)
        end
    end)
end


Put this at the end of the init.lua and activate your TNT with Mesecons!

PostPosted: Tue Oct 16, 2012 07:00
by breinzter11
Temperest wrote:The problem was that the code didn't register the effectors:

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
-- Mesecon Stuff:
mesecon:register_effector("nuke:iron_tnt", "nuke:iron_tnt")
mesecon:register_effector("nuke:mese_tnt", "nuke:mese_tnt")
mesecon:register_effector("nuke:hardcore_iron_tnt", "nuke:hardcore_iron_tnt")
mesecon:register_effector("nuke:hardcore_mese_tnt", "nuke:hardcore_mese_tnt")
if minetest.get_modpath("mesecons") then
    mesecon:register_on_signal_on(function(pos, node)
        if node.name:find("^nuke:") then
            minetest.env:remove_node(pos)
            spawn_tnt(pos, node.name)
            nodeupdate(pos)
        end
    end)
end


Put this at the end of the init.lua and activate your TNT with Mesecons!

Thanks !!
now i can bully my friend

PostPosted: Sat Nov 10, 2012 16:32
by prof-turbo
I love this mod! why do you don't add sounds now? :D

Made in an ancient version with your mod and the creative ;): Image

PostPosted: Sat Nov 10, 2012 19:35
by terminalerror
prof-turbo wrote:why do you don't add sounds now?

That would result in burst eardrums.

PostPosted: Fri Dec 21, 2012 03:21
by VanessaE
Hey Sfan5... Given the changes made recently to Mese:

http://minetest.net/forum/viewtopic.php?id=4154

You may want to update your recipes if you're still maintaining this. Probably use two of the new Mese Blocks instead of the two old Mese objects. That's a far more expensive recipe, but IMHO it should be anyway given the craft result. :-)

PostPosted: Sun Feb 24, 2013 00:17
by proller
sometimes server crashes:
03:39:00: ACTION[ServerThread]: ginox places node nuke:hardcore_mese_tnt at (22,-124,60)
03:39:01: ACTION[ServerThread]: ginox punches object 3: LuaEntitySAO at (23,-124.4,61)
03:39:01: ACTION[ServerThread]: LuaEntitySAO at (23,-124.4,61) punched by player ginox, damage 1 hp, health now 9 hp
03:39:02: ERROR[main]: ERROR: An unhandled exception occurred: ServerError: LuaError: error running function 'on_punch': ...ler/.minetest/games/minetest_game/mods/nuke/init.lua:460: attempt to call method 'add_to_inventory' (a nil value)
03:39:02: ERROR[main]: stack traceback:

In thread 805007400:
/home/proller/minetest/src/main.cpp:1801: int main(int, char**): Assertion '0' failed.
Debug stacks:
DEBUG STACK FOR THREAD 805007400:
#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*))
Abort trap: 6 (core dumped)

PostPosted: Mon Feb 25, 2013 10:00
by proller
one more:
stack:get_name()="nuke:hardcore_mese_tnt", stack:get_count()=99
03:51:28: ACTION[ServerThread]: ShadowNinja places node nuke:hardcore_mese_tnt at (40,-46,36)
03:51:31: ACTION[ServerThread]: ShadowNinja punches object 9: LuaEntitySAO at (40,-46,36)
03:51:31: ACTION[ServerThread]: LuaEntitySAO at (40,-46,36) punched by player ShadowNinja, damage 1 hp, health now 9 hp
03:51:32: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=4 m_static_exists=true but static data doesn't actually exist in (0,1,2)
WARNING: StaticObjectList::remove(): id=4 not found
03:51:32: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=11 m_static_exists=true but static data doesn't actually exist in (0,0,2)
WARNING: StaticObjectList::remove(): id=11 not found
03:51:32: ERROR[main]: ServerEnvironment::deactivateFarObjects(): id=17 m_static_exists=true but static data doesn't actually exist in (0,1,3)
WARNING: StaticObjectList::remove(): id=17 not found
03:51:33: ERROR[main]: ERROR: An unhandled exception occurred: ServerError: LuaError: error running function 'on_punch': ...ler/.minetest/games/minetest_game/mods/nuke/init.lua:460: attempt to call method 'add_to_inventory' (a nil value)
03:51:33: ERROR[main]: stack traceback:

In thread 805007400:
/home/proller/minetest/src/main.cpp:1802: int main(int, char**): Assertion '0' failed.
Debug stacks:
DEBUG STACK FOR THREAD 805007400:
#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 ServerMap::loadBlock(std::string*, v3s16, MapSector*, bool))
Abort trap: 6 (core dumped)

PostPosted: Mon Feb 25, 2013 17:24
by 2232
Thanks :)