Choose Your Language

Friday, 26 June 2009

Roll Up! Roll Up!

What a week! Editing 2da files is a laborious task. Hopefully, however, after my long search and many calculations to try to make the cost of items more “reasonable”, I am nearing the end. It was an encouragement to have Rob McGinnis (McGnome) point out in a comment that even they found this “a pain”. (It’s good to know I struggle with the best.) Besides that, I have taken time to improve my Scalable System a little further, to now include a way to allow crafters to increase the power of an item they craft at an extra cost. Lastly, I have added a new GUI to replace the previously edited official “Store” GUI that gives extra information about a store. Check out each section that may interest you below.

The Cost of Items

First of all, let me share with you all the 2da files I have edited so far (that appear to have an impact on the cost of items), and information I have learned about them. I currently have the following edited 2da files sitting in my override folder:

Armorrulestats: To alter cost of masterwork & mithral items.
Baseitems: To correct shields costs and alter the ItemMultiplier factor where needed.
Iprp_arcspell: To alter arcane failure costs. (5-50%)
Iprp_bonuscost: To alter ability costs. (1-12)
Iprp_chargecost: To alter costs related to number of uses and charges.
Iprp_damagereduction: To alter damage reduction costs. (1-40)
Iprp_damagetype: To alter factors involved with various damage types. (Cold etc.)
Iprp_feats: To alter costs of feats.
Iprp_immuncost: To alter cost of immunity percentage. (5-100%)
Iprp_immunity: To alter cost of a specific immunity. (Poison etc.)
Iprp_meleecost: To alter enhancement value costs, including AC. (1-20)
Iprp_resistcost: To alter damage resistance costs. (Resist 5/- to Resist 50/-)
Iprp_skillcost: To alter costs of skills (ranks). (1-50)
Iprp_spellvcost: To alter costs of spell level related benefits. (0-9)
Iprp_spells: To alter spell costs. (A factor that can vary with other files.)
Iprp_srcost: To alter spell resistance costs. (10-40)
Iprp_weightcost: To alter weight reduction costs. (1-80%)
Itempropdef: Contains a factor used in calculating costs. (*)
Itemprops: To correct (remove) some invalid property entries from the toolset. (*)

(*) My thanks go to Sunjammer for extra information regarding these two files, as they have a number of errors that can confuse the builder. I recommend their download and use. For more information, visit Sunjammer’s website.

I am not sure how many more 2da files there may be left to consider, as I am only part way through checking the effect of my alterations on the costs of items. However, I can say that with these altered files, the costs have dropped considerably and cover most of the items I have checked to date. I did have to revise my original cost values for the Iprp_spells file I reported last week, as I learned they had a large impact on items that could cast spells. However, after a little more alteration, the costs settled down again. I do still have a number of craft items to check costs on, but now that the core costs have settled down, I hope to check these costs some time next week and correct any that don’t make sense.

The Scalable System

If you read the blog last week, you may have noticed that I have slightly altered some of my original idea to help form a better overall system. I decided to do this to allow the possibility of being able to buy items (scrolls, potions or wands) that would cast at a higher level if the PC paid a higher price for said item. For example, a PC can now buy a Potion of Cure Light Wounds at any level the store has available and gain the advantages of the more powerful brew after paying more for it. Check out the screen shot below to see a store with two different versions of the Cure Light Wounds potion. NB: Paying extra for such a little difference in benefit may not be worth it in many cases, but in cases where duration is subject to caster level, then paying extra for a longer duration may be worth considering.

However, the real benefit of this system is for when a PC crafts a scroll, potion or wand. Upon completion of the crafting (and if scaling for the spell cast is possible), the player will be offered a new GUI for them to pay extra to ensure the item crafted will cast at a minimum level when used. (See screenshot.) Note that levels offered will be between 1 and 19th level, with levels incapable by the caster and levels below a minimum innate level of the spell being made “unavailable”. This will be very useful for PCs who can craft items such as Wand of Fireballs, and want to ensure the fireball cast from it meets a minimum level. The same holds true for crafted scrolls and potions too. There are two caveats for crafted items, however:

1) A minimum level only applies to damage/cure amounts and/or duration. Spell Resistance and DC rolls are still based on the users spell capabilities or the item’s innate caster level. (The lowest caster level required to cast the spell.)

2) Merchants, if they even entertain buying crafted items, will not normally pay more than it costs to make an item at its lower level costs.

In the last day, I have been editing the spell scripts that require the extra code to handle this, and testing has proven everything works fine. Scrolls still cast at the caster’s highest spell capability, whereas potions and wands now cast at the level they have been crafted. In the case of a scroll having a minimum level higher than the caster’s highest caster level, then the scrolls minimum cast level will be used instead.

Store Information

In a previous blog, I showed you how I had extra store information shown in its title bar. Well, now I have introduced a new GUI that will open at the time of purchase that will allow a player to trade more efficiently. It will show such things as “Store Gold”, “Maximum Buy Price” and “Identify Costs”. Check out the screen shot for a visual.


Anonymous said...

That crafting system is lovely.

Why do they only go up at an odd numbered level? Is there some reason for that?

In any case, upgrading existing scrolls/wands is a good idea. Impressive(if not boring to make) stuff.

Lance Botelle (Bard of Althéa) said...

Hi Chaos Wielder,

Thanks for the encouragement. :)

There is no real reason for the odd numbered progression, except it made a slighlty smaller GUI and I just felt every other level would suffice. ;) If people felt there was a need to do every level, it would be easy enough to redesign I suppose.

The only real reason I got into this side of crafting was due to the cost issues I came across and then recognising the official way did not handle the scaling side very well as it stood.

Hopefully, now I have the main code in place, I should be getting back to other less "boring" stuff soon.