diff options
author | Stefan Beller <stefanbeller@googlemail.com> | 2010-09-29 08:17:17 +0200 |
---|---|---|
committer | Stefan Beller <stefanbeller@googlemail.com> | 2010-11-07 14:50:27 +0100 |
commit | ae6378fb9e8b33653d49b50850ad6b52879f55cb (patch) | |
tree | eecfe0d418476d73b9aaf80488efdd1fe6a93ead /tools | |
parent | 3c6ed71016631cd2dc284f3a7946b450aad647fe (diff) | |
download | serverdata-ae6378fb9e8b33653d49b50850ad6b52879f55cb.tar.gz serverdata-ae6378fb9e8b33653d49b50850ad6b52879f55cb.tar.bz2 serverdata-ae6378fb9e8b33653d49b50850ad6b52879f55cb.tar.xz serverdata-ae6378fb9e8b33653d49b50850ad6b52879f55cb.zip |
a script for average monster drop values
in the folder tools there is now a script which calulates the
average npc selling prize of all dropss by a specific monster.
This tool can be used for balancing purposes.
Diffstat (limited to 'tools')
-rw-r--r-- | tools/monster-killing-values.py | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/tools/monster-killing-values.py b/tools/monster-killing-values.py new file mode 100644 index 00000000..a2d7ec23 --- /dev/null +++ b/tools/monster-killing-values.py @@ -0,0 +1,61 @@ +#!/usr/bin/python +#has to be executed in place, this folder + + +def make_items(): + items_file=open("../db/item_db.txt","r") + lines=items_file.readlines() + items_file.close(); + + items=[] + for line in lines: + array=line.split(",") + if len(array)>6 and not line.startswith("#") and not line.startswith("//"): + id=array[0] + sellprize=array[5] + try: + int(sellprize) + items+=[(int(id),int(sellprize))] + except: + print line + return items; + +def getvalueof(id): + for x in global_items: + if x[0]==id: + return int(x[1]) + return 0 + +def make_mobs(): + mobfile=open("../db/mob_db.txt","r") + lines=mobfile.readlines() + mobfile.close(); + + mobs=[] + for line in lines: + array=line.split(",") + if len(array)>6 and not line.startswith("#"): + id=array[0] + name=array[1] + #print name + #print array[29:44] + sellprize = 0 + #hardcoded -.- fix it ! + sellprize += getvalueof(int(array[29]))*int(array[30]) + sellprize += getvalueof(int(array[31]))*int(array[32]) + sellprize += getvalueof(int(array[33]))*int(array[34]) + sellprize += getvalueof(int(array[35]))*int(array[36]) + sellprize += getvalueof(int(array[37]))*int(array[38]) + sellprize += getvalueof(int(array[39]))*int(array[40]) + sellprize += getvalueof(int(array[41]))*int(array[32]) + sellprize += getvalueof(int(array[43]))*int(array[44]) + mobs+=[(name,sellprize/1000.0)] + return mobs + +global_items=[] +global_items=make_items(); + +mobs=make_mobs(); + +for mob in mobs: + print mob[1],mob[0] |