#bitfighter IRC Log

Index Search ←Prev date Next date→

IRC Log for 2013-02-22

Timestamps are in GMT/BST.

00:03:55Watusimotohello
00:04:03Watusimotoreally?
00:04:18kaenindeed
00:04:27Watusimotoone place, or all over?
00:04:38kaenonly in files within zap
00:04:43kaenthere's maybe six errors
00:04:45Watusimotoweird!
00:04:46kaenI'll post a log, hold on
00:04:50kaenyeah
00:04:58kaenI even tried using g++ instead of gcc as the CC
00:05:08kaenwhich errors when compiling one of the c files
00:05:14kaenso then I tried using g++ only for linking
00:05:16WatusimotoVector.h should pull in std::vector
00:05:20kaenand still get the undefined reference
00:05:22kaenit's when linking
00:05:26kaennot compiling
00:05:56Watusimotoso when you compile with gcc, you get compile errors or link errors?
00:06:21kaenlink errors
00:07:51Watusimotocould it be that your vps is somehow missing stl libs?
00:08:01kaenthat would be so crazy ridiculous
00:08:07Watusimotowould it?
00:08:14kaenI'll objdump the libstdc++ so
00:08:32Watusimotomaybe it's part of one of the standard things people install like glibc
00:08:54Watusimotoanyway, you could write a short 1 line c++ prog that does something with a vector and see if it compiles
00:09:05WatusimotoI think this is an environment issue
00:09:09kaendefinitely
00:10:59kaenhttp://pastie.org/6313151
00:12:25Watusimotocrazy
00:12:33Watusimototry a short little prog and see what happens
00:12:40bobdaduckWhere'd raptor go?
00:17:37kaenbuilds fine
00:17:51kaenusing g++ only, though
00:18:11kaenoh wait, gcc with -lstdc++ works fine too
00:18:41kaenokay, so my environment is theoretically able to to overcome this.
00:18:51kaenbut why is it being so stupid?
00:20:43Watusimotonow this is the big question
00:21:42kaenI'm cloning from mercurial and seeing if it can build 018a with cmake
00:21:59kaenmaybe I can retro fit it onto 018 for a one-off build.
00:22:07SolumnMushroom Quit (Read error: Connection reset by peer)
00:28:11kaenI feel so stupid for paying amazon $30 a month for the last two years when I can get a 2GB vps with 1.5TB of bandwidth for $30 a *year*
00:28:36kaenmore bandwidth, more ram, more cpu, less amazon bullshit, 1/12th the price
00:28:42kaenI'm so dumb some times.
00:29:06kaenand cmake happily builds 018a
00:29:18kaenso maybe I don't even care about building 018.
00:29:46bobdaduckhttp://www.youtube.com/watch?v=KwbFWq2YLb4
00:29:51bobdaduckirrelevant
00:33:10Watusimotocheap vpses are now really... cheap
00:33:14Watusimotoit
00:33:19Watusimotoit's pretty amazing
00:34:16Platskies has joined
00:46:54kaenhow do I allow map uploads?
00:47:03kaenI can't find the option :/
00:48:23bobdaduckIts always on
00:48:27bobdaduckfor people who have levelchange.
00:51:32bobdaduckFirst repeat customer!
00:51:42bobdaduckIngloriousalpha was online last night as well.
00:53:45Platskieswatusimoto: was raptor on recently?
00:53:56Watusimotoyes, and he'll be back in a bit
00:56:57Watusimotook gentlemen... since it's 2AM here, I'll wish you all a good night
00:57:22bobdaduckNOOOOOOO
00:57:23bobdaduckOkay
00:58:24bobdaduckNight
01:00:38PlatskiesOK, bye!
01:02:23Watusimoto Quit (Ping timeout: 260 seconds)
01:08:17kaenbobdaduck, check out my server when you get a chance.
01:08:36kaenlvlchange and kaenadmin are the passwords, please put some good maps on it if you feel like.
01:09:42bobdaduckuh.
01:10:01bobdaduckI'm at work currently and I'm not sure... Well sec.
01:13:23bobdaduckOkay kaen
01:13:29bobdaduckuploaded four or five of my best
01:38:55kaenthanks!
01:39:27raptor has joined
01:39:27ChanServ sets mode +o raptor
01:39:38bobdaduckRAPTOH
01:41:17raptory6o
01:41:19raptoryo
01:41:23raptori'm back
01:41:36raptorafter getting 9 cans of chicken soup
01:43:22raptorok did i miss anything?
01:43:22bobdaducknice
01:47:59Platskiesraptor: did you get the question I asked watusimoto?
01:48:13raptoruh, sort of (can you ask again?) :)
01:50:12raptorsomething about frameworks and paths
01:53:09bobdaduckRaptor: http://www.bitfighter.org/forums/viewtopic.php?f=6&t=1815&p=18455#p18455
01:54:05raptorah ok
01:54:12raptorthen that's a legitimate problem..
01:54:30raptor(i thought it was the phantom forcefield bug)
01:56:16bobdaduckI've told you guys about it
01:56:18bobdaducklike four times now
01:56:39raptorwell you know... a strainer can only hold so much water...
01:57:13bobdaducklol
01:57:30Platskiesraptor: Basically each library's headers are in folders one down from the root directory (e.g. <bf root>/lib/libmodplug.framework's headers are also found in <bf root>/libmodplug)
01:57:49PlatskiesI didn't notice that for Sparkle though
01:58:40PlatskiesRight now, when the Bitfighter target searches Sparkle's headers, it looks in "../../../lib/Sparkle.framework/Headers"
01:58:56raptorok
01:58:58raptorthat's right
01:59:01raptorbasically
01:59:02PlatskiesIs there some sort of convention you guys have regarding that?
01:59:06raptorwell yes
01:59:31Platskiesideally something like "../../../sparkle" would make sense based on what's already there
01:59:34raptorsince we are a cross-platform game we like to keep all the headers in one-down-from-root
01:59:37raptorbut
01:59:56Platskiesframeworks have their own headers
01:59:58raptorfor platform-specific stuff (like Sparkle) i've just left it with the framework
02:00:00raptoryes
02:00:19raptorplatform specific stuff i've not really kept a convention
02:00:26raptorit comes from anywhere
02:00:35PlatskiesHmm, okay, btw -
02:00:44raptorwindows uses some specific stuff, too, that is spread around the build/ directory
02:00:56Platskiesmaybe all of the headers' folders should go in an include/ dir?
02:01:03raptoractually
02:01:08raptorthat's a *very* good idea
02:01:12Platskiesthat's usually what people do
02:01:17Platskies(afaik)
02:01:21raptorit is, yes
02:01:41PlatskiesI was a bit confused seeing the existing layout at first, imo
02:01:51raptori've actually been wanting to do that, but i've held off because of how version control works..
02:02:00kaenquestion: what options am I looking for to allow normal users to upload maps?
02:02:16raptorkaen: look in the INI for something like 'data connections'
02:02:21kaengot that one
02:02:38raptorare you looking for something specific?
02:02:56kaennope, that's it.
02:02:59raptorAllowMapUpload
02:03:07raptorAllowAdminMapUpload
02:03:08kaenI was told it only let admins do it
02:03:15kaenah
02:03:20kaeninteresting.
02:03:34kaenwell, lamp is clearly not a reliable source for server configuration questions.
02:03:36bobdaduckI was guessing sorry
02:03:39raptorhaha
02:03:41bobdaduckrofl
02:03:54raptori've actually not worked with the data connection code much
02:04:03kaenI'm not playing with code
02:04:07kaenI'm trying to set up my new server
02:04:08bobdaduckIf it was not mean I would put that in my thread.
02:04:17bobdaduckI gave you some maps!
02:04:25kaenthanks :)
02:04:28bobdaduckThree of them are missing levelcredits because they were for contests but whatever xD
02:05:18raptoradd credits
02:05:53kaenmaybe there should be server modes.
02:06:00kaenlike contest mode to strip credits from levels
02:06:08kaenand match mode to lock a server for clan match stuff
02:06:16kaenand BBB mode for whatever that was all about.
02:06:26kaenetc.
02:06:37kaenwait
02:06:49kaenthose would be better as just standalone options I think.
02:07:26kaenI'm thinking to myself via irc. sorry.
02:10:08bobdaduckI think in the hostgame menu
02:10:14bobdaduckWe should just add a bunch of options like that.
02:10:21bobdaduckVoicechatenabled should be there
02:10:44bobdaduckserver type contest | tournament | match | regular
02:10:58bobdaduckDedicated
02:11:09bobdaducketc
02:11:40kaencounter argument: anyone who would do those things knows enough to use the command line/ini file for it
02:12:09kaennot that I disagree, but that's what I would say if I did.
02:13:06bobdaduckI'm not sure that's reason to not make things easier for the end user
02:13:21bobdaduckI mean, just because someone *can* get around something, does that mean we don't need to fix it?
02:13:34kaencan you definitely say it's broken though?
02:13:50kaenthere is a defined manner in which to do the things you described (once they are implemented)
02:14:08kaenand "end user" is a misnomer here
02:14:10bobdaduckIts not broken, its just difficult
02:14:35bobdaduckWhere it could be a lot easier.
02:14:48kaenthe people hosting contest/match/tournament servers aren't really troubled by such things.
02:15:32bobdaduckContest/match/tournament modes don't even exist yet
02:15:38kaensure
02:15:45kaens/aren't/wouldn't
02:15:53bobdaduckIf we're going to implement that then it makes sense to make that easier by putting it in the host game menu
02:15:57raptori have grandiose plans of implementing a web admin interface to a dedicated server (like Unreal Tournament)
02:16:10bobdaduckYeah!
02:16:15kaenhaha raptor I'll just step out the way then.
02:16:17bobdaduckHave it done by the time I get back.
02:16:48raptorit may take a few years...
02:17:10raptorand pixie dust and unicorn horn powder
02:17:14bobdaduckYou have 2.
02:17:21bobdaduckGood luck.
02:17:23raptorha
02:18:02raptorkaen: do you know much about reflection in c/c++?
02:18:12kaenI don't even know what that means...
02:18:26kaenoh
02:18:27raptorit's like in-code access to class metadata
02:18:31kaenintrospection?
02:18:34kaenokay yes.
02:18:39raptorso get a class, grab it's methods
02:18:45raptorautomatically
02:19:10raptorit's easy-ish to implement in java, but i don't know about c/c++
02:19:26kaenI've never seen a workable scheme
02:19:58raptorok, that's what i thought
02:20:02kaenI once saw some crazy looking code where everything was a template instantiation, but I don't see it as worth the effort.
02:20:30raptorbecause even RTTI is slow in c++
02:21:01raptormy guess is that newer languages usually have it implemented compared to c++
02:21:04kaen googles
02:21:23kaenheh. Never saw typeid() before
02:22:08kaenaww. it looked like it had lots of promise :<
02:23:20kaenwhat problem are you trying to solve?
02:24:38raptordynamically create a list of all config options on the fly
02:24:45kaenoooh cool
02:25:11kaeneasy as pie in an interpreted language :/
02:25:12raptori'm not sure that's going to happen with c++...
02:25:31kaenxmacros \o/
02:25:38raptor refuses to join the dark side
02:25:42kaenheh
02:26:04kaenso you're poking around with RTTI instead? ^^
02:27:07bobdaduckNEW MAP UNVEILING PARTY IN 20 MINUTES GUYS
02:27:13bobdaduckBe there be square
02:27:15bobdaduck Quit (Quit: Page closed)
02:27:18kaendo it on my server bob
02:27:20kaendamn.
02:27:56raptor20 min, huh?
02:28:20raptorI was poking around in RTTI because it's the closest thing...
02:28:31kaenyeah.
02:29:01raptori recently ran a google sponsored c++ LINT program against our code
02:29:10raptorand found that RTTI "is not supported by Google"
02:29:24kaenhaha wow
02:30:19kaenwait, does bitfighter use RTTI already?
02:30:33raptordynamic_cast is considered part of RTTI
02:30:40kaenoooooh
02:30:41raptorso that's where i got all the warnings
02:30:43kaenokay.
02:32:17kaenI wonder what they do instead
02:32:31kaenjust tons of virtual methods?
02:32:49raptori think, yes
02:32:54raptorand a class id system
02:32:59raptorof sorts
02:33:14kaeneven that has some dark magic run-time machinery though
02:33:17kaenvirtual functions I mean
02:33:17raptorkind of like how we give each BfObject an objectTypeNumber
02:33:29kaenRTTI seems like an arbitrary place to draw the line
02:33:55raptorjava does it all at compile time
02:34:02kaenin that situation the best they could do is effectively reimplement dynamic_cast
02:34:08kaendumb.
02:34:16kaenthat java part is cool though
02:34:22raptoreach class has an ID and some sort of lookup table with methods/classes that let's you access everything
02:34:42raptorso you can do class checks like if(Class1 instanceof Class2)
02:35:01raptorat compile time
02:37:40raptorknowing google they probably *do* reimplement dynamic_cast
02:37:46kaenI'm not a big fan of google's views about c++
02:37:57raptori don't know much about them
02:38:01kaenjust reading their style guide made me decide to ignore most of what they have to say
02:38:07raptorhaha really?
02:38:10kaenyeah.
02:38:21kaenhuge swathes of c++ stuff are categorically forbidden
02:38:34kaenplus a thousand oddities regarding formatting, naming, etc.
02:38:48kaenalso they insist your code look boost code.
02:39:02raptoroh yuk
02:39:05kaen(indirectly)
02:39:21kaenrequire underscores in function names
02:39:23kaenetc.
02:42:02kaenthere are nuggets of wisdom in there, though
02:42:12kaene.g. name functions with verbs and variables with nouns
02:43:13kaenbut that's not even c++ specific...
02:50:01bobdaduck has joined
03:08:40raptorsorry i found an exploit
03:09:12Nothing_Much:o
03:13:06raptorNothing_Much: loads of people playing now..
03:14:43Nothing_Muchis that a good thing? o.o, I also saw the main page on desura, it's got over 2000 hits
03:18:12Nothing_Muchwell
03:18:17Nothing_Muchthe game's page got over 2000 hits
03:18:20Nothing_Muchover 400 today
03:18:47raptorhooray!
03:19:29Nothing_Muchit's a good thing?
03:19:34Nothing_Muchoh
03:19:40Nothing_Muchblargh my head
03:19:46Nothing_Muchof course it's a good thing
03:20:07koda has joined
03:48:16raptorreal map time kaen
04:09:26raptor Quit (Ping timeout: 255 seconds)
04:10:07raptor has joined
04:10:07ChanServ sets mode +o raptor
04:53:30bobdaduckkaen
04:53:33kaenyep
04:53:55kaendude I love bash completion and ssh keybased auth
04:54:08kaenI type 'ssh p<tab><enter>'
04:54:12kaenand I'm logged into the vps
04:54:31bobdaduckkaen you will need this levelgen
04:54:32bobdaduckhttp://pastie.org/6314483#2-3
04:54:38bobdaduckname it "spawners.levelgen
04:54:40bobdaduck"
04:55:29kaendone
04:55:38bobdaduckhttp://pastie.org/6314492
04:55:39bobdaducklevel
04:55:44bobdaduckOh
04:55:46kaenderp
04:55:47bobdaduckSpawners.levelgen
04:55:48bobdaduckcapital
04:55:50kaenokay
04:55:54bobdaduckI can't upload or send files
04:56:00bobdaduckbecause .zip format destroys line endings
04:56:03bobdaduckwhich breaks levelgens
04:56:24kaenstrange
04:56:26kaenanyway
04:56:49kaenI'll have to restart the server if you don't upload the level I think
04:57:02kaenfilename?
04:57:31bobdaduckhold on
04:58:03kaenrestarted.
04:58:12bobdaduckThere's one more map
04:58:16bobdaduckIts too big for pastie
04:58:49bobdaduckSending via forum PM
04:59:01raptorbob, if you use 7z
04:59:04raptorthat'll work
04:59:15bobdaduckSent
04:59:27bobdaduckIt uses the same script so
05:27:58raptorsorry have homework :(
05:31:10kodaws has joined
05:42:35Nothing_Much Quit (Ping timeout: 272 seconds)
05:43:53raptorkaen: did that levelgen script crash on your server the first time? and was it the latest revision?? (You can answer later when you're done playing)
05:44:04kaenraptor just pastied it in fact
05:44:06kaenhttp://pastie.org/6314629
05:44:14kaenliterally submitted as you sent that.
05:44:23kaenand yes, it's latest.
05:44:32raptoroh crud
05:44:36kaenyeah.
05:45:23raptorso once again we just find a solution that reduces likelihood..
05:45:31raptorbut not eliminates it
05:45:38raptornow i'm going to weep
05:45:47kaenyes.
05:45:55kaenpity I found this right as I was going to sleep
05:46:05kaenwas otherwise a great day.
05:46:08raptorrestless sleep ahead...
05:46:11raptoryeah fun games!
05:46:16kaenindeed :)
05:46:24PlatskiesIf only my ping
05:46:33kaenplatskies, cough up the $5 a month
05:46:39raptori'm glad you joined us!
05:46:48kaenget a VPS in your area
05:46:55kaenI'll play there with you :)
05:47:16kaenanyway, good night all
05:47:21raptornight!
05:48:05koda Quit (Quit: koda)
05:57:23Platskies Quit (Remote host closed the connection)
06:01:44Platskies has joined
06:02:08Platskieskaen: Haha
06:05:35PlatskiesOh kaen, I'm pretty sure LittleMonkey's hosted where I am
06:54:38raptor Quit ()
07:02:40bobdaduck Quit (Quit: Page closed)
08:22:00Disconnected.
08:22:01-adams.freenode.net- *** Looking up your hostname...
08:22:01-adams.freenode.net- *** Checking Ident
08:22:01-adams.freenode.net- *** No Ident response
08:22:01-adams.freenode.net- *** Couldn't look up your hostname
08:22:08BFLogBot has joined
20:08:22-hitchcock.freenode.net- *** Looking up your hostname...
20:08:22-hitchcock.freenode.net- *** Checking Ident
20:08:22-hitchcock.freenode.net- *** No Ident response
20:08:22-hitchcock.freenode.net- *** Couldn't look up your hostname
20:08:28BFLogBot has joined
20:08:28Topic is 'Bitfighter 018 released! | http://www.bitfighter.org/downloads | Join us in the forums! at http://bitfighter.org/forums/'
20:08:28Set by raptor!~raptor@unaffiliated/greenmachine on Fri Jan 18 20:33:17 GMT 2013
20:08:29-ChanServ- [#bitfighter] Welcome to #bitfighter. This is an IRC channel, many or all of the users may not be paying attention. Please have patience when waiting for a response.
20:08:44bobdaduckHE'S BACK
20:08:45bobdaduck!bot
20:08:45BFLogBotI'm a real boy!
20:08:51raptorfinally
20:08:56raptorhad to crash the website to do it..
20:11:02kaenwhat's the 25 flags badge regarding?
20:11:13kaenctf?
20:11:13raptorreturn 25 flags to the nexus at once
20:11:16kaenoh ok
20:11:18raptorbut
20:11:32raptorconstraints: official game, no level flag spawns
20:22:36raptorand hello kaen :)
20:22:45kaenhello :)
20:24:13bobdaduckHi!
20:26:54LordDVG Quit (Remote host closed the connection)
20:27:36raptorbobdaduck: check the front page
20:27:52raptorno guarantees that it stays!
20:28:26Little_Apple has joined
20:28:39Little_Applehello
20:28:44raptorhi
20:29:46Little_Appleraptor: does this look like a bouncer to you? http://i.imgur.com/ywVIPy1.gif
20:30:18raptoryeah, that's pretty close
20:30:28Little_Applehooray!
20:31:17raptorthe inner yellow star might need to rotate about twice as fast..
20:31:30raptorbut that's really good!
20:31:33bobdaduckAwesome raptor, thanks
20:32:08kaenscp'ing to bitfighter.org is so slow I sometimes worry it will fail
20:32:20kaenbut it hasn't yet, except when logbot was out
20:32:50kaencool!
20:32:54kaenI broke the stats...
20:33:20raptorhooray!
20:33:42kaenworks fine on my dev machine :/
20:33:53kaenlet's see if I have read perms to the apache log...
20:34:17kaennope.
20:34:36raptor accidently just kaen sudo rights
20:34:41raptor can't grammar
20:34:45raptor*gave
20:34:51bobdaducklol
20:35:33raptorkaen: you'll have to re-log in
20:35:46raptori think to have the sudo stuff stick
20:35:48raptormaybe
20:35:50raptornot sure
20:36:37kaennope
20:37:05kaenoh. bug in my deploy script
20:37:10kaenforgot to copy the lib file
20:38:52Little_Appleheres a faster yellow speed... http://i.imgur.com/eenOKO3.gif
20:39:34raptoryeah, that's even better!
20:39:42raptorclose enough to not know the difference, i think
20:40:01Little_Appleawesome
20:40:16bobdaduckThat's prefect LA
20:40:58Little_Apple feels flattered
20:41:42raptorLittle_Apple: you're like Bitfighter's art-guy on call...
20:41:50Little_Applelol
20:41:51bobdaducklol
20:41:54bobdaduckFor gifs, yeah
20:42:17bobdaduckI do the best paper drawings though
20:43:11Little_Appleindeed
20:43:28bobdaduckThe best paper drawings with faces on them.
20:43:35bobdaduckSo raptor
20:43:36bobdaduckI was thinking
20:43:54bobdaduckWe should try to use bitfighter
20:43:58bobdaduckTo replace facebook.
20:44:11bobdaduckAnd turn bitfighter into the worlds first social networking game.
20:44:29raptorvetoed!
20:44:35kaenbobdaduck
20:44:35kaenhttp://bitfighter.org/stats/player.php?player=bobdaduck
20:44:51bobdaduckVetoed!
20:44:52bobdaduckwhy!
20:44:56raptor!!
20:45:01raptorthere's badges there!
20:45:04Little_AppleKills: 1327 Deaths: 1701
20:45:04bobdaduckBitfighter is loads better than facebook!
20:45:28kaen"worlds first social networking game"
20:45:35kaenyou should google social networking game.
20:45:48bobdaducklol
20:46:08bobdaduckOkay, its coming up with "farmville"
20:46:13bobdaduckThat ain't fly.
20:46:31kaenbobdaduck did you see the badges?
20:46:37kaenI DEMAND YOUR PRAISE
20:46:41bobdaduckHow about we just buy out facebook and replace the entire website with a link to bitfighter.org?
20:46:41raptorkaen: that's... GREAT!@
20:46:46kaenthanks
20:46:47bobdaduckYES GOOD JOB KAEN
20:46:58kaenit was non-trivial to get images of them all
20:47:16Little_Appleyay for stats!
20:47:37kaenone step closer to not sucking.
20:48:06kaenshould probably fix the landing page while I'm at it.
20:48:15bobdaduckprobably
20:48:25bobdaduckAnd we need a link to the stats from the website somewhere
20:48:39kaenI don't think we need to do that yet
20:49:05raptorstats are for people who can find them!
20:49:19kaenthey're on the forums
20:49:29kaenpeople apparently find things on there.
20:49:37kaenplus I update it when I make big changes.
20:49:37raptoryes, but we know how well people find thin.... uh sure
20:49:48kaenlmao raptor
20:50:20kaennow that I think about it...
21:00:15kaen!bot
21:00:15BFLogBotI'm a real boy!
21:00:20Watusimoto has joined
21:00:33kaenthen serve me a web page, urchin!
21:00:58kaenoh god the website is down.
21:01:02bobdaducklol
21:01:04kaenI didn't do anything, I promise.
21:01:10kaenoh
21:01:10raptorit's back!
21:01:11kaenback up
21:01:15bobdaducklol
21:01:21kaen wipes the sweat from his brow
21:01:29Watusimotohi
21:01:38kaenhi
21:01:40raptorhi Watusimoto
21:03:03bobdaduckhi
21:03:03raptorWatusimoto: we have bad news
21:03:11raptorkaen has really, really bad news...
21:03:27kaen:<
21:03:40raptorhttp://pastie.org/6314629
21:03:42raptor^^ bad news
21:03:52kaenthat's from the server I compiled from latest
21:04:20kaenalso, that worm bug is crashing my servers when levels get loaded which include them...
21:04:30kaenI set it to run to in a while true loop for now though.
21:04:31raptorkill the Worm!
21:04:34raptorhaha
21:04:43raptorwhy do levels have the Worm??
21:04:49kaenpretty ingenious hack for a 3 minute job before work this morning
21:04:49raptorthat doesn't exist yet
21:04:56raptorha
21:05:12kaenmostly levels named zzzz97.level and similar
21:05:19kaenwhatever that means.
21:05:27Watusimotothat might not be the same problem
21:05:29raptorahhh... the zzzzz levles were sam's test levels
21:05:44raptorespecially from trying to release 016
21:05:55Watusimotoin fact, I think that is a run-of-the-mill lua error
21:05:58kaenbobdaduck gave me the levelgen for it, let me find it
21:06:27Watusimotoraptor: I assume that you assume that is our killer lua error
21:06:29Little_Appleoh dear..
21:06:36kaenhttp://pastie.org/6314483#2-3
21:06:42kaenthat is the general assumption
21:06:59bobdaduckThat levelgen works, doesn'tit?
21:07:02WatusimotoI see no sign that it is
21:07:09kaenignore the highlighted lines.
21:07:20kaenmostly
21:07:28kaenexcept that it crashed randomly a few times
21:07:33kaenremember?
21:07:45raptoryep, random again
21:07:46bobdaduckAh yes, I remember that
21:07:52bobdaduckIt only crashed randomly once I thought
21:08:02kaenI found a second error as I went to bed
21:08:06Watusimotokaen: what happens at line 18 if there is no object with id=5?
21:08:10kaenidentical to the first
21:08:18Watusimoto(i.e. what do you expect?)
21:08:40Watusimotospecifically, what would you expect to happen at line 19?
21:08:57bobdaduckFrom experience: Nothing. It might return an error (I don't usually check console) but the script continues to run.
21:09:23kaenwhat is object id=5?
21:09:30kaenerr
21:09:33Watusimotowhat he should expect is an error that looks like this: attempt to index global 'object' (a nil value)
21:09:34kaenwhat type of object is it
21:09:40kaenexcuse my mushbrain
21:09:49bobdaduckIn the level its a testitem
21:10:05WatusimotoI predict there is in fact no object with id = 5
21:10:17bobdaduck(remember, that blocks off invaders until 13 minutes in)
21:10:19kaenah well I remember now
21:10:28kaenif that method is called twice the script will crash.
21:10:31Watusimotoor something else is happening that prevents it from being found
21:10:46Watusimotoso the find returns nil
21:10:59bobdaduckIf that's the case
21:11:04Watusimotoand nil has no removeFromgame method
21:11:05bobdaduckthen the script should crash every time
21:11:19bobdaduckBecause invaders spawn on the zone that calls it
21:11:27bobdaduckWhich would trigger the script.
21:11:47kaenhmm. indeed.
21:11:55Watusimotowell, I can tell you it's not our errorus horriblus
21:11:57bobdaduckooooh
21:11:59bobdaduckOkay
21:12:01bobdaduckI know what the problem is
21:12:02raptorWatusimoto: you sure?
21:12:21bobdaduckSomeone in the invaders died before the testitem disappeared
21:12:26bobdaduckrespawned and retriggered the script
21:12:46bobdaduckAnd since the testitem was still there you have two pending Delete testitems
21:12:52Watusimotonot positive, but I am confident that there are other ways that error could be generated (like the scenario I outlined), and it bears none of the signs of our bad error... so I'd bet a couple of beers on it
21:12:55bobdaduckLinked to one testitem
21:13:04kaenwell, look at that.
21:13:06Watusimotoand I'm not one to gamble with beer frivously
21:13:14Watusimotofrivolously
21:13:21Watusimoto(is that right?)
21:13:27kaenokay, you persuaded me.
21:13:40bobdaduckIf the testitem disappears then the script will abort the method
21:13:52Watusimotothe easy fix is do a nil check there
21:13:57bobdaduckwhen the invaders spawn
21:13:58kaenyep
21:14:12Watusimotoor earlier on and just abort the script if the key item is not in game for some reason
21:14:12bobdaduckDoes people understand what I'm outlining?
21:14:22kaenwee user error \o/
21:14:45raptorUSER ERROR! WOOOT!@
21:15:00Watusimotoyou should add this to main:
21:15:01bobdaducklol
21:15:12raptorI love bugs that are not my fault
21:15:26bobdaducklol
21:15:26Watusimotoassert(levelgen:findObjectById(5), "this script requires an object with id = 5")
21:16:00bobdaduckUh?
21:16:15bobdaduckI dunno what assert does but I'm not sure that's right
21:16:41bobdaduckThe problem is people triggering the delete script twice before it deletes the object
21:18:53bobdaduckSo what I'm thinking is move the findobjectbyID into the onship entered zone part
21:19:13bobdaduckSo the script only triggers if the object exists
21:19:52kaenif object === nil
21:19:55kaen return
21:19:57kaenend
21:20:04kaenor something like that.
21:20:33kaenput that after the findObject line
21:24:01Watusimotojust ==
21:24:07Watusimoto=== is only javascript
21:24:16bobdaduck====
21:24:22Watusimotoand it's only needed there because javascript is so horribly broken
21:24:27raptor=== is php!
21:24:28Watusimotomaybe it's in php too
21:24:32Watusimotofor the same reason
21:24:32raptortype safety!
21:24:39bobdaduck=====
21:24:49Watusimoto2 != "2"
21:25:07bobdaduck2 ============================= 2
21:25:20WatusimotoI've been watching the series of videos "Crockford on Javascript"
21:25:41Watusimotocrockford is a guy at yahoo who knows just about everything about js
21:25:50Watusimotohe's convinced js is awesome
21:26:01bobdaducklol
21:26:07Watusimotohe's really good at explaining some nice things about the language
21:26:10raptori couldn't tell if his writings were being snarky...
21:26:13raptoror cheeky
21:26:20raptoror he was geniunely serious
21:26:25Watusimotobut I just keep thinking 'noooo.... it just sucks!"
21:26:29Watusimotohe's serious
21:26:35Watusimotohe understands where it fails
21:26:44Watusimotobut he says just don't use the sucky bits
21:26:57bobdaduckLike engineer
21:27:42Watusimotobut I've been thinking about how I would make a scripting language that I actually liked
21:28:16Watusimotoi have some good ideas, but luckily I'm smart enough not to bother doing it
21:28:28raptorhaha
21:28:30Watusimotobecause the world needs another scripting language, right?
21:28:34raptorGoogle Go!
21:28:40raptorwait, is that scripting?
21:28:48Watusimotomine would be typed
21:28:59raptorpython knows your mind
21:29:14bobdaduckI'ma make one based off of colors
21:29:20bobdaduckAnd you have to paint the script
21:29:20Watusimotobeen done
21:29:32bobdaduckAnd if you don't use the right shade of red you die
21:29:36bobdaduckWait what?
21:30:02Watusimotohttp://www.dangermouse.net/esoteric/piet.html
21:30:16raptoroh lovely
21:30:44bobdaduckRofl
21:30:45Watusimotomeet the new bf scripting language
21:31:21bobdaduckheck yes
21:31:34raptori thought we were going to gamemonkey first?
21:31:34Watusimotosample programs here:
21:31:35Watusimotohttp://www.dangermouse.net/esoteric/piet/samples.html
21:31:36bobdaduckI bet Piet doesn't crash when it tries to cache!
21:32:09bobdaduckThis bot is very red.
21:32:25bobdaduckCrap, forgot some green. My levelgen crashed.
21:34:59bobdaduck...I'm in love.
21:38:20kaengo is optionally typed
21:39:52kaenalso, === is in most dynamically typed languages
21:40:00kaenlua not having it means that lua is broken...
21:40:15raptorLua has a special place amongst languages
21:40:18kaenunless lua doesn't cast nil to 0 and stuff like that.
21:40:19raptorhave 1-indices
21:40:46kaenI'm not familiar enough with it to judge I suppose.
21:41:01kaenalso, please don't think I'm defending javascript by any means.
21:43:00bobdaduckGuys, piet.
21:43:12raptormy virgin ears!
21:43:17bobdaduckI want to learn this language even though it will never be used anywhere just because its awesome.
21:46:40raptorbobdaduck: start here: http://www.roesler-ac.de/wolfram/hello.htm
21:47:09raptorPiet is even in there..
21:48:51bobdaducklol
21:48:52bobdaduckyeah
21:49:02bobdaduckthat example is among those wat linked to though
21:50:24bobdaduckHah
21:50:29bobdaduckThis reminds me of C
21:50:46bobdaduck...I don't know C.
21:51:14raptorI just found out why c# chose the '#', so it could be first alphabetically!
21:51:28raptor(not really sure that's the reason..)
21:52:41bobdaduckOkay someone teach me C real quick
21:53:20raptoryou're best learning source: http://www.ioccc.org/
21:53:43raptorok, replace 'best' with 'worst' and that's about right...
21:55:20raptorwe need to find a way to cap mysql on bf.org at 100MB of RAM or so...
21:55:47bobdaduckWhat is it?
21:55:56raptorthe database
21:56:26bobdaducksorry nevermind
22:01:47raptorSDL2 is now non-GPL! yay
22:02:00raptorGPL 2 -> BSD!
22:02:17raptorerr
22:02:25raptorGPL2 -> zlib!
22:04:21raptorand it might release soon! (again... and again... again again)
22:05:52kaenraptor, query_cache_limit?
22:06:07kaenI don't think there's a monolithic one, but that's a good place to start
22:08:54raptorhmmm... brb
22:09:53Darrel Quit (Quit: Closed IRC client)
22:12:01Darrel has joined
22:12:42Darrel Quit (Client Quit)
22:12:59raptor Quit (Read error: Operation timed out)
22:17:21Little_Apple Quit (Ping timeout: 245 seconds)
22:43:27Little_Apple has joined
22:54:39bobdaduck Quit (Quit: Page closed)
23:08:46Watusimotohey kaen: do you know the url of the graphs of our stats?
23:09:04kaenbitfighter.org/stats/gamereports.php
23:09:13Watusimotothanks!
23:09:14kaennice
23:09:20kaenit's throwing a 500 error
23:09:23kaenone moment.
23:10:13Watusimotoyes, I see...
23:11:41kaenhmm I made an oversight when I refactored some functions into a library
23:13:58kaenand I gave you the wrong url
23:13:59kaenhttp://www.bitfighter.org/stats/graphs/index.php
23:14:04kaenit's working now
23:14:05kaenafaik
23:14:40kaenhmm. that's a pretty interesting read :)
23:15:31Watusimotowhoa!
23:15:34Watusimotothank you desura!
23:15:53kaenI'm pretty amazed at how dramatic it's been
23:16:14kaenthere have been people on pretty much straight through since yesterday mid-day
23:16:52Watusimotomy usage goal has been to have enough players that there is always a game being played
23:17:21kaenwe are well on our way
23:17:23WatusimotoI think my notifier widget is broken, as I don;t see these people coming/going
23:17:24kaenif not there already.
23:17:31kaenhmm
23:17:35Watusimotoyes, but will it last
23:18:39kaennot that I quote Nietzsche often
23:18:43kaenbut, "long obedience in the same direction"
23:19:19Watusimotoindeed
23:19:53Watusimotodirection is good... now all we need is long
23:19:58Watusimotothere we go.
23:20:02Watusimoto1.dummy joined
23:20:48kaendo you happen to have a link to the python notifier?
23:21:43Watusimotono, I have the compilied exe version if you want it
23:21:54Watusimotoit should be in our repo somewhere, but I think it is not (yet)
23:22:05WatusimotoI'd like to include it with the next release
23:24:52kaenhah!
23:24:55kaenI found it on google
23:25:12raptor has joined
23:25:13ChanServ sets mode +o raptor
23:25:37kaenhttp://pastie.org/pastes/5701521
23:25:52kaenby typing in "bitfighter notifier pastie"
23:25:59raptor??
23:26:01raptorhi
23:26:03kaenhi
23:26:09kaenI found the python notifier on google
23:26:13kaenafter having lost my copy
23:26:16raptoruh
23:26:19raptorwe have a repo
23:26:22raptorwith that
23:26:23kaen@_@
23:26:32kaenI couldn't find it with google
23:26:44raptorhttps://code.google.com/p/bitfighter/source/list?repo=tools
23:27:07kaenwell then...
23:27:48raptoras for the stats graphs...
23:27:55raptorwe need to make them client-side
23:28:02raptori.e. send the JSON not the png
23:28:16raptorsave server memory..
23:28:24raptorthat was my bad choice because it was quick..
23:30:05Watusimotostats are looking good, thoguh
23:30:21WatusimotoI stopped by to play briefly, and all I got was drama
23:30:45Watusimotosigh
23:30:57raptorhigh ping?
23:31:28Watusimotoyes, but two people trying to get a badge kicked a third who didn;t know why
23:31:36Watusimotono real game going on
23:31:51raptoroh wonderful
23:31:59raptori knew i should have made that ettiquiet post...
23:32:27Little_Applei made a zappy emote..
23:32:45Watusimotolike that would have helped
23:33:26raptor:)
23:38:40Little_Apple Quit (Quit: Page closed)
23:38:48Nothing_MuchWhat'd I miss?
23:39:30raptorso the bitfighter notifier...
23:39:38raptorneeds polishing, especially in Windows
23:40:17Nothing_Muchfor a new version?
23:40:17Watusimotoyes
23:40:29Nothing_Muchah, nice
23:40:34Watusimotobut its polishable
23:41:55raptoroh good I added the python spec to build the exe (and notes at the top)

Index Search ←Prev date Next date→

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