IRCMeeting/20111021

Full Log

[20:09:12] <Ringwaul> Ok, the first topic will be (as listed in the forum) discussion of what developers have recently created
[20:09:44] <Ringwaul> We'll be forming the meeting around who is currently here, not necessarly the top-bottom list of topics
[20:09:49] <Ringwaul> http://pastebin.com/E2E3AYqZ
[20:09:52] <Zapper> Ringwaul, google docs? https://docs.google.com/document/d/106836RpSYWllSw3PavIMLorgZPO1jsJfWhJ48Nb7Hks/edit?hl=en_US
[20:10:05] <Ringwaul> sure
[20:10:49] <Ringwaul> Okay, first in the list, JCaesar with the sound system changes
[20:11:35] <Ringwaul> If you could explain for developers what major differences they need to know
[20:12:22] <Clonkonaut> JCaesar here?
[20:12:30] <Ringwaul> Unless you are busy and would like to pass that on for another meeting/time
[20:12:31] <Zapper> I poked him in TS. But he is muted there as well
[20:12:37] <Ringwaul> Ah, ok
[20:12:49] <Isilkor> <!Ringwaul> Oh, a log?  <- more like minutes
[20:12:50] <Ringwaul> Next topic, Clonkonaut and I will cover the windmill
[20:12:53] <Guenther> As far as I know the only change is that ? means "one character" and * "any number of characters"
[20:13:06] <Guenther> als well as "foo" matches foo.ogg
[20:13:14] <Ringwaul> alright, seems good
[20:13:25] <Maikel`> Is that documented already?
[20:13:43] <Guenther> (And that Sound.ocg sounds are kept in memory, which shouldn't affect script much)
[20:14:02] <Ringwaul> Alright, Clonkonaut, since you scripted the windmill you can take it for now
[20:14:14] <Clonkonaut> okay
[20:14:15] <Guenther> Maikel`: I don't think so, except that WildcardMatch uses the same thing
[20:14:42] <Ringwaul> I made some changes so if need be I will add some comments
[20:15:01] <Clonkonaut> first of all the windmill is an example of a regular producer in OC, like eg the foundry
[20:15:17] <Clonkonaut> we come to that when the producer lib will be explained
[20:15:30] <Clonkonaut> it takes seeds and produces flour
[20:15:59] <Clonkonaut> the windmill needs energy. Unlike a 'regular' producer it can produce energy itself when there's wind
[20:16:12] <Clonkonaut> however, if there's not you can attach an external source of energy
[20:16:17] <Ringwaul> (for now it uses the same particle as the axe for a special effect. we may need to make this a global particle)
[20:17:14] <Clonkonaut> for a future perspective: maybe someone comes up with nice ideas about ~rock dust (or x dust). The mill may be used to crush any object
[20:18:00] <Ringwaul> okay, any questions on the windmill?
[20:18:03] <ST-DDT> how does the windmill detect crushable objects?
[20:18:24] <ST-DDT> is that a funtion or a predefined list
[20:18:27] <Ringwaul> Current it can't, but theoretically it would use IsWindmillIngredient()
[20:18:28] <PeterW> And would flints be crushable? :)
[20:18:44] <Zapper> <Ringwaul> okay, any questions on the windmill? <- it can produce energy. So I guess I can build a windmill as a more expensive wind generator?
[20:19:08] <Clonkonaut> we will alter it to IsWindmillIngredient() @ST-DDT
[20:19:12] <Ringwaul> No, it can only generate engery for itself. It may be able to in the current system, but that is not the plan
[20:19:17] <PeterW> I still think that it's really awkward to have a building be energy producer, consumer *and* production building at the same time
[20:19:31] <Zapper> <Ringwaul> No, it can only generate engery for itself. It may be able to in the current system, but that is not the plan <- well, why not? :)
[20:19:41] <occ> �03gbrammer� * �06b0190500eb� docs/sdk/script/fn/Sound.xml�:� docs: Update Sound() for recent changes
[20:20:02] <Clonkonaut> PeterW: the flint may be crushable, yep. I don't mind where it's done ;) the windmill doesn't produce energy for *other* structures
[20:20:03] <Ringwaul> Zapper: It's not a bad idea, to remove redundancy of the wind-generator. Though that model was well made
[20:20:15] <Zapper> or, to rephrase the question: Did you decide against that feature for some reason?
[20:20:19] <Ringwaul> Unforunately ideas and features should be limited to meta-topic 2 (next meeting)
[20:20:27] <PeterW> Is that a good thing? @ can't produce energy
[20:20:27] <Zapper> okay
[20:20:42] <Clonkonaut> no, just the current state
[20:20:57] <Ringwaul> Okay, let's move onto the next topic
[20:21:09] <PeterW> I mean, it makes sense and everything. But wouldn't a seperate automated millstone structure do so as well? :)
[20:21:16] <Ringwaul> Oh, whoops. Didn't cover the windmill's children topics
[20:21:36] <Clonkonaut> yeah, I can sum the children up
[20:21:44] <Ringwaul> alright
[20:22:06] <Clonkonaut> it's a pretty basic production line wheat -> seeds -> flour -(add water)> bread
[20:22:35] <Ringwaul> When we have the oven, this production line will be complete
[20:22:37] <Clonkonaut> the connection between seeds and flour is the windmill, the connection between flour and bread is missing (the 'kitchen' building)
[20:22:51] <Ringwaul> -oven +kitchen ;)
[20:23:07] <Clonkonaut> yeah, oven, kitchen, whatever, the name doesn't matter :)
[20:23:25] <Clonkonaut> wheat is a plant and behaves like a plant (hoho!)
[20:23:36] <Maikel`> Isn't it possible to put these two buildings together?
[20:23:39] <Ringwaul> Seeds can also (obviously) be planted to grow more wheat, which when harvested yields 2 seeds
[20:23:40] <PeterW> Can it be sown?
[20:23:49] <JCaesar> Here now, sry, meal was too good.
[20:24:00] <Ringwaul> :D
[20:24:02] <Clonkonaut> yes, using seeds (pressing the mouse) will plant wheat when you're standing on soil
[20:24:18] <Ringwaul> There is even a (reused) animation :)
[20:24:33] <Clonkonaut> you can speed up the growing by spilling water all over the place
[20:24:50] <Ringwaul> Too much water drowns the plant, yes? I've experienced that but didn't check the script
[20:24:53] <Clonkonaut> if there's less than 10 pixel (I think) of water the wheat will grow faster
[20:25:08] <Clonkonaut> if there are more pixels, wheat will die
[20:25:14] <Clonkonaut> (more pixels of water)
[20:25:16] <Ringwaul> Ok
[20:25:21] <PeterW> Will it die when not harvested?
[20:25:22] <Clonkonaut> the water is consumed by the plant
[20:25:35] <Clonkonaut> no, it will just be there for now
[20:25:46] <Ringwaul> It also seeds itself, no?
[20:25:50] <Clonkonaut> yes
[20:25:59] <Ringwaul> Okay. That seems to cover that topic
[20:26:01] <Clonkonaut> the source of your first seeds are natural wheat plants
[20:26:03] <PeterW> Hm
[20:26:14] <Zapper> question: Do I need tools for harvesting at the moment?
[20:26:20] <Ringwaul> no
[20:26:22] <PeterW> The water usage wouldn't be enough to be useful for keeping sea levels? ;)
[20:26:33] <Clonkonaut> I will cover harvesting when coming to the plant lib @Zapper
[20:26:42] <Zapper> okay
[20:27:05] <Ringwaul> Okay, if no one objects, let's move onto the Beyond the Rocks scenario folder, topic led by Maikel
[20:28:05] <Maikel`> I just added two scenarios there, so we can test settlement objects in "realistic" scenarios
[20:28:48] <Maikel`> I am not sure what the final goal as intended by Clonkonaut was, but I suspect that we need at least four scenarios for a release
[20:29:46] <Ringwaul> So, in relevance to the Back to the Rocks folder, it will be the folder for the settlement scenarios instead of melee and parkour
[20:29:59] <Guenther> We don't. If someone is uncomfortable with the number of scenarios, we can call it a beta or preview.
[20:30:34] <Maikel`> One scenario is the basic goldmine that we all know from CR, the other is a mountain with lots of iron and coal and you need to mine that.
[20:30:52] <Ringwaul> (Off topic: I would also like to make a bakery scen ;) )
[20:31:01] <Guenther> (Also, the idiosyncratic folder names are cute but not worth the confusion.)
[20:31:24] <Maikel`> I am all for Parkours/Melees/Worlds ;)
[20:31:37] <JCaesar> I hoped Beyond the rocks was intended to be a working title...
[20:31:39] <PeterW> With "Worlds" = settlement?
[20:31:44] <Maikel`> yes
[20:31:58] <Guenther> I'm for nominating someone to make that decision and do the work for implementing it
[20:32:00] * ShadoOw (~ShadoOw@euirc-5688c77b.dip.t-dialin.net) Quit (Quit: Verlassend�)
[20:32:17] <PeterW> Choosing the titles? ;)
[20:32:21] <Guenther> And not bikeshed the naming discussion beyond "a newbie should be able to tell from the title what the contents are about"
[20:32:23] <Zapper> noted down as todo @title of folders
[20:32:27] <Ringwaul> Ok, remember this is only a topic to discuss what's been made, where we will discuss where we take it from there in meeting 2
[20:32:27] <ST-DDT> a short description would be enough
[20:32:33] <PeterW> Maikel's proposal sounds sane
[20:32:52] <Clonkonaut> Beyond the Rocks was just my first idea about a scenario folder
[20:32:55] <Ringwaul> Short ideas and proposals are fine
[20:33:09] <Clonkonaut> as Guenther said it thought it was cute :)
[20:33:27] <PeterW> Cute yes, but hard to distinguish :)
[20:33:28] <Maikel`> Closing this topic, these scenarios may be abused for any settlement testing purposes.
[20:33:54] <Ringwaul> Okay, next topic: the liquid pipe system. ST-DDT will be covering this one, as well as Clonkonaut
[20:34:12] <PeterW> (plus we might not want to call the next release "Back to the rocks" anymore.(
[20:34:39] <Ringwaul> Zapper: please delete topic 15 as we don't have enough time for something so irrelevant
[20:34:46] <Zapper> sure
[20:34:56] <Clonkonaut> I can give a rough summary on how I think the liquids work but I'm not sure
[20:35:05] <Clonkonaut> so ST-DDT might want to take the first steps ;)
[20:35:10] <ST-DDT> in CR the pump calls ObjectExtractLiquid
[20:35:22] <occ> �03gbrammer� * �b0e41a67402b� Version.txt�:� Post-release version bump
[20:35:40] <ST-DDT> in my opion this is bad, because you cannot block liquid flow
[20:35:49] <Guenther> PeterW: The only reason 5.2 was still called that was that I didn't feel like changing the graphics
[20:36:13] <ST-DDT> so i decided to change this to LiquidOutput/LiquidGet
[20:36:37] <Ringwaul> So a "spout" can be shut on/off and an object can request liquid?
[20:36:40] <ST-DDT> LiquidOutput and Input are for Structures and Vehicles
[20:36:52] <ST-DDT> yes
[20:37:11] <Ringwaul> (sorry, didn't mean to interrupt :/)
[20:37:13] <ST-DDT> it ask the source pipe give me 10 "water"
[20:37:48] <ST-DDT> and than the pipe will ask the connected linekit or structure
[20:38:04] <boni> wouldn't it be better to ask the pipe itself, and the pipe then determines where it takes it from? (inb4 star-connections for pipes, or multiple pipes connected after each other)
[20:38:09] <ST-DDT> this will return "oh sorry i only got 3 water"
[20:38:44] <ST-DDT> after that the pump put this 3 water into the drainpipe
[20:39:23] <PeterW> That's almost like pressure, isn't it? :)
[20:39:24] <ST-DDT> but the connected steamengine don't want water so it returns a 0
[20:39:45] <Zapper> What if a pump does not know how much water is left in the lake?
[20:40:19] <ST-DDT> the pump cannot empty its contents until the pumptarget acept this
[20:40:23] -occ:#openclonk-dev- linux-x86-gcc build status: �03c4group c4script clonk OK� (built branch default (b0e41a67402b); Log: http://hg.openclonk.org/+lLWbBwQ0)
[20:40:28] * Sven2 (_ve_2@goldwipf.de) Quit (Quit: �)
[20:40:42] <ST-DDT> the pump only limit which and how many liquid is pumped
[20:40:48] <Ringwaul> That makes sense
[20:41:07] <ST-DDT> you can also ask for anything using "*"
[20:41:36] <ST-DDT> the linekit uses ExtractLiquid to gain these materials
[20:41:54] <PeterW> So you can just pluck everything together and get a network that can deliver anything you "ask" for?
[20:41:56] <ST-DDT> you can also redirect liquids
[20:42:05] <ST-DDT> yes
[20:42:20] <Maikel`> how abount infinite loops?
[20:42:40] <PeterW> Not sure I see the problem that solves
[20:42:51] <ST-DDT> LiquidInput(String Material, int amount, object pPump, object pPipe)
[20:43:05] <ST-DDT> infine loops aren't blocked at this time
[20:43:36] <ST-DDT> but this could be fixed using a counterparam
[20:44:01] <ST-DDT> which terminate execution after 100 redirection
[20:44:15] <ST-DDT> or you cann append a list of visited structures
[20:44:43] <Maikel`> Okay, that's fine
[20:44:54] <ST-DDT> i included two libaries, which are sample codes at the moment
[20:45:14] <Maikel`> I still need to see it in action for some production facility that needs liquid (I need to adapt the producer library)
[20:45:24] <Zapper> Maikel`, windmill? ;)
[20:45:36] <Ringwaul> Kitchen makes more sense, for baking bread
[20:45:38] -occ:#openclonk-dev- linux-x64-clang build status: �03c4group c4script clonk OK� (built branch default (b0e41a67402b); Log: http://hg.openclonk.org/+OJlnPbrf)
[20:45:39] <Maikel`> yes, that requires some coding still
[20:45:48] <Zapper> ah, right, kitchen, sorry
[20:45:49] <ST-DDT> the first offers an internal tank like the steamengine could use. (limited to oil)
[20:46:42] <Zapper> So the libraries are not general yet?
[20:46:50] <ST-DDT> the script is compled i think you only have to LiquidInput(....)
[20:46:50] <ST-DDT> if Material!=oil
[20:46:50] <ST-DDT> return 0
[20:46:50] <ST-DDT> return _inherited;
[20:47:12] <Zapper> ("general" as in "dynamic")
[20:47:33] <ST-DDT> i think they are dynamic
[20:48:04] <Maikel`> I see some need for changes in these libraries coming from the interplay with the producer anyways
[20:48:18] <Ringwaul> (note: I grossly under-estimated time needs, so we will extend meta-topic 1 until the end of the hour :/)
[20:48:32] <ST-DDT> as i sayed befor you only have to write 3 lines to implement the functionallity of steamengine
[20:48:33] <Ringwaul> (We should have a short time after to assign tasks)
[20:48:53] <Maikel`> Btw I have dinner in a few minutes
[20:49:02] <ST-DDT> the second libary does that what the engine in CR did before inserting lqiuids to barrels
[20:49:25] <Ringwaul> Maikel: okay, we'll cover the producer next, if that's Ok
[20:49:35] <ST-DDT> i finished
[20:49:42] -occ:#openclonk-dev- win32-x86-mingw build status: �03c4group c4script clonk OK� (built branch default (b0e41a67402b); Log: http://hg.openclonk.org/+ixulCJvX)
[20:49:44] <Ringwaul> Alright
[20:49:46] <Zapper> kk
[20:50:41] <Maikel`> ok
[20:50:41] <ST-DDT> what is occ notice.....
[20:50:59] <ST-DDT> the compiler?
[20:51:02] <Ringwaul> ST-DDT: yes
[20:51:02] <Clonkonaut> yep
[20:51:18] <Ringwaul> Maikel, can you cover the topic or do you want to delay it for another time?
[20:51:27] <Maikel`> The producer library covers all aspects of automatic object production by structures
[20:51:35] <Ringwaul> ah, k
[20:51:36] <Ringwaul> ;)
[20:51:37] <Maikel`> I'll do it now, 10mins before dinner
[20:53:03] <Maikel`> The user can currently add requests to a queue which the producer will execute if resources, etc. are available (due to missing menus, you can't clear queues add multiple item's
[20:53:08] <Maikel`> view the queue etc.
[20:53:10] <Maikel`> )
[20:53:31] <Ringwaul> (Newton had a nice menu design for that btw)
[20:53:49] <PeterW> What about automated production?
[20:54:04] <Maikel`> The library then checks for components, fuel, liquids(TODO) and power and executes production
[20:54:07] <Maikel`> automated as in?
[20:54:10] -occ:#openclonk-dev- win32-x64-mingw build status: �03c4group c4script clonk OK� (built branch default (b0e41a67402b); Log: http://hg.openclonk.org/+v3XQOI98)
[20:54:36] <Maikel`> If you leftclick ore in the foundry you just need to throw in ore and coal and it works
[20:54:44] <PeterW> Well, it produces whatever you selected until you select something else or it runs out of resources
[20:55:17] <Maikel`> it produces 1 (rightclick) or inf(leftclick), but better menus should improve that
[20:55:59] <PeterW> Well, imo infinite production makes most sense as the default
[20:56:16] <PeterW> That makes it consistent with mill-like structures
[20:56:31] <Zapper> (I don't think that is wise!)
[20:56:38] <Maikel`> only for the foundry currently, certainly not for the toolshed
[20:56:39] <PeterW> (Obviously it should have a stop setting)
[20:56:58] <PeterW> Toolshed?
[20:57:00] <Zapper> Noted down in the protocol
[20:57:08] <Ringwaul> PeterW: tools workshop
[20:57:12] <Clonkonaut> if we decide on automated production, we should make a seperated workshop library
[20:57:14] <Maikel`> We need better menus :(
[20:57:21] <Clonkonaut> which produces 'on demand'
[20:57:31] <PeterW> Yeah, better menus we need ;)
[20:57:57] <Ringwaul> Ok, anything else?
[20:58:06] <Maikel`> the interface is the problem currently, not the library(although that needs some work if the interface is better)
[20:58:12] <Maikel`> yeah
[20:58:20] <Maikel`> automatic rejection of contents
[20:58:32] <PeterW> Well, it sort-of makes sense for workshops, as you mostly only need one item of what you want to produce
[20:58:46] <Maikel`> I intended the library to automatically reject anything that isn't need for production
[20:58:49] <PeterW> But say, for chemical stuff, mass-production might be the more common case
[20:59:09] <Maikel`> but this currently means looping through all definitions on a RejectCollect() call :(
[20:59:37] <Clonkonaut> that's why Ringwaul inserted the Is*Ingredient callback
[20:59:53] <PeterW> We'd actually need it the other way round
[21:00:04] <PeterW> UsesIngredient() in the producer
[21:00:13] <Clonkonaut> the current producers, foundry and windmill, only accept items flagged as IsFoundryIngredient / IsWindmillIngredient
[21:00:16] <Zapper> <Clonkonaut> that's why Ringwaul inserted the Is*Ingredient callback <- which means I cannot add a new item that needs wood without changing the script of wood, too :<
[21:00:22] <PeterW> We'd need that anyway for menus - at least the way I'd imagine them
[21:00:35] <Maikel`> actually you can get the used ingredients from components and fuel
[21:00:41] <Ringwaul> Hm? I made Is*Ingredient so it would be extendable
[21:01:10] <JCaesar> Hm, why do we need a loop over all Definitions on all RejectCollect()-Calls?
[21:01:13] <JCaesar> Actually, only once would be fine, right?
[21:01:16] <Maikel`> Yeah the thing ringwaul introduced fails(no offense)
[21:01:22] <Ringwaul> heh :)
[21:01:27] <Zapper> dislike from my side!
[21:01:44] <Maikel`> once in initialize may be fine
[21:02:06] <JCaesar> Once globally should suffice.
[21:02:14] <PeterW> What's the harm in making it explicit in the producer?
[21:02:25] <Ringwaul> I added that becaues I didn't quite understand how producers defined what they could collect. I noticed windmills collecting flour and foundries collecting metal, and that's not right
[21:02:27] <Maikel`> or we introduce FindDefinition :)
[21:02:32] <PeterW> It seems strange that a single faulty object definition might change the object rejection behaviour of the lab
[21:02:37] <JCaesar> PeterW: You risk forgetting one of the two things.
[21:02:56] <PeterW> Well, you just need to test whether you can actually produce it
[21:03:17] <Zapper> okay. I marked that in a BIG �4RED�1 in the protocol
[21:03:27] <Zapper> discuss another time? :)
[21:03:31] <Maikel`> meta topic 2
[21:03:33] <Ringwaul> Yes, looks like it
[21:03:34] <Clonkonaut> no, you need to test whether an object you can produced is made of this
[21:03:34] <JCaesar> And then you change the ingredients of an object and forget that it is not needed any longer.
[21:03:34] <Maikel`> <-- dinner
[21:03:37] <JCaesar> Zapper, hm, well, k.
[21:03:49] <Clonkonaut> -d
[21:03:57] <PeterW> Well, you'd see it pop up in the menu all the time
[21:03:58] <PeterW> Hm
[21:04:06] <PeterW> I suppose that argument cuts both ways though.
[21:04:08] <PeterW> But let's move on :)
[21:04:14] <Ringwaul> Meta topic 3 rather
[21:04:23] <Ringwaul> I know it's weird, but meta-topic 2 will be in meeting 2
[21:04:42] <PeterW> What's a meta-topic? o_O
[21:04:44] <Zapper> I don't even know what meta topic 2 is, so it's okay
[21:04:47] <Clonkonaut> okay, gold bar / nugget?
[21:04:57] <Ringwaul> Ah, quick explaination
[21:05:10] <JCaesar> http://forum.openclonk.org/topic_show.pl?tid=866 <- PeterW: The numbers listed here.
[21:05:15] <PeterW> perhaps discussing whether topics make sense? :)
[21:05:21] <PeterW> That would be a meta-topic
[21:05:29] <Ringwaul> 3 gold nugget + 1 coal = gold bar from foundry. Currently we have concensus what gold will be used for
[21:05:40] <Ringwaul> no consensus*
[21:05:47] <Zapper> ah :D
[21:06:01] <Ringwaul> Now onto assigning tasks from the settlement design document :D
[21:06:14] <PeterW> We haven't? o_O @ consensus
[21:06:18] <Clonkonaut> first thing I want to say: I know the naming objections against nuggets and I have in mind renaming it to 'gold' again.
[21:06:40] <Zapper> PeterW, we two do not count as a consensus I am afraid :)
[21:06:44] <Ringwaul> The most priority things we need are finishing the producer menu system and creating the buildings
[21:06:47] <JCaesar> PeterW: Not really, since some (including me) are against classicale base trading.
[21:07:03] <PeterW> Then be against gold
[21:07:56] <Ringwaul> up till now clonkonaut and I have been coordinating in the creation of the producer buildings
[21:07:57] <PeterW> I mean, when there's no gold, there won't be trading
[21:08:24] <PeterW> This only becomes an issue if you *also* want to do something else with gold, no?
[21:09:12] <Ringwaul> Buildings that still need to be made are: Armory, Chemical Lab, Kitchen (oven?), Loom, Inventor's Shop, and Shipyard
[21:09:20] <Ringwaul> Both graphically and script-wise
[21:09:51] <Ringwaul> Since they mostly inherit from the producer, scripting shouldn't be too much work
[21:10:32] <Ringwaul> I was thinking for the graphical section, Mimmo_O and I would concept and model the remaining structures
[21:11:18] <Ringwaul> Is that agreeable? Or would you like to work on a different subject?
[21:11:32] <Clonkonaut> in case you lack of ideas, I maybe would make some drafts
[21:12:13] <Ringwaul> Sounds good. I don't have too much experience with structural design. Also, if Matthi has the time his designs are also nice
[21:12:50] <Ringwaul> Ping! Mimmo_O
[21:12:55] <Ringwaul> You there? :z
[21:13:01] <JCaesar> Clonkonaut: The shipyard needs a large pump to fill the baloon!
[21:13:20] <Zapper> and it needs to pump water in there so that I can throw my air ship onto the head of my enemy
[21:13:46] * JCaesar doubts you can carry a blimp filled with water)
[21:13:53] <Ringwaul> heh
[21:14:14] <Clonkonaut> did we skip the remaining topics btw?
[21:14:20] <JCaesar> .oO(airship-acid-bomb)
[21:14:40] <Ringwaul> Clonkonaut: We're leaving them for tomorrow
[21:14:55] <Clonkonaut> oh :I
[21:15:08] <Clonkonaut> I'm maybe not present tomorrow!
[21:15:31] <Ringwaul> Shucks. Well, topic 3 seems a lot more barren than I anticipated
[21:15:43] <Zapper> What is topic 3? :<
[21:16:01] <JCaesar> "3. Assigning tasks from the Settlement Design Doc. This should be fairly straightforward."
[21:16:15] <Clonkonaut> I could finish my topics today. Eat and StonyObjectHit aren't much to tell which would leave us with the plant lib
[21:16:24] <Ringwaul> Okay, that seems like a good idea
[21:16:39] <Ringwaul> Let's return to that for the remainder of today's meeting
[21:17:51] <Clonkonaut> okay, I'll make it quick
[21:18:41] <Clonkonaut> StonyObjectHit generates a proper hit sound for "stony objects" (rock, ore, nugget, ...)
[21:19:00] <Zapper> Is that a sound or a function?
[21:19:07] <Clonkonaut> a function
[21:19:08] <Zapper> Sound("StonyObjectHit*")?
[21:19:10] <Zapper> ah
[21:19:12] <Zapper> any reason for that?
[21:19:13] <Clonkonaut> StonyObjectHit(x,y)
[21:19:20] <Ringwaul> Zapper: yup
[21:19:36] <Clonkonaut> x and y are the same parameters of hit and an object should just pass them on
[21:19:38] <Guenther> For 20., I can offer these three links: http://forum.openclonk.org/topic_show.pl?pid=14337#pid14337 http://forum.openclonk.org/topic_show.pl?tid=815 http://bugs.openclonk.org/view.php?id=532
[21:20:02] <Clonkonaut> (func Hit(x,y) { StonyObjectHit(x,y) })
[21:20:19] <Zapper> What does that function do?
[21:20:24] <Clonkonaut> when hitting soft ground (earth, sand, everthing with CanDig=1) it sounds a 'thump'
[21:20:25] <Ringwaul> This way, a stone object makes a different sound when it hits a soft surface than a hard surface
[21:20:34] <Zapper> ah
[21:20:36] <Zapper> okay
[21:20:41] <Clonkonaut> when hitting hard ground (rock, ore, everything with no CanDig) it a sounds 'clang'
[21:20:52] <Clonkonaut> (I called them SoftHit* and HardHit* iirc)
[21:21:04] <Guenther> (Soon, you'll be able to do that with just local Hit = some_lib.StonyObjectHit; I'm almost done with the necessary engine changes.)
[21:21:07] <Isilkor> shouldn't it make more of a clack if it's a stony object
[21:21:18] <Ringwaul> Günther: neat :)
[21:21:30] <Clonkonaut> Isilkor: imagine throwing a rock into mud
[21:21:36] <Clonkonaut> it doesn't clang, it thumps!
[21:21:56] <Clonkonaut> but when throwing it against a cliff, it clangs
[21:21:57] <Isilkor> 21:20 <!Clonkonaut> when hitting hard ground (rock, ore, everything with no CanDig) it a sounds 'clang'
[21:22:00] <Ringwaul> I think he meant "clang" is a metal sound where "clack" is a rock sound
[21:22:14] <Clonkonaut> oh yeah, whatever ;)
[21:22:38] <Clonkonaut> because the thumps were awkward for sliding objects
[21:22:44] <Ringwaul> Forreal
[21:22:58] <Ringwaul> We'll also need another for metal objects clanging against hard surfaces
[21:23:06] <Clonkonaut> StonyObjectHit() produces a lighter sound if the object's fast
[21:23:17] <Clonkonaut> (assuming it will slide on eg it is on a slope)
[21:23:21] <Ringwaul> Oh, cool. Didn't know
[21:23:22] <JCaesar> stone->dirt:thumb,stone->stone:clak,stone->iron:doing,wood->dirt/stone:thumb,wood->iron:dong,*->slide:slrf.
[21:23:25] <JCaesar> Or so?
[21:24:07] <Clonkonaut> okay, that's with stonyobjecthit. It is somwhere in System.ocg. Probably Helpers.c
[21:24:10] <Ringwaul> Well, we figure ore/rock will probably make the same sound when hit as a landscape material
[21:24:58] <Clonkonaut> Eat() is more or less a dummy function in the clonk
[21:25:12] <Clonkonaut> just regaining energy. Eat(10)->10 energy
[21:25:33] <Ringwaul> By the way, did you disable movement while eating?
[21:25:41] <Clonkonaut> I hope so
[21:25:46] <Ringwaul> I added a check so he could only do it while walking
[21:25:51] <Clonkonaut> no, I think itÄs disabled
[21:25:54] <Clonkonaut> *'
[21:25:59] <Ringwaul> ah, kk
[21:26:17] <Clonkonaut> okay, plants
[21:26:22] <Clonkonaut> last of my topics
[21:27:03] <Clonkonaut> Engine changes for plants: Placement=3 will place the plants underground (tunnel background), Placement=4 is a combination of 0 (surface) and 3 (underground)
[21:28:15] <Clonkonaut> short plants are moved up/down if needed. The position is determined by two vertices (CNAT_Center should be free, CNAT_Bottom should have contact)
[21:28:35] <Clonkonaut> this is done Construction. I just fixed the function, it was in there before I started
[21:28:46] <Ringwaul> >_>
[21:28:52] <Clonkonaut> *in Construction
[21:29:03] <ST-DDT> are CNAT_Left==1/2 in CR they weren't
[21:29:18] <Ringwaul> Written by some nub who couldn't script worth beans ~cough~ me ~cough~
[21:29:52] <Clonkonaut> there are two type of plants which do more than just 'being there'
[21:29:54] <Ringwaul> you can check the docs
[21:30:32] <Clonkonaut> one are wood-giving plants (like trees)
[21:30:53] <Zapper> Mh, construction?
[21:30:54] <Matthi> You may make a list of needed designs
[21:31:00] <Matthi> And maybe I'll have a go^
[21:31:02] <Zapper> Does that mean that I cannot place plants via script on certain positions?
[21:31:02] <Clonkonaut> just having IsTree() return true; is enough
[21:31:05] <ST-DDT> i mean the CNAT_values have i numerical repleacement, but this changes functionallity to
[21:31:13] <ST-DDT> in CR
[21:31:46] <Matthi> but for now, I'll go to a Currywurstparty, see you later
[21:31:48] <Clonkonaut> Zapper: they may change their position by around 5 pixels
[21:31:54] <Ringwaul> bai bai
[21:31:54] <Zapper> Ah, okay
[21:32:03] <Zapper> I thought they look for a proper place on the landscape
[21:32:24] <Clonkonaut> nono. They just look if CNAT_Center has contact
[21:32:52] <Ringwaul> I take it that it doesn't create an infinite loop if CNAT_Centre is under CNAT_Bottom? ;)
[21:33:05] <Clonkonaut> I'll check that :)
[21:33:10] <Clonkonaut> okay, the second type of important plants (next to trees) are harvestable crops
[21:33:20] <Zapper> What do trees do?
[21:33:29] <Clonkonaut> being chopped down
[21:33:32] <Zapper> kk
[21:33:38] <Clonkonaut> and then being cut into wood
[21:33:42] <Clonkonaut> with the sawmill or the axe
[21:34:08] <Clonkonaut> doing it with an axe is lossy (only half of the wood of the wood)
[21:34:20] <Clonkonaut> -wood +tree
[21:34:36] * clonkine (~test@87.185.161.euirc-923b5638) has joined #openclonk-dev
[21:34:47] <Ringwaul> And crops?
[21:34:58] <Clonkonaut> to have a harvestable plant, it needs CanBeHarvested() return true
[21:35:16] <Clonkonaut> IsHarvestable will return true if GetCon() >= 100
[21:35:28] <Clonkonaut> only if the plant is IsHarvestable, it will show up in the action bar
[21:35:34] <Ringwaul> ">=" giant pumpkins!
[21:35:42] <Ringwaul> :D
[21:35:44] <Clonkonaut> Interacting will then do Split2Components
[21:35:45] <Zapper> I still think that "IsHarvestable" is exactly the same as "CanBeHarvested" :x
[21:35:48] <Zapper> language-wise
[21:36:24] <Ringwaul> Yeah, but might as well stick with the "Is" standard
[21:36:24] <Clonkonaut> yes. I just need two functions because no one wanted this.Harvest ;)
[21:36:35] <Zapper> IsCrop? :]
[21:36:45] <Guest462071> ReadyToHarvest?
[21:36:56] <Clonkonaut> yeah, that'll do
[21:37:00] <Clonkonaut> *note*
[21:37:07] <Zapper> I will change it to IsCrop in the protocol then!
[21:37:24] <Clonkonaut> the tool is a reoccuring topic
[21:37:43] <Clonkonaut> my first attempt is now 'no tool'
[21:38:06] * Matthi (~a@clonk-center.de) Quit (Connection reset by peer�)
[21:38:07] <Clonkonaut> if we want an harvesting tool, I would prefer a scythe
[21:38:25] <PeterW> Sword?
[21:38:31] <Clonkonaut> and definitely not the sword
[21:38:36] <boni> :D
[21:38:41] <PeterW> That's how Terraria does it! :)
[21:38:43] <boni> Zapper has planted a seed in PeterWs head.
[21:38:50] <Zapper> swords are just cool, ok
[21:38:56] <Clonkonaut> the sword is produced in the armory
[21:39:11] <Zapper> However currently I am completely fine with using the hatchet (=tools workshop) for harvesting too!
[21:39:17] <Clonkonaut> assuming we have a peaceful settlement game (so ~80% of the time?), there is no need for an armory
[21:39:50] <PeterW> I'd prefer "no tool" or something existing to having a new one
[21:39:51] <Clonkonaut> by making the sword mandatory we will force the player to construct an otherwise useless building
[21:40:11] <Zapper> mh, the axe is produced in the tools workshop, right?
[21:40:20] <Clonkonaut> yes
[21:40:32] <Zapper> kk, I am all for renaming the axe to "hatchet" and use it for harvesting! /o/
[21:40:35] <Zapper> *using
[21:40:49] <Ringwaul> heh
[21:41:00] <Zapper> it's only 50% as cool as the sword, though
[21:41:06] <Clonkonaut> that'd be strange
[21:41:20] <Ringwaul> Is we use an axe for chopping, killing, and harvesting that seems a bit much
[21:41:34] <PeterW> Make it work with the sword as well. Give an achievement for coolness if somebody uses it!
[21:41:46] <Zapper> that's what I want :<
[21:41:58] <Zapper> Hatchet: Trees, Crops, weak weapon. Sword: Crops, stronger weapon!
[21:41:59] <PeterW> We just have to make it less good at killing
[21:42:15] <PeterW> Then I think it should be okay
[21:42:16] <Clonkonaut> yeah. Probably a Rainbow Dash icon for harvesting it 20% cooler
[21:42:20] <Zapper> So that you could defend your settlement against evil monsters even in the beginning of a settlement game! ;)
[21:42:39] <Ringwaul> So no scythe for harvesting? :<
[21:42:44] <Zapper> hatchet!1
[21:42:53] <Clonkonaut> PeterW: less good for killing? The sword?
[21:42:56] <PeterW> I don't know. Would you have another use for it in mind?
[21:42:59] <PeterW> No, the axe
[21:43:06] <Clonkonaut> the axe is very weak
[21:43:12] <Clonkonaut> it does 5 damage
[21:43:12] <Zapper> "axe" sounds too mutch like the killing tool for me :<
[21:43:19] <PeterW> That's okay then?
[21:43:25] <PeterW> Yeah, whatever, hatchet
[21:43:40] <PeterW> Does it still blow back the opponent?
[21:43:47] <Clonkonaut> well, a hatchet is certainly no tool for chopping big trees
[21:43:55] <PeterW> That could be *very* useful to keep monsters out of your settlement already
[21:43:57] <Clonkonaut> no @blowing back
[21:44:02] <Clonkonaut> that's what the club is for
[21:44:03] <PeterW> Even without huge damage
[21:44:04] <PeterW> Ah
[21:44:05] <PeterW> Hm
[21:44:11] <Zapper> Clonkonaut> well, a hatchet is certainly no tool for chopping big trees <- Since ancient times people even used herrings for that!
[21:44:19] <Ringwaul> :)
[21:44:37] <Clonkonaut> the fighting aspect of the axe is a mere gimmick just because it feels right to be able to hack on enemies
[21:44:59] <Clonkonaut> but two weapon to balance (sword, club) are enough for 'big killing'
[21:45:04] <Clonkonaut> the axe will not interfere with this
[21:45:49] <Zapper> Nothing against that!
[21:46:19] <Clonkonaut> and I'd rather have no tool for harvesting than forcing the player to produce a sword
[21:46:23] <Ringwaul> Wellp, I do have to go now. Feel free to add whatever results of more discussion in the protocol :)
[21:46:32] <Zapper> Clonkonaut, hatchet!111
[21:46:41] <Zapper> the sword can harvest stuff as a gimmick!
[21:46:42] <boni> chopchop
[21:46:45] <Ringwaul> night everyone
[21:46:49] <Zapper> good night!
[21:46:55] * Ringwaul (~quassel@euirc-2eae63cb.va.shawcable.net) Quit (Quit: baibai�)
[21:47:09] <Clonkonaut> yeah, that's again counter-intuitive
[21:47:58] <Zapper> how? :<
[21:47:59] <Clonkonaut> I never harvested wheat though I think a hatchet is of no help
[21:48:05] <Zapper> If I hit crops with a sword, the crops die, ok
[21:48:06] <JCaesar> irl, harvesting can be done with teeth, buttcheeks or preferably your bare hands. 
[21:48:18] <JCaesar> So could could basically harvest with anything.
[21:48:26] <Zapper> harvesting needs something sharp to cut the wheat
[21:48:37] <Zapper> a scythe is a lot more comfortable than a hatchet
[21:48:41] <Zapper> latter works, though!
[21:49:11] <Zapper> also I doubt it will be counter-intuitive for the player!
[21:49:14] <Clonkonaut> and you need something sharp. The hatchet isn't sharp enough
[21:49:41] <Zapper> i doubt you can see that in the picture of the hatchet :)
[21:49:42] <Zapper> anyway
[21:49:47] <Zapper> anything else left for the meeting?
[21:49:54] * Guest462071 is now known as Randrian
[21:50:06] <Clonkonaut> nope, that was my part. The rest's for tomorrow
[21:50:19] <Zapper> Then I would put the protocol into the forum
[21:51:07] <PeterW> That "animated materials" stuff is for tomorrow as well then?
[21:51:16] <Zapper> animated materials?
[21:51:23] <Zapper> like, animated graphics?
[21:51:26] <Zapper> *textures
[21:51:30] <PeterW> I don't know, somebody put it on the list, next to my name :)
[21:51:45] <Zapper> oh, I guess so.. :)
[21:52:33] <PeterW> Well, I have to go as well.
[21:52:41] <PeterW> See you all tomorrow then
[21:52:44] * PeterW (~scpmw@euirc-2cb74147.csunix.comp.leeds.ac.uk) Quit (Quit: Leaving�)