From Wikipedia, the free encyclopedia
Jump to: navigation, search
Paradigm Multi-paradigm: scripting, imperative (procedural, object-oriented)
Developer Andreas Jönsson
First appeared 2003
2.29.2 / October 21, 2014 (2014-10-21)
static, strong
OS Cross-platform
License zlib License

AngelScript is a game-oriented interpreted compiled scripting language.

AngelScript features static typing, object handles (similar to C++ pointers but garbage collected via reference counting), object-orientation, single inheritance, multiple inheritance with interfaces. Allows operators to be registered and overloaded. AngelScript can be used with any C++ IDE, such as Netbeans, Geany, Eclipse, and also supported by AngelJuice IDE developed specifically for the language.

C and C++ functions can be called within an AngelScript environment.[1][2] Angelscript's class syntax closely follows C++ classes by design: no proxy functions are required to embed AngelScript in C++ applications easing the two languages integration.[3] There are several differences of AngelScript and C++:

AngelScript is used in video game development,[4] including Amnesia: The Dark Descent[citation needed], Amy[citation needed], Dustforce[citation needed], Gekkeiju Online[citation needed], King Arthur's Gold[citation needed], Legend of the Guardians: The Owls of Ga'Hoole[citation needed], Overgrowth,[5] Penumbra: Overture[citation needed], Penumbra: Requiem[citation needed], Puddle[citation needed], Rigs of Rods[citation needed], Sine Mora[citation needed], Star Ruler[citation needed], SuperTuxKart[citation needed], Warhammer: Mark of Chaos[citation needed], Warsow[citation needed]. AngelScript is used at the University of Ulm in interactive 3D-Animation program.[6] AngelScript is also used in robotics, for example, to program behavioral rules of robotic agents.[7]


  1. ^ Weinbub, Josef; Rupp, Karl; Selberherr, Siegfried. "ViennaIPD-An Input Control Language for Scientific Computing" (PDF). 
  2. ^ Golodetz, Stuart (2010). "Simplifying the C++/Angelscript Binding Process". ACCU. 
  3. ^ Michael Dickheiser (2006). Game programming gems six. Charles River Media. ISBN 1584504501. 
  4. ^ Nishimori, Taketoshi; Kuno, Yasushi (2012). "Join token: A language mechanism for programming interactive games". ScienceDirect. 
  5. ^ OGWeekly (30 November 2014). "Overgrowth Weekly 86 - A good episode". YouTube. 
  6. ^ "Animal Race". University of Ulm. 2005. 
  7. ^ "Cultural transmission in robotic swarms through RFID cards". IEEE. 2009. 

External links[edit]