ZScript

ZScript is a low-level scripting language in GZDoom introduced by Randy Heit and Graf Zahl that's meant to replace the infamous never-implemented DoomScript.

The language is a direct descendant of DECORATE, and supports almost all old features from it, albeit with minor specification differences (DoomEdNums and DamageTypes were moved to MAPINFO). In addition to that it supports direct level and actor data access, proper user-defined structures/classes, virtual methods and more.

Even though it was initially implemented in ZDoom, it was mostly developed by Graf Zahl and never got into the official release of ZDoom, as it's development got discontinued. As of GZDoom release 2.3.0, ZScript is used instead of DECORATE for builtin actors.

ZScript is still under heavy development; The announced goal of Graf Zahl is to move as much of the game logic to ZScript as possible, with all the relevant feature set available for the modders as well. As of now, a lot of builtin actors (Hexen and Strife ones, for example) have their special codepointers rewritten from C to ZScript.