--- Log opened Mon Oct 23 00:00:03 2006 |
00:16 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: Jouets de Dieu, jouets de jouets, et les jouets de me, fait naƮtre Clairvoire.] |
00:26 | | Thaqui [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has quit [Quit: Leaving] |
00:51 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
00:51 | | mode/#code [+o Chalcy] by ChanServ |
00:52 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
00:55 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
00:55 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
00:55 | | mode/#code [+o Chalcedon] by ChanServ |
00:56 | | ReivZzz is now known as Reiver |
00:58 | < Reiver> | What went wrong, McM? |
00:58 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has joined #code |
01:05 | | aoanla [~sam@Nightstar-13992.range217-42.btcentralplus.com] has quit [Quit: Leaving] |
01:07 | <@McMartin> | Reiver: Boredom, other things that need doing |
01:07 | < Reiver> | Aha |
01:07 | < Reiver> | Fair enough then. |
01:08 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #code |
01:33 | < Janus> | ... would it be alright if I asked for your oppinions on a path finding algorithm I've come up with...? It seems fine to me, but I may be overlooking something. |
01:34 | <@McMartin> | Shoot |
01:40 | < Janus> | Well, I figured it would be best to model it after the collision detection algorithm, in that it moves the checks for collisions every vector unit in that direction. So, first it calculates the angle from point 'A' to point 'B'. Then, it will go along this path in intervals the same as the unit vector. If it comes into a collision with a wall, it will then change it's by 90 or so degrees, and begin steping in that direction for a few |
01:40 | < Janus> | steps, before attempting to bee-line for the target destination again-- |
01:41 | | * Janus is long winded, oh-my. |
01:41 | <@McMartin> | Mmm |
01:41 | < Janus> | However-- |
01:41 | <@McMartin> | The usual way to do this is to have a navigation mesh on your map, I think |
01:44 | < Janus> | Before it attempts to close in on it's target again, it creates what I'll call a 'Node' object, with the (x, y) coordinates of that spot. It'll do this repeatedly until it reachs the target. Then, it rechecks the path from the starting point to each node, and it'll go to the one that's the farthest away without running into any walls along the way. |
01:44 | < Janus> | http://img.photobucket.com/albums/v492/tai_ragnarok/vectorpathfind.jpg ( I do love MSpaint~) |
01:45 | < Janus> | The bottem two situations are ones I'm not quite sure how to handle though... |
01:46 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
01:46 | | mode/#code [+o Chalcy] by ChanServ |
01:46 | <@ToxicFrog> | The classic solution, I think, is that you have some kind of undirected navigation graph (either nav nodes a la HL and other Quakeoid games, or by being inherently tile-based like Nethack, or whatever) |
01:46 | <@ToxicFrog> | Then you use one of the algorithms for finding the shortest path between nodes on a graph. |
01:46 | <@ToxicFrog> | Which I can't remember offhand, but TAoCP should have something, I think. |
01:47 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
01:48 | < Janus> | The physics is a little fuzzy though, so it would easily get knocked off by it's path. Also, the target may move around a bit as well. With the nodes though, this could easily be corrected by simply checking the first and last ones for any changes, leaving the valid ones in the middle intact. |
01:49 | < Janus> | *by/of |
01:59 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
02:13 | | mode/#code [+oooooo Ev3 EvilDarkLord Janus Raif Reiver Syloqs-AFH] by Reiver |
02:13 | | mode/#code [+o Thaqui] by Reiver |
02:23 | <@Raif> | Always remember: make sure the merchant gave you a BLUE carpet. |
02:32 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has quit [Ping Timeout] |
02:49 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has joined #code |
02:51 | <@McMartin> | TF: The Game Programming Gems series has several articles on it, too. |
03:01 | | * Vornicus tries to remember the ponding algorithm. |
03:03 | <@ToxicFrog> | "ponding"? |
03:06 | < Vornicus> | Yeah - essentially it takes large chunks of homogenous world and reduces them to a few straight paths. |
03:10 | | Reiver is now known as ReivOut |
03:13 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: bedibye!] |
03:40 | < Vornicus> | The one I'm thinking of is actually mostly for polygonal things - it's a ray-caster on significant features |
03:42 | | ReivOut is now known as Reiver |
03:45 | < Vornicus> | Then you've got a graph, and that gets shuffled through Dijkstra |
03:58 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
03:58 | | mode/#code [+o Chalcedon] by ChanServ |
04:14 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has quit [Quit: Leaving] |
04:31 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has joined #code |
04:55 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
05:00 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
05:00 | | mode/#code [+o Chalcedon] by ChanServ |
05:16 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
05:23 | | Reiver is now known as ReivOut |
05:26 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
05:44 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
05:45 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
05:45 | | mode/#code [+o Chalcedon] by ChanServ |
05:51 | | Mahal [~Mahal@Nightstar-11770.worldnet.co.nz] has quit [Ping Timeout] |
05:52 | | Mahal [~Mahal@Nightstar-11770.worldnet.co.nz] has joined #Code |
05:52 | | mode/#code [+o Mahal] by ChanServ |
06:12 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has quit [Quit: Leaving] |
07:23 | | You're now known as TheWatcher |
07:56 | | Mahal is now known as MahalAFK |
08:00 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has joined #code |
08:31 | < Vornicus> | I think I want to write a language and call it "bufo" |
08:35 | <@TheWatcher> | Just so you can go around telling people that you toad them you'd do it? |
08:35 | < Vornicus> | ...you're just /all about/ the frog puns, aren't you. |
08:37 | | * McMartin dispatches you all to the Bursar's office. |
08:48 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
09:24 | | Vornicus is now known as Vornicus-Latens |
09:28 | | You're now known as TheWatcher[wr0k] |
09:35 | | ReivOut is now known as Reiver |
09:43 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
09:43 | | mode/#code [+o Chalcedon] by ChanServ |
09:46 | | iki_satir [~user@85.101.173.ns-23007] has joined #Code |
09:53 | | iki_satir [~user@85.101.173.ns-23007] has left #Code [] |
10:05 | | Chalcedon is now known as ChalcyZzz |
10:10 | | EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout] |
10:15 | | Reiver changed the topic of #Code to: Welcome to #Code. It's like Swiss bank accounts, but for NS coders! "The primary purpose of the DATA statement is to give names to constants; instead of referring to pi as 3.141592653589793 at every appearance, the variable PI can be given that value with a DATA statement and used instead of the longer form of the constant. This also simplifies modifying the program, should the va |
10:15 | | Reiver changed the topic of #Code to: "The primary purpose of the DATA statement is to give names to constants; instead of referring to pi as 3.141592653589793 at every appearance, the variable PI can be given that value with a DATA statement and used instead of the longer form of the constant. This also simplifies modifying the program, should the value of PI change." - early FOTRAN manual for Xerox computers. |
10:17 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has quit [Client exited] |
10:22 | | EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code |
--- Log closed Mon Oct 23 10:29:06 2006 |
--- Log opened Mon Oct 23 10:29:11 2006 |
10:29 | | TheWatcher[wr0k] [~chris@Nightstar-29731.dsl.in-addr.zen.co.uk] has joined #code |
10:29 | | Irssi: #code: Total of 14 nicks [11 ops, 0 halfops, 0 voices, 3 normal] |
10:29 | | mode/#code [+o TheWatcher[wr0k]] by ChanServ |
10:29 | | Irssi: Join to #code was synced in 30 secs |
10:47 | | Thaqui [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has joined #code |
11:05 | | MahalAFK is now known as Mahal |
11:26 | | Mahal is now known as MahalZzz |
11:39 | | * EvilDarkLord augh, tries to see why (if x y z) is different from (cond (x y)(else z)). |
11:45 | < EvilDarkLord> | (Specifically, why it seems that the interpreter evaluates z even when x is true.) |
12:03 | <@Reiver> | What language? |
12:12 | < EvilDarkLord> | Scheme, a variant of Lisp. |
12:12 | < EvilDarkLord> | Well, dialect. Thingie. |
12:12 | | Thaqui is now known as ThaquiSleep |
12:13 | | * EvilDarkLord has the interpreter shot. |
13:13 | | ThaquiSleep [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has quit [Ping Timeout] |
13:30 | | ThaquiSleep [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has joined #code |
14:05 | | EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout] |
14:16 | | EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code |
14:17 | <@ToxicFrog> | EDL: it doesn't. |
14:18 | <@ToxicFrog> | (if 1 |
14:18 | <@ToxicFrog> | (display 1) |
14:18 | <@ToxicFrog> | (display 0)) |
14:18 | <@ToxicFrog> | outputs "1" |
14:18 | <@ToxicFrog> | And changing it to (if (not 1) ...) outputs "0". |
14:19 | < EvilDarkLord> | I know that. |
14:19 | <@ToxicFrog> | ... |
14:19 | <@ToxicFrog> | Then what's the problem? |
14:20 | <@ToxicFrog> | (if x y z) is the same as (cond (x y) (else z)) |
14:20 | < EvilDarkLord> | http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%_toc_%_sec_1.1.7 - Exercise 1.6 |
14:20 | <@ToxicFrog> | Oh, that. |
14:21 | <@ToxicFrog> | You want to know why an if function defined in terms of cond is not the same as either cond or the if keyword. |
14:21 | <@ToxicFrog> | And that's easy. |
14:21 | < EvilDarkLord> | Quite. But I have no idea why. |
14:21 | <@ToxicFrog> | "if" and "cond" are both special forms that evaluate their arguments only as needed. |
14:22 | <@ToxicFrog> | However, say you do, say |
14:22 | <@ToxicFrog> | (define (new-if condition true-branch false-branch) |
14:22 | <@ToxicFrog> | (cond (condition true-branch) (else false-branch))) |
14:22 | < EvilDarkLord> | Oh wait. D'oh. |
14:22 | <@ToxicFrog> | (new-if) is not a special form, it's a standard function. |
14:23 | <@ToxicFrog> | All three of its arguments are evaluated before it is called. |
14:23 | < EvilDarkLord> | I realised that the moment you noted it's a standard function. D'oh! |
14:23 | | * EvilDarkLord facepalms. |
14:24 | < EvilDarkLord> | But thanks. |
14:25 | <@ToxicFrog> | You haven't gotten to the fun bit yet, anyways~ |
14:25 | < EvilDarkLord> | I'm sure of that. I just finished page 1.1 :) |
14:26 | <@ToxicFrog> | (the first fun bit, IMO, being "how to implement data structures by throwing out data structures entirely and using function closures) |
14:26 | < EvilDarkLord> | So far I'm getting the impression that the quote about learning Lisp making you a better programmer was quite true. |
14:49 | | ChalcyZzz [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
14:49 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
14:49 | | mode/#code [+o Chalcedon] by ChanServ |
15:33 | | Reiver is now known as ReivZzz |
16:04 | | You're now known as TheWatcher |
17:30 | | EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has quit [Ping Timeout] |
17:43 | | EvilDarkLord [althalas@Nightstar-17046.a80-186-184-83.elisa-laajakaista.fi] has joined #code |
17:47 | | Vornicus [~vorn@Nightstar-18307.slkc.qwest.net] has joined #code |
17:47 | | mode/#code [+o Vornicus] by ChanServ |
17:52 | <@Vornicus> | ...this cannot stand. |
17:52 | | Vornicus changed the topic of #Code to: "The primary purpose of the DATA statement is to give names to constants; instead of referring to pi as 3.141592653589793 at every appearance, the variable PI can be given that value with a DATA statement and used instead of the longer form of the constant. This also simplifies modifying the program, should the value of PI change." - early FORTRAN manual for Xerox computers. |
17:52 | <@Vornicus> | There. |
17:57 | <@Vornicus> | Also, bah. I'm so used to Unix, I try to ssh to Windows machines. |
17:58 | | * TheWatcher patpats Vorn |
18:00 | | You're now known as TheWatcher[afk] |
18:46 | | ThaquiSleep [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has quit [Ping Timeout] |
18:48 | | ThaquiSleep [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has joined #code |
19:05 | | You're now known as TheWatcher |
19:37 | <@Chalain> | I need a word that means the semantic opposite of deprecate (not the temporal reverse, "undeprecate"). |
19:37 | < EvilDarkLord> | precate? |
19:38 | <@Chalain> | Possibly... I'm playing with that syntax, yeah. Proprecate? |
19:39 | <@Chalain> | The word is to be used to describe the act of misreading an interface and writing code that misuses the interface, but since the interface was undocumented AND the maintenance code was undocumented, the incorrect code sort of establishes a new de facto interpretation of the interface. |
19:39 | <@Chalain> | Apprecate, possibly. |
19:40 | <@Chalain> | Hmm |
19:40 | <@Chalain> | "To arrogate usage" would describe it. I just wish I could roll that into a near-CS term and preserve the meaning. |
19:41 | <@Vornicus> | "aggro" |
19:41 | <@Chalain> | Heh |
19:41 | | ThaquiSleep [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has quit [Ping Timeout] |
19:41 | | * Chalain aggros language lawyers. |
19:42 | <@Vornicus> | also, apropos only of Vimes' screensaver, Hexahelicene is an awesome-looking chemical. |
19:43 | <@Vornicus> | (it seems to like cocaine and dynamite, those just keep coming up) |
19:45 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
19:45 | | MahalZzz is now known as Mahal |
19:45 | | * Vornicus ponders. There's got to be a better term than that |
19:45 | <@Mahal> | Appropriate might do it. |
19:45 | <@Mahal> | IN the "taking over" sense of the word. |
19:51 | <@Vornicus> | Tetrahydrocannabinol! |
19:52 | <@Vornicus> | I think I like this screensaver, it gives me drugs. :P |
19:52 | <@Mahal> | Screensaver? |
19:52 | <@Chalain> | Mahal: Yeah, hence my love for "arrogate". "make undue claims to having" |
19:52 | | * Mahal nods |
19:53 | <@Vornicus> | Vimes, the linux box next to me, has a screensave that shows chemical structures. |
19:53 | <@Vornicus> | Right now it's showing Adenine. |
19:57 | <@Vornicus> | but it's shown me heroin and cocaine and lsd and nocotine and thalidomide and |
19:57 | | ThaquiSleep [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has joined #code |
20:01 | | ThaquiSleep [~Thaqui@Nightstar-8486.adsl.xtra.co.nz] has quit [Client exited] |
20:15 | | Mahal is now known as MahalWork |
20:44 | <@Vornicus> | ...it's not a very big set of chemicals. |
20:44 | | * Vornicus ponders poking Carn for a pile of important chemicals. |
20:52 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
20:52 | | mode/#code [+o Chalcedon] by ChanServ |
21:04 | <@ToxicFrog> | That's a pretty awesome screensaver, yes. |
21:04 | <@ToxicFrog> | Someday I need to see if I can get xscreensaver running on windows. |
21:28 | | Thaqui [~Thaqui@Nightstar-8027.adsl.xtra.co.nz] has joined #code |
21:41 | <@McMartin> | Zinglon can't do 1280-by-anything while OpenGL is active, so I typically don't have those screensavers running |
21:56 | | * Vornicus floons |
23:25 | <@Vornicus> | ...gnar. why isn't this server starting? |
23:26 | <@TheWatcher> | made the appropriate sacrifices to the old dark gods? |
23:29 | <@Vornicus> | I don't know - and I can't find any log files that tell me, either. |
23:29 | <@Vornicus> | it's postgres 7.4 |
23:30 | <@TheWatcher> | erf, sorry, can't be much help - postgres and I haven't crossed paths much |
23:31 | | You're now known as TheWatcher[T-2] |
23:34 | | You're now known as TheWatcher[zZzZ] |
--- Log closed Tue Oct 24 00:00:06 2006 |