(Seen my glasses? I'm a dork.) If you want a specific section of my plan, you can use the web interface like this: http://icculus.org/cgi-bin/finger/finger.pl?user=icculus§ion=intro http://icculus.org/cgi-bin/finger/finger.pl?user=icculus§ion=proj http://icculus.org/cgi-bin/finger/finger.pl?user=icculus§ion=general http://icculus.org/cgi-bin/finger/finger.pl?user=icculus§ion=ssam http://icculus.org/cgi-bin/finger/finger.pl?user=icculus§ion=todo Or directly through port 79, if your finger client will let you get away with: finger firstname.lastname@example.org This is part of the new, improved IcculusFinger. Yay. Thanks, --The McManagement.
Currently Active Projects: (This is in no particular order)- The icculus.org open source incubator. - SDL_sound. - PhysicsFS. - The Build Engine. - Toby. - Serious Sam. - IcculusFinger. - UT2003. - various Pyrogon things. - csmhax0r. - IcculusNews. - Other stuff. I have projects on icculus.org (some are even mine) that are already abandoned. I will have to figure out what to do with them. If you want to peek around, look at The CVS Tree. General stuff:I can't believe I never read One Flew Over the Cuckoo's Nest before. This is one of those books that alters your life, or at least makes you look at things a little differently. Y'know, you feel like you weren't entertained so much as bettered for having read it. It's up there with the Catch-22's and 1984's of the world. And I'm only half way through it. I picked up Eminem's new album. The Marshall Mathers LP is still his best, and The Eminem Show is, in many ways, more of the same. I still like how his lyrics are purely offensive, and yet can be very insightful (and distrustful) of both the culture that he spites and the culture that he fuels ("the most feared duet since Elton and me played Career Russian Roulette", all of "White America", etc). More than that, I love the duality of this Slim Shady persona: a "pistol-packing drug addict" that tries his best to croon love ballads to his daughter. You gotta love that. Try to get two dimensions out of any other parental-advisory material. I dare you. Serious Sam:Yes, I'm porting it. No, there's no timeframe right now. Email me with questions, and I'll start a FAQ or something. Current Status: It seems all the rendering bugs have been shaken out with the ASM fixes. Every couple hours of gameplay you fall through the floor (!), which will be a nasty bughunt, but I'm getting to be pleased with the current state of the port. Networking stuff. The good news: it works between Linux boxes. The dedicated server and the client are both fully functional. However, it doesn't work at all against win32 boxes, and vice-versa. The reason is that there's a checksum sent during the initial session negotiation; this checksum includes floating point values that are calculated by the game before the connection. This is a problem, since GCC and Visual C (or any other compiler, or other versions of these compilers) will have slightly different results for any given floating point operation. Even if we police the floating point control word (which we do), even the ordering of opcodes can give you slightly different precisions...this is the CPU maker's perogative, and is done for efficiency, etc. In general, this is only a serious problem in two scenarios. First, if you need that deep, deep precision. In reality, FPS games don't, or at least, it's not fatal if the client and server are off at the 20th decimal place; we aren't engineering skyscrapers here or anything. Second, if you take a floating point number and look at it as a collection of bits, for example, to create a checksum...even though both client and server have more-or-less legitimate values, the CRC will be wildly different. For the initial handshake in Serious Sam, it's up to the client to disconnect if the CRC is incorrect (although no doubt this should/will change in later versions when someone exploits this truth), so I just commented out the exception throw and sure enough, I could get into win32 servers on the Internet. However, there's also a CRC done on every packet sent to the server, and here the server takes a more active concern for failed checksums. It keeps a counter for each client which increments with each failed CRC. When you pass a certain threshold, you get booted from the server. And yes, there's some floats in this checksum, too, so you don't stay connected for long. Croteam has rewritten a good portion of the networking code for the latest patch, and they are in the process of addressing the CRC thing now. This means future Serious Engine games (and probably a future patch to The Second Encounter) will be able to talk between Linux and win32 (and whatever else shows up). Likely Linux and win32 won't play nice for The First Encounter without another win32 patch, which I wouldn't hold my breath for...then again, last time I looked at the server browser for First Encounter games, there was less than ten of them, and some of them aren't even patched to the latest revision (some are still on 1.01!), so I don't see anyone really weeping over this. Then again, maybe that's because there's no way for the general public to run a Linux dedicated server. :) Actually, seriously, having Linux servers seems to be a MAD boost to your online life expectancy. Developers, take heed...and send me a porting contract. Worst case scenario: your LUG can still play TFE against each other, just not other win32 boxes. Everything else should be normal. Next up for me is a minor bug when pulling down the console in-game, and patching up to the latest Croteam sources. I'm thinking beta after that. Those old Screenies. Keep me and icculus.org going. --ryan. (FAQ snipped. Check the archives.) My never ending TODO list:Somewhat immediate TODOs: - Check for zlib 1.1.3 remnants on icculus.org. - CC/MacOS again. - Yuri's Revenge support in csmhax0r. - Have csmhax0r flip read-only flag. - Set up DoD and Counterstrike servers for the CSM. - Get Nicki to pay for a movie. - Get Emmett to buy me lunch. - Deal with collection agency. - Upgrade Liza. - Reburn damaged music disc. - Nag Bernd about hardware. - Nag zakk about hardware (?). - Clean up the damned logfiles. - Goddamn I'm friggin' BUSY. :( Ongoing TODOs: - Port Serious Sam. ( 15%) - Rewrite IcculusNews. ( 99%) - Release SDL_sound v1.0. ( 92%) - Release PhysicsFS v1.0. ( 98%) - SDL_mixer rewrite, using non-existant SDL_sound library. ( 0%) - Toby rewrite #4. Way overdue. ( 20%) - Documentation for Toby. YEARS overdue. ( 0%) - Major SMPEG updates. ( 1%) - Rewrite web interface to mailing list archives. ( 0%) - Write The Hook Book. ( 0%) - Read A Beautiful Mind. ( 1%) - Read One Flew Over the Cuckoo's Nest. ( 50%) - Read On the Road. ( 15%) Backburnered, but reasonable TODOs: (in no specific order): - Hook up CVS to IcculusNews. - Figure out how to monitor exactly how much bandwidth we've used per month. - Hook up mailing list software to IcculusNews. - Hook up Bugzilla to IcculusNews. - Rewrite Toby's parser. - Finish writing Punk Ass Comedy. - Finish writing The Street. - Finish reading The Dragon Book. - Increase memory/swapspace. - Remove http://icculus.org/sysinfo/todo.html - Clean up room. - Clean up home dir. - Set up meldrew. - Get nerf updated for SSL support. - Put all the header/footer functions for icculus.org in one PHP file. Blue sky: - Get Dreamcast Linux working. - SDL OS/2. - SDL LightPen/tablet support. - SDL MsgBox API. - SDL_rwops library. - Make BUILD Engine support OpenGL. - Fix the Linux Realtek drivers. - Write scratchware. - Physics engine. - BuildGL. - BuildX. - Get BUILD engine ready for Matt Saettler. - Get Duke3D/COMMIT net API implemented for modern platforms. - Get Duke3D sound API implemented for modern platforms. - Beat Zork III. I will someday, I swear. --ryan. (email@example.com)