Date uploaded | 3 years ago |
Version | 3.0.0 |
Download link | tristanmcpherson-R2API-3.0.0.zip |
Downloads | 19733 |
Dependency string | tristanmcpherson-R2API-3.0.0 |
This mod requires the following mods to function
RiskofThunder-R2API_Networking
Networking API around the Unity UNet Low Level API (LLAPI)
Preferred version: 1.0.2bbepis-BepInExPack
Unified BepInEx all-in-one modding pack - plugin framework, detour library
Preferred version: 5.4.2109RiskofThunder-R2API_Orb
API for creation and management of custom Orb types.
Preferred version: 1.0.1RiskofThunder-R2API_Language
API for modifying the language localisation of the game
Preferred version: 1.0.1RiskofThunder-R2API_Director
API for easily modifiying the Director (RoR2 monster / interactable spawner) behaviour
Preferred version: 1.1.1RiskofThunder-R2API_Unlockable
API for adding custom achievements and unlockables
Preferred version: 1.0.2RiskofThunder-R2API_TempVisualEffect
API for adding custom temporary visual effects for characters.
Preferred version: 1.0.2RiskofThunder-R2API_Prefab
API for Prefab creation, networking and duplication
Preferred version: 1.0.3RiskofThunder-R2API_Loadout
API for registering skills, skins and entity states
Preferred version: 1.0.2RiskofThunder-R2API_SceneAsset
API for retrieving assets that live exclusively in game scenes
Preferred version: 1.1.1README
R2API – a modding API for Risk of Rain 2
RoR2 1.0 - IMPORTANT NOTICE
In the Release version of RoR2, Hopoo Games made a NetworkModCompatibilityHelper
class, which can be given a mod list that is then transformed into a hash that will be checked upon client connection in multiplayer.
If the hash doesnt correspond between the server and the connecting client, the connection is refused.
R2API will add mods to that mod list if they:
- Use the
NetworkCompatibility
Attribute, either as an custom assembly attribute, or at the top of their plugin class inheriting fromBaseUnityPlugin
with the first argument beingCompatibilityLevel.EveryoneMustHaveMod
. - Don't have the
NetworkCompatibility
Attribute or theManualNetworkRegistrationAttribute
anywhere in their assembly.
About
R2API is a modding framework for other mods to work in, providing centralized and simplified APIs for Risk of Rain 2. This helps keeping mods compatible with each other.
At it's core, R2API should not change how the game behaves without any other mod installed. The only change is to keep mods out of quickplay and prismatic trials by request of the Hopoo Games team.
Installation
The contents of R2API
should be extracted into the BepInEx
folder, such that the files inside the monomod
folder in the zip sit in the monomod
folder in BepInEx and the files and folder in plugins
in the archive is inside your plugins
folder.
A succesful installation should look like this: (click to enlarge)
Developing
A lot of documentation is in the included xmldocs, and further information may be on the dedicated R2API wiki. Do not hestiate to ask in the modding discord too!
Bleeding Edge
Unless you are a mod developer, you won't need this.
Want to get the latest versions of R2API? The latest bleeding edge builds of master
are hosted on Azure, and may be downloaded using the Artifacts
drop down menu.
Note that such builds may be unstable.
Changelog
The most recent changelog can always be found on the Github. In this readme, only the most recent minor version will have a changelog.
Current
- Fix things for 1.0 release
- IMPORTANT FOR MOD DEVS: Add NetworkCompatibility Helper
- Remove 'MOD' from dedicated server listings as it's already shown in the tags
- Fixed bug with ConvertToFullpath by enforcing that ModPrefix start with @
- Fixed being unable to have assets with the same path but different type in UnbundledResourceProvider
- Added NetworkingAPI now integrating networking components into R2API!
- Added DotAPI to handle Dots
- Update EliteAPI to spawn correctly
- Add UnlockablesAPI
2.4.29
- disable ConCommand steam_quickplay_start
- Add Skymeadow to directorAPI
- ItemDropAPI: Allow public removal of items from the default drop lists
- Fix SurvivorAPI misidentifies survivors with missing newline characters
- Prevent adding XML unsafe items
- Fix Custom equipment not displaying on bodies
- Converted LoadRequest to use cecil
2.4.16
- Fix R2API plugin dependency of MonoMod patcher file
- Remove faulty hook around chests' item rolling.
- Remove savety hooks for userprofile as RoR2 does that now out of the box
- Seperate BuffAPI and EliteAPI from ItemAPI
- Fix Reflection utils
- Update to latest BepInEx for building
2.4.10
- Fix for the descriptionToken of custom survivors
- Update for latest game update:[A]](https://github.com/risk-of-thunder/R2API/pull/128) B C
- Add UnbundledResourceProvider (allows to add generated assets easily)
2.4.2
2.4.1
- Allow mods to check if a R2API Submodule is loaded without needing an R2API instance
- Allow custom survivors to define display rules for custom items & improve code quality of display rules
- Allow custom items to define display rules for individual models
- Added more overloads for Direct Messages
- Rewrote the readme
- Updated AssetPlus to allow mass language changes without reloading the current language
2.3.22
- Disabled ModListAPI as it was causing issues in multiplayer games
- Prevent issues with itemDropAPI regarding overgrown printers
2.3.20
- Fix a lot of things in ModListAPI
- Added safeties to certain APIs: A B
- Added
IsLoaded(string)
to check if a submodule is loaded correctly - Change ItemAPI to return more useful values
- Fix R2API not checking for submodule dependencies in certain folders
2.3.17
- Added warning when monomod patch is missing
- Add ModListAPI (And this one)
- Merged EntiyAPI, SkillAPI, SkinAPI, and LoadoutAPI
- Protect userprofiles from out of range indexes
- Fix R2API not loading when not in own subfolder
- Add
[mod]
prefix to dedicated servers - Added utils for direct messages to clients
2.3.7
2.3.5
- Update for 4478858
- APISubmodule now only loads requested submodules
- Added 5 new APIs: DirectorAPI, PrefabAPI, OrbAPI, SkinAPI, SkillAPI, EffectAPI
2.3.0
- Added Submodule Dependencies.
- Add more AssetPlus language features
- Add UnityEngine.Color overload for colored messages
- Added DifficultyAPI
- Disable vanilla sorting of modded entries
- Ease the use of CommandHelper and added ability to add convars
- Added ResourcesAPI
- Added ItemAPI
- Fix issues in vanilla mod helpers