Skip to content

Instantly share code, notes, and snippets.

💭
Papyrus Language

Scrivener07

💭
Papyrus Language
Block or report user

Report or block Scrivener07

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@Scrivener07
Scrivener07 / EquipmentSpeed.psc
Last active Aug 12, 2019
A script that gets the player's equipped armor and weapons weight, and reduce the movement speed by that much % as a number.
View EquipmentSpeed.psc
ScriptName EquipmentSpeed Extends ActiveMagicEffect
{A script that gets the player's equipped armor and weapons weight, and reduce the movement speed by that much % as a number.}
Actor Subject
int Value = 0 ; Used to restore the actor's `Speed` value.
Group Properties
string Property EmptyState = "" AutoReadOnly Hidden
string Property EvaluationState = "Evaluation" AutoReadOnly Hidden
View .vscode\tasks.json
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
// Papyrus Compile
// --------------------------------------------
{
"label": "SkyrimSE Compile",
View ATC.0.log
[11/06/2018 - 11:31:36PM] ATC log opened (PC-64)
[11/06/2018 - 11:31:36PM] [ATC:Map:Menu <ESM_ATC_QUST_MapMenu (0D000F99)>][Name:ATC_MapMenu, Path:ATC_MapMenu, Root:root1][OnGameReload] Registered as a custom menu.
[11/06/2018 - 11:32:23PM] [ATC:Map:Menu <ESM_ATC_QUST_MapMenu (0D000F99)>][Name:ATC_MapMenu, Path:ATC_MapMenu, Root:root1][ToggleMenu] Opened.
[11/06/2018 - 11:32:24PM] [ATC:Map:Menu <ESM_ATC_QUST_MapMenu (0D000F99)>][Name:ATC_MapMenu, Path:ATC_MapMenu, Root:root1][ToggleMenu] Closed.
[11/06/2018 - 11:32:25PM] [ATC:Map:Menu <ESM_ATC_QUST_MapMenu (0D000F99)>][Name:ATC_MapMenu, Path:ATC_MapMenu, Root:root1][ToggleMenu] Opened.
[11/06/2018 - 11:32:26PM] [ATC:Map:Menu <ESM_ATC_QUST_MapMenu (0D000F99)>][Name:ATC_MapMenu, Path:ATC_MapMenu, Root:root1][ToggleMenu] Closed.
[11/06/2018 - 11:32:29PM] [ATC:Map:Menu <ESM_ATC_QUST_MapMenu (0D000F99)>][Name:ATC_MapMenu, Path:ATC_MapMenu, Root:root1][ToggleMenu] Opened.
[11/06/2018 - 11:32:34PM] [ATC:Map:Menu <ESM_ATC_QUST_MapMenu (0D000F99)>][Name:ATC_MapMenu, P
@Scrivener07
Scrivener07 / issue
Created Aug 27, 2018
papyrus-lang (VS Code Extension)
View issue
Add completion and validation for string constants for special functions such as SetState, GetPropertyValue, etc.
Can you get me a list of the functions that only take specific strings and/or only string literals? I know FindStruct is one I haven't listed yet.
Main categories, I think:
Which functions have rules as a language construct. Like, FindStruct's arg simply can't be a value that isn't the name of a member of that struct type. (Also we might want to just hide that when we know the array isn't a struct type. Also, does FindStruct work for script objects, or only actual structs?)
Which ones can actually be anything, but we can infer what strings to show for autocomplete suggestions.
Which function arguments can only be a string literals.
Function arguments which just happen to have specific constant values that work on Fallout 4 specifically, but are not declared anywhere in a script.
@Scrivener07
Scrivener07 / OverlayLoader.as
Created May 22, 2018
F4SE for loading DDS images into scaleform.
View OverlayLoader.as
package
{
import flash.display.DisplayObject;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.net.URLRequest;
@Scrivener07
Scrivener07 / TCS\Build.ppj
Created May 14, 2018
Commonwealth Spartan
View TCS\Build.ppj
<?xml version="1.0"?>
<PapyrusProject xmlns="PapyrusProject.xsd" Output="..\..\" Flags="Institute_Papyrus_Flags.flg" Asm="Discard" Optimize="false" Release="false" Final="false">
<Imports>
<Import>.</Import>
<Import>..\F4SE</Import>
<Import>..\Base</Import>
</Imports>
<Folders>
<Folder>.</Folder>
</Folders>
View Lilac Test
[01/16/2018 - 01:25:25AM] Lilac [Lilac] Starting Lilac 1.200000 (API v2)
[01/16/2018 - 01:25:25AM] Lilac [Lilac] Executed 1 SUCCESS (0.155997 secs)
[01/16/2018 - 01:25:25AM] Lilac [Lilac] Executed 2 SUCCESS (0.155997 secs)
[01/16/2018 - 01:25:25AM] Lilac [Lilac] Executed 3 SUCCESS (0.139904 secs)
[01/16/2018 - 01:25:26AM] Lilac [Lilac] Executed 4 SUCCESS (0.281096 secs)
[01/16/2018 - 01:25:26AM] Lilac [Lilac] Executed 5 SUCCESS (0.155890 secs)
[01/16/2018 - 01:25:26AM] Lilac [Lilac] Executed 6 (1 FAILED) FAILED (0.281096 secs)
[01/16/2018 - 01:25:26AM] Lilac [Lilac] Executed 7 (2 FAILED) FAILED (0.296009 secs)
[01/16/2018 - 01:25:27AM] Lilac [Lilac] Executed 8 (3 FAILED) FAILED (0.327981 secs)
[01/16/2018 - 01:25:27AM] Lilac [Lilac] Executed 9 (4 FAILED) FAILED (0.343108 secs)
@Scrivener07
Scrivener07 / Global.0.log
Created Jan 16, 2018
Toggle Papyrus Global Profiler - Fallout 4 Games
View Global.0.log
880056303^PUSH^3591^99^None^debug..TraceUser
880056309^POP^3591^99^None^debug..TraceUser
880056312^POP^3591^98^None^games:papyrus:log..WriteLine
880056381^PUSH^3591^98^None^games:shared:ui:framework..DisplayGetMember
880056386^PUSH^3591^99^None^games:papyrus:stringtype..StringIsNoneOrEmpty
880056390^POP^3591^99^None^games:papyrus:stringtype..StringIsNoneOrEmpty
880056397^PUSH^3591^99^Games_Script_Blackjack_PlayerHuman (08002761)^Games:Shared:UI:Display..instance
880056402^POP^3591^99^Games_Script_Blackjack_PlayerHuman (08002761)^Games:Shared:UI:Display..instance
880056407^PUSH^3591^99^None^games:papyrus:stringtype..StringIsNoneOrEmpty
880056411^POP^3591^99^None^games:papyrus:stringtype..StringIsNoneOrEmpty
View BodyGen_Script.md

[[Category:Scripting]] [[Category:Papyrus]] [[Category:Script Objects]] [[Category:F4SE]] '''Extends:''' [[ScriptObject Script|ScriptObject]]

Native script that provides body generation functions.

== Definition ==

@Scrivener07
Scrivener07 / GameForms.cpp
Created Oct 9, 2017
AVI decoded for F4SE plugin. (reg2k)
View GameForms.cpp
RelocAddr<uintptr_t> s_AVFunctorVtbl(0x02C98598);
bool ActorValueInfo::AddDependentAV(ActorValueInfo* avif)
{
if (numDependentAVs < sizeof(dependentAVs) / 8)
{
dependentAVs[numDependentAVs++] = avif;
return true;
}
return false;
You can’t perform that action at this time.