Other great resources: Official JS API docs, Scripting Forum

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 33 Next »

Overview

What were the notable changes between each version? And how do you detect exactly which version your script is running in?

 Ready made specific version detection: version.js.

Key: (error) Removed/Missing, (plus) Added, (warning) Buggy, (minus) Deprecated but present, (info) Updated

Trivia: Per first announced the JS API back in April 2011!

Warzone 3.1

Warzone 3.1 brings some major improvements over earlier releases, in particular a fully functional JS API.

3.1 Alpha releases

The JS API started getting used by developers during the MASTER snapshot releases in late 2011 and early January 2012.

There were a significant number of changes in the alpha releases. It's recommended that you base your scripts on Warzone 3.1 Beta 1 and above to avoid adding lots of cruft to your code.

3.1 Beta 1

This was the first major release in which the JS API gained popularity. In particular a large number of events were added, and API features relating to cyborgs were significantly changed.

The effects of these changes were so profound that Javascript AIs (namely NoQ's NullBot) became more effective than the existing WZScript AIs such as Nexus and Semperfi.

3.1 Beta 2

Beta 2 made the JS API much more robust by fixing some bugs, adding some new stuff and deprecating some badly named old stuff.

ConstantsEventsFunctionsGlobalsObjects

(minus) OPTIONS

(plus) eventObjectSeen()

(plus) eventObjectTransfer()

(plus) enumBlips()

(warning) structureIdle() 

No changes

(warning) version

not investigated yet

This website was started and the major project of writing detailed documentation for the JS API began.

3.1 Beta 4

Beta 3 was not released due to some serious bugs, so we skipped to Beta 4.

ConstantsEventsFunctionsGlobalsObjects

(error) OPTIONS

No changes

(warning) debug()

(plus) enumStructOffWorld()

(warning) structureIdle() 

(info) versionnot investigated yet

Realising the API was going to undergo more changes in the future, the Backport project was started.

3.1 Beta 5

Beta 5 fixed a long-term issue with save games, but introduced a new bug in multiplayer games.

ConstantsEventsFunctionsGlobalsObjects

(plus) DROID_SUPERTRANSPORTER

(info) DROID_TRANSPORTER

(info) DORDER_RECOVER fixed

No changes

No changes

(warning) structureIdle() 

No changes

No changes

Just one small change, but it does mean that we can now properly differentiate between the two types of transporter. Prior to Beta 5, I recommend avoiding doing anything with transports.

Also in Beta 5, the DORDER_RECOVER code was fixed so AI players are now able to pick up oil barrels and artefacts when specifically instructed to do so.

3.1 Beta 6

Beta 6 was released a day after Beta 5, in order to fix a serious multiplayer bug.

There were no other changes between Beta 5 and 6. Nothing at all changed in the JS API!

In version.js, Beta 5 is reported as Beta 6 (there's no way to differentiate between them so might as well assume the later version).

3.1 Beta 7-9

Changes for these versions haven't yet been determined, sorry.

3.1 Beta 10

Note: Changes listed here might have happened in Beta 7-9.

The BEING_DEMOLISHED constant was removed. It's an issue because it's now harder to circumvent a bug in structureIdle().

The enableTemplate() function was added, allowing production of DROID_CONSTRUCT prior to building a HQ.

ConstantsEventsFunctionsGlobalsObjects

(error) BEING_DEMOLISHED

No changes

(plus) enableTemplate()

(warning) structureIdle() 

No changes

No changes

3.1 Beta 11

Two new constants were added: PLAYER_DATA and RESEARCH_DATA.

ConstantsEventsFunctionsGlobalsObjects

(plus) PLAYER_DATA

(plus) RESEARCH_DATA

No changes

No changes

(warning) structureIdle() 

No changes

No changes

3.1 RC 2

Note: 3.1 RC 1 was skipped due to some major bugs.

The getDroidLimit() function was added.

ConstantsEventsFunctionsGlobalsObjects

No changes

No changes

(plus) getDroidLimit()

(warning) structureIdle() 

No changes

No changes
  • No labels