SirDagoon Posted December 8, 2008 Share Posted December 8, 2008 I know there has already been a lot of discussion about this and how there is no public formula etc. However, i would just like to say that without anything except strength level and strength bonus, it always give you an estimate which is one above what you can actually hit. I know this is true because i have used it for months and i have never hit what its says, always just below. Thanks very much everyone! :) Link to comment Share on other sites More sharing options...
Jard_Y_Dooku Posted December 15, 2008 Share Posted December 15, 2008 The formula IS public, and I helped design a bit of it. Max hit calculators are extremely difficult to engineer due to the extreme amount of input combination, so it'll likely never be 100% accurate without Jagex telling us, but thus far it's pretty good. " + "NoYes"; } else if(weap_id == 8){ weap_spec.innerHTML = "Special - Cleave: " + "NoYes"; } else if(weap_id == 9){ weap_spec.innerHTML = "Special - Shatter: " + "NoYes"; } else if(weap_id == 13){ weap_spec.innerHTML = "Godsword Special: " + "NoArmadylBandosSaradominZamorak"; } else if(weap_id == 29){ weap_spec.innerHTML = "Special - Smash: " + "NoYes" } else if(weap_id == 30){ weap_spec.innerHTML = "Special - Feint: " + "NoYes" } else if(weap_id == 3 && set_var == 1){ weap_spec.innerHTML = "" + "HP Lost: "; } else{ weap_spec.innerHTML = ""; } // If using a 2-handed weapon, disable the shield select box. If not, enable it. if (weap_id == 2 || weap_id == 3 || weap_id == 7 || weap_id == 11 || weap_id == 12 || weap_id == 13 || weap_id == 14 || weap_id == 15 || weap_id == 18 || weap_id == 23 || weap_id == 24 || weap_id == 25 || weap_id == 26 || weap_id == 27 || weap_id == 29 || weap_id == 30 || weap_id == 31){ document.getElementById("shield_custom").innerHTML = 0; shld_sel.disabled = true; shld_sel.value = 0; shld_var = 0; } // If "Abyssal Whip" is selected with style set to aggresive, set style to controlled. if (weap_id == 1 && styl_var == 1){ document.getElementById("styl_select").selectedIndex = 2; } // If a full set is being used, disable appropriate item slots. if (set_var != 0){ document.getElementById("special_helmet").innerHTML = ""; document.getElementById("helmet_custom").innerHTML = 0; helm_sel.disabled = true; helm_sel.value = 0; helmet_var = 0; document.getElementById("body_custom").innerHTML = 0; body_sel.disabled = true; body_sel.value = 0; body_var = 0; document.getElementById("legs_custom").innerHTML = 0; legs_sel.disabled = true; legs_sel.value = 0; legs_var = 0; if(set_var == 2){ document.getElementById("glove_custom").innerHTML = 0; glov_sel.disabled = true; glov_sel.value = 0; glov_var = 0; } } } // "amulet_select" has been changed. else if(i == 1){ var amul_spec = document.getElementById("special_amulet"); document.getElementById("amulet_custom").innerHTML = amul_var; if(amul_var == "0-15%"){ amul_spec.innerHTML = "Style of Monster: " + "UndeadRegular"; } else if(amul_var == "0-20%"){ amul_spec.innerHTML = "Style of Monster: " + "UndeadRegular"; } else{ amul_spec.innerHTML = ""; } } // "helmet_select" has been changed. else if(i == 2){ var helm_spec = document.getElementById("special_helmet"); document.getElementById("helmet_custom").innerHTML = helm_var; if(helm_var == "0-15%"){ helm_spec.innerHTML = "Style of Monster: " + "SlayerNormal"; } else{ helm_spec.innerHTML = ""; } } // Another equipment select box has been changed. else if(i == 3){ document.getElementById("body_custom").innerHTML = body_var; document.getElementById("legs_custom").innerHTML = legs_var; document.getElementById("shield_custom").innerHTML = shld_var; document.getElementById("cape_custom").innerHTML = cape_var; document.getElementById("ring_custom").innerHTML = ring_var; document.getElementById("glove_custom").innerHTML = glov_var; document.getElementById("boot_custom").innerHTML = boot_var; } // "str_lvl_input" input box has been changed. else if(i == 4){ var str_input = document.getElementById("str_lvl_input"); if(str_input.value str_input.value = 1; } } // "dharok_axe" input box has been changed. else if(i == 5){ var dharok_axe = document.getElementById("dharok_axe"); if(dharok_axe.value > 98){ dharok_axe.value = 98; } } // "styl_select" has changed. Possibly set to aggresive with Abby Whip as weapon. else if(i == 6){ if(weap_id == 1 && styl_var == 1){ document.getElementById("styl_select").selectedIndex = 2; } } // The "Tip Me!" button has been clicked. else if(i == 7){ var potion = document.getElementById("poti_select").value; var style = parseInt(document.getElementById("styl_select").value); var prayer = parseFloat(document.getElementById("pray_select").value); var baxe_spec = document.getElementById("baxe_select").selectedIndex; var str_lvl = parseInt(document.getElementById("str_lvl_input").value); var str_bonus = parseInt(document.getElementById("total_str").value); var dag_spec = false; var pot_boost = 0; var str_mult = 0; var dmg_mult = 1; var dharok_hp = 0; var dharok_mod = 1; var max_hit; // Special attacks; adjust equipment strength bonus. if(weap_id == 6 && document.getElementById("drag_dag").selectedIndex == 1){ dag_spec = true; str_bonus += 20; } else if(weap_id == 8 && document.getElementById("drag_long").selectedIndex == 1){ str_bonus += 30; } else if(weap_id == 9 && document.getElementById("drag_mace").selectedIndex == 1){ str_bonus += 60; } else if(weap_id == 13){ dmg_mult += parseFloat(document.getElementById("god_select").value); } else if(weap_id == 29 && document.getElementById("statius_warhammer").selectedIndex == 1){ dmg_mult += 0.25; } else if(weap_id == 30 && document.getElementById("vesta_longsword").selectedIndex == 1){ dmg_mult += 0.20; } else if(weap_id == 3 && set_var == 1){ dharok_hp = parseInt(document.getElementById("dharok_axe").value); dharok_mod = (dharok_hp / 99) + 1; } // Potion strength boost. The strength gained does not (seem to) influence prayer / equipment strength boosts, except for Dharok. if(baxe_spec == 1){potion = 2;} if(potion == 0){pot_boost = 0;} else if(potion == 1){pot_boost = (str_lvl * 0.1)+3} else if(potion == 2){pot_boost = (str_lvl * 0.15)+5} else if(potion == 3){pot_boost = (str_lvl * 0.12)+2} pot_boost = Math.floor(pot_boost); // Passive % strength modifiers. Black Mask and Salve Amulet don't stack. Assumes that prayer and equipment % boosts are cumulative, not multiplicative. // Also assumes that this bonus is not rounded down. if(amul_var == "0-15%" && document.getElementById("salv_amul").selectedIndex == 0){ str_mult += 0.15; } else if(amul_var == "0-20%" && document.getElementById("salv_amul_e").selectedIndex == 0){ str_mult += 0.2; } else if(helm_var == "0-15%" && document.getElementById("blck_mask").selectedIndex == 0){ str_mult += 0.15; } str_mult += prayer; mult_boost = (str_lvl * str_mult); // Passive % damage modifiers. if(set_var == 2){ dmg_mult += 0.1; // Void Knight Set } else if(amul_var == 7 && (weap_id == 16 || weap_id == 17 || weap_id == 18 || weap_id == 19)){ dmg_mult += 0.2; // Obsidian Synergy } // Calculate max hit. Multiply total strength with Dharok's modifier; the assumption is made that the resulting strength level is not rounded down. max_hit = ((((str_lvl + pot_boost + mult_boost + style)*dharok_mod)*((str_bonus*0.00175)+0.1)+1.05)*dmg_mult); if(max_hit else{max_hit = Math.ceil(max_hit);} output = document.getElementById("max_hit_output"); if(dag_spec){ output.innerHTML = "Maximum Hit: " + max_hit + " x2"; } else if(weap_id == 28){ output.innerHTML = "Maximum Hit: " + max_hit + " Vs. Kalphite: " + max_hit*3 } else{ output.innerHTML = "Maximum Hit: " + max_hit; } } // Calculate total equipment strength bonus. total_str_bonus = parseInt(weap_var) + parseInt(amul_var) + parseInt(helm_var) + parseInt(body_var) + parseInt(legs_var) + parseInt(shld_var) + parseInt(cape_var) + parseInt(ring_var) + parseInt(glov_var) + parseInt(boot_var); if(total_str_bonus != 0){ document.getElementById("total_str").value = total_str_bonus; } } --> Never trust anyone. You are always alone, and betrayal is inevitable.Nothing is safe from the jaws of the decompiler. Link to comment Share on other sites More sharing options...
Recommended Posts