ACR Release Notes v1.81

From ALFA
Jump to: navigation, search

New Systems

  • A new graphical interface has been added to DM clients, which allows DMs to create and customize NPCs with control over build and appearance.
  • KEMO Chairs
  • A new graphical interface has been added to the multiplayer chat window which allows control over languages through the default chat window. In addition, the chat window now accepts text commands to select language.

Enhanced Systems

  • The ALFA spawn system now supports spawn types of Encounter (5), Triggers (6) and Lights (7)
  • The multiplayer chat window now accepts text entries of up to 4000 characters, upgraded from 255. It should compare to the Client Extender’s chat input for length, it being at 4096, but not necessarily for functionality (as the default multiplayer chat window will still not accept copy/paste commands).

Fixed Systems

  • RPXP no longer gives double rewards surrounding lag and crashes.
  • The quarantine system is now able to handle missing location data correctly, and quarantine characters who have logged onto the wrong server without a valid saved location.
  • The module load event now clears old/stale character data from previous instances of the module.
  • The DMFI wealth tool now reads PC wealth, instead of the value of the helmet slot times the number of items in the PC’s inventory. The Omega wand is still inaccurate, and should be considered unsupported and depreciated.
  • PC wealth is now logged in the “wealth” column of the “characters” table; it previously consistently logged “0.”

Fixed Spells

  • Mage Armor now treats its AC bonus as armor, instead of armor enhancement.
  • Previously, wall of dispel magic listed minute/lvl for duration, and cast at round/lvl. Now it casts and lists at minute/lvl
  • The VFX on Barkskin has been made more subtle, in an attempt to bring the spell closer to its description of “makes a creature’s skin as tough as bark” and not necessarily “turns a creature’s skin into bark.”
  • Panther Shape, having been removed by OE for NWN2, is restored to functionality.

Removed Spells

  • Glass Doppleganger has been removed from the wizard spell list. It is now only mechanically available through items.

New Feats

  • Craft Construct**

New Soundsets

  • Flaming Fist (611)
  • Amn Guard (612)
  • Helmite Cleric (613)
  • Villager (614)

New Monster Abilities

  • A "Shadow Touch Attack" is available as a feat to be given to monsters of the same name. It used a touch attack to do 1d6 strength damage, and kills the target if strength is reduced to 0.
  • Two new perception ranges, named “PC – 10” and “PC – 5” have been added. They represent perception ranges that are nearer to PC perception range than was available previously.

Mechanical Fixes

  • Kobolds are now treated as small (instead of medium) creatures.
  • Goblins are now treated as small (instead of medium) creatures.

Performance Enhancements

  • Log writes to the SQL database are now performed asynchonously, so that they may be sent in batches. As a result, server performance should be markedly improved during combat and player login events.

Structural Changes

  • We now have a repo, which we may use to handle branching, commits, and checkouts to help manage the development of ALFA's core content.
  • We now compile scripts for inclusion in the haks in the process of preparing the haks for distribution. This reduces the likelihood of a fix "not taking" when it is pushed out. This does have the potential to create changes in behavior to logs and spawns; we believe that these changes will all be fixes, but oddities should be reported to Ronan.
  • We now have a complete build system that handles our custom content, managing the compiling of scripts and the movement of resourecs into hak files.
  • We now host the dmfi_* scripts inside of the haks. These are necessary for our new build system (above) and may be used to fix some of the bugs in the dmfi systems.
    • This is a “placeholder,” and has no effect without DM support.

Tutorials

NPC GUI (a.k.a. zSpawn)

The NPC GUI is intended to be relatively simple in its use-- the basic structure of the GUI’s use is as follows:

  1. DM opens the GUI by clicking the “ZSPAWN” button, which appears on the upper left corner of the screen
  2. DM uses the GUI to select gender, alignment, class, race, and appearance of the expected NPC, if desired. Any selection not made will be random, except alignment, which will default to neutral unless some aspect of race or class prevents that. Paladins, for example, will always spawn as Lawful Good.
  3. DM gives the NPC a name and description, if desired. If neither are specified, the resulting NPCs will appear as nameless.
  4. DM clicks a number corresponding to the number of HD that he or she would like the NPC to have. If the “Natural Level” button is used, the NPC will be created with the number of hit dice specified in the Monster Manual or, in the case of races which advance by class and have no natural hit dice, as level 1.
  5. The DM GUI will spawn an item into the DM’s inventory. Using this item will give the DM two on-use powers: Spawn One and Spawn 2d4.
    1. If Spawn One is used, a single NPC will be created. It will use the class selections under the assumption that the DM wishes the NPC to have all of those classes, and will take up to three of them. The spawning scripts will typically favor more-skilled classes, as is the consequence of functionality to make the first level be in the class with the most skill points. The infrastructure existing in the NWN2 engine does not support leveling in a fourth class, even though uniquely-tooled NPCs and PCs are not so limited. If no classes are selected, the NPC will be single-classed, and the class will be random.
    2. If Spawn 2d4 is used, 2d4 NPCs will be spawned (That will be 4-6 spawns 62.5% of the time.) It will assume that a group consisting of NPCs of the selected classes is desired, and each NPC will have one class selected from the options. If no classes are selected, each NPC will have a random class from the options available.

Caveats:

  • Races which do not advance by class (for example: shadows) will ignore selections for class made.
  • Races which have a HD cap (for example: ghouls) will treat all HD values above the maximum as the maximum value.
  • Races which have a HD floor (for example: gnolls) will treat all HD values below the minimum as the minimum value
  • “Advanced” races, such as humans or dwarves, will be equipped by the ALFA-defined “low end” wealth for characters of their level. DMs should be extremely careful with these NPCs, as most PCs are not currently accustomed to (or equipped for) fighting NPCs with level-appropriate gear.
  • “Primitive” races, such as orcs or goblins, will be equipped by the ALFA-defined “low end” wealth for characters of half their level and will never use heavy armor.
  • Mindless or animalistic races, such as ghouls, will not use any equipment unless the DM actively equips them with something (they have the proficiencies to do so, should a DM equip them).

Known Deficiencies:

  • Upon switching between races, the GUI does not “reset” selections made for appearance, and the last interaction with the GUI related to appearance will be treated as valid. For example, if you selected hair color #1 on an elf, and then switched to dwarf, the dwarf appearance panel would still show hair color as random. However, all dwarves would spawn with the same hair color.
  • The initial process of loading the GUI is fairly-performance-intensive, as the client must negotiate many objects being added to the screen. DMs on less-performant machines may notice that the window appears to ‘freeze’ briefly while it loads. DMs on modern computers will not typically notice more than a brief stutter. Opening the GUI after this first time is less demanding, and typically happens without any measurable performance damage.

Language System

The language system enhancement is designed to be as simple as possible. A new button has been added to the multiplayer chat window, which now lives beneath the channel selection buttons. It can be identified as the “@” button. When clicked, it will bring up a panel in the center of the screen which lists the available languages to the character. Clicking one will cause the character to begin to speak that language, and will assume that any text entry, which is not indicated as being some other language, will be in that default language.

The language system enhancement will also now accept text entries prefaced with abbreviations for languages, and will treat the following text as being of that language. This setting takes priority over the default language selected through the GUI. That is, if one were to click the “@” button and select Chondathan as the default language, and then type “@elf Hello world!” into the chat window, the character will attempt to say “Hello world!” in elven: subject to the character’s ability to speak elven, of course.

The language will appear in the same channel that is used to send it, provided that the channel is in character. Language use, thus, may now be used in normal talk, party chat, and whispers. It may not be used on the DM channel, in tells, in shouts, or on the server channel.

It is worth note that, while this system supports all of the languages that the DMFI tools do, there are no current options for player characters to acquire Leetspeak or Thieves’ Cant.

The language abbreviations are as follows:

  • @com – Common
  • @anm – Animal
  • @ass – Assassin
  • @aby – Abyssal
  • @alz – Alzhedo
  • @aqu – Aquan
  • @aur – Auran
  • @alg – Algarondan
  • @can – Thieves’ Cant
  • @cel – Celestial
  • @che – Chessentan
  • @cho – Chondathan
  • @chu – Chultan
  • @dwa – Dwarven
  • @dro – Drow
  • @drs – Drow Sign
  • @dru – Druidic
  • @dra – Draconic
  • @dam – Damaran
  • @dmb – Dambrathan
  • @dur – Durpari
  • @elf – Elven
  • @gno – Gnome
  • @gob – Goblin
  • @gia – Giant
  • @gnl – Gnoll
  • @hlf – Halfling
  • @ign – Ignan
  • @hdr – Halardrim
  • @hlr – Halruaan
  • @ill – Illuskan
  • @ims – Imaskarran
  • @inf – Infernal
  • @l37 – Leet
  • @lan – Lantanese
  • @lor – Loross
  • @mid – Midani
  • @mul – Mulhorandi
  • @nth – Netherese
  • @rsh – Rashemi
  • @ser – Serusan
  • @sha – Shaaran
  • @sho – Shou
  • @syl – Sylvan
  • @ter – Terran
  • @tre – Treant
  • @tsh – Tashalan
  • @tui – Tuigan
  • @tur - Turmic
  • @orc – Orcish
  • @nex – Nexalan
  • @yti – Yuan-Ti
  • @und – Undercommon
  • @ulu – Uluik
  • @unt – Untheric
  • @vas – Vaasan

KEMO Chairs

The use of KEMO chairs from the end-user perspective is simply a matter of selecting options from the provided GUI.

Builders who wish to make use of the KEMO chairs system will find templates on the page’s documentation: ftp://neverwintervault.org/rolovault/projects/nwn2/nwn2scripts/235/index.html

The provided templates are designed to be placed, though the documentation for KEMO itself will be more robust than the release notes. The core scripts, GUI, GUI scripts, and animations are part of this hak release.