#bitfighter IRC Log

Index Search ←Prev date Next date→

IRC Log for 2013-08-07

Timestamps are in GMT/BST.

00:07:49bobdaduck Quit (Remote host closed the connection)
00:16:50raptorgood night!
00:16:53raptor Quit ()
01:49:30watusimoto has joined
01:49:30ChanServ sets mode +o
03:08:18LordDVG has joined
03:45:27Flynnn Quit (Quit: Leaving)
04:06:19LordDVG Quit (Ping timeout: 246 seconds)
04:41:59LordDVG has joined
06:07:44Wuzzy has joined
06:09:13LordDVG Quit (Remote host closed the connection)
06:43:22Nothing_Much has joined
06:43:22Nothing_Much Quit (Changing host)
06:43:22Nothing_Much has joined
07:19:08YoshiSmb has joined
07:36:28kaenmorning all
07:37:07kaenwatusimoto, how attached are you to the way our lua doxygen comments are aligned?
07:38:21kaenbecause I'm going to have to reformat nearly all of them, so if I don't have to align them I'd rather not
07:47:04raptor has joined
07:47:04ChanServ sets mode +o
08:24:45YoshiSmb Quit (Ping timeout: 250 seconds)
08:53:19raptor Quit ()
09:39:02Nothing_Much Quit (Quit: bye)
09:39:18Nothing_Much has joined
09:43:01Wuzzy Quit (Read error: Connection reset by peer)
09:44:08bobdaduck has joined
09:57:51raptor has joined
09:57:51ChanServ sets mode +o
09:57:56raptorbuenos!
09:58:36bobdaduckbueanso
10:03:19raptorwatusimoto: is your Settings work essentially to remove all the private members of IniSettings and just grab them directly from the INI?
10:03:59watusimotothe intent is this: I recently added a setting and I needed to put entries in 4 or 5 different places just to get it set up
10:04:09raptoryes
10:04:12watusimotothe eventual idea is that you only need to add it in one place
10:04:17raptorok
10:04:26watusimotoloading and saving and intializing will all be automatic
10:04:33watusimotodeclare it and you are ready to use it
10:04:37raptorok
10:04:39raptorsounds good
10:05:03watusimotomy current intent is to get this working for the Settings section, then I may let the rest go until after 019 is out
10:05:14raptorOK
10:05:23watusimotothis ties into a time constraint I have that I should mention
10:05:33watusimotoI will be in the US for a little over a week
10:05:40watusimotostarting on Friday
10:05:43raptorOK
10:05:52watusimotoduring that time I will probably not have access to a machine I can code on
10:06:03watusimotothough I will be available at least sometimes online
10:06:08raptorwell.. kaen and I will try our best to fix the template issues outside of vc++... :)
10:06:29watusimotoif I want to work on Bitfighter, I will probably do non-code tasks, such as cleaning up the lua docs, website work, etc.
10:06:34raptoroooo
10:06:36raptorexcellent
10:06:38watusimotowhich has been neglected my me for a while anyway
10:06:51raptorthe poor main page of bitfighter.org..
10:07:10raptorthere's this ugly gray bar that is supposed to be the high scores?
10:07:10watusimotoand so I am trying to work on projects now that can be wrapped up tonight and tomorrow night
10:07:21watusimotowhile still leaving me time to pack, clean, otherwise preapre for my trip
10:08:01watusimotosettings seem(ed) like a good place to focus, except that compilation is such a pain because my templating skillz are not up to date
10:08:22watusimotoit almost makes me wish I had gone the xmacro route...
10:08:52raptorwhile searching for how to fix those template errors last night, I ran across one SO post that just said to forget templates and write overloaded methods
10:09:09watusimotothat can't always work
10:09:14watusimotothat's where I started
10:09:14raptoryeah
10:09:20raptori mean, i agree
10:09:23watusimotobut you need to be able to return different types
10:09:32watusimotoT getVal()
10:09:39watusimotocan't do that with an overload
10:09:48watusimotosetval(T val)
10:09:50watusimotothat you can
10:11:00raptorthis is an interesting read on how to overload return values: http://stackoverflow.com/questions/226144/overload-a-c-function-according-to-the-return-value
10:11:13raptorusing operator trickery
10:11:33watusimotowe have a similar problem with MenuItems... some return a string, others an int. I did that without templates, and I've always considered my solution functional but ugly and clumsy
10:11:53raptortemplates sometimes look so ugly and clumsy, though...
10:11:55watusimotoI've read that post
10:11:58watusimotorecetnly
10:12:19watusimotoI;m starting to like templates, despite the pain they cause me
10:12:44raptorso how does templating with specializations reduce code more than overloading?
10:12:55watusimotoah yes, overloading the cast operator
10:13:06watusimotoI tried that for an evening, and couldn't get it to work properly
10:13:13raptorah
10:13:25watusimotoit did work in some cases, but I couldn't structure the code quite right to get it to work in the case where I needed it
10:14:41watusimotoIt shaped my answer to my question here:
10:14:41watusimotohttp://stackoverflow.com/questions/17994833/templates-inheritance-and-virtual-methods-c
10:14:46watusimoto(you may have seen this)
10:15:31watusimotoone problem was I find this somewhat confusing:
10:15:32watusimotoint shipYear = *settings.getSetting("shipYear");
10:15:37watusimotowhy that *?
10:15:59watusimotobut you needed it because otherwise you are casting from a pointer which doesn't work
10:16:38raptorinteresting
10:17:20watusimotokaen spent some time with me working through the issue
10:18:58raptorok
10:19:16raptoraww man, OSX is broken too...
10:19:42watusimotolet me do a little more work on it before you worry about osx
10:19:52watusimotoI need to change some of your fixes from last night
10:19:57raptorok
10:20:23raptorwhat i didn't understand (if you say my commit message) was if i removed the specializations in config.h the game would still compile
10:20:27raptor*saw
10:20:44watusimotoI'm really not sure about that
10:20:50raptorfull recompile worked
10:21:42raptormy only theory is that maybe the linker passed because the definitions in config.cpp were ordered early on
10:26:59raptorerror: 'const class std::map<std::string, TNL::S32, std::less<std::string>, std::allocator<std::pair<const std::string, TNL::S32> > >' has no member named 'at'
10:27:29raptorconfig.h:257
10:27:35raptorthat's what fails to compile on OSX
10:29:13raptorha!
10:29:17raptorat() is c++11
10:29:18raptorno wonder
10:29:25raptorwe can't go there yet!
10:29:57bobdaduckum
10:30:04bobdaduckI think I'm teaching footloose how to make levelgens
10:30:22kaenwatusimoto, I have some questions about the luadocs
10:30:46watusimotook, better to hold it till I'm back on, as I am about to leave
10:30:56kaenok
10:31:06kaenI'll be around whenever you're back
10:31:18watusimotosuper
10:31:22watusimotoraptor: I'll replace the at
10:31:32raptoryay
10:34:19watusimotoback in a bit
10:39:03watusimoto Quit (Ping timeout: 264 seconds)
10:41:20bobdaduck[10:41:46 AM] bobdaduck: So, variables can have a bunch of different data types. They can be words, or numbers, or boxes, or whatever
10:41:20bobdaduck[10:41:57 AM] footie: or brownies.
10:41:20bobdaduck[10:41:59 AM] bobdaduck: or brownies, yeah
10:42:08raptorsounds legit
11:04:31Watusimoto has joined
11:04:55Nothing_Much Quit (Ping timeout: 246 seconds)
11:05:46Watusimotook, on for a while... procrastinating cleaning the apartment
11:10:38raptoris the replacement for at() just the [] operator?
11:11:16WatusimotoI don't actually know... yet
11:11:47Watusimotoah, I remmeber why I used at...
11:12:15Watusimotoit throws an exception if the key isn't found; the alternative does not, but rather adds an empty element at the key in question
11:12:43Watusimotonow.. what was the a;ternative?
11:13:02Watusimotoin any case, we know that the element exists because this is protected with an assert
11:14:12Watusimotomaybe find?
11:14:56raptorthis is the source to at() on my system: http://pastie.org/8215796
11:14:59raptor(cleaned up)
11:15:14Watusimotoah, [] is the alternative
11:15:19Watusimotobut [] adds an element
11:15:24Watusimotobut we don't care, in our case
11:16:01Watusimotoyou know... if you're creating a local variable in a short function, why would you call it __i?
11:16:05Watusimotowhy not just i?
11:16:13Watusimotoit makes the code... disturbing
11:16:35Nothing_Much has joined
11:16:35Nothing_Much Quit (Changing host)
11:16:35Nothing_Much has joined
11:16:52Watusimotoso yes, I'll replace the at with []
11:16:55raptordisturbing is an excellent word for it
11:17:00Watusimotoor you can if you want an immediate solution
11:17:14raptoryou can, it's fine
11:17:16WatusimotoI have some compile issues at the moment and won't be able to commit for a while
11:17:17Watusimotook
11:17:48raptorno problem
11:18:38raptorI've had the odd thought that there is one very odd man who maintains the GNU c++ standard libs, all alone in a small, dark room.... cackling
11:18:59raptorevery time I look at the source, that is..
11:23:17WatusimotoI think you nailed it
11:31:15Watusimotoraptor: what does this comment mean?
11:31:16Watusimoto-- Not even used?? ~raptor
11:31:31Watusimotonear the static string toString calls in config.cpp
11:31:40raptoroh
11:31:51raptorthose four functions below aren't used anywhere in the class
11:33:09raptorok, i lied
11:33:12raptorthey are used
11:33:20raptormy IDE was saying they weren't, though...
11:33:37Watusimoto:-)
11:33:49raptorforgot about that comment..
11:55:35Watusimotocomment is now gone
12:06:41Watusimotosee if this next push fixes mac compile
12:06:42BFLogBot Commit: 218f99d6b96e | Author: watusimoto | Message: Remove at() method, make initialization more generic with addition of getSection() method
12:06:49raptorok
12:07:15kaenWatusimoto, how do you feel about moving the "static" text out of the doxygen stuff and onto the wiki
12:07:23Watusimotohi kaen
12:07:25kaenso can have a more traditional API docs/Manual pair
12:07:26kaenhello
12:07:34kaenso we can*
12:07:53WatusimotoI'm not sure exactly what you mean, but probably yes
12:07:53raptorI like API, and I like docs
12:08:15Watusimotoor rather, I probably feel "yes"
12:08:33kaenI mean the stuff that was formerly on the "Bitfighter lua documentation" page
12:08:37kaenor something like that
12:08:50Watusimotoyou mean make doxygen a subsection of a larger docs site, and get rid of some of the docs from doxygen
12:09:09kaeneh, not necessarily make it part of another site
12:09:18Watusimotowell, part of the wiki?
12:09:21kaenyes
12:09:30Watusimotosure
12:09:47kaenok, I've actually already started but I wanted to make sure you were on board before going full steam
12:09:50Watusimotothe current doxygen-only structure has some shortcomings
12:10:05kaenspecifically that it's hard for users to contribute to
12:10:11raptorconvert everything to javadocs!
12:10:15Watusimotocan you show me what you've got yet? or is it too early?
12:10:19WatusimotoI hate javadocs
12:10:37Watusimotoit *could* be a bit better if someone wrote a stylesheet for it
12:10:47kaenI literally have only taken the original "static text" and put onto separate pages on the wiki
12:10:48Watusimotobut it jsut feels nasty
12:10:49raptori especially like the kind that just tell you the method signature..
12:11:17kaenand I added a "scripting" category to use as a portal for all scripting stuff
12:11:43Watusimotook, the users will only be able to edit the "conversational" part of the docs; the reference part will be only modifiable via altering the source
12:11:50Watusimoto?
12:11:51kaenexactly
12:11:55Watusimotowell, sure
12:12:01kaenso users can help write tuts and examples and how-to's
12:12:13Watusimotothat was alwasys the intention
12:12:18kaenperfect
12:12:35Watusimotothe only real difference here is where to draw the line between wiki and doxygen
12:12:53Watusimotoand teh stuff you are moving to the wiki is exactly the stuff that is an akward fit for doxygen
12:13:02Watusimotoso it sounds like a good move
12:13:02kaenyes, I feel that way
12:13:04kaenok cool
12:13:07kaenand finally
12:13:21kaenthe wiki is almost unreadable in my opinion for large bodies of text
12:13:29Watusimotouh oh
12:13:35WatusimotoI know where this conversation is going...
12:13:38kaencan we move it out of drupal and into a standard mediawiki instance?
12:13:44kaener
12:13:48kaenwhatever the CMS is
12:13:50Watusimotothe wiki is a standard mediawiki instance
12:13:59Watusimotoit's not in drupal
12:14:11kaendoes it just have a similar stylesheet?
12:14:14Watusimotoyes
12:14:18kaenah cool
12:14:25kaenmind if we restore the default one?
12:14:40Watusimotowell, this is a difficult question
12:14:46kaenI can see how it would be
12:14:55Watusimotothe wiki in general should, I think, match the rest of teh site
12:15:06Watusimotobut I also see your point about the docs being difficult to read
12:15:23raptormixed line endings!
12:15:36Watusimotoand in any case doxygen is using a completely different style
12:15:40Watusimotoraptor: which file?
12:15:48raptorseems like any one you touch..
12:16:12raptorin this case config.cpp (since I'm editing it)
12:16:23Watusimotokaen: so is it possible to have diffeernt styles for different sections of the wiki?
12:16:38Watusimotoraptor: I modified one in a different editor
12:16:40raptorI only catch it when upon commit, Xcode automatically converts the whole file to the same type so there are a lot more changed lines
12:16:45Watusimotolet me see which file that was
12:17:13Watusimotohmmm... that was config.h
12:17:19Watusimotoconfig.cpp was only modified in vc++
12:17:32Watusimotoand if that were chanigng line endings, it would be happening on every file
12:17:40raptoryep
12:17:46Watusimotois it?
12:18:07Watusimotobecause I have vc++ set to respect line endings, and I have hg set to fix line endings...
12:18:13Watusimotoso, are both failing?
12:18:28BFLogBot Commit: 58f7c814f05e | Author: buckyballreaction | Message: Fix compiling in OSX
12:18:58kaenam I missing something? OSX has been green for two builds now
12:19:14raptorok, i need a place to post a diff
12:19:37Watusimotoraptor: I'm setting vc++ to check for line endings when it loads, as well
12:19:41Watusimotonot sure if that will make a difference
12:19:48raptorWatusimoto: doing: dos2unix zap/*.cpp zap/*.h
12:19:59raptorand then 'hg diff' generates a 755K diff file
12:20:06Watusimotowhat?!?
12:20:22raptorso yeah... looks like any file you touch is changing line endings to DOS
12:20:28LordDVG has joined
12:20:51raptorkaen: compiling with gcc-4.0 on osx 10.4 i386 is what fails
12:20:56kaenoh :<
12:21:22raptornewer gcc as a non-standard at() method to help you out in case someone inadvertently uses the c++ standard
12:24:28kaenhippies.
12:25:23kaenWatusimoto, the only way I can think of is to have two separate wikis :P
12:25:38Watusimotook, the line endings were set to "preserve current" I changed it to "Unix". But it always reverts to "user current"
12:26:16raptorhahaha
12:26:39Watusimotobecause the wiki is part of the main tab set from the website, I think it should not turn from black to white on that tab
12:26:39raptorthat might be the 'express' part...
12:26:48Watusimotoraptor: but the current is LF
12:27:09raptorwell, we'll just have to see...
12:27:17raptorsam686 got his line endings to work somehow
12:27:25raptorhe didn't use the hg plugin though
12:27:34raptorbut he did use 2008 professional
12:28:25Watusimotolame
12:28:29Watusimotothis article: http://support.microsoft.com/kb/268901
12:28:42Watusimotosuggests altering your flow to run dos2unix after every save
12:28:48WatusimotoI mean.. wtf
12:28:58kaenhelpful!
12:29:06raptorthat's a rather long article...
12:29:18kaenanyway, since it loses the header, background, text styles, etc. Then I think it will be clear that it's a "different part" of the site so they might forgive the jump
12:29:27kaenI have to go, though. Back soon
12:29:31kaen< 1 hours
12:29:31Watusimotobye
12:29:38raptorbye
12:29:50Watusimotobut in any event, I have the line ending plugin for hg which should fix it. let me verify that config
12:30:04raptorWatusimoto: that is old article...
12:30:18raptorLast Review: July 13, 2004
12:31:23raptorthere's this freeware plugin: http://www.grebulon.com/software/stripem.php
12:31:57Watusimotooops
12:32:10raptordid you do it backwards?
12:32:22raptori would just not use the mercurial plugin..
12:32:34Watusimotoand yet... the save with unix endings seems a save-by-save option
12:32:59Watusimotoyou can't use addins in vc++ express, sadly
12:33:24raptor"File > Advanced Save Options", select Unix Line Endings.
12:33:30raptorthat's what you did, right?
12:33:41Watusimotoyes
12:33:46Watusimotoit's not a sticky option
12:33:50raptorwhat
12:33:58Watusimototry it -- set it then look again
12:34:11raptorwhy would that not be for all files...
12:34:35WatusimotoI always thought it was... maybe it is... yet your evidence refutes that
12:34:43WatusimotoI need to look at a file in a bin editor
12:34:45raptorit feels like microsoft create a product, then randomly cripple it
12:37:03Watusimotoit is free, after all
12:42:15WatusimotoI plead NOT GUILTY
12:42:25WatusimotoI modified a file with VC++
12:42:45WatusimotoI inserted an x as the first character, then hit enter (so the x appeared on a line by itself)
12:42:49WatusimotoI saved the file
12:42:57WatusimotoI looked at the file in a hex viewer:
12:43:08Watusimotofirst line:
12:43:09Watusimoto00000000: 780a 2f2f 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d :x.//--------------------
12:43:14Watusimotothe 78 is the x
12:43:18Watusimotothe 0a is a LF
12:43:26Watusimotothe 2f is a /
12:43:26raptor0a ok
12:43:35Watusimotothere is no CR there
12:44:00Watusimotonow, let me check that file in, and you can see if it has any crs in it after it's made it into hg
12:44:08fordcars has joined
12:44:12raptorok
12:45:40Watusimotowhat is CR in hex?
12:45:41Watusimoto0c?
12:45:47Watusimoto0d
12:45:48Watusimoto?
12:46:12Watusimoto0d
12:46:34Watusimotook, have verified the file I just committed has no x0ds in it anywhwere
12:46:34raptorAToBScroller.h has them
12:47:28BFLogBot Commit: c8e664d37ebe | Author: watusimoto | Message: Test for line ending issue
12:47:30BFLogBot Commit: b5294ab5773d | Author: watusimoto | Message: Merge
12:47:53Watusimotosorry I mssed all those ats!
12:47:54raptorwhat line did you edit?
12:48:10Watusimotoin the committed version, I inserted a space immediately following the comment block
12:48:43Watusimotowhoa
12:48:48Watusimotoline 25
12:49:03WatusimotoI told you I activated a setting in VC++ to alert me of inconsistent line endings on load
12:49:09Watusimotowell... it just triggered
12:49:15Watusimotoon the file I just edited
12:49:35Watusimototelling me I have mixed line endings
12:49:40Watusimotowhere did they come from???
12:50:01Watusimoto... from the commit, I think
12:50:10raptorthat commit is good
12:50:14raptorjust 0a
12:50:20Watusimotomaybe hg is forcing the line endings to crs somehow
12:50:36raptor0d 0a is what we don't want
12:50:54Watusimotovc++ will let me use the unicode line separator as a line ending. should I go with it? :-)
12:50:59Watusimotojust to mix things up a bit?
12:51:18raptorha
12:51:20raptoryes
12:51:30raptorwait 'unicode' ?
12:51:33raptorif you have teh mercurial line ending plugin, i'd disable it...
12:51:45Watusimotomaybe that's the problem
12:51:48raptorthat test commit is good
12:51:50Watusimotowill try that next
12:52:00Watusimotobut the merge is where the line endings came from
12:52:03WatusimotoI think
12:52:10raptorwait wait..
12:53:15raptornope
12:53:18raptorthe merge was good, too
12:53:19Watusimotomodifying the file in my text editor does not change the endings
12:53:25Watusimotoyes, but not on my end
12:53:34raptorwhat!?
12:53:43raptorhow does that even happen??
12:53:47Watusimotoafter the merge, vc++ said "files changed, want to reload"
12:53:52Watusimotoso I did
12:54:10Watusimototwo files reloaded (one was settings.cpp, not sure what the other was, because I was confused and ddn't look)
12:54:35Watusimotowhen they loaded, vc++ said "hey, mixed line endings. want to convert to cr/lf?"
12:54:47raptoroh
12:54:56Watusimotobut there were two files involved in the commit
12:55:05raptorthe merge brought in my unix line endings from changing config.cpp
12:55:09raptorthat's why it reloaded
12:55:14Watusimotosorry, not settings.cpp, config.cpp
12:55:19raptorha
12:55:28Watusimotothe two files were config.cpp and energyguagerenderer.cpp
12:55:34raptoryes
12:55:46Watusimotoand config.cpp got mixed line endings somehow
12:55:51Watusimotothough I did not edit it at all
12:55:55raptori did!
12:56:02raptorthe merge brought in my at() changes
12:56:05Watusimotocould you have inserted the crs?
12:56:09raptorwhich now had unix line endings
12:56:11raptorno
12:56:24Watusimotook, so you commiteed, I merged, and I ended up with crs
12:56:33raptoryeah, well, then that's your editor
12:56:39Watusimotono
12:56:41raptorbecause i still have unix endings
12:56:42WatusimotoI didn't edit
12:56:44raptorafter merge
12:56:48Watusimotohg did the merge
12:56:57raptoryes
12:56:57Watusimotoand the crs were detected when the file loaded into vc++
12:57:10raptorand what you pushed in the merge had unix endings
12:57:12Watusimotoso I think hg inserted the crs
12:57:17Watusimotoyes
12:57:25raptornot on my end, nor on google's end
12:57:38Watusimotohg is the only thing that touched settings.cpp after it arrived on my machine
12:57:51raptorwelll
12:58:06raptorare you ruling out vc++ didn't just do the conversion for you without asking?
12:58:31Watusimotoit detected the anomolay when it tried to reload when it detected the file change
12:58:38Watusimotoso it detected before it had the file loaded
12:58:49Watusimotoit couldn't have made the change
12:59:38Watusimotoso perhaps it is the eol extension in mercurial
12:59:47WatusimotoI'm going to disable it and we'll see if it improves things
12:59:57Watusimotothat, in combination with the new detection regime should fix it
13:00:14Watusimotobecause we know that I can write in vc++, and commit without introducing crs
13:00:33Watusimotoit's only merging that messed things up (in this case, at least)
13:00:41Watusimotolet's try a test
13:00:49Watusimotocommit a modification to config.cpp
13:01:05Watusimotoand lets see if it happens again
13:02:19Watusimotowait... my copy has crs in it
13:02:52raptorhg revert -a
13:04:59raptoryou say 'it couldn't have made the change' like it is gospel truth
13:05:11Watusimotothere is another possibility
13:05:31Watusimotoit is the gospel truth... because the endings were detected on loading
13:05:39Watusimotobut I'm going to prove it
13:05:49raptorfound the culprit?
13:05:56WatusimotoI modified settings.cpp in my text editor to have NO CRs
13:05:59Watusimotoverified it in hex mode
13:06:08Watusimotoreloaded it into vc++
13:06:16Watusimotowill modify, change, and retest
13:06:29raptorok
13:06:33Watusimotosorry, modify, save, and reexamine with hex editor
13:07:00Watusimotothen if you modify settings.cpp, I can merget that in and we can see if any crs are introduced
13:07:10raptorok
13:08:04Watusimotook, modified file in vc++, saved it, examined in hex editor. no CRs
13:08:13raptormodify how?
13:08:19Watusimotoinserted a space
13:08:21Watusimotolet me insert a newline
13:08:23Watusimotoand retest
13:09:24Watusimotook inserted a couple of blank lines, deleted some others
13:09:27Watusimotostill no CRs
13:09:46Watusimotodoes that test satisfy you (for the moment at least?)
13:09:56raptorok
13:09:58raptoryes
13:09:58BFLogBot Commit: 2014cc25a6e6 | Author: buckyballreaction | Message: Test for messed up newlines
13:10:04raptorwhen you merge that commit it ^^
13:10:07Watusimotoso what di dyo change here?
13:10:19raptorI added 3 lines of comments all with unix line endings
13:10:51raptorso when you merge in, test in a hex editor before and after every vc++ step
13:10:51WatusimotoI just committed my changes; haven't merged, will reexamine
13:11:06raptoryeah look at the commit before merge..
13:11:08Watusimotoyes
13:11:22Watusimotovc++ detected no changes (unsurprising)
13:11:22raptor(remember to reload teh file)
13:11:49Watusimotono crs
13:12:00WatusimotoI close and reopen the file in the hex editor every time
13:12:05raptoroh excellent
13:12:07Watusimotook
13:12:09Watusimotomerging
13:12:40Watusimotohg says this:
13:12:40Watusimotocalling hook preupdate.eol: <function preupdate at 0x000000000294E6D8>
13:12:46Watusimotovc++ wants to reload
13:12:56Watusimotono warning about mixed line endings
13:13:30Watusimotono crs in hex editor
13:13:37Watusimotook
13:13:43Watusimotoso that's all good
13:13:48WatusimotoI think I know what happened before
13:14:01WatusimotoI think config.cpp had other crs in it (I know it did, actually)
13:14:13Watusimotoand those probably triggered the mixed line ending warning
13:14:34Watusimotoso I am pretty confident that the crs aren't coming from my install of vc++
13:14:49Watusimotohowever, with this new warning on load, I'll keep an eye out for when they appear
13:14:55Watusimotoand see if I can track it down
13:15:10WatusimotoI understand why you suspect me as the culprit -- and I do share your suspicions
13:15:35Watusimotoso I will try to make some more careful observations and see what I can see
13:15:38raptoryou are the culprit in commits past
13:15:53WatusimotoI don't deny it -- I just don't understand it
13:16:09Watusimotowatchful waiting
13:16:20raptorI think what was happening was either:
13:16:50kaenone lashing per 0x0D byte found!
13:16:59raptor1. vc++ would save CRs for just the lines you edited in a class (eclipse does this, but for unix line endings)
13:17:19raptor2. the hg plugin wasn't configured correctly
13:18:12raptorxcode on the other hand will convert the entire file upon save, instead of just modifying the lines
13:18:27raptorwhich is how i noticed this problem again..
13:19:34Watusimotothe hg plugin has no configuation options as far as I can see
13:19:55raptoryou removed it?
13:19:58Watusimotowell, either on or off
13:19:59Watusimotono
13:20:08Watusimotowant me to?
13:20:52raptoryes
13:21:21Watusimotook
13:21:26raptorI think it is an unknown element that should be avoided
13:21:34raptorkaen: 10104 lashings!
13:21:37Watusimotowait a minute... one more test
13:21:46WatusimotoI never committed the merge changes
13:22:04Watusimotook, vc++ says nothing changed after doing so
13:22:31Watusimotoand hex editor agrees
13:22:54Watusimotoeol disabled
13:23:49raptornow let's hope that didn't change anything...
13:23:54raptorin the current state
13:38:21LordDVG Quit (Remote host closed the connection)
13:47:32Watusimotointeresting article, especially as I am traveling internationally soon:
13:47:33Watusimotohttp://www.economist.com/blogs/democracyinamerica/2013/08/travel-warnings-and-embassy-closures
13:52:55raptori've started to find that 'the economist' has decent int'l news
13:54:20fordcars Quit (Quit: Page closed)
13:56:57Watusimotothey are quite good
13:57:26Watusimotoa bit on the libertarian side, which I don't mind, and a bit on the conservative side, which I don't always agree with, but (almost) always well reported
13:58:04raptorI haven't read much from them yet, just a few articles in the last couple months or so
13:58:15raptorbut I felt it was well reported, too
13:58:34Watusimotoget a copy of their print mag, and be selective about what you read, or you'll never finish it
13:58:42raptorhaha, it's big?
13:58:47Watusimotodense
13:59:00raptorah
13:59:02raptorgood
13:59:10Watusimotoand definitely get a copy of their special christmas edition -- it's a two-week version with lots of very interesting articles
13:59:11raptordense as opposed to fluff?
13:59:15Watusimotoit's always great
13:59:20Watusimotoyes
13:59:23Watusimotolots of words
13:59:31raptorhigher than a 7th grade reading level?
13:59:39Watusimotoevery issue has at least one new word that's great
13:59:41thread_ has joined
13:59:45Watusimotoit's where I learned quango
13:59:51raptoror maybe america's average is 6th grade now?
13:59:56thread_Hey guys! I finally have interwebs asgain
13:59:58raptorha, ok
14:00:21Watusimotoand quisling
14:00:25Watusimotohey!
14:01:15raptorare they based in the UK?
14:01:24Watusimoto(from wikipedia)
14:01:25WatusimotoDuring World War II, the word quisling became synonymous with traitor.[153] The term was coined by the British newspaper The Times in its lead of 15 April 1940, titled "Quislings everywhere." The editorial asserted
14:01:25WatusimotoTo writers, the word Quisling is a gift from the gods. If they had been ordered to invent a new word for traitor ... they could hardly have hit upon a more brilliant combination of letters. Aurally it contrives to suggest something at once slippery and tortuous.[154]
14:01:25WatusimotoThe noun has survived and for a while during and after World War II, the back-formed verb to quisle /ˈkwɪzəl/ was used. One who was quisling was in the act of committing treason.[155]
14:01:27raptorhard to tell from the site...
14:01:38Watusimotothey are uk based, yes
14:02:01raptorhaha, awesome
14:02:04raptora word in the making..
14:02:44Watusimotothe problem with the economist is that if you start reading it, it becomes addictive, and tends to crowd out other activities
14:02:50WatusimotoI usually buy a copy when I fly
14:02:56raptorhmm...
14:03:01kaenI love the economist
14:03:01raptorI think i'll keep that in mind
14:03:16Watusimotothe key is to skip any articles you can
14:03:24raptorhehe
14:05:39raptorwow, i like that last line of the article
14:05:53raptorlast 2 lines
14:06:26kaenit's like that all the time, to
14:06:28kaentoo
14:06:42raptorwell great!
14:07:06Watusimotowell... I'm not canceling my trip
14:07:07raptorI've been getting sick of the BBC, and i've been sick of all US news groups for a while now...
14:08:04kaenI went into a little bit of a news kick last year and felt the same way
14:08:19kaenI also really like the Guardian
14:08:33raptormaybe i'm starting to recognize BBC's bias a bit more
14:08:34kaenmaybe I'm actually British and didn't know it
14:08:37raptorhaha
14:09:18raptorone funny thing I noticed is that every article that has to do with France seems to try its utmost to show how messed up they are
14:12:28kaenI did A-F in like an hour
14:12:31kaenThen I hit GameInfo
14:12:41raptoroh no!
14:12:44kaenliterally every function is missing docs x_x
14:18:01raptorWatusimoto: I'm actually curious what you would define 'conservative' (poitically? culturally?) - I'm not sure I even know what I think I would consider 'conservative' nowadays. 'libertarian' seems much more straight forward
14:19:17kaenThat's a cogent point. The group that used to be categorically referred to as "conservatives" has fragmented pretty severely in the last few years
14:19:39thread_ Quit (Ping timeout: 250 seconds)
14:19:41Watusimotoconservative has a couple of aspects to it
14:19:50raptorjust curious - because when people ask me if i'm 'a liberal' or 'a conservative', i usually just responde with 'both and neither' because those terms don't seem like good gropuings of anything to me...
14:19:51kaenin addition to the general liberal drift of american culture
14:20:03Watusimotocontrol of people's behavior (gays, for example)
14:20:29raptorok, i can see that in the current conservative stream
14:20:30Watusimotoauthoroitarian bent
14:20:43raptorinteresting that one
14:20:45Watusimotorejection of science
14:20:49raptorand that one
14:20:57Watusimotousually religious overtones
14:21:01Watusimoto(though not always)
14:21:16Watusimoto(usually) militaristic
14:21:31Watusimotonone of those are libertarian traits
14:21:41Watusimotoyet, for some reason, libertarians ally with conservatives
14:21:49raptorso my dad is a full 40 years older than me, and he instilled completely different ideas of what 'conservative' means
14:22:01raptori would say he probably taught more libertarian
14:22:03Watusimotoindividual freedom is shared by the conventional left and libertarians
14:22:53Watusimoto(except rand paul, who isn't really libertarian in my book, as he rejects gay marriage and, I think, abortion)
14:23:06Watusimotosorry
14:23:09Watusimotoron paul
14:23:17WatusimotoI don't know where rand stands on those issues
14:23:52Watusimotoso on a lot of issues libartarians are a better fit with liberals
14:24:21Watusimotoand you see a tiny bit of alliance over the nsa issues
14:24:37raptoryeah, my idea of 'conservative' is waaay different than what you describe, but I guess I see your description pretty acurate nowadays
14:24:51Watusimotowhat do you think of it as?
14:24:56kaenmuddy.
14:25:39bobdaduckWell, here in Utah, there are "conservatives" and then there are "utah conservatives"
14:25:48kaenthe definition you provided misses the group that refers to themselves as "progressive republicans" who have a more liberal view of social issues but are still conservative economically and militarily
14:26:17bobdaduckI dunno kaen, at that point you have so many sub-groupings of political axis that everything starts to lose meaning
14:26:24raptorgrowing up i thought of it as 'live and let live, work hard, save, be nice to your neighbor'
14:26:34BFLogBot Commit: e8b537dc6314 | Author: watusimoto | Message: Line endings, test
14:26:35kaen> so many sub-groupings of political axis that everything starts to lose meaning
14:26:35BFLogBot Commit: a1c818bb7f0f | Author: watusimoto | Message: Merge
14:26:37BFLogBot Commit: 3fd4c5eb32a4 | Author: watusimoto | Message: Some unit tests
14:26:38kaenand here we are.
14:26:38BFLogBot Commit: 8b5b5803934c | Author: watusimoto | Message: More tests, make No == 0 for correct boolean conversion
14:27:10WatusimotoI missed progressive republicans because there aren't any anymore... at least not at the national level
14:27:11raptorbut now that i think about it, he never really did align with any adjective
14:27:47raptorin fact, he taught that to align with one of the 'big adjective' groups is to lose a bit of your own free will in thinking
14:27:52Watusimoto'live and let live, work hard, save, be nice to your neighbor' << those sound like liberal values to me
14:28:07raptorbut he was a registered republican
14:28:14raptormight be independent now..
14:28:35kaenraptor, that was a very good thing to have taught
14:28:36kaenimo
14:28:51Watusimotoof course -- who can argue with any of that?
14:29:19raptoranyways... i didn't mean to dive into politics too much - I was just curious
14:29:23Watusimotothose values, in any event, are not at all represented by the modern republican party
14:29:38raptori think i agree with that
14:29:43Watusimotonot to say that there aren't plenty of people who vote republican who agree with those values
14:29:59Watusimotoit's just none of them get elected to political office, at least in the areas I know
14:30:22kaenwork hard and save are definitely core republican values. I can't disagree with the first and last though.
14:30:37Watusimotowho is opposed to working hard and saving?
14:30:41kaenindeed.
14:30:43raptoruhh...
14:30:56WatusimotoI mean what political group?
14:30:59raptorah
14:31:19Watusimotowho wants to give bigger subsidies to farmers?
14:31:37Watusimototo me that represents neither working hard nor saving, at least at the government level
14:31:38raptori was going to make a comment about experiences growing up in and around inner cities but I refrain
14:31:45kaenI don't think "live and let live" is truly embraced by any large party either. nearly all want to regulate something.
14:31:54raptorman... farmers
14:31:56raptorone summer
14:32:09raptorI weeded a 20 acre mint field with my brothers for this one farmer
14:32:13Watusimotodeomcrats tend to want to regulate environmental issues and guns
14:32:26raptorhe didn't want to hire the local illegals, but local white boys
14:32:31Watusimotobut not who to marry or what you can smoke
14:32:55raptorand i remember after one work day I had to return some tools
14:33:02Watusimotoweeding is terrible work
14:33:21raptorwalking inside and finding the farmer and his twin daughter just staring at a wall, saying nothing, not moving an inch
14:33:23kaenlet's not forget economic regulations. especially protectionism and union laws.
14:33:34raptor*daughters
14:33:53raptorme walking in after long day was the biggest event of their work day...
14:33:57Watusimoto(guns is an area of honest disagreement between liberals and libertarians, but I attribute that more to a rural-urban divide than anything else... guns in cities cause problems; guns in rural areas much less so)
14:34:00raptorso yeah... farmers
14:34:41Watusimotounions are an interesting case
14:34:47kaenagreed.
14:34:51Watusimotodefinitely associated with the left
14:34:59Watusimotohistorically very far left
14:35:03Watusimotoin some ways
14:35:23raptorgo detroit!
14:35:29Watusimotobut also representing freedom of association and freedom of bargaining for your wage, somewhat libertarian values
14:35:33raptorsorry - that was my last political comment...
14:35:38Watusimoto:-)
14:36:03Watusimotoah, one other aspect of conservatives: supportive of corporations
14:36:31Watusimotolibertarinas probably even more so (if not directly, that at least as a consequence of other beliefs)
14:36:37Watusimotothe left, not at all
14:37:58Watusimotohey, maybe the farmers were tired
14:38:09raptorthey had shade!
14:38:15Watusimoto:-)
14:39:00LordDVG has joined
14:39:06raptormy brother and I had this old cassette player that would play the output of decoded mp3s over an analog cable
14:39:18raptorthis was when napster was first starting...
14:39:48raptorand that was our music player for the weeding
14:40:10raptorgood thing about the job: you didn't smell so bad at the end of the day
14:40:30kaen"@luafunc num GameInfo::getGameTypeName()"
14:40:34kaen^ does that look right?
14:40:40WatusimotoI spent a summer pouring concrete in a hot greenhouse
14:40:44raptorno - string?
14:40:44Watusimotovery heavy stuff
14:40:52kaenI put it in the standard /** */ block, but it's not showing up in a doc
14:41:07kaenoh, yeah signature is incorrect, but is it malformed?
14:41:24raptori think it needs: * @luafunc
14:42:02Watusimotoarguably shouldn't need that
14:42:06kaenhere it is verbatim: http://pastie.org/8216429
14:42:18kaennot required with normal doxygen commands, but I have it anyway
14:42:31kaen(copy/pasted)
14:42:32Watusimotoany weird whitespaces in there?
14:42:33raptorit might be a parser regex failure somewhere...
14:42:43raptorlike \s+ instead of \s*
14:43:02raptormaybe the alignment of the closing '*/'
14:43:04LordDVG Quit (Remote host closed the connection)
14:43:26Watusimotocause it looks right
14:44:02kaenas far as I can tell, there are none
14:44:08raptorit looks right, yes
14:44:09raptoroh
14:44:13kaenI'm using vim with whitespace displayed
14:44:15raptormaybe the class is missing something
14:44:23kaennope, class page shows up
14:44:28raptorlike the REGISTER_LUA_SUBCLASS(FlagItem, MountableItem);
14:44:33raptorok
14:44:42kaenin fact, getGameTypeName shows up on the LuaGameInfo page
14:44:51kaen(with all the other methods from the table)
14:45:15kaenoh!
14:45:23kaenhmm... nope
14:50:54kaenok. Time to dive into temp-doxygen then...
14:57:23raptorsorry, i ran out of ideas
14:57:49Watusimotoweird is all I can say
15:01:31bobdaduckuh
15:01:37bobdaduckSo good news and bad news
15:02:45bobdaduckGood news is footloose's levelgen is coming along nicely.
15:02:49bobdaduckBad news is, circles
15:02:54raptorNO CIRCLES
15:03:09raptoranother scripter on the (foot)loose!
15:03:13bobdaduckfootie: big mommy n daddy circles
15:03:13bobdaduckfootie: n little baby circles.
15:03:13bobdaduckfootie: CIRCLE FAMILIESSSSSSSSS
15:03:13bobdaduckfootie: ;D
15:03:13bobdaduckfootie: go bully raptor into adding them.
15:05:12bobdaduckShe doesn't quite understand the flow of programming and indentation
15:05:39raptorshe'll get it eventually (if she actually wants to learn)
15:05:44bobdaduckI'm not sure how really to explain that except for repetition
15:07:36kaentell her that programs have to be easy for humans to read. and then really the rest is repetition
15:08:26raptoryes. none of this: http://www.cpan.org/misc/japh
15:08:29kaenyou could talk about the logical structure of code and breaking it up into semantic components, but I think it might all just go back to brownies
15:08:40bobdaduckrofl
15:09:16kaenhow about this: http://www.ioccc.org/1988/westley.c
15:09:24raptoroh no, not the ccc
15:09:26kaen(prints pi by measuring the circle)
15:09:29raptoroccc
15:09:30bobdaduckrofl
15:09:33raptorno way
15:11:16raptoroh hey they're in the middle of the contest now
15:11:24Watusimotobtw, my dad sent me this link, to a very mainstream American journalist (Ted Koppel) commenting in a very mainstream media outlet (WS Journal)
15:11:25Watusimotohttp://online.wsj.com/article/SB10001424127887324653004578650462392053732.html?mod=hp_opinion
15:11:27kaenyep
15:11:40Watusimotoyet... he sounds almost like the Ecomomist writer
15:11:59kaenthat's a good open
15:16:09kaenokay, if I change it to LuaGameInfo it works fine.
15:16:41raptorhmm... seems like we may have a discrepancy between the cpp class name and what it is called within the Lua API
15:17:20kaenI don't think it's really called anything in the LuaAPI
15:17:32kaenyou can't usefully GameInfo.new() can you ?
15:17:48raptornot any more!
15:17:50kaenand if you print() it, it's <userdata>
15:18:28kaenthe only real problem is that it's called GameInfo a few places in the docs
15:19:17raptoryeah it was
15:19:35raptorbut it was introducing a memory leak
15:19:45raptorso i made a member on game
15:23:31raptorthere's even a deprecation warning for it in the helper_functions.lua files
15:23:54Watusimoto_ has joined
15:27:15Watusimoto Quit (Ping timeout: 276 seconds)
15:33:07Watusimoto_ Quit (Read error: Connection reset by peer)
15:34:24Watusimoto has joined
16:05:19raptorgood article
16:20:15bobdaduck Quit (Read error: Connection reset by peer)
16:21:16Wuzzy has joined
16:25:07Little_Apple has joined
16:25:15FoOtloOse has joined
16:25:35Little_Applehello
16:25:50raptorhi
16:26:11Little_Appleraptor: FoOtloOse would like some assistance with a levelgen.
16:27:01raptorI sadly don't have time at the moment (still at work)
16:27:08kaenI do
16:27:19kaenFoOtloOse, Little_Apple, ^
16:27:19raptoryay kaen
16:27:25Little_Apple!!
16:28:13kaenso, how can I help?
16:28:26Little_Applelevelgen!
16:28:47kaenhmm. in the imperative case?
16:29:19Little_Appleer... a brownie volcano.
16:29:30kaenyes.
16:29:40kaenone could possibly brownie volcano
16:29:47kaenwhat are you stuck on?
16:29:53Little_Appleerm.. actually something else..
16:30:00Little_Appleshe needs help with zones i think
16:30:03kaenok
16:30:10Little_Appleer.. growzones...
16:30:13Little_Applesomething.
16:30:16kaenFoOtloOse, can you paste your script on pastie.org
16:30:20kaenand tell what doesn't work?
16:30:28kaenalso paste any level code you might have
16:30:31FoOtloOsei didnt start yet.
16:30:33kaenoh
16:30:36kaenhehe
16:30:38Little_Applec:
16:30:39FoOtloOse:D
16:30:41kaenso you need a tutorial :)
16:30:43FoOtloOseits my homework
16:30:48Little_Appleindeed.
16:30:53kaenhomework from bob?
16:30:56FoOtloOsehe gave me luadocs geom class thing n goalzone class
16:30:57FoOtloOseyup
16:31:03FoOtloOsei did the other earlier..
16:31:09kaenbrilliant
16:31:34kaenok. so what are you supposed to make it do?
16:31:44FoOtloOsegrowing goalzones
16:31:58FoOtloOsei dont even know.
16:32:06kaendo they grow in any specific way?
16:32:17FoOtloOsehe said..
16:32:18Little_Applebasically make a goal bigger using magic i believe
16:32:33kaenjust once, or gradually over time?
16:32:41FoOtloOsegoalzone that gets bigger when a ship enters it
16:32:48kaenok
16:33:05kaendo you know how to get the goal zone?
16:33:13FoOtloOsenope.
16:33:30FoOtloOsei have no clue about anything. except circles. <3
16:33:43kaenyou know how to create circles?
16:33:49FoOtloOseYEA.
16:33:50FoOtloOse:D
16:34:09kaenwhat are the steps?
16:34:30FoOtloOseelseif(name == "bobdaduck") then local newCircle = Circle.new() newCircle:setLoc(ship:getLoc()) levelgen:addItem(newCircle) Timer:scheduleOnce(function() newCircle:removeFromGame() end, 5000) end
16:34:32FoOtloOse:D
16:34:51FoOtloOsehttp://pastie.org/8216668#
16:34:51kaencan you think of how you'd make it work with goal zones?
16:34:59FoOtloOsei dunnooooooo
16:35:26FoOtloOsedo the same thing but replace it with goalzone n change it a bit to make it grow?
16:36:13kaenyes. and do you know about events?
16:36:23FoOtloOsekinda
16:36:31kaenhave you seen levelgen:subscribe ?
16:36:47FoOtloOsethink so
16:36:56FoOtloOseis that the like
16:37:04FoOtloOsesubscribe(Event.ShipEnteredZone)
16:37:04FoOtloOse?
16:37:08kaenyes.
16:37:10Little_Appleyes!
16:37:12FoOtloOse:D
16:37:22kaendo you know what this means -> "function onShipEnteredZone(ship, zone, zoneType, zoneId)"
16:37:25kaen?
16:37:36FoOtloOseits the thing
16:37:44FoOtloOsethat like
16:37:49FoOtloOseyou can put the things in
16:38:13kaenspecifically, do you know what `zone` will refer to?
16:38:15FoOtloOseu use it to pick a function to do something?
16:38:23FoOtloOsethe place?
16:38:30kaenyes :)
16:38:32FoOtloOse:D
16:38:38kaenso, how would you make the zone bigger?
16:38:58FoOtloOseplastic surgery.
16:39:21FoOtloOsei dunna
16:39:26kaendo you know what a Point is ?
16:39:35FoOtloOsenope
16:39:43Little_Applethey're what you use to win arguments.
16:39:52FoOtloOsei started 6 hours 40min ago. :D
16:39:56Little_Applebadumtsh
16:39:56kaendo you know what a Geometry is (in bitfighter) ?
16:40:01FoOtloOsenope.
16:40:09FoOtloOsethis thingy? http://bitfighter.org/luadocs/class_geom.html
16:40:21kaenyes, exactly
16:40:57kaendo you know what it means in regards to zones?
16:41:05FoOtloOseuh
16:41:19FoOtloOseit makes them do awesome stuff?
16:41:49kaenin a sense.
16:42:05kaenI think I'm sensing a gap in bob's instruction here
16:42:14FoOtloOse:D
16:42:27kaendo you know that a Zone has a Geom ?
16:42:34FoOtloOsenope.
16:42:39kaenokay, it does.
16:42:43FoOtloOsemkay
16:42:46kaencan think what that controls?
16:42:52FoOtloOseuh
16:42:55kaenit's related to the homework.
16:43:08FoOtloOsethe scaling rotating n all tools?
16:43:14kaenkind of
16:43:18kaenso, in the editor
16:43:18Little_Applethe shaaaaaaaaape
16:43:24kaenright
16:43:25kaenthe shape
16:43:31kaenin the editor
16:43:35kaenwhen you edit a zone
16:43:41kaenit's a list of points connected by lines
16:43:48kaen(in order)
16:44:02kaenyou don't really need to care exactly about all of that though
16:44:10kaenso, how would you get a zone's geometry?
16:44:20FoOtloOseby the shape?
16:44:31kaenI mean in lua
16:44:35FoOtloOsethe numbers?
16:44:36kaenoops, bob left you high and dry again
16:44:44FoOtloOseor point things?
16:44:55kaenhttp://bitfighter.org/luadocs/class_bf_object.html#a373785c1ec741fc6f3842a87b3835c81
16:45:06kaenyou would do `zone:getGeom()`
16:45:16kaenso that's how you get a zone's geometry
16:45:23kaenhow would you set a zone's geometry?
16:45:59FoOtloOseput numbers in?
16:46:15kaensure, but there's a method for it
16:46:26kaenit's kind of like getGeom(), and it's listed on that same page
16:46:38kaen(which I linked to above)
16:46:47kaenit's called setGeom()
16:47:00FoOtloOseBfObject::setGeom ( geometry ) ?
16:47:06kaenyes, exactly :)
16:47:12kaenthe "geometry" part of that line
16:47:16kaenis telling you what you pass in
16:47:48kaenand you'll also see "geom BfObject::getGeom ( )"
16:47:56FoOtloOsemkay
16:48:02kaenwhere "geom" means that it's *returning* a geom
16:48:03kaenso
16:48:14kaenyou can get the geom, then do something to it, then set the geom
16:48:39kaenso the only thing left, is how to make it bigger.
16:49:10Little_Applepsst
16:49:13Little_Applekaen:
16:49:20Little_Applecould you simplify a bit more?
16:49:35kaensure thing
16:49:47Little_Applethaaaank yoooooooou
16:49:59kaenyou don't really need to worry exactly about what a geom is, how it's made up
16:50:32kaenyou just need to get the geom, scale it to make it smaller like in the editor, then set the zone's geom again
16:50:37kaenspoiler alert:
16:50:49kaenlocal geom = zone:getGeom()
16:51:01FoOtloOsek...
16:51:23kaenzone:setGeom(Geom:scale(geom, 2, 2))
16:51:37FoOtloOsei dont have a goal zone...
16:51:48kaenI think bob left you out on your own too much about all this ...
16:51:54kaenyou can just make one :)
16:51:54FoOtloOse:D
16:52:01FoOtloOseWHAT COLOUR.
16:52:25kaenthe important thing is that you know how to look things up
16:52:37FoOtloOsectrl f D:
16:52:39FoOtloOse::D
16:52:41FoOtloOse:D
16:52:42BFLogBot Commit: 275ebfccf9aa | Author: watusimoto | Message: Convert relative/absolute to new setting schema
16:52:43BFLogBot Commit: d81565fea7ac | Author: watusimoto | Message: Move toString methods to stringUtils; reduce potiential for bugs with creating UIMenu item for control method
16:52:45BFLogBot Commit: 4b6d0d9a6307 | Author: watusimoto | Message: Migrate voiceEcho to new settings system
16:52:46Watusimotook gents (and ladies)
16:52:49Watusimototime to hit the sack
16:52:52Watusimotogood night all!
16:52:53FoOtloOsenight
16:52:55kaennight!
16:53:01kaenFoOtloOse, so GoalZone::GoalZone ( polyGeom team )
16:53:05kaenaccording to the GoalZone page
16:53:07Watusimoto Quit (Remote host closed the connection)
16:53:10kaento make a new GoalZone
16:53:13FoOtloOseokaaaaay
16:53:16kaenyou just do `GoalZone.new(team)`
16:53:26kaenteam can be a number, 1 is a good choice if you don't care
16:53:33kaenteam *must* be a number
16:53:40FoOtloOsek
16:53:44kaenthen you have to add the GoalZone to the game
16:53:49kaenlevelgen:addItem(zone)
16:53:53FoOtloOseam i supposed to be putting this in the levelgen?
16:53:54FoOtloOse:D
16:53:55kaen(you knew these already)
16:54:00kaenuh ...
16:54:03kaenyou probably could
16:54:13FoOtloOsewhere?
16:54:19FoOtloOseSO MANY PLACES.
16:54:30kaenyou put startup code in main()
16:54:54FoOtloOsewhich issssssss? :D
16:55:10kaenfunction main() --[[ put code here ]]-- end
16:55:25FoOtloOsemkay
16:55:36FoOtloOsewhat code put?
16:55:55kaenthe code to create your goalzone
16:55:59kaenwhich I described above
16:56:16kaenlocal zone = GoalZone.new(1) ; levelgen:addItem(zone)
16:56:28kaendon't copy and paste code though :/
16:56:33kaenyou should at least type it in
16:56:46FoOtloOseaw :c
16:57:09kaenthen, you want something to happen when "ShipEnteredZone"
16:57:19kaenso you'll put code into:
16:57:20FoOtloOseat the top?
16:57:42kaenfunction onShipEnteredZone(ship, zone) --[[ code here ]]-- end
16:58:08Little_Appleor you could have a function in there
16:58:33Little_Appleor something..
16:58:35Little_AppleIGNORE ME
16:58:36FoOtloOsedo i make a new shipenteredzone or use the one i have?
16:58:42kaenuse the one you have
16:58:49FoOtloOsek
16:58:50kaenyou can only have one, in fact (as far as I know)
16:58:54FoOtloOseaw
16:58:56kaenso in that function
16:59:09kaenyou'll get the geom, scale it, then set the geom
16:59:27FoOtloOseokaaaaaaaay
16:59:48kaengeom roughly means "shape" as it is represented in level code (either a point, or some lines, or a whole polygon)
17:00:11kaenso
17:00:47kaenzone:setGeom(Geom:scale(zone:getGeom(), 2, 2))
17:00:51kaenshould do it in one line
17:01:11FoOtloOsewhere in the shipenteredzonething do i put it?
17:01:21kaenjust after the "function ... " line
17:01:33FoOtloOsek
17:01:46kaensee, you just started seven hours ago
17:02:00kaenyou should actually still be learning to *read* code before he makes you write it on your own :P
17:02:05FoOtloOseaw.
17:02:08FoOtloOsei asked for it :D
17:02:13kaenok
17:02:32kaenanyway I hope you got something out if it besides answers :)
17:04:14kaenI'll be around if you have questions
17:15:28FoOtloOsetybye la says cheese muffins. personally i like cheesebread.
17:15:29FoOtloOse has left #bitfighter
17:27:14Nothing_Much Quit (Quit: bye)
17:40:24raptorlater!
17:40:26raptor Quit ()
17:52:12Little_Apple Quit (Quit: Page closed)
18:23:56bobdaduck has joined
18:27:20kaenbobdaduck
18:27:29bobdaduckyes going through the logs now
18:27:32kaenok
18:30:34kaenI tried socratic questioning at first but she wasn't ready ...
18:32:34bobdaduckShe doesn't know what a coordinate plane is
18:33:39bobdaduckfinished reading logs
18:33:41bobdaduckouch
18:34:04kaentoo many choices
18:34:08kaenblank paper problem.
18:34:43bobdaduckI wasn't trying to explain it to her, I was just trying to get her to throw some code together in the right way xD
18:35:16kaenyeah
18:35:19kaenhey
18:35:24kaenI'm working on tutorials for 019
18:35:27kaenwant to help?
18:35:44bobdaduckUh
18:35:52bobdaduckWhat do I need to do?
18:35:57kaenI dunno yet really
18:36:02bobdaduckDo I need to pull and build 019?
18:36:05kaennah
18:36:10bobdaduckOr just write down a bunch of things that sound good? xD
18:36:13kaenit's going to go on the wiki
18:36:23kaenmostly just make sure I don't over-complicate things
18:36:44Nothing_Much has joined
18:36:45kaenmaybe keep me on course and away from things like anonymous functor generators
18:37:05bobdaduckxD
18:37:11kaenand also generally help write about topics
18:37:16kaenwhatever comes up
18:37:18bobdaduckUse brownie-speak
18:37:22kaenI'm shooting for a bitfighter scripting manual
18:37:31kaeneh, I'd rather just use simple english.
18:37:39bobdaduckBrownie speak is simple english.
18:37:39bobdaduckxD
18:37:42kaenok
18:38:15kaenlike, I've got the first three tutorial code written
18:38:44kaen1. add a textitem 2. change it to say "hello, <playername>" onMsgReceived 3. Make it follow the player
18:39:02kaenso I'm trying to have like a real easy one-at-a-time transition from 0 to basic levelgen knowledge
18:39:17bobdaduckI had footloose start with a globalMsg hello world onshipSpawned
18:39:18kaenand *then* have a layer of task-specific how-to's for intermediate users
18:39:35kaenthat's good too
18:39:40bobdaduckAnd then had her make it so it gives her a random amount of brownies
18:39:41kaenI think tutorial one is four lines ...
18:39:44bobdaduckand if brownies > 7
18:39:49bobdaducksay specific things.
18:39:50bobdaduckxD
18:39:57kaensee, I'
18:40:01kaenm kind of torn
18:40:06kaenon how much I want to teach lua
18:40:16kaenI was thinking have a chapter 0 as a programming crash course
18:40:26bobdaduckI was actually kind of planning on making a lua tutorial myself soonish
18:40:29kaenwith lots of links to the lua wiki to keep us from writing things that already exist
18:40:34kaenok perfect
18:41:10kaenpretty much you could put variables, functions, and conditionals on a single page
18:41:21bobdaduckI dunno about teaching actual programming
18:41:30kaenexactly my thoughts
18:41:42kaenbecause _k's tutorial promised that you needed "no programming knowledge"
18:41:51kaenso it was super bloated with lua-specific things
18:42:13bobdaduckYeah
18:42:23bobdaduckHis is just outdated is all
18:42:25kaenwhereas if we assume a basic amount of programming knowledge, you can read a short primer and then get up to speed by reading *very* simple examples
18:42:42kaenit's outdated to the point of needing a complete rewrite
18:42:47kaenit's also mixed with API documentation
18:42:48bobdaduckyeah
18:43:15kaenand we have real doxygen docs which I've updated (up through the letter G)
18:43:51kaenso we could write super short tutorials compared to what exists
18:44:02kaenand just use lots of API doc links and lua wiki links
18:44:11kaenteach a man to fish, etc.
18:45:12kaenI've already started moving the old psuedo-tutorials from the docs to the wiki
18:45:16kaenI'll finish that up tonight
18:45:26kaenand post what I have for tutorial stuff
19:22:33bobdaduckI think I may be teaching footloose to name all her variables penguin
19:22:42bobdaduckbut I also think she understands it better that way
19:29:46bobdaduck"alright, so we're going to give penguin this bunch of numbers to hold."
19:29:55bobdaduck"later we'll ask for them back"
19:37:27raptor has joined
19:37:27ChanServ sets mode +o
19:37:32raptorgood morning!
19:38:13kaenwait what?
19:38:24bobdaduckpenguins.
19:38:33kaenpenguins can't hold things
19:38:37bobdaduckLOOK
19:38:41bobdaduckSHE UNDERSTANDS IT BETTER, K?
19:38:49kaenthey lack opposing digits
19:38:59kaen:)
19:39:14kaenin other news, I recently explored vim's selection mode
19:39:44kaenI can select paragraphs, the insides of quotes, brackets, and parenthesis with like four keystrokes
19:39:53kaenthree
19:40:14kaenvap, va", va(, etc.
19:41:09kaennow I'm trying to decided whether I spent more time reading about selection modes in vim than I would have spent selecting things using a mouse ...
19:41:50raptorhaha
19:43:06raptorbobdaduck: i'm breaking loadouts
19:43:18bobdaduckcool
19:43:26kaenalso, removing onTick
19:43:27raptorso i hope you didn't use them much..
19:43:30bobdaduckrofl
19:43:33raptorwait what??
19:43:37bobdaduckxDD
19:43:37kaenjp :)
19:43:43raptorha ok
19:43:53raptorwhy i oughta...
19:43:57kaenhehe
19:49:25bobdaduck*adds deployable walls to DnD*
19:49:37raptorwhat
19:49:43raptoryou can do that?
19:49:49bobdaduckuh
19:49:53raptoryou can't do that..
19:49:56raptorcan you?
19:50:29bobdaduckuhhhh
19:52:59bobdaduckyes.
19:53:01bobdaduckTechnically.
19:53:26kaenthey just don't show up client-side?
19:53:40bobdaduckyeah
19:55:19bobdaduckyou um
19:55:22bobdaduckcan't remove them though.
19:56:13kaenso, raptor, I've got a lot of this going on:
19:56:14kaen* @brief Get the highest score among all teams.
19:56:14kaen* @return The highest score among all teams.
19:56:43kaenfollowing suit from the docs that already exist which already did this ridiculous duplication
19:56:56kaenif I omit @brief, it gets no description in the method list
19:57:14kaenif I omit @return there's no big bold "Return" section in the long description
19:57:30kaenif I keep putting both I will die from the pain of guilt.
19:57:51kaenthink I can drop @brief?
19:57:58kaenfor simple getters, I mean
19:58:48raptorhmmm
19:59:01raptorwell, I honestly don't know doc conventions..
19:59:39kaenI'm usually pretty familiar with them, but this case has always been a gray area for me
20:00:03raptormaybe @return is just the return value: @return int score
20:00:08raptoror soemthing...
20:00:24kaenstill seems redundant
20:00:30kaenalso don't doc return types there
20:00:35kaenuse the sig
20:01:16kaenI'm going to drop @return, I think
20:01:22kaenno
20:01:23kaenyes
20:01:24kaenno.
20:01:24raptorhmmm
20:01:27kaenI have no idea.
20:01:32raptorlet's look at javadocs!
20:02:16raptorexample: http://www.docjar.com/html/api/java/util/HashMap.java.html
20:03:11raptorok, that's just as bad as what we do!
20:03:22raptorlook at 'public V put'
20:03:56raptormaybe only use @return when needed for complex return issues
20:04:11raptorlike @return this can return nil and eat puppies!
20:04:36kaenI think so
20:04:45kaenI had a hunch we'd been abusing @return
20:05:01raptoryeah, looks like we are..
20:05:58raptorwell, actually
20:06:09raptorthat java doc uses @return for anything that has a return
20:08:11kaenhere's maybe a closer relative to lua (JS) from the YUI library
20:08:29kaenhttps://github.com/yui/yui3/blob/master/src/base/js/BaseCore.js
20:08:39kaenit's using yui-doc which has a doxygen like syntax
20:09:10kaenand again, appears to use @return for anything that explicitly returns a value
20:09:33kaenwow. they even doc'd their private methods
20:09:57kaenthat's a massive pain in yui-doc because there's no auto-detection of anything
20:10:27kaenyou have to literally declare every class, method, and parameter in the doc
20:10:29kaenanyway
20:10:35kaen@return is conventional
20:10:54raptorok, yeah, we should keep the @return
20:13:38kaenI think I figured out the problem
20:13:45kaenI should be more thorough in the @return
20:14:08kaenspecifically, I should describe the map from all possible input to all possible output
20:14:28raptorwhat method is this?
20:14:53kaenmost of LuaGameInfo
20:15:02raptorah
20:15:05raptorthat monster
20:15:15kaenI've got the first pass done
20:15:21kaenthen I got all philosophical
20:15:25raptorheh
20:15:51Nothing_Much Quit (Quit: bye)
20:21:08kaenany idea what Burst::getWeapon() is for?
20:21:41bobdaduckrofl
20:21:46kaenoh, to make it compatible with Projectile:getWeapon()
20:21:51bobdaduckI imagine its to check what weapon the burst is using
20:22:17kaenit's so that when you get a bag of projectiles, you don't crash when you pull out a Burst
20:22:55kaenon to GoalZone!
20:23:58raptoruhh
20:29:54kaenfascinating
20:30:08kaenWallItem, LineItem, and TextItem, all do not inherit from the Item class
20:30:41kaenyet CoreItem, EngineeredItem, PickupItem do
20:31:20raptorhmmm
20:31:56raptorhttp://bitfighter.org/~raptor/doxygen/current/class_zap_1_1_item.html
20:32:33raptorand even weirder: http://bitfighter.org/~raptor/doxygen/current/class_zap_1_1_bf_object.html
20:41:11bobdaduck Quit (Ping timeout: 240 seconds)
20:57:06raptorkaen: have you ever seen C syntax like this?: http://pastie.org/pastes/8217255/text
20:58:15raptoroh wait, it's obj-c
20:58:18raptoryuk
20:59:43bobdaduck has joined
21:04:28Flynnn has joined
21:07:34kaenwhoa is that the syntax for a lambda function!?
21:08:03kaenoh no, it's a block
21:08:07kaenI don't even
21:08:52raptorsigh
21:09:03raptoryeah, introduced in 10.6
21:09:20raptori just sent an e-mail informing the SDL list that someone broke OSX 10.5 again...
21:09:35kaenhehe
21:10:03kaenI'm still puzzled that you can pass around blocks
21:11:01raptorfound this article on it (for osx 10.6): http://arstechnica.com/apple/2009/08/mac-os-x-10-6/10/
21:12:00raptorsadly osx 10.4 support was dropped last week from SDL - but I've been secretly maintaining a diff to still support it :)
21:12:03kaensomehow I knew I would read the word "closure"
21:12:10bobdaduck Quit (Remote host closed the connection)
21:12:16kaenhehe crafty
21:13:18raptori'm almost thinking 10.4 support might need to be dropped after 019...
21:13:46kaenegads! 23 pages of 10.6 review
21:13:55raptoryeah...
21:14:04kaenI'm thinking you're correct
21:14:06raptorand i still hate it (but it looks pretty)
21:14:17kaenif we're planning on going the SDL2 route anyway
21:14:26raptorwell, osx already uses sdl2
21:14:55kaenoh that's right
21:15:21raptori don't know what that committer was thinking - the compile errors are in brand new classes taht add to the API
21:15:25raptorand it's in RC4!
21:15:34kaenbah
21:15:40kaenthat's just irresponsible
21:17:00kaenbut if SDL2 has officially dropped support for 10.4 then I think that means we have, too (unless we use a different RC?)
21:17:15raptoryeah
21:17:22raptor018a uses some really pre-version
21:17:30raptorsome random revision i chose that didn't crash too badly
21:17:36kaenheh
21:17:42raptorbut I've since updated our lib to RC2 or something
21:17:48raptorwhich should still be fine
21:21:58kaenhttp://arstechnica.com/information-technology/2013/08/os-x-apps-run-on-linux-with-wine-like-emulator-for-mac-software/
21:22:20raptorwhoa
21:22:21kaenjust posted yesterday, in fact
21:22:25raptorwhere did that come from!?
21:24:51raptoroh interesting - i didn't really know about GNUStep
21:26:08kaenme either
21:26:21kaenvery interesting project
21:27:05kaenone year in and he's already running gui apps? that's pretty good
21:28:49kaenbet he's getting a lot of emails today :)
21:29:01kaenmaybe we can get bitfighter into ars ...
21:29:10raptorha!
21:55:44kaenhow would you feel about 80-character wrapping the luadocs comments?
21:55:57raptorsounds good to me
21:55:59kaenI can do it in vim with vpgq
21:56:04raptorha
21:56:24kaenand then I'll just add a blank line between directives so it's easy to tell where they end
21:58:13kaenohhhh yeahh.
21:58:16kaenthat looks a ton better
21:58:28kaenon our way to a beautiful code base
21:58:42raptorwatusimoto may protest...
21:58:49raptorhe loves his wide screen
21:58:58kaenI feared so ...
21:59:18kaenwe need to get him into side-by-side editing
21:59:32kaenthat's the *true* beauty of a wide screen
21:59:38raptorheh
21:59:38kaenand the reason I still edit cpp with vim
21:59:53kaenI can have four files usefully open on the screen at once
22:00:35kaenbut I'm on a 16:9
22:00:45kaenor something
22:16:20raptorhonestly I love lots and lots of vertical space and I am a bit saddened at the loss of 4:3 for coding's sake
22:26:13kaenS32 Item::lua_isInCaptureZone(lua_State *L) { return returnBool(L, false); }
22:26:18kaenshould I even document this?
22:26:29raptorha ha ha
22:26:36raptorno
22:26:40kaenok
22:26:56kaenit will actually show in the docs just from being in the method table
22:27:00raptorthat's an issue that is now obsolete since we've moved to object type numbers
22:27:11raptorthat should probably be adjusted in the c++...
22:28:23kaenok
22:42:05raptoroh man
22:42:08raptori just realized
22:42:39kaenhm?
22:42:59raptorif we just return a loadout as a table
22:43:15raptorthen why do we need all the methods on the Loadout object now?
22:43:24kaenI literally switched to this window to ask that
22:43:32kaenI just hit loadouttracker.cpp
22:43:36raptorha!
22:43:42raptorok, let's make the right decision here
22:44:08raptordo we want/need any of the methods?
22:45:16kaenI have no idea ...
22:45:30kaenequals and isValid seem potentially useful
22:45:35raptorok, we don't need getWeapon and getModule
22:45:54kaenso, scripters *never* need to handle a LoadoutObject?
22:45:54raptorand I replace setWeapon and setModule with ship:setLoadoutWeapon/Module
22:46:09kaener, Loadout object
22:46:12raptorso that leaves equals and isValid
22:46:17raptorwell, they used to
22:46:23kaennow they don't?
22:46:31raptorthat's what we seem to be doing
22:46:37kaenok
22:46:41raptoris that good?
22:46:59kaenthe only thing we'd potentially be sacrificing is isValid
22:47:05raptorfor a scripter, would that be nicer?
22:47:44kaenI think you'd either be specifying loadouts literally, or copying them from another player
22:47:48raptorexcept *no* scripts use isValid or equals (that I know of)
22:48:00kaenso I can't imagine actually using isValid
22:48:32kaenand if you're constructing/applying loadouts of unknown validity, you can probably write your own isvalid
22:48:46kaensince you're just counting numbers above and below zero
22:49:01raptoryes...
22:49:19kaen"you can write your own" feels like a cop-out
22:49:35kaenbut it's factually accurate
22:49:46kaenanyway, I say we're safe to just drop it from the API
22:49:51raptorok
22:49:54kaenI'll skip it for now until we hear from wat
22:50:01raptorok
22:50:08raptorit's looking like dropping it would be good...
22:50:27raptorbut yes, I think it'd be good to get his input
23:02:23Wuzzy2 has joined
23:02:42kaenI do not understand why there is a PlayerInfo and LuaPlayerInfo
23:03:05raptorthinking...
23:03:12kaenall of LuaPlayerInfo's methods a asserted false and "not implemented"
23:03:19kaenbut they are all implemented on PlayerInfo
23:03:30raptorand RobotPlayerInfo
23:03:43kaenoh ok
23:03:53raptorso depending on if the owning ClientInfo class is a player or a robot, that returns different stuff..
23:04:21kaenand LuaPlayerInfo is the abstract interface
23:04:34raptoryes
23:04:49kaencool. sounds easy enough
23:05:38Wuzzy Quit (Ping timeout: 264 seconds)
23:06:09Wuzzy2 Quit (Client Quit)
23:06:13raptorback in a bit..
23:11:21Flynnn Quit (Quit: This computer has gone to sleep)
23:16:46Flynnn has joined

Index Search ←Prev date Next date→

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