Install and configure
RPS SDK is one repository with provider-specific header-only targets. Add it once and link only the provider contracts your plugin consumes.
Source-tree consumption
add_subdirectory(path/to/RPS_SDK EXCLUDE_FROM_ALL)
target_link_libraries(MyPlugin PRIVATE RPS::PAPER)
Installed-package consumption
find_package(RPS_SDK CONFIG REQUIRED)
target_link_libraries(MyPlugin PRIVATE RPS::PAPER)
Then include:
#include "PAPERApi.h"
RPS::PAPER supplies the public include directory. It adds no static/import
library, deploy step, runtime DLL or private PAPER source dependency.
If your plugin also consumes ROCK, link RPS::ROCK; RPS::SDK publishes both
include surfaces for consumers that genuinely need both. Prefer the narrow
provider target for single-provider mods.
Requirements
Your own plugin still owns its F4SE bootstrap, FO4VR executable gate, logging,
game-data lifecycle and shutdown order. PAPER API calls begin only after
PAPER.dll is loaded and the provider is ready.
Continue with your first consumer.