ACS: Difference between revisions

From Zandronum Wiki
m (Sean moved page ACS Functions to ACS: This page is about more than the functions)
Tag: Source edit
 
(32 intermediate revisions by 6 users not shown)
Line 1: Line 1:
This is an '''incomplete''' list of Zandronum-'''only''' ACS functions. See {{zdw2|Built-in_ACS_functions|here}} for a list of ZDoom-supported ACS functions. Note that not all of them are supported by Zandronum.
This is a list of Zandronum-'''only''' ACS functions and extensions. See {{zdw2|Built-in_ACS_functions|here}} for a list of ZDoom-supported ACS functions.  


==Script Types==
For a list of all the ACS functions supported by Zandronum, [[List of ACS functions in Zandronum|click here]].
 
== Features ==
Zandronum supports [[Databases|databases]], powered by [http://sqlite.org/ SQLite].
 
== Script types ==
'''<code>[[EVENT_scripts|EVENT]]</code>''' scripts are executed when specific game events occur.
'''<code>[[EVENT_scripts|EVENT]]</code>''' scripts are executed when specific game events occur.


Line 8: Line 13:
* <code>'''CLIENTSIDE'''</code> scripts client-side and can not be executed by the puke command.
* <code>'''CLIENTSIDE'''</code> scripts client-side and can not be executed by the puke command.
* <code>'''NET CLIENTSIDE'''</code> scripts are client-side and can be executed by the puke command.
* <code>'''NET CLIENTSIDE'''</code> scripts are client-side and can be executed by the puke command.
<br>
In this example, when someone picks up the enemy item it will start this script on the Client side:
Script 1 PICKUP CLIENTSIDE
{
    {{zdoomwiki|Print}}(s:"Someone got the flag!");
}


It is worth reading [[Clientside Scripting]] if you intend on using CLIENTSIDE scripts.
It is worth reading [[Clientside Scripting]] if you intend on using CLIENTSIDE scripts.


==ACS Functions==
==ACS Functions==
* <code>[[AddBot]]</code> {{Devfeature|3.2|alpha}}
* <code>[[AnnouncerSound]]</code>
* <code>[[AnnouncerSound]]</code>
* <code>[[BanFromGame]]</code> {{Devfeature|3.2|alpha}}
* <code>[[BeginDBTransaction]]</code>
* <code>[[BeginDBTransaction]]</code>
* <code>[[ChangeTeamScore]]</code> {{Devfeature|3.2|alpha}}
* <code>[[CloseMenu]]</code> {{Devfeature|3.2|alpha}}
* <code>[[ConsoleCommand]]</code>
* <code>[[ConsoleCommand]]</code>
* <code>[[ConsolePlayerNumber]]</code>
* <code>[[ConsolePlayerNumber]]</code>
* <code>[[CountDBResults]]</code>
* <code>[[CountDBResults]]</code>
* <code>[[EndDBTransaction]]</code>
* <code>[[EndDBTransaction]]</code>
* <code>[[ExecuteClientScript]]</code>
* <code>[[FreeDBResults]]</code>
* <code>[[FreeDBResults]]</code>
* <code>[[GameType]]</code>
* <code>[[GameType]]</code>
* <code>[[GetActorSectorLocation]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetChatMessage]]</code>
* <code>[[GetCurrentGameMode]]</code>
* <code>[[GetCurrentMapPosition]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetCustomPlayerValue]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetEventResult]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetDBEntries]]</code>
* <code>[[GetDBEntries]]</code>
* <code>[[GetDBEntry‎]]</code>
* <code>[[GetDBEntry‎]]</code>
Line 37: Line 46:
* <code>[[GetInvasionState]]</code>
* <code>[[GetInvasionState]]</code>
* <code>[[GetInvasionWave]]</code>
* <code>[[GetInvasionWave]]</code>
* <code>[[GetMapRotationInfo]]</code>
* <code>[[GetMapRotationSize]]</code>
* <code>[[GetPlayerAccountName]]</code>
* <code>[[GetPlayerAccountName]]</code>
* <code>[[GetPlayerChasecam]]</code>
* <code>[[GetPlayerCountry]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetPlayerJoinQueuePosition]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetPlayerLivesLeft]]</code>
* <code>[[GetPlayerLivesLeft]]</code>
* <code>[[GetPlayerScore]]</code>
* <code>[[GetPlayerSkin]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetPlayerStatus]]</code> {{Devfeature|3.2|alpha}}
* <code>[[GetTeamProperty]]</code>
* <code>[[GetTeamProperty]]</code>
* <code>[[GetTimeProperty]]</code> {{devfeature|3.0|150831-1814}}
* <code>[[GetTimeProperty]]</code>
* <code>[[GivePlayerMedal]]</code> {{Devfeature|3.2|alpha}}
* <code>[[IncrementDBEntry]]</code>
* <code>[[IncrementDBEntry]]</code>
* <code>[[IsMultiplayer]]</code>
* <code>[[InDemoMode]]</code>
* <code>[[IsNetworkGame|IsMultiplayer]]</code>
* <code>[[IsOneFlagCTF]]</code>
* <code>[[IsOneFlagCTF]]</code>
* <code>[[KickFromGame]]</code>
* <code>[[KickFromGame]]</code>
* <code>[[LumpOpen]]</code> {{Devfeature|3.2|alpha}}
* <code>[[LumpRead]]</code> {{Devfeature|3.2|alpha}}
* <code>[[LumpReadArray]]</code> {{Devfeature|3.2|alpha}}
* <code>[[LumpReadString]]</code> {{Devfeature|3.2|alpha}}
* <code>[[LumpGetInfo]]</code> {{Devfeature|3.2|alpha}}
* <code>[[LumpClose]]</code> {{Devfeature|3.2|alpha}}
* <code>[[ExecuteClientScript|NamedExecuteClientScript]]</code>
* <code>[[RequestScriptPuke|NamedRequestScriptPuke]]</code>
* <code>[[RequestScriptPuke|NamedRequestScriptPuke]]</code>
* <code>[[SendNetworkString|NamedSendNetworkString]]</code>
* <code>[[OpenMenu]]</code> {{Devfeature|3.2|alpha}}
* <code>[[Player_SetTeam]]</code>
* <code>[[PlayerArmorpoints]]</code>
* <code>[[PlayerArmorpoints]]</code>
* <code>[[PlayerHealth]]</code>
* <code>[[PlayerHealth]]</code>
Line 51: Line 80:
* <code>[[PlayerIsSpectator]]</code>
* <code>[[PlayerIsSpectator]]</code>
* <code>[[PlayerTeam]]</code>
* <code>[[PlayerTeam]]</code>
* <code>[[RemoveBot]]</code> {{Devfeature|3.2|alpha}}
* <code>[[RequestScriptPuke]]</code>
* <code>[[RequestScriptPuke]]</code>
* <code>[[ResetCustomDataToDefault]]</code> {{Devfeature|3.2|alpha}}
* <code>[[ResetMap]]</code>
* <code>[[ResetMap]]</code>
* <code>[[SendNetworkString]]</code>
* <code>[[SetActivatorToPlayer]]</code>
* <code>[[SetCurrentGameMode]]</code>
* <code>[[SetCustomPlayerValue]]</code> {{Devfeature|3.2|alpha}}
* <code>[[SetDBEntry]]</code>
* <code>[[SetDBEntry]]</code>
* <code>[[SetDBEntryString]]</code>
* <code>[[SetDBEntryString]]</code>
* <code>[[SetDeadSpectator]]</code>
* <code>[[SetGameModeLimit]]</code>
* <code>[[SetGameplaySetting]]</code> {{Devfeature|3.2|alpha}}
* <code>[[SetNextMapPosition]]</code> {{Devfeature|3.2|alpha}}
* <code>[[SetPlayerChasecam]]</code>
* <code>[[SetPlayerClass]]</code>
* <code>[[SetPlayerLivesLeft]]</code>
* <code>[[SetPlayerLivesLeft]]</code>
* <code>[[SetPlayerScore]]</code>
* <code>[[SetPlayerSkin]]</code> {{Devfeature|3.2|alpha}}
* <code>[[SetPlayerWeaponZoomFactor]]</code> {{Devfeature|3.2|alpha}}
* <code>[[SkipJoinQueue]]</code> {{Devfeature|3.2|alpha}}
* <code>[[SortDBEntries]]</code>
* <code>[[SortDBEntries]]</code>
* <code>[[Strftime]]</code> {{devfeature|3.0|150831-1814}}
* <code>[[Strftime]]</code>
* <code>[[SystemTime]]</code> {{devfeature|3.0|150831-1814}}
* <code>[[SystemTime]]</code>
* <code>[[Team_GivePoints]]</code>
* <code>[[Team_Score]]</code>


==Deprecated==
== Deprecated ==
These functions are '''deprecated'''. They still work, but will be removed eventually. It is recommended you use more up to date functions.
These functions are '''deprecated'''. They still work, but will be removed eventually. It is recommended you use more up to date functions.


* [[BlueCount]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>BlueCount</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[BlueScore]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>BlueScore</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[GetTeamScore]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>GetTeamScore</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[Music_Change]] {{Template:DeprecatedLink|<code>{{zdoomwiki|SetMusic}}</code>}}
* <code>Music_Change</code> {{Template:DeprecatedLink|<code>{{zdoomwiki|SetMusic}}</code>}}
* [[RedCount]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>RedCount</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[RedScore]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>RedScore</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[SinglePlayer]] {{Template:DeprecatedLink|<code>[[GameType]]</code>}}
* <code>SinglePlayer</code> {{Template:DeprecatedLink|<code>[[GameType]]</code>}}
* [[BlueTeamCount]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>BlueTeamCount</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[BlueTeamScore]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>BlueTeamScore</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[RedTeamCount]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>RedTeamCount</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* [[RedTeamScore]] {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
* <code>RedTeamScore</code> {{Template:DeprecatedLink|<code>[[GetTeamProperty]]</code>}}
 
==Old Functions==
These are old, defunct functions. They do not compile, and even if they did, they do nothing.
 
* '''PlayerBlueSkull'''
* '''PlayerYellowSkull'''
* '''PlayerRedSkull'''
* '''PlayerBlueCard'''
* '''PlayerYellowCard'''
* '''PlayerRedCard'''


== Related Articles ==
== Related Articles ==
* [[Adding New ACS Functions to ACC]]
* [[Adding New ACS Functions to ACC]]


[[Category:Level Development]]
[[Category:ACS]]
[[Category:ACS Functions]]
[[Category:Modding]]
[[Category:Modding]]

Latest revision as of 18:29, 28 October 2024

This is a list of Zandronum-only ACS functions and extensions. See here for a list of ZDoom-supported ACS functions.

For a list of all the ACS functions supported by Zandronum, click here.

Features

Zandronum supports databases, powered by SQLite.

Script types

EVENT scripts are executed when specific game events occur.

There are additional script types that can be appended to regular script types:

  • NET scripts are server-side and can be executed by clients using the puke command.
  • CLIENTSIDE scripts client-side and can not be executed by the puke command.
  • NET CLIENTSIDE scripts are client-side and can be executed by the puke command.

It is worth reading Clientside Scripting if you intend on using CLIENTSIDE scripts.

ACS Functions

Deprecated

These functions are deprecated. They still work, but will be removed eventually. It is recommended you use more up to date functions.

Related Articles