Skip to content
View in the app

A better way to browse. Learn more.

Tip.It Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Jard_Y_Dooku

Members
  • Joined

  • Last visited

Everything posted by Jard_Y_Dooku

  1. <?php function potionBoostOLD($level, $rangeLow, $rangeHigh) { if ($level < 0 || $rangeLow == 0 || $rangeHigh == 0) { return 0; } // NOTE: encase with floor() for actual output, this outputs decimal right now for testing. return (($level / 100) * ($rangeHigh - $rangeLow)) + ($rangeLow + ($level / 100)); } function potionBoostNEW($level, $percentage, $constant) { // NOTE: encase with floor() for actual output, this outputs decimal right now for testing. return (($level * ($percentage / 100)) + $constant); } $potions = array ( array("Attack, strength and defence potions", 3, 12, 10), array("Super attack, Super strength and Super defence potions", 5, 19, 15), array("Restore potions", 10, 39, 30), array("Prayer and summoning potions", 7, 31, 25), array("Prayer potions with Holy wrench", 7, 33, 27), array("Super restore potions", 8, 32, 25), array("Ranged potions", 4, 13, 10), array("Zamorak brew - Strength", 2, 13, 12), array("Zamorak brew - Attack", 2, 21, 20), array("Zamorak brew - Defence and Hitpoints (subtracted, not added)", 2, 11, 10), array("Saradomin brew - Defence", 2, 21, 20), array("Saradomin brew - Hitpoints", 2, 16, 15), array("Saradomin brew - Attack, strength, ranged and magic (subtracted, not added)", 2, 9, 8), array("Wizard's mind bomb", 2, 3, 2), array("Wizard's mind bomb(m)", 2, 4, 3) ); $mismatches = 0; $badpots = 0; for ($j = 0; $j < count($potions); $j++) { echo '' . $potions[$j][0] . 'LevelAmount boosted/removed (OLD formula)Amount boosted/removed (NEW formula)Resultant levelup to ' . floor($boostNEW) . ' but will not exceed your base level'; } // No potion will allow your level to drop below zero if ($result < 0) { $result = 0; } // Output all fields echo '' . $i . '' . $boostOLD . '' . $boostNEW . '' . $result . ''; } // Increase the number of potions with mismatched values by one $badpots += $pots ? 1 : 0; echo ''; } echo 'Remember that all values shown here are FLOORED before being added to or subtracted from your base level, otherwise around 90% of the subtractions would be off (incorrect) by one level too many. So don't forget to floor! '; echo '' . count($potions) . ' potions checked. ' . $mismatches . ' mismatched value(s) in ' . $badpots . ' potion(s) found. '; echo 'Potion constants tablePotion namePercentageInteger constant' . $potions[$k][0] . '' . $potions[$k][3] . '%' . $potions[$k][1] . ''; ?>
  2. AllBogs... when you play around with the formula, please implement potions correctly. I would like to see you implement my potion formula into the Tip.It calculator ASAP as well, as it is 100% accurate in calculating the received level, and therefore will give us a base strength level to start with, that is actually valid... Remember, floor() the potion boost before adding it to strength level - it should be an integer. Here, I'll code it for you. :) None Strength Super Strength Zamorak change to: None Strength Super Strength Zamorak and add this function in your JS: function potionBoost(level, rangeLow, rangeHigh) { if (level < 0 || rangeLow == 0 || rangeHigh == 0) { return 0; } return Math.floor((level / 100) * (rangeHigh - rangeLow)) + (rangeLow + (level / 100)); } And the code for calculation, fixed: // The "Tip Me!" button has been clicked. else if(i == 7){ var str_lvl = parseInt(document.getElementById("str_lvl_input").value); var potion = parseInt(document.getElementById("poti_select").value); if (potion == 1) { potion = potionBoost(str_level, 3, 12); } else if (potion == 2) { potion = potionBoost(str_level, 5, 19); } else if (potion == 3) { potion = potionBoost(str_level, 2, 13); } 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_bonus = parseInt(document.getElementById("total_str").value); var dag_spec = false; var dharok_hp = 0; var multiplier = 1; var max_hit; 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){ multiplier += parseFloat(document.getElementById("god_select").value); } else if(weap_id == 3 && set_var == 1){ dharok_hp = parseInt(document.getElementById("dharok_axe").value); str_bonus = str_bonus * ((dharok_hp / 99) + 1); } else if(set_var == 2){ multiplier += 0.1; } else if(amul_var == 7 && (weap_id == 16 || weap_id == 17 || weap_id == 18 || weap_id == 19)){ multiplier += 0.2; } // Note: Black Mask & Salve Amulet don't stack. if(amul_var == "0-15%" && document.getElementById("salv_amul").selectedIndex == 0){ str_lvl = Math.floor(str_lvl * 1.15); } else if(amul_var == "0-20%" && document.getElementById("salv_amul_e").selectedIndex == 0){ str_lvl = Math.floor(str_lvl * 1.2); } else if(helm_var == "0-15%" && document.getElementById("blck_mask").selectedIndex == 0){ str_lvl = Math.floor(str_lvl * 1.15); } if(baxe_spec == 1){ potion = 1.2; } max_hit = (((str_lvl+potion+Math.floor(str_lvl*prayer)+style)*((str_bonus*0.00175)+0.1)+1.05)*multiplier); if(max_hit < 1.5){max_hit = 1;} else{max_hit = Math.ceil(max_hit);} output = document.getElementById("max_hit_output"); if(dag_spec){ output.innerHTML = "Maximum Hit:&nbsp " + max_hit + " x2"; } else{ output.innerHTML = "Maximum Hit:&nbsp " + max_hit; } } EDIT: I just thought of something... it's entirely possible that the potion formula is as simple as: (level * percentConstant) + integerConstant What leads me to believe this is that first of all - my formula is weird. Secondly... For attack, strength, defence and combat potions, (level * 1.1) + 3 seems to work and matches with Jagex's 3-12 range for levels 1-99. For super attack, strength and defence potions, (level * 1.15) + 5 seems to work and matches with Jagex's 5-19 range. For restore potion, (level * 1.3) + 10 seems to work and matches with Jagex's 10-39 range. For prayer and summoning potions, (level * 1.25) + 7 seems to work and matches with Jagex's 7-31 range. For prayer potions with wrench, (level * 1.27) + 7 seems to work and matches with Jagex's 7-33 range. (and no it's not 1.275, that'd be too high) For super restore potions, (level * 1.25) + 8 seems to work and matches with Jagex's 8-32 range. For ranged potions, (level * 1.1) + 4 seems to work and matches with Jagex's 4-13 range. For zamorak brew... strength = (level * 1.12) + 2 (not 1.125, doesn't work out) attack = (level * 1.2) + 2 defence and hitpoints = level - ((level * 0.1) + 2) For saradomin brew hitpoints = (level * 1.15) + 2 defence = (level * 1.2) + 2 attack, strength, magic and ranged = level - ((level * 0.075) + 2) I guessed all these numbers as I typed that - relatively easy! So we can say that: Attack/strength/defence = 10% increase, +3 levels Super attack/strength/defence = 15% increase, +5 levels Restore potion = 30% increase, +10 levels Prayer/summoning = 25% increase, +7 levels Prayer w/ wrench = 27% increase, +7 levels Super restore = 25% increase, +8 levels Ranged potion = 10% increase, +4 levels Zamorak... Attack = 20% increase, +2 levels Strength = 12% increase, +2 levels Defence/HP = (level) MINUS (10% increase, +2 levels) OR 10% decrease, -1 levels ? Saradomin... Attack/strength/magic/ranged = (level) MINUS (7.5% increase, +2 levels) OR 7.5% decrease, -1 levels ? Defence = 20% increase, +2 levels Hitpoints = 15% increase, +2 levels These values seem far more logical, although I'm not sure yet about the losses. From a programming standpoint, my first guess makes more sense; from a logical standpoint, the second makes more sense... or maybe not. I'm not sure about this yet but I will be running some tests later (comparing the results of each formula and finding which values differ). Cheers!
  3. Salve or Salve(e)? A quick (modified) calculation using the tip.it calc puts the result with Salve and not Salve(e) at 110 exactly. The way I always worked around the Dharok error on the tip.it calc was to just calculate it based on full 99 hp, then double the end result manually. In this case, the end result of 55 * 2 = 110. Quite sure it's Salve(e) - I remember seeing a picture of a 110 at the Ancient Cavern skeletons with a Salve(e), also... though that's not very helpful in answering this question.
  4. @ AllBogs... the potion result is floored. A super potion calculates to a 19.8 increase for level 99, and it's floored, becoming level 118 strength as we know. If a player could reach level 100, a super potion would boost exactly 20.0. And the thing about 110 hits is that that's NOT necessarily the max. Shades have only 110 HP. Take a look at this section of my bestiary, it lists some undead monsters with higher HP (http://www.runeuniverse.us/npc.ws?sort= ... ype=Search). Though there are not many, I'd recommend the Ancient Cavern skeletons as they have 124 HP and Dharok's max is unlikely to exceed that. Possibly the barbarian spirits as well, if the salve amulet counts them as undead. They have 190 HP and would be superior to anything else for testing purposes. I'm glad you guys seem to be enjoying this topic, and thanks especially to Boy Wonder1 for his posts.
  5. Jads mele attack is 97 his magic and range max hit is higher. No, all his attacks max out at 97.
  6. Tuesday, September 09, 2008 Removed Skeletal Wyvern (level-158) as it no longer exists (it was changed back to level 140)
  7. http://forum.tip.it/viewtopic.php?f=188&t=750478 From today's news: So delete it (level 158 Wyvern) from the Bestiary I suppose... I'll be removing it from my monster examine guide, my website (Rune Universe) and the RuneScape Wikia now.
  8. I don't know about you guys, but I like to be able to actually SEE the game when I'm playing it...
  9. Update: You might notice the code may calculate your combat level to something like 136.000000001. I will look into modifying the code to use the BigDecimal class to fix that problem if I have time this week.
  10. Thanks. I might convert it to other languages later, too.
  11. My hope for PvP worlds is no level restrictions. I want my level 136 combat to be able to count for something, and go around one hitting level 3s and 10s... so much more fun than taking a half hour to kill another 136...
  12. Dude you have no idea what you are talking about... Mage affected your combat in RSC. Where do you think the term pures came from? People would not train any magic and have their hp way above their combat level. Range and mage count in combat formulas in RSC. In fact, magic *always* counts. Range counts only if it is double your hp or otherwise much higher than your other stats. It is not possible to have a level 3 with 99 magic in RSC. *rolls eyes* Yes, I was meaning to comment on this but forgot. To any others, meili is entirely correct on what he says about the RSC combat formula. Also, this... \POST 1000! \ EDIT: Also, I just noticed that yesterday was my 3 year anniversary of Tip.It. I joined 3 years 1 day ago. :)
  13. True, but in addition to that is also depends on what you're doing in the game; e.g. standing around is far more likely to trigger a random event than behaving... randomly, I suppose, at least from the machine's perspective.
  14. For the specials, a lot of it was trial and error in the different parts of the formula. When I tried it as a boost to the weapon power with the dragon long special, I got what I considered to be a 'pretty number' of 30. Other tries got me decimals, and generally the simpler the better. You have to remember that it's people at Jagex putting these numbers into the game, and a person is much more likely to choose an even 30.00 over something like 30.83 or even 37.00. I tried the other weapons as a bonus to weapon power, and all of those turned out to be 'pretty numbers' as well. For the original numbers (0.00175/0.1/1.05), I never liked those in the formula. The 0.00175 wasn't an exact number, as the decimal seemed to carry on forever. The other two numbers were basically fixes to the original formula to get it to work more precisely. I never liked how it looked because they weren't 'pretty numbers', but I couldn't argue with the results. Initially I was never off by more than one damage point (even with the inaccurate potion calculation), and as the game progressed, all the new additions to the game did nothing but fit nicely within the ugly formula I had initially created. I expected as the maximum weapon power and additional features were increased, it would slowly start to diverge from my formula, but it doesn't seem like it has. I still haven't hit anything over what the formula has told me I would hit, and people do need to remember how rare it is to actually max out with the optimum conditions. In response to the 'pretty number' theory above, my guess was that they had to use ugly numbers to get the initial formula to hit exactly what they intended, so that the damage was fairly reasonable when the game was played. I still don't like it though, and I would be quite pleased if someone came out with a better formula that used nicer numbers. For the Dharok special, I seem to recall looking at that right when it came out, and the NPC Dharok's actual max seemed to be 19, with double that at 38 with the special. I don't know if that still holds true, or if those were the exact numbers, but I remember it being exactly double. NPC's work the same way that players do in terms of max hit, and for a time when the combat levels of NPCs roughly matched their strength levels I was able to predict their max hits with surprising accuracy. Dharok's hits led me to believe that it was as simple as taking the end result and doubling it (almost). I think my solution to it was to take the end result of the formula, then multiply it by [1+(hp missing/hp level)] if you were wearing the set. I always had a question as to what value to use in the hp level part, because it seems like it would be more fair to always use 99 instead of the player's level if it was under 99 (a player with 71 hp would have a greater advantage than a player with 99 hp if they were both missing 70 hp with the given formula). I was never able to test that though, as I was already 99 hp when the dharok set came out. Also with the calculation of the actual formula, I noticed a trend with the decimals on the end of the result. If the result was 30.1, I would hit 31 at a ratio of about 1:10 that I would hit a 30. If the result was 30.9, I would hit a 31 at a ratio of about 9:10 that I would hit a 30. Just something fun I noticed, and I don't really know whether it's true or not, because there's no real way to test it. A question I always had which you may be able to answer now was whether the potted levels were rounded by the system or not. The stats screen would show 118 when super potted, but does the actual result equal something like 118.7836 (arbitrary decimal for the purposes of discussion only), and which number does the formula use to calculate? This leads to the question of whether the stats drain once every set interval, or the decimals count down out of sight with the number in the stats screen changing only when it drops below 118.0000. I think it just uses the whole integer based on the way that potions will all wear off at the same time, but I was never quite sure. Additionally, are you certain the potion formula is level/100, or would level/99 make more sense? I haven't run any of the numbers, so I have no data to go on, but level/99 would seem more logical. For the potions, if it were a decimal, it'd be 118.8. ;) But, it's extremely likely to be internally an integer, because I know for a fact that ALL potted levels drop at a set interval. For example, drink a super attack potion right after the interval's passed, then drink a super strength potion 50 seconds later. Your attack and strength will drop to 117 at the same time, even though the time at which they were boosted was nearly 60 seconds (the normal interval when potted levels drop). Also, about the constant 100 in the potion formula, that has nothing to do with level - it's just a number. In fact, if the constant were 99, you would gain 20 levels from a super strength potion at level 99, causing you to have 119/99 strength, which is incorrect. The formula works for ANY level from 1 to n. If you take a look at the KB page (http://www.runescape.com/kbase/viewarti ... le_id=1941) you'll notice it says for the stat-boosting potions "X-Y attack/strength/etc levels". I put an extensive amount of research into figuring out the formula, at one point I took prayer potions around and had someone with every level in the skill drink two doses (in case the interval hit right after they drank it) and tell me what it boosted. Here's the formula again in simpler form. Plug in 99 for level, and 5 for rangeLow, 19 for rangeHigh, it will tell you the amount of strength levels gained from drinking a super strength potion at level 99. ((level / 100) * rangeHigh - rangeLow) + rangeLow + (level / 100) Also, this can be simplified so that only the variables rangeHigh and level are needed. I'll fix it in my code later when I get a chance. (level / 100) + (level / 100) * rangeHigh About about Dharok, the NPC's max hit is 29 at full HP and 58 and 1 HP. About that, perhaps it's (1 + (currentHP / maxHP))? That way a player with 35/70 HP and one with 49/98 HP would have the same max hit if their strength and all other factors were equal... I think that makes the most sense, but please let me hear your take on it. And there must be something else in addition, because simply (1 + (currentHP / maxHP)) seems to yield far too high a max hit.
  15. Wow, excellent idea! One of the best I've seen, I support.
  16. This looks like a good quest idea, I support.
  17. Looks cool, but adding a number above the bar showing your HP (for example it would show "99/99" above my bar when I am at full HP) would be a great addition too. Perhaps put that into your suggestion? ;)
  18. Never happened to me. Must be a bug in their system.
  19. Glory. At lower levels you want the attack bonuses over the strength ones. Once you get higher attack it matters less and less.
  20. Make sure you have audio on. This helps really really much. When you kill the last level 360, turn on range prayer. If you hear a fireball/retribution sort of noise, flip on mage prayer and get to him as quickly as possible so you can see him. If you instead hear a deep "boom" sound, leave on range prayer and again get to him quickly as possible so he's within your sight. Then just watch his movements and switch prayers appropriately and you should be pretty good from there. When the healers come, don't panic. PAY ATTENTION to Jad and range the healers without paying much attention to them. Focus on Jad! Once you've hit them all, get Jad's HP back down below 125 (half HP) and if your defence level's on the low side you can quickly kill off the healers and resume fighting Jad, otherwise just keep hitting Jad and wait them out. Good luck!
  21. I think Al Kharid warriors drop a lot of Earth talismans.
  22. You're not really supposed to make topics like this. My advice would be to just play the game and you'll of course meet plenty of friends along the way. Usually you meet people in the most unexpected of places! I and plenty others have gotten lots of good friends over the years this way; I don't think you'll have any trouble. :)
  23. Wow, Golvellius and Boy Wonder! Two famous pioneers of max hits. I don't quite understand what you're saying, Golv... but are you asking whether your strength level or equipment bonus matters more in the determination of max hit? If so, it would be strength level. I can definitely give you a little help with this question, and probably a few others as well. The short answer to the question above was that I simply made the numbers up. I wrote the base formula that everyone uses, back in November of 2002. Back then, I was interested in maximizing my damage, and knew what I could hit at what parameters, and started asking others what they could hit as well. With that data, I basically figured out what numbers I would have to use to make it work. Back in classic, it was much more simple to figure out, without specials and all the other unique bonuses they added. I was able to get the base formula to within 1 damage point, and since then as they have updated stuff I have been able to figure out what they did and add it into the formula. As an example, I did a lot of work with I D R when the special attacks came out with RS2 to find out what people's maxes were with each special, and having the basic formula, was able to calculate the bonuses for each special. The max hit formula in classic is exactly the same as it is in RS2, just that RS2 has a lot more enhancements and bonuses than the original. One of my major limitations is something that you have pointed out, I never had an accurate formula for the potion boost. I used the best approximation that I could find. Elfio was working concurrently with me on his own version of a max hit formula (in 2002/2003) and he claimed he had an accurate potion formula, but he left the game before I was able to see it or ask him for it. I believe the reason we asked for the base strength and not the potted strength was because some of the calculation was done based off of your base level, and entering your potted strength would have skewed the results. I'll see if I can find my notes from back then, because I think I still have them shoved in a drawer somewhere, and see if that can refresh my memory on the subject further. I really haven't been playing much lately, and I have sort of lost touch with all the newer stuff like keris and the obsidian necklace stuff. Something a little easier to understand, for those who don't want to dig through all the code: Thanks for that informative post! Now you are saying you think special attacks add to strength bonus rather than linearly raise your max hit, like the KB suggests? And have you found your 0.00175/0.1/1.05 constants to be very accurate in your formula? Also, what is your take on how Dharoks is factored into max hit? And I remember I D R's special attacks topic... what ever happened to it? And if you didn't notice it in my formulas class... the potion formula is revealed. I was trying to figure it out one day (2006 or 2007) and just happened to stumble upon this formula. Sometimes I get these weird bursts of energy and start writing code that turns out to work excellent. Hope you enjoy this. ;) /** * Calculates the number of levels a potion will boost or restore a skill at a particular level in that skill. * @param rangeLow The lowest amount the potion will boost or restore (can be found on KB). * @param rangeHigh The highest amount the potion will boost or restore (can be found on KB). * @param level Your level in the skill that the potion affects. * @return The number of levels the potion will boost or restore in the skill in question. * @see RuneScape Knowledge Base Herblore Article */ public static int potionBoost(int rangeLow, int rangeHigh, int level) { int amount = (int)Math.floor((((float)level / 100) * (Math.abs(rangeHigh) - Math.abs(rangeLow))) + (Math.abs(rangeLow) + ((float)level / 100))); if (rangeLow < 0 && rangeHigh < 0) { amount = -amount; } return amount; } /** * Calculates the number of levels a potion will boost or restore a skill at a particular level in that skill. * @param potion The potion you are calculating for. * @param skill The skill to obtain results for. null for other skill. * @param level Your level in the skill that the potion affects. * @return The number of levels the potion will boost or restore in the skill in question. * @see RuneScape Knowledge Base Herblore Article */ public static int potionBoost(SkillPotion potion, CombatSkills skill, int level) { return RuneScapeFormulas.potionBoost(potion.getRangeLow(skill), potion.getRangeHigh(skill), level); }

Important Information

By using this site, you agree to our Terms of Use.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.