Time |
Nick |
Message |
00:00 |
celeron55 |
PilzAdam: by the way, is the way minetest_game is going to be handled from now on such that it will just contain many of the common mods, with basically nothing added to those? |
00:01 |
PilzAdam |
I thought it just stays as is for backwards compatibility of worlds |
00:01 |
celeron55 |
we'll try something like that i think |
00:06 |
rarkenin_ |
Can Connection::RemovePeer be called from scriptapi.cpp? |
00:07 |
celeron55 |
why would you do that |
00:07 |
PilzAdam |
implement a /kick command? |
00:07 |
celeron55 |
if you do it, you are going to make a method in the Server that uses it |
00:08 |
celeron55 |
and use the Server method from scriptapi |
00:08 |
rarkenin_ |
Yeah, I'm implementing a kick command. The method will be exposed to Lua. |
00:08 |
PilzAdam |
and maybe add a optional reason |
00:08 |
PilzAdam |
so the client will say "You were kicked because: blah" |
00:08 |
rarkenin_ |
Sorry, I'm really not clear with the Minetest source. |
00:09 |
rarkenin_ |
I'll just send a chat message to the victim, and another broadcast for all users. |
00:14 |
rarkenin_ |
OK, pull request coming up... |
00:15 |
rarkenin_ |
Will anyone get annoyed if it is two commits? |
00:15 |
RealBadAngel |
PilzAdam, pulled |
00:24 |
hmmmm |
yes |
00:25 |
PilzAdam |
hmmmm, fixed: https://github.com/PilzAdam/minetest/commits/object_collision |
00:25 |
hmmmm |
alright that's good i guess |
00:25 |
PilzAdam |
RealBadAngel, README.txt missing |
00:25 |
hmmmm |
still iffy on the dynamic_cast, should we change it to a C-style cast? |
00:26 |
RealBadAngel |
readme? what for? |
00:26 |
PilzAdam |
dunno, Im not good in c++ |
00:26 |
PilzAdam |
RealBadAngel, License of sourcecode and textures |
00:26 |
PilzAdam |
and you can add a bit description if you want |
00:26 |
RealBadAngel |
tool is self instructin user how to use it |
00:27 |
RealBadAngel |
and code is wtf |
00:27 |
hmmmm |
alright i'm going to stop dicking around and push my code soon |
00:27 |
PilzAdam |
every mod has a readme with the license, so screwdriver should have one too |
00:28 |
RealBadAngel |
oke, i will make one |
00:36 |
RealBadAngel |
ive added readme.txt |
00:37 |
PilzAdam |
nice |
00:37 |
PilzAdam |
feel free to push it |
00:38 |
hmmmm |
okay this is starting to look gross |
00:38 |
hmmmm |
i almost want to make a separate file for this |
00:38 |
hmmmm |
what's the policy on making new files for default? |
00:39 |
RealBadAngel |
but again i can see only "merge" button :) |
00:39 |
PilzAdam |
have you added upstream as a remote to your local repo? |
00:39 |
RealBadAngel |
PilzAdam, can you do that? |
00:40 |
PilzAdam |
yea, Ill also squash the commits |
00:40 |
RealBadAngel |
i think i do have it forked then cloned |
00:40 |
RealBadAngel |
i need to reconfigure my git client tommorow |
00:43 |
PilzAdam |
RealBadAngel, done |
00:43 |
RealBadAngel |
:) |
00:43 |
PilzAdam |
Ill add it to build too |
00:44 |
RealBadAngel |
you will see when you start to use it. you gonna think how the heck folks were living without it? ;) |
00:45 |
hmmmm |
guys, seriously, where should i put this? http://pastebin.com/2v5W3D83 |
00:46 |
PilzAdam |
default/mapgen.lua |
00:46 |
RealBadAngel |
mapen.lua? |
00:46 |
RealBadAngel |
*mapgen |
00:46 |
hmmmm |
i thought so too, but it gets run too early |
00:46 |
PilzAdam |
I will split default files up soon |
00:46 |
PilzAdam |
do you check if the nodes exist? |
00:47 |
VanessaE |
stick it at the end of default/init.lua then? |
00:47 |
hmmmm |
no |
00:47 |
hmmmm |
yeah i don't want to stick it in init.lua, it's already a crisis zone |
00:47 |
VanessaE |
hah |
00:47 |
rarkenin_ |
https://github.com/minetest/minetest/pull/566 |
00:47 |
PilzAdam |
what do you mean by "it gets run too early"? |
00:47 |
hmmmm |
the nodes i'm using aren't registered yet |
00:49 |
PilzAdam |
rarkenin_, there is an "end" missing in chatcommands.lua |
00:49 |
PilzAdam |
hmmmm, why do you need the nodes to be registered? |
00:49 |
hmmmm |
because i store content_ts, not the name strings |
00:49 |
hmmmm |
it just makes more sense to me |
00:50 |
rarkenin_ |
PilzAdam: I've already messed up the branch a little. So, can you merge it and then make the small changes needed? I don't want to kill GitHub and my client at the same time. |
00:50 |
PilzAdam |
hmmmm, does anything else in the API behave like this? |
00:50 |
PilzAdam |
AFAIK no |
00:50 |
hmmmm |
no idea |
00:50 |
rarkenin_ |
But please give me a second to make sure it builds fully first. |
00:51 |
PilzAdam |
rarkenin_, and also, why the kick priv? you can simply use the ban priv for that |
00:51 |
RealBadAngel |
hmmm, you want the code to be executed after everythin is loaded? |
00:51 |
hmmmm |
i don't think it should matter as long as i make a disclaimer that all the nodes it references need to be registered already |
00:51 |
hmmmm |
realbadangel, yeah, I am thinking of separating it into its own file like ore.lua |
00:51 |
PilzAdam |
hmmmm, then move the dofile() to the end of init.lua |
00:51 |
hmmmm |
and have init.lua include this toward the end |
00:51 |
rarkenin_ |
Banning is more serious than kicking. The usecase that inspired this for me in the first place is 0gb.us:30000, where the moderators have very limited powers. Therefore, the kick priv. |
00:51 |
PilzAdam |
but Im not very happy about it |
00:52 |
RealBadAngel |
use minetest.after maybe |
00:52 |
hmmmm |
mm |
00:52 |
rarkenin_ |
About kicking? |
00:52 |
hmmmm |
minetest.after, i'll consider that... |
00:52 |
PilzAdam |
hmmmm, nothing else behaves like this in the API AFAIK |
00:52 |
PilzAdam |
rarkenin_, no, not the kicking |
00:52 |
hmmmm |
pilzadam, we never made any sort of guarantee though |
00:52 |
rarkenin_ |
OK. |
00:52 |
hmmmm |
what do other people think? |
00:52 |
RealBadAngel |
minetest.after(0.01, function() |
00:53 |
rarkenin_ |
Wait, don't merge. It fails to build. |
00:53 |
PilzAdam |
rarkenin_, maybe add TOCLIENT_KICK so that the client can handle the kick properly |
00:53 |
rarkenin_ |
Apparently, I need to include connection. |
00:53 |
PilzAdam |
RealBadAngel, thats rather hacky |
00:54 |
RealBadAngel |
ofc |
00:54 |
RealBadAngel |
but works |
00:54 |
hmmmm |
realbadangel, yuck@ that, there's no guarantee on a time bound of 0.1 for the initial script load |
00:54 |
hmmmm |
which means it could fail because something else took too long |
00:54 |
RealBadAngel |
it works for UI |
00:54 |
PilzAdam |
hmmmm, minetest.after(0) is called after all mods are loaded |
00:54 |
PilzAdam |
that is a undocumented fact |
00:55 |
hmmmm |
should we document it then? |
00:55 |
PilzAdam |
but we cant really rely on it |
00:55 |
rarkenin_ |
OK. I closed the pull request, nobody merge it. |
00:55 |
RealBadAngel |
i think cornernote started to use it |
00:55 |
hmmmm |
lol, rarkenin, we would only merge it after we test it ourselves |
00:55 |
PilzAdam |
the creative mod uses it |
00:56 |
RealBadAngel |
so it means its long time tested already |
00:56 |
hmmmm |
minetest.after(0) is what i would really like here |
00:56 |
PilzAdam |
RealBadAngel, we also have hack_spaw_node() so that isnt a good argument |
00:56 |
hmmmm |
putting the dofile toward the end might not work i think |
00:57 |
PilzAdam |
it would work perfectly fine |
00:57 |
hmmmm |
if people are going to register nodes as ores that are in other things |
00:57 |
hmmmm |
other mods |
00:57 |
RealBadAngel |
hack used long enough can become standard |
00:57 |
PilzAdam |
it would be best to change the behaviour of register_ore() IMO |
00:57 |
RealBadAngel |
so it is for hacky_swap_node() |
00:57 |
hmmmm |
perhaps, from the API point of view it would be best |
00:58 |
hmmmm |
from the engine point of view that'd force you to store strings for all of these and do lookups every single time ore is generated |
00:58 |
PilzAdam |
maybe only allow register_ore() the first time a mod is loaded (like register_node() |
00:59 |
PilzAdam |
and read the contents then |
00:59 |
hmmmm |
hold on a minute, mods can be loaded twice? |
00:59 |
rarkenin_ |
error: ‘Connection’ has not been declared |
00:59 |
PilzAdam |
no, but dont allow it to be done in callbacks |
00:59 |
rarkenin_ |
I haven't waded therough the source enough. |
01:00 |
rarkenin_ |
How shall connection be obtained? A global? Some Lua registry lookup? |
01:00 |
hmmmm |
rarkenin_, if you're not referencing any particular member of the Connection class, you can forward declare it |
01:00 |
PilzAdam |
hmmmm, you cant call minetest.register_node() in a callback of the API, and you should do the same with register_ore() |
01:01 |
hmmmm |
PilzAdam, actually i don't know if that's desirable since when you register a node, there really is one node, but here, there can be many different ore registrations for one kind of ore (for varying depths, like you saw here) |
01:02 |
hmmmm |
so there's no unique ID for ores |
01:02 |
rarkenin_ |
hmmm: And once declared in advance, when will it actually be defined? |
01:02 |
|
Taoki joined #minetest-dev |
01:02 |
hmmmm |
rarkenin_, when connection.h is actually included by whatever tangled web of includes it needs |
01:03 |
PilzAdam |
hmmmm, a huge advantage of the API is that you can basically can do many things without depending on anything being loaded already |
01:04 |
PilzAdam |
so you can define crafts for other mods before they are loaded |
01:04 |
hmmmm |
yeah but who does that |
01:04 |
hmmmm |
when you list dependencies, those are to be loaded before your mod is loaded, correct? |
01:04 |
PilzAdam |
the default mod registers the crafts before registering the nodes |
01:04 |
rarkenin_ |
I included it manually at the top in case the web breaks. |
01:04 |
hmmmm |
i mean that would only make sense |
01:04 |
hmmmm |
yeah.. yuck |
01:05 |
hmmmm |
imo this is the right way |
01:05 |
hmmmm |
because, like i said, there's a lot more stuff to be done if i were to store the node name |
01:05 |
rarkenin_ |
And a forward declaration looks hacky at the top. |
01:06 |
PilzAdam |
hmmmm, is it possible to cache the content or something? |
01:06 |
PilzAdam |
so you need the string only the first time the ore appears |
01:06 |
hmmmm |
not really |
01:06 |
hmmmm |
that's what i would do |
01:07 |
hmmmm |
yuck |
01:07 |
hmmmm |
pilzadam, what if we do this for now, and if it causes problems, we do it the position-independent way? |
01:08 |
PilzAdam |
it already causes problems in the default mod :-) |
01:08 |
hmmmm |
what? how so |
01:08 |
PilzAdam |
you cant simply replace the current default.generate_ore() calls with the new API calls |
01:09 |
hmmmm |
well yes, but that wouldn't be a problem if you were to just do it after the nodes are registered... |
01:09 |
PilzAdam |
dunno, its too late |
01:09 |
PilzAdam |
I need to sleep a bit |
01:10 |
hmmmm |
i'll try to gather more of a consensus |
01:10 |
PilzAdam |
ok |
01:10 |
PilzAdam |
bye |
01:11 |
rarkenin_ |
hmmm: What am I forward-declaring: Connection::deletePeer? Or Connection itself? |
01:12 |
hmmmm |
oh wait a minute... what are you doing exactly |
01:13 |
hmmmm |
so you're referencing a specific member in Connection? if that's the case, you need to actually have Connection defined |
01:14 |
rarkenin_ |
I'm calling Connection::deletePeer. |
01:14 |
rarkenin_ |
I included connection.cpp, yet it still fails to define. IIRC I need the Connection instance used by the rest of the code. |
01:15 |
rarkenin_ |
Or am I jumping into the include web at the wrong time? |
01:15 |
hmmmm |
you don't include a .cpp file, you include the header.. |
01:15 |
hmmmm |
can i see your code, maybe? |
01:16 |
rarkenin_ |
I included both the header and the source. |
01:17 |
rarkenin_ |
Hold on, let me pastebin it. |
01:17 |
hmmmm |
come on man, you don't include sources... |
01:17 |
RealBadAngel |
:) |
01:17 |
rarkenin_ |
http://paste.ubuntu.com/5641942/ |
01:18 |
rarkenin_ |
I included it after the first few failures. |
01:18 |
rarkenin_ |
See lines 800-ish and the #includes at the top./ |
01:18 |
hmmmm |
okay, and what is the specific error? |
01:19 |
rarkenin_ |
/home/rarkenin/github/master/src/scriptapi.cpp: In function ‘int l_kick_player(lua_State*)’: /home/rarkenin/github/master/src/scriptapi.cpp:813:3: error: ‘Connection’ has not been declared |
01:20 |
rarkenin_ |
Sorry, too short for pastebin, too long for IRC. |
01:21 |
rarkenin_ |
Sorry, I'm a relative failure at C++ |
01:21 |
hmmmm |
it's okay, you just need to get more experience |
01:21 |
ShadowNinja |
what are you trying to do? |
01:22 |
hmmmm |
from what i'm seeing, deletePeer() is not a static method |
01:22 |
rarkenin_ |
Call Connection::deletePeer |
01:22 |
rarkenin_ |
Never mind, didn;t scroll down. |
01:22 |
rarkenin_ |
That;s the problem. I need an instance of Connection, and I can't find the one I need. |
01:25 |
hmmmm |
from what i'm seeing, there's no way to access the server's Connection from lua |
01:25 |
hmmmm |
from outside of Server, i mean |
01:26 |
rarkenin_ |
I just need the Connection on the C++ side. Lua doesn't see it directly. |
01:26 |
rarkenin_ |
Some sort of extern or global, maye? |
01:26 |
rarkenin_ |
*maybe |
02:12 |
hmmmm |
you'd have to add a getConn() method to server |
02:12 |
hmmmm |
it'd return m_con |
04:08 |
|
darkrose joined #minetest-dev |
04:08 |
|
darkrose joined #minetest-dev |
05:32 |
|
kaeza1 joined #minetest-dev |
05:53 |
hmmmm |
well anyway |
05:53 |
hmmmm |
https://github.com/kwolekr/minetest/commit/2e4878ee4c90ee070c58a734f0b256825215300f |
05:56 |
VanessaE |
can someone test the validity of the facedir parameter as used in the add_node() call? |
05:56 |
VanessaE |
(param2 that is) |
05:56 |
hmmmm |
that's all RBA |
05:56 |
hmmmm |
why not just wait for him to come around? |
05:57 |
hmmmm |
surely you have better things to do than worry about your plants mod at 2am... |
05:57 |
VanessaE |
hmmmm: I don't think this is the plants mod... |
05:57 |
VanessaE |
I think the engine is misinterpreting the value given in param2 in the add_node() call. |
05:58 |
VanessaE |
I checked with and without luajit, checked with a debug statement placed immediately before the call, and got kaeza looking at my code too |
05:58 |
VanessaE |
I think occasionally it is being incremented by 1 over the value being given |
05:59 |
kaeza |
you said you got fdir=5 |
05:59 |
kaeza |
or not? |
06:00 |
VanessaE |
kaeza: the effect thereof, yes. In this latest test that I showed you, I confined the value to exactly 3, but I'm getting two different, adjacent orientations out of it. |
06:00 |
VanessaE |
and checked via debugging output that this one value is all that's ever being plugged into the function. |
06:03 |
kaeza |
hrm... just a stupid suggestion, but did you try adding parentheses to the expression in the if not x and not y and not z and ... |
06:03 |
kaeza |
? |
06:04 |
VanessaE |
kaeza: not needed. That output at line 268 is all that's ever being printed. |
06:04 |
kaeza |
maybe some kind of obscure bug in operator precedence or smth like that |
06:04 |
VanessaE |
(so the other parts of the code aren't being reached at all) |
07:40 |
celeron55 |
actually doing any registrations in minetest.after(0) or anywhere else than the initial run is unsafe |
07:40 |
celeron55 |
it can cause race conditions in threads because the definition managers are designed so that they are only safe if they aren't written after they have been initially set up and are read by things |
07:41 |
VanessaE |
so we figured out the issue I was having - it's just an artifact of having used the previously-undocumented facedir, not knowing it was being AND'd with 0x03 (and now isn't) |
07:45 |
celeron55 |
(in practice it won't cause currently, but any future perfectly correct changes can break because of mods using it) |
07:49 |
celeron55 |
to fix that, somebody could look into including this https://github.com/minetest/minetest/pull/238 |
07:50 |
celeron55 |
(the require() thing has to be removed from it, and then it has to be tested) |
07:51 |
celeron55 |
and... well, otherwise make it behave like the other builtin stuff |
07:53 |
celeron55 |
(that guy insisted on that require() stuff that simply doesn't fit with minetest 0.4's mod loading design and brings no actual benefit other than compatibility headache) |
08:31 |
|
Calinou joined #minetest-dev |
09:05 |
|
Jeija joined #minetest-dev |
09:13 |
|
us_0gb joined #minetest-dev |
09:18 |
|
us_0gb left #minetest-dev |
09:46 |
|
Jordach joined #minetest-dev |
10:03 |
|
serengeor joined #minetest-dev |
10:11 |
|
PilzAdam joined #minetest-dev |
10:15 |
|
darkrose joined #minetest-dev |
10:15 |
|
darkrose joined #minetest-dev |
11:09 |
|
loggingbot_ joined #minetest-dev |
11:09 |
|
Topic for #minetest-dev is now Minetest core development and maintenance. Chit-chat goes to #minetest. Consider this instead of /msg celeron55. http://irc.minetest.ru/minetest-dev/ http://dev.minetest.net/ |
11:18 |
|
proller joined #minetest-dev |
12:35 |
Exio |
+local fuck = {} |
12:35 |
Exio |
nice variable names eh |
12:36 |
|
rubenwardy joined #minetest-dev |
12:52 |
rubenwardy |
I updated the image here: http://multa.bugs3.com/minetest/manual/game/custom.html |
12:52 |
rubenwardy |
I will be adding better description / body text |
13:35 |
|
hmmmm joined #minetest-dev |
14:00 |
|
darkrose joined #minetest-dev |
14:13 |
|
rarkenin_ joined #minetest-dev |
14:40 |
|
darkrose joined #minetest-dev |
15:58 |
hmmmm |
soooo |
15:59 |
hmmmm |
anyway, it doesn't really matter if they're called twice, it'll just add twice as much ore |
15:59 |
hmmmm |
not really a showstopping bug. besides, this will be really hard to track |
15:59 |
hmmmm |
think we should just add it? |
16:12 |
hmmmm |
also, a different problem... i've been thinking about how to add a lua api to get the mapgen params, but at the time you'd actually need it, it's not available |
16:14 |
hmmmm |
it doesn't happen until initMapgens() is called, which happens after the mods are initially run |
16:16 |
hmmmm |
to re-order this, we'd have to re-order when the Environment is created, making a big change in how mods work |
16:16 |
VanessaE |
not good. |
16:17 |
VanessaE |
wouldn't it be simpler to just open up a way for a mod to just directly read the world config file? |
16:17 |
VanessaE |
(that is, in a predictable manner, e.g. with relative paths or something) |
16:17 |
hmmmm |
absolutely not because there's 0 guarantee that the contents of those files are what the parameters are actually |
16:20 |
|
Calinou joined #minetest-dev |
16:36 |
hmmmm |
alright, so the server environment steps before the emergethreads become active |
16:36 |
hmmmm |
that's good, so i can do this sort of stuff in minetest.after() |
16:36 |
hmmmm |
but i want it right after. meaning i want to use after(0) |
16:41 |
hmmmm |
so i'm at a loss of ways to use the api to read the mapgen configuration |
16:44 |
hmmmm |
in this particular case it would be safe to register in after(0) because, like i said, the emergethreads aren't even active before the environment steps the first time |
16:45 |
hmmmm |
and those are the only other threads that are unsafe |
16:46 |
hmmmm |
alright so what i'll do is add the postinit thing, then add the mapgen param api, and i'll do it that way |
16:59 |
RealBadAngel |
hmmm, about max<min old generate ore function was checking for this (it calculated chunk size on its own) |
16:59 |
RealBadAngel |
new one is expecting the value as parameter |
17:00 |
RealBadAngel |
and doesnt check for that |
17:01 |
hmmmm |
huh? |
17:01 |
RealBadAngel |
https://github.com/RealBadAngel/technic/blob/master/technic/ores.lua#L261 |
17:01 |
hmmmm |
no, you're misunderstanding, in generate_ore, chunk_size refers to the size of the ore cluster |
17:02 |
hmmmm |
not the size of the generated chunk of map |
17:02 |
RealBadAngel |
but this is exactly what is causin crashes |
17:02 |
hmmmm |
in yours maybe |
17:02 |
hmmmm |
i'm talking about generate_ore in general |
17:02 |
RealBadAngel |
my copy is not crashing |
17:03 |
RealBadAngel |
mapgen.lua one is |
17:03 |
hmmmm |
the problem must be that chunk_size is negative, or y_min - y_max + 1 < chunk_size |
17:03 |
RealBadAngel |
local y0 = pr:next(y_min, y_max-chunk_size+1) |
17:03 |
hmmmm |
right |
17:03 |
RealBadAngel |
at this point exactly |
17:04 |
hmmmm |
minp and maxp are passed along from the callback |
17:04 |
hmmmm |
so they can't be faulty values |
17:04 |
hmmmm |
ahhh |
17:04 |
VanessaE |
if chunk_size > (y_max - y_min + 1) then it'll crash. |
17:04 |
VanessaE |
if I read this right |
17:04 |
hmmmm |
vanessa, yes, i said that already however |
17:04 |
hmmmm |
so anyway |
17:04 |
hmmmm |
here's the problem: |
17:04 |
VanessaE |
hmmmm: just trying to understand it. |
17:05 |
hmmmm |
it just so happens that with the map generation chunksize = 5, we never saw this logic oversight |
17:07 |
hmmmm |
so basically, right after calculating y_min and y_max, we need to check that there's enough space between the two |
17:07 |
hmmmm |
because the maximum height that the ore generates at might be too close to the minimum y of the chunk that was generated or vice versa |
17:08 |
hmmmm |
i better patch my ore generation because it too is succeptable to the same flaw |
17:09 |
VanessaE |
I look forward to the new ore gen being merged |
17:09 |
VanessaE |
you've done a lot of good work, I expect this'll be more of the same :) |
17:13 |
hmmmm |
default.generate_ore() is being used by other mods, correct? |
17:13 |
PilzAdam |
yes |
17:13 |
VanessaE |
glooptest/ores |
17:13 |
hmmmm |
we can't just remove it when the core ore thing is merged |
17:13 |
hmmmm |
so we need to fix that too |
17:13 |
VanessaE |
tech was using it for a couple of days too |
17:13 |
hmmmm |
right after local y_max = ... add this |
17:13 |
VanessaE |
(but not anymore) |
17:13 |
PilzAdam |
its not documented in the API, so just make it function () end |
17:13 |
hmmmm |
if chunk_size >= y_max - y_min + 1 then |
17:13 |
hmmmm |
return |
17:13 |
hmmmm |
end |
17:13 |
VanessaE |
nooooooo |
17:14 |
hmmmm |
and i'm assuming a similar problem happens in the NPC mod too, so you should check for the same logic flaw |
17:15 |
VanessaE |
well npc mod doesn't generate ores :-) |
17:15 |
hmmmm |
.. |
17:15 |
VanessaE |
that was probably a coincidence, as it does run at mapgen time. |
17:16 |
PilzAdam |
https://github.com/minetest/common/pull/9 this one? |
17:16 |
VanessaE |
"4 hours ago" |
17:16 |
VanessaE |
heh |
17:16 |
hmmmm |
wel the way i just wrote is clearer |
17:17 |
hmmmm |
this also needs to be fixed in minimal too |
17:18 |
PilzAdam |
generate_ore() in minimal is still local |
17:18 |
hmmmm |
so we'll just remove that one completely? |
17:18 |
PilzAdam |
yea |
17:18 |
PilzAdam |
also add a warning message to default.generate_ore() that its deprecated |
17:19 |
hmmmm |
yes |
17:19 |
hmmmm |
wait, me? |
17:19 |
hmmmm |
you do that |
17:19 |
hmmmm |
you're the lua guy |
17:19 |
PilzAdam |
Ill do it if you push your ore gen code |
17:19 |
PilzAdam |
s/if/when |
17:19 |
hmmmm |
yeah hold on |
17:19 |
hmmmm |
just need to amend that one thing |
17:20 |
Exio |
what is the rate of "features / day" added to minetest]? |
17:20 |
Exio |
i hope it will not overflow an integer |
17:20 |
Exio |
but i'm not sure! :P |
17:24 |
hmmmm |
pushed to upstream |
17:24 |
hmmmm |
PilzAdam, let me paste the final ore definitions to add |
17:24 |
hmmmm |
http://pastebin.com/2UTV1mMp |
17:25 |
PilzAdam |
can you write something to lua-api.txt? |
17:25 |
hmmmm |
add that after the minetest.register_alias( ...) block and before the default.generate_ore() |
17:25 |
|
Rick__ joined #minetest-dev |
17:25 |
hmmmm |
yeahhh... |
17:25 |
hmmmm |
i was going to do that later |
17:25 |
hmmmm |
i'm bad at writing documentation |
17:25 |
PilzAdam |
everyone is :-) |
17:25 |
hmmmm |
there are a lot of details i'd have to figure out, like where would i add this for example |
17:26 |
PilzAdam |
it doesnt matter as long as it is somewhere |
17:29 |
hmmmm |
okay |
17:29 |
hmmmm |
i'm putting it under "minetest.register_craft(recipe)" in "minetest namespace reference", but where do i mention what an ore is? |
17:30 |
Rick__ |
Hey everyone, its my first time on here. I was looking at the Minetest source code and have an idea for some game mechanics I want to implement. |
17:30 |
VanessaE |
does it *have* to be an ore? Wouldn't just any random node qualify as such? |
17:30 |
Rick__ |
I'm kind of wondering if anyone has enough spare time to give me some pointers on where I would have to make changes for the most part |
17:31 |
PilzAdam |
is minetest.log('error', "WARNING: default.generate_ore is deprecated") too anoying? it gets printed to the chat... |
17:31 |
VanessaE |
PilzAdam: yes. |
17:31 |
PilzAdam |
wich level then? |
17:31 |
PilzAdam |
action? |
17:31 |
VanessaE |
don't spam the chat with error messages that can't be copy&pasted |
17:31 |
PilzAdam |
action gets also printed in the windows cmd AFAIK |
17:32 |
hmmmm |
yeah that's fine, shouldn't it be errorstream though? |
17:32 |
VanessaE |
hmmmm: here's another one for you - not related to oregen I don't think: http://pastebin.ubuntu.com/5643839/ |
17:32 |
hmmmm |
actionstream implies you're doing something active |
17:32 |
PilzAdam |
errorstream gets printed to the chat in Lua |
17:33 |
hmmmm |
vanessae, looks like you ran out of memory |
17:33 |
VanessaE |
hmmmm: I have 12GB. |
17:33 |
hmmmm |
hmmmm |
17:33 |
hmmmm |
4 emergethreads going? |
17:33 |
VanessaE |
yep, happens with 2 also. |
17:33 |
hmmmm |
why are you using multithreading? i thought that cut your trees in half |
17:34 |
VanessaE |
trees were always being chopped apart anyway before that, so I figured what the hell |
17:34 |
VanessaE |
small price to pay to speed it up |
17:34 |
hmmmm |
why would you need a speedup if the bottleneck is lua |
17:34 |
hmmmm |
you do realize on_generate() can only be run by one thread at a time |
17:35 |
VanessaE |
hrm |
17:35 |
VanessaE |
well still |
17:35 |
hmmmm |
but wait a minute |
17:35 |
VanessaE |
http://pastebin.ubuntu.com/5643847/ |
17:35 |
hmmmm |
hold up |
17:35 |
hmmmm |
this isn't my error at all |
17:35 |
VanessaE |
here's the player file of the person who joined that caused the crash |
17:35 |
hmmmm |
see how it says ServerThread::Thread() |
17:35 |
PilzAdam |
hmmmm, you cant pass the seed to register_ore() |
17:35 |
hmmmm |
PilzAdam, ?? |
17:36 |
PilzAdam |
to default.generate_ore() you can pass a seed |
17:36 |
Exio |
random question to hmmmm, what is the "ore_type"? |
17:36 |
hmmmm |
exio, i'm documenting that right now |
17:36 |
Exio |
k |
17:38 |
VanessaE |
hmmmm: I understand if it isn't your code causing this. |
17:39 |
hmmmm |
back |
17:39 |
hmmmm |
vanessa, i'll look better at it |
17:39 |
hmmmm |
pilzadam, no you don't pass a seed, the mapgen passes the blockseed + a constant if you look |
17:39 |
PilzAdam |
does it always pass the same constant? |
17:40 |
hmmmm |
yes |
17:40 |
PilzAdam |
even if new mods with register_ore() come along? |
17:40 |
hmmmm |
it's identical in operation to the original |
17:40 |
PilzAdam |
is that ok-ish? https://github.com/PilzAdam/common/commits/tmp |
17:41 |
hmmmm |
that looks good |
17:41 |
VanessaE |
wait |
17:41 |
hmmmm |
PilzAdam, https://github.com/minetest/minetest/commit/57cbb8bfd8daaa1b8b1aa876723ff6355d21f7fc#L5R466 |
17:41 |
VanessaE |
why fail silently re: chunk size? |
17:42 |
hmmmm |
because it's something that happens by chance |
17:42 |
hmmmm |
you can't really do anything about it |
17:42 |
hmmmm |
it's not a user error at all |
17:43 |
VanessaE |
hrm. ok |
17:47 |
VanessaE |
heh |
17:47 |
* VanessaE |
watches "ACTION[ergeThread]: WARNING: default.generate_ore is deprecated" spam the console |
17:48 |
|
rubenwardy joined #minetest-dev |
17:48 |
hmmmm |
that'll grab the user's attention |
17:49 |
VanessaE |
note that "[EmergeThread]" is not being printed in its entirety |
17:49 |
VanessaE |
the first couple of letters of that word are being randomly dropped. Is that normal? :-) |
17:52 |
PilzAdam |
hmmmm, https://github.com/minetest/common/commit/ef995230cb7558f8e69e563b3d898f5ab2ba2156#commitcomment-2869196 |
17:53 |
Exio |
https://github.com/minetest/minetest/commit/57cbb8bfd8daaa1b8b1aa876723ff6355d21f7fc#L1R58 |
18:04 |
hmmmm |
no that's not normal |
18:04 |
hmmmm |
i have no idea why it does that |
18:04 |
hmmmm |
i would assume that's due to a race condition of some sort |
18:05 |
hmmmm |
the claylike ore isn't done yet because i just want to get something out right away that covers 95% of the usecases |
18:06 |
hmmmm |
this cuts the time it takes for on_generate to execute from about 400ms to around 15-25ms, WITHOUT luajit, and with only -O1 |
18:06 |
hmmmm |
i'll do the rest later, but that's just the most significant part |
18:07 |
Exio |
hmmmm: what about this https://github.com/minetest/minetest/commit/57cbb8bfd8daaa1b8b1aa876723ff6355d21f7fc#L5L499 ? |
18:08 |
hmmmm |
many of my commits aren't exactly what is described, if there's something minor that doesn't really warrant a commit, and the fix won't really affect anything, i'd just fix it as i go along |
18:09 |
hmmmm |
in that case it was combining if clauses that i didn't realize ought to be combined after i removed the noise computation for trees |
18:09 |
Exio |
ah, kk |
18:09 |
hmmmm |
i think i also removed a commented out field in an initializer list |
18:14 |
PilzAdam |
why dont we have dungeons in mg_flags by default? |
18:15 |
PilzAdam |
(and jungles) |
18:15 |
rarkenin_ |
IMO mg_flags should be exposed in the world creation dialog as a set of checkboxes./ |
18:16 |
hmmmm |
i think so too |
18:17 |
hmmmm |
PilzAdam, because that would screw up peoples' maps who are updating from a version of minetest before mg_flags was added |
18:17 |
hmmmm |
if it were up to me, i'd disable v6_biome_blend, enable dungeons and jungles |
18:18 |
VanessaE |
blend? as in that smooth dithering between say desert and grass? |
18:18 |
hmmmm |
yeah |
18:18 |
hmmmm |
when you say smooth you're being sarcastic, right? |
18:18 |
VanessaE |
oh please for the love of FSM, G*d, and whoever else, disable that. |
18:19 |
VanessaE |
sarcastic? no, just chose the wrong word. |
18:19 |
VanessaE |
how about "noisy" |
18:20 |
hmmmm |
also green and orange are colors that don't really go well with eachother |
18:20 |
hmmmm |
the whole desert and normal being next to eachother looks yuck |
18:20 |
hmmmm |
but nevermind that, it's mapgen v6 |
18:20 |
hmmmm |
i have my sights set on the future |
18:20 |
VanessaE |
yup I know |
18:21 |
rubenwardy |
What needs to happen for this to get merged? https://github.com/minetest/minetest/pull/548 |
18:21 |
hmmmm |
a need for it |
18:22 |
rubenwardy |
lol |
18:22 |
hmmmm |
sapier doesn't even want that merged because he said there's no real good use for it |
18:23 |
rubenwardy |
he says "I don't see any other use but mobs atm." |
18:23 |
rubenwardy |
no there is no use |
18:23 |
rubenwardy |
*not |
18:23 |
rubenwardy |
but yeah |
18:23 |
hmmmm |
well in the channel he said this |
18:23 |
rubenwardy |
ok |
18:29 |
celeron55 |
i think it should be added |
18:30 |
rubenwardy |
hmm |
18:30 |
celeron55 |
it's quite self-contained and useful for almost any AI |
18:31 |
rubenwardy |
minetest could use some fast mobs, and pathfinding is great |
18:31 |
rubenwardy |
ywea |
18:31 |
rubenwardy |
yeah |
18:31 |
hmmmm |
from what i understand, current mobs don't use pathfinding at all |
18:31 |
celeron55 |
they don't because it's too slow to be practical |
18:32 |
hmmmm |
wow does minecraft have us beat in the mod department or what |
18:32 |
celeron55 |
and it's hard to implement |
18:32 |
PilzAdam |
this is also useful for mobs: https://github.com/minetest/minetest/pull/434 |
18:32 |
hmmmm |
do you think it would've been better if there were only shared library mods? |
18:33 |
PilzAdam |
and this: https://github.com/minetest/minetest/pull/418 |
18:33 |
celeron55 |
line_of_sight is included in #548 |
18:35 |
ecube |
hmmmm: minecraft mods require a source code edit |
18:35 |
ecube |
minetest doesn't :P |
18:51 |
rarkenin_ |
hmmm: I finally got around the forward declaration issus, but now it complains that deletePeer is private even if explicitly marked public. |
18:52 |
rarkenin_ |
I have it as public bool deletePeer(u16 peer_id, bool timeout){blahblahblah} |
19:00 |
hmmmm |
yes, i mentioned that... did you see what i said yesterday? |
19:05 |
|
rarkenin joined #minetest-dev |
19:05 |
rarkenin |
Sorry, my connection died. Can you say that again? |
19:05 |
hmmmm |
[03:00 PM] <hmmmm> yes, i mentioned that... did you see what i said yesterday? |
19:07 |
rarkenin |
No, I left too early. |
19:07 |
hmmmm |
we have channel logs.. |
19:08 |
rarkenin |
Oh, right, yes./ |
19:10 |
rarkenin |
I added a getConn method to server. It returns a pointer to the con object. When I try to operate ot in by calling a method that is explicitly public, I get an error saying it is private/ |
19:11 |
rarkenin |
Let's see here, I'm heading to a swim practice, I;ll be back in an hour or so. |
19:13 |
hmmmm |
:\ |
19:13 |
hmmmm |
the method you make is supposed to be public |
19:14 |
hmmmm |
christ this isn't rocket science.... Connection *getConnection() { return m_con } |
19:14 |
hmmmm |
PilzAdam, how does this look https://github.com/kwolekr/minetest/commit/a97d3e1e55f8a20fe2e5dedefb9aee8204ae8926 |
19:16 |
PilzAdam |
line 866: s/ore/ore_definition |
19:18 |
hmmmm |
now why's that? what about register_craft(recipe) |
19:18 |
hmmmm |
not to mention that the name of the class in the core is Ore, not OreDef |
19:19 |
PilzAdam |
when people read "Ore" they just add in "default:stone_with_coal" |
19:19 |
PilzAdam |
but when they read ore_definition they will look at the bottom what it is |
19:19 |
hmmmm |
well okay |
19:20 |
PilzAdam |
remember wich people read the API :-) |
19:21 |
hmmmm |
https://github.com/kwolekr/minetest/commit/6767ed74f838bbb0c7786f85ef1e8f5b9fb88ef7 |
19:21 |
PilzAdam |
its okay now |
19:28 |
celeron55 |
i don't think talking about some "default ores" is appropriate there |
19:30 |
celeron55 |
also, the indentation seems screwed up in some dual ^ points |
19:31 |
hmmmm |
well it's already pushed to upstream |
19:31 |
hmmmm |
besides, i was following the example from other pieces of documentation |
19:32 |
PilzAdam |
the indentation is screwed up everywhre in lua-api.txt |
19:33 |
celeron55 |
bleh |
19:33 |
celeron55 |
i'll fix it then |
19:34 |
celeron55 |
apparently hmm copied the nonsense by viewing tabs of a close-by screwed up piece wrongly and writing them as tabs |
19:35 |
celeron55 |
(the close-by one was perfectly fine when viewed with 4-long tabs) |
19:35 |
hmmmm |
i figured that was the right way because PilzAdam is usually on that shit |
19:36 |
hmmmm |
and he would've fixed exising indentation problems by now |
19:36 |
celeron55 |
s/writing them as tabs/writing them as spaces/ |
19:38 |
celeron55 |
pushed a fix |
19:38 |
hmmmm |
okay, good, you fixed everything while you were at it. that made it separate-commit-worthy |
19:39 |
celeron55 |
shit, there's a bug in that commit |
19:39 |
celeron55 |
force-pushed it again 8) |
19:40 |
hmmmm |
anything else? i need to rebase what i just wrote against that |
19:40 |
celeron55 |
it's good enough now |
19:43 |
|
rarkenin joined #minetest-dev |
19:44 |
rarkenin |
hmmmm: Sorry about he crapload of troble. The problem is that I have Connection *getConnection() { return m_con } already created pretty much word for word. The problem is that once I try to do something with m_con, things start to go sour since every method, even defined explicitly as public, appears as private to the compiler. |
19:44 |
rarkenin |
It could be the issue with the namespace con surrounding everything. |
19:45 |
hmmmm |
umm |
19:45 |
hmmmm |
can i just see your code |
19:45 |
hmmmm |
i probably know what your problem is |
19:45 |
rarkenin |
O, kust a sec. |
19:46 |
rarkenin |
I'l just post the important lines in a paste. |
19:48 |
rarkenin |
http://paste.ubuntu.com/5644319/ |
19:48 |
celeron55 |
hmmmm: you mentioned getting next (or at some point) to the block transfer thing |
19:48 |
rarkenin |
Fill server.h: http://paste.ubuntu.com/5644323/ |
19:48 |
rarkenin |
*Full |
19:49 |
celeron55 |
hmmmm: you'll be fighting against two things in there: network congestion and mesh generation speed |
19:49 |
|
playzooki joined #minetest-dev |
19:49 |
playzooki |
hi guys |
19:49 |
rarkenin |
And the most important, the deletePeer: |
19:49 |
rarkenin |
http://paste.ubuntu.com/5644326/ |
19:50 |
|
playzooki left #minetest-dev |
19:51 |
hmmmm |
.. |
19:51 |
hmmmm |
rarkenin, you probably have it under the private: specifier |
19:52 |
hmmmm |
also just getConnection(), drop the Object |
19:52 |
rarkenin |
No, there is no private specifier in the file/ |
19:52 |
hmmmm |
there most definitely is in server.h |
19:52 |
hmmmm |
rarkenin, would you just like me to take this over and finish it for you? |
19:52 |
rarkenin |
Yeah, but the error is in the method in connection.h,m and there is no private specifier in connection.h |
19:53 |
rarkenin |
Sure, feel free to. |
19:53 |
rarkenin |
I'll push the last of the junk to GitHub. Sorry for the trouble,/ |
19:53 |
hmmmm |
no problem |
19:53 |
celeron55 |
what is the point here? is this still the kicking of players? |
19:53 |
hmmmm |
yep |
19:54 |
celeron55 |
...with getConnection() exposed to the scripting API? oh god |
19:54 |
hmmmm |
if I were doing this, what I would do is add an option to kick only in the ban manager |
19:54 |
Jordach |
you can now play russian roulette with rouge mods |
19:54 |
rarkenin |
Yeah, my apologies. I'll head back into scripting where I belong. |
19:55 |
hmmmm |
aww |
19:55 |
hmmmm |
i'm sorry, i didn't mean to imply that you weren't good enough |
19:55 |
celeron55 |
maybe go try C++ with something slightly less complicated? 8) |
19:55 |
hmmmm |
just learn how to do C++ a bit more and try again once you're really good |
19:56 |
hmmmm |
celeron, i didn't really describe how i was going to the block sending |
19:56 |
hmmmm |
it's completely different from what you and that davidmikesimon guy have |
19:56 |
rarkenin |
OK. Sorry for wasting your time. And it was a good learnnig experience. :) |
19:56 |
hmmmm |
i've been watching a lot of minecraft videos and it seems what they do is they have a loading screen |
19:57 |
hmmmm |
so during that loading screen we'll send all the blocks within some d-sized square radius, with a bit smaller of a y distance |
19:57 |
hmmmm |
then, as the player moves, we send more blocks AT the boundary of that square that hasn't been sent |
19:58 |
hmmmm |
hopefully the fog distance is about the same as the blocks are sent, so to the player it looks like one whole coherent world with no big gaps |
19:58 |
PilzAdam |
what about teleporting? |
19:58 |
hmmmm |
no need for anybody to calculate the FOV of the client |
19:58 |
rarkenin |
Do you still want me to push those changes to github? |
19:58 |
hmmmm |
rarkenin, sure |
19:59 |
rarkenin |
Git is hating me today. A push hangs incenssantly |
19:59 |
hmmmm |
for teleporting, all the blocks in that radius would be not sent, so you'd expect quite a surge of blocks |
19:59 |
hmmmm |
rarkenin, github was being ddosed yesterday, that might have something to do with it |
20:00 |
rarkenin |
No, this problem is local. Not even an outbound connection yet. |
20:00 |
hmmmm |
that sucks |
20:01 |
rarkenin |
I'll just pastebin the patch if anyone wants it. |
20:04 |
rarkenin |
It's a bit mangled, but it's the best Git will give me. |
20:07 |
rarkenin |
http://paste.ubuntu.com/5644386/ |
20:11 |
Jordach |
oh, by the way, the strange shadows bug still exists: http://i.imgur.com/Bd9GA6g.png |
20:12 |
hmmmm |
we're aware of it... that's pretty unavoidable |
20:12 |
PilzAdam |
isnt that caused by cave air? |
20:12 |
hmmmm |
yes |
20:12 |
Jordach |
but that's the only instance for several months now |
20:13 |
hmmmm |
they didn't decrease in frequency or anything |
20:13 |
Jordach |
xyz's fix has worked, but, there are some still generating |
20:13 |
hmmmm |
huh? fix? |
20:13 |
hmmmm |
what did he do |
20:13 |
Jordach |
there was one a while ago that fixed it, thexyz has a patch for this which i think went master iirc |
20:14 |
hmmmm |
i would've been aware of this.. |
20:19 |
PilzAdam |
hmmmm, should we remove the underground springs from minimal? they are in common/default |
20:19 |
PilzAdam |
*arent |
20:19 |
hmmmm |
yeah |
20:21 |
|
ecube joined #minetest-dev |
20:21 |
PilzAdam |
hmmmm, done |
20:21 |
hmmmm |
cool |
20:22 |
hmmmm |
wow that's a really miserable mapgen.lua. |
20:22 |
hmmmm |
look at how minimal it is |
20:23 |
PilzAdam |
it is fast |
20:23 |
PilzAdam |
and not bloated |
20:23 |
hmmmm |
hmm |
20:24 |
hmmmm |
what i want to do is the moreores now and then mark this as 0.4.6 and do another release, we have a lot of changes and it's very release-worthy |
20:25 |
hmmmm |
but i don't want to do the code freeze, especially since i'm on spring break and i can do a lot of stuff |
20:25 |
hmmmm |
what do you say we do that, mark it as 0.4.6, then release it as beta, then after a week if there are no problems, mark it as an official release |
20:25 |
hmmmm |
while we continue committing stuff to upstream the whole while for the next version |
20:26 |
PilzAdam |
we had 0.4.2-rc1, after a month or so 0.4.3 was released; 0.4.2 was never released officially |
20:27 |
PilzAdam |
people just got confused about the rc1 |
20:27 |
hmmmm |
we'll be sure to do an official release |
20:27 |
PilzAdam |
because they took it as an official release |
20:27 |
hmmmm |
if we mark it as -beta it should be okay |
20:27 |
hmmmm |
really all we need to do is make sure we follow up on things |
20:28 |
PilzAdam |
we currently have a good push flow |
20:33 |
|
ecube_ joined #minetest-dev |
20:33 |
PilzAdam |
about the ores: we need to think about nice uses for them |
20:35 |
hmmmm |
well for diamond, i want diamond picks and all that stuff |
20:36 |
PilzAdam |
we have mese |
20:36 |
hmmmm |
yeah but that's mese... |
20:36 |
hmmmm |
diamond should be much rarer than mese even, but last a lot longer |
20:37 |
Jordach |
mese is our redstone, but with more use |
20:48 |
VanessaE |
well we could always merge mesecons into engine....... ;-) |
20:50 |
Exio |
i'm with hmmmm about diamond, if not "diamond itself" just a more rarer ore what has "better tools" |
20:52 |
Exio |
mese is very very common |
20:56 |
VanessaE |
diamond should be at least as rare as mese blocks are, and only found fairly deep |
20:57 |
PilzAdam |
has someone diamond textures? |
20:57 |
VanessaE |
use the ones in the diamonds mod? |
20:57 |
Exio |
there is a diamond mod |
20:58 |
VanessaE |
we've got over 30 km of map depth, let's USE it for a change |
20:58 |
PilzAdam |
this one? http://forum.minetest.net/viewtopic.php?id=2724 |
20:59 |
Exio |
i don't like the very-height based ore generation, it is, "0 ores", "get the correct layer", "1000 stacks" |
20:59 |
VanessaE |
PilzAdam: yeah I believe so |
20:59 |
VanessaE |
that one is on my server, anyway |
20:59 |
Exio |
that is the only i have used |
20:59 |
PilzAdam |
the block doesnt look good |
21:00 |
VanessaE |
not really, no, but the ore and tools seem okay |
21:00 |
VanessaE |
maybe they need less saturation though |
21:00 |
|
ecube- joined #minetest-dev |
21:04 |
Exio |
the only thing what i'd change in diamond's block texture is making it more "light-blue", but i'm weird with that stuff :P |
21:06 |
VanessaE |
imho the block should look like it's composed of multiple pieces |
21:10 |
VanessaE |
into which component will diamonds be placed? |
21:11 |
PilzAdam |
commons/default |
21:11 |
VanessaE |
ok |
21:14 |
PilzAdam |
isnt diamond a bit boring like this? |
21:14 |
hmmmm |
shouldn't diamond be a bit darker and more turquoise-ish than it is in those textures? |
21:14 |
hmmmm |
we won't be able to tell the difference between diamond ore and the myriad of other light-blue ores |
21:14 |
PilzAdam |
(I mean the uses= |
21:14 |
PilzAdam |
*) |
21:14 |
hmmmm |
(silver, tin, etc.) |
21:15 |
hmmmm |
PilzAdam, i think it's pretty good, we can invent more uses later on |
21:15 |
VanessaE |
PilzAdam: let the modders figure out how to use it |
21:15 |
hmmmm |
alright so everybody, let's agree on which ores make it in: |
21:15 |
hmmmm |
silver, gold, diamond (for sure) |
21:15 |
VanessaE |
hmmmm: gold, silver, tin, copper, mithril, diamond. |
21:15 |
hmmmm |
what do you guys feel about copper, tin, and the others? |
21:16 |
hmmmm |
what are the others, actually? |
21:16 |
VanessaE |
I think those are more than enough for a "default set". |
21:16 |
hmmmm |
mithril can be used as fuel for an enchanting setup later on :D |
21:16 |
hmmmm |
maybe you also use mithril to power stargates and whatever |
21:16 |
VanessaE |
that sounds fair |
21:16 |
hmmmm |
tin, copper, silver, gold, mithril diamond |
21:16 |
hmmmm |
great |
21:16 |
hmmmm |
let's do it |
21:17 |
VanessaE |
as of now it's a rare but not heavily-used materia |
21:17 |
VanessaE |
l |
21:17 |
hmmmm |
yeah |
21:17 |
PilzAdam |
Ill do gold and diamonds |
21:17 |
hmmmm |
and as for lapis lazuli and emerald, we won't bother |
21:17 |
hmmmm |
pilzadam, why not all of them at once? |
21:17 |
PilzAdam |
*Im currently doing gold and diamonds |
21:18 |
VanessaE |
agreed, why do we need lapis if we have mithril? :-) |
21:18 |
VanessaE |
emerald, I am on the fence about that one |
21:18 |
hmmmm |
meh |
21:18 |
hmmmm |
there could be a gemstone mod |
21:18 |
VanessaE |
there already is |
21:18 |
hmmmm |
ruby saphire emerald anthemyst and so on |
21:19 |
VanessaE |
several actually I think |
21:19 |
hmmmm |
you use them to make different color lazers |
21:19 |
VanessaE |
birthstones, gems, gemstones to name three |
21:19 |
hmmmm |
badumtss |
21:19 |
hmmmm |
tried to connect to your server to look at something real quick and it crashed |
21:19 |
hmmmm |
fan tastic |
21:20 |
VanessaE |
lesse, node names are... moreores:mineral_copper, mineral_tin, mineral_silver, mineral_gold, mineral_mithril |
21:20 |
VanessaE |
for the ores |
21:21 |
hmmmm |
alright, and for all the things we're adding, we want the associated blocks |
21:21 |
hmmmm |
and as for tools, we'll just have diamond tools for now |
21:21 |
hmmmm |
and make diamond last much longer than mese |
21:21 |
VanessaE |
lumps,ingots I guess are moreores:xxxx_lump and moreores:xxxx_ingot |
21:21 |
hmmmm |
good |
21:21 |
VanessaE |
blocks are moreores:xxxx_block it looks like |
21:21 |
VanessaE |
calinou's code is hard to read |
21:21 |
hmmmm |
didn't crash this time |
21:21 |
hmmmm |
grr |
21:22 |
Exio |
VanessaE: is he using BF in lua? >:D |
21:22 |
VanessaE |
Exio: not quite, but there's a fair amount of pasta in his programming |
21:22 |
Exio |
:P |
21:23 |
VanessaE |
hmmmm: ok, confirmed the node names, as above. |
21:23 |
VanessaE |
(thank G*d for the crafting guide in UI) |
21:29 |
VanessaE |
server went blooey again... http://pastebin.ubuntu.com/5644594/ |
21:29 |
hmmmm |
yeah it did |
21:29 |
hmmmm |
wow that's a helpful stack backtrace .... |
21:29 |
VanessaE |
one thread this time, as you saw |
21:30 |
VanessaE |
should I compile it for debug? |
21:30 |
hmmmm |
i don't think it'll help |
21:30 |
VanessaE |
k |
21:35 |
PilzAdam |
https://github.com/PilzAdam/common/commits/gold and https://github.com/PilzAdam/minetest_game/commits/gold |
21:37 |
Exio |
in the game minetest_game a mod called minetest_game? |
21:37 |
Exio |
that seems confusing, imo |
21:37 |
PilzAdam |
every game should have a main mod with the game name |
21:37 |
Exio |
it should have a name like "external_legacy" or so, i just think |
21:37 |
Exio |
what about a mod called "main"? |
21:38 |
PilzAdam |
VanessaE, what do you think about the gold? |
21:38 |
VanessaE |
I think Exio is right about the way the tree is laid out, but otherwise it looks okay to me. |
21:39 |
VanessaE |
(or github is just being obscure) |
21:39 |
VanessaE |
we should have a mod called "imported" |
21:39 |
VanessaE |
it should contain these things |
21:39 |
VanessaE |
(in lieu of a mod called "minetest_game" I mean) |
21:44 |
PilzAdam |
"external_legacy" would be nice |
21:44 |
VanessaE |
yeah\ |
21:44 |
VanessaE |
that might be best |
21:44 |
Exio |
+1! :P |
21:48 |
PilzAdam |
updated |
21:48 |
PilzAdam |
hmmmm, what do you think? |
21:49 |
hmmmm |
should definitely be more rare! |
21:49 |
hmmmm |
what do you think about just one definition for gold, and use the 3d noise scattering? |
21:50 |
PilzAdam |
umm... how does that work? |
21:50 |
hmmmm |
you define a noise threshhold and a noiseparams |
21:53 |
hmmmm |
i think a decent noise_params would be like {offset=0, scale=1, spread={x=100, y=100, z=100}, seed=46, octaves=2, persist=.60} and the noise_threshhold should be like 1.20 |
21:53 |
PilzAdam |
do I need clust_scarcity, clust_num_ores and clust_size? |
21:53 |
hmmmm |
yep |
21:53 |
hmmmm |
make the scarcity i'd say, hmm... 11*11*11? |
21:53 |
hmmmm |
and perhaps clust_size=3, clust_num_ores=8 |
21:54 |
hmmmm |
test it above ground first |
21:54 |
hmmmm |
(make height_max something like 100 and make wherein="air") |
21:59 |
PilzAdam |
scale=1 and threshold 1.2? |
21:59 |
hmmmm |
yes, that makes it quite rare |
21:59 |
hmmmm |
but not impossible |
21:59 |
hmmmm |
the maximum value of that is 1.6 |
22:00 |
PilzAdam |
I cant find any gold in the air with this... |
22:00 |
hmmmm |
keep going around |
22:04 |
PilzAdam |
it is definetly too rare |
22:05 |
hmmmm |
hmm |
22:05 |
PilzAdam |
I have set drawtype = "airlike" and light_source = 15 to see it underground |
22:05 |
PilzAdam |
and I had to fly arround for 5 minutes to find 8 ores |
22:05 |
hmmmm |
oh |
22:05 |
hmmmm |
i guess try a threshhold of 0.9 |
22:06 |
proller |
maybe make something like farscale for ores? deeper -> more ? |
22:06 |
proller |
smoothly |
22:06 |
hmmmm |
yeah i was going to add that |
22:06 |
hmmmm |
probably still should |
22:06 |
proller |
and abs(height) for float lands and high mountains |
22:08 |
PilzAdam |
hmmmm, now I found a bunch of 7 clusters or so after flying arround for 2 minutes |
22:08 |
PilzAdam |
thats definetly not good |
22:08 |
hmmmm |
heh uh |
22:08 |
hmmmm |
1.05? |
22:09 |
hmmmm |
maybe i'll come up with the different values |
22:09 |
PilzAdam |
they only appear in very small spots |
22:09 |
hmmmm |
i'll experiment |
22:13 |
PilzAdam |
this is how it looks like with 12, 10 and 48 (^3): http://www.zimg.eu/i/3497533792 |
22:14 |
hmmmm |
crazy |
22:14 |
PilzAdam |
and maybe thats good |
22:14 |
hmmmm |
that's gold!? |
22:14 |
PilzAdam |
yep |
22:15 |
hmmmm |
dunno, we'll try it out, i have a feeling it might need to be more rare though |
22:15 |
PilzAdam |
tweaked the scarcity of the 3 register_ores() i have in the branch |
22:15 |
PilzAdam |
"^ This value should be *MUCH* higher than your intuition might tell you!" (lua-api.txt) |
22:16 |
PilzAdam |
I think we should make mese more rare |
22:17 |
PilzAdam |
currently its 16, 9 and 16; maby make it 24, 12 and 48? |
22:17 |
Exio |
nah |
22:17 |
PilzAdam |
(everything ^3) |
22:18 |
|
kaeza joined #minetest-dev |
22:20 |
VanessaE |
one thing I'd like to see is where mese blocks currently spawn, perhaps they should only ever be one or two, and surrounded by the mese ore, as if the block formed a compressed "core" of mese. |
22:21 |
VanessaE |
(also, I talk good english ;-) ) |
22:48 |
|
pandaro joined #minetest-dev |
22:54 |
hmmmm |
mmm that would be more difficult, vanessa |
22:55 |
hmmmm |
i suppose it can be done, but meh |
22:56 |
hmmmm |
pilzadam, you don't like typing out all those duplicate ores, right? what if i made a ramp for ore distribution and the user gets to choose how it's interpolated |
22:56 |
hmmmm |
linear/quadratic/cubic/logarithmic |
22:56 |
PilzAdam |
what? |
22:57 |
hmmmm |
in other words, the deeper you get, the more ore there is |
22:57 |
PilzAdam |
that would be nice |
22:58 |
hmmmm |
but the ore will be able to increase in relation to the height different rates |
22:58 |
hmmmm |
you could have it even, say, for every 2 blocks you go downward, the density will increase by 2 |
22:58 |
hmmmm |
or you could have it double every 2 blocks you go down |
22:58 |
PilzAdam |
also use abs(height) (for prollers high mountains and floatlands) |
22:58 |
hmmmm |
or any variation thereof |
23:00 |
PilzAdam |
can you also create a minetest.registered_ores table with {[name]=ore_def,...}? |
23:01 |
PilzAdam |
so mods can disable ore defs of other mods |
23:02 |
hmmmm |
that's asking a bit too much |
23:02 |
hmmmm |
there's no unique identifier for ores first off |
23:04 |
PilzAdam |
well, maybe dont add it |
23:08 |
|
kaeza1 joined #minetest-dev |
23:23 |
|
troller joined #minetest-dev |
23:23 |
|
toabi_ joined #minetest-dev |
23:23 |
|
yno_ joined #minetest-dev |
23:23 |
VanessaE |
[03-24 19:19] <khonkhortisan> technic includes unified_inventory is incompatible with creative is required by minetest |
23:23 |
VanessaE |
this needs fixed. |
23:23 |
VanessaE |
(creative being somehow "required") |
23:23 |
|
darkrose_ joined #minetest-dev |
23:23 |
|
darkrose joined #minetest-dev |
23:24 |
|
PilzAdam joined #minetest-dev |
23:35 |
khonkhortisan |
Deleting creative make the error message "ModError: Required common mods "creative" could not be found.", mkdir creative; cd creative; touch depends.txt; touch init.lua makes it stop complaining |
23:35 |
VanessaE |
it must be because I run a custom "game" |
23:35 |
VanessaE |
everything's in one folder (except that individual modpacks are still kept together) |
23:46 |
RealBadAngel |
hmmmm, any examples how to use sheet type? |
23:46 |
khonkhortisan |
RealBadAngel, did you make one of these yet? http://pastebin.com/3VcPWXK7 |