Wiley
Wiley.com
Print this page Share

World of Warcraft Programming: A Guide and Reference for Creating WoW Addons, 2nd Edition

ISBN: 978-0-470-48128-8
1440 pages
February 2010
World of Warcraft Programming: A Guide and Reference for Creating WoW Addons, 2nd Edition (0470481285) cover image
The #1 bestselling programming book is back with updated and expanded coverage of the newest release of WoW!

World of Warcraft (WoW) is currently the world's largest massively multiplayer online role-playing game. The newest release, "Wrath of the Lich King," has created a demand for updated information on writing addons. This eagerly anticipated edition answers that request and is an essential reference for creating WoW addons.

Written by a duo of authors who have each contributed a number of successful WoW addons, the book offers an overview of Lua and XML (the programming languages used to write addons) and includes coverage of specific pitfalls and common programming mistakes-and how to avoid them. Valuable examples show you detailed aspects of writing addons for WoW and demonstrate how to implement addon concepts such as variables, slash commands, secure templates, and more.

  • World of Warcraft insiders share their techniques for writing addons for both the latest version of WoW as well as the new Wrath of the Lich King expansion set
  • Guides you through the specific nuances of the WoW API with the use of detailed examples
  • Discusses ways to distribute and host your WoW addons so others can download and use them
  • Explains how to respond to events, create frames, and use the WoW API to interact with the game

You'll be well on your way to creating exciting WoW addons with this comprehensive reference by your side.

Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.

See More

Introduction xxxvii

Part I Learning to Program 1

Chapter 1 Programming for World of Warcraft 3

Chapter 2 Exploring Lua Basics 13

Chapter 3 Basic Functions and Control Structures 39

Chapter 4 Working with Tables 53

Chapter 5 Advanced Functions and Control Structures 77

Chapter 6 Lua Standard Libraries 91

Chapter 7 Learning XML 111

Part II Programming in World of Warcraft 123

Chapter 8 Anatomy of an Addon 125

Chapter 9 Working with Frames, Widgets, and Other Graphical Elements 143

Chapter 10 Saving Time with Frame Templates 171

Chapter 11 Exploring the World of Warcraft API 187

Chapter 12 Interacting with Widgets 207

Chapter 13 Responding to Game Events 243

Chapter 14 Tracking Damage with CombatTracker 267

Part III Advanced Addon Techniques 283

Chapter 15 Taking Action with Secure Templates 285

Chapter 16 Binding Keys and Clicks to Addon Code 309

Chapter 17 Creating Slash Commands 337

Chapter 18 Responding to Graphic Updates with OnUpdate 351

Chapter 19 Altering Existing Behavior with Function Hooking 359

Chapter 20 Creating Custom Graphics 373

Chapter 21 Responding to the Combat Log and Threat Information 387

Chapter 22 Creating Scroll Frames 413

Chapter 23 Creating Dropdown Menus 431

Chapter 24 Scanning and Constructing Tooltips 451

Chapter 25 Taking Protected Action in Combat 463

Chapter 26 Creating Unit Frames with Group Templates 501

Part IV Reference 537

Chapter 27 API Reference 539

Chapter 28 API Categories 1025

Chapter 29 Widget Reference 1121

Chapter 30 Events Reference 1277

Part V Appendixes 1303

Appendix A Best Practices 1305

Appendix B Utilizing Addon Libraries 1329

Appendix C Tracking History Using Version Control Systems 1339

Appendix D Addon Author Resources 1349

Index 1357

See More
James Whitehead II, aka Cladhaire, is the creator of PerfectRaid, Clique, TomTom, and LightHeaded, and coauthor of Hacking World of Warcraft.

Rick Roe, aka the crazy goblin tinker Gazmik Fizzwidget, created Feed-O-Matic, FactionFriend, and some other addons so awesome that Blizzard rolled their functionality into its new UI.

See More

Do you think you've discovered an error in this book? Please check the list of errata below to see if we've already addressed the error. If not, please submit the error via our Errata Form. We will attempt to verify your error; if you're right, we will post a correction below.

ChapterPageDetailsDatePrint Run
276 Error in Text
On page 276, in the code listing for CombatTracker_OnEvent, the code listing has this line:

Total_time = math.mind(end_time – start_time, 1)

“Math.mind” should be “math.min”, as it sets the minimum value for the variable total_time.
2/18/10
See More
March 17, 2010
World of Warcraft Programming, 2nd Edition

ee how the WoW add-on CombatTracker is created with Lua and XML by following along with a demonstration from James Whitehead's new book, World of Warcraft Programming, 2nd Edition.

See More

Related Titles

Back to Top