Talk:Chaos Druid
Jump to navigation
Jump to search
Drops[edit source]
This one is a bit weird -- we have about 6000 kills from User:Cook Me Plox/replaydrops and 5500 kills from http://www.bishopd.com/mainpages/games/rsc/drops/rsc_drops.html, but the chaos druids have a fairly unique mechanic where sometimes they will drop an herb AND re-roll on the entire table. In OSRS the drop table is nearly identical, except instead of re-rolling on the entire table, it just gives another herb. ʞooɔ 21:00, 5 May 2020 (UTC)
Drop pseudocode[edit source]
def randomherb():
global rand
rand = random.randrange(128)
if rand < 32:
drop("guam")
return
if rand < 56:
drop("marrentill")
return
if rand < 74:
drop("tarromin")
return
if rand < 88:
drop("harralander")
return
if rand < 99:
drop("ranarr")
return
if rand < 107:
drop("irit")
return
if rand < 113:
drop("avantoe")
return
if rand < 118:
drop("kwuarm")
return
if rand < 122:
drop("cadantine")
return
if rand < 125:
drop("dwarf-weed")
return
def chaos_druid():
global rand
rand = random.randrange(128)
if rand < 1:
drop("randomjewel")
return
if rand < 2:
drop("35 coins")
return
if rand < 5:
drop("36 air-rune")
return
if rand < 8:
drop("29 coins")
return
if rand < 10:
drop("12 mind-rune")
return
if rand < 12:
drop("9 earth-rune")
return
if rand < 14:
drop("9 body-rune")
return
if rand < 25:
randomherb()
if rand < 50:
randomherb()
return
if rand < 55:
drop("8 coins")
return
if rand < 62:
drop("1 law-rune")
return
if rand < 63:
drop("2 nature-rune")
return
if rand < 64:
drop("1 snape grass")
return
if rand < 65:
drop("1 bronze longsword")
return
if rand < 75:
randomherb()
return
if rand < 80:
drop("3 coins")
return
if rand < 90:
drop("1 vial")
return
if rand < 91:
drop("1 unholy symbol")
The things that make this weird: the lack of the return after the first randomherb, and the fact that randomherb sets the same random variable that the main routine uses. ʞooɔ 13:51, 30 November 2021 (UTC)