ALFA Hak Release, version 1.81

Scripted ALFA systems & related tech discussions (ACR)

Moderators: ALFA Administrators, Staff - Technical

Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

ALFA Hak Release, version 1.81

Post by Zelknolf »

So, as I post this, we have two servers (MS and BG) up on the new haks, with a third on the way. To keep the common ALFAn aware, we have release notes available.

If there are questions on this, the tech staff has sort of divided ourselves into specialties for this update. If there are questions about any given feature, the person who was most likely to have made it would be divided like so:
Acadius -- updates, ADL, hosts
Basilica -- stability, compilers, hak build system
Ronan -- spawns, database writes, the repository
Zelknolf -- GUI, usability

We have, of course, all had our dirty dirty mitts in one another's work, and there's a possibility of any given person knowing what's going on in any given piece of this update.

The official notes for this update are as such:
Change Log
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.

* It is, technically, upon the DMA to rule the viability of Glass Doppleganger as a spell cast item. It seems to be a generally-accepted opinion that the spell provides excessive metagame information and is significantly more powerful than other spells of its level in an environment such as ALFA's.
** This is a “placeholder,” and has no effect without DM support.

Updating
For Players:
The process is as always. Log in to an upgraded server. Wait for auto downloader magic.

For Builders:
1. Acquire the new haks and load the module with the new scripts in use.
2. File > Compile > All Scripts in Module
3. Save. Ship it off.

For Hosts:
1. Badger the builders until they provide an updated module.
2. Acquite the new haks and place them in nwn2server’s hak folder.
3. Acquire packages.2da and place it in nwn2server’s override folder.
4. Inform tech team of readiness; switchover should not happen until ADL server is ready.

Tutorials
NPC GUI
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.
6a. 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.
6b. 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:
http://nwvault.ign.com/View.php?view=Nw ... ail&id=235

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.
Veilan
Lead Admin
Posts: 6148
Joined: Mon Jan 05, 2004 3:33 pm
Location: UTC+1
Contact:

Re: Hak Release, version 1.81

Post by Veilan »

Awesome job, teach team - you continue to make this a better and better game.

Thank you!
The power of concealment lies in revelation.
User avatar
Galadorn
Haste Bear
Posts: 2483
Joined: Sat Feb 07, 2004 9:10 am
Location: Hefei, China

Re: Hak Release, version 1.81

Post by Galadorn »

Thank you all, you're like magicians of the NWN2 world, and your tireless dedication and obvious love of this game we all play cannot be thanked more. Cheers times 1 million+1.

~Matt
*Grand Master of Cheese*
Image
[causk] ((play games over the internet?)) yea, wouldnt recommend that. internet is for porn and weird people.
[DarkHin] There is always a tenth spot for evil.
Ronan
Dungeon Master
Posts: 4611
Joined: Sun Feb 20, 2005 9:48 am

Re: Hak Release, version 1.81

Post by Ronan »

A few more notes:
The spawn system now supports encounters, triggers and lights. The ACR_SPAWN_TYPE integers for these objects are 5, 6, and 7.

Parts of the ACR were not being compiled, leading to uncertain behavior of some systems (mostly log writes). This has been fixed, and the ACR now compiles completely. If anyone notices any oddities relating to log writes or the spawn system, please let us know.

Character wealth should now be logged in the database in the "wealth" field of the "characters" table. I hope to use this information to show people that crafting is not, in fact, The Devil.

Module-side faction changes should now work. Just don't ask us why they were broken, or we'll have to kill you.
User avatar
AcadiusLost
Chosen of Forumamus, God of Forums
Posts: 5061
Joined: Tue Oct 19, 2004 8:38 am
Location: Montara, CA [GMT -8]
Contact:

Re: Hak Release, version 1.81

Post by AcadiusLost »

The new haks are now in place on all three of the present Live servers. A brief version of the above notes is visible while waiting on the downloads through the ADL GUI.

For DMs, the new haks are also available on the DMFTP in /NWN2/HAK/1.81/, if you are having slow connections.

Major credit for this release goes to Zelknolf, Ronan, and Basilica, who together did 98% of the coding, prep work and testing. Fantastic to see all these fixes and improvements go in, and a framework set up that should facilitate more frequent updates to come.
I-KP
Otyugh
Posts: 988
Joined: Fri Apr 09, 2010 6:27 pm

Re: Hak Release, version 1.81

Post by I-KP »

:w00t:
User avatar
CloudDancing
Ancient Red Dragon
Posts: 2847
Joined: Sun Jan 03, 2010 6:31 am
Location: Oklahoma
Contact:

Re: Hak Release, version 1.81

Post by CloudDancing »

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.
WooooooooOOoooo! :party1:
User avatar
Aitana
Dancing Queen
Posts: 703
Joined: Mon Jul 11, 2005 12:47 am
Location: Florida [GMT -5]

Re: Hak Release, version 1.81

Post by Aitana »

Wow, so much great stuff. Thank you!
Last edited by Aitana on Sun Jul 03, 2011 8:07 pm, edited 1 time in total.
Mikayla wrote:ALFA is truly the Magic Kingdom
User avatar
Heero
Beholder
Posts: 1930
Joined: Wed Jan 14, 2004 9:52 pm

Re: Hak Release, version 1.81

Post by Heero »

Thanks for al the hard work guys and gals. :D
Heero just pawn in game of life.

12.August.2013: Never forget.
15.December.2014: Never forget.

The Glorious 12.August.2015: Always Remember the Glorious 12th.
Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

Re: Hak Release, version 1.81

Post by Zelknolf »

We're finding bits of bugs and such in these. Namely, people might notice that players aren't getting translations from non-common languages and that the @com tag never gets removed from single lines spoken in common. I should be able to produce a workaround for this until the next hak update goes in, and the old UI still works as it did originally, but don't be surprised that when whispering sweet nothings in elven, only the DM gets flattered until I get this fixed.
Veilan
Lead Admin
Posts: 6148
Joined: Mon Jan 05, 2004 3:33 pm
Location: UTC+1
Contact:

Re: Hak Release, version 1.81

Post by Veilan »

Zelknolf wrote:when whispering sweet nothings in elven, only the DM gets flattered until I get this fixed.
Whispering sweet nothings in elven to DMs will now be mandatory for DM retention.
The power of concealment lies in revelation.
User avatar
Vendrin
Chosen of Forumamus, God of Forums
Posts: 9594
Joined: Mon Jan 05, 2004 12:48 am
Location: Nevada

Re: Hak Release, version 1.81

Post by Vendrin »

Awesome, thanks.
-Vendrin
<fluff> vendrin is like a drug
User avatar
Blindhamsterman
Haste Bear
Posts: 2396
Joined: Fri Jun 04, 2004 11:13 am
Location: GMT

Re: Hak Release, version 1.81

Post by Blindhamsterman »

thanks guys! awesome job!!
Standards Member


Current PC: Elenaril Avae'Kerym of the Lynx Lodge
<Heero>: yeah for every pc ronan has killed dming, paazin has killed 2 with his spawns
Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

Re: Hak Release, version 1.81

Post by Zelknolf »

There's a hotfix for the chat bug on the FTP now; there might be some slowness in getting it onto the hosts-- there's a bit of tiredness after the effort to get this morning's rollout done.

In the mean time, players are advised to only use the new language UI when speaking in party chat, and to use the old DMFI UI for normal speech. Whispers are stuck being broken until the hotfix gets in.
User avatar
Brokenbone
Chosen of Forumamus, God of Forums
Posts: 5771
Joined: Mon May 16, 2005 1:07 am
Location: London, Ontario, Canada

Re: Hak Release, version 1.81

Post by Brokenbone »

All sounds nifty.

Say, since our homepage usually has completely stale non-news on it (at present it's Moonshaes leaps to Live! of October 2010), this 1.81 stuff has at least some chance of demonstrating VITALITY.

A couple of the changes may also be important enough to wiki edit the "getting started" links for players, things like a spell change to Mage Armor can affect even the lowest levels of play. Good change mind you, but "one that would be good to try and publicize."
ALFA NWN2 PCs: Rhaggot of the Bruised-Eye, and Bamshogbo
ALFA NWN1 PC: Jacobim Foxmantle
ALFA NWN1 Dead PC: Jon Shieldjack

DMA Staff
Locked