Coder Social home page Coder Social logo

ynkcc / btd-mod-helper Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gurrenm3/btd-mod-helper

0.0 0.0 0.0 120.9 MB

A powerful and easy to use API for modding BTD6, BATTD, and other Ninja Kiwi games.

License: GNU General Public License v3.0

C# 100.00%

btd-mod-helper's Introduction

BTD Mod Helper

total downloads total issues code size latest release hits

A powerful and easy to use API for modding BTD6, BATTD, and other Ninja Kiwi games. It was created with the successes and failures of previous APIs in mind so it's significantly easier to use.

How to use it

NEW: For the most up to date information, use our GitHub Wiki

Like other API, download/clone it. In your mod's Visual Studio project add a reference to BloonsTD6 Mod Helper.dll or BloonsAT Mod Helper.dll depending on your game. In your mod files, you can now use using BTD_Mod_Helper; and derivatives like using BTD_Mod_Helper.Extensions; to access the Mod Helpers contents. Thats it. Much of this API is built using extension methods, which means it's created to work along side the game's own code. So just make your mods like normal and you'll see the new features pop up in Visual Studio Intellisense. As a side note, make sure the mod is in your game's Mods folder. It needs to be run like a mod

What can this API currently help with

NEW WITH VERSION 2.0

  • A fully featured custom Tower system that makes adding new Towers vastly easier
    • ModTower for adding Towers
    • ModUpgrade for adding Upgrades
    • ModDisplay for adding Displays
  • In Game configurable settings for your mods
  • Automatic registering of textures that you include in your project

Original

  • Much of the useful game code is hidden, deeply nested, and located in obscure places. The API moves them to Game.instance and InGame.instance whenever it makes sense to make them significantly easier to access and bring awareness to their existance.
  • Many extension methods added to make modifying towers, upgrades, weapons, projectiles, and bloons easier.
  • A lot of code for towers/bloons is unconnected, meaning you have to go all over to find something. API connects them in as many ways as possible
    • Towers, TowerModels, TowerToSimulation, and TowerPurchaseButton are all inter-linked.
    • Bloons, BloonModels, and BloonToSimulation are all inter-linked
    • Same for Abilities and projectiles
    • Can get every created instance from a model. Ex: Can get every Tower/TowerToSimulation from a specific TowerModel. Applies to everything in this list
  • Massive amounts of support added for Behaviors. Can easily look for, add, and remove behaviors from nearly everything that has "behaviors"
  • Added extension methods for Arrays, System.List, Il2CppSystem.List, LockList, SizedList, IEnumerable, and Il2CppReferenceArray
    • Can convert between all of them, duplicate/clone, and change the "Type" that the collection is.
    • New support for getting items, adding items, and removing items
    • Custom linq extensions for easier manipluation
    • More
  • Support for custom textures/sprites/3d models
  • Many extensions to allow for "Cross-Game compatibility". This means you can make your mod for one game and it will work for another with little to no extra work

For BTD6:

  • Fully custom bloon sets (not possible in vanila BTD6), BloonBuilder (easier time creating custom bloon types), Json Serializer, and other useful features
  • Co-op modding techniques
  • Bugfixes for BTD6
  • More

Testimonies

Mod makers that have used this API say it's at least 3 times easier to use and more powerful than the next leading API.

Credits

This mod wouldn't be possible without all of the contributions from the community. DoomBubbles and Bowdown097 added a lot of nice features to the api and provided a lot of valuable suggestions. Mr.Nuke, James, and Timotheeee we're really helpful when it came to testing/suggesting new features. Since this api was built off of the successes/ failures of Gurren Core and the old NKHook6, it does reuse some of the extensions from them. Thanks to ASM for creating and testing those original methods

Future plans

The API already has a lot of features added, however it's nowhere near done. My goal is to make this a universal mod helper for all of Ninja Kiwi's Unity games, so there's still a ton of work ahead. Also, the Mod Helper was recently redone to allow support for BTD Battles 2 when it's released.

Contact

If you have any suggestions please join our Discord Server. My Discord name is gurrenm4#2395

btd-mod-helper's People

Contributors

danburg avatar doombubbles avatar greenphx9 avatar gurrenm3 avatar hemisemidemipresent avatar maliciousfiles avatar onixiya avatar sewer56 avatar void-n-null avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.