Timestamps are in GMT/BST.
| 00:03:05 | fordcars | haha |
| 01:10:47 | | Nothing_Much has joined |
| 01:11:41 | | Nothing_Much Quit (Changing host) |
| 01:11:41 | | Nothing_Much has joined |
| 01:17:32 | fordcars | night guys, off to bed |
| 01:17:39 | | bobdaduck Quit (Remote host closed the connection) |
| 01:21:51 | | fordcars Quit (Ping timeout: 250 seconds) |
| 03:59:35 | | LordDVG has joined |
| 06:12:51 | | LordDVG Quit (Remote host closed the connection) |
| 07:04:27 | | Wuzzy has joined |
| 07:12:48 | | raptor has joined |
| 07:12:48 | | ChanServ sets mode +o raptor |
| 07:56:42 | | Wuzzy Quit (Quit: Wuzzy) |
| 08:05:46 | raptor | good morning! |
| 09:02:49 | raptor | do we have a way to prevent call .new() on an object? |
| 09:02:52 | raptor | in Lua |
| 09:03:06 | raptor | because I'm merging the LuaGameInfo and Game objects |
| 09:03:17 | raptor | and I don't *ever* want anyone to do GameInfo.new() |
| 09:06:17 | | Watusimoto has joined |
| 09:15:33 | raptor | oh hi Watusimoto |
| 09:16:17 | raptor | so I've run into a snag - if I put the GameInfo Lua methods on the Game object... that means people could call GameInfo.new() and instantiate a new Game object |
| 09:16:55 | raptor | with the separate LuaGameInfo object to abstract that a little, it was safer |
| 09:18:35 | raptor | any ideas on how to prevent people from calling .new() on an object? (or maybe i don't need to even worry?) |
| 09:26:26 | Watusimoto | hi -- not really here, only sort of here |
| 09:26:47 | Watusimoto | I think we should try to find a way to disable instantiating the object |
| 09:26:51 | Watusimoto | there is no reason to |
| 09:27:40 | Watusimoto | maybe we can do that by 1) overriding new with a method that returns nil, or 2) add a flag to each object that luaW can use to determine if the object can be instantiated |
| 09:28:40 | Watusimoto | btw, you might like this: |
| 09:28:40 | Watusimoto | http://www.economist.com/blogs/democracyinamerica/2013/06/cost-benefit-analysis-and-state-secrecy |
| 09:31:50 | raptor | hi |
| 09:32:17 | raptor | hi |
| 09:32:59 | raptor | we have several objects we don't want to instantiate - like levelgen and bot |
| 09:40:28 | Watusimoto | yes, so we we need a mechansim to block that |
| 09:40:46 | Watusimoto | I'm pretty sure #2 could work, less sure about #1 |
| 09:41:13 | raptor | so i could add a flag, but how to actually prevent instantiation? |
| 09:42:36 | Watusimoto | instantiating happens inside of luaw, no? in whcih case we'd need to add a check there |
| 09:43:29 | Watusimoto | we probably need a static method on any lua object that returns the canInstatntiate flag; luaW would check that before creating the object |
| 09:43:31 | raptor | it starts with the luaW_new method I think.. |
| 09:43:45 | raptor | hmm... but how it gets there, not sure yet.. |
| 09:43:47 | raptor | looking |
| 09:44:32 | Watusimoto | I can take a quick peek in a minute, but have to go soon |
| 09:44:51 | raptor | i'll do it... |
| 09:45:03 | raptor | i know you said you were here for only a bit |
| 09:45:06 | Watusimoto | it doesn't help that my ide just locked up |
| 09:45:25 | raptor | it was more RAM |
| 09:45:29 | raptor | FEED HIM |
| 09:45:38 | Watusimoto | our kids are marching in the luxembourg day parade, with the crown prince of Luxembourg |
| 09:45:53 | raptor | oh yeah? forced to? |
| 09:45:53 | Watusimoto | well, not with him exactly |
| 09:46:15 | Watusimoto | forced to by my wife |
| 09:48:22 | Watusimoto | need soimething like this in luaW_new() |
| 09:48:30 | Watusimoto | if(!T::canInstantiate()) return; |
| 09:48:36 | raptor | ha! |
| 09:48:39 | Watusimoto | or maybe returnNil(L) |
| 09:48:39 | raptor | ah... templating |
| 09:48:43 | Watusimoto | or something |
| 09:48:55 | raptor | I keep forgetting to follow the template pattern |
| 09:48:57 | raptor | thanks |
| 09:49:08 | Watusimoto | templated are pretty cool when not too severely abused |
| 09:49:43 | raptor | should I create another macro: LUA_DECLARE_NONINSTANTIATABLE_CLASS |
| 09:50:44 | Watusimoto | as an alternate to our reglar macro? |
| 09:50:48 | Watusimoto | that could work |
| 09:50:53 | Watusimoto | yes, that might be good |
| 09:51:16 | raptor | LUA_DECLARE_ANTIDISESTABLISHMENTARIANISM_CLASS |
| 09:51:20 | Watusimoto | ok, gotta run. will be back later tonight at least for a bit. I WILL make clientgame usable in tests |
| 09:51:22 | Watusimoto | perfect!!! |
| 09:51:26 | Watusimoto | ciao |
| 09:51:28 | raptor | later! |
| 09:56:06 | | Watusimoto Quit (Ping timeout: 256 seconds) |
| 11:31:54 | | bobdaduck has joined |
| 11:32:16 | bobdaduck | I learned last night |
| 11:32:24 | bobdaduck | how fun it is to play with swarms of bots |
| 11:32:27 | bobdaduck | I learned last night |
| 11:32:44 | bobdaduck | That I have pathetically few serious levelgen levels |
| 11:32:48 | bobdaduck | I learned last night |
| 11:33:19 | bobdaduck | That staying up until 2:00 am playing DnD, while appealing, is probably not a good idea. |
| 12:07:42 | | Watusimoto has joined |
| 12:50:58 | | Watusimoto Quit (Ping timeout: 246 seconds) |
| 13:20:20 | bobdaduck | Is anyone here? |
| 13:22:24 | kaen | yes |
| 13:22:42 | bobdaduck | new level |
| 13:23:08 | kaen | I'm not *that* here |
| 13:23:23 | bobdaduck | k |
| 13:24:39 | raptor | hello |
| 13:27:02 | bobdaduck | hi |
| 13:35:48 | | Nothing_Much Quit (Quit: l8r) |
| 13:52:50 | | bobdaduck Quit (Remote host closed the connection) |
| 14:24:53 | | bobdaduck has joined |
| 14:34:00 | | bobdaduck Quit (Remote host closed the connection) |
| 14:46:35 | | raptor Quit (Read error: Connection reset by peer) |
| 14:46:49 | | raptor has joined |
| 14:46:49 | | ChanServ sets mode +o raptor |
| 14:47:14 | | Watusimoto has joined |
| 14:52:18 | raptor | so putting the GameInfo Lua methods on the Game object are a no-go |
| 14:59:11 | raptor | too many pure virtual methods... |
| 15:05:37 | raptor | ok, so we have LUAW_DECLARE_ABSTRACT_CLASS that throws an exception when you try to instantiate it |
| 15:05:46 | raptor | but it doesn't have a push() method |
| 15:06:08 | raptor | i created another macro LUAW_DECLARE_NON_INSTANTIABLE_CLASS that is the same, but has the push method |
| 15:06:28 | raptor | that way it can be grabbed but not created |
| 15:06:30 | raptor | sound OK? |
| 15:08:37 | Watusimoto | hi |
| 15:09:26 | Watusimoto | I think that sounds olk |
| 15:09:28 | Watusimoto | ok |
| 15:11:42 | raptor | and |
| 15:11:44 | raptor | oh hi |
| 15:11:46 | raptor | and |
| 15:12:15 | raptor | I'm thinking about just making LuaGameInfo a private member of ServerGame, that is created/deleted when ServerGame is |
| 15:12:49 | raptor | kind of like PlayerInfo is on ClientInfo |
| 15:13:19 | raptor | does that seem OK? or would you prefer a different architectural layout? |
| 15:21:35 | Watusimoto | that should be fine |
| 15:22:25 | Watusimoto | I got client game working in tests |
| 15:22:37 | raptor | hooray!! |
| 15:22:45 | raptor | that's.... impressive! |
| 15:37:51 | | BFLogBot Commit: 2f8365c0d211 | Author: buckyballreaction | Message: Fix compile warning |
| 15:37:52 | | BFLogBot Commit: dc258e43a8ad | Author: buckyballreaction | Message: Add macro LUAW_DECLARE_NON_INSTANTIABLE_CLASS for classes that we don't want to instantiate in Lua but that we still want pushed to Lua |
| 15:43:53 | raptor | sorry that last commit will trigger a log of recompiling... |
| 15:43:56 | raptor | *lot |
| 16:03:17 | | bobdaduck has joined |
| 16:22:58 | | sam686 has joined |
| 16:22:58 | | ChanServ sets mode +v sam686 |
| 16:33:59 | | Watusimoto Quit (Ping timeout: 240 seconds) |
| 16:43:37 | raptor | hi sam686! |
| 17:06:04 | sam686 | LUA memory leak is back again: when running s_bot, LuaGameInfo leaks. http://sam6.25u.com/upload/text1306/130622_18-06-17.txt |
| 17:06:12 | raptor | i'm fixing that now! |
| 17:06:17 | sam686 | also, Lua menuItem leaks in editor plugins http://sam6.25u.com/upload/text1306/130622_18-06-37.txt |
| 17:06:35 | raptor | that one too! |
| 17:06:37 | raptor | :0 |
| 17:06:39 | raptor | :) |
| 17:27:34 | sam686 | There is also a LUA memory leak if a levelgen creates new objects like "textitem = TextItem.new()" but doesn't do levelgen:addItem(textitem) |
| 17:27:50 | raptor | ooo... that's a good one... |
| 17:27:55 | raptor | hadn't thought of that |
| 17:38:33 | raptor | ok, almost ready to commit my GameInfo change... |
| 17:39:32 | raptor | works! |
| 17:40:10 | raptor | ok, now for the menus... |
| 17:40:44 | | BFLogBot Commit: 475b17874a35 | Author: buckyballreaction | Message: Fix memory leak with GameInfo object: - Disallow instantiation of GameInfo in Lua - Lua API change: use levelgen:getGameInfo() or bot:getGameInfo() to get the GameInfo object |
| 17:41:10 | raptor | I'm not sure what to do about the gameobject .new() yet... |
| 17:48:32 | sam686 | its been about, what? over 3 weeks, that bitfighter.org clock is 6 hours behind? |
| 17:49:02 | raptor | yeah, I still cannot figure out the problem - I think it has to do with the hosting provider clock |
| 18:48:46 | | sam686 Quit (Ping timeout: 250 seconds) |
| 18:52:54 | raptor | I'm trying to make sure the menu items are deleted... |
| 18:53:19 | | Nothing_Much has joined |
| 18:53:31 | | Nothing_Much Quit (Changing host) |
| 18:53:31 | | Nothing_Much has joined |
| 19:05:24 | | bobdaduck Quit (Remote host closed the connection) |
| 19:19:25 | | BFLogBot Commit: f7a044474d99 | Author: buckyballreaction | Message: Fix possible TNL bug in NetInterface. Where did this come from? |
| 19:46:08 | | raptor Quit () |
| 23:11:19 | | bobdaduck has joined |