-
Notifications
You must be signed in to change notification settings - Fork 14
Home
DK edited this page Sep 20, 2023
·
9 revisions
Some utilitarian headers to help with x64 native plugin development
-
Config
- abstracted and contained config layer
-
ini
,toml
,json
file support -
bool
,int64_t
,double
,string
type support - built in array support
- multiple file loads
- generate default file
-
Hook
- pattern scanner
- asm patch
- cave hook
- virtual method table swap
- import address table swap
- simple function hook (write_call/write_branch)
- non-volatile call (WPO/LTCG enabled hooks)
- various usefully gathered utils
-
Logger
- logging macros
-
Utility
- function
-
consteval
helper functions retrieving the argument count of a function.
-
- model
-
Singleton
data model abstract class to save boilerplate code. -
enumeration
addition to the originalRE::stl::enumeration
.- static reflection for enum name, type name and value name, support value_type(
n
) and flag_type(1<<n
) -
std::ranges
iterator for value_range(n
) and flag_range(1<<n
)
- static reflection for enum name, type name and value name, support value_type(
-
concepts
useful concepts for contraining function templates -
struct_cast
,tuple_cast
compile time conversion for same aligned structs/tuples using structure binding (up to 9 bindable members) -
vector_cast
,range_cast
constexpr conversion forstd::ranges::range
andstd::vector
-
- numbers
- FNV-1A compile time string hashing with 32bit/64bit implementation.
- string
-
to_wstring
method -
concat
compile time string concatenation. - various string related functions using
std::ranges
-
- function
-
Extra(For SKSE)
-
CONSOLE
logging macro but for in-game console. -
serializable
painless, all-in-one serialization solution for SKSE plugins.(Planned to move to general support instead of strict SKSE)
-