Finger info for icculus@icculus.org...



 (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&section=intro
  http://icculus.org/cgi-bin/finger/finger.pl?user=icculus&section=proj
  http://icculus.org/cgi-bin/finger/finger.pl?user=icculus&section=general
  http://icculus.org/cgi-bin/finger/finger.pl?user=icculus&section=ssam
  http://icculus.org/cgi-bin/finger/finger.pl?user=icculus&section=todo

 Or directly through port 79, if your finger client will let you get away with:
  finger icculus?section=ssam@icculus.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. (icculus@clutteredmind.org)

(icculus.org icon goes here)


When this .plan was written: 2002-06-12 05:26:21
.plan archives for this user are here (RSS here).
Powered by IcculusFinger v2.1.27
w00t. There it is.