Начните вводить название — например, MoreHead, Sodium или PEAK

UnboundLib — иконка
Обложка ROUNDSМод для ROUNDS

UnboundLib

от willis81808

This is a helpful utility for ROUNDS modders aimed at simplifying common tasks.

  • Легендарный
  • 3 млн скачиваний
  • Версия 3.2.14
  • Обновлён 13 января 2025
  • Не обновлялся больше года
  • Утилиты
  • Патчи

О моде UnboundLib

UnboundLib — мод для ROUNDS (Раундс) от автора willis81808. This is a helpful utility for ROUNDS modders aimed at simplifying common tasks.

Его скачали 3 млн раз: это 2-е место среди модов ROUNDS в нашем каталоге, редкость — «легендарный» (топ-5% по скачиваниям). Мод давно не обновлялся — проверьте совместимость с текущей версией игры, актуальная версия — 3.2.14.

Для работы ему нужны: MMHook, BepInExPack ROUNDS.

Полное описание UnboundLib

Автоматический перевод текста автора

Присоединяйтесь!

Для большего количества модов, новостей и поддержки присоединяйтесь к нам по раздору здесь: https://discord.gg/mGfsTvc53v

UnboundLib

Это полезная утилита для моддеров ROUNDS, направленных на упрощение определенных общих задач.

Использование

Сетевой менеджер

NetworkingManager абстрагирует сетевые возможности Photon по умолчанию в простой в использовании интерфейс, который вы можете использовать для связи между клиентами. Пример использования:

private const string MessageEvent = "YourMod_MessageEvent";

NetworkingManager.RegisterEvent(MessageEvent, (data) =>
{
	ModLoader.BuildInfoPopup("Test Event Message: " + (string)data[0]);    // should print "Test Event Message: Hello World!"
});

// send event to other clients only
NetworkingManager.RaiseEventOthers(MessageEvent, "Hello World!");

// send event to other clients AND yourself
NetworkingManager.RaiseEvent(MessageEvent, "Hello World!");

CustomCard Framework

Создайте класс для вашей карты, расширьте класс CustomCard, реализуйте его методы, а затем в вашей инициализации мода зарегистрируйте свою карту так:

void Start()
{
    CustomCard.BuildCard();
}

CustomMap Framework

Сначала создайте карту в единстве, используя пакет и экспортируйте свою сцену в AssetBundle. Затем в вашей инициализации мода зарегистрируйте свою карту так:

void Start()
{
    LevelManager.RegisterLevels(TestAssetBundle);
}

Система кредитов

Регистрация кредитов для мода так же проста, как:

void Start()
{
    Unbound.RegisterCredits(string modName, string[] credits, string linkText, string linkURL);
}

GameMode Framework

Рамка GameMode предоставляет удобный для моддинга API для пользовательских игровых режимов, позволяя модам ориентироваться на них, не зная об их существовании.

Пользовательские режимы игры определяются двумя уровнями: фактический класс режима игры, который выполняет всю тяжелую логику геймплея, и класс обработчика, который обеспечивает интерфейс между модами и режимом игры.

Крюки

Фреймворк предлагает гибкую систему крючков. С помощью крючков моди могут запускать действия в определенные моменты времени, когда игра запущена, без необходимости знать что-либо о конкретном игровом режиме или его реализации.

Крючок для триггеров

Режимы игры могут запускать асинхронные крючки, когда они хотят:

private IEnumerator RoundStart()
{
	// Hook keys are case-insensitive
	yield return GameModeManager.TriggerHook("RoundStart");

	// A healthy set of predefined keys is provided to make hooking on to them easier.
	// Predefined keys should be used in favour of custom ones when possible.
	yield return GameModeManager.TriggerHook(GameModeHooks.HookRoundStart);
}

Регистрация крючков

Моды могут регистрировать слушателей, где они хотят:

private void Init()
{
	// Hooks are called with the game mode that triggered the hook, which is always the currently active game mode
	GameModeManager.AddHook(GameModeHooks.HookRoundStart, this.OnRoundStart);
}

private IEnumerator OnRoundStart(IGameModeHandler gm)
{
	// Triggers are IEnumerators so they support yields
	yield return new WaitForSeconds(2f);

	UnityEngine.Debug.Log(gm.Name);

	/* Since triggers are IEnumerators, they must be executed within a coroutine. This means triggers are guaranteed to
	 * be able to disrupt the execution of the current game mode.
	 */
	gm.GameMode.StopAllCoroutines();
}

Существующие игровые режимы в ROUNDS, а именно Arms Race и Sandbox, также были исправлены для запуска крючков.

Настройки

Фреймворк также добавляет систему настройки, чтобы помочь модам легко изменять общие настройки игрового режима. Настройки обеспечивают простой в использовании метод для модов, чтобы изменить игровой процесс, но они возлагают большую ответственность на игровые режимы, чтобы обеспечить достаточные настройки.

Использование настроек в игровом режиме

private void CheckPoints()
{
	if (p1Points >= (int)GameModeManager.CurrentHandler.Settings["pointsToWinRound"])
	{
		WinRound();
	}
}

Изменение параметров (в моде)

private void Init()
{
	GameModeManager.AddHook(GameModeHooks.HookInitEnd, this.OnInitEnd);
}

private IEnumerator OnInitEnd(GameModeHandler gm)
{
	gm.ChangeSetting("pointsToWinRound", 10);
}

См. /UnboundLib/GameModes для деталей реализации и примера GameModeHandlers.

Развитие

Строительство проекта, скорее всего, будет работать без необходимости что-либо менять. Однако, если ваша установка ROUNDS находится в другом месте, чем C:\Program Files (x86)\Steam\steamapps\common\ROUNDS, вам нужно будет изменить путь, который мы предварительно настроили для вас:

  1. Скопировать UnboundLib/UnboundLib.csproj.user.dist в UnboundLib/UnboundLib.csproj.user
  2. Измените путь установки папки ROUNDS внутри UnboundLib/UnboundLib.csproj.user

Теперь вы можете открыть проектное решение с помощью Visual Studio.

Нужно для работы

В r2modman ставится автоматически

Моды, которым нужен UnboundLib

207 в каталоге · показаны самые популярные

RarityLib — иконка

RarityLib

A utility library for adding custom rarities to the game.

Легендарный2,3 млнБиблиотека

ModdingUtils — иконка

ModdingUtils

Utilities aimed at making modding easier and more accessible

Легендарный2,3 млнБиблиотека

CR — иконка

CR

Adds new 100 cards to the game!

Легендарный2,2 млнБиблиотека

RoundsWithFriends — иконка

RoundsWithFriends

ROUNDS multiplayer extension

Легендарный2,2 млнБиблиотека

CardChoiceSpawnUniqueCardPatch — иконка

CardChoiceSpawnUniqueCardPatch

Patches erroneous logic in the base game CardChoice method SpawnUniqueCard

Легендарный2,1 млнБиблиотека

Classes Manager Reborn — иконка

Classes Manager Reborn

A recreation of the original Classes Manager, with added features.

Легендарный2 млнБиблиотека

Как установить UnboundLib

Файл скачивается с официального сервера Thunderstore, без перезаливов и сторонних установщиков

Подробная инструкция для ROUNDS
  1. Скачайте менеджер модов r2modman (или Gale) и выберите в нём игру ROUNDS.
  2. Создайте профиль — так моды не смешаются с чистой версией игры.
  3. Найдите «UnboundLib» во вкладке Online и нажмите Download — BepInEx и все зависимости подтянутся сами.
  4. Нажмите «Start modded» — игра запустится с модами.
  5. Для мультиплеера всем игрокам нужен одинаковый набор модов: в r2modman профиль можно экспортировать кодом и отправить друзьям.
Вы автор мода? Поставьте ссылку на русское описание

Вставьте значок в описание на Thunderstore, в README или в Discord — русскоязычные игроки сразу попадут на страницу с переводом и инструкцией.

Описание на русском — Модка
Markdown[![Описание на русском — Модка](https://modka.app/badge.png)](https://modka.app/rounds/willis81808-unboundlib/)
HTML<a href="https://modka.app/rounds/willis81808-unboundlib/"><img src="https://modka.app/badge.png" alt="Описание на русском — Модка" height="44"></a>
Steam (BBCode)[url=https://modka.app/rounds/willis81808-unboundlib/]Описание на русском — Модка[/url]

Частые вопросы о UnboundLib

Как установить UnboundLib?

Скачайте менеджер модов r2modman (или Gale) и выберите в нём игру ROUNDS. Создайте профиль — так моды не смешаются с чистой версией игры. Найдите «UnboundLib» во вкладке Online и нажмите Download — BepInEx и все зависимости подтянутся сами. Нажмите «Start modded» — игра запустится с модами. Для мультиплеера всем игрокам нужен одинаковый набор модов: в r2modman профиль можно экспортировать кодом и отправить друзьям.

Безопасен ли UnboundLib?

Файл скачивается с официального сервера Thunderstore, куда его загрузил willis81808. Мы не перезаливаем и не изменяем моды.

Нужно ли друзьям ставить UnboundLib?

Автор не указал, клиентский это мод или серверный. Безопаснее, чтобы одинаковый набор модов был у всех игроков в лобби: проще всего поделиться профилем r2modman.

Что нужно для работы UnboundLib?

Установите вместе с ним: MMHook, BepInExPack ROUNDS. В менеджере модов зависимости подтягиваются автоматически.

Когда UnboundLib обновлялся последний раз?

13 января 2025, актуальная версия — 3.2.14. Это больше года назад: перед установкой проверьте, работает ли мод на текущей версии игры.

Похожие моды

Все моды на ROUNDS
RoundWithBots — иконка

RoundWithBots

Tired of waiting for friends in Rounds or don't have friends who own the game? The RoundWithBot mod solves this by allowing you to play with AI bots. Simply press 'B' to activate the bot feature and 'R' to ready up, and enjoy Rounds anytime!

Обычный148 тыс.Геймплей

SelectAnyNumber — иконка

SelectAnyNumber

Allows you to select any number of cards.

Обычный102,5 тыс.Геймплей

youtubers cards — иконка

youtubers cards

YOUTUBER CARDS MADE BY BENJIARML dis: https://discord.gg/tkfSe6Xb

Обычный62,1 тыс.Карты

ModdedRoundsStarterpack — иконка

ModdedRoundsStarterpack

Complete starterpack for Modded ROUNDS. Adds over 720 cards and 340 maps, as well as QOL mods, performance improvements, and a variety of patches.

Обычный61,4 тыс.Карты

JARL — иконка

JARL

JARL (Just Another Rounds Library) is a versatile toolkit that introduces a Armor Framework and provides utilities like CustomCardUnity to streamline the creation of custom cards in Unity

Редкий300 тыс.Карты

AALUND13 Cards — иконка

AALUND13 Cards

Explore a collection of unique cards crafted by 'AALUND13'. If you encounter any issues, please report them on the GitHub page.

Редкий262,8 тыс.Карты