Шаблон разработки пользовательских игр для Dota 2 от Завьера (переведено на английский с помощью chatgpt)
Если вы хотите использовать этот шаблон, помимо владения инструментами разработки Valve, вам также необходимо изучить
- синтаксис
typescript
,javascript
- основы
react
- основы
node.js
- изучить react-panorama
- изучить TypeScriptToLua
- ознакомиться с
DOTA2 Typescript API
, вы можете посмотретьnode_modules/dota-lua-types
иnode_modules/panorama-types
, когда закончите выполнениеyarn
.
- преобразование файлов xlsx, xls kv в файл kv и помещение его в
game/scripts/npc
, - преобразование
addon.csv
вaddon_*.txt
, (вы также можете обратно преобразовать их вaddon.csv
), - преобразование файлов kv в файлы json, чтобы вы могли получать данные kv в интерфейсе Panorama,
- использование TypeScript для написания игровой логики и интерфейса Panorama в
content/panorama/src
иgame/scripts/src
.
- пожалуйста, проверьте
gulpfile.ts
для получения дополнительной информации.
yarn launch [[addon_name] map_name]
запускает Dota 2, все параметры необязательны, если указаноaddon_name
, то будет загружен указанный аддон (по умолчанию загружается этот проект), если указаноmap_name
, то автоматически будет загружено соответствующее имя карты (еслиaddon_name
не указан, то по умолчанию будет загружен текущий аддон)yarn dev
вход в режим разработки для компиляции и отслеживания изменений файлов ts.yarn prod
для выполнения операцииpublish
, автоматически создает папкуpublish
и автоматически создает ссылку на папкуdota_addons/you_addon_name_publish
, затем вы можете выбрать эту папку для публикации (вы можете установить некоторые настройки для публикации вpackage.json -> dota_developer
, чтобы задать некоторые настройки для публикации).yarn compile
для компиляции исходного содержимого
- нажмите "Use this project as a template" для создания своего проекта или форкните этот проект
- установите
node.js
, требуется версия Node не ниже 14.10.1 ~~ так как более старшие версии не тестировались ~~ - клонируйте созданный проект или форк
- откройте
package.json
и изменитеname
на предпочитаемое имя - выполните
yarn
для установки зависимостей, это должно автоматически создать ссылку на папкиcontent
иgame
в вашем каталогеdota 2 beta/dota_addons/your_preferred_name
(если возникнут проблемы с разрешениями, попробуйте перезапустить) - выполните
yarn dev
и начните разработку
content
синхронизирован сdota 2 beta/content/dota_addons/your_addon_name
game
синхронизирован сdota 2 beta/game/dota_addons/your_addon_name
shared
для написания общих объявлений, используемых вpanorama
иtypescript-to-lua
, например,custom net tables
excels
для редактирования таблиц kvlocalization
для написания локализационных файловscripts
содержит некоторые вспомогательные скрипты
- если вам нужна шифрование, посмотрите
scripts/publish.js
- не стесняйтесь создавать
issues
- вклад в развитие приветствуется
- Сообщество ModDota
- React-panorama разработан https://github.com/ark120202
- Некоторый код взят из https://github.com/MODDOTA/TypeScriptAddonTemplate