Usecode

From Wikipedia, the free encyclopedia

Usecode is the common name for the scripting language used in some of the latter Ultima series games, particularly Ultima VII, Ultima VIII and their descendants and spin-offs. The name is derived from the name of the compiled file in Ultima VII. The Usecode in Ultima VIII is different from Ultima VII but similar in principle.

At Origin Systems, the company that made those games, the languages were called Agil for Ultima VII and Unk for Ultima VIII. The name usecode is more a generic term, as the code allows the player's use of items in the game.

The Usecode bytecode interpreter is stack-based, and interfaces with the game engine, which runs the Usecode scripts as certain events in the game happen. Most of the game logic itself is stored in the Usecode file. This includes NPC schedules, game script in general, and conversations.

Exult includes ucc, a compiler that can compile C-like language to Usecode format.