User:Polavux/Technical information guidelines

From Blooncyclopedia, the independent Bloons knowledge base
Revision as of 08:06, 18 April 2026 by Polavux (talk | contribs) (Created page with "wipwipwip ==What these articles should cover== *Data structures and classes. *file formats unique to these games. *The Open Data API. ==What these articles should not cover== *Documentation of third-party tools, frameworks, APIs, game engines, or other software. This applies to software used in the games themselves, such as Unity and Flash, as well as modding and reverse engineering tools, such as MelonLoader. Please insert external links to documentation of these if p...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

wipwipwip

What these articles should cover

[edit | edit source]
  • Data structures and classes.
  • file formats unique to these games.
  • The Open Data API.

What these articles should not cover

[edit | edit source]
  • Documentation of third-party tools, frameworks, APIs, game engines, or other software. This applies to software used in the games themselves, such as Unity and Flash, as well as modding and reverse engineering tools, such as MelonLoader. Please insert external links to documentation of these if possible, though, as they are still useful reference material.
  • Hardware. This means things like the Nintendo DSi and PlayStation Portable.
  • Decryption. While you may document the structure of encrypted files when they are decrypted, explaining how to decrypt or bypass the encryption of these files is forbidden. This includes passwords for zip files. This only applies if a file is explicitly encrypted for the sake of encryption; files that simply use a proprietary file format for other reasons (such as .mask files in Bloons TD 5) or are encoded in a generic way for the sake of data compression (such as level data in the Flash version of Bloons Super Monkey 2) are fair game.
  • Accessing and using non-public APIs. In addition to the Open Data API, Ninja Kiwi has other APIs used internally by their games and services.
  • Anything that can expose PII of other players.

Formatting data structures and classes

[edit | edit source]

Each parameter should list its name (if possible), datatype, and a description of what it does. Behaviors that arise from parameters or settings of parameters that are not used in the vanilla game should also be documented (for example, if a parameter is only ever set to a positive number in the vanilla game but it can be set to a negative number).

Example

[edit | edit source]
Key Description Type Required? Behavior when absent
TowerType The type of tower that is being created. String Yes Creates an invalid tower
TowerLifetime How long the created tower lasts. Number No The created tower lasts infinitely
TowerColour Applies a RGBA multiply colour on top of the created tower. First number controls the red channel, second controls the green channel, third controls the blue channel, the fourth is supposed to control the alpha channel but it doesn't work. Array of Numbers No Defaults to [ 255, 255, 255, 255 ]
HasParentTower Determines if the created tower also gets destroyed if its "parent" tower get sold. Boolean No Defaults to false
UseParentTowerUpgradeLevel Determines whether the created tower should copy the upgrade layout from the 'parent' tower that created it. Boolean No Defaults to false
[edit | edit source]