SmartDice - a die throwing program for RPGs that runs under Microsoft Windows 3.0. Copyright (C) 1991 Monte Ferguson. See end of document for copy and use restrictions. IMPORTANT NOTE: This program was written in Microsoft Visual BASIC, and it needs the runtime library (VBRUN100.DLL) in order to run. If you don't already have the VBRUN100.DLL library you'll need to download that as well (it's available in many places, including CompuServe). ------------------------------------------------------------------------------ WHAT IS IT FOR? Essentially DICE is a random number generator geared for players of Role Playing Games (people who use stange shaped dice). In a pinch it's equation parser could be used as a simple calculator... HOW DO I USE IT? Run it from Windows. Two windows will pop up: the one on the left (with all the buttons) is the control panel, the one on the right (that's empty) shows the results of the rolls. The most common types of dice have buttons - to roll a 1d4 (that's "1 four-sided die", for the uninitiated) just press the 1d4 button. The equation "1d4" appears in the equation place, and the equation and result are displayed in the rightmost (results) window. The "2d6" button rolls 2 six-sided dice and adds the result, the 1d100 rolls percentile dice, etc... If you want a die roll that isn't on a button (say you want to roll 30d6 for damage from a dragon's breath), or simply get the result of an equation, enter the equation in the "Equation" box, press Enter and the result appears in the result box. EQUATION PARSER This is the thing that sets SmartDice apart from other simple die-rolling programs - it can accept an equation and parse it according to standard conventions: it uses the operators D * / + - to signifiy Dice, Multiplications, Division, Addition and Subtraction, according to that priority. It recognizes parentheses as overriding calculation priority, and also supports the following functions: ABS() - Returns absolute value of passed numeric arguement INT() - Returns integer result of passed numeric arguement SGN() - Returns sign (-1, 0 or 1) of passed numeric arguement RND() - Returns a random number between 1 and the passed numeric argument A note on the "d" operator - it's standard RPG notation, the number (or arguement) to the left of the D is the number of dice to roll, the number on the right is the sides on the dice... the result is the sum of those rolls. So 3d6 means "the sum of 3 six-sided dice". "D" has precedence over the other operators, so 2d6+3 will roll 2 six-sided dice and then add three to the result. The "Repeat" button will make the same roll over again... "ABOUT", "HELP, "EXIT" BUTTONS Self explanatory. "GRAPH" BUTTON Pops a window that makes multiple rolls of the current equation and graphs the results. Good for demonstrating the difference between a linear curve (such as 1d6) and a bell curve (like 3d6). The "Pause" and "Reset" buttons are self-exaplanatory. The number of rolls between graph updates can be changed with the "Increment" box (change it after pausing the roller). Use the control box (upper left hand corner) to close the graph box. OTHER INFO SmartDice was written in Microsoft Visual BASIC as personal project to help me learn the language. If you'd like to have the source code it's available for $25.00 (US), write to the below address. The equation parser may be of particular interest to creators of games and RPG accessories. COPY AND USE RESTRICTIONS Monte Ferguson (the author) maintains the copyright to the SmartDice program and code. You may freely use the program without any registration or any other fee - the code is not crippled or nagging, use it guilt free. You may distribute the executable (NOT SOURCE CODE) in any way to like, as long AS YOU DO NOT CHARGE FOR THE PROGRAM. This means you may place it on bulletin board systems, give it to friends, etc, but you may NOT sell it without the express written permission of the author. Shareware Vampire Companies take note: do NOT include this program on any disks you sell or you will be in violation of MY copyright. If you would like to have the source code to SMARTDICE for your own edification or inclusion in your own programs, send $25.00 (US cash, check or money order) to: Monte Ferguson C/O PFG Consulting 1250 Anita Drive suite 304 Kent, OH 44240 Please specify the format you'd like the source code on: 360k 5 1/4" disk or 720k 3 1/2 disk. Comments and bug reports are also welcome, I can be reached at the above address, or PC-OHIO (216 381 3320, the Best BBS in the US), or on Fido Net (1:157/200.39 [I'm a point off of PC Ohio]), I frequent the QuickBASIC echo there. NOTE: There are no warranties or guarantees to this program or it's code other than I happen to like it. You may or may not...