#bitfighter IRC Log

Index Search ←Prev date Next date→

IRC Log for 2013-06-22

Timestamps are in GMT/BST.

00:03:05fordcarshaha
01:10:47Nothing_Much has joined
01:11:41Nothing_Much Quit (Changing host)
01:11:41Nothing_Much has joined
01:17:32fordcarsnight guys, off to bed
01:17:39bobdaduck Quit (Remote host closed the connection)
01:21:51fordcars Quit (Ping timeout: 250 seconds)
03:59:35LordDVG has joined
06:12:51LordDVG Quit (Remote host closed the connection)
07:04:27Wuzzy has joined
07:12:48raptor has joined
07:12:48ChanServ sets mode +o raptor
07:56:42Wuzzy Quit (Quit: Wuzzy)
08:05:46raptorgood morning!
09:02:49raptordo we have a way to prevent call .new() on an object?
09:02:52raptorin Lua
09:03:06raptorbecause I'm merging the LuaGameInfo and Game objects
09:03:17raptorand I don't *ever* want anyone to do GameInfo.new()
09:06:17Watusimoto has joined
09:15:33raptoroh hi Watusimoto
09:16:17raptorso 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:55raptorwith the separate LuaGameInfo object to abstract that a little, it was safer
09:18:35raptorany ideas on how to prevent people from calling .new() on an object? (or maybe i don't need to even worry?)
09:26:26Watusimotohi -- not really here, only sort of here
09:26:47WatusimotoI think we should try to find a way to disable instantiating the object
09:26:51Watusimotothere is no reason to
09:27:40Watusimotomaybe 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:40Watusimotobtw, you might like this:
09:28:40Watusimotohttp://www.economist.com/blogs/democracyinamerica/2013/06/cost-benefit-analysis-and-state-secrecy
09:31:50raptorhi
09:32:17raptorhi
09:32:59raptorwe have several objects we don't want to instantiate - like levelgen and bot
09:40:28Watusimotoyes, so we we need a mechansim to block that
09:40:46WatusimotoI'm pretty sure #2 could work, less sure about #1
09:41:13raptorso i could add a flag, but how to actually prevent instantiation?
09:42:36Watusimotoinstantiating happens inside of luaw, no? in whcih case we'd need to add a check there
09:43:29Watusimotowe probably need a static method on any lua object that returns the canInstatntiate flag; luaW would check that before creating the object
09:43:31raptorit starts with the luaW_new method I think..
09:43:45raptorhmm... but how it gets there, not sure yet..
09:43:47raptorlooking
09:44:32WatusimotoI can take a quick peek in a minute, but have to go soon
09:44:51raptori'll do it...
09:45:03raptori know you said you were here for only a bit
09:45:06Watusimotoit doesn't help that my ide just locked up
09:45:25raptorit was more RAM
09:45:29raptorFEED HIM
09:45:38Watusimotoour kids are marching in the luxembourg day parade, with the crown prince of Luxembourg
09:45:53raptoroh yeah? forced to?
09:45:53Watusimotowell, not with him exactly
09:46:15Watusimotoforced to by my wife
09:48:22Watusimotoneed soimething like this in luaW_new()
09:48:30Watusimotoif(!T::canInstantiate()) return;
09:48:36raptorha!
09:48:39Watusimotoor maybe returnNil(L)
09:48:39raptorah... templating
09:48:43Watusimotoor something
09:48:55raptorI keep forgetting to follow the template pattern
09:48:57raptorthanks
09:49:08Watusimototemplated are pretty cool when not too severely abused
09:49:43raptorshould I create another macro: LUA_DECLARE_NONINSTANTIATABLE_CLASS
09:50:44Watusimotoas an alternate to our reglar macro?
09:50:48Watusimotothat could work
09:50:53Watusimotoyes, that might be good
09:51:16raptorLUA_DECLARE_ANTIDISESTABLISHMENTARIANISM_CLASS
09:51:20Watusimotook, gotta run. will be back later tonight at least for a bit. I WILL make clientgame usable in tests
09:51:22Watusimotoperfect!!!
09:51:26Watusimotociao
09:51:28raptorlater!
09:56:06Watusimoto Quit (Ping timeout: 256 seconds)
11:31:54bobdaduck has joined
11:32:16bobdaduckI learned last night
11:32:24bobdaduckhow fun it is to play with swarms of bots
11:32:27bobdaduckI learned last night
11:32:44bobdaduckThat I have pathetically few serious levelgen levels
11:32:48bobdaduckI learned last night
11:33:19bobdaduckThat staying up until 2:00 am playing DnD, while appealing, is probably not a good idea.
12:07:42Watusimoto has joined
12:50:58Watusimoto Quit (Ping timeout: 246 seconds)
13:20:20bobdaduckIs anyone here?
13:22:24kaenyes
13:22:42bobdaducknew level
13:23:08kaenI'm not *that* here
13:23:23bobdaduckk
13:24:39raptorhello
13:27:02bobdaduckhi
13:35:48Nothing_Much Quit (Quit: l8r)
13:52:50bobdaduck Quit (Remote host closed the connection)
14:24:53bobdaduck has joined
14:34:00bobdaduck Quit (Remote host closed the connection)
14:46:35raptor Quit (Read error: Connection reset by peer)
14:46:49raptor has joined
14:46:49ChanServ sets mode +o raptor
14:47:14Watusimoto has joined
14:52:18raptorso putting the GameInfo Lua methods on the Game object are a no-go
14:59:11raptortoo many pure virtual methods...
15:05:37raptorok, so we have LUAW_DECLARE_ABSTRACT_CLASS that throws an exception when you try to instantiate it
15:05:46raptorbut it doesn't have a push() method
15:06:08raptori created another macro LUAW_DECLARE_NON_INSTANTIABLE_CLASS that is the same, but has the push method
15:06:28raptorthat way it can be grabbed but not created
15:06:30raptorsound OK?
15:08:37Watusimotohi
15:09:26WatusimotoI think that sounds olk
15:09:28Watusimotook
15:11:42raptorand
15:11:44raptoroh hi
15:11:46raptorand
15:12:15raptorI'm thinking about just making LuaGameInfo a private member of ServerGame, that is created/deleted when ServerGame is
15:12:49raptorkind of like PlayerInfo is on ClientInfo
15:13:19raptordoes that seem OK? or would you prefer a different architectural layout?
15:21:35Watusimotothat should be fine
15:22:25WatusimotoI got client game working in tests
15:22:37raptorhooray!!
15:22:45raptorthat's.... impressive!
15:37:51BFLogBot Commit: 2f8365c0d211 | Author: buckyballreaction | Message: Fix compile warning
15:37:52BFLogBot 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:53raptorsorry that last commit will trigger a log of recompiling...
15:43:56raptor*lot
16:03:17bobdaduck has joined
16:22:58sam686 has joined
16:22:58ChanServ sets mode +v sam686
16:33:59Watusimoto Quit (Ping timeout: 240 seconds)
16:43:37raptorhi sam686!
17:06:04sam686LUA memory leak is back again: when running s_bot, LuaGameInfo leaks. http://sam6.25u.com/upload/text1306/130622_18-06-17.txt
17:06:12raptori'm fixing that now!
17:06:17sam686also, Lua menuItem leaks in editor plugins http://sam6.25u.com/upload/text1306/130622_18-06-37.txt
17:06:35raptorthat one too!
17:06:37raptor:0
17:06:39raptor:)
17:27:34sam686There 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:50raptorooo... that's a good one...
17:27:55raptorhadn't thought of that
17:38:33raptorok, almost ready to commit my GameInfo change...
17:39:32raptorworks!
17:40:10raptorok, now for the menus...
17:40:44BFLogBot 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:10raptorI'm not sure what to do about the gameobject .new() yet...
17:48:32sam686its been about, what? over 3 weeks, that bitfighter.org clock is 6 hours behind?
17:49:02raptoryeah, I still cannot figure out the problem - I think it has to do with the hosting provider clock
18:48:46sam686 Quit (Ping timeout: 250 seconds)
18:52:54raptorI'm trying to make sure the menu items are deleted...
18:53:19Nothing_Much has joined
18:53:31Nothing_Much Quit (Changing host)
18:53:31Nothing_Much has joined
19:05:24bobdaduck Quit (Remote host closed the connection)
19:19:25BFLogBot Commit: f7a044474d99 | Author: buckyballreaction | Message: Fix possible TNL bug in NetInterface. Where did this come from?
19:46:08raptor Quit ()
23:11:19bobdaduck has joined

Index Search ←Prev date Next date→

These logs were automatically created by BFLogBot on irc.freenode.net.