--- Log opened Sat Jan 24 00:00:13 2009 |
00:25 | | Derakon[AFK] is now known as Derakon |
00:27 | | UndeadAnno [~farkoff@Nightstar-7012.neoplus.adsl.tpnet.pl] has quit [Quit: I got forehead-vagina raped, Mom. There's no counseling for that shit!] |
01:22 | <@Derakon> | ...dammit, I had a decent run on the Advanced course and then there was a bug in the highscores so it says I died on loop 0. >.< |
01:22 | <@Vornicus> | ;_; |
01:23 | <@Derakon> | Note to self: "loop" is equivalent to "int(rank)", not to "rank // (number of patterns in course)". |
01:28 | | Attilla [~The.Attil@Nightstar-9469.cdif.cable.ntl.com] has quit [Quit: <Insert Humorous and/or serious exit message here>] |
01:28 | <@Derakon> | This was enough to convince me that doomcircle should probably be in Intermediate...and I'm not certain that the homing mines in the minefield pattern are warranted, since I've not managed to dodge them once. |
01:29 | <@McMartin> | If we want the mines to home, we will bloody well hit '. |
01:29 | <@Derakon> | Yeah |
01:35 | | * Derakon tries to compensate by making the minefield more dense as the player levels up, but that ends up making the mines stupidly hard to dodge when they get laid. |
01:36 | | You're now known as TheWatcher[T-2] |
01:38 | <@Derakon> | This would be more doable if I could coerce the angles fired to be divisors of 360. |
01:40 | <@Derakon> | But getting a function that spits out 24, 12, 10, 8, 6, 4, etc. isn't easy~ |
01:42 | <@McMartin> | 5 is also a divisor! |
01:42 | <@Derakon> | Right. |
01:42 | <@Derakon> | See? Even I can't do it~ |
01:44 | <@Vornicus> | 2 3 4 5 6 8 9 10 12 15 18 20 24 30 36 40 45 60 72 90 120 180 |
01:44 | | You're now known as TheWatcher[zZzZ] |
01:44 | <@McMartin> | >>> [2, 3, 4, 5, 6, 8, 9, 10, 12, 15][3] |
01:44 | <@McMartin> | 5 |
01:44 | <@McMartin> | Subscriptable constants 4tw |
01:44 | <@Derakon> | ...yeah, that works. |
01:45 | <@Vornicus> | 360 has more divisors than any number below it. |
01:47 | <@McMartin> | (Take that, metric system~) |
01:49 | <@Vornicus> | (on the other hand, 1 degree is not constructible. blarg.) |
01:51 | | * Derakon eats one bomb making it all the way to 4 degrees per bullet, at which point he runs off the end of the array. |
01:52 | <@McMartin> | max~ |
01:52 | <@Derakon> | So this pattern needs two things: one, a limit on my subscripts, and two, something to make it harder. |
01:52 | <@McMartin> | I can think of two things |
01:52 | <@Derakon> | Yeah, I knew this would be a problem as I was writing the pattern, but I wanted to see how it played first. |
01:52 | <@McMartin> | (a) start bumping speed |
01:52 | <@Derakon> | Homing shotgun lasers! |
01:52 | <@McMartin> | (b) instead of advancing the array, select randomly amongst it for each emitter. |
01:53 | <@McMartin> | Some emitters being 10 and others being 5, not so bad, but some being 10 and others being *12*? |
01:53 | <@Vornicus> | that starts to get scary fast. |
01:53 | <@Derakon> | Have you played the minefield pattern? |
01:53 | <@Derakon> | It spews out this huge spread of bullets that then stop in space. The bullets need to fire in straight lines or they're basically undodgeable. |
01:53 | <@McMartin> | I'm not sure. Is it the... no, that's doomcircle |
01:54 | <@Derakon> | Basically at the start, the emitter rapidly creates the mines; it then fires a shotgun at you while you weave through the mines. |
01:54 | <@McMartin> | Derakon: They would be in this case; they just wouldn't be a grid full of blatant sweet spots. |
01:54 | <@Derakon> | The problem is that you can basically sit at the bottom of the screen and move left and right. |
01:55 | <@McMartin> | Right |
01:55 | <@Derakon> | Are you suggesting an irregular sleep time to the mines before they stop? |
01:55 | <@McMartin> | Hm. |
01:55 | <@McMartin> | I think I'm thinking of the wrong pattern |
01:56 | <@McMartin> | I'll have to fire up my copy when I get home |
01:56 | <@McMartin> | Oh wait, it's here. |
01:57 | <@McMartin> | I think I was actually suggesting continuous streams |
01:57 | <@Derakon> | Of mines or of the shotgun? |
01:57 | <@McMartin> | Of mines. |
01:57 | <@McMartin> | The issue is that they never *hit* the edge |
01:57 | <@McMartin> | Let them drift, but not aim. |
01:58 | <@Derakon> | It sounds like you're suggesting a pattern that basically mixes randomly-strewn slow bullets with aimed fast bullets. |
01:58 | <@McMartin> | s/randomly/regularly/, and yes I am. |
01:58 | <@Derakon> | Which sounds pretty interesting, actually. |
01:58 | <@Derakon> | Gimme a moment to implement it...but it's different enough from what I was going for with minefield that it's its own thing. |
01:59 | <@McMartin> | It also gives you high-rank ramp-up by boosting the speed of "slow" and the frequency of "fast" |
01:59 | | * Derakon nods. |
01:59 | <@McMartin> | Suggest name: "fandance" |
01:59 | <@Derakon> | That works. |
02:03 | <@McMartin> | This is likely to still fall into a pattern of "Stay within an ever-narrower-ray while ducking blasts" |
02:03 | <@McMartin> | So the strategy you listed still works. |
02:03 | <@McMartin> | And is probably still optimal |
02:03 | <@Derakon> | Hmm...basic concept seems sound. I'll need the "mines" to get into position faster, but that's a solvable problem. |
02:03 | <@McMartin> | But it's not as easy anymore. |
02:04 | <@McMartin> | And at lower ranks you can probably get away with shifting from lane to lane |
02:07 | <@Derakon> | Hmm...I broke my straight-shooting. |
02:07 | <@Derakon> | Which makes things much harder! |
02:08 | <@Derakon> | Number of bullets to fire: 360/[24,15,12,10,9,8,6,5,4][min(8, int($rank))] |
02:08 | <@Derakon> | Additional angle per bullet: 360/[15,24,30,36,40,45,60,72,90][min(8, int($rank))] |
02:10 | <@Derakon> | Oh, I see the problem. :\ |
02:11 | <@Derakon> | Fixable. |
02:12 | <@Derakon> | Yeah, there we go. |
02:13 | <@Derakon> | Yeah, I think this works pretty well, actually! |
02:14 | <@Derakon> | Want to give it a shot? http://derakon.dyndns.org/~chriswei/temp/fandance.xml |
02:14 | <@Derakon> | Er. |
02:14 | <@Derakon> | http://derakon.dyndns.org/~chriswei/temp/fandance.bml |
02:18 | <@McMartin> | That's not bad at all. |
02:19 | <@McMartin> | It makes me much happier to be flying slower in the Fan Dance and the Minefield. |
02:20 | <@Derakon> | The only problem I have with it is that there's noticeable lag each time a ring of bullets is generated at the higher ranks. |
02:21 | <@McMartin> | Hmm. |
02:21 | <@McMartin> | Can it generate them one per frame instead of all at once? |
02:21 | <@Derakon> | That's just a matter of making large numbers of bullets on a single frame. |
02:22 | <@Derakon> | That'll get tricky with the shotgun screwing up "relative" direction types, but I can give it a shot. |
02:22 | <@McMartin> | Hrm. Right. |
02:23 | <@McMartin> | ... vile cheat: drop a magic bullet at the start that's entirely responsible for the shotgun. |
02:26 | <@Derakon> | That wasn't so hard, actually. |
02:27 | <@Derakon> | Instead of doing 360° of bullets and then waiting 20 frames, I'm doing 90° of bullets, waiting 5, and looping that four times. |
02:27 | <@Derakon> | The shotgun still fires once per 360° worth of bullets. |
02:29 | | * Derakon adds a perfectly-aimed bullet to the shotgun spread, is satisfied. |
02:29 | <@Derakon> | I updated the version available for download. |
02:31 | | * Derakon blinks, has a bit of a headache. "I think that's enough coding for one workweek. Pick it up again tomorrow." |
02:42 | | Vornicus [~vorn@Admin.Nightstar.Net] has quit [Quit: ] |
06:09 | | GeekSoldier [~Rob@Nightstar-8573.midstate.ip.cablemo.net] has quit [Ping Timeout] |
06:13 | | GeekSoldier [~Rob@Nightstar-8573.midstate.ip.cablemo.net] has joined #code |
06:13 | | mode/#code [+o GeekSoldier] by ChanServ |
06:53 | | Derakon is now known as Derakon[AFK] |
08:28 | | UndeadAnno [~farkoff@Nightstar-7012.neoplus.adsl.tpnet.pl] has joined #Code |
09:49 | | You're now known as TheWatcher |
10:14 | | Rhamphoryncus [~rhamph@Nightstar-7184.ed.shawcable.net] has quit [Quit: Rhamphoryncus] |
10:27 | | Attilla [~The.Attil@Nightstar-9469.cdif.cable.ntl.com] has joined #code |
10:27 | | mode/#code [+o Attilla] by ChanServ |
12:30 | | Vornicus [~vorn@Admin.Nightstar.Net] has joined #code |
12:30 | | mode/#code [+o Vornicus] by ChanServ |
12:41 | | grossroot [~grossroot@Nightstar-2147.hackthisbox.org] has joined #code |
12:41 | < grossroot> | hi |
12:42 | < grossroot> | can anyone help with this problem? unix.com/high-level-programming/98061-again-socket-related-problem.html |
12:48 | <@Vornicus> | flerg, sockets. I can't help, anyway. |
12:49 | | mode/#code [+oovv ASCIISkull UndeadAnno grossroot KarmaBot] by Vornicus |
14:08 | <+grossroot> | yey ;-) |
14:08 | <+grossroot> | i solved this problem |
14:11 | <+grossroot> | thx all |
14:11 | | grossroot [~grossroot@Nightstar-2147.hackthisbox.org] has left #code [] |
14:30 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code |
14:30 | | mode/#code [+o gnolam] by ChanServ |
15:20 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has quit [Quit: Reboot] |
15:25 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code |
15:25 | | mode/#code [+o gnolam] by ChanServ |
15:25 | <@gnolam> | Pfft. Apparently, XP spazzes out if you yank an IDE device while it's running. |
15:28 | <@UndeadAnno> | Pfft. |
15:30 | <@GeekSoldier> | ja, it does. tdr |
16:09 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has quit [Quit: Time to borrow some more drives.] |
16:25 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code |
16:25 | | mode/#code [+o gnolam] by ChanServ |
16:32 | | KarmaBot [AnnoDomini@Nightstar-7012.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
16:33 | | UndeadAnno [~farkoff@Nightstar-7012.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
16:33 | | KBot [AnnoDomini@Nightstar-29247.neoplus.adsl.tpnet.pl] has joined #Code |
16:36 | | UndeadAnno [~farkoff@Nightstar-29247.neoplus.adsl.tpnet.pl] has joined #Code |
16:36 | | KBot is now known as KarmaBot |
17:02 | | You're now known as TheWatcher[afk] |
17:34 | | Derakon[AFK] is now known as Derakon |
17:39 | <@gnolam> | Whee! |
17:39 | <@gnolam> | The new computer is up and running. |
17:40 | <@gnolam> | Now all I have to do is get the power button working, and I can ditch this one. :) |
17:46 | <@gnolam> | (Yes, really, the power button.) |
17:52 | <@Vornicus> | pff |
17:53 | < UndeadAnno> | The power button is a very important, and oft-forgotten part of a computer. As I pretty much assembled all my boxes after the second, and they rarely had appropriate frames, making the power button work was a problem. |
18:15 | | Rhamphoryncus [~rhamph@Nightstar-7184.ed.shawcable.net] has joined #code |
18:19 | | You're now known as TheWatcher |
18:27 | | npx [~npx@Nightstar-26512.5-87-r.retail.telecomitalia.it] has joined #Code |
18:27 | | Attilla [~The.Attil@Nightstar-9469.cdif.cable.ntl.com] has quit [Connection reset by peer] |
18:27 | | npx [~npx@Nightstar-26512.5-87-r.retail.telecomitalia.it] has left #Code [] |
18:27 | | Attilla [~The.Attil@Nightstar-9469.cdif.cable.ntl.com] has joined #code |
18:27 | | mode/#code [+o Attilla] by ChanServ |
18:34 | < UndeadAnno> | What does the double-pipe operator mean? ||V|| |
18:35 | <@Vornicus> | Around a vector it means the length of that vector. |
18:35 | < UndeadAnno> | Thanks. |
19:22 | | * UndeadAnno slaps self. Was looking for "iloczyn wektorowy" on the English wikipedia instead of the Polish wikipedia, and hadn't realized it for half an hour. |
19:37 | | * Derakon survives a rank-4 Big Spiral with only using one bomb~ |
19:54 | | * UndeadAnno rages at whoever wrote this compilation from last year. The formatting is shoddy, punctuation is missing, the variables are wrong, ARGH. |
19:55 | | * Derakon sets up a quick little bit of recursion in a bullet pattern, laughs as the screen turns red. |
20:25 | < UndeadAnno> | What's the name for that coordinate system that uses an additional dimension that's equal 1? |
20:25 | <@Derakon> | I've not heard of such a thing. The nature of coordinate systems is such that a dimension that is always constant is pretty useless. |
20:28 | < UndeadAnno> | It's used for calculating translation, scaling and rotation. |
20:28 | <@Derakon> | Oh, you mean transformation matrices? |
20:28 | < UndeadAnno> | Yes. |
20:28 | < UndeadAnno> | More precisely, the complex transformation matrix in 3D. |
20:29 | <@Derakon> | I don't think they have names beyond transformation matrices. |
20:30 | < UndeadAnno> | At present, their names aren't a concern for me. Wikipedia only seems to have the matrices for 2D. |
20:30 | <@Derakon> | The matrices for 3D are 4x4. |
20:31 | < UndeadAnno> | Yes. |
20:31 | < UndeadAnno> | Hmmm. |
20:32 | < UndeadAnno> | Would a complex transformation matrix for 3D be equal T*S*Rz*Rx*Ry? |
20:32 | < UndeadAnno> | I'm guessing, that's what it seems to be, but I'm uncertain. |
20:32 | <@Derakon> | I have no idea, sorry. |
20:32 | <@Derakon> | Transformation matrices always made my brain hurt. |
20:34 | <@gnolam> | UndeadAnno: homogenous coordinates. |
20:34 | <@gnolam> | Although the last component isn't /necessarily/ 1, even if it is for the most part. |
20:35 | < UndeadAnno> | And my final question? |
20:38 | <@gnolam> | Dunno. What are Rz, Rx, Ry? Rotations around the axes? |
20:39 | < UndeadAnno> | Yes. |
20:39 | <@gnolam> | And what exactly is a "complex transformation matrix"? |
20:40 | < UndeadAnno> | It's supposed to do translation, scaling and rotation at once. In 3D. |
20:41 | <@gnolam> | In that case, any order you want. It depends on what you want it to do. :P |
20:42 | | * gnolam goes back to watching Dolph Lundgren single-handedly take on the Soviet and Cuban armies. |
22:02 | <@Vornicus> | ...my father just handed me a copy of The Dragon Book, that he's apparently had for a very, very long time. |
22:03 | <@Serah> | Which? |
22:03 | <@Serah> | Principles of compiler design? |
22:03 | <@McMartin> | That's the one. |
22:03 | <@McMartin> | Is that the first or second edition? |
22:04 | <@Serah> | Compilers: Principles, Techniques, and Tools is the other dragonbook, but was 2nd edded later. |
22:04 | <@Vornicus> | Not sure. It looks ancient... Let me check. |
22:04 | <@Derakon> | It's from the late 70's. |
22:04 | <@Serah> | Hmm. |
22:05 | <@McMartin> | What color is the dragon? |
22:06 | <@McMartin> | Green = 1st, Red = 2nd, Purple = 3rd |
22:06 | <@Vornicus> | Principles of Compiler Design, Green Dragon. third printing, 1979. |
22:09 | <@Vornicus> | So, old-ass, but it means I can take the time to go through it instead of having to give it back when I leave the library. |
22:10 | <@Vornicus> | YOu'll want to Scale First, then Rotate, then Translate. |
22:11 | <@Vornicus> | so T R S, in the end. |
22:14 | <@Vornicus> | Though I think more often you'll see rotations listed as axis-angle; iirc you never need more than one such thing for any rotation matrix, as any rotation matrix has an eigenvector. |
22:22 | <@Vornicus> | or, rather: T * R * S * v |
22:29 | < UndeadAnno> | Vornicus: What happens when I do them in the wrong order? |
22:30 | <@McMartin> | Wackiness, mainly. |
22:30 | <@Vornicus> | Well, if you swap S and R, for instance, you end up rotating and /then/ scaling - instead of, for instance, doubling a person's height, you may double his width. |
22:30 | < UndeadAnno> | Ooh. |
22:31 | <@Derakon> | Doesn't scaling behave weirdly if the object isn't at the origin, too? |
22:31 | <@Vornicus> | Swapping R and T will rotate the target around a point that is not the original thing's origin; instead of making the thing spin in place, it will orbit a location a long way off. |
22:31 | <@McMartin> | And swapping T and R means that instead of spinning it in place, you swing it around the world like an item on the string. |
22:31 | <@McMartin> | Derakon: It translates it a bit, I think. |
22:32 | <@Vornicus> | Translating before scaling will move the object even further; moving something up 3 feet and then doubling its heigh means that its feet are now 6 feet above their original position. |
22:33 | <@Derakon> | I tend to think of scaling as actually "moving each point on the object with respect to the origin". |
22:33 | <@Derakon> | Since that's what it is~ |
22:33 | <@Vornicus> | So is everything else. |
22:34 | <@Derakon> | Not so. Translation is arbitrary. |
22:34 | <@Derakon> | But scaling is basically "for each point, move that point along the vector connecting it to the origin." |
22:45 | < UndeadAnno> | Thanks for the info. |
22:45 | | * UndeadAnno moves onto a farse of a class, Modeling of Business Processes. |
22:46 | < UndeadAnno> | +l |
22:46 | < UndeadAnno> | *farce |
22:50 | < UndeadAnno> | Seriously, I got the impression that our teacher is completely disjoined from reality - most of all during our last meeting, when I wanted to see where my half-completed business plan was wrong. She did not read it (a second time this happened) and at a glance declared it a briefing... despite it having all the bloody things required to half-way. |
22:51 | < UndeadAnno> | My only guess is that the lack of a proper title page put her off. |
22:51 | | * UndeadAnno adds a title page, a subtitle and information page, and a table of contents page. |
22:53 | < UndeadAnno> | Three sheets of paper carrying no relevant information but that I'm the author. |
23:52 | <@McMartin> | The most important fact! |
23:53 | <@McMartin> | The primary message of much business communication is "I am worthy of promotion"~ |
23:53 | | * UndeadAnno bolds his name. |
--- Log closed Sun Jan 25 00:00:25 2009 |