Then older MWSE is pretty much dead. This would require a substantial rewrite of the scripting engine (also create a maintenance nightmare; we still need to maintain oldscript for bug-fixes and such). A few basic instructions and functions we could add, but as was pointed out earlier there is not much value in it. IMO old MWSE is as dead as oldscript+.
If anything at all can be done about it, we could consider adding in support for old MWSE in the option C) translator. But as mentioned before that is far in the future.
An option-C translator would potentially be a lot simpler if it translated to Lua bytecode instead of readable Lua, so how do we feel about letting files include Lua bytecode but no script source? As well as that, does Lua have a facility to load a string as if it was bytecode and then execute it?
Absolutely not. We still need the ability to debug oldscript scripts (can't reasonably debug on byte-code level). Also, the purpose of the translator is not only to get oldscript running without the current scripting engine, but also to automatically port scripts over to newscript, so that content developers don't have to rewrite their scripts if they want to use new features for existing scripts.
So I guess that would mean that the translator will run once and create an output file? Because if that is the case, I might well find it fun helping out debugging these newform scripts.
OpenMW was one of the reasons I went to school to be a professional software developer, but by the time I was done with school I barely knew any C++ and OpenMW was so far along I found myself looking at something way beyond my (current) abilities anyway. Maybe I could contribute in this way?
Okulo wrote: ↑20 Jun 2018, 22:44
So I guess that would mean that the translator will run once and create an output file?
I imagine the translator would be a separate component. OpenMW would use it when loading content files (whenever it finds an oldscript record, it automatically passes it through to get a newscript source which is used in its place; the core engine then never has to see the original oldscript), while OpenMW-CS could have a button in the script editor to convert oldscript to newscript, which can then be saved (maybe a Convert All button?).
@Chris Correct. That is exactly what I had in mind.
@Okulo Remember option C is a far future project and it will only happen if we find enough volunteers for this task, which is not certain either. I wouldn't make plans for this case yet.
If you do have some spare time and wish to contribute, there are options. We added a new beginner label for coding tasks (Issues -> Label -> Beginner) and there are even a few tasks that don't require any coding skills at all (just time and familiarity with Morrowind).
It's the end of the school year, so right now I am busy with getting my propedeutics, so I wasn't counting on picking up anything like this anytime soon anyway. Bringing the old Morrowind work to this new potential just sounds interesting to me, even if it's just busywork like bug fixing.
I looked at the bug tracker and saw that very interesting label this morning. I do have some basic familiarity with C++ and Qt (been making my own program for an Elder Scrolls tabletop RPG), but the bigger problem I'm having is familiarity with OpenMW as code. Since I've never contributed to a project this size, working on OpenMW will take some digging, figuring out the standards you've been using up until now and tons of learning new stuff about design patterns, language functionality, etc. It's a bit intimidating, but that's what beginner tickets are for, I guess.