[Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesecons]

User avatar
NetYard5
Member
 
Posts: 66
Joined: Fri Aug 24, 2018 20:28
Location: Malaysia, Kuala Lumpur
GitHub: FI3Mate
IRC: AlloyMixedSteel
In-game: InfinityYards UltraNexo
 

RickSaysMeh
New member
 
Posts: 1
Joined: Thu Dec 13, 2018 00:45

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by RickSaysMeh » Thu Dec 13, 2018 00:57

Do Mese Blocks conduct vertically? Placing a lightbox on any of the six sides and powering the mese block seems to work as expected, the lightbox turns on. The same is true with a second mese block; HOWEVER, doing the same with a piston does not. The piston only receives power from the sides (X, Z) of the mese block, not the top or bottom. Is this by design? Is it possible to fix this so that pistons can be powered by a mese block above or below? To be clear, the mese block is touching the non-moving side of the piston.
 

User avatar
DS-minetest
Member
 
Posts: 1116
Joined: Thu Jun 19, 2014 19:49
Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
GitHub: DS-Minetest
In-game: DS

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by DS-minetest » Thu Dec 13, 2018 15:08

RickSaysMeh wrote:Do Mese Blocks conduct vertically?

Yes, they do.
RickSaysMeh wrote:The piston only receives power from the sides (X, Z) of the mese block, not the top or bottom. Is this by design? Is it possible to fix this so that pistons can be powered by a mese block above or below?

As you can see here (https://github.com/minetest-mods/meseco ... it.lua#L49), the default rules (12 rules (4(+x,-x,+z,-z) * 3(up, middle, down))) are taken and the rules toward the pusher are removed.
This could easily be changed.
Do not call me -minetest.
Call me DS or DS-minetest.
I am German, so you don't have to pm me English if you are also German.
The background is a lie.
 

thetoolman
New member
 
Posts: 5
Joined: Sat Nov 24, 2018 18:45
GitHub: tealethetoolman
IRC: thetoolman

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by thetoolman » Mon Jan 28, 2019 19:45

Hey there!

Was wondering if there was a reason or if it has just not been suggested yet.

The LUA controller is cool and all but it is missing a call. This call is split. I put it in on my local copy and it works great and I thought I'd recommend it. I searched this thread for anything having to do with the lua controller and nothing came up talking about it so I figured I'd bring it up.

So some details:
I'm working with the lua controller and digilines and I want to make the lua controller count something that is sent in the digilines string. To be a little more clear here, the digilines chest spits out a string like this "default:cobblestone 9" where the first part is the item, and the last part is the number. (I haven't thought about this in a few months, but I think there's a part in the middle that says whether it is being added or removed). When I include the split function, I can say var item.count=item.count + event.msg.split(" ")[2] and it will add the previous value to this new value. This is great for keeping track of amounts in storage bins. (I need to post in the digiline topic that these numbers and the put/take are a bit wonky and it messes up my numbers, but that's a topic for another post in another thread). This is also good for communication of advanced strings similar to this from other systems I've built but wont get into.

So the code I added in mesecons_luacontroller/init.lua looks like this

local env = {
...
string = {
...
split = string.split,
...
}
....
}

I don't have a github account so I wont be making a merge request, but if someone wants to take a look at this and possibly add it or explain why it's not there, that'd be nice. This way, I don't have to modify the file whenever I pull the latest code.

Thanks

-thetoolman


p.s.
also does anyone know who manages the code base for the lua memory module? Someone did a pretty nasty typo that left the piece absolutely useless (index off by 0 where it is calling the data from the deserialized table). I saw a merge request on that ones page but it also had someones name tagged into it. Looks like it hasn't been updated in a while.)
 

lonestar
Member
 
Posts: 52
Joined: Mon Jul 17, 2017 03:25
Location: Texas,USA

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by lonestar » Sun Feb 10, 2019 02:56

Is it possible for mese to transmit through three blocks? In Minecraft, redstone is able to transmit this way. For example, you have two sticky pistons stacked on top of each other under a stone block, when redstone is active on top of the stone block, it activate both pistons. Either that or have pistons transfer power to the next.
 

User avatar
Hybrid Dog
Member
 
Posts: 2719
Joined: Thu Nov 01, 2012 12:46

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Hybrid Dog » Sun Feb 10, 2019 20:09

You can make a mesecons transmitter node which sends a mesecons signal to three or more nodes in a specific direction. The default mesecons wire sends the signal only to the neighbouring nodes.

‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪
 

lonestar
Member
 
Posts: 52
Joined: Mon Jul 17, 2017 03:25
Location: Texas,USA

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by lonestar » Mon Feb 11, 2019 01:17

Hybrid Dog wrote:You can make a mesecons transmitter node which sends a mesecons signal to three or more nodes in a specific direction. The default mesecons wire sends the signal only to the neighbouring nodes.


Can you point to any documentation/tutorial on a transmitter? Doesn't seem to be in mesecons mod pack.
 

User avatar
Hybrid Dog
Member
 
Posts: 2719
Joined: Thu Nov 01, 2012 12:46

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Hybrid Dog » Mon Feb 11, 2019 11:53

lonestar wrote:
Hybrid Dog wrote:You can make a mesecons transmitter node which sends a mesecons signal to three or more nodes in a specific direction. The default mesecons wire sends the signal only to the neighbouring nodes.


Can you point to any documentation/tutorial on a transmitter? Doesn't seem to be in mesecons mod pack.

I made a laser beam mod, where I used mesecon.receptor_on, mesecon.receptor_off and the mesecons field in the node definition.
https://github.com/HybridDog/laser/blob ... t.lua#L430
For a transmitter you probably also need to use effector, see the piston for examle: https://github.com/minetest-mods/meseco ... t.lua#L278
I haven't found a documentation of the mesecons API. Maybe it's missing.

‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪‮
‮‪
 

User avatar
DS-minetest
Member
 
Posts: 1116
Joined: Thu Jun 19, 2014 19:49
Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
GitHub: DS-Minetest
In-game: DS

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by DS-minetest » Mon Feb 11, 2019 16:25

Hybrid Dog wrote:I haven't found a documentation of the mesecons API. Maybe it's missing.

http://mesecons.net/developers.html
https://github.com/minetest-mods/mesecons/blob/master/mesecons/internal.lua#L1-L47 (There might be other useful code comments somewhere else.)
Do not call me -minetest.
Call me DS or DS-minetest.
I am German, so you don't have to pm me English if you are also German.
The background is a lie.
 

User avatar
Superuser
Member
 
Posts: 11
Joined: Thu Jan 10, 2019 01:37
In-game: Superuser

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Superuser » Tue Feb 12, 2019 21:32

Awesome mod!
by far, a great way to make machines and etc- fills a gap from minecraft!
I play on blocky survival server
All images on this site are free to use.
 

User avatar
Isja Krass
Member
 
Posts: 43
Joined: Sat Aug 18, 2018 19:30
Location: {X=25.25, y=-400, z=478,8} Bavaria, Germany
In-game: init.lua

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Isja Krass » Mon Jun 17, 2019 21:42

What happened to my luacontrollers???

+ igmage


I only try to run this code and this is happened.
Code: Select all
if event.msg == "inout_01 /status" then if pin.a == true then digiline_send(event.channel,"![INOUT_01]:has input") else if port.b == true then digiline_send(event.channel,"![INOUT_01]: has output") else digiline_send(event.channel,"![INOUT_01]: nil") end end end
if event.msg == "inout_01 /on" then port.a = true end
if event.msg == "inout_01 /off" then port.a = false end
if pin.a == true then digiline_send(event.channel,"![INOUT_01]: input") end
if event.msg == "inout_01 /check" then if pin.a == true then digiline_send(event.channel,"![INOUT_01]: input = true") else digiline_send(event.channel,"![INOUT_01]: input = false") end end
Attachments
screenshot_20190617_233810.png
(201.91 KiB) Not downloaded yet
my topics | profile | contact me | nothing else to say...
 

User avatar
DS-minetest
Member
 
Posts: 1116
Joined: Thu Jun 19, 2014 19:49
Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
GitHub: DS-Minetest
In-game: DS

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by DS-minetest » Tue Jun 18, 2019 09:32

Isja Krass wrote:What happened to my luacontrollers???

+ igmage


I only try to run this code and this is happened.
Code: Select all
if event.msg == "inout_01 /status" then if pin.a == true then digiline_send(event.channel,"![INOUT_01]:has input") else if port.b == true then digiline_send(event.channel,"![INOUT_01]: has output") else digiline_send(event.channel,"![INOUT_01]: nil") end end end
if event.msg == "inout_01 /on" then port.a = true end
if event.msg == "inout_01 /off" then port.a = false end
if pin.a == true then digiline_send(event.channel,"![INOUT_01]: input") end
if event.msg == "inout_01 /check" then if pin.a == true then digiline_send(event.channel,"![INOUT_01]: input = true") else digiline_send(event.channel,"![INOUT_01]: input = false") end end

Uh, at least use new lines:
Code: Select all
if event.msg == "inout_01 /status" then
if pin.a == true then
digiline_send(event.channel,"![INOUT_01]:has input")
else
if port.b == true then
digiline_send(event.channel,"![INOUT_01]: has output")
else
digiline_send(event.channel,"![INOUT_01]: nil")
end
end
end

if event.msg == "inout_01 /on" then port.a = true end
if event.msg == "inout_01 /off" then port.a = false end
if pin.a == true then digiline_send(event.channel,"![INOUT_01]: input") end

if event.msg == "inout_01 /check" then
if pin.a == true then
digiline_send(event.channel,"![INOUT_01]: input = true")
else
digiline_send(event.channel,"![INOUT_01]: input = false")
end
end

if pin.a == true then digiline_send(event.channel,"![INOUT_01]: input") end sends a digiline message on every event with pin.a == true. If you have now another device that always sends a digiline message back, there are very many messages in a short time and the luacontroller overheats (it gets red).
To avoid this, you might want to check the value of event.type.

Something else:
Don't do something like if pin.a == true then, do instead if pin.a then. pin.a == true gives you true or false but pin.a is already true or false. Such a == true is redundant.
Do not call me -minetest.
Call me DS or DS-minetest.
I am German, so you don't have to pm me English if you are also German.
The background is a lie.
 

User avatar
Isja Krass
Member
 
Posts: 43
Joined: Sat Aug 18, 2018 19:30
Location: {X=25.25, y=-400, z=478,8} Bavaria, Germany
In-game: init.lua
 

User avatar
BBmine
Member
 
Posts: 3475
Joined: Sun Jul 12, 2015 22:51
Location: USA
GitHub: BBmine
IRC: BBmine
In-game: Baggins

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by BBmine » Mon Jul 22, 2019 18:34

I followed the guide on http://mesecons.net/uberi/projects/Clock/index.html. Only the blinking colon gets power, and the number blocks remain off.

+ Screenshots
Attachments
screenshot_20190722_132636.png
(263.26 KiB) Not downloaded yet
screenshot_20190722_132633.png
(409.4 KiB) Not downloaded yet
screenshot_20190722_132627.png
(485.78 KiB) Not downloaded yet
 

neoh4x0r
Member
 
Posts: 64
Joined: Wed Aug 29, 2018 20:16
GitHub: neoh4x0r

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by neoh4x0r » Mon Jul 22, 2019 23:04

thetoolman wrote:The LUA controller is cool and all but it is missing a call. This call is split. I put it in on my local copy and it works great and I thought I'd recommend it. I searched this thread for anything having to do with the lua controller and nothing came up talking about it so I figured I'd bring it up.

I'm working with the lua controller and digilines and I want to make the lua controller count something that is sent in the digilines string. To be a little more clear here, the digilines chest spits out a string like this "default:cobblestone 9" where the first part is the item, and the last part is the number.

So the code I added in mesecons_luacontroller/init.lua looks like this

Code: Select all
local env = {
  ...
  string = {
    ...
    split = string.split,
    ...
  }
  ....
}


I don't have a github account so I wont be making a merge request, but if someone wants to take a look at this and possibly add it or explain why it's not there, that'd be nice. This way, I don't have to modify the file whenever I pull the latest code.


I just opened a new issue on github about this: https://github.com/minetest-mods/mesecons/issues/470

However, the message parameter sent by the digilines chest is a table.
https://github.com/minetest-mods/digili ... ry.lua#L10

Code: Select all
local msg = {
   action = action,
   stack = stack and stack:to_table(),
   from_slot = from_slot,
   to_slot = to_slot,
   -- Duplicate the vector in case the caller expects it not to change.
   side = side and vector.new(side)
}


Even if you could access the various members of the message parameter -- such as action (a string), or stack (a string or ItemStack table -- https://dev.minetest.net/ItemStack) -- the luacontroller sandbox might not allow the following code to be executed.

If the stack paramter is an itemstring (ie "default:dirt 5"), then string.split would be required.

However, it might be possible to access the various table members of the stack parameter.

eg:
Code: Select all
local table = msg.stack
for i, item in ipairs(table) do
   if not item  then
          print("[" .. i .. "] could not get item entry")
    else   
          local name = nil
          local count = nil
          if item.name then
                    name = item.name
          end
          if item.count then
                    count = item.name
          end
          if name and count then
                    print("[" .. i .. "] name=['" .. item.name .. "'] count= ['" .. item.count .. "']")
          else
                    if not name then
                              print("[" .. i .. "] could not get item name")
                    end
                    if not count then
                              print("[" .. i .. "] could not get item count")
                    end
          end
   end
end


PS: This is how it would be done in non-sandboxed lua code.
 

User avatar
Miniontoby
Member
 
Posts: 235
Joined: Fri Mar 01, 2019 19:25
Location: The Netherlands
In-game: Miniontoby

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Miniontoby » Tue Jul 23, 2019 09:23

BBmine wrote:I followed the guide on http://mesecons.net/uberi/projects/Clock/index.html. Only the blinking colon gets power, and the number blocks remain off.

+ Screenshots


I think you have a code error (Look at the lua controllers). I have also a error in the code. I have nearly the solution.
My English isn't very good because I'm Dutch ---- Check my mod "Doorbell"
 

redblade7
Member
 
Posts: 280
Joined: Sun Feb 15, 2015 07:14
IRC: redneonglow redblade7
In-game: redblade7 redblade7_owner

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by redblade7 » Fri Aug 23, 2019 20:57

I have a feature request for Mesecons:

Power and blinky plants that only activate during nighttime (in-game time).

What do you think?
-redblade7, admin of: THE CREATIVE GARDENS (creative), THE VALLEYS (sandbox), and THE DIGITAL FARMS (farming/hunger/shops)
 

User avatar
Yvanhoe
Member
 
Posts: 129
Joined: Fri Jul 05, 2019 03:18
Location: Japan

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Yvanhoe » Sat Aug 24, 2019 01:55

That could be interesting but there is already a light sensor and an rtc clock (through digilines though, not mesecons) you can already build that kind of detection if you want.
 

redblade7
Member
 
Posts: 280
Joined: Sun Feb 15, 2015 07:14
IRC: redneonglow redblade7
In-game: redblade7 redblade7_owner

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by redblade7 » Sat Aug 24, 2019 03:45

Yvanhoe wrote:That could be interesting but there is already a light sensor and an rtc clock (through digilines though, not mesecons) you can already build that kind of detection if you want.


I'm kind of a n00b to Mesecons. How do I use the light sensor to have light stones wired to up to plants only turn on when it's dark?
-redblade7, admin of: THE CREATIVE GARDENS (creative), THE VALLEYS (sandbox), and THE DIGITAL FARMS (farming/hunger/shops)
 

User avatar
Yvanhoe
Member
 
Posts: 129
Joined: Fri Jul 05, 2019 03:18
Location: Japan

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Yvanhoe » Sat Aug 24, 2019 05:00

You will probably need a luacontroller for that as well. This documentation will help: http://mesecons.net/digilines.html
 

User avatar
Clyde
Member
 
Posts: 110
Joined: Sat Jul 30, 2016 14:23
GitHub: acmgit
In-game: clyde

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Clyde » Sat Aug 24, 2019 09:34

This is like a fly on the wall with cannons ;-).

Take the solarpanel and the not-gate, that's all.
The not-gate reverses the signal, at day the solarpanel sends a signal to the not-gate,
the gate reverses the signal, the light is off.
At night, the solarpanel sends no signal to the not-gate, the gate reverses the signal, the light is on.

Greetings, Clyde.
 

redblade7
Member
 
Posts: 280
Joined: Sun Feb 15, 2015 07:14
IRC: redneonglow redblade7
In-game: redblade7 redblade7_owner

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by redblade7 » Sat Aug 24, 2019 11:38

Clyde wrote:This is like a fly on the wall with cannons ;-).

Take the solarpanel and the not-gate, that's all.
The not-gate reverses the signal, at day the solarpanel sends a signal to the not-gate,
the gate reverses the signal, the light is off.
At night, the solarpanel sends no signal to the not-gate, the gate reverses the signal, the light is on.

Greetings, Clyde.


Image

Thank you!
-redblade7, admin of: THE CREATIVE GARDENS (creative), THE VALLEYS (sandbox), and THE DIGITAL FARMS (farming/hunger/shops)
 

User avatar
DS-minetest
Member
 
Posts: 1116
Joined: Thu Jun 19, 2014 19:49
Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
GitHub: DS-Minetest
In-game: DS

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by DS-minetest » Sat Aug 24, 2019 12:53

@redblade7: If you want to have a blinky plant that is only activated at night, connect the output of the not gate and a blinky plant with the inputs of an and gate. (Or don't use a not gate and instead connect a solar panel and a blinky plant with a xor gate.)
Do not call me -minetest.
Call me DS or DS-minetest.
I am German, so you don't have to pm me English if you are also German.
The background is a lie.
 

neoh4x0r
Member
 
Posts: 64
Joined: Wed Aug 29, 2018 20:16
GitHub: neoh4x0r

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by neoh4x0r » Sat Aug 24, 2019 15:39

redblade7 wrote:I have a feature request for Mesecons:
Power and blinky plants that only activate during nighttime (in-game time).
What do you think?


Clyde wrote:This is like a fly on the wall with cannons ;-).
Take the solarpanel and the not-gate, that's all.
The not-gate reverses the signal, at day the solarpanel sends a signal to the not-gate,
the gate reverses the signal, the light is off.
At night, the solarpanel sends no signal to the not-gate, the gate reverses the signal, the light is on.
Greetings, Clyde.


That would be a quick and dirty hack to turn the blink plant on, only when the solar panel is off.

If you only cared about the light-level (and not the time of day/night) then using a not-gate with the solar panel would work just fine.

However, the solar panel is also affected by artificial light sources and if enough are present to raise the level at at or above level 12, then the solar panel will be off (and this irrespective of it being day or nighttime).

Considering that the max light level is 15 and that the min threshold is 12 -- (it probably won't be dark / night-time when the solar panel is off).

To make it work properly you would have to remove all artificial light sources within a certain radius, and it is further complicated if it used inside vs outside.

Hence, this is why an rtc clock should be used with a solarpanel to be effective.


I'll describe this using pseudo-logic/algebra:
Code: Select all
// note max_level = 15
min=12 // on-off light_level threshold
L = light_level // the light-level hitting the solar panel

We can just simply to this:
solarpanel_on = (L >= min)
solarpanel_off = (L < min) = not  solarpanel_on


I have confirmed this (looking at the code):
https://github.com/minetest-mods/meseco ... it.lua#L73
https://github.com/minetest-mods/meseco ... it.lua#L88

Code: Select all
{nodenames = {"mesecons_solarpanel:solar_panel_off"},
if light >= 12 then
node.name = "mesecons_solarpanel:solar_panel_on"

{nodenames = {"mesecons_solarpanel:solar_panel_on"},
if light < 12 then
node.name = "mesecons_solarpanel:solar_panel_off"
 

User avatar
Tedypig
Member
 
Posts: 286
Joined: Tue Mar 05, 2013 12:33
Location: Largo, FL, USA
IRC: Piggybear87
In-game: Piggybear

Re: [Mod] Mesecons (= redstone) [GitHub] [minetest-mod-mesec

by Tedypig » Thu Oct 24, 2019 13:05

I've been gone a while, but what changed? I had an automatic farm setup I used on servers with Mesecons, and now they don't work properly. It used sticky pistons to quickly raise and lower the dirt, and then vacuum tubes to collect it all and send it to chests, and then deployers to replant. Now, none of it works, the plants just break and vanish (no drops at all (nice waste of 3 stacks of seeds)), and the deployer doesn't plant seeds/plants/whatever. Is there a way to fix this? Right now, I have hours of hard work collecting resources sitting in a hole doing nothing.
 

PreviousNext

Return to Mod Releases



Who is online

Users browsing this forum: No registered users and 7 guests