Slashdot Mirror


First Person Shooter - Under 100KBs of Code

Cariad Ilmara writes "For those of you old-timers who spent days & nights trying to get your code fit into 64Kb, here's the first beta of .the .produkkt's next FPS: .kkrieger. Moderately beautiful, what's impressive is it can fit inside the UT2004 readme. The demo is 96Kb zipped. All textures are procedural and generated at startup. Screenshots available here, here, here, here, and here. You still need a relatively recent computer (~1.4Ghz, 512MB RAM) and a DirectX8 GPU (Windows required)."

15 of 741 comments (clear)

  1. 2K raytracer by ggambett · · Score: 5, Interesting

    Not as impressive, but there's a software raytracer with shadows and recursive reflection which generates .PBM images - in 2K of C source, with no libraries required.

    http://www.mrio-software.com/2k_raytracer.php

    1. Re:2K raytracer by HoppQ · · Score: 3, Interesting

      begin-base64 644 raytracer.ps
      JSFJT1BTQy0xOTkzICUlQ3JlYXRvcjogSEFZ QUtBV0EgVGFrYX NoaTx4eHh4
      eHh4eEB4eC54eHh4eHgueHgueHg+IAovQy9uZW cvZC9tdWwvUi 9ybGluZXRv
      L0UvZXhwL0h7e2N2eCBkZWZ9cmVwZWF0fWRlZi 9UL2R1cC9nL2 d0L3Ivcm9s
      bC9KL2lmZWxzZSA4CkgvQS9jb3B5KHomdjRRWC Y5M3I5QXhZUU 9ab21RYWx4
      UzJ3ISFPJnZNWWE0M2Q2cjkzck1ZdngyZGNhIU QmY2pTbmpTbm pqUzNvIXYm
      NkEKWCY1NVNBeE0xQ0Q3QWpZeFRUZDYycm14Q2 5UZFNTVDBnJj Eyd0VDU1Qh
      JiFKMGcmRDEhJnhNMCFKMGchbCY1NDRkQzJBYz k2cmEhbSYzQQ pGJiZ2R29H
      U25DVDBnJndEbWx2R29TOHdwbjZ3cFMyd1RDcF MxU2Q3b3Y3VW s3bzRRa2R3
      ISZNdmx4MVM3b1pFUzN3IUohSiFRJjcxODVkCl ombHgxQ1M5ZD luRTQhayZY
      Jk1ZNyEmMSFKIXgmamRuamRTM29kUyFOJm1teD FDMndFYyFHJj E1ME54NCFu
      JjJvIWomNDNyIVUmMDc3N2QKXSYyQVkyQTc3Nm RkVDRvUzNvU2 5NVkMwMFZW
      MFJSUjQ1RTQyMDYzck56JnY3VVgmVU96RiFGIU ohWyY0NEVUQ2 5WbiFhJjFD
      RE4hWSYwTQpWMWMmajJBWWRqbU1kampkIW8mMX IhTSl7KCApVC AwIDQgMyBy
      IHB1dCBUKC8pZ3tUKDkpZ3tjdm59e2N2aX1KfX soJClne1t9e1 19Sn1KCmN2
      eH1mb3JhbGwvbW92ZXRvL3AvZmxvb3Ivdy9kaX YvUy9hZGQgMj kgSFt7W3td
      c2V0Z3JheSBmaWxsfWZvciBZfWZvciBzaG93cG FnZQo=
      ====

      That's the same thing corrected (the original was mangled by slashcode) and base64-encoded, which doesn't care about extra spaces inserted by slashcode. Decode with uudecode(1) or something else.

      --
      My sig will be released in 2015 third quarter. Rating pending.
  2. Re:awesome... now only if they'd do this for linux by dustmote · · Score: 3, Interesting

    awesome... now only if they'd do this for linux

    I would think that it might be kind of difficult to move this code across platforms if it's optimized that much, wouldn't it? ------didn't RTFA

    --


    -1, "1337" speak
  3. No Directx 8.1? by RichM · · Score: 5, Interesting

    For those of you who don't have a GPU with pixelshaders, you can try the original which started the whole thing, the 64kb fr-08: http://www.theproduct.de/

  4. There's a book by Guy-Lecky-Thompson... by tcopeland · · Score: 5, Interesting

    ...Infinite Game Universe: Mathematical Techniques that talks a lot about how to have a varied game universe while keeping size requirements under control.

    One of the techniques he discusses is using a psuedorandom number generator to create game objects and attributes and such, and shipping the game with a couple of pregenerated seeds to start up the generators. He uses the game Elite a lot in his examples, and anyone who's played that game knows what a good job they did in that regard.

    It's an interesting approach, especially when contrasted with WAD files.

    1. Re:There's a book by Guy-Lecky-Thompson... by cubic6 · · Score: 3, Interesting

      Another great game that used a lot of mathematical methods was Daggerfall. It had a world so big that it would take something like a week of real time for your character to walk across it (not using fast travel). All the wilderness parts were fractally generated, so everywhere looked unique without having to pregenerate the layout.

      --
      Karma: Contrapositive
  5. Great Compression by DrugCheese · · Score: 3, Interesting

    I remember a friend of mine showing me the winner of this compression contest, it was like an 24kb download and it was 12 minutes of good music and graphics scrolling around the screen. Blew my mind.

    Anyone know what I'm talking about? Cause I've searched and can't find it anymore.

    --
    *DrugCheese rants*
  6. Real-time generated textures by PingKing · · Score: 5, Interesting

    According to the readme, the texture-maps are generated in real-time:

    We do .not. have some kind of magical data compression machine that is able to squeeze hundreds of megabytes of mesh/texture and sound data into 96k. We merely store the individual steps employed by the artists to produce their textures and meshes, in a very compact way. This allows us to get .much. higher data density than is achievable with normal data compression techniques, at some expense in artistic freedom and loading times.

    The problem with this, of course, is that it requires major computational power, and you're limited with the type of textures you can produce. It's probably a case of this program specifying 'bumpy metallic texture' or 'smooth stone texture' on the fly.
    I remember the old flight-sim 'Strike Commander' would generate the game's maps during installation based on fractals. It used take AGES... this program generates many more megabytes of graphics on the fly... very impressive.

    --

    Patriotism - the last resort of scoundrels.
  7. Re:64 Kb by grub · · Score: 3, Interesting


    Back in school we had a 6502 development kit. We had to flip a 8 switches (bits, this had a staggering 256 bytes of memory) to set the address and another 8 for the data then hit a button to load the data into RAM. Once it was all done we set the address toggles to the start point of the program and hit an execute button. The output was 2x 7 segment LEDs..

    I seriously almost bought one for home to tinker with but it was a few hundred dollars and I was a starving student..

    --
    Trolling is a art,
  8. Re:Libraries by John+Harrison · · Score: 4, Interesting

    I did something similar using OpenGL. It is a 3D asteroids game in which the action occurs in 3d, not in a 2d plane. The zip file for it is about 102 kb, but most of that is because I included glut.dll so that people wouldn't have to hunt it down. Oh, and by using OpenGL I have been able to run it on Windows, MacOS, and Linux.

  9. What if it *did* install Linux? by NotQuiteReal · · Score: 4, Interesting
    Maybe not this time, but it seemt to be just a matter of time before someone comes up with Linux "scum-ware", a la Gator (or whatever it is called now) and its ilk.

    1) get your cool geek game advertised on slashdot.
    2) lots of people download it and run it.
    3) bury some obfuscated language in a 30 page EULA [well, 30 pages that only show up 5 lines at a time in a tiny un-resizeable window]. The gist of the "I agree" button is that your machine will bootstrap into a nuke-and-pave Linux installation!

    Ok, this is tongue in cheek, but seriously, do the slashdot editors evaluate things like this for viruses or other mal-ware? Where's the checksum of the one they checked?

    Who downloads mysterious 100K executables and runs them on a live machine? [heh, especially from Germany, I mention this only because the last two unprotected Windows machines put on the net by some hapless aquaintences of mine were running German FTP sites so fast you'd think they were configured that way out of the box.]

    --
    This issue is a bit more complicated than you think.
  10. Yawn.. here's a 5kb FPS by RenHoek · · Score: 3, Interesting

    Seen this?

    http://www.the5k.org/description.asp/entry_id=946

    It's a winner of the 5K contest. A Wolfenstein in Javascript in just 5 kilobytes.. Now THAT is small ;)

  11. Re:wow by Chilliwilli · · Score: 4, Interesting

    No so much a compression algorithm as a way of procedurally generating textures. Theoretically using this technique a games company could ship a game and the user could decide at the other end what size and detail they want their textures to be. This would have benefits as the textures would be scalable to suit users hardware and only one set would need be distributed in a small vector/algorithm/macro form. If more game distribution was moved to online electronic form then this would certainly be something worthy of consideration by the developers.

    --
    Cure cancer.. and stuff! www.team45.info
  12. The point? by SmallFurryCreature · · Score: 4, Interesting
    Well howabout that this thing took less time to load then any recent FPS I played?

    Also there may be a model for selling software online rather then on CD/DVD. Obviously this game would cost a bit less to host then say the 5CD farcry.

    Also don't forget more portable solutions. Laptops or PDA's and other gadgets. They got extremely limited storage but my old calculator could hold this one. Not run it but hold it :)

    Mostly however this is just a tech demo. Showing that you do not need a massive wad of textures just to make a nice looking game.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  13. More Wow! by Ch_Omega · · Score: 4, Interesting

    For those interesting in something else from the same people, check out this 64k demo which among other things, includes detailed 3d-models of nude women. :)