Other sitesPhantasia GameBlitzkriegWoW RP ProfilerRage of Mages

HomeAbout the GameHistory

Phantasia.nl - Rage of Mages 2

Editor HelpPicturesFiles
Hat ServersLinksForum

Menu  Register  Login

Topic: A new NWN module

Navigation: Forums \ General Chat

Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 16-May-15, 12:42:48
Plus, he never told me what he thought of that coin mod I was working on -- All the genius ad artistry that went into it, for nothing.

The mod was never finished anyway. After cleverly solving yet another of the things thought impossible to tackle (in the most mod-unfriendly moddable game engine ever), I did stop in front of a logic problem about the "change".

And my Fox Spells was not a pain in the @SS to setup X(
You just added 1 line to a few scripts. A one-time operation.
If that was a pita I must wonder about his modding standards...

Author: NOVA (KINGKOTA666 [at] HOTMAIL [dot] COM)
Date: 16-May-15, 00:25:31
It's been almost another year gone by so I'll post again....I wonder what ever became of Simon's NEW module project. I'm curious to see what he had in the works. Could this be dusted off and restarted?

I'd LOVE to play this thing.

Author: NOVA (KINGKOTA666 [at] HOTMAIL [dot] COM)
Date: 15-Oct-14, 01:45:14
In case Simon ever checks here, I thought I'd ask what ever became of this project?

Author: Albadaran (simondekker [at] hotmail [dot] com)
Date: 24-May-10, 17:28:40
Today I added the Fox spell system to the basic module. A pain in the @$$, adding all these lines again. I'll save this basic set so I will be able to use it more in future. Now lets hope I don't choose different scripts later.

I was wondering if I should have used CEPT for more variation. Or if it's possible to add it later.

So nothing more so far. First the very basic of the mod needs to be ready: spellsystem, loot system, scripts to clear trash, to reset shops, etc.

The mod itself will consist of a series of chapters. With the exception of the starting maps, each chapter represents a short phantasy story. I use existing stories for this, e.g. from the Dying earth by Jack Vance. But that is still a long way to go...
Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 20-May-10, 19:04:18
You should make a backup of your character before you test something new.
I gave that for granted -- Next time I will not.


To get back all the GP you lost you can use one of the text commands I prepared.
Did you read the journal? It was told in there.

When you shop, all your coins are removed and converted into GP.
The opposite happens when you leave the shop.
Did you read the journal? It was told in there.

As for the gold that it is too heavy... the weights and the stackable sizes can be customized to anything you like.
Did you read the journal? It was told in there.
(have I annoyed you enough? :-)

So... aside from the above... and keeping in mind that you can modify a gold bag to the extreme, and make it carry like 350 million coins at 0.0 Lbs weight... do you think you can like it?

Author: Albadaran (simondekker [at] hotmail [dot] com)
Date: 20-May-10, 14:48:40
Lol, it just cost my chr almost all her gold: once she picked up a bag, and went to the shopkeper, all exisiting gold was dropped, and she cannot pick it up anymore because it's too heavy...

Also the inventory shows zero gold when the shop shows the gold she just picked up.

I don't know, it maybe not realistic to carry tons of gold around, but this is how the game works. One should be able to pay for expensive goods. So in terms of lbs: 100.000 gold = 1 lbs should probably be better...
Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 19-May-10, 22:15:53
Please check your e-mails.
I sent out the demo for a Gold Coins system I told of earlier.

Still unpolished -- but good enough to show.

Author: NOVA (KINGKOTA666 [at] HOTMAIL [dot] COM)
Date: 14-May-10, 20:20:43
Once again, pretty much ditto to what Gray Fox said.

It's quite clear that Albadaran and I do not envision the same thing in a NWN module. But so be it. How boring life would be if we all agreed 100% on everything, eh? I wish you well on your efforts to make this new module. I will endeavor to assist in any ways which I am capable and which you deem beneficial.

I do have a humble suggestion to offer. If you have not already done so, I would strongly suggest you draft a "Design Document" which lists the features, benefits, methods, standard nomenclature, naming conventions to be used, etc. Though this is a very difficult document to write, I suspect it would prove invaluable when tackling a large project such as your new module. It is especially necessary when more than one person will contribute to the finished product as it will establish standards and practices so that all participants are pulling the rope in the same direction. I am now on my 3rd attempt to draft such a document for my own module. The previous two drafts proved so difficult that I abandoned not only the Design Document but abandoned the module project itself. Let's hope I get farther along this time around. It sounds simple enough but it's surprisingly difficult to write one.

Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 14-May-10, 17:39:41
Hello Albadaran,

I made suggestions you may have found interesting.
But I knew you could reject them for a number of reasons.
So, no problem.
How is that they say? No hard feelings :-)
(my english improves daily)

Albadaran said:

-I trust Fox' magic system will provide enough 'power' to make players be able to slay high level monsters without supergear.

Fox says:
If you do not give those monsters Super Saving Throws, it is all fine.
Else you make another Rhun module. Be careful.

I thank NOVA for expressing a favorable opinion.
If we both find the time, we may work out something interesting for the "skilling and crafting" idea.
As I said, the scripting part is the easy one.
The difficult thing is to devise the underlying Rules to govern the mechanism.

For now I am experimenting with the idea that "gold should have a weight".
Making a tiny demo-module to showcase it. When ready I will e-mail it to you guys.

Albadaran may yet like it if he sees it in action :-)

Author: Albadaran (simondekker [at] hotmail [dot] com)
Date: 13-May-10, 15:59:35
Rpg's are merely escapism for real life. As such solutions don't need to meet logics out of real life. No role player asks him/herself how a monster got a +1 sword or how it was able to carry it anyway.

I see discussions like this in almost every (mmo)rpg forum. Mostly those advocating the system of Fox and Nova are bored about fast progress, and trying to make the game harder.

As for the moment, this is irrellevant. A singleplayer rpg won't have trading places for players. The 1 player has to find every item him/herself. Yet I agree that it should be not too easy, and items won't drop as much as in Rhun or Allods & Legends. And it will be *much* closer to traditional kitchen table rpg's!

This being said, what I have in mind -as for items- is this:

-No forges at all: players have to fight, do quests and be happy with what they get.
-Some quests will give decent (but not brilliant) magic items, low stuff on low level maps, better gear on high level maps.
-Every monster will have a very small chance to drop a magic item (and I really don't care how that monster got this item)
-I trust Fox' magic system will provide enough 'power' to make players be able to slay high level monsters without supergear.

So basically you will have to play the game without supergear, but there is always a small chance that you find something decent, or even good. Progress however does not heavily rely on beating high level monsters; It's an adventure, so doing the (story) quests is important. Although everyone is free to replay whereever he/she wants...

Quite a different opinion I realize and many things are yet to decide. But one thing I'm pretty sure of: no forging.
Author: NOVA (KINGKOTA666 [at] HOTMAIL [dot] COM)
Date: 13-May-10, 00:18:17
I could not agree more with Gray Fox on this point. He has eloquently articulated an argument for the "crafting" system for which I have long been an advocate. Because I am NOT a scripter (and therefore it is definitely NOT a trivial matter for me), I tried incorporating existing public crafting tradeskill systems into Rhun. They simply do not fit within the structure of Rhun. I therefore switched to hosting Nordock (because this module was specifically built around a particular crafting tradeskill system, ATS, Ambrosia Tradeskill System). That met with limited success as well for various reasons which are not pertinent to this discussion.

But the best solution in Nordock that I came up with to limit rampant creation of vast quantities of the crafted magic items was to make the actual recipe item an integral and consumed element in the crafting process. Lord Atton will recall that all of the Lindsay Gear for which I created crafting recipes required the actual recipe letter as well as all the other ingredients in order to make the item.

As to the LOW MAGIC environment, I also could not agree more. Much like my removal of all shops in ROM2 or my severe stripping of the shops in the current version of Rhun (the one with the Fox Spell system and which I have been hosting again since Saturday, Atton and I have experimented with making new character types and races). I believe virtually ANY and ALL magical items in the game should be specifically crafted by the players. Only normal items should EVER be available for sale anywhere in the world. And you should not be able to sell your magical creations either (except to other players). Who besides a wealthy fellow adventurer or a king has the wealth to afford a truly magical creation? In my thinking this applies to magical potions as well. If you want healing potions, you don't just pop down to the local church and buy them by the mule-drawn cart load, you craft them one at a time. Drinking 1000 potions of healing in order to survive a fight is just plain ridiculous and unrealistic.

Mind you, I think there should be natural healing scripted into the game (something which I believe I asked about several years ago) where you naturally heal a percentage (say 2% of your wounds per 24 hours of simulated game time. I believe I proposed this 2% healing be part of the resting process). Magic, herbs, salves, etc can of course then be used to accelerate this natural healing rate.

Here's the big problem I see with a "realistic" crafting system. The system should have basic rules (example, fire beetle bellies should contribute fire features or troll's blood should contribute regenerative bonuses, etc) and by mixing and matching these base qualities of the various raw components along with a specific recipe and perhaps a forge or other special tools...shazaam you craft a custom item. Such scripting with all the necessary error checking is FAR FAR FAR beyond my capabilities and will indeed be a very rules intensive and difficult system to concoct which is why I have previously abandoned such lofty ideas and instead opted for best achievable compromises. These custom creations should be namable by the creation. The cheap item renaming which I incorporated into the Etum Property Master in Rhun is a pale immitation of what I really wanted. But I'm not capable of scripting what I really wanted. I was capable of making the Property Master.

I realize I just came out of the shadows on this one, but I could not resist getting my 36 cents (2 cents 18 times over) into the discussion.

In simple terms, ditto to what Gray Fox said. I will be a strong advocate for incorporating any/all of these things.

Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 12-May-10, 18:05:28
An idea has been buzzing in my head for a long while.
But ideas are useless without a target to which to apply them :-)

So I propose this idea to you.
If you think it appropriate for your module, you use it.
Else, you do not.

The idea is to keep the amount of magical gear at Scrooge level.
People do not just go around and stumble on a Godly Monster Killer(TM).
For several reasons:
How did that uber item got there in the first place?
It surely belonged to someone, as such items notoriously have this habit.
So where the heck is its former owner?
Was he killed in battle?
Just WHO was so powerful to defeat someone armed with that uber thing?
And, by the way, where is this WHO now?
How come you can walk around and stumble on such a turbolent thing... and nobody is around to snatch your life before you can even notice that such item is so readily available??

See? Going around and randomly finding the good stuff is not believable.
As is not reasonable that you kill some strong beast, and she drops you the uber thing.
Why was not she using it AGAINST you?
Wait... why was she holding onto it in the first place?
Stupid beast are too stupid to understand what they stumble upon.
And smart monsters are supposed to make smart use of that thing: bash you with it!

So, it just is not believable that you can find any good stuff free for loot.

And then...
Characters in this game becone rather strong thanks to their feats and abilities.
Their powerful gear only provides more tools to do the thing faster -- in general.

So why not make a limited amount of Stores available?
And all Stores only sell a tiny variety of very basic non-magical gear?
Short swords, leather armors, tiny wooden shields... things like that.

Players could learn new (scripted) skills to procure themselves the better stuff.
Things like blacksmithing, metalworking, leatherworking, woodworking, bowyering... maybe alchemy too.
And these skills would give a player the ability to refine items from other items, and eventually "craft" their stuff.

Skills would improve with use (do not they say: practice makes perfect?).
At specific breakpoints a player may have refined a skill to the point that he gets access to better (and more difficult) "recipes" for crafting new stuff.
Recipes could be kept secret (maybe a bad idea), or be given away in form of soldable items (paper with instructions, books to read...)

Monsters killed may drop "components". Some Stores too may sell a subset of the most common components.
More components could be gathered from the environment.
To make things more interesting, it can be introduced the ability for players to break apart the items they have/find, and obtain raw components from them.

But my idea, in general, is to transform the Gold currency into something nearly useless.
To the point that there is no difference between having a 1000 GP or 20 millions GP.
(I always disliked the idea that a monster you kill may drop gold coins -- are GP part of its diet?).
Also, I am of the idea that Gold Pieces should have a "weight".
How many gold coins could you carry around without getting encumbered?
Gold is among the heaviest elements we know, is it not?
It can be scripted that if you carry too much gold, you get slowed down.

Well, these are loose ideas.
And if you choose to have them, you must think of a reasonable excuse to have them in your story.
Else they look and feel out of place -- therefore stupid.

Do not be concerned at the amount of scripting required for this.
That is a triviality.
The difficult part is to figure out which skills, which "recipes", which components, how do they combine to form what... that is: the "Rules" governing the mechanism.

Author: Albadaran (simondekker [at] hotmail [dot] com)
Date: 11-May-10, 20:52:15
With 'solo' I mean that there will be features in the game which can only be used by 1 person: the first one who is able to meet tne necessary requirements. E.g. it will be possible to 'build' a house and 'use' it, but only for 1 player. The reason is that I lack the knowledge of how to make this work for every player loggin in, and because I don't want to spend time in learning how to do this (and this is only 1 example, there will be more). Mind that no ideas are really worked out yet, so suggestions are welcome!

As for help: Painting maps (landscapes without scripting or items), monsters (only with the basic game items), suggestions for quests, questitems etc. are all welcome :)
Author: NOVA (KINGKOTA666 [at] HOTMAIL [dot] COM)
Date: 11-May-10, 16:40:04
I'd love to participate in this project as well. Though I fear we will suffer from the "too many cooks in the kitchen" syndrome if we are not careful. Therefore, I will promise to try in all ways possible to take a subservient role in this. And let me hereby apologize up front if my enthusiasm and my preferences (ego) get the better of me. Simply remind me in future that I am in a support role on this one. Now, having gotten the generic disclaimer out of the way....

When you say "solo" module, do you mean it will be meant to be played offline by a single person? Or do you mean it will be designed as a PW (Persistent World) module which is none-the-less possible for a solo person to complete all (or at least most) areas? I ask because that is a HUGE distinction difference.

Next, what can I do to help?

Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 11-May-10, 02:17:01
(this was intended to be a short reply. turned out to be another paper.
and the missing text formatting does not help the readability -- sorry)

A better explanation for number 3 and 4...
Let me see. How do I best say it?
Hm, number 4 is not as important as number 3 is, so you may ditch that part.
Anyway, for number 3:

You may want to "reset" a Store periodically to avoid that it gets chocked-full of sold items and becomes a Lag Fabricator(TM) every time a new item is sold at that Store.
Apparently, a fairly large amount of memory is consumed by each item spawned in the game.
Items are not just referred to by some magic and cheap index number.
That makes sense, in fact. How else could the game know that your two twin copies of the same armor you have, do differ in one tiny detail such as: one provides light and one does not?
No, the full configuration of each item is saved in memory.
So a Store full of items, is a Store that is eating up an outrageous amount of memory.
Try it yourself. Keep getting junk from monsters, and then keep selling it to the same Store.
Soon enough you notice a lag spike every time you sell more stuff to the Store.

The reset -how I call it- is the only way to truly fix this problem.
A reset is a simple: destroy the Store, spawn a new Store.
It is not a copy. It is a "kill the old one", "make a new one".
Can be scripted to occur every X time, very easily.

When you spawn an object from a Blueprint, you may keep the object as-is, or you may further customize it.
This ability is quite nice.
But it back-fires on you if the object in question is a Store.

Stores should never be customized after they are spawned.
If you need to make customizations, you should make them to the Blueprint directly.
Doing so you gain the ability to reset a Store whenever you want, and the newly spawned Store will be identical to the old one (save for the amount of junk that was lagging it).

But if you reset a Store you customized _after_ you spawned it... the reset will -obviously- cause your customizations to be lost. Because they were local to the _spawned_ copy of the Store, and not to the Blueprint from which you obtained the replacement Store.

Makes sense?

So you see why I say "if you need 30 different Stores, provide 30 different Blueprints".
Every time you need a Store that is in any way different from all other Stores you already have, do make a new Blueprint for that Store.
No matter if you are going to spawn only 1 such Store in your module.
Blueprints are cheap. They do not consume memory when you play.
Spawned copies of Blueprints do.
So, from a memory point of view, to have 30 Blueprints and 30 different Stores, or to have 1 Blueprint and 30 diffferently customized Stores: is the same thing.
The difference is in the ability to reset each individual Store.
With 30 Blueprints you can.
With 1 Blueprint common to all 30 Stores you can not (or you lose your customizations).

While I am at it, I add 2 more hints:

Lexicon version 1.69 is officially out. Seek it at the nwvault website.

Use the function SetXP() if you need to detract experience from a player (that is the only way to remove XP from anyone, anyway).
Use the function GiveXpToCreature() if you wish to award (add) experience to a player.

GiveXpToCreature() automatically takes into account any penalty from multiclassing.
If you used SetXP() instead, you should work out the adjustments by yourself.
In any case, if you wish to award XP and ignore the multiclass penalty, then you must use SetXP(). In this case I suggest you always leave a comment to explain if the call to SetXP() you are making is to award XP or if it is to remove XP.
This may make your modding easier at a later date when you add some 3rd party script that needs to do stuff when your players lose a character level.

For example, Fox Spells needs to do stuff when a player has dropped a level.
The modder must manually edit his scripts to insert the required hooks -- which displeases me to no end, but I can not do a thing for it.

But if the modder is far-sighted... he may do something foxy from the very beginning.
Like this:

void MySetXP (object oCreature, int nXpAmount)
SetXP (oCreature, nXpAmount);

It would centralize all calls to SetXP() into 1 place.
You would save this in an include of yours, and then make calls to your function MySetXP() instead of SetXP() directly.
So you may make 10000 calls to MySetXP(), but when you need to modify them all, you change code in 1 place only, and then recompile your scripts.
This is the maximum automation achievable, and you need no more than it anyway.

An actual example of a change you may want to make is:
void MySetXP (object oCreature, int nXpAmount)
int nPrevHD = GetHitDice (oCreature);
SetXP (oCreature, nXpAmount);
if (GetHitDice (oCreature) < nPrevHD)
// oCreature just lost 1+ level(s). Call the hook from Fox Spells.
ExecuteScript ("Fox_Spells_LvlDn", oCreature);

See how practical it is? ;-)
You change code in 1 place. It takes only 10 seconds.
But you introduce an important hook missing in the stock game.

I would do the same for any call you may make to ForceRest().
Wrap it inside a MyForceRest() -- just like I did for SetXP().
ForceRest() too is hooked by Fox Spells, by the way.

Author: Albadaran (simondekker [at] hotmail [dot] com)
Date: 10-May-10, 23:43:44
Thank you Gray Fox!

I am familliar with importing monsters and npc's, but I hoped there was a way to import the whole bunch instead of 1 by 1.

3 and 4: Can you explain why that is so important? Lag prevention perhaps?

Hak files: At least 1: your spell system. No plans for more yet. Rebuilding the module does not take long. But mail me your solution just in case I decide to add more hak files.

Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 10-May-10, 18:07:12
Hello Albadaran.

Any "Custom palette" resource you find in a module is -by design- a resource custom to that module.
As such it can not be found among the stock resources (the "Standard Palette") who came with the installation of the game (all Standard Palette resources are held within the BIF files located in your \NWN\data folder).

Thus, if you want a Custom Palette resource (that you saw somewhere) to be available in your new module, you must import it.

Suppose you saw the Monster YapYap in the Cool module.
You open the Cool module, then export the Monster YapYap to an ERF file.
ERF files can contain anything you can export from a module: monsters, whole areas, scripts...

Look into the Aurora Toolset menus for how to do it (there is an "export" voice somewhere).

Once you have exported your stuff to an ERF file, you can open your new module and do the reverse: import from the ERF file.

The process is very simple.
You hardly need my help to fill-in the missing details.
And currently I can not test it myself, anyway.

If you create a new module, might I give you a few hints that may save you lot of time in future?

Always put a script into the OnEnter and OnExit events of your areas. All your areas.
Try to reuse the same script names for the same events (for example I use fox_area_onenter and fox_area_onexit). Even if you do not have a use for these events, at the moment, still do put a script in them (you can keep their main() empty, if anything).
An empty script you do not need -> will not drain your resources, and will not steal time from you.
But an empty event that never got a script attached to it, will be a nightmare to fill once you have 50 or more areas.
Do not follow the Rhun example, where they got areas with scripted events, and areas without scripted events.
And among areas with scripted events they had 10 areas using a set of scripts, 20 areas using another set, and half the remaining areas using only this or that, or some weird mixture.
It would surely back-fire on you some day. So provide 1 (one) set of scripts, and reuse it for every area you make.

Keep a log somewhere of all the Stores you make. Simple informations like what it sells, what it buys, and where can this store be found (in your areas), and which NPC operate it, will save you lot of time the day you wish to make some module-wide modification to all stores.

Never. Never. NEVER make a store Blueprint, then paint it in your areas, then customize it.
If you do, you forfeit the ability to reset that store once it gets full of items and becomes a lag-maker.
If you need 30 different stores, then provide 30 different blueprints.
Here too, do not follow Rhun example.

As much as is possible, try to follow hint n.3 for your monsters and placeables too.
In general, never make a blueprint, then instance it in your areas, then customize the instance you painted.
All your customizations should belong to the blueprints themselves, so that no last-minute change is done to the objects physically spawned in your areas.

Keep log of all your Encounters. Informations such as what monsters they spawn, what is the difficulty, their numbers, and where these encounters are used (that is, which areas).
This will save you *hours* the day you decide to make a change to your encounters or (most likely) to the monsters they spawn.

Hm. Do you plan to add mutiple hak paks (but know not *how many* yet) to your module?
And are you familiar with hex editing?
If yes and yes, I have a nice trick for you. It lets you add new hak paks _without_ the need of rebuilding your module everytime you do so.
The job is quick and easy, but the explanation is long, and I need to show a few pictures along with it.
Maybe this is best told in an e-mail. So let me know if you are interested.

Author: Albadaran (simondekker [at] hotmail [dot] com)
Date: 09-May-10, 12:21:54
Although I'm very busy with playing some other games (Guild Wars & Evony) I would like to pickup the challenge of develloping an adventure with Fox's spell system. No need to tell that this will be a long term project :)

As for now some information.

-It will most probably be a single player adventure.
-There will be no testing like in my previous project
-Develloping a chr will be more like in the original NWN campaign; Much slower than in Rhun, but still faster than in the original game.

Before I start I need some information (probably from the Gray Fox):
-Until now I used an existing module as base for gameplay. For this new module I start from scratch, but I want to use the background (especially monsters) from all 3 campaigns: Core, Shadows and Hordes. How do I get that start? When I start a basic module in the editor it only uses the core set and nothing from Shadows or Hordes...
-Is there a way to get the complete monsterset from all 3 campaigns right at the start?

Of course, if someone is willing to help that would be great!