PathsPlusPlus
A helper mod allowing additional upgrade paths and tiers to be made for towers.
截圖 共 3 張
模組介紹 作者原文
Paths++
A helper mod allowing additional upgrade paths to be made for towers.
Toggle "Balanced Mode" to switch from being still only able to get up to 5 upgrades in any one path and 2 in another, vs getting all vanilla upgrades you normally can as well as any/all available Paths++ upgrades.
Toggling off Balanced Mode can also function well with Ultimate Crosspathing, allowing you to get 5/5/5/5... towers (assuming the Mod Creators were keeping it in mind while coding).
Example Mods
doombubbles' Tornado Wizards
doombubbles' Mirror Universe Paths
For Modders: Creating your own Path++ mod
Reference Paths++ in your mod
Add Paths++ as a dependency for your mod within your csproj, which can be done by adding this to your main PropertyGroup:
PathsPlusPlus
Doing this will make sure the PathsPlusPlus dll is referenced properly by your csproj from your Mods folder.
Full.csproj example
net6.0
MirrorUniversePaths
Debug;Release
enable
MirrorUniversePaths
preview
False
embedded
PathsPlusPlus
You should also list Paths++ as a dependency in your ModHelperData, that will look something like this
public static class ModHelperData
{
/... /
public const string Dependencies = "doombubbles/PathsPlusPlus";
}
Doing this will also make your GitHub actions workflow download Paths++ automatically when building.
Old Instructions
The easiest way to reference the PathsPlusPlus dll is to put the following within your.csproj file (BELOW where you import btd6.targets)
$(BloonsTD6)\Mods\PathsPlusPlus.dll
Full.csproj example
net6.0
FourthPath
Debug;Release
enable
FourthPath
latest
false
embedded
$(BloonsTD6)\Mods\PathsPlusPlus.dll
GitHub Actions
To download PathsPlusPlus within GitHub actions, add the following step:
- name: Download PathsPlusPlus
uses: dawidd6/action-download-artifact@v6
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
workflow: build.yml
branch: main
name: PathsPlusPlus.dll
repo: doombubbles/paths-plus-plus
path: ${{ env.BLOONSTD6 }}/Mods/
Create your PathPlusPlus
Each Path++ path begins with creating a very simple class just to register your path.
All it needs to specify is which tower the path is for. UpgradeCount is set automatically based on how many upgrade classes you add.
public class DartMonkeyFourthPath: PathPlusPlus
{
public override string Tower => TowerType.DartMonkey;
}
Similarly to ModTowers from Mod Helper, your UpgradeCount should reflect how many upgrades you've actually made so far.
Extending a Vanilla Path
If you instead want to add additional upgrades to a vanilla path, create your PathPlusPlus with an override for the ExtendVanillaPath property like so.
public class DartMonkeyTopPath: PathPlusPlus
{
public override string Tower => TowerType.DartMonkey;
public override int ExtendVanillaPath => Top;
}
Create your UpgradePlusPlus(s)
For each upgrade you want in your path, you will define an UpgradePlusPlus where the generic parameter ` will be your PathPlusPlus` class above.
public class BetterDarts: UpgradePlusPlus
{
public override int Cost => 50;
public override int Tier => 1;
public override string Icon => VanillaSprites.ArmorPiercingDartsUpgradeIcon;
public override string Description => "Darts can pop Frozen bloons";
public override void ApplyUpgrade(TowerModel towerModel)
{
foreach (var damageModel in towerModel.GetDescendants().ToArray())
{
damageModel.immuneBloonProperties &= ~BloonProperties.Frozen;
}
if (IsHighestUpgrade(towerModel))
{
// apply a custom display, if you want
}
}
}
There are many familiar properties shared from ModUpgrade that all function basically the same, i.e. Cost, Tier, Icon, Description, DisplayName and ApplyUpgrade.
If you do not specify a Portrait, it will try to find an image from your mod with name {Path.Name}{Tier}.png such as DartMonkeyFourthPath1.png, otherwise the default tower portrait will be used.
If your upgrade adds an ability to the tower, override the Ability property to be true so it show
安裝與使用 安裝:按包內說明操作
- 解壓本站下載的壓縮包,先讀包內的 readme / 說明檔案。
- 多數模組依賴遊戲的模組載入器:常見做法是用社群模組管理器(如 r2modman)選中本遊戲安裝,由管理器自動處理載入器與依賴。
- 手動安裝時,把模組檔案放進遊戲目錄下對應的 Mod / plugins 資料夾。
- 啟動遊戲確認載入成功;帶「前置依賴」的模組需要把依賴一併安裝。
不同模組的安裝位置差異較大,包內說明是最可靠的依據。
下面這些內容需要先安裝,否則該模組不會生效: