- Parses a Papyrus Script File
- Converts the Papyrus into LUA Code
- Creates Actor with randomized attributes or manually Stamina, Health, FireResist etc etc..
- Runs in a Virtual Machine
Currently i am using it for Mathematical uses
Papyrus Function
Int Function DetermineClassStyle(Actor akActor) Int nCombat = ((akActor.GetActorValue("Marksman")+akActor.GetActorValue("Block")+akActor.GetActorValue("HeavyArmor")+akActor.GetActorValue("Onehanded")+akActor.GetActorValue("Smithing")+akActor.GetActorValue("Twohanded")) / 6) As Int Int nMagic = ((akActor.GetActorValue("Alteration")+akActor.GetActorValue("Conjuration")+akActor.GetActorValue("Destruction")+akActor.GetActorValue("Enchanting")+akActor.GetActorValue("Illusion")+akActor.GetActorValue("Restoration")) / 6) As Int Int nThief = ((akActor.GetActorValue("Alchemy")+akActor.GetActorValue("LightArmor")+akActor.GetActorValue("Lockpicking")+akActor.GetActorValue("Pickpocket")+akActor.GetActorValue("Sneak")+akActor.GetActorValue("Speechcraft")) / 6) As Int If (nCombat > nMagic) && (nCombat > nThief) Return 1 ;Combat ElseIf (nMagic > nCombat) && (nMagic > nThief) Return 2 ;Magic ElseIf (nThief > nCombat) && (nThief > nMagic) Return 3 ;Thief EndIf Return 0 ;All skills are equalEndFunction
LUA Function
function DetermineClassStyle(actor) local nCombat = ((actor:GetActorValue("Marksman")+actor:GetActorValue("Block")+actor:GetActorValue("HeavyArmor")+actor:GetActorValue("Onehanded")+actor:GetActorValue("Smithing")+actor:GetActorValue("Twohanded")) / 6) local nMagic = ((actor:GetActorValue("Alteration")+actor:GetActorValue("Conjuration")+actor:GetActorValue("Destruction")+actor:GetActorValue("Enchanting")+actor:GetActorValue("Illusion")+actor:GetActorValue("Restoration")) / 6) local nThief = ((actor:GetActorValue("Alchemy")+actor:GetActorValue("LightArmor")+actor:GetActorValue("Lockpicking")+actor:GetActorValue("Pickpocket")+actor:GetActorValue("Sneak")+actor:GetActorValue("Speechcraft")) / 6) if (nCombat > nMagic) and (nCombat > nThief) then return 1 --Combat elseif (nMagic > nCombat) and (nMagic > nThief) then return 2 --Magic elseif (nThief > nCombat) and (nThief > nMagic) then return 3 --Thief end return 0 --All skills are equalend