Table of Contents

Struct GameOffset

Namespace
SkyrimForge
Assembly
SkyrimForge.dll

How far into a function an instruction sits, in bytes, stated separately for each runtime.

public readonly struct GameOffset : IEquatable<GameOffset>
Implements
Inherited Members

Remarks

Each is a separate reading off a disassembly, and one is valid only for the build it was read from. The Anniversary Edition value covers every 1.6 and 1.7 build, so a patch moving the function's instructions leaves the number naming some other instruction or the middle of one. An address library identifier is mapped per build and survives a patch, so FindCallSite(GameFunction, GameFunction, int, int) finds a call site on every build, where this states one read from a disassembly.

Constructors

GameOffset(uint, uint, uint)

How far into a function an instruction sits, in bytes, stated separately for each runtime.

public GameOffset(uint SpecialEdition, uint AnniversaryEdition, uint VR)

Parameters

SpecialEdition uint

The offset on Skyrim Special Edition.

AnniversaryEdition uint

The offset on Anniversary Edition.

VR uint

The offset on Skyrim VR.

Remarks

Each is a separate reading off a disassembly, and one is valid only for the build it was read from. The Anniversary Edition value covers every 1.6 and 1.7 build, so a patch moving the function's instructions leaves the number naming some other instruction or the middle of one. An address library identifier is mapped per build and survives a patch, so FindCallSite(GameFunction, GameFunction, int, int) finds a call site on every build, where this states one read from a disassembly.

Properties

AnniversaryEdition

The offset on Anniversary Edition.

public uint AnniversaryEdition { get; init; }

Property Value

uint

SpecialEdition

The offset on Skyrim Special Edition.

public uint SpecialEdition { get; init; }

Property Value

uint

VR

The offset on Skyrim VR.

public uint VR { get; init; }

Property Value

uint

Methods

Deconstruct(out uint, out uint, out uint)

public void Deconstruct(out uint SpecialEdition, out uint AnniversaryEdition, out uint VR)

Parameters

SpecialEdition uint
AnniversaryEdition uint
VR uint

Equals(GameOffset)

public bool Equals(GameOffset other)

Parameters

other GameOffset

Returns

bool

Equals(object)

public override bool Equals(object obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToString()

public override string ToString()

Returns

string

Operators

operator ==(GameOffset, GameOffset)

public static bool operator ==(GameOffset left, GameOffset right)

Parameters

left GameOffset
right GameOffset

Returns

bool

operator !=(GameOffset, GameOffset)

public static bool operator !=(GameOffset left, GameOffset right)

Parameters

left GameOffset
right GameOffset

Returns

bool