--- Log opened Sun Mar 11 00:00:56 2007 |
00:16 | | Silver_Adept [~silverade@71.238.34.ns-11293] has joined #code |
00:30 | | * McMartin notices a typo he's been making in his paper, renames his research prototype after the megacorp in Descent. |
00:31 | | * Derakon snerks. |
00:31 | <@McMartin> | The Java Taint Model-Checker is now the Practical Taint Model-Checker. |
00:32 | <@ToxicFrog> | Sweet. |
00:32 | < Derakon> | Got a recommended way to make a copy of a table instead of a reference to one, TF? |
00:35 | | Derakon [~Derakon@Nightstar-12737.sea2.cablespeed.com] has quit [Connection reset by peer] |
00:35 | | Derakon1 [~Derakon@Nightstar-12737.sea2.cablespeed.com] has joined #code |
00:35 | < Derakon1> | I hate my ISP |
00:35 | | Derakon1 is now known as Derakon |
00:36 | <@ToxicFrog> | Derakon: I have at least two Lua functions and one C function kicking around that do just that. |
00:36 | < Derakon> | Heh. |
00:36 | <@ToxicFrog> | It gets slightly more complex if you need to preserve metatables, but only slightly. |
00:37 | < Derakon> | Just plain tables so far. |
00:37 | < Derakon> | Er, actually, now I'm not certain. |
00:37 | <@ToxicFrog> | I note that if you want to copy an object rather than a record, it's usually better to write a copy constructor than to rely on tcopy(). |
00:37 | < Derakon> | You know that "ships" table I have, that defines a ship? |
00:38 | < Derakon> | I want to have that serve as a non-instantiated version of the ship, while I spin off copies that actually show up in-game. |
00:38 | < Derakon> | It does have a function associated with it (the update() function), and will probably have more later. |
00:38 | <@ToxicFrog> | The solution to this is to write an OO framework~ |
00:38 | <@ToxicFrog> | Which actually isn't very hard at all if you like prototype-based OO. |
00:39 | < Derakon> | Bah! |
00:39 | < Derakon> | But fair enough. |
00:39 | <@ToxicFrog> | Is that bah to PBOO, or bah to OO frameworks in general? |
00:39 | < Derakon> | Bah to having more infrastructure to write before I actually get this thing working. I want to do content, dangit! ¬.¬ |
00:39 | <@ToxicFrog> | Stand by. |
00:40 | <@ToxicFrog> | Catch. |
00:40 | < Derakon> | Danke schoen. |
00:40 | <@ToxicFrog> | Create new classes with Object:Extend(). Instantiate with :New()./ |
00:41 | <@ToxicFrog> | Classes are first-class values in this scheme, I note. |
00:41 | <@ToxicFrog> | ...oh, and some other stuff. Hang on while I pastebin. |
00:42 | < Derakon> | It's gonna take me a bit to figure out what exactly is going on in these functions. But I suspect it will be good practice. |
00:47 | <@ToxicFrog> | http://pastie.caboo.se/46108 |
00:47 | <@ToxicFrog> | I also have a C version of Prototype. |
00:48 | | ReivSLEP is now known as Reiver |
00:48 | <@ToxicFrog> | Which is handy as it lets you do things like overload __len, and __index even for keys that already exist, and other fun stuff. |
00:48 | < Derakon> | Ahh, your copy constructor/named-arguments thing. |
00:48 | <@ToxicFrog> | (basically it makes overloads be replacements instead of fallbacks) |
00:48 | <@McMartin> | Hmm. You know, I don't know if I ever actually updated util.lua to put in your patch that made it actually work. |
00:49 | <@ToxicFrog> | Which patch? |
00:49 | | * ToxicFrog 's copy of util.lua has mutated horribly and has about six hardlinks from various projects |
00:49 | <@McMartin> | IIRC, I copy-pasted some stuff in from a top-level Lua loop and didn't properly qualify the names of its subroutines. |
00:51 | < Derakon> | I do not think I will need to have C functions doing this stuff, but thanks anyway. |
00:51 | <@ToxicFrog> | Derakon: this is the C version. Less readable, but better operator overloads. |
00:51 | | * ToxicFrog nods |
00:51 | <@ToxicFrog> | Basically, you need the C version if you want to overload the # operator, or use stuff like [] as replacements instead of fallbacks. |
00:51 | < Derakon> | Heh. |
00:51 | <@ToxicFrog> | Otherwise, it may be of academic interest but is unlikely to prove more useful than the Lua version. |
00:52 | < Derakon> | Righto. Thanks again! |
00:53 | <@ToxicFrog> | (me, I need to overload # for one of my projects, which is what prompted me to write this) |
00:53 | <@ToxicFrog> | (for some reason it seems to interact badly with blcgen, though) |
00:54 | <@McMartin> | (Didn't you track that down to some recursive dependency?) |
00:54 | <@ToxicFrog> | (no, that was something entirely different and is what I'm currently rewriting blcgen to fix) |
00:55 | <@ToxicFrog> | (the problem with Prototype.so manifests as it blowing up somewhere in glibc as soon as you try to link it in from a blcgen'd program) |
00:58 | <@ToxicFrog> | Derakon: also, note my habit of obsessively tracking the stack contents when working in C. |
00:58 | <@ToxicFrog> | It helps a lot. |
01:02 | < Derakon> | This is why I was working on that stackDump function. |
01:21 | < Derakon> | Oh, McM! I found a bug in UQM, figured I'd ask if you've seen it already. |
01:22 | < Derakon> | Playing the Mac version on my Intel iMac, in the UI screens (e.g. setting display, or selecting fleets in Super Melee), the down key gets jammed on. |
01:22 | <@McMartin> | Hmm. No, that one's new on me, I think. |
01:22 | <@McMartin> | I'll poke Nic when I see him next. |
01:23 | <@McMartin> | ... actually, no, I may be bale to poke Vorn immediately, if he does in fact have an Intel Mac. |
01:23 | | * Vornicus is on Power. |
01:23 | | * Vornicus 's mac is vintage 2002. |
01:25 | <@McMartin> | Derakon: Does pressing down once cancel this effect? |
01:25 | < Derakon> | Nope. |
01:25 | <@McMartin> | Are you using 0.6.2 release or SVN? |
01:26 | <@Vornicus> | I seem to recall once having a similar problem, but I don't remember if it was UQM at all. |
01:26 | < Derakon> | 0.6.0, which I downloaded from Sourceforge today. |
01:26 | <@Vornicus> | Oh, it was. And a gamepad. But. |
01:26 | | * Derakon notes that it also happens on the main screen. |
01:26 | <@Vornicus> | That was back pre-0.4 |
01:27 | < Derakon> | There also doesn't appear to be any trigger needed on my part; if I just let it load normally, it'll do it. |
01:27 | < Derakon> | However, it seems to be somewhat irregular; every once in a while it'll stutter. |
01:27 | <@McMartin> | 0.6.0 is horribly broken. |
01:28 | <@McMartin> | (As is 0.6.1) |
01:28 | <@McMartin> | Can you replicate this on 0.6.2? |
01:28 | < Derakon> | This is what I grabbed off of the downloads screen. Maybe your version label for the Mac version is out of date? |
01:28 | < Derakon> | Yeah, the package was definitely uqm-0.6.2-macosx.dmg. |
01:29 | <@McMartin> | OK, then it's 0.6.2 |
01:29 | <@McMartin> | 17:26 < Derakon> 0.6.0, which I downloaded from Sourceforge today. |
01:29 | < Derakon> | That's what the version in Get Info says. |
01:29 | < Derakon> | But the package I downloaded and expanded said 0.6.2 in the filename. |
01:29 | <@McMartin> | OK, so the metadata is out of date, then. |
01:30 | < Derakon> | Yeah. |
01:30 | <@McMartin> | In any event, I don't see anything like this in Bugzilla. |
01:30 | < Derakon> | Just for the heck of it, I re-downloaded and installed; same problem. Not that I expected it to go away. |
01:31 | < Derakon> | Okay, I'll file a bug then. |
01:31 | <@McMartin> | First... |
01:31 | <@McMartin> | Can you delete/rename ~/.uqm/keys.cfg and rerun? |
01:31 | < Derakon> | No good. |
01:31 | <@McMartin> | grep Down ~/.uqm/keys.cfg |
01:32 | <@McMartin> | Just to make sure there isn't something silly happening with that... |
01:32 | < Derakon> | Whole bunch of stuff. |
01:32 | | * McMartin is trying to remember the rest of the name, since we changed this after 0.6.2 |
01:32 | <@McMartin> | Template-1-Down? |
01:32 | < Derakon> | Key Down, Key Keypad-2. |
01:32 | <@McMartin> | OK, that sounds right. |
01:32 | <@McMartin> | Hm. |
01:33 | | * McMartin also goes to check the forum. |
01:33 | < Derakon> | Ahh, figured it out. |
01:33 | <@McMartin> | ? |
01:33 | < Derakon> | I was getting signals from my PS2 controller. |
01:33 | <@McMartin> | Aha. |
01:33 | < Derakon> | No idea *why*, but unplugging it fixed the problem. |
01:33 | <@McMartin> | Before you quit... |
01:34 | <@McMartin> | Can you grep threshold in that file? |
01:34 | < Derakon> | joystick 0 threshold 10000 # How far to move before it counts; 0-30000 |
01:34 | < Derakon> | joystick 1 threshold 10000 # How far to move before it counts; 0-30000 |
01:34 | <@McMartin> | ... yeah, a centered Dual shock should be between -10000 and 10000. |
01:34 | <@McMartin> | That is kind of weird. |
01:35 | <@McMartin> | If you've got SDL code floating around, if you could get some values from the JOYAXIS events, that might come in handy. |
01:35 | <@McMartin> | Otherwise, "dunno, driver weirdness" |
01:35 | <@McMartin> | And I clearly should have had you grep for Menu-Down, not Template-1-Down. |
01:36 | <@McMartin> | I believe 0.6.2 will annihilate joystick configs for a joystick that isn't plugged in. |
01:36 | <@McMartin> | Fixing that was why VControl got its massive restructuring. |
01:41 | < Derakon> | Oh, incidentally - I was fighting an Avatar earlier today, and it got into a very stable orbit around the planet. |
01:41 | < Derakon> | This was very frustrating in terms of trying to lure it into traps, because it refused to move! |
01:41 | <@McMartin> | Heh |
01:42 | <@McMartin> | We haven't touched the AIs any. |
01:42 | < Derakon> | I wouldn't've thought so. I'm just surprised that it didn't want to get out of orbit. |
01:42 | <@McMartin> | It's in a good situation~ |
01:45 | < Derakon> | Spathi vs. Androsyn is kinda one-sided. |
01:45 | <@McMartin> | Lots of battles are kinda one-sided. |
01:45 | <@McMartin> | (Arilou vs. Mycon, Ilwrath vs. Earthling, Avatar vs. almost anyone...) |
01:46 | | * McMartin headdesks. |
01:47 | <@McMartin> | Someone apparently tried to run an HTML page, thinking it was our installer. |
01:47 | < Derakon> | I need a commit-suicide button. |
01:47 | < Derakon> | One crew, one energy, as a Druuge. |
01:48 | <@McMartin> | Aim at the planet, hold down thrust~ |
01:48 | < Derakon> | ...right. |
01:48 | < Derakon> | Anyway, Druuge vs. Androsynth is also a bad idea. |
01:49 | <@McMartin> | Mmm. |
01:50 | <@McMartin> | Depends on how good your aim is |
01:50 | < Derakon> | Not good enough. |
01:50 | < Derakon> | Frickin' computer brought out the Avatar after I killed the Androsynth with my Supox. >.< |
01:50 | <@McMartin> | Just saying. Druuge effectiveness against anyone is directly a function how badass a gunner you are. |
01:51 | <@McMartin> | Orz is the best Avatar killer. |
01:51 | < Derakon> | Yes, but the Androsynth are a small, fast target. |
01:51 | <@McMartin> | You can match its tractor and cancel it. |
01:51 | < Derakon> | Unless you let yourself get ganked into range...>.< |
01:51 | < Derakon> | I am just sucking tonight. |
01:51 | <@McMartin> | Rapid orthogonal turns. |
01:51 | | * Derakon fails to gum it up with a Vux, too. |
01:52 | <@McMartin> | Do the 'sats shoot down the limpets? |
01:52 | < Derakon> | Yup. |
01:53 | < Derakon> | Als, um, Kohr-Ah vs. Kohr-Ah is stupid...the computer's not very bright. |
01:53 | < Derakon> | It kept using the FRIED instead of attacking me. |
01:56 | < Derakon> | I want planet-dar. |
01:57 | <@McMartin> | It is widely believed that "Awesome" is a terrible misnomer. |
02:01 | < Derakon> | So TF - you're using "table containing the object" as "reference to the object", yes? |
02:01 | < Reiver> | Androsyn? |
02:01 | < Derakon> | Androsynth, Reiver. A defunct race in Star Control 2. |
02:01 | < Reiver> | I'm trying to remember which one it was. |
02:01 | <@McMartin> | The full name "Androsynth" doesn't fit in the Captain Window, however. |
02:01 | <@McMartin> | The one that blows bubbles and turns into a comet. |
02:01 | < Derakon> | They're the ones that got killed by the Orz. |
02:01 | < Reiver> | ...oh right. |
02:02 | <@McMartin> | (VUX are *silly cows*, they keep asking about the Androsynth and then we have to *dance* with them) |
02:03 | < Reiver> | The cometship would have been nice to get hold of. >.> |
02:03 | | * Derakon draws Spathi vs. opponent's Avatar. >.< |
02:04 | < Reiver> | I also wonder when on earth the human ship is meant to be useful. |
02:05 | < Derakon> | Against various long-range ships. E.g. Druuge. |
02:05 | < Reiver> | Or is the whole /point/ that "Yeah, earthlings are pretty hopeless" |
02:05 | < Reiver> | Hm. Is their phaser ever useful 'cept as an anti-fighter-launch device? |
02:05 | < Derakon> | Nope. |
02:06 | < Derakon> | And there it's only useful in that the opponent won't launch fighters if you have it. |
02:06 | < Reiver> | Pity. It doesn't even shoot down missiles. |
02:06 | < Reiver> | Yeah. Which is... sad. >.> |
02:09 | < AnnoDomini> | What? The self-defense lasers do shoot down missiles. |
02:09 | < AnnoDomini> | Ever seen a cruiser vs. cruiser combat? |
02:09 | <@McMartin> | You can actually accidentally shoot down your own missiles if you're not careful. |
02:10 | <@McMartin> | The Human ship has excellent turning radius, obscene range, and a homing weapon. |
02:10 | < AnnoDomini> | Hell, you can shoot yourself with your own missile. |
02:10 | <@McMartin> | It tends to become much more effective once it gets a good gravity whip off. |
02:11 | <@McMartin> | Reasonably effective against the Spathi Eluder, for instance, especially on a point-by-point basis. |
02:11 | <@McMartin> | Pretty lousy against anything with shields. |
02:11 | < Reiver> | Ahhh, gravity whips fer speed. |
02:11 | <@McMartin> | Pretty effective against the X-Form. |
02:11 | < Reiver> | Even more lousy against things that can run it down and shoot it to death? >.> |
02:12 | <@McMartin> | No, because that guy has to close to range first. |
02:12 | < Reiver> | Hrm. |
02:12 | <@McMartin> | The Arilou had better watch itself. |
02:12 | < Derakon> | Arilou can warp, though. |
02:12 | < Reiver> | (Which is that?) |
02:12 | < Derakon> | Flying saucers. |
02:12 | <@McMartin> | The Thraddash has issues getting in range, and with doing appropriate DPS |
02:12 | <@ToxicFrog> | Ariloulaleelay? Greys with non-inertial flying saucers. |
02:12 | <@McMartin> | Since it has to, um, 18-shot the Cruiser before the Cruiser two-shots it. |
02:13 | < Reiver> | ...ow. |
02:13 | <@ToxicFrog> | (why is Ariloulaleelay harder to remember than W'rkncacnter?) |
02:13 | | * Derakon gets his Chenjesu slaughtered by the enemy Chenjesu. >.< |
02:14 | | * Reiver mostly couldn't figure out how to stand up against the Big Ships - which yes, more expensive, but he couldn't even fend off a points-worth of 'em. |
02:14 | < Reiver> | (Er. Get value for money pointswise.) |
02:14 | < Derakon> | Hah! Lead a Mycon into its own shot! |
02:15 | <@McMartin> | Classic tactic. |
02:15 | <@McMartin> | The Arilou and Pkunk are particularly good at that. |
02:15 | < Derakon> | And Supox. |
02:15 | <@McMartin> | Reiver: The usual technique is to get Really Good with one or two ships. |
02:16 | <@McMartin> | My favored ships are actually Not That Great, but I have fun, and discombobulate my opponents. |
02:16 | < Reiver> | Such as? |
02:16 | <@McMartin> | (My favorite ships are the Supox and the Mmrnmhrm) |
02:16 | | * Reiver can't even remember which those are. |
02:16 | <@McMartin> | Supox has lateral and reverse thrusters, and a good firing rate. |
02:16 | < Derakon> | Plant guys and transformers. |
02:16 | <@McMartin> | The Mmrnmhrm is the transformer. |
02:16 | | * Derakon wins with 116 out of 300 points left, woot. |
02:17 | < Derakon> | I'm fond of the Thraddash, though admittedly that's in part because the computer is easy to cheese with it. |
02:17 | < Reiver> | Oh right. |
02:17 | < Reiver> | Thraddish being...? |
02:17 | < Derakon> | Afterburning rhinos. |
02:17 | | * Reiver knows the ships - but not their names, these days. >.< |
02:17 | < Reiver> | They the self-D ships? |
02:17 | < Derakon> | Nope. |
02:17 | <@McMartin> | No, that's the Shofixti. |
02:18 | < Derakon> | I.e. the cute raccoons. |
02:18 | <@McMartin> | Also, Reiver, clearly you need to reinstall and get your netmelee on~ |
02:18 | < Derakon> | ...that was *silly*. |
02:19 | < Derakon> | Umgah vs. Umgah. |
02:19 | < Derakon> | zipzipzipzipzipbrrrrrrnnm*ka-kaboom* |
02:19 | <@McMartin> | ... yes. |
02:19 | < Reiver> | McM: Probably, if I had a connection worth a damn~ |
02:19 | <@McMartin> | I've run games from California to the Netherlands over dialup. |
02:19 | <@McMartin> | As long as you don't drop packets, it's pretty feasible. |
02:20 | < Reiver> | Oh. |
02:20 | < Reiver> | And I assume a PIII is more than powerful enough to handle it~ |
02:20 | <@McMartin> | Probably, but don't turn audio quality to max. |
02:20 | | * Reiver hrms. His fav. ship had been the Orz - he got pretty good at the turret-aim trick. |
02:20 | <@McMartin> | Cubic MOD interpolation is ow. |
02:21 | < Reiver> | It's also quite expensive for super melee, though. >.> |
02:21 | <@McMartin> | Orz and Utwig are generally the most "ow-per-point" in PvP. |
02:21 | <@McMartin> | Utwig especially. |
02:21 | <@McMartin> | zomgnerf, etc. |
02:21 | <@McMartin> | Utwig is arguably worse than Chmmr now. |
02:22 | <@McMartin> | s/worse/more uber/ |
02:22 | | * Derakon creates the most *pathetic* Thraddash. |
02:22 | < Derakon> | Thing has something like 20 gobs on it. |
02:22 | < Reiver> | Utwig? |
02:22 | | * Reiver forget. |
02:22 | <@McMartin> | Big-ass sextuple cannon that costs no fuel. |
02:22 | <@McMartin> | Shield that costs fuel. |
02:22 | <@McMartin> | Fuel is only regenerated by absorbing shots with the shield. |
02:22 | < Reiver> | Ohhh, right. |
02:22 | <@McMartin> | Helpless without fuel, unstoppable with fuel. |
02:23 | < Derakon> | Utwig are weak against Chenjesu and ships that fire lots of little shots, but that's about it. |
02:23 | <@McMartin> | And the Chenjesu isn't nearly as good against it as you'd hope. =( |
02:23 | <@McMartin> | Ships with bad homing attacks can occasionally fake them out sufficiently to burn out their fuel. |
02:23 | < Reiver> | ...What do marines do to their fuel? |
02:23 | | * Reiver curious. |
02:24 | < Derakon> | Bah. VUX spawned not only in range, but facing the right direction. >.< |
02:24 | <@McMartin> | Heh |
02:24 | <@McMartin> | VUX always spawn in range in melee. |
02:24 | <@McMartin> | But only in melee. |
02:24 | <@McMartin> | As such, Earth cruisers can basically mine VUX intruders in the full game. |
02:24 | < Derakon> | Yes, but usually they're facing the wrong way. |
02:25 | <@McMartin> | Reiver: Makes them bounce, I believe. |
02:25 | <@McMartin> | But the wide-angle guns can often take them out. |
02:26 | < Reiver> | Oh, hm. |
02:26 | <@McMartin> | The comet and the marines don't regenerate fuel for them. |
02:26 | < Derakon> | Aie...final battle is between my Shofixti Scout and their ZFP Stinger. |
02:26 | < Reiver> | But they get shot instead, which is unfortunate. |
02:26 | <@McMartin> | The limpets ignore the shield entirely. |
02:26 | < Derakon> | This is...less than ideal. |
02:26 | <@McMartin> | Heh |
02:27 | < Derakon> | Yes! Self-destruct for the win! |
02:27 | < Derakon> | Er, wait... |
02:27 | < Derakon> | It played my victory song, but then he's still listed as having the points for the Stinger at the end. I'm confused. |
02:27 | <@McMartin> | Long-standing bug. |
02:28 | < Reiver> | Fixable? |
02:28 | <@McMartin> | Eventually. |
02:28 | <@McMartin> | It's low priority. |
02:28 | <@McMartin> | The "correct" behavior is to list it as a draw. |
02:28 | <@McMartin> | But I think this was an original bug. |
02:29 | < Derakon> | So, um, how do you start a netmelee game? |
02:29 | <@McMartin> | There should be a "Net..." button for each side. |
02:29 | <@McMartin> | Choosing that will fire up the net dialog, where you set host and port. |
02:29 | <@McMartin> | Then one of you listens and the other connects. |
02:30 | <@McMartin> | Well, one sets port and listens, the other sets host and port and connects. |
02:30 | <@McMartin> | Keep the net delay below 5. |
02:30 | < Derakon> | No IP address setting? |
02:30 | <@McMartin> | host admits IP addresses as well. |
02:30 | < Derakon> | Oh, wait, there it is. |
02:30 | < Derakon> | Anyone want to play? ¬.¬ |
02:30 | | * McMartin is on an unreliable connection, and as netplay is TCP-based, can't do this now. |
02:31 | < Derakon> | Bah. |
02:31 | <@McMartin> | It handles lag pretty well, but dropped packets kill it. |
02:32 | <@McMartin> | I'll be up for it after dinner, at least. |
02:34 | < Derakon> | Thank you, random asteroid, for appearing out of nowhere to send me, at full speed, into the planet. I would've won that fight save for you! |
02:35 | <@McMartin> | Hmm. Apparently, the bug is that in simultaneous destruction, priority is given to the top player in all circmstances. |
02:35 | < Derakon> | ...okay, then. |
02:38 | < Derakon> | Okay, I'm getting *really* sick of getting unlucky spawning locations. >.< |
02:42 | <@McMartin> | Hmm. I could use dinner. |
02:42 | | * McMartin wanders off. |
02:43 | <@McMartin> | Feel free to prepare a 200-point team for later tonight. |
02:43 | < Derakon> | Roger wilco. |
02:43 | < Derakon> | Not that it'll save me from getting my butt handed to me. |
02:48 | < Derakon> | Evidently, the Kohr-Ah don't care to pick up deserters. O_o |
02:52 | | Syloq [Syloq@NetAdmin.Nightstar.Net] has quit [Connection reset by peer] |
02:52 | | * Derakon watches an Arilou teleport into an asteroid. Whups. |
03:01 | | * Derakon enforces load order on his Lua scripts in a rather terrible way. Object.lua, meet _Prototype.lua. |
03:02 | <@ToxicFrog> | ...um. |
03:02 | <@ToxicFrog> | You could just put: |
03:02 | <@ToxicFrog> | require "Prototype" |
03:02 | <@ToxicFrog> | at the start of Object.lua |
03:02 | | * Derakon facepalms. |
03:03 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: To *hic* --tory!] |
03:03 | < Derakon> | Er, you sure about that? |
03:03 | < Derakon> | Failed to load script file data/scripts/__System/Object.lua: data/scripts/__System/Object.lua:3: module 'Prototype' not found: |
03:03 | < Derakon> | no field package.preload['Prototype'] |
03:03 | < Derakon> | no file './Prototype.lua' |
03:03 | < Derakon> | And it goes on. |
03:04 | < Derakon> | Prototype.lua definitely exists, though. |
03:07 | <@ToxicFrog> | I note that all of those paths are relative to pwd() |
03:07 | <@ToxicFrog> | Not relative to where Object.lua is. |
03:07 | < Derakon> | Ahh. |
03:07 | <@ToxicFrog> | So you probably want something like: |
03:08 | <@ToxicFrog> | package.path = package.path..";data/scripts/__System/?.lua" |
03:08 | <@ToxicFrog> | In your main before you start loading stuff. |
03:08 | <@ToxicFrog> | And then you load stuff with [[ require "foo" ]] |
03:08 | < Derakon> | What do the braces do? |
03:08 | <@ToxicFrog> | I'm using them to delimit code. |
03:08 | < Derakon> | Ahh. |
03:08 | <@ToxicFrog> | Inside Lua, [[ and ]] are the UberString delimiters. |
03:08 | < Derakon> | I take it package is a special global? |
03:09 | <@ToxicFrog> | package is the table that handles all of the module-related stuff except for module() and require() |
03:10 | <@ToxicFrog> | http://www.lua.org/manual/5.1/manual.html#pdf-package.path |
03:14 | < Derakon> | Hrm...it occurs to me that such a construct would not be cross-platform. |
03:32 | <@ToxicFrog> | This is true. It won't work on DOS or win9x. |
03:34 | < Derakon> | What about win2k+? |
03:38 | <@Vornicus> | I believe NT systems automatically convert slashes |
03:38 | < Derakon> | Oh, really? Interesting. |
03:38 | <@Vornicus> | Do not quote me on that though |
03:38 | < Derakon> | I don't feel much obligation to support Win9x. |
03:39 | | * Derakon takes out the 300-Point Armada in his 200-point fleet, is satisfied. |
03:42 | <@McMartin> | Up for MP? |
03:42 | < Derakon> | Sure. |
03:42 | | * McMartin finished tweaking his 200-point fleet to exclude lolpwnz0r ships. |
03:43 | <@McMartin> | Try to connect to zinglon.dyndns.org |
03:43 | | * Vornicus wonders what ships are lolpwnz0r |
03:43 | <@McMartin> | Chmmr and Utwig, specifically. |
03:43 | <@McMartin> | Which are part of McM's Mavericks. |
03:43 | <@Vornicus> | Ah |
03:43 | < Derakon> | I have one Utwig. ¬.¬ |
03:43 | <@McMartin> | Hum. You seem to have disconnected. |
03:43 | < Derakon> | I see your fleet, though. |
03:44 | <@McMartin> | Do you also see "Top player: Connection Closed"? |
03:44 | < Derakon> | Um, can we both be the "bottom" player or does one have to be top? |
03:44 | <@McMartin> | We can both be bottom player. |
03:44 | < Derakon> | Good. |
03:44 | | * Derakon tries again. |
03:44 | <@McMartin> | OK, you're there. |
03:44 | < Derakon> | I see Balanced Team 1 vs. McM's Myrmidons. |
03:44 | <@McMartin> | Feel free to add ships to your side up to 200. |
03:45 | <@McMartin> | Likewise. |
03:45 | <@McMartin> | You can edit your fleet at this point. |
03:45 | <@McMartin> | OK |
03:45 | < Derakon> | My controls are bottom player's? |
03:45 | <@McMartin> | I'm at "Battle" now; select it to start |
03:45 | <@McMartin> | Assuming you see me as top, yes. |
03:45 | < Derakon> | I don't. |
03:45 | < Derakon> | I see you as bottom. |
03:45 | <@McMartin> | Oh. |
03:45 | <@McMartin> | OK, disconnect, and use the top "net..." button to connect with. |
03:46 | <@McMartin> | Er. Disconnect by shifting NETWORK CONTROL back to human. |
03:46 | <@McMartin> | w00t! |
03:46 | < Derakon> | Bah. |
03:46 | <@McMartin> | Doh. |
03:46 | < Derakon> | Game aborted due to loss of synchronization. |
03:47 | <@McMartin> | Odd |
03:47 | <@McMartin> | OK, one last try |
03:47 | <@McMartin> | Then I go yell at Netplay Dude and send him logs |
03:47 | | * Derakon waits... |
03:49 | < Derakon> | That was excessively silly. |
03:49 | <@McMartin> | aye. |
03:50 | <@ToxicFrog> | ? |
03:51 | <@ToxicFrog> | Aleph-One netplay silly? |
03:51 | <@McMartin> | Winner: Planet |
03:52 | < Derakon> | Indeed. |
03:52 | <@McMartin> | The silly was ZFP vs. Arilou |
03:52 | < Derakon> | I.e. Arilou tries to teleport into melee range before getting killed by pellet sprays. |
03:53 | < Derakon> | Blast! |
03:54 | <@McMartin> | That's enough of that. |
03:54 | < Derakon> | Indeed. |
03:55 | <@McMartin> | Ow. Nicely flown. |
03:55 | < Derakon> | Thanks. |
03:55 | < Derakon> | Yie. |
03:56 | | * Derakon snerks. |
03:56 | < Derakon> | That was, um, the wrong button. |
03:58 | < Derakon> | That was not only the wrong ship, but the wrong pilot. |
03:58 | | Silver_Adept [~silverade@71.238.34.ns-11293] has quit [Operation timed out] |
04:02 | <@McMartin> | Ow. |
04:04 | < Derakon> | Drat. |
04:06 | <@Vornicus> | How goes the battle? |
04:06 | < Derakon> | Grr. |
04:06 | < Reiver> | Where do I find this game again? |
04:06 | < Reiver> | I may as well have a go getting my hand in again. |
04:06 | < Derakon> | Frickin' Furies! |
04:06 | <@McMartin> | OK, that was absurd |
04:06 | <@McMartin> | I think you'll still eventually win. |
04:06 | < Derakon> | sc2.sourceforge.net. |
04:07 | <@McMartin> | Yeah, that's that. |
04:07 | < Derakon> | Phew. |
04:07 | <@McMartin> | Leeging Penetrator. |
04:07 | < Derakon> | Nice battle. |
04:07 | < Derakon> | I have never done so well with the Syreen before. |
04:08 | <@McMartin> | In any event, there was a handy demonstration there of the Earth Cruiser hitting above its weight. |
04:08 | < Derakon> | Against the Fury, you mean, or whatever I was flying against your Cruiser? |
04:08 | < Reiver> | ? |
04:08 | <@McMartin> | Both against the Fury (which also handily demonstrates what Point Defense is good for) and against the Kohr-Ah Marauder. |
04:08 | | * Reiver ponders. |
04:09 | < Reiver> | ...Shouldn't a Kohr-Ah slaughter a cruiser? |
04:09 | <@McMartin> | Reiver: If you're on Windows, do a "Mimic PC" install. |
04:09 | < Derakon> | Not especially, Reiver. |
04:09 | < Derakon> | Kohr-Ah has trouble defending against missiles. |
04:09 | < Derakon> | And the Cruiser can play the distance game fairly well, too. I think it's marginally faster than the Marauder. |
04:09 | <@McMartin> | Reiver: I kept distance with whips, spun to dodge near-miss projectiles, and managed to take out about 75% of his health before I got worn down. |
04:10 | <@McMartin> | It's also marginally faster than the Mmrnmhrm in X-Form, to my surprise and dismay =/ |
04:10 | < Derakon> | Didn't help that on entering, I fired off two FRIEDs for no reason whatsoever. |
04:10 | < Derakon> | Heh. |
04:10 | < Derakon> | I do note that we both used throwaway ships for the first fight. |
04:10 | <@McMartin> | Well, I chose Random any time I "shouldn't have known" what you had. |
04:11 | < Derakon> | Do you get insider knowledge or something? |
04:12 | <@McMartin> | Sometimes. |
04:12 | <@McMartin> | I got it after the Shofixti fight, for instance. |
04:12 | <@McMartin> | Your ship was displayed while I had my choice. |
04:12 | < Derakon> | Ahh, right. |
04:13 | < Reiver> | Package one: "Super Melee!" |
04:13 | < Reiver> | Package two: "Neutral Aliens, Don't Shoot!" |
04:13 | < Reiver> | Package three: "Ur-Quan Hierarchy" |
04:13 | < Reiver> | Buh? |
04:14 | <@McMartin> | Those are remix packs. |
04:14 | <@Vornicus> | Remix packs. |
04:14 | < Derakon> | Those are remixes. |
04:14 | <@Vornicus> | You don't need them. |
04:14 | <@McMartin> | Skip those for a first install. |
04:14 | < Derakon> | Not required. |
04:14 | | * Derakon snerks. |
04:14 | <@McMartin> | In fact, just pick "Mimic PC" and go from there. |
04:14 | <@McMartin> | Or "Minimal". |
04:14 | < Derakon> | Okay, which of us is the Fot? |
04:14 | | * Vornicus points at McM |
04:14 | | * McMartin looks at Vorn |
04:15 | | * McMartin looks at Derakon |
04:15 | <@McMartin> | (According to the source, the dude in the middle is the Fot.) |
04:15 | <@Vornicus> | Frankly there is no point to the game if you don't get the voice pack, though. |
04:15 | <@McMartin> | I disagree, especially if one is bandwidth-limited. |
04:15 | <@Vornicus> | well, okay. |
04:15 | <@McMartin> | That's a 100MB or so download. |
04:16 | < Derakon> | And the voices aren't *all* great. |
04:16 | <@McMartin> | As opposed to the 14MB download the Minimal install is. |
04:16 | < Derakon> | Reasonably decent, all things considered, though. |
04:17 | | Silver_Adept [~silverade@71.238.34.ns-11293] has joined #code |
04:18 | < Reiver> | McM: I just wish I could download the whole leeging thing in one go instead of downloading an installer that then downloads the rest for me. |
04:18 | < Reiver> | ESP. because I am prone to wanting to 'overnight' things, and/or employ download resumers. |
04:18 | < Derakon> | Are you on dialup? |
04:18 | <@McMartin> | Strangely, the people who want to download 15MB of stuff dislike having to download 300MB. |
04:18 | < Reiver> | I'm on 256k. |
04:19 | < Reiver> | (DSL.) |
04:19 | <@McMartin> | Also, there's nothing stopping you from downloading all the content individually and then putting them in by hand later. |
04:19 | < Reiver> | Eeeewww. >.> |
04:19 | <@McMartin> | Also, since those are platform-independent, a net installer means we don't upload 300MB of identical data three times. |
04:20 | <@McMartin> | So, suck it up and do a complete install, or pre-download everything off of the downloads page. |
04:20 | <@McMartin> | The content-pack links are there for a reason. |
04:20 | <@McMartin> | And the Windows installer will actually notice if the predownloaded stuff is there and only go to the net if it's not. |
04:20 | < Reiver> | I suppose. |
04:20 | < Reiver> | (Fast enough to leave things downloading while doing other things, but slow enough to 'welcome to the install! Click next to download the extra 100MB now.' can really be quite annoying.) |
04:21 | < Reiver> | I just distinctly Dislike web installs, usually around the point in time I go to give it to a dialup user who wanted to play. *coff* |
04:21 | <@McMartin> | That's why it lets you use predownloaded content. |
04:21 | <@ToxicFrog> | This, as McM said, is why it lets you use pre-downloaded stuff. |
04:22 | <@McMartin> | In fact, it will even compensate for overzealous browsers renaming the content packs. |
04:22 | < Reiver> | They're the 'content' section? |
04:22 | <@McMartin> | And will detect corrupt downloads. |
04:22 | <@McMartin> | Yes. |
04:22 | <@McMartin> | "content" is the mandatory one. |
04:22 | <@McMartin> | Then there's 3domusic and voice. |
04:22 | <@McMartin> | voice is wtfhuge, as the game has 14 hours of dialogue. |
04:22 | <@McMartin> | then there's remix1 through remix3. Leave those alone. |
04:23 | < Reiver> | What are the remixes? |
04:23 | <@McMartin> | They're, you know, remixes. |
04:23 | <@McMartin> | A bunch of musicians, including three or four of the original composers, went and did a new soundtrack. |
04:23 | <@McMartin> | The final remix pack is still forthcoming. |
04:25 | <@McMartin> | I think it's one song short, and has been for some time. |
04:25 | < Derakon> | You don't really need it if you haven't heard the music before, though. |
04:25 | <@McMartin> | Since a lot of the remixers got hired away by people who pay money. >_> |
04:26 | < Reiver> | pffft |
04:26 | <@McMartin> | Also, IMNSHO, a lot of the remixes don't play very well in-game. |
04:29 | <@McMartin> | (I mean, they reproduce fine, but they don't feel like "game music") |
04:30 | | * ToxicFrog idly hums the Ur-Quan whatevertheonewiththeawesomesoundtrackis theme. |
04:31 | | Reiver is now known as ReivOut |
04:34 | < Derakon> | Starting...tugboat...so...slow... |
04:35 | <@McMartin> | First thing to buy is five thrusters, yes. |
04:35 | <@McMartin> | You can also hit up the Jovian moons and Luna on the way in, to save yourself some prologue time. |
04:35 | < Derakon> | Yeah, I know. |
04:36 | <@McMartin> | You can max all engines before ever leaving Sol without breaking much of a sweat. |
04:36 | <@McMartin> | And then you can outrun Probes! |
04:36 | <@McMartin> | ... in hyper, anyway. |
04:36 | < Derakon> | Are they ever *not* in hyper? Or did you mean in combat? |
04:37 | <@McMartin> | I meant in combat. |
04:37 | <@McMartin> | But yes, as of 0.5, when a buffer overflow was removed, they are indeed occasionally Not In Hyper. |
04:37 | < Derakon> | Heh. |
04:38 | <@McMartin> | And they've always been occasionally Not In Hyper in the plot; the Thraddash confront you about this. |
04:39 | | * Derakon picks up some Tzo Crystals. |
04:39 | <@McMartin> | Speaking of which, the Beta Wolf system is nice this time of year. |
04:40 | | * Derakon realizes he must now start taking notes all over again. |
04:43 | <@McMartin> | Heh |
04:47 | <@McMartin> | (Oh yeah, also, since the PRNG that seeds the planets is slightly different between PC, 3DO, and UQM, the mineral distros have changed a bit. As a result, the richest system in the universe is now Delta Tauri. Bring lots of fuel and at least four cargo bays, preferably five.) |
04:48 | < Derakon> | I'm pretty certain I knew that already... |
04:48 | | * McMartin shrugs |
04:50 | | * Derakon excises Mercury from its orbit. |
04:50 | < Derakon> | Or at least, I got all the useful stuff. |
04:59 | < Derakon> | The Empire of Zelnick is well on its way to glory! |
05:11 | | ReivOut is now known as Reiver |
05:14 | < Reiver> | Is it possible to install a game, and then re-install the fancy packs later? |
05:14 | | * Reiver has downloaded the core files, wants to play instead of waiting for a 100MB file to finish. >.> |
05:15 | < Derakon> | Pretty sure, and I bet you can just install over it later anyway. |
05:15 | < Reiver> | Aha. |
05:15 | | * Reiver installplays |
05:15 | <@McMartin> | You can |
05:16 | <@McMartin> | It's easier to just download it with your getter of choice and move the whatever.uqm file into $INSTALLDIR\content\packages, though. |
05:16 | <@ToxicFrog> | you don't even have to reinstall; you just drop the packs in content/packages and it detects them next time it runs. |
05:16 | <@McMartin> | If you want them switchable, it goes in content\packages\addons\$NAMEOFCHOICE and you can enable or disable them with commandline options. |
05:18 | <@McMartin> | http://uqm.stack.nl/wiki/Content_Management |
05:18 | < Derakon> | Okay, TF, I'm reading through Object.lua now... |
05:19 | < Derakon> | If I wanted to, say, create a Ship class, I'd do it by "Ship = Object:Extend()" and then add my own functions? |
05:19 | <@ToxicFrog> | Yep. |
05:20 | <@ToxicFrog> | And your own member variables; by covention I initialize member vars to false (unless there's some other value they should reasonably have) |
05:20 | | * Derakon nods. |
05:20 | <@ToxicFrog> | When adding methods, __new will be the constructor. |
05:20 | <@ToxicFrog> | Metamethods such as __index will Just Work; each object is its own metatable. |
05:22 | < Reiver> | ...what the hell is that artwork |
05:22 | < Derakon> | What, in the game? |
05:24 | <@McMartin> | He may be referring to the UQM Chibis we were handed for the installer. |
05:24 | <@Vornicus> | wait, uqm chibis? |
05:24 | < Derakon> | Ahh. The Mac version doesn't have an installer. And thus, no chibis. ;.; |
05:24 | <@McMartin> | http://sc2.svn.sourceforge.net/viewvc/*checkout*/sc2/trunk/sc2/build/win32_insta ll/orzshofixti.bmp |
05:24 | <@McMartin> | http://sc2.svn.sourceforge.net/viewvc/*checkout*/sc2/trunk/sc2/build/win32_insta ll/ultron.bmp |
05:25 | < Derakon> | Good gravy... |
05:25 | <@McMartin> | Those are actually both abbreviated. |
05:33 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code |
05:34 | < Derakon> | So...I create a template class Ship and define a basic update function Ship:update that just applies accel to velocity and velocity to position, and a basic New function that initializes some values. |
05:34 | < Derakon> | Then I create Korg = Ship:Extend and give it a more detailed New function... |
05:35 | < Derakon> | Korg:New calls super:New, and Ship:New does the same. |
05:35 | < Derakon> | I believe this is necessary to allow proper inheritance, or did I misread? |
05:37 | <@ToxicFrog> | Umm. |
05:38 | <@ToxicFrog> | First of all, don't overload :New() |
05:38 | <@ToxicFrog> | Overload __new() |
05:38 | <@ToxicFrog> | :New() does the actual copy, sets up the superclass reference, etc |
05:38 | <@ToxicFrog> | And then calls :__new() if it exists. |
05:39 | <@ToxicFrog> | As for explicitly calling the superclass constructor - that depends. |
05:39 | < Derakon> | So if I overload __new, then how will the superclass reference be set up? |
05:39 | <@ToxicFrog> | I pastebinned an alternate version of :New() that implicitly calls it. |
05:39 | <@ToxicFrog> | ...is this a trick question? |
05:39 | < Derakon> | Argh... |
05:40 | <@ToxicFrog> | Argh. |
05:40 | <@ToxicFrog> | Ok. New() is a reserved function. |
05:40 | < Derakon> | I don't know what it is about Lua that just makes me confused. >.< |
05:40 | <@ToxicFrog> | It is the new operator; do not overload it without a very good reason. |
05:40 | <@ToxicFrog> | __new() is the constructor. |
05:41 | <@ToxicFrog> | New() takes care of all the framework stuff like the .super member. |
05:41 | <@ToxicFrog> | __new(), if present, takes care of whatever class-specific initialization stuff you need to do. |
05:41 | < Derakon> | I'm just trying to figure out how New gets called, then, if I don't invoke directly. |
05:41 | <@ToxicFrog> | You do invoke it directly. |
05:41 | <@ToxicFrog> | You don't overload it. |
05:41 | <@ToxicFrog> | Unless you mean "the superclass's New" to which the answer is "you don't |
05:42 | < Derakon> | So if I want to instantiate a Ship, I'll do local foo = Ship:New, which will set up supers, and then call the Object __new, which calls the Ship __new (or maybe the other order)? |
05:42 | < Derakon> | Or rather, it calls Ship:__new, which may or may not call Object:__new. |
05:42 | <@ToxicFrog> | If you're using the old Object:New(), yes, the latter is correct. |
05:42 | <@ToxicFrog> | If you're using the new one I pastebinned, the former is correct. |
05:43 | < Derakon> | Mmm...I'll leave it explicit, I think. It's more like what I'm used to. |
05:44 | <@ToxicFrog> | ...which languages have explicit calling of superclass constructors? |
05:44 | < Derakon> | Err... |
05:44 | < Derakon> | I don't know? |
05:44 | <@McMartin> | Python and Java, for two. |
05:44 | <@ToxicFrog> | Aha. |
05:44 | < Derakon> | Ah! Java! Yes, that's where I most recently did inheritance work. |
05:44 | <@McMartin> | Though it's optional in Java if you're calling super(). |
05:44 | <@ToxicFrog> | Anyways. In that case, you will need to invoke it as: |
05:45 | <@ToxicFrog> | SuperClass.__new(self, <arguments>) |
05:45 | <@ToxicFrog> | Where |
05:45 | <@ToxicFrog> | Where 'SuperClass' is the actual superclass object. |
05:45 | < Derakon> | Why not just super:__new(<arguments>)? |
05:45 | <@ToxicFrog> | Because that passes in the superclass as self. |
05:45 | <@ToxicFrog> | Rather than the newly created object. |
05:45 | < Derakon> | Right. |
05:46 | <@ToxicFrog> | I am in fact working on something that will let you just do super(...) and it will call the superclass's version of whatever function this is. |
05:46 | <@ToxicFrog> | It's currently 400 lines long and still not finished. |
05:46 | <@ToxicFrog> | And not as fast. |
05:47 | < Derakon> | Heh. I have no idea how my performance is right now. I still need to convert to using OpenGL to actually draw things; right now I spend ~80% of my time drawing things, and 5 400x400 sprites onscreen drops me to 30FPS. |
05:48 | <@ToxicFrog> | (doing this sort of thing transparently is, in fact, nontrivial; it involves lots of playing with setfenv()) |
05:50 | <@McMartin> | . |
05:50 | <@McMartin> | Why do you have to convert to OpenGL to draw things? |
05:50 | <@ToxicFrog> | Anyways. You can customize the OO framework as you see fit, if you want automatic whatever or manual whatever or what have you. |
05:51 | < Derakon> | I don't mean fully convert to OpenGL, McM. I mean have the SDL start drawing through OpenGL (textured quads, basically). IIRC that's the recommended way to get performant drawing. |
05:52 | <@McMartin> | Not on Zinglon it isn't. |
05:52 | <@McMartin> | OpenGL textured quads are about three orders of magnitude slower than SDL_BlitSurface. |
05:53 | < Derakon> | Really. |
05:53 | <@McMartin> | If you don't have 3D acceleration drivers, OpenGL DFW. |
05:53 | <@McMartin> | Unless you have an ATI card, in which case it will use Mesa. |
05:53 | < Derakon> | ...maybe it's because I had SWSURFACE on. ¬.¬ |
05:53 | <@McMartin> | Which is about three orders of magnitude slower than SDL_BlitSurface. |
05:53 | <@ToxicFrog> | And even if you have Mesa, we're talking seconds per frame, not frames per second. |
05:54 | <@McMartin> | Well, yes, since I don't get 1000 fps normally~ |
05:54 | <@McMartin> | Derakon: You have a "renderer" class, right? |
05:54 | < Derakon> | Sprites are, at this point, basically containers for sequences of frames and their orientations/positions. |
05:55 | < Derakon> | So yes, there's precisely one place where things are drawn to the screen. |
05:55 | | * McMartin can probably whip up a reasonably-fast pure-SDL renderer given an API to fill in. |
05:55 | <@McMartin> | But that can wait until there's a system that actually operates, etc. |
05:56 | < Derakon> | Yeah. |
05:56 | < Derakon> | I need to finish getting the class structure working in Lua. |
05:56 | <@McMartin> | I'm, um, astonished that you're having problems with 5 400x400 sprites, though. |
05:56 | <@ToxicFrog> | Well, SWSURFACE will result in fairly terrible performance on some systems. |
05:56 | <@ToxicFrog> | But yeag. |
05:56 | <@McMartin> | Given that UQM in non-OpenGL mode does five or six 320x240 blits per frame, and then does pixel-scale expansion. |
05:57 | <@McMartin> | And then does a 640x480 blit of that. |
05:57 | <@McMartin> | And that's just to mirror the screen. |
05:57 | <@McMartin> | (As in, not counting the blits to draw it to begin with) |
05:58 | < Reiver> | ...man the Chmmr Avatar is completely freaking scary /before/ it has the satellites. |
05:58 | < Reiver> | The sattelites... o.o |
05:59 | < Reiver> | "Missiles? Pft. Ded. Fighters? Marines? Fast ships? Please." |
05:59 | < Derakon> | Fast ships can more or less ignore the tractor. |
05:59 | < Derakon> | Their problem is getting through the ZapSats. |
06:01 | <@McMartin> | The Orz can match the tractor precisely |
06:01 | <@McMartin> | So you can point your gun backwards and pound the snot out of the 'sats. |
06:01 | <@McMartin> | (Shells take two hits to kill, and the lasers don't cycle that fast.) |
06:01 | <@McMartin> | Once the the 'sats are gone, you can them pummel the ship itself. |
06:01 | <@McMartin> | Against the AI, you can also do Thraddash cheese. |
06:02 | < Derakon> | Mmm, cheese! |
06:02 | < Reiver> | ? |
06:02 | < Derakon> | The Avatar doesn't dodge afterburners. |
06:02 | < Derakon> | The Avatar doesn't dodge, period. |
06:02 | < Derakon> | Well, except possibly the planet. |
06:02 | <@McMartin> | So you can place afterburner trails so that the 'sats just sweep up incredible amounts of damage from the fire trail. |
06:02 | <@McMartin> | At which point, with three passes, the Avatar is defenseless. |
06:03 | <@McMartin> | Also, Derakon. Do you have the Cone3d SDL demos? |
06:03 | <@Vornicus> | ...wait, which is the one with the cone of death? |
06:03 | <@McMartin> | Umgah. |
06:03 | < Derakon> | That'd be the Umgah. |
06:03 | <@Vornicus> | cuz I thought that was the Torch. |
06:03 | <@Vornicus> | ah |
06:03 | <@Vornicus> | well, all right then |
06:03 | < Derakon> | And McM: um, I know about them, but I don't remember if I've looked at them recently. |
06:03 | < Derakon> | Umgah is the worst ship in the game ¬.¬ |
06:04 | <@McMartin> | Derakon: I was just wondering how the "space shooter" performed, since it involves a 3909x400 BMP as its background |
06:04 | < Reiver> | Umgah? |
06:04 | <@McMartin> | And runs really smoothly with Pure SDL here. |
06:04 | < Reiver> | Oh, the ZFP one. Hee. |
06:04 | < Derakon> | They're the green pod things. |
06:04 | < Reiver> | That's an amusing ship. |
06:04 | < Derakon> | I'll check it out sometime... |
06:04 | <@McMartin> | Umgah have the antimatter cone and the retro rockets. |
06:05 | < Derakon> | They also have the worst maneuverability, range, and energy regen in the game. |
06:05 | <@Vornicus> | I'm pretty good with the Umgah. |
06:05 | <@McMartin> | Because your profiling information strikes me as "something going seriously wrong" |
06:06 | < Reiver> | Oh, their energy regen is ok. |
06:06 | <@McMartin> | ... The Umgah? No. |
06:06 | <@McMartin> | Their energy regen is zero unless you fail to shoot for a very long time. |
06:06 | < Derakon> | Um, Reiver, I'm not talking about the ZFP ship. |
06:06 | <@McMartin> | At which point they get all their energy back at once. |
06:06 | < Reiver> | Ah. I was thinking the wrong one then. My bad. |
06:06 | < Derakon> | The Umgah are the little bright-green things. |
06:07 | < Reiver> | Oh right. |
06:08 | < Reiver> | The ZFP ship still sucks, though~ |
06:08 | | * Derakon finds a backup, runs 2 sprites at 40FPS for ~10 seconds. Spends 78% of the time doing _BlitNtoN. |
06:08 | | * McMartin got a couple victories with the ZFP in his game against Derakon~ |
06:08 | < Reiver> | What's it's shtick? |
06:09 | | * Vornicus doesn't remember the zfp ship at all. |
06:09 | < Reiver> | As far as I could tell it just sprays stuff but doesn't shoot for long. >.> |
06:09 | <@McMartin> | Spray of bullets, and a point-blank attack that does ridiculous damage. |
06:09 | < Reiver> | ...how ridiculous? |
06:09 | < Derakon> | 10 units, I think. |
06:09 | <@McMartin> | Decent range on primary weapon, acceptable speed and maneuverability. |
06:09 | | * Derakon switches to HWSURFACE, spends 76.3% of the time doing _BlitNtoN. |
06:09 | < Derakon> | Well anyway, will work on profiling later. |
06:10 | <@McMartin> | Yeah |
06:10 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: *cough* *dies*] |
06:10 | <@McMartin> | The high bit is, if you want Linux support, you'll need a non-OpenGL mode for performance on a lot of machines. |
06:10 | < Derakon> | That's, um, sad. |
06:10 | <@McMartin> | For something with, say, a Matrox, you'll need it to run at all. |
06:11 | <@McMartin> | Feel free to pressure nVidia and ATI to release binary drivers that don't suck~ |
06:11 | < Derakon> | Heh. |
06:11 | < Derakon> | I'm sure with my massive developer clout, I'll have them turned around in no time. |
06:11 | <@McMartin> | ATI's binary drivers (a) don't support the full range of resolutions my card offers, and (b) hard-locks my X server about once every two days. |
06:11 | <@McMartin> | Feel free to modify that so that the number stays consistent~ |
06:12 | < Derakon> | Er? |
06:12 | <@McMartin> | (a) is in the plural and (b) in the singular. |
06:12 | < Derakon> | Ahh. |
06:13 | | Vornicus is now known as Vornicus-Latens |
06:14 | | SleepingSoldier is now known as GeekSoldier |
06:15 | | * Derakon finds a planet with a single unit of the worst resource. "Um, no." |
06:16 | | * Derakon then gets his only lander blown up. Damn. |
06:16 | <@McMartin> | Savescumming 4tw~ |
06:16 | < Derakon> | Yeah, my save reflexes haven't been restored yet. :\ |
06:16 | <@Vornicus-Latens> | Yeah, I don't think I ever "officially" lost a lander |
06:25 | < Derakon> | Whups. One fusion blast kills the Arilou. |
06:27 | <@McMartin> | Indeed. |
06:39 | | * Derakon swaps the Utwig for a X-Form and beats Behemoth Zenith with 29 points to spare. Woot! |
06:40 | < Derakon> | Lost my Chenjesu and a very inglorious Shofixti to the last Avatar, but my Supox pulled through. |
06:43 | < Derakon> | He did too, until recently. |
06:43 | < Derakon> | Ack. |
06:44 | | * Derakon thwaps himself, once again, to check window focus before sending messages. |
07:01 | < Derakon> | On the off-chance that you're still around, TF, your second version of Object.lua has a compilation problem. |
07:01 | < Derakon> | cannot use '...' outside a vararg function near '...' |
07:01 | < Derakon> | On the line "ctor(self, obj, ...)" |
07:02 | < Reiver> | um |
07:02 | < Reiver> | When playing the campaign |
07:02 | < Reiver> | Which button is 'shoot'? >.< |
07:02 | < Derakon> | Right control. |
07:02 | < Reiver> | ...Aha. |
07:02 | < Reiver> | And right shift is the other one? |
07:02 | < Derakon> | And Shift is the alternate button, which has various uses, e.g. pause, secondary fire. |
07:03 | < Derakon> | Yes. |
07:03 | < Reiver> | Useful. |
07:03 | < Reiver> | Sorta. ¬¬ |
07:04 | < Derakon> | Secondary fires are essential for most of the ships. |
07:04 | <@McMartin> | I prefer to use the secondary control scheme which uses ] for fire and [ for special. |
07:04 | <@McMartin> | But you have to pick that from the Setup menu until we get a GUI system that doesn't suck enough to let us do scrollbars without a mouse. |
07:05 | < Reiver> | Der: I realise the general gameplay. |
07:05 | < Reiver> | But the super melee controls were on the other side of the keyboard. >.> |
07:05 | <@McMartin> | Reiver: ... um. |
07:05 | < Derakon> | Odd. |
07:05 | < Derakon> | They shouldn't have been. |
07:05 | <@McMartin> | "Player 1" is the bottom player by default. |
07:05 | <@McMartin> | That's where the full game player is. |
07:06 | <@McMartin> | If you were playing as Top on Super Melee, yeah, SM controls are on the other side. |
07:06 | < Reiver> | I was player 2~ |
07:06 | <@McMartin> | By astonishing coincidence, Players 1 and 2 get opposite sides of the board~ |
07:07 | < Reiver> | You think?~ |
07:07 | < Reiver> | No, mostly I was "Hang on it lets you use spacebar to select your ship, but not to fire? Augh." |
07:07 | | Silver_Adept [~silverade@71.238.34.ns-11293] has quit [Operation timed out] |
07:07 | <@McMartin> | The menu controls are extremely generic, yes. |
07:08 | <@McMartin> | And there's a restriction of sorts in the flight controls just now that says that each flight action only gets two gestures. |
07:08 | <@McMartin> | So that they can all fit on the screen at once. |
07:09 | <@McMartin> | Once one of us gets around to implementing scrollbars, this will change. |
07:09 | < Reiver> | two gestures? |
07:09 | | * Derakon shoots down his traitorous crew. |
07:09 | <@McMartin> | Go to the Edit Controls screen under setup; it should be fairly straightforward. |
07:09 | <@McMartin> | There's two "slots" for each control. |
07:10 | <@McMartin> | If you want, say, Up Arrow *and* Numpad-8 *and* Return to all be thrust at once, you're out of luck. |
07:12 | < Derakon> | Okay, that was *silly*. Y-wing vs. Druuge: hang out stationary just outside the Druuge's range. It'll accelerate to you. Fire missiles. It'll fire to get away from them. Repeat. |
07:13 | <@McMartin> | Hee |
07:15 | | * McMartin gets some WSIF coding done |
07:16 | | * McMartin is suddenly absurdly tired |
07:16 | <@McMartin> | Time to shower and crash, I guess |
07:16 | < Derakon> | Night. |
07:16 | < Derakon> | ...I got licked! |
07:27 | | Derakon is now known as Derakon[AFK] |
07:42 | | Forj [~Forj@Nightstar-869.bitstream.orcon.net.nz] has quit [Quit: Gone] |
07:55 | | GeekSoldier_ [Rob@Nightstar-4339.pools.arcor-ip.net] has joined #code |
07:55 | | GeekSoldier [Rob@Nightstar-4730.pools.arcor-ip.net] has quit [Killed (NickServ (GHOST command used by GeekSoldier_))] |
07:55 | | GeekSoldier_ is now known as GeekSoldier |
08:59 | | Mahal is now known as MahalBEDD |
10:35 | | You're now known as TheWatcher |
10:48 | | gnolam [Lenin@Nightstar-13557.8.5.253.se.wasadata.net] has joined #Code |
10:55 | | * jerith hugs emacs' Erlang mode. |
10:55 | <@jerith> | I copied to a new file and edited that. |
10:56 | <@jerith> | When I first saved the edits, I got "Module does not match file name. Modify source?" |
10:57 | <@jerith> | And when I hit y it fixed the module name. :-) |
10:57 | < GeekSoldier> | ooh. |
10:57 | <@jerith> | It's little touches like that htat make a great editor. |
12:27 | <@jerith> | http://www.jerith.za.net/writings/erlangsockettut.html <-- Beta version, for comment and editing before I link to it from the navbar. |
12:29 | <@jerith> | I should probably join the Erlang mailing list... |
12:34 | | Reiver is now known as ReivZzz |
13:01 | | ReivZzz is now known as ReivSLEP |
13:34 | | * GeekSoldier wishes Python had a do...while() loop. |
13:38 | | * GeekSoldier rewrites python as perlthon. Yay Parrot! |
13:48 | <@jerith> | while foo: |
13:49 | <@jerith> | Or do you specifically want the condition at the end? |
14:15 | < GeekSoldier> | I want it to run at least once, as a do..while loop. |
14:15 | | jerith is now known as Abyss |
14:15 | | * GeekSoldier got spoilt on that with perl. |
14:15 | | Abyss is now known as jerith |
14:19 | <@jerith> | 16:14 * AnnoDomini stares into the abyss. |
14:19 | <@jerith> | 16:15 -!- You're now known as Abyss |
14:19 | <@jerith> | 16:15 * Abyss stares back into AnnoDomini. |
14:19 | <@jerith> | I was being Nietzian. |
14:19 | < GeekSoldier> | Ah. |
14:30 | < GeekSoldier> | The things I miss when I'm not in #dnd. |
14:37 | <@jerith> | #schlock_mercenary, actually. |
14:37 | <@jerith> | I'm not in #dnd. |
14:37 | < GeekSoldier> | ah. |
14:38 | < GeekSoldier> | I have not been to SM yet, and dnd is the only other place I had seen AnnoDomini |
16:25 | | Derakon[AFK] [~Derakon@Nightstar-12737.sea2.cablespeed.com] has quit [Connection reset by peer] |
16:51 | | Derakon [~Derakon@Nightstar-12737.sea2.cablespeed.com] has joined #code |
17:03 | | Vornicus-Latens is now known as Vornicus |
17:13 | | You're now known as TheWatcher[afk] |
17:15 | < Derakon> | Whenever you get back, TF, there's a minor typo in the second version of the Object.lua file you sent me. Namely, you forgot the "..." in Object:New's arguments. |
17:26 | <@jerith> | 19:03 < mitsuhiko> you can compile yarv with SUPPORT_JOKE |
17:26 | <@jerith> | 19:03 < mitsuhiko> discovered it by chance |
17:26 | <@jerith> | 19:03 < mitsuhiko> wicked |
17:26 | <@jerith> | 19:03 < mitsuhiko> in that situation there is special handling for the answer to everything |
17:26 | <@jerith> | 19:04 < EnTeQuAk> what's 'yarv'? |
17:26 | <@jerith> | 19:04 < mitsuhiko> EnTeQuAk: the ruby virtual machine |
17:26 | <@jerith> | 19:05 < EnTeQuAk> ahh :) -- funny |
17:26 | <@jerith> | 19:13 < mitsuhiko> irb(main):012:0> def the_answer_to_life_the_universe_and_everything |
17:26 | <@jerith> | 19:13 < mitsuhiko> irb(main):013:1> 23 |
17:26 | <@jerith> | 19:13 < mitsuhiko> irb(main):014:1> end |
17:26 | <@jerith> | 19:13 < mitsuhiko> => nil |
17:26 | <@jerith> | 19:13 < mitsuhiko> irb(main):015:0> the_answer_to_life_the_universe_and_everything |
17:26 | <@jerith> | 19:13 < mitsuhiko> => 42 |
17:26 | <@jerith> | 19:13 < mitsuhiko> that's the effect |
17:26 | <@ToxicFrog> | Derakon: oops. |
17:27 | < Derakon> | Jerith: um? |
17:28 | <@jerith> | An easter egg that you need to specifically compile in... |
17:29 | <@ToxicFrog> | Derakon: if you compile the Ruby VM with the options SUPPORT_JOKE, the variable the_answer_to_life_the_universe_any_everything always has the value 42 regardless of what assignments you perform on it. |
17:29 | < Derakon> | Ahh. |
17:29 | <@jerith> | Alhtough you may need to define it first. |
17:30 | <@jerith> | I've never actually compiled Ruby myself (or looked at the code). |
17:31 | < Derakon> | I've never even *used* Ruby, so *shrug*. |
17:32 | <@jerith> | Ruby's fun. |
17:32 | <@jerith> | Third only to Python and Erlang in my current estimation. |
17:33 | < Derakon> | There surely must be a way to simply append to a table... |
17:34 | < Derakon> | But I see nothing in 2.5.7 about it. |
17:35 | <@ToxicFrog> | How do you mean 'append'? |
17:35 | < Derakon> | By append, I mean that it should find the smallest un-used numerical index and add the desired key with that index. |
17:35 | <@ToxicFrog> | Either of these will work: |
17:35 | <@ToxicFrog> | table.insert(table, value) |
17:35 | < Derakon> | Er, add the desired value with that index as key. |
17:35 | <@ToxicFrog> | table[#table] |
17:35 | < Derakon> | Ahh. |
17:35 | <@ToxicFrog> | table[#table+1] = value |
17:36 | < Derakon> | I want a general guide to tables. >.< |
17:36 | <@jerith> | An (ahem) coffee table table book, as it were? |
17:36 | | * Derakon facepalms. |
17:37 | | * Vornicus throws jerith off the earth. |
17:37 | <@jerith> | Yay! I'm in orbit! |
17:37 | < Derakon> | Briefly. |
17:37 | < Derakon> | Well, more precisely, you're in freefall. |
17:37 | <@jerith> | I'm in orbit around the galactic core, if nothing else... |
17:38 | | * ToxicFrog blinkblinks |
17:38 | <@ToxicFrog> | I always found the manual to contain all the information I needed. |
17:38 | <@ToxicFrog> | On the other hand, I read the entire thing start to finish before I started coding. |
17:38 | < Derakon> | Oh, I'm sure it's all there. |
17:38 | < Derakon> | But I want a section devoted to all the things you can do with tables, while it appears that that information is scattered throughout the text. |
17:39 | < Derakon> | It reads more like a language spec than a programmer's guide. |
17:39 | <@ToxicFrog> | Well, it's kind of both. I prefer it to the stuff that tries to be just a programmer's guide. |
17:40 | < Derakon> | I'll grant that once you're familiar with the language, a reference text is much more useful. |
17:40 | <@ToxicFrog> | But yes, part of this is that I basically have chapter 2 memorized. So all the stuff I'm looking up is function signatures, which is all neatly packed together in chapter 5. |
17:40 | <@ToxicFrog> | If you *don't* have one or the other committed to memory, it is true you end up scrolling back and forth over the manual looking for stuff. |
17:44 | < Derakon> | Okay, so. I *think* I'm doing this the way I'm supposed to, but naturally it's not working yet. http://pastie.caboo.se/46206 |
17:45 | < Derakon> | The upshot is that Korg:getGraphics() appears to be returning nothing. |
17:45 | < Derakon> | The important bits are Ship:__new, Ship:getGraphics, Korg:__new, and initGame. |
17:53 | <@ToxicFrog> | That...should be working. |
17:53 | <@ToxicFrog> | Although, why is all your data initialization in the constructor? |
17:53 | <@ToxicFrog> | Ship = Object:Extend() |
17:53 | <@ToxicFrog> | Ship.graphics = {} |
17:53 | <@ToxicFrog> | Ship.angle = 0 |
17:53 | <@ToxicFrog> | Etc |
17:54 | <@ToxicFrog> | That said, it shouldn't make any difference whether it's in the ctor or not. |
17:54 | < Derakon> | You're right, it shouldn't matter. I'm just used to initializing data fields in constructors. |
17:55 | <@ToxicFrog> | We know the Ship ctor is getting called, as otherwise the Korg ctor would throw an error when it tried to store stuff in self.graphics |
17:55 | <@ToxicFrog> | ...er, wait |
17:55 | < Derakon> | Ahh...the Korg constructor is *not* getting called. |
17:55 | <@ToxicFrog> | Since you're initializing everything in the ctor, none of it exists until you instantiate the class. |
17:56 | <@ToxicFrog> | So, Korg does not actually have any data members. |
17:56 | < Derakon> | ...d'oh. |
17:56 | <@ToxicFrog> | And thus, Korg:getGraphics() will return nil. |
17:56 | <@ToxicFrog> | If you instantiate it with Korg:New() and then call getGraphics on the object, in the other hand, that will work. |
17:56 | < Derakon> | Or I could move the initialization out of the constructor. |
17:57 | < Derakon> | It works! It works! |
18:07 | | * Derakon swears viciously as the last fight ends with his Shofixti destroying my Kohr-Ah. >.< |
18:35 | | You're now known as TheWatcher |
18:56 | | MahalBEDD is now known as Mahal |
20:04 | | GeekSoldier is now known as SleepingSoldier |
20:18 | <@jerith> | So, I lurk in a programming channel on another network. |
20:19 | <@jerith> | It's populated with lusers and run by a psycho, but I see it as some kind of community service charity thing. Perhaps I can enlighten one or two and set them on the path to some clue. |
20:19 | <@jerith> | Someone came in asking about {$R *.DFM} in Delphi. |
20:19 | <@jerith> | http://www.delphibasics.co.uk/RTL.asp?Name=$R&ExpandCode2=Yes |
20:20 | <@jerith> | Who the hell decided that short forms of compiler directives with overloaded names could posisbly be a good idea? |
20:20 | < Derakon> | Wow. |
20:28 | <@jerith> | 22:27 -!- totenkopf [o@SF-C56826B5.telkom-ipnet.co.za] has quit [Quit: If I were any dumber, you'd have to water me twice weekly.] |
20:28 | <@jerith> | Some self esteem issues there, methinks. |
20:28 | <@jerith> | (That was the guy who asked the question.) |
20:44 | | Mahal is now known as MahalWork |
21:10 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
21:10 | | mode/#code [+o Chalcedon] by ChanServ |
21:14 | | * ToxicFrog eyes that code |
21:14 | <@ToxicFrog> | Wtf? |
21:14 | <@ToxicFrog> | Also, what is this channel? |
21:15 | <@Chalcedon> | TF? |
21:16 | <@ToxicFrog> | <jerith> http://www.delphibasics.co.uk/RTL.asp?Name=$R&ExpandCode2=Yes |
21:16 | <@ToxicFrog> | <jerith> So, I lurk in a programming channel on another network. |
21:17 | <@jerith> | #programming on shadowfire. |
21:17 | <@jerith> | I sit in a couple of channels there because that's where some meatspace friends are. |
21:17 | <@ToxicFrog> | Aah. |
21:27 | < AnnoDomini> | You have lusers for friends? :P |
21:28 | <@jerith> | AnnoDomini: My friends are in the other (private) channels I lurk in. |
21:28 | < AnnoDomini> | Aha. |
21:28 | <@jerith> | As I said, #programming is rather new to me and I originally went there to troll. |
21:28 | < AnnoDomini> | How nice of you. :P |
21:28 | <@jerith> | (I was in a funny mood. Not the bad kind of trolling, more get an idea of what they knew.) |
21:29 | | Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has joined #code |
21:29 | <@jerith> | So I pretended to be a newbie and asked a bunch of newbie-programming-type questions. |
21:29 | <@jerith> | Then I was outed by someone who knows me from elsewhere. |
21:36 | <@jerith> | This was followed by an altercation with the psycho who runs the channel where I was banned for daring to ask some background questions of a newcomer and "being all arrogant and thinking I'm better than everyone else." |
21:37 | <@jerith> | (Flakey network interlude.) |
21:37 | <@jerith> | I eventually sorted that out using my rather rusty and seldom-exercised skills of tact and diplomacy. |
21:40 | | * Chalcedon strangle a lecturer |
21:41 | | * jerith join in! |
21:54 | <@Vornicus> | Arg! Why am I designing a gui? |
21:55 | <@jerith> | Dunno. Why are you designing a gui? |
21:55 | <@Vornicus> | I don't know, that's why I'm asking you! |
21:55 | < Derakon> | Because he wants net-enabled Settlers. |
21:56 | | * Vornicus actually /has/ net-enabled Settlers, he doesn't even have to /write/ that. What he wants is saveable, no-software-downloading, all-the-variants-you-can-think-of, net-enabled Settlers. |
21:57 | <@Vornicus> | But that's not what I'm designing the GUI for today, apparently. |
21:57 | <@Vornicus> | http://vorn.dyndns.org/~vorn/uplink-gui-rethink.png <--- Uplink is. |
21:58 | < Derakon> | I've not played Uplink, so I can't really provide useful feedback. |
21:59 | <@jerith> | Uplink was fun until it got boring. |
22:04 | <@Vornicus> | It has too much grinding and tedious tasks - while I can't do much about the grinding without doing a lot of stuff to the balance of the game, I /can/ clear out some of the tedium, by making it possible to script things, and by making the GUI handle more stuff itself. |
22:04 | | * jerith nods. |
22:05 | <@Vornicus> | It's rather tedious, for instance, to have to actually go and get out file copier and file deleter for most jobs, when GUIs have handled that at a keystroke for 20 years. |
22:06 | | BlueTiger [BlueTiger@Nightstar-567.natsoe.res.rr.com] has joined #Code |
22:06 | | * jerith nods. |
22:06 | | BlueTiger [BlueTiger@Nightstar-567.natsoe.res.rr.com] has quit [Client exited] |
22:07 | | BlueTiger [~BlueTiger@Nightstar-567.natsoe.res.rr.com] has joined #Code |
22:08 | | * Derakon plugs away at his trig, trying to get ships to seek specific locations while keeping their frames pointed in the right direction. |
22:14 | | BlueTiger [~BlueTiger@Nightstar-567.natsoe.res.rr.com] has quit [Quit: ] |
22:14 | | BlueTiger [~BlueTiger@Nightstar-567.natsoe.res.rr.com] has joined #Code |
22:26 | | * Vornicus needs a Rocket Scientist! |
22:27 | | * jerith plays with solid fuel boosters! |
22:34 | | * Vornicus tries to find a map projection that makes great circles appear as sine waves. |
22:39 | | BlueTiger [~BlueTiger@Nightstar-567.natsoe.res.rr.com] has quit [Quit: ] |
22:39 | | Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has quit [Quit: This computer has gone to sleep] |
22:41 | <@jerith> | Doesn't Mercator do that? |
22:41 | <@Vornicus> | ...does it? |
22:43 | <@jerith> | Dunno. |
22:44 | <@jerith> | In movies satellite tracks always look sinusoidal. |
22:44 | <@jerith> | And I *think* they're using Mercator. |
22:44 | <@jerith> | Some rectangular projection at least. |
22:44 | <@jerith> | I suppose you could work it out... |
22:45 | <@Vornicus> | I am trying to. |
22:45 | <@jerith> | "Transferred to the Mercator projection, the great circle route will appear as a curved line that can be approximated by straight line segments." |
22:45 | <@jerith> | I guess not. |
22:45 | <@Vornicus> | a sine wave is a curved line that can be approximated by curved line segments. |
22:46 | | * Vornicus looks up Great Circle. |
22:47 | | AnnoDomini [~farkoff@Nightstar-29080.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
22:47 | <@jerith> | Perhaps a sinusoidal projection? |
22:47 | | * Vornicus wanders the intarnewbs for the equation he needs. |
22:47 | <@jerith> | http://www.fes.uwaterloo.ca/crs/geog165/cylproj.htm |
22:47 | <@Vornicus> | jerith: I can guarantee that one doesn't do it. |
22:48 | | Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has joined #code |
22:49 | <@jerith> | Ah well, good luck. I should have been asleep hours ago, so I'll go now. |
22:50 | <@Vornicus> | ni |
22:51 | | You're now known as TheWatcher[T-2] |
22:52 | < gnolam> | Vornicus: straight cylinder projection produces the familiar sinusoidal (or, tangential, really) tracks. |
22:53 | | AnnoDomini [~farkoff@Nightstar-29390.neoplus.adsl.tpnet.pl] has joined #Code |
22:53 | < gnolam> | For polar orbits. But that goes without saying, really. |
22:56 | | You're now known as TheWatcher[zZzZ] |
23:00 | <@Vornicus> | If I could find the equation which relates latitude to longitude for a great circle, I would be able to /prove/ it. |
23:11 | < Derakon> | Oh geeze, Arilou vs. Chmmr does *not* work. |
23:11 | <@McMartin> | ... no. |
23:11 | <@McMartin> | Neither does Earthling vs. Chmmr. |
23:12 | < ReivSLEP> | Which is Chmmr? |
23:12 | <@McMartin> | The one with the ZapSats. |
23:13 | < Derakon> | Mmm, rhino cheese. |
23:13 | <@Vornicus> | the Chmmr Avatar. Big and slow. It has point defense zapsats, a tractor beam, and a short-range gun. |
23:13 | <@McMartin> | ... that has the highest DPS in the game. |
23:13 | <@Vornicus> | Yes. |
23:14 | <@McMartin> | And quite possibly the best DPE of anything that actually costs E, but I'm not positive on that. |
23:14 | < ReivSLEP> | Oho. |
23:14 | < Derakon> | How much does the tongue attack cost? |
23:14 | < Derakon> | Chmmr laser is 2/2, right? |
23:14 | <@Vornicus> | Tongue attack? |
23:14 | <@McMartin> | Yeah. |
23:14 | <@McMartin> | The ZFP tongue attack. |
23:14 | <@McMartin> | Might be better. |
23:14 | < Derakon> | Which deals 10 damage, IIRC. |
23:14 | <@McMartin> | But it's PB, not short. |
23:15 | <@Vornicus> | ...I really should try the ZFP sometime. |
23:15 | < Derakon> | It's a rarely-used attack, honestly. |
23:15 | <@McMartin> | Indeed |
23:15 | < ReivSLEP> | You have to ram 'em to use it. |
23:15 | < ReivSLEP> | And, uh |
23:15 | <@McMartin> | I'm also not counting Wildly Variant Damage attacks |
23:15 | < ReivSLEP> | Hit the attack button at the right time /during/ said ram. |
23:15 | <@McMartin> | Like Ur-Quan Fighters. |
23:15 | < Derakon> | Or the FRIED. |
23:15 | <@McMartin> | Which do between 0 and 42 damage for constant cost. |
23:15 | <@McMartin> | Hum. |
23:15 | < ReivSLEP> | 42 being the maximum HP of a unit? |
23:15 | <@McMartin> | The Afterburners are 1 E for 2 D. |
23:15 | <@McMartin> | Yeah. |
23:16 | < Derakon> | Interesting. |
23:16 | < ReivSLEP> | Right. |
23:16 | <@McMartin> | OK, so not the best DPE. |
23:16 | <@McMartin> | Still the best sustained DPS. |
23:16 | <@McMartin> | And it's hitscan! |
23:17 | <@McMartin> | The tongue does 12 damage. |
23:17 | < ReivSLEP> | With respectable range. |
23:18 | <@McMartin> | And costs 10 * 3 / 4, apparently. |
23:18 | < Derakon> | The Chenjesu has pretty good DPS, note. |
23:18 | <@McMartin> | Hm. True. |
23:18 | < ReivSLEP> | With a tractor beam to help /achieve/ that range. |
23:18 | | * Chalcedon apply club to C# |
23:18 | < Derakon> | The tongue has fractional energy use? |
23:18 | | * ToxicFrog tsk tsks |
23:18 | <@ToxicFrog> | A club? |
23:18 | <@McMartin> | So, Tongue is 12/7 DPE |
23:18 | <@Chalcedon> | thats all it deserves |
23:18 | <@ToxicFrog> | Everyone knows a chainsaw is the correct tool for the job. |
23:18 | | * Derakon beats up on the computer with a 116-point win margin. |
23:18 | | * ToxicFrog lends Chalcy his chainsaw |
23:18 | <@Chalcedon> | Chainsaw is too easy |
23:19 | < ReivSLEP> | And then a trio of zapsats that defeat half the missiles, fighters, marines, and other such special attacks in the game. Heh. |
23:19 | | * Chalcedon bludgeon C# to death |
23:19 | | * Vornicus gives Chalcy a spoon. |
23:19 | | * Chalcedon then apply blunt spoon followed by chainsaw. |
23:19 | | * McMartin takes a scalpel, extracts "with", applies it to Java. |
23:19 | < Derakon> | The Chmmr's big problem is closing. Nothing wants to get close to it, and many of the ships have the speed to avoid it, even given the tractor beam. |
23:19 | <@McMartin> | (at Der) this is more true now than it was in the original. |
23:19 | < Derakon> | Oh? |
23:20 | | * Chalcedon idly wonders what to do with the equivalent of woodshavings |
23:20 | < Derakon> | Test the effects of gasoline on fire, Chalcedon. |
23:20 | <@McMartin> | The original had a bug in which the tractor would, when targeting an enemy that was fleeing, reducing the target's permanent speed, not its current. |
23:20 | < Derakon> | Yow. |
23:20 | < Derakon> | Long-range limpets FTW. |
23:20 | <@McMartin> | Ergo, the Chmmr could not be outrun, ever, unless you jinked. |
23:20 | <@McMartin> | And if you were jinking, you weren't escaping as fast. |
23:20 | <@McMartin> | Which meant, basically, you had to be inertialess. |
23:21 | <@McMartin> | There's four or five ships that can reliably outrun the Avatar now.. |
23:21 | < Derakon> | I still find it amusing, though, that the Chmmr is best fought by one of the Ur-Quan ships, when it was designed to end the war with said ships. |
23:21 | < ReivSLEP> | Well |
23:21 | < Derakon> | FRIED -> no more ZapSats. And Fusion blasts just go right through. |
23:21 | <@McMartin> | I'd claim it's best fought with the Orz Nemesis, myself... |
23:21 | < ReivSLEP> | It's The Ultimate Form Of Pain against the origional dreadnaught. |
23:21 | <@McMartin> | But you'll note that it's "Chmmr and allied forces" |
23:22 | <@McMartin> | You'd think the Utwig would make a bigger dent, too~ |
23:22 | < ReivSLEP> | Or at least that was what it was meant to be designed to kill. |
23:22 | < Derakon> | Okay, granted, McM, but the Ur-Quan and Kohr-Ah are still good against it. |
23:22 | < ReivSLEP> | Perhaps the Ur-Quan had not yet split by the time they decided to split? |
23:22 | <@McMartin> | No, the Ur-Quan split 20,000 years ago. |
23:22 | < ReivSLEP> | So they'd split before the Great War had actually come about. |
23:22 | < ReivSLEP> | Oh. Well then. |
23:22 | <@McMartin> | The Kohr-Ah had not arrived in the Sol Quadrant by the time the Chenjesu lost, though. |
23:23 | < Derakon> | The Ur-Quan are passing through, slave-shielding everyone they can to "protect" them from the Kohr-Ah, who just want to destroy everything. |
23:23 | < ReivSLEP> | Uh-huh. |
23:23 | < ReivSLEP> | But only those that don't ally with the Ur-Quan. |
23:24 | <@McMartin> | Actually, no, the Ur-Quan aren't "protecting" them from the Kohr-Ah. They're locking them down to ensure they don't become threats to the Ur-Quan. |
23:24 | < ReivSLEP> | (Was gonna say.) |
23:24 | <@McMartin> | Though they have gotten a bit of White Man's Burden syndrome over the millenia. |
23:24 | < Derakon> | Okay, I guess I misremember that particular dialogue. |
23:25 | < Derakon> | I do remember a certain amount of This Is For Your Own Good. |
23:25 | <@McMartin> | Yeah. |
23:25 | <@McMartin> | That's what they tell you when they confront you. |
23:25 | <@McMartin> | The initial motivation is from the Melnorme, who were there when the first Doctrinal War started. |
23:25 | < Derakon> | Whee omniscient merchants. |
23:25 | <@McMartin> | (In particular, The Ur-Quan urge you to build a genetic arcology and flee the galaxy once the Kohr-Ah beat them.) |
23:26 | <@McMartin> | The designers did finally confirm that the Melnorme were, in fact, a Milieu race~ |
23:26 | < Derakon> | Oh, REALLY. |
23:26 | <@McMartin> | It was fan speculation for quite a while that the Melnorme were the Mael-Num. |
23:26 | <@McMartin> | And the designers did confirm it awhile back. |
23:26 | < Derakon> | Interesting. |
23:27 | <@McMartin> | And the Mael-Num were the Last Milieu Race, over which the Kzer-Za and Kohr-Ah fought. |
23:27 | < ReivSLEP> | So why don't they have like, Uberships? >.> |
23:27 | <@McMartin> | The Mael-Num took this opportunity to bug the fuck out~ |
23:27 | < Derakon> | Their ships are designed for data, not combat. |
23:27 | < Derakon> | They're still pretty badass, though. |
23:27 | <@McMartin> | Also, you're dealing with their trade ships. |
23:27 | < ReivSLEP> | I suppose. |
23:27 | < Derakon> | (Fully charged shot DPE?) |
23:27 | <@McMartin> | (16 damage. Unsure of cost.) |
23:27 | < Derakon> | I think it's 4. |
23:28 | <@McMartin> | #define WEAPON_ENERGY_COST 5 |
23:28 | < Derakon> | Okay, then. |
23:28 | < Derakon> | 'Course, it's one of the worst DPS in the game, but oh well. |
23:28 | <@McMartin> | You can use it to block incoming shots in the meantime. |
23:28 | | Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has quit [Ping Timeout] |
23:29 | <@McMartin> | If you're really good. |
23:29 | <@McMartin> | Cruiser vs. Melnorme goes advantage: Cruiser, unless the Melnorme pilot is really good, at which point it becomes astonishingly one-sided. |
23:31 | < Derakon> | Yay! My homing code works now! |
23:32 | < Derakon> | Arbitrary game objects can call Ship:moveTowardsLocation() to home in on things. |
23:33 | < ReivSLEP> | Woe! |
23:34 | | Syloq [Syloq@NetAdmin.Nightstar.Net] has joined #code |
23:34 | <@McMartin> | Nice. |
23:34 | | * ReivSLEP frowns. |
23:34 | < ReivSLEP> | I reinstalled the thingy. |
23:34 | < ReivSLEP> | It tried to redownload the music. Mutter. |
23:35 | <@McMartin> | You have to tell it the directory you predownloaded to. |
23:35 | < ReivSLEP> | I did! |
23:35 | <@McMartin> | What's the MD5 sums on those files? |
23:35 | < ReivSLEP> | uh |
23:35 | <@McMartin> | I suppose length will do |
23:35 | <@McMartin> | But partial or corrupt downloads will be rejected by the installer |
23:35 | < ReivSLEP> | That would require installing additional software on this machine - it's not really equipped for gaming. >.> |
23:36 | <@ToxicFrog> | ...what does md5sum have to do with gaming? |
23:36 | <@McMartin> | You use it to verify downloads~ |
23:36 | < ReivSLEP> | 114,823,409 bytes. |
23:36 | < Derakon> | Determining if the download was valid. |
23:36 | <@ToxicFrog> | Yes, but I mean, md5sum isn't gaming software. |
23:36 | < ReivSLEP> | TF: Downloads. This computer was never intended to download anything. |
23:36 | <@ToxicFrog> | It's general utility software. |
23:36 | <@ToxicFrog> | It should be on anything regardless of whether it's a gaming machine or not |
23:36 | <@McMartin> | Wait, that's the music file, Reiv? |
23:37 | < ReivSLEP> | Er. Voices? |
23:37 | < ReivSLEP> | TF: As the usual setup was my primary machine downloaded, verified, installed, and then my subsidary boxen nicked it off of the primary's downloads folder. |
23:37 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
23:38 | <@McMartin> | TF: Cancel the download, copy it in by hand later. |
23:38 | <@McMartin> | Er, Reiv. |
23:38 | < ReivSLEP> | OK. |
23:38 | | * ReivSLEP drag-and-drops to, uh, where again? |
23:38 | <@McMartin> | $INSTALLDIR\content\packages |
23:38 | < ReivSLEP> | danke. |
23:38 | < Derakon> | Aie wrong slashes. >.< |
23:39 | < ReivSLEP> | Oh hush. |
23:39 | <@McMartin> | In fact, assuming you don't care about having it on Add/Remove Programs, you can just yoink the whole $INSTALLDIR as a unit. |
23:39 | < ReivSLEP> | This machine is XP, and must nessisarily stay XP, unless I wished a dual-boot. |
23:39 | <@ToxicFrog> | <-- Velcant has quit (Exit: <DocJeff> the stupid and ignorant are, sadly, not mimes) |
23:39 | < Derakon> | Heh. |
23:39 | < ReivSLEP> | 'cuz it's my machine, but I also lend it to other people - including a friend who is disabled and requires specialist computer software. |
23:40 | < ReivSLEP> | I have it installed on this machine lest her own fail (Distressingly common, it turns out) and she needs a spare to limp along on. |
23:40 | < ReivSLEP> | Needless to say, giving her a linux dual boot would probably be unhelpful given she gets her [usually utterly computer illiterate] carers to set the machine up so she can use it~ |
23:40 | < Derakon> | Kind of you. |
23:41 | | Syloq [Syloq@NetAdmin.Nightstar.Net] has quit [Connection reset by peer] |
23:41 | < ReivSLEP> | Der: Eh, well. I don't do IT for laptops. |
23:42 | < ReivSLEP> | I will if I deem it worthwhile, help arrange stopgaps while I get them repaired under warranty~ |
23:42 | < ReivSLEP> | And in this case, the computer is her one link to homework, social networks, and generic entertainment. |
23:43 | < ReivSLEP> | And here's me with an elderly laptop that I don't generally use much, and her with a flaky-as-hell Compaq or some such thing. |
23:43 | < ReivSLEP> | Just seemed the right thing to do, yaknow? *shrug* |
23:43 | < ReivSLEP> | (I usually get fed dinner for the priveledge, too. >.>) |
23:44 | | * Derakon snerks. |
23:45 | | * MyCatVerbs doesn't. |
23:45 | < MyCatVerbs> | The *other* great motivator of geeks. |
23:45 | < MyCatVerbs> | Free food. =D |
23:46 | | * McMartin inventories his laundry. |
23:46 | | * McMartin gathers coins and chemicals! |
23:47 | < Derakon> | Hrm. My auto-expanding quadtrees appear to have a mildly distressing tendency to lose sprites. |
23:48 | | Thaqui [~Thaqui@Nightstar-16868.jetstream.xtra.co.nz] has joined #code |
23:48 | < MyCatVerbs> | Derakon: mildly? |
23:49 | < Derakon> | Well, it all depends on your sense of scale. |
23:51 | < MyCatVerbs> | Ahhh, I see. |
23:53 | < MyCatVerbs> | So, rather worse than, "nobody sane loves ABBA." |
23:53 | < MyCatVerbs> | But not nearly so bad as, "Chuck Norris looks angry?" |
23:54 | < Derakon> | Ahh, Dr. McNinja can protect me from Chuck Norris. |
23:57 | < MyCatVerbs> | Not if he's too busy *drinking* with Chuck Norris. |
23:58 | < Derakon> | Dr. McNinja can drink Chuck Norris under the table. |
23:58 | < MyCatVerbs> | Drinking coffee. |
23:58 | < MyCatVerbs> | Irish coffee! Keeps you up while knocking you down. |
--- Log closed Mon Mar 12 00:00:56 2007 |