#bitfighter IRC Log

Index Search ←Prev date Next date→

IRC Log for 2013-01-12

Timestamps are in GMT/BST.

00:03:31Watusimotodo you interpret that trace as showing an eror inthe luaw destructor?
00:10:14raptorhi, sorry, looking...
00:10:25Watusimotono worries
00:10:42BFLogBot Commit: a58efae11bfd | Author: watusimoto | Message: Add back explicit call to LUAW_DESTRUCTOR_CLEANUP in robot destructor
00:10:44BFLogBot Commit: ae8eee419631 | Author: watusimoto | Message: Whitespace
00:10:59WatusimotoI was getting errors on quitting; this checkin seems to have solved that, for some reason I do not understand
00:11:02raptorit looks to me that something has already called the ~Robot destructor, then upon game exit, Lua is calling it again...
00:11:16raptoryes, my error was on quitting..
00:11:22Watusimotowould you update and try running again?
00:11:27raptorok
00:12:06WatusimotoI may have removed this statement that I just added back 1-2 weeks ago, which is the right time frame
00:12:57Watusimotooh, and are you compiling this as a 64 bit binary?
00:13:25raptoryes
00:13:38Watusimotothat explains the 8 bytes
00:13:50Watusimotobecause in 64 bit, pointers are 8 bytes, no?
00:14:04raptorrecompiling...
00:14:06raptorcorrect
00:14:14raptoraddress size is 64bits
00:14:21Watusimotoa ha!
00:14:28Watusimotomaybe that checkin did fix the problem
00:14:42raptortesting..
00:14:56Watusimotowhen the LUAW_DESTRUCTOR_CLEANUP is omitted, this gets run in luaw destructor:
00:14:56WatusimotomProxiedObject->mLuaProxy = NULL;
00:15:05Watusimotowhen that line is included, that doesn't run
00:15:20Watusimotomaybe that's the magic 8 bytes!
00:15:53Watusimotoand the pointer error I see appears
00:16:11raptorand....
00:16:12raptorand...
00:16:16raptorno crash!
00:16:19Watusimotoexcellent!
00:16:19raptorno invalid write
00:16:24Watusimotook, great
00:16:30Watusimotomartinb__android: are you around?
00:16:42Watusimotohe's probably in bed by now
00:16:51WatusimotoI'll see if I can get him to test tomorrow
00:17:20Watusimotook, mystery solved, pretty much
00:20:03BFLogBot Commit: 74046e123b63 | Author: watusimoto | Message: Explanatory comment
00:20:20WatusimotoI tried hdon's oglconsole font fix, and it completely doesn't work for me
00:20:32Watusimotoall I get is garbage
00:20:53raptoryeah... i think it isn't a stellar piece of code
00:21:20raptorwe've had to patch it/modify it lots
00:21:25Watusimotothe very same evening he showed up, I was googling for alternatives
00:21:30raptorhaha
00:21:53Watusimotowell, I feel like we no longer need to consider upstream compatibility
00:21:58Watusimotoif we ever did
00:22:07raptori agree
00:22:07Watusimotobut that's a small burden I feel has been lifted
00:29:27WatusimotoI'm going to clean out some of the cruft from in there
00:29:50raptorclean clean
00:29:57raptorturn it into c++!
00:30:04raptorit's ours now!
00:33:19bobdaduck has joined
00:35:16Watusimotoso you said this is the only place we use a texture
00:35:21raptoryep
00:35:23raptoronly place
00:35:28raptori think we should kill it
00:35:39Watusimotoand you said in the past that textures are what make our full screen difficult
00:35:45raptoryes
00:36:05Watusimotoso what... create a new font based on pixel rendering?
00:36:06raptorthere was garbledygook with textures on changing screen mode
00:36:26raptorbut you work around it by reloading all textures on any screen change
00:36:37Watusimotothe advanate we have with the console is that the text is always the same size
00:36:56raptoruhh.. i don't know...
00:37:04Watusimotoso we don't need to worry about scaling
00:37:15raptorwe could use our current vector font and somehow adapt it?
00:38:03raptorhey i think i just popped my ribs back in place!
00:39:07raptorhaha kaen
00:39:15raptoryou told someone in the forums to RTFM!
00:39:46kaenit is, by far, the most common solution to technical problems.
00:41:07raptorexcept for the fact that in our ever increasingly shortened-attention span cultures we have to train people to spend the time to read...
00:41:57raptorsometimes i wonder if the INSTRUCTIONS on the main menu is big enough...
00:42:03raptormaybe we should flash it
00:42:14raptorturn it neon colors
00:42:24raptorforce people to run through it...
00:42:33Watusimotoit seems most text is done with textures
00:43:03bobdaducklol
00:43:32raptorWatusimoto: yes, in fact, it would make it easier to use international languages
00:43:42raptorbecause there are TTF fonts of everything!
00:44:02Watusimotoyes, and packages like this:
00:44:03Watusimotohttp://code.google.com/p/freetype-gl/
00:44:15raptor!!!!!!!!
00:44:29raptorI've been looking for something like that...
00:45:10Watusimotowell, it looks cool
00:45:22Watusimotobut it uses a texture
00:45:29raptorbut then we'd have to worry about texture sizes and supported graphics cards...
00:46:19Watusimotowe'd have to worry if we used this package?
00:46:48raptoryes, if we get into texture packing
00:46:58raptorwhich is what we should do if we want to be efficient
00:47:30Watusimotowell, this thing has some neat looking texture packing
00:48:15raptorbobdaduck: did you just crash the contest server??
00:48:32bobdaduckyeah
00:48:38Watusimotohow?
00:48:43raptori don't know...
00:48:45raptorfirst time
00:49:27bobdaduckEveryone was crashing on the forcefield creation
00:49:36raptoroh oops...
00:49:43raptori created them
00:49:52raptorbut the server itself hasn't crashed before...
00:49:56raptorrestarted
00:52:37Watusimotothat package is interesting as it appears you can create textures from points and make rendering go faster
00:52:52raptoryes, using a single texture is much faster
00:53:01Watusimotoso we could, for example, make textures of soem game objects and then just blit them onto the screen
00:53:09raptoryes
00:53:44Watusimotoso I hear you saying textures suck lets get rid fo them and then I hear textures are fast and this is an awesome looking lib, and I get confused :-)
00:53:51raptorno no
00:54:15raptor1 texture, packed is faster than 26 textures, 1 per character
00:54:37raptorthat's what i mean
00:55:06kaenfor example, make textures of soem game objects
00:55:12WatusimotoI see; yes, I'm sure that's better
00:55:14kaen^ I was thinking about this the other day
00:55:52kaenseems like almost all of bitfighter's objects would be candidates for this.
00:56:15kaenonly a few actually have dynamic sprites, for lack of a better term
00:56:35raptornow the question is: is it faster to have 1 texture for all common objects (testitem, resource, etc) and just put multiples of them to the screen
00:56:46kaenthat would require testing
00:56:47raptorOR render multiples of vertex data directly
00:56:57raptorvertex data is extremely performant...
00:57:03kaenright
00:57:17kaenbut blitting requires no math
00:57:28kaenwell, except for like mipmapping
00:57:50kaenbut, much of that math is done in the gpu, so...
00:57:55kaenthat would require testing
00:59:19Watusimotothis package also includes a console!!!
00:59:24kaenlol
00:59:25raptorwhat?!
00:59:28kaenhow convenient...
00:59:41Watusimotohttp://code.google.com/p/freetype-gl/source/browse/trunk/demo-console.c
01:00:12raptoruses GLUT!
01:00:13Watusimotothough still not c++
01:00:18Watusimotowhat??
01:00:35Watusimotough
01:00:35raptorlook at bottom...
01:00:47Watusimotoyes, I see it now
01:01:30Watusimotohttp://wacha.ch/wiki/sdlconsole
01:01:37WatusimotoI'm on the hunt now
01:01:57Watusimotobut this one is not it
01:02:19raptorneat
01:02:32raptoruses SDL_image
01:02:47Watusimotohe complains it is difficutl to integrate and slow
01:05:41raptoranilater9000 v9
01:05:44raptorhas joined
01:06:33raptori don't know kaen direct vertex buffers will be hard to beat...
01:08:08raptorok, heading home!
01:11:56Watusimotobye!
01:12:07raptor Quit ()
01:29:36CrazyLinuxNerd Quit (Quit: Leaving)
01:42:18bobdaduckWhen I use /getmap it really,, really, really screws up formatting
01:42:48kaenI bet you've just found some unix line endings.
01:43:03bobdaduckYes, very much so.
01:43:13bobdaduckAnd it makes it so the maps and scripts don't run.
01:43:14kaenyou just need a better text editor :)
01:43:23bobdaduckNo
01:43:30bobdaduckOpenning them in Notepad++ does the same thing
01:43:40kaenoh alright sounds like a bug.
01:43:52bobdaduckUnix line endings is definitely a part of it.
01:58:09YoshiSmb has joined
02:03:37Watusimoto Quit (Ping timeout: 276 seconds)
02:07:03raptor has joined
02:07:03ChanServ sets mode +o raptor
02:07:56raptorbobdaduck: tell me how to reproduce your getmap problem?
02:08:05bobdaduckGET IN MY SERVER YOU GUYS
02:08:07bobdaduckI'M AMAZING
02:28:17YoshiSmbError 13
02:29:00raptorYoshiSmb: when connecting to master?
02:29:14YoshiSmbno. to a server.
02:29:22YoshiSmbit say 'Stat: T
02:30:42raptorthat's ReasonIncompatibleRPCCounts
02:30:54raptorsam686: how come YoshiSmb got that ^^?
02:31:05raptorYoshiSmb: was it connection to sam686's server?
02:31:31YoshiSmbno.
02:31:38YoshiSmbit was on a normal hosting server
02:43:02raptorYoshiSmb: did you use normal 018 and do HOST GAME?
02:43:49YoshiSmbno. JOIN GAME:
02:46:47raptorbut on who's server?
02:48:49sam686addbot crashed contest server...
02:56:07YoshiSmb Quit (Ping timeout: 255 seconds)
03:01:50sam686As for YoshiSMB problem, it might be a modified or incompatible to existing 018 on some revisions... (might be bobdaduck? causing errors to others trying to connect?)
03:03:41sam686The problem is, I didn't see the error... because that server giving players errors isn't there for me to connect
03:12:55YoshiSmb has joined
03:13:29YoshiSmbi dont know raptor. ''Raptor Say's:but on who's server?''
03:14:02sam686YoshiSmb - As for your connection error, only got that for only one server that isn't there anymore, out of others?
03:14:11raptorhia gain
03:14:31YoshiSmbyes
03:15:21sam686who ever was hosting might have had a broken compatibility with existing 018, I might want to check the latest changes though..
03:15:37YoshiSmbyep.
03:57:06bobdaduck Quit (Quit: Page closed)
04:04:31kaenraptor, I was just thinking: the accolade stuff for desura would fit nicely into the master
04:05:12kaensince it has a part in awarding accolades anyway. that extra library wouldn't be a dep for the client/server
04:05:15raptorthe stats stuff?
04:05:23kaenwell, the badges
04:05:23raptorahh... for master
04:05:25raptorhmmm
04:05:29raptorinteresting idea
04:05:35kaensince it controls the db
04:05:43kaenjust slip the xml stuff right in there
04:05:47kaenif it even comes to that, I mean
04:05:50raptori think you're right..
04:05:53raptorgood thinking
04:06:13kaenmy mind is wandering right now
04:06:26kaenI'm about to dig out the shaders implementation from my skunkworks...
04:07:18raptorheh
04:08:23kaenoh wow I did a... hasty... job.
04:08:56kaennow for my favorite part of programming: figuring out what the heck I was thinking
04:09:13raptorhaha
04:09:17kaenand then probably for my second favorite part: throwing stuff away
04:09:20YoshiSmb Quit ()
04:09:30raptori usually make fun of myself for a few moments, then rewrite everything...
04:09:35kaenyep.
04:13:20Nothing_Much Quit (Read error: Connection reset by peer)
04:13:52BFLogBot Commit: b38b3e255d53 | Author: buckyballreaction | Message: Fix some compiler warnings in Linux
04:22:30bobdaduck has joined
04:26:32bobdaduck Quit (Client Quit)
04:50:18raptori think callbacks are starting to punch me in the head..
05:21:31bobdaduck has joined
05:22:50Lamp has joined
05:22:53Lamphi
05:23:01raptorhi Lamp
05:23:02raptorwelcome
05:23:23raptoryou say the F keys don't work in-game?
05:23:26raptoron mac
05:23:29Lampnot all
05:23:37raptordo the work in other applications on your computer?
05:23:46raptor*they
05:23:52Lampi dunno...
05:23:59Lampi never used f keys for apps before
05:24:04raptorok
05:24:16Lampwhat are the controls for the game?
05:24:20Lampi mean commands?
05:24:22raptorbut you can get to the INSTRUCTIONS from the main menu?
05:24:29Lampe.g. /yes
05:24:33Lampyes
05:24:38Lampwhat are the commands?
05:24:41Lamphow do i add a bot?
05:24:45raptorok, go there, then use the arrow keys to go to page 10
05:25:04Lampoh got it
05:25:15raptorok, there's lots and lots of commands
05:25:27raptorthat's why we say to look at the instructions..
05:26:02Lampi idnt know there were more than one pages...
05:26:06Lamp*didnt
05:30:16Lampi forgot what a module is...
05:30:23Lampoh nvm
05:30:35kaenhi Lamp :)
05:30:40Lamphi
05:36:57Lamp Quit (Ping timeout: 245 seconds)
05:50:17bobdaduck Quit (Ping timeout: 245 seconds)
05:59:02raptoroh no... Lamp is a dungeon afficionado
06:21:44sam686I guess contest server went bye bye since it is no longer a contest...
06:22:00sam686but the real reason it is gone is it died on /addbot
06:22:55raptorthat stinks...
06:26:55raptordid you restart it?
06:27:29raptorlast error in logs was:
06:27:30raptor***ROBOT ERROR*** Error handling event Tick: robots/s_bot.bot:91: attempt to call missing or unknown method 'getHealt
06:27:32raptorh' (a nil value). Shutting bot down
06:51:50raptor Quit ()
07:17:43Nothing_Much has joined
07:39:22martinb__android Quit (Read error: Connection reset by peer)
10:08:40Watusimoto has joined
12:35:04Watusimotokaen: events ARE documented, at least partially! I just realized!
12:35:12Watusimotohttp://bitfighter.org/luadocs/index.html
12:35:30WatusimotoClick on the enums tab, then Event
12:35:41Watusimotonot terribly useful, but I feel less neglectful now
12:38:40Nothing_Much Quit (Ping timeout: 276 seconds)
14:18:37YoshiSmb has joined
14:21:35YoshiSmbhi
14:24:21LordDVG has joined
14:25:55YoshiSmbhi LordDVG
14:26:05LordDVGyo YoshiSmb
14:26:20LordDVGhappy new year ;)
14:34:39YoshiSmbthanks.
14:34:58YoshiSmbhappy new year LordDVG. :D
14:44:04kaenWatusimoto, that's where I pulled the list in the thread from :)
14:44:25kaenand timezone-appropriate grettings, all
14:49:26Watusimoto Quit (Ping timeout: 248 seconds)
15:02:31LordDVG Quit (Remote host closed the connection)
15:18:24raptor has joined
15:18:25ChanServ sets mode +o raptor
15:24:16YoshiSmbhi raptor.
15:24:26raptorgood morning
15:25:08YoshiSmbyou sleep well?
15:25:49raptormostly well, i think; thanks
15:26:59YoshiSmbnp.
15:27:13YoshiSmbalso i awake a few hour's ago.
15:50:42YoshiSmb Quit (Ping timeout: 245 seconds)
16:11:23martin_bede has joined
16:11:29martin_bedehello
16:11:55raptorhi
16:20:04kaenraptor I know I've asked this before, but what version of ogl do we support?
16:20:09kaenalso good morning
16:20:15raptorgood morning!
16:20:43raptori ported everything to GL ES at the end of the summer, but that means we can run on opengl 1.1
16:21:23raptorbut, our goal is to get to GL ES2 for mobile compatibility (some day)
16:22:01raptornice info about porting: http://wiki.maemo.org/OpenGL-ES#Porting_between_OpenGL_variants
16:23:54kaenhow did you learn so much about OGL/SDL raptor?
16:24:00raptordreams
16:24:05kaenlol
16:24:32raptori read the APIs in my dreams... or at least really late at night
16:24:42raptorfor weeks on end, i went through epic struggles
16:24:57raptorand i don't think i learned much..
16:25:20raptoryeah, so...
16:25:21kaenI think you know tons more than I do, at least.
16:25:36raptorbasically the porting of bitfighter to SDL/SDL2 taught me everything I know...
16:26:01raptori was wholly ignorant when I started - i had some vague idea of what SDL actually was..
16:26:48kaenI guess I just need to get my hands dirtier
16:27:57raptoryes, that's about it
16:38:08raptorkaen: wherer are you fromn again? somewhere in the south usa?
16:42:51raptorugh my spelling
16:45:43kaenwashington state
16:45:51kaenlived here my whole life :)
16:46:29raptorah that's right...
16:53:31Watusimoto has joined
16:53:51raptortrying to repair donny's latest patch
16:54:00Watusimotohi
16:54:05raptorhi
16:54:07martin_bedehi
16:54:34Watusimotohi martin_bede -- have you tried running Bitfighter since my last commit (last night)
16:54:54Watusimotoit fixed raptor's problem; hopefully yours as well
16:55:02martin_bedeyes, i saw your message
16:55:10martin_bedeit didn't do the trick for me
16:55:16Watusimotogrrrr
16:55:31raptormartin_bede: what was your problem again? and how to duplicate?
16:56:03martin_bedethe game freezes when i try to start mazeracer
16:56:12Watusimotoraptor: did you see this?
16:56:13Watusimotohttps://code.google.com/p/bitfighter/issues/detail?id=188
16:56:16Watusimoto:-)
16:56:40raptormartin_bede: on Linux?
16:56:44martin_bedeyes
16:57:12raptorhave you tried a full recompile from the project root? 'make clean && make debug'
16:57:24YoshiSmb has joined
16:57:28martin_bededidn't yet
16:57:37raptorWatusimoto: onwards!
16:57:55raptormartin_bede: i suggest to do a full recompile with the latest changes, then retest
17:01:32YoshiSmb Quit (Ping timeout: 245 seconds)
17:02:11Watusimotoraptor: I was reading about bitmapped fonts, and they seem to be good for what we want
17:02:24Watusimotoif we want to get rid of textures altogether
17:02:42raptorare you thinking of replacing in-game text like chat as well?
17:02:51Watusimotothat doesn't use textures
17:02:58Watusimotoso... no
17:03:07Watusimotoalso, I think it is part of what gives the game its character
17:03:17raptoryes, me too
17:03:21raptorjust checking..
17:03:40Watusimotothough who knows... maybe there are fonts that would be as good or better
17:03:47Watusimotomy main goal is just for the console
17:04:32Watusimotoall of you are on linux, but I found a great windows replacement for the windows console (cmd.exe)
17:04:42Watusimotothat actually works like a... console
17:04:58martin_bederaptor: that fixed it, thanks
17:05:11Watusimotoinstead of a piece of junk from 1982
17:05:23martin_bedehow did that happen? i know what make clean does, but i don't know why it was helpful in this case
17:05:29raptormartin_bede: hooray!
17:05:45raptorWatusimoto: msys?
17:05:47raptor:)
17:05:50Watusimotoraptor's favorite fix... make clean
17:06:19Watusimotono, conEmu
17:06:21martin_bedefrom now it's mine too :D
17:06:22raptormartin_bede: basically, 'make' is not very smart - if there are header file changes (.h files) make is not smart enough to recompile all the .cpp files that use it
17:06:45martin_bedeis see, thanks for explaining
17:08:56raptormartin_bede: you're welcome. i follow one basic rule, if there are .h changes, then I do 'make clean' first
17:10:58Watusimotomartin_bede: now you can test your code!!
17:11:21raptorWatusimoto: i don't understand how donny is creating these patches...
17:11:27raptorfor the /announce
17:11:34Watusimotodid he make another one?
17:11:38raptoryes...
17:11:42raptortrying to normalize it again..
17:11:44raptortrying...
17:12:04Watusimotoif he didn't make it off a recent code base, I'm not going to bother look at it
17:12:11WatusimotoI spent waaay too much time doing that last time
17:12:32Watusimotoand I gave him what I thought were clear instructions on what to do
17:12:50Watusimotowe made it really easy by merging his partial code into the codebase (admittedly, a bad practice)
17:14:29Watusimotobut I wanted to make it easy for him to do "the right thing"
17:14:31raptor1/3 of the chunks are reversed, 1/3 apply normally, and the rest don't apply at all...
17:14:35raptorfjkaf;jdak;lfdas
17:15:06Watusimotothere should only be one or two chunks in all
17:15:17raptorhunks
17:15:19Watusimotoor at least his latest edits should have only affected one or two files
17:15:23raptordid i say chunk? i meant hunk
17:15:25raptorwhatever
17:15:32Watusimotoi'm a hunk -- these are chunks :-)
17:17:13raptorthere's even one part in there twice!
17:19:21raptorok, i don't really want to spend time on this patch.. it's the worse one so far..
17:19:25raptorsuggestions?
17:20:58martin_bedeWatusimoto: what's the best way of printing to console from lua? print "blah"; doesn't seem to do anything
17:21:21Watusimotoit should, but if it doesn't, use logprint("blah")
17:21:27Watusimotoprint "blah" will not work
17:21:32Watusimotoprint("blah") should
17:21:47Watusimotolua is pretty strict about ()s in functions
17:22:14Watusimotoprint is mapped to call logprint, so they are pretty much identical
17:23:29martin_bedestrange, only logprint works (i used parentheses)
17:27:30Watusimotowell, I'll fix that
17:33:36raptorok, replied to Donny about not being able to use the patch... again
17:41:19Watusimotook, dinner... back later
17:46:17Watusimoto Quit (Ping timeout: 265 seconds)
17:48:05martin_bedeoh random segfault
17:48:15raptorthat's not good...
17:48:26raptorheh, you got taken over by some players!
17:48:38raptorserver pass, is probably a good idea
17:48:53martin_bedei know, only forgot it this time
17:48:58raptor:)
17:51:01LordDVG has joined
18:21:00martin_bedewhat's wrong with the following? when i call for example a.getPos() i get an error "trying to call nil"
18:21:08martin_bedethat's how i init the variables: http://pastebin.com/KDiMHAr7
18:21:41Watusimoto has joined
18:21:51martin_bedei also tried that with TestItem which i already know it's working, still i get the same result
18:23:14raptor Quit ()
18:23:23raptor has joined
18:23:23ChanServ sets mode +o raptor
18:23:34martin_bedeWatusimoto: hi, i'm having problems with testing. basically trying to call anything.getPos() results in an error about calling a nil value
18:24:01martin_bedethis is how i create the things to be tested: http://pastebin.com/KDiMHAr7
18:25:50Watusimotomartin_bede: does it fail on any particular line?
18:26:04martin_bedewhat i pasted doesn't fail
18:26:18martin_bedeadding for example k.getPos() would fail
18:26:28martin_bedeafter creating it of course
18:26:37raptormaybe use the colon: ':' instead of dot. '.'
18:26:47raptorwildly guessing...
18:27:07raptorwait, getLoc() instead of getPos() right?
18:27:44Watusimotooh, yes, that's it
18:28:00Watusimotosorry, no its not
18:28:10martin_bedeit's getLoc
18:28:10Watusimotok:getLoc()
18:28:29martin_bedei knew it was something stupid
18:28:30martin_bedethanks
18:28:41Watusimotothat is, aside from 1-based arrays, the worst design choice of lua
18:28:44raptoranonymous connections are working!
18:29:08Watusimototo use the : and the ., which look very similar, to mean two very similar yet subltly different things, is horrible
18:29:20Watusimotoespecially as everyone will expect the .
18:29:44Watusimotoif they really needed to differentiate (which I would argue they don't), they could have used . and ->, for example
18:29:50Watusimotothings that look different
18:33:25Watusimotogreat!
18:33:40Watusimotoif this works, I just chopped several largish blocks of code
18:33:46raptorwhat are you workign on?
18:33:52Watusimotoless code == more better
18:33:54Watusimotoitems #25
18:33:56Watusimotosort of
18:34:12Watusimototrying to get a better stack trace for all potentially failing lua code
18:34:41WatusimotoI finally figured out how to have all the places we run code work through the same method
18:34:48Watusimotolots of duplicate code gone!
18:34:59raptorthat is good
18:35:08Watusimotoabsolutely
18:35:11raptormore good = less bad
18:35:13Watusimotoprobably easier to read as well
18:35:17raptoruh
18:35:19raptorwhatever
18:36:50kaenI get Lua's idea: there's a semantic difference between calling a method and accessing a field. but I agree that the stab operator might be a better choice.
18:36:54kaenor #
18:37:05kaensince Class#method is a common notation in OO discussion
18:37:13raptori can now start ripping apart the GUI!
18:37:30raptorstab ->
18:37:35raptori didn't know that had a name..
18:38:51Watusimotoback in a bit
18:39:41kaenreally, the only bad part is that : does in lua what . does in every other OOish language
18:39:51kaenif they'd just switch them it would almost make sense.
18:40:06kaen(at least when applied to method calls)
18:47:13raptorrecode everything in java! they only have 1 operator! the .
18:51:03martin_bede Quit (Remote host closed the connection)
18:51:17LordDVG Quit (Remote host closed the connection)
18:54:26kaenwhoa
18:54:31kaenI didn't realize that.
18:55:49kaenruby has so many operators
18:55:53kaen** for exponents
18:56:08kaen-> for lambdas
18:56:20kaen.. for ranges
18:56:23kaenetc.
18:56:31raptor...
18:56:34raptorhttp://glyphic.s3.amazonaws.com/ozone/mark/periodic/Periodic%20Table%20of%20the%20Operators%20A4%20300dpi.jpg
18:56:44martin_bede has joined
18:56:47kaenD:
18:56:49kaenit's
18:56:51kaenbeautiful.
18:57:31kaenraptor this image is having an emotional effect on me for some reason.
18:57:48raptorbut perl 6 will never see the light of day
18:57:55kaengood god
18:58:00kaenit's a perl document
18:58:05raptorkaen: the question is - what mixture of emotions...
18:58:09raptorhaha
18:58:17kaenat first it was tacit awe of the beauty
18:58:22kaenbut now I just feel... unclean
19:00:21raptorha, there's an imaginary operator: 'i'
19:03:20kaenruby has a Complex type, but no special syntax for it :<
19:03:49martin_bedeWatusimoto: the coordinates stay (0,0) everywhere despite the arguments, except for Turret which is always (15,0). any ideas? probably a forgot to call something like posChanged, but i can't see any difference compared to other (working) Lua constructors
19:03:58martin_bedeI*
19:16:03Watusimototry tracing it through the constructor -- what happens to the values, do they get clobbered by something else? etc. Be back in a bit
19:19:23raptormaybe setGeom is needed to send stuff client-side?
19:19:35raptori seem to remember sam686 mentioning something like that..
19:22:03raptordonny added a new patch!
19:25:06martin_bedei get the same results with setGeom
19:36:16martin_bedethe profile seems to be always -1, but i just installed Nemiver so it's maybe i'm wrong
19:36:56martin_bede-it's* (i reedited the message and forgot to remove that)
19:39:05martin_bedeisn't functionArgs, a parameter passed to checkArgList supposed to be constructorArgList? here: http://pastebin.com/rTtAGVTg
19:40:15martin_bedeprobably i should just try that.
20:10:02amgine1234567890 has joined
20:11:02amgine1234567890kaen i responded in the chess thread i accepted your center counter gambit.
20:14:52amgine1234567890raptor can i suggest somthing make it so people cant login with a false user name ( i.e guest) but make it so instead users who are guests are named guest# (random 5 digit number) not chumpchange.
20:15:06Watusimotohi
20:15:20amgine1234567890hi wattisimo.
20:15:42Watusimotoraptor: martin_bede is trying to get rid of the need for setGeom by passing the geom in the constructor
20:16:13amgine1234567890curiosly enough BF irc works on opera.
20:16:52martin_bedethe fix i mentioned worked, surprisingly
20:17:15Watusimotook, good
20:17:25martin_bedeafter applying it for every class i worked on, i get a segfault when clicking on host game button though
20:17:36Watusimotooh goodie
20:17:44Watusimotowhat's the stack trace?
20:18:19martin_bedenothing, i guess
20:18:21martin_bedeSegmentation fault (core dumped)
20:18:25martin_bedethat's all
20:18:40amgine1234567890since i cant get a copy of mercuial with tortiseHG is there another way to get a copy of the source code.
20:19:32amgine1234567890(install rights blocked. )
20:21:42martin_bedeuse command-line mercurial flash drive? http://stackoverflow.com/questions/1904419/running-mercurial-on-a-flash-drive
20:21:49martin_bedea*
20:22:13Watusimotoamgine1234567890: you want the very latest, or the source from 018 release?
20:23:06Watusimotoraptor: what is the .xz extension?
20:23:18Watusimotohttps://code.google.com/p/bitfighter/downloads/list
20:23:27Watusimotothe source archive
20:24:02amgine1234567890 Quit (Ping timeout: 245 seconds)
20:39:21martin_bedeWatusimoto: i applied the fix and tested them one-by-one. 4 of the constructors cause a segfault, one adds 15 to the x coordinate passed to it
20:39:57martin_bedei think first we should figure out the +15 problem, as it seems easier, maybe it's even intentional
20:40:16Watusimotowhat type of object adds 15?
20:40:22martin_bedeTurret
20:40:25Watusimotoah, ok
20:40:30Watusimotoit may be intentional
20:40:32YoshiSmb has joined
20:40:48Watusimotofirst off, it tries to mount itself to a wall
20:40:56Watusimotois there a wall nearby?
20:41:10Watusimotoand then it does some offsetting stuff to look pretty next to the wall
20:41:25Watusimotoforcefield prjectors do the same
20:42:04martin_bedeso it should stay that way?
20:42:17Watusimotoshow me the turret code
20:42:20Watusimotoplease
20:42:26Watusimoto(the c++)
20:42:37YoshiSmb_ has joined
20:43:14martin_bedehttps://code.google.com/r/bmartin9x-bitfighter/source/browse/zap/EngineeredItem.cpp
20:43:19martin_bedepushing it in a minute
20:44:25martin_bedesone
20:44:27martin_bededone
20:45:03Watusimotook let's look at the key bits
20:45:14Watusimoto(what does BUGGY SPEC mean, anyway?)
20:45:15Watusimoto initialize();
20:45:15Watusimoto if(L)
20:45:15Watusimoto findMountPoint(Game::getAddTarget(), getPos());
20:45:15Watusimoto if(L && profile == 1)
20:45:15Watusimoto {
20:45:17Watusimoto setPos(getPointOrXY(L, 1));
20:45:19Watusimoto setTeam(getInt(L, 2));
20:45:21Watusimoto }
20:45:40Watusimotothis one is going to be a tiny bit different, I think
20:45:45martin_bedei didn't mean to include that
20:45:53YoshiSmb Quit (Ping timeout: 276 seconds)
20:46:11martin_bedeit means that applying my fix produced an error, different from the segfault
20:46:42Watusimotofirst off, for this one, initialize() will definitely need to come after we set the geom
20:47:01Watusimotoinitialize does some futzing around with the position, and needs to know where it will go
20:48:17Watusimotook, so the constructor signature looks like this:
20:48:18WatusimotoTurret::Turret(lua_State *L) : Parent(TEAM_NEUTRAL, Point(0,0), Point(1,0))
20:48:52Watusimotothe 0,0 is the coords that the turret is located at, the 1,0 is the direction it's facing (these are default values, of course, but they give a sense of what's needed)
20:49:56Watusimotoah so.
20:50:21Watusimotothis is going to need more work. Please add this comment:
20:51:27Watusimoto/ TODO: This does not work; we need to snap the turret to a nearby wall and compute the normal angle. It is likely that setPos is similarly broken. And maybe more.
20:51:37Watusimotofixing this is beyond the scope of your work, I'm afraid
20:51:46Watusimotoso don;t worry about this one
20:52:04Watusimotounless you want to, of course~!
20:54:09raptorxz -> the replacement for bz2
20:54:21raptorbasically LZMA2 compression algorithm
20:54:38raptormany linux systems use it for source archives now (e.g. tar.xz)
20:55:06raptorok, i take that back, xz is *technically* a container for LZMA2 compressed data
20:55:24Watusimotooh wait!
20:55:43Watusimotomartin_bede: try calling this after you set the location:
20:55:47WatusimotofindMountPoint(game, pos);
20:56:15Watusimotothat will look for a nearby wall, adjust the location, and get everything set!
20:56:25WatusimotofindMountPoint(game, pointYouReadFromLua)
20:56:31raptoryeah, so naps on the main-room couch don't work with toddlers
20:56:37Watusimotoin fact, you don;t even need to call setPos at all
20:56:57Watusimotoraptor: your nap or theirs?
20:57:58martin_bedewhere can i get "game" from?
20:58:16raptormine :)
21:00:29martin_bedeGame::getAddTarget()?
21:01:38martin_bedethis didn't seem to change anything
21:02:08Watusimotogame comes from getGame() or mGame (don't remember which)
21:02:17raptorboth!
21:02:26Watusimotodon't mess with getAddTarget
21:02:38Watusimotothat sets the database that receives an object
21:03:08Watusimotouseful only when running levelgens in the editor, and you want to store them in a seperate place so you can render them differently and displose of them rapidly
21:03:23Watusimotoit just occurred to me that eliza should probably be a levelgen, not a bot
21:04:06martin_bedeboth mGame and getGame() gives segfault
21:04:08Watusimotoor... maybe... some sort of new entity that can be added like a bot but has no corporeal in-game existence
21:04:16Watusimotothey are probably the same
21:04:19Watusimotobut
21:04:26Watusimotoplease show me your segfault
21:04:38martin_bedehow can i do that?
21:04:49martin_bedevalgrind log?
21:05:18raptormartin_bede: run the game like so: gdb ./bitfighter
21:05:39raptorthen, when it segfaults, type in 'bt' and paste the stack trace to http://pastie.org/
21:05:46raptorand give us the link
21:06:02raptor(you m ay need to install gdb)
21:06:37YoshiSmb_ is now known as YoshiSmb
21:07:37Watusimotohey that;s the same place I pasted some stuff earlier today!
21:07:39Watusimoto:-)
21:08:02martin_bedeokay, sorry about not using pastie, it gave me error 503: http://pastebin.com/veiNcvFM
21:08:12martin_bede(Service Unavailable)
21:08:14Watusimotopastebin is fine too
21:08:49martin_bedei though the other one had syntax highlighting for errors or something
21:09:11martin_bedeoh
21:09:15martin_bedei pasted it twice
21:09:23Watusimotodang -- I'll bet game is NULL here
21:09:27martin_bedeand my lame attempt at extracting it to a file
21:09:33Watusimotobecause it hasn;t been added to a game yet...
21:09:51martin_bedeso we'll just stay with that comment then?
21:11:14Watusimotoyes, go with the comment
21:11:43Watusimotoplease add something like: // mGame may be NULL here, causing a problem with findMountPoint
21:11:54Watusimotothis is going to be tricky to solve
21:12:05Watusimotooh!
21:12:07Watusimotowiaht!!!!
21:12:12Watusimotouse gServerGame for game!!!
21:12:46WatusimotoI hate using the globals, but you'll only be calling this from a server, so if that's NULL, well, things are already int he process of crashing
21:13:07Watusimoto(but don't delete the comment just yet :-) )
21:13:33Watusimotomartin_bede: you are getting a first hand look at my disorganized mind
21:16:24martin_bede:) the segfault is gone
21:16:43martin_bedethe extra coordinate value is still there though
21:18:34martin_bedemay we switch to the other segfaults now?
21:19:42amgine1234567890 has joined
21:20:21amgine1234567890*trollface*
21:21:18Watusimotosure, yes
21:22:06Watusimotoplease post the relevant code and teh segfault somewhere
21:22:23raptorWatusimoto: I can now start cutting up the GUI flow with my anonymous connection logic (finally) working now...
21:22:43martin_bedeso SpyBug, Teleporter, WallItem and Zone are affected by segfaults
21:22:47Watusimotowhat do yo mean by cutting up?
21:22:50raptorso my first question - where should I put the option to change usernames/etc..
21:23:03Watusimotook, let's look first at spybug, that should be easy
21:23:11raptorcutting up - move UINameEntry around
21:23:30Watusimotoraptor: for the moment, let's put it under options; though we may want to change that
21:24:06raptorbecause previously we don't/didn't allow username changes; you have to exit the game..
21:26:11amgine1234567890could we change the default chumpchange to guest# where # is a random 5 digit number? (chumpchange seems kind of rude)
21:26:44Watusimotoamgine1234567890: chumchange is supposed to be rude
21:26:48martin_bedeWatusimoto: the code: https://code.google.com/r/bmartin9x-bitfighter/source/browse/zap/projectile.cpp
21:26:52Watusimotothe idea is to make people want to change it
21:27:10amgine1234567890examples guest41023 guest 99028
21:27:56Watusimotook, first issue, and this may be it, is you need to check if L is NULL before using it
21:28:13Watusimotoyou use it in checkArgList(), but do the NULL check afterwards
21:28:23Watusimotowrap the whole thing in an if(L) { } block
21:28:58amgine1234567890yeah but doing it by giving them a rude name isnt the way to do it that gives BF a bad image.
21:29:03Watusimotoalso, as a general programming tip, if you can find a way to do a check just once (rather than twice, as here if the first condition is false), it makes the code perform better; it also makes it more readable
21:29:56Watusimotoamgine1234567890: you think they'd like it better if we calledthem "AwesomeDude"?
21:30:14amgine1234567890Btw i dont know if its a bug but seekers will aim for teammates.
21:30:17raptorAwesomeSauce
21:30:58Watusimotoah... "sauce" was the codeword we used when i was involved in some clandestine activity in a former life
21:31:02amgine1234567890the seeker issue?
21:31:39WatusimotoI don;t know if it's a bug, either
21:32:54amgine1234567890 a neutral name would work better its a psychology thing.
21:33:33amgine1234567890raptor is the seeker thing a bug?
21:34:20Watusimoto"rope"
21:34:24martin_bedeWatusimoto: okay, now i only get a message about failure of validating parameters
21:34:24Watusimoto"chair"
21:34:33Watusimotothat's progress!
21:34:51martin_bedei passed it 3 numbers, and it expects a geom and a team index
21:35:02Watusimotocan you show me the relevant lua code? (just the line where you call the constructor will be enough)
21:35:23martin_bedelocal f = SpyBugItem.new(60,60, 0);
21:35:41amgine1234567890on the opera system why does it default over to view to posted comment without letting you choose?
21:35:44Nothing_Much has joined
21:36:13raptoramgine1234567890: i cannot duplicate the seeker bug
21:36:26raptorthey must not be a teammate, probably a single player game..
21:37:33amgine1234567890it was a ctf match ill investigate it more.
21:37:54amgine1234567890and get back to you.
21:38:03raptoryes, please make sure you can reliably duplicate something before asking us about it..
21:38:15Watusimotomartin_bede: not your problem, but why this?
21:38:16Watusimoto initialize(Point(0,0), NULL);
21:38:16Watusimoto setPos(getPointOrXY(L, 1));
21:38:28Watusimotowhy not inti(getPointOrXY(), NULL)
21:38:57martin_bedeinit doesn't seem to do anything with the pos
21:39:18martin_bedeit's right after the constructor
21:39:19Watusimotoyes, I just noticed that
21:39:21Watusimotook, forget it
21:39:34Watusimotowhy are we passing pos to the intialize(), I wonder
21:39:35Watusimotook
21:39:47amgine1234567890 yeah i dont see why it can be what tou put.
21:41:05Watusimotomartin_bede: do you know how to use gdb?
21:41:23amgine1234567890btw i was discussing this a while back did you ever fix the score overflow problem in nexus.
21:41:31martin_bedewell raptor showed me some basics a few minutes ago
21:41:39martin_bedebut i don't know much about it
21:41:51Watusimotohave you ever used a debugger?
21:42:04martin_bedeyes, but only ones that came with IDEs
21:42:13Watusimotook, so you understand the concepts anyways
21:42:30martin_bedewhat should i look for?
21:42:32WatusimotoI have only used gdb a few times, long ago, but it works well enough
21:42:47amgine1234567890if you put to many flags ro the nexus at once the score jumps to negitive.
21:42:56Watusimotowhat you want to do is set a breakpoint at checkArgList()
21:43:20Watusimotoif I understand correctly, you are reporting that when checkArgList runs, it thinks that you haven't given it valid arguments
21:43:28Watusimotoeven though you think you have
21:44:00amgine1234567890i have to go ill be back later.
21:44:12YoshiSmb_ has joined
21:44:47Watusimotoand it reported a message like this: Could not validate params for function...
21:44:59amgine1234567890bye everyone.
21:45:16Watusimotobye!
21:45:22Watusimotomartin_bede: you are in luck!
21:45:39Watusimotowe dump the stack when we pass bad args
21:45:58Watusimotolook in the lua output for "Current stack state"
21:46:22Watusimotothat should show you what is on the stack; that should, hopefully, match what you think you are passing to the constructor
21:46:31martin_bedeit is matching
21:46:47Watusimotoit is showing 3 numbers?
21:46:52martin_bedeyep
21:46:54martin_bede60, 60, 0
21:47:00Watusimotook, well, that's ok
21:47:12YoshiSmb Quit (Ping timeout: 272 seconds)
21:48:29Watusimotook, here's what I'm going to do; I've just got my bitfighter compiling again; I'm going to paste in your code, and see what's going on
21:48:33YoshiSmb_ is now known as YoshiSmb
21:48:54Watusimotoin the meantime, you can check the other places you are getting coredumps and see if you have the same "L" problem you had here
21:49:27amgine1234567890 Quit (Ping timeout: 245 seconds)
21:53:53Watusimotowait a minute
21:54:05Watusimotowhere do you use constructorArgList?
21:55:39martin_bedei pass it to checkArgList
21:55:56martin_bedemaybe didn't push that to the clone yet as it broke the build
21:56:37martin_bedei'm not sure
21:57:15WatusimotoI don't have it, but that could well be the problem
21:57:32Watusimotobecause functionArgs is basically empty
21:57:56Watusimotoyou are asking checkArgs to look at the Lua stack, and decide if what it has matches one of a set of profiles
21:58:09Watusimotoso it needs those profiles to be able to compare
21:58:16Watusimotoso that explains that problem
21:58:20martin_bedei'm sure it's not that as i had no errors when i passed that to every checkArgList
21:59:21Watusimotoshow me one that you think proves my statement wrong
22:00:01martin_bedei mean the errors came when i replaced checkArgs with constructorArgList
22:00:16martin_bedein projectile.cpp i'm passing constructorArgList
22:00:18martin_bedecurently
22:00:20Watusimotobut you weren't checking for NULL L, were you?
22:00:24martin_bedecurrently*
22:00:40martin_bederight, i wasn't
22:00:48Watusimotoso that was probably causeing the crash
22:02:08martin_bedebut we're talking about SpyBug here, right? we're sure that SpyBug causes the problem
22:02:20martin_bedeand SpyBug is not using checkArgs
22:02:42Watusimotook
22:02:53WatusimotoI fixed up the spybug the way I think it should be fixed up
22:02:54WatusimotoCould not validate params for function SpyBug::constructor(). Expected one of th
22:02:54Watusimotoe following:
22:02:54Watusimoto Geometry (see documentation), Team index
22:02:54WatusimotoTotal in stack: 3 [Current stack state]
22:02:55Watusimoto1 : number: 60
22:02:57Watusimoto2 : number: 60
22:02:59Watusimoto3 : number: 0
22:03:34Watusimotoso this tells me that 1) the correct args are getting to the checker (60,60,0), and 2) the checker is looking for the right pattern ( Geometry (see documentation), Team index)
22:03:38Watusimotoso...
22:04:01Watusimotosomething is up
22:09:54Watusimotoha!!!\
22:10:02WatusimotoI think I see what is going on
22:10:08Watusimotolet me test this
22:10:31martin_bedei feel so relieved every time you say this :D
22:10:39Watusimoto:-)
22:11:07WatusimotoI think the code is working properly, and your arguments are being legitimately rejected
22:11:32Watusimotoyup
22:11:51Watusimotowere you around for my rant about things I hate about lua last night?
22:12:02Watusimotothings I really *really* hate
22:12:35martin_bedenope, i went to sleep early
22:13:08Watusimotodo you know what index lua arrays start at?
22:13:19martin_bede1?
22:13:23Watusimotoyes
22:13:35Watusimotowhich team are you trying to put the spy bug on?
22:14:00Watusimotohint... the first team?
22:14:20martin_bedeoh...so it should be 1, right?
22:14:22Watusimotoyes
22:14:28Watusimotoit works for me with a 1 for the team
22:14:35Watusimotobut, of course, it looks right with the 0
22:14:48Watusimotowhich is why this 1-indexing is so stupid
22:14:57Watusimotolua is meant to be embedded in C programs
22:15:17Watusimotoso the C programmers will look at buggy lua code and not see the bugs
22:16:07WatusimotoI am going to add an explicit 0 check for the teams, and print a helpful error message
22:16:21Watusimotobecause this is so incredibly lame
22:16:48Watusimotoraptor: I am tempted to hack the lua source and make *our* lua have 0-based indexes
22:16:59Watusimotowould that be a really bad decision?
22:24:01martin_bedescripters new to the game would start with frustration, i don't think it's worth it
22:24:29Watusimotothat's why I didn;t do it last time I got angry at this
22:24:42Watusimotothat's why I probably won't do it this time
22:24:46Watusimotobut next time?
22:24:50martin_bede:)
22:25:04Watusimotowell, you'll get a nice prominent warning next time this happens
22:26:04martin_bedecool
22:26:39Watusimotobecause it will happen
22:27:47martin_bedeTeleporter doesn't get a Lua state passed to it ( i think)
22:28:10martin_bedeit stays (0,0). constructorArgList is used.
22:29:22YoshiSmb Is Hosting a Dedicated Server: IP:190.96.113.66 Port:Random
22:30:31martin_bedethe latest version of the file: https://code.google.com/r/bmartin9x-bitfighter/source/browse/zap/teleporter.cpp
22:31:32martin_bedeall right, solved already
22:31:48martin_bedeinit should be before other stuff
22:35:35martin_bedethe next one is harder though, another segfault
22:35:42martin_bedeL is already checked
22:36:24martin_bedelooks like something with setPos(), but i don't see anything special in how it's called
22:36:59martin_bedeWatusimoto: probably you can get more out of this log: http://pastebin.com/6Dx1eMxF
22:39:00Watusimotowhat are the argus you are passing?
22:39:41martin_bede100,100
22:40:28martin_bedeit's the WallItem class btw, forgot to mention that
22:40:45Watusimotohere, for sure, calling init with (0,0) will wipe out all the good works you're doing... here you'll need to pass the points to initialize, instead of calling setPos yourself
22:40:57Watusimotoand the answer to your problem lies in that sentence
22:41:12WatusimotoI'll repeat the key part of it
22:41:23Watusimotoneed to pass the points
22:41:44WatusimotoA teleporter needs a origin and a destination
22:41:49Watusimotoyou have provided only one
22:41:57Watusimototry passing it (100,100,200,200)
22:42:12Watusimotoor (point.new(100,100), point.new(200,200))
22:42:29Watusimotoor ({point.new(100,100), point.new(200,200)})
22:42:41Watusimotoor ({100,100,200,200})
22:42:47Watusimotoall of those should produce the same thing
22:43:07Watusimoto(and would you mind testing those 4, please?)
22:43:24Watusimotowait, not point.new
22:43:29Watusimotonew point()
22:44:11martin_bedei can add the destination as an argument too if you want so
22:44:40martin_bedebut my problem is with WallItem. Teleporter works as intended
22:44:44Watusimotowell, geom shoudl adapt to the local needs
22:44:50Watusimotooh, interesting
22:45:05Watusimotook, I misunderstood
22:45:24Watusimotoso you are passing 100,100 to wallItem?
22:45:29martin_bedeyes
22:45:38Watusimotowhat shape wall would you expect that to produce?
22:45:58Watusimotoa wall would need at least 2 points to be viable, I'd think
22:46:08WatusimotoGeom doesn't always mean a point
22:46:19Watusimotoit takes on different meanings for different objects
22:46:27Watusimotoa Zone always requires at least 3 points
22:46:40Watusimotoa linear feature, such as a wall, requires 2
22:46:46YoshiSmb Quit (Ping timeout: 248 seconds)
22:47:13YoshiSmb has joined
22:47:14Watusimototeleprters are weird so though it would be useless, I may have allowed you to create a 1 point teleporter
22:47:41Watusimotoso you could create a teleporter origin, then add destinations to it
22:51:34martin_bedeuhh, sigsegv. can i keep the teleport as is?
22:52:02martin_bedeor better, could you help me with it?
22:52:53Watusimotoyes
22:53:02Watusimotowell no
22:53:46martin_bedeyes to which one?
22:54:19Watusimototeleport is obviously wrong; I am still thinking how to fix it
22:55:05Watusimotoif you pass in only 1 point, intitialize should be run with (passed_point, Point(0,0))
22:55:08WatusimotoI think
22:55:33Watusimotook, put a TODO comment there and I;ll fix it up
22:56:17WatusimotoTODO: Fix this one too -- intiailze needs to be refactored because who knows how many points the teleporter is getting? could be 1, could be 2, could be many
22:57:07Watusimotoargh, this is going to be a pain
23:06:55BFLogBot Commit: a5cb6823b7ac | Author: watusimoto | Message: Clean out some console cruft
23:06:57BFLogBot Commit: a8a4d5213b1e | Author: watusimoto | Message: Comments/formatting
23:06:58BFLogBot Commit: 4d99733f8a8a | Author: watusimoto | Message: Unused include
23:07:00BFLogBot Commit: c1bee76bc54a | Author: watusimoto | Message: Event manager now indexes subscriptions by subscriber, not subscriber's id
23:07:01BFLogBot Commit: cb3e1b69f4f2 | Author: watusimoto | Message: Whitespace
23:07:03BFLogBot Commit: 57724a293e4e | Author: watusimoto | Message: Waaaaay less code to fire events now; also, all event handlers now get good stack trace code and centralized error handling. Works but not yet thoroughly tested.
23:07:04BFLogBot Commit: be9d4679b406 | Author: watusimoto | Message: Add special warning for people who try to code logically, and specify 0 for the index of the first team. Thanks Lua!!
23:07:06BFLogBot Commit: b87e9990658d | Author: watusimoto | Message: Wrap things in a try/catch so arg testing won't crash the entire game. Also lets us write runCmd() a little cleaner
23:07:07BFLogBot Commit: bec4d30f2d3d | Author: watusimoto | Message: Merge
23:09:58amgine1234567890 has joined
23:10:06amgine1234567890im back
23:10:17amgine1234567890was the score overflow problem ever fixed
23:13:33Watusimotowhat was the problem?
23:16:04BFLogBot Commit: 37ee2f8ea91c | Author: watusimoto | Message: Change order of functions, whitespace
23:16:06BFLogBot Commit: d846e3c285a0 | Author: watusimoto | Message: Comments
23:17:11amgine1234567890if oyu put to many flags in the nexus the score overflows to negitive maybe you oculd make it so the max score possible from returning flags inyo the nexus is the max possible score setting
23:17:59amgine1234567890on a realted note could you make it so whne the score or time is set to endless it displays infinity
23:18:05amgine1234567890just some ideas
23:24:17martin_bedeWatusimoto: only 2 classes need debugging now. :) however, somehow i managed to create a very mysterious problem:
23:24:32Watusimoto awesome!
23:25:17martin_bedethe testing from levelgen is commented out, and i even commented out the Lua constructor of teleporter, and i still get a segmentation fault when i visit the maze level
23:26:35Watusimotostack trace?
23:26:37martin_bedehttp://pastebin.com/WdeCePmz
23:26:44Watusimoto:-)
23:27:21Watusimotoodd
23:27:26WatusimotoI can run that level just fune
23:27:27Watusimotofine
23:28:45amgine1234567890score overflow problem?
23:29:24Watusimotook, seems to be crashing in DestManager::addDest(), which is a short function; can you add some logprintf statemetns in there and try to figure out where it is crashing?
23:29:38Watusimotoamgine1234567890: I don;t know about this problem; can you describe it to me?
23:36:23amgine1234567890raptor me and wattisimo are discussing hte score overflow problem
23:38:15martin_bedeWatusimoto: mOwner->setVert(dest, 1); this is where it dies
23:48:37Watusimotook; can you check if mOwner is NULL?
23:48:47WatusimotoI'll bet it is
23:50:43YoshiSmb Quit (Ping timeout: 265 seconds)
23:54:43Quartz has joined
23:55:16kaenQuartz, I believe you add W=WeaponName to the level line
23:55:21kaenlike W=Seeker
23:56:24kaenwait...
23:58:27BFLogBot Commit: 458877126856 | Author: watusimoto | Message: Whitespace
23:58:28BFLogBot Commit: b40839920b67 | Author: watusimoto | Message: Add assert
23:58:30BFLogBot Commit: bc2262c80ea3 | Author: watusimoto | Message: Axe retrieveCriticalFunction function
23:58:34Quartzuhh
23:58:45martin_bedeWatusimoto: it's not NULL
23:59:10WatusimotoI just checked in code with an assert to test that, but yes, I beleive you are correct

Index Search ←Prev date Next date→

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