Time |
Nick |
Message |
00:27 |
|
blaise joined #minetest |
00:27 |
blaise |
Hello all.. |
00:27 |
blaise |
:D |
00:27 |
blaise |
I don't suppose VanessaE is active, is she? |
00:30 |
diemartin |
hello blaise |
00:30 |
blaise |
diemartin: hello.. |
00:31 |
blaise |
VanessaE: plants_lib and default problem http://pastebin.com/E3E7cNTD |
00:36 |
|
Xenoth joined #minetest |
00:43 |
Ep1cMaN |
hello everyone. |
00:43 |
Ep1cMaN |
technic mod cnc machine broken as I cant find which blocks work? |
00:45 |
blaise |
I can't get the server to load with a lot of the mods... |
00:45 |
blaise |
technic, plantlife, mesecons |
00:46 |
blaise |
it's rather disconcerting.. |
00:46 |
blaise |
I'm afraid to update my production minetest server... |
00:47 |
blaise |
and it seems like no one has touched the hud mod in quite a while, |
00:48 |
blaise |
I've tried both mesecons release, and mesecons git.. can't get them to work with minetest-0.4.10 or minetest-0.4.12 |
00:48 |
blaise |
: |
00:48 |
blaise |
:G |
01:05 |
Xenoth |
I have an issue compiling Minetest on Linux; do I ask here, or on #minetest-dev? |
01:08 |
blaise |
here is fine |
01:08 |
Xenoth |
During compilation, I get this: make[2]: *** No rule to make target '/usr/lib64/libz.so' |
01:08 |
blaise |
compiling and developing are a bit different.. XD |
01:08 |
blaise |
yes, you need libz |
01:09 |
blaise |
Xenoth: what distro do you use? |
01:09 |
blaise |
if you give me a sec, I'll tell you what contains libz |
01:09 |
blaise |
:D |
01:10 |
Xenoth |
blaise: Currently on Ubuntu 15.04. |
01:10 |
Xenoth |
Thanks. |
01:10 |
Xenoth |
I was just searching the apt cache for it |
01:10 |
blaise |
Xenoth: what linux distro do you use? |
01:10 |
blaise |
SuSE? |
01:10 |
blaise |
RedHat? |
01:10 |
blaise |
Slackware? |
01:10 |
Xenoth |
Ubuntu, 15.04 |
01:10 |
* blaise |
facepalms |
01:10 |
blaise |
k, just a sec |
01:15 |
|
theTroy joined #minetest |
01:26 |
kaeza_ |
Zlib? |
01:27 |
|
GeHa joined #minetest |
01:27 |
kaeza_ |
Did you install all dependencies listed in the README? |
01:28 |
Xenoth |
kaeza_: Yessir |
01:29 |
kaeza_ |
Xenoth, this may be useful: https://forum.minetest.net/viewtopic.php?id=3837 |
01:37 |
Xenoth |
Thank you, had a few other unsettled dependencies, but it's all working now |
01:38 |
|
NekoGloop joined #minetest |
01:44 |
|
kaeza_ joined #minetest |
01:48 |
|
Wuzzy2 joined #minetest |
01:58 |
|
westyvw_ joined #minetest |
02:00 |
|
OldCoder joined #minetest |
02:22 |
|
blaise joined #minetest |
02:23 |
|
zat joined #minetest |
02:23 |
blaise |
damnit |
02:23 |
blaise |
did anyone reply to my paste about plants_lib? |
02:24 |
|
Jousway joined #minetest |
02:29 |
Ep1cMaN |
is it worth having music using technic mod. Or soes it just become annoying? |
02:29 |
Ep1cMaN |
does* |
02:30 |
|
Pilcrow joined #minetest |
02:35 |
|
kaeza joined #minetest |
02:37 |
Pilcrow |
hello all |
02:37 |
|
Xenoth joined #minetest |
02:38 |
kaeza |
hey |
02:39 |
blaise |
howdy |
02:39 |
Pilcrow |
hi kaeza and blaise. how are you today/tonight? |
02:40 |
|
kaeza_ joined #minetest |
02:40 |
Pilcrow |
hey, is Chanku or OldCoder around? is this still going to happen: https://forum.minetest.net/viewtopic.php?f=47&t=12199 |
02:42 |
Pilcrow |
kaeza_: did your internet just cut out? you seem to have changed names... :P |
02:43 |
kaeza_ |
Mobile connection sucks |
02:44 |
|
jordan4ibanez joined #minetest |
02:44 |
kaeza_ |
Tethering on mobile connection sucks even more |
02:45 |
Pilcrow |
kaeza_: ah. that makes sense. at least there's the logs, so you don't have to miss bits of conversation... ;) |
03:00 |
Pilcrow |
Oh and blaise, I just read the irc log and saw your question about plants_lib. In the debug info you posted, it says "attempt to call field 'get_us_time' (a nil value)" but minetest.get_us_time() has existed since at least 0.4.11 (maybe even 0.4.10)... What version of minetest are you using? |
03:05 |
OldCoder |
Hi |
03:05 |
OldCoder |
Pilcrow, are you there? |
03:06 |
OldCoder |
Pilcrow, PM please; the subject is important to me |
03:06 |
Pilcrow |
ah, hello OldCoder |
03:06 |
OldCoder |
PM |
03:07 |
Ep1cMaN |
does any one know how to setup lava so that privs are required please? |
03:17 |
jordan4ibanez |
!tell |
03:17 |
MinetestBot |
jordan4ibanez: Need a nickname... |
03:24 |
jordan4ibanez |
Hmmm |
03:25 |
jordan4ibanez |
Time to find out how to get a circular reference |
03:29 |
Wuzzy2 |
Does Minetest use UDP, TCP or both? |
03:39 |
|
_Raiz joined #minetest |
03:57 |
jordan4ibanez |
Wuzzy2: http://dev.minetest.net/Network_Protocol |
03:57 |
jordan4ibanez |
I don |
03:57 |
jordan4ibanez |
I don't know networking though |
03:58 |
Wuzzy2 |
ok thx |
03:59 |
jordan4ibanez |
Did that answer the question? |
04:06 |
* OldCoder |
worlds are down to relocate from one server to another |
04:15 |
|
fnrick joined #minetest |
04:17 |
|
LazyJ joined #minetest |
04:19 |
fnrick |
Hello, does anyone know a good starting modding template for Minetest? I'm looking around for something like boilerplate that has API for minetest already, so if anyone could point me in the right direction to that ,that'd be great! |
04:23 |
jordan4ibanez |
RealBadAngel: People love your shader thing! https://www.reddit.com/r/Minetest/comments/38gf3g/realbadangels_shaders/ |
04:24 |
jordan4ibanez |
fnrick: What are you trying to make? |
04:25 |
fnrick |
Anything simple, I'm in the process of learning modding |
04:25 |
fnrick |
from making a block to entities |
04:25 |
Pilcrow |
fnrick: minetest modding is much easier to get started with than most other games, as it has its own built-in API. not only that, the standard minetest_game is composed entirely of mods, so it's a perfect reference! |
04:25 |
Wuzzy2 |
yes |
04:25 |
fnrick |
I'm searching around to start my adventure on top of the common modding pack... like premade modding pack that I dont have to reinevent the wheel from scratch |
04:26 |
fnrick |
Ok |
04:26 |
fnrick |
I noticed that so I feel like I could do it! |
04:27 |
jordan4ibanez |
We have a bunch of stuff fnrick: http://dev.minetest.net/minetest.register_node http://dev.minetest.net/minetest.register_entity http://dev.minetest.net/LuaEntitySAO https://github.com/PilzAdam/carts https://github.com/PilzAdam/item_drop https://github.com/PilzAdam/farming_plus https://github.com/jordan4ibanez/Hoppers https://github.com/jordan4ibanez/node-gun https://github.com/minetest/minetest_game/tree/master/mods/ |
04:27 |
jordan4ibanez |
default |
04:27 |
|
frecel joined #minetest |
04:28 |
fnrick |
oh neat! |
04:28 |
jordan4ibanez |
Just look through other's people's code if you get stumped, or simply go insane and keep trying stuff even if it crashes the game |
04:28 |
fnrick |
haha |
04:28 |
jordan4ibanez |
This is my favorite help doc though https://github.com/minetest/minetest/blob/master/doc/lua_api.txt |
04:29 |
jordan4ibanez |
I've never read the whole thing, I just search and scan through to see what I can do |
04:29 |
fnrick |
Wow, quite of bit of content there! |
04:30 |
jordan4ibanez |
Yes it is, you'll get it though, just make some nodes at first and have fun with it |
04:31 |
Pilcrow |
fnrick: the easiest example to get started is to look in the games folder and explore minetest_game. it has a 'mods' folder that contains practically everything. if you look in default and edit nodes.lua, you can see how to register your own nodes (blocks). |
04:31 |
jordan4ibanez |
But, the main thing is, you have to think of an idea |
04:31 |
jordan4ibanez |
Also, peace out, goodnight, blah |
04:31 |
Pilcrow |
for example, here's the code for default:stone https://github.com/minetest/minetest_game/blob/master/mods/default/nodes.lua#L147-155 |
04:33 |
fnrick |
ok thanks |
04:34 |
Pilcrow |
then you can check the minetest dev wiki to figure out what can be changed (it has LOTS of information). http://dev.minetest.net/minetest.register_node |
04:36 |
fnrick |
Plenty of information! I'm going to mod a new block, wish me luck! |
04:36 |
fnrick |
Farewell |
04:36 |
Pilcrow |
good luck! :) |
04:46 |
|
VargaD joined #minetest |
04:56 |
|
mccomase joined #minetest |
05:17 |
|
kaeza_ joined #minetest |
05:23 |
|
diemartin joined #minetest |
05:28 |
|
Viper168 joined #minetest |
05:41 |
|
ac_minetest joined #minetest |
06:16 |
|
barrydk joined #minetest |
06:26 |
|
mazal joined #minetest |
06:35 |
|
aheinecke joined #minetest |
06:37 |
|
blaaaaargh joined #minetest |
06:41 |
|
CWz joined #minetest |
06:42 |
technomancy |
Pilcrow: you're back! =) |
06:42 |
technomancy |
I got a chance to look at hoverbot; it's pretty cool |
06:48 |
Pilcrow |
thanks technomancy. I'd like to talk, but I really need to get to bed. will you be online tomorrow? :) |
06:49 |
|
Tux[Qyou] joined #minetest |
06:50 |
technomancy |
Pilcrow: probably some of the day, but happy to carry on some conversation in GH issues too |
06:59 |
|
Tux[Qyou] joined #minetest |
07:07 |
|
Darcidride joined #minetest |
07:16 |
|
Calinou joined #minetest |
07:25 |
|
Cryterion joined #minetest |
07:25 |
|
e1z0 joined #minetest |
07:26 |
|
OldCoder joined #minetest |
07:27 |
|
Amaz joined #minetest |
07:30 |
|
jin_xi joined #minetest |
07:43 |
|
meldrian joined #minetest |
07:45 |
|
OldCoder joined #minetest |
08:00 |
|
Yepoleb_ joined #minetest |
08:01 |
|
H-H-H joined #minetest |
08:13 |
|
Trustable joined #minetest |
08:17 |
|
OldCoder joined #minetest |
08:23 |
|
barrydk joined #minetest |
08:27 |
|
kaeza joined #minetest |
08:28 |
|
Trustable joined #minetest |
08:29 |
|
Trustable joined #minetest |
08:46 |
|
mazal joined #minetest |
08:46 |
|
Haudegen joined #minetest |
08:46 |
|
Telesight joined #minetest |
08:48 |
|
OldCoder joined #minetest |
08:49 |
|
Akagi201 joined #minetest |
08:53 |
|
chchjesus joined #minetest |
09:01 |
|
JamesTait joined #minetest |
09:02 |
JamesTait |
Good morning, people! Happy Friday, and happy World Environment Day! 😃 |
09:08 |
* ThatGraemeGuy |
burns some more fossil fuels to keep warm |
09:16 |
|
OldCoder joined #minetest |
09:30 |
|
jin_xi joined #minetest |
09:35 |
|
Halamix2 joined #minetest |
09:35 |
|
OldCoder joined #minetest |
09:36 |
|
Jordach joined #minetest |
09:41 |
|
Out`Of`Control joined #minetest |
09:44 |
Calinou |
https://forum.minetest.net/viewtopic.php?f=3&t=9172&p=180878#p180824 |
09:44 |
Calinou |
year of desktop linux! |
09:44 |
Calinou |
memes! |
09:44 |
Calinou |
i am better than you! |
09:44 |
Calinou |
/s |
10:03 |
jin_xi |
wut? |
10:08 |
Calinou |
we have yet another person like that, that's what I meant, jin_xi |
10:08 |
Calinou |
they pretend to know better than you and have the perfect solution; so far, all those people failed |
10:09 |
jin_xi |
still, there is a point... |
10:10 |
Calinou |
we have those regularly in the free software community |
10:11 |
Calinou |
we know how they end up :P |
10:42 |
Jordach |
"the best way to get a FOSS community moving is to be a troll and say x is better than y" |
10:42 |
Jordach |
swallow yer feckin pride |
10:48 |
|
OldCoder joined #minetest |
10:56 |
|
TheWild joined #minetest |
11:01 |
Calinou |
with Jordach it'd even be year of desktop BSD :) |
11:04 |
|
Ep1cMaN joined #minetest |
11:23 |
|
lemonade joined #minetest |
11:27 |
|
zeRez joined #minetest |
11:32 |
Amaz |
Does anyone have any idea how to make this code work? http://pastie.org/10225013 |
11:32 |
Amaz |
What I'm trying to do is take the groups from an object, add the group door = 1 to them, and then register the door... |
11:39 |
|
Viper168 joined #minetest |
11:40 |
|
TheWild joined #minetest |
11:48 |
|
OldCoder joined #minetest |
12:00 |
|
ecutruin joined #minetest |
12:03 |
|
mecatninja joined #minetest |
12:04 |
mecatninja |
now I have bald, naked elvs running aroun in only a leather apron in my minetest test world |
12:07 |
Megaf_ |
Hi |
12:08 |
technomancy |
had some ideas about loosening up depends.txt to make it more amenable to a third-party dependency tracker system: https://forum.minetest.net/viewtopic.php?f=5&t=12171&p=180889#p180889 |
12:08 |
technomancy |
any thoughts? |
12:14 |
|
tpe joined #minetest |
12:22 |
|
Cryterion joined #minetest |
12:27 |
* Calinou |
successfully wrote a Go program |
12:27 |
|
LittleJoe joined #minetest |
12:27 |
Calinou |
http://paste.ubuntu.com/11587247/ |
12:27 |
blaaaaargh |
technomancy, personally, I think it would be wasteful to include URLs and the like, plus prone to error |
12:28 |
exio4 |
Calinou: a perfect solution? systemd you mean? |
12:28 |
Calinou |
finds numbers 1-56000 to 1-58000 in 1 second |
12:28 |
Calinou |
(it's a dumb prime number generator) |
12:29 |
blaaaaargh |
We already have an official mod repository, so why not consult it to get download locations? |
12:30 |
Calinou |
the mmdb sucks, it's flawed |
12:30 |
Calinou |
I'd rather have something npm-like with GUI frontends |
12:30 |
Calinou |
npm is awesome |
12:31 |
Calinou |
I wonder if we could use something like bower (preferably something GPL-compatible; npm isn't as it's Artistic 2.0) for our “mpm†(Minetest Package Manager) |
12:31 |
Calinou |
you could use that mpm to install mods, subgames, texture packs, maps maybe |
12:31 |
exio4 |
managing dependencies isn't trivial |
12:32 |
exio4 |
if we rework and get a `package manager`, I'd integrate it with the engine, such that then, libraries, become possible without too much pain |
12:32 |
blaaaaargh |
Calinou, Indeed, it sucks as of now, but I was referring mainly to the underlying database |
12:32 |
Calinou |
npm has dependency management |
12:32 |
Calinou |
so does most package managers today :P |
12:33 |
blaaaaargh |
Also... |
12:33 |
exio4 |
Calinou: npm solves it by copying everything into the package |
12:33 |
* blaaaaargh |
hugs exio4 |
12:33 |
Calinou |
static linking isn't a problem in 2015, it's no longer a taboo :P |
12:33 |
exio4 |
Calinou: that's amazing, nice, cute, as long as vulnerabilities weren't found, or bugs weren't fixed |
12:33 |
* exio4 |
hugs blaaaaargh |
12:33 |
exio4 |
Calinou: static linking isn't the problem |
12:33 |
blaaaaargh |
Dis kb sux |
12:34 |
exio4 |
Calinou: I am talking about the way to solve dependencies on `npm` |
12:34 |
exio4 |
it's not about saying "oh, anything with certain APIs will work" |
12:34 |
exio4 |
it's more like "here have a bundle with the version X.Y.Z of this dependency!" |
12:34 |
exio4 |
if X.Y.Z+1 happened to fix a bug and 4 0day vulns, sad |
12:35 |
exio4 |
Calinou: static linking is a low-level detail, fwiw |
12:35 |
exio4 |
Calinou: you don't even `link` things with node |
12:36 |
Amaz |
Does anyone have any ideas about my question? :) Should I re-paste it? |
12:38 |
kaeza |
Amaz use groups.door=1 minetest.override_item("foo", {groups=groups}) |
12:38 |
Amaz |
Thanks :) |
12:39 |
kaeza |
...or something like that... can't code here ;( |
12:39 |
exio4 |
{groups={door=1}} ? |
12:40 |
kaeza |
exio4, no |
12:40 |
kaeza |
That would override the groups with oly doors discarding the rest |
12:40 |
kaeza |
Only* |
12:41 |
kaeza |
He wants to add a group if I understood correctly |
12:42 |
exio4 |
oh |
12:42 |
exio4 |
add |
12:43 |
Amaz |
Yep :) |
12:44 |
Amaz |
That works brilliantly kaeza! Thanks! |
12:45 |
kaeza |
Sure :) |
12:47 |
|
OldCoder joined #minetest |
12:53 |
kaeza |
Hey, go looks actually readable. Contrary to the bf that is haskell :D |
12:55 |
|
blaise joined #minetest |
12:56 |
blaise |
moin |
12:56 |
blaise |
anyone know anything about this? http://pastebin.com/E3E7cNTD |
12:57 |
Calinou |
http://dl.hugo.pro/benchmarks/prime/ |
12:57 |
Calinou |
Python benchmark available, PyPy-compliant |
12:57 |
blaise |
Calinou: nice. |
12:58 |
Calinou |
pypy main.py & sleep 1; killall pypy |
12:58 |
Calinou |
you can benchmark it like that |
13:00 |
|
rubenwardy joined #minetest |
13:00 |
rubenwardy |
blaise, you need to update your Minetest version |
13:00 |
rubenwardy |
nevermind |
13:00 |
rubenwardy |
I was reading from this: https://github.com/minetest/minetest/blame/master/doc/lua_api.txt#L1668 |
13:01 |
rubenwardy |
But it's been modified since get_us_time() was added. What version are you using, anyway> |
13:01 |
blaise |
I tried that, XD |
13:01 |
rubenwardy |
? |
13:01 |
rubenwardy |
Ok then. |
13:01 |
blaise |
0.4.12 |
13:01 |
blaise |
in fact, I keep everything rather gitish |
13:01 |
rubenwardy |
The only possible situation I can think of is that your computer is poccessed |
13:01 |
blaise |
@B^D |
13:01 |
blaise |
posessed? |
13:02 |
rubenwardy |
lol yes |
13:02 |
kaeza |
Possessed |
13:02 |
blaise |
hehe |
13:02 |
rubenwardy |
or you live in a particularly high neutrino area |
13:02 |
blaise |
Possessied |
13:02 |
blaise |
rubenwardy: considering the recent solar activity, that's a distinct possibility.. XD |
13:03 |
rubenwardy |
hmmm. Are you also using the latest plantslib? |
13:03 |
blaise |
indeederly so |
13:03 |
blaise |
every day I do a git pull |
13:03 |
blaise |
nothing has been updated.. |
13:05 |
blaise |
rubenwardy: is this you? http://git-wt-commit.rubyforge.org/git-wtf |
13:06 |
kaeza |
blaise are you sure you are not running the wrong 'minetest'? |
13:06 |
technomancy |
Calinou: yes, the reason npm can use its "bundle everything" strategy is that JS modules can just be nested in a way that you can carry around a private internal version of a lib |
13:06 |
kaeza |
Also did you run 'make' after pulling? |
13:06 |
technomancy |
lua libraries can do the same thing, but minetest mods cannot afaik |
13:07 |
kaeza |
(It happened to me once) |
13:07 |
technomancy |
anyway, just because we can't do it that way doesn't mean it's not worth doing |
13:07 |
technomancy |
where's the "official" mod repository btw? |
13:07 |
technomancy |
I've been playing with MT for a couple weeks now and have never seen it |
13:08 |
|
AnotherBrick joined #minetest |
13:08 |
blaise |
kaeza: yes, and I always make clean and remake after every pull |
13:08 |
kaeza |
technomancy https://forum.minetest.net/mmdb/ |
13:09 |
kaeza |
blaise, no idea then |
13:09 |
technomancy |
kaeza: thanks |
13:10 |
technomancy |
does it to subgames too? |
13:10 |
kaeza |
Not AFAIK |
13:12 |
blaise |
actually, if you're playing locally, and you place your mods in ~/.minetest/mods/ |
13:12 |
blaise |
then yes |
13:12 |
blaise |
they can be available to all subgames.. and used if enabled |
13:13 |
blaise |
but that magic wont work in worthless operating systems like windows |
13:13 |
blaise |
XD |
13:13 |
rubenwardy |
blaise: I didn't write that, no. Why? |
13:14 |
blaise |
rubenwardy: just curious.. |
13:14 |
technomancy |
well maybe if there's a centralized repo that works well and has a good API then adding URLs to depends.txt doesn't make sense |
13:14 |
|
Player_2 joined #minetest |
13:15 |
rubenwardy |
It's by "William": http://git-wt-commit.rubyforge.org/ |
13:15 |
rubenwardy |
MMDB is broken at the moment :( It should be fixed soon |
13:15 |
rubenwardy |
I also said that 6 months ago |
13:16 |
technomancy |
rubenwardy: is it usually stable enough to use to build automated tooling? |
13:16 |
kaeza |
Lol |
13:17 |
rubenwardy |
You can't current add, edit or comment on anything. It's works as an API though, you can get what's there |
13:17 |
rubenwardy |
AFAIK |
13:18 |
kaeza |
If all else fails, try a forum spider |
13:19 |
exio4 |
kaeza: Go looks readable because it's just the same stuff with a crappy type system, not offering a lot of new stuff |
13:19 |
exio4 |
kaeza: if it was for concurrency, I'd look for erlang, not go |
13:20 |
exio4 |
parallelism isn't Go's thing, either |
13:20 |
technomancy |
lol go's type system |
13:20 |
exio4 |
^ technomancy said the words |
13:20 |
kaeza |
:< |
13:21 |
technomancy |
exio4: "Go has the potential to be the next C." / "You mean it could hold back progress in programming for decades?" / "Yeah, exactly." |
13:21 |
exio4 |
if you say Go is static typed, that it has a type system, it's an insult to real programming languages :D |
13:21 |
exio4 |
technomancy: lol |
13:21 |
exio4 |
technomancy: C was pretty good though, just check when it was used as first! |
13:22 |
technomancy |
true, it's hardly a fair comparison. |
13:22 |
exio4 |
technomancy: people believed C was god's language.. and well, we're here |
13:23 |
exio4 |
anyway, Go is static typed as much as Java, IIRC, no? |
13:24 |
exio4 |
(basically dynamic typed with annotations) |
13:24 |
technomancy |
Java has generics, but yeah they are close. |
13:24 |
technomancy |
they both have null >_< |
13:25 |
exio4 |
Java's generics are so well implemented you could say they aren't generics |
13:25 |
Calinou |
Lua has 5500 “points†in the prime benchmark, LuaJIT 22000 |
13:25 |
Calinou |
(points = highest prime reached in 1 second) |
13:25 |
exio4 |
which prime benchmark? |
13:25 |
Calinou |
I'll put a table up soon |
13:25 |
Calinou |
http://dl.hugo.pro/benchmarks/prime/ |
13:25 |
Calinou |
the Lua port is available |
13:26 |
Calinou |
ports welcome: Java, Scala, Haskell (!), Ruby, Rust, … |
13:26 |
Calinou |
any modern language |
13:26 |
blaise |
hrmm |
13:26 |
Calinou |
even C# |
13:26 |
Calinou |
but please keep in mind: keep your generator dumb, don't use any smart checks, follow existing style |
13:27 |
exio4 |
does it have to be idiomatic code |
13:27 |
exio4 |
or `optimized` code? |
13:27 |
Calinou |
look at the current code |
13:27 |
exio4 |
Calinou: I mean, a loop isn't idiomatic in Haskell |
13:27 |
Calinou |
I don't know about FP stuff, do whatever is the fastest |
13:27 |
Calinou |
but don't waste time overoptimizing |
13:27 |
exio4 |
will write both |
13:27 |
Calinou |
yeah, in doubt write both |
13:27 |
Calinou |
thanks :) |
13:28 |
Calinou |
I might include both |
13:28 |
exio4 |
Calinou: do you have `ghc`, by the way? |
13:28 |
Calinou |
installing it |
13:29 |
technomancy |
for alioth at least it becomes a competition of "which language has the FFI system that has the lowest overhead to call out to C?" which is pretty useless |
13:29 |
Calinou |
how many Haskell compilers are there? are there JIT interpreters? |
13:29 |
|
nore joined #minetest |
13:29 |
Calinou |
technomancy, my benchmark does show obvious patterns, that you can usually find in the real world |
13:29 |
Calinou |
less is more |
13:30 |
exio4 |
Calinou: the `standard` compiler is GHC, there are others out there, with different targets |
13:30 |
exio4 |
GHC is the `state-of-art` compiler in HAskell, though, with 20+ years of engineering on it :P |
13:30 |
technomancy |
Calinou: I worry that focusing on primes would penalize languages that don't have unboxed numerics, which doesn't really matter for application-level coding |
13:30 |
|
Gethiox joined #minetest |
13:30 |
|
Halamix2 joined #minetest |
13:30 |
|
Halamix2_ joined #minetest |
13:31 |
exio4 |
technomancy: shush! |
13:31 |
exio4 |
I was going to make sure the code would use unboxed integers :( |
13:32 |
technomancy |
anyway, what I like to say is there's no such thing as a fast programming language, only fast programs |
13:32 |
exio4 |
^ that too |
13:32 |
exio4 |
programming languages have implementations too |
13:32 |
exio4 |
they are not a thing by themselves |
13:33 |
technomancy |
it can be fun to game though as long as you don't take it too seriously =) |
13:33 |
|
Halamix2 joined #minetest |
13:35 |
exio4 |
I have a problem with the code |
13:36 |
exio4 |
while nb_test < nb ; |
13:36 |
exio4 |
shouldn't that print be "outside"? |
13:36 |
|
Halamix2_ joined #minetest |
13:36 |
exio4 |
it seems it'd be print things too many times |
13:37 |
Calinou |
technomancy, I'll put a disclaimer obviously |
13:37 |
Calinou |
LuaJIT appears quite slower than PyPy, despite LuaJIT generally being faster in real applications |
13:38 |
exio4 |
I mean, it also doesn't show just primes |
13:38 |
Calinou |
exio4, did you test one of the Python/Lua/Go programs? those seem fine to me |
13:38 |
exio4 |
yes, I tested the lua program |
13:38 |
exio4 |
and it generated a number whose last digit is five |
13:38 |
Calinou |
the Lua one might be wrong |
13:38 |
technomancy |
Calinou: using ints in luajit? |
13:39 |
Calinou |
nope, I target 5.1+ |
13:39 |
exio4 |
so it's heavily biased :P |
13:39 |
Calinou |
exio4, send me a fixed version of the Lua one if you know how to do it :P |
13:39 |
technomancy |
Calinou: well that would explain the speed difference |
13:39 |
Calinou |
I can make a 5.3 version if needed |
13:39 |
technomancy |
try pypy with floats =P |
13:39 |
exio4 |
the Go code looks also wrong |
13:40 |
exio4 |
Calinou: what are the first five numbers out of the go program? |
13:40 |
exio4 |
3,5,7,49,49 |
13:41 |
exio4 |
lua ^ |
13:43 |
Calinou |
11,17,23,27,29 |
13:43 |
Calinou |
some numbers are missed? |
13:43 |
exio4 |
27 isn't prime |
13:43 |
Calinou |
and 27 isn't prime indeed |
13:43 |
exio4 |
27 is 3^3 |
13:43 |
Calinou |
13 is prime and not in list |
13:44 |
exio4 |
I wouldn't mind primes missing, but the benchmark is just generating random numbers, which is testing how the compiler optimizes loops |
13:44 |
Calinou |
do you have pointers on how to fix the Go/Lua ones? |
13:44 |
|
AnotherBrick joined #minetest |
13:45 |
exio4 |
I'd split the code first |
13:46 |
exio4 |
also, printing numbers means the bottleneck may become the console |
13:46 |
exio4 |
because the console is slow |
13:47 |
technomancy |
especially if you add erlang to the mix |
13:48 |
exio4 |
Calinou: did you try splitting the isPrime condition to a different function, and try to fix it standalone? |
13:50 |
exio4 |
the smaller the function, the easier it is to fix it :) |
13:51 |
Calinou |
in Go, should I use functions like_this or likeThis? |
13:52 |
exio4 |
I don't know, I guess underscores are idiomatic there |
13:52 |
Calinou |
looks like it should be likeThis… |
13:52 |
Calinou |
https://golang.org/doc/effective_go.html#functions |
13:59 |
exio4 |
Calinou: I wrote the non-idiomatic version of a prime number generator, takes a number as argument, -1 means `keep generating`, n specifies the max value, http://dpaste.com/0289NVX |
14:01 |
Calinou |
quite short, but looks cryptic to me |
14:01 |
Calinou |
I'm still working on Go one |
14:01 |
Calinou |
starting to get the hang of Go :P |
14:02 |
exio4 |
Calinou: yes, that isn't idiomatic |
14:05 |
exio4 |
an idiomatic version would be something like http://dpaste.com/01BRM98 |
14:06 |
exio4 |
(the main difference is that the `idiomatic` one generates (a relatively-cheap yet not free) lazy list with elements, instead of "naively" going through the values |
14:07 |
exio4 |
Calinou: try both on your computer, if you have some time |
14:07 |
exio4 |
the non idiomatic version does hella extra work |
14:08 |
Calinou |
is Haskell always that short and cryptic? |
14:10 |
exio4 |
it's not cryptic :P |
14:10 |
technomancy |
this one even has type annotations; those are optional |
14:10 |
exio4 |
I wrote that type annotation for unboxing reasons |
14:10 |
technomancy |
ah nice |
14:10 |
CWz |
is it me or minecraft devs got sloppy after being purchased by microsoft? |
14:11 |
rubenwardy |
example? |
14:11 |
Calinou |
they were always sloppy, I guess |
14:11 |
technomancy |
CWz: they weren't sloppy before? |
14:11 |
exio4 |
technomancy: it'd use Integer |
14:11 |
CWz |
there like 3 bug fix version releases in a row |
14:12 |
Halamix2 |
http://dpaste.com/00QA7PM ? |
14:12 |
Calinou |
thanks Halamix2 |
14:12 |
Calinou |
will test |
14:12 |
AnotherBrick |
does anyone know how to contact GunshipPenguin, owner of two (or more servers) ? |
14:12 |
rubenwardy |
If you build a shrine, he'll be summoned |
14:13 |
rubenwardy |
!fmu GunshipPenguin |
14:13 |
rubenwardy |
!fmusr GunshipPenguin |
14:13 |
rubenwardy |
!help |
14:13 |
MinetestBot |
https://github.com/sfan5/minetestbot-modules/blob/master/COMMANDS.md |
14:13 |
exio4 |
Calinou: prime :: Int -> Bool means pretty much "prime has type Int to Bool"; then, all fn list means that the predicate `fn` must be True on `all` elements of list |
14:13 |
rubenwardy |
heh, it's been removed |
14:13 |
AnotherBrick |
!seen GunshipPenguin |
14:13 |
MinetestBot |
AnotherBrick: Sorry, I haven't seen gunshippenguin around. |
14:14 |
sfan5 |
rubenwardy: find forum user? |
14:14 |
|
Cryterion joined #minetest |
14:14 |
CWz |
I heard yesterday that Hungry game server was griefed |
14:14 |
exio4 |
(\x -> n `mod` x /= 0) is a lambda / anonymous function, takes a y as parameter an says thatthe modulo of n % x is distinct to zero |
14:14 |
AnotherBrick |
yeah |
14:14 |
AnotherBrick |
that's why I'm looking for him |
14:14 |
CWz |
Probably hipster trolls |
14:15 |
exio4 |
2:[3,5..s] is a list that has the values 2, 3, 5, 7, ... until s |
14:15 |
exio4 |
s is defined as the ceil of the square root of the number n |
14:16 |
exio4 |
loop, instead, basically defines a local variable xs, if z is -1, it'll start from x, to "infinite" (x, x+1, x+2, ... x+n ...) |
14:16 |
Calinou |
Halamix2, 130000 in 1 second, impressive |
14:16 |
exio4 |
if it is not, it'll be a list from x to z, [x, x+1, x+2, ..., z-2, z-1, z] |
14:16 |
Calinou |
I guess it's a corner case because Rust isn't that fast usually |
14:16 |
rubenwardy |
!ffu GunshipPenguin |
14:16 |
technomancy |
it's not? |
14:16 |
rubenwardy |
~ffu GunshipPenguin |
14:17 |
exio4 |
Calinou: unboxed integers, it's also kinda fast |
14:17 |
exio4 |
it has unboxed closures dammit! they must be fast! :p |
14:17 |
Calinou |
btw: https://attractivechaos.github.io/plb/ |
14:17 |
Calinou |
doesn't have Rust |
14:17 |
rubenwardy |
https://forum.minetest.net/memberlist.php?mode=viewprofile&u=9079 |
14:17 |
rubenwardy |
AnotherBrick ^^ |
14:17 |
rubenwardy |
AnotherBrick ^ ^ |
14:18 |
AnotherBrick |
yay |
14:18 |
AnotherBrick |
thx |
14:18 |
exio4 |
the equivalent of loop in Haskell is either forever $ for IO actions and/or an infinite list when it comes to values |
14:19 |
|
est31 joined #minetest |
14:19 |
exio4 |
Rust mandates TCO, right? |
14:19 |
Calinou |
Total Cost of Ownership? ;) |
14:19 |
est31 |
no tail something optimisation |
14:20 |
est31 |
so that you can replace loops with recursion |
14:20 |
est31 |
and have no memory penalty |
14:20 |
est31 |
nor perf penalty |
14:21 |
rubenwardy |
> let |
14:21 |
Calinou |
dank meme indeed, rubenwardy |
14:21 |
Calinou |
</Jordach> |
14:21 |
rubenwardy |
Well, not as bad as "otherwise! |
14:21 |
rubenwardy |
* "overwise" |
14:22 |
exio4 |
otherwise is just defined as True, it's for cosmetic reasons |
14:22 |
rubenwardy |
in haskel? |
14:22 |
exio4 |
some people call it `else` |
14:22 |
exio4 |
yes rubenwardy |
14:22 |
rubenwardy |
oh, that would make sence |
14:22 |
rubenwardy |
*sense |
14:22 |
exio4 |
guards take arbitrary expressions |
14:22 |
rubenwardy |
Like NULL = 0 |
14:23 |
exio4 |
f | C1 = E1 | C2 = E2 | ... |
14:23 |
exio4 |
Cn may be an arbitrary expression, that includes constants like `True` |
14:24 |
|
The_Loko joined #minetest |
14:24 |
|
alket joined #minetest |
14:30 |
exio4 |
Calinou: one thing, would you consider this http://dl.hugo.pro/benchmarks/prime/lua/init.lua code easy to understand if you didn't know the semantics of `while`, assignment and %? |
14:31 |
exio4 |
while nb_test < 2 do, while that condition is true do this thing? while that condition is false? |
14:31 |
exio4 |
%? is that modulo? integer division? |
14:33 |
exio4 |
nb_test = nb_test + 1, does it changes the value up there? or.. what? |
14:33 |
exio4 |
Calinou: TCO is Tail Call Optimization |
14:33 |
exio4 |
Calinou: basically recursion of the form `return f(x)` gets optimized to a `jump` to f |
14:35 |
exio4 |
implementing FSM is a nice usecase |
14:39 |
est31 |
FSM? Arr, god is no program! |
14:43 |
Calinou |
exio4, probably not |
14:43 |
|
OnkV joined #minetest |
14:46 |
exio4 |
Calinou: the same goes for any language out there |
14:46 |
exio4 |
Calinou: now that you know what a while loop means, understanding it becomes `trivial` (relatively), yet unknown concepts are still hard! |
14:49 |
exio4 |
any language concept* |
15:04 |
|
hmmmm joined #minetest |
15:08 |
Calinou |
OK, my Go program is fixed thanks to palige |
15:08 |
Calinou |
70000 in 1 second |
15:08 |
Calinou |
not bad |
15:10 |
Halamix2 |
:) |
15:11 |
exio4 |
Calinou: may you benchmark mine? also, console! |
15:11 |
exio4 |
text output is a bottleneck |
15:12 |
Calinou |
exio4, I use this: ./binary & sleep 1; kill binary |
15:12 |
Calinou |
seems to be appropriate |
15:12 |
|
alket joined #minetest |
15:12 |
|
blaise joined #minetest |
15:12 |
exio4 |
uh, sleep 1 is not accurate |
15:12 |
exio4 |
do it within the program, too |
15:13 |
exio4 |
generate primes until 1000000 |
15:13 |
Calinou |
yeah that's doable too |
15:13 |
Calinou |
and time it |
15:13 |
Calinou |
I'd rather have something “higher is better†though |
15:16 |
exio4 |
use 1/seconds for generating N primes as the score |
15:16 |
exio4 |
still, you have to account the console output |
15:16 |
exio4 |
console output is extremely slow |
15:18 |
|
Halamix2 left #minetest |
15:20 |
|
Jordach joined #minetest |
15:20 |
blaise |
wow |
15:21 |
blaise |
so the plants_lib issue I was having went away when I installed VanessaEs HDX textures |
15:21 |
blaise |
lmao |
15:21 |
blaise |
isn't that awesome? |
15:21 |
exio4 |
Calinou: also, running the benchmark 20 or 50 times, and take the average + least + max time |
15:22 |
exio4 |
that's.. weird blaise |
15:28 |
|
Shackra joined #minetest |
15:29 |
|
WSDguy2014 joined #minetest |
15:44 |
|
phantombeta joined #minetest |
15:51 |
|
phantombeta joined #minetest |
15:56 |
|
Myrl-chan joined #minetest |
15:56 |
Myrl-chan |
Hi! |
15:57 |
Myrl-chan |
I'll try to run minetest on a P4 with a VIA chipset. |
16:05 |
blaise |
Myrl-chan: oh yeah? |
16:06 |
Myrl-chan |
I wanna see how this works. |
16:06 |
Myrl-chan |
I'll be really amazed. |
16:15 |
|
ac_minetest joined #minetest |
16:28 |
|
OldCoder joined #minetest |
16:28 |
|
Cryterion joined #minetest |
16:38 |
|
est31 joined #minetest |
16:38 |
Myrl-chan |
How do I get out of minimal development test..? |
16:39 |
est31 |
you mean you want to use minetest_game? |
16:39 |
Myrl-chan |
Yes. |
16:39 |
est31 |
how have you obtained the engine? |
16:39 |
Myrl-chan |
Through my package manager. If I understand you correctly. |
16:40 |
Myrl-chan |
I pressed this button that looks like 3 axes |
16:40 |
est31 |
yes |
16:40 |
Myrl-chan |
And now I'm in minimal development test and I can't get out. |
16:40 |
est31 |
thats minimal development test |
16:40 |
est31 |
if minetest_game is installed then there is another button left to it |
16:41 |
Myrl-chan |
Doesn't seem so. |
16:41 |
est31 |
so you say before you wasnt in minimal development test? |
16:41 |
Myrl-chan |
Yes. |
16:41 |
est31 |
are you inside the singleplayer tab? |
16:42 |
Myrl-chan |
Yes |
16:42 |
est31 |
no buttons there? |
16:43 |
est31 |
only the button with the arrows? |
16:43 |
Myrl-chan |
Yeah |
16:43 |
est31 |
is there a button that looks like this https://raw.githubusercontent.com/minetest/minetest/master/textures/base/pack/logo.png |
16:44 |
Myrl-chan |
Nope. |
16:44 |
Myrl-chan |
I guess I'll recompile it. |
16:44 |
est31 |
are there games inside your "games" folder? |
16:45 |
est31 |
or only minimal |
16:46 |
Myrl-chan |
Only minimal. |
16:46 |
|
ecutruin1 joined #minetest |
16:46 |
est31 |
then you have to install minetest game |
16:47 |
est31 |
you know how to use git? |
16:48 |
est31 |
if not thats no issue |
16:48 |
est31 |
just download minetest game here: https://github.com/minetest/minetest_game/archive/master.zip |
16:48 |
Myrl-chan |
Yeah, I know how to use git. |
16:48 |
Myrl-chan |
It isn't playable on a VIA chipset though, I think 10 FPS or so. |
16:49 |
Myrl-chan |
I'll definitely be looking in this once I get a better computer though. |
16:49 |
Myrl-chan |
Thanks for the support, est31. |
16:51 |
|
Player_2 joined #minetest |
16:52 |
VanessaE |
est31: he was in that "limbo" state when no game at all is selected. |
16:53 |
Myrl-chan |
VanessaE: Yeah. |
16:53 |
Myrl-chan |
I think that's it. |
16:53 |
VanessaE |
a fresh install with no user preferences will put the user into that state. click the only game that's installed, and you're "stuck" there because there's no route back into "limbo" |
16:53 |
Myrl-chan |
I pressed the "new game" and it had an error message. |
16:54 |
VanessaE |
that's a bug for sure - the engine should auto-select a game if it's in that state. |
16:54 |
VanessaE |
should be made to* |
16:54 |
Myrl-chan |
Yep. |
17:03 |
|
ShadowBot joined #minetest |
17:03 |
|
ShadowBot joined #minetest |
17:06 |
|
Shackra_ joined #minetest |
17:08 |
CWz |
oh look shadowbot is back. |
17:14 |
* blaise |
hugs VanessaE |
17:16 |
VanessaE |
hi |
17:17 |
CWz |
VanessaE: Shadowninja is back maybe he can save inchra. probably not though if recall correctly reclaiming domains that have gone expired cost more then renewal |
17:17 |
VanessaE |
CWz: that's already been fixed. |
17:17 |
CWz |
inchra.net is back? |
17:18 |
VanessaE |
yes |
17:24 |
|
Ataron joined #minetest |
17:26 |
|
Krock joined #minetest |
17:28 |
|
CoconutOfDeath joined #minetest |
17:31 |
ShadowNinja |
CWz: It costs the same -- unless your registrar is cheating you or something. |
17:39 |
|
Niebieski joined #minetest |
17:40 |
|
frecel joined #minetest |
17:41 |
|
Taoki joined #minetest |
17:43 |
|
LittleJoe joined #minetest |
17:50 |
|
Viper168 joined #minetest |
18:05 |
|
hmmmm joined #minetest |
18:15 |
|
bobomb joined #minetest |
18:15 |
bobomb |
if a node is replaced by set_node, is after_destruct() called on the old node? |
18:25 |
VanessaE |
yes |
18:25 |
VanessaE |
because removing a node is equal to setting it to air |
18:26 |
|
err404 joined #minetest |
18:26 |
|
CWz joined #minetest |
18:27 |
|
Trustable joined #minetest |
18:27 |
|
LedInfrared joined #minetest |
18:32 |
|
fusion44 joined #minetest |
19:10 |
|
hoodedice joined #minetest |
19:19 |
|
ac_minetest joined #minetest |
19:22 |
bobomb |
is on_dig the same as on_destruct? |
19:22 |
bobomb |
or is it only if a player digs the node, not if other operations remove it? |
19:22 |
bobomb |
or is it not even about destroying the node, more like punching it? |
19:23 |
VanessaE |
+ |
19:23 |
VanessaE |
oops |
19:23 |
VanessaE |
it's only for when a player digs a node yeah |
19:24 |
VanessaE |
a mod just doing a set_node() call won't trigger that |
19:24 |
VanessaE |
(but should trigger on_destruct) |
19:24 |
bobomb |
i see. thanks. |
19:24 |
Calinou |
prime number generator in LuaJIT: highest number 55889 in 1 second! |
19:24 |
Calinou |
this makes it close to Rust |
19:24 |
VanessaE |
test for 10+ seconds |
19:25 |
VanessaE |
a 1-second test isn't enough to get above margin of error. |
19:25 |
|
Thron joined #minetest |
19:27 |
bobomb |
to compare results wouldn't you compare the times it takes to get to a certain prime, not the prime you get to in a certain time? |
19:27 |
Calinou |
both can be done, I think |
19:27 |
Calinou |
it's just a bit simpler this way, and this way you get an “higher is betterâ€Â result |
19:27 |
Calinou |
instead of lower is better |
19:28 |
bobomb |
if a node is registered with "drop" that replaces what it would have become in the inventory otherwise? |
19:28 |
VanessaE |
yep |
19:28 |
VanessaE |
but only when it's dug |
19:29 |
bobomb |
of course. what's the best way to make a node drop nothing or not be in the inventory? |
19:29 |
VanessaE |
that's how stone with iron gives you an iron lump on-dig, for example |
19:29 |
bobomb |
right |
19:29 |
bobomb |
drop = "" ? |
19:30 |
VanessaE |
set, drop = "" I think |
19:30 |
bobomb |
ok |
19:30 |
VanessaE |
better to have it drop something that's all but useless though |
19:30 |
Calinou |
when are commas mandatory in Lua? I don't get it :/ |
19:30 |
VanessaE |
Calinou: because they're part of a table? |
19:30 |
Calinou |
is that the only reason? |
19:31 |
VanessaE |
that's the only thing they're used for afaik |
19:31 |
kahrl |
between function arguments too |
19:31 |
VanessaE |
oh yes |
19:31 |
VanessaE |
duh :P |
19:31 |
VanessaE |
Calinou: the real question is, what else would you use as a delimiter? |
19:32 |
Calinou |
whitespace ( ͡° ͜ʖ ͡°) |
19:32 |
Calinou |
</Python> |
19:32 |
VanessaE |
newline isn't good enough because you can (and should be able to) concat between lines too |
19:32 |
Calinou |
yeah, right |
19:32 |
Calinou |
I'd prefer ; over , though |
19:32 |
Calinou |
just like != over ~= |
19:32 |
VanessaE |
actually, doesn't ; work also? |
19:33 |
VanessaE |
I could swear I've seen someone using ; for table delim |
19:34 |
VanessaE |
hm, only as a statement separator like in C. |
19:35 |
VanessaE |
that aside, I agree that != is better than ~= |
19:35 |
VanessaE |
(to me, ~= reads as "approximately equal") |
19:38 |
|
TheBonsai_ joined #minetest |
19:40 |
Calinou |
same |
19:40 |
Calinou |
if only languages were actually Unicode-compliant |
19:41 |
Calinou |
we could write if string ≠“Quote†|
19:41 |
Calinou |
:3 |
19:41 |
Calinou |
imagine people wondering how to type ≠|
19:41 |
VanessaE |
lol |
19:42 |
bobomb |
when you use table.insert in lua, what is the best way to get the key of that insert? |
19:42 |
VanessaE |
that's easy.. compose, =, / --> ≠|
19:42 |
VanessaE |
:) |
19:42 |
Calinou |
Shift + AltGr + ) here |
19:42 |
VanessaE |
bobomb: it always inserts at the end of the table if you don't specify otherwise |
19:42 |
VanessaE |
so #tablename will give you the index of last item in the table |
19:43 |
VanessaE |
(assuming you're not working with sparse tables) |
19:43 |
bobomb |
oh. is that why #tablename doesn't work when the keys are strings? |
19:43 |
VanessaE |
yep |
19:43 |
bobomb |
is that what sparse table means? |
19:43 |
VanessaE |
not exactly |
19:44 |
VanessaE |
a sparse table is one where you might have 1=foo, and then 4=bar, 5=baz and then 8=blah |
19:44 |
VanessaE |
(with no 2, 3, 6, or 7) |
19:44 |
VanessaE |
# just doesn't work with string-keyed tables |
19:45 |
bobomb |
got it. thanks |
19:45 |
VanessaE |
(for that, btw, use table.getn() ) |
19:51 |
bobomb |
is there a chance that a table could have another insert done to it from another operation between the time that insert is done #table is called? |
19:51 |
Calinou |
preliminary results of the prime generator: http://paste.ubuntu.com/11595216/ |
19:51 |
Calinou |
Go is the fastest |
19:51 |
bobomb |
why can't table.insert just return the new id |
19:52 |
Calinou |
I have a C one around, but it'd be cheating since it uses GMP and a table :P |
19:52 |
|
_Esteban joined #minetest |
19:52 |
VanessaE |
bobomb: because it never needs to. it always inserts at the end of the table unless you explicitly give it an index location |
19:52 |
bobomb |
i need more faith |
19:53 |
VanessaE |
so you can use table.getn() or # as needed if you're not using a sparse table, and if you supplied an index, you already know where it went. |
19:54 |
VanessaE |
nothing is going to add to or otherwise modify the table unless you coded it to do that, or you're running another mod that accesses the same table. |
19:54 |
VanessaE |
(and the latter case is quite rare. I think only moreblocks+stairsplus is the only major project that relies on that) |
19:57 |
bobomb |
ok. new question. does lua support this sort of thing modname.tablename[id].list[1] |
19:59 |
VanessaE |
it should |
20:00 |
VanessaE |
never tried burying references that deep before |
20:00 |
|
diemartin joined #minetest |
20:00 |
|
kaeza joined #minetest |
20:00 |
|
fusion44_ joined #minetest |
20:00 |
VanessaE |
as long as every element in tablename[] has at least as many sub-elements as you call for in any one list[] argument |
20:01 |
|
Halamix2 joined #minetest |
20:01 |
bobomb |
so setting table[k] = nil should only be done with string-keyed tables or it will create a sparse table? |
20:01 |
bobomb |
otherwise use table.remove? |
20:01 |
VanessaE |
i.e. if you ask for tablename[5].list[4] should exist if tablename[3].list[4] does for example. |
20:02 |
kaeza |
greetings |
20:02 |
VanessaE |
you can set foo[bar] = nil if you want, but it can mess up your table size expectations |
20:02 |
VanessaE |
hey kaeza |
20:02 |
VanessaE |
eh, that previous sentence came out weird but whatever |
20:03 |
VanessaE |
bobomb: bottom line is, if you rely on the size of a table for something, and there's any chance your code will do tablename[foo] = nil where foo is not the last element in the table, use table.getn() to measure its size. |
20:03 |
VanessaE |
or if the table uses string keys |
20:04 |
|
Thron joined #minetest |
20:04 |
VanessaE |
otherwise, # should be safe. |
20:04 |
bobomb |
is there a built in lua function for finding a key given a value in a table? |
20:04 |
bobomb |
can't find one |
20:04 |
VanessaE |
not that I can recall. |
20:05 |
VanessaE |
you'll have to manually traverse the table. |
20:05 |
kaeza |
bobomb, easily done with a `pairs` loop, but there isn't one built-in |
20:05 |
bobomb |
why i like string indexes |
20:05 |
VanessaE |
string, number... use whatever indexing makes the most sense in your project :) |
20:06 |
VanessaE |
plants_lib uses a position hash for its main block cache table indexes, for example. |
20:06 |
bobomb |
finding i much prefer a table of cells to be built like cell_list[minetest.pos_to_string(pos)] = true to table.insert(cell_list, pos) |
20:06 |
VanessaE |
and numeric indexes for the entries in those tables. |
20:07 |
kaeza |
bobomb, if you can also use `hash_node_position` in that case |
20:07 |
bobomb |
oh reading on that. |
20:07 |
kaeza |
it returns a unique 48 bit number given a pos |
20:08 |
VanessaE |
(by that I mean, blockcache[2517435].entry[1], blockcache[2517435].entry[2], blockcache[83463820].entry[1], blockcache[83463820].entry[2], etc) |
20:08 |
kaeza |
(assuming you want whole nodes and not fractional positions) |
20:08 |
bobomb |
yes. is it faster than pos_to_string? |
20:08 |
bobomb |
and smaller i guess |
20:09 |
kaeza |
probably, but you'd be better to profile if you care about performance |
20:09 |
bobomb |
profile? |
20:10 |
kaeza |
"time" it |
20:11 |
bobomb |
oh i see. yes i will. |
20:13 |
|
blaise joined #minetest |
20:13 |
* blaise |
is back |
20:24 |
Calinou |
http://dl.hugo.pro/benchmarks/ |
20:28 |
|
s-l-teichmann joined #minetest |
20:30 |
blaise |
hey, uhrm |
20:30 |
blaise |
has the recipe for a nuclear reactor changed? |
20:33 |
s-l-teichmann |
Calinou: You should not use println() in your Go version. println() writes to stderr not stdout, its for debugging and bootstrapping http://golang.org/pkg/builtin/#println Better use Printf from the fmt package. Something like http://play.golang.org/p/ord0ljimEu |
20:37 |
Calinou |
s-l-teichmann, was not aware, thanks |
20:42 |
|
uroboro joined #minetest |
20:50 |
|
s-l-teichmann joined #minetest |
21:05 |
|
rjs232323 joined #minetest |
21:09 |
rjs232323 |
is nodeupdate function predefined natively by minetest ? |
21:09 |
rjs232323 |
I see people using it, but I'm not sure what is its for |
21:28 |
blaise |
hey, uhrm |
21:28 |
blaise |
anyone here used the quary? |
21:28 |
blaise |
the HV Quary? |
21:29 |
blaise |
where is the output? |
21:29 |
VanessaE |
the output comes out the top, using pipeworks tubes |
21:30 |
VanessaE |
rjs232323: nodeupdate is used to force falling/attached nodes to fall if they didn't yet (e.g. sand, gravel, apples) and I think it forces a lighting update too |
21:30 |
VanessaE |
it is defined in one of minetest's builtin/ lua files. |
21:34 |
blaise |
cool |
21:35 |
blaise |
so it fills it's hold, and then purges? if I'm reading the lua properly? |
21:35 |
VanessaE |
yep, to a degree |
21:35 |
VanessaE |
it's supposed to purge periodically as well |
21:35 |
VanessaE |
(or I thought it did) |
21:35 |
blaise |
and if not, we have popout syndrom? |
21:36 |
VanessaE |
I don't remember. it probably just stops digging |
21:36 |
blaise |
D: |
21:53 |
blaise |
meh, I need the anchor mod |
21:54 |
blaise |
:G |
21:56 |
blaise |
holy crap! |
21:56 |
blaise |
it's included in technic now? |
21:56 |
blaise |
awesome sauce! |
21:58 |
rjs232323 |
VanessaE: i see |
21:58 |
rjs232323 |
I'm still suck in meta:set_string and get_string |
21:58 |
rjs232323 |
there is a strange behavior with it |
22:00 |
|
Haudegen joined #minetest |
22:00 |
rjs232323 |
everytime I assign something to a position, it overwrite previous values on the different position... bug? |
22:01 |
|
GeHa joined #minetest |
22:07 |
blaise |
VanessaE: are we able to use teleporting tubes to fuel the reactor core yet? |
22:07 |
blaise |
or, any tubes? |
22:10 |
rjs232323 |
http://pastebin.com/hThwsUnx Here's my finding with this strnage bug |
22:10 |
VanessaE |
blaise: I don't recall. |
22:12 |
|
Weedy joined #minetest |
22:14 |
|
est31 joined #minetest |
22:30 |
|
NekoGloop joined #minetest |
22:30 |
|
phantombeta joined #minetest |
22:39 |
|
phantombeta joined #minetest |
22:52 |
|
Xenoth joined #minetest |
22:53 |
|
phantombeta joined #minetest |
22:57 |
|
ADFENO joined #minetest |
23:10 |
|
rickmcfarley joined #minetest |
23:11 |
|
Thron joined #minetest |
23:23 |
blaise |
it's really too bad this never made it to github.. https://forum.minetest.net/viewtopic.php?f=11&t=4587 |
23:26 |
|
Player_2 joined #minetest |
23:27 |
|
phantombeta joined #minetest |
23:28 |
kaeza |
rjs232323, get_meta(name) ? |
23:29 |
Niebieski |
I wonder if anyone has bought Minecraft and plays Minetest. |
23:29 |
NekoGloop |
I play minetest occasionally |
23:29 |
Niebieski |
Do you play Minecraft ? |
23:30 |
kaeza |
rjs232323, what are you trying to do? |
23:30 |
est31 |
blaise, I can upload it to github if you want |
23:30 |
NekoGloop |
yes I play minecraft |
23:31 |
Niebieski |
Why do you play Minetest then ? |
23:31 |
kaeza |
rjs232323, also, you're using a colon instead of a dot in the minetest.get_meta call (it must be a period) |
23:31 |
|
sythe joined #minetest |
23:32 |
kaeza |
(line 39 in your paste) |
23:32 |
blaise |
I also have minecraft |
23:32 |
blaise |
and I chose minetest instead |
23:32 |
blaise |
it's better |
23:33 |
blaise |
I can't even play minecraft on more than half my machines |
23:33 |
blaise |
it runs better, it has better graphics |
23:33 |
blaise |
minetest, that is.. |
23:33 |
blaise |
minecraft is a thing of the past |
23:34 |
blaise |
I think it's the java that hurts it the most |
23:34 |
blaise |
minetest is coded in ANSI C, if I'm not mistaken.. |
23:34 |
est31 |
c++ |
23:34 |
Niebieski |
C++. |
23:35 |
est31 |
using stdlib, no boost nor irrlicht (for basic things like containers) |
23:35 |
blaise |
not to mention, I dont condone the use of microsoft products. |
23:39 |
rickmcfarley |
I played minetest before buying Minecraft, but I haven't even touched Minecraft since Microsoft bought Mojang. since then I avoid any proprietary game |
23:39 |
|
jin_xi joined #minetest |
23:41 |
Niebieski |
is it because you hate MS or you think that MS going to ruin it ? |
23:42 |
rickmcfarley |
I hate ms |
23:42 |
blaise |
Niebieski: I'm going with both |
23:42 |
blaise |
option a, and option b |
23:42 |
ADFENO |
Could someone point me to the so called "intllib" cited by various "depends.txt" documents found in various mods for Minetest? |
23:42 |
rickmcfarley |
It taught me to distrust even nonfree games |
23:42 |
rickmcfarley |
games used to be my software freedom compromise |
23:42 |
kaeza |
ADFENO, https://github.com/kaeza/minetest-inrllib |
23:43 |
kaeza |
eh wrong link |
23:43 |
blaise |
kaeza: what are that? |
23:43 |
kaeza |
https://github.com/kaeza/minetest-intllib |
23:44 |
kaeza |
blaise, what is what? |
23:44 |
ADFENO |
Oh, thank you very much. :D |
23:44 |
kaeza |
yw |
23:45 |
Niebieski |
I don't think that MS going to risk on Minecraft, they will let the developers continue their work freely. |
23:47 |
rjs232323 |
Kaeza: Ah? I tho I see everyone using colon when calling meta get meta |
23:47 |
rjs232323 |
Would that explain why it behaves strangely? |
23:48 |
kaeza |
rjs232323, `minetest.get_meta`, not `meta:get_meta` |
23:48 |
rjs232323 |
minetest:get_meta(name); |
23:48 |
rjs232323 |
this is what I'm using |
23:48 |
kaeza |
no |
23:48 |
kaeza |
use a dot there |
23:48 |
rjs232323 |
could you explain the difference between minetest:get_meta and minetest.get_meta? |
23:48 |
rjs232323 |
is it a referencing thing? |
23:48 |
kaeza |
in Lua, a call `foo:bar(asdf)` is syntactic sugar for `foo.bar(foo, asdf)` |
23:49 |
rjs232323 |
ah |
23:49 |
kaeza |
so you're basically calling `minetest.get_meta(minetest, ...) |
23:49 |
kaeza |
+` |
23:49 |
kaeza |
it's Lua's way to implement OO |
23:50 |
rjs232323 |
ok |
23:50 |
rjs232323 |
strange |
23:51 |
|
DMackey joined #minetest |
23:51 |
kaeza |
you'll get used to it :) |
23:51 |
rjs232323 |
I will have to change my script to dot |
23:51 |
rjs232323 |
I have to cook |
23:51 |
rjs232323 |
i'll be back |
23:51 |
rjs232323 |
I appricate your insight, that might be the issue after all |
23:51 |
kaeza |
also, you're using `name`; maybe you meant `pos` ? |
23:57 |
est31 |
blaise, why would be github better than a zip file? |
23:57 |
est31 |
I mean, I know its easier to update once you have a git origin |