1. SPS Accounts:
    Do you find yourself coming back time after time? Do you appreciate the ongoing hard work to keep this community focused and successful in its mission? Please consider supporting us by upgrading to an SPS Account. Besides the warm and fuzzy feeling that comes from supporting a good cause, you'll also get a significant number of ever-expanding perks and benefits on the site and the forums. Click here to find out more.
    Dismiss Notice
Dismiss Notice
You are currently viewing Boards o' Magick as a guest, but you can register an account here. Registration is fast, easy and free. Once registered you will have access to search the forums, create and respond to threads, PM other members, upload screenshots and access many other features unavailable to guests.

BoM cultivates a friendly and welcoming atmosphere. We have been aiming for quality over quantity with our forums from their inception, and believe that this distinction is truly tangible and valued by our members. We'd love to have you join us today!

(If you have any problems with the registration process or your account login, please contact us. If you've forgotten your username or password, click here.)

Neverwinter Nights Forum News

Discussion in 'Game/SP News & Comments' started by NewsPro, Apr 9, 2004.

  1. NewsPro Gems: 30/31
    Latest gem: King's Tears


    Joined:
    May 19, 2015
    Messages:
    3,599
    Likes Received:
    0
    (Originally posted by chevalier)

    Here are today's Neverwinter Nights forum highlights. Please take into account that these are only single parts of various threads and should not be taken out of context. Bear in mind also that the posts presented here are copied as-is, and that any bad spelling and grammar does not get corrected on our end.

    Georg Zoeller, Designer

    Multiple servers: I think using multiple servers (hardware) or server instances (same machines) for large modules is recommended - it's the original idea we had with NWN - running a hub module and distributing adventurers to other areas, worlds, servers, planes, whatever. The main problem why this never became too popular was persistency (IMO) - people want their world to be consistent and persistent, more than was originally expected (I'm guessing here, I wasn't working at Bioware when this was discussed). Things have changed since then. We have BWDB - granted it's not the fastest way of storing data and not really helpful if you have a lot of players, stuff going on - but it has it's merits (i.e. you can use it move henchmen between servers with a player. Then there is NWNX2 and it's cool plugins, which allows for virtually 100% persistency between your worlds. And there are variables on items...However, it's not an easy task to split your world once it has been created and you need to put a lot of work into the management for inter server communications - but if you do, you can achieve a couple of things a "one module" approach can't deliver.

    - Expansion areas: You can make areas in your world that are only accessible by players with the expansion pack - doesn't sound too exciting, but think of it this way: This allows you to run a "plain vanilla" main area where people can enter your server, get a feel for it and engage in your world even if they have just NWN, maybe not even a hakpak. You still can make use of special tilesets and features in the expansion packs for all those who have them installed by running expansion servers

    - Rolling changes/hotswapping. You can close off certain areas in your world for modification without having to put down your server - you even could completely replace one part of your world on the fly (i.e. that nice elven kingdom with a twisted version after it was run over by the drow armies)

    - Management overhead - Smaller modules result in less managment overhead. Two 50MB modules have an edge over the single 100MB module, at least when it comes to game

    - More players - through this forces you to cleverly design your world to make sure players are distributed over it - but that can be helpful as well, it's not really desirable to have all your 64 players concentrated in one spot anyway.

    - Different rules. You can have very different rulesets on different servers, ranging from different difficulty settings to pvp rules to modified .2da's in a different hakpak.

    Nice features and clever world design can lessen the impact a multi server world has on your players. Distinctive design borders between the modules/areas running on different servers help (i.e. an "underdark" server or "the continent overseas" server) as they can simulate distance / travel time. Using NWNX you can allow communication between server by providing things like a "pigeon postal service" to deliver information to player on another server. NWNX2 also can help to create portal lists (i.e. that chalkboard at the habour to the "new world" where every player who is currently playing on the "new world server" is listed) - so players can find their friend much easier. As for performance - that's probably more for the Linux forum - it should be possible to create a script that "renices" process priority of empty servers - cutting cpu usage by empty servers down.


    Quivers:

    Quote: Didn't DLA already make dynamic quivers?


    Yepp, but I think they used the armor appearance changes to add a neck part with the quiver. In any case they pointed out that using VFX could allow the community to do these things far more efficiently and that you should be able to add your own VFX and specify if they align with the player instead of overriding the few effects that were hardcoded to do so. So yes, a properly constructed VFX could probably used to simulate all kinds of neat equipment like quivers, sheath, exploded heads or even cars, coaches or ships (no more weird polymorphs). We experimented with that stuff in Hordes a bit (check the last entry in visualeffects.2da) and found some interesting use for it.


    Delay Commands:

    On DelayCommands:

    There is no hard rule what's better or worse DelayCommands or Using heartbeats - each way of scripting has it's own merits, but there are a couple of common misconceptions. If you take a 6 second heartbeat and replace it with a 6 second delay command chain, you will most likely not see any improvement, you would probably have a small performance hit as there is a management overhead for running those delayed commands. If there are a lot of pending delayed commands, I can set things becoming problematic (Tim can surely say more about that than I can). A situation you might want to avoid is something like delaying several commands up for execution in an OnHitCastSpell script or any other event a player might get influence over the execution frequency - especially OnHitCastSpell can run out of control very fast (the usual high level weapon master in the crowd of goblins). So just not using heartbeats will not give you any performance gain, you need to be careful and profile actual script execution.


    Get*ObjectInShape troubles: Just wanted you scripters to know that GetFirst / GetNextObjectInShape have been identified to cause problems in some very specific setups.

    If you have something running a GetFirst/GetNextObjectInShape loop
    AND
    This loop runs a damaging effect on NPCs
    AND
    the damaging effect is NOT delayed

    There is the potential for a corruption of the "current object pointer" that is used for that loop, causing it to ignore certain objects in the area of effect and maybe further instabilities. This problem will probably be fixed in a future patch and there are a few scripts that are affect by this which will be changed with the patch as well. In the meantime, if you have scripts that match those conditions outlined above (most likly only custom spell or trap scripts), you should make a minor change to them to prevent the problem from happening. Example if your script looks like this:

    o1 = GetFirstObjectInShape
    while (GetIsObjectValid (o1))
    {
    effect eDamage = EffectDamage(d6());
    ApplyEffectToObject( DURATION_TYPE_INSTANT,eDamage,o1);
    }
    o1 = GetNextObjectInShape

    Change it to

    o1 = GetFirstObjectInShape
    while (GetIsObjectValid (o1))
    {
    effect eDamage = EffectDamage(d6());
    DelayCommand(0.0f,
    ApplyEffectToObject( DURATION_TYPE_INSTANT,eDamage,o1);
    )
    }
    o1 = GetNextObjectInShape

    Do not remove the creation of the damage effect inside the delayed part of the function, it would detach it from the creator.


    Action commands: Any Action* scripting command a creature executes is added to a list of pending actions. If I have a script that does:

    ActionMoveToLocation
    ActionSpeakString("I'm here");

    A character will first move to the specified location and then speak "I am here". Setting the commandable flag on a creature to FALSE means that the list of actions the creature has can no longer be changed until the flag is revoked. This means that the creature will continue to do what is on it's list and then stop. Even commands like ClearAllActions that empty the list of actions of a creature will not work. Using this flag you can construct actions that can not be interrupted by a PC. IF a player would attack a creature with this flag set, the creature will ignore it and not enter combat, because it has been told not to allow any changes to it's current action list.


    Further:

    currently we can not give any eta on 1.63, could be a few days, could be several weeks - it depends on a lot of different factors. Thanks for your patience, the wait should be worth it.

    Jay Watamaniuk, Community Manager

    Dual-wielding vs sword & shield: This is a much debated topic. I like duel-wielding but thre are some pretty big downsides as I see it:

    Good things:

    1. With all your feats (i.e. Two-Weapons fighting) and proper weapons (i.e.at least one light weapon) the overall -2 to hit for each weapon is pretty low even at moderate levels.
    2. The chance to get another roll to hit at the low levels with that extra weapon is the biggest advantage. At higher levels however you do get several attacks in a round and one more might not be a big deal.
    3. If you use only one weapon for both hands (i.e. Short sword) you can get double the value out of any feats you take that focus on that weapon.

    Bad things

    1. Nobody but the Fighter get a lot of feats and you may not want to spend your precious feats on this when there are a lot of things you want to grab.
    2. You lose all benefits of having a shield for AC and any potential magical properties that it may have (especially at higher level with better loot). Being able to take one more swing instead of, say, +5 AC, Fire Resistance and Cure Serious Wounds seem a pretty big sacrifice. On that note you also lose the ability to hold anything in that other hand (a torch for example).
    3. As mentioned you will have a lot of attacks at higher level anyway- did you want to spend, at minimum, 4 levels of feats for one more attack?


    Epic Builds: Well hey there everybody. I was given a heads up on this particular thread as something I might want to step and defuse. Yes, that's the word used- defuse. I must admit I'm a little surprised that the group that is, by my estimation, the very skilled hard core fans would have such concerns about whether content they have helped to create will be featured or that I have dismissed their work wholesale. The reason I am surprised is that I had assumed that most everyone here are experienced with BioWare development process, scheduling and the Wed content queue. The CODI interview we published this week was completed over a month ago, the d20 interview was even older than that. Sometimes material is completed well ahead of time and other times content is rather last minute as unscheduled changes get made.

    As for the Epic Builds I think they are an excellent resource that has generated massive discussion, renewed interest in high level modules and campaigns and given me a new assortment of top-flight content to add to this web site. I personally think they are very cool for the amount of detail that they show. I have recently completed the last two of the four epic builds I have received over the last few weeks to our web mark-up master. Despite opinion to the contrary each build requires a certain amount of time to prepare in terms of screenshots and web mark-up. I have received the latest epic build this week 'Puff the Magic Dragon' which I did recommend that the name change because it is simply safer and easier to go with a completely new name over an established name. As for Summoned Red Dragon as the new name I have not decided yet as I'm sure you have noticed that all of the Epic Builds have a two word name such as Damage Adept or Reliable Archer and keeping that convention adds a certain amount of style to the page.

    This may be a little out there as far as some people do not really care about such things but...part of my job is keeping material that is published at a certain level of quality. This is why sometimes work on the screens, for example, might be far more work than any sane person would ever want to devote to one screen but that is what is important to me. So with Puff I have 5 epic builds in the queue. You will have also noticed I 'm sure that the last time we ran the Epic Builds items we gave out two a week for three weeks and you now know how fussy I am about synchronicity...


    Further:

    I see my post did not have the intended effect of explaining in a way how things work out for Wed items. What I was hoping for was that folks would get the idea that I like the epic builds and that they are on the schedule along with other items and we do try to follow a schedule so we on the production side of things can plan for the coming Wed by preapring stuff now. Last minutes things are generally crappy and may contain horrible errors that are unprofessional. We do our best to avoid this by getting an item ready ahead of time, and checking it with a critical eye before we publish it a zillion people. Things take time. If there is an upcoming item that you have a personal stake in you can be assured that it has not been forgotten but may have been pushed back because other item came up before hand that had a time issue associated with them

    As an aside, this quote:

    Quote: Jay is a Bioware employee, and as such, his opinion (or that of another Bioware employee) on this subject is the only one that matters. We (community) have our personal opinions, but they don't really matter.

    Is incorrect. I've said it before and, evidentally, I'll just have to keep on saying it. You people are only reason we keep our doors open. You buy our stuff. I think it makes sense to listen to you. If you do not like our stuff then we all must find other jobs. In fact I can prove that the voice and power of the community is of a reconized importance to Bioware...I have a job. My title as Community Manager says that they are willing to hire someone to oversee this section of the gaming world. Now I think Torias said it best with his we need to settle down here. The epic builds are very cool and headed your way as I helped to get them into the line up for upcoming weeks. I'm very glad they are so popular with folks. They are popular with us too.

    So once again to review:

    The epic builds are coming. We listen to your opinions. I was hired as proof BioWare thinks you're all important. Every time we release a game we want you like it. I like pie.


    Jonathan Epp, Quality Assurance

    SetSkyBox: For this particular function (SetSkyBox), I was the one who asked Craig to put it in. I thought it was a good idea, and definitely saw the value in having such a function. It's possible Craig had even seen a request for such a thing on the boards before I asked him though. I know I saw a request for it here shortly after that. And that request I saw had another interesting little suggestion that I hadn't thought of that just might get in...So in other words, these boards are a good place to post suggestions. It's not the only place we go looking for ideas (we have minds of our own too, you know!), but we do lurk around sometimes to pick out a few things from time to time...

    Less used features:

    Quote: Scripting? Use F2 to complete a line (I use it all the time when typing the lengthy DURATION_TYPE_TEMPORARY lines in coding. Also eliminates most spelling errors, as long as you know the first three letters of the words. Works for constants, functions, etc. Double-clicking the words in the right-hand box also adds them nicely.


    Do many people know about this? To me, this is one of the most useful little features the toolset has - anybody who does scripting should use this. To expand on Eldernurin's comments, hitting F2 will open up a list. If you have started typing a few letters, it will select the first thing starting with those letters, or the closest thing to it if there is no exact match. Use the arrow keys to find exactly what you want, and hit enter. The list will contain all functions, constants, and variables. This includes both the default ones (nwscript), as well as any in include files that are being used, and in the currently open file. If any don't show up, you may just need to save out the script file so that the editor will re-read what's currently in it. The Filter option on the right can also affect what is shown in the list, so make sure the Filter field is empty if you can't find what you're looking for.


    Don Moar, Tools Programmer

    Encounters:
    I'm not sure if it still works this way (been a while since I tested this), but we originally planned for encounters to be triggerable by NPCs. The thought was that an individual player would activate the encounter and spawn-in some bad guys, then they would trigger their own encounter and spawn in reinforcements for the player. (Think the cavalry coming over the hill to rescue the player.)

    Tim Smith, Programmer

    TMIs: TMIs are only generated when the current script running requires more than a preset number of NWScript instructions. It has nothing to do with real execution time.
     
    Last edited by a moderator: Jan 4, 2018
Sorcerer's Place is a project run entirely by fans and for fans. Maintaining Sorcerer's Place and a stable environment for all our hosted sites requires a substantial amount of our time and funds on a regular basis, so please consider supporting us to keep the site up & running smoothly. Thank you!

Sorcerers.net is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to products on amazon.com, amazon.ca and amazon.co.uk. Amazon and the Amazon logo are trademarks of Amazon.com, Inc. or its affiliates.