mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2026-04-17 06:48:42 +02:00
Adding Basic Gameplay to documentation
This commit is contained in:
277
doc/source/netscript/netscriptgangapi.rst
Normal file
277
doc/source/netscript/netscriptgangapi.rst
Normal file
@@ -0,0 +1,277 @@
|
||||
Netscript Gang API
|
||||
==================
|
||||
|
||||
Netscript provides the following API for interacting with the game's Gang mechanic.
|
||||
|
||||
The Gang API is **not** immediately available to the player and must be unlocked
|
||||
later in the game
|
||||
|
||||
**WARNING: This page contains spoilers for the game**
|
||||
|
||||
The Gang API is unlocked in BitNode-2. Currently, BitNode-2 is the only location
|
||||
where the Gang mechanic is accessible. This may change in the future
|
||||
|
||||
**Gang API functions must be accessed through the 'gang' namespace**
|
||||
|
||||
In :ref:`netscript1`::
|
||||
|
||||
gang.getMemberNames();
|
||||
gang.recruitMember("Fry");
|
||||
|
||||
In :ref:`netscriptjs`::
|
||||
|
||||
ns.gang.getMemberNames();
|
||||
ns.gang.recruitMember("Fry");
|
||||
|
||||
getMemberNames
|
||||
--------------
|
||||
|
||||
.. js:function:: getMemberNames()
|
||||
|
||||
Get the names of all Gang members
|
||||
|
||||
:returns: An array of the names of all Gang members as strings
|
||||
|
||||
getGangInformation
|
||||
------------------
|
||||
|
||||
.. js:function:: getGangInformation()
|
||||
|
||||
Get general information about the gang
|
||||
|
||||
:returns: An object with the gang information.
|
||||
|
||||
The object has the following structure::
|
||||
|
||||
{
|
||||
faction: Name of faction that the gang belongs to ("Slum Snakes", etc.)
|
||||
isHacking: Boolean indicating whether or not its a hacking gang
|
||||
moneyGainRate: Money earned per second
|
||||
power: Gang's power for territory warfare
|
||||
respect: Gang's respect
|
||||
respectGainRate: Respect earned per second
|
||||
territory: Amount of territory held. Returned in decimal form, not percentage
|
||||
territoryClashChance: Clash chance. Returned in decimal form, not percentage
|
||||
wantedLevel: Gang's wanted level
|
||||
wantedLevelGainRate: Wanted level gained/lost per second (negative for losses)
|
||||
}
|
||||
|
||||
getOtherGangInformation
|
||||
-----------------------
|
||||
|
||||
.. js:function:: getOtherGangInformation()
|
||||
|
||||
Get territory and power information about all gangs
|
||||
|
||||
:returns: An object with information about all gangs
|
||||
|
||||
The object has the following structure::
|
||||
|
||||
{
|
||||
"Slum Snakes" : {
|
||||
power: Slum Snakes' power
|
||||
territory: Slum Snakes' territory, in decimal form
|
||||
},
|
||||
"Tetrads" : {
|
||||
power: ...
|
||||
territory: ...
|
||||
},
|
||||
"The Syndicate" : {
|
||||
power: ...
|
||||
territory: ...
|
||||
},
|
||||
... (for all six gangs)
|
||||
}
|
||||
|
||||
getMemberInformation
|
||||
--------------------
|
||||
|
||||
.. js:function:: getMemberInformation(name)
|
||||
|
||||
:param string name: Name of member
|
||||
|
||||
Get stat and equipment-related information about a Gang Member
|
||||
|
||||
:returns: An object with the gang member information.
|
||||
|
||||
The object has the following structure::
|
||||
|
||||
{
|
||||
agility: Agility stat
|
||||
agilityEquipMult: Agility multiplier from equipment. Decimal form
|
||||
agilityAscensionMult: Agility multiplier from ascension. Decimal form
|
||||
augmentations: Array of names of all owned Augmentations
|
||||
charisma: Charisma stat
|
||||
charismaEquipMult: Charisma multiplier from equipment. Decimal form
|
||||
charismaAscensionMult: Charisma multiplier from ascension. Decimal form
|
||||
defense: Defense stat
|
||||
defenseEquipMult: Defense multiplier from equipment. Decimal form
|
||||
defenseAscensionMult: Defense multiplier from ascension. Decimal form
|
||||
dexterity: Dexterity stat
|
||||
dexterityEquipMult: Dexterity multiplier from equipment. Decimal form
|
||||
dexterityAscensionMult: Dexterity multiplier from ascension. Decimal form
|
||||
equipment: Array of names of all owned Non-Augmentation Equipment
|
||||
hacking: Hacking stat
|
||||
hackingEquipMult: Hacking multiplier from equipment. Decimal form
|
||||
hackingAscensionMult: Hacking multiplier from ascension. Decimal form
|
||||
strength: Strength stat
|
||||
strengthEquipMult: Strength multiplier from equipment. Decimal form
|
||||
strengthAscensionMult: Strength multiplier from ascension. Decimal form
|
||||
task: Name of currently assigned task
|
||||
}
|
||||
|
||||
canRecruitMember
|
||||
----------------
|
||||
|
||||
.. js:function:: canRecruitMember()
|
||||
|
||||
:returns: Boolean indicating whether a member can currently be recruited
|
||||
|
||||
recruitMember
|
||||
-------------
|
||||
|
||||
.. js:function:: recruitMember(name)
|
||||
|
||||
:param string name: Name of member to recruit
|
||||
|
||||
Attempt to recruit a new gang member.
|
||||
|
||||
Possible reasons for failure:
|
||||
* Cannot currently recruit a new member
|
||||
* There already exists a member with the specified name
|
||||
|
||||
:returns: True if the member was successfully recruited. False otherwise
|
||||
|
||||
getTaskNames
|
||||
------------
|
||||
|
||||
.. js:function:: getTaskNames()
|
||||
|
||||
Get the name of all valid tasks that Gang members can be assigned to
|
||||
|
||||
:returns: Array of strings of all task names
|
||||
|
||||
setMemberTask
|
||||
-------------
|
||||
|
||||
.. js:function:: setMemberTask(memberName, taskName)
|
||||
|
||||
:param string memberName: Name of Gang member to assign
|
||||
:param string taskName: Task to assign
|
||||
|
||||
Attempts to assign the specified Gang Member to the specified task.
|
||||
If an invalid task is specified, the Gang member will be set to idle ("Unassigned")
|
||||
|
||||
:returns: True if the Gang Member was successfully assigned to the task. False otherwise
|
||||
|
||||
getEquipmentNames
|
||||
-----------------
|
||||
|
||||
.. js:function:: getEquipmentNames()
|
||||
|
||||
Get the name of all possible equipment/upgrades you can purchase for your
|
||||
Gang Members. This includes Augmentations.
|
||||
|
||||
:returns: Array of strings of the names of all Equpiment/Augmentations
|
||||
|
||||
getEquipmentCost
|
||||
----------------
|
||||
|
||||
.. js:function:: getEquipmentCost(equipName)
|
||||
|
||||
:param string equipName: Name of equipment
|
||||
|
||||
Get the amount of money it takes to purchase a piece of Equipment or an Augmentation.
|
||||
If an invalid Equipment/Augmentation is specified, this function will return Infinity.
|
||||
|
||||
:returns: Cost to purchase the specified Equipment/Augmentation (number). Infinity
|
||||
for invalid arguments
|
||||
|
||||
getEquipmentType
|
||||
----------------
|
||||
|
||||
.. js:function:: getEquipmentType(equipName)
|
||||
|
||||
:param string equipName: Name of equipment
|
||||
|
||||
Get the specified equipment type, which can be one of the following:
|
||||
|
||||
* Weapon
|
||||
* Armor
|
||||
* Vehicle
|
||||
* Rootkit
|
||||
* Augmentation
|
||||
|
||||
:returns: A string stating the type of the equipment
|
||||
|
||||
purchaseEquipment
|
||||
-----------------
|
||||
|
||||
.. js:function:: purchaseEquipment(memberName, equipName)
|
||||
|
||||
:param string memberName: Name of Gang member to purchase the equipment for
|
||||
:param string equipName: Name of Equipment/Augmentation to purchase
|
||||
|
||||
Attempt to purchase the specified Equipment/Augmentation for the specified
|
||||
Gang member.
|
||||
|
||||
:returns: True if the equipment was successfully purchased. False otherwise
|
||||
|
||||
|
||||
ascendMember
|
||||
------------
|
||||
|
||||
.. js:function:: ascendMember(name)
|
||||
|
||||
:param string name: Name of member to ascend
|
||||
|
||||
Ascend the specified Gang Member.
|
||||
|
||||
:returns: An object with info about the ascension results.
|
||||
|
||||
The object has the following structure::
|
||||
|
||||
{
|
||||
respect: Amount of respect lost from ascending
|
||||
hack: Hacking multiplier gained from ascending. Decimal form
|
||||
str: Strength multiplier gained from ascending. Decimal form
|
||||
def: Defense multiplier gained from ascending. Decimal form
|
||||
dex: Dexterity multiplier gained from ascending. Decimal form
|
||||
agi: Agility multiplier gained from ascending. Decimal form
|
||||
cha: Charisma multiplier gained from ascending. Decimal form
|
||||
}
|
||||
|
||||
|
||||
setTerritoryWarfare
|
||||
-------------------
|
||||
|
||||
.. js:function:: setTerritoryWarfare(engage)
|
||||
|
||||
:param bool engage: Whether or not to engage in territory warfare
|
||||
|
||||
Set whether or not the gang should engage in territory warfare
|
||||
|
||||
getChanceToWinClash
|
||||
-------------------
|
||||
|
||||
.. js:function:: getChanceToWinClash(gangName)
|
||||
|
||||
:param string gangName: Target gang
|
||||
|
||||
Returns the chance you have to win a clash with the specified gang. The chance
|
||||
is returned in decimal form, not percentage
|
||||
|
||||
|
||||
getBonusTime
|
||||
------------
|
||||
|
||||
.. js:function:: getBonusTime()
|
||||
|
||||
Returns the amount of accumulated "bonus time" (seconds) for the Gang mechanic.
|
||||
|
||||
"Bonus time" is accumulated when the game is offline or if the game is
|
||||
inactive in the browser.
|
||||
|
||||
"Bonus time" makes the game progress faster, up to 10x the normal speed.
|
||||
|
||||
:returns: Bonus time for the Gang mechanic in seconds
|
||||
Reference in New Issue
Block a user