| Time |
Nick |
Message |
| 00:27 |
|
chchjesus joined #minetest-dev |
| 00:29 |
|
shadowzone joined #minetest-dev |
| 00:30 |
|
Babizera joined #minetest-dev |
| 00:35 |
|
Zera joined #minetest-dev |
| 00:44 |
|
chchjesus joined #minetest-dev |
| 01:04 |
|
ZeraRoox joined #minetest-dev |
| 01:05 |
|
Fritigern joined #minetest-dev |
| 01:39 |
|
est31 joined #minetest-dev |
| 02:06 |
|
rickmcfarley joined #minetest-dev |
| 02:36 |
|
deltib joined #minetest-dev |
| 02:53 |
|
ZeraRoox joined #minetest-dev |
| 02:56 |
|
Player_2 joined #minetest-dev |
| 03:06 |
|
chchjesus joined #minetest-dev |
| 04:05 |
|
Tablet_One joined #minetest-dev |
| 05:08 |
|
Miner_48er joined #minetest-dev |
| 06:20 |
|
Megaf joined #minetest-dev |
| 06:22 |
|
jin_xi joined #minetest-dev |
| 06:30 |
|
Hunterz joined #minetest-dev |
| 06:36 |
hmmmm |
today was not a very minetesty day |
| 06:37 |
VanessaE |
that could change :P |
| 06:37 |
VanessaE |
unfortunately it's late :-/ |
| 06:39 |
hmmmm |
:/ |
| 06:39 |
hmmmm |
so busy lately |
| 06:39 |
hmmmm |
hopefully that'll change |
| 06:41 |
est31 |
what do you ppl think, which hash alg for speed improvements? |
| 06:41 |
VanessaE |
what's the target for the hash? |
| 06:41 |
est31 |
I want to make a std::unordered_map |
| 06:41 |
VanessaE |
recipes? |
| 06:41 |
est31 |
yes |
| 06:41 |
VanessaE |
oh |
| 06:42 |
hmmmm |
eh |
| 06:42 |
VanessaE |
idk, md5? :) |
| 06:42 |
hmmmm |
est31, about that... I would hold off if I were you |
| 06:42 |
est31 |
my idea would be xxhash |
| 06:42 |
est31 |
why hmmmm? |
| 06:42 |
hmmmm |
I make everything that should be a hashtable into a std::map, and then when the time comes to switch to C++11, we go through all instances of std::map and see if it's able to get changed to std::unordered_map |
| 06:42 |
hmmmm |
and same with std::set |
| 06:43 |
VanessaE |
*looks up xxhash* wow, that IS fast |
| 06:43 |
hmmmm |
C++11 should be coming soon(tm) (we're waiting on debian, i think...) |
| 06:43 |
est31 |
yea this month |
| 06:43 |
hmmmm |
you serious? |
| 06:43 |
est31 |
unordered_map is specified < c++11 |
| 06:43 |
VanessaE |
you sure deb stable will gain this? |
| 06:44 |
VanessaE |
I mean without big reinstalls etc |
| 06:45 |
hmmmm |
VanessaE: I don't really know... but once gcc 4.6 or newer is on all supported distros/platforms, there's no really good excuse for holding back as long as mingw works |
| 06:45 |
hmmmm |
switch to C++11 if only for the speed gains |
| 06:45 |
est31 |
or no, you are right, its c++1 only |
| 06:45 |
VanessaE |
hmmmm: that's fair, it's just you know how long some hosts can take to update their stuff |
| 06:45 |
est31 |
c++11* |
| 06:45 |
hmmmm |
yeah... not 100% sure what the plan is |
| 06:46 |
VanessaE |
when I was shopping around recently, I swear I was seeing places where Debian 6 was still being offered |
| 06:46 |
est31 |
weird doc ----> http://en.cppreference.com/w/cpp/container/unordered_map |
| 06:46 |
VanessaE |
(in addition to 7 of course) |
| 06:46 |
est31 |
other doc, sais its > c++11 -------> http://www.cplusplus.com/reference/unordered_map/unordered_map/ |
| 06:46 |
hmmmm |
huh? |
| 06:47 |
hmmmm |
est31: the cppreference.com link has "(since C++11)" there |
| 06:47 |
hmmmm |
in green, off to the right of the declaration |
| 06:48 |
est31 |
yes, I thought it was only about the hash part |
| 06:49 |
est31 |
would have been a very breaking way to introduce new params |
| 06:49 |
jin_xi |
hm working on particles i noticed something |
| 06:49 |
hmmmm |
agreed |
| 06:49 |
jin_xi |
it seems like for every particle spawner that is expiring by itself we leak an id |
| 06:49 |
est31 |
so then it will be a map |
| 06:49 |
hmmmm |
figures as much |
| 06:49 |
jin_xi |
so i wonder where to keep track of those on server side |
| 06:49 |
est31 |
with a comment // change this to unordered_map when c++11 can be used |
| 06:50 |
hmmmm |
in fact i'm pretty sure all of the current particle code had memory leaks |
| 06:50 |
hmmmm |
merging that has to be my biggest regret so far |
| 06:50 |
jin_xi |
here: https://github.com/minetest/minetest/blob/master/src/server.cpp#L2956 |
| 06:51 |
hmmmm |
that is so cringeworthy |
| 06:51 |
jin_xi |
m_particlespawner_ids is only handled with explicit add and delete of spawners, as expiration happens only on clients |
| 06:51 |
hmmmm |
i'm wondering if it's worth fixing particlespawners |
| 06:52 |
hmmmm |
jin_xi, i think you should scrap the entire current implementation minus the network packet format |
| 06:52 |
jin_xi |
thats what im doing |
| 06:52 |
hmmmm |
thank you. |
| 06:52 |
jin_xi |
still server needs to know spawners, mostly to give them unique ids |
| 06:53 |
hmmmm |
hehehe |
| 06:53 |
hmmmm |
:) |
| 06:54 |
hmmmm |
I didn't get around to writing up the proposed design, but basically hud, particle spawners, formspecs, and sounds are four easy targets for client side modding |
| 06:55 |
hmmmm |
the plan is to remove them from server-side completely, reimplement the current apis in lua, and use the ObjDefManager setup to manage them |
| 06:56 |
jin_xi |
so i ignore this problem just as its being done now and work on other details |
| 06:56 |
hmmmm |
well, no |
| 06:56 |
hmmmm |
there's really no telling when client side modding will happen |
| 06:57 |
jin_xi |
then i need help to come up with a solution |
| 06:57 |
est31 |
vessels should be client side too. |
| 06:57 |
jin_xi |
i would just increment a number and wrap on overflow... |
| 06:57 |
hmmmm |
that's doable |
| 06:57 |
hmmmm |
how big is the ID field? |
| 06:58 |
hmmmm |
32 bit in the Server:: methods, it seems, but I think it's incredibly inconsistent |
| 06:58 |
hmmmm |
if I recall it's 16 bit inside the packets |
| 07:01 |
jin_xi |
another highly annoying thing is that effin camera_offset |
| 07:02 |
jin_xi |
i wonder what glitches thats fixing |
| 07:03 |
VanessaE |
you mean the every-200-nodes thing? |
| 07:04 |
|
nrzkt joined #minetest-dev |
| 07:04 |
VanessaE |
that was added to counter irrlicht rende rounding errors or some such, that used to happen once you get out more than about 2km from the map center. |
| 07:04 |
VanessaE |
render* |
| 07:06 |
nrzkt |
hmmmm: experienced the replacement of our JMutexAutoLock with std::lock_guard on a separate branch, that's okay. Replacing also JMutex with a JMutex: std::mutex works great too :) |
| 07:06 |
hmmmm |
what? |
| 07:07 |
jin_xi |
yes i know, but i wonder what kind of errors it caused. because the offset thing is not without its problems. |
| 07:07 |
hmmmm |
I don't quite get what you mean by that, but std::mutex is C++11. |
| 07:07 |
nrzkt |
yes, you talked about C++11 i see in the logs :p |
| 07:07 |
jin_xi |
for one it breaks helicopter mod, attachments get torn and players teleported |
| 07:07 |
nrzkt |
then i tell you i tested it with minetest core (and also i use it on my own server) |
| 07:07 |
hmmmm |
nrzkt, I am glad it works great for you but I would much prefer that we don't make such a drastic change |
| 07:08 |
hmmmm |
there are subtle differences we may not know about... not so with std::unordered_map |
| 07:08 |
nrzkt |
the change is simple in fact |
| 07:08 |
hmmmm |
one has much higher potential for disaster because its errors are subtle by nature |
| 07:08 |
nrzkt |
i don't experienced std::unordered_map, only test std::mutex and std::lock_guard |
| 07:08 |
hmmmm |
you thought changing std::list to std::vector was easy |
| 07:08 |
hmmmm |
and look at how many bugs that caused |
| 07:09 |
nrzkt |
because only the usage was wrong because i haven't read carefully one function, right |
| 07:09 |
hmmmm |
it's not that simple. it's NEVER that simple! and we can't go around breaking things willy nilly because our upstream version must have some semblance of stability |
| 07:09 |
hmmmm |
I am not going to rush things any more |
| 07:10 |
nrzkt |
but i can tell you the std::mutex and std::lock_guard change can be done safely, i'm using in since ... 2 weeks on my server without any problem. I don't tell we must switch it |
| 07:10 |
hmmmm |
if a huge change like that is going to rot away too quickly due to merge conflicts, well then, break it up into small pieces |
| 07:10 |
nrzkt |
i tell this is possible, that's a little bit different :p |
| 07:10 |
hmmmm |
I don't care how long you tested it on your own server |
| 07:10 |
nrzkt |
and i don't care that you tell me te be slow, because i don't tell i will merge it into master. |
| 07:10 |
hmmmm |
the network changes were tested for a MONTH on multiple peoples' servers and problems were still found |
| 07:11 |
hmmmm |
nrzkt: I didn't quite understand your last sentence. are you saying that you're going to commit it without approval? |
| 07:12 |
nrzkt |
hmmmm: wake up. You tell exactly the opposite |
| 07:13 |
hmmmm |
erm... whatever. |
| 07:13 |
nrzkt |
please reread what i said slowly |
| 07:13 |
hmmmm |
I tried to and I didn't understand |
| 07:13 |
VanessaE |
hmmmm: I think he means, "because i don't tell [you] i will merge it into master" |
| 07:13 |
nrzkt |
i said: the switch is possible, i tested it. I don't say, i will merge it (soon or not). |
| 07:14 |
hmmmm |
oh |
| 07:14 |
hmmmm |
"I didn't ever say that I was going to merge it to upstream" |
| 07:15 |
nrzkt |
my english isn't perfect, i know :p but i try to be understandable :p |
| 07:15 |
hmmmm |
that particular sentence had subtle meanings. |
| 07:15 |
nrzkt |
i'm not subtile |
| 07:15 |
nrzkt |
simpler, faster, efficient :p |
| 07:15 |
hmmmm |
yea... being subtle is necessary when we're trying to not break things |
| 07:16 |
jin_xi |
so, some more questions, anyone knows what could cause textures to be upside down and black instead of transparent? |
| 07:16 |
hmmmm |
jin_xi, try enable_clean_transparent = false |
| 07:16 |
nrzkt |
in fact, when we are talking together, be subtle is not very efficient :p clear sentences are a good communication process |
| 07:17 |
hmmmm |
well subtility is not good for purposes of communication |
| 07:18 |
hmmmm |
being subtle when making code changes is |
| 07:18 |
nrzkt |
only for politicians |
| 07:18 |
hmmmm |
that's not subtility, that's doublespeak |
| 07:18 |
hmmmm |
:/ |
| 07:19 |
hmmmm |
so back to the original topic: I'm all for changing JMutexAutoLock, but don't do it all at once |
| 07:19 |
hmmmm |
change one class at a time, gradually |
| 07:19 |
nrzkt |
i will push a modified version of #2526, which only init the nodepos with static_spawnpoint value if set |
| 07:19 |
ShadowBot |
https://github.com/minetest/minetest/issues/2526 -- findSpawnPos should use the static_spawnpoint to set the player position by nerzhul |
| 07:20 |
hmmmm |
we already went through this when we switched from irrlicht containers to stl containers |
| 07:20 |
nrzkt |
in fact hmmmm: we must change JMutex.Lock and JMutex.Unlock and add JMutex.lock and JMutex.unlock |
| 07:20 |
hmmmm |
there was a lot of disasterous breakage and bugs galore because everything was done all at once and it was hard to track |
| 07:20 |
nrzkt |
lock_guard is simple, it only call lock/unlock it's a stupid class |
| 07:20 |
VanessaE |
nrzkt: er... why the upper/lowercase change? |
| 07:21 |
nrzkt |
because of std::lock_guard |
| 07:21 |
nrzkt |
if we have std::lock_guard<JMutex> |
| 07:21 |
hmmmm |
btw |
| 07:21 |
nrzkt |
the lock_guard will call JMutex.lock at creation and JMutex.unlock at destruction |
| 07:21 |
hmmmm |
why make findSpawnPos a member of Server |
| 07:22 |
nrzkt |
because only server call it |
| 07:22 |
hmmmm |
if you're doing that, why not remove the map parameter |
| 07:22 |
hmmmm |
and use m_map |
| 07:22 |
nrzkt |
good idea :) |
| 07:22 |
nrzkt |
m_map = m_env->getServerMap() , right ? |
| 07:22 |
hmmmm |
yea |
| 07:24 |
nrzkt |
we don't have ServerMap member in Server call |
| 07:24 |
nrzkt |
but i will call the pointer into the function |
| 07:26 |
nrzkt |
okay for https://github.com/nerzhul/minetest/commit/dbc739b6a584856155575dc4580709fc332da72b ? |
| 07:26 |
hmmmm |
by the way, are you certain that static_spawnpoint doesn't have a default setting anywhere? |
| 07:27 |
nrzkt |
➜ minetest git:(master) ✗ grep -R "static_spawnpoint" src |
| 07:27 |
nrzkt |
src/server.cpp:g_settings->getV3FNoEx("static_spawnpoint", nodeposf); |
| 07:27 |
nrzkt |
src/server.cpp:// Default position is static_spawnpoint |
| 07:27 |
hmmmm |
maybe it is being set in Lua, i don't know |
| 07:27 |
hmmmm |
just checking |
| 07:28 |
nrzkt |
http://pastie.org/10071244 |
| 07:29 |
hmmmm |
wwow good one |
| 07:29 |
hmmmm |
this is why we review commits before we commit them |
| 07:29 |
hmmmm |
you're copying the entire ServerMap |
| 07:30 |
nrzkt |
that's right |
| 07:30 |
hmmmm |
i think you forgot a & |
| 07:30 |
nrzkt |
yeah, i'm adding it |
| 07:31 |
hmmmm |
what is the desired behavior of static_spawnpoint exactly? |
| 07:32 |
hmmmm |
isn't it supposed to override the random search for a spawnpoint? |
| 07:32 |
nrzkt |
here this permit to fix in some rare cases player beeing teleported to 0,0,0 because of this function call |
| 07:32 |
VanessaE |
always teleport the user there after death or on a new user sign-on |
| 07:32 |
VanessaE |
simple. |
| 07:32 |
nrzkt |
after death and new user, right |
| 07:32 |
VanessaE |
it has no other purpose than that, in a vanilla setup. |
| 07:32 |
hmmmm |
why don't you return immediately if getV3FNoEx("static_spawnpoint") returns true, then? |
| 07:33 |
nrzkt |
it was the original PR |
| 07:33 |
hmmmm |
i thought that's what we wanted |
| 07:33 |
nrzkt |
but i don't know if we should do this or find a good place |
| 07:33 |
nrzkt |
if you think we want this, okay for a return, like the original PR |
| 07:33 |
hmmmm |
i don't know what we want |
| 07:33 |
hmmmm |
i just want it to work |
| 07:34 |
hmmmm |
it's up to you i guess |
| 07:34 |
nrzkt |
here we doesn't have a player teleported to 0,0,0 if static_spawnpoint is set |
| 07:34 |
nrzkt |
but we can have a random position after a respawn |
| 07:35 |
nrzkt |
or, default, the static_spawnpoint. If the goal of static_spawnpoint is to spawn every time at spawn, then we return immediately. |
| 07:35 |
nrzkt |
it's how i understand it |
| 07:36 |
hmmmm |
that's how i understood it too |
| 07:36 |
nrzkt |
then we will return directly |
| 07:36 |
hmmmm |
but, unless i'm completely mistaken, that code in the PR doesn't do anything with static_spawnpoint since it gets overwritten by the random search loop |
| 07:37 |
nrzkt |
but in some case the random search loop doesn't match |
| 07:37 |
hmmmm |
oh yeah, I see those |
| 07:37 |
hmmmm |
the two continue statements |
| 07:37 |
nrzkt |
and we return a basic v3s16, with 0,0,0 |
| 07:38 |
hmmmm |
maybe this can be two separate settings |
| 07:38 |
hmmmm |
fallback_spawnpoint and static_spawnpoint |
| 07:38 |
hmmmm |
static_spawnpoint, if set, returns immediately with that static spawnpoint |
| 07:38 |
hmmmm |
fallback_spawnpoint, on the other hand, is the default spawnpoint used if no suitable random spawnpoint can be found |
| 07:38 |
hmmmm |
sound good or not? |
| 07:39 |
nrzkt |
it could be good to add it in a separate commit, why not :) |
| 07:39 |
hmmmm |
ok then |
| 07:39 |
VanessaE |
hmmmm: well, if you could set one, why not just set the other?> |
| 07:39 |
VanessaE |
I mean you as the user editing your config |
| 07:40 |
nrzkt |
https://github.com/nerzhul/minetest/commit/3f8024330ae9d5f92418fa4b3025638d5a7e0b37 for the static_spawnpoint |
| 07:40 |
VanessaE |
really, it just seems like overkill for a singleplayer instance - in a multiplayer server, you'll almost always have a static_spawnpoint set |
| 07:41 |
jin_xi |
so regarding expiring spawners on server: where does such stuff go? regardless of how ids are done, server needs to keep track to free expired ones |
| 07:43 |
jin_xi |
im thinking of a list of id and expiration time and a check, only wondering where this kind of housekeeping is done in server step |
| 07:43 |
hmmmm |
well, I guess it could just scan for the lowest available ID |
| 07:43 |
nrzkt |
a last review before a push hmmmm ? ^ |
| 07:43 |
hmmmm |
nothing really does need to be fancy |
| 07:43 |
hmmmm |
VanessaE: dunno, you as a server owner should make the decision on how you want the behavior to be |
| 07:43 |
hmmmm |
nrzkt, looks good |
| 07:44 |
VanessaE |
hmmmm: agreed - I'm just saying I don't think you'll see too many people actually using the feature. but ok |
| 07:44 |
jin_xi |
hmmmm: exactly. i wonder where the right place to check time in server is as im not familiar |
| 07:45 |
hmmmm |
wait, why do they need to expire after a certain time? |
| 07:46 |
hmmmm |
isn't that the mod's decision to make it expire? forgive my ignorance i don't quite know how they work |
| 07:46 |
ZeraRoox |
hmmmm Please check your private msg |
| 07:46 |
hmmmm |
ZeraRoox: why are you private messaging me |
| 07:46 |
hmmmm |
I don't check private messages btw |
| 07:47 |
hmmmm |
just tell me here what it is |
| 07:47 |
jin_xi |
yes, mods can have them expire with fixed time set. server makes spawner with id, passes to client, client handles expiration. -> id leaked and never reused |
| 07:47 |
jin_xi |
thats current situation |
| 07:47 |
hmmmm |
jin_xi, what kind of resolution does it need? |
| 07:47 |
ZeraRoox |
When you have time check your email |
| 07:48 |
hmmmm |
uh, okay |
| 07:48 |
ZeraRoox |
is about a project |
| 07:48 |
jin_xi |
hmmmm: not very precise, time is in seconds on lua side |
| 07:49 |
hmmmm |
there's nothing fundamentally wrong with time(NULL) |
| 07:49 |
hmmmm |
you could use that... |
| 07:49 |
|
err404 joined #minetest-dev |
| 07:50 |
hmmmm |
you can't use irrlicht's timer because that's client-side |
| 07:50 |
jin_xi |
ok and forgive my ignorance, but where is server step housekeeping done? |
| 07:51 |
hmmmm |
lol |
| 07:51 |
hmmmm |
in Server::step |
| 07:51 |
hmmmm |
but I think what you're actually interested in is the environment's step |
| 07:52 |
nrzkt |
Server::AsyncRunStep |
| 07:52 |
nrzkt |
which calls Environment::step |
| 07:52 |
hmmmm |
Particle spawners should be part of the Environment |
| 07:52 |
jin_xi |
thanks. i thought putting particle spawners in 25 line server::step looked off |
| 07:52 |
hmmmm |
at least in theory |
| 07:53 |
hmmmm |
jin_xi, you should use dtime instead by the way |
| 07:53 |
hmmmm |
instead of using other timers |
| 07:54 |
jin_xi |
yes thats what i want to do. |
| 07:54 |
VanessaE |
jin_xi: a note: there's a glitch with the expiration time, |
| 07:54 |
VanessaE |
if set to zero, particles don't move. |
| 07:55 |
jin_xi |
so my plan is to replace list of ids on serverside with list of struct with id and expiration time |
| 07:55 |
jin_xi |
then properly expire expired ids |
| 07:56 |
jin_xi |
VanessaE: is that on my PR or current glitch? |
| 07:56 |
VanessaE |
it's a current thing |
| 07:56 |
VanessaE |
not in your PR |
| 07:56 |
VanessaE |
just mentioning it since you're fiddling around with the code. |
| 07:56 |
jin_xi |
ok because all current rendering and stepping will be gone. im deleting this code |
| 07:57 |
VanessaE |
thought you might want to take a look at it |
| 07:57 |
VanessaE |
oh? |
| 07:58 |
jin_xi |
anyways, this server id thing needs to be fixed regardless of particle rendering situation |
| 07:59 |
VanessaE |
this is 2587? |
| 07:59 |
jin_xi |
idk what bugs it may cause, but it accumulates some memory for every spawner deleted by expiration |
| 08:00 |
jin_xi |
yes |
| 08:00 |
VanessaE |
ok |
| 08:00 |
VanessaE |
I'll leave you to it then |
| 08:00 |
VanessaE |
sorry to interrupt |
| 08:06 |
* VanessaE |
wanders off to bed, clearly too tired for rational thought :P |
| 08:06 |
VanessaE |
night. |
| 08:12 |
|
blaze joined #minetest-dev |
| 08:12 |
hmmmm |
it's past 4am, but i'm perfectly up and feeling at my best right about now |
| 08:12 |
hmmmm |
there's something seriously wrong with me |
| 08:15 |
|
Calinou joined #minetest-dev |
| 08:24 |
|
leat joined #minetest-dev |
| 08:24 |
|
blaze` joined #minetest-dev |
| 08:27 |
Megaf |
Hi everyone |
| 08:40 |
|
kilbith joined #minetest-dev |
| 08:55 |
|
eeew joined #minetest-dev |
| 09:16 |
|
err404 joined #minetest-dev |
| 09:48 |
|
OldCoder joined #minetest-dev |
| 09:59 |
Megaf |
devs are never online when we need them |
| 10:04 |
Megaf |
/home/minetest/minetest/src/irrlichttypes.h:34:22: fatal error: irrTypes.h: No such file or directory |
| 10:05 |
Megaf |
cmake . -DRUN_IN_PLACE=1 -DBUILD_CLIENT=0 -DBUILD_SERVER=1 -DIRRLICHT_INCLUDE_DIR=/home/minetest/Deps/Irrlicht/ |
| 10:05 |
Megaf |
minetest mt:~/minetest$ find /home/minetest/Deps/Irrlicht/ | grep irrTypes.h |
| 10:05 |
Megaf |
/home/minetest/Deps/Irrlicht/include/irrTypes.h |
| 10:06 |
Megaf |
The file is there |
| 10:06 |
|
leat joined #minetest-dev |
| 10:06 |
Megaf |
help? |
| 10:06 |
Megaf |
^ Calinou VanessaE |
| 10:06 |
Megaf |
fresh git clone from master |
| 10:07 |
Megaf |
-- Could NOT find Irrlicht (missing: IRRLICHT_LIBRARY) |
| 10:08 |
Megaf |
hm |
| 10:14 |
sfan5 |
Megaf: by your logic -DIRRLICHT_INCLUDE_DIR=/ should also work |
| 10:15 |
sfan5 |
Megaf: hint: you obviously need to point IRRLICHT_INCLUDE_DIR directly at the directory with irrTypes.h |
| 10:15 |
Calinou |
yes, you forgot include/ |
| 10:15 |
Megaf |
sfan5: I've been doing the very same way for three years... |
| 10:15 |
sfan5 |
no |
| 10:15 |
sfan5 |
this doesn't work and has never worked |
| 10:16 |
sfan5 |
Megaf: -DIRRLICHT_SOURCE_DIR=<irrlicht dir (without include/)> could have worked though |
| 10:16 |
sfan5 |
(IRRLICHT_INCLUDE_DIR vs IRRLICHT_SOURCE_DIR) |
| 10:17 |
Megaf |
Ok, I have changed my cmake script in fact, let me see the old script that is know to work |
| 10:17 |
Megaf |
known* |
| 10:18 |
Megaf |
sfan5: anyway, it doesnt work when I point the include to /home/minetest/Deps/Irrlicht/include and source to /home/minetest/Deps/Irrlicht/ either |
| 10:18 |
sfan5 |
what does it say when you point the include to /home/minetest/Deps/Irrlicht/include |
| 10:21 |
Megaf |
This is in fact the line that I have been using for 3 years -DIRRLICHT_SOURCE_DIR=/home/minetest/Deps/Irrlicht/ |
| 10:22 |
Megaf |
It worked till yesterday |
| 10:22 |
Megaf |
now cmake says -- Could NOT find Irrlicht (missing: IRRLICHT_LIBRARY) |
| 10:22 |
Megaf |
anyway, it's working again now |
| 10:23 |
Megaf |
go figure |
| 10:23 |
sfan5 |
it should work like that |
| 10:23 |
sfan5 |
you don't need the library for server builds |
| 10:23 |
Megaf |
I know, I attempted to include that because source wasnt working |
| 10:25 |
|
leat joined #minetest-dev |
| 10:25 |
Megaf |
sfan5: I think it was working yesterday because I had actually compile Irrlicht once, and today I removed the compiled version by a fresh source snapshot |
| 10:26 |
sfan5 |
iirc irrlicht_source_dir only finds the library on windows |
| 10:40 |
Megaf |
kilbith: my server is back online, thanks to sfan5. Join now and see if the bug is fixed, please. |
| 10:44 |
kilbith |
Megaf, the public one ? |
| 10:44 |
Megaf |
yep, the main on |
| 10:44 |
Megaf |
one |
| 10:44 |
Megaf |
mt.megaf.info 30003 or 8080 |
| 10:47 |
kilbith |
Megaf, this seems fixed now |
| 10:47 |
Megaf |
cool |
| 10:54 |
|
leat joined #minetest-dev |
| 10:58 |
Megaf |
is there a way to make cmake/gcc optimze the binary as much as possible? For speed, not for size, runtime speed |
| 10:58 |
Megaf |
or is that the same as optimizing for size/speed? |
| 10:58 |
Megaf |
Compile time is not an issue |
| 11:01 |
|
Lunatrius joined #minetest-dev |
| 11:14 |
sfan5 |
Megaf: -DCMAKE_C_FLAGS="-O3 -march=native -mtune=native" -DCMAKE_CXX_FLAGS="-O3 -march=native -mtune=native" not that the resulting binary might not run on other processors |
| 11:15 |
Megaf |
sfan5: I'd like to optimize my server, I do not intend to run it on other places |
| 11:15 |
Megaf |
Thanks |
| 11:27 |
Megaf |
sfan5: is not even compatible with its own CPU |
| 11:27 |
Megaf |
$ bin/minetestserver |
| 11:27 |
Megaf |
Illegal instruction |
| 11:29 |
|
est31 joined #minetest-dev |
| 11:30 |
|
Zeno` joined #minetest-dev |
| 11:47 |
est31 |
Zeno`, what do you think? http://pastie.org/10071522 |
| 11:48 |
Zeno` |
I think it looks like a diff |
| 11:49 |
Zeno` |
and that PAssword has a typo |
| 11:50 |
Zeno` |
PASSWORD_SIZE * 2 ??? |
| 11:51 |
est31 |
no idea why or how |
| 11:52 |
est31 |
ah |
| 11:53 |
est31 |
yes |
| 11:53 |
est31 |
ofc |
| 11:53 |
est31 |
first old password, then the new one |
| 11:53 |
est31 |
and the first byte is already strippped |
| 11:55 |
est31 |
I'll merge if you dont mind |
| 11:55 |
est31 |
or push |
| 11:57 |
Megaf |
!server Megaf |
| 11:57 |
ShadowBot |
Megaf: server [--{name,address,ip,players,ping,port} <value>] |
| 11:57 |
Megaf |
wrong channel, sorry |
| 11:58 |
est31 |
do you agree? |
| 11:59 |
Zeno` |
err you're removing just the errorstream thing? |
| 11:59 |
est31 |
yes |
| 12:00 |
Zeno` |
well it's not an error |
| 12:00 |
Zeno` |
so yeah |
| 12:00 |
est31 |
I can't find that "if nobody objects, then you can push minor stuff rule", so I dont know whether it only affects subsystem maintainers |
| 12:01 |
Zeno` |
if it's a trivial fix just mention here that's you're going to do it, wait a bit, and push/merge |
| 12:01 |
Zeno` |
that* |
| 12:01 |
Zeno` |
I have nfi why that line is even there so, yeah, that would be a trivial change |
| 12:03 |
est31 |
my theory is that its debug stuff which was forgotten to be removed |
| 12:03 |
Zeno` |
even so it should have been verbosestream |
| 12:03 |
Zeno` |
it's obviously wrong |
| 12:04 |
|
SopaXorzTaker joined #minetest-dev |
| 12:07 |
est31 |
sfan5, can you give me (freshly promoted core-dev) a blue dot? |
| 12:09 |
|
nrzkt joined #minetest-dev |
| 12:09 |
nrzkt |
est31: approved. |
| 12:10 |
Zeno` |
lol I've already approved |
| 12:10 |
Zeno` |
what is a blue dot? |
| 12:10 |
nrzkt |
yes, i also approve it because it's on my network handlers :p |
| 12:10 |
Zeno` |
oh |
| 12:10 |
Zeno` |
+v |
| 12:10 |
nrzkt |
but it's not necessary, it's very trivial :p |
| 12:10 |
est31 |
yes |
| 12:11 |
Zeno` |
no blue dot for you1 |
| 12:11 |
Zeno` |
hehe |
| 12:11 |
est31 |
its bad because every time a user changes their password, the error is transmitted in public server chat |
| 12:12 |
est31 |
"error" |
| 12:12 |
Zeno` |
yes very bad |
| 12:13 |
Zeno` |
hey, your first merge and you didn't stuff it up |
| 12:13 |
Zeno` |
nice :P |
| 12:13 |
est31 |
lol |
| 12:13 |
Zeno` |
I am supposed to be in bed :( |
| 12:14 |
Zeno` |
Doctor says I have influenza |
| 12:14 |
Megaf |
That means, a simple flue |
| 12:14 |
Megaf |
just dont move too much and drink plenty of water Zeno` |
| 12:14 |
Zeno` |
you can die from the flu |
| 12:14 |
Megaf |
flu* |
| 12:15 |
Zeno` |
so I dunno if it's "simple" :P |
| 12:15 |
Zeno` |
can I drink beer instead? |
| 12:15 |
Megaf |
I'm afraid you can't |
| 12:15 |
Megaf |
you can drink natural juices |
| 12:16 |
Zeno` |
good, because I don't feel like moving or drinking beer anyway heh |
| 12:16 |
Zeno` |
I' |
| 12:16 |
Zeno` |
I'm outa here.. I can hardly think |
| 12:16 |
Zeno` |
O/ |
| 12:19 |
Megaf |
!up stuff |
| 12:19 |
ShadowBot |
Megaf: Resolving stuff failed: [Errno -2] Name or service not known |
| 12:30 |
|
rubenwardy joined #minetest-dev |
| 12:33 |
|
srifqi joined #minetest-dev |
| 12:38 |
sfan5 |
est31: there's your blue dot |
| 12:53 |
est31 |
thanks |
| 13:08 |
|
selat joined #minetest-dev |
| 13:56 |
|
SopaXorzTaker joined #minetest-dev |
| 14:03 |
|
luizrpgluiz joined #minetest-dev |
| 14:11 |
|
luizrpgluiz left #minetest-dev |
| 14:11 |
|
MinetestForFun joined #minetest-dev |
| 14:17 |
|
est joined #minetest-dev |
| 14:24 |
|
leat joined #minetest-dev |
| 14:33 |
|
MinetestForFun joined #minetest-dev |
| 14:42 |
rubenwardy |
What technical things limit us to +/- 31,000? |
| 14:43 |
rubenwardy |
Is it the size in bytes of position serials? |
| 14:43 |
rubenwardy |
like, you'd have to break the blobs to increase the size. |
| 14:46 |
est |
yea seems so |
| 14:46 |
rubenwardy |
I guess it's a case of bigger serials means bigger maps but bigger file sizes. |
| 14:47 |
est |
not neccessarily |
| 14:47 |
est |
bigger maps I mean |
| 14:47 |
est |
network will be a bit more verbose yes |
| 14:47 |
rubenwardy |
So you have to compromise between bigger maps and bigger files |
| 14:47 |
rubenwardy |
Really? |
| 14:47 |
rubenwardy |
Yeah, networking would be a problem too. |
| 14:48 |
rubenwardy |
It seems they currently use 2 bytes for each coordinate, so 6 bytes for the position serial. |
| 14:48 |
est |
sorry got it wrong, maps will be bigger of course, but file sizes wont be |
| 14:48 |
est |
I'm not sure though |
| 14:48 |
est |
perhaps they will |
| 14:49 |
rubenwardy |
Blobs don't store position serials, of course? It's just the fields for x/y/z in the MapBlock table |
| 14:49 |
est |
yes |
| 14:49 |
est |
usually, the mapblock table is referenced by serials |
| 14:49 |
est |
inside the db |
| 14:49 |
est |
and on the network I think too |
| 14:50 |
rubenwardy |
#1845 hasn't been merged, so it's just one field for position, as a serial. Instead of three. |
| 14:50 |
ShadowBot |
https://github.com/minetest/minetest/issues/1845 -- Split block position into separate fields in SQLite3 database by ShadowNinja |
| 14:53 |
rubenwardy |
The current map size is fun for the majority of players, but not for making countries etc in game. |
| 14:53 |
rubenwardy |
*fine |
| 14:53 |
rubenwardy |
It's mostly just a willy waving competitions |
| 14:55 |
|
SopaXorzTaker joined #minetest-dev |
| 15:26 |
|
hmmmm joined #minetest-dev |
| 15:29 |
Megaf |
rubenwardy: est: What is the technical problem/issue with infinite maps? Can't we just make it grow on demand? |
| 15:31 |
est |
the problem is that node positions are stored in a value that has certain limits, and network protocol and other places need it to not exceed the limits |
| 15:32 |
Megaf |
est: I understand that, but isnt Minecraft map infinite? |
| 15:32 |
est |
it is definitely possible for players or mobs to walk around areas past the 30k, just no voxel world |
| 15:35 |
Megaf |
hm, it is not |
| 15:35 |
Megaf |
http://gaming.stackexchange.com/questions/19179/what-happens-when-you-reach-the-edge-of-the-world |
| 15:35 |
Megaf |
first answer |
| 15:37 |
rubenwardy |
In Minecraft, we should disregard range where is starts to get floating point errors |
| 15:37 |
est |
how important is the feature that you can use aliases in craft recipes? |
| 15:37 |
est |
should I try to retain it? |
| 15:40 |
rubenwardy |
An older version of the food mod used it to add support, but no longer. It's probably best to - will it cause problems? Can you convert from alias to real when registering a recipe, and then there is no need to look it up in get craft recipes? |
| 15:41 |
rubenwardy |
ie: no alias support in get_crafts(), but doesn't matter because aliases are removed in register_craft |
| 15:42 |
|
err404 joined #minetest-dev |
| 15:42 |
est |
I'll try to retain it |
| 15:46 |
rubenwardy |
So in Minecraft you can walk in one direction from spawn 1000x longer. |
| 15:47 |
rubenwardy |
* shrugs * |
| 15:48 |
Megaf |
rubenwardy: yep, but you can't go very deep |
| 15:48 |
Megaf |
nor very high |
| 15:48 |
|
err404 joined #minetest-dev |
| 15:49 |
Megaf |
anyway, I would really like to have a world 100000x100000x100000 instead of 32000x32000x32000 |
| 15:50 |
Megaf |
Is that (10^5)*3? |
| 15:51 |
rubenwardy |
(10^5)^3 for the area |
| 15:51 |
rubenwardy |
Horizontal distance is more useful than vertical, but having a limit of 255 is just taking the p. |
| 15:52 |
rubenwardy |
It should be at least 5,000 to allow for nice layers |
| 15:53 |
Megaf |
what if the max size of the world of limited by the CPU instruction? |
| 15:53 |
rubenwardy |
huh |
| 15:53 |
rubenwardy |
? |
| 15:53 |
* Megaf |
feels liek he doesnt know what he is talking about |
| 15:53 |
kilbith |
do we *really* need more than 32K³ nodes ? biggest servers does not even have 10% of the map explored... |
| 15:53 |
Megaf |
s/liek/like |
| 15:53 |
kilbith |
better to focus on interconnected multi-worlds instead |
| 15:53 |
Megaf |
kilbith: well, you'd be surprized the distance players walk on my server |
| 15:54 |
kilbith |
and how is that useful ? |
| 15:54 |
Megaf |
how useful is it to limit peoples urge to explore? |
| 15:54 |
Megaf |
let them explore |
| 15:55 |
Megaf |
and I do agree on interconnected worlds by the way |
| 15:55 |
Megaf |
and I even have some idea on how would that be possible |
| 15:55 |
sfan5 |
Megaf: how useful is it to break everyones existing maps |
| 15:55 |
Megaf |
sfan5: no need to break... Just expand |
| 15:55 |
Megaf |
keep the existing coord and add more |
| 15:56 |
sfan5 |
the map format is not designed for that |
| 15:56 |
sfan5 |
it would need conversion |
| 15:57 |
rubenwardy |
The map size is sufficient for most uses, but not for big projects like real world maps. 32 KM isn't that much in real life. |
| 15:57 |
est |
btw what do you imagine with the "interconnected worlds" thing? |
| 15:57 |
Megaf |
rubenwardy: I was thinking about that actually |
| 15:58 |
kilbith |
est, ask to RBA when he will be there |
| 15:58 |
kilbith |
was in his plan |
| 15:58 |
Megaf |
est: one very hacky way of doing it, and "very not good" is using a shared database by n servers |
| 15:59 |
Megaf |
each server could have its own limits of map |
| 15:59 |
Megaf |
within the global map |
| 16:05 |
Megaf |
or they could just have their own database and send stuff to each other |
| 16:06 |
Megaf |
each one could have its own 32K*3 map, the coord could be relative, |
| 16:09 |
|
err404 joined #minetest-dev |
| 16:10 |
|
selat joined #minetest-dev |
| 16:10 |
|
roniz joined #minetest-dev |
| 16:16 |
|
SopaXorzTaker joined #minetest-dev |
| 16:17 |
|
selat joined #minetest-dev |
| 16:17 |
|
Jordach joined #minetest-dev |
| 16:22 |
|
Tablet_One joined #minetest-dev |
| 16:45 |
|
Zuruck joined #minetest-dev |
| 16:46 |
|
Zuruck left #minetest-dev |
| 16:51 |
|
proller joined #minetest-dev |
| 16:52 |
|
proller joined #minetest-dev |
| 17:01 |
|
Wayward_One joined #minetest-dev |
| 17:09 |
|
proller joined #minetest-dev |
| 17:20 |
est |
why again are we serializing craft definitions? |
| 17:20 |
est |
and whole managers |
| 17:20 |
sfan5 |
how would we get them over the wire otherwise? |
| 17:21 |
est |
and why do we do that? |
| 17:21 |
|
SopaXorzTaker joined #minetest-dev |
| 17:21 |
est |
why do we do them at the other side? |
| 17:21 |
est |
need* |
| 17:22 |
sfan5 |
actually |
| 17:22 |
sfan5 |
hm |
| 17:23 |
sfan5 |
why does the client need craftdefs? |
| 17:24 |
|
err404 joined #minetest-dev |
| 17:27 |
est |
https://github.com/minetest/minetest/blob/master/src/network/networkprotocol.h#L44 |
| 17:27 |
est |
my guess is it isn't used anymore |
| 17:29 |
|
ElectronLibre joined #minetest-dev |
| 17:50 |
|
MinetestForFun joined #minetest-dev |
| 18:06 |
|
ElectronLibre joined #minetest-dev |
| 18:30 |
|
rubenwardy joined #minetest-dev |
| 18:36 |
|
MinetestForFun_ joined #minetest-dev |
| 18:47 |
|
proller joined #minetest-dev |
| 19:02 |
|
MattJ joined #minetest-dev |
| 19:08 |
|
clu_program joined #minetest-dev |
| 19:15 |
|
chchjesus joined #minetest-dev |
| 20:04 |
|
AnotherBrick joined #minetest-dev |
| 20:05 |
hmmmm |
fuwah! |
| 20:05 |
hmmmm |
the weekend is here |
| 20:05 |
hmmmm |
ha ha! time to minetest! |
| 20:06 |
hmmmm |
I know how to solve the infinite map problem |
| 20:06 |
Calinou |
then do it :P |
| 20:06 |
hmmmm |
let's claim that our maps can from FLT_MIN to FLT_MAX |
| 20:07 |
hmmmm |
and then the client will exponentially decay in performance the further it goes out from the origin, discouraging people from exploring |
| 20:07 |
hmmmm |
s/exploring/teleporting to the borders/ |
| 20:08 |
hmmmm |
that's basically what minecraft does anyway |
| 20:08 |
Calinou |
but Minecraft behaves well until at least 100,000 |
| 20:14 |
hmmmm |
people don't typically build past 8000 |
| 20:15 |
hmmmm |
the more i think about it, the more i convince myself that making the limits higher is a gigantic waste of time and effort |
| 20:15 |
hmmmm |
that number is for marketing |
| 20:16 |
hmmmm |
it's like horsepower vs. torque. it's like the genesis being '64 bit' with 'blast processing' |
| 20:16 |
kilbith |
agreed |
| 20:36 |
est |
^ |
| 20:38 |
est |
even if, I would think that 2^32 is more than enough |
| 20:38 |
est |
floats lose precision |
| 20:39 |
est |
better a hard limit than "it begins to fail when the FPU starts to do weird things" |
| 20:39 |
|
err404 joined #minetest-dev |
| 21:35 |
|
jin_xi joined #minetest-dev |
| 21:43 |
|
ElectronLibre left #minetest-dev |
| 21:55 |
sofar |
well, you could pack 2^21 three times in 64 bit |
| 21:55 |
sofar |
giving you a 4mln sized cube |
| 22:01 |
ZeraRoox |
+hmmmm u there? |
| 22:05 |
|
Wayward_One joined #minetest-dev |
| 22:34 |
|
est31 joined #minetest-dev |
| 22:39 |
|
Tablet_One joined #minetest-dev |
| 23:05 |
|
paramat joined #minetest-dev |
| 23:07 |
paramat |
> making the limits higher is a gigantic waste of time and effort < this |
| 23:42 |
|
paramat left #minetest-dev |
| 23:47 |
|
Wayward_One joined #minetest-dev |
| 23:50 |
VanessaE |
marketing. |
| 23:50 |
VanessaE |
map size is a function of marketing, not necessarily whether it's practical to actually *explore and build* that far away |
| 23:51 |
VanessaE |
er not a function of, wrong word. meh, you know what I meant to say |
| 23:53 |
VanessaE |
every checkmark you can put in your column that says your product is better than your competitor is a point you can bring up when trying to "sell" your product (regardless of whether money has to change hands). |