Timestamps are in GMT/BST.
| 01:19:58 | | koda has joined |
| 01:20:21 | | Flynnn Quit (Quit: This computer has gone to sleep) |
| 01:27:12 | | Flynnn has joined |
| 01:32:49 | | Flynnn Quit (Quit: This computer has gone to sleep) |
| 01:46:30 | | LordDVG has joined |
| 02:44:03 | | watusimoto has joined |
| 02:44:03 | | ChanServ sets mode +o |
| 02:58:51 | | Flynnn has joined |
| 04:15:35 | | Flynnn Quit (Quit: Leaving) |
| 08:40:20 | | bobdaduck has joined |
| 09:09:04 | | Skybax has joined |
| 10:01:10 | bobdaduck | AS;LDKFJA;GSH |
| 10:01:14 | bobdaduck | RAPTOR I SUMMON THEE |
| 10:09:26 | kaen | insufficient mana |
| 10:09:33 | kaen | you can get a kaen for what you have though. |
| 10:10:21 | kaen | bobdaduck ^ |
| 10:12:01 | bobdaduck | lol |
| 10:12:23 | bobdaduck | Well, here I am, programming along, and I realize I'm pretty much just making the levelgen script of "dough" |
| 10:12:39 | bobdaduck | and was gonna ask raptor if the creator of dough said he would release it or not |
| 10:15:47 | bobdaduck | So I don't think a kaen is what I'm really looking for at the moment |
| 10:21:00 | | raptor has joined |
| 10:21:00 | | ChanServ sets mode +o |
| 10:21:16 | Skybax | Halla |
| 10:21:41 | raptor | hello! |
| 10:21:59 | bobdaduck | There we go. |
| 10:22:02 | raptor | our farty friend is online! |
| 10:22:24 | bobdaduck | See kaen, just had to focus! |
| 10:22:30 | bobdaduck | Now raptor |
| 10:22:33 | raptor | hahaha |
| 10:22:39 | raptor | insufficient mana... |
| 10:23:04 | raptor | mana might be a good name for the dough pieces in "Dough" |
| 10:23:17 | bobdaduck | So did the maker of dough say he would release the script and stuff? |
| 10:23:42 | raptor | there is a possibility that the maker of 'dough' will wait to release until the level is more complete |
| 10:24:16 | Skybax | bobdaduck wants to code it himself... like a boss |
| 10:24:43 | bobdaduck | Alright I'll just do it myself then |
| 10:25:34 | raptor | that sounds like a... threat? |
| 10:26:18 | Skybax | xD |
| 10:26:59 | bobdaduck | Me doing anything with levelgens is pretty much a threat |
| 10:27:06 | | watusimoto Quit (Ping timeout: 245 seconds) |
| 10:27:25 | raptor | let's see how the polls are doing... |
| 10:27:39 | | thread_ has joined |
| 10:31:16 | | koda Quit (Ping timeout: 245 seconds) |
| 10:34:29 | Skybax | I lost |
| 10:35:11 | raptor | shhhh! |
| 10:35:29 | bobdaduck | I bet footloose wins |
| 10:35:48 | raptor | shhhhh! |
| 10:36:24 | kaen | is "cinnamon's on a roll" a reference to adventure time? |
| 10:36:32 | kaen | it sounds like it but I don't remember the line. |
| 10:36:54 | bobdaduck | lol dunno |
| 10:36:56 | raptor | I have no idea |
| 10:37:12 | bobdaduck | I can go ask her if you want |
| 10:37:19 | raptor | shhhhhhhhhhhhhhhhhhhHHHHHHHHHHHHHHH! |
| 10:37:32 | Skybax | Hahahaha xD |
| 10:39:17 | kaen | I'm 99% sure the author is actually a translucent crystalline mineral whose name I won't mention |
| 10:39:31 | kaen | I typed the levels name into google and found a pastebin :P |
| 10:39:36 | bobdaduck | rofl |
| 10:39:46 | bobdaduck | Nah they're all by footloose |
| 10:39:49 | bobdaduck | All of them |
| 10:39:51 | kaen | oh right |
| 10:40:05 | bobdaduck | she probably just got help |
| 10:40:22 | kaen | whoa |
| 10:40:30 | kaen | so, this pastebin |
| 10:40:36 | kaen | chrome is offering to translate it |
| 10:40:38 | kaen | from dutch |
| 10:40:42 | bobdaduck | from dutch? |
| 10:40:46 | bobdaduck | yeah bitfighter is in dutch |
| 10:40:49 | bobdaduck | old news bro |
| 10:40:49 | kaen | wtf is with chrome thinking level code is dutch |
| 10:40:58 | kaen | I thought that was just a weird bug of pleiades |
| 10:41:20 | bobdaduck | if you translate it it basically just adds a space between "barrier" and "maker" |
| 10:41:35 | kaen | heh |
| 10:42:13 | Skybax | Yay Chome |
| 10:42:31 | kaen | chrome is aight |
| 10:42:40 | Skybax | Ah laik et |
| 10:42:41 | kaen | my favorite parts of chrome are actually V8 and webkit |
| 10:42:58 | Skybax | I like how you can see what HTML code is used where on every webpage |
| 10:43:02 | Skybax | It's good for webbuilding |
| 10:43:14 | kaen | that's all part of webkit |
| 10:43:18 | kaen | safari has that stuff, too |
| 10:43:31 | Skybax | It's not as easy to access in Safari tho |
| 10:43:39 | Skybax | Chrome I just right click what I want lol |
| 10:43:50 | | Watusimoto has joined |
| 10:43:57 | kaen | that's true |
| 10:44:24 | kaen | yay farty's back! |
| 10:44:25 | Skybax | Yay I got all 22 of my mods to work! Happiness! |
| 10:45:13 | kaen | #minecraft is that way -> |
| 10:47:59 | Skybax | Shhh |
| 10:48:16 | Skybax | I didn't even say minecraft |
| 10:50:19 | bobdaduck | Its always minecraft |
| 10:53:34 | raptor | question for Watusimoto and kaen: I'm merging the Lua API method 'findGlobaObjects' in levelgen: and bot: but I find that the bot: implementation does magic stuff |
| 10:53:37 | raptor | specifically |
| 10:53:52 | raptor | it skips over itself and any cloaked ships around |
| 10:54:24 | raptor | and to do that it needs the Ship object of the bot |
| 10:54:39 | kaen | sounds like a fundamentally different function |
| 10:54:44 | raptor | exactly |
| 10:54:50 | kaen | similar in interface, different in semantics |
| 10:54:54 | raptor | yep |
| 10:55:07 | kaen | so I'd rename it and keep it there. |
| 10:55:16 | raptor | ok, that was my question - what to do with it? |
| 10:55:45 | raptor | so findGlobalObjects will do exactly what it's supposed to without filtering |
| 10:56:12 | raptor | and we'll use another method for filtering out things in a bot-specific way |
| 10:56:45 | raptor | findBotSeeableObjects |
| 10:56:48 | raptor | or something.. |
| 10:57:29 | bobdaduck | findBotSeeableObjects will be available for levelgen use? |
| 10:57:47 | raptor | no |
| 10:58:04 | raptor | levelgen has full access to finding anything |
| 10:58:04 | kaen | how about bot:findVisibleObjects() ? |
| 10:58:08 | kaen | does it do LoS testing? |
| 10:58:13 | bobdaduck | aw. |
| 10:58:28 | bobdaduck | LoS testing would be cool.............. |
| 10:58:47 | raptor | hmmm... it does not do LoS testing... |
| 10:58:52 | kaen | if you have a list of all objects you can do LoS testing yourself |
| 10:58:53 | kaen | hmm... okay |
| 10:58:54 | raptor | but I plan on adding that method for bots |
| 10:59:00 | kaen | ok |
| 10:59:14 | raptor | there is a pointCanSeePoint() method on levelgen: that I moved to bf: (so available to everything) |
| 11:00:04 | raptor | maybe we should provide a combined search + LoS testing method for bots? |
| 11:00:16 | raptor | instead of each separately |
| 11:00:57 | kaen | hmm |
| 11:01:01 | kaen | that would be nice |
| 11:02:21 | kaen | how about: bf:findGlobalObjects(), bot:findDetectableObjects(), bot:findVisibleObjects() |
| 11:02:48 | kaen | the difference between detectable and visible being the LoS test |
| 11:03:00 | raptor | which do you consider which? |
| 11:03:24 | kaen | hmm, if that's not clear then they are actually bad names I think :P |
| 11:03:35 | kaen | but findVisibleObjects would have the LoS test |
| 11:04:06 | kaen | BotSeeable really makes sense |
| 11:04:33 | raptor | findSeeableObjects? |
| 11:05:02 | kaen | I think the distinction between Seeable and Visible is as unclear as Detectable and Visible |
| 11:05:13 | kaen | how about |
| 11:05:21 | kaen | findObjects() and findObjectsInSight() |
| 11:05:54 | kaen | We should drop the "global" prefix imo because this is not a true global search as we're applying some rules |
| 11:06:01 | raptor | i agree |
| 11:06:03 | raptor | actually |
| 11:06:20 | raptor | LoS is not a really good test sometimes, because humans have a viewport |
| 11:06:28 | raptor | and can see other players behind walls |
| 11:06:39 | kaen | ah, that's true |
| 11:06:44 | bobdaduck | But they can't shoot others behind walls |
| 11:06:52 | bobdaduck | Except in DnD |
| 11:06:53 | kaen | heh |
| 11:07:09 | kaen | okay, so maybe we actually need three O_O |
| 11:07:26 | kaen | findObjects, findObjectsInScope, findObjectsInSight |
| 11:07:28 | bobdaduck | findObjects(), findObjectsInSight(), findObjectsInDnD() |
| 11:07:42 | bobdaduck | scope is confusing |
| 11:07:48 | raptor | maybe that's what pointCanSeePoint is for... a simple LoS test that is used only when needed |
| 11:07:51 | bobdaduck | findObjectsInArea() |
| 11:08:09 | bobdaduck | and then make sight area a bot attribute! |
| 11:08:20 | kaen | yes, but you'd have to get the list, then filter it with pCSP() |
| 11:08:21 | bobdaduck | findObjectsInArea(botSightRange) |
| 11:08:31 | kaen | hmm |
| 11:08:52 | kaen | but that doesn't respect the bot's visibility rules |
| 11:09:05 | kaen | unless you meant for it to be bot-only |
| 11:09:21 | kaen | hmm |
| 11:09:29 | kaen | maybe you're right raptor |
| 11:10:18 | kaen | we shouldn't write a ton of helper functions when you can just get a full list and filter it |
| 11:10:34 | bobdaduck | Yeah |
| 11:11:09 | kaen | what we *should* do is add a few functional programming helpers |
| 11:11:31 | kaen | like at least map and filter |
| 11:12:21 | kaen | and curry |
| 11:12:33 | bobdaduck | Curry is good |
| 11:12:33 | kaen | and maybe bind |
| 11:12:34 | raptor | i just found bot:hasLosPt |
| 11:12:49 | raptor | man, bot: is ugly |
| 11:12:52 | kaen | curry is better than you even know, regarding functional programming |
| 11:13:11 | bobdaduck | It also goes well with rice and stuff |
| 11:13:24 | kaen | remember those weird anonymous function closures I showed you so you can pass arguments to timeout callbacks? |
| 11:13:37 | kaen | curry is a function to make those so you don't have them all over your code |
| 11:14:11 | kaen | Timer:scheduleOnce(interval, curry(fn, arg1)) |
| 11:14:37 | kaen | rather than Timer:scheduleOnce(interval, function() fn(arg1) end) |
| 11:15:00 | kaen | even better for use with map and filter |
| 11:15:04 | bobdaduck | huh.. |
| 11:15:31 | kaen | filter(table, curry(isEqualTo, x)) |
| 11:16:19 | bobdaduck | and that works in lua? |
| 11:16:21 | kaen | filter(objects, curry(canSee, bot)) |
| 11:16:33 | kaen | uh it will once we add the filter and curry helper functions :P |
| 11:16:35 | bobdaduck | I thought the exact problem was that timers can't take function arguments or whatever |
| 11:16:39 | kaen | yes |
| 11:16:40 | bobdaduck | oh xD |
| 11:16:49 | kaen | that is the exact problem which currying solves |
| 11:17:03 | kaen | closures also solve it, but they're ugly, error-prone, and expensive |
| 11:20:42 | Watusimoto | I agree that a findVisibleObjects makes sense |
| 11:20:45 | Watusimoto | for bots |
| 11:21:12 | raptor | hi Watusimoto |
| 11:21:17 | Watusimoto | remember that ships/players.bots/etc can see things even out of their los |
| 11:21:28 | Watusimoto | so what would the purpose of the los function be? |
| 11:21:34 | raptor | so here are the dimensions: gridsearching, scope, los, filtering |
| 11:21:46 | Watusimoto | hi |
| 11:22:01 | raptor | los is so a bot doesn't try to shoot you through the wall |
| 11:22:03 | | bobdaduck Quit (Remote host closed the connection) |
| 11:22:11 | | Skybax Quit (Quit: Skybax) |
| 11:22:32 | Watusimoto | maybe findVisibleObjects, findAllObjects, and findTargetableObjects |
| 11:22:51 | Watusimoto | also, it might make sense to shoot at something behind a wall if you think he's rounding the corner |
| 11:23:30 | raptor | findTargetableObjects is good name |
| 11:23:39 | kaen | agreed |
| 11:23:48 | Watusimoto | woudl that take account trajectory/leading? |
| 11:23:59 | kaen | I say no |
| 11:24:27 | Watusimoto | maybe findLOSObjects? |
| 11:24:32 | raptor | i wasn't planning on doing algorithmic analysis yet... just API exposure |
| 11:24:36 | Watusimoto | findLosObjects |
| 11:24:43 | Watusimoto | ok |
| 11:24:59 | Watusimoto | so visible means in scanner range and not cloaked |
| 11:25:06 | Watusimoto | all means... all |
| 11:25:12 | raptor | ok |
| 11:25:21 | Watusimoto | and targetable or los means not blocked by wall |
| 11:25:31 | Watusimoto | ? |
| 11:25:33 | raptor | ok |
| 11:25:49 | Watusimoto | just putting that down so I am clear on what we are talking about |
| 11:25:50 | raptor | so I moved findGlobalObjects to bf: and that will be available (as your 'all' method) |
| 11:26:03 | Watusimoto | sure |
| 11:26:08 | Watusimoto | bf:findAllObjects() |
| 11:26:16 | raptor | we already have a scanner range method: bot:findObjects() |
| 11:26:17 | Watusimoto | bot:findVisibleObjects() |
| 11:26:35 | Watusimoto | does findObjects take account cloaking? |
| 11:26:38 | raptor | yes |
| 11:26:40 | kaen | as an aside, I really prefer "All" to "Global" |
| 11:26:45 | Watusimoto | as do I |
| 11:26:49 | kaen | ok |
| 11:27:04 | raptor | ok |
| 11:27:07 | Watusimoto | originally, bots were intended to be limited to "not cheating" |
| 11:27:08 | raptor | written down on my TODO |
| 11:27:12 | Watusimoto | hence findObjects |
| 11:27:21 | Watusimoto | but then there was a need for navigating to distant objects |
| 11:27:28 | Watusimoto | hence findGlobalObjects |
| 11:27:40 | Watusimoto | and the cracking of the door to cheating bots |
| 11:27:46 | Watusimoto | which they all are pretty much now |
| 11:27:51 | kaen | ah I see |
| 11:28:06 | Watusimoto | but I've come to the conclusion that cheating bots aren't bad |
| 11:28:13 | Watusimoto | if they make more entertaining bots |
| 11:28:15 | kaen | I have to agree |
| 11:28:25 | raptor | go repairbot! |
| 11:28:28 | raptor | :) |
| 11:28:30 | Watusimoto | originally I thought people would write bots for bot-on-bot combat |
| 11:28:36 | Watusimoto | so rules were important |
| 11:28:43 | raptor | ha! bot-fights |
| 11:28:44 | Watusimoto | but that doesn't seem to be the way we're going |
| 11:29:11 | Watusimoto | entire bot v bot games could be simulated in a second |
| 11:29:57 | Watusimoto | ok, well it sounds like we're all on the same page |
| 11:30:15 | kaen | I fixed http://bitfighter.org/luadocs/ so it finds the index |
| 11:30:18 | raptor | ok, should I rename findObjects to something? |
| 11:30:26 | raptor | findVisibleObjects? |
| 11:30:37 | kaen | I think so |
| 11:30:39 | Watusimoto | sure |
| 11:30:47 | Watusimoto | it's clearer |
| 11:31:02 | Watusimoto | can the levelgen access the bot's findVisibleObjects method? |
| 11:31:09 | Watusimoto | probably yes |
| 11:31:14 | raptor | no |
| 11:31:30 | Watusimoto | if it has a bot object, it can't ues that method? |
| 11:31:37 | raptor | oh |
| 11:31:38 | raptor | oh sure |
| 11:31:50 | Watusimoto | so the levegen has access to what the bot can see |
| 11:32:00 | | Skybax has joined |
| 11:32:04 | kaen | that wouldn't work for a player though, would it? |
| 11:32:12 | Watusimoto | or the player, for that matter... if we put it on the ship instead of the bot |
| 11:32:12 | raptor | interesting... i've never thought about doing that... |
| 11:32:21 | kaen | that would be interesting |
| 11:32:40 | Watusimoto | hell, put it on the turrets as well :-) |
| 11:32:44 | kaen | so, a levelgen can actually control the bots that are playing? |
| 11:32:54 | kaen | that's really interesting. |
| 11:33:10 | raptor | yeah... |
| 11:33:11 | Watusimoto | I think a levelgen can alter a bot the way it can alter a player, but th ebot script will still keep doing stuff |
| 11:33:12 | raptor | huh |
| 11:33:12 | Skybax | I want floating turrets that can shoot 360˚ |
| 11:33:25 | raptor | if i make a skeleton bot script |
| 11:33:29 | Watusimoto | Skybax: what would they look like? |
| 11:33:36 | raptor | find the bot in the levelgen, then control it from the levelgen... |
| 11:33:45 | kaen | wow |
| 11:33:49 | kaen | raptor you just blew my mind |
| 11:33:52 | raptor | that's cool! |
| 11:34:08 | raptor | don't tell bobdaduck |
| 11:34:34 | Skybax | watusimoto: like a normal turret, but instead of having the white box at the bottom, have the circle go all the way around, and then a white circle inside the colored circle that can have a round health bar |
| 11:35:18 | kaen | hey |
| 11:35:33 | kaen | maybe we could tweak the turrets we have now to do that if they aren't on a wall? |
| 11:35:44 | Skybax | Yes |
| 11:35:57 | raptor | wait wait |
| 11:36:01 | raptor | floating turrets? |
| 11:36:05 | Skybax | I'd rather have one floating turret than a square wall with four turrets on it |
| 11:36:25 | raptor | interesting idea.. |
| 11:36:26 | Skybax | I posted a threat about it a long time ago |
| 11:36:29 | Skybax | Actually |
| 11:36:29 | kaen | although that has implications for engineering |
| 11:36:32 | Skybax | thread* |
| 11:36:48 | kaen | I don't know. interesting idea but I have to think about it more. |
| 11:36:51 | raptor | what do you think Watusimoto? if a turret isn't on a wall it turns into a full-tau shooting circular turret |
| 11:38:40 | Skybax | I found my drawing that I posted on the forums http://i657.photobucket.com/albums/uu294/RealSkybax/FloatingTurret.jpg |
| 11:39:07 | Skybax | The long and detailed thread was here http://www.bitfighter.org/forums/viewtopic.php?f=4&t=1071&hilit=floating+turrets |
| 11:39:19 | Watusimoto | to be fair, he's been asking about this for some time |
| 11:39:34 | Watusimoto | we could... try it? |
| 11:39:46 | raptor | oh my... that was a discussion with cleverbot |
| 11:39:56 | Skybax | He liked my idea |
| 11:39:58 | Watusimoto | you couldn;t position floating turrets too close to walls (else they'd snap), but maybe that's ok |
| 11:40:07 | Skybax | ^^ Yes |
| 11:40:19 | Watusimoto | I'm skeptical, but not overly hostile to the idea |
| 11:40:29 | Watusimoto | it doesn't seem like a huge change to the game |
| 11:40:39 | kaen | I'm skeptical, but hopeful because it's an elegant solution to floating turrets |
| 11:41:00 | Watusimoto | more elegant than a small square wall with a turret on each side? |
| 11:41:16 | Skybax | ^^ YES |
| 11:41:25 | kaen | I meant to the problem of what to do with a turret that is floating |
| 11:41:25 | raptor | it would have slow aim |
| 11:41:36 | Watusimoto | ah, in the editor, you mean |
| 11:41:36 | raptor | kick the level creator in the shins? |
| 11:41:47 | kaen | and also in-game |
| 11:42:10 | Watusimoto | Skybax will ask that then can move soon I predict |
| 11:42:19 | Watusimoto | fly around and be lua scriptable |
| 11:42:23 | Skybax | lol |
| 11:42:26 | Watusimoto | and be in the shape of a triangle |
| 11:42:27 | raptor | it's called a 'bot' |
| 11:42:29 | Skybax | No that's what bots are for |
| 11:42:29 | kaen | hehe |
| 11:42:44 | Watusimoto | Skybax: you could create a turret bot now, you know! |
| 11:43:00 | kaen | but seriously this skeleton bot business is the new shiny thing in my field of vision. |
| 11:43:03 | Skybax | Yes, but a bot explodes and a turret does not |
| 11:43:46 | kaen | interesting point. |
| 11:45:36 | Skybax | In the thread it was discussed the turrets being able to be pushed around once "dead", as well as them being on a "rail" of some sort, that would be visible in-game, to slowly move back and forth along a predetermined path |
| 11:46:11 | raptor | feature creep! |
| 11:46:59 | Skybax | ? |
| 11:47:07 | kaen | your feature is creeping |
| 11:47:11 | Skybax | Ah |
| 11:47:51 | Watusimoto | your creep is featuring! |
| 11:48:05 | Watusimoto | in Soviet Russia, the creeps feature you! |
| 11:48:12 | Watusimoto | or soemthing |
| 11:48:30 | Skybax | I say that Soviet Russia thing all the time, except with a perfect Russian accent lol |
| 11:48:46 | Watusimoto | good, comrade! |
| 11:52:06 | kaen | Хорошо! |
| 11:55:33 | Watusimoto | xopowo right back at you! :-) |
| 11:58:58 | | bobdaduck has joined |
| 12:04:20 | Watusimoto | going to make dinner... back later |
| 12:07:45 | thread_ | So, I know this is taboo, but I really want to move walls via levelgen |
| 12:08:32 | raptor | not taboo - just not able |
| 12:09:29 | thread_ | nuts |
| 12:11:14 | thread_ | life is hard |
| 12:15:50 | bobdaduck | make testitem walls |
| 12:16:14 | bobdaduck | Question though |
| 12:16:29 | thread_ | well, those only accomplish function. It's much better if it looks like a wall |
| 12:16:32 | bobdaduck | Is removing/adding walls via levelgen on the fly also bad for the same reason? |
| 12:16:58 | raptor | you can technically do it |
| 12:17:04 | thread_ | I think it has to do with the level on the client's side being recieved and built before play. |
| 12:17:09 | raptor | but only the server knows about it |
| 12:17:18 | thread_ | ah, I was right |
| 12:17:19 | raptor | client's don't get the update |
| 12:17:23 | raptor | *clients |
| 12:17:38 | raptor | and wall transmission is much, much different than anything else |
| 12:17:55 | bobdaduck | Well I can't stick an ID on a wall |
| 12:18:12 | raptor | so it requires a lot of re-architecture work |
| 12:18:16 | bobdaduck | uh uh |
| 12:18:30 | thread_ | I tried creating walls once. Even the server side wasn't up to snuff, as the created walls were invisible |
| 12:18:34 | bobdaduck | can I do local var = levelgen:addLevelLine(testitem blah blah)? |
| 12:18:52 | kaen | I doubt it |
| 12:18:56 | raptor | you can add walls with addItem(WallItem.new()) |
| 12:19:05 | kaen | ask the interpreter, bobdaduck :P |
| 12:19:19 | bobdaduck | I'm trying to figure out a way to get a wall as a variable |
| 12:19:26 | bobdaduck | because you can't put IDs on walls |
| 12:19:27 | raptor | but they'll only show up if they're done in main() of a levelgen, which is before wall transmission is sent to the clients |
| 12:19:59 | raptor | why can't you, bobdaduck? |
| 12:20:00 | bobdaduck | Thats's fine |
| 12:20:09 | bobdaduck | Because it arbitrarily removes IDs from walls |
| 12:20:22 | raptor | oh, saving in the editor fails? |
| 12:20:25 | raptor | did i fix that? |
| 12:20:40 | kaen | it's still on the RBL I think |
| 12:21:00 | thread_ | as a point of interest, what happens if I call getLoc on a wall or line item? do I get the centroid? |
| 12:21:13 | bobdaduck | You can't |
| 12:21:19 | bobdaduck | because you can't get the wall in the first place |
| 12:21:26 | bobdaduck | line item maybe though.... |
| 12:21:41 | raptor | in 019, i just saved a wall ID... |
| 12:21:55 | raptor | but i doubt it could be transmitted with /showids on the client.. |
| 12:22:15 | kaen | 1. you *can* have a wall reference if you create the wall |
| 12:22:35 | kaen | 2. I'm 99% sure you get the centroid if it has poly geometry |
| 12:22:59 | kaen | 3. I ran out of things to say |
| 12:23:10 | raptor | #1 is a good point... i hadn't thought of that |
| 12:23:17 | raptor | create the wall in main() store the ID |
| 12:23:22 | thread_ | so it could well return a point not on the line at all, if it was something like a semicircle |
| 12:23:33 | kaen | sure |
| 12:23:58 | thread_ | I'll admit, I can't see a use case for this, but interesting none the less |
| 12:24:17 | kaen | mostly, getLoc() just has to return something since it's on the inheritance chain |
| 12:24:28 | kaen | a centroid is a sensible default |
| 12:25:11 | kaen | seems slightly less useless than geom[0] |
| 12:25:41 | thread_ | Actually, if it would return the midpoint of the line, bots could use that to figure out the best way to mauver around things in battle |
| 12:25:42 | kaen | and once the wall update bug gets fixed it'll let you easily center a wall of any shape on a point. |
| 12:25:55 | kaen | midpoint of which line? |
| 12:26:29 | thread_ | the wall object. I can't think of a good way for figuring it out though, since it has several segments |
| 12:26:39 | thread_ | potentially |
| 12:26:55 | thread_ | nm, that thought process is too muddy |
| 12:27:36 | kaen | I've done something like that in a plugin |
| 12:28:05 | kaen | in fact I wrote a function to get the point at x percent of the wall's actual length |
| 12:28:42 | kaen | which happens to be incredibly useful for modulating walls with math |
| 13:07:35 | bobdaduck | Okay |
| 13:07:41 | bobdaduck | So I'm getting orbital decay |
| 13:07:47 | bobdaduck | How do I fix |
| 13:08:05 | raptor | increase velocity |
| 13:08:15 | bobdaduck | uhhh |
| 13:08:17 | raptor | (or reduce mass of gravitational source) |
| 13:08:30 | bobdaduck | no like its spreading out |
| 13:08:34 | raptor | you know... if we could control stars |
| 13:08:51 | raptor | reduce velocity |
| 13:08:59 | raptor | or fix your maths |
| 13:09:24 | Watusimoto | at some point we should probably add a mechanism for removing a single wall |
| 13:09:33 | Watusimoto | if we did that, we could add and remove walls at will |
| 13:09:42 | bobdaduck | I'm using your maths |
| 13:09:50 | Watusimoto | since we can add walls (at least I've always said this, not sure if it's really true!!!) |
| 13:10:11 | bobdaduck | put it in 020... |
| 13:11:41 | bobdaduck | okay but reducing velocity breaks it |
| 13:22:26 | bobdaduck | new kid in bitfighter is online |
| 13:22:39 | bobdaduck | think he's lying? |
| 13:37:35 | thread_ | In other news, my BitBuilder tool now includes freehand drawing, RepairItems, and EnergyItems! |
| 13:37:43 | thread_ | http://jsfiddle.net/thread/Q68Ua/embedded/result/ |
| 13:45:32 | kaen | wow dude |
| 13:45:41 | kaen | you should put that on github so I can contribute |
| 13:45:50 | kaen | also we should add that as a draw mode in the editor |
| 13:46:44 | thread_ | It's all javascript and HTML5 canvas. I don't know how hard that would be to move into C++ :/ |
| 13:47:25 | raptor | what is the goal of that? |
| 13:47:26 | kaen | easy enough. remember that we already have working wall-building code :P |
| 13:47:42 | kaen | it lets you draw more freely if you choose "freehand" mode instead of "point" |
| 13:48:09 | thread_ | Don't forget the image loader :) |
| 13:48:15 | kaen | ah yes |
| 13:48:19 | kaen | so you can trace stuff |
| 13:48:56 | thread_ | I thought it was a much needed addition |
| 13:50:05 | Skybax | Any more thought on the floating turrets..? x) |
| 13:50:39 | kaen | hey that's really good javascript man! |
| 13:51:42 | kaen | check out this js networking library I'm writing, thread_: https://github.com/kaen/wasabi |
| 13:53:39 | kaen | actually I haven't pushed in a week, so the API on that readme is outdated |
| 13:55:19 | thread_ | Skybax: I'm all for it, but I have no say in the matter |
| 13:55:33 | Skybax | Haha xD |
| 14:04:06 | thread_ | kaen: The project is sitting on jsfiddle. you can find my projects at http://jsfiddle.net/user/dashboard/ |
| 14:04:39 | thread_ | You are free to improve it and push update. then I can merge after I review it |
| 14:05:15 | kaen | that actually takes me to my fiddles :) |
| 14:05:15 | thread_ | (sorry wrong url... let me find the right one) |
| 14:05:51 | thread_ | http://jsfiddle.net/user/thread/fiddles/ |
| 14:07:33 | thread_ | oooh, ooh, idea... idea. If there is interest, four different people should use my tool (work space 5) and make whatever... |
| 14:07:42 | thread_ | Pm me the result and I will combine them into a level |
| 14:08:38 | thread_ | Actually, a thread for this should be made first |
| 14:15:19 | | thread_ has left #bitfighter |
| 14:18:27 | Watusimoto | Ever notice how, even on close inspection, showNextLevelHander looks a lot like showNextLevelHandler |
| 14:19:04 | Watusimoto | Someday I'm going to write a compiler where those to symbols are the same |
| 14:34:12 | bobdaduck | Can someone explain orbital motion to me? |
| 14:35:22 | bobdaduck | Like the math part |
| 14:48:21 | bobdaduck | Serious quesiton |
| 15:08:35 | Watusimoto | direction of velocity is tangential to the gravitational pull |
| 15:10:20 | bobdaduck | But I don't understand that programmatically |
| 15:15:23 | | BFLogBot Commit: 76e2a2d2dbdb | Author: watusimoto | Message: Fixes #178 -- Added a /nextlevel command to show the name of the next level in the queue |
| 15:15:24 | | BFLogBot Commit: 15f02f780aa6 | Author: watusimoto | Message: Rename /nextlevel to /shownextlevel to reduce confusion about what this command actually does |
| 15:15:25 | Watusimoto | you can look at the code of orbitbot... if you haven;t already |
| 15:15:47 | bobdaduck | I did |
| 15:16:01 | bobdaduck | And I managed to get it working in a few levelgens |
| 15:16:07 | bobdaduck | but like, I don't understand any of it xD |
| 15:17:25 | Watusimoto | well, it looks like the math is not reflective of actual orbital mechanics |
| 15:17:38 | Watusimoto | we have an ever increasing angle: orbitAng = orbitAng + .0015 * deltaTime |
| 15:17:59 | Watusimoto | the .0015 is just what worked |
| 15:18:22 | Watusimoto | then we aim toward a point |
| 15:18:23 | Watusimoto | dest = point.new( itemLoc.x + orbitRadius * math.cos (orbitAng), |
| 15:18:23 | Watusimoto | itemLoc.y + orbitRadius * math.sin (orbitAng) ) |
| 15:18:51 | Watusimoto | based on our current location and that ever increasing angle |
| 15:19:12 | Watusimoto | x/y and cos/sin are related by basic triangles |
| 15:19:24 | Watusimoto | do you know about how that works? |
| 15:19:45 | Watusimoto | that is, do you understand the relationship between sin/cos and x/y? |
| 15:19:48 | bobdaduck | Well enough |
| 15:20:28 | Watusimoto | well then, we just cauclate a new destination point that will guide the ship around in a circle |
| 15:20:44 | Watusimoto | you might draw a circle |
| 15:20:50 | bobdaduck | hm... |
| 15:21:08 | Watusimoto | centered on a coordinate axis |
| 15:21:33 | Watusimoto | and draw a right triangle like this: |
| 15:22:11 | Watusimoto | https://en.wikipedia.org/wiki/File:Unit_circle.svg |
| 15:22:13 | bobdaduck | Starting to get it |
| 15:22:24 | Watusimoto | imagine the ship is at the dot |
| 15:22:32 | Watusimoto | then increase t a little bit |
| 15:22:51 | Watusimoto | that formula I pasted above will tell you where the next x,y is |
| 15:23:10 | Watusimoto | the legnth of the diagonal line is labeled in that diagram as 1 |
| 15:23:19 | Watusimoto | but in orbitbot it is orbitradius |
| 15:24:05 | Watusimoto | and the center of the circle is at itemLoc |
| 15:24:53 | Watusimoto | that;s the best I can explain it |
| 15:25:06 | bobdaduck | I think that'll work |
| 15:25:18 | bobdaduck | copied so I can reference it... |
| 15:25:27 | bobdaduck | I'll have to apply it sometime but not yet. |
| 15:25:30 | bobdaduck | Thanks! |
| 15:31:34 | | BFLogBot Commit: 82319c8d22ad | Author: watusimoto | Message: Show energy guage on cmdrs map |
| 15:37:55 | | LordDVG Quit (Remote host closed the connection) |
| 15:41:23 | | bobdaduck Fake Commit 812d230dsl35fz3 | Author: bobdaduck | Message: SUNS SUNS SUNS SUNS |
| 15:45:12 | | BFLogBot Commit: 9ef55380cdee | Author: watusimoto | Message: Remove scoreboard indicator info from help -- not needed here (it's on scoreboard now), and creates room for more badges |
| 15:45:42 | raptor | everything you need to know about circles: http://upload.wikimedia.org/wikipedia/commons/9/9d/Circle-trig6.svg |
| 15:46:06 | raptor | hahaha bobdaduck, nice commit message... |
| 15:46:07 | bobdaduck | You guys sure like that picture don't you... xD |
| 15:46:30 | Watusimoto | also includes a couple of things you don't need to know about circles |
| 16:02:42 | raptor | ex co secant |
| 16:03:29 | Watusimoto | just tried something with circles, got an interesting result |
| 16:03:33 | Watusimoto | take a unit circle |
| 16:03:34 | | koda has joined |
| 16:03:46 | Watusimoto | draw a radius along the horizontal |
| 16:03:51 | Watusimoto | go half way along that radius |
| 16:04:02 | Watusimoto | draw a vertical chord through that half way point |
| 16:04:07 | Watusimoto | what is the length of that chord? |
| 16:04:29 | raptor | the radius? |
| 16:04:46 | Watusimoto | you know, line from the center to the edge |
| 16:05:01 | Watusimoto | oh, radius = 1 in a unit circle |
| 16:05:07 | raptor | show me here: http://www.twiddla.com/1256302 |
| 16:05:44 | Watusimoto | yes |
| 16:05:50 | Watusimoto | length of that vertical line |
| 16:06:04 | raptor | hmmm... |
| 16:06:07 | Watusimoto | I thought it would be tricky, but it's quite simple to do |
| 16:06:11 | raptor | sqrt(2) |
| 16:06:12 | raptor | ? |
| 16:06:15 | Watusimoto | no |
| 16:06:17 | koda | so can i has merge? ^^ |
| 16:06:24 | Watusimoto | you like my son... he starts guessing |
| 16:06:33 | raptor | :) |
| 16:06:36 | Watusimoto | and if he happens to guess right, I'll tell him it's wrong |
| 16:06:46 | raptor | haha |
| 16:06:46 | Watusimoto | and then he gets pissed when he actually figures it out |
| 16:06:58 | Watusimoto | "But I knew that!" |
| 16:07:07 | Watusimoto | koda: go for it! |
| 16:07:14 | raptor | koda: I think I'm the one to do the merge, but I need to find the time... so a tentative 'yes' |
| 16:07:21 | koda | \o/ |
| 16:07:42 | raptor | I may revert the plist stuff, though... |
| 16:08:27 | raptor | sqrt(.75) ? |
| 16:08:50 | Watusimoto | mmm.... no, but close |
| 16:09:16 | Watusimoto | that's the answer to a question I did not ask |
| 16:09:36 | raptor | oh ha |
| 16:09:37 | Watusimoto | and you shoudl reduce your sqrts to a nicer number in any event |
| 16:09:38 | raptor | times 2 |
| 16:10:11 | Watusimoto | yes, times 2, but when you clean it up it's more interesting |
| 16:10:27 | raptor | root3 |
| 16:10:28 | raptor | ok |
| 16:10:30 | Watusimoto | yes |
| 16:10:38 | Watusimoto | which I think is kind of cool for some reason |
| 16:10:41 | raptor | interesting... |
| 16:10:47 | Watusimoto | well... cool might not be quite the right word |
| 16:11:09 | Watusimoto | maybe if the sqrt(3) were riding a skateboard or something |
| 16:11:14 | raptor | so if i took two other radii at tau/3 apart then i get an equilateral triangle? |
| 16:11:15 | bobdaduck | rofl |
| 16:11:21 | koda | raptor: if you edit my commits i'll have to reclone and reset my repo /O\ |
| 16:11:35 | raptor | koda: I won't, i'll just make a commit or two on top of it.. |
| 16:11:51 | raptor | to keep the universe in equilibrium |
| 16:12:04 | raptor | you OK with that? |
| 16:12:07 | Watusimoto | i don't think so... |
| 16:12:54 | Watusimoto | what do you guys think about our scrolling message to scroll vertically like our chat messages do? |
| 16:13:22 | raptor | Watusimoto: the MOTD |
| 16:13:22 | Watusimoto | kind of zip into place, pause, then zip up and out of the display area |
| 16:13:27 | raptor | ? |
| 16:13:29 | Watusimoto | yes |
| 16:13:38 | Watusimoto | then we could have multiple messages |
| 16:13:51 | Watusimoto | trying to find a way to make it look cooler |
| 16:13:59 | Watusimoto | other than giving it a skateboard |
| 16:14:24 | raptor | also, i win - that segment is one side of a circled equilateral triangle |
| 16:14:57 | Watusimoto | oh, sorry, I misunderstood |
| 16:15:10 | | bobdaduck Quit (Remote host closed the connection) |
| 16:15:18 | Watusimoto | I thought you were talking about that line with two radius lines |
| 16:15:21 | raptor | i didn't explain well enough... |
| 16:15:26 | raptor | :) |
| 16:15:28 | Watusimoto | which acautlly doesn't even make a triangle |
| 16:15:44 | raptor | having multiple messages might be good |
| 16:15:55 | raptor | and my skateboard needs wheels |
| 16:16:06 | Watusimoto | New Level Contest! |
| 16:16:12 | Watusimoto | Entries Due Thursday |
| 16:16:24 | Watusimoto | Party Friday 8PM EST |
| 16:16:37 | Watusimoto | that sort of thing might work better as a vertical scroller |
| 16:16:37 | raptor | we could do one-per-line in the motd file, then parse the newline character on the client? |
| 16:16:49 | Watusimoto | perhaps |
| 16:16:54 | Watusimoto | that might be easiest |
| 16:17:01 | raptor | or a fancy box that shows multiple lines.. |
| 16:17:11 | Watusimoto | we don't ahve room for multiple lines |
| 16:17:20 | raptor | 4 point font! |
| 16:17:27 | Watusimoto | Yes! |
| 16:17:42 | Watusimoto | we could print an entire NYTimes article there! |
| 16:18:04 | raptor | i suppose fiction fits with the game... |
| 16:18:38 | Watusimoto | you'd be hard pressed to find a more reliable source of news than the Nyt |
| 16:19:29 | raptor | that doesn't falsify my statement... :) |
| 16:19:49 | Watusimoto | fair enough |
| 16:19:51 | | BFLogBot Commit: 73564650857f | Author: watusimoto | Message: Create a font context for MOTD. Remove lines. Not sure how to make this look good. |
| 16:19:58 | Watusimoto | ok, I'm heading to bed |
| 16:20:07 | raptor | ok |
| 16:20:09 | Watusimoto | good night! |
| 16:20:12 | raptor | night! |
| 16:20:30 | | Watusimoto Quit (Remote host closed the connection) |
| 16:27:21 | raptor | I hope I didn't upset him with my NYT joke... |
| 16:52:05 | raptor | back later! |
| 16:52:08 | | raptor Quit () |
| 17:20:54 | | BFLogBot Commit: cc5977274d87 | Author: kaen | Message: add bitfighter-client target to speed up compile times when working with tests |
| 18:28:23 | | koda Quit (Quit: koda) |
| 18:51:57 | | Flynnn has joined |
| 19:01:46 | | bobdaduck has joined |
| 19:01:50 | | bobdaduck Quit (Remote host closed the connection) |
| 20:20:35 | | bobdaduck has joined |
| 22:16:44 | | Skybax Quit (Quit: Skybax) |
| 22:34:56 | | Flynnn Quit (Quit: Leaving) |
| 22:35:30 | | Flynnn has joined |
| 22:35:30 | | Flynnn Quit (Client Quit) |
| 22:35:34 | | FlynnnNT has joined |
| 22:57:57 | | raptor has joined |
| 22:57:58 | | ChanServ sets mode +o |
| 22:58:19 | raptor | yay CMake enhancement! |
| 23:01:48 | kaen | hopefully it works ok for wat in vc++ |
| 23:04:40 | raptor | yeah, that'll be good |
| 23:09:35 | raptor | i just did a self-appraisal of my car... it's worth $400! |
| 23:09:44 | bobdaduck | Woah! |
| 23:09:59 | bobdaduck | That's how much I spent fixing my air conditioning when I came in ranting about sleazy mechanics! |
| 23:10:05 | raptor | I'm good at making things last longer than they should, I guess.. |
| 23:10:31 | raptor | I just bought a new battery for it - it was 1/4 the value! |
| 23:21:37 | raptor | bah. i should stop reading news and code something.. |
| 23:21:57 | raptor | air conditioning! ha! who needs that... |
| 23:27:46 | raptor | kaen: page 9 of the instructions - are you seeing a wrong description at the top? |
| 23:27:53 | raptor | it's the page that watusimoto just edited.. |
| 23:30:47 | raptor | I think i see the problem.. |
| 23:33:38 | | BFLogBot Commit: da0cec40ac72 | Author: buckyballreaction | Message: Finish cleaning instructions page on game indicators. Also fix memory issue with bad array index |
| 23:39:41 | kaen | raptor, any idea what font the bitfighter logo is in? |
| 23:43:17 | raptor | i remember this... |
| 23:43:22 | raptor | i do, i really do.. |
| 23:43:40 | raptor | this one!: http://www.urbanfonts.com/fonts/Checkbook.htm |
| 23:44:28 | raptor | watusimoto said he spent a looooong time creating a point array for just the letters he needed for the logo |
| 23:45:01 | raptor | I made some changes to his original code, but i don't remember what exactly |
| 23:45:41 | kaen | yeah that code is bonkers |
| 23:45:59 | kaen | I'm thinking of extracting it and submitting it to the obfuscated C contest :P |
| 23:46:12 | raptor | hahaha |
| 23:46:24 | raptor | i remember it took me days to figure out what he did.. |
| 23:46:56 | raptor | i think it was done close to the start of when he took over zap and was teaching himself c++ |