Timestamps are in GMT/BST.
| 00:00:00 | sam686 | pretty much i say the graphics of everything was better in instantaction ZAP.. |
| 00:00:00 | | karamazovapy has joined |
| 00:00:00 | raptor | even barriers? |
| 00:00:00 | raptor | :] |
| 00:00:00 | raptor | and the ship? |
| 00:01:00 | karamazovapy | AND THE SHIP! |
| 00:01:00 | raptor | hi karamazovapy |
| 00:01:00 | karamazovapy | yes, you're welcome. |
| 00:02:00 | sam686 | i can repeat what i says a day ago. you can look at some screenshots from ZAP instantaction http://www.google.com/search?q=ZAP%20instantaction&tbm=isch&tab=vi |
| 00:02:00 | karamazovapy | the instant action Z.A.P. graphics make me throw up in my mouth a little bit |
| 00:02:00 | raptor | i wish there were bigger pictures with more detail... |
| 00:03:00 | raptor | looks like they added a glow to everything |
| 00:03:00 | raptor | not sure if i like that.. |
| 00:03:00 | sam686 | and that red/orange/yellow is the health bar... That all the screenshots i could find in search.. |
| 00:04:00 | karamazovapy | found our new special controller - http://images.wikia.com/fallout/images/6/6f/Zap_glove.png |
| 00:04:00 | raptor | what on earth is that?? |
| 00:05:00 | karamazovapy | http://www.youtube.com/watch?v=LSF2H_1eQJc |
| 00:07:00 | karamazovapy | ugh. it looks like geometry wars puked on bitfighter. |
| 00:07:00 | sam686 | i wonder why video flickers, bad hypercam? Otherwise is a good quality |
| 00:08:00 | karamazovapy | maybe a bandwidth problem? |
| 00:08:00 | karamazovapy | instant action was always a little quirky for me |
| 00:09:00 | karamazovapy | I really dislike the gridlines, the glowing, the space warping explosions, and the weird texture map they applied to zones |
| 00:09:00 | sam686 | probably hypercam can't handle fullscreen right, due to capturing at the middle of drawing in a backbuffer and flipping between buffers (faster then copy backbuffer to frontbuffer) |
| 00:09:00 | karamazovapy | also, I especially hate the rotating gun turret in the middle of the ship |
| 00:10:00 | sam686 | That where i started ZAP, in instantaction.. |
| 00:11:00 | karamazovapy | I found Z.A.P. unplayable |
| 00:11:00 | raptor | WOW |
| 00:11:00 | raptor | --> it looks like geometry wars puked on bitfighter. < -- THIS |
| 00:11:00 | sam686 | Note that only at the beginning of video there is energy (blue) and health bar (red) it got hidden due to cropped fullscreen |
| 00:11:00 | raptor | that is exactly my analysis as well |
| 00:12:00 | karamazovapy | they started with such a good game, and they took it in entirely the wrong direction |
| 00:12:00 | raptor | it's funny to watch this video and see the exact same mechanics as bitfighter, but with an entirely different face |
| 00:12:00 | sam686 | Also in instantaction ZAP, you can select any of 5 weapon, the loadout is only for 2 modules. |
| 00:12:00 | raptor | it seems unnatural |
| 00:13:00 | karamazovapy | I'm still not sure what they were thinking |
| 00:13:00 | raptor | they were thinking geometry wars |
| 00:13:00 | raptor | and the merge went a bit off.. |
| 00:14:00 | karamazovapy | but I'm not sure why they thought that was a good idea |
| 00:14:00 | raptor | i might be biased because i fell for the charm of bitfighter in its current graphics state |
| 00:14:00 | karamazovapy | oh, I'm totally biased |
| 00:15:00 | sam686 | Have you ever played instantaction ZAP? i have.. (note that instantaction is no longer there now - 2008 to 2010) |
| 00:15:00 | raptor | never played myself |
| 00:16:00 | karamazovapy | I played a few times when they first introduced it, we thought it might be a viable post-Zap! successor |
| 00:16:00 | karamazovapy | the glow really screwed with me |
| 00:16:00 | raptor | yeah that was my first thought.. |
| 00:16:00 | raptor | was it popular? |
| 00:16:00 | karamazovapy | and the mounted turret-style shooting |
| 00:17:00 | raptor | was zap ia popular, i mean |
| 00:17:00 | karamazovapy | not compared to games like marble blast platinum |
| 00:17:00 | karamazovapy | it stripped out the editor (obviously) |
| 00:17:00 | karamazovapy | only left kind of a quickplay mode |
| 00:17:00 | sam686 | not sure, as games in instantaction REQUIRES internet connection, instantaction version probably cannot be played offline.. |
| 00:18:00 | karamazovapy | and you had to pay to unlock certain stock maps |
| 00:18:00 | raptor | sounds like a failed commercial venture |
| 00:18:00 | karamazovapy | it was |
| 00:18:00 | karamazovapy | the IA Z.A.P. forums weren't particularly active |
| 00:19:00 | karamazovapy | it seemed to be more successful when Zap! was first released by garagegames |
| 00:21:00 | sam686 | probably instantaction didn't have any forums at some older times... |
| 00:22:00 | karamazovapy | in any event...the old guard all went with bitfighter instead of IA |
| 00:23:00 | karamazovapy | although we stayed just long enough to steal all their "new" maps |
| 00:24:00 | karamazovapy | and not long after we all jumped ship, they shut down the original Zap! master server |
| 00:25:00 | | karamazovapy is now known as _k|away |
| 00:31:00 | raptor | so what's the point of adding 'virtual' to a destructor? like: virtual ~SoundSystem(); |
| 00:31:00 | raptor | because my IDE just did that automatically as i created the class |
| 00:32:00 | watusimoto | it lets you destroy objects using a handle further up the chain |
| 00:33:00 | watusimoto | if your classes look like this: |
| 00:33:00 | watusimoto | A --> B -- C |
| 00:33:00 | watusimoto | and you have a C, but are referring to it as an A* |
| 00:33:00 | watusimoto | you can destroy it without casting it to C |
| 00:33:00 | raptor | ah.. interesting |
| 00:33:00 | watusimoto | or soemthing like that |
| 00:34:00 | raptor | ok, now to really break things.. |
| 00:34:00 | watusimoto | just learned that a few weeks ago |
| 00:34:00 | watusimoto | getting polygon editor items to work now |
| 00:34:00 | watusimoto | then walls |
| 00:35:00 | watusimoto | then... done? |
| 00:35:00 | raptor | hooray!! |
| 00:35:00 | raptor | then me and sam can pick it apart :] |
| 00:35:00 | raptor | sam is really good at that.. |
| 00:46:00 | watusimoto | yes, I'm not going to wait until it's perfect, only until it's usable to check it in |
| 00:46:00 | raptor | sounds good to me |
| 00:50:00 | sam686 | Could later try to implement some kind of coop-edit, and possibly spectator, and auto-spectate (kind of like leaving the game) when idling too long. |
| 00:51:00 | raptor | curious, what good is a single member wrapped in an 'enum'?: |
| 00:51:00 | raptor | enum { |
| 00:51:00 | raptor | NumSources = 16, |
| 00:51:00 | raptor | }; |
| 00:52:00 | sam686 | i would rather use #define NumSource 16 or can also do const S32 NumSources = 16; not sure why do ENUM on a single one... |
| 00:53:00 | raptor | ok, just curious if there was a purpose to it |
| 00:54:00 | watusimoto | that code is (almost) exactly the same as const S32 NumSources = 16; |
| 00:55:00 | sam686 | is enum 32-bit integer, or floating point? is enum { number = 2.5 } allowed? |
| 00:55:00 | watusimoto | there is some theoretical performance advantage to using the enum construct... I'm phasing them out in favor of const S32 |
| 00:55:00 | watusimoto | enum is S32 |
| 00:55:00 | watusimoto | so no, not allowed |
| 00:56:00 | watusimoto | there is a webpage I always hit when I research the enums v. S32 thing |
| 00:56:00 | watusimoto | that explains it well |
| 00:56:00 | sam686 | yes, can't use enum floating point, have to use const F32 num=2.5; or #define num 2.5 |
| 00:56:00 | watusimoto | and I'm moving all my constants TO_THIS_FORMAT |
| 00:56:00 | watusimoto | I'm also phasing out the #defines |
| 00:56:00 | watusimoto | because that seems hackier |
| 00:58:00 | raptor | ok, why am i see SFXProfile AND SFXProfiles ? |
| 01:01:00 | watusimoto | is one a collection? |
| 01:01:00 | watusimoto | what am I supposed to make of this? |
| 01:01:00 | watusimoto | error C2385: ambiguous access of 'mPolyBounds' |
| 01:01:00 | watusimoto | 2> could be the 'mPolyBounds' in base 'Zap::Polyline' |
| 01:01:00 | watusimoto | 2> or could be the 'mPolyBounds' in base 'Zap::Polyline' |
| 01:01:00 | sam686 | enum = SFXProfiles, SFXProfile is a struct |
| 01:01:00 | watusimoto | sorry for the bad paste |
| 01:01:00 | watusimoto | but the two possible candidates are the same one!!! |
| 01:01:00 | raptor | sounds like you have an extern somewhere |
| 01:01:00 | raptor | oh, huh |
| 01:02:00 | raptor | interesting |
| 01:02:00 | raptor | make clean? |
| 01:02:00 | raptor | :) |
| 01:07:00 | sam686 | some compilers that see errors might not tell you much at all... |
| 01:21:00 | watusimoto | ok, doing clean rebuild |
| 01:22:00 | raptor | sam686: what can you tell me about the line in sfx.cpp: |
| 01:22:00 | raptor | #if 0 //#ifdef TNL_OS_WIN32 |
| 01:22:00 | raptor | is that code chuck in that #if statement actually used on windows? |
| 01:24:00 | watusimoto | phooey... rebuild not working |
| 01:24:00 | sam686 | it was used for captureSamples, but with a working openAL captureSamples, it is not needed... |
| 01:25:00 | watusimoto | #if 0 is alwasys false |
| 01:25:00 | raptor | ok, deleting.. |
| 01:25:00 | sam686 | no more dsound.lib and licence stuff |
| 01:25:00 | raptor | excellent |
| 01:37:00 | raptor | wow this refactor is getting hairy fast |
| 02:03:00 | watusimoto | found my problem, solution is elusive |
| 02:03:00 | raptor | explain |
| 02:04:00 | watusimoto | variant of the diamnond problem |
| 02:04:00 | raptor | wonderful |
| 02:04:00 | watusimoto | I have a polygon class |
| 02:04:00 | watusimoto | I then have a subclass of polygons that impelments polygon methods related to polygons |
| 02:05:00 | watusimoto | I just created an editorpolygon class that contains polygon related methods from the editor |
| 02:05:00 | watusimoto | and goalzone inherits from both of those |
| 02:05:00 | raptor | ah |
| 02:05:00 | watusimoto | polyline is a superclass of polygon, so it sees two routes to get to polyline |
| 02:05:00 | watusimoto | and gets confused; even though both routes result in the same thing |
| 02:06:00 | raptor | was the solution to add 'virtual' somewhere? |
| 02:06:00 | watusimoto | I've had this problem before, but the fix I tried earlier isn't working here |
| 02:06:00 | watusimoto | yes, except that breaks things this time |
| 02:06:00 | raptor | oh, no solution yet |
| 02:07:00 | watusimoto | The classes are getting very compelx and interwoven; all attempts at running software to help visualize them have failed |
| 02:08:00 | watusimoto | I feel that I must be doing something wrong |
| 02:09:00 | raptor | maybe they need to be modularized even more? |
| 02:24:00 | sam686 | will it be possible to put in thisObject->editorpolygon::mPolyBounds or something? or cast to editorPolygon then use mPolyBounds? |
| 02:27:00 | sam686 | maybe dynamic_cast<EditorPolygon *>(thisObject) ->mPolyBounds ? |
| 02:28:00 | | watusimoto Quit (Quit: Leaving.) |
| 02:37:00 | raptor | here goes first make after refactor... |
| 02:37:00 | raptor | i say 500 errors.. |
| 02:38:00 | sam686 | errors in .h files can repeat the same error many times. |
| 02:39:00 | sam686 | what refactor is it? the sound system? |
| 02:39:00 | raptor | yep |
| 02:39:00 | raptor | first iteration |
| 03:37:00 | | raptor Quit (Remote host closed the connection) |
| 12:18:00 | | raptor has joined |
| 12:18:00 | | ChanServ sets mode +o raptor |
| 13:03:00 | | watusimoto has joined |
| 13:04:00 | | watusimoto Quit (Client Quit) |
| 13:30:00 | | watusimoto has joined |
| 13:35:00 | raptor | what is the proper way to use a RefPtr<?> when passing it into a method? |
| 13:36:00 | raptor | someMethod(RefPtr<?>*) |
| 13:36:00 | raptor | someMethod(RefPtr<?>&) |
| 13:36:00 | raptor | someMethod(RefPtr<?>& pointer) |
| 13:36:00 | raptor | someMethod(RefPtr<?> pointer) |
| 13:36:00 | raptor | or does it really matter? |
| 14:00:00 | raptor | oh my goodness my refactor compiled |
| 14:01:00 | raptor | oh my goodness it works without problems so far |
| 14:19:00 | watusimoto | ugh... it looks like I might have to refactor the lua class hierarchary to make this work |
| 14:20:00 | raptor | what |
| 14:20:00 | watusimoto | http://pastebin.com/3wi5TMYk |
| 14:21:00 | watusimoto | this shows the GoalZone class... as you move right, you are moving up the class hiearchy |
| 14:21:00 | watusimoto | when you hit an x, that means no more super classes of that branch |
| 14:21:00 | watusimoto | when you hit xxx, it means a long line of non-problematic classes, which, for our purposes, is the same thing |
| 14:21:00 | watusimoto | you can see a lot of overlap here |
| 14:21:00 | raptor | oh boy |
| 14:21:00 | raptor | wow |
| 14:22:00 | raptor | that looks complex |
| 14:22:00 | watusimoto | I'm thinking that we should combine the EditorPolygon and LuaPolygon into a single class |
| 14:22:00 | watusimoto | since every one of our polygon items (goals, loadouts, nexus, slipzones) inherits from both |
| 14:22:00 | raptor | what does LuaPolygon do? |
| 14:22:00 | watusimoto | well, slipzones doesn't, but could |
| 14:22:00 | watusimoto | and should |
| 14:23:00 | watusimoto | LuaPoly provides implementations for sevearl LuaItem/LuaObject methods that are common to polygon classes |
| 14:23:00 | watusimoto | it needs to have access to the zone's centroid, which is stored at the Polygon level |
| 14:24:00 | raptor | ah ok |
| 14:24:00 | watusimoto | but maybe we should consider all editor objects to be inherently scriptable |
| 14:24:00 | watusimoto | in which case it might make sense to mix the lua and editor code |
| 14:24:00 | raptor | i think that makes sense |
| 14:25:00 | watusimoto | except, of course, not every editor object will be scribtable |
| 14:25:00 | watusimoto | there are lots of small wall-like things that are used internally to the editor, though I'm not yet sure if they'll need to implement the EditorObject interface. Perhaps not |
| 14:25:00 | raptor | maybe the editor should just be a separate binary all together... |
| 14:26:00 | watusimoto | well, it essentially was in the original implementation |
| 14:26:00 | watusimoto | didn't use any of these classes at all |
| 14:26:00 | watusimoto | but breaking it out into to .exes won't fix the class hieararchy issues |
| 14:26:00 | watusimoto | the problem I posted about last night was that there are two paths to get to PolyLine |
| 14:26:00 | watusimoto | and I can't make either of them virtual |
| 14:27:00 | watusimoto | though I might be able to insert a dummy class into the tree to make them so |
| 14:27:00 | raptor | this is one crazy tree |
| 14:27:00 | watusimoto | or, rather, make it work |
| 14:27:00 | watusimoto | yes |
| 14:27:00 | watusimoto | it's probably a sign of a weak design |
| 14:27:00 | watusimoto | for which I assume full credit |
| 14:28:00 | watusimoto | the problem is we have all sorts of crazy exceptsions |
| 14:28:00 | watusimoto | all point objects can be editorobjects |
| 14:28:00 | watusimoto | except robots and ships |
| 14:28:00 | watusimoto | stuff like that |
| 14:28:00 | raptor | sounds like it needs more modularization |
| 14:28:00 | raptor | then it'll be easier to pick and choose |
| 14:28:00 | watusimoto | now, I could just make robots and ships be editor objects, and that would simplify that tree a bit |
| 14:29:00 | watusimoto | I think it's too modular now |
| 14:29:00 | watusimoto | i think that's the problem |
| 14:29:00 | watusimoto | we we end up with picking this and that, but not the other, and end up with these crazy trees |
| 14:29:00 | watusimoto | here, we have separate EP and LP classes, which is more modular than combining them |
| 14:30:00 | watusimoto | but that leads to different paths up the tree |
| 14:30:00 | watusimoto | because both EP and LP need access to things in Polygon |
| 14:30:00 | watusimoto | if we merged them, the two refs to Polygon would collapse |
| 14:30:00 | watusimoto | and the problem would be solved |
| 14:31:00 | watusimoto | likewise, comnining editorobject (EO) and gameobject (GO) would resolve another diamond |
| 14:31:00 | raptor | sounds like you have your answer |
| 14:31:00 | watusimoto | excpet things like bullets are GOs but not EOs |
| 14:31:00 | raptor | ah |
| 14:31:00 | watusimoto | unless they're mines or spybugs |
| 14:31:00 | watusimoto | in which case they aer |
| 14:31:00 | raptor | haha |
| 14:32:00 | raptor | wow |
| 14:32:00 | watusimoto | expept they're really grenadeProjectiles, which aren't really projectiles at all, but rather are considered items |
| 14:32:00 | watusimoto | which is a whole nother tree |
| 14:32:00 | watusimoto | item, moveItem, pickupItem, etc. |
| 14:33:00 | watusimoto | actually, you can currently place ships in the editor. Possibly even bullets |
| 14:33:00 | raptor | ha! |
| 14:33:00 | watusimoto | by editing the level file directly |
| 14:33:00 | raptor | i bet some people will find some interesting things to do with that.. |
| 14:33:00 | watusimoto | anything that has a processarguments method |
| 14:33:00 | watusimoto | people used to place "ghost ships" here and there |
| 14:33:00 | watusimoto | they just sat there, and could be killed |
| 14:34:00 | watusimoto | but wouldn't respawn |
| 14:34:00 | watusimoto | so maybe I should worry less about the exceptions, and just implement null methods for thiungs involving placing ships in the editor |
| 14:43:00 | | ShadowXLoner has joined |
| 14:43:00 | ShadowXLoner | 'Sup guys? |
| 14:53:00 | raptor | hi |
| 14:55:00 | ShadowXLoner | Hi |
| 14:55:00 | raptor | watusimoto: why do we initialize the sound system with the dedicated server? |
| 14:56:00 | raptor | what that just a hack to not have to put #ifdefs everywhere? |
| 15:05:00 | raptor | ok, i think i am ready for the sound system refactor to be checked in |
| 15:05:00 | raptor | then i can implement music a bit easier |
| 15:05:00 | raptor | still need LOTS of cleanup |
| 15:06:00 | watusimoto | watusimoto: why do we initialize the sound system with the dedicated server? |
| 15:06:00 | watusimoto | we do so because the dedicated server makes sounds when players join or quit |
| 15:06:00 | watusimoto | that's how Sam knows when to join in on his server |
| 15:07:00 | raptor | ohhh.... |
| 15:24:00 | raptor | ok, i fixed playing sounds for dedicated server :] |
| 15:29:00 | raptor | so far no crashing - that's good |
| 15:33:00 | | BitfighterLogBot - Commit 580b2bbeb76b | Author: buckyballreaction | Log: Rename unused 'SoundSystem' class - may be useful in the future; I am hijacking the name for the audio refactor. |
| 15:33:00 | | BitfighterLogBot - Commit 91bf2055ed1c | Author: buckyballreaction | Log: Sound System refactor. Still plenty to clean-up, but it works. |
| 15:39:00 | | ShadowXLoner Quit (Quit: ShadowXLoner) |
| 16:14:00 | raptor | sam686: i hope i didn't break anything, but it would be could to test that your dedicated server does its audible notification and that voice chat still works :) |
| 16:14:00 | raptor | but i can't test voice chat until i'm home later |
| 16:16:00 | | _k|away is now known as karamazovapy |
| 17:06:00 | | ShadowXLoner has joined |
| 17:08:00 | | koda has joined |
| 17:28:00 | ShadowXLoner | 'Sup |
| 17:29:00 | sam686 | hi |
| 17:29:00 | raptor | hello again |
| 17:35:00 | sam686 | that voice test seems to work with the latest changes from repository.. |
| 17:35:00 | raptor | hooray! |
| 17:36:00 | ShadowXLoner | Voice test? As in mics? As in a voice system in-game? |
| 17:36:00 | raptor | yep |
| 17:37:00 | ShadowXLoner | O_O |
| 17:37:00 | raptor | sounds horrible as it stands, but sam got it to work :) |
| 17:37:00 | sam686 | yes, hopefully that voice chat will work in max and linux in next version of bitfighter. |
| 17:37:00 | sam686 | max = MAC |
| 17:37:00 | ShadowXLoner | Who cares about quality? If you remember, Zap!'s voice quality wasn't even very audible at best. |
| 17:38:00 | ShadowXLoner | 015b, or 016 |
| 17:38:00 | ShadowXLoner | ? |
| 17:38:00 | sam686 | can find ways to improve quality.. |
| 17:38:00 | raptor | 016 definitely |
| 17:38:00 | ShadowXLoner | kk |
| 17:38:00 | raptor | we are breaking lots... |
| 17:38:00 | sam686 | have to be 016 to allow improving voice quality. |
| 17:38:00 | ShadowXLoner | yeah, really. This is really awesome, watching you guys develop Bitfighter. |
| 17:43:00 | | BitfighterLogBot - Commit 92e4f20ed372 | Author: buckyballreaction | Log: Remove unused methods; Increase sample size to 32 |
| 17:43:00 | raptor | sam686: i think we should ditch lpc10 and gsm for speex |
| 17:44:00 | sam686 | a level called Organic Block (level gen) seems to not be squares anymore but instead rectangles. look at this pictire http://96.2.123.136/bitfighter/organic_block.gif |
| 17:44:00 | raptor | well that is definitely a clipper issue |
| 17:44:00 | sam686 | another thing about recording voice is captureSamples (and playback voice) is at 8000 hertz |
| 17:45:00 | raptor | yeah, we want at least 11025 |
| 17:46:00 | raptor | have you tried GSM? |
| 17:46:00 | raptor | is it any better? |
| 17:46:00 | sam686 | probably the organic block issue is the barriers touching but not overlapping, so that cause clipper to randomly think it is combined or not.. |
| 17:48:00 | sam686 | haven't yet tried gdm.. |
| 17:48:00 | sam686 | gsm. |
| 17:57:00 | | ShadowXLoner Quit (Quit: ShadowXLoner) |
| 18:08:00 | sam686 | just tried GSM, seems to sound better.. |
| 18:33:00 | raptor | do you know if it is more bandwidth intensive? |
| 18:34:00 | raptor | we need some way to measure the bandwidth.. |
| 19:26:00 | sam686 | hi |
| 19:26:00 | raptor | hi |
| 19:26:00 | sam686 | (i thought i was typing in bitfighter) |
| 19:26:00 | raptor | :] |
| 20:09:00 | raptor | koda: the openal-soft developer himself contributed a patch to bitfighter to make distance-gain processing work better |
| 20:10:00 | koda | nice |
| 20:10:00 | koda | it's good to have friendly devs :p |
| 20:10:00 | raptor | oh yeah |
| 20:11:00 | raptor | for reference - here is his patch: http://code.google.com/p/bitfighter/source/detail?r=8a21b471df2e3b33215356f5f86cc11dca54ad60 |
| 20:11:00 | raptor | it may give insight in how you might want to do things with hedgewars |
| 20:11:00 | raptor | it uses linear gain falloff |
| 20:12:00 | raptor | simple enough - at least for him :] |
| 20:14:00 | koda | thanks |
| 20:14:00 | raptor | i've since refactored the class - it's mostly still the same |
| 20:15:00 | raptor | i've been studying the uSouns.pas class in hedgewars for how to build in music |
| 20:15:00 | raptor | uSound.pas |
| 20:15:00 | raptor | that's my next task |
| 20:16:00 | koda | really? what's your plan? |
| 20:16:00 | raptor | i plan on using the alure library linked with libvorbis |
| 20:16:00 | raptor | to easily load the music |
| 20:18:00 | raptor | unless your question was about something else.. |
| 20:44:00 | | raptor has left |
| 20:45:00 | | raptor has joined |
| 20:45:00 | | ChanServ sets mode +o raptor |
| 20:48:00 | | koda Quit (Quit: koda) |
| 20:57:00 | | raptor Quit (Remote host closed the connection) |
| 22:15:00 | | watusimoto Quit (Ping timeout: 276 seconds) |
| 22:50:00 | | raptor has joined |
| 22:50:00 | | ChanServ sets mode +o raptor |
| 23:17:00 | raptor | ever since i blocked that one e-mail domain, bot registration has dropped in half, it seems |
| 23:40:00 | sam686 | blocking ip address of spammer may be mostly useless (spam bot probably use proxy server), blocking some emails may be better then blocking IP address.. |