--- Log opened Wed Feb 18 00:00:19 2009 |
00:32 | | * Derakon starts uploading beta5. |
00:33 | <@Derakon> | http://www.aegis-soft.com/games/fusillade/download/fusillade-beta5-osx.tgz |
00:42 | | You're now known as TheWatcher[t-2] |
00:47 | | You're now known as TheWatcher[zZzZ] |
00:51 | <@Derakon> | http://www.aegis-soft.com/games/fusillade/download/fusillade-beta5-win.zip |
00:52 | <@Derakon> | See http://www.aegis-soft.com/forum/viewtopic.php?f=3&t=2 for change details. |
00:52 | | * TheWatcher[zZzZ] starts that dowloading so he can try it tomorrow |
00:52 | <@Derakon> | Not bad for a four-day turnaround time, if I do say so myself. |
01:00 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has quit [Quit: Z?] |
01:30 | < simontwo> | what's up with the emo server notices? |
02:20 | | * Derakon eyes his code. |
02:20 | <@Derakon> | I'm working on setting up the codebase for Selene, by copying wholesale from the codebase for Fusillade (codename: BulletML). |
02:21 | <@Derakon> | In Fusillade, I had a main script bulletml.py, which among other things acted as a global access point for various managers (e.g. for accessing config values, getting the Pygame screen surface, etc.). I set these up by doing "bulletml.foo = bar" in initialization. |
02:22 | <@Derakon> | When I try to do "selene.foo = bar" in selene.py, I get the error "global name 'selene' is not defined" |
02:22 | <@McMartin> | Is . in your PYTHONPATH? |
02:23 | <@Derakon> | I thought that simply having a file named "foo.py" would create, in that file, the object "foo" as the module? |
02:23 | <@Derakon> | I'm using the same Python for both of them. |
02:23 | <@McMartin> | Also, is there a module-local named "selene"? |
02:23 | <@McMartin> | Becuase then it would be assigning to selene.selene.foo, not selene.foo |
02:23 | <@Derakon> | Define "module local"? |
02:24 | <@Derakon> | Local variable in the module? |
02:24 | <@McMartin> | Like, is there a variable named "selene" inside selene.py |
02:24 | <@Derakon> | No. |
02:24 | <@Derakon> | Just like there isn't in bulletml.py. |
02:24 | <@Derakon> | As a simple repro, I made foo.py, which has one line: "foo.bar = 1". That fails in the same manner. |
02:25 | <@Derakon> | I remember having some issues with this when I did the original BulletML refactor. |
02:25 | <@Derakon> | I just wish I could remember how I fixed it... |
02:27 | <@Derakon> | Wouldn't having a module local named "selene" break access, not assignment? |
02:44 | | Tarinaky [~Tarinaky@88.83.110.ns-10776] has quit [Quit: Leaving] |
02:45 | | Tarinaky [~Tarinaky@88.83.110.ns-10776] has joined #code |
02:47 | <@Derakon> | Ah hah. Figured it out. |
02:48 | <@Derakon> | The code that assigns to selene was being run before the selene module was finished loading. |
02:48 | <@Derakon> | Slapping "import selene" at the top of selene.py fixes this, but augh. ;.; |
03:28 | < Serah> | ?? |
03:29 | < Serah> | Why is it called Selene? |
03:29 | <@Derakon> | Because the game it's based on is called Lunatic Fringe. |
03:30 | <@Derakon> | Selene is the project name. |
03:36 | | Serah [~Z@130.227.16.ns-12529] has quit [Quit: ] |
03:47 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Ping Timeout] |
03:49 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
03:49 | | mode/#code [+o ToxicFrog] by ChanServ |
03:53 | | Alek [~omegaboot@Nightstar-27127.dsl.emhril.sbcglobal.net] has quit [Quit: ] |
03:56 | | Alek [~omegaboot@Nightstar-27127.dsl.emhril.sbcglobal.net] has joined #code |
04:10 | | * McMartin trades vicious strikes with C++ |
04:10 | | Searh [~Z@87.72.35.ns-26506] has joined #code |
04:12 | <@McMartin> | Some destructor is being called twice for some reason. >_< |
04:17 | <@Derakon> | Yay automatic garbage collection. |
04:18 | <@McMartin> | THis is in the collector's implementation, for added fun. |
04:18 | <@McMartin> | AUTOMATIC MYSTERIOUS USE AFTER FREE |
04:26 | <@McMartin> | OK, that's probably a bug in MSVC++. |
04:26 | <@McMartin> | It better be. |
04:27 | <@McMartin> | But I can't be sure, because it would be just like C++ to have incorrect behavior be mandated by one of its constructs. =P |
04:27 | <@Derakon> | Heh. |
04:27 | <@McMartin> | (This being the foo::foo() try : bar(x), baz(y) { ... } construct) |
04:31 | | * Vornicus wonders why C++ is so fucked up about a lot of things. |
04:31 | <@Derakon> | Because it's an extension on a nearly forty-year-old language. |
04:32 | <@McMartin> | No, because said nearly-forty-year-old language is still going strong. |
04:33 | <@McMartin> | It's fucked up because by the time it got standardized, large numbers of powerful business interests relied on all compilers being bug-compatible with Stroustrup's half-assed preprocessor-based thing he'd whipped up in his spare time at AT&T. |
04:33 | <@McMartin> | That said, this is probably a bug in MSVC, since the observed behavior would also break the standard library. |
04:47 | <@Derakon> | McM -- do you remember offhand where APPDATA is? |
04:47 | <@Derakon> | I need to find and excise my config files on Windows. >. |
04:47 | <@Derakon> | >.< |
04:53 | <@Derakon> | Ahh, found 'em. C:/Users/Username/AppData/Roaming. |
05:15 | | Searh is now known as Serah |
05:44 | <@McMartin> | Yeah, that's not where it is on XP. =P |
06:02 | | Syloqs-AFH [Syloq@ServicesAdmin.Nightstar.Net] has quit [Connection reset by peer] |
07:19 | | Derakon is now known as Derakon[AFK] |
07:30 | | UndeadAnno [~farkoff@Nightstar-192.neoplus.adsl.tpnet.pl] has joined #Code |
07:30 | | mode/#code [+o UndeadAnno] by ChanServ |
09:08 | | Vornicus [~vorn@Admin.Nightstar.Net] has quit [Quit: ] |
09:19 | | You're now known as TheWatcher |
09:53 | | Serah [~Z@87.72.35.ns-26506] has quit [Ping Timeout] |
10:47 | | KarmaBot [AnnoDomini@Nightstar-192.neoplus.adsl.tpnet.pl] has quit [Connection reset by peer] |
10:47 | | KBot [AnnoDomini@Nightstar-192.neoplus.adsl.tpnet.pl] has joined #Code |
10:49 | | Rhamphoryncus [~rhamph@Nightstar-7184.ed.shawcable.net] has quit [Quit: Rhamphoryncus] |
10:50 | | KBot is now known as KarmaBot |
11:30 | | NSGuest-471 is now known as EvilDarkLord |
11:51 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
11:51 | | mode/#code [+o Attilla] by ChanServ |
11:59 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Connection reset by peer] |
12:11 | | Serah [~Z@87.72.35.ns-26506] has joined #code |
12:11 | | mode/#code [+o Serah] by ChanServ |
12:29 | | Tarinaky [~Tarinaky@88.83.110.ns-10776] has quit [Ping Timeout] |
12:37 | | Tarinaky [~Tarinaky@88.83.110.ns-10776] has joined #code |
13:45 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code |
13:45 | | mode/#code [+o gnolam] by ChanServ |
14:27 | | Serah [~Z@87.72.35.ns-26506] has quit [Ping Timeout] |
15:00 | | Serah [~Z@130.227.16.ns-12529] has joined #code |
15:00 | | mode/#code [+o Serah] by ChanServ |
15:09 | | KBot [AnnoDomini@Nightstar-29579.neoplus.adsl.tpnet.pl] has joined #Code |
15:10 | | KarmaBot [AnnoDomini@Nightstar-192.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
15:11 | | UndeadAnno [~farkoff@Nightstar-192.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
15:12 | | KBot is now known as KarmaBot |
15:18 | | UndeadAnno [~farkoff@Nightstar-29579.neoplus.adsl.tpnet.pl] has joined #Code |
15:18 | | mode/#code [+o UndeadAnno] by ChanServ |
15:34 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Operation timed out] |
15:34 | | Serah [~Z@130.227.16.ns-12529] has quit [Ping Timeout] |
15:51 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
15:51 | | mode/#code [+o ToxicFrog] by ChanServ |
16:03 | | Syloqs_AFH [Syloq@Admin.Nightstar.Net] has joined #code |
16:04 | | Syloqs_AFH is now known as Syloqs-AFH |
16:18 | | * gnolam curses the lack of a decent open source graphics editor. |
16:19 | <@UndeadAnno> | Why does it need to be open source? |
16:21 | <@TheWatcher> | What's wrong with gimp, anyway? I've 2.6.4 and photoshop on here, and the only time I use photoshop is when I need to use my tablet |
16:21 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Operation timed out] |
16:22 | <@TheWatcher> | (or when I need one of photoshop's features that maybe 2% of people ever go near) |
16:23 | <@gnolam> | It doesn't actually /need/ to be open source, but that's about the only way you can be sure to get it working in Linux. |
16:23 | <@gnolam> | As for what's wrong with GIMP... well... I don't even know where to begin. |
16:23 | <@gnolam> | No, wait, I know: the absolutely godawful UI. |
16:24 | <@gnolam> | The lack of basic drawing functionality. |
16:24 | <@gnolam> | The instability. |
16:24 | <@TheWatcher> | hah, photoshop crashes more than gimp, y'know? |
16:25 | <@gnolam> | Not for me. |
16:25 | <@TheWatcher> | and once you get past the whole "no single root window" thing, gimp's UI isn't really that drastically different |
16:26 | | * TheWatcher shrug |
16:38 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
16:38 | | mode/#code [+o ToxicFrog] by ChanServ |
17:12 | | You're now known as TheWatcher[afk] |
18:24 | | You're now known as TheWatcher |
18:37 | <@McMartin> | TheWatcher: The fact that the devs and support communities treated the critique "YOU DO NOT HAVE A MOTHERFUCKING LINE TOOL" with derision and contempt, because otherwise-undocumented hotkeys let you have the same result. |
18:38 | <@gnolam> | And not actually the same result, unless it's changed since the last time I threw my hands up in disgust and uninstalled the bloody thing. |
18:39 | <@gnolam> | Because then it was "click somewhere, hold shift (?) and click somewhere else", which works if and only if you're not using transparency in any way. |
18:39 | <@McMartin> | Well, shift was involved, becuase they did a howto for lines. |
18:40 | <@gnolam> | ("Transparency in any way" includes antialiasing BTW) |
18:40 | <@McMartin> | It was 15 pages long, all of it pointing out where Shift keys are. |
18:40 | <@McMartin> | Since, you know, it is deeply unreasonable to expect that there might be specialized tools for drawing graphics primitives, particularly when there are for the other primitives! |
18:42 | <@McMartin> | (And particularly when every piece of software you're trying to make an OSS version of has such a tool) |
18:42 | | Derakon[AFK] is now known as Derakon |
18:43 | <@Derakon> | I get the impression that the GIMP is what you get when a bunch of OSS junkies decide to make a tool for making art, when none of them are themselves artists and in fact they don't want anything to do with artists. |
18:45 | <@TheWatcher> | Derakon: alas, suck is my experience of pretty much every art package since TVPaint 3.6 |
18:45 | <@TheWatcher> | *such |
18:45 | <@TheWatcher> | (with the notable exception of Aura, which... yeah, you don't want to know how much that costs) |
18:45 | | * gnolam hugs Deluxe Paint 3. |
18:45 | <@TheWatcher> | Hee |
18:46 | <@TheWatcher> | I still have DP3, 4, and TVPaint installed in a UAE setup :D |
18:55 | | Bobsentme [~Bobsentme@Nightstar-14642.lightspeed.livnmi.sbcglobal.net] has joined #code |
18:55 | | * Bobsentme sighs and asks for help with an awk line |
18:55 | < Bobsentme> | I've got a data file called "cars". I'm trying to print it out in a different format (ie, $3, $1, $2, $4). |
18:56 | < Bobsentme> | I can get it to print, but I'm trying to figure out how to preserve the tab spacing, instead of it all coming out jumbled together |
18:56 | < Bobsentme> | This is what I've got so far: awk '{print ($3\$1\$2\$4)}' 'cars' |
18:56 | < Bobsentme> | err...that's the incorrect one. |
18:57 | < Bobsentme> | replace the \'s with ,'s and you've got the line. |
19:01 | < Bobsentme> | awk '{print ($3, $1, $2, $4)}' 'cars' |
19:04 | <@Derakon> | What happens if you tell awk to print "\t"? |
19:05 | <@Derakon> | Seems to do what you'd want. |
19:05 | <@Derakon> | So do awk '{print ($3, "\t", $1, "\t", etc. |
19:06 | < Bobsentme> | that worked...though I thought I had tried every invocation of \t. |
19:06 | < Bobsentme> | ty |
19:06 | <@Derakon> | The important thing is the difference between '\t' and "\t". |
19:06 | <@Derakon> | Things in single quotes are string literals. |
19:06 | <@Derakon> | Things in double quotes may have their contents interpreted. |
19:08 | < Bobsentme> | ah |
19:11 | <@Derakon> | ...heh. I just thought of an amusing way to tweak the difficulty of Selene. |
19:11 | <@Derakon> | Change the universe size! |
19:11 | <@Derakon> | Tiny universes would be annoyingly difficult, I suspect. |
19:11 | < Bobsentme> | ye gods! |
19:11 | < Bobsentme> | feeling evil today, I see? |
19:12 | <@Derakon> | (Selene being a 2D freerange scrolling shmup I'm working on) |
19:20 | < Bobsentme> | awk '{ total=$4+$3; print ($1"\t" $2"\t" $3"\t" $4 "\t" $total) }' 'cars' |
19:22 | < Bobsentme> | that line isn't printing my total of $3 and $4. Any ideas? |
19:22 | <@Derakon> | Don't you need commas between terms? |
19:23 | < Bobsentme> | no idea. This awk stuff is all new to me, and the web isn't clear on these things. |
19:33 | < Bobsentme> | heh, well, got the total to print. Now none of the other fields are. |
19:41 | | Rhamphoryncus [~rhamph@Nightstar-7184.ed.shawcable.net] has joined #code |
19:44 | < Bobsentme> | awk '{($total=$3+$4); print ($3, $1, $2, $4, $total)}' 'cars' ARGH! |
19:45 | < Bobsentme> | All that does is print the totals |
19:46 | <@TheWatcher> | hm, try awk '{($total=$3+$4); print $3, $1, $2, $4, $total}' 'cars' ? |
19:47 | <@Derakon> | You don't want "$total". |
19:47 | <@Derakon> | You want "total". |
19:47 | <@Derakon> | awk '{t = $3 + $4; print $3,$1,$2,$4,t}' < /tmp/u.txt |
19:48 | <@Derakon> | Just because the numbered variables have dollarsigns doesn't mean other variables should. Fun! |
19:48 | < Bobsentme> | Derakon wins. |
19:49 | | * Bobsentme hands you all of his internets |
19:49 | <@Derakon> | Thanks, but they don't match my decor. |
19:49 | < Bobsentme> | So, I'm not the only one who is confused by whatever logic awk uses? |
19:49 | | * TheWatcher eyes |
19:49 | <@TheWatcher> | oh, yeah. That's why I just use perl >.> |
19:49 | <@Derakon> | Heh. |
19:49 | < Bobsentme> | heh |
19:50 | <@Derakon> | It wasn't until I reduced "total" to "t" that I remembered the glyph thing. |
19:50 | <@Derakon> | I used to use awk for running totals all the time to figure out e.g. order counts. |
20:09 | | Derakon is now known as Derakon[AFK] |
20:37 | | Derakon[AFK] is now known as Derakon |
21:06 | | Bobsentme [~Bobsentme@Nightstar-14642.lightspeed.livnmi.sbcglobal.net] has quit [Quit: Leaving] |
22:36 | | Serah [~Z@130.227.16.ns-12529] has joined #code |
22:36 | | mode/#code [+o Serah] by ChanServ |
23:03 | <@Derakon> | Okay! |
23:03 | <@Derakon> | I now have a game field larger than the screen, which scrolls and loops properly as the camera moves. |
23:03 | <@Derakon> | Complete with starfield. |
23:13 | <@Derakon> | Hmm...EventManager class. You call it, providing a set of UI objects; it gets Pygame's events, maps those events to keyboard actions (e.g. player ship moving), and also does interaction with the UI objects. |
23:14 | <@Derakon> | So for example, if the up arrow is pressed and the user has clicked on the Quit button, calling EventManager::processEvents([quitButton]) would get you [PLAYER_ACTION_THRUST, GLOBAL_ACTION_QUIT], or something like that. |
23:14 | <@Derakon> | Sound plausible? |
23:27 | | Derakon is now known as Derakon[AFK] |
23:36 | | * gnolam slowly goes insane from Source. |
23:37 | | * gnolam pulls a the bottle of scotch. |
23:37 | <@gnolam> | It might not actually help me design this thing, but it'll make the actual process so much nicer. |
23:40 | <@UndeadAnno> | The blood alcohol content versus programming efficiency is a gauss curve. :P |
23:41 | <@UndeadAnno> | +chart |
23:52 | <@gnolam> | Mmm, single malt. |
23:52 | | Derakon[AFK] is now known as Derakon |
--- Log closed Thu Feb 19 00:00:30 2009 |