The British Heart Foundation & Flora pro.activ – an unhealthy relationship

Mod Local Data Functions

OBSE v0020 Command Documentation
ModPCSpellEffectiveness - alters the script modifier applied to the player's spell effectiveness. Note that this function returns a reference while the NPC is in the process of walking toward a horse with the intention of mounting it. Current Health float - the current health of the object. Hi Lyn Well done to you for looking into this further and asking questions. Note that this command does not check for collision with surfaces other than terrain.

Table of Contents


If a race has an alias, then calling GetIsRace aliasRace will return true for any actor of that race. However, Argonians will not be recognized as Nords. The third argument defaults to 1; pass 0 to clear a previously created alias.

GetRaceVoice - returns the race which is used to provide the voice of the specified race and gender. Pass 0 for male or 1 for female. SetRaceVoice - changes the voice of a race to the specified race. Specify 0 for male, 1 for female, or 2 for both genders. SetRacePlayable - flags a race as playable or unplayable. Unplayable races cannot speak most of the dialog defined in the game. IsRacePlayable - returns 1 if the specified race is flagged as playable in the editor.

The target and from races are declared as NPCs, but you can also place a Race name into a ref variable and pass those in. GetRaceScale - returns the default scale of the male or female members of the specified race. SetRaceScale - sets the scale for male or female members of the specified race. GetRaceWeight - returns the default weight for male or female members of the specified race as defined in the editor.

SetRaceWeight - sets the weight for male or female members of the specified race. GetRaceDefaultHair - returns the default hair for male or female members of the specified race. GetRaceHairs - returns an Array of all hairs male and female available to actors of the specified race as defined in the editor.

GetRaceEyes - returns an Array of all eyes available to actors of the specified race as defined in the editor. IsScripted - returns whether the scriptable object has a script attached to it or not.

GetScript - returns the refID of the script attached to the object script: RemoveScript - removes and returns the script attached to the object. The object is no longer scripted script: SetScript - sets the specified script onto the calling object and returns any previous script.

Note that Oblivion doesn't have a script variable type so you must assign the script to a ref variable for this to work. If the specified object already has a script attached to it, after changing the script the stored values of local variables for references to that object will not match the variables in the new script. If called on a reference, the variable list for the calling reference will be updated to match the new script, but other references to the same base object will not be updated.

SetScript is safe to use with quests, with previously unscripted objects, and on unique references for which no other references exist to the same base object. Using the command on base objects for which non-unique references exist may result in undefined behavior. IsFormValid - returns 1 if the specified ref variable contains a valid object or reference.

IsReference - returns 1 if the specified ref variable contains a reference, as opposed to a base object. HasVariable - returns 1 if the calling reference or specified quest has a variable with the specified name.

GetVariable - returns the value of a numeric variable by name, either from the calling reference's script or the specified quest. GetRefVariable - returns the reference stored in a ref variable by name, either from the calling reference's script or the specified quest. GetArrayVariable GetArrayVar - returns the value of an array variable by name, either from the calling reference's script or the specified quest.

CompareScripts - compares the compiled code of two scripts and returns 1 if they are identical. Note that this doesn't mean the text of the scripts are identical, only that they call the same functions in the same order with the same parameters.

ResetAllVariables - sets all variables in the calling script to zero. GetNumExplicitRefs - returns the number of explicit references in the calling object's script or in the passed script object.

Explicit references are any objects mentioned by name in the script; for instance, if a script contains an "OnHit Player" block or a "Player. AddItem" command, its explicit references will include the player. GetNthExplicitRef - returns the n th explicit ref in the calling object's script or the passed script object. See GetNumExplicitRefs are a description of explicit references. GetCurrentScript - returns the script which is currently executing.

SetModelPath - sets the model path for the type. GetModelPath - returns the model path for the object. SetIconPath - sets the icon path for the type. GetIconPath - returns the icon path for the object. CompareModelPath - returns whether the passed string is part of the model path. This is a case insensitive search. CompareIconPath - returns whether the passed string is part of the icon path. CopyModelPath - sets the model path of the calling reference or passed objectID to the model path offromObject nothing reference.

CopyIconPath - sets the icon path of the calling reference or passed objectID to the icon path of fromObject nothing reference. ModModelPath - modifies the model path of the calling reference or passed objectID. ModModelPath will do a case insensitve search for the toReplace portion and if found will replace it with the replaceWith portion.

If there is nothing before the character, the replaceWith string is prepended to the model path. ModIconPath - modifies the icon path of the calling reference or passed objectID.

ModIconPath will do a case insensitve search for the toReplace portion and if found will replace it with the replaceWith portion. If there is nothing before the character, the replaceWith string is prepended to the icon path. GetTexturePath - returns the texture path of an object. This command is identical to GetIconPath, but also works for other object types such as skills, classes, and miscellaneous objects.

SetTexturePath - sets the texture path of an object. GetEditorSize - returns the value contained in the hidden 'size' field of the editor's object window for the specified object. This is a rough scalar approximation of the dimensions of the object. Return value is typically similar to that of GetBoundingRadius. The game only calculates and stores this value for objects for which at least one reference exists in the game world. Types with this quality can be worn by actors and can have different models and textures for males and females.

SetMaleGroundPath - sets the male model path when dropped nothing reference. SetFemaleGroundPath - sets the female model path when dropped nothing reference. SetMaleIconPath - sets the male icon texture nothing reference. SetFemaleIconPath - sets the female icon texture nothing reference.

ModXXXPath will do a case insensitve search for the toReplace portion and if found will replace it with the replaceWith portion. If there is nothing before the character, the replaceWith string is prepended to the specified path. This does a case insensitive search. IsPlayable - returns whether the specified object is playable or not. Returns true only if the object is of a type which can be flagged as playable in the editor. SetIsPlayable - specifies whether the object can be used by the player nothing reference.

IsPlayable2 - returns whether the specified object is playable or not. If the object is of a type which cannot be flagged as playable in the editor, this function returns true. GetBipedModelPath - returns the file path of one of the models for the specified biped object.

GetBipedIconPath - returns the file path of one of the icons for the specified biped object. GetHidesRings - returns 1 if the "hides rings" flag is set for the biped object. GetHidesAmulet - returns 1 if the "hides amulet" flag is set for the biped object.

SetHidesRings - modifies the "hides rings" flag. SetHidesAmulet - modifies the "hides amulet" flag. GetBipedSlotMask - returns the slots occupied by a biped object. SetBipedSlotMask - sets the slots occupied by a biped object.

Oblivion Types are the various forms available to fill out in the CS. They correspond to real objects or concepts in Oblivion. Types are a collection of values and functions which can be applied to them. Frequently they have Qualities which encapsulate common values and functions across the various types.

If a type has a quality listed, that type has all of the values and functions of that quality in addition to any listed directly with the type itself. A reference to a creature or NPC in the game world. Actor references have AI, animations, and havok states. GetNumDetectedActors - returns the number of other actors of which the calling actor may detect. This includes actors detected at "Lost" or "Unseen" level. GetNthDetectedActor - returns the Nth actor in the calling actor's detection list actor: SetDetectionState - sets the detection state of the calling actor toward the specified actor reference.

Note that Oblivion recalculates this value frequently for actors in high process; the function's main purpose is to reset the detection state of unconscious actors. IsBlocking - returns 1 if the calling actor is blocking isBlocking: IsAttacking - returns 1 if the calling actor is attacking isAttacking: IsRecoiling - returns 1 if the calling actor is recoiling isRecoiling: IsDodging - returns 1 if the calling actor is dodging isDodging: IsStaggered - returns 1 if the calling actor is staggered isStaggered: IsMovingForward - returns 1 if the calling actor is attempting to move forward, even if his path is blocked.

IsMovingLeft - returns 1 if the calling actor is attempting to strafe left isMovingLeft: IsMovingRight - returns 1 if the calling actor is attempting to strafe right isMovingRight: IsMovingBackward - returns 1 if the calling actor is attempting to move backwards isMovingBackwards: IsTurningLeft - returns 1 if the calling actor is turning left isTurningLeft: IsTurningRight - returns 1 if the calling actor is turning right isTurningRight: IsInAir - returns 1 if the calling actor is airborne, whether jumping or falling isInAir: IsJumping - returns 1 if the calling actor is beginning to jump playing the JumpStart anim group isJumping: IsOnGround - returns 1 if the calling actor is on the ground isOnGround: IsFlying - returns 1 if the calling actor is flying.

Only creatures can fly. IsPowerAttacking - returns 1 if the calling actor is executing a power attack isPowerAttacking: IsCasting - returns 1 if the calling actor is casting a spell isCasting: GetFallTimer - returns the length of time for which the actor has been falling fallTimer: IsAnimGroupPlaying - returns 1 if the specified animation group is currently being played by the calling actor playing: AnimPathIncludes - returns 1 if one of the calling actor's currently playing animation paths includes the specified substring includes: GetProcessLevel - returns the actor's current process level, or -1 if called on a non-actor.

Process level determines how frequently the game updates an actor's AI. In general, high process actors are in the same cell as the player, while more distant actors are kept at a lower process level.

GetEquippedItems - returns an array containing all items currently equipped by the calling actor items: GetSpells - returns an array containing all of the spells in an actor's spell list. GetActorAlpha - actor references can be made more or less opaque or transparent by changing their alpha property via SetActorAlpha. This function returns the calling actor's current alpha as a floating point number between 0.

GetAllies - for an actor in combat, returns an Array of other actors which the game considers allies of the calling actor at that particular moment. GetTargets - for an actor in combat, returns an Array of actors which the game considers potential targets of the calling actor at that particular moment. GetSelectedSpells - for an actor in combat, returns an Array containing zero to seven spells which the actor has selected from his full spell list including spells resolved from leveled spell lists for use.

The list contains a maximum of one spell from each of the following categories: GetCombatSpells - for an actor in combat, returns an Array of all the spells in the actor's spellbook, including spells resolved from leveled spells lists which are resolved into actual spells when the actor enters combat.

The actor will use a subset of these spells during combat; use GetSelectedSpells to determine which of these spells have been selected for use. PlayIdle - attempts to make the calling actor play the specified idle animation. Pass 1 for the forceIdle parameter to force the actor to play the idle regardless of any other animations currently playing.

A set of information defining actor behavior. Commands which modify AI packages operate on the base package and may have no effect or unpredictable effects on actor references currently executing that package. SetPackageTarget - sets the target of the specified package. Target can be of several types, leading to several syntaxes for this command.

The first listed usage sets the target to a specific reference. The second sets it to a particular base object with a specified quantity; when the package executes the actor will look for references to that base object to use as the target s. The third usage sets the target to a code representing the type s of objects to be used as targets, along with a quantity. This command does not change the targets of actor references currently executing the package unless they re-evaluate their package after the change has been made.

GetPackageData - returns a stringmap containing info about a package. The returned stringmap contains the following keys: GetPackageScheduleData - returns a stringmap containing info about a package schedule. GetPackageLocationData - returns a stringmap containing info about a package location. GetPackageTargetData - returns a stringmap containing info about a package target.

It accepts a stringmap consisting of one or more stringmaps with keys "Location", "Target", or "Schedule", each following the formats listed above. If any data is omitted, the existing package data will be retained.

SetPackageTargetData - sets the target of a package. Accepts a stringmap of the same format as that returned by GetPackageTargetData. Omitted fields retain their existing values. SetPackageLocationData - sets the location of a package based on the passed stringmap of the same format as that returned by GetPackageLocationData. SetPackageScheduleData - sets the schedule of a package. Accepts a stringmap of the same format as that returned by GetPackageScheduleData. Package Flag Commands - gets or sets the state of one of the flags on the specified package.

Is Poison Flag bool - whether the alchemy item is considered a poison. A poison is an alchemy item with all hostile effects. An alchemy item with even a single non-hostile effect is not a poison. IsPoison - returns whether the alchemy item is a poison. MatchPotion - Oblivion keeps track of potions created by the player and reuses them if another potion is created with the same effects as one created previously.

This command takes a potion and returns a previously-created potion bearing the same effects, if one exists. Note that in some cases it may return the same potion that was passed as the argument. Mainly useful during potion creation in the Alchemy menu, or when dynamically modifying potion effects via script.

Type short - the type of alchemy apparatus Quality float - the level of the alchemy apparatus quality. The ApparatusQuality list shows the basic levels, but any value between 0 and 1. GetApparatusType - returns the alchemy apparatus type of the calling reference or passed objectID apparatusType: SetApparatusType - sets the alchemy type of the calling reference or passed objectID nothing reference. GetQuality - returns the quality level of the calling reference or passed objectID quality: SetQuality - sets the quality level of the calling reference or passed objectID nothing reference.

ModQuality - modifies the quality of the calling reference or passed objectID nothing reference. Breakable , Enchantable , Inventory , Named , Wearable. Armor Rating long - the value of protection provided by the armor Armor Type short - the type of the armor. GetArmorAR - returns the armor rating of the object armorRating: SetArmorAR - sets the armor rating of the object nothing reference. ModArmorAR - modifies the armor rating of the object up or down nothing reference.

GetArmorType - returns 0 if light armor and 1 if heavy armor armorType: SetArmorType - sets whether the armor is heavy or light nothing reference.

GetBirthsignSpells - returns an Array containing the spells associated with the specified birthsign spells: Inventory , Description , Enchantable , Named , Simple. Can Be Taken bool whether the book can be taken IsScroll bool whether the book is a scroll SkillTaught bool whether the book teaches a skill or not. GetBookIsScroll - returns whether the book is a scroll or not isScroll: GetBookSkillTaught - returns the skill taught by the book. If no skill is taught, returns SetBookCantBeTaken - sets whether the book can be taken nothing reference.

SetBookIsScroll - sets whether the book is a scroll nothing reference. SetBookSkillTaught - sets the skill the book teaches. The the skillTaught value is not one of the skills, sets the value to GetBookText - returns the text of a book as a string. The result must be assigned to a string variable. GetBookLength - returns the number of characters in a book's text. There are two types of cells: Exterior cells exist as parts of worldspaces and often inherit the name of their parent worldspace. Interior cells are isolated from other parts of the world and have their own names.

When the player visits and then exits an interior cell, the game records the number of total hours elapsed in the game at the moment the player exits; this value is the cell's "detach time.

Music Type short - the music type for the cell. GetCellMusicType - returns the music type of the player's current cell. SetCellWaterHeight - changes the water height of the specified cell. If used to alter the water height in a loaded cell, the water shader will reflect the new height and actors will switch between swimming and walking animations appropriately. However, floating physics and the water surface will not be updated until the cell is reloaded.

This command has no effect in exteriors or in cells which have no water. GetCellDetachTime - returns the cell's detach time, described above. GetCellResetHours - returns the number of hours which must pass in the game before the cell is reset. SetCellResetHours - sets the number of hours which mustpass before the cell is reset. This value must be less than the game setting iHoursToRespawnCell.

Using this function to modify the reset hours for the current cell, or for exterior cells, has no effect. GetCellBehavesAsExterior - returns true if the "behaves as exterior" cell is checked for the specified interior cell. IsCellPublic - returns 1 if the cell is marked as 'public'.

SetCellIsPublic - sets the 'public' flag for the cell. SetCellHasWater - sets the flag indicating whether or not the interior cell has water.

Only affects interior cells, and changes are not visible until the cell is reloaded. Has no effect if called while the player is inside the specified cell. SetCellBehavesAsExterior - sets the 'behaves like exterior' flag for the interior cell. GetCellClimate - returns the climate for the specified cell. SetCellClimate - sets the climate for the specified cell.

GetCellLighting - returns a StringMap describing the lighting properties for the interior cell. SetCellLighting - alters one or more of an interior cell's lighting fields, taking a StringMap of the same format as that returned by GetCellLighting. Include only the elements you wish to change; if a key is not found its value will not be modified. GetTerrainHeight - returns the height of the terrain mesh at the specified x and y coordinates within the current exterior worldspace.

X and Y are worldspace coordinates e. If the coordinates are outside of any loaded cells, returns 0. Note that this command does not check for collision with surfaces other than terrain. IsOblivionInterior - returns 1 if the "Oblivion interior" flag has been checked for the specified interior cell. IsOblivionWorld - returns 1 if the "Oblivion World" flag has been checked for the specified world space.

CanFastTravelFromWorld - returns 1 if the player is allowed to fast-travel from the specified world space. GetCellWaterType - returns the Water used by the interior cell. Returns zero if the cell has no water, or if the cell uses the default water type. SetCellWaterType - sets the Water used by the interior cell. Changes will not be visible until the cell is reloaded. GetCellNorthRotation - returns the rotation on the Z axis of the north marker within the specified interior cell, if one is present.

The game uses the north marker's Z rotation to determine what direction is considered "north". Rotation returned is in degrees and is 0.

Climate settings define weather, sun, and moon settings for a worldspace. Additional information about these settings can be found at the Construction Set Wiki. Sunrise Begin, Sunrise End, Sunset Begin, Sunset End short - these values are the number of 10 minute increments since midnight the given event occurs MoonPhaseLength short - the number of days in a moon's phase HasMasser, HasSecunda bool - which moons the climate will show Volatility short - the volatility of the climate, or how often the weather is likely to change.

GetClimateSunriseBegin - returns the time sunrise begins specified as a number of 10 minute units since midnight sunriseBegin: GetClimateSunriseEnd - returns the time sunrise ends specified as a number of 10 minute units since midnight sunriseEnd: GetClimateSunsetBegin - returns the time sunset begins specified as a number of 10 minute units since midnight sunsetBegin: GetClimateSunsetEnd - returns the time sunset ends specified as a number of 10 minute units since midnight sunsetEnd: GetClimateMoonPhaseLength - returns the number of days in the phase of the moons.

The total moon cycle length is 8 x PhaseLength according to the CS. SetClimateSunriseBegin - sets the time sunrise begins as a number of 10 minute units since midnight nothing SetClimateSunriseBegin time: GetClimateVolatility - returns the volatility of the climate volatility: Clothing is any wearable object that does not provide armor protection.

Includes amulets and rings. Enchantable , Inventory , Named , Wearable. Actor , Attacking only attack damage , Inventory , Magic Target. Creature Type short - the type of creature Combat Skill short - the value for all combat skills for the creature Magic Skill short - the value for all magic skills for the creature Stealth Skill short - the value for all stealth skills for the creature Reach short - the attack reach of the creature Soul Level short - the soul level of the creature Base Scale float - the base scale of the creature.

IsCreature - returns whether the reference or passed id is a creature isCreature: GetCreatureCombatSkill - returns the combat skill for the creature combatSkill: GetCreatureMagicSkill - returns the magic skill for the creature magicSkill: GetCreatureStealthSkill - returns the stealth skill for the creature stealthSkill: GetCreatureReach - returns the reach of the creature reach: GetCreatureSoulLevel - returns the soul level of the creature soulLevel: GetCreatureBaseScale - retuns the base scale of the creature scale: GetCreatureWalks - returns 1 if the Walks flag is set on the creature walks: GetCreatureSwims - returns 1 if the Swims flag is set on the creature swims: GetCreatureFlies - returns 1 if the Flies flag is set on the creature flies: IsCreatureBiped - returns 1 if the Biped flag is set on the creature biped: GetRider - returns the NPC currently riding the calling horse.

GetCreatureSoundBase - returns the creature from which the specified creature's sounds are derived, if any. SetCreatureSoundBase - "sets the creature from which the creature inherits its sounds.

The inheriting creature must not itself be a sound base mustn't define its own sounds , and the creature specified as the sound base must be a sound base defining its own sounds or null. HasModel - returns 1 if the creature's model list includes the specified. The file must appear in the creature's meshes folder. String must include the ".

GetCreatureSound - returns the creature's sound associated with the specified action sound: ToggleCreatureModel - toggles a model within a creature's model list on or off. The model path must be relative to the creature's model folder and include the ".

When called on a reference which is currently being rendered, the reference must be disabled and then enabled before the change is visible. GetCreatureModelPaths - returns an Array containing the set of model paths in the creature's model list. Only those models which are toggled on are included. SetCreatureSkill - sets the value of one of the creature's skills.

Pass "stealth", "magic", or "combat" as the skill name. The skill value must be between 0 and GetCombatStyle - returns the combat style assigned to the calling reference. Note that many actors are assigned no combat style in the editor i. Most of these functions get or set the values of properties defined in the Combat Style window for each combat style and follow the same syntax conventions. IsLoadDoor - returns 1 if the calling reference is a load door isLoadDoor: GetLinkedDoor - returns the door to which the calling load door is linked linkedDoor: GetTeleportCell - returns the cell to which the calling load door teleports cell: IsOblivionGate -returns true if the door is flagged as an Oblivion gate in the editor.

IsHiddenDoor - returns 1 if the "hidden" flag is set for the door. IsAutomaticDoor - returns 1 if the "Automatic" flag is set for the door.

SetIsHiddenDoor - sets or clears the "hidden" flag for the door. SetIsAutomaticDoor - sets or clears the "Automatic" flag for the door. SetDoorTeleport - sets the reference, coordinates, and rotation to which the calling door teleports. Only the reference argument is required; the values for the others will be taken from the specified reference's coordinates and rotation if omitted.

The bTemporary argument specifies that the change should not be saved in the savegame; by default, or if the argument is zero, the change will be saved. GetDoorTeleportX - returns the x coordinate to which the calling door teleports.

GetDoorTeleportY - returns the y coordinate to which the calling door teleports. GetDoorTeleportZ - returns the z coordinate to which the calling door teleports.

GetDoorTeleportRot - returns the rotation to which the calling door teleports. This is the angle the player will be facing after activatingthe load door. GetTeleportCellName - when called on a teleporting door reference, returns the name of the cell or worldspace to which the door teleports cellName: Enchantment Type short - the type of object to which an enchantment may be applied Charge long - the charge of the enchantment.

Of unknown and dubious use - the number sometimes does not correspond to the value listed in the CS. The CS seems to list cost and charge both from the Cost value on the enchantment item. Cost long - the cost in magicka charge consumed by each use of the enchantment. GetEnchantmentType - returns the type of the enchantment enchantType: GetEnchantmentCharge - returns the charge of the enchantment. Of unknown and dubious use. SetEnchantmentCharge - sets the charge of the enchantment.

ModEnchantmentCharge - modifies the charge of the enchantment. GetEnchantmentCost - returns the magicka charge cost for using the enchantment cost: IsFactionEvil - returns 1 if the faction is marked as evil isEvil: IsFactionHidden - returns 1 if the faction is not shown on the player's faction sheet isHidden: SetFactionEvil - changes the Evil flag on the faction. Changes are saved in the savegame nothing SetFactionEvil faction: SetFactionHidden - changes the Hidden flag on the faction.

Changes are saved in the savegame nothing SetFactionHidden faction: GetNumRanks - returns the number of ranks in the faction. GetNthFactionRankName - returns the title of the nth rank in a faction. Optionally returns the female rank name.

Optionally sets the female rank name. IsHarvested - returns 1 if the calling reference's ingredient has been harvested isHarvested: SetHarvested - mark or unmark the calling reference as having been harvested. Changes are saved in the savegame. GetIngredient - returns the ingredient contained in a plant. SetIngredient - sets the ingredient contained in a plant. Omit the ingredient parameter or pass an empty ref variable to set it to "no ingredient.

Return value ranges from 0 to A list of creatures, NPCs, items, or spells. Changes made to lists using OBSE functions are not saved in the savegame, but persist for the duration of the game session after they are made.

To make effectively "permanent" changes to a leveled list, include code similar to the following in a quest script:. AddToLeveledList - adds an object to a leveled creature, spell, or item list. Count defaults to 1 if unspecified. RemoveFromLeveledList - removes all occurences of an object from a leveled list and returns the number of occurences removed.

CalcLeveledItem - returns one item from a leveled item list, selected randomly for a character of the specified level. Oblivion selects a level range from which to choose using the game setting iLevItemLevelDifferenceMax. The item chosen is within the range [minLevel This function checks the "Chance None" property of the leveled list, so it may return nothing based on that chance; pass 0 for the third parameter to override this behavior.

In the case of leveled lists containing nested leveled lists, the function recurses through each list until it finds a non-leveled item. CalcLevItems - returns an Array of StringMaps representing items selected randomly from a leveled item list. This command uses the game code to select items, which means the items returned are the same as those the game would select for an actor of the specified level.

Does not work with leveled spells or creatures. Each entry in the returned Array is a StringMap with the key-value pairs: The optional "count" parameter is 1 by default. GetCalcEachInCount - returns 1 if the "calculate for each item in count" flag is checked. GetChanceNone - returns the chance from 0 to that a leveled list returns no item.

GetNumLevItems - returns the number of elements in a leveled list. GetLevItemByLevel - returns the first element of the specified level in the leveled list. ClearLeveledList - removes all elements from a leveled list. RemoveNthLevItem - removes the nth item from a leveled list. GetLevItemIndexByLevel - returns the index of the first item of the specified level within a leveled list, or -1 if no item exists for that level. GetLevItemIndexByForm - returns the index of the first occurrence of the specified form in a leveled list, or -1 if the form is not found.

SetChanceNone - sets the chance that a leveled list generates no item. Objects which emit light. They may or may not have a visible model associated with them and may or may not be carriable. Equippable , Inventory , Named , Simple , Audible. Radius short - the radius illuminated by the light. IsLightCarriable - returns 1 if the light may be placed in an inventory. GetLightRadius - returns the radius of the light. SetLightRadius - sets the radius of the light. Changes are not saved in the savegame.

GetLightRGB - returns the red, green, and blue components of the light's color as an Array of 3 elements of values 0 through The first element corresponds to the red value, the second to green, and the third to blue. SetLightRGB - sets the red, green, and blue components of the light's color, accepting the components as an Array of 3 elements of values 0 through GetLightDuration - returns the duration of the light as defined in the editor.

SetLightDuration - sets the duration of the light. GetTimeLeft - returns the amount of time left before the calling light reference expires. GetEquippedTorchTimeLeft - returns the amount of time before the torch equipped by the calling actor expires. SetTimeLeft - sets the amount of time before the calling light reference expires. Code chars or long - the magic effect code. As a return value from OBSE functions it is a long with the same numerical value.

Base Cost float - the base cost multiplier for the effect School short - the spell skill controlling the effect Projectile Speed float - the projectile speed of the magic effect Enchant Factor float - the constant effect enchantment factor which helps determine the maximum magnitude of the effect when enchanting Barter Factor float - the constant effect barter factor which helps determine the increase in value when enchanting Is Hostile flag bool - determines if the effect is hostile.

Only hostile effects may be in a poison. GetMagicEffectCode - returns the magic effect code of the effect. GetMagicEffectCharsC - returns the 4-character code for a magic effect chars: MagicEffectFromCode - given an effect code, returns the effect setting matching that code.

MagicEffectFromChars - given a string representing a four-letter effect code e. GetMagicEffectSchool - returns the controlling school of the magic effect magicSchool: GetMagicEffectEnchantFactor - returns the constant effect enchantment factor of the magic effect enchantFactor: GetMagicEffectBarterFactor - returns the constant effect barter factor of the magic effect enchantFactor: IsMagicEffectHostile - returns whether the magic effect is hostile isHostile: IsMagicEffectDetrimental - returns whether the magic effect harms the receipient isDetrimental: MagicEffectUsesWeapon - returns whether the magic effect summons a weapon usesWeapon: MagicEffectUsesArmor - returns whether the magic effect summons armor usesArmor: MagicEffectUsesCreature - returns whether the magic effect summons a creature usesCreature: MagicEffectUsesSkill - returns whether the magic effect affects a skill usesSkill: MagicEffectUsesAttribute - returns whether the magic effect affects an attribute usesAttribute: GetMagicEffectOtherActorValue - returns the actor value skill, attribute or other affected by the magic effect actorValue: A 'C' version is also provided.

AddMagicEffectCounter C - adds a counter-effect to the magic effect. The 'C' version accepts magic effect codes for both arguments. GetMagicEffectCounters C - returns an Array containing the effect codes of all counter-effects for the specified magic effect. SetMagicEffectCounters C - accepts an Array of effect codes and assigns those effects as counter-effects for the specified magic effect, overriding any existing counter-effects.

The user must guarantee that the passed array contains valid effect codes and nothing else. The function returns 1 if the new counter-effects were successfully applied, 0 otherwise. These functions can be used to retrieve or modify the properties of magic effect settings as defined in the Magic Effects window of the editor. Because they all follow similar syntax conventions and are largely self-explanatory, most are not documented individually.

Versions of the commands ending in 'C' take a numeric magic effect code rather than a Magic Effect form as the argument to indicate the effect. All of these functions have abbreviated alternate names in which "MagicEffect" is replaced by "ME", i. Get versions of these commands return a form i. A map marker is a reference to a static object of the type "mapmarker" defined as a default object in the editor.

Map marker references have additional information such as a id, type of location, etc. IsMapMarkerVisible - returns 1 if the map marker can be seen on the player's map visible: SetMapMarkerVisible - sets whether the map marker can be seen on the player's map nothing reference. CanTravelToMapMarker - returns 1 if the player can travel to the map marker by clicking on it in the map menu canTravel: SetCanTravelToMapMarker - sets whether the player can travel to the map marker by clicking it in the map menu nothing reference.

GetMapMarkerType - returns the type of icon used to represent the location on the map. SetMapMarkerType - sets the type of icon used to represent the location on the map.

GetMapMarkers - returns an Array containing all map marker references. The filter argument can be used to filter out markers based on their visibility and accessibility: The default filter value is 1.

Pass a markerType parameter to include only markers of the specified type; omit it or pass zero to include all types. Actor , Class , Container , Magic Target. GetEquippedObject - returns the base object of the item equipped in the specified slot objectID: GetEquipmentSlotMask - Returns the base object of the first equipped object to match the specified equipment slot mask.

If no 'value' parameter is specified, it is assumed to be the same value as the 'mask' parameter. See the " equipment slot bit assignments " list for more info. SetMerchantContainer - replaces the specified mechant's container and returns the old container.

If the specified NPC does not have a merchant container, or if the passed reference is not a container the function does nothing and will return 0. GetHorse - returns the horse currently ridden by the calling NPC. Note that this function returns a reference while the NPC is in the process of walking toward a horse with the intention of mounting it.

GetTravelHorse - returns a reference to the travel horse used by the calling reference. IsFemale - returns 1 if the NPC is female. SetTravelHorse - Sets the travel horse used by the calling reference to the horse reference specified.

Changes alter the base actor and are not saved in the savegame unless called on the player. Changes will not be visible until the actor is reloaded; calling disable followed by enable a frame later will force the NPC to reload, updating the hair. Changes do appear to be saved for the player, but may not be visible until the game is reloaded.

CopyEyes - Copies the eyes used by one npc onto another, with the same caveats as CopyHair. GetRace - returns the race of an NPC. GetHair - returns the NPC's hairstyle hair: GetEyes - returns the NPC's eyes eyes: The code is obtained by ORing adding service flags servicesMask: A pathgrid is a set of nodes connected by edges which is used by actors to navigate the world.

Path nodes are not references, so commands cannot be called on them directly. Instead, OBSE provides an integer NodeID type uniquely describing a node; this ID can be passed to pathgrid commands to retrieve or modify the properties of a pathgrid.

Note that a NodeID is only valid for as long as the player remains in the same cell; for practical purposes they should be considered valid only for one frame. Path nodes can be disabled, in which case actors will ignore them while pathfinding. GetPathNodesInRadius - returns an Array of all path nodes located within the circular area described by the center point x, y and the radius. By default, disabled nodes are ignored; pass 1 for the optional fourth argument to include them.

GetPathNodesInRect - returns an Array of all path nodes located within the rectangular area described by the center point x, y and the extents along the x and y axes i. An angle of rotation in radians can optionally be specified; if omitted the rectangle is assumed to be aligned with the world axes.

By default, disabled nodes are ignored; pass 1 for the optional sixth argument to include them. GetPathNodePos - returns the x, y, or z coordinate of the specified path node. IsPathNodeDisabled - returns 1 if the path node is disabled. SetPathNodeDisabled - enables or disables the specified path node.

This node will no longer be used in future pathfinding attempts, but actors who have already built a path including this node may continue along it normally. If this is undesirable, calling EvaluatePackage on the actor will force it to build a new path. GetPathNodeLinkedRef - returns the persistent reference linked to this node in the editor, if any.

PathEdgeExists - returns 1 if the two nodes are connected. GetCrosshairRef - returns a reference to whatever is currently under the player's crosshair. Generally returns zero when called during menumode. Note that this function will return non-activatable references as well; use IsActivatable to determine if the reference can be activated normally. GetPlayersLastRiddenHorse - returns a reference to the horse most recently ridden by the player horse: SetPlayersLastRiddenHorse - marks the specified horse as the horse most recently ridden by the player.

This is the horse that will accompany the player when fast traveling while dismounted. The argument must be a Creature of type Horse. Additionally, in order for the new horse to fast travel with the player it must not be owned by anyone other than the player.

ClearPlayersLastRiddenHorse - clears the game's memory of the horse last ridden by the player. This prevents any horse from accompanying the player when fast traveling, provided the player is not mounted on a horse when he travels. GetPlayersLastActivatedLoadDoor - returns a reference to the load door most recently activated by the player. GetGodMode - returns 1 if the player has toggled god mode on godMode: GetPlayerSpell - returns the objectID of the player's current spell spell: GetPlayerSpellCount - returns the player spell count count: GetNthPlayerSpell - returns the nth player spell.

Note that the CS compiler doesn't expect spells to be returned as a ref. If you are calling this function multiple times to set the same ref variable you need to assign that variable to some other type say a weapon in between your calls to this function. Otherwise the ref will continue to keep the value from the first call. GetPCAttributeBonus - returns the number of skill advancements contributing to the specified attribute's bonus for the next level.

Note that game setting multipliers applied to these values determine the actual bonus at level-up. Returns -1 if passed an invalid actor value, including Luck. SetPCAttributeBonus - sets the number of skill advancements contributing to the specified attribute's bonus for the next level. Does not affect Luck bonus. ModPCSpellEffectiveness - alters the script modifier applied to the player's spell effectiveness.

This works similarly to Oblivion's ModAV command. Positive values increases the modifier, negative values decrease it. GetPCSpellEffectivenessModifier - returns the current value of the script modifier for player spell effectiveness. Subtract this value from the return value of Player. GetSpellEffectiveness to get the player's base spell effectiveness. ModPCMovementSpeed - applies a positive or negative modifier to the player's speed attribute as used in calculating his movement speed while swimming, walking, or running.

The actual attribute is not modified, but movement calculations use the attribute value plus the modifier. Positive modifiers well above the maximum value of the speed attribute are permitted and effective; minimum speed including the modifier is limited to zero. GetPCMovementSpeedModifier - returns the current modifier applied to the player's speed for use in movement speed calculations.

Because multiple mods may change the modifier this command returns the sum of all calls to ModPCMovementSpeed. GetPlayerBirthsign - returns the birthsign chosen by the player birthsign: SetPlayerBirthsign - changes the player's birthsign to the one specified. This removes all effects of the previous birthsign and applies the effects of the new one. GetTelekinesisRef - returns a reference to the object being manipulated by the player through telekinesis, if any telekinesisRef: GetCurrentRegions - returns an Array of all the regions in which the player is currently located, if any.

In interior cells generally returns 0. Regions in exterior cells can overlap, therefore it's possible for the player to be in several regions simultaneously.

ClearActiveQuest - clears the player's active quest, if any. GetCurrentQuests - returns a list of all currently active uncompleted quests. Note that this list includes quests which do not appear in the journal Array GetCurrentQuests. IsQuestComplete - returns 1 if the specified quest is marked as 'completed'. UncompleteQuest - removes the 'completed' flag from the specified quest nothing UncompleteQuest quest: A reference to an arrow or magic projectile in the gameworld.

Note that these references are destroyed by the game after a certain period of time. If stored in a reference variable, make sure the reference is still valid before using it in a function. Also note that calling GetBaseObject on a magic projectile will return the same reference; in other words, magic projectile references are their own base objects. GetProjectileType - returns the type of the projectile projectileType: GetProjectileSource - returns the caster of a magic projectile or the archer who fired an arrow projectile source: GetMagicProjectileSpell - returns the spell attached to a magic projectile spell: SetMagicProjectileSpell - changes the spell attached to a magic projectile nothing reference.

GetArrowProjectileEnchantment - returns the enchantment on an arrow projectile enchantment: GetArrowProjectileBowEnchantment - returns the enchantment on an arrow derived from the bow from which it was fired enchantment: GetArrowProjectilePoison - returns the poison on an arrow projectile poison: This may be of interest — http: They replace cholesterol to be more precise and the evidence for the impact of this is not good http: Olive oil is OK to cook with.

Having said that — we stir fry veg in olive oil because we prefer the taste. We cook fish in butter — more stable. The exercise addition is a good one — walking better for joints than jogging — but doing something regularly is great. If his cholesterol was high and I mean high — not what docs call high — it would be a marker that there was damage that cholesterol was trying to repair.

Hello,luckily,I always used the simple logic that butter,pork fat,goose fat a duck fat are not only tastier but natural and I found the taste of margarine strange. I am so happy that we have some brave people who also have common sense and tell us the truth about food,the manufacturing processes,additives,the danger of farmaceutical drugs,vaccines etc. The damage which food and farmaceutical industry performs on people is huge and unprecedental in the whole history of human mankind.

The margarine vs butter battle is one of my fields of research and your article is very helpful and clarifying. I would like to know more about the process of producing margerine, and I would be really interested in talk to someone that could potentially show me this process.

Would you be able to point me in the direction of someone that would be able to help me in my research? I apreciate very much any possible help. Hi Juliana — I would start by looking for videos on youtube — not those provided by Unilever and the marg industry. Although those may show you the process — just turn the sound off to miss the hype and PR.

You could approach Unilever or other marg makers but they are likely to want to know your end in mind before inviting you in. Good luck Best wishes — Zoe. I am completely and utterly confused about CVD. I am a 65 yr old male. In January this year I had 3 stents placed in my coronary arteries. I was prescribed an 80mg dose of statin which I stopped after a month because of fairly serious side effects. My muscles all ached and it seemed like my muscles were wasting away. Since then I have been trying to keep my cholesterol numbers down naturally within the prescribed limits but not succeeding.

I have now gone back on a low dose of statin 10mg and immediately my numbers are all great. My doctor is pleased. I have come across your article above and feel completely at a loss again. Since having the stents put in I have taken my health very seriously completely changing my eating habits.

I now eat lots of vegetables, lean meat, fish, nuts and fruit. I thought I would help things along by using Flora proactiv how I came across your article. I will definitely give it the heave ho now but the issue of high vs low fat and high vs low cholesterol is a big worry for me. I would say in retrospect that prior to getting my stents my diet contained a lot of things like sticky buns, pies, cakes and the like which is what I have thought may have cumulatively over a number of years led to my CVD.

I have cut sugar down to a minimum now and exercise every day at least one brisk 30 minute walk. My mum is 95 and my dad died at 90 so I should have good genes. Hi Paul The more you read — of the right stuff — the less confused you should become. This is the true association between cholesterol and deaths — for men and women — CHD and all deaths http: Your genes are encouraging. Cholesterol is a healing tool — not a cause of anything.

Alas, nothing again, about us who have HeFH. I think I was the only person with the disease in the whole world who went onto LCHF with dramatic results which astounded my doctors. None of the information ever feature us and we are a fantastic group for a scientist with a pioneering spirit.

We would give you all a very good idea about LCHF, but no-one wants to take a chance with us. Hi Zoe, interesting article. His GP discovered his cholesterol level was at 9. On changing his diet to a predominantly fish based one plus reducing his alcohol intake, in just 3 months he reduced his levels to 4. What amazes me here is that none of you have been to med school or are medical Doctors,yet you seem to have it all worked out?.

When you consider all the other things that they do eat……. The industry is still pitching the big lie about how healthy margarine is. It is not only fraudulent, it is deadly. How can a company get away with making such false claims about therapeutic benefits. If this were a drug there would be disclaimers galore and hell to pay for deceptive practices. Mind you, I am sure ladies would love a dishsoap which actually DID that.

I have been post menopausal for 15 months and in the past few weeks I have felt sick, dizzy,ill,bloated,developed enormous painful breasts and now have the start of a very weak period after feeling ovulation occur! I have STOPPED eating all these products and symptoms are dying down although this forced me to go to the doctor I am not a regular who has referred me for a womb scan etc.

My cholesterol as 6. Hi Michael — Flora does lower cholesterol but why would you want to do that? Links in the post above and you need to know how Flora lowers cholesterol also above.

Best wishes — Zoe. Available in Netto, it went by the name of:. I was absolutely appalled — how do they get away with stating so blatantly, several times, that high cholesterol is a risk factor in the development of heart disease when this has never been proved and as is now known, over a certain age you lower your cholesterol at your peril.

Apart from being downright dangerous, does this not contravene the Advertising Standards? At the age of 70 I am slim, fit and healthy with cholesterol of 5. I only wish I could increase it!!! Needless to say I am continuing to eat cream, lard and butter and will not be touching statins or Flora Pro-Activ with a bargepole. I take Simvastatin, bisoprolol fumerate, aspirin and perindopril relatively small doses.

I do get patches of tiredness and my bones seem to ache a lot but I have been putting it down to my age. Having been a smoker, one thing I found out before I quit was that smoking interferes with the production of HDL cholesterol good. Wish I had known that years ago. Apparently, it is the balance between the two which is more important rather than the overall cholesterol figure. Is this the case? Do statins target both types of cholesterol or just the bad?

Where can I find out about this as all the mixed messages we get today are confusing and worrying. By the way, I love butter and really want to get off the Flora junk I have been eating for so long. Hi Lyn Well done to you for looking into this further and asking questions. This is just another game by the drug pushers to get you to take lucrative medication for life. This is what statins actually do http: Hopefully these posts help your understanding.

Try anything on here also: Hi Zoe I am 6 ft slim 73 kilos had an event 17 years ago, fixed with angeo plaste no stent, have been on statins ever since. At time of the event cholesterol was 13 has been about 3 ever since then.

I am active exercising, walking and golf twice a week. Now I feel pretty good, and very lucky to be having good health. I can see merit in your theory but there is also merit in my history. After 4 attempts to get blood which was coagulating in the machine I finally got the result 5. What am I to make of that ,cant be more active!

Cant eat more healthily. Leven zonder medicijnen diabetesforum. Hi Zoe, I found your article very interesting. I was on statins for about 2 years with varying side effects. The first statins made me very dizzy after a few days so I was put on a different make.

The side effects of these were very subtle and took a period of time to appear. I made several trips to my doctors who did several blood tests which revealed nothing. At this time neither of us suspected the statins. After some research on the internet where I found that my symptoms could be side effects of the statins I returned to the doctors as we decided that I would stop taking the statins and reduce my cholesterol by diet and exercise.

Within a week the tiredness and joint ache disappeared. So I then decided to use a cholesterol reducing spread which seemed ok. The first spread I used was Benecol light and then changed to Flora pro active light.

Just recently my joint aches came back. After reading your article I have decided not to use these spreads at all. I will let you know if my aching joints disappear.

A bit simplistic maybe, but is this wrong? Hello Zoe, been on statins low dose for years my level is. Have just come across this site, interested as I have been refusing to take statins as no family history of heart problems, have low blood pressure and no other health issues at the age of I do have serum cholesterol level 7. Nurse at a heart review worked out a ratio of 3. The article seems to suggest the body knows what is good for it. At height 5foot, weight Even your weight is great for your age — it is ideal for humans to be carrying some in reserve for situations of illness.

The scrawny died young in times gone by — those with some coverage survived the harsh times. My 79 yr old mum had an emergency appendectomy in January and lost about 20lb during the crisis.

Thank goodness she had about 20lb to lose! You may find this post interesting too: The graphs are particularly striking for women. Show that to your nurse. Your nurse is shockingly unaware of studies showing that cholesterol is particularly important in older people — lower cholesterol is strongly associated with higher deaths for good reason — because cholesterol is so utterly life vital.

Your body is making the right amount — food has nothing to do with it and never has. Since cholesterol is the essence of every cell in the body, as we age, we need more to repair and protect.

If you had surgery or an injury, your body would make more cholesterol to heal you. As a final thought — you may like to ask nursey why the patient leaflet for the most lucrative statin — Lipitor http: Zoe — I note that the BHF have a new, fund-raising ad. Perhaps the irony of this ad, compared with the one you have written about, has escaped the BHF? You have put down in words what I have been suspecting and muttering about for some time, particularly when the pro activ adverts come on TV.

Have always been suspicious of BHF and Flora, especially as the Flora logo was on the diet sheet a rather zealous nurse recently gave me when she was trying to condemn me to a life of boiled chicken and statins! Well done Zoe — another sensible and revealing article. I do admire your persistence and knowledge. With reference to the comment on Statin side effects I have long proclaimed the same with the dreaded blood pressure tablets and the ridiculous targets set for these.

Hi Zoe, I too get really pissed off with the misinformation this Charity is ignorantly spitting out! It has so much credibility in the UK too! I am extremely impressed with this heart disease hypothesis by Dr.

Hi Paul — absolutely not! I wish this blog and message could get a wider audience.