WoW:Lua: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
(cleanup, rewording, relinking, more links)
No edit summary
 
(27 intermediate revisions by 23 users not shown)
Line 1: Line 1:
Lua the scripting language used by World of Warcraft for [[Interface Customization]].  Only a subset of version 5.0 of the official Lua specification is implemented, and should suit most [[AddOns|addon]] maker's needs.  More information about Lua can be found on the official Lua [http://lua-users.org/wiki/LuaFaq Wiki].
{{wowlua}}
Lua is a general purpose programming language, and is used as a scripting language in many popular video games such as [[w:c:wowwiki:World of Warcraft|World of Warcraft]].


==Programming References==
Lua comes from the Portuguese word for "moon" {{ref2|Lua|PUC-Rio|publisher=PUC-Rio|title=About|date=2016-06-18|work=Lua |link=//www.lua.org/about.html|accessdate=2016-06-18}}. Lua was developed by a team at PUC-Rio, the Pontifical Catholic University of Rio de Janeiro in Brazil, including [[Roberto Ierusalimschy]], [[Waldemar Celes]] and [[Luiz Henrique de Figueiredo]]{{ref2|Lua|Lua Authors|publisher=PUC-Rio|title=Authors|date=2016-06-18|work=Lua |link=//www.lua.org/authors.html|accessdate=2025-05-01}}.
These are not so much guides or tutorials, but a place to look for information on the Lua language intself.  The reader should be somewhat famiar with programming in general, or even Lua.
;[http://www.lua.org/manual/5.0/ Official Reference Manual] : contains syntax and basic commands, but is heavy-going for readers without a programming background
;[http://www.inf.puc-rio.br/~roberto/book/ Programming in Lua] : online book by [http://www.inf.puc-rio.br/~roberto/ Roberto Ierusalimschy]


==Lua Editors==
In WoW Lua is used for [[UI Customization|interface programming and customization]]. WoW uses a custom subset of Lua version 5.1, which should suit most [[AddOns|addon]] maker's needs. More information about Lua can be found on the official [http://lua-users.org/wiki/LuaFaq Lua FAQ].
While any text editor can edit Lua files, many contain additional Lua specific features.


=== Freeware ===
[[File:Lua-Logo_128x128.png|Lua Logo]]
;[http://sourceforge.net/projects/blua/ BLua] (Open Source) : Under development and will, in time, hopefully provide a useful IDE for WoW Lua script development.
;[http://luaedit.luaforge.net/ LuaEdit] (Open Source) : Complete professional looking Lua IDE - Windows 98/2000/XP
;[http://www.pspad.com/ PSPad] : Syntax highlighting for Lua and XML files, fully features programmer's editor
;[http://www.gorlice.net.pl/~rybak/luaide LuaIDE] : Integrated development environment for Lua for Windows


=== Shareware ===
== Programming references ==
;[http://www.quotixsoftware.com/qde_index.htm QDE] : Quotix Development Environment for Lua. It supports project management, autocomplete functionality, a multi-document interface, debugging and much more. Sadly doesn't include a debug mode to test scripts with.
The following are places to look for information on the Lua language itself. For these it helps if you are already familiar with programming in general.
;[http://www.zeusedit.com/lookmain.html Zeus for Windows] : IDE with Lua syntax highlighting, code folding, project management, integrated version control. The IDE is fully scriptable using Lua
;[http://www.textpad.com TextPad] : Not an official Lua IDE however, with an available syntax file available as an [http://www.textpad.com/add-ons/synh2m.html addon] provides great syntax highlighting.
;[http://www.editplus.com Edit+] : Not an official Lua IDE however, with an available syntax file available as an [http://www.editplus.com/others.html addon] provides great syntax highlighting.


[[Category:Interface Customization|Lua]]
* [http://www.lua.org/manual/5.1/ Official Reference Manual] - Contains Lua syntax and basic commands, but is a heavy, highly-technical read for those without a programming background. See [http://pgl.yoyo.org/luai Luai] for and alternative way of browsing the manual.
 
* [http://www.inf.puc-rio.br/~roberto/book/ Programming in Lua] - Definitive Lua guide by [http://www.inf.puc-rio.br/~roberto/ Roberto Ierusalimschy]. See also the [http://www.lua.org/pil/ online version].
 
* [http://lua-users.org/ lua-users] - A Lua user group with a [http://lua-users.org/wiki/ Wiki]. Includes a [http://lua-users.org/wiki/LuaFaq FAQ], [http://lua-users.org/wiki/LuaTutorial tutorials] and [http://lua-users.org/wiki/LuaDirectory extended help on many topics]. The group also hosts a mailing list with past [http://lua-users.org/lists/lua-l/ archive], and a IRC channel [irc://irc.freenode.net/lua #lua at irc.freenode.net]. Their [http://lua-users.org/wiki/LuaLinks LuaLinks] page is very extensive.
 
== Lua Editors ==
While any text editor can edit Lua files, many contain additional programming or even Lua specific features.
 
See [[Lua editors]]
 
== Using Lua for WoW ==
Related projects include:
* [[WoWBench]] - Aims to be a near-complete emulation of the WoW environment.
* [http://luaforge.net/projects/lua-wow Lua 5.1.1 WoW] - Distribution created by cogwheel that includes everything needed for addon development
 
== References ==
{{Reflist}}
 
== See also ==
* [[Lua variable scoping]] - Guide for Lua scoping rules
* [[Lua functions]] - Functions available in the World of Warcraft API
* [[User defined functions]] - Useful functions written by addon authors
* [[Lua file]] - File format for a Lua file in a WoW AddOn
* [[Lua object memory sizes]] - Treatise on memory in Lua
* [[World of Warcraft API]] - Lists global API functions provided in WoW
[[Category:Interface customization|Lua]]
[[Category:Lua functions| Lua]]
[[Category:Glossary]]

Latest revision as of 21:19, 2 August 2025

WoW Lua

Lua is a general purpose programming language, and is used as a scripting language in many popular video games such as World of Warcraft.

Lua comes from the Portuguese word for "moon" [1]. Lua was developed by a team at PUC-Rio, the Pontifical Catholic University of Rio de Janeiro in Brazil, including Roberto Ierusalimschy, Waldemar Celes and Luiz Henrique de Figueiredo[2].

In WoW Lua is used for interface programming and customization. WoW uses a custom subset of Lua version 5.1, which should suit most addon maker's needs. More information about Lua can be found on the official Lua FAQ.

Lua Logo

Programming references

The following are places to look for information on the Lua language itself. For these it helps if you are already familiar with programming in general.

  • Official Reference Manual - Contains Lua syntax and basic commands, but is a heavy, highly-technical read for those without a programming background. See Luai for and alternative way of browsing the manual.

Lua Editors

While any text editor can edit Lua files, many contain additional programming or even Lua specific features.

See Lua editors

Using Lua for WoW

Related projects include:

  • WoWBench - Aims to be a near-complete emulation of the WoW environment.
  • Lua 5.1.1 WoW - Distribution created by cogwheel that includes everything needed for addon development

References

  1. About, PUC-Rio, 2016-06-18, PUC-Rio, [1].
  2. Authors, Lua Authors, 2016-06-18, PUC-Rio, [2].

See also