Other sitesPhantasia GameBlitzkriegWoW RP ProfilerRage of Mages

HomeAbout the GameHistory

Phantasia.nl - Rage of Mages 2

Editor HelpPicturesFiles
Hat ServersLinksForum

Menu  Register  Login

Topic: NWN game coding is a problem

Navigation: Forums \ Rage of Mages 3

Author: Lord Atton (cosmclord [at] yahoo [dot] com)
Date: 07-Jun-10, 08:34:09
Gray Fox,

Nice explination of NWN and its limitations. I know Nova would like to over come the hard D&D rules. Hak paks do some of that, but there are many limitations.

Still I have seen few games in the D&D area the have "tools" as good as NWN. Short of writting your own game in C++ this is about as good as it gets.

Lord Atton
Author: the.gray.fox (the [dot] gray [dot] fox [at] hotmail [dot] com)
Date: 23-May-10, 01:36:17
(very long text ahead)

Hello NOVA.
Do not aim too high, or you hit only frustration.
It is wiser to start with a low aim and raise it slowly, until you miss.

It would be best if you told me more of the things you would like to do, but know not if you can do them.
Since I have time to write, I will throw loose answers.

- Classes
- Skills (those listed on your Skills tab)
These are not modifiable.
(^^ Disclaimer : I have to look _better_ into it. Not 100% certain right now)

- Feats
These are _greatly_ modifiable. You can do stuff with them that you have NO idea of.
Forget about names, requiremements to take, icons and their colors, and when/if they are granted automatically. All of this can be changed at will.
A few feats are hardcoded in the game, though (like Knockdown).
you may change how they look, but not how they behave.
To change their behavior is lot of work, because you have to create a substitute.
And you can not have the cute light-green rectangle shown around the feat icon when you activate it (like when you click on Power Attack).
And all custom feats will appear under the Class Special Abilities radial submenu.
You may specify which Classes will get to see it, at least.
Feats may also be given via script (no need to LevelUp)
And feats given via script, may be removed via script (no need to LevelDown).

- Spells
Much can be done to spells. I can tell.

- Combat system
This is completely hardcoded and handled by the game.
Most informations from it are exposed to the script layer, there for you to query and do stuff with.
But some things are not available.
For example you can not query what was the attack roll last made by a character.
Did he roll 1? Or 10? Did he hit or miss? You can not know.
But you can tell what gear he is using, or with which weapon he last hit someone, and other things.

- Re-skin of the game Graphical User Interface (GUI)?
You _can_ reskin it. Just provide new pictures to override the standard ones.
Of little use though.

- Adding new GUI elements (like a new button to do custom stuff)?
- RE-Programming of an existing GUI element?
- RE-Positioning of an existing GUI element?
None is possible.

- Cost of items, and their base properties like base damage roll, weight, name, et cetera. These are modifiable.
You can also introduce new items (including weapons), provide new descriptions, provide new (2D) graphics to display in game. If you are familiar with 3D modelling, you may also provide new models.

- Change how many inventory grid slots are added by a Bag item?
Can not be done. They are hardcoded to be 7x5 = 35. No more, no less.

- Modification or introduction of new Poison and Disease types.
You can do it, with some limitations. For examples, their DC can not be modified _while_ the game is running. Same for the stats that they afflict.

- New tilesets?
MANY exist. The hard part is not to use them. It is to get to know that they exist.
Better place to ask for this is surely the forums of BioWare.
There is a sub-forum section for custom-content-builders.
Or if you are good at searching, go at the nwvault website and look for tilesets.
Many of them are real high quality stuff.

- New sounds? New background musics?
You can provide those too. NWN can read Wav, Mp3 and some other format.

- Control of when (and which) a music background should play?
You can do it interactively via script.

- New SkyDome backgrounds?
- New LoadScreens for area transitions?
- New portraits?
Sure. They are just pictures. You provide them to the game, and you can use them.

- Control of Fog density and color?
- Want a clear wheather slowly turn into a sinister red fog?
- Want to suddenly start raining or storming?
You can do it interactively via script.

- Spawning of monsters without using encounters?
You can do it interactively via script.

- Cut-scenes?
You can do it interactively via script. Need some getting-used-to.

- Custom XP amounts awarded?
Completely customizable, as you saw in Rhun and Nordock.

- Display totally custom text inside the Journal?
That can be done via script. Only needs a prefab "dummy" entry to work on. Then the script can fill it with any text you compose on the fly.
Currently I _ignore_ if the text can be re-colored other than white.
Never tried. I think it is possible. But not sure.
(working with the Journal is flat easy. It is a crime to not take advantage of it)

- Want to introduce text "service" commands for your players to type in the chat-bar?
These are not necessarily cheat codes.
Do not forget you can do it. You may give your players a reminder of how to use them via journal.

- Want to introduce a hunger and/or a thirst system?
If people do not eat or drink they get sick. Or they get damaged. And the thing gets worse the more they refuse to eat or drink. Until they die all of a sudden. And next time they will learn to buy stuff to eat and drink.
Yes, this too can be scripted.

- Want to limit Resting to specific spots you design in your Areas?
Can be done. Do you remember my Resting Demo of some time ago?
That was a resting limited by-place, not by-time.
Could also be made by-place-and-time, of course...

- Want to limit the HP regained by Resting?
That can _not_ be done. The Resting process is hardcoded and invincible.
At most you can control the Resting to auto-cancel once you have regained X HP.
But the benfits of a full Resting may only come with a full Resting.
For example, spells are only recharged by a full Resting.

- Want to add random diversity to the stats of the packs of monsters you spawn?
Suppose you have a pack of goblins, all identical and spawned together.
How boring if they all have 12 HP, 10 AC, 3 Attack Bonus, et cetera.
But if you add randomly chosen boosts of randomly picked amounts...
Then one of those goblins may get a Constitution boost, with the side-benefits of it.
Another may get a boost to Discipline skill, and become immune to your Knockdown.
Another one may just get Temporary Hit Points plus an Attack Bonus increase.
Another one may get nothing.
You throw a Fireball at them... and maybe they do not go all down like bowling pins.

These examples are all I can think of right now.
Much more can be done.
If you have an idea, maybe that idea is not doable in a direct way.
But maybe we can find an indirect way that will work as good.

Author: NOVA (KINGKOTA666 [at] HOTMAIL [dot] COM)
Date: 21-May-10, 22:58:22
BTW, for those who wonder why the game seems to utterly favor fighters, it's the fault of the game system's reward (ie. XP) system. You want a game where mages, rogues, etc are on equal footing with the warrior, create a reward system that mirrors that desire and awards XP for those NON-combat actions.
Author: NOVA (KINGKOTA666 [at] HOTMAIL [dot] COM)
Date: 21-May-10, 22:53:15
Ok, I'm still working on my Module Design Document. But I'm having serious troubles with some limitations: both my understanding of what is possible and the inherent limitations of the game engine. I know what I WANT to have in my module, but I don't think I CAN have it.

I'll give you a "for instance".

1. I've always thought it was pure lunacy that you can gain more skills, feats, and raise your character abilities even though you may never have used those underlying skills... not one single time. Why should you gain in your ability to open locks when you have in fact NEVER even tried to open a lock before? Ideally, each skill should have its own XP tally (ironically similar to how ROM2 has separate XP numbers for each weapon and magic skill). But the NWN and the D&D game system simply does not allow for that.

I understand that D&D rules are a HUGE compromise. I've always thought they were just flat out stupid to be frank. And I was quick to replace most of those idiotic rules the moment I took over as the DM for our group back in high school. That's easily done in a pencil and paper game... not so in a computer game. The limitations and the collosal compromises of the D&D game system make logical sense when you have zillions of data bits to cope with in order to simulate a realistic environment. I understand that. Cumbersome game rules would simply impeed game play in the pencil and paper realm. But in the computer game realm, the computer handles all those tedious details and it does so almost instantly. There simply is no such need to make those crippling compromises in a computer game.

Anyway, that's one of my hindrences for drafting my Design Document.

2. A second beef I have is with D&D's tendency to become a pure "monty haul" game (for those who don't know that term, it essentially means the game is all about just kill the monster and take the loot....repeat repeat repeat). The reason this happens is not the fault of the players. It is the fault of the game engine (system). Look at how characters are rewarded. Nearly 100% of all XP gained come from killing something and likewise 100% for gaining wealth/gear comes from looting that dead foe. What sort of game do you expect to result from that kind of reward system? The only way around that right now is to bring the human element back into play and have live DMs proctoring a module. They can fudge the system and award extra XP to players to compensate for good role playing or use and practice of existing skills. But that simply does not work well for most PW modules. The PW module should be primarily a set it and forget it affair. Once again, we are back to severe (even crippling) limitations of the game engine. A reward system should exist which properly tracks and rewards use and practice with each skill.

The character classes themselves are a sad legacy from the D&D days of pencil and paper. There should be NO character classes what-so-ever. All characters should be comprised of:
A) race
B) physical/mental statistics (STR, INT, etc)
C) natural talents (those things the player has a natural affinity for)
D) learned skills

But once again, the game engine is in the way. I cannot craft a decent PW game module with such inherent limitations. Perhaps Gray Fox (or someone else) can suggest a way to solve these insurmountable obstacles???