Closed ssjkakaroto closed 1 year ago
Was hoping for something like this, too. Thanks for sharing that there is at least a first prototype!
It's something we are considering but no plans have been made at this point. It would probably come some time after porting to 64bit and cleaning up the render.
We have decided that LUA will be the supported scripting/modding language.
We would like to make Hellfire via LUA as a proving ground. Any help to this end this would be appropriated.
Chiming in. I mentioned https://github.com/ThePhD/sol2 on the discord. not sure it fits the bill in terms of language dependency (this requires C++17) but it's a rather efficient wrapper for LUA and allows for a lot of easy bindings.
If this is something that may be of interest, I can tackle on integrating it in a branch and starts playing around moving non-logic bits of the game into LUA scripts as a first proof of concept.
I've just got to say this, even though has no technical relevance, but everyone in the ticket has got it wrong thus far - Lua is not an acronym. It's not "LUA", it's "Lua". And it is awesome, good choice :-)
Lua is a planned addition, I believe for 1.7.0.
Shouldn't this be kept open then? With 1.7.0 tag?
The issue isn't very detailed it feels like it magically expects LUA to mean a modable UI with bindings. LUA is a general target so the issue isn't really helpful for tracking this.
Again, Lua is not an acronym. Like I wrote in my previous comment here https://github.com/diasurgical/devilutionX/issues/48#issuecomment-615269908
But if you don't believe me, just go to the source itself and see how they write the name: http://www.lua.org/about.html
Being pedantic is not a virtue. I'm generally pretty bad at spelling and make much bigger typographical crimes on an hourly basis.
LUA is a general target so the issue isn't really helpful for tracking this.
That's ok, but is there another issue tracking it?
LUA is a general target so the issue isn't really helpful for tracking this.
That's ok, but is there another issue tracking it?
Do we need one? Issue reports are for generally tracking bugs, problems, and feature requests. This is more of a question, which has been answered. Issue reports also help developers and contributors as a to-do list, so things don't get forgotten about. Lua is planned and nobody is really going to forget about it, so I don't believe we need an issue. It's @AJenbo 's prerogative if he feels it should stay open or closed.
It's been her for over 4 years without anyone picking it up, I would say lets just close this issue for now. For the interested parties I would suggest watching announcements. It's also not unlikely that I will post a message in here once it lands.
@AJenbo No problem. @kphoenix137 this PR: https://github.com/diasurgical/devilutionX/pull/6517 is exactly the type of stuff I had in mind with the Lua framework. In fact, it can be used for much more optional graphical features that might bother purists and do not need to be in DevilutionX's code base. For example, these resistances icons:
purists are playing their crappy vanilla anyway so who cares
But it could allow things that even you guys feel like it's cheating or not in the the project's scope, without resorting to a fork and direct changes to the code. One example: the PR that showed how many monsters were alive in the dungeon, that most of you didn't agree.
Well it really depends of what bindings we implement for Lua. It could be limited to printing chat messages, or powerful enough to implementing Hellfire (preferably I would like that at some point)
We have Lua working now via this PR: https://github.com/diasurgical/devilutionX/pull/6689 which will probably bee merged soon. The current idea is to add events similar to PZ: https://pzwiki.net/wiki/Category:Current_Lua_Events
(Deleted as posted in original reference #6992)
Hello, are there any plans to add a LUA (or another language) framework to DevilutionX so that we can customize what is shown on the screen? This would allow us to create custom HUDs (somewhat similar to THUD in D3).
I think some work on it started here: https://github.com/szymski/devilution_lua But I'm guessing it was dropped.