diff options
-rw-r--r-- | db/const.txt | 1 | ||||
-rw-r--r-- | db/item_db.txt | 13 | ||||
-rw-r--r-- | db/skill_db.txt | 77 | ||||
-rw-r--r-- | npc/001-1_Tulimshar/bleacher.txt | 6 | ||||
-rw-r--r-- | npc/009-2_Hurnscald/selim.txt | 8 | ||||
-rw-r--r-- | npc/018-2_Woodland_mining_camp/caul.txt | 4 | ||||
-rwxr-xr-x | tools/aligncsv.py | 48 |
7 files changed, 91 insertions, 66 deletions
diff --git a/db/const.txt b/db/const.txt index cd756b84..07027254 100644 --- a/db/const.txt +++ b/db/const.txt @@ -217,6 +217,7 @@ SKILL_LUCKY_COUNTER 351 SKILL_SPEED 352 SKILL_RESIST_POISON 353 SKILL_ASTRAL_SOUL 354 +SKILL_WARRIOR_BERSERK 355 // Magic skills SKILL_MAGIC 340 diff --git a/db/item_db.txt b/db/item_db.txt index a73ad081..e0e0fb92 100644 --- a/db/item_db.txt +++ b/db/item_db.txt @@ -269,7 +269,7 @@ 755, AssassinShirt, Assassin Shirt, 5, 10000, 3000, 15, , 10, , -5, 0, 2, 512, , 0, 0, {}, {callfunc "UnreleasedItem";bonus bAgi, 10;} 756, AssassinGloves, Assassin Gloves, 5, 7000, 2000, 9, , 5, , -3, 0, 2, 4, , 0, 0, {}, {callfunc "UnreleasedItem";bonus bAgi, 5;} 757, AssassinBoots, Assassin Boots, 5, 7000, 2000, 10, , 5, , -3, 0, 2, 64, , 0, 0, {}, {callfunc "UnreleasedItem";bonus bAgi, 5;} -758, WoodenStaff, Wooden Staff, 4, 4000, 2000, 1000, 50, , 1, 5, 0, 2, 2, 1, 1, 3, {}, {} +758, WoodenStaff, Wooden Staff, 4, 4000, 2000, 1000, 50, , 1, 5, 0, 2, 2, 1, 1, 10, {}, {} //759, PaladinsHelmet, Paladin's Helmet, , , , , , , , , , , , , , , {}, {} //760, OverlordsHelmet, Overlord's Helmet, , , , , , , , , , , , , , , {}, {} //761, DesertHelmet, Desert Helmet, , , , , , , , , , , , , , , {}, {} @@ -560,6 +560,16 @@ 2207, OrangeWizardHat, Orange Wizard Hat, 5, 5000, 2500, 20, , 5, , 5, 0, 2, 256, , 1, 0, {}, {bonus bInt, 3;} 2208, PurpleWizardHat, Purple Wizard Hat, 5, 5000, 2500, 20, , 5, , 5, 0, 2, 256, , 1, 0, {}, {bonus bInt, 3;} 2209, DarkGreenWizardHat, Dark Green Wizard Hat, 5, 5000, 2500, 20, , 5, , 5, 0, 2, 256, , 1, 0, {}, {bonus bInt, 3;} +2210, RedBowlerHat, Red Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2211, GreenBowlerHat, Green Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2212, DarkBlueBowlerHat, Dark Blue Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2213, YellowBowlerHat, Yellow Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2214, LightBlueBowlerHat, Light Blue Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2215, PinkBowlerHat, Pink Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2216, BlackBowlerHat, Black Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2217, OrangeBowlerHat, Orange Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2218, PurpleBowlerHat, Purple Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +2219, DarkGreenBowlerHat, Dark Green Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} 3000, JackOLantern, Jack-o-Lantern, 3, 200, 100, 1000, , , , , , , , , , , {}, {} 3001, RubberBat, Rubber Bat, 3, 200, 100, 30, , , , , , , , , , , {}, {} 3002, RealisticBrain, Realistic Brain, 3, 200, 100, 50, , , , , , , , , , , {}, {} @@ -605,4 +615,5 @@ 4028, WizardHat, Wizard Hat, 5, 5000, 2500, 20, , 5, , 5, 0, 2, 256, , 1, 0, {}, {bonus bInt, 3;} 4029, DementiaPotion, Dementia Potion, 3, 20, 10, 10, , , , , , 2, , , 0, , {}, {} 4030, BowlerHat, Bowler Hat, 5, 2500, 1250, 30, , 10, , 2, 0, 2, 256, , 0, 0, {}, {} +4031, Monocle, Monocle, 5, 5000, 2500, 20, , 2, , 0, 0, 2, 256, , 0, 0, {}, {bonus bDex, 1;bonus bAtkRange, 1;} diff --git a/db/skill_db.txt b/db/skill_db.txt index 93a6e567..91bf1405 100644 --- a/db/skill_db.txt +++ b/db/skill_db.txt @@ -1,43 +1,40 @@ -//# This file can be imported to OpenOffice or similar as a "comma separated list (.csv)" -//# So please use only(!) commas to separate different fields. -//# and DO NOT use any kind of whitespace to make it miss-formated. -//# Just use a serious csv editor! -//id,range,hit,inf,pl,nk,maxrse,max,list_num,castcancel,cast_defence_rate,inf2,maxcount,skill_type,blow_count,pool,stat,name -1,0,0,0,0,0,0,1,0,no,0,0,0,none,0,no,none,Emote//NV_EMOTE -2,0,0,0,0,0,0,1,0,no,0,0,0,none,0,no,none,Trade//NV_TRADE -3,0,0,0,0,0,0,2,0,no,0,0,0,none,0,no,none,Party//NV_PARTY -4,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,no,none,X0//SM_SWORD -6,0,0,0,0,0,0,10,0,no,0,0,0,none,0,no,none,X1//SM_RECOVERY -11,0,0,0,0,0,0,10,0,no,0,0,0,none,0,no,none,X2//MG_SRECOVERY -38,0,0,0,0,0,0,10,0,no,0,0,0,none,0,no,none,X3//MC_INCCARRY -39,0,0,0,0,0,0,10,0,no,0,0,0,none,0,no,none,X4//MC_DISCOUNT -40,0,0,0,0,0,0,10,0,no,0,0,0,none,0,no,none,X5//MC_OVERCHARGE -50,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,no,none,X6//TF_DOUBLE -51,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,no,none,X7//TF_MISS -54,1,6,4,0,0,0,100,1,no,0,1,0,none,0,no,none,X8//TF_POISON -144,0,6,4,0,1,0,1,1,no,0,1,0,none,0,no,none,X9//NV_FIRSTAID -146,0,0,0,0,0,0,1,0,no,0,1,0,none,0,no,none,X10//SM_MOVINGRECOVERY -148,0,0,0,0,0,0,1,0,no,0,1,0,weapon,0,no,none,X11//SM_AUTOBERSERK -152,0,6,4,0,1,0,1,1,no,0,1,0,weapon,5,no,none,X12//TF_BACKSLIDING -178,1,6,4,0,0,0,100,1,no,0,1,0,none,0,no,none,X13//NPC_POISON -190,1,6,4,0,0,0,100,1,no,0,1,0,none,0,no,none,X14//NPC_POISONATTACK -198,0,0,4,0,1,0,10,1,no,0,2,0,magic,0,no,none,X15//NPC_SUMMONSLAVE -199,0,0,4,0,1,0,10,1,no,0,2,0,none,0,no,none,X16//NPC_EMOTION -3390,0,0,0,0,0,3,0,no,0,0,0,none,0,no,none,Skill_Pool//SKILL_POOL -340,0,0,0,0,0,0,5,0,no,0,0,0,magic,0,no,none,Magic//TMW_MAGIC -341,0,0,0,0,0,0,5,0,no,0,0,0,magic,0,no,none,Life_Magic//TMW_MAGIC_LIFE -342,0,0,0,0,0,0,5,0,no,0,0,0,magic,0,no,none,War_Magic//TMW_MAGIC_WAR -343,0,0,0,0,0,0,5,0,no,0,0,0,magic,0,no,none,Transmutation_Magic//TMW_MAGIC_TRANSMUTE -344,0,0,0,0,0,0,5,0,no,0,0,0,magic,0,no,none,Nature_Magic//TMW_MAGIC_NATURE -345,0,0,0,0,0,0,5,0,no,0,0,0,magic,0,no,none,Astral_Magic//TMW_MAGIC_ASTRAL -350,0,0,0,0,0,9,10,0,no,0,0,0,weapon,0,passive,agi,Brawling//TMW_BRAWLING -351,0,0,0,0,0,9,10,0,no,0,0,0,weapon,0,passive,luk,Lucky_Counter//TMW_LUCKY_COUNTER -352,0,0,0,0,0,9,10,0,no,0,0,0,none,0,passive,agi,Speed//TMW_SPEED -353,0,0,0,0,0,9,10,0,no,0,0,0,none,0,passive,vit,Poison_Resistance//TMW_POISON_RESISTANCE -354,0,0,0,0,0,9,10,0,no,0,0,0,magic,0,passive,int,Astral_Soul//TMW_ASTRAL_SOUL -45,0,0,0,0,0,9,10,0,no,0,0,0,weapon,0,passive,dex,Mallard's_Eye//AC_OWL -28,0,6,4,0,1,0,2,1,yes,0,0,0,magic,0,no,none,Teleport //AL_TELEPORT -30,9,6,16,0,1,0,10,1,yes,0,0,0,magic,0,no,none,Heal //AL_HEAL +//id, range, hit, inf, pl, nk, maxrse, max, list_num, castcancel, cast_defence_rate, inf2, maxcount, skill_type, blow_count, pool, stat, name +1, 0, 0, 0, 0, 0, 0, 1, 0, no, 0, 0, 0, none, 0, no, none, Emote//NV_EMOTE +2, 0, 0, 0, 0, 0, 0, 1, 0, no, 0, 0, 0, none, 0, no, none, Trade//NV_TRADE +3, 0, 0, 0, 0, 0, 0, 2, 0, no, 0, 0, 0, none, 0, no, none, Party//NV_PARTY +4, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, weapon, 0, no, none, X0//SM_SWORD +6, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, none, 0, no, none, X1//SM_RECOVERY +11, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, none, 0, no, none, X2//MG_SRECOVERY +38, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, none, 0, no, none, X3//MC_INCCARRY +39, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, none, 0, no, none, X4//MC_DISCOUNT +40, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, none, 0, no, none, X5//MC_OVERCHARGE +50, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, weapon, 0, no, none, X6//TF_DOUBLE +51, 0, 0, 0, 0, 0, 0, 10, 0, no, 0, 0, 0, weapon, 0, no, none, X7//TF_MISS +54, 1, 6, 4, 0, 0, 0, 100, 1, no, 0, 1, 0, none, 0, no, none, X8//TF_POISON +144, 0, 6, 4, 0, 1, 0, 1, 1, no, 0, 1, 0, none, 0, no, none, X9//NV_FIRSTAID +146, 0, 0, 0, 0, 0, 0, 1, 0, no, 0, 1, 0, none, 0, no, none, X10//SM_MOVINGRECOVERY +148, 0, 0, 0, 0, 0, 0, 1, 0, no, 0, 1, 0, weapon, 0, no, none, X11//SM_AUTOBERSERK +152, 0, 6, 4, 0, 1, 0, 1, 1, no, 0, 1, 0, weapon, 5, no, none, X12//TF_BACKSLIDING +178, 1, 6, 4, 0, 0, 0, 100, 1, no, 0, 1, 0, none, 0, no, none, X13//NPC_POISON +190, 1, 6, 4, 0, 0, 0, 100, 1, no, 0, 1, 0, none, 0, no, none, X14//NPC_POISONATTACK +198, 0, 0, 4, 0, 1, 0, 10, 1, no, 0, 2, 0, magic, 0, no, none, X15//NPC_SUMMONSLAVE +199, 0, 0, 4, 0, 1, 0, 10, 1, no, 0, 2, 0, none, 0, no, none, X16//NPC_EMOTION +339, 0, 0, 0, 0, 0, 0, 3, 0, no, 0, 0, 0, none, 0, no, none, Skill_Pool//SKILL_POOL +340, 0, 0, 0, 0, 0, 0, 5, 0, no, 0, 0, 0, magic, 0, no, none, Magic//TMW_MAGIC +341, 0, 0, 0, 0, 0, 0, 5, 0, no, 0, 0, 0, magic, 0, no, none, Life_Magic//TMW_MAGIC_LIFE +342, 0, 0, 0, 0, 0, 0, 5, 0, no, 0, 0, 0, magic, 0, no, none, War_Magic//TMW_MAGIC_WAR +343, 0, 0, 0, 0, 0, 0, 5, 0, no, 0, 0, 0, magic, 0, no, none, Transmutation_Magic//TMW_MAGIC_TRANSMUTE +344, 0, 0, 0, 0, 0, 0, 5, 0, no, 0, 0, 0, magic, 0, no, none, Nature_Magic//TMW_MAGIC_NATURE +345, 0, 0, 0, 0, 0, 0, 5, 0, no, 0, 0, 0, magic, 0, no, none, Astral_Magic//TMW_MAGIC_ASTRAL +350, 0, 0, 0, 0, 0, 9, 10, 0, no, 0, 0, 0, weapon, 0, passive,agi, Brawling //TMW_BRAWLING +351, 0, 0, 0, 0, 0, 9, 10, 0, no, 0, 0, 0, weapon, 0, passive,luk, Lucky_Counter //TMW_LUCKY_COUNTER +352, 0, 0, 0, 0, 0, 9, 10, 0, no, 0, 0, 0, none, 0, passive,agi, Speed //TMW_SPEED +353, 0, 0, 0, 0, 0, 9, 10, 0, no, 0, 0, 0, none, 0, passive,vit, Poison_Resistance //TMW_POISON_RESISTANCE +354, 0, 0, 0, 0, 0, 9, 10, 0, no, 0, 0, 0, magic, 0, passive,int, Astral_Soul //TMW_ASTRAL_SOUL +45, 0, 0, 0, 0, 0, 9, 10, 0, no, 0, 0, 0, weapon, 0, passive,dex, Mallard's_Eye //AC_OWL +355, 0, 0, 0, 0, 0, 9, 10, 0, no, 0, 0, 0, weapon, 0, passive,str, Beserking //SKILL_WARRIOR_BERSERK implemented +28, 0, 6, 4, 0, 1, 0, 2, 1, yes, 0, 0, 0, magic, 0, no, none, Teleport //AL_TELEPORT +30, 9, 6, 16, 0, 1, 0, 10, 1, yes, 0, 0, 0, magic, 0, no, none, Heal //AL_HEAL // maxrse describes the max. level that the skill can be raised to through the `raise skill' option. Further raising has to happen via quests. // maxrse < max. // `pool' can be `no', `active', or `passive'. diff --git a/npc/001-1_Tulimshar/bleacher.txt b/npc/001-1_Tulimshar/bleacher.txt index b877642d..68707f65 100644 --- a/npc/001-1_Tulimshar/bleacher.txt +++ b/npc/001-1_Tulimshar/bleacher.txt @@ -34,6 +34,7 @@ L_bleach_menu: "Cotton gloves", L_cotton_gloves, "Rabbit ears", L_rabbit_ears, "Wizard Hat", L_wizard_hat, + "Bowler Hat", L_bowler_hat, "Nevermind", -; goto L_close; @@ -112,6 +113,11 @@ L_wizard_hat: set @dyeBase, 2200; goto L_choose_color; +L_bowler_hat: + set @normal, 4030; + set @dyeBase, 2210; + goto L_choose_color; + L_choose_color: mes "[Candide]"; mes "\"And the color?\""; diff --git a/npc/009-2_Hurnscald/selim.txt b/npc/009-2_Hurnscald/selim.txt index 7c39a2ab..de02de0d 100644 --- a/npc/009-2_Hurnscald/selim.txt +++ b/npc/009-2_Hurnscald/selim.txt @@ -32,6 +32,8 @@ L_clothes_choice: "Cotton boots", L_cottonboots, "Cotton gloves", L_cottongloves, "Rabbit ears", L_rabbitears, + "Wizard hat", L_wizardhat, + "Bowler hat", L_bowlerhat, "I'm fine for now, thanks.", -; close; @@ -129,6 +131,12 @@ L_wizardhat: set @name$, "wizard hat"; goto L_picked_item; +L_bowlerhat: + set @del, 4030; + set @new, 2210; + set @name$, "bowler hat"; + goto L_picked_item; + L_picked_item: if (countitem(@del) == 0) goto L_havenone; L_colour: diff --git a/npc/018-2_Woodland_mining_camp/caul.txt b/npc/018-2_Woodland_mining_camp/caul.txt index c0b84544..2949c0e9 100644 --- a/npc/018-2_Woodland_mining_camp/caul.txt +++ b/npc/018-2_Woodland_mining_camp/caul.txt @@ -942,10 +942,6 @@ L_check_explosion: // and multiply with 3 so there is definitly no chance to get it directly after starting set @prob, (@prob * @prob) * 2; L_check_exp_nof: - - //TODO remove next message: - mes "check explosion: + " +@prob +" / 1000"; - // in about 95% of the cases anything is fine, so return. if (rand(1000) > @prob) return; // in some cases it is not: diff --git a/tools/aligncsv.py b/tools/aligncsv.py index ce63a988..54bcd9d4 100755 --- a/tools/aligncsv.py +++ b/tools/aligncsv.py @@ -33,10 +33,11 @@ for x in range(length): #find the longest entry in each line in each position for lineno in range(len(lines)): - sp=lines[lineno].split(",") - for pieceno in range(len(sp)): - sp[pieceno] = sp[pieceno].strip() + "," #for the comma add a char - textarray[-1][pieceno] = max(len(sp[pieceno]),textarray[-1][pieceno]) + if not lines[lineno].strip().startswith("//") or lines[lineno].strip().startswith("//id"): + sp=lines[lineno].split(",") + for pieceno in range(len(sp)): + sp[pieceno] = sp[pieceno].strip() + "," #for the comma add a char + textarray[-1][pieceno] = max(len(sp[pieceno]),textarray[-1][pieceno]) if tabs: #make it divisable by 8 (tabs work then) @@ -45,24 +46,29 @@ if tabs: textarray[-1][pieceno] = (((textarray[-1][pieceno])/8)*8)+8 for lineno in range(len(lines)): - sp=lines[lineno].split(",") - for pieceno in range(length): - textarray[lineno][pieceno] = "" - if pieceno<len(sp): - sp[pieceno]= sp[pieceno].strip() - if pieceno<len(sp)-1: - sp[pieceno]= sp[pieceno] + "," - - if (tabs): - n=(textarray[-1][pieceno]-len(sp[pieceno])) - textarray[lineno][pieceno] = sp[pieceno] - if (n%8) != 0: - textarray[lineno][pieceno] += "\t"*((n/8)+1) + if not lines[lineno].strip().startswith("//") or lines[lineno].strip().startswith("//id"): + sp=lines[lineno].split(",") + for pieceno in range(length): + textarray[lineno][pieceno] = "" + if pieceno<len(sp): + sp[pieceno]= sp[pieceno].strip() + if pieceno<len(sp)-1: + sp[pieceno]= sp[pieceno] + "," + + if (tabs): + n=(textarray[-1][pieceno]-len(sp[pieceno])) + textarray[lineno][pieceno] = sp[pieceno] + if (n%8) != 0: + textarray[lineno][pieceno] += "\t"*((n/8)+1) + else: + textarray[lineno][pieceno] += "\t"*((n/8)) else: - textarray[lineno][pieceno] += "\t"*((n/8)) - else: - n=(textarray[-1][pieceno]-len(sp[pieceno])+additionalspaces) - textarray[lineno][pieceno] = " "*(n) + sp[pieceno] + n=(textarray[-1][pieceno]-len(sp[pieceno])+additionalspaces) + textarray[lineno][pieceno] = " "*(n) + sp[pieceno] + else: + for pieceno in range(length): + textarray[lineno][pieceno] = "" + textarray[lineno][0]=lines[lineno].strip() fname = sys.argv[2] |