332 lines
13 KiB
Plaintext
332 lines
13 KiB
Plaintext
/*
|
||
ReadMe - OMEGA FORGE v2.3
|
||
|
||
|
||
******************************
|
||
* Installation Instructions *
|
||
******************************
|
||
|
||
1. Import the erf
|
||
|
||
2. Ignore the missing files "dm_inc_forge.ncs" and "dm_forge_config"
|
||
and "dm_forge_readme"- These files are includes
|
||
|
||
3. In previous versions, we've had a function called SetupForgeTokens()
|
||
in our onload event. As of v2.3, this is no longer needed. You should
|
||
remove this function from your onload event after importing.
|
||
|
||
4. Set up a door transition for players to enter the forge area
|
||
|
||
5. Open the file - "dm_forge_config"
|
||
|
||
This is the configuration file where you can tweek the system
|
||
to your liking.
|
||
|
||
cep) The first thing you need to do is tell the system whether your
|
||
using the CEP or not. If you ARE using the CEP do the following:
|
||
- uncomment the include line for zep_inc_main.
|
||
- set the USE_CEP constant to TRUE.
|
||
If your are NOT using the CEP, do nothing as the defaults are
|
||
NO cep
|
||
|
||
- the first constant is FORGE_MAX_ENHANCEMENTS. This is the
|
||
max number of item properties an item can have before
|
||
you can no longer forge it. Default is 8, but you can set
|
||
this as high or low as you want. Be warned, once an item
|
||
has this many, regardless of if they all were forged or
|
||
prebuilt, it can no longer be forged with any more.
|
||
|
||
- next is PAYMENT_METHOD. this one has been changed to an integer,
|
||
meaning it can only be set to any whole number. If set to 1,
|
||
then players will only need gold as payment for forging. If set
|
||
to 2, then players will need tokens (included with download)
|
||
You will need to dispurse these tokens for players if not using
|
||
gold. If you set this constant to 3, then PCs will need both gold
|
||
and tokens for payment of forging.
|
||
Please keep in mind that this must be set to either 1,2,or 3.
|
||
|
||
- next is FORGE_TOKEN_VALUE. This is only used if PAYMENT_METHOD
|
||
is 2 or 3. This tells the system how much each token will be
|
||
worth in gp for forging. Default is 15,000. Setting this lower
|
||
will make each mod cost MORE tokens, raising it will lower the
|
||
amount of tokens needed per mod.
|
||
|
||
- the next one is CASH_COST_MULTIPLIER, which is a float rather
|
||
than an int. This one is only used if PAYMENT_METHOD_GOLD is
|
||
TRUE. This constant is multiplied against the gold cost of the
|
||
mod to make it more expensive to forge items. Default is 10, so
|
||
if forging a mundane longsword (worth 30gp)and adding the +1
|
||
enhancement property (making it worth 1,648) then the cost in
|
||
gold by default would be 16,480gp.
|
||
This can be set as high as you want to make forging more
|
||
expensive, or as low as 0.1; which would make the above example
|
||
cost 1/10, or 165gp.
|
||
|
||
- this one is used only if using gold as payment. EPIC_COST_VAR.
|
||
It is a float that is multiplied against the ending balance
|
||
"IF" the item's level after forging will be epic. So if you
|
||
would like an increase of double costs for epic items, you'd
|
||
make this float 2.00
|
||
|
||
- next is the PROPERTY_REMOVAL_VAR, which is also a float. This is
|
||
used in conjunction with removing IPs from items. Setting this
|
||
below 1.00 will cause a very low cost to the remove each property,
|
||
setting it higher than 1.00, it acts as a multiplier just like
|
||
the CASH_COST_MULTIPLIER.
|
||
default is 1.00 equal costs (disabled)
|
||
|
||
- next is a set for visual effects costs. In previous version, the costs
|
||
of visuals was preset by me, now, you choose how much you want them
|
||
to cost the player. There are two settings, one for gold, one for
|
||
tokens. You need to set the one of the method your using :)
|
||
(the reasoning for this is that visuals have no real price increase
|
||
to measure costs, so we have to pick one ourselves)
|
||
|
||
- next is new with v2.3: the PLOT_UNFORGEABLE switch. This is a boolean
|
||
integer so you can set it to TRUE (on) or FALSE (off). If set to TRUE
|
||
(on), the any item with the plot flag checked, will be unforgeable.
|
||
This is good for those of you who have storyline weapons equivalent
|
||
to say excalibur, or ragnarok, and don't want PCs changing it.
|
||
It is controlled by an ondisturb script connected to the forges.
|
||
|
||
- next is another new addition in v2.3 that came with the new Cast-Spell
|
||
IPs system. LIMIT_SPELL_LEVEL is another boolean integer switch to be
|
||
turned on or off. If set to TRUE, then a PC will only be able to enchant
|
||
an item with a spell equal in level as if a wiz or cle of the PCs level
|
||
could cast. With me so far...? Ok, some examples :)
|
||
|
||
magic missles = 1st level spell castable by a 1st level wizard > so
|
||
a 1st level PC could enchant an item with it.
|
||
fireball = 3rd level spell castable by a 5th level wizard > so a 5th
|
||
level PC would be needed to enchant it onto an item.
|
||
implosion = 9th level spell castable by a 17th level cleric > so a 17th
|
||
level PC would be needed to enchant this spell onto an item.
|
||
|
||
Should you turn this off (FALSE), anyone with enough payment could
|
||
enchant an item with ANY spell.
|
||
|
||
- next is another new switch UNLIMITED_USES_ALLOWED. Simply put, making this
|
||
TRUE will allow PCs to add spells with unlimited uses/day. FALSE disables
|
||
this option from appearing. default is FALSE (disabled)
|
||
|
||
- a final addition in v2.3 is the ALLOW_TIME_STOP switch. Not every PW
|
||
(including my own) likes allowing this spell, therefore I've added this
|
||
switch to disable its availability as well. TRUE makes it available, FALSE
|
||
disables the option. default is FALSE.
|
||
|
||
- the next is a set of constants called -Item Level by gold value
|
||
constants- These are the values in gold for which an item's
|
||
level is measured. Choose a value in gold pieces for each level
|
||
from 1st thru 60th. There are three rules for these;
|
||
1- the values must be ascending starting from L_01
|
||
2- no value can be larger than the L_ANY constant
|
||
3- DO NOT, under any circumstance raise or change the L_ANY
|
||
constant (this is the highest signed integer that can be used
|
||
in nwscript)
|
||
These are defaulted to bioware's values, so if you use the default
|
||
ILR rules, then just leave these be.
|
||
|
||
- the last one is the -item's max level- constant. This one works off
|
||
the previous levels constants. To further limit the power of
|
||
items by level, simply use one of the constants from the -Item's
|
||
level by gold value constants-
|
||
Default is L_ANY which is 2,147,483,647. DO NOT raise this number,
|
||
it is the highest signed integer in nwscript.
|
||
|
||
last) Save and close the script. Do not compile it, it is an include
|
||
and will not compile.
|
||
|
||
6. Build your module! This is very important, most first time users
|
||
forget this part and then write me asking why their changes do not
|
||
work. You must do a module build to recompile all the systems
|
||
scripts correctly!
|
||
|
||
7. Save your module and enjoy.
|
||
|
||
|
||
******************************
|
||
* Implementation *
|
||
******************************
|
||
|
||
The system is conversation driven, and uses int to identify the item
|
||
property being added. It also uses the IPSafeAddItemProperty() function
|
||
with the ...REPLACE_EXISTING_PROPERTY... constant. Meaning, if a player
|
||
adds bonus fire damage 1d6, then later decides he wants more fire damage,
|
||
and adds bonus fire damage 1d10, this function will replace the existing
|
||
fire damage with the new value. This will NOT replace one damage with
|
||
another if the damage subtype is different, so you could have a weapon
|
||
that has fire 1d6, cold 1d10, acid 2d6 on it at one time, same with
|
||
skills, and all the others.
|
||
|
||
Lastly, the tokens themselves are stackable bullet items, and only
|
||
usable by outsiders, so unless you allow you PCs to change their race
|
||
to outsider, they won't be firing their precious forge tokens at enemies
|
||
... hehe :p
|
||
|
||
|
||
******************************
|
||
* Contents Location *
|
||
******************************
|
||
|
||
The erf will import the following custom files to the mod.
|
||
|
||
<20> Creatures <20>
|
||
|
||
<EFBFBD> Larry <20> TAG "omegasmith01" <20> Creatures(custom) > NPCs > Others
|
||
<EFBFBD> Moe <20> TAG "omegasmith02" <20> Creatures(custom) > NPCs > Others
|
||
<EFBFBD> Curly <20> TAG "omegasmith03" <20> Creatures(custom) > NPCs > Others
|
||
<EFBFBD> Joe <20> TAG "omegasmith4" <20> Creatures(custom) > NPCs > Others
|
||
<EFBFBD> Shemp <20> TAG "omegasmith5" <20> Creatures(custom) > NPCs > Others
|
||
|
||
<20> Items <20>
|
||
|
||
<EFBFBD> Forge Token <20> TAG "dm_ftoken" <20> Items(custom) > Plot Item
|
||
|
||
<20> Placeables <20>
|
||
|
||
<EFBFBD> Omega Forge (left) <20> TAG "omegaforge1"
|
||
<EFBFBD> Omega Forge (center) <20> TAG "omegaforge2"
|
||
<EFBFBD> Omega Forge (right) <20> TAG "omegaforge3"
|
||
<EFBFBD> Anvil (1st) <20> TAG "omegaanvil1"
|
||
<EFBFBD> Anvil (2nd) <20> TAG "omegaanvil2"
|
||
<EFBFBD> Anvil (3rd) <20> TAG "omegaanvil3"
|
||
<EFBFBD> Omega Chest <20> TAG "omegaforge4"
|
||
<EFBFBD> Anvil (4th) <20> TAG "omegaanvil4"
|
||
<EFBFBD> Omega Pool <20> TAG "omegaforge5"
|
||
<EFBFBD> Anvil (5th) <20> TAG "omegaanvil5"
|
||
|
||
All placeables are found here:
|
||
<EFBFBD> Placeables(custom) > Special > Custom 1
|
||
|
||
<20> Area <20>
|
||
|
||
<EFBFBD> Omega Forge <20> TAG "omegaforge"
|
||
<EFBFBD> Dungeon tileset: has one doorway for transitions
|
||
|
||
|
||
******************************
|
||
* Support *
|
||
******************************
|
||
|
||
Please send any questions, comments/suggestions, or bug reports to:
|
||
|
||
eckerj@sbcglobal.net
|
||
|
||
NOTE: If you change ANY scripts other than the config file, please
|
||
don't send me "bug reports". This will be considered unsupported.
|
||
|
||
|
||
*****************
|
||
* RELEASE NOTES *
|
||
*****************
|
||
|
||
BETA v0.1
|
||
|
||
<EFBFBD>First wrote
|
||
|
||
BETA v0.5
|
||
|
||
<EFBFBD>Fixed bug where it wasn't replacing existing same type properties.
|
||
Thanks to Thales Darkshine and SunJammer for their assistance on this.
|
||
<EFBFBD>Public Release
|
||
|
||
BETA v0.7
|
||
|
||
<EFBFBD>Fixed bug where a PC was still charged for adding an item property
|
||
that would decrease an existing property.
|
||
<EFBFBD>Fixed bug where visual effects were being added for free
|
||
|
||
|
||
BETA v0.9
|
||
|
||
<EFBFBD>Changed conversation flow near end to allow faster upgrading
|
||
<EFBFBD>Fixed calculation bug that was charging PCs for decreasing an
|
||
itemproperty's bonus (again)
|
||
<EFBFBD>Adjusted calculations of mod cost to use floats rather than int's
|
||
for more accurate math; system compares the floats before
|
||
converting it to int for final cost
|
||
<EFBFBD>Rewrote most custom functions to use base 10 division and modulos
|
||
remainders; Though not very noticeable, this should be more
|
||
performance friendly for online play (plus it shortened the include
|
||
by about 450 lines of code or so, hehe)
|
||
|
||
|
||
v1.0
|
||
|
||
<EFBFBD>Added constant int toggle to choose whether gold or tokens are used
|
||
as payment
|
||
<EFBFBD>Full release
|
||
|
||
v1.1
|
||
|
||
<EFBFBD>Added CASH_COST_MULTIPLIER constant float for better price control
|
||
when using gold.
|
||
<EFBFBD>Fixed exploit of free modifying; exact details will be held until
|
||
confirmation of fix.
|
||
<EFBFBD>Fix issue with gloves and enhancement bonuses; they don't except them.
|
||
<EFBFBD>Added Attack Bonus modification for gloves in particular; and other
|
||
weapons if PC so wishes.
|
||
-Thanks to scarface for his catch of free modifying; and his addition
|
||
of the gold cost multiplier constant float.
|
||
|
||
v1.2
|
||
|
||
<EFBFBD>Fixed bug with custom tokens being overwritten if two players where
|
||
forging at exact same time.
|
||
<EFBFBD>Added three conditional scripts for above bug.
|
||
<EFBFBD>Added new function for Cost custom tokens in convo. Make sure to add
|
||
this to the onload event of your module
|
||
<EFBFBD>Added compatability for CEP melee weapons
|
||
|
||
v2.0
|
||
<EFBFBD> Added new config script
|
||
<EFBFBD> Added new switch to choose whether or not to use the CEP
|
||
<EFBFBD> Added custom token in convo telling what the items new level will be
|
||
<EFBFBD> Added customizable ILR chart to measure items levels
|
||
|
||
v2.1
|
||
<EFBFBD> Added fix to PAYMENT_METHOD_GOLD not charging for mods.
|
||
thanks to scarface for this fix
|
||
<EFBFBD> Added new ability - Regenerate to forge options. This can be added
|
||
to most items, not weapons though
|
||
<EFBFBD> general maintenence of some functions
|
||
|
||
v2.2
|
||
- Added removal feature to ILR Chest
|
||
- Added EPIC_COST_VAR to increase costs of epic forged items
|
||
- Added PROPERTY_REMOVAL_VAR for use in removing IPs costs
|
||
|
||
v2.3
|
||
- Fixed major bug/exploit that appeared in multiplayer
|
||
- Added 3rd payment option. Now you can charge a player both gold and tokens.
|
||
- Added switch to disallow forging of plot marked items
|
||
- Removed the setupforgetokens() function from system as its no longer needed
|
||
- Added 5th smith,(Shemp) Cast-spell IPs are now apart of the Omega Forge.
|
||
FINALLY!
|
||
Now forge your own wands, staves, or even add spells onto armor or rings.
|
||
- Added Mighty to forge options. Can be added to ranged weapons.
|
||
- Added Feat, Skill, and Cast-Spell removal features.
|
||
- Added switch to disallow Time Stop availability
|
||
|
||
|
||
|
||
|
||
*****************
|
||
* CREDITS *
|
||
*****************
|
||
|
||
A special thanks to the following for their help and additions to this
|
||
system:
|
||
|
||
Scarface - for the additions of the gold vs token toggle allowing a
|
||
builder to decide whether payment should be tokens, or gold; and for reporting
|
||
many major exploits of the OmegaForge project.
|
||
Darkshine and SunJammer - for their assistance in debugging the
|
||
replace existing properties feature, and timing of costs thereof.
|
||
Realms of Netheria PW creator (Phunic) and staff - for being the first to
|
||
use/test (try to break) the forge during beta testing of the system.
|
||
|
||
|
||
*** I hope you enjoy it! ***
|
||
OmegaDM (Zdm)
|