Dev Diary: LUA Scripting Goes LIVE!

September 2, 2010

General

Narrel writes today about how LUA scripting came about for LOTRO in the most recently released Dev Diary.  He was hired as a game systems engineer for LOTRO in late 2007 and eventually “…became the ‘go-to guy’ for UI on my team.”  Dissatisfied with the current UI he eventually started working with “ForsakenArcher” and “Agiclaw”, to of the internal tools engineers at Turbine, and they began discussing, planning and working on a prototype for the LUA system.  To paraphrase, after internal testing, meetings, and with help from “Frosty” they were given the approval and the opportunity to introduce it with the Volume 3.2 testing.

So what does LUA do and what is it capable of?  Well, quite a bit actually, but the implementation in LOTRO has actually been limited on purpose by Turbine.

As I said at the start, our goals were purely centered on UI modifications and not introducing otherwise obscured information or allowing players to do things they couldn’t otherwise do (such as “bot-ing” or “macro-ing”). There will not be a way to execute skills or use items through Lua scripts. We also do not allow the simulation of mouse-clicks in any way. These limits are in place to prevent any kind of automation of gameplay. Another intentional limit is that while we do expose inventory information, it is only for your own inventory and does not give you information on the items of another player. Yes, that does indeed mean that there is no functionality for any “gear score comparison” type add-ons.

And this is true.  There is quite a bit of features that cannot be implemented (both good and bad) because of the limitations of the API’s Turbine chose to implement.  Most of the ones that were released were basic UI features (text boxes, windows, buttons, etc)  and only a few gameplay API’s

The three gameplay APIs that will be available at launch are as follows:

  • Quickslots – Allows for the creation and customization of additional quickslots.
  • Player self-vitals – Exposes effect information as well as health and morale for only yourself – party member and target vitals did not make it in for this release due to time constraints and will be addressed in a future update.
  • Inventory – Allows for custom organization of your inventory. For example, creating a single-bag view of your character inventory.

Narrel also states that they’re looking into different ways to expand the API’s to include modifications to the Valut UI, Mouse cursors, Chat windows, the Kinship UI, and beyond as they expand functionality.  He feels that they are also past the proving stage, but he doesn’t say with any assuredness that LUA scripting will be released with Free-to-Play.  This makes me curious, because I’d love to know whether it is or not.  In my opinion, if they are going to continue with LUA, then they will either need to release it to the live servers or keep Bullroarer open with the current build.  Otherwise they will kill the progress of LUA quite a bit.  Sure, they could just invite everyone who has been working on the plugins to the Isengard program, but that would immediately alienate anyone who previously had not worked on LUA scripting; which I think is a bad move.  Personally, I say let it be released.

Edit:

Narrel has posted the following:

I certainly didn’t call it out as much as I could have so to confirm (with the ever-present caveat of "things can always explode/change at any moment" so nothing is ever 100%), yes, we were able to get all the appropriate "ducks in a row" to have Lua plugins be made available with the FreeToPlay launch.

So barring any last minute explosions, expect to be able to tinker around with plugins next week! We really hope you guys enjoy what we have made available so far.

, , , ,
Avatar of Merric

About Merric

I'm just this guy, you know?

View all posts by Merric

5 Responses to “Dev Diary: LUA Scripting Goes LIVE!”

  1. Chuck Steel Says:

    I’m looking forward to writing scripts which will interact with the chat window. I have previously written some code which will use chatlogs to process various information such as XP gains, kill statistics, etc. It might be interested to be able to give realtime statistics on data that can be collected from the chat window.

    Also, I wonder if you could make an LUA script based on the Instance chart from the other day. Perhaps it could open a window showing the chart right in game and then let you click on an instance to set it as our LFF tag in the social panel?

    Reply

Trackbacks/Pingbacks

  1. Episode 53: Sammich. It’s what’s for Dol Din-Din. | A Casual Stroll to Mordor - September 5, 2010

    [...] Dev Diary: LUA- LUA to go live with F2P – They will still need to be manually loaded. [...]

  2. Links to Pass the Downtime | A Casual Stroll to Mordor - September 7, 2010

    [...] Dev Diary [...]

  3. The State of LOTRO Plugins | A Casual Stroll to Mordor - June 23, 2011

    [...] in September of 2010 I wrote an article about Lua scripting and how it came to exist in LOTRO.  Needless to say I was pretty excited.  I [...]

Leave a Reply