[01:33] hrm. [04:57] lol [04:57] self-repairing in how many bytes though? [04:57] i wrote a self repairing one, sorta! :) [04:57] or rather, when i saw how many bytes it'd take i decided better than to make that the default behavior when it got injured [04:59] also: i'm going to write a bvowk bot [04:59] a random number of times per day, it'll just /msg #corewars hrm. [04:59] :) [06:14] Join: fiveop joined #corewars [08:44] Join: Mizcu joined #corewars [08:54] little twiddle brought a riddle [08:54] this is how i play: http://users.evtek.fi/~mikaos/temp.log [08:54] who am i? [12:20] Met: i cannot find Cotton-DH on koen or olympus [15:24] energy-page updated: http://users.evtek.fi/~mikaos/energy/ [15:37] hrm. [15:37] grtz [16:14] no "hi"? [16:14] no "hows it going"? [16:14] maybe you are replaceable with a bot [16:46] Sorry miz :) [16:46] Hi.. how's it going? [16:48] quite fine [16:48] just spent a week at a summer cottage [16:49] so sauna and and beers? [16:49] er.. get rid of an and [16:49] i still dont drink beer, but lot of sauna [16:50] i spent 3 hours absorbing sunlight yesterday and now im two-colored; red and white [16:56] lol [16:57] you're finnish remember.. you're not used to daylight! [16:57] it's not for you ;) [16:57] yeah [17:09] hacking anything good? [17:09] good, no, stuff, yes [17:10] yesterday and before i wrote the riddle-warrior, and today i swapped a warrior in the wilmiz-draft [17:32] Join: Surf5 joined #corewars [17:32] afternoon all [17:33] its will varfar [17:33] on a computer I've borrowed.. [17:33] I'm in absolutely desparate need of simple maths / logic assistance! [17:33] hrm. [17:33] shoot [17:33] anybody about? [17:33] great! [17:34] right, so, imagine a rectangle [17:34] I (being a piece of code) am told to move the rectangle to a particular position at some fixed time in the future [17:35] so I lerp the position until the end-time is reached [17:35] easy? my description make sense? [17:35] lerp? [17:35] linear interpolate [17:36] thats were i have to leave the math-wagon [17:36] thats not the tricky bit! [17:36] Join: Metcalf joined #corewars [17:36] Hi :-) [17:36] so, if I want to move from 10,10 to 20,20 in 2 seconds, after 1 second I'd be at 15,15 [17:36] hi Met [17:37] hi john! Its Will, trying to get some maths/logic help here [17:37] That sounds reasonable [17:37] right, moving a point smoothly between two points is easy [17:37] my compilication: [17:37] whilst I am in the middle of doing this smooth move, [17:38] Miz: was Cotton-DH published? [17:38] I get given new instructions; I have to move to yet another point, and it should arrive at that point at some fixed time in the future [17:38] Metcalf: i do not know, but there are only references to it around [17:38] the fixed time for arriving at the first point is no longer important [17:40] so I have a list the fraction of the path between two points and the time I updated it, and the points I now have to pass through, and the time to reach the final point [17:40] ought to be so easy, but I've lost hours :-( [17:40] anyone got any insight at all? [17:40] Would a line drawing algorithm help? [17:41] yeap, I have a working linear interpolation [17:41] so I need to know which two points I'm between, and what fraction of the route between them I am, and I can plot them [17:42] Will: is it time-critical? [17:42] my problem is when I get appended a new destination, and the new final time changes, I don't successfully adjust my timings [17:43] the code isn't particularly time critical, but my deadline is :-( [17:43] oh I'm going to have a breakdown any moment now [17:43] I swear I never got stuck on this kind of trivia when I was younger [17:43] So you're heading for point 1 [17:43] When suddenly you're given a new destination 2 [17:44] yes [17:44] and I move in exact straight lines between each waypoint [17:44] And you still have to go to point 1, followed by point 2. [17:44] And you have to arrive at point 2 at a given time, no time given for point 1? [17:44] yes [17:44] And are you given a point 3 at any time [17:44] yeap [17:44] and each time I get a new point, I get a new final time [17:45] make a triangle between currpos, position1, position2, and use a^2+b^2=c^2 [17:45] are the co-ordinates always an interger? [17:45] yeah [17:46] think of trying to follow a waggling mouse cursor, and needing to arrive at where the cursor is at exactly n milliseconds after the last movement [17:46] so I have a list of waypoints, and the end time [17:48] so I want, for any given time, to be able to say 'the point is at xy' [17:48] I can derive xy from the time [17:48] the problem is working out the time [17:48] I guess it has to land on each point. Simply passing through it is not good enough [17:49] Do you need to travel at a constant speed [17:50] no, it needs to speed up [17:50] it doesn't need to model acceleration or anything [17:51] if movement of mouse can be seen as movement between positions, why do you need to change the movement in middle of a waypoint? [17:51] I tried to translate it into something I could explain; its not about mice [17:51] sorry for the confusion [17:53] lets try and sketch out an example: [17:53] p is a point, so: [17:54] p1 ... i ... p2 (at 1am) [17:54] where i is the interpolated point that I last drew [17:54] then suddenly I get a new point appended: [17:54] p1 ... i ... p2 ... p3 (at 1:10am) [17:55] Can't you use 50% of the time to go from the current location to point 1, then the remaining 50% to go from point 1 to point 2? [17:55] I know it's an ugly hack [17:55] Really you should calculate the total distance from current location to point 2 and move a constant amount in each time step, adjusting slightly to land exactly on point 1 [17:55] Do you still have to arrive at p2 at 1am even though you have a new final destination / time? [17:57] are the time steps integers too? [17:59] I like your thinking [17:59] I don't have to be perfectly smooth [17:59] I do have to move through each waypoint [18:00] my problem is the maths for working out the new fraction of the way between p1 and p2 when suddenly p3 with the new total endtime arrives [18:00] I hate sugar free drinks. I won't drink them. [18:01] * Surf5 has just charged his cup with caffine [18:01] well, hmm, so how else is the corewars world these days? [18:01] I kind of miss it you know [18:02] Will: divide the distance into tenth of total, and step through, with every step checking it there is new distance. [18:02] tenths [18:03] Metcalf: i ingest so much Energy Drinks that i kinda have to choose ones with fake sugar, i dont want diabetes [18:04] MSG: Ping timeout: 245 seconds [18:04] hmm thats a good idea mizcu [18:04] using distance [18:05] hmm its tricky for me [18:05] its depends on how the rest of the program is coded [18:05] if I have two separate lists of points, [18:06] I get two sets of waypoints but the same endtime [18:06] the things have to move in sync, passing through each intermediate way point at the same time [18:07] the thing really needs to be based upon time [18:07] damn it [18:08] the code I used to have: [18:08] took a direct line between the last computed point and the new end point [18:08] so it ignored superceded waypoints [18:09] that fundementally failed some constraint [18:09] it needs to be changed to pass through each intermediate point [18:09] and I can't think straight [18:13] Join: Metcalf joined #corewars [18:13] Forget p1 and just calculate the distance from i to p2 to p3 every time a new location arrives and recalculate [18:14] distance to travel each time step = distance / time remaining [18:14] time to arrive at first point = time remaining * sqrt((p2.x-i.x)^2+(p2.y-i.y)^2) / distance [18:14] time to arrive at first point will probably be a fraction of a time step, so at the nearest actual time step, adjust the location to p2 [18:14] Unless you need it smoother, in which case there's a little bit more calculation required [18:15] distance = sqrt((p2.x-i.x)^2+(p2.y-i.y)^2)+sqrt((p3.x-p2.x)^2+(p3.y-i.y)^2) [18:17] * Surf5 copies that down [18:19] * Surf5 goes and tries it quickly [18:21] It would be neater if instead of suddenly changing to a new speed when you receive a new location / time, you could speed up / slow down as required over a period of time [18:22] back in a few minutes [18:36] MSG: Ping timeout: 245 seconds [18:50] Join: Metcalf joined #corewars [18:50] If you really want it to look smooth, use an algorithm which fits a curve to a set of points [18:50] yeah, simulating a martian rover will be in the next version of the product! ;-) [18:51] I'm trying this distance remaining / time remaining [18:51] I've got a warrior which I benchmarked the other day, and it's worst score was 134 - against itself [18:51] the next bit will be syncing that all objects pass through the same corresponding waypoints at the same time [18:52] Surf5: is this for a contest by any chance ;-) [18:52] I guess I have to sum together the distance between p1 and p2 for all objects, and the same for p2 and p3 for all, etc, and then make an weighting for each or something [18:53] unfortunately I've dismantled some very careful but not quite right code, and I've got a queue of people waiting for me to fix it, and I go on holiday this weekend; I wish it were for smething I could put down :-( [18:55] maybe i shouldve posted my riddle tomorrow, your problem is more important [18:57] Mizcu: johnkw hasn't published lots of interesting warriors [18:57] I'd like to see Iocane Powder [18:58] I bet the source is lost forever :-( [18:59] (i didnt refer to cotton by that) [19:03] I've just been to obama's speech in berlin ... it was pretty much ... boring [19:04] MSG: Ping timeout: 245 seconds [19:04] 2,5 hours of sitting in the sun on the asphalt [19:06] Join: Metcalf joined #corewars [19:13] MSG: Ping timeout: 245 seconds [19:20] just realised that the funky mystery-program might fit Wilmiz [19:22] and switching Myzizzor into something with a hint more kick, and still one more for the "other" category [19:45] Mizcu: Metcalf: the distance idea is working nicely for individual paths; if I just weight waypoints by sum distance for all objects, I think I can get objects to go in step; so thank you very much re the distance thingy! [19:46] eh, say I said thanks to John next time he doesn't time out! [19:46] * Surf5 *waves* [19:46] MSG: Quit: ChatZilla 0.9.83 [Firefox 3.0/2008052906] [21:25] Join: Metcalf joined #corewars [21:28] wb [21:34] Thanks :-) [21:38] hmm, i need a scanner capable of atleast challenging PI's, but not too tough to overshoot the benchmark [21:38] MSG: Ping timeout: 245 seconds [21:40] Metcalf still needs to find another isp [21:40] true [21:41] Join: Metcalf joined #corewars [21:42] Isn't myZizzor good enough? [21:43] its currently the weakest in the testset [21:43] Have you tried running all the scanners between about 300 and 500 on Koenigstuhl against a paper/imp benchmark? [21:44] that would be little more painful that i am willing to spent thought on [21:44] 418.. i think ill check the next 50 warriors upwards for ideas [21:45] You're lucky your names works well in Wilmiz :-) [21:45] Just imagine Wilmet :-( [21:46] kinda get tired halfway through [21:48] You could aways make a warrior which suits your needs [21:49] Weaken a warrior by removing the boot, decoy, etc [21:49] yes, i found out that by making pswing's clear a smmd and adjusting the cleartime accordingly, it scores well to the demands [21:50] :-) [21:50] (and it wouldve totalled the hill when entering.. it entered 170 with smd -clear!) [21:51] minihsa was promising, but just little too tough [22:00] (still no guesses what the riddle warrior is?) [22:01] I did have a quick look and the answer didn't jump out at me [22:01] I'll have another look [22:08] MSG: Ping timeout: 245 seconds [22:10] Join: Metcalf joined #corewars [22:11] (and i just found a trick on Koen which i havent seen before..) [22:13] Oh, what trick? [22:13] http://users.ociw.edu/birk/COREWAR/94/HILL/why.red [22:20] instead of having something like jmn scan, check | jmp clear it uses only jmp *pointer, which is modified by self-hit [22:20] saves an instruction and one jump goes to unconditional [22:21] Join: elkauka joined #corewars [22:22] hi@all [22:23] h [22:24] Hi El Kauka [22:24] Mizcu: I'm not sure where else I've seen that trick. [22:24] It's definitely in one or two I wrote [22:25] well, anyway, does kauka want to guess what the riddle-warrior is before i start spilling the lentils? [22:27] whats going on? what riddle warrior? [22:27] see todays irc-logs [22:30] guess i pass on this one [22:32] its an 78-location Q^1 into SSD [22:32] MSG: Ping timeout: 245 seconds [22:36] Join: Metcalf joined #corewars [22:37] I can't find the warriors I was thinking of :-( [22:37] I remember the code, just not what I called it! [22:43] MSG: Ping timeout: 245 seconds [23:13] MSG: [23:16] MSG: Quit: humhum [23:27] Join: evenant joined #corewars [23:27] MSG: Read error: Connection reset by peer