Timestamps are in GMT/BST.
| 00:25:36 | | raptor Quit () |
| 00:52:27 | | koda has joined |
| 01:30:37 | | Watusimoto has joined |
| 01:32:18 | | BFLogBot Commit: 3687382ba9ff | Author: watusimoto | Message: Molstly harmless |
| 01:32:19 | | BFLogBot Commit: ff35b8b207d8 | Author: watusimoto | Message: Merge |
| 01:36:31 | | Watusimoto Quit (Ping timeout: 240 seconds) |
| 01:37:52 | | kodab has joined |
| 01:38:15 | | kodabb has joined |
| 01:41:38 | | koda Quit (Ping timeout: 268 seconds) |
| 01:42:52 | | kodab Quit (Ping timeout: 268 seconds) |
| 01:53:20 | | watusimoto has joined |
| 01:53:20 | | ChanServ sets mode +o watusimoto |
| 04:43:47 | | Watusimoto_ has joined |
| 04:52:29 | | LordDVG has joined |
| 05:32:25 | | Watusimoto_ Quit (Ping timeout: 246 seconds) |
| 08:00:38 | | bobdaduck has joined |
| 08:24:16 | | Skybax has joined |
| 08:26:22 | Skybax | Goodmorning |
| 08:28:56 | bobdaduck | morning, gentleskybax |
| 08:30:01 | Skybax | lolwut |
| 09:43:59 | | raptor has joined |
| 09:43:59 | | ChanServ sets mode +o raptor |
| 09:44:05 | raptor | buenos! |
| 09:44:53 | raptor | "mostly harmless" <-- isn't that how our planet is classified intergalactically? |
| 09:49:16 | kaen | whoa |
| 09:49:21 | kaen | we actually have console scripts? |
| 09:49:28 | kaen | also, morning all |
| 09:49:39 | raptor | morning |
| 09:50:20 | kaen | do we have any examples of these console scripts? |
| 09:50:20 | raptor | well the console can run Lua code directly, and is hooked into LuaScriptRunner similarly as the the others |
| 09:50:27 | kaen | whoa |
| 09:50:29 | kaen | I had no clue |
| 09:50:34 | raptor | that's all - not really scripts |
| 09:50:40 | raptor | but you can run code directly |
| 09:50:57 | kaen | does it get a levelgen: object or anything? |
| 09:51:07 | raptor | honestly I don't know how well it interfaces with game objects... it's been a while.. |
| 09:51:18 | kaen | interesting indeed |
| 09:52:50 | kaen | I can't get the console to accept keystrokes |
| 09:52:54 | kaen | in 018a or 019 |
| 09:52:59 | raptor | what |
| 09:53:09 | kaen | can you? |
| 09:53:09 | | Watusimoto_ has joined |
| 09:53:15 | kaen | PEBKAC? |
| 09:53:24 | raptor | checking... |
| 09:53:28 | raptor | (have to recompile) |
| 09:53:38 | kaen | oh :x |
| 09:54:09 | raptor | works for me! |
| 09:54:18 | raptor | at least in the editor... |
| 09:54:37 | raptor | oh wow |
| 09:54:41 | raptor | it sure doesn't work in-game! |
| 09:54:52 | raptor | that's odd... |
| 09:55:25 | raptor | the up arrow works for previous commands I had entered into the editor.. |
| 09:55:33 | raptor | and teh [enter] key |
| 09:56:07 | kaen | wow |
| 09:56:11 | kaen | double super wowzers |
| 09:56:15 | raptor | sounds like text input is failing, but not inputcode actions |
| 09:56:48 | kaen | I'm just blown away with the knowledge that there's already a lua REPL in bitfighter... |
| 09:57:08 | kaen | I need to investigate how to switch its context for debugging |
| 09:58:12 | kaen | I'm envisioning a whole array of debugging and testing scripts I could write for use in that console |
| 09:58:26 | raptor | :) |
| 09:58:51 | kaen | not to mention its application in level-building |
| 09:59:11 | raptor | i think at one time watusimoto / Watusimoto_ had great plans for it; but I think it was dropped because of stupidness with the OGLConsole code itself |
| 09:59:36 | kaen | that's depressing. oglconsole is a good library at heart |
| 09:59:40 | raptor | but we decided to not care about upstream for it and just go our own way... |
| 09:59:55 | raptor | that's why it's slightly c++-ized |
| 10:00:01 | kaen | I see |
| 10:01:08 | raptor | we have this issue that was added after we decided to nix upstream: http://code.google.com/p/bitfighter/issues/detail?id=188 |
| 10:04:06 | raptor | I have three map entries! |
| 10:04:12 | raptor | err, contest entries! |
| 10:08:54 | kaen | I wonder if I could generate a vim autocomplete from the luadocs |
| 10:09:28 | kaen | I've already mapped .levelgen files as lua files and it gave me syntax highlighting and auto-indent |
| 10:10:51 | raptor | heh |
| 10:11:08 | raptor | you mean bitfighter-as-an-IDE? |
| 10:11:12 | raptor | :) |
| 10:13:04 | kaen | whoa |
| 10:13:25 | kaen | I was just thinking Ctrl+X support for levelgens inside of vim :P |
| 10:13:51 | kaen | but we could always just integrate vim and load up the generated completion file |
| 10:13:52 | kaen | boom |
| 10:13:55 | kaen | in-game lua editor |
| 10:14:11 | kaen | and then we could use wat's help system for a vim tutorial |
| 10:14:16 | raptor | we should probably code in clipboard support... |
| 10:14:21 | kaen | and ships zap-dancing everywhere |
| 10:14:24 | raptor | haha |
| 10:14:40 | kaen | I've looked into clipboard support twice now |
| 10:14:45 | kaen | it'd be great for pleiades |
| 10:14:56 | raptor | it'll be simple (I think) with SDL2 |
| 10:14:59 | kaen | yes |
| 10:14:59 | | Watusimoto_ Quit (Ping timeout: 264 seconds) |
| 10:15:01 | raptor | they have a specific API for it |
| 10:15:08 | raptor | but 1.2... not going to happen |
| 10:15:11 | kaen | without SDL2's api we're looking at a huge pain |
| 10:15:33 | raptor | but only Linux uses 1.2... and.... distros are already packaging SDL 2! |
| 10:15:33 | kaen | I couldn't even get the X clipboard to work in a set of test programs |
| 10:15:39 | kaen | that's true |
| 10:15:45 | kaen | wheezy has an sdl2 package |
| 10:15:47 | kaen | in the main repo |
| 10:15:58 | raptor | I already have in the 'games' repo for openSUSE.. |
| 10:16:01 | raptor | it |
| 10:16:26 | kaen | so, let's move to sdl2 as the default on linux? |
| 10:16:35 | raptor | I'm thinking it should release first... |
| 10:16:41 | | kaen shrugs |
| 10:16:42 | raptor | it's in RC2 I think.. |
| 10:17:07 | raptor | i've been watching the mailing list and the hg repo carefully |
| 10:17:23 | kaen | okay, slightly tangential topic: how about making bitfighter support use as a protocol handler |
| 10:17:35 | raptor | they keep saying ABI is locked and API won't change... but I don't trust them :) |
| 10:17:45 | raptor | bitfighter:// |
| 10:17:47 | raptor | ? |
| 10:17:49 | kaen | exactly |
| 10:17:54 | kaen | bitfighter://kaen_bebop |
| 10:17:58 | raptor | i've never thought about that.. |
| 10:18:01 | kaen | and it opens in a test game in the editor |
| 10:18:07 | raptor | interesting |
| 10:19:14 | raptor | i honestly don't know where to begin... |
| 10:19:25 | kaen | I'll look into it |
| 10:19:31 | kaen | my guess is it's a one day project |
| 10:19:40 | kaen | so probably about a week |
| 10:19:54 | raptor | heh |
| 10:20:00 | raptor | maybe via browser plugin? |
| 10:20:45 | raptor | so far a good read: https://bugzilla.novell.com/show_bug.cgi?id=715056 |
| 10:20:51 | raptor | oops, don't look at that.. |
| 10:20:54 | raptor | http://stackoverflow.com/questions/1947209/registering-a-url-protocol-handler-in-a-multiple-platforms |
| 10:20:57 | raptor | ^^ that one |
| 10:21:05 | kaen | it's private :P |
| 10:21:15 | watusimoto | hi |
| 10:21:18 | raptor | hi watusimoto |
| 10:21:40 | watusimoto | "mostly harmless" <-- isn't that how our planet is classified intergalactically? <<=== Yes |
| 10:21:56 | kaen | chrome supports registering a protocol handler from a web page |
| 10:23:33 | watusimoto | oglconsole is a good library at heart <<=== I'm not sure I agree with that statement. It seems broken in many ways. |
| 10:26:23 | raptor | heh |
| 10:33:59 | raptor | watusimoto: I think your idea of setting a Lua variable (like useProxySystem) within the script environment, have LuaW pull it from within push(L) and doing the appropriate logic accordingly, might be the best route to go |
| 10:34:25 | watusimoto | I think that as well, I had another look yesterday, and it still seemed reasonable |
| 10:34:28 | | kodabb Quit (Ping timeout: 256 seconds) |
| 10:34:43 | raptor | I added ScriptType to LuaScriptRunner |
| 10:34:48 | raptor | (a member) |
| 10:34:57 | watusimoto | I saw that |
| 10:35:04 | raptor | and we can use that do to slightly different logic with various things |
| 10:35:54 | raptor | it will help with the global methods that do things slightly different based on whether coming from plugin: or levelgen: |
| 10:36:28 | watusimoto | I hope we can keep those differences to a minimum, but I agree there will be circumstances where we have to differentiate |
| 10:36:41 | raptor | the proxy problem being one.. |
| 10:36:47 | watusimoto | yes |
| 10:37:09 | raptor | i found that addItem is slightly different for plugins: it checks for bfObj->canAddToEditor() first |
| 10:42:25 | watusimoto | I tried very had to make them be the same, but it didn't really work. Adding objects is similar, but not the same in these different contexts |
| 10:42:27 | watusimoto | sadly |
| 10:43:49 | raptor | that's ok, most stuff is almost the same |
| 10:44:07 | watusimoto | that's why it's so frustrating |
| 10:52:02 | watusimoto | heading home. later! |
| 10:52:09 | raptor | bye |
| 10:56:59 | | watusimoto Quit (Ping timeout: 264 seconds) |
| 10:59:41 | | bobdaduck Quit (Remote host closed the connection) |
| 11:46:09 | | bobdaduck has joined |
| 11:56:21 | Skybax | hi bobby |
| 11:56:35 | Skybax | Or should I say.... Jon |
| 12:02:00 | bobdaduck | Sup? |
| 12:06:47 | | bobdaduck is now known as J0n |
| 12:06:59 | | J0n is now known as J0N |
| 12:07:14 | | J0N is now known as bobdaduck |
| 12:11:15 | raptor | ?? |
| 12:11:24 | bobdaduck | I dunno. |
| 12:25:28 | Skybax | xD |
| 12:26:48 | raptor | kaen: did you ever get a chance to look at gate88 ? |
| 12:29:59 | | Watusimoto has joined |
| 14:01:15 | bobdaduck | If I program it myself can I have suns? |
| 14:01:30 | raptor | in c++? |
| 14:01:45 | Skybax | I like the suns idea. I just don't like having to constantly repair them for them to be active xD |
| 14:02:42 | bobdaduck | Well obviously I can't program suns myself yet. But in like two years or something. |
| 14:05:23 | bobdaduck | Yeah in C++ |
| 14:05:45 | bobdaduck | My understanding is that the "no suns" thing is mostly based on devs being too lazy to do it so |
| 14:05:45 | raptor | no guarantees that bitfighter won't be an RPG by then... |
| 14:05:57 | Skybax | Personally.... I love RPGs... |
| 14:05:59 | bobdaduck | xD |
| 14:06:06 | raptor | i take your definition of 'lazy' and raise you 'three kids' |
| 14:06:12 | bobdaduck | rofl |
| 14:06:28 | raptor | :) |
| 14:07:03 | bobdaduck | Well I mean lazy has negative connotations. But like the devs aren't enamored enough with the idea enough to actually put forth the effort to put it in. (Which is fine because I've said the same to several people on DnD or other projects) |
| 14:07:40 | bobdaduck | Speaking of which I totally lost the thumb drive that DnD is on with the last backup being like a month old |
| 14:07:49 | raptor | WHAT |
| 14:07:52 | bobdaduck | rofl |
| 14:08:09 | raptor | you ran it from a thumb drive on your home computer? |
| 14:08:15 | Skybax | Durr |
| 14:08:24 | bobdaduck | How else would I work on it at work? |
| 14:08:43 | raptor | oh, actually... I have some variation that may be newer... |
| 14:08:53 | bobdaduck | lol probably |
| 14:09:09 | bobdaduck | Its okay I'm pretty sure the thumb drive is probably under some blanket at my house or something |
| 14:09:27 | Skybax | bobdaduck, ford gave me the code for the zombie bot, but I can't get it to work. It just leaves as soon as I add it. Any advice? (since you got it to work) |
| 14:09:41 | bobdaduck | Ummmmm |
| 14:09:49 | bobdaduck | "try harder" |
| 14:09:58 | Skybax | Yep, tried that one |
| 14:10:00 | bobdaduck | Does it give you any errors or anything in the console? |
| 14:10:10 | bobdaduck | (/ or ctrl+/ ingame) |
| 14:10:12 | Skybax | Just that there's an unknown character |
| 14:10:17 | Skybax | And it's crashing it |
| 14:10:32 | bobdaduck | is this the version he posted in the forums? |
| 14:10:55 | Skybax | Yes |
| 14:11:12 | bobdaduck | uh... does it say what line the error is on? |
| 14:11:16 | Skybax | Nope |
| 14:11:34 | Skybax | It says it's "near ?" |
| 14:11:47 | bobdaduck | what's the exact error message? |
| 14:13:40 | Skybax | ***ROBOT ERROR*** Error compiling script /Users/Calvin/Library/Application Support/Bitfighter/robots/zombieBot.bot |
| 14:13:41 | Skybax | ...Users/Calvin/Library/Application Support/Bitfighter/robots/zombieBot.bot:9: unexpected symbol near '�' |
| 14:14:02 | bobdaduck | line 9 |
| 14:14:25 | bobdaduck | hm there's nothing there |
| 14:14:32 | bobdaduck | Well there's a space there. |
| 14:14:33 | Skybax | There was a space |
| 14:14:35 | bobdaduck | but that shouldn't matter |
| 14:14:44 | kaen | hello Skybax |
| 14:14:46 | kaen | or should I say |
| 14:14:48 | kaen | CALVIN |
| 14:14:53 | bobdaduck | rofl |
| 14:14:56 | Skybax | Maybe it was an invisible demon disguised as a space |
| 14:15:02 | bobdaduck | could be |
| 14:15:13 | bobdaduck | I didn't have to make any changes to the actual code to get it to work for me though. |
| 14:15:19 | Skybax | kaen, my username is associated with my actual name almost everywhere on the interwebs lol... it's not that difficult to discover x) |
| 14:15:45 | bobdaduck | He's making fun of you for name-dropping on me earlier |
| 14:15:47 | bobdaduck | :P |
| 14:15:55 | Skybax | Ha xD |
| 14:16:13 | kaen | if you guess my name I'll spin your straw into gold |
| 14:16:22 | kaen | it's totally not rumplestiltskin though. |
| 14:16:27 | Skybax | Alberta |
| 14:16:48 | bobdaduck | google says "Khon" |
| 14:16:59 | Skybax | After I deleted the space it says there's an unexpected symbol near line 11 |
| 14:17:07 | bobdaduck | there's a space on line 11 too |
| 14:17:12 | kaen | keep doing that Skybax |
| 14:17:15 | bobdaduck | That shouldn't matter though... xD |
| 14:17:18 | kaen | my guess is it will be on blank lines |
| 14:17:25 | kaen | you're right, it shouldn't |
| 14:17:30 | Skybax | Line 13 is also blank, but with no space |
| 14:17:35 | kaen | ultimately it's bitfighter's fault |
| 14:17:50 | kaen | maybe the line right before or after it. |
| 14:17:59 | Skybax | Now it says 12 lol |
| 14:18:06 | raptor | line endings! |
| 14:18:27 | Skybax | This line has text |
| 14:19:03 | bobdaduck | I BET THE FORUM CODE WINDOW SCREWED IT UP |
| 14:19:29 | Skybax | I told him to just attach a text file to his post but he was refusive |
| 14:20:08 | bobdaduck | lol |
| 14:20:16 | bobdaduck | I got it from a pastie so |
| 14:20:32 | Skybax | What should I delete on line 12? lol |
| 14:20:40 | Skybax | botLoc = nil -- Bot's location, will be updated when onTick() is run |
| 14:21:04 | raptor | Skybax: there's an easier way... |
| 14:21:13 | Skybax | Educate me |
| 14:21:55 | raptor | step #1 - get a real text editor, i suggest textwrangler or jedit: http://www.barebones.com/products/textwrangler/download.html OR http://jedit.org |
| 14:22:13 | Skybax | But that requires downloading things lol |
| 14:22:30 | bobdaduck | Tell you waht |
| 14:22:31 | raptor | and that's something you cannot do? |
| 14:22:40 | bobdaduck | when I find my thumbdrive I'll pastie the code for you. |
| 14:22:43 | Skybax | No, I'm just lazy sometimes xD |
| 14:22:55 | | koda has joined |
| 14:22:58 | bobdaduck | You'll have to wait up to like 3 days and I'll charge you shipping and handling |
| 14:23:00 | raptor | see bobdaduck ^^ that's what *real* laziness is... |
| 14:23:01 | bobdaduck | but you won't have to download |
| 14:23:08 | Skybax | I'm gonna try something |
| 14:24:32 | Skybax | HA!! HAHAHAAA!!! I fixed it |
| 14:24:53 | bobdaduck | yay. |
| 14:24:57 | raptor | was it line endings? |
| 14:25:17 | Skybax | Now the question is, should I change the default bot in my .ini to be the zombie bot instead of the s_bot, and make every single one of my maps a zombie survival?? hmmmm |
| 14:25:24 | Skybax | I don't even know what line endings means lol |
| 14:25:33 | bobdaduck | xD |
| 14:25:42 | bobdaduck | When you hit enter in notepad or whateve |
| 14:25:45 | bobdaduck | it makes a line ending |
| 14:25:46 | raptor | please tell us more about your fix... it hurts my brain when I don't understand what happened |
| 14:26:22 | bobdaduck | some text editors use hex value 810243u801 or whatever, and other text editors might use 234102656 or whatever instead. This causes problems when trying to translate across text editors. |
| 14:26:41 | Skybax | I copied the code from the forum again instead of from itself like I did last time. The problem was that when I first copied the code without making it a plain text file first, it broke it. So I've been trying to run broken code the entire time, even though I've since change it to plain text |
| 14:26:41 | bobdaduck | ...Or something like that. |
| 14:26:58 | raptor | ha! |
| 14:27:04 | raptor | that means you used a different file format? |
| 14:27:07 | raptor | SHAME |
| 14:27:20 | Skybax | I just used plain text instead of rich text |
| 14:27:25 | bobdaduck | SHAME |
| 14:27:35 | Skybax | Rich text is too rich for bitfighter |
| 14:27:50 | bobdaduck | Does bitfighter look like a rich organization to you? |
| 14:27:58 | Skybax | Nope. This is a poor man's game |
| 14:28:16 | raptor | repeat after me: "I will only ever use plain text as it is the one pure text format" |
| 14:28:21 | Skybax | lol |
| 14:28:29 | Skybax | At least for coding xD |
| 14:28:47 | Skybax | I think my teacher had me switch to plain text when I was coding in his class, too |
| 14:28:58 | Skybax | HTML and such |
| 14:28:59 | raptor | YES! |
| 14:29:07 | bobdaduck | xD |
| 14:29:38 | Skybax | Good thing I thought of that lol |
| 14:29:57 | Skybax | I wonder if I can get the engineer bot to work now |
| 14:30:24 | Skybax | TO THE BATFORUMS |
| 14:30:40 | raptor | is that a nickname for our forums? |
| 14:30:52 | bobdaduck | No ours are the bitforums |
| 14:31:07 | Skybax | But you can't sound like Batman if you say "bit" |
| 14:31:12 | bobdaduck | the batforums are a secret counter part where dark and secret technology like DnD and swords are posted |
| 14:31:14 | Skybax | That's like.... Australian Batman |
| 14:31:25 | | raptor goes to check Off-Topic |
| 14:31:41 | bobdaduck | DON'T DO IT |
| 14:31:44 | bobdaduck | ITS TOO DANGEROUS |
| 14:32:13 | Skybax | I don't go in there anymore. I just mark it as read lol |
| 14:32:34 | raptor | bwahaha, Little_Apple... |
| 14:34:27 | bobdaduck | What'd he do? |
| 14:35:11 | raptor | just kill threads like usual |
| 14:36:12 | Skybax | That's interesting. Whenever I open a level it automatically tries and fails to add a repairbot without me even knowing |
| 14:36:48 | Skybax | It's having the same error as my engineer bot tho |
| 14:36:56 | Skybax | They seem to have undeclared variables |
| 14:37:04 | bobdaduck | Because apparently bots can't change modules. |
| 14:37:12 | bobdaduck | I have no idea why, ford just keeps telling me that. |
| 14:38:17 | raptor | yes they can |
| 14:38:26 | raptor | getReqLoadout |
| 14:38:35 | raptor | then make them go to a loadout zone |
| 14:39:22 | bobdaduck | Fordcars keeps telling me they can't and that's why he hasn't finished DnDbot |
| 14:50:50 | Skybax | You guys should fix that lol |
| 14:50:56 | | Little_Apple has joined |
| 14:51:04 | bobdaduck | I dunno he hasn't told me why he just keeps telling me xD |
| 14:51:25 | Skybax | "Variable 'ModuleEngineer' cannot be used if it is not first declared" |
| 14:51:38 | Skybax | "Variable 'LoadoutZoneType' cannot be used if it is not first declared" |
| 14:51:41 | bobdaduck | Module.Engineer I would think |
| 14:52:32 | Skybax | So I just need to go into the bot code and find every ModuleEngineer and replace it with Module.Engineer |
| 14:52:40 | Skybax | This sounds risky |
| 14:52:43 | bobdaduck | xD |
| 14:52:46 | bobdaduck | which bot code? |
| 14:52:49 | bobdaduck | Oh right |
| 14:52:54 | Skybax | Silly |
| 14:53:15 | bobdaduck | bot:activateModule(Module.Turbo) |
| 14:53:27 | Skybax | >.> |
| 14:55:12 | bobdaduck | definitely Module.Engineer |
| 14:56:46 | Skybax | So do the find/replace? |
| 14:57:05 | bobdaduck | probably |
| 14:57:30 | bobdaduck | LoadoutZoneType is probably like ObjType.LoadoutZoneType or something too |
| 14:57:44 | Skybax | It replaced three |
| 14:59:41 | Skybax | Ah. Now the engineer_bot is having the same issue as the repair.bot |
| 15:00:11 | Skybax | Is ObjType.LoadoutZoneType your best guess? xD |
| 15:00:52 | Skybax | bobdaduck |
| 15:04:33 | Skybax | Now it says "attempt to call missing or unknown method 'findGlobalItems' (a nil value)" |
| 15:05:24 | Skybax | lol I'm debugging this code one error at a time... |
| 15:06:24 | Skybax | Halp ._. |
| 15:09:17 | bobdaduck | oh gosh |
| 15:09:20 | bobdaduck | findglobalItems |
| 15:09:21 | bobdaduck | uh |
| 15:09:22 | bobdaduck | uh |
| 15:09:22 | bobdaduck | uh |
| 15:11:22 | bobdaduck | I don't remember |
| 15:11:28 | Skybax | xD |
| 15:11:38 | bobdaduck | Compare the code to S_bot and look for discrepancies xD |
| 15:12:01 | Skybax | That would be feasible if I had any knowledge of what it's SUPPOSED to look like |
| 15:12:21 | bobdaduck | xD |
| 15:12:29 | raptor | findGlobalObjects |
| 15:12:34 | bobdaduck | I remember the same error and it was something stupid and I don't remember how to fix it |
| 15:12:51 | raptor | sounds like you're converting a bot that is pre-018 (when we introduced HUGE API changes) |
| 15:13:05 | Skybax | Probably |
| 15:13:15 | Skybax | It was a ways down on the list of bots |
| 15:15:14 | | fordcars has joined |
| 15:16:41 | bobdaduck | FORDCARS. |
| 15:16:49 | bobdaduck | WHY IS DND BOT NOT COMPLETED. |
| 15:17:01 | fordcars | CAUS 18a WONT LET ME |
| 15:17:06 | bobdaduck | WHY NOT. |
| 15:17:12 | bobdaduck | Explain it for the audience. |
| 15:17:13 | fordcars | CUS YOU CANT CHANGE MODULES |
| 15:17:17 | Skybax | lol |
| 15:17:20 | Skybax | Wai |
| 15:17:50 | fordcars | lol |
| 15:18:54 | raptor | fordcars: if you do 'setReqLoadout()' |
| 15:19:03 | raptor | then make the bot go to a zone, does it not work? |
| 15:19:09 | fordcars | I tried everything raptor |
| 15:19:17 | raptor | does repairbot work? |
| 15:19:23 | raptor | because it needs to do that... |
| 15:19:28 | raptor | i mean, i coded it to do that.. |
| 15:19:33 | fordcars | uh, is it on forums? |
| 15:19:38 | raptor | yes |
| 15:19:42 | Skybax | repair.bot crashes |
| 15:19:44 | Skybax | A lot |
| 15:20:50 | | Flynnn has joined |
| 15:21:31 | raptor | well |
| 15:21:32 | fordcars | oh it's not 018afied |
| 15:21:49 | raptor | that's a good verb 018afied |
| 15:21:52 | Skybax | But what's stupid is it tries to add it like 7 times in the background and clutters my console |
| 15:22:10 | fordcars | oh, it's a messed up zip too :0 |
| 15:22:14 | Skybax | I have no idea why |
| 15:22:51 | Skybax | And if I delete it from my bots folder, Bitfighter just puts it back in when I launch it |
| 15:22:59 | bobdaduck | xD |
| 15:23:02 | Skybax | AND DOES IT ALL OVER AGAIN |
| 15:23:12 | bobdaduck | repair bot is raptor's secret virus |
| 15:23:12 | raptor | Skybax: are you running 019 or 018a? |
| 15:23:31 | Skybax | 018a since the bots don't work on 019 |
| 15:23:35 | raptor | great! |
| 15:23:36 | fordcars | raptor, can you pastie repair bot's code? |
| 15:23:42 | raptor | fordcars: let me get it.. |
| 15:24:01 | raptor | ohhhh... it was sentinelbot that I fixed up |
| 15:24:08 | raptor | not repairbot.. yeah it needs work |
| 15:24:14 | Skybax | Am I a good bug finder lol |
| 15:24:54 | raptor | actually, now that I fixed the forums, i can post that code in there... |
| 15:25:02 | fordcars | oh sure |
| 15:26:38 | raptor | hee hee |
| 15:26:45 | raptor | i remember making this bot for you Skybax, it was fun |
| 15:26:56 | Skybax | The repair bot? |
| 15:26:59 | raptor | ok, fordcars: http://bitfighter.org/forums/viewtopic.php?f=12&t=1492 |
| 15:27:32 | raptor | Oh man, it needs serious work... |
| 15:27:47 | Skybax | I was unaware you made that bot for me lol |
| 15:27:55 | fordcars | ok thanks :P |
| 15:28:39 | fordcars | hehe |
| 15:29:48 | raptor | it for some crazy castle level you made |
| 15:39:19 | raptor | gotta split! back later |
| 15:39:21 | | raptor Quit () |
| 15:42:46 | bobdaduck | Okay guys |
| 15:42:51 | bobdaduck | New weapon idea. |
| 15:42:57 | bobdaduck | Quick, while raptor isn't here. |
| 15:43:02 | bobdaduck | "self destruct" |
| 15:48:41 | Little_Apple | i'll support it! |
| 15:49:07 | Little_Apple | what about a weapon that kills all of your teammates as well? |
| 15:49:26 | bobdaduck | I hate friendly fire |
| 15:49:40 | bobdaduck | If anything is friendly fire, then everything should be friendly fire. |
| 15:49:58 | bobdaduck | Self-destruct should just... Boom. Really big. And just disable like everything in a large radius. |
| 15:50:40 | Little_Apple | it kill everyone on the map! |
| 15:50:47 | bobdaduck | lol |
| 15:50:49 | bobdaduck | no not quite |
| 15:50:51 | bobdaduck | that would be silly. |
| 15:50:53 | Little_Apple | how to grammur |
| 15:51:00 | bobdaduck | It should be a tactical thing |
| 15:51:06 | bobdaduck | That uses really little energy |
| 15:51:25 | Little_Apple | will you be able to fire it while cloaked? for extra stealth? |
| 15:51:28 | bobdaduck | You just charge in and do as much damage as you can |
| 15:51:44 | bobdaduck | and then your teamates fly in and get the flag |
| 15:51:45 | bobdaduck | Ooh |
| 15:51:52 | bobdaduck | It should have a charge time |
| 15:51:59 | bobdaduck | Not a big one, but just like "HE'S GONNA BLOW" |
| 15:52:06 | bobdaduck | You could use it to scare people away :P |
| 15:52:07 | Little_Apple | and rainbows fly out just as you detonate |
| 15:52:21 | bobdaduck | lol |
| 15:52:31 | Little_Apple | basically a creeper loadout? |
| 15:52:35 | bobdaduck | uh |
| 15:52:38 | bobdaduck | ...sure. |
| 15:53:09 | bobdaduck | It uses a weapon slot and theoretically people would want to use mines and bursts and bouncers/triple/seeker instead |
| 15:53:34 | bobdaduck | but like if it penetrates walls, then that's a huge tactical thing. You're guarunteed to die, but you can sacrifice to get your teamates through a thickly defended cluster |
| 15:54:12 | Little_Apple | kamikaze |
| 15:54:27 | bobdaduck | Yes exactly |
| 15:56:14 | Little_Apple | maybe it could even have an audio soundbite... |
| 15:56:17 | Little_Apple | ALLAHU AKBAR |
| 15:56:31 | Little_Apple | or something. i should shutup. |
| 15:56:35 | bobdaduck | xD |
| 15:57:42 | bobdaduck | IT WOULD BE COOL |
| 15:58:24 | Little_Apple | would it hurt your kd if you dont get anyone? |
| 15:58:30 | Little_Apple | like no 72 virgins? |
| 15:59:17 | bobdaduck | As hilarious as that is, I'm gonna say no. |
| 15:59:44 | bobdaduck | I feel like the kd system is so messed up right now it doesn't matter |
| 16:00:50 | bobdaduck | Like kd doesn't mean anything right now |
| 16:01:04 | bobdaduck | A suicide should probably not count as a death. |
| 16:02:40 | fordcars | brb |
| 16:02:43 | | fordcars Quit (Quit: Page closed) |
| 16:05:19 | | bobdaduck Quit (Remote host closed the connection) |
| 16:10:04 | Little_Apple | so if you're a terrorist and just blow yourself up in the middle of a field, you still get some virgins? |
| 16:10:44 | Little_Apple | talking to no one. |
| 16:11:42 | Flynnn | might be scarier to do some crop circles |
| 16:13:50 | | LordDVG Quit (Remote host closed the connection) |
| 16:18:58 | Skybax | Yay virgins |
| 16:27:15 | kaen | I switched windows during a strange part of the conversation |
| 16:28:29 | Skybax | xD |
| 16:31:00 | Watusimoto | hello, good night! |
| 16:31:18 | | BFLogBot Commit: 958bd9c4b229 | Author: watusimoto | Message: Warnings |
| 16:31:19 | | BFLogBot Commit: f95cd3c100d6 | Author: watusimoto | Message: Add a new class of helpitems that explain the gametypes and are only displayed at the beginning of a game. Provided implemenations of all gameType helpItems, and created a new token for inserting into messages (GOAL_ICON). |
| 16:32:18 | | Watusimoto Quit (Remote host closed the connection) |
| 16:34:25 | | koda Quit (Quit: koda) |
| 16:59:23 | | fordcars has joined |
| 17:35:49 | | raptor has joined |
| 17:35:49 | | ChanServ sets mode +o raptor |
| 17:40:04 | raptor | wow what an odd conversation that goes on in my absence... |
| 17:56:07 | raptor | fordcars: did you try and convert the repairbot yet? if not, I can begin.. |
| 17:56:47 | fordcars | well I just started |
| 17:58:23 | raptor | i can do it.. |
| 18:00:18 | fordcars | it's fine |
| 18:02:47 | raptor | does that mean you're converting it anyways? |
| 18:02:54 | raptor | 0 |
| 18:03:16 | fordcars | :P |
| 18:03:33 | fordcars | Well I am doing it right now, but you can do it if you want |
| 18:05:00 | raptor | race! |
| 18:09:00 | fordcars | hah |
| 18:20:54 | raptor | uhhh |
| 18:21:02 | raptor | did NeutralTeamIndx disappear from the API? |
| 18:31:01 | fordcars | Yep |
| 18:31:08 | fordcars | Team.Neutral now I think |
| 18:36:59 | Skybax | :3 |
| 18:39:09 | | Flynnn Quit (Quit: This computer has gone to sleep) |
| 18:52:02 | fordcars | DONE |
| 18:52:10 | fordcars | so you can change modules!!!! |
| 18:52:19 | raptor | oh man, i lose |
| 18:52:29 | fordcars | wow, I won something? |
| 18:52:31 | raptor | but does it work with players in the level? |
| 18:52:36 | fordcars | maybe |
| 18:52:36 | raptor | because mine crashes... |
| 18:52:39 | raptor | hah! |
| 18:52:41 | raptor | you didn't test! |
| 18:52:48 | fordcars | YES I DID :,( |
| 18:52:51 | fordcars | maybe |
| 18:53:00 | fordcars | well it worked with me :) |
| 18:53:17 | fordcars | I commented out getAngle though |
| 18:53:23 | raptor | haha |
| 18:54:07 | raptor | ah see.. you cheated - I'm fixing *everything* and optimizing the bot... :) |
| 18:54:44 | raptor | oh man, repair bot is vicious |
| 18:54:48 | raptor | better aim than s_bot |
| 18:54:52 | fordcars | okokok |
| 18:54:58 | fordcars | well the bot doesn't crash |
| 18:55:00 | raptor | DONE |
| 18:55:01 | fordcars | for me |
| 18:55:04 | fordcars | ::PPPPPP |
| 18:55:08 | raptor | hehe |
| 18:55:25 | fordcars | I didn't get why you were creating points with getAngle |
| 18:55:42 | fordcars | did you make a table for finding all objects? |
| 18:55:56 | raptor | yes |
| 18:56:03 | fordcars | oh ok you wn :) |
| 18:56:09 | fordcars | I was too lazy for that |
| 18:56:19 | fordcars | *i |
| 18:56:19 | raptor | i was optimizing the distance from the engineered items so that the bot wouldn't bump too close |
| 18:56:30 | raptor | oh also... |
| 18:56:31 | fordcars | engeneered items? |
| 18:56:34 | raptor | turrets/ff |
| 18:56:47 | fordcars | oh nice |
| 18:56:58 | raptor | in the c++ code turrets/ffs are considered 'engineered items' |
| 18:57:02 | raptor | oh also |
| 18:57:05 | fordcars | hah |
| 18:57:17 | raptor | FYI getAngle is now getMountAngle |
| 18:57:23 | fordcars | oooohhhhhh |
| 18:57:37 | raptor | also, it seems that i made the bot go back to the loadout to recharge faster |
| 18:57:43 | raptor | that's not needed anymore... |
| 18:58:00 | fordcars | we really need to write how to change modules somewhere |
| 18:58:18 | fordcars | It's not in the LuaDocs or Wiki |
| 18:59:10 | kaen | in general, I think we should start building a set of task-specific guides |
| 18:59:17 | kaen | that'd be a good one to include |
| 19:09:05 | Little_Apple | raptor: help! |
| 19:09:13 | raptor | never fear raptor is here! |
| 19:09:35 | Little_Apple | bitfighter lobby? |
| 19:09:37 | | raptor proceeds to claw out the eyes and eat the entrails |
| 19:09:42 | raptor | uhh ok |
| 19:15:44 | Skybax | wow |
| 19:46:00 | fordcars | later guys |
| 19:50:19 | | fordcars Quit (Ping timeout: 250 seconds) |
| 20:19:32 | raptor | whoa whoa... |
| 20:19:40 | raptor | bots always spawn with loadout reset!? |
| 20:21:42 | Little_Apple | ? |
| 20:22:20 | raptor | and we get a segfault if we subscribe to an event like Event.ShipSpawned and we don't provide the handler in Lua! |
| 20:24:22 | Little_Apple | 3 raptors online? |
| 20:24:27 | Little_Apple | the invasion has begun... |
| 20:24:33 | raptor | yeah crashes everywhere... |
| 20:24:43 | raptor | setCurrLoadout() crashes everything.. |
| 20:24:46 | raptor | wonderful |
| 20:48:37 | Little_Apple | im off. |
| 20:48:39 | Little_Apple | boop |
| 20:48:40 | | Little_Apple Quit (Quit: Page closed) |
| 20:49:17 | Skybax | raptor, did you fix the repair bot yet? xD |
| 20:49:47 | raptor | just done! |
| 20:49:52 | raptor | look at the post |
| 20:49:53 | raptor | :) |
| 20:49:59 | Skybax | Awesome |
| 20:50:26 | Skybax | Did you make it so that Bitfighter doesn't automatically rewrite the repair.bot file whenever I launch it? |
| 20:50:39 | raptor | it shouldn't do that... |
| 20:51:22 | Skybax | It did xD I would delete the file and then when I opened bitfighter it would make a new one |
| 20:51:44 | Skybax | And then automatically try to put it in all my levels |
| 20:51:56 | raptor | uhh... that means your Bitfigther.app is a little messed up |
| 20:52:01 | Skybax | Possibly |
| 20:52:19 | raptor | it scans your Library directory for missing files from the .app and copies them over... |
| 20:52:35 | raptor | but the old way was to keep files in the .app directly |
| 20:52:45 | raptor | so if you have old stuff in there you should clean it out... |
| 20:52:54 | raptor | or even just get a new .app from the downloads page |
| 20:53:16 | Skybax | Mkay |
| 20:53:25 | Skybax | Are you gonna fix the engineer_bot now? lol |
| 20:53:41 | raptor | i have an other task first... |
| 20:53:47 | raptor | let me see how simple that bot is... |
| 20:55:58 | Skybax | Yay! My Assassination level is functional again! lol |
| 20:57:40 | raptor | yeah! that's the one! |
| 20:57:44 | Skybax | raptor, can you send me the 018a code for s_bot again? |
| 20:58:01 | raptor | uhhh... |
| 20:58:03 | raptor | hmmm |
| 20:58:04 | Skybax | The 019 rewrites it to something that doesn't work on 018a |
| 20:58:08 | raptor | oh yeah.. |
| 20:58:20 | Skybax | So I just have to put in the old code again |
| 20:59:03 | raptor | here it is: http://pastebin.com/raw.php?i=2ut2svxM |
| 20:59:25 | Skybax | Thanks |
| 21:00:31 | Skybax | Adding custom bots to some more of my levels now |
| 21:00:40 | Skybax | I remembered how to do it xD |
| 21:01:35 | Skybax | TurretOnslaught is going to be at least three times better |
| 21:04:22 | Skybax | WOW. The repairbots do amazingly!! |
| 21:04:36 | Skybax | I'm amazed they can navigate this level |
| 21:06:49 | Skybax | Scratch that... they get confused after about 15 teleports lol |
| 21:07:31 | Skybax | raptor, do the repairbots REQUIRE a loadout zone to regain energy? |
| 21:08:03 | raptor | no, but when they die, they need to go reset their loadout again |
| 21:08:12 | Skybax | Yeah, okay |
| 21:08:12 | raptor | apparently bots respawn with original loadout... |
| 21:08:21 | raptor | which must have been a bug introduced |
| 21:08:27 | Skybax | So what do you think is going on with their code right now? Come look |
| 21:09:05 | raptor | ok |
| 21:15:27 | Skybax | raptor, I ran into it with my own ship like four times and then all of them started moving again |
| 21:15:44 | Skybax | And then stopped 10 seconds later |
| 21:15:55 | Skybax | xD |
| 21:17:01 | raptor | weirdness |
| 21:29:14 | Skybax | I just discovered the beauty of un-snapped force fields |
| 21:32:43 | raptor | ha |
| 21:32:54 | raptor | engineerbot is driving me crazy.. |
| 21:33:35 | Skybax | Is it harder than repairbot? |
| 21:33:58 | Skybax | I just fixed the MiniDungeon |
| 21:34:07 | raptor | the logic is waaay different, trying to figure it out |
| 21:35:11 | Skybax | I'm wondering if the engineer_bot would even have any strategy as to where it places things, like teleports, for instance. How would it even know? lol |
| 21:36:04 | raptor | it doesn't |
| 21:36:10 | raptor | and it doesn't do teleporters |
| 21:36:13 | Skybax | Ahkay |
| 21:36:19 | raptor | they weren't invented when he was born |
| 21:36:37 | Skybax | If only a bot could be coded that would place turrets and force fields intelligently lol |
| 21:36:52 | Skybax | By that time, they'd be designing their own levels, tho x) |
| 21:37:08 | Skybax | Level_Bot! Go! |
| 21:37:31 | Skybax | *level* |
| 21:37:34 | Skybax | Yaaaaay |
| 21:37:42 | raptor | well... you could probably code it.. |
| 21:41:04 | Skybax | It would be intense |
| 21:47:12 | Skybax | Who made the stock levels? |
| 21:47:17 | Skybax | Do we know? |
| 21:47:23 | raptor | engineer bot fixed |
| 21:47:28 | Skybax | Rad |
| 21:47:29 | raptor | yes, it was _k |
| 21:47:38 | Skybax | _k made all of them? |
| 21:47:59 | raptor | we added two new ones by Quartz, but i can't remember if that was for 019 or not |
| 21:48:10 | Skybax | Yeah I remember the ones he made |
| 21:48:21 | Skybax | But like, bm (Bitmatch01) |
| 21:48:24 | raptor | ok, so Quartz made 2 and _k made the rest |
| 21:48:32 | Skybax | Okay |
| 21:48:59 | raptor | Our stock Retrieve level isn't that great |
| 21:49:08 | raptor | I've made an open request for a replacement |
| 21:49:23 | Skybax | I have a couple that I'd like to be considered as Stock maps... I don't think they're Retrieve tho |
| 21:49:36 | raptor | stock levels need to not be gimmicky, have Red/Blue colors, and just 'feel' stock-like, if that makes sense... |
| 21:50:02 | Skybax | Well, for example, I think my Warpathon map (Nexus) would make a good stock map |
| 21:50:05 | Skybax | It's solid |
| 21:50:17 | Skybax | It's one of my few maps that _k liked lol |
| 21:50:20 | raptor | i don't remember that one... |
| 21:51:23 | Skybax | Server is up if you wanna see it |
| 21:56:07 | Skybax | So yeah, apparently I have Zap! stock maps as well |
| 21:56:35 | Skybax | Bitmatch is obviously new, cause of the name |
| 21:56:36 | raptor | yes, those are still downloadable from the download page |
| 21:58:31 | Skybax | Any progress on the bot and double forcefield bug? |
| 21:58:50 | Skybax | For now I'm just separating all of them lol |
| 21:59:40 | raptor | what was that again? |
| 22:00:11 | raptor | kaen: do you happen to have some simple code somewhere that converts level code to real grid points via text parsing script? |
| 22:00:23 | raptor | i mean, i could write it, but I've lost mine... |
| 22:00:53 | Skybax | When there're two force fields that are opposite of each other, so they make one forcefield line but there's triangles on both ends, the bots don't know what to do. They just sit stuck on it |
| 22:01:11 | Skybax | They can't target a force field inside another force field's beam |
| 22:01:22 | raptor | that's weird |
| 22:01:34 | raptor | that's... weird |
| 22:01:37 | Skybax | Mhm. I noticed it on my BuildABase level |
| 22:01:54 | raptor | wait.... do they kill at least one of them? |
| 22:02:24 | Skybax | Nope |
| 22:02:29 | Skybax | They can't target either of them |
| 22:02:36 | Skybax | If you kill one for them, then they kill the other |
| 22:02:41 | raptor | huh |
| 22:02:43 | Skybax | But as long as they're both there, they're stuck |
| 22:02:58 | raptor | did you create a bug for it? |
| 22:03:27 | raptor | if not, could you? I think that might be a c++ problem (not with Lua AI) |
| 22:03:37 | Skybax | I haven't. I will |
| 22:07:39 | Skybax | Submitted. With a picture and everything |
| 22:08:24 | raptor | great! |
| 22:08:26 | raptor | thanks |
| 22:10:42 | raptor | haha, *that* level |
| 22:15:11 | Skybax | That's the level that reminded me of it, and also the level I'm revamping atm xD |
| 22:15:56 | Skybax | The bug kind of makes this level impossible for bots, and since my server is set to have a minimum of 6 players, I needed to work on this one x) |
| 22:16:18 | raptor | i think this bug has been there a long time... |
| 22:17:08 | Skybax | Probably |
| 22:17:15 | Skybax | But I didn't have intelligent bots before |
| 22:17:25 | Skybax | So I didn't notice when they acted stupid |
| 22:17:39 | Skybax | Now it's obvious xD |
| 22:17:52 | Skybax | I think it looks better like this anyways |
| 22:18:25 | Skybax | Finished ^_^ |
| 22:19:11 | Skybax | On some levels, though, it makes it easier because then bots don't rain down on you before you can even change your loadouts lol |
| 22:19:36 | Skybax | It's used like a botwall lol |
| 22:20:40 | Skybax | Yay engineer bot! |
| 22:20:42 | Skybax | I can't wait to test it |
| 22:22:09 | Skybax | WOW. It's super daft |
| 22:22:37 | Skybax | It just got itself trapped between two engineered items within 10 seconds of my adding it |
| 22:23:08 | Skybax | Also, it doesn't shoot people xD |
| 22:23:32 | raptor | heh |
| 22:23:36 | raptor | told ya it was simple |
| 22:24:19 | Skybax | Hmm... it's kind of useful... mostly just for keeping the enemy busy while you go and steal the flag |
| 22:24:44 | Skybax | It just flies straight until it finds a resource item, then flies in an arc until it hits a wall xD |
| 22:25:07 | raptor | heh, yep! |
| 22:25:43 | Skybax | Does it just fly straight purposfully? Shouldn't it, like, navigate to the nearest resource? |
| 22:25:54 | raptor | i was not the original author |
| 22:25:59 | Skybax | Good point |
| 22:26:05 | raptor | i'm sure it could use serious AI improvements |
| 22:26:13 | Skybax | That's a definite |
| 22:26:13 | raptor | all of our bots could.. |
| 22:26:31 | Skybax | Well the s_bot is killer... and the repair bot works awesomely until it goes braindead |
| 22:26:48 | Skybax | Oh and the zombie bot is awesome too |
| 22:27:08 | raptor | yeah, fordcars really knows bots the best of most of us now, i think |
| 22:27:13 | Skybax | lol the s_bot even wobbles around so it's hard to hit xD |
| 22:28:28 | Skybax | I'm not gonna put the engineer bot into this code until it gets revamped. Maybe I'll add it ingame, but I don't want the clutter every time |
| 22:28:52 | Skybax | A repair bot on each team might do rather nicely, however |
| 22:30:48 | Skybax | Hahahahaha that level still had quickbotv2 in it |
| 22:30:59 | raptor | well, i don't think any of us is going to fix it - it's not a normal bot included with the game and we have a lot on our list... |
| 22:31:00 | Skybax | Silly level |
| 22:31:23 | Skybax | Yeah, I understand |
| 22:32:02 | Skybax | Once I understand code more I'll try to make it seek a resource item.... it seems like relatively easy logic for a beginning project for me |
| 22:34:28 | Skybax | Also revamping one of my contest levels to take into account the bot bug |
| 22:34:34 | Skybax | Should I resub it? |
| 22:38:42 | Skybax | That's odd.. my Bitfighter just crashed when I tried to quit it lol |
| 22:40:20 | raptor | ha |
| 22:40:22 | raptor | stack trace? |
| 22:40:56 | Skybax | idek |
| 22:41:45 | Skybax | I don't speak apple crash code |
| 22:42:14 | raptor | that's OK, I (sort of) do! |
| 22:44:18 | Skybax | Do you want to see it? xD |
| 22:44:23 | raptor | sure! |
| 22:44:39 | raptor | wait |
| 22:44:41 | raptor | the crash? |
| 22:44:52 | Skybax | Yesh |
| 22:45:13 | raptor | I don't see the crash anywhere... |
| 22:45:31 | Skybax | That's cause I haven't sent you the pastie link yet |
| 22:46:33 | Skybax | http://pastie.org/8102207 |
| 22:46:35 | Skybax | Now I have |
| 22:47:02 | raptor | oh yuk |
| 22:47:05 | Skybax | It probably doesn't matter cause it happened when I was already closing the application lol |
| 22:47:10 | raptor | ok, i actually think that bug was fixed already |
| 22:47:22 | raptor | thanks! |
| 22:47:29 | Skybax | Yeup x) |
| 22:49:08 | Skybax | Oh that's nifty. All the levels that are from Zap! say "Original Zap! Level" on them |
| 22:59:26 | | Skybax Quit (Quit: Skybax) |
| 23:27:50 | raptor | oh my goodness it works |