OK, first I apologize if this post is in the wrong spot or a duplication of someone else posting... Going forward with the request. What I am ultimately trying to do is make a macro for a custom game that I am developing. D12 success pool much like any other success pool api out there, but here is the twist. 1 = failures and take away successes. 8 thru 12 = successes 12 = is exponential; meaning any 12's rolled in a given roll will take on the value of all 12's rolled. example 1: 5 dice (d12) are rolled: 3,5,6,7,12 = 1 successes example 2: 6 dice are rolled: 1,5,8,9,10,12 = 3 successes example 3: 4 dice are rolled: 4,6,12,12 = 4 successes example 4: 5 dice are rolled: 3,5,10,12,12 = 5 successes Here is the code that i have so far. (btw: something is not right here... it doesn't work with roll20 yet.) Please help "help me, obi won code-nobi. you are our only hope" <code> Number of Dice: <input type="text" name="roll_count" id="roll_count" size="3"> <button value="Roll" onclick="alert(roll(document.getElementById('roll_count').value));"> Roll </button> function roll(number_of_dice) { var successes = 0; var twelve_count = 0; var twelve_successes = 0; var roll = []; for (i = 0; i < number_of_dice; i++) { roll[i] = Math.floor(Math.random() * 12) + 1; } alert("You rolled: " + roll); for (i = 0; i < roll.length; i++) { //alert(i); if (roll[i] > 8) { if (roll[i] == 12) { twelve_count++; } else { successes++; } twelve_successes = Math.pow(twelve_count, 2); successes = successes + twelve_successes; } else { successes--; } } return ("Wins:" + successes); }