The new MWSE-Lua interface

Everything about development and the OpenMW source code.
User avatar
SeaFox
Posts: 34
Joined: 29 Feb 2016, 17:30

Re: The new MWSE-Lua interface

Post by SeaFox »

AnyOldName3 wrote: 30 Sep 2018, 22:23 That's basically how Lua and MWScript and any proposed system works, but the point of calling native code is that you can call native code in addition to the stuff written in a portable language.
I see. Perhaps with an efficient Lua scripting system, there would be little or no need for calling native code. It seems that the only reason that mods for games like Morrowind, Fallout, and Skyrim would need to call native code would be because the scripting engine is not powerful enough to do what the mod author wants.

I think implementing most of the functionality of MWSE, including sandboxed Lua scripting, would be a really good thing for modders, even if they can't call native code.
User avatar
psi29a
Posts: 5360
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: The new MWSE-Lua interface

Post by psi29a »

SeaFox wrote: 30 Sep 2018, 22:45I see. Perhaps with an efficient Lua scripting system, there would be little or no need for calling native code. It seems that the only reason that mods for games like Morrowind, Fallout, and Skyrim would need to call native code would be because the scripting engine is not powerful enough to do what the mod author wants.

I think implementing most of the functionality of MWSE, including sandboxed Lua scripting, would be a really good thing for modders, even if they can't call native code.
Bingo.
User avatar
lysol
Posts: 1513
Joined: 26 Mar 2013, 01:48
Location: Sweden

Re: The new MWSE-Lua interface

Post by lysol »

Most of the MWSE-Lua mods I've seen coming out so far (awesome stuff btw) would make most sense to bake into the engine instead IMO.

This mod for example, that adds tooltips with descriptions to artifacts in the game. Great mod. But this would really make sense to bake into the engine instead, and with OpenMW we can.
User avatar
psi29a
Posts: 5360
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: The new MWSE-Lua interface

Post by psi29a »

That's true, but modders can't hope it will make it into Morrowind so MWSE is making it possible for them to do this. Great stuff.

That being said, these are things that can go in to OpenMW itself.
User avatar
Zini
Posts: 5538
Joined: 06 Aug 2011, 15:16

Re: The new MWSE-Lua interface

Post by Zini »

Seems I missed a bit of an important discussion here. Yes, we do plan to add Lua to OpenMW as a post 1.0 feature, on which we should start working prior to 1.0 so it will be ready when we start to work on OpenMW 1.1 (having a proper scripting language is a requirement for most post-1.0 development).

In another discussion thread (that I can't find right now) I have listed a roadmap on how this should be done. I meant to get started on the design process weeks ago, but RL happened. Sorry about that. Stupid RL.

I'll do my best to get things going before the end of the year (late November looks moderately doable). Any help with the design process and especially with the implementation afterwards would be highly welcome then.

Edit: Found it: viewtopic.php?f=6&t=5224&start=90#p56284

Edit 2: Just so we are clear: The last part of the post I linked is outdated. We have pretty much settled on Lua at this point.
User avatar
Thunderforge
Posts: 503
Joined: 06 Jun 2017, 05:57

Re: The new MWSE-Lua interface

Post by Thunderforge »

Zini wrote: 01 Oct 2018, 10:34 Edit 2: Just so we are clear: The last part of the post I linked is outdated. We have pretty much settled on Lua at this point.
To be clear: Lua is definitely settled on by this point. So for anybody reading this, please don't suggest JavaScript, AngelScript, Python, or any other language. We've discussed them all at length in the previous topic. If you have something new to add on that, create a new topic.
CMAugust
Posts: 285
Joined: 10 Jan 2016, 00:13

Re: The new MWSE-Lua interface

Post by CMAugust »

A new mod named UI Expansion has been released today under MWSE-Lua that makes exciting improvements to the user interface. Most interesting to me is the improved dialogue window, in which previously read topics will now be greyed out. I've wanted a feature like that for years.

In light of earlier discussion, is this realistically the sort of thing that will eventually be "baked into" OpenMW itself? Or would some changes be considered too divergent to incorporate at engine level, and have no avenue to be implemented as a mod?
User avatar
Zini
Posts: 5538
Joined: 06 Aug 2011, 15:16

Re: The new MWSE-Lua interface

Post by Zini »

Seems quite a bit of this stuff is already part of OpenMW. Overall we do not strive for parity with MWSE, but if we happen to see some interesting ideas there, there is nothing that stops a developer with a bit of free time to implement them; at least as long as these idea fit into our overall design goals and directions (as described in the stage1 document).
NullCascade
Posts: 121
Joined: 16 Jan 2012, 07:58

Re: The new MWSE-Lua interface

Post by NullCascade »

Zini wrote: 02 Oct 2018, 10:09Seems quite a bit of this stuff is already part of OpenMW. Overall we do not strive for parity with MWSE, but if we happen to see some interesting ideas there, there is nothing that stops a developer with a bit of free time to implement them; at least as long as these idea fit into our overall design goals and directions (as described in the stage1 document).
To an extent. There are some huge benefits to allowing this sort of modding rather than baking everything into the engine itself. To clarify, this isn't a feature of MWSE to have parity with. UI Extensions is a stand-alone mod that uses MWSE to interact with the MW GUI, and is written in pure Lua. Other mods are free to compete with it, innovate, extend, and otherwise act independently without needing to convince one person that their mod should be incorporated into the engine itself.

The only feature that UI Extensions and OpenMW have in common (AFAIK) is the spell search. This shows another benefit, as talked about on Discord with, I think, Capostrophic. UI Extensions ships assets. In my take of the spell search option, you can not only search by spell name, but also filter by school. OpenMW can't offer that option in a desirable way, because it can't rely on or ship new assets. This is why UI Extensions has placeholder text (requires new GMST) and new icons (requires new assets) while OpenMW's hands are tied to a single blank box.
User avatar
psi29a
Posts: 5360
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: The new MWSE-Lua interface

Post by psi29a »

But OpenMW does ship assets.

If you mean Morrowind derived assets, then yeah, we can't ship those due to IP issues.
Post Reply