Please Disable Ad-Block To View This Website.

If you block ads, this site can not survive!

Ads are very minimal for registered users. If you don't have an account please register now!

DOWNLOAD
 Full Scripts
 Addons
 Snippets
 DLLs
 MTS Themes
 Tutorials
 Misc.
 File Queue
 Download mIRC
INTERACT
 Screenshots
 Challenge
 Top Downloads
 Submit Form
 Forums

SEARCH
Site Search

FRIENDS
Link to us!
PhotoShelf

Top Challenge Entrants

  # User Points
  1 jaytea 587
  2 [Znork] 303
  3 urza 297
  4 Ag2X 288
  5 dr_Eamer 255
  6 Albie 199
  7 Chessnut 197
  8 A Noniem 194
  9 zzattack 186
  10 Kol 185
  11 m910q 168
  12 Sephiroth 115
  13 Auron956 114
  14 patje 114
  15 chid 110
  16 Ohad2121 92
  17 SkorpSSS 87
  18 DixrouE 84
  19 Suchorski 83
  20 ^Vampire^ 74
Challenge:Best $calc() replacement
Started: June 5th 2003
Ends: June 25th 2003

Description and Rules:

This will be a three part challenge. Judged on smallest code, most creative, and most complete. So, there will be 3 winners. It is possible for one person to win in more than one category, but not likely :P

  • Smallest code winner to be determined by size of code, in bytes, not counting spaces, linefeed or carriage return ($lf and $cr or $crlf) characters.
  • Most creative winner to be determined by judges. Whining about your entry being more creative than the winner is not acceptable.
  • Most complete winner to be determined by the total number of calculator functions the alias can reproduce ACCURATELY and without breaking the rules. For example, if you have 10 functions in your alias but only 8 of them work 100% correctly, only 8 will be counted. If two entries have the same number of working functions, the entry with the smallest size will be determined the winner.

    Immediate disqualification for using $encoding tricks and whatnot, cheap tricks like that make it less fun for everyone (definition of "cheap" to be decided by judges).

    Requirements for all three categories:

  • You must include accurate functions for addition, subtraction, multiplication and division. An entry for the "most complete" will probably have more, but the basic four are all that is needed.
  • You may not use /inc, /hinc, /dec, /hdec (or anything similar), or, of course, $calc. if you are unsure about the legality of a function, contact a judge privately so as not to tip other contestants off about your technique. any function deemed "illegal" will be added to the list here.
  • All four functions must be "stand alone", i.e. the alias must not call its own addition function to do multiplication, and so on.
  • Must use standard $calc operational signs, + for addition, - for subtraction, * for multiplication and / for division.
  • All entries must accept at least three parameters: the first number, the operational sign (+ - * /), and the second number (i.e. $calc2(1 + 2)). all three parameters must be separated by a space (i.e. $calc2(2+1) is unacceptable). again, a "most complete" entry will accept more, but three is the minimum.

    Additional Rules and Notes:

  • Setting variables to do calculations isn't allowed. For example, /var %variable = 1 + 1 wouldn't be allowed.
  • Negative numbers in calculations should be supported.
  • DLLs, COM objects, and sockets shouldn't be used.
  • The identifier (alias name) should be "calc2"; this will make it easier to test and judge.
  • The filename of the entry should be yournick-challenge.mrc. For example, praetorian-challenge.mrc.
  • While loops CAN be used, just not with /inc or /dec or any of the other unallowable things mentioned above.
  • For division, you must return your answer in the format N r R, where N is the number of times the second number goes into the first, and R is the remainder. you are not expected to calculate decimal points.
  • Entries will be tested using single and double digit numbers so as not to interfere with certain limits mIRC has.
  • This contest requires some abstract thinking, so have fun with it.

    Challenge Results:

    Sorry for the delay in judging all of the entries. This was a tough challenge, there were only 16 entries total. Bytes were calculated using a modified countcode.mrc (which removes commented lines.)

    Winners

    Smallest code - Ymar

    • Ymar's entry was only 579 bytes, beating ^BeAsT^'s by 22 bytes. Both of their entries worked properly and with all four required operations.

    Most complete - Kickchon

    • Kickchon's entry was closely followed by Buddyke's as the most complete. However, Kickchon's had the edge by supporting brackets, exponents, multiple operations, order of operations, percentage calculation, and decimals. Buddyke's entry supported multiple operations, order of operations, percentages, and division by zero returned "UNDEFINED". He also had bracket support but they didn't work properly, failing on $calc2((4 + 2) * 8).

    Most creative - myndzi

    • All of the entries basically used the same method; with $abs, $len, binary files, etc. myndzi's entry and Buddyke's were the only two to not use binary files. We decided myndzi's was the most creative because although Buddyke's entry didn't use binary files, it didn't show much creativity and was basically "get-it-done" scripting. Both of their entries worked 100 percent.

    Other valid entries

    • Arcane, ^BeAsT^, Buddyke, and Eric^^ all had entries that didn't fail any tests and weren't disqualified, but didn't win any of the three categories.

    Disqualifications

    • Hacktel's entry used /inc and /dec, which weren't allowed.
    • Sartak's entry used $calc. A link won't be provided because he was obviously trying to be funny, but wasn't.
    • Everything worked fine in whooz's entry, but it was turned in past the entry deadline and thus not accepted.

    Non-working entries

    • [Znork]'s failed on every multiplication and division test we ran. For example, $calc2(13 * 1).
    • gorefiend's entry was the first one submitted, and worked properly on every test except when we did $calc2(-9 + 0)
    • lensherr's failed on all of the tests involving negative numbers. For exampl,e $calc2(9 - 77)
    • quickman failed on $calc2(9 - 77) and $calc2(-9 + 0).
    • Rich's failed on $calc2(-48 - 0).
    • shaharacli's entry failed on $calc2(3 / 8) and $calc2(5 / 53).