.. _netscript_singularityfunctions:

Netscript Singularity Functions
===============================

.. warning:: This page contains spoilers for the game.

The Singularity Functions are a special set of Netscript functions that allow the player to control additional aspects of the game such as working for factions/companies, purchasing/installing Augmentations, and creating programs.

The Singularity Functions are **not** immediately available to the player and must be unlocked later in the game.

The player has access to all of these functions while in BitNode-4. Completing BitNode-4 and gaining its source-file unlocks certain Singularity Functions for use in other BitNodes, with all functions accessible at level 3. 

.. toctree::
    :caption:  Level 1 Functions
    
    universityCourse() <singularityfunctions/universityCourse>
    gymWorkout() <singularityfunctions/gymWorkout>
    travelToCity() <singularityfunctions/travelToCity>
    purchaseTor() <singularityfunctions/purchaseTor>
    purchaseProgram() <singularityfunctions/purchaseProgram>
    getCurrentServer() <singularityfunctions/getCurrentServer>
    connect() <singularityfunctions/connect>
    manualHack() <singularityfunctions/manualHack>
    installBackdoor() <singularityfunctions/installBackdoor>
    hospitalize() <singularityfunctions/hospitalize>
    isBusy() <singularityfunctions/isBusy>
    
.. toctree::
    :caption:  Level 2 Functions
    
    stopAction() <singularityfunctions/stopAction>
    upgradeHomeRam() <singularityfunctions/upgradeHomeRam>
    getUpgradeHomeRamCost() <singularityfunctions/getUpgradeHomeRamCost>
    workForCompany() <singularityfunctions/workForCompany>
    applyToCompany() <singularityfunctions/applyToCompany>
    getCompanyRep() <singularityfunctions/getCompanyRep>
    getCompanyFavor() <singularityfunctions/getCompanyFavor>
    getCompanyFavorGain() <singularityfunctions/getCompanyFavorGain>
    checkFactionInvitations() <singularityfunctions/checkFactionInvitations>
    joinFaction() <singularityfunctions/joinFaction>
    workForFaction() <singularityfunctions/workForFaction>
    getFactionRep() <singularityfunctions/getFactionRep>
    getFactionFavor() <singularityfunctions/getFactionFavor>
    getFactionFavorGain() <singularityfunctions/getFactionFavorGain>
    upgradeHomeCores() <singularityfunctions/upgradeHomeCores> 
    
.. toctree::
    :caption:  Level 3 Functions
    
    donateToFaction() <singularityfunctions/donateToFaction>
    createProgram() <singularityfunctions/createProgram>
    commitCrime() <singularityfunctions/commitCrime>
    getCrimeChance() <singularityfunctions/getCrimeChance>
    getCrimeStats() <singularityfunctions/getCrimeStats>
    getOwnedAugmentations() <singularityfunctions/getOwnedAugmentations>
    getOwnedSourceFiles() <singularityfunctions/getOwnedSourceFiles>
    getAugmentationsFromFaction() <singularityfunctions/getAugmentationsFromFaction>
    getAugmentationCost() <singularityfunctions/getAugmentationCost>
    getAugmentationPrereq() <singularityfunctions/getAugmentationPrereq>
    getAugmentationPrice() <singularityfunctions/getAugmentationPrice>
    getAugmentationRepReq() <singularityfunctions/getAugmentationRepReq>
    getAugmentationStats() <singularityfunctions/getAugmentationStats>
    purchaseAugmentation() <singularityfunctions/purchaseAugmentation>
    installAugmentations() <singularityfunctions/installAugmentations>
    softReset() <singularityfunctions/softReset>


.. toctree::
    :caption: Deprecated:

    getStats() <singularityfunctions/getStats>
    getCharacterInformation() <singularityfunctions/getCharacterInformation>