Slashdot Mirror


.NET Version of Quake II

MSwanson writes "It seems that Vertigo Software has ported the Quake II source code to Microsoft's .NET platform. Not only did they add a heads-up display in the .NET managed version, but they also say that the managed version initially ran faster than the native version. After changing some optimization settings, the native version now runs 15% faster than managed .NET code. Still pretty impressive. Download the ported version along with source code at the Vertigo site."

59 comments

  1. Using the term "ported" loosely by Dr.+Bent · · Score: 4, Interesting

    So they're still using some native C++ code? Big deal. Sounds like they just put a .NET wrapper around the QuakeII Engine, and they're still using native code to do all the heavy lifting. So you're still tied to Windows, and it runs 15% slower....fantastic.

    Now, when they have a version written purely in managed code than can run on any .NET implementation (and runs only 15% slower), then I'll be impressed.

    1. Re:Using the term "ported" loosely by kasparov · · Score: 2, Informative

      Quake II, if I am not mistaken, was written in C (not C++). So it looks like they ported the code to C++ and used .NET so that you can run the engine as a managed app. Should make it pretty easy to add new features.

      --
      There's no place I can be, since I found Serenity.
    2. Re:Using the term "ported" loosely by thing12 · · Score: 3, Informative
      You are mistaken. Quake I was written in C with extensions in "QuakeC". Quake II is C++

      Nope, you're mistaken... Quake II is written in C.. which is why it had to be ported to C++ for this project - they use c++ reserved words as variables and what not. And I may be mistaken, but I thought QuakeC was introduced in Quake II.

    3. Re:Using the term "ported" loosely by slithytove · · Score: 1

      I'm less than totally positive about q2 being c++, but my whole basis of experience with it is writing quakec for q1 and being annoyed when it was abandoned for dll's in q2 and I could have sworn they had to be in c++

    4. Re:Using the term "ported" loosely by kasparov · · Score: 1
      Sorry, just quoting the page at Vertigo where they say " Now, in July 2003, Vertigo Software, Inc. is releasing Quake II .NET, a port of the C-language based engine to Visual C++ with a .NET managed heads-up display."

      Of course, now that I have actually downloaded the source and run `grep -r ++` in the source directory, I see my error... :-)

      --
      There's no place I can be, since I found Serenity.
    5. Re:Using the term "ported" loosely by thing12 · · Score: 4, Informative
      Sounds like they just put a .NET wrapper around the QuakeII Engine, and they're still using native code to do all the heavy lifting.

      Not quite -- if you download it and run the code through a .net disassembler you'll see that it can be converted to msil or higher up to C#. I haven't done a detailed analysis of it, but on the surface it looks like a complete conversion. Of course that doesn't count calls to COM objects and any 3rd party DLL's that are called via platform invoke's. But it looks like the "heavy lifting" is being done inside the confines of the .NET Framework.

    6. Re:Using the term "ported" loosely by irix · · Score: 2, Troll

      looks like they ported the code to C++

      Getting C code to compile with a C++ compiler is hardly a difficult task. QuakeII compiles with Visual C++ out of the box for starters.

      Should make it pretty easy to add new features.

      I'm sorry, but I don't see how getting this to compile under the bastardized piece of crud that is "managed C++" would make it easier to add new features.

      All this does is show you can port a C app to C++ on .NET. Yay. What are their supposed advantages to having Quake II run under .NET?

      * Manage memory allocations yourself or use CLR garbage collection.
      * Call Window APIs directly or use .NET methods.
      * Use existing libraries or .NET classes.
      * Easily expose or consume other .NET assemblies written in different languages.

      All while losing 15% performance and throwing the portability of the code out the window. Wow, sure sounds persuasive to me! </sarcasm>

      --

      Do you even know anything about perl? -- AC Replying to Tom Christiansen post.
    7. Re:Using the term "ported" loosely by irc.goatse.cx+troll · · Score: 2, Informative

      It's in C. I had to check though.

      --
      Pain lasts, kid. Its how you know you're alive. Sometimes I think this growing up thing is just pain management-TheMaxx
    8. Re:Using the term "ported" loosely by z01d · · Score: 5, Informative

      Quake II, if I am not mistaken, was written in C (not C++).

      that's right. and although we don't have quake3 engine source code, but it's safe to say that all id games so far are using C (or QuakeC for mod making of Q1). but not any more, here is a quote from JC about D3:

      I did most of the early development work with a gutted version of Quake 3, which let me write a brand new renderer without having to rewrite file access code, console code, and all the other subsystems that make up a game. After the renderer was functional and the other programmers came off of TA and Wolf, the rest of the codebase got rewritten. Especially after our move to C++, there is very little code remaining from the Q3 codebase at this point

      http://www.gamespy.com/e32002/pc/carmack/

    9. Re:Using the term "ported" loosely by irix · · Score: 3, Informative

      it looks like a complete conversion

      They converted the code to compile in Visual C++ .NET. If you run with managed extensions on, they hook in a class that does the radar using .NET APIs (Windows forms and such). By the way - look at their code for the radar - it is hideous. Everything in the .h file in true "lets make the users of our class import all sorts of useless dependencies" style. Ugh.

      If you diff through the code, you'll notice about 800 lines in their radar implementation and only minor differences elsewhere (don't name variables after C++ reserved words, etc.).

      It is a proof of concept, but a none too impressive one. It is made even less impressive by the MicroSoft cheerleading found all over their description of the port.

      --

      Do you even know anything about perl? -- AC Replying to Tom Christiansen post.
    10. Re:Using the term "ported" loosely by drinkypoo · · Score: 2, Informative
      QuakeC was a Quake1 item, since then you've had to program in C, or at least you have to be able to come up with a DLL. I guess you could probably do it all in some other language with a C stub library to appease q2, q3, whatever. Unreal also operates in this fashion.

      I'm sure at some point the overhead of scripting just got to be too much for iD to do scripting internally, so they just put all that functionality into the game itself through a DLL. Of course that meant all those people who learned QuakeC had to learn C... but it was a lot easier to get development tools by then.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    11. Re:Using the term "ported" loosely by Anonymous Coward · · Score: 0

      Your fucking pathetic geek boy....

  2. What is the port? by molo · · Score: 4, Interesting

    Quake II .NET is a version of the popular Quake II game, ported to native and managed C++ using Microsoft® Visual Studio® .NET(TM) 2003

    Can someone fill me in here? What is the big deal? Id has always used the MS compilers for that platform. So they just updated it to work with the latest release of the compiler. Wow, fancy shit.

    -molo

    --
    Using your sig line to advertise for friends is lame.
    1. Re:What is the port? by erasmus_ · · Score: 5, Informative

      The big deal is that this new version is now using managed code instead of just native C++. This company did it to illustrate how this can be done, even for large C++ projects. Managed code is run by the Common Language Runtime, allowing for a ton of useful features, which can now be used by Quake 2, or another ported project. A good overview can be found here, but here are a few from that page to get you started:

      The common language runtime manages memory, thread execution, code execution, code safety verification, compilation, and other system services. These features are intrinsic to the managed code that runs on the common language runtime.

      The runtime also enforces code robustness by implementing a strict type-and-code-verification infrastructure called the common type system (CTS). The CTS ensures that all managed code is self-describing. The various Microsoft and third-party language compilers generate managed code that conforms to the CTS. This means that managed code can consume other managed types and instances, while strictly enforcing type fidelity and type safety. ...

      In addition, the managed environment of the runtime eliminates many common software issues. For example, the runtime automatically handles object layout and manages references to objects, releasing them when they are no longer being used. This automatic memory management resolves the two most common application errors, memory leaks and invalid memory references.


      That last one means your program no longer crashes or takes over all memory resources because of bad resource management.

      --
      Please subscribe to see the more insightful version of th
    2. Re:What is the port? by metamatic · · Score: 1

      So basically, it's still native Windows-only code, but the .NET features make it 15% slower?

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    3. Re:What is the port? by OeLeWaPpErKe · · Score: 4, Insightful

      Quake is a C project. C, not C++, as many have said. This invalidates all of the points you make. Now try again.

      A C framebuffer (that means 2D, and yes quake II is an app that doesn't use any 3D api, it's all in the engine itself the magic happens) app can be ported to everything with minimal effort ( download a few demos and port them to QT, Allegro, SDL, and DirectX), it won't take you very long.

      Also, as the fill rate is the limiting factor, there will not be a very big performance difference in any of the versions.

    4. Re:What is the port? by OeLeWaPpErKe · · Score: 1
      I read my previous post and decided it may need some clarification.

      The common language runtime manages memory, thread execution, code execution, code safety verification, compilation, and other system services. These features are intrinsic to the managed code that runs on the common language runtime.

      Which of these is missing from C itself ? Okay maybe code safety is not "intrinsic" to the code itself (ie, you'll need a debugging tool like valgrind).

      For the other points ... what exactly is the difference between "Excption : Null pointer dereference" and "Null pointer dereference".

      Furthermore, the quake code is not well behaved Managed C++ code, and it never will be (it, for instance, doesn't ever throw any exception), so all of the extras aren't used (not that they're many).

      The runtime also enforces code robustness by implementing a strict type-and-code-verification infrastructure called the common type system (CTS). The CTS ensures that all managed code is self-describing. The various Microsoft and third-party language compilers generate managed code that conforms to the CTS. This means that managed code can consume other managed types and instances, while strictly enforcing type fidelity and type safety. ...

      Again ... which of these is missing from native C++. Native C++ will even warn you of type problems before the program is ever executed.

      In addition, the managed environment of the runtime eliminates many common software issues. For example, the runtime automatically handles object layout and manages references to objects, releasing them when they are no longer being used. This automatic memory management resolves the two most common application errors, memory leaks and invalid memory references.

      Reference counting ? That is in C++ since ... well, the beginning. Btw I'm still waiting for the first memory leak C# reports to me ...

      That last one means your program no longer crashes or takes over all memory resources because of bad resource management.

      No it means it will utterly cripple your system's performance (think a pre-2.4.10 swapstorm, except worse*) for a long time when resources are tight, instead of crashing (which is the preferable course of action I think, when my quake II uses up > 600 megs of ram, kill it, don't start meddling around with other programs in a doomed attempt to fix the running program)

      And if it references invalid memory, it will crash with an exception instead of ... well ... a hardware exception.

      * What do you think happens when your system is in a swapstorm because of excessive memory usage, and the program started to resolve this goes around referencing memory all around the place, it will case a page fault (let's say 200 ms of work for the os) every 2-3 assembler instructions. There will be nothing to do except reset the system, unless you have 4 gigs of ram and no swapfile.
    5. Re:What is the port? by Chester+K · · Score: 1

      Quake is a C project. C, not C++, as many have said. This invalidates all of the points you make. Now try again.

      Quake2.NET is a C++ project. Not C. That invalidates your point and thus revalidates the original point, that this is a project that can be pointed to as proof that .NET can handle large managed C++ projects.

      A C framebuffer (that means 2D, and yes quake II is an app that doesn't use any 3D api, it's all in the engine itself the magic happens) app can be ported to everything with minimal effort ( download a few demos and port them to QT, Allegro, SDL, and DirectX), it won't take you very long.

      Quake 2 uses OpenGL.

      Also, as the fill rate is the limiting factor, there will not be a very big performance difference in any of the versions.

      Fill rate is the limiting factor on any newer game that stresses your 3D hardware (and even then, only at a certain point). Quake 2 has been out for quite a long time now and its graphics are not cutting edge. Fill rate is not the limiting factor in this case.

      --

      NO CARRIER
    6. Re:What is the port? by drinkypoo · · Score: 1

      I would like to offer anecdotal support of your point about fill rate. I'm always running out of fill rate before I run out of the ability to compute polys. I always run the low-end nVidia card, though, because they're cheap and they work. (I don't run Linux on the desktop, mind you. I'm actually thinking of making "the switch" in any case.)

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    7. Re:What is the port? by aarestad · · Score: 1

      IIRC, Quake I was compiled using DJGPP, or at least that was claimed on the DJGPP web site.

      --
      "The world doesn't really need more busy people, maybe not even more intelligent people. It needs 'deep people'..."
    8. Re:What is the port? by molo · · Score: 1

      Quake 1 for DOS, yes.

      --
      Using your sig line to advertise for friends is lame.
  3. Re:What is so amazing about .Net? by Randolpho · · Score: 0, Offtopic

    What's so great about Java?

    Same question, really. ;)

    --
    "Times have not become more violent. They have just become more televised."
    -Marilyn Manson
  4. now that's optimization.... by dtfarmer · · Score: 2, Funny

    but they also say that the managed version initially ran faster than the native version. After changing some optimization settings, the native version now runs 15% faster than managed .NET code

    Anyone else misread that at first to mean they changed optimization settings on the managed code, and now it runs slower than the native version....

  5. damn /. by diesel_jackass · · Score: 1

    so where's a bittorrent link to get the Quake 2 demo? ID is slashdotted.

    ftp://ftp.idsoftware.com/idstuff/quake2/q2-314-dem o-x86.exe

    arg.

    1. Re:damn /. by Anonymous Coward · · Score: 0

      Try http://www.filemirrors.com/search.src and search for the filename.

  6. Re:What is so amazing about .Net? by Anonymous Coward · · Score: 0

    Java is cross-platform, from the gui on down.

    Nothing else even comes close to that alone.

  7. He was right by BoomerSooner · · Score: 3, Informative

    By running as managed code (this is REAL .Net) it was 15% slower. By running non-managed (no CLR) it was full speed (or 15% faster than the managed .Net code).

    VC++.Net is just the same as VC++ 6 with a different IDE as long as you're not using managed code. If you are using managed code you might as well program in VB or C#, it all compiles to the same shit.

  8. A New Cheat by felonious · · Score: 1

    In looking at the linked site I noticed that their port includes a "Quake 2 Radar". This is actually constitutes a new cheat. There was a cheat w/ a radar called the "Z-bot" as well as the ZR-Bot. If you have a radar and no one else does then you can frag them right as they turn a corner befor they know what hit them. The radar is a huge advantage.

    If you play halflife and you have played against wall hackers then this would be the equivalent done in a different manner but with the same end result.

    --
    You aren't free to do anything, until you've lost everything.
    1. re: A New Cheat by ihatesco · · Score: 1

      In looking at the linked site I noticed that their port includes a "Quake 2 Radar". This is actually constitutes a new cheat. Unfortunately "Cheating" with a GPLd client game is not new nor has to be considered as an issue. Eric S. Raymond has a really nice essay about what happened the day that ID released the Quake 1 sources to the world, and what happens constantly to every damn online game out there. Anyway, someone even thinks as going far as making you voluntarily install spyware on your pc in order to "certify" that you are not an online cheater :(. (If that's the added cost, no online games for me, thankyou).

      --
      "I am slashbot, hear me roar!"
    2. Re: A New Cheat by felonious · · Score: 1

      I play BF1942 for the most part now and the cheating is at the bare minimum if any at all. There is the superman cheat but it's relatively lame and you can still kill the person. Counterstrike is the single most frustrating online game ever because of the massive amount of cheating involved. I doubt I'll ever play C.S. again because of the amount of cheating and the lack of anti-cheating options implemented by Valve.

      --
      You aren't free to do anything, until you've lost everything.
    3. Re: A New Cheat by ihatesco · · Score: 1
      I play BF1942 for the most part now and the cheating is at the bare minimum if any at all. There is the superman cheat but it's relatively lame and you can still kill the person. Counterstrike is the single most frustrating online game ever because of the massive amount of cheating involved. I doubt I'll ever play C.S. again because of the amount of cheating and the lack of anti-cheating options implemented by Valve.

      I think Valve was waiting to release his Steam platform before stopping cheaters. We will see how this "windowey updatey styley" platform will help Valve in squashing punks. And IF.

      BF1942 has either more clever network protocol designers in the team, or simply a less known protocol and a less hacked executable... (Counter Strike's protocol is how much old? Six years ? Eight? Considering that the original Half Life engine was based on Quake 1 modified by Valve).

      This doesn't invalidate what I said :), with a GPLd game you ought to hope that your friends are playing honestly :)
      Better would be a lanparty for friends ;).

      --
      "I am slashbot, hear me roar!"
    4. Re:A New Cheat by Sevn · · Score: 1

      It's not a cheat if everyone has it. In the very
      least, they should make sure that this 15 percent
      slower version of quake2 that everyone will be
      RUSHING to install, is only compatible with itself
      and not prior clients.

      --
      For every annoying gentoo user, are three even more annoying anti-gentoo crybabies. Take Yosh from #Gimp for example.
    5. Re: A New Cheat by Sevn · · Score: 1

      Me thinks you protest too much. I freaking LOVE
      punkbuster. Without it, I wouldn't bother playing
      online at all. It's so pleasing when some moron
      shows up with an ogc bot and gets kicked off. :)
      It just makes me giddy. Granted, not all of us are
      as good as Haku and can DESTROY A BOT
      with nothing more than talent and skill. You'll need
      the a recent quake3 to view that demo. It's some
      of the slickest playing I've ever seen.

      --
      For every annoying gentoo user, are three even more annoying anti-gentoo crybabies. Take Yosh from #Gimp for example.
    6. Re:A New Cheat by ihatesco · · Score: 2
      It's not a cheat if everyone has it. In the very least, they should make sure that this 15 percent slower version of quake2 that everyone will be RUSHING to install, is only compatible with itself and not prior clients.

      Yes, but consider this: How can you keep the 2% of people that can recompile the beast to play with the prior client/servers, since it is all GPLd code? And to share the compiled client with the others? :/

      --
      "I am slashbot, hear me roar!"
    7. Re: A New Cheat by ihatesco · · Score: 1
      Me thinks you protest too much. I freaking LOVE punkbuster. Without it, I wouldn't bother playing online at all. It's so pleasing when some moron shows up with an ogc bot and gets kicked off. :)

      Hey man! I'm not protesting! ^__^;
      I was only saying that I don't like some spyware-like software being installed on my computer only because there are the usual morons ruining the game for all the others...

      Maybe I am just lucky to have many friends that can bring the PCs to my house and that the Italian community is so small that servers are under good manual admin control (most of the time).

      --
      "I am slashbot, hear me roar!"
    8. Re: A New Cheat by Anonymous Coward · · Score: 0

      The only thing "punkbuster" has done is keep me from playing online. I have only the files for quake from ID with the point releases and all the current punkbuster files. I should be able to play online. I have no cheats or funny code for Quake anywhere on my computer. I can't play online. "punkbuster" is shit pure and simple. Evenbalance can suck my dick if they think I should have to spend more than 30 seconds to make their shit work out of the box. ID will never get another cent of my money until they get this shit fixed and quit expecting end users to be lab rats for the amount games cost. I can't get punkbuster to let me play online under Linux or W2K. Fuck ID and Evenbalance.

    9. Re: A New Cheat by Anonymous Coward · · Score: 0

      Well if I was a cheater it wouild be fine however I am just wanting to play UrT online. Connectingn to ANY server with punkbuster I get refused connection. Following the instruction on evenbalances site has yeilded no help. So I protest the fact that it's fucked borked and broke. It's a fine idea bitsince I have no cheats and I can't connect to any servers it must be that You, ID and Evenbalance are just full of shit.
      Fuck ID and Evenbalance I will not be spending my money to purchases their games and products.

    10. Re: A New Cheat by Sevn · · Score: 1

      So the fact that me and everybody I know can
      connect to midwest, or any of the other punkbuster
      enabled UrT servers with no problems means it's a
      problem with me, ID and evenbalance and not your
      setup? Grow up. We didn't want to play with someone
      like you anyway. Looks like we lucked out.

      --
      For every annoying gentoo user, are three even more annoying anti-gentoo crybabies. Take Yosh from #Gimp for example.
  9. Re:What is so amazing about .Net? by macrom · · Score: 1

    The same Java code works on many more platforms than .NET. Despite .NET porting efforts, there are still large chunks of the Framework missing. Java has some inconsistencies, but that's all they are.

  10. Re:What is so amazing about .Net? by Anonymous Coward · · Score: 0

    And yet, all this whining has nothing to do with the issue at hand. Just because Java runs on a palmpc doesn't detract from the point that there is no Java version of Quake II.

    Java has had more time to mature. .NET is still new. Java should be farther than it is now, instead SUN is now looking to milk it of all that it's worth instead of improving it.

    Can you blame them? No, not really. They are desperate, the company is faltering. Yes, Java was a great innovation. But what have they done for the world lately?

  11. Interesting for three reasons: by ihatesco · · Score: 2, Interesting
    1. This is a proof of concept that Microsoft's "Managed C++" stuff may be an interesting technology.

      If really Managed C++ isn't too much slower than C given the standard optimizations Managed C++ may become a viable platform for development in the end. We will see what will happen as Microsoft's JIT compiler matures.

    2. If it is viable for Quake 2, it might be viable for any future game coming to PC, XBOX or even Phantom. Remember that having .NET (or Java with JNI as well, see this nice soviet Sturmovik simulator which really owns you ;D ...) allows you to access several non time-critical libraries (chat, rankings), or to prototype in an easier way several features that you wish to implement, without introducing slowdowns in the development and security issues (XBox savegame hack anyone?).

      I can remember Sony and other vendors being interested in a Java Gaming Profile for consoles... a very hefty addition to J2ME with JNI libraries for Physics, "Game Lobby" functionalities and mp3 streaming. That JCP anyway seems (in my experience) to be stalled. We will see if adoption of Managed C++/Managed DirectX will occur and will help the adoption of "Virtual Machines" technology in game consoles as well and revitalize the interest. Many titles, like Nihilistic Entertainment (of Zerstorer fame) Vampire The Masquerade use or used Java as a powerful scripting engine.

    3. Anyway, remember that if you find Managed code to be too slow for your projects, you can always bridge your code with COM+, as Direct-X up to version 8 do succesfully :D... then using a COM+ component is easy as hell with .NET (let's hope that Mono makes this easy for Bonobo components too soon).
    The drawbacks: don't expect this to be ported on Mono asap, Mono still lacks a Managed C++ compiler :(

    + + + +
    And now imagine embedding Microsoft Flight Simulator 2004 with Excel.NET... oh WAIT!

    --
    "I am slashbot, hear me roar!"
    1. Re:Interesting for three reasons: by AT · · Score: 1

      don't expect this to be ported on Mono asap, Mono still lacks a Managed C++ compiler

      But the compiled MSIL should run on Mono -- at least if Mono has developed all the class libraries Quake II depends on. So while Mono may not be able to compile it, it should, some day, be able to run it.

  12. this needs nesting. by Anonymous Coward · · Score: 0

    tired of seeing trolls.

  13. Important Speed Point by slevin · · Score: 1
    When they refer to native and managed versions, they are still referring to their .NET build of the project. Although they don't provide any details, these are still both slower than the "original" version. This is from the faq on their page:
    How is the performance of the managed version?
    Initially, the managed version was faster than the native version when the default processor optimization setting /G5 (Pentium) was used. Changing the optimization setting to /G7 (Pentium 4 and Above) created a native version that runs around 15% faster then the managed version.

    Note, the assembly code was disabled for the native and managed versions so both versions are slower than the original Quake version.
    So, I think the jury should still be out on .NET performance.

    sean
    1. Re:Important Speed Point by Anonymous Coward · · Score: 0

      So, I think the jury should still be out on .NET performance.

      I don't think anyone in their right mind is going to argue as to whether a VM (.NET or JVM) is going to be able to outperform raw assembly.

      People should measure the usefulness of Java and .NET in terms of the language features and class libraries as opposed to raw performance. If you are doing complex calculations in tight loops then you need to be looking elsewhere if raw performance is a major concern.

  14. Re:What is so amazing about .Net? by Rares+Marian · · Score: 1

    I honestly don't get .Net. I hear QNX has a resource management system that makes .Net look cheesy. Btw, if I get overrated as a troll shouldn't that be a +1?

    --
    The message on the other side of this sig is false.
  15. Re:What is so amazing about .Net? by Anonymous Coward · · Score: 0

    Only on those platforms that have a JVM created. .NET can be too, it's just a matter of time until the CLR is cross-platform.

  16. Re:What is so amazing about .Net? by RevSmiley · · Score: 1

    Boy! we are just all holding our breath for that.

    SNORK

    --
    As you can see I don't care about my karma.
  17. My Question... by evil-osm · · Score: 2, Interesting

    Where can I get a copy or at least the list of updated optimizations to the native version? I'd love to get it to run 15% faster on my P200 that I have for Q2.

    --


    E.

    Never rub another man's rhubarb - The Joker
  18. Re:but.. but.. but.. by Anonymous Coward · · Score: 0

    That's not Offtopic, this is Offtopic.

  19. .NET 1.1 Blues by __aafkqj3628 · · Score: 1

    Don't tell me this is a .NET 1.1 port!
    I don't give a crap about that C/C++ conversion/rip, I just want it to run on the _compatable_ version of .NET!

  20. LOL by Dolemite_the_Wiz · · Score: 1

    So does .Net solve the Multi player problem with allowing ping floods to ruin connections to game servers?

    I think not.

    Dolemite
    _________________

    --
    Save the World! Use a Quote!
  21. Re:What is so amazing about .Net? by Schnapple · · Score: 1
    Just because Java runs on a palmpc doesn't detract from the point that there is no Java version of Quake II
    Yeah, especially since there's even a Delphi version of Quake II .
  22. Funny, by Anonymous Coward · · Score: 0

    Me and none of my friends have any problems using punkbuster. Maybe you are just retarded or something. You probably suck at gaming anyway. If you figure it out and get it to work like MOST people, come online and be a nice target for me and my friends.