Welcome to the RuneGlory Wiki, where we do our best to make your life easier!

You can use the search menu on the right side of the wiki (or at the bottom if you are on mobile) to search for the page you are looking for. The most popular pages can be found on the right side of the wiki aswell (or again at the bottom if you are on mobile).

Difference between revisions of "Main page/Test Cypher"

From RuneGlory
Jump to: navigation, search
 
(46 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
Test page from Cypher to make the build-in XP Calculator
 
Test page from Cypher to make the build-in XP Calculator
Styling will be done later ;-)
+
 
  
 
<html>
 
<html>
Line 18: Line 18:
 
<body>
 
<body>
  
<h2 style="color:black">
+
<h2 style="color:orange">
 
Test Firemaking Tables:
 
Test Firemaking Tables:
 
</h2>
 
</h2>
  
 
+
<table width ="100%">
<table>
 
 
   <tr>
 
   <tr>
     <td>Your skill XP</td>
+
    <th>Your firemaking XP</td>
 +
     <td> <img id="firemaking" src="https://imgur.com/baIMjWJ.gif">&nbsp;
 +
    <input type="text" id="curxp" name="skill-xp" onkeyup="func()" maxlength="9" placeholder="Your XP"> &nbsp;<img id="firemaking" src="https://imgur.com/baIMjWJ.gif">
 +
</td>
 +
<tr>
 +
    <th>Target XP</td>
 +
    <td> <img id="firemaking" src="https://imgur.com/baIMjWJ.gif">&nbsp;
 +
    <input type="text" id="tarxp" name="skill-xp" onkeyup="func2()" maxlength="9" value="200000000"> &nbsp; <img id="firemaking" src="https://imgur.com/baIMjWJ.gif">
 +
</td>
 +
<tr>
 +
    <th>Account Type</td>
 +
    <td>
 +
    <input type="radio" name="radioaccount" value="type0" id="type0" onclick="myFunction()" checked> Regular
 +
    <input type="radio" name="radioaccount" value="type1" id="type1" onclick="myFunction()"> Ironman
 +
    <input type="radio" name="radioaccount" value="type2" id="type2" onclick="myFunction()"> Hardcore ironman
 +
</td>
 +
<tr>
 +
    <th>Use knowledge totem</td>
 
     <td>
 
     <td>
     <input type="text" id="fname" name="skill-xp" placeholder="Your XP..">
+
     <input type="radio" name="radiodonor" value="donor0" id="donor0" onclick="myFunction()" checked> No totem
</td>
+
    <input type="radio" name="radiodonor" value="donor1" id="donor1" onclick="myFunction()"> <img id="next" src="https://i.imgur.com/Ugz3obm.png"> Regular Donator
  </tr>
+
    <input type="radio" name="radiodonor" value="donor2" id="donor2" onclick="myFunction()"> <img id="next" src="https://i.imgur.com/Pjnz1Wh.png"> Super Donator
  <tr>
+
    <input type="radio" name="radiodonor" value="donor3" id="donor3" onclick="myFunction()"> <img id="next" src="https://i.imgur.com/qHYfynX.png"> Extreme Donator
     <td> Target lvl / XP</td>
+
</td>
 +
<tr>
 +
    <th>Bonus days</td>
 +
     <td>  
 +
    <input type="radio" name="bonusdays" value="bonusday0" id="ftf0" onclick="myFunction()" checked> No bonus days
 +
    <input type="radio" name="bonusdays" value="bonusday1" id="ftf1" onclick="myFunction()"> Bonus days (1st-5th)
 +
</td>
 +
<tr>
 +
    <th>Brawlers</td>
 
     <td>  
 
     <td>  
     <select id="selector-lvl-xp" name="selector-lvl-xp">
+
     <input type="radio" name="brawlers" value="brawlers0" id="brawl0" onclick="myFunction()" checked> No brawlers
      <option value="lvl-1">lvl 1 (0 xp)</option>
+
    <input type="radio" name="brawlers" value="brawlers1" id="brawl1" onclick="myFunction()"> Brawlers
      <option value="lvl-2">2</option>
+
</td>
      <option value="lvl-3">3</option>
+
<tr>
      <option value="lvl-4">4</option>
+
     <th>Bonus XP</td>
      <option value="lvl-5">5</option>
 
      <option value="lvl-6">6</option>
 
      <option value="lvl-7">7</option>
 
      <option value="lvl-8">8</option>
 
      <option value="lvl-9">9</option>
 
      <option value="lvl-10">10</option>
 
      <option value="lvl-11">11</option>
 
      <option value="lvl-12">12</option>
 
      <option value="lvl-13">13</option>     
 
      <option value="lvl-14">14</option>
 
      <option value="lvl-15">15</option>
 
      <option value="lvl-16">16</option>
 
      <option value="lvl-17">17</option>
 
      <option value="lvl-18">18</option>
 
      <option value="lvl-19">19</option>
 
      <option value="lvl-20">20</option>
 
      <option value="lvl-21">21</option>
 
      <option value="lvl-22">22</option>
 
      <option value="lvl-23">23</option>
 
      <option value="lvl-24">24</option>
 
      <option value="lvl-25">25</option>
 
      <option value="lvl-26">26</option>
 
      <option value="lvl-27">27</option>
 
      <option value="lvl-28">28</option>
 
      <option value="lvl-29">29</option>
 
      <option value="lvl-30">30</option>
 
      <option value="lvl-31">31</option>
 
      <option value="lvl-32">32</option>
 
      <option value="lvl-33">33</option>
 
      <option value="lvl-34">34</option>
 
      <option value="lvl-35">35</option>
 
      <option value="lvl-36">36</option>
 
      <option value="lvl-37">37</option>
 
      <option value="lvl-38">38</option>
 
      <option value="lvl-39">39</option>
 
      <option value="lvl-40">40</option>
 
      <option value="lvl-41">41</option>
 
      <option value="lvl-42">42</option>
 
      <option value="lvl-43">43</option>
 
      <option value="lvl-44">44</option>
 
      <option value="lvl-45">45</option>
 
      <option value="lvl-46">46</option>
 
      <option value="lvl-47">47</option>
 
      <option value="lvl-48">48</option>
 
      <option value="lvl-49">49</option>
 
      <option value="lvl-50">50</option>
 
      <option value="lvl-51">51</option>
 
      <option value="lvl-52">52</option>
 
      <option value="lvl-53">53</option>
 
      <option value="lvl-54">54</option>
 
      <option value="lvl-55">55</option>
 
      <option value="lvl-56">56</option>
 
      <option value="lvl-57">57</option>
 
      <option value="lvl-58">58</option>
 
      <option value="lvl-59">59</option>
 
      <option value="lvl-60">60</option>
 
      <option value="lvl-61">61</option>
 
      <option value="lvl-62">62</option>
 
      <option value="lvl-63">63</option>
 
      <option value="lvl-64">64</option>
 
      <option value="lvl-65>65</option>
 
      <option value="lvl-66">66</option>
 
      <option value="lvl-67">67</option>
 
      <option value="lvl-68">68</option>
 
      <option value="lvl-69">69</option>
 
      <option value="lvl-70">70</option>
 
      <option value="lvl-71">71</option>
 
      <option value="lvl-72">72</option>
 
      <option value="lvl-73">73</option>
 
      <option value="lvl-74">74</option>
 
      <option value="lvl-75">75</option>
 
      <option value="lvl-76">76</option>
 
      <option value="lvl-77">77</option>
 
      <option value="lvl-78">78</option>
 
      <option value="lvl-79">79</option>
 
      <option value="lvl-80">80</option>
 
      <option value="lvl-81">81</option>
 
      <option value="lvl-82">82</option>
 
      <option value="lvl-83">83</option>
 
      <option value="lvl-84">84</option>
 
      <option value="lvl-85">85</option>
 
      <option value="lvl-86">86</option>
 
      <option value="lvl-87">87</option>
 
      <option value="lvl-88">88</option>
 
      <option value="lvl-89">89</option>
 
      <option value="lvl-90">90</option>
 
      <option value="lvl-91">91</option>
 
      <option value="lvl-92">92</option>
 
      <option value="lvl-93">93</option>
 
      <option value="lvl-94">94</option>
 
      <option value="lvl-95">95</option>
 
      <option value="lvl-96">96</option>
 
      <option value="lvl-97">97</option>
 
      <option value="lvl-98">98</option>
 
      <option value="lvl-99">lvl 99 (13.034.341 xp)</option>
 
      <option value="lvl-99">lvl 99 (15.000.000 xp)</option>
 
      <option value="lvl-99">lvl 99 (50.000.000 xp)</option>
 
      <option value="lvl-99">lvl 99 (100.000.000 xp)</option>
 
      <option value="lvl-99">lvl 99 (150.000.000 xp)</option>
 
      <option value="lvl-99">lvl 99 (200.000.000 xp)</option>
 
      <option value="lvl-99">lvl 99 (250.000.000 xp)</option>
 
      <option value="lvl-99">lvl 99 (300.000.000 xp)</option>
 
      <option value="lvl-99">lvl 99 (350.000.000 xp)</option>
 
    </select>
 
</td>
 
  </tr>
 
  <tr>
 
     <td> Gameplay mode</td>
 
 
     <td>  
 
     <td>  
    <select id="gamemode" name="gamemode">
+
    <input type="radio" name="bxp" value="bxp0" id="bxp0" onclick="myFunction()" checked> No Bonus XP
      <option value="mode-normal">Normal mode</option>
+
    <input type="radio" name="bxp" value="bxp1" id="bxp1" onclick="myFunction()"> Bonus XP
      <option value="mode-ironman">Ironman mode</option>
+
</td>
      <option value="mode-hcim">Hardcore ironman mode</option>
 
    </select>
 
  </div>
 
</div>
 
</td>
 
  </tr>
 
  <tr>
 
    <td>Use knowledge totem</td>
 
    <td>
 
<select>
 
  <option value="totem-no">No totem</option>
 
  <option value="totem-75">75% experience</option>
 
  <option value="totem-100">100% experience</option>
 
  <option value="totem-110">110% experience</option>
 
</select>
 
</td>
 
  </tr>
 
  <tr>
 
    <td>Brawlers</td>
 
    <td>
 
<select>
 
  <option value="brawlers-no">No brawlers</option>
 
  <option value="brawlers-yes">Yes, use brawlers </option>
 
</select>
 
</td>
 
  </tr>
 
 
</table>
 
</table>
  
<table>
+
<script>
 +
 
 +
function func() {
 +
  if (document.getElementById("curxp").value > 200000000) {
 +
    //alert("reached max limit");
 +
    document.getElementById("curxp").value = "Invalid amount, but I'll calculate!";
 +
  }
 +
}
 +
 
 +
function func2() {
 +
  if (document.getElementById("tarxp").value > 200000000) {
 +
    //alert("reached max limit");
 +
    document.getElementById("tarxp").value = "Invalid amount, but I'll calculate!";
 +
  }
 +
}
 +
 
 +
function applyBonuses(xp) {
 +
  /* Boolean checks for calculations */
 +
  var ftfc = 1;
 +
  var donorc = 1;
 +
  var bxpc = 0;
 +
  var typec = 1;
 +
  var brawlc = 1;
 +
 
 +
  if (document.getElementById("ftf1").checked){
 +
  ftfc = 1.25;
 +
  }
 +
  if (document.getElementById("brawl1").checked){
 +
  brawlc = 2;
 +
  }
 +
  if (document.getElementById("donor1").checked){
 +
  donorc = 1.75;
 +
  }
 +
  if (document.getElementById("donor2").checked){
 +
  donorc = 2;
 +
  }
 +
  if (document.getElementById("donor3").checked){
 +
  donorc = 2.1;
 +
  }
 +
  if (document.getElementById("bxp1").checked){
 +
  bxpc = 2;
 +
  }
 +
  if (document.getElementById("type1").checked){
 +
  typec = 3;
 +
  }
 +
  if (document.getElementById("type2").checked){
 +
  typec = 5;
 +
  }
 +
  return(Math.floor((xp*(ftfc*donorc*brawlc))+(xp*bxpc))/typec)
 +
}
 +
 
 +
document.getElementById("curxp").oninput = function() {myFunction()};
 +
document.getElementById("tarxp").oninput = function() {myFunction()};
 +
 
 +
// ***** Constant variables *****
 +
const regularLogXp = 1781;
 +
const oakLogXp = 2250;
 +
const willowLogXp = 3076;
 +
const mapleLogXp = 4125;
 +
const yewLogXp = 5000;
 +
const magicLogXp = 6000;
 +
 
 +
const regularLogCoin = 375;
 +
const oakLogCoin = 375;
 +
const willowLogCoin = 375;
 +
const mapleLogCoin = 375;
 +
const yewLogCoin = 375;
 +
const magicLogCoin = 375;
 +
 
 +
function myFunction() {
 +
 
 +
var x = document.getElementById("curxp").value;
 +
var y = document.getElementById("tarxp").value;
 +
var z = 13034431;
 +
 
 +
// ***** Adjustable xp values used for calculations ***** //
 +
 
 +
var rrXp = applyBonuses(regularLogXp);
 +
var okXp = applyBonuses(oakLogXp);
 +
var wwXp = applyBonuses(willowLogXp);
 +
var meXp = applyBonuses(mapleLogXp);
 +
var ywXp = applyBonuses(yewLogXp);
 +
var mcXp = applyBonuses(magicLogXp);
 +
 +
// ***** Calculate XP *****
 +
 
 +
var mc;
 +
var yw;
 +
var me;
 +
var ww;
 +
var ok;
 +
var rr;
 +
 
 +
//current xp over 99
 +
if (x > 13034431) {
 +
    mc = Math.ceil((y - x)/(mcXp/2));
 +
    yw = Math.ceil((y - x)/(ywXp/2));
 +
    me = Math.ceil((y - x)/(meXp/2));
 +
    ww = Math.ceil((y - x)/(wwXp/2));
 +
    ok = Math.ceil((y - x)/(okXp/2));
 +
    rr = Math.ceil((y - x)/(rrXp/2));
 +
// target xp under 99
 +
} else if (y < 13034431) {
 +
    mc = Math.ceil((y - x)/mcXp);
 +
    yw = Math.ceil((y - x)/ywXp);
 +
    me = Math.ceil((y - x)/meXp);
 +
    ww = Math.ceil((y - x)/wwXp);
 +
    ok = Math.ceil((y - x)/okXp);
 +
    rr = Math.ceil((y - x)/rrXp);
 +
// target xp over 99, current xp under 99
 +
} else {
 +
    mc = Math.ceil(((y - z)/(mcXp/2)) + ((z - x)/mcXp));
 +
    yw = Math.ceil(((y - z)/(ywXp/2)) + ((z - x)/ywXp));
 +
    me = Math.ceil(((y - z)/(meXp/2)) + ((z - x)/meXp));
 +
    ww = Math.ceil(((y - z)/(wwXp/2)) + ((z - x)/wwXp));
 +
    ok = Math.ceil(((y - z)/(okXp/2)) + ((z - x)/okXp));
 +
    rr = Math.ceil(((y - z)/(rrXp/2)) + ((z - x)/rrXp));
 +
}
 +
 
 +
    document.getElementById("magicr").innerHTML = mc;
 +
    document.getElementById("yewr").innerHTML = yw;
 +
    document.getElementById("mapler").innerHTML = me;
 +
    document.getElementById("willowr").innerHTML = ww;
 +
    document.getElementById("oakr").innerHTML = ok;
 +
    document.getElementById("reglogr").innerHTML = rr;
 +
 
 +
// ***** Calculate XP required *****
 +
    document.getElementById("xpneeded").innerHTML = (y - x);
 +
 
 +
// ***** Calculate skillpoints obtained *****
 +
  var axp = x%500000;
 +
  var bxp = (y-x)%500000;
 +
  var cxp = 0;
 +
  if (bxp+axp == 500000){
 +
  cxp = 3;
 +
  }
 +
  document.getElementById("spobtained").innerHTML = Math.floor((y -
 +
  x)/500000)*3 + cxp;
 +
 
 +
// ***** Calculate coins obtained *****
 +
    document.getElementById("coinsmadereglog").innerHTML = rr*regularLogCoin;
 +
    document.getElementById("coinsmadeoak").innerHTML = ok*oakLogCoin;
 +
    document.getElementById("coinsmadewillow").innerHTML = ww*willowLogCoin;
 +
    document.getElementById("coinsmademaple").innerHTML = me*mapleLogCoin;
 +
    document.getElementById("coinsmadeyew").innerHTML = yw*yewLogCoin;
 +
    document.getElementById("coinsmademagic").innerHTML = mc*magicLogCoin;
 +
 
 +
// ***** Calculate amount of brawlers required note: brawlers last 501 charge *****
 +
    document.getElementById("magicBrawlers").innerHTML = Math.ceil(mc/501);
 +
    document.getElementById("yewBrawlers").innerHTML = Math.ceil(yw/501);
 +
    document.getElementById("mapleBrawlers").innerHTML = Math.ceil(me/501);
 +
    document.getElementById("willowBrawlers").innerHTML = Math.ceil(ww/501);
 +
    document.getElementById("oakBrawlers").innerHTML = Math.ceil(ok/501);
 +
    document.getElementById("reglogBrawlers").innerHTML = Math.ceil(rr/501);
 +
 
 +
 
 +
// ***** Calculate amount of skillpoints required *****
 +
    document.getElementById("magicSkillpoint").innerHTML = Math.ceil(mc/501)*50;
 +
    document.getElementById("yewSkillpoint").innerHTML = Math.ceil(yw/500)*50;
 +
    document.getElementById("mapleSkillpoint").innerHTML = Math.ceil(me/500)*50;
 +
    document.getElementById("willowSkillpoint").innerHTML = Math.ceil(ww/500)*50;
 +
    document.getElementById("oakSkillpoint").innerHTML = Math.ceil(ok/500)*50;
 +
    document.getElementById("reglogSkillpoint").innerHTML = Math.ceil(rr/500)*50;
 +
 
 +
 
 +
 
 +
// ***** Calculate inventories *****
 +
    document.getElementById("magicInv").innerHTML = Math.ceil(mc/27);
 +
    document.getElementById("yewInv").innerHTML = Math.ceil(yw/27);
 +
    document.getElementById("mapleInv").innerHTML = Math.ceil(me/27);
 +
    document.getElementById("willowInv").innerHTML = Math.ceil(ww/27);
 +
    document.getElementById("oakInv").innerHTML = Math.ceil(ok/27);
 +
    document.getElementById("reglogInv").innerHTML = Math.ceil(rr/27);
 +
 
 +
}
 +
</script>
 +
 
 +
Experience needed: <span id="xpneeded"> </span><br>
 +
Skilling points you'll obtain: <span id="spobtained"> </span><br>
 +
<table width="100%">
 
   <tr>
 
   <tr>
     <td>Amount required</td>
+
     <th> Level </td>
     <td> Name </td>
+
    <th> Name </td>
     <td> Level </td>
+
    <th> # required </td>
     <td> XP </td>
+
     <th> Coins made </td>
 +
    <th> # of brawlers </td>
 +
     <th> Skillpoint cost </td>
 +
     <th> # of inventories </td>
 
   </tr>
 
   </tr>
 
   <tr>
 
   <tr>
     <td> Dynamic input </td>
+
     <td> 1 </td>
 
     <td>  
 
     <td>  
 
<img id="next" src="https://i.imgur.com/V5hKi9L.png">  Regular log </td>
 
<img id="next" src="https://i.imgur.com/V5hKi9L.png">  Regular log </td>
     <td> 1 </td>
+
     <td id="reglogr"> </td>
     <td> Dynamic input </td>
+
     <td id="coinsmadereglog"> </td>
 +
    <td id="reglogBrawlers"> </td>
 +
    <td id="reglogSkillpoint"> </td>
 +
    <td id="reglogInv"> </td>
 
   </tr>
 
   </tr>
 
   <tr>
 
   <tr>
     <td> Dynamic input </td>
+
     <td> 15 </td>
 
     <td>  
 
     <td>  
 
<img id="next" src="https://i.imgur.com/3x8RkX7.png">  Oak log </td>
 
<img id="next" src="https://i.imgur.com/3x8RkX7.png">  Oak log </td>
     <td> 15 </td>
+
     <td id="oakr"> </td>
     <td> Dynamic input </td>
+
     <td id="coinsmadeoak"> </td>
 +
    <td id="oakBrawlers"> </td>
 +
    <td id="oakSkillpoint"> </td>
 +
    <td id="oakInv"> </td>
 
   </tr>
 
   </tr>
 
   <tr>
 
   <tr>
     <td> Dynamic input </td>
+
     <td> 30 </td>
 
     <td>  
 
     <td>  
 
<img id="next" src="https://i.imgur.com/mBqOisq.png">  Willow log </td>
 
<img id="next" src="https://i.imgur.com/mBqOisq.png">  Willow log </td>
     <td> 30 </td>
+
     <td id="willowr"> </td>
     <td> Dynamic input </td>
+
     <td id="coinsmadewillow"> </td>
 +
    <td id="willowBrawlers"> </td>
 +
    <td id="willowSkillpoint"> </td>
 +
    <td id="willowInv"> </td>
 
   </tr>
 
   </tr>
 
   <tr>
 
   <tr>
     <td> Dynamic input </td>
+
     <td> 45 </td>
 
     <td>  
 
     <td>  
 
<img id="next" src="https://i.imgur.com/hU5Yezt.png">  Maple log </td>
 
<img id="next" src="https://i.imgur.com/hU5Yezt.png">  Maple log </td>
     <td> 45 </td>
+
     <td id="mapler"> </td>
     <td> Dynamic input </td>
+
     <td id="coinsmademaple"> </td>
 +
    <td id="mapleBrawlers"> </td>
 +
    <td id="mapleSkillpoint"> </td>
 +
    <td id="mapleInv"> </td>
 
   </tr>
 
   </tr>
 
   <tr>
 
   <tr>
     <td> Dynamic input </td>
+
     <td> 60 </td>
 
     <td>  
 
     <td>  
 
<img id="next" src="https://i.imgur.com/cdGjHSy.png">  Yew log </td>
 
<img id="next" src="https://i.imgur.com/cdGjHSy.png">  Yew log </td>
     <td> 60 </td>
+
     <td id="yewr"> </td>
     <td> Dynamic input </td>
+
     <td id="coinsmadeyew"> </td>
 +
    <td id="yewBrawlers"> </td>
 +
    <td id="yewSkillpoint"> </td>
 +
    <td id="yewInv"> </td>
 
   </tr>
 
   </tr>
 
   <tr>
 
   <tr>
     <td> Dynamic input </td>
+
     <td> 75 </td>
 
     <td>  
 
     <td>  
 
<img id="next" src="https://i.imgur.com/H8nwdsU.png">  Magic log </td>
 
<img id="next" src="https://i.imgur.com/H8nwdsU.png">  Magic log </td>
     <td> 75 </td>
+
     <td id="magicr"> </td>
     <td> Dynamic input </td>
+
     <td id="coinsmademagic"> </td>
 +
    <td id="magicBrawlers"> </td>
 +
    <td id="magicSkillpoint"> </td>
 +
    <td id="magicInv"> </td>
 
   </tr>
 
   </tr>
 +
</table>
  
</table>
 
  
  
 
</body>
 
</body>
 
</html>
 
</html>

Latest revision as of 23:33, 2 March 2018

Test page from Cypher to make the build-in XP Calculator


Test Firemaking Tables:

Your firemaking XP    
Target XP    
Account Type Regular Ironman Hardcore ironman
Use knowledge totem No totem Regular Donator Super Donator Extreme Donator
Bonus days No bonus days Bonus days (1st-5th)
Brawlers No brawlers Brawlers
Bonus XP No Bonus XP Bonus XP
Experience needed:
Skilling points you'll obtain:
Level Name # required Coins made # of brawlers Skillpoint cost # of inventories
1 Regular log
15 Oak log
30 Willow log
45 Maple log
60 Yew log
75 Magic log