Editing ACS scripting

From Eternity Wiki
Jump to navigationJump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 11: Line 11:
This information does not apply for UDMF or Hexen format maps.
This information does not apply for UDMF or Hexen format maps.


ACS scripts can be loaded with Doom-format maps through the help of [[MapInfo|EMAPINFO]]. The MapInfo entry for the map needs a specifier for the compiled ACS lump (setting the '''acsscript''' entry).
ACS scripts can be loaded with Doom-format maps through the help of [[MapInfo|EMAPINFO]] and [[ExtraData]]. The MapInfo entry for the map needs at least a specifier for its ExtraData lump and compiled ACS lump (setting the '''extradata''' and '''acsscript''' entries).


The script can be written in a text editor and compiled using the '''acc''' tool (see https://devbuilds.drdteam.org/ACC/). After obtaining the behavior lump (usually with the .o extension), import it in a wad and place it between lumps '''A_START''' and '''A_END'''. The '''acsscript''' entry from EMAPINFO should then reference this compiled lump.
The script can be written in a text editor and compiled using the '''acc''' tool (see https://devbuilds.drdteam.org/ACC/). After obtaining the behavior lump (usually with the .o extension), import it in a wad and place it between lumps '''A_START''' and '''A_END'''. The '''acsscript''' entry from EMAPINFO should then reference this compiled lump.
Line 35: Line 35:
ACS scripts can be tested from the [[console]] by using the '''puke''' command.
ACS scripts can be tested from the [[console]] by using the '''puke''' command.


== Example ==
An ACS script typically looks like this:
#include "zcommon.acs"
script 1 OPEN
{
    // Put map initialization actions here
}
script 2 (void)
{
    // This script is called from the map and has no parameters
}
script 3 (int a, int b)
{
    // This script has two arguments, a and b.
}
== ACS details ==
== ACS details ==
*[[ACS spawn IDs]]
*[[ACS spawn IDs]]
*[[ACS built-in functions]]
*[[ACS built-in functions]]
*[[ACS constants]]
*[[ACS directives]]
*[[ACS directives]]
*[[ACS libraries]]


[[Category:Editing reference]]
[[Category:ACS]]
[[Category:ACS]]
[[Category:Editing reference]]
Please note that all contributions to Eternity Wiki are considered to be released under the GNU Free Documentation License 1.2 (see Eternity Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)

Template used on this page: