Page 6 of 8

Re: MWSE, Lua and OpenMW compatibility

Posted: 14 Jun 2018, 22:27
by wareya
Competition isn't actually a thing by the way. When competition happens and has good results it's an anomaly.

Re: MWSE, Lua and OpenMW compatibility

Posted: 14 Jun 2018, 22:31
by NullCascade
Chris wrote: 14 Jun 2018, 22:22
NullCascade wrote: 14 Jun 2018, 21:07Yeah, I'm not sure. But every time you download pluggy, or Frostfall, or any of these mods that ship with a Oblivion or Skyrim DLL, that's all precompiled code and that's not limited to Morrowind's or Oblivion's or Skyrim's sandbox. So they can go, and can delete your files, or do whatever. But what they're actually doing is loading in some extra library that they need, or they're adding some functionality or some logic that isn't practical or isn't viable to write in the sandbox.
The main difference is, Oblivion's and Skyrim's (and Morrowind's) scripting sandboxes are currently static. They can do what BGS last had them capable of for their needs, and that's it. They don't continue to add new functionality to the game as the need arises from other games or mods. They also don't have to worry about non-Windows systems. Modders have no choice if the scripting engine can't do what they need.
Did you quote the right piece? Or are you not familiar with Oblivion/Skyrim modding? You're saying that there's a sandbox with OBSE/SKSE plugins? What? No, they're shipped as DLLs. There's no sandbox. There hasn't been a sandbox for those systems in the past decade.
Chris wrote: 14 Jun 2018, 22:22
I mean, if you can convince a user to download your plugin or your code you've sort of already won as a malicious software writer, right?
If the code is not properly sandboxed, sure. But people expect mods to be fairly well sandboxed. They may get a little antsy if they see a .dll file, but by and large, if they just see an esp/omwaddon file or whatever, the worst they can expect is a corrupt save. But allowing Lua scripts to run under no or very light sandboxing will open up problems on unsuspecting players. IMO, it's reasonable for devs to not want to feel responsible for allowing it or to feel as if they broke the player's trust that the engine and things played on it are safe.
People can feel whatever they want, I can't change that. I'd prefer cool features and unrestricted modders over good feelings. Good feelings is literally all that sandboxing adds to this community.
Chris wrote: 14 Jun 2018, 22:22
Yes. Because having a bunch of forks is both healthy for the community, and healthy for security.
Yes, actually, it is. Competition is good. If someone falls behind on providing what people want, people won't follow them. If something proves unsafe, people have alternatives to go to. Someone may want to target a niche that the main project can't reasonably pander to. Do you know how many forks of the Doom engine there have been over the years? The Doom modding community is still going strong.
Competition is demonstrably bad in small modding communities like TES. There's never been anything like this. Doom is a whole other beast. It was a pain for people between the Skyrim and Skyrim Special Edition rollout. OpenMW and a horde of forks is the same problem, but potentially far, far worse. It's a waste of time in a small community, and creates needless headaches and incompatibilities.

Right now we have two competing improvements to the Morrowind experience: MGE/MWSE/MCP and OpenMW. I don't think competition has added anything to the mix. Sure, MCP inspired some OpenMW features. Sure, OpenMW inspired some MWSE mods. But overall it's still a nightmare for modders. I'd rather not have competition. I'd rather see OpenMW support the Morrowind I've loved over the past decade. I'd rather see MWSE move in a direction that is brings up developers so that their mods just work and can be improved further on OpenMW, while still being compatible for the holdouts.

Re: MWSE, Lua and OpenMW compatibility

Posted: 14 Jun 2018, 22:41
by Jad
What is this nonsense about competition? The theoretical guy who had a mod idea and was forced to fork to implement it is not trying to actively compete with the entirety of openMW... I get it though, people here have bigger plans than just Morrowind and so sandboxing is important. I'm not a fan, but I don't see why some conciliation like an optional ini setting could not make both sides happy?

Re: MWSE, Lua and OpenMW compatibility

Posted: 14 Jun 2018, 22:55
by Jemolk
I don't think Zini will budge on the security side of things. We've argued incessantly over this, and we're getting nowhere, so I see no real point to continue that debate. However, theoretically only one fork would be necessary -- the one to allow arbitrary code to run. The thing that's more persuasive for me at the moment is that some modders may well then make mods that are windows-only (or Linux-only, though that's less likely) by relying on native code that won't run on other OSes. But I think we should be able to do LUA scripting in sandbox that's compaitble with the sandboxable portions of LUA in MWSE.

Also:
wareya wrote: 14 Jun 2018, 22:27 Competition isn't actually a thing by the way. When competition happens and has good results it's an anomaly.
QFT.

Re: MWSE, Lua and OpenMW compatibility

Posted: 14 Jun 2018, 22:56
by Chris
wareya wrote: 14 Jun 2018, 22:27 Competition isn't actually a thing by the way. When competition happens and has good results it's an anomaly.
I would argue the opposite. The lack of competition has consistently shown to be a major factor for the lack of progress, or for an increase in consumer-unfriendly actions. It's when you start getting into collusion or oligopolies that competition/choice really fails to deliver.
NullCascade wrote: 14 Jun 2018, 22:31 Did you quote the right piece? Or are you not familiar with Oblivion/Skyrim modding? You're saying that there's a sandbox with OBSE/SKSE plugins? What? No, they're shipped as DLLs. There's no sandbox. There hasn't been a sandbox for those systems in the past decade.
Let me clarify. Vanilla scripting is sandboxed. The reason for un-sandboxed extensions through script extenders is because the vanilla scripting was fixed, and even with scripting extensions was limited by the original engine. This will no longer be the case with OpenMW.
People can feel whatever they want, I can't change that. I'd prefer cool features and unrestricted modders over good feelings. Good feelings is literally all that sandboxing adds to this community.
Stability is another thing added from better security, as is less platform lock-in.
Competition is demonstrably bad in small modding communities like TES. There's never been anything like this. Doom is a whole other beast. It was a pain for people between the Skyrim and Skyrim Special Edition rollout.
The difference is, SSE wasn't in response to modders needs. A large part of SSE was actually already done prior to the original game's release because they were hoping to target the XBone, but had to be stripped down to get it on the 360 since that console generation went on for so long. After the console generation eventually stepped forward, BGS get the engine on it for Fallout 4, and used it to fully bring Skyrim to it and sell the game to people again.

That is very different from forks being made in response to what people actually want. As we see in the Doom community, useful enhancements that people like have a strong habit of propagating between forks. Consequently, people gravitate to forks that have what they most want.
Right now we have two competing improvements to the Morrowind experience: MGE/MWSE/MCP and OpenMW. I don't think competition has added anything to the mix.
Because OpenMW isn't really yet in competition. We're still working on getting vanilla compatibility done. The MWSE-style enhancements are going to be done later, and as has been stated, we won't be completely ignoring what MGE/MWSE/MCP have done. Additionally, I don't think anyone has a problem with collaborating where it makes sense to. I can understand the frustration with not being able to collaborate yet, and perhaps if I was in charge that may be different, but as we're not done with 1.0 yet and can't start on the post-1.0 improvements until they've been discussed anyway, there's little for us to do but focus on getting 1.0 done. The faster we get done, the sooner we can work together.

Re: MWSE, Lua and OpenMW compatibility

Posted: 15 Jun 2018, 04:31
by Kageseigi
wareya wrote: 14 Jun 2018, 22:27 Competition isn't actually a thing by the way. When competition happens and has good results it's an anomaly.
As just a layman and a fan of Morrowind, I'll add this about competition.

Competition should be used to produce a better peanut butter.
Competition should be used to produce a better jelly.

However, competition should NEVER be used to pit peanut butter against jelly!

Finding the best ratio of peanut butter to jelly is perfectly acceptable, but remember that they were destined to be together for the betterment of all mankind! :D

Re: MWSE, Lua and OpenMW compatibility

Posted: 15 Jun 2018, 06:44
by psi29a
Jad wrote: 14 Jun 2018, 22:41 What is this nonsense about competition? The theoretical guy who had a mod idea and was forced to fork to implement it is not trying to actively compete with the entirety of openMW... I get it though, people here have bigger plans than just Morrowind and so sandboxing is important. I'm not a fan, but I don't see why some conciliation like an optional ini setting could not make both sides happy?
I actually agree 100% with this.

I don't understand why it has to be a case of 'or' when it can be a case of 'and'.

Re: Windows Pre-build Script Documentation Updated

Posted: 15 Jun 2018, 14:18
by xirsoi
Zini wrote: 08 Jun 2018, 15:00Another issue I see right away is the xInventory keyword (there are probably others like this). It seems to return multiple values (3 in this case). That is something our script engine can not do and I have no intention of hacking it in, because that would (at best) cause us other problems further down the line or more likely break things right away.
I know this is from a week ago, but that return value sounds like a 3-Tuple to me.

Re: MWSE, Lua and OpenMW compatibility

Posted: 15 Jun 2018, 14:57
by werdanith
Let's put the security issue aside for a moment and focus on what you seem to be avoiding, Null, and tell me how am I supposed to run an .omwaddon that comes with a dll. OpenMW promoting single-platform mods is essentially failing at its stated goal of being multiplatform and makes second class citizens in their own OS the people who work on the project explicitly to avoid that. I don't think anyone wants Android-specific or Mac or whatever OS-specific mods, fracturing the community that you care so much about, a problem that TES3-MP would exacerbate even further turning servers into walled gardens for different OSes.

Re: MWSE, Lua and OpenMW compatibility

Posted: 15 Jun 2018, 19:44
by NullCascade
werdanith wrote: 15 Jun 2018, 14:57Let's put the security issue aside for a moment and focus on what you seem to be avoiding, Null, and tell me how am I supposed to run an .omwaddon that comes with a dll. OpenMW promoting single-platform mods is essentially failing at its stated goal of being multiplatform and makes second class citizens in their own OS the people who work on the project explicitly to avoid that. I don't think anyone wants Android-specific or Mac or whatever OS-specific mods, fracturing the community that you care so much about, a problem that TES3-MP would exacerbate even further turning servers into walled gardens for different OSes.
Very simply. It has binaries for other platforms as well. It doesn't have to be a DLL. You can make a cross-platform dynamic library that loads in as a lua module.

For work, this is how we made plugins for our game engine. You want imagemagick support? It doesn't get added to the core engine, because not everyone wants it. Instead, it gets shipped as a collection of binaries and when your app builds it links with the right one and doesn't include in the others. Obviously it won't work the exact same way in OpenMW, but I really don't think it's an issue.

I'm hardly avoiding the subject, but thanks for letting me clarify.