#bitfighter IRC Log

Index Search ←Prev date Next date→

IRC Log for 2013-07-03

Timestamps are in GMT/BST.

00:08:14Darrel has joined
01:37:14koda has joined
02:02:13watusimoto has joined
02:02:13ChanServ sets mode +o watusimoto
03:19:56LordDVG has joined
04:11:57Darrel Quit (Read error: Connection reset by peer)
04:14:00Darrel has joined
04:28:45Darrel Quit (Quit: IRC client killed.)
05:07:20Watusimoto_ has joined
05:47:07Watusimoto_ Quit (Ping timeout: 256 seconds)
07:04:06koda Quit (Read error: Connection timed out)
07:04:44koda has joined
07:22:23LordDVG Quit (Remote host closed the connection)
07:57:26bobdaduck has joined
08:25:45punsit has joined
08:37:42bobdaduck is now known as IFOUNCMYTHUMBDRI
09:07:17raptor has joined
09:07:17ChanServ sets mode +o raptor
09:07:31raptorIFOUNCMYTHUMBDRI: hooray!
09:08:00IFOUNCMYTHUMBDRI proceeds to not back up anything
09:08:42IFOUNCMYTHUMBDRI is now known as bobdaduck
09:15:32Skybax has joined
09:15:42SkybaxGoodmorning
09:15:51raptorbuenos!
09:16:11Skybaxlol spanish
09:17:03raptorespanglish?
09:17:30SkybaxEnglanish
09:17:53bobdaduckwarning: Found team flag spawns but no flags (nexus gametype)
09:18:03raptor?
09:18:08raptorhi watusimoto
09:18:23raptordid you see my e-mail? (I think I wrote it when too tired)
09:18:23SkybaxThat happens to me a lot
09:18:27SkybaxThe game runs anyways
09:18:36raptoreditor warning?
09:18:39SkybaxYes
09:18:40bobdaduckyeah
09:18:50bobdaduckNexus doesn't have team flags but you can team flagspawns
09:18:55bobdaduckWhat do?
09:19:04bobdaduckwould teamed flags be a good addition to nexus or...
09:19:09SkybaxJust hit "Y" and run it anyways lol
09:19:26bobdaduckYeah I know
09:21:55raptorsigh - now it's my turn to revert the system java to Sun JRE...
09:25:43watusimotohi raptor; saw your email; didn't read it; am reading it now
09:25:55raptorhello
09:28:37bobdaduckOkay so this looks like I've got a winning contest level here
09:28:49raptoryeah... you and 3 others!
09:29:09bobdaduckSo what I'm gonna do now is cover the level with asteroids...
09:30:14raptorshhhh... don't give it away!
09:30:34watusimotoraptor: so the memory errors
09:30:40bobdaduckAsteroids are the frosting on the cake
09:30:41bobdaduckso to speak
09:30:51raptorwatusimoto: they don't stop appearing!
09:30:54watusimotofrom your message, my understanding is that when you do not create proxies, you get errors trying to delete proxies
09:31:04watusimotois that a reasonable assessment?
09:31:13raptori don't think so
09:31:33raptorif I *only* open the editor and run plugins, and exit the game
09:31:46raptori get no memory errors (which is an improvement from before)
09:31:54watusimotook
09:31:59watusimotothat's good
09:32:08watusimotono proxies are created at all in that scenario
09:32:11raptorif i only host a game (i.e use the proxy system) then i get no errors
09:32:23watusimotook, proxies are created and deleted in that scenario
09:32:41raptorbut if i do editor stuff, then exit editor, then host game... i can get random crashes
09:33:01watusimotolike it crashes in mid-game?
09:33:01raptorbut only hosting levels that use levelgens, of course
09:33:08raptori've had it crash twice
09:33:16raptoron start-up
09:33:25raptorstart-up of hosting the game, i mean
09:33:42raptorother times it doesn't crash until exit or not at all
09:33:44bobdaduckIs there something I can test for you?
09:33:55raptorin all cases valgrind gives me those invalid read errors in LuaProxy
09:34:14watusimotoso it seems tath running a levelgen after using the editor causes a problem
09:34:22raptoryes
09:34:33watusimotodo you need to run a plugin to make the problem occur?
09:34:36raptorforgive my late-night incoherence in that e-mail...
09:34:49watusimoto(i.e. could you use the editor without plugins and run the game without errors?)
09:35:35raptorlet me test that... I think the answer will be 'no' because plugins are loaded and scanned upon editor start-up, thus triggering the no-proxy logic
09:38:44kodab has joined
09:38:55raptorman... i can't get my patch applied...
09:39:01raptorstupid line endings
09:39:52raptorah there we go..
09:40:25watusimotook, don't worry too much about it
09:41:00watusimotoCould it be that after disabling proxy creation, it is not fully re-enabled? i.e. proxies are being malformed in the game?
09:41:32koda Quit (Ping timeout: 256 seconds)
09:41:40raptori thought about that... but my control logic is only in things that are 'actions' so to speak, not initializations
09:43:17raptorohhhh
09:43:23raptorI think I see what's happening..
09:44:22raptorthe garbage collector for the plugin junk isn't being run until it's out of the PluginContext, thus triggering the clean-up as though it had proxies
09:44:50watusimotook, is that an easy fix?
09:44:56raptori have no idea how to fix
09:45:16watusimotoin that case I guess I need to better understand what you just wrote :-)
09:45:18raptorbecause in the luaW_gc method, it needs to know which system it's using to clean up
09:45:27watusimotoI was hoping I could just nod knowlingly and pat you on your back
09:45:36raptorme too! :)
09:45:44watusimotoyes
09:45:52raptorbut
09:46:08raptorthe _gc method isn't running until I'm in the 'levelgen' context
09:46:25raptorsince it's in that context, it thinks "I must have a proxy for this object"
09:46:46raptorand so tries to delete one... but it doesn't have one..
09:47:39raptorsimplified: start editor -> plugins are scanned, objects created *without* proxies (because it detects it's running as a plugin)
09:47:41watusimotoin luaw_gc, we have this:
09:47:42watusimoto if(proxy)
09:47:43watusimoto delete proxy;
09:47:48raptorexit editor
09:47:51watusimotothat check is insuffieicnet?
09:48:26watusimotoI feel like we should be able to detect on an object-by-object basis whether there is a proxy to delete
09:48:50raptorhost game -> _gc method is run on plugin objects, but now it detects it as in levelgen context, so it tries to clean up a non-existant prox
09:48:53raptor*proxy
09:50:20watusimotoso luaW_toProxy should me made to return a nil if there is no proxy
09:50:45watusimotothen we change luaW_gc to not assert if luaW_toProxy returns nil
09:50:54raptorok, i think i'm not saying explaining something fundamental...
09:51:11raptorin LuaW
09:51:17raptori created a method: useLuaProxy()
09:51:27raptorthat detects the context (plugin, levelgen, etc.)
09:51:42watusimotoam I looking at old code? or is that code not checked in?
09:51:49raptormy e-mail
09:51:51raptorhas a diff
09:51:55watusimotoright
09:51:56raptorthat explained my changes
09:52:36raptori use useLuaProxy() in _push() and _gc()
09:52:59raptorto determine whether to use upstream _push() or our proxy system
09:53:20watusimotolooking at that now
09:53:38raptorand I made lots of nice notes
09:53:59watusimotoyes, ok, I see how you changed lauW_gc
09:54:40watusimotohowever, my suggestion still stands
09:54:56raptorwhich was?
09:55:13watusimotowe need to check on an object-by-object basis whether there is a proxy
09:55:21watusimotoI don't think doing it in "modes" will work
09:55:23raptorahhh
09:55:24raptorok
09:55:44watusimotoand I think the best place to do that is in luaW_toProxy
09:56:03watusimotoif there is no proxy for a particular object, that would return nil
09:56:18watusimotonow how to detect if there is a proxy is a different question
09:56:33watusimotoit might be easy from what we have, or we might need to set a flag, I'm not sure
09:57:16watusimotoso the mode appraoch would only be used when creating an objct
10:00:08raptorah
10:00:24raptorthen the _gc method needs to just adapt to whatever it has
10:02:38watusimotoyes, exactly....
10:03:10raptorthis seems like it is waaay more complicated than it needs to be...
10:08:22kodab Quit (Ping timeout: 246 seconds)
10:13:47watusimotowell, is it difficult to tell from an object if it has a proxy?
10:16:00raptori suppose each object has a getLuaProxy()
10:16:20raptorthat *should* be instantiated to NULL
10:27:06watusimotoyes, that is what I was thinking
10:27:47raptorso I a problem... luaW_to must be able to decide if the object has a proxy or not..
10:28:17watusimotoif that returns null, no proxy!
10:28:53raptorbut the guts of it needs to convert a stack object into a real object
10:29:31raptorand it does that by: static_cast the userdata on the object as a proxy, grabbing the proxiedObject
10:31:47raptori'm not sure how to test if the userdata is a proxy or the object itself without a dynamic cast..
10:32:14raptorthis may be where we need another flag..
10:32:21watusimotodo the dynamic cast
10:32:41raptorbut....
10:32:44raptordynamic_cast...
10:32:49watusimotoI know we like to aviod them,but sometimes they are the right tool for the job
10:34:17raptoryeah...
10:34:22raptordynamic_cast fails
10:34:31watusimotowhere is this code?
10:35:01raptorok, want me to get you a proper diff of my changes?
10:35:13watusimotoof course, if dynamic_casting won't work, then we'll need the flag!
10:35:24watusimotoI don
10:35:37watusimoto't want a diff right now, as I'm about to head home
10:35:38raptordon quixote?
10:35:42raptorokey doke
10:35:53watusimotobut why does dynamic_cast fail?
10:36:10raptorerror: cannot dynamic_cast ‘pud->luaW_Userdata::data’ (of type ‘void*’) to type ‘class LuaProxy<Zap::CoreItem>*’ (source is not a pointer to class)
10:36:34raptorthe luaW_userdata has not RTTI associated with it
10:36:37raptor*no
10:37:05watusimotothen maybe we need a flag isProxy or whaever
10:38:18raptorso in luaW_push() we have userdata to set
10:38:18raptorif we use a proxy, we set that as the userdata
10:38:30raptorif we don't, we use the original obejct as the userdata
10:38:40raptor(with my new code, that is)
10:38:49raptorwhere else are we going to keep a flag?
10:40:01raptorok, if you're headed home, i'll wait for you later
10:40:10watusimotoI'm puzzling over your question
10:40:31watusimotodid you mean "where aer we going to keep a flag?"
10:40:40raptorheh, yes
10:41:20watusimotomaybe we create a table with a key being the userdata?
10:41:32watusimotoin the registry somewhere?
10:41:41watusimotouserdata: hasProxy
10:42:16raptorusing standard Lua C mechanisms?
10:42:27watusimotobecause we need to know before we cast, that is before we have the C++ obejct
10:42:32raptoryes
10:43:03raptormaybe we need to think about everything differently...
10:43:03watusimotousing the same mechanism we use to keep the cache and other stuff that luaW keeps
10:43:24raptoris there a way we could unify the userdata objects?
10:43:41watusimotowhat do you mean?
10:44:00raptorso we either use a proxy as the userdata OR use the object itself
10:44:05raptoris there a way to avoid that?
10:44:28watusimotowell, we could always use a proxy, which doesn't work
10:44:37raptorhaha
10:44:38watusimotoor we could never use a proxy, which also doesn't work
10:44:44watusimotoso... no?
10:44:58raptori'm just trying to think outside the problem a bit...
10:45:04watusimotoyes, and that's good
10:45:29watusimotook, I'm going to head out... we can duscuss further tonight, and I can try applying your patch so I can see the actual code in context
10:45:40raptorok, i'll get the patch ready...
10:45:42watusimotobecause right now I feel rather blind
10:45:50watusimotook, back in a few hours
10:45:53raptorlater!
10:46:36raptorpatch: http://sam6.25u.com/upload/luaW_context_patch.diff
10:50:43watusimoto Quit (Ping timeout: 246 seconds)
11:04:05bobdaduckcan I have logbot keep track of my bitfighter todo list for me?
11:04:49raptoryou have a TODO list?
11:04:53bobdaduckYeah
11:05:14raptorwell, logbot can spit out links..
11:05:17raptoron commands
11:06:51bobdaduckcan logbot have just an array and I be like "logbot todo: 'draw promo art for contest'"
11:07:27bobdaduckand then like, !todo and it'll spit out alll the items. And I can be like "logbot complete: 1" and it'll remove whatever item is at that index
11:08:10raptoruhh, i'm afraid he's a bit too dumb for that
11:08:29bobdaduckIt is?
11:08:38raptorbut you could use etherpad!: http://beta.etherpad.org/
11:09:41bobdaduckWhy is logbot too dumb for that? I could program what I described as a levelgen using like less than 30 lines of code
11:10:45raptorhmm... maybe logbot should be Lua-ized?
11:10:56bobdaducklol
11:13:24bobdaduckLike I don't see why it would be hard to add that
11:14:09raptorit's written in Java...
11:14:18raptorprobably wouldn't be that hard
11:14:26raptorit whould be written in python..
11:15:09bobdaduckI'm attempting to learn java at codecademy!
11:15:18raptoroh yay!
11:15:39bobdaduckon and off.
11:15:40raptoryou're on your way to learning c++!
11:15:43bobdaduckxD
11:15:52bobdaduckI already have a class I took in C++
11:16:07raptoroh yeah..
11:16:25bobdaduckBitfighter isn't coded in C++ though
11:16:54bobdaduckBitfighter's source is practically a language of its own
11:18:14bobdaduckAnyway back on subject can I upgrade logbot?
11:19:10raptoror...
11:19:31raptorwell, you can look at the soruce code here: http://code.google.com/p/bitfighter/source/browse/?repo=tools
11:20:51bobdaduckpircbot.jardesc
11:20:54LuaBot has joined
11:20:54bobdaduckthese filenames
11:20:55raptoroh hey, we have a new lurker
11:21:00raptorhi punsit
11:21:17raptorlook! I made LuaBot connect!
11:21:34punsit has left
11:21:54bobdaduckWHAT DID I TELL YOU
11:21:58bobdaduckABOUT NOT MENTIONING LURKERS BY NAME
11:22:25raptor is ashamed
11:22:48bobdaduckHi luabot
11:22:54bobdaduck!bot
11:22:54BFLogBotI'm a real boy!
11:22:54raptorLuaBot: speak
11:23:48raptor!sunset
11:24:01raptor!die
11:24:06bobdaduck!selfdestruct
11:24:13bobdaduck!kryptonite
11:24:14raptorhmmm... i think LuaBot is broken
11:24:18bobdaduckMaybe.
11:24:59LuaBot Quit (Remote host closed the connection)
11:25:18LuaBot has joined
11:25:24raptorhi
11:25:40raptorohhh... you have to PM it...
11:25:58raptoror not..
11:26:44raptorhuh
11:27:03Watusimoto has joined
11:28:30bobdaduckI like luabot
11:29:04raptorlet me restart him with some logging..
11:29:04LuaBot Quit (Remote host closed the connection)
11:29:15bobdaduckHe's just shy. I bet I can get him to open up! Can I see his code?
11:29:31raptorstole him from here: https://github.com/davidshaw/ircbot.lua
11:29:38raptorbut you need to install Lua and LuaSocket
11:29:45raptorto run him
11:34:41bobdaduckhm
11:34:53raptori think LuaBot is slightly broke
11:35:01bobdaduckslightly
11:35:51bobdaduckHow do I get "lua" and "luasocket"?
11:38:03raptorwell... i think this bot is broke
11:38:31Watusimotoraptor: only here for a minute, but did you look at py2exe for the status checker?
11:38:31LuaBot has joined
11:38:36Watusimotoor only cython?
11:39:04raptorI'm using pyinstaller which is a competitor (but newer) than py2exe
11:39:10raptorand that's how I make the EXE
11:39:16Watusimotoah, ok
11:39:27LuaBot Quit (Remote host closed the connection)
11:39:29Watusimotoand it works well enough?
11:39:43raptoryes... did I not give you a newly compiled EXE?
11:39:46raptor goes to look
11:40:23Watusimotoyou did
11:40:28Watusimotobut I didn't download it
11:40:31raptorhere: http://sam6.25u.com/upload/bitfighter-notifier-windows.zip
11:40:41Watusimotook, downloading it now
11:40:59raptorit's simple, but uses a unified-ish code base with the other platforms
11:41:20Watusimotothat's kind of important for us, I think
11:41:38Watusimotook, dinner time... back later!
11:41:42raptorI wrote instructions on how to get it running and build in windows in the 'tools' repo
11:41:44raptorok
11:42:59bobdaduckwhat's wrong with the bot being broke?
11:43:21raptorit doesn't connect when trying to debug it..
11:43:46raptorand when it connects, it doesn't respond to commands..
11:44:53bobdaduckyeah
11:45:49Watusimoto Quit (Ping timeout: 245 seconds)
11:45:55bobdaduckI'm confused by logbots code
11:46:07bobdaduckI always get confused by lots of interlinking files...
11:47:31bobdaducklike... Where is the actual code? xD
11:47:46raptordo you knwo how to use an IDE?
11:47:49raptorlike eclipse?
11:48:09raptorhere, check out the code repository: http://code.google.com/p/bitfighter/source/checkout?repo=tools
11:48:15raptorfrommercurial
11:48:28raptorthen load the sub directory 'BitfighterLogBot' in eclipse
11:49:04bobdaduckNo I don't have any idea
11:49:40raptorany experience with Java?
11:49:44bobdaduckI... TortoiseHG?
11:49:45bobdaduckNo
11:49:52raptorhmm... then this will hurt
11:49:57bobdaducklol
11:50:06raptoryeah, you can check out the code in hg
11:50:19bobdaduckI've managed to open bitfighter 019's source code before
11:50:35bobdaduckbut other than that I have little idea what you're even talking about
11:50:43raptor:)
11:51:34raptorwell, if you *really* want to delve into the logbot code, i'll help you get it set up
11:52:01bobdaduckUm
11:52:07bobdaduckI'm gonna say "later"
11:52:10raptorok
11:52:22bobdaduckI want to but I'm at work and am uncomfortable installing random software on my work computer xD
11:52:45raptorheh, ok
11:53:20raptoreclipse is an IDE like visual studio c++, but mostly for Java - and it's magical
11:53:34bobdaduckmagical?
11:53:47raptoryeah, like it does half the coding work for you
11:54:04raptorwith things like auto-completion and method look-up
11:54:42bobdaduckah
12:02:11bobdaduckyay I get to learn things
12:02:29bobdaduckBUT FOR NOW it is lunchtime
12:03:00bobdaduck Quit (Remote host closed the connection)
12:58:15bobdaduck has joined
13:02:57bobdaduckkback
13:07:32fordcars has joined
13:26:22Watusimoto has joined
13:32:40raptorwell what do you know - egypt has reset itself again
13:34:18bobdaduckit has?
13:36:40raptoryeah, the military has suspended the constitution
13:50:44bobdaduckhuh.
14:10:44fordcarslater guys. gtg
14:15:15fordcars Quit (Ping timeout: 250 seconds)
14:39:54bobdaduckCONTEST SUBMISSION FINISHED RAPTOR
14:40:38raptorHOORAY
14:40:55raptordo another!
14:42:26bobdaduckMaybe
14:42:32bobdaduckI'll have to get inspired
14:43:10bobdaduckAlso I upgraded your gravity well code to work with unlimited gravity wells in the level
14:43:22raptorha!
14:44:15Watusimotohey raptor: is this a good time to talk about the lua stuff?
14:44:40raptoruh sure
14:44:56raptorWatusimoto: patch: http://sam6.25u.com/upload/luaW_context_patch.diff
14:49:01koda has joined
14:49:09raptorproblems we face are that we can't use the script context in the _gc() method... and probably not in the _to() or _check() methods ither
14:49:20raptordefinitely not in the _to()
14:49:28raptorbecause it's used in _gc()
14:51:03Watusimoto_ has joined
14:52:57Watusimoto Quit (Ping timeout: 276 seconds)
14:58:28Watusimoto_ok, FINALLY got the patch applied
14:59:32raptorline endings problem??
14:59:47raptorLuaWrapper is riddled with both DOS and UNIX line endings
15:00:03Watusimoto_no, just difficult to apply diffs on a windows machine
15:00:13raptoroh
15:00:17Watusimoto_anyway
15:00:20Watusimoto_it's done
15:00:24raptorhg will do it with: hg import \path\to\diff.diff
15:00:34Watusimoto_that's what I ended up doing
15:00:45raptorah
15:00:52Watusimoto_but first I had to figure out that it did it, I also have other tools that I thought would work
15:01:00Watusimoto_then there was some time spent on stackoverflow
15:01:03Watusimoto_...
15:01:26raptorbeen there..
15:01:32raptortoo many times
15:02:02koda Quit (Quit: koda)
15:02:39Watusimoto_if a proxy exists, won't it have an entry in the LUAW_CACHE_KEY table?
15:03:07Watusimoto_i.e. if we find the userdata there, we know we have a proxy
15:03:19Watusimoto_wait, not true
15:03:42Watusimoto_cancel
15:03:43koda has joined
15:04:14raptorcache table is used for everything
15:04:40raptori tried removing the cache for the non-proxy path, but i kept getting segfaults so I abandoned it
15:04:49Watusimoto_I think all we need to do is this:
15:05:28Watusimoto_when we are pusing the object, if we are creating a proxy for it, we add an entry to a registry table called HAS_PROXY
15:05:50Watusimoto_when we are cleaning up, we check that table to find out if there is a proxy or not
15:07:02raptorOK
15:07:30raptorso create a table following the example of the rest of LuaW tables (like the cache table)?
15:08:22bobdaduckIf I make a model in lua of what I want bflogbot to do would it make it easier?
15:09:45Watusimoto_yes
15:09:53Watusimoto_I can do it if you want
15:10:03Watusimoto_I think it is very straightforward
15:10:45raptorok, go for it (I'm a bit busy at work..)
15:11:17raptorI recommend using the cache table in the luaW_to method as the control logic for returning the correct object, as well
15:11:24raptoroh and luaW_check
15:11:32raptorand _gc
15:11:46raptorso only _push would use the plugin/levelgen context check
15:12:11raptorbobdaduck: Lua -> java doesn't work that well
15:12:38raptorbut BFLogBot is due for some upgrades... I've been thinking I should rewrite it in python first, though
15:13:03Watusimoto_I thought it was in python
15:13:05raptorwhich i've been saying for 1/2 a year..
15:13:11Watusimoto_or do you mean recode the python
15:13:16raptorBFLogBot is Java
15:13:22Watusimoto_oh, sorry,
15:13:23raptoreating up the RAM on the master server
15:13:26Watusimoto_wrong thing
15:13:46bobdaduckwhy is python better than jave/lua/C++/assembly code?
15:14:49raptoryou can code quickly, it's a scripting language so you don't have to compile, you can run it almost anywhere, and it uses lots less memory than java
15:15:21raptoreach language has different advantages
15:15:50raptori think python or another scripting language is perfect for bots because it allows rapid development and not much usage memory
15:16:06raptorLua would be good too, but it doesn't have network libraries like python
15:17:51bobdaduckah
15:20:52koda Quit (Quit: koda)
15:26:38koda has joined
15:28:41Watusimoto_raptor: is this comment correct?
15:28:42Watusimoto_/ Use upstream behavior, but without the cache
15:28:48Watusimoto_line c. 391 of luaW
15:28:51raptoroh no
15:28:52raptorincorrect
15:28:57Watusimoto_or should it be // Use upstream behavior, but without the proxy
15:29:03raptori forgot to remove that after my failed cache-removal attempt
15:29:12Watusimoto_the code is right, though?
15:29:16raptorjust use upstream behavior
15:29:19raptorchecking..
15:29:46raptoryes, that is identical to upstream except for the addition of luaW_hold at the end of the block
15:29:50Watusimoto_ok
15:30:03Watusimoto_I'll remove the bit of the comment after the comma
15:30:15raptorthanks
15:37:42bobdaduckrofl
15:37:57bobdaduckI programmed a script that memory crashes bitfighter literally one second before the level ends
15:38:29raptorto troll the winners of a competition?
15:38:44bobdaduckdefinitely
15:38:49bobdaduckNo I'm just being a spaz
15:49:11bobdaduckI'd say come see but I don't think you can join when I host from work
15:49:29raptornope
16:00:24bobdaduck Quit (Remote host closed the connection)
16:15:19koda Quit (Remote host closed the connection)
16:27:05bobdaduck has joined
16:27:11bobdaduckI HAVE CREATED ANOTHER MASTERPIECE
16:27:19bobdaduckJoin my server, to discover the wonders!
16:30:27raptorbobdaduck: I think your energies need to be redirected...
16:30:38bobdaduckSPAZ SPAZ SPAZ
16:33:46raptorI think we're missing some levels that make good use of hostile objects
16:33:51raptorlike FFs and zones
16:35:32SkybaxHiya
16:35:56SkybaxWarpathon has hostile turrets lol
16:36:23raptordid you know that hostile FFs let flags fly through them?
16:36:41raptori bet there are some interesting nexus ideas there...
16:36:53SkybaxI didn't even know flags couldn't go through FFs to begin with
16:37:02bobdaducklol
16:37:07raptorat least i think they still go through them..
16:38:51raptoryep, they do
16:43:05SkybaxOtay
16:43:11bobdaduck Quit (Remote host closed the connection)
16:53:54Watusimoto_raptor: I'm heading to bed soon
16:54:06raptorok
16:54:08Watusimoto_I have an implementation I think should work, but it is falling over on the simplest of tasks
16:54:27Watusimoto_I am for some reason unable to create a table to store the isproxy values in
16:54:45koda has joined
16:54:49raptorOK
16:55:06raptorwell, send me your code (via diff please) and I can pick up..
16:55:08Watusimoto_I am using the exact same code as is used to create the LUAW_CACHE_KEY table
16:55:18Watusimoto_ok
16:55:36Watusimoto_let me prepare the diff, and I can point out the highlights
16:55:41raptorok
16:55:49Skybax Quit (Quit: Skybax)
16:58:44Watusimoto_is this a usable format?
16:58:45Watusimoto_http://pastie.org/8108213
16:59:29raptorno
16:59:39raptorpastie (even the raw look) hurts line endings
16:59:52raptorcan you save an uplaod here?: http://sam6.25u.com/upload3.php
17:00:00Watusimoto_aside from the line endings is it ok?
17:00:24raptoryes
17:00:38raptorI mean, i can read it, but probably not apply it without headache
17:00:41Watusimoto_http://sam6.25u.com/upload/luaw.diff
17:00:57Watusimoto_no need for headaches
17:01:14raptorbeautiful!
17:01:19Watusimoto_if the lineendings are still b0rked, I can try to fix them
17:01:39raptornah, i can get it from here - if i have the binary output in a file
17:01:46Watusimoto_ok, that should be applied against the repo
17:01:53Watusimoto_not against your changes
17:02:00raptorok
17:02:16Watusimoto_do you want to apply it first or should I just explain what I did
17:02:32raptoryou can explain
17:02:48Watusimoto_I created a new table called LUAW_USING_PROXY_KEY
17:03:01Watusimoto_it's a weak table, though I'm not sure it should be
17:03:09Watusimoto_it may not matter
17:03:17Watusimoto_that's what's not being properly created
17:03:25raptori don't think you should be using LUAW_USING_PROXY_METATABLE_KEY
17:03:38raptorjust LUAW_USING_PROXY_KEY
17:03:47Watusimoto_maybe that's the issue
17:03:49Watusimoto_anyway
17:03:53Watusimoto_useLuaProxy is as it was
17:03:53raptorok
17:04:22Watusimoto_I created a new function called isUsingLuaProxy()
17:04:33Watusimoto_that takes an object and determines if it is proxied
17:05:15Watusimoto_I created luaW_setUsingProxy function, which records if an object is proxied
17:05:20Watusimoto_this is called during push
17:05:22raptorok
17:05:37raptorit has to use the void* right?
17:05:40raptornot T*
17:05:49raptorcancel, yes it does
17:05:49Watusimoto_so isUsing... should just retrieve the value set by setUsing...
17:05:56raptorok
17:06:06Watusimoto_yes, but you need the T for some of the other functions
17:06:29Watusimoto_those two fns are the meat of the changes
17:06:42raptorso you're calling clearUsingProxyTable() every time in the _gc?
17:06:45Watusimoto_there is also a clearUsingProxyTable() for cleaning up
17:06:53Watusimoto_it is poorly named
17:06:57Watusimoto_it only clears one value
17:07:01raptorah ok
17:07:23Watusimoto_I'll change that eventually
17:07:32raptorok
17:07:37Watusimoto_so that's basically it
17:07:39raptori think i understand it
17:07:42raptori'll tinker tonight
17:07:43Watusimoto_pretty simple
17:07:45Watusimoto_ok
17:07:54raptoroh
17:08:01raptoractually, that diff is against my changes...
17:08:10Watusimoto_is it??
17:08:12Watusimoto_ok
17:08:19raptoryes... you must have committed?
17:08:19Watusimoto_ah, that might make sense
17:08:29Watusimoto_hg might have
17:08:31Watusimoto_I did not
17:08:37Watusimoto_but it looks committed
17:08:41Watusimoto_ok, one more quick thing
17:08:45Watusimoto_there is an assert:
17:08:46Watusimoto_TNLAssert(!lua_isnil(L, -1), "table is nil!");
17:09:01Watusimoto_this trips, and it shouldn't. when it no longer trips, it can be deleted
17:09:05raptorok see it
17:09:09raptorok
17:09:10Watusimoto_that's where I am
17:09:14Watusimoto_trying to fix that
17:09:15raptorexcellent
17:09:19Watusimoto_that is something stupid and easy
17:09:24raptorone day we'll solve all our Lua woes
17:09:24Watusimoto_but I'm too tired to se it
17:09:39raptortime for sleep then!
17:09:52Watusimoto_so I'm going to revert to the stock, and push some other stuff I was doing earlier
17:10:52raptorok
17:10:59raptorif it did commit my changes - use hg strip
17:11:26BFLogBot Commit: 3cd8b6da2554 | Author: watusimoto | Message: Add some tests related to recent helpItem work
17:11:34Watusimoto_I can use Undo to revert one commit; this worked
17:11:46Watusimoto_and I didn't even need to revert my luaw changes!
17:13:35raptoryay
17:18:46Watusimoto_night
17:18:49Watusimoto_ Quit (Remote host closed the connection)
17:18:53raptornight
17:25:59raptor Quit ()
17:31:15bobdaduck has joined
17:45:28koda Quit (Quit: koda)
17:51:19bobdaduck Quit (Remote host closed the connection)
18:19:23bobdaduck has joined
18:20:22bobdaduckThe bots are kaen's only friends...
18:30:42bobdaduck Quit (Remote host closed the connection)
18:53:09bobdaduck has joined
19:48:35raptor has joined
19:48:36ChanServ sets mode +o raptor
19:49:20raptoryay tonight we get to have no sleep because of fireworks!
19:50:10raptorbobdaduck: have you ever gone to 'stadium of fire' ?
19:50:49bobdaducklol
19:50:51bobdaduckNo
19:51:03bobdaduckBUT my company may take us to see it l
20:08:07raptori've never gone either - cost was prohibitive
20:08:15raptornot elite enough, i guess...
20:12:57bobdaduckCompany is taking me to lagoon tomorrow though
20:24:14raptorcool
20:24:41raptorcan you see the fireworks from where you're at?
20:33:05bobdaduckI can see plenty of fireworks
20:33:09bobdaduckdunno if its stadium of fires
20:33:41bobdaduck Quit (Remote host closed the connection)
21:55:02bobdaduck has joined
21:55:55bobdaduckraptor did you what I posted to the contest thread?
21:56:15raptorhuh?
21:56:42raptorhah! nice picture
22:00:24bobdaducklol
22:00:38bobdaduckBFLogBot: Complete task 1
22:00:43bobdaduck!bot
22:00:43BFLogBotI'm a real boy!
22:00:44bobdaduck*sigh*
22:10:21bobdaduck Quit (Remote host closed the connection)
22:50:23raptor!!!
22:50:24raptor!!!!!!!!!!!!!!!!!!!
22:50:26raptor!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
22:50:29raptorI think..
22:50:36raptor(therefore I am)
22:50:38raptorI think...
22:50:50raptorI think I finally fixed all the LuaW memory problems
22:50:55raptorvalgrind passed!
22:51:03raptorwith all the crazy scenarios...
23:23:49BFLogBot Commit: 35ee9e40d024 | Author: buckyballreaction | Message: Fix memory bugs with LuaW, LuaProxy, and editor plugins: - Extend LuaW to keep track of which objects have proxies; done in a separate table - Make it so editor plugins do not create proxies and instead use the upstream LuaW behavior
23:23:58raptoryay no more memory errors!

Index Search ←Prev date Next date→

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