--- Log opened Tue Mar 17 00:00:03 2009 |
00:05 | | Reiv [~82d94c4d@Nightstar-29731.dsl.in-addr.zen.co.uk] has quit [Quit: CGI:IRC (EOF)] |
00:11 | <@MyCatVerbs> | Tarinaky: that error is actually still part of C. :) |
00:11 | < Tarinaky> | Still. I don't understand what's wrong. |
00:11 | <@Vornicus> | ostringstream is I think an abstract classs. |
00:11 | <@MyCatVerbs> | Tarinaky: it means that some code attempted to declare a struct or union (or C++ object) containing another struct or uion or C++ object whose size isn't known. |
00:12 | <@Vornicus> | Or that. |
00:12 | <@MyCatVerbs> | For example, if I write: struct foo; struct { struct foo* data; } bar; |
00:12 | <@MyCatVerbs> | Then that's fine, because even though the compiler doesn't yet know the size of a struct foo, but it does know how large a pointer to one will be. |
00:13 | | Derakon is now known as Derakon[AFK] |
00:14 | < Tarinaky> | I think I follow. Why is a class in the standard libraries giving me this problem? |
00:14 | <@MyCatVerbs> | However! If you write: struct foo; struct { struct foo data; } bar; // then the compiler will throw a wobbly, because it needs to know how large a struct foo is in order to work out how much space it needs to reserve inside struct bar. |
00:14 | < Tarinaky> | Okay. So how do I concatenate an integer into a string? |
00:15 | <@MyCatVerbs> | In plain C, usually it'll be messed up header includes. Like it's possible to cause such problems around network socket code in Linux by forgetting <netinet/in.h>, for example. |
00:17 | <@MyCatVerbs> | In C++, I do not know. Every edge case is multiplied ten-million-fold. |
00:17 | <@McMartin> | That said, this should be valid: |
00:17 | <@MyCatVerbs> | If you're desperate then sprintf is, if not actually your friend, at least an occasionally amiable facsimile. |
00:17 | <@McMartin> | std::ostringstream oss; |
00:17 | <@McMartin> | oss << "Here's an integer, zomg: " << 3; |
00:18 | <@MyCatVerbs> | Yes. You can create ostreams that print to strings. |
00:18 | <@McMartin> | std::cout << oss.str() << std::endl; |
00:18 | <@McMartin> | Oh wait |
00:18 | <@MyCatVerbs> | McMartin: ? |
00:19 | <@McMartin> | Did you in fact remember to #include <sstream>? |
00:19 | <@McMartin> | A bunch of other headers pretend to define it but lie |
00:19 | < Tarinaky> | >.> no. |
00:19 | < Tarinaky> | Okay. Next problem. |
00:19 | <@McMartin> | Try that~ |
00:20 | < Tarinaky> | Is there any way to get a c string from ostringstream without copying ostringstream.str() into a string? |
00:20 | <@MyCatVerbs> | Ah, messed up includes. :3 |
00:21 | | * Tarinaky tried c_str() as a vagueish hope but it didn't work :( |
00:22 | <@McMartin> | .str().c_str(). |
00:22 | <@McMartin> | That str() is, IIRC, actually a fast accessor. |
00:22 | <@McMartin> | Not a copy. |
00:23 | < Tarinaky> | Doh. Thanks. |
00:24 | <@McMartin> | (And string copies are actually very fast anyway in most implementations, AIUI; they are copy on write) |
00:24 | < Tarinaky> | You can tell I should be asleep. I wanted to go string(sFileName.str() ).c_str(). Lol. |
00:24 | <@McMartin> | Heh. No worries. |
00:24 | <@McMartin> | C++ is full of pail. |
00:24 | <@McMartin> | pain. |
00:25 | < Tarinaky> | Eh. For some reason whenever I switch IDE I do silly things or get errors where I wouldn't expect them. |
00:25 | < Moltare> | ...the bit bucket strikes again |
00:26 | < Tarinaky> | I discovered earlier that AnEnum|=ONEOFTHEENUMARATIONS threw errors at me about converting from an int to an enum :( |
00:27 | <@McMartin> | Yeah, enums are typesafe in C++, unlike in C. |
00:27 | <@McMartin> | You can get around it with explicit casts. |
01:04 | < Tarinaky> | Would (int)ONEOFTHEENUMERATIONS work? |
01:05 | < Tarinaky> | Sorry, I mean (EnumType)ONEOFTHEENUMERATIONS rather |
01:06 | < Tarinaky> | Or better yet... Could I case the left hand side of the |= operator to an int? |
01:06 | < Tarinaky> | Or would that make things asplode? |
01:06 | < Tarinaky> | *cast |
01:07 | < Tarinaky> | Sorry... I'm not awake at this point. Hence why I've closed my IDE, lest I fuck up beyond compare >.> |
01:10 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Quit: <Insert Humorous and/or serious exit message here>] |
01:15 | | Derakon[AFK] is now known as Derakon |
01:16 | <@gnolam> | McMartin: Yeah, there is. Not entirely trivial though. |
01:16 | <@gnolam> | Or, well, that depends on the alignment of your billboard. |
01:16 | <@gnolam> | (Depending on classification, there are ~3-5 different kinds of billboards) |
01:16 | <@gnolam> | Rhamphoryncus: correct. |
01:17 | <@gnolam> | Rhamphoryncus: They're mostly used for LODing vegetation these days. |
01:24 | <@McMartin> | So, I had a particle system for the bits of an explosion |
01:25 | <@McMartin> | I was hoping to have each particle be an animation of a flame going to smoke then nothing. |
01:25 | <@McMartin> | So, "here's a bunch of points, each should be a quad square with the camera" |
01:25 | <@McMartin> | In other news, I got RedMon working. |
01:25 | | * McMartin does The Dance. |
01:26 | <@McMartin> | This means that my workplace will not require me to work with Visual Basic 6. |
01:50 | < Tarinaky> | ... "(gdb) print sin(90) " "$13 = 14880" << Wut? |
01:54 | <@McMartin> | Got me. |
01:55 | <@Derakon> | That's one evil superoctogenarian. |
01:55 | <@ToxicFrog> | print (double)(sin(90))? |
01:55 | < Tarinaky> | Heh. It's also funny because my ship rotates faster clockwise than anticlockwise. |
01:55 | <@Derakon> | Intentionally? |
01:55 | <@ToxicFrog> | Although, are you really sure you want 90 there and not pi/2? |
01:56 | <@Derakon> | It should still be in the range [-1,1]. |
01:56 | <@Vornicus> | If it's interpreting as an int then it'll go Mcwtf |
01:56 | <@ToxicFrog> | Derakon: yeah, I'm wondering if it's interpreting the result as an int or something |
01:56 | < Tarinaky> | Presumably because my computer can add (clockwise) faster than take away (anticlockwise). |
01:56 | < Tarinaky> | (gdb) print (double)sin(90) |
01:56 | < Tarinaky> | $24 = -1080477152 |
01:57 | <@Vornicus> | mcwhut |
01:57 | <@Derakon> | Er...you'd have to be doing this operation thousands of times per frame for the difference between addition and subtraction to be relevant. |
01:57 | <@ToxicFrog> | The fact that it's 90 shouldn't give those results, but it implies that you're using it incorrectly anyways |
01:58 | < Tarinaky> | Derakon: I'm not, at present, counting the amount of seconds. My ships rotating by 5 degrees every time it draws a frame. |
01:58 | <@Derakon> | Try rotating by 5 * pi / 180.0 instead. |
01:59 | < Tarinaky> | The rotation isn't the problem. |
01:59 | < Tarinaky> | The problem is acceleration. |
01:59 | < Tarinaky> | idXPos = sin(iHeading*5) and a similar line for idYPos. |
01:59 | < Tarinaky> | Whoops |
01:59 | <@Derakon> | X is cosine. :{ |
01:59 | <@Derakon> | Er. :) |
01:59 | <@ToxicFrog> | Tarinaky: the point is, if you are passing it degrees instead of radians, you will get weird results whether it's working right or not |
01:59 | < Tarinaky> | idXPos += sin(iHeading*5) and a similar line for idYPos. |
02:00 | < Tarinaky> | Derakon: I'm measuring the angle from North. |
02:00 | <@Derakon> | ...why? |
02:00 | < Tarinaky> | Because that made sense to me? |
02:00 | <@Derakon> | Unit circles are standard. ;.; |
02:00 | < Tarinaky> | ToxicFrog: Surely I'd still get a value within the definition of sine? |
02:01 | <@Derakon> | Tarinaky: presumably, but your implementation of sin might break if you hand it values outside of [-pi, pi]. That'd be a bad implementation, but it's conceivable. |
02:01 | <@ToxicFrog> | Tarinaky: yes. |
02:02 | < Tarinaky> | I don't remember ever having to deal with radians with the cmath functions before. |
02:02 | <@ToxicFrog> | However, as near as I can tell, what |
02:02 | <@ToxicFrog> | s happening here is: |
02:02 | <@ToxicFrog> | (1) rotation is not behaving as expected |
02:02 | <@ToxicFrog> | (2) calling sin from GDB is returning out of range values |
02:02 | <@ToxicFrog> | (2) could, for all we know, be a problem with GDB itself |
02:02 | <@ToxicFrog> | (1), however, is at least partly caused by the fact that you are not using sin properly. |
02:03 | < Tarinaky> | (gdb) print sin(3.141) |
02:03 | < Tarinaky> | $25 = -1080477664 |
02:03 | <@ToxicFrog> | If you fix this, and the problem goes away, you no longer need to worry about (2). |
02:03 | <@ToxicFrog> | As for having to deal with radians - http://linux.die.net/man/3/sin |
02:04 | <@ToxicFrog> | Or look it up on cplusplus.com/ref |
02:04 | < Tarinaky> | Yeah. I just did. |
02:04 | < Tarinaky> | But why is print sin(3.141) still giving me garbage? |
02:06 | <@Derakon> | Your result is 1000000011001101100011111100000 in binary |
02:06 | <@Derakon> | (That's 32 bits) |
02:06 | <@ToxicFrog> | Tarinaky: I don't know, be more explicit with your casting or try it in the program itself |
02:07 | | * Derakon tries to find the spec for which bits mean what in a 32-bit float. |
02:07 | <@Derakon> | Sign, then 8 exponent bits, then 23 fraction bits. |
02:08 | <@Derakon> | Of course, the expecting value is 0... |
02:08 | <@Derakon> | Er. Expected. |
02:11 | < Tarinaky> | Ah. I spotted why I was getting faster clockwise rotation than AC. |
02:11 | < Tarinaky> | sin(pi) is 1. |
02:11 | < Tarinaky> | cos(pi) is 0. |
02:11 | < Tarinaky> | No. Wait. |
02:11 | < Tarinaky> | Sorry, I'm thinking of pi/2 |
02:11 | < Tarinaky> | >.> |
02:12 | <@Derakon> | And this is why you use unit circles. |
02:13 | < Tarinaky> | I picked North as 0 degrees because that's where you measure bearings from. |
02:14 | < Tarinaky> | I have no idea wtf unit circles are. |
02:14 | < Rhamphoryncus> | it's replacing 360 with either 1 or pi, I'm not sure :) |
02:15 | <@Derakon> | Tarinaky: the unit circle is a circle of radius 1 centered on the origin. |
02:15 | <@ToxicFrog> | And 0, if I recall correctly, is right. |
02:15 | <@Derakon> | More generally, you use unit circles in the context of the standard definition of sine and cosine, which involves going counterclockwise from east. |
02:16 | <@Derakon> | You can measure from North, but then every time you show your code to someone they're going to say "You got your sine and cosine backwards" and you're going to have to explain why you're doing it differently. |
02:17 | | * Tarinaky isn't from a maths background. |
02:18 | < Rhamphoryncus> | Tarinaky: IMO, a range of 0..1 is the most useful for general programming, but should be translated into 0..2pi for much of the harder work |
02:19 | < Tarinaky> | Range of what sorry? |
02:19 | < Rhamphoryncus> | replace your 0..360 with 0..1 |
02:19 | < Rhamphoryncus> | Don't use degrees. They're silly, archaic units :) |
02:19 | < Tarinaky> | The heading's stored as 0..71 because it coincides with the number of sprites I have. |
02:20 | <@Derakon> | It'd be more general if you mapped your heading to the number of sprites you had at draw time. |
02:20 | <@Derakon> | That'd let you use arbitrary numbers of sprites for your circles, e.g. if you have a sprite that doesn't need to be as precise but still needs the same rotation logic. |
02:20 | < Rhamphoryncus> | I'm confused, what does a direction have to do with the number of sprites? |
02:21 | < Tarinaky> | Because I can't draw something facing a direction I can't draw. |
02:21 | <@Derakon> | He has one sprite for every orientation the ship can have. |
02:21 | < Rhamphoryncus> | ahh |
02:21 | < Rhamphoryncus> | So your headings are "locked" to certain offsets |
02:22 | < Rhamphoryncus> | I can understand storing that way, but you should still translate into 0..1 or 0..2pi for real work |
02:22 | < Tarinaky> | I think I'm going to go to sleep and probably rewrite this class tomorrow >.> |
02:23 | <@Derakon> | Here, Tarinaky: some code I wrote to get the frame to draw given an arbitrary direction and set of surfaces: http://paste.ubuntu.com/132269/ |
02:24 | < Tarinaky> | Changing where I measure 0 from would be a pita because I'd probably have to rename my sprites. |
02:24 | < Rhamphoryncus> | sin/cos/etc *require* radian arguments, so you might as well bite the bullet |
02:24 | <@Derakon> | You should be able to translate it to C++ without much difficulty. |
02:24 | <@Derakon> | And you can rename your sprites with a program, right? :) |
02:24 | < Rhamphoryncus> | meh, rename them as you load them, or simply as you translate from 0..71 to 0..2pi |
02:25 | < Rhamphoryncus> | Nothing wrong with working on disk with 0 as north |
02:25 | < Tarinaky> | Derakon: By program you mean I'd have to write a shellscript to do it. |
02:25 | | * Derakon nods. |
02:25 | < Rhamphoryncus> | Certainly more users will be familiar with 0 as north |
02:26 | <@Derakon> | They'll also be familiar with directions traveling clockwise. |
02:26 | < Tarinaky> | I should note that the code won't see light of day so there aren't any users :P |
02:26 | <@Derakon> | Heh. |
02:26 | < Tarinaky> | In a few months I'll tidy up my home directory and lose it in an archive. |
02:28 | | * Rhamphoryncus bets he's used radians as clockwise from north before |
02:28 | < Tarinaky> | Anyway. Sleep calls. |
02:31 | <@Derakon> | I have too, Rhamph...and then I decided it was a bad idea. |
02:31 | < Rhamphoryncus> | well I haven't done that much graphics :) |
02:35 | < Rhamphoryncus> | hee, milliturns. |
02:36 | <@Derakon> | ? |
02:39 | < Rhamphoryncus> | turn, as in rotation. 0..1 |
02:40 | <@Derakon> | I got that, was just wondering what amused about them. |
03:02 | | * Derakon experiments with differently-dimensioned maps. http://derakon.dyndns.org/~chriswei/games/jbrl/mapgen19.png |
03:25 | | * gnolam wonders what the hell they've done to Maxima. |
03:27 | | somnolence [~somnolenc@Nightstar-5762.hsd1.ca.comcast.net] has quit [Quit: Leaving] |
03:28 | | somnolence [~somnolenc@212.116.219.ns-22904] has joined #code |
03:43 | | * Derakon eyes the Super Metroid map. |
03:43 | <@Derakon> | I'm rapidly coming to the conclusion that much of what makes exploration interesting is discovering the loops. |
03:43 | <@Derakon> | (Link: http://db.gamefaqs.com/console/snes/file/super_metroid_world_a.png ) |
03:44 | <@Derakon> | Which tells me that I'll need to have support for loops at the game graph level, most likely, since I don't think they can be cleanly done otherwise. |
03:46 | <@Derakon> | Fortunately, now that I've refactored the wallwalker algorithm to work at the sector level instead of on the global map, loops in the map should no longer cause infinite loops in mapgen. However, I'll need to tweak my "remove islands" code so that it doesn't grab half the map. Simple maximum island size check should cover that. |
03:50 | <@Derakon> | Of course, doing this will mean turning the tree into a graph... |
03:52 | <@Derakon> | Hrm. I've already written a connectivity checker. How to generalize it so it operates on walls in addition to sectors? |
03:59 | | macdjord|class is now known as macdjord |
04:07 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has quit [Quit: Z?] |
04:20 | <@Derakon> | for connnection in self.connections: |
04:20 | <@Derakon> | if connection.id == node.id: |
04:20 | <@Derakon> | return 'connection' |
04:20 | <@Derakon> | Can you spot the error? ¬.¬ |
04:20 | <@McMartin> | lulz |
04:21 | <@McMartin> | Gotta love non-declaration-based languages |
04:21 | <@Vornicus> | connection connection connection connection! |
04:21 | <@McMartin> | For added comedy value, was there a top-level "connection" that was supposed to be getting shadowed, too? |
04:21 | <@McMartin> | Thus making it actually run? |
04:21 | <@Derakon> | Actually no. |
04:22 | <@Derakon> | Though I had initially made it "for node in self.connections", which would have done shadowing. |
04:22 | | * Derakon horribly breaks map gen. http://derakon.dyndns.org/~chriswei/games/jbrl/mapgen19b.png |
04:23 | <@Derakon> | Man, I wonder what happened here? |
04:23 | <@Vornicus> | *bewm* |
04:23 | <@Vornicus> | That's pretty cool though. |
04:23 | | * McMartin cues the Aquaria cave theme. |
04:24 | <@Vornicus> | Looks like you blew the tree builder. |
04:24 | <@Derakon> | I was trying to turn the tree into a mostly-tree-but-with-loops-on-the-end. |
04:25 | <@Vornicus> | That does not appear to have worked. |
04:25 | <@Derakon> | Not really, no. |
04:34 | <@Derakon> | Rgh...my "find nodes near this node" code is, completely naturally, finding nearby nodes that are practically siblings to the node. |
04:34 | <@Derakon> | I want to find nodes on different major branches of the tree. |
04:37 | <@Vornicus> | So sort by the number of nodes between the two given nodes when doing your heuristic, and use a... something or other. |
04:37 | <@Derakon> | Yeah, I need node-to-node connection distance...but that'll be a bit of a pain to calculate. |
04:40 | | * Derakon hits max recursion depth. Whee! |
04:40 | <@Derakon> | I love how it gives me the stack trace anyway. |
04:42 | <@Vornicus> | It's originally a tree; a graph search should find all distances in quadratic time. |
04:43 | <@Derakon> | It's mainly the "I need to go up and down the tree simultaneously" thing, since I'm starting from deep down the tree. But I fixed that by tracking the caller in the recursive "get me nearby nodes" function. |
04:44 | <@Derakon> | Now I just have the problem of the map being really gung-ho about adding connections. |
04:44 | <@Derakon> | And the problem of making connections with open space. |
04:55 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Ping Timeout] |
04:55 | <@Derakon> | Argh, where the hell are these things coming from?! |
04:56 | <@Derakon> | There's not even anything in the logs to indicate that new objects are being added where they say they're being added! ;.; |
04:57 | <@Derakon> | (Where by "say they're getting added" I mean "are getting drawn") |
05:01 | <@Derakon> | Ahh, fixed it. |
05:01 | <@Derakon> | I was creating connections before the map was done being laid out, so there were a bunch of nodes ready to make children that all happened to be on the same spot. |
05:02 | <@McMartin> | http://stupidfilter.org/demo.php |
05:02 | | Syloqs-AFH [Syloq@Admin.Nightstar.Net] has quit [Connection reset by peer] |
05:03 | <@Derakon> | It doesn't like a snippet of my code~ |
05:04 | | GeekSoldier [~Rob@Nightstar-8573.midstate.ip.cablemo.net] has quit [Ping Timeout] |
05:04 | <@Derakon> | So next I need for every node to know its distance to the nearest connection, so I can keep them a ways apart. |
05:09 | | GeekSoldier [~Rob@Nightstar-8573.midstate.ip.cablemo.net] has joined #code |
05:09 | | mode/#code [+o GeekSoldier] by ChanServ |
05:10 | | ToxicFrog [~ToxicFrog@69.171.131.ns-20955] has joined #code |
05:10 | | mode/#code [+o ToxicFrog] by ChanServ |
05:42 | | macdjord is now known as macdjord|t-10 |
05:45 | <@Derakon> | Okay, loops are getting made...and my wallwalker is broken. :\ |
05:46 | <@Derakon> | Still, good enough for tonight, I think. |
05:49 | <@Vornicus> | Show us! |
05:50 | <@Derakon> | Well, without a wallwalker, mapgen doesn't get to finish the map, so all's you get's a debugging shot. http://derakon.dyndns.org/~chriswei/games/jbrl/loops/01.png |
05:50 | <@Derakon> | (Made with a smaller-than-normal map with downsized parameters to suit, since otherwise debugging's pretty slow) |
05:52 | <@Vornicus> | Now /that/ is pretty. |
05:53 | <@Derakon> | May as well post it to the ol' LJ... |
06:02 | <@Derakon> | Done. |
06:11 | | macdjord|t-10 is now known as macdjord|slep |
06:43 | | Derakon is now known as Derakon[AFK] |
06:47 | | AnnoDomini [~farkoff@Nightstar-6915.neoplus.adsl.tpnet.pl] has joined #Code |
06:47 | | mode/#code [+o AnnoDomini] by ChanServ |
07:15 | | Vornicus [~vorn@Admin.Nightstar.Net] has quit [Quit: ] |
08:11 | | * McMartin writes Windows system code using X-Code, because his Windows machine is busy playing DVDs. |
09:15 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
09:15 | | mode/#code [+o Attilla] by ChanServ |
09:26 | | Rhamphoryncus [~rhamph@Nightstar-7184.ed.shawcable.net] has quit [Quit: Rhamphoryncus] |
10:07 | | macdjord|slep [~macdjord@Nightstar-9795.129-97-124-126.uwaterloo.ca] has quit [Ping Timeout] |
10:07 | | macdjord [~macdjord@Nightstar-9795.129-97-124-126.uwaterloo.ca] has joined #Code |
10:18 | | Moltare [~moltare@Nightstar-16368.plus.com] has quit [Ping Timeout] |
10:21 | | macdjord [~macdjord@Nightstar-9795.129-97-124-126.uwaterloo.ca] has quit [Ping Timeout] |
10:22 | | macdjord [~macdjord@Nightstar-9795.129-97-124-126.uwaterloo.ca] has joined #Code |
11:24 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code |
11:24 | | mode/#code [+o gnolam] by ChanServ |
11:35 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Connection reset by peer] |
11:35 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
11:35 | | mode/#code [+o Attilla] by ChanServ |
11:45 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Connection reset by peer] |
11:45 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
11:45 | | mode/#code [+o Attilla] by ChanServ |
13:18 | | GeekSoldier [~Rob@Nightstar-8573.midstate.ip.cablemo.net] has quit [Ping Timeout] |
13:22 | | GeekSoldier [~Rob@Nightstar-8573.midstate.ip.cablemo.net] has joined #code |
13:22 | | mode/#code [+o GeekSoldier] by ChanServ |
14:21 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Connection reset by peer] |
14:22 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
14:22 | | mode/#code [+o Attilla] by ChanServ |
14:23 | | ToxicFrog [~ToxicFrog@69.171.131.ns-20955] has quit [Quit: Doing electrical maintenance on the house...] |
14:25 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Connection reset by peer] |
14:27 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
14:27 | | mode/#code [+o Attilla] by ChanServ |
14:35 | | ToxicFrog [~ToxicFrog@69.171.131.ns-20955] has joined #code |
14:35 | | mode/#code [+o ToxicFrog] by ChanServ |
15:03 | | Syloqs_AFH [Syloq@Admin.Nightstar.Net] has joined #code |
15:04 | | Syloqs_AFH is now known as Syloqs-AFH |
15:13 | | KBot [AnnoDomini@Nightstar-29128.neoplus.adsl.tpnet.pl] has joined #Code |
15:14 | | AnnoDomini [~farkoff@Nightstar-6915.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
15:15 | | KarmaBot [AnnoDomini@Nightstar-6915.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
15:16 | | KBot is now known as KarmaBot |
15:16 | <@gnolam> | ... and apparently, you can't delete Gmail accounts. |
15:16 | < Alek> | :O |
15:17 | < Alek> | why? |
15:18 | <@gnolam> | No wait, you could. You just had to go to a completely separate page. :P |
15:21 | | AnnoDomini [~farkoff@Nightstar-29128.neoplus.adsl.tpnet.pl] has joined #Code |
15:21 | | mode/#code [+o AnnoDomini] by ChanServ |
15:24 | <@gnolam> | Hmm. I seem to recall the webmaster@ address being defined in some RFC, but I can't find it. |
15:28 | | Derakon[AFK] is now known as Derakon |
15:30 | | Vornicus [~vorn@Admin.Nightstar.Net] has joined #code |
15:30 | | mode/#code [+o Vornicus] by ChanServ |
16:03 | | MyCatVerbs [~mycatverb@Nightstar-13709.lurkingfox.co.uk] has quit [Ping Timeout] |
16:07 | | MyCatVerbs [~mycatverb@Nightstar-13709.lurkingfox.co.uk] has joined #code |
16:07 | | mode/#code [+o MyCatVerbs] by ChanServ |
16:55 | | Moltare [~moltare@Nightstar-16368.plus.com] has joined #code |
16:56 | <@Derakon> | The problem with giving sectors randomly-assigned colors: noticing the buggy lavendar sector in the middle of the pale rose sector. >.< |
16:57 | <@Vornicus> | If you finish all the sectors before coloring them you can use map-coloring to do it. |
16:58 | <@Derakon> | Unfortunately, I need the sector colors for the spacefilling automaton which makes the sectors. |
16:59 | <@Vornicus> | flergbota. |
16:59 | <@Vornicus> | Pick 30 or so very distinct colors and assign randomly? |
16:59 | <@Derakon> | Enh, I don't expect it to happen often and random colors are easier. |
17:29 | | Rhamphoryncus [~rhamph@Nightstar-7184.ed.shawcable.net] has joined #code |
17:41 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Ping Timeout] |
17:42 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
17:42 | | mode/#code [+o Attilla] by ChanServ |
18:02 | <@Derakon> | Victoire! http://derakon.dyndns.org/~chriswei/games/jbrl/loops/02.png |
18:20 | <@Derakon> | Hyooge map: http://derakon.dyndns.org/~chriswei/games/jbrl/loops/02b.png |
18:20 | <@Derakon> | (5686x3709) |
18:20 | <@Derakon> | Minor problem on the top with a room, but otherwise I really like this one. |
18:26 | <@McMartin> | It mentions loops, but I don't see any? |
18:27 | <@Derakon> | Hmm...giving directions is a bit tricky on a map this big. |
18:27 | <@Derakon> | Head east, then south, from the center. |
18:28 | <@McMartin> | Junctions have numerical coordinates |
18:28 | <@Derakon> | Oh, fair point. |
18:28 | <@Derakon> | Okay, so 3475,2946 is the base of one smallish loop. |
18:29 | <@Derakon> | That's SSE of the center. |
18:29 | <@Derakon> | An easier way to spot looks is to look at the grey space between tunnels. A contiguous gray area that doesn't connect with the edge is the interior of a loop. |
18:29 | <@Derakon> | Go negative space~ |
19:05 | <@MyCatVerbs> | Derakon: that would make an epic Jump 'n' Bump map. |
19:06 | <@MyCatVerbs> | Either that or Abuse. :D |
19:17 | <@Derakon> | A good platforming-level generator should be nicely extensible to all sorts of games. :) |
19:20 | | * Derakon writes a quick commandline script to generate batches of maps...only problem being that every time the program starts running, it steals focus. >.< |
19:21 | <@Attilla> | Man, uh, trying to translate how to use this weird use of GAUSSIAN is terrible, it involves ONIOM and describing the molecular structure in a pecular fashion, noting a point wherein all below use the secondary (or tertiary if necessary) modelling method |
20:03 | <@Derakon> | Hm...653x683 map takes a while to lay out. O_o |
20:04 | <@Derakon> | 135s to make the map. |
20:17 | <@EvilDarkLord> | What game was this for? |
20:18 | <@Derakon> | An experiment in making randomly-generated maps for a Metroid-style platformer. |
20:39 | < Rhamphoryncus> | Derakon: is it possible to get stuck? Or can you jump far enough to get out of all situations? |
20:39 | <@Derakon> | That's the trick, isn't it? :) |
20:40 | <@Derakon> | I've been refining the code that adds platforms to the map; ideally it should be impossible to get stuck. However, I don't think I'm all there yet. |
20:40 | < Rhamphoryncus> | ahh okay |
20:40 | < Rhamphoryncus> | it's very cool |
20:40 | <@Derakon> | Thanks. |
22:22 | <@Derakon> | Okay, it just took 125s to make this map...now I get to remake it with debugging output turned on! That'll probably be more like 10-15 minutes. |
22:23 | <@Derakon> | And all because this happened: http://derakon.dyndns.org/~chriswei/games/jbrl/loops/04.png |
22:24 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Connection reset by peer] |
22:24 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
22:25 | | mode/#code [+o Attilla] by ChanServ |
22:53 | <@Derakon> | Ahh, reproduced it on a map an order of magnitude smaller. |
22:53 | <@Derakon> | And it's caused by having two collinear children off the same tree. >.< |
22:57 | <@gnolam> | Hmm. That could be a band. "Collinear Children". |
22:58 | <@gnolam> | I'd say electro-industrial. Or possibly synth. |
22:59 | < Moltare> | I want to make a band called Colloidal Silver |
22:59 | < Moltare> | We'd play the blues. |
22:59 | < Moltare> | *rimshot* |
23:00 | <@Derakon> | Another bug fixed. |
23:04 | <@gnolam> | Moltare: Boo. |
23:05 | < Moltare> | gnolam: Eek. |
23:16 | | Moltare is now known as Molgorn |
23:35 | < Molgorn> | ...did anyone ever try a Zelda style MMO after Graal got legalled to death? |
23:36 | < Molgorn> | oh, I see they unlegalled it |
23:37 | < Molgorn> | all of 700 players |
23:37 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has quit [Connection reset by peer] |
23:37 | | Attilla [~The.Attil@Nightstar-9147.cdif.cable.ntl.com] has joined #code |
23:37 | | mode/#code [+o Attilla] by ChanServ |
23:38 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has quit [Ping Timeout] |
23:39 | | gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code |
23:39 | | mode/#code [+o gnolam] by ChanServ |
--- Log closed Wed Mar 18 00:00:15 2009 |