Timestamps are in GMT/BST.
| 01:19:58 | | BFLogBot Commit: 591ba94eb665 | Author: kaen | Message: document Event handler signatures for luadocs |
| 03:33:59 | | BFLogBot Commit: aa5958cfa4bf | Author: watusimoto | Message: Fix dedicated build |
| 03:34:01 | | BFLogBot Commit: 58ea672fcc2f | Author: watusimoto | Message: No paced help items in the last 20 seconds of the game. Also created a passthrough function for remaining game time. |
| 03:34:02 | | BFLogBot Commit: 4fa4c6a90046 | Author: watusimoto | Message: Merge |
| 03:40:52 | | LordDVG has joined |
| 04:43:19 | | Watusimoto has joined |
| 06:13:33 | | Watusimoto Quit (Ping timeout: 256 seconds) |
| 07:34:27 | | koda has joined |
| 07:37:02 | | LordDVG Quit (Ping timeout: 268 seconds) |
| 07:43:45 | | LordDVG has joined |
| 09:31:57 | | Skybax has joined |
| 09:35:18 | | raptor has joined |
| 09:35:18 | | ChanServ sets mode +o raptor |
| 09:35:55 | raptor | good day! |
| 09:36:38 | Skybax | Hi! |
| 09:45:45 | | Watusimoto has joined |
| 09:55:22 | raptor | commits! |
| 10:04:38 | raptor | Watusimoto: kaen and I have been discussing Lua API clean-up and I'd like to bounce a few ideas off of you |
| 10:05:47 | raptor | 1. There are many methods shared between levelgen: and bot: (like findObjects, findObjectById, etc.) and I was thinking of putting those things into a parent class |
| 10:06:03 | raptor | so we don't duplicate them in each of bot: and levelgen: |
| 10:06:44 | raptor | we think the parent class could be called 'GameScript' and be a child of 'LuaScriptRunner', and maybe use namespace of 'game' |
| 10:07:19 | raptor | so game:findObjectById() |
| 10:08:52 | raptor | 2. The GameInfo object is a little weird - much of it is GameType specific instead of Game specific. I was thinking of splitting out the GameType stuff into its own object as well |
| 10:11:33 | raptor | 3. making minor API changes like :getTeamIndx() to getTeam() or getTeamIndex() |
| 11:28:13 | | Watusimoto Quit (Ping timeout: 264 seconds) |
| 11:30:06 | raptor | thanks for listening! |
| 11:30:10 | | raptor Quit () |
| 12:04:48 | | Watusimoto has joined |
| 12:15:40 | | LordDVG Quit (Ping timeout: 256 seconds) |
| 12:56:32 | | fordcars has joined |
| 13:00:18 | Watusimoto | hi |
| 13:00:24 | Watusimoto | sorry I missed your comment before |
| 13:02:47 | Watusimoto | 1. Not sure about the namespace, but a common scripting parent makes sense... so much sense we already have one! LuaScriptRunner |
| 13:04:35 | Watusimoto | 2. The distinction between game and gametype has always been a bit fuzzy... but there is no reason to carry that over into the lua world. I would only be in favor of this if it made things clearer for the programmer (who may well not be well versed in the Bitfighter internal object hiearchy) |
| 13:06:01 | Watusimoto | 3. Yes, I would support that sort of thing. Some of those goofball names were chosen so as to not conflict with already existing internal methods, but we now have a way of handnling those conflicts, so we could change the names if we can do so in a way that doesn't break too many scripts, or make it too painful to fix the scripts we do break |
| 14:04:52 | Watusimoto | this is a declaration I've never used before... didn't even know it was valid before I tried it out of frustration (and it worked!) |
| 14:04:54 | Watusimoto | const char * const *messages |
| 14:05:11 | Watusimoto | coding while angry |
| 14:05:20 | Watusimoto | no better strategy! |
| 14:13:44 | Skybax | I'm goin out on a boat todai |
| 14:15:28 | | LordDVG has joined |
| 14:23:09 | kaen | a const pointer to a const char? |
| 14:23:59 | kaen | whoa. pointer to a const pointer to a const char? |
| 14:24:07 | kaen | ouch my brain |
| 14:32:43 | Skybax | Hahaha |
| 14:32:52 | | Skybax Quit (Quit: Skybax) |
| 14:44:42 | Watusimoto | kaen: not sure. but the compiler must know because it compiles! |
| 14:45:20 | kaen | Watusimoto, did you look at the event callback signature docs? |
| 14:45:35 | kaen | and do you have any feedback? |
| 14:45:41 | Watusimoto | also, I if you didn;t see, I answereed raptor's questions he asked me earlier related to a conversation he and you were having at some earlier time |
| 14:45:45 | Watusimoto | no, I did not look |
| 14:45:57 | Watusimoto | are they online somewhere, or should i generate them locally? |
| 14:46:06 | kaen | pull and regenerate |
| 14:46:30 | Watusimoto | ok, will do in a few minutes, when I have my code under control again |
| 14:46:34 | kaen | ok |
| 14:46:52 | Watusimoto | I'm sure I'll like them though :-) |
| 15:10:57 | Watusimoto | turns out I had already pulled the code... building luatdocs now |
| 15:13:54 | Watusimoto | is this the page you worked on? |
| 15:13:57 | Watusimoto | doc/html/group___event_enum.html |
| 15:32:18 | | raptor has joined |
| 15:32:18 | | ChanServ sets mode +o raptor |
| 15:32:25 | raptor | hello! |
| 15:36:10 | kaen | yes, that's the one |
| 15:36:24 | kaen | and hello! |
| 15:42:23 | Watusimoto | looks good! |
| 15:43:04 | Watusimoto | I don't remember what was there before, but I'm sure this is better |
| 15:43:57 | kaen | just a list of the events |
| 15:47:26 | | BFLogBot Commit: 97c764cb74f3 | Author: watusimoto | Message: Comment |
| 15:47:28 | | BFLogBot Commit: bc43482c532c | Author: watusimoto | Message: Systemitize addition of inline help items for select gameObjects; replaces growing list of if-then code |
| 15:47:29 | | BFLogBot Commit: 78e7369120d0 | Author: watusimoto | Message: Add a little more text to lua event docs |
| 15:47:40 | Watusimoto | I wonder if this would be the right place to add information about how to subscribe to events and such? |
| 15:48:30 | raptor | better than having the doc here in the IRC channel! :) |
| 15:48:54 | kaen | I think we should just describe the api in the appropriate class docs, have the enum page be a simple list of data, and put task-centric tutorials as pages or examples in doxygen |
| 15:49:08 | raptor | ^^ that sounds good |
| 15:50:28 | Watusimoto | when it comes to documentation, I like redundancy... I hate having to spend hours sifting thorugh links to find the tidbit I need. That comment neither supports nor refutes your statement. |
| 15:57:21 | | LordDVG Quit (Remote host closed the connection) |
| 16:01:04 | raptor | maybe add a note that points to the subscribe |
| 16:01:21 | Watusimoto | done in last commit |
| 16:01:37 | Watusimoto | though I didn't put in a link |
| 16:01:51 | raptor | a link, that's what i meant |
| 16:03:17 | Watusimoto | the current help we have for those (on robot and levelgen) is pretty pathetic |
| 16:03:53 | | BFLogBot Commit: 54821cfe1580 | Author: watusimoto | Message: Formatting |
| 16:03:54 | | BFLogBot Commit: eb74415d39b2 | Author: watusimoto | Message: Redo systemic addition of inline help for select gameObjects (earlier commit). Not quite as elegant in some ways, but no longer uses information from BfObject (i.e. more self-contained), and properly handles showing different messages based on whether item is friendly or enemy or whatever. This should cover a number of unimplemented help items. |
| 16:10:47 | | amgine1234567890 has joined |
| 16:11:00 | amgine1234567890 | hi whats up. |
| 16:11:55 | amgine1234567890 | so the starnge plugin crahes seem to be confined to one area of code even though the nubemr and a times it crashes seems to be random it seems to be limited to luawrapper H; 320 -323 maybe that will help |
| 16:13:54 | raptor | Watusimoto: in response to your response to my earlier Lua questions - |
| 16:14:51 | raptor | 1. I toyed with putting all the common methods in LuaScriptRunner, but we have some that I don't think should be exposed to some subset e.g. addItem() we want for plugin: and levelgen: but not bot (I assume). |
| 16:15:39 | | BFLogBot Commit: 31037eb27fc3 | Author: watusimoto | Message: Add links; can't figure out how to link to a section of the front page... :-( |
| 16:15:54 | Watusimoto | so you want to create a child of scriptRunner, but parent of bot and levelgen |
| 16:16:00 | Watusimoto | basically slotting in another layer there |
| 16:16:15 | raptor | 2. fair enough with not carrying over our internal structure of GameType and Game into lua.. it was just simpler to think about them separately from a developers perspective.. |
| 16:16:38 | Watusimoto | 2. I agree it's easier for us, but I think it makes it harder for scripters |
| 16:17:22 | raptor | 1. that was the idea unless a. we just keep duplicating methods in both bot: and levelgen: or b. there is some other way to share beetween two and exlude one.. |
| 16:18:15 | Watusimoto | 1. ok, go for it. I agree reducing code duplication is a worthy goal. If using scriptRunner really won't work, then go for it |
| 16:19:00 | raptor | I can use LSR if there is a way to exclude some call path - can you think of a way? |
| 16:19:04 | Watusimoto | 1. I'm not in love with GameScript, it sounds a bit like we've invented our own language |
| 16:19:16 | raptor | yeah, the name could be anything.. |
| 16:19:24 | amgine1234567890 | how about combine level gens and levevls together XD |
| 16:20:07 | Watusimoto | 1. ScriptableObject? LuaObject (seems to be available again)? |
| 16:20:24 | Watusimoto | I don't fully understand what you mean about excluding call paths |
| 16:20:41 | raptor | LSR seems to have 4 pathways - editor: bot: levelgen: and console.. |
| 16:20:51 | raptor | so for instance |
| 16:20:54 | Watusimoto | ah, I see |
| 16:21:11 | raptor | if i put in addItem(BfObject *) in LSR, then bot: has access |
| 16:22:09 | Watusimoto | so you want a layer that's specific to bots and levelgens? |
| 16:22:37 | raptor | well, that's the idea - some layer to share code |
| 16:22:41 | Watusimoto | maybe we could do it as a mixin class rather than slotting into the inheritance |
| 16:22:49 | raptor | because both have findObjects() findObjectById() |
| 16:23:03 | raptor | Watusimoto: what do you mean? another parent class? |
| 16:23:20 | Watusimoto | though those could be accessible by all scripts, no? |
| 16:23:25 | Watusimoto | and yes, another parent class |
| 16:23:49 | raptor | those are accessible because we've coded separate methods in each of levelgen: bot: and plugin: |
| 16:24:14 | Watusimoto | createObject is the only method you want to restrict (i.e. no bots). are there any others? |
| 16:24:26 | Watusimoto | sorry, addItem |
| 16:24:42 | raptor | let me look again.. |
| 16:24:50 | raptor | i did, can't remember |
| 16:25:46 | Watusimoto | it would get messy if we had methods accessible to editor and levelgen, and others accessible to everyone but console, and... |
| 16:25:55 | raptor | yes.. |
| 16:26:16 | Watusimoto | it might be best to let everyone do everything? |
| 16:26:22 | Watusimoto | maybe? |
| 16:26:38 | raptor | hmm... i'm starting to be convinced of that.. |
| 16:26:44 | | fordcars Quit (Ping timeout: 250 seconds) |
| 16:27:03 | Watusimoto | or we could blot out a method (such as addItem) by overriding it in the bot or levelgen-specific lua functions |
| 16:27:22 | raptor | then we're just duplicating method code again.. |
| 16:27:35 | Watusimoto | so make addItem available to everyone, but in robot-functions (or whatever it's called) we set it to nil so it's not actually available |
| 16:28:04 | Watusimoto | no duplication -- method is only coded once |
| 16:28:05 | raptor | sounds like giving yourself a cut just because you want a bandaid |
| 16:28:35 | raptor | hmm... |
| 16:28:42 | Watusimoto | I don't follow that, but it reminds me of your guresome cut story... which I don't want to think about |
| 16:28:50 | raptor | yeah i suppose that'd work |
| 16:28:52 | raptor | which story? |
| 16:29:04 | raptor | the one with my index finger and a bandsaw? |
| 16:29:06 | Watusimoto | the one where you had to krazy glue your finger together |
| 16:29:12 | raptor | oh yeah.. haha |
| 16:29:16 | Watusimoto | I don't know that one, and don't want to hear it now |
| 16:29:21 | raptor | hehe, ok |
| 16:29:27 | Watusimoto | maybe antoerh time, though |
| 16:29:50 | Watusimoto | I saw a scene on a show yesterday that has me a bit squeamish about severed appendages |
| 16:29:56 | raptor | blech |
| 16:30:01 | Watusimoto | indeed |
| 16:30:28 | raptor | seems like every show has gotten a bit more gory in the last 5-10 years |
| 16:30:38 | raptor | thanks Lord of The Rings! |
| 16:30:51 | Watusimoto | probably... |
| 16:31:12 | Watusimoto | anyway, I think what I suggested would let us have clean code on the C++ side, and give us method control on the Lua side |
| 16:31:20 | raptor | ok |
| 16:31:28 | raptor | so i can put everything into LuaScriptRunner |
| 16:31:33 | Watusimoto | then we can eliminate duplicate code, and don't need a new layer to do it |
| 16:31:39 | raptor | as virtual methods |
| 16:31:45 | raptor | and override when absolutely necessary |
| 16:32:11 | Watusimoto | wait... what do you mean by everything. Everything? |
| 16:32:25 | raptor | no no, just common methods |
| 16:32:27 | Watusimoto | or only those methods that are accessible my multiple scripts that are curretnly dublicated |
| 16:32:30 | Watusimoto | ok |
| 16:32:31 | raptor | yes |
| 16:33:11 | Watusimoto | if you conclude it would be cleaner to segregate that code from the other stuff luascriptrunner does, then I might be ok with a new layer just to keep it independent. But I'm not sure that's necessary, or even beneficial |
| 16:33:25 | raptor | yeah, you've convinced me... |
| 16:33:29 | Watusimoto | I am referring to using a class as a code organizational tool |
| 16:33:46 | raptor | oh, another question - LuaScriptRunner just has static methods like logprint() that don't use our lua_whatever() convention |
| 16:33:56 | Watusimoto | yes |
| 16:34:00 | raptor | and therefore they don't have a namespace |
| 16:34:16 | Watusimoto | the 2nd does not follow from the 1st |
| 16:34:31 | Watusimoto | eventually all methods should be in the lua_xxx() format |
| 16:34:31 | raptor | sorry, i mean namespace like levelgen: or bot: |
| 16:34:38 | raptor | yes, you're right |
| 16:34:54 | Watusimoto | do you really want to do levelgen:logprint(hello)? |
| 16:35:04 | raptor | they weren't converted because they were never put into a LUA_DECLARE thingy |
| 16:35:09 | raptor | (that's why associated them in my head) |
| 16:35:14 | Watusimoto | ah, I see |
| 16:35:23 | raptor | but anyways - should they? |
| 16:35:34 | raptor | and what would it be? 'script:' ? |
| 16:35:40 | Watusimoto | are you asking if we should require levelgen:logprint(hello)? |
| 16:35:50 | raptor | no nono that would be horrid |
| 16:35:58 | Watusimoto | yes |
| 16:36:08 | Watusimoto | so what are you asking? |
| 16:36:17 | raptor | i'm thinking about these new methods that are shared but need to be overridden |
| 16:36:26 | raptor | like lua_addItem() |
| 16:36:52 | Watusimoto | does that work differently for different script types? |
| 16:37:16 | Watusimoto | I suppose it would have to -- adding in the editor is probably different than adding in game |
| 16:38:15 | Watusimoto | we do have different implementations for editor and script |
| 16:38:21 | raptor | i'm wondering if they should have a namespace at all.. |
| 16:38:49 | raptor | levelgen:addItem -> just addItem() ? |
| 16:39:26 | Watusimoto | I started out trying to make as many things "loose" (i.e. without namespace) as possible |
| 16:39:39 | Watusimoto | because I rather like that sense of the language feeling adapted to the game |
| 16:39:50 | Watusimoto | but then I started to pull back |
| 16:40:10 | Watusimoto | but for things that are kind of "fundamental" I still think it makes sense (like logprint) |
| 16:40:19 | Watusimoto | addItem may be in that camp as well |
| 16:40:22 | raptor | yes I agree... |
| 16:40:35 | Watusimoto | though it also makes sense to add an item to the editor, or to a levelgen |
| 16:40:37 | raptor | the 'loose' functions right now, however, have nothing to do with in-game stuff.. |
| 16:40:45 | Watusimoto | editor:addItem() |
| 16:40:49 | Watusimoto | levelgen:addItem() |
| 16:41:16 | Watusimoto | I think I prefer those to just |
| 16:41:17 | Watusimoto | addItem() |
| 16:41:39 | raptor | i don't think I like findObjectById() in bot: thought |
| 16:41:41 | Watusimoto | because they are related to the editor/levelgen objects conceptually |
| 16:41:43 | raptor | *though |
| 16:41:53 | Watusimoto | bot:findObjectById() |
| 16:41:58 | Watusimoto | no, I agree |
| 16:42:10 | Watusimoto | findObjectById(124) |
| 16:42:13 | raptor | yes |
| 16:42:14 | Watusimoto | might be better |
| 16:42:29 | raptor | and should that have a namespace at all? |
| 16:42:35 | Watusimoto | levelgen:findObjectById(999) |
| 16:42:39 | raptor | or is it on the same level as logprint ? |
| 16:42:45 | raptor | seems kind of in the middle |
| 16:42:46 | Watusimoto | editor:findObjectById(999) |
| 16:42:56 | Watusimoto | I'm thinking on the same level as logpring |
| 16:43:03 | raptor | ok |
| 16:43:08 | Watusimoto | what do you think? |
| 16:43:47 | raptor | yes-ish - it's just that all methods at that 'loose' level have no access to the Game at the moment, so adding one there that does feels fundamentally different somehow |
| 16:44:44 | raptor | but that can break |
| 16:44:59 | raptor | man, architectural conversations can take a while... |
| 16:46:17 | Watusimoto | indeed |
| 16:46:40 | Watusimoto | I am feeling a bit of an imbalance between addItem and findObject |
| 16:46:54 | raptor | it's my fault! |
| 16:46:56 | Watusimoto | why should one be levelgen:find and the other be just add |
| 16:47:10 | Watusimoto | they seem sort of two sides of the same coin |
| 16:47:47 | Watusimoto | also... we can code the functions as not loose from the c++ side, and remap them in the bot/levelgen lua files |
| 16:48:09 | Watusimoto | so that they seem loose to the scripter... if that makes things easier |
| 16:48:18 | raptor | ah yes |
| 16:48:26 | raptor | good point |
| 16:48:40 | raptor | in fact, that is already done with bot:findObject... |
| 16:48:43 | Watusimoto | those lua files give us some flexibility in implementation |
| 16:48:46 | | bobdaduck has joined |
| 16:48:51 | Watusimoto | yes, I thought so |
| 16:49:11 | raptor | remapped in robot_helpers.lua... |
| 16:49:39 | raptor | robot_helper_functions |
| 16:51:16 | raptor | ok, so we make all the LuaScriptRunner ones not loose in a different namespace? (and what would it be called?) |
| 16:51:34 | raptor | 'bfluascriptreallyshortnamespace' |
| 16:51:44 | Watusimoto | :-) |
| 16:52:06 | Watusimoto | you mean replace bot:blah with something else? |
| 16:52:11 | raptor | no |
| 16:52:30 | bobdaduck | I'M HERE |
| 16:52:34 | bobdaduck | AND I'M SO SUNBURNED. |
| 16:52:35 | raptor | i mean put findObjects into script:findObjects then remap it to findObjects() |
| 16:52:44 | bobdaduck | Ships should be able to get sunburned |
| 16:52:50 | Watusimoto | ah, I see |
| 16:52:53 | Watusimoto | sure, we coudl do that |
| 16:53:10 | Watusimoto | perhaps the script: namespace? |
| 16:53:11 | bobdaduck | Awesome |
| 16:53:21 | raptor | bobdaduck: sunscreen is your friend until the waterproof kind gets in your eye |
| 16:53:36 | bobdaduck | I used sunscreen... Just I was out there from 8 to 3 |
| 16:53:46 | bobdaduck | totally worth it, by the way |
| 16:53:55 | bobdaduck | even if I can't close my hands enough to type well |
| 16:54:00 | raptor | wait is it july 4th already? |
| 16:54:20 | bobdaduck | lol not quite |
| 16:54:23 | raptor | Watusimoto: would 'script:' be too generic |
| 16:54:43 | raptor | maybe bitscript |
| 16:54:44 | Watusimoto | perhaps |
| 16:54:48 | Watusimoto | bitfighter: |
| 16:54:53 | raptor | bitfighter: !! |
| 16:54:54 | raptor | duh |
| 16:54:58 | Watusimoto | :-) |
| 16:54:59 | raptor | that makes so much sense... |
| 16:55:27 | Watusimoto | or perhaps just bf: |
| 16:55:43 | Watusimoto | or scriptrunner: |
| 16:56:01 | Watusimoto | but the user will never see it, so I suppose it doesn't matter at all |
| 16:56:11 | raptor | bf is good |
| 16:56:22 | Watusimoto | ok, then go for it! |
| 16:56:38 | Watusimoto | kind of lines up with BfObject -- our fundamental thing |
| 16:56:51 | raptor | ok, just to wrap up |
| 16:56:59 | raptor | i move loosey functions into bf: |
| 16:57:40 | raptor | map them to have no namespace in the helper_functions.lua |
| 16:57:52 | raptor | allow override in bot: or editor: etc? |
| 17:00:53 | | bobdaduck Quit (Remote host closed the connection) |
| 17:01:06 | Watusimoto | there's 4 dudes online, but I can't find their game |
| 17:01:20 | raptor | http://bitfighter.org/bitfighterStatus.json |
| 17:01:29 | raptor | we have another locked server! |
| 17:01:34 | raptor | called 'Meh' |
| 17:01:41 | Watusimoto | what do you menan by allow override? |
| 17:01:55 | raptor | you want bot:addItem to return nil, right? |
| 17:02:21 | Watusimoto | it should probably just not exist |
| 17:02:24 | Watusimoto | i.e. be nil |
| 17:02:42 | Watusimoto | so somewhere bot:additem = nil |
| 17:03:01 | raptor | that could be done in thos helper_functions.lua files... but then a smart user will exploit that |
| 17:03:10 | | raptor looks at bobdaduck |
| 17:04:21 | Watusimoto | well, a smart user can really exploit anything |
| 17:04:27 | Watusimoto | they have full access to the source |
| 17:04:34 | raptor | ok |
| 17:04:37 | Watusimoto | they could recompile and let bots do anything |
| 17:04:48 | raptor | so overrides in the helper_functions.lua would be enough? |
| 17:04:54 | Watusimoto | yes, I think so |
| 17:05:08 | raptor | well ok then |
| 17:05:11 | Watusimoto | it's not the end of the world if a bot adds an item |
| 17:05:12 | raptor | that solves a lot of things |
| 17:05:24 | Watusimoto | the script author could do the same with a levelgen |
| 17:05:26 | raptor | i suppose the world didn't end with bobdaduck's DnD.. |
| 17:05:33 | Watusimoto | not yet |
| 17:05:37 | Watusimoto | but it's not done |
| 17:06:07 | Watusimoto | in fact, the smart user could have their bot send a message to the levelgen to add whatever they wanted added |
| 17:06:14 | Watusimoto | with no hacks at all |
| 17:06:42 | Watusimoto | I consider the scripting API to be a set of recommendations |
| 17:07:04 | raptor | haha |
| 17:07:10 | raptor | ok |
| 17:11:36 | raptor | my oldest thought I switched his piece of cheese with his brother's and now refuses to eat his piece he wanted so badly, despite my assurances it was the exact same one he handed me to open.. |
| 17:11:48 | | fordcars has joined |
| 17:13:43 | Watusimoto | kids are psycho |
| 17:14:19 | Watusimoto | btw, why did you switch his cheese, and why are you denying it? |
| 17:14:23 | raptor | and the two pieces are identical, of course |
| 17:14:29 | raptor | haha |
| 17:14:36 | amgine1234567890 | lol |
| 17:15:01 | Watusimoto | now is when you eat all the cheese |
| 17:15:22 | | Rotten has joined |
| 17:15:33 | | Rotten Quit (Client Quit) |
| 17:15:48 | | Rotten_Flesh has joined |
| 17:18:40 | Watusimoto | hi Rotten_Flesh |
| 17:21:11 | amgine1234567890 | so kaen any new buidsl on teh buildbot link? |
| 17:21:54 | raptor | Rotten_Flesh: welcome! |
| 17:22:35 | Rotten_Flesh | hi |
| 17:23:56 | amgine1234567890 | any new builds for me to test even if its onl like 1 chage if i test asa we go i think that would be good. |
| 17:25:32 | raptor | amgine1234567890: I think you can check at http://buildbot.bitfighter.org |
| 17:26:09 | amgine1234567890 | ok btw the last build has a crash where using plugins randomly cuases Bf to crash with no patternen of occurence |
| 17:26:17 | amgine1234567890 | the last build bot |
| 17:26:48 | amgine1234567890 | it always seems to be somwhere in luawrapper H; 320 321 322 or 323 |
| 17:26:50 | raptor | well, we can't work on it unless you can make it non-random (duplicatable) somehow |
| 17:27:06 | amgine1234567890 | thats the commen thread its always teh same three lines =p |
| 17:27:10 | raptor | there is a known LuaWrapper bug that I'm 'working' on which might fix it |
| 17:27:24 | amgine1234567890 | then its probably realted |
| 17:28:52 | amgine1234567890 | as its always one of three lines h 320 -323 |
| 17:33:51 | Watusimoto | getting closer to finishing the in-game help |
| 17:34:09 | Watusimoto | that will be a happy day! |
| 17:34:52 | raptor | hooray!! |
| 17:35:46 | raptor | I'm still trying to think about a good way to fix the editor plugin dangling proxy pointer problem |
| 17:36:35 | raptor | because just passing in a boolean to have luaW_push hold the object with out a proxy requires every ->push(L) we call in-game to determine if it was called from an editor plugin.. |
| 17:46:04 | | BFLogBot Commit: 6b29d08e8a05 | Author: watusimoto | Message: Add support for another helpItem! |
| 17:46:17 | Watusimoto | the problem is how to prevent the editor from creating a proxy? |
| 17:46:25 | raptor | yes |
| 17:46:32 | raptor | sigh - seems like no easy way.. |
| 17:46:44 | Watusimoto | ok, well, I need to go to bed, but I'll think about that and see if I have any ideas tomorrow |
| 17:47:02 | raptor | maybe add another member to every class: bool mNoLuaProxy |
| 17:47:15 | Watusimoto | that was what I was just going to say |
| 17:47:21 | Watusimoto | not to every class |
| 17:47:23 | raptor | for reals? |
| 17:47:31 | Watusimoto | but maybe to the script runner |
| 17:47:31 | raptor | well in the constructor initializations |
| 17:47:35 | Watusimoto | it's not class by class |
| 17:47:40 | Watusimoto | it's editor vs. bot |
| 17:47:54 | Watusimoto | (for example) |
| 17:48:05 | Watusimoto | so the solution lies at the scriptrunner level |
| 17:48:08 | raptor | then how does the wrapper get it if it isn't passed in via ->push(L), etc.? |
| 17:48:16 | raptor | or do you mean to add it to push() |
| 17:48:24 | Watusimoto | how indeed |
| 17:48:26 | raptor | default false (== yes, proxy) |
| 17:48:36 | raptor | because we have a lot of push() everywhere... |
| 17:48:41 | Watusimoto | right |
| 17:48:54 | raptor | maybe it isn't so bad changing all of the signatures.. |
| 17:49:24 | Watusimoto | it will take us another step away from luaw stock |
| 17:49:46 | Watusimoto | can we override push to haev a different push variant in editor? |
| 17:49:55 | Watusimoto | I have to look to be sure |
| 17:50:59 | Watusimoto | or... it could be set in the lua environment |
| 17:51:11 | amgine1234567890 | is kaen afk now? |
| 17:51:11 | raptor | it's messy... everything is filtered into various push() methods |
| 17:51:19 | raptor | ok, well, sleep |
| 17:51:24 | Watusimoto | when the scripting environment is created, have a createProxy = true or = false variable |
| 17:51:30 | raptor | two architectural discussions in one day hurts the head |
| 17:51:31 | Watusimoto | luaW could access that |
| 17:51:50 | raptor | hmmm |
| 17:52:03 | raptor | i'll keep thinking.. |
| 17:52:06 | Watusimoto | ok, well, we can continue this tomorrow |
| 17:52:09 | amgine1234567890 | im so confused on how to use the beizer and the subdivide plugins to crwate my level |
| 17:52:10 | Watusimoto | I will too |
| 17:52:17 | Watusimoto | good night all! |
| 17:52:20 | raptor | night! |
| 17:52:24 | | Watusimoto Quit (Remote host closed the connection) |
| 17:52:25 | amgine1234567890 | noght! |
| 17:53:08 | amgine1234567890 | im so confused on how the beizer plugin works any advice? |
| 17:53:16 | raptor | you'll have to ask kaen |
| 17:53:54 | amgine1234567890 | wait what did i do osmthing i logged into Bf and unless i ckiked somthing woiut looking cause i was in the options =p |
| 17:58:14 | kaen | amgine1234567890 |
| 17:58:24 | kaen | make a barrier wall |
| 17:58:25 | amgine1234567890 | oh hi kaen |
| 17:58:27 | kaen | select it |
| 17:58:33 | kaen | run the plugin |
| 17:58:43 | amgine1234567890 | yeah but im trying to figure out what values do what |
| 17:58:56 | amgine1234567890 | somne with subdivide |
| 17:59:02 | kaen | pick the number of subdivisions (aka pieces, more means smoother) |
| 17:59:28 | kaen | pick the bezier fitting factor (I'd start with like 50) |
| 17:59:49 | kaen | it controls how strongly the curve is fit to the old barrier |
| 18:00:03 | kaen | 0 means it just takes the barrier and cuts into smaller pieces |
| 18:00:29 | amgine1234567890 | ok |
| 18:00:55 | amgine1234567890 | what about sub divide? (btw i would clairy the settings with better names XD* |
| 18:00:56 | kaen | 100 is full fitting to barrier's shape (if your barrier makes a loop, the curve should overlap it frequently at 100) |
| 18:01:26 | amgine1234567890 | wait i could edit the plugin text with notepade right? |
| 18:01:32 | kaen | yeah |
| 18:01:56 | amgine1234567890 | ok maybe ill work on the plugins and give better names for hte settings for you XD |
| 18:02:21 | kaen | subdivide is simpler: you pick the maximum size of the pieces, and if you set "subdivide completely" to "yes" then it will break the barrier down until all pieces are smaller than that size |
| 18:02:38 | kaen | choosing "no" just does one subdivision if pieces are bigger than the threshold |
| 18:03:05 | kaen | and then I think it has "smoothing" factor, which should be obvious :P |
| 18:03:12 | amgine1234567890 | hmm im having difficuly with beizer it does fit propely im losing like 2/3ds of my wall maybe ill subdiive first |
| 18:03:26 | kaen | prefer subdivide |
| 18:03:48 | kaen | the bezier algorithm has a bug for now: if your barrier does connect at the ends, it will be made shorter |
| 18:03:53 | amgine1234567890 | ok got the shape lost part of my wall |
| 18:03:57 | kaen | right |
| 18:04:01 | kaen | that's a known limitation |
| 18:04:10 | kaen | I have to learn more math before I can fix it :P |
| 18:04:28 | amgine1234567890 | lua match or like calcues 2 math |
| 18:04:45 | kaen | umm |
| 18:04:53 | kaen | like calculus applied to geometry |
| 18:05:12 | kaen | I honestly don't even know what this branch of math is called |
| 18:05:18 | kaen | I've read the term "graph theory" |
| 18:05:42 | amgine1234567890 | might be somwhere inbetween tirgimotry calcues and geomerty |
| 18:05:49 | kaen | yes |
| 18:05:58 | kaen | I've used all three while writing these |
| 18:06:17 | amgine1234567890 | hmm maybe ill look at the math for the plugin problem is i dont know lua |
| 18:06:38 | kaen | lua is one of the easiest languages one could learn |
| 18:06:49 | kaen | my 12 year old brother taught himself lua |
| 18:07:05 | amgine1234567890 | true porbbly easier then C++ or java or flash |
| 18:07:10 | kaen | certainly |
| 18:07:41 | amgine1234567890 | C++ can be nightnmre if you dont write it properly |
| 18:07:56 | amgine1234567890 | i have somone in my fmaily who is in progrmming twith C++ |
| 18:09:36 | kaen | that's certainly true |
| 18:10:47 | amgine1234567890 | ah the subdivide code isnt spaced |
| 18:12:13 | amgine1234567890 | uh how would i space it wihout wihout breaking it so i can read it |
| 18:13:13 | kaen | hmm |
| 18:13:19 | amgine1234567890 | would it be possible to code a very difficult prgram that whwn runs duplicates the barries with a enlargment and spaces them? (makes tunnels) |
| 18:13:25 | kaen | try opening it with notepad++ |
| 18:13:35 | kaen | explain a bit more? |
| 18:13:38 | amgine1234567890 | i used just plain old notepaf |
| 18:14:26 | amgine1234567890 | for example lets say you havd a sright poly wall you would run the program and it would duplicate the items and space them (makes tunnels out of shapes) |
| 18:14:50 | kaen | amgine1234567890, get notepad++ from here as a .zip |
| 18:14:51 | kaen | http://notepad-plus-plus.org/download/v6.4.1.html |
| 18:14:52 | amgine1234567890 | a tirangle would become a tiranuler tunnel a civle a ring ect |
| 18:14:57 | kaen | and use that to edit |
| 18:15:18 | kaen | interesting idea |
| 18:15:21 | kaen | I'll think about it |
| 18:16:09 | amgine1234567890 | anyways i dont know lua but i know math decent (got As in calcules ab and bc) but its been a year since ive used it.) |
| 18:17:07 | amgine1234567890 | unfornetly i memory issues o i probably wont remeber anything =p |
| 18:18:50 | amgine1234567890 | errors on notepad install for liek every file! |
| 18:19:03 | amgine1234567890 | i gave up after clicking ignore like 500 times XD |
| 18:27:37 | raptor | nothing.is(new easier(new than(new java))); |
| 18:28:13 | raptor | (just joking, of course) |
| 18:53:12 | | Rotten_Flesh Quit (Ping timeout: 250 seconds) |
| 18:59:22 | raptor | good bye Rotten_Flesh, we hardly knew ye |
| 19:04:58 | amgine1234567890 | lol |
| 19:08:47 | | koda Quit (Quit: koda) |
| 20:36:35 | | Rotten_Flesh has joined |
| 20:54:58 | | Rotten_Flesh Quit (Ping timeout: 250 seconds) |
| 22:00:03 | | Skybax has joined |
| 22:02:32 | | amgine1234567890 Quit (Quit: Page closed) |
| 22:59:27 | | Skybax Quit (Quit: Skybax) |
| 23:03:55 | fordcars | wow, if amgine is working on plug-ins text, watch for typos ;) |
| 23:04:28 | fordcars | Haha Rotten-Flash |
| 23:04:38 | fordcars | *Rotten-Flesh |
| 23:04:46 | raptor | hi fordcars |
| 23:04:49 | fordcars | hi |
| 23:05:16 | fordcars | sorry, I was laughing at irc logs |
| 23:05:27 | fordcars | Rotten_Flesh is my bro! |
| 23:06:28 | fordcars | wow, I still use Notepad for all my bots, not Notepad ++ |
| 23:09:38 | raptor | oh really? |
| 23:09:48 | raptor | like brother in your family? |
| 23:20:50 | fordcars | yeah! |
| 23:21:02 | fordcars | Skylark knows him from Zap I think |
| 23:31:10 | raptor | kaen: still up? |
| 23:51:24 | | raptor Quit () |