View Single Post
Author Message
BAILOPAN
Join Date: Jan 2004
Old 03-20-2006 , 17:19   Obfuscated Coding Contest
#1

While we're finishing up beta testing on 1.71 and getting ready to launch the official server, on IRC we came up with the idea to have an Obfuscated Coding Contest, similar to this one.

What's an obfuscated coding contest? The idea is to write the nastiest plugin you possibly can. The code has to be as unreadable, unfriendly, and as original and creative as possible. After all the work we put into making sure people become better programmers, here's your chance to write terrible code!

The contest will run for two weeks, meaning we'll choose winners after April 3rd, so have your submission in by April 2nd. We're disqualifying ourselves (the developers) so it's a fair contest. The official rules:
  • Your plugin must do something -- it doesn't have to be necessarily useful, but it can't just be empty code.
  • You can abuse the preprocessor in any way, but you cannot use custom/3rd party includes, and likewise you cannot use 3rd party/custom modules.
  • Your plugin must compile and run on AMX Mod X 1.70+ with less than 10 warnings, and no errors. It should be under 8KB of source text.
  • Your plugin can run on any mod, and it can use natives from any official module.
  • You can submit any number of entries, but each one must be original work.
  • Your plugin cannot be malicious (exploit clients, exploit servers, etc - at our discretion).
  • Submit your entries to [email protected] as a zip file containing the plugin source code (as a .sma) and a text file containing your name, description, comments, and any other remarks you would like to add. In short, we need the source code, how to run it, and what it will do.
  • We'll be looking for creativity in obfuscation as well as what your plugin actually does within its limitations and design.
  • Addendum - You can rely on up to five configuration files (binary or text) that you supply in your zip file. None of them can exceed the size of your plugin.
Good luck! In two weeks we'll go through the submissions, pick three winners, and give out rewards of sorts.

Need an example of "obfuscated code"? Here's a quick, terrible way to register a plugin:
Code:
#define G(%1,%2,%3,%4,%5) %3%1%4%5%2 #define dotcom () @plugin_init dotcom {      G(egis,cmd,r,ter,_cl)("terrible", "1.0", "bail") }

Thanks to crazy twistedeuphoria for coming up with this crazy idea.
__________________
egg
BAILOPAN is offline