Table of Contents

Namespace Anvil.API

Classes

AppearanceTableEntry

A creature appearance table entry (appearance.2da)

ArmorTableEntry
BodyBagTableEntry
CallInfo

Meta information for script calls, consumed by ScriptHandler attributed methods in service classes.

CampaignVariable
CampaignVariableBool
CampaignVariableEnum<T>
CampaignVariableFloat
CampaignVariableGuid
CampaignVariableInt
CampaignVariableLocation
CampaignVariableObject<T>
CampaignVariableString
CampaignVariableVector
CampaignVariable<T>
Cassowary

Represents a Cassowary engine structure.
A Cassowary is a type of solver. NWN uses them internally to resize the newer GUI window.

CassowaryException
CassowaryStrength
ClassAbilityGainList
ClassFeat
ClassPreReqTableEntry
ClassSkill
ClassSpellGainList
CollectionExtensions

Various class extensions for generic collections.

ColorConstants
CreatureClassInfo
CreatureLevelInfo
CreatureModelNumber
CreatureSpellAbility

Represents a spell-like ability on a creature.

DamageLevelEntry
DebugOptions
Direction
Effect

Represents an effect engine structure.

EffectBase
EffectIconTableEntry

An effect icon table entry (effecticons.2da)

EffectParams<T>

Represents an array of Effect parameters.

EncounterListEntry
EncounterSpawnPoint
EngineStructure

A pointer-type VM structure.

EnvironmentPreset

An environment preset defined in environment.2da

ExpTableEntry
ExpTableExtensions
FadeSpeed
GffResource
GffResourceField

A property/field in a GffResource.

GffResourceFieldList

A GffResourceField containing a list of GffResourceFieldStruct values.

GffResourceFieldStruct

A GffResourceField containing a structure of key/value pairs.

GffResourceFieldValue

A regular GffResourceField containing a primitive value.

GuidExtensions

GUID/UUID extension methods for resolving game objects, and GUID serialisation.

IntegerExtensions
Inventory
ItemAppearance
ItemProperty

Represents an item property effect engine structure.

ItemPropertyCostTableEntry
ItemPropertyCostTablesEntry
ItemPropertyItemMapTableEntry
ItemPropertyParamTableEntry
ItemPropertyParamTablesEntry
ItemPropertySubTypeTableEntry
ItemPropertyTableEntry
JoiningRestrictions
JournalEntry
Json

Represents a json engine structure.

JsonUtility

Utility methods for serializing/deserializing JSON data.

LightColorTableEntry
LoadScreenTableEntry
LocalVariableBool
LocalVariableCassowary
LocalVariableEnum<T>
LocalVariableFloat
LocalVariableGuid
LocalVariableInt
LocalVariableLocation
LocalVariableObject<T>
LocalVariableString
LocalVariableStruct<T>

A local variable generic structure.

LocalVariable<T>
Location

A location in the module, represented by area, position and orientation.

MemorizedSpellSlot
NativeUtils
NuiBindStrRef
NuiBind<T>

A NUI property binding that can be updated after being sent to the client.

NuiButton

A clickable button with text as the label.

NuiButtonImage

A clickable button with an image as the label.

NuiButtonSelect

A clickable button with text as the label.
Same as NuiButton, but this one is a toggle.

NuiChart

A line/column chart element.

NuiChartSlot

A chart element/data set for use in NuiChart.

NuiCheck

A checkbox with a label to the right of it.

NuiColorPicker

A simple color picker, with no borders or spacing.

NuiColumn

A layout element that will auto-space all elements inside of it and advise the parent about its desired size.

NuiCombo

A dropdown menu/combobox.

NuiComboEntry

A combo/list element for use in NuiCombo.

NuiDrawListArc
NuiDrawListCircle
NuiDrawListCurve
NuiDrawListImage
NuiDrawListItem
NuiDrawListLine
NuiDrawListPolyLine
NuiDrawListText
NuiElement

A dynamic NUI element with style support.

NuiGroup

A group, usually with a border and some padding, holding a single element. Can scroll.
Will not advise parent of size, so you need to let it fill a span (col/row) as if it was a element.

NuiImage

An image, with no border or padding.

NuiLabel

A single-line, styleable, non-editable text field.

NuiLayout
NuiList

A list view of elements.

NuiListTemplateCell

A cell template for use in NuiList.

NuiOptions

A list of options (radio buttons).
Only one can be selected at a time.

NuiProgress

A generic progress bar.

NuiProperty<T>

A NUI property that can be configured as a static readonly value, or a property that can be updated at runtime.

NuiRow

A layout element that will auto-space all elements inside of it and advise the parent about its desired size.

NuiSlider

A slider bar with integer values.

NuiSliderFloat

A slider bar with floating-point values.

NuiSpacer

A special widget that just takes up layout space.
Configure the space used with the Width and Height properties.

NuiStyle
NuiText

A non-editable text field. Supports multiple lines and has a skinned border and a scrollbar if needed.

NuiTextEdit

An editable text field. Can be optionally configured as multi-line.

NuiToggles
NuiValueConverter
NuiValueStrRef
NuiValueStrRefConverter
NuiValue<T>

A readonly NUI property value that cannot be changed at runtime.

NuiWidget

The abstract base for all NUI widgets - the building blocks for creating NUI windows.

NuiWindow

Represents a NUI scriptable window container.

NwArea

An environment/game level.

NwAreaOfEffect

The area/region of an ongoing spell effect or ability.

NwBaseItem

A base item type definition.

NwClass

A creature/character class definition.

NwCreature

A monster, NPC, player character or DM avatar

NwDomain

A selectable domain type used by classes with the HasDomains property (e.g. clerics)

NwDoor

A tile-based door.

NwEncounter

An encounter trigger that spawns creatures.

NwFaction

The faction info of a Creature/Player/GameObject.

NwFeat

A creature/character feat(ure) definition.

NwGameObject

Base class for all entities in areas.

NwGameTables
NwItem

An item object that can be carried by creatures, stored in placeable containers, or dropped in an anrea.

NwMath

Common math functions and constants.

NwModule

The root container object for all areas and module entities.

NwObject

Base class for all world entities (game objects) and containers (modules, areas).

NwPlaceable

A static world object that is optionally interactable or destroyable.

NwPlayer

A player client connected to the server.

NwRace

The race type of a creature. Contains additional ruleset information about the race.

NwRandom

Functions for generating random values (numbers, names).

NwRuleset

Ruleset definitions for the module.
Classes/Feats/Races/Skills/BaseItems/Spells.

NwServer
NwSkill

A creature/character skill definition.

NwSound

A configurable sound object in an area.

NwSpell

A spell definition.

NwStationary

A stationary game object entity.

NwStore

A store object for bartering, and items to purchase.

NwTask

Asynchronous tasks and helpers for running NWN APIs in an async context.

NwTimeSpan

Helpers to convert game time units to a TimeSpan.

NwTrappable

A trappable game object/entity.

NwTrigger

A trigger volume entity.

NwWaypoint

A waypoint entity that uniquely identifies a location in the module.

ObjectExtensions
ObjectStorageVariableBool
ObjectStorageVariableEnum<T>
ObjectStorageVariableFloat
ObjectStorageVariableGuid
ObjectStorageVariableInt
ObjectStorageVariableString
ObjectStorageVariableStruct<T>
ObjectStorageVariable<T>
ObjectVariable

A key/value pair/variable stored on an Object.

ObjectVariable<T>
PartsTableEntry
PersistentVariableBool
PersistentVariableEnum<T>
PersistentVariableFloat
PersistentVariableGuid
PersistentVariableInt
PersistentVariableString
PersistentVariableStruct<T>
PersistentVfxTableEntry
PersistentWorldOptions
PlaceableSoundTableEntry
PlaceableTableEntry
PlaceableTypeTableEntry

A placeable type table entry (placeabletypes.2da)

PlayOptions
PlayerDeviceProperty
PlayerIdConstants
PlayerQuickBarButton
PolymorphTableEntry

A creature polymorph table entry (polymorph.2da)

PortraitTableEntry

A portrait table entry (portraits.2da)

ProgrammedEffectTableEntry
RadiusSize
RandomExtensions

Extensions to the Random class for reimplementing native random functions (Dice and Ranges).

ReflectionExtensions
RulesetKeys
SQLQuery

A SQL Query.

SQLResult

Represents a row returned in an SQL result. See Result/Results.

ScriptConstants
ScriptParams
ServerInfo
SkillItemCostTableEntry
SpecialAbility
StringExtensions
SurfaceMaterialTableEntry
Talent

Represents a talent structure. A talent is a feat, skill or spell possessed by a creature.

TalentExtensions
TileData

Represents a tile configuration at a location.

TileInfo

Area tile information

TilesetResRef
Time

Interface for querying time information for the current frame or since startup.

TwoDimArray

A two dimensional array data resource.

TwoDimArrayEntry

2da row data.

TwoDimArray<T>

A two dimensional array resource, with a decoded row type.

VirtualMachine

Standard and Low Level methods and properties for querying/interacting with the NwScript virtual machine.

VisualEffectTableEntry
VisualTransform
VisualTransformLerpSettings
WorldTimer

Structs

CRulesKeyHash
Color

A 8 bit Color structure.

CreatureTypeFilter
HitEffect

Represents an "On Hit" item property effect, for use with OnHitEffect(IPOnHitSaveDC, HitEffect).

MonsterHitEffect

Represents a monster "On Hit" item property effect, for use with OnMonsterHitProperties(MonsterHitEffect).

NuiRect
NuiVector
NuiWindowToken

Represents a NUI window instance for a certain player.

NwDateTime
StrRef

A talk table (tlk) string reference.

StrTokenCustom
Vector2Int

A vector with two 32 bit integer values.

Interfaces

IAwaitable

Explicit interface to support the compiling of async/await.

IAwaitable<TResult>

Explicit interface to support the compiling of async/await.

IAwaiter

Explicit interface for an awaiter. An awaiter is a system that will run an async operation and schedule a continuation when it completes.

IAwaiter<TResult>

Explicit interface for an awaiter. An awaiter is a system that will run an async operation and schedule a continuation when it completes.

ITwoDimArrayEntry

Implement to decode TwoDimArrayEntry into a type using GetTable<T>(string?, bool, bool).

Enums

ACBonus
Ability
Action
ActionMode
ActionState
AddPropPolicy
AiLevel
Alignment
AmbientSound
AnimalCompanionCreatureType
Animation
AnimationState
AppearanceType
AreaDestroyResult
AreaFlags
AreaLightColor
AreaLightDirection
AreaSizeDimension
AreaTransition
AssociateCommand
AssociateType
AttackBonus
Attitude
AudioStreamIdentifier
BaseItemAmmunitionType
BaseItemCategory
BaseItemModelType
BaseItemQBBehaviour
BaseItemRotation
BaseItemType
BaseItemWeaponSize
BaseItemWeaponWieldType
BodyNode
CameraFlag
CameraMode
CameraTransitionType
ChatBarChannel
ClassFeatListTypes
ClassPreReqType
ClassRestrictionTypes
ClassRestrictions
ClassType
ColorChannel
CombatMode
CreaturePart
CreatureSize
CreatureTailType
CreatureType
CreatureWingType
DamageBonus
DamagePower
DamageType
DayNightMode
DiseaseType
Domain
DoorAction
DoorOpenState
EffectDuration
EffectIcon
EffectRunScriptType
EffectSubType
EffectType
EncounterDifficulty
EquipmentSlots
EventScriptType
EventType
FamiliarCreatureType
Feat
FogColor
FogType
FootstepType
GUIPanel
GameDifficulty
Gender
GffResourceFieldType
GuiEventType
IPACModifierType
IPAbility
IPAdditional
IPAlignment
IPAlignmentGroup
IPAmmoType
IPArcaneSpellFailure
IPCastSpell
IPCastSpellNumUses
IPClass
IPContainerWeightReduction
IPDamageBonus
IPDamageImmunityType
IPDamageReduction
IPDamageResist
IPDamageSoak
IPDamageType
IPDamageVulnerabilityType
IPFeat
IPLightBrightness
IPLightColor
IPMiscImmunity
IPMonsterDamage
IPOnHit
IPOnHitCastSpell
IPOnHitDuration
IPOnHitSaveDC
IPOnMonsterHit
IPPoisonDamage
IPQuality
IPRacialType
IPReducedWeight
IPSaveBaseType
IPSaveVs
IPSpellImmunity
IPSpellLevel
IPSpellResistanceBonus
IPSpellSchool
IPTrapStrength
IPTrapType
IPUnlimitedAmmoType
IPWeightIncrease
ImmunityType
InventoryDisturbType
InventorySlot
InvisibilityType
ItemAppearanceArmorColor
ItemAppearanceType
ItemAppearanceWeaponColor
ItemAppearanceWeaponModel
ItemPropertyType
ItemVisual
LastAttackMode
MetaMagic
MissChanceType
MouseCursor
MovementRate
MovementType
NameTable
NuiAspect
NuiChartType
NuiDirection
NuiDrawListItemOrder
NuiDrawListItemRender
NuiDrawListItemType
NuiEventType
NuiHAlign
NuiMouseButton
NuiScrollbars
NuiVAlign
ObjectTypes
ObjectUiDiscovery
ObjectUiTextBubbleOverride
ObjectVisualTransform
ObjectVisualTransformBehavior
ObjectVisualTransformDataScope
PVPSetting
PackageType
PanelButton
PerceptionEventType
PerceptionType
PersistentVfxType
PersistentZone
Phenotype
PlaceableAction
PlayerLanguage
PlayerPlatform
PlayerSearch
PoisonType
PolymorphType
ProgFxType
ProjectilePathType
QuickBarButtonType
RacialType
RegexpFormat
RegexpMatch
RegexpType
ReputationType
ResRefType
ResistSpellResult
RestEventType
SavingThrow
SavingThrowResult
SavingThrowType
ScreenAnchor
SettleFlags
ShaderUniform
ShadowSize
ShakeType
Shape
Skill
SkillResult
Skybox
SpecialAttack
Spell
SpellCastAnimType
SpellComponents
SpellConjureAnimType
SpellFailureType
SpellProjectileOrientation
SpellProjectileSpawnPoint
SpellRange
SpellSchool
SpellTargetTypes
SpellTargetingFlags
SpellTargetingShape
SpellUserType
StandardFaction
StoreCategory
SubSkill
Subfeat
TalentCategory
TalentType
TalkVolume
TileMainLightColor
TileRotation
TileSourceLightColor
TouchAttackResult
Track
TrapBaseType
VfxType
VibratorMotor
VisualTransformLerpType
VoiceChatType
WeatherType