#bitfighter IRC Log

Index Search ←Prev date Next date→

IRC Log for 2013-04-29

Timestamps are in GMT/BST.

00:00:17Watusimoto_kaen: where did the pleades pics come from?
00:00:54kaenthe screenshots?
00:00:55Watusimoto_raptor: those overrides can't be happening as they seem to be, otherwise we'd have no geometry
00:00:57Watusimoto_yes
00:01:02Watusimoto_the site looks really good, btw
00:01:06kaenI uploaded them myself
00:01:23kaenmy graphics drivers are bunk, if you're wondering about the alpha blending
00:01:32kaenand thanks :)
00:03:14Watusimoto_I think you should be able to click on the logo to go to the home page
00:03:30Watusimoto_no one can look at a web page without a critique!
00:03:55Watusimoto_and with thtat.... good night!
00:08:44BFLogBot Commit: 8ccab3eaaeb9 | Author: watusimoto | Message: Cleanup some pre-xmacro code
00:08:45BFLogBot Commit: b0e3c74c741c | Author: watusimoto | Message: Add some more help items, tidy up a bit
00:08:47BFLogBot Commit: 32435058a2cc | Author: watusimoto | Message: Only show each message once, prepare for storing seen list in the INI
00:08:48BFLogBot Commit: 7aecab391a13 | Author: watusimoto | Message: Get rid of really ugly naming convention that never caught on. Yuck!
00:08:52BFLogBot Commit: ae60404de6bd | Author: watusimoto | Message: Ack! How'd that sneak in??!?
00:08:53BFLogBot Commit: b8e3c5b199fd | Author: watusimoto | Message: Added help message to for when player enters first loadout zone... also made helpItem enum not a member of helpItemManager to avoid having to make ClientGame aware of the UI namespace... I think we should keep all UI stuff out of ClientGame. If we can.
00:08:55BFLogBot Commit: f40f9219b08d | Author: watusimoto | Message: Partial fix to loadout selection bug. Will test further.
00:08:56BFLogBot Commit: 36894fee71b8 | Author: watusimoto | Message: Merge
00:08:58BFLogBot Commit: a77dc35367d1 | Author: watusimoto | Message: Ack! Did it again. Phooey. Too tired.
00:09:52kaenpushed, and good night
00:11:10Watusimoto_too many acks in these checkins
00:15:38Watusimoto_ Quit (Ping timeout: 252 seconds)
00:18:11raptornight!
00:35:18raptorok
00:35:29raptori'm against text like this: "Loadout updated. Good job!"
00:35:42raptorwe don't need to validate our players poor self-esteem
00:35:54raptoror do we?
00:44:58raptorZaphod Beeblebrox
00:47:56Flynnn has joined
00:49:23BFLogBot Commit: d8c49c5f4e92 | Author: buckyballreaction | Message: Enable -Wall in CMakeLists.txt
00:49:32kaenoops :x
00:49:37raptorhi kaen
00:50:22raptorI'm going through 20000 lines of warnings generated by -Woverloaded-virtual
00:50:32raptorto see if some are ones that really matter..
00:55:05kaengood god
00:55:27raptorhousekeeping time!
00:55:39Flynnnmother of god, did you say twenty thousand?
00:55:41raptoroh: HttpRequest.cpp:73:18: warning: unused variable ‘connectError’ [-Wunused-variable]
00:55:49raptordid you need that variable kaen?
00:55:54kaenhello Flynnn
00:55:58kaennot yet, raptor
00:55:59FlynnnHello, kaen :)
00:56:06raptorok, i'll leave it alone
00:56:06Flynnn Quit (Quit: Leaving)
00:56:13raptorby Flynn
00:56:14kaenI'll readd it after I check for connection errors...
00:56:15raptor*bye
00:56:19raptorok
00:56:49Flynnn has joined
00:56:51Flynnn Quit (Client Quit)
00:57:03Flynnn has joined
00:57:13Flynnnlol, just disconnected myself typing wrong command
01:28:36Flynnn Quit (Read error: Connection reset by peer)
01:30:24SolumnMushroom has joined
01:31:01SolumnMushroomHello all 2 other people!
02:27:53BFLogBot Commit: 9dd6a48265a1 | Author: buckyballreaction | Message: Fix several compiler warnings thanks to -Wall. Several to go!
02:27:55BFLogBot Commit: 5200738b8dc2 | Author: buckyballreaction | Message: More compiler warnings
02:42:14raptor19500 lines to go!
02:54:50BFLogBot Commit: e67ab5222ef4 | Author: buckyballreaction | Message: Fix some possible const + virtual overload issues
02:54:51BFLogBot Commit: 821e3f4cc056 | Author: buckyballreaction | Message: Fix more possible const + virtual overload problems
02:58:15raptorkaen: still around?
02:58:47raptorIn your opinion, does this warning look like a problem?: http://pastie.org/7735909
02:58:57kaenI'm here
02:59:27raptor(i'm starting to hate the pastie default view)
03:00:33kaenthey need a stack trace syntax coloring scheme
03:00:39raptoryes
03:00:46raptorraw is better for these..
03:01:30raptorso there are two signatures in BfObject:
03:01:37raptor virtual void render(S32 layerIndex);
03:01:38raptor virtual void render();
03:01:49raptorbut maybe it's smarter to rename one?
03:02:30kaensorry, have to run :x
03:02:35raptork
03:36:17bobdaduck_m has joined
03:36:29bobdaduck_mgreetings, fresh dudes.
03:36:35bobdaduck_mMind if I chill your crib?
03:37:04bobdaduck_m chills their crib
03:37:06kaenbobdaduck_m, when get access to a real machine can you check out bitfighter.org/pleiades ?
03:37:11kaenwhen you*
03:37:19kaenactually, hold on let me push
03:37:34bobdaduck_msure thing. Might be later tonight or tomorrow at work
03:37:46kaenokay
03:38:10kaenpretty drastic style changes today...
03:40:23bobdaduck_mokay just looked at it on my phone
03:40:31bobdaduck_mEverything is better
03:40:42bobdaduck_mEven the name looks better
03:40:57kaenlol the name is literally the only part that didn't change
03:41:15bobdaduck_mEach section allows for like 5 levels, right?
03:41:27bobdaduck_mAs scope goes, I predict we'll need like 10
03:41:30kaen8
03:41:39bobdaduck_mThat works
03:41:42kaenI added random levels at the bottom just for you :)
03:41:52bobdaduck_mthanks xD
03:41:57kaenI actually haven't looked at it on a phone yet
03:42:08kaenI'd be surprised if it doesn't look like garbage.
03:42:41bobdaduck_mUh my phone is windows mobile and
03:42:54bobdaduck_mI dunno, displays things the way they'd look on a normal computer
03:43:12kaenwow, looks pretty much identical on my phone
03:43:16bobdaduck_mTakes ages longer to load but still
03:43:25fordcars has joined
03:43:31kaenmaybe I need to lighten the level blocks on the overview
03:43:38kaenthe bottom mixes in with the background on my phone...
03:43:57bobdaduck_mLooks fine tot me
03:44:17bobdaduck_mI mean they're really close but just enough off that you can tell the blocks
03:44:21bobdaduck_mwhich I say is fine
03:44:27kaenworks for me
03:45:20kaenit would be cool if I could make a link in the browser that would launch the client to do the necessary /dlmap
03:45:37kaenbut you'd have to register bitfighter as a protocol handler in the browser :/
03:45:52bobdaduck_mwell the download button works fine right?
03:46:00kaenheh yeah
03:46:13bobdaduck_m'sall good then
03:46:17kaenbut then you have find the zip and extract it appropriately
03:46:25kaenbut also you can just run the command yourself
03:46:28kaennot that hard
03:46:28bobdaduck_mThough, /dlmap still seems fuzzy and confusing
03:46:51kaenwell, the website generates a string based on the author and map name
03:47:03kaenyou type that after /dlmap and the website finds your map for you
03:47:12SolumnMushroom Quit (Read error: Connection reset by peer)
03:47:17kaeneverything else is magic
03:47:24bobdaduck_mso is it intuitive
03:47:42kaenwell, airlock by watusimoto becomes watusimoto_airlock
03:47:52bobdaduck_mOr do you actually have to go to pleiades to find out bebop is "be12kae6xz"?
03:47:56fordcarsawesome bitfighter.org/pleiades !
03:48:03kaenfordcars, don't tell anyone though!
03:48:08kaenit's a secret for 019
03:48:13kaenand thank you :)
03:48:20kaenfeel free to use it; I need more testers
03:48:28fordcarsI never tell anything about developpement!!!!
03:48:49bobdaduck_mwait, we have developmental secrets?
03:48:53kaenbut the data gets cleared regularly, so don't rely on it for backup yet
03:49:08kaenit's not super secret, just want to have the double-punch of 019 and the leveldb
03:49:10fordcarsare we going to implement some kind of Client for Pleiades built-in Bitfighter?
03:49:17kaenfordcars, it's already there
03:49:22fordcarsooOOOoooo
03:49:24kaenin 019 you can upload to db from the editor
03:49:27bobdaduck_mlol
03:49:32kaenand /dlmap to get levels from the site
03:49:45kaenbut that's all there is for now
03:49:49fordcarsnice, sorry, i have been occupied
03:50:02kaenit's okay, I like to talk about it :)
03:50:20kaenanyway, bobdaduck_m, it's super intuitive.
03:50:32kaenyou can guess the slug for nearly all levels
03:50:57kaennumbers, goofy characters, etc. get stripped, whitespace and underscores are condensed into a single underscore
03:51:05kaenthen it's just author_level_name
03:51:30fordcarsreally?
03:51:42bobdaduck_mbobdaduck_rts
03:51:47kaenyes
03:51:56bobdaduck_mAnd it auto grabs levelgens too right?
03:52:00kaenyep
03:52:06bobdaduck_mAnd does it strip returns?
03:52:09fordcarsnice!
03:52:15kaenstrip returns?
03:52:24kaenoh, newlines
03:52:25kaenyes
03:52:31kaenand sanitizes them
03:52:34fordcarsoh haha
03:52:39bobdaduck_mbut not for levelgens right?
03:52:54fordcarswouldn't matter I think
03:53:03bobdaduck_mLevelgens will break if it does
03:53:07kaenit does replacement and trims at the begging/end
03:53:12kaenbut doesn't modify the inside
03:53:18kaenbeginning*
03:53:43fordcarswow kaen, I am impressive
03:53:55kaengood to hear :)
03:53:57bobdaduck_mFordcars is impressive.
03:54:02fordcarsyup
03:54:04kaenfeel sort of like the phantom of the opera sometimes
03:54:13kaenjust playing my organ to an empty theater...
03:54:19fordcarshah
03:54:27bobdaduck_mYou sing while you program?
03:54:59fordcars*no answer*
03:55:17bobdaduck_mHe sings his code into an audio interpretter
03:55:23fordcarshaha
03:56:38fordcarsaudible C++
03:57:22bobdaduck_mwhen there's an error it spits it back to him in morse-code dial tones
03:57:32bobdaduck_mbecause he's actually blind.
03:58:10bobdaduck_mI am impressive.
03:58:35fordcars-.-- . ... / --- ..-. / -.-. --- ..- .-. ... . / -.- .- . -. / .. ... / -... .-.. .. -. -.. --..-- / -.. ..- .... ....
04:01:52kaenlol
04:08:11bobdaduck_mSuns!
04:08:23bobdaduck_mConsider your crib, chilled.
04:08:35bobdaduck_m Quit ()
04:11:03fordcars Quit (Ping timeout: 245 seconds)
04:12:15fordcars has joined
04:51:38kaen Quit (Ping timeout: 264 seconds)
04:59:29kaen has joined
05:00:41raptor Quit ()
05:42:12fordcarskaen, how did you do a shell through lua api?
05:42:26fordcarslua socket?
05:42:37kaenno, using netcat and os.execute
05:42:42kaenand some bash
05:43:02fordcarsahhh nice
06:43:32kaen Quit (Remote host closed the connection)
06:54:15kaen has joined
07:00:13fordcars Quit (Ping timeout: 245 seconds)
07:09:58koda has joined
07:17:16Flynnn has joined
07:59:59watusimoto has joined
07:59:59ChanServ sets mode +o watusimoto
08:15:47watusimotoA more positive video
08:15:57watusimotoYou can test your spanish!
08:15:58watusimotohttp://www.youtube.com/watch?v=eSK6uyovwqo
10:52:15Flynnn Quit (Quit: Leaving)
10:54:17LordDVG has joined
12:14:47kodab has joined
12:16:21kodabb has joined
12:18:29koda Quit (Ping timeout: 272 seconds)
12:19:32koda has joined
12:19:45kodab Quit (Ping timeout: 272 seconds)
12:22:17kodabb Quit (Ping timeout: 272 seconds)
13:20:32raptor has joined
13:20:33ChanServ sets mode +o raptor
13:23:36raptorgood morning!
13:25:43raptor"better and badder than ever!"
13:59:16bobdaduck has joined
14:04:10raptorThe poly2tri guy took me seriously and linked to Clipper on his home page
14:17:37bobdaduckgood?
14:26:46watusimotogreat!
14:40:49raptorhi watusimoto
14:40:56watusimotohi
14:41:06raptorI'm wondering about opengl z-buffer
14:41:39raptorif i drew object ontop of each other do i just need to adjust the z-index to something other than 0 (like 1 or -1)?
14:41:50watusimotoit depends
14:41:59watusimotothat's my helpful answer for the day
14:42:04watusimotoany other questions?
14:42:09watusimoto:-)
14:42:11raptorheh
14:42:12raptoruhh
14:42:14raptorok
14:42:18watusimotoif the objects have no transparency, you can do that
14:42:24watusimotoif they have transparency, draw order matters
14:42:37raptori'm looking to get rid of the drawing layers (i.e. render(S32 layerIndex))
14:42:44watusimotoyes
14:42:50watusimotoI've looked at that too
14:43:04watusimotoI'm not sure we can do it
14:43:17raptorno?
14:43:19raptorhmm
14:43:30watusimotoif we don't do any transparency, we can get rid of them
14:43:38raptorand bit 'get rid of' i mean, do it in one pass using the z-axis somehow
14:43:43raptor*and by
14:43:46watusimotoI think that linesmoothing counts as transparency, but not sure
14:43:51watusimotoyes, that's what I mean
14:44:05raptorreally? how does transparency mess it up?
14:45:17watusimotoI'm looking for the article I read about it
14:45:45raptorhah! found something: "Generally transparency is done by first rendering all opaque objects in the scene (letting the z-buffer figure out what's visible), then rendering all transparent objects from back to front."
14:46:05raptorso yeah, that's horrible
14:46:13raptori mean, probably good for performance..
14:46:45watusimotowell, basically, if A shows through B, you need to draw A before B
14:46:51watusimotootherwise it will not show through B
14:47:00watusimotoI can't find the article
14:47:23raptorinteresting
14:47:28raptorno real way around it..
14:47:45watusimotowell, perhaps for the ships, for example, we could try to figure a way to get rid of the layers
14:47:59watusimotonot sure what's actually going on there that requires different draw layers
14:48:16watusimotoand most of our objects do not overlap normally
14:48:21kaenthey get passed through qsort, if I recall
14:48:51watusimotomuch of what we want on top is text and gui elements, and these are easy to draw later
14:48:59kaenoh wait, think of a different layerindex :x
14:49:17kaenI'll drink some coffee before I start talking about programming. also, good morning
14:49:26raptormornin' kaen
14:51:49raptoreven the ship has alpha..
14:52:10watusimotohi
14:52:20bobdaduckSo wait did we decide on pleiades against auto-generating a screenshot?
14:52:32watusimotobut does that alpha matter for rendering the ship? i.e. could we render it all in one pass?
14:52:59watusimotonothing is ever rendered behind the ship that might need to shine through, is it?
14:53:23raptorlooks like layers involve /showcoords, the player's name, and the cloaking cloak
14:53:45watusimotocoords and playername can be drawn anytime... there is no overlap
14:53:55raptorthey have 'textAlpha'
14:53:58watusimotounless, perhaps, ships are very close?
14:53:58raptorhmm
14:54:13raptoryou could spawn on top of someone else
14:54:26watusimotoif you are on top, the names won't collide with a ship
14:54:27raptorshould we implement telefrags? :)
14:54:33watusimoto????
14:54:40raptorspawn killing
14:54:58raptorok, ignore that..
14:55:19bobdaduckxD
14:56:05raptorhuh
14:56:36raptorit looks like layer -1 draws the cloak covering
14:56:44raptorlayer 1 draws the ship
14:58:49bobdaduckI think that telefrags for engineered teleporters is a great idea.
15:00:27bobdaduckNot quite as good an idea as suns, but still.
15:00:51raptorhttps://www.opengl.org/wiki/Transparency_Sorting
15:00:57raptorgood article so far ^^
15:01:04watusimotowe are getting rid of cloak covering, right?
15:02:06bobdaduckyeah
15:03:44raptorwe are?
15:04:09raptorthat means I should write that down?
15:04:22raptorwhat are we replacing it with? nothing?
15:04:36watusimotoI think bobdaduck convinced us (me?) that we should kill it
15:04:47raptorso replacement is... nothing?
15:04:49bobdaduckI'm actually not so sure anymore
15:04:49watusimotoyou could probably remove it in less time than it would take to write it down!
15:04:53bobdaducknothing
15:04:55watusimotowhat??
15:04:55raptorok
15:05:01raptorwaht?
15:05:03bobdaduckBecause we buffed triple
15:05:06bobdaduckwhich is a buff to cloak.
15:05:13watusimotowell, for the record, I like it
15:05:24watusimotoI like blocking stars with the cloaked ship
15:05:27raptori'm getting lost in the pronouns!
15:05:31raptorok
15:05:33bobdaduckI think its fun too, to give people a chance at spotting cloakers
15:05:46watusimotoraptor: forget it; let's leave it for now
15:05:52raptorhah, ok
15:06:02bobdaducksure
15:06:09raptormaybe I can figure out how to render ship in one layer..
15:07:15raptorwatusimoto: speaking of removing crufty stuff... we have two starfields
15:07:31raptorparallax vs yuk
15:07:38watusimotoyuk?
15:08:04raptorbasically dots that stay relative to the walls
15:08:11bobdaducklol
15:08:18watusimotothat was there for k
15:08:23kaen that is yuk...
15:08:23raptoryou should look at it - switch the INI option
15:08:24bobdaduckI could never tell the difference between them xD
15:08:30raptorbobdaduck: what
15:08:38bobdaduckYeah.
15:08:41raptorbobdaduck: go try it and say that again with a straight face
15:08:49bobdaduckrofl
15:08:59raptorchange: StarsInDistance=Yes
15:09:01raptorto 'No'
15:09:04bobdaduckYeah
15:09:11watusimotoit's pretty yukky
15:09:33raptor_k used it *only* so he could have the advantage against cloakers
15:09:40raptor.. as far as I could tell
15:09:57watusimotohe hated paralax from the first momemnt I implemented it
15:10:07watusimotosaid it made him nauesussseus
15:10:37bobdaducklol
15:10:41kaenheh. I was just going to complain about not having *enough* parallax
15:10:44watusimotothe paralax thing was probably the second thing I changed in Zap (after testItems), so the coding is pretty shaky
15:10:47bobdaduckI think raptor's thought is more likely
15:10:56watusimotoI'd be happy to kill it
15:10:59watusimotoparallax or die
15:11:14watusimotoI do have distant plans for alternate backgrounds
15:11:18bobdaduckNo seriously I barely see the difference
15:11:33bobdaduckOnly after being told exactly what to look for
15:11:34watusimotolike the hexagons whose code is in there
15:13:03watusimotoI also want to do a background like a sparse version of this:
15:13:05watusimotohttp://www.flickr.com/photos/crobj/3260337317/
15:14:25watusimotobut stars not in distance? forget it
15:14:34bobdaducklol
15:14:52raptorI was thinking of slightly altering our current background to maybe have random stars that are a bit redder and maybe slightly bigger (like 2 pixels instead of 1)
15:15:12raptorjust to add a tiny bit more variety..
15:15:30bobdaduckAny background change at all will affect whether cloak is based on luck or skill.
15:15:40bobdaduckWith the current cloaking hiding stars thing.
15:16:43raptorwell, let's just say cloak is much easier to detect if: 1. you're not moving (which is suicide) or 2. you have 'StarsInBackground=No'
15:16:56raptor*StarsInDistance
15:18:31bobdaduckBut if the background is sometimes bigger stars or hexagon or boomerangs or stick figures then it will affect how easy it is to see cloakers.
15:19:17raptorwell... watusimoto's suggests are much more drastic than mine
15:19:38raptorI wouldn't have an option to 'enableBigStars'; it would be the default
15:19:55watusimotobobdaduck: good point
15:20:11raptorso watusimoto, kaen - I'm ready to kill 'StarsInDistance=No'... should I go ahead?
15:20:18watusimotoraptor: I've tried a few other stars ideas, and they haven't been very good
15:20:20kaenthumbs up
15:20:29bobdaduckYeah, but that makes whether or not you spot a cloaker more chancey
15:20:45watusimotoraptor: so I'm skeptical , but would be willing to keep an open mind :-)
15:20:52raptorwatusimoto: about what?
15:20:58raptorerr, which?
15:20:59watusimotoabout redder bigger stars
15:21:14bobdaduckif they happen to cover up a big star then its much more visable than if they cover up a small star.
15:21:26bobdaduckAnd of course there's no way for a cloaker to know what to avoid or whatever
15:21:33watusimotothis is true
15:21:34raptorwatusimoto: what about killing StarsInDistance ?
15:21:39watusimotokill it
15:21:43raptordoing so now..
15:21:52watusimotoand mark your checkin with a [*]!
15:21:55raptorbobdaduck: it would be very sparse
15:22:14raptorwatusimoto: we're still doing that? I've missed so many already...
15:22:21bobdaduckIF you're going to implement different backgrounds (which I'm against), then cloakers hiding stars should go.(which I'm for)
15:22:25bobdaducklol
15:22:32watusimotomaybe we can think of a different cloak mechanism besides blocking stars
15:22:49watusimotoraptor: I'm still doing it... sort of
15:22:54raptorrandom star scattering in various directions
15:23:02watusimotoI had thought of star swirling
15:23:08watusimotobasically the same thing
15:23:18watusimotothat might be more eye catching that twinkling out
15:23:21bobdaduckThat's... Way visible.
15:24:13watusimotoone problem with star hiding is it requires clients to know about hidden ships' location... which could lead to hacked clients and cheating
15:24:30kaen^ this is my main objection
15:24:58bobdaduckSo go ahead and get rid of that too.
15:25:00watusimotohere's an alternative
15:25:03kaenalso, I've never successfully detected cloakers via star blocking. I'm too busy looking at the pretty colors
15:25:34watusimotowhat if when there was a cloaked ship in the area, random stars around you were somehow distorted, but not in any particular direction or location
15:25:52watusimotosome kind of generalized distortion that revealed presence but not location
15:26:11bobdaduckThat removes any sort of element of surprise to cloak at all.
15:26:49bobdaduckI've had a different experience kaen: I've never, ever, ever, had a cloaker succesfully sneak up on me. They're super easy to spot.
15:26:52kaenI'm not convinced that there's a problem with cloakers being totally undetectable. I mean you give up a module and energy for it
15:27:05watusimotothis is true
15:27:08kaenand unless you're shielding you're super easy to kill
15:27:15kaenand if you are shielding you won't be cloaked for long
15:27:20watusimotoexactly
15:27:22bobdaduckGood points.
15:27:54kaen is starting to understand gameplay \o/
15:27:59watusimoto:-)
15:28:23watusimotowhat about an object like a spybug that disables modules in the area
15:28:39kaenwhoa
15:28:42kaenthat would be awesome
15:29:15kaenwhat about passives like armor?
15:29:19watusimotoa flux field absorber
15:29:38watusimotoI'd say only electronic things would be disabled, so armor would stay
15:29:41raptorauras?
15:29:49watusimotocould also continue to carry resources
15:29:52watusimotojust not use them
15:29:54raptorauras would open pandora's box
15:30:01watusimotowhat are auras?
15:30:11kaenteam-buffs, I think
15:30:54raptorif a team member nears you, then they get a bonus
15:31:13watusimotolike what, for example?
15:31:17raptoror any effect that is distance-from-ability based
15:31:29watusimoto(I'm voting to kill the hidden star effect)
15:31:56raptormillions of ideas in that regard: equip armor, everyone within 300 radius gets an armor bonus, too
15:32:42kaenauras would be cool because they'd encourage team play and let unskilled players still be valuable to their teammates (assuming both players know about aura effects)
15:33:00kaenbut yes, definitely pandora's box
15:34:48bobdaduckLets not do auras yet.
15:34:50watusimotoI'm not going to offer an opinion at thsi point
15:35:13raptoryeah, no auras for 019 please
15:35:17kaenagreed. that's a pretty massive mechanic to balance
15:35:22bobdaduckSuns?
15:36:44kaenokay -- we should totally embed a scripting environment into the game (maybe lua?) and let players have programmatic access to gameplay elements, allowing them to manipulate the physics, generation, and destruction of them. that way bobdaduck could implement his sun idea
15:36:48kaen-- oh wait
15:37:01bobdaduckxD
15:37:25bobdaduckI can't quite make an engineerable/repairable whatever yet...
15:38:25bobdaduckI can make the gravity well and maybe even the damaging the closer someone is to the center part, but making it an actual object is harder....
15:38:41kaenhm that's true
15:39:03bobdaduckAnd also I'm advocating this be a bitfighter-wide change, rather than just an individual level thing.
15:39:14kaenI thought you were mostly joking :x
15:39:21bobdaduckI WAS
15:39:30kaenokay
15:39:30bobdaduckBut then I started to like the idea.
15:39:53bobdaduckMostly. I mean I'm not saying we need to implement solar wind and solar panels along with it
15:40:57kaenI think a couple more triggers and you could attach that behavior to some other engineerable object (maybe teleporters) in a levelgen
15:41:10kaenbut that really sounds like a better mod than integrated gameplay element
15:42:33bobdaduckMaking it in levelgens would be really hacky anyway though. And even if it wasn't, it would look hacky. *glares at 33 ms*
15:43:06raptorthe deed is done
15:43:16BFLogBot Commit: 3b228467a6d9 | Author: buckyballreaction | Message: Remove StarsInDistance option
15:43:23raptor reminds bobdaduck that this is a NETWORK game
15:44:20bobdaduckGoogle optics is coming to provo server speeds won't even matter
15:44:31raptorheh
15:45:00raptoryeah, everyone is excited here - maybe comcast will finally die
15:45:23bobdaduckBESIDES I SHOULD BE ABLE TO MAKE A STUPIDLY INTENSIVE SERVER IF I WANT TO.
15:45:58kaenI agree with you on that
15:49:35kaenbobdaduck I'm running out of pleiades bugs... a little help?
15:52:20watusimotoI have a minor suggestion for you kaen
15:52:30watusimotoon the levels display
15:52:43watusimotomove the tags above the level code, and make the levelcode fully expanded by default
15:52:52watusimotoif it's last it won't really matter how long it is
15:53:25watusimotoscrolling a window that has a scrollable element in it can be weird if your mouse happens to land in the inner scrollable element
15:53:29kaenah, good idea!
15:53:36kaenI noticed that so many times...
15:53:44kaenjust never thought of a solution
15:54:14kaenit's especially bad because the textareas on pleiades are like 80% of the window
15:54:18watusimotogoogle things the page is in dutch!
15:54:23watusimotoor rather chrome
15:54:26kaenI know :/
15:54:44kaenI even put an explicit language attribute in it
15:54:49watusimotoTo download this map while playing Bitfighter, run: >>>> To download this map while playing Bitfighter, type:
15:55:10watusimotocaution: viewer discretion advised?
15:55:21kaenheh
15:55:33raptorgo firefox!
15:55:49watusimotosearch by author, perhaps? linked to author names?
15:56:14kaenyou can search by author, but I haven't added name links yet
15:56:22watusimotooh good! you added the stars in the bg!
15:56:28watusimotoI was going to suggest that last night!
15:56:32kaenhelps a *lot*
15:56:39watusimotoo0r whenver I last looked at the site
15:57:11raptorit feels less lonely now
15:57:15watusimotoyes
15:57:29bobdaduckOh
15:57:35bobdaduckI like the shiny on the blocks
15:57:56kaenyes, it was quite broken when I put it up last night
15:58:24kaenthat shiny is a subtle composition of three different effects, so it's hard harmonize it :x
15:58:28bobdaduckI think you should be able to vote on levels without opening it up
15:58:50bobdaduckBecause sometimes you don't need to open a level to know what it is.
15:59:03kaenI disagree: I don't want to encourage mass drive-by voting
15:59:34bobdaduckOkay then.
15:59:49kaenI was even thinking about requiring comments for down-voting
16:00:03bobdaduckThere's a comments system?
16:00:09kaenthere will be shortly
16:00:12raptorkaen: good idea
16:00:15bobdaduckNice!
16:00:24bobdaduck'course this is going to outright replace the forums
16:00:28bobdaduckbut whatever!
16:00:36kaennah, because you can only discuss levels
16:00:48kaenwhere would we have our gif and self-pic threads?
16:01:00kaenthose are probably 60% of the forum traffic
16:01:00bobdaducklol
16:01:13bobdaduckWell replace the levels part of the forums.
16:01:24kaenjust the map gallery, really
16:01:50kaenand kaen test
16:01:58kaenwhich is how this all started...
16:01:59bobdaduckyay!
16:02:00bobdaduckxD
16:02:43bobdaduckPeople really like airlock
16:03:50kaenit's officially the highest rated map in bitfighter :)
16:04:10bobdaduckMost downloaded too
16:06:23watusimotoso how will voting be done?
16:06:43watusimotoif it's +1/0/-1, it would be easy to implement in-game voting
16:06:54watusimotowe just have a toggle vote button
16:06:58bobdaduckThat's how its done currently
16:07:09kaenthe only thing that's stopping my from in-game voting is spoofing
16:07:16watusimotohow so?
16:07:31watusimotoi.e. what do you mean by spoofing
16:07:47bobdaduckmake it so only registered players can vote
16:07:47kaenlike, I could take airlock, replace leveldatabaseid with the id of my own map, distribute that, and when people think they're voting for airlock they're actually voting for my map
16:07:56watusimotoah
16:08:08kaenwe could safely do it -- but only from locally hosted games
16:08:13kaeni.e. in the editor
16:08:30bobdaduckMake sure the author/levelname/description and everything match?
16:08:35watusimotorequire why not make the id be a hash of the level?
16:08:42watusimotooh wait
16:08:48kaenbecause it's a primary key in the sql db
16:08:52bobdaduckAnd you don't have to tell people how the voting works
16:09:12kaensecurity through obscurity is not security at all
16:09:50bobdaduckTrue but couldn't you require a lot of things to match before it lets the vote through?
16:10:02watusimotowelll.... one could generate a hash of all the walls, for example, then clients could generate that hash themselves for voting purposes
16:10:20bobdaduckyeah
16:10:22watusimotoand you could vote via that hash, and have the database just search for it rather than use the id
16:10:35raptori'm going to update clipperlib..
16:10:36kaenneither of those really guarantee that you're voting on exactly the level you're playing
16:10:51kaenand also, how does one generate the hash?
16:11:18kaenyou could hash level code, but the client would need a copy and you couldn't be certain that the code the server sent is what you're actually playing
16:11:24watusimotoI think the hash would guarantee the client was voting on the level they were looking at
16:11:37watusimotothe hash generation might be a tad tricky
16:11:52bobdaduckCheck if levelname/author/description match the level in the database?
16:11:53kaenit would guarantee that the walls were the same, but it's subject to floating point error and levelgen manipulation
16:12:17bobdaduckIf someone is that desperate to get votes on their obscure level....
16:12:35watusimotorounding we can handle (round the numbers to nearest .1, for example). Levelgens are more difficult.
16:12:51watusimotomazeracer generates walls before they are sent to client
16:12:57watusimotoand has none in the level itself
16:13:15watusimotowe could trust the servers...
16:13:19kaenyeah...
16:13:29watusimotowall hashing is out
16:13:37raptorcreate a specific hash algorithm: like concatenate all non object attributes of a level file in a certain way
16:14:13watusimotoif you don't trust the server, it is a bit hard
16:14:29watusimotowalls are non spoofable, which is nice. but flawed for other reasons
16:14:41watusimotothings like repair items aren't sent to client all at once
16:14:44bobdaduckSo if you vote for mazracer, it takes the level ID (spoofed to say, airlock) and tries to match the walls in the current level to the code in the database ID. Since airlock has walls and mazeracer doesn't, then the vote doesn't go through.
16:14:51watusimotoand suffer from the same problem as walls
16:15:18kaenvoting by author + level name is actually the most trustworthy system I can think of because those are unique and a human could tell if they've been spoofed
16:15:28watusimotoif they are paying attention
16:15:46watusimotowho knows who created geowar? well, I do, but the average player doesn't
16:15:59raptoror
16:16:04raptorhmm
16:16:22bobdaduckSo why doesn't checking if random parts of the level code match work?
16:16:22raptorcould could send the master-generated hash to the server
16:16:24watusimototo protect against a bad server, the client needs to generate a level fingerprint that the server can verify
16:16:39watusimotothat the master can verify, that is
16:16:43raptorwell, hmm... i need to think about it more
16:17:54watusimotoI think in-game voting would be really great if we can make it work. Far more people would be willing to vote
16:17:56raptorwell if we only let authenticated users do things and we detect a spoof, we can punish them
16:17:58bobdaduckI still don't think its at all likely that someone is going to be so desperate for votes that they would try spoofing.
16:18:01LordDVG Quit (Ping timeout: 252 seconds)
16:18:06watusimotoI would be willing to trust servers to get that feature, I think
16:18:27watusimotoraptor: the spoof would be by the server, not the user
16:18:47kaentrue, but it would benefit a specific player
16:18:51raptorso do we need a concept of a 'trusted' server
16:18:52kaenwho could then be punished
16:18:56bobdaduckAnd even afterwards the users would be like "what why is this stupid map so high rated" and downvote it
16:19:01watusimotothat
16:19:07kaenI've been thinking about trusted server for quite some time
16:19:17watusimotoor rather why did that level get 2000 votes and no other levels have any?
16:19:31bobdaduckwell 2000 votes using this spoofing system isn't feasable
16:19:37bobdaduckit'd be more like 2 extra votes.
16:19:50watusimotoif I host a server and everyone who votes on any level is voting for mine...
16:20:04bobdaduckThen you have four votes.
16:20:08watusimotothere are people who will screw with things just because they can
16:20:10bobdaduckMaybe six.
16:20:17watusimotoeven going as far as to create swords out of loadout zones
16:20:22bobdaduckrofl
16:20:23kaenrofl
16:20:36watusimotojust because they're that kind of people
16:20:47bobdaduckYou
16:20:52bobdaduckYou're right, this could be bad.
16:21:00watusimotobut I am willing to risk abuse to make the feature work better
16:21:12kaenI agree
16:21:22kaenworst case, we can trivially disable it from the web app
16:21:45bobdaduckOr allow manual resetting of spoofed votes by admins or whatever
16:21:46bobdaduckYeah.
16:21:59watusimotowell, we could do a hybrid approach: md5 fingerprint of file iteself, provided by server, mingled with name, creator, walls, etc. from client
16:22:17watusimotospoofable, but also potentially detectable
16:22:37watusimotobecause it incorporates items visible to user
16:23:04kaenI'm trying to avoid too much level parsing server-side. especially parsing data regarding game objects
16:23:17watusimotowe already compute md5 of level on server
16:23:24watusimotoI think
16:23:31watusimotooh
16:23:33kaenbut I meant the walls and stuff
16:23:36watusimotoserver side menaing web server
16:23:39kaenyeah
16:24:04kaenlevelname and game type is reasonable, reimplementing processArguments for each object...
16:24:08kaennot so much
16:24:44watusimotolevelname, gametype, and creator might be enough
16:25:05watusimotobut walls could be treated as text -- text that could be generated on client
16:25:08kaenI think we should trust the server and tell the client which author/level is getting their vote
16:25:18watusimotowith the tostring method
16:25:18kaenand that will suffice
16:25:33watusimotoyes probably
16:25:47watusimotowe don't have a history of cheating in this game
16:25:56watusimotoat least unsuccessful cheating
16:26:23bobdaduckStarsInDistance?
16:26:27raptorgone!
16:26:35bobdaduckhistory
16:26:54kaenit only takes one observant player to thwart a malicious server, but loads of clueless players to benefit from it, so that's pretty good asymmetry
16:28:00bobdaduckAnd then we... lock down a scammed level in the database so people can't vote for it anymore?
16:28:33kaenI don't know what a good response is. we can figure that out when/if the time comes
16:28:43watusimototransfer all suspect votes to airlock
16:28:57kaenwhere they should have gone in the first place.
16:29:00bobdaduckrofl
16:29:07watusimotoexactly!
16:29:13watusimotojsutice done
16:29:14bobdaduckAirlock!
16:29:18bobdaducklol
16:29:30bobdaduckbut what if airlock is the spoofed level
16:29:42kaenspoofception
16:29:47bobdaduckrofl
16:40:19koda Quit (Read error: Connection reset by peer)
16:45:17bobdaduck Quit (Remote host closed the connection)
16:55:02raptorspoofception!
17:11:20BFLogBot Commit: 0fd3dd44c826 | Author: buckyballreaction | Message: Update Clipper from upstream to 5.1.4 (rev 308)
17:12:31watusimotolater
17:12:35raptorbye
17:12:47watusimoto Quit (Quit: Leaving.)
17:30:04raptorhaha, my kid just came running out of the kitchen with a 14 inch serrated knife
17:35:32Watusimoto has joined
17:42:07thread_ has joined
17:43:46thread_Hey raptor, the website doesn't send the email validations to people signing up for the forum. can you tell whoever is in charge of that?
17:44:04raptorhi thread_
17:44:07raptorreally?
17:44:14raptorwhat is your username, I'll validate you
17:44:18thread_i tried yesterday and today. no email both times
17:44:27thread_either thread or thread_speaker
17:44:37raptorwhich do you want (i'll kill the other)
17:44:39raptor?
17:44:43thread_thread then
17:44:54bobdaduck has joined
17:45:03thread_IT'S BOB!
17:45:25bobdaduckSup thread
17:45:28bobdaduckAny luck?
17:45:44thread_with the LUA? not yet. but you should see my new map
17:45:45raptorok thread_ your 'thread' account has been activated
17:45:50thread_thanks
17:45:56raptoryou guys know each other?
17:46:01bobdaducklives next door
17:46:05raptorha!
17:46:08thread_we were into this back when it was zap
17:46:12raptorwelcome!
17:46:18thread_it has been a while
17:46:32bobdaduckthe "towers of sherrizah" map that I nominated for BBB is his
17:47:19raptorwhere is that map?
17:47:26bobdaduckI have it
17:47:27bobdaduckuh
17:47:29bobdaduckCTF
17:47:30raptorok
17:47:34bobdaduckHe went by noob master back then
17:47:36raptorwe shoudl start gathering maps I think..
17:47:38raptorsome time..
17:47:46bobdaduckI did
17:47:49bobdaduckI have like 5/40
17:47:51bobdaduckxD
17:47:54raptorI have 1!
17:48:10thread_thats 6!
17:48:19kaenwhere's the list?
17:48:42bobdaduckuhh I dunno
17:48:51bobdaduckI just type in "BBB" and it goes
17:50:09raptorsent it to you kaen
17:50:17kaenso did bob :)
17:50:21raptorha!
17:57:31bobdaduckoh and the ones with all the lines by them
17:57:38bobdaduckI already have in a BBB folder
17:57:47raptorok
17:58:08raptorso... I'll send you one slowly for you to aggregate
17:58:43raptorthat ok?
18:00:08bobdaduckforum pm
18:00:14bobdaduckI'll get around to it eventually
18:00:51raptorquestion: do zero width polywalls work?
18:02:01bobdaduckUh polywalls don't have widths'
18:02:04bobdaduckyah?
18:02:09raptorsorry
18:05:43raptorok sent
18:08:39raptorbobdaduck: your inbox isn't going to be full is it?
18:08:50bobdaduckUhhh
18:08:53bobdaduckuhhhhhhhhh
18:08:55bobdaducknearly.
18:11:02bobdaduckBut when inbox is full
18:11:08bobdaduckit like, puts messages on hold
18:11:13bobdaduckinstead of not recieving them
18:12:52raptoryou sure?
18:13:01bobdaduckyeah
18:14:23bobdaduckHappened to me lotsa times
18:14:25bobdaduckxD
18:20:22raptorok phoew
18:20:34raptorbitfighter used almost 8GB of RAM on that one!
18:20:40bobdaducklol what?
18:20:52raptori made a severe coding error: infinite loop
18:20:53bobdaduckDID YOU TRY TO LOAD LEVELGEN CARNIVAL ON AN UNINITIATED MACHINE?
18:21:00bobdaduckoh.
18:21:02bobdaduckphew.
18:45:12Watusimoto Quit (Ping timeout: 245 seconds)
18:51:41kaenraptor, how do I reload the default ini in mercurial?
18:51:55kaenI want to add an ini option for setting the leveldb url
18:52:13kaenso I want to commit to the default version of it
18:52:34raptorit reads on each command
18:52:40raptor~/.hgrc
18:53:10kaenI mean the default bitfighter.ini
18:53:23raptoroh, just nuke the old, start the game
18:53:30raptorit doesn't exist in mercurial
18:53:36kaenohhh
18:53:45kaenhow do I edit the default one?
18:55:15raptorit's in config.cpp
18:55:20raptorfor the comments
18:55:50raptorthere is some elaborate system in there that handles config + ini + command options
18:56:36raptortake a look at how I removed the StarsInDistance option with one of the latest commits to get a feel for it
18:57:04kaenok
18:58:33thread_ Quit (Ping timeout: 245 seconds)
18:59:43bobdaduckMore tags for pleiades!
19:00:08bobdaduckIt is currently small but it will have a lot a lot of levels once its live
19:00:20bobdaduckGotta allow for that.
19:01:12kaenthe tags have an interface
19:01:24raptorthen you could do a tag cloud and be all fad-like
19:01:30kaenbitfighter.org/pleiades/tags
19:01:41kaenit's not pretty because it's going to be admin-only
19:01:59raptorexcellent
19:02:34kaencake generated that page, the controller, and the data model automatically with a single command :)
19:02:54raptorco cake!
19:02:57raptor*go
19:04:54kaenmaybe later I'll let users make tags on the fly like stackoverflow, but only if the need is demonstrated
19:05:21raptormaybe have a tag request form?
19:07:19bobdaduckhm
19:08:19raptordo we need tags?: CTF, HTF, BM, COR, etc?
19:08:24raptorspeaking of which
19:08:34raptorwhat is the proper acronym for Bitmatch?
19:08:46raptorI've seen BTB, BM, BIT
19:09:06bobdaduckBTB reminds me of "bitbash"
19:09:07kaenBM please
19:09:24raptoralso zone control? ZCT ZC
19:09:27bobdaduckZC
19:09:29kaenZC
19:09:37raptorok, so forums should probably reflect this?
19:09:43bobdaduck*shrug*
19:10:13kaenwhere it's not too much trouble
19:10:33kaenalso, we don't need gamemode tags because pleiades parses the game mode (and you can search by it)
19:11:28raptorok
19:12:18bobdaduckFavorites system?
19:13:31kaenit's on list
19:13:35bobdaduckaight
19:13:48kaenthough I don't see the benefits really
19:15:48raptori don't see the benefits either
19:16:17raptori think it's enough to be a database, instead of a social networking site
19:18:51bobdaduckBitfighter needs to become a social networking game
19:19:17bobdaduckWe just gotta replace facebook
19:19:22bobdaduckand BOOM! playerbase!
19:19:51bobdaduckFacebook won't be happy about that
19:19:56bobdaduckbut nothing a little money can't fix
19:20:08kaenfacebit
19:20:23bobdaduckfacefighter
19:20:28kaenbitfacer
19:20:36bobdaduckbitbook
19:21:13raptorbiteface
19:21:39bobdaduckour forums has a "friends" and "foes" system...
19:21:48bobdaduck......I have no idea what it actually does but still
19:23:00kaenso config.cpp is an atrocity
19:23:06raptorYUP!
19:23:18bobdaduckI disagree
19:23:22bobdaduckI think its just misunderstood.
19:23:32Watusimoto has joined
19:23:42kaenthat's what makes it an atrocity -- I can barely understand it
19:23:49bobdaduckrofl
19:24:17kaenWhy not just a 2D string hash?
19:24:43kaener, hashmap, or map, however you refer to that container
19:25:37raptorI think the basic structure has always been as it is
19:25:47raptorI've made improvements to the IniFile class
19:25:54kaenIniFile is awesome!
19:26:04raptorbut only ever added/removed to the config one
19:26:07raptoryeah!
19:26:40kaen(actually I implemented my change using only IniFile... I'm struggling to motivate myself to use config.cpp)
19:26:59raptorha
19:27:39raptorconfig is basically just the c++ mapping of the bitfighter.ini
19:28:19Watusimoto Quit (Ping timeout: 268 seconds)
19:28:26raptorusing IniFile as the interface to the file and piping into GameSettings for common settings to be used across INI, UI options, and command line
19:28:29raptor(I think)
19:29:13kaensounds right
19:29:30kaenwhere I can I stick a BaseURL option for the leveldb?
19:29:32kaentesting?
19:29:36kaenmaybe diagnostics?
19:30:05raptorMaybe just under [Settings]
19:30:21raptorit's where teh MasterServerAddressList is
19:31:00kaenok
19:37:38kaenwow. I have to make a read line, write line, data member and getter (at least)
19:37:53kaenone line turned into almost a dozen
19:38:39raptorheh, yep
19:38:56raptorabstraction... to infinity.. and beyond!
19:40:42kaenobstruction*
19:40:44kaen:)
19:40:53bobdaduckRequest for lua API: Ship:setHealth(), ship:isFiring(), ship:setAngle()
19:41:08bobdaduckAlso ship:zapDance()
19:42:06raptorsetHealth does not work?
19:42:10bobdaduckthough that last one admittedly is not a priority
19:42:13bobdaduckI haven't tried it
19:42:16bobdaduckbut in the luadocs
19:42:25bobdaducksetHealth() is not documented as part of ship or its parents
19:43:32bobdaduckAnd personally I say we should make robots a parent of ship instead of the other way around.
19:44:36kaenI not sure you understand inheritance or its implications
19:45:01kaenis there some method you want on ship that is only in robot?
19:45:09bobdaduckI want all robot methods to be on ship
19:45:26raptoruhh
19:45:28raptorlike what?
19:45:35bobdaducksetWeapon()
19:45:39bobdaducksetReqLoadout
19:45:42bobdaducksetCurrLoadout
19:45:49bobdaduckengineerDeployObject
19:45:51bobdaduckdropItem
19:46:01bobdaduckfindObjects
19:46:05Watusimoto has joined
19:46:06raptorfindObject no
19:46:06bobdaduckfindGlobalObjects
19:46:10raptor^^ nope
19:46:16bobdaducklol
19:46:21raptorthose have been added to levelgen
19:46:31bobdaduckfire()
19:46:34kaenthe other ones let you basically control a player's ship
19:46:35raptorloadout stuff has been moved
19:46:39bobdaducksetThrust()
19:46:49kaenwhich is probably why they're on robot in the first place
19:47:03raptorbut i'm not sure I think it wise to let the level gen control so much about a players personal ship
19:47:03bobdaduckI want to be able to control a player's ship!
19:47:08bobdaduckxD
19:47:35Watusimotothen write a bot!
19:47:38kaenheh
19:47:52bobdaduckwhy would I want a bot
19:48:35bobdaduckbots can't control players ships!
19:49:58bobdaduckAlso it feels like there's not much use for different kinds of bots because we already have zapdancer and sbot
19:50:34kaens_bot is certainly not perfect
19:50:55bobdaduckYeah but any new bots would just be sbot 2.0
19:51:39bobdaduckI could be wrong about that. But the only other likelyhood I see is dungeons...
19:51:44kaenI disagree. If were to write a bot I would not use s_bot's logic.
19:52:13kaenIf I were*
19:52:45bobdaduckBut if you wrote a bot, it would do the exact same things as Sbot, wouldn't it?
19:52:56kaenno
19:53:05raptorI wrote a bot once
19:53:12kaenthe only similarity would be that they use the same api
19:53:19raptorTerrorBot/SentinelBot
19:54:03raptorbobdaduck: sent another level
19:54:13bobdaduckwoah
19:54:15bobdaduckslow down
19:54:17bobdaduckI can't keep up
19:54:24kaenI have kind of a closet fetish for AI. I'd like to write a DBI based bot
19:54:59kaens_bot is a glorified state machine
19:55:01raptorDBI?
19:55:07kaendesire/belief/intent
19:55:10raptoris that the perl database thinky
19:55:23raptorinteresting
19:55:40kaenor goal/constraint/action
19:55:56bobdaduckkaen wants to program a bot that modifies its own code dynamically to become superhuman. Superbot.
19:56:04raptori've never considered s_bot to be a true state maching, because it keeps reassessing itself after each tick
19:56:10raptor*machine
19:56:23raptorbitfighter will create the singularity
19:56:40kaenbot_bot: the botwriting bot
19:56:47bobdaduckrofl
19:57:40raptorwith io. anything is possible!
19:57:46kaenheh
19:57:55bobdaduckbot:addbot(bot)
19:58:34raptorkaen test is super jumpy
19:58:52Watusimotocreate a bot that spaws a new bitfighter client to play with
19:59:00Watusimotoio!
20:01:46Watusimotoargh... another 1/2 hour searching for a bug that isn't a bug
20:02:03kaenhm, top says all's well
20:02:20Watusimotowe need to get some testing going on here
20:02:21kaenmust be that good-ol VPS network pandemonium
20:02:40bobdaduckI can test
20:02:45bobdaduckbut what am I testing?
20:02:47Watusimotokaen: what is the future for your google testing framework code?
20:02:51kaenhe means programmatic testing
20:02:57Watusimotois it something that can work?
20:03:14kaenthat's the solution I'd recommend
20:03:22kaenand it works fine for me
20:03:27kaenjust not sure how it would work in vc++
20:03:28Watusimotobobdaduck: if I had an automated test in place, I could know in 10 seconds if things were behaving the way they should be
20:03:39Watusimotoyou compile with gcc?
20:03:42kaenyes
20:03:54kaenthrough cmake anyway
20:04:05Watusimotodo you have any specific reason to think it would not work with vc++?
20:04:10kaenthe build config is just normal bitfighter + the test files + the gtest lib
20:04:12kaennope
20:04:17kaenjust have no idea how to set it up
20:04:22Watusimotowell then... maybe I should give it a try
20:04:42Watusimotobecause I'd rather spend my time writing tests than running through them for the 20th time
20:04:55raptorkaen: i was just on with my brother + 8 bots on 'kompressor's gambit' every few seconds there was some lag
20:05:00raptorand i had like 50 ping
20:05:16Watusimotowhere can I find it?
20:05:37raptorok so not CPU..
20:05:45kaenhttps://code.google.com/p/googletest/wiki/Primer
20:06:01kaenthat's the docs. it says it has an msvc build file
20:06:28raptora test framework!?
20:06:34raptordoes that mean we're maturing as a project??
20:06:39kaenit's so awesome. wait until you try it :)
20:07:11kaennothing build confidence better than a screen full of green terminal output
20:07:27bobdaduckrofl
20:08:34Watusimotodid you write anything specific for bitfighter?
20:08:44Watusimotoor should I just start from the beginning?
20:09:07raptorhe has written some stuff I think
20:09:12raptor vaguely remembers a screenshot
20:09:47BFLogBot Commit: 0c7e5626cd28 | Author: watusimoto | Message: Comments
20:09:49BFLogBot Commit: 69456b4df275 | Author: watusimoto | Message: Two-for-one: Fixes loadout bugs, adds new HelpItem functionality (can highlight only team items, can remove items queued for display if player demonstrates competentcy)
20:09:50BFLogBot Commit: be2914be3aec | Author: watusimoto | Message: Merge
20:09:53Watusimotoraptor: anything new in clipper that would be useful?
20:10:00Watusimotoor did you upgrade to stay current?
20:10:08kaenI just wrote a (broken) lua wrapper test
20:10:16Watusimotook
20:10:20WatusimotoI'll start fresh then
20:10:54kaenbasically, import the folder, add it to a new build target (with the rest of bitfighter and your test .cpp files), include the gtest header in test files, run the new target
20:11:12kaenif link against gtest_main or whatever it'll spit out an executable that autoruns your tests
20:11:16kaendone.
20:12:12kaentook me like ten minutes to set it up last time
20:12:37raptorWatusimoto: partly stay current, but also to play with the new PolyTree structure which outputs polygons in a hierarchy
20:13:18Watusimotohiearchy: like which poly is inside which other poly?
20:13:22raptorWatusimoto: yes
20:13:29kaenwhoa, that's useful
20:13:33Watusimotothat could make dealing with poly2tri's limitations much easier
20:14:07raptor:)
20:16:41raptorthe author of poly2tri wrote more on my issue here: https://code.google.com/p/poly2tri/issues/detail?id=74
20:19:09raptori got another 3% speed!
20:21:57raptorwhile->for->for->for
20:23:34kaenon a related note, Go's break statement accepts labels so you can break to any exterior loop
20:23:48raptoryay like java!
20:23:58kaenI didn't know java did too :x
20:26:32raptorman, 4 loops and I keep going infinite
20:26:40raptortime to be smart, i guess
20:30:45Watusimotohmmm... it must be bedtime. my son asked me to explain A*
20:31:12Watusimotohe knows if he gets me talking 1) he'll stay up later and 2) my wife will yell at me. double win!
20:31:19raptorhaha
20:31:32bobdaducklol
20:34:04Watusimotogood job on the optimiazation!
20:34:24kaenthat reminds me: I'm going to profile 019 against 018a on my system
20:34:39kaen018a runs well below the framerate cap, 019 runs perfectly smooth
20:34:46raptorreally??
20:34:47kaenyeah
20:34:51kaenI think it's the font rendering
20:34:55raptorthat's promising..
20:35:11kaenI have a wussy gpu and those raw gl calls add up..
20:38:23raptorrecast is what really slows us down now...
20:38:29raptor(with zone generation)
20:39:34kaenrecast is only called once, isn't it?
20:39:40raptoryeah, at start of level
20:39:44kaenoh okay
20:39:46raptor(sorry, change topics a bit)
20:39:50kaengotcha
20:51:17kaenlol there's someone in #nethack with the nick BilldaCat
20:51:23kaenbob, you and him should hang out some time
20:51:27raptorhahaha
20:52:06bobdaduckrofl
20:52:45bobdaduck joins #nethack
20:59:07kaenbobdaduck what have you done: http://bitfighter.org/forums/viewtopic.php?f=9&t=1941
20:59:20bobdaduckI bribed
20:59:29bobdaduckuh
20:59:33bobdaduckerm
20:59:35bobdaduckI ADMIT NOTHING
21:02:45raptorwhat on earth
21:02:57raptoris that what that photo was for? I don't even get the connection...
21:03:28bobdaduckxD
21:28:12kaenhmm. it's time to get serious. I think I'm going to add caching to pleiades today
21:28:21raptorNOOOooooo
21:28:30kaensuicidal, I know
21:28:35raptorplease no
21:28:38raptorplease please please
21:28:54kaenand it's quite likely that I'll be driven mad from what I'll experience
21:28:57raptorunless of course you need to teach yourself about caching
21:29:13kaenwell, I've never done it before
21:29:29bobdaduckrofl
21:29:31bobdaduckwhy caching?
21:29:39raptorok - are you talking about 1st or 2nd level data caching?
21:29:44kaenbecause pleiades is slooooooow on bitfighter.org
21:29:57kaenheh, I don't even know enough to know the difference
21:30:12kaenbut I'm talking about caching generated portions of the view server-side
21:30:16kaenideally with APC
21:30:28raptorah ok
21:30:30raptor1st level
21:30:33raptorthat's not so bad
21:30:38kaenwhat's 2nd level?
21:30:38raptorI give you my blessing
21:30:41raptoruhh
21:30:54raptor2nd level is where you cache across multiple servers
21:31:03kaenoh haha
21:31:11raptorand its... uhh... I'm never touching it again
21:31:56kaenhmm... all of the fun of caching, plus the fun of network conditions and multiple agents
21:32:27raptoryeah - it's so horrid, that unless you're Google or Facebook, and are serving millions of people, don't do it
21:33:07kaenyeah, I imagine you'd need to have a lot of machines to make a time profit over the network stuff
21:34:04kaenanyway, with your blessing I begin my pilgrimage
21:34:15raptorcool
21:38:03koda has joined
21:46:49raptorkaen: there were two php solutions, if I remember correctly
21:46:56raptormemcache was one
21:47:04raptorcan't remember the name of the other
21:47:41raptorand by 'two solutions' I mean two that could handle the speed and traffic of a medium sized company with the 1st level data cache
21:48:18WatusimotoI have a test running!
21:48:24raptor!!
21:48:26Watusimotoand indeed 1 does equal 1!
21:48:34Watusimotomy computer works!
21:48:43Watusimotowell... it's a start
21:52:09Watusimotonow I have a test that uses a point
21:54:13kaenawesome!
21:54:24kaenI'm so pumped to have a test framework in bitfighter
21:57:07bobdaduckxD
22:03:30raptorback later!
22:03:33raptor Quit ()
22:16:37WatusimotoI hate vc++
22:28:13bobdaduck Quit (Remote host closed the connection)
22:58:55Watusimotofinally
22:59:09Watusimotolinker errors are the product of satan
22:59:20Watusimotodesigned to test the purity of man
23:20:58BFLogBot Commit: db9b04cb56b6 | Author: watusimoto | Message: Check in testing framework for VC++; not at all sure I got everything. Tried to only include essentials.
23:30:37koda Quit (Ping timeout: 252 seconds)
23:49:07raptor has joined
23:49:09ChanServ sets mode +o raptor
23:51:17koda has joined

Index Search ←Prev date Next date→

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