Skip to content

windy10v10ai/game

Repository files navigation

Windy10v10AI

This is a PVE Dota2 custom game. 10 Players vs 10 crazy Bots.

这是一个PVE的Dota2的自定义游戏。10位玩家 挑战 10个疯狂的AI。

Steam workshop

https://steamcommunity.com/sharedfiles/filedetails/?id=2307479570

Table of Contents 目录

  1. Contributing 参与开发
  2. Get Start 环境配置
  3. Develop 开发

Contributing 参与开发

If you would like to contribute to Windy10v10AI, please see our contributing guidelines.

如果你想参与Windy10v10AI的开发,请参考我们的参与指南

Get Start 环境配置

Requirement 环境要求

Windows 10/11

Develop Tool 开发工具

Install 安装

  1. Install Dota2 and Dota 2 Workshop Tools.
  2. Install node.js. v20
  3. Clone this repository to local. Run npm install in the repository root directory. Content and game folder will be linked to dota2 dota_addons directory.

Develop 开发

Launch Dota2 devTools and build the project

Run in windows powershell/cmd

npm run start

Optional Command

Run in Dota2 Console

# launch/relaunch custom game
dota_launch_custom_game windy10v10ai dota
# show game end panel
dota_custom_ui_debug_panel 7
# reload lua
script_reload
# Speeds the game up to that number 加速游戏到指定倍速
host_timescale <float>

How to compile item png to vtex_c (Deprecated)

Create item XML file in dota 2 content folder then run tool/compile_item_png.bat

FYI: https://www.reddit.com/r/DotA2/comments/8yymx9/item_icons_mods_dont_work_since_one_of_latest/

How to compile png to vtex_c (Recommended) 如何编译图片png文件

  1. Add png file to content/panorama/images folder.
  2. Add image to content/panorama/layout/custom_game/images.xml file.

png will be compiled to vtex_c automatically when you run npm run start.

Troubleshooting 故障排除

This code needs to be on the same hard drive partition as dota2.
代码需要和dota2在同一块硬盘分区上。

Reinstall solve most of the problems.
重新安装可以解决大部分问题。

rm -r ./node_modules
npm install

Documentation 文档

Supported by ModDota template and x-template

ModDota template

https://github.com/ModDota/TypeScriptAddonTemplate

X-Template

https://github.com/XavierCHN/x-template

Typescript to lua

ModDota template README

Panorama UI with webpack, TypeScript and React.

Contents 文件夹内容说明

  • [src/common]: TypeScript .d.ts type declaration files with types that can be shared between Panorama and VScripts
  • [src/vscripts]: TypeScript code for Dota addon (Lua) vscripts. Compiles lua to game/scripts/vscripts.
  • [src/panorama]: TypeScript code for panorama UI. Compiles js to content/panorama/scripts/custom_game

  • [game/*]: Dota game directory containing files such as npc kv files and compiled lua scripts.
  • [content/*]: Dota content directory containing panorama sources other than scripts (xml, css, compiled js)

  • [src/vscripts]: 用来写tstl代码,lua脚本会被编译到game/scripts/vscripts目录下
    • [src/vscripts/shared]: 用来写panorama tststl公用的声明,如custom_net_tables
  • [src/scripts]: 各种 node 脚本,用来完成各种辅助功能

  • [game/*]: 会和 dota 2 beta/game/dota_addons/your_addon_name 同步更新
  • [content/*]: 会和 dota 2 beta/content/dota_addons/your_addon_name 同步更新

维护指南

Console报错

console中有如下报错时,技能特效会消失,需要删除对应的文件,然后重新启动Dota2即可。

Failed loading resource "particles/units/heroes/hero_skywrath_mage/skywrath_mage_mystic_flare_ambient.vpcf_c" (ERROR_BADREQUEST: Code error - bad request)