Как вы могли бы вызвать метод в запущенном приложении C # из Java? - PullRequest
0 голосов
/ 14 октября 2019

Мой друг и я работаем над "модом" для игры под названием Stickfight. Мод написан на Kotlin (совместим с Java), но он ограничен из-за того, что мы не можем вызывать методы.

Возможно ли это? Есть библиотеки для этого?

Если это поможет, Stickfight был сделан в Unity.

1 Ответ

0 голосов
/ 14 октября 2019

Прежде всего вы должны понять, была ли игра скомпилирована с Mono или IL2CPP. Если был использован IL2CPP, то исходный код C # теперь является C ++ (скомпилирован в собственном машинном коде), поэтому вы вообще не можете вызывать метод C #. Если используется моно, вы сможете вызывать метод C #, но только если разработчик игры действительно приложит некоторые усилия для поддержки моддинга таким образом (подробнее здесь): http://www.somasim.com/blog/2017/12/tech-notes-unity-game-modding/

Конечно, естьМногочисленные проблемы с этим, один пример - это то, что это совместимо только с платформой Windows (но одна из замечательных особенностей Unity - это то, что он позволяет кросс-платформенную поддержку с очень небольшими усилиями (главное, чтобы она работала на мобильных устройствах, этосоздать систему ввода с сенсорным экраном)).

Игры Unity нелегко модифицировать, и причина в том, что фреймворк сделан кроссплатформенным (а некоторые платформы не поддерживают своевременность и дажеIL2CPP не поддерживает его). Единственное реальное решение заключается в том, что разработчик игры решает поддерживать язык сценариев, такой как lua, с чем-то вроде miniscript или moonsharp, но, поскольку вы не разработчик, я предлагаю вам связаться с разработчиком, чтобы понять, попытается ли он / она реализоватьчто-то, чтобы помочь вам с моддингом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...