image ©Maxim Nikolaev
Interview with Lysol 2024-02-15 - jvoisin

Who are you, and is it true that you’re killing 99.9% of viruses and bacterias?

It’s true! It’s not very impressive either, since a small area can have like hundreds of billions of either which means there would still be millions left. I should never be allowed at a hospital. Weird that I actually do work at a hospital.

For real though, the name Lysol does in fact not have anything to do with the cleaning agent with the same name (it’s not even available where I live as far as I know). Well, it does indirectly, but that’s because a really heavy album by the weird band Melvins was named after said cleaning agent. And *my name* was taken from that album because I was a fanboy of that band in my teens.

My actual name is Joakim and I work as a radiographer (or radiology technologist, if the reader is from the US) at a hospital here in Sweden. My developing skills are limited to HTML, CSS and editing existing code of javascript and PHP. Truly impressive.

When did you join the project and why?

I found out about OpenMW when 0.18.0 was released if I recall correctly. There were no animations, no combat, no menus, and executing the engine simply launched you directly into a cave with clipping disabled. For some reason I thought this was the most exciting gaming-related thing I had ever seen. So I started hanging around. A lot. I did some modding. Then one day I ended up volunteering to write a news post on the official blog.

Are you one of those reasonable people who learned C++ to contribute to OpenMW?

What? No? I’m not that smart. I learned how to generate somewhat decent normal maps because of OpenMW, but that’s it. Never did any coding and most likely never will.

Ok, but while you didn’t contribute code, you’ve spent a lot of time making it easier for people to use OpenMW, mainly by working on the documentation and translations.

I did do some of that, yeah. The documentation I did was mainly the guide on how to convert normal maps made for Morrowind Code Patch or MGE XE to OpenMW. I now realize I almost forgot I did this and should probably re-read it to see if I wrote something stupid. I probably did some more documentation as well.

Regarding the translations… Yeah, well, when OpenMW got its translation system implemented, I reacted the same way I did when the normal mapping feature was implemented: “neat, gotta try this out”. So now, pretty much everything* in OpenMW that can be translated is translated to Swedish. A language literally no one will ever ask for to get OpenMW translated into. But it was fun! I learned a lot of new Swedish words, ironically.

*everything as in “everything until Andrei Kortunov decided to make the entire launcher translatable”.

You’re the Head of Public Relations And Assorted Propaganda, how do you feel about this?

I can’t talk about that.

Seriously though, it’s been fun. I did quite a few news posts on the main page back in the day but then kids happened and I started having less and less time to do such things. So I rather feel like a femur than a head to be honest. I still hang around the Discord-channel though and try to be helpful whenever I find the time for it.

I’ve been told that you’re also an avid modder on both Oldwind and OpenMW, is that true?

Well, not that much specifically on Oldwind really. I don’t think I ever released a Morrowind-mod pre-OpenMW actually. But I did *play* Morrowind a lot before OpenMW. I also did a lot of modding during that era, but for other games. During my late teens in the late 00s, I did a lot of modelling and texturing for Warcraft III and Rome: Total War (yes, the first one). I won’t say which project I took part in because the work I did back then is horrible. I’ve changed the username since, so you can’t backtrack me, stalkers.

But anyway, when OpenMW became a thing in my life, I returned to modding again, this time being in my 20’s instead. Then kids happened (stay away from it if you want to be a modder for the rest of your life) and I have barely done any modding since.

You were one of the first modders to create mods with normal and specular maps for OpenMW. Do you want to tell us a bit more about them?

That’s likely correct, yes. In 2016, our lord and fallen hero scrawl implemented normal, specular and parallax mapping into the then freshly baked OSG-version of OpenMW. I got really really hyped and pretty much started F5’ing Nexusmods to see the flood of sweet normal mapped texture mods coming out. Except they didn’t. Texture mod after texture mod came out and no one cared about normal maps.

So I went “fine, I’ll do it myself” and started to re-learn photoshop and teaching myself how to best use diffuse-to-normal map-generating software. So this old thread happened, which later became this thread. Yes, I had to dig deep to find this piece of Lysol history, be grateful.

So, I really just wanted to see how Morrowind would look with 2010 technology. For those that don’t know, normal maps are textures with specific colors that instruct the engine how light should fall on an object, to be able to “fake” a complex shape that wasn’t actually there on the model. You can in other words have a flat modelled surface but still have the light fall on it as if the surface was bumpy and detailed. This gives better looks, but with a lower performance hit than if you would have modelled the shape in 3D instead.

This banner here for example is completely flat, but the normal map makes it look like it is a bit wavy.

With your modder hats on, what is OpenMW doing right, and what is terrible (and should be fixed)?

Right:

Terrible:

Speaking of mods, what’s your favourite one(s)?

This one. Anyone still using my imperial towns-mod is an idiot. This was done by someone with actual skill and not only motivated by “no one else is doing this”.

Has OpenMW lived up to what you expected when you first discovered the project so far?

Oh boy. I got hyped when animations got implemented. Then I got hyped when support for the start scene in the boat got implemented. Then I got hyped when melee combat was implemented. You know, I think OpenMW surpassed my expectations like two hundred times by now.

What’s the current or next big thing you’re hyped about?

I would like to say “the sum of all the de-hardcoding-related Lua merge requests lately”, but that would be boring. But I guess wazabears upcoming clustered shading is pretty hype-worthy.

If you could change one thing about OpenMW, what would it be?

Change the scripting language from Lua to JavaScript.

Seriously though. Getting the VulkanSceneGraph port done and merged with the project, to bring OpenMW into the future, from OSG to VSG, from OpenGL to Vulkan! But that is being worked on slowly, so we’ll hopefully get there one day.

Anything else you’d like to add?

A big thanks to all of the people, still active or now inactive, that have been part of making OpenMW what it is today. You’ve all been a big inspiration and I’ve had so much fun hanging around with you on the internet. I never thought I would be part of a community like this for more than ten years and still find the project fascinating!

2024-02-15 - jvoisin - No pingbacks so far.
Interview with Evil Eye 2024-02-09 - jvoisin

Who are you and are you really an eye? What’s your villain origin story? Why do you have so many names? Are you really the Batman?

I’m Evil Eye, or Assumeru when that name isn’t available. My contract says I’m a devops engineer, but I’m really a detached eyeball with psionic powers who types by blinking. Using a computer is bit of a hassle, but overall I’d rate being me 8/10; would recommend. I am not Batman, although that is something Bruce Wayne would say. As for my dank and secret past, it all began when I was but a mere pupil…

Okay, jokes aside, I first saw Morrowind over at a friend’s in 2005 or 2006 – summer, I think. I got a small tour: a look at character creation, a bit of the world, and a cliff racer. It was a case of love at first sight for me and I ended up ordering the game from eBay when I got home. Fast forward a bit and I’m messing around with mods and the Construction Set. At this point in time I didn’t know anything about 3D modeling other than how to use NifSkope and I’d look at the models added by whatever mods I’d download and try to use them in different ways. One such mod, I think it was Abu’s Retreat, added some sort of wooden wall decoration that looked vaguely like an eye. I tried to set it up as a creature. Obviously that failed as it had no animations whatsoever, nevermind creature animations, but the name stuck and I used it when I registered my account on the (now defunct) Bethesda Game Studios Forums. As for the other name, Assumeru was a character I played. A glass armor wearing, Trueflame wielding dunmer who I first completed the main quest with, as well as Tribunal’s main quest, a good number of faction quests, and some of Tamriel Rebuilt‘s Telvanni content. I ended up joining TR shortly after, in 2009.

When did you join the project and why?

OpenMW first crossed my screen in the form of a thread on the aforementioned Bethesda forums. I thought it was interesting in much the same way I thought the MCPMGE, TR, and S:HotN threads were interesting so I watched it for updates. The project wasn’t really a game at that stage, more of a tech demo, but it was progressing rapidly. You can still see the videos from 2012 on the YouTube channel.

For the next few years I’d download the latest version once in a while, play it, and report whatever bugs I ran into. In 2014 I reported #1138, by 2016 it still hadn’t been fixed so I decided to take matters into my own hands and, with copious help from scrawl, fixed the issue. Then I fixed a handful of other minor issues until I got back into TR development in 2019 (after doing next to nothing for the project in the intervening ten years.) I was working on a quest (that finally got released in last year’s Andaram release) and I’d written some scripts that didn’t work in OpenMW due to #2311. I wasn’t about to roll over and accept that and, well, you could say things got out of hand.

So to actually answer the question, I joined the project because OpenMW was doing things that annoyed me. And my only C++ knowledge being a Tic-Tac-Toe program I wrote when I was 13 or so wasn’t going to stop me from changing that.

So you’re ones of those completely reasonable people who learned C++ to work on OpenMW?

I wasn’t going to defend my sanity! I did have a little C and PHP5 experience, the latter being an embarrassingly thin wrapper around its C and C++ roots sometimes.

Has OpenMW lived up to what you expected when you first discovered the project so far?

I’d say it’s done better than I expected. Of course when you consider that the Bethesda forums and a good number of interesting projects that posted there have gone the way of the dodo since then, my expectations might not have been that high to begin with.

You’re the resident bug-fixer in chief of the project, what’s so exciting about fixing all those obscure edge-cases?

I don’t know about exciting, but it’s gratifying to see the reduction in people complaining about OpenMW compatibility. In the non-MWSE sense that is. It (mostly) just works now.

Speaking of MWSE, what’s your opinion on it in the context of OpenMW?

In that context I suppose its functionality is something to strive for in OpenMW, but it’s not something I give much thought to. It’s too broad a subject, really.

What have you been working on recently?

I started the 0.49 development cycle with a good amount of partial dehardcoding. As we get closer to branching, I’m trying to get in more minor issues that are easy enough to resolve. Thanks to Capo and Abdu I’m also playing some ancient mods of dubious quality in an attempt to find more bugs.

What was the most exciting thing for you to work on? Oh, and since you’re fixing so many bugs, what’s your favourite one?

I had fun figuring out how Cortex’s transformation scripts and GCD’s levelling scripts worked for #3905 and #2036, respectively. Bug fixing has led to me playing lots of mods I otherwise never would have. Some of them very impressive, a lot of them pretty bad, but all interesting enough for someone to have reported a bug.

My favourite fixed bug is #4414, at least for today. How we could have ever lived without NPCs redressing themselves is beyond me.

Any cool things you plan to implement that you haven’t already started working on?

Technically I’ve already laid some groundwork by starting that partial dehardcoding mentioned earlier, but I want to dehardcode magic. Having rewritten a large part of the magic code not that long ago, it’s a daunting prospect, but I want those new summon icons we have in Tamriel Data to show up in OpenMW already! Other than that I’m not a big planner; I just do whatever I feel like doing.

If you could change one thing about OpenMW, what would it be?

Just one? Guess I’ll have to close my open merge requests.

Any cool things you’re working on that aren’t OpenMW-related?

The province mods are pretty cool… and always looking for more hands. So if you don’t feel like you can contribute to OpenMW, try there. How’s that for a segue? I promise it’s not a pyramid scheme! Not since the Necrom pyramid got removed anyway…

Anything else you’d like to add?

A very general shout-out to anyone involved in any of the things mentioned above. A much less general observation that mwscript is deeply cursed. And last but not least, please keep the bug reports coming, folks!

2024-02-09 - jvoisin - No pingbacks so far.

You’ve already been interviewed on this very blog in 2019, but you didn’t mention if you have a cat. Who are you again, by the way?

It’s me. I’m the cat.

I have to reveal the darkest of my dark secrets: I am not in fact a cat.

I’m still Alexei, still best known as Capo. I’ve since moved to Southern Russia, though I hope to eventually move somewhere else. I’m now 21 and thankfully, I’m not a high school student anymore. Right now I’m trying to get a CS degree. Yes, I’m younger than Morrowind itself, by a month or so.

As mentioned in the original interview, I discovered The Elder Scrolls series proper and OpenMW in 2015, stuck around since then and started actively contributing in early 2018. I generally focus on file format support (NIF, ESM, BSA), mod compatibility and high-level mechanics.

I do have a cat. Her name used to be Behemoth, and now it’s Plague. Is cat tax evasion a crime? I’m committing it.

What have you been working on recently, and what’s your new five-year plan for OpenMW?

Assuming the entire 0.49 development cycle counts as “recently”, I would put a few things from that here as the highlights. 

I’ve recently added NiFogProperty and NiParticleBomb NIF record type handling — the former is responsible for setting up fog settings in NetImmerse and it’s useful for disabling fog for a part of the scene and the latter produces an explosion effect during particle simulation. I’ve soft-rewritten the entire NIF parser for the upcoming 0.49 release, which is not something an end-user should notice, but what it should do is make further updates to it much easier.

I’ve also updated lighting. Notable addition is specular lighting support for all lights, which basically means objects with specular maps will get shinier from any light, not just the sun, as can be seen in Silverware Repolished by Pherim:

Speaking of the sun itself, with Hrnchamd‘s help its exterior trajectory and interior position have very recently been corrected, which should make Morrowind’s look noticeably more accurate in every single interior and exterior location, e.g. reducing lighting seams caused by poorly made models — to an extent — and making everything lit as originally designed — also to an extent.

I’ve made it so collision shape generation and attack animation state machine no longer rely on educated guesswork and hopes and dreams of all who contributed to them (as much). Melee combat hit processing in particular is radically different under the cover in 0.49, which you might or might not notice or have noticed. The goal was of course to make it more accurate to Morrowind, for better or worse. The general consequence is that it should be easier to hit cliff racers and more difficult to avoid them.

But I’d rather not bore the reader with extended explanations of what I’ve addressed or added. It’s mostly bug-fixing, and while 45% of closed bugs on 0.49 milestone as of this point in time are assigned to me, most of them are not particularly flashy or worth mentioning. I will bore the reader with extended explanations of what I’ve addressed or added in some other place.

As for a new five-year plan, well… It exists. For various reasons I’d rather not expose it right now. To make things more interesting, you know?

Five years ago, you said that you wanted to work on the VulkanSceneGraph port, extended ESM reader, adding missing NIF features, bump-mapping and so on. What’s the status on those fronts?

So I did. Well, I certainly did add various missing NIF features since roughly around then, including but not limited to bump-mapping as mentioned, gloss-mapping, triangle strip geometry, line geometry, various internal texture formats, a couple of animation interpolation methods, as well as proper handling of depth buffer settings and UV animations, a bunch of other things mentioned earlier that will come around with 0.49, and various other little things I remember or don’t remember doing. And an unimaginable number of rewrites. And one other small thing that shall remain an open secret. It’s not very impressive when you look back and round it up like that, but all the little things add up.

VulkanSceneGraph port and extended ESM reader, however, ended up being handled by more knowledgeable people – and perhaps the best people for the task – in the meantime. Well, it was more of wishful thinking. I would probably have spent decades on attaining all of the involved wisdom.

(Though I did end up adding Enderal and Fallout 4 support to the latter.)

What was the most exciting thing for you to work on?

The open secret.

Is it support for The Elder Scrolls: Arena‽

Close.

Any cool things you plan to implement that you haven’t already started working on?

If I’m not to expose the five-year plan, I’d like to address issues #6000 and #7777 from our issue tracker.

What’s your opinion on the Lua-fication of OpenMW?

It’s a logical development on the idea of the Great Dehardcoding™. Turning Morrowind-derived functionality into custom content is essential for transforming OpenMW into a general-purpose open-world video game engine, and even if you don’t particularly care about that prospect, you should appreciate the increased moddability for Morrowind. It happens that the chosen path was to design a Lua-based scripting API and turn various C++ logic into scripts that use that. 

However, at the current point in time I feel like my efforts are best directed towards reaching Morrowind/”BethImmerse” parity, so I’m not actively contributing to Lua API or editor development. Eventually I’ll move on, sure. Not now.

What motivates you to continue working on OpenMW?

The fact that seeing things just work is immensely satisfying on one hand and the feeling that I still haven’t done enough to leave a meaningful imprint/immortalize myself on the other. 

When you’re playing Morrowind, you probably won’t be seeing any killer feature you can easily associate with my work that’s not just doing what Morrowind was already doing 20 years ago. Nothing I’ve worked on is particularly sophisticated. Nothing ventures much beyond what could be classified as a backward compatibility improvement. Anyone could have done the same things, given time and motivation. Bringing OpenMW to 1.x with that somewhat fragmentary effort would be the ultimate manifestation of “little things add up” quote. So I hope to at least do that.

That was rather pessimistic, wasn’t it?

Let’s be have a more optimistic spin on this, then. Working on OpenMW combines doing what’s fun, which is playing The Elder Scrolls and who’s to say, maybe even Fallout, and discovering the magic behind them, with doing what’s useful, which is getting experience in C++ and OpenGL programming, MATH, game design and software architecture in general, problem solving, teamwork, testing/debugging, and various other skills and areas important for a software engineer. If that also helps thousands of other people have a great deal of fun too, that’s even better. As great as the heights OpenMW has reached are, there’s a great deal more things that could be done, so I hope to stick around for a while, and who knows, maybe some things I did could even be helpful for my CV.

If you could change one thing about OpenMW, what would it be?

Compilation time.

So, what you’re saying is that we should rewrite OpenMW in go (it’s really fast to compile) and rename it GopenMW?

I tried hard to make “the Rust-y Argonian-made” pun work but it just can’t.

Any particular wishes for the OpenMW 1.0 release party?

For it to happen and for me to be able to visit it at all.

Bring snacks and sweetened tea.

Any cool things you’re working on that aren’t OpenMW-related?

There are, actually. I’ve been an amateur music producer for a few years now, though I’m not yet at the point I would consider myself decent, and truth be told I don’t spend as much time as I should on it. More recently I’ve been (extremely slowly) designing a game called Crescent, a vaguely Cave Story-inspired platformer with a vaguely Alice’s Adventures in WonderlandThrough the Looking Glass and The Wonderful Wizard of Oz-inspired isekai dreamworld setting and plot. It’s meant to be a lighthearted modern fairytale-like adventure with a colorful cast, exploring the concepts of free will and destiny, cold logic and unhinged creativity, dreams and delusions, and why curiosity killed the cat.

Among its light RPG and metroidvania elements is its gimmick that is supposed to be an unnecessarily convoluted spellcasting and spellcrafting system that all my friends who help me out tell me is very reminiscent of Magicka (which I’ve never played).

Unfortunately while all of that already got a small novel worth of writeups I don’t excel at anything and have to first bring all my ART-related skills up to some point where I would be satisfied with my work, and I also have procrastination tendencies, so maybe you’ll only see something substantial in 2090. That will truly be a glorious year.

And while I mentioned an OpenMW-based game as a possible plan in 2019, OpenMW happens not to be a 2D sprite-based game engine at the moment, so it’s not going to be built on that. Probably.

You can, however, get an idea of what the soundtrack could be like from this little compilation. Don’t take this too seriously, the tracks will probably get rewritten several times over. It will get updated from time to time. If you’re reading this in distant future and this link is dead, well, that sucks.

What questions would you like us to ask you in the next interview in 5 years?

Hey, that’s cheating.

Anything else you’d like to add?

I would like to thank everyone who has been supporting me through all these years and to thank every single OpenMW contributor for collectively creating something truly special. I would also like to give special thanks to the following people. They probably know for what: Abdu Sharif, Andrei Kortunov, AnyOldName3, CMAugust, David Cernat, EJ-12, elsid, Evil Eye, Greatness7, Hrnchamd, jvoisin, Lysol, psi29a, scrawl, and of course, you the reader!

2024-02-02 - jvoisin - No pingbacks so far.
Interview with wazabear 2024-01-26 - jvoisin

Who are you and why aren’t you a bear anymore? What happened?

I’m 26 years old and I live in California where I work as a Software Developer. I love the icy cold, and my dream vacation is Solstheim. If I could meet anyone from the Elder Scrolls universe it would be Todd Howard. Everyone always asks about the name, and I love telling the story and disappointing them. I needed a handle for some account that I can’t remember many years back. That was the phrase that came to mind, and so goes my origin story. 

When did you join the project and why?

It started sometime around 2019 when a friend introduced me to the OpenMW engine. Prior to that, Morrowind was a distant thought in my mind. I was amazed that not one person, but a team, had designed an engine to run the game of my childhood. I started a playthrough and discovered the world of modding. Rather quickly I realized I enjoyed the modding bit more than the playing bit. 

It wasn’t until around 2021 when the thought of contributing to the codebase came to my mind. In my playthroughs I had noticed some terrible light popping in Balmora, so I decided to investigate. One thing led to another, and before you know it I had opened up a merge request on the project’s GitLab page.

You’ve been creating mods and shaders for both Morrowind and OpenMW. Are there any that you are particularly fond of?

Not really, due to limitations in MWScript and the engine I was never able to create any of the mods I really wanted to. The ones I published were pretty random and I don’t maintain them much at all. Now that the Lua API is maturing and new rendering features added, these limitations are slowly being lifted. My most ambitious project is writing a Lua driven UI/HUD (named Crystal UI). In 2090 I expect to finally release it, unless someone beats me to the chase. These projects are not my priority nowadays. When I do work on OpenMW, I try and improve the engine itself in some way.

When it comes to OpenMW itself, what was the most exciting thing for you to work on? Post-processing? Lighting? All of the above? None of the above?

Hard to say. I can tell you the most exciting result was seeing the effect of the reverse-z depth buffer. It transformed the world of Vvardenfell as I explored it. Before this change, there was incredible precision loss as you look at things farther away. Lava fields would clip through to the mountains, ground level was filled with this awful zig-zag looking artifacts. What’s worse is that the artifacts are view dependent, so they flicker as you move your camera. Now, viewing the sea, mountains, and lava fields in the distance is a pleasurable experience. 

My work with the post-processing framework was the most rewarding as I saw graphics artists come and create spectacular shaders shortly after the feature landed.

You recently implemented clustered rendering in OpenMW, can you talk a bit about it? What it is, and why it’s the best thing since sliced bread?

It’s a relatively modern technique for all things lighting. With the current engine, every object in the game gets assigned a list of lights. Due to hardware limitations and performance bottlenecks, this list is kept quite low. Even later titles like Skyrim enforced such limits, leading to the infamous light pop-in. In fact, most engines using forward renderers have this limit in some form. In most basic terms, clustered lighting takes a new approach by assigning lights to fixed sections of the camera view, instead of assigning them to individual objects in the world. Furthermore, it allows us to easily offload large amounts of work to the GPU. In the end, you’re left with the ability to view a virtually unlimited number of lights in the scene. Being able to look at thousands of fully dynamic point lights without the aid of baked lighting is truly a breakthrough. AAA titles such as Doom 2016 used this rendering technique.

While I share progress with the community, it is in the experimental phase only. Hopefully one day I’ll get the time and motivation to make it merge ready. This technique paves way for efficient volumetric lighting, point light shadows, and light culling. It’s far from the end of the road!

And what have you been working on recently?

Aside from the above, I’ve been slowly working on exposing a scene graph API in Lua. This would allow you to toggle switch nodes on NIFs and render custom built scenes into textures, which can be used in the UI for things such as item previews and character dolls. It’s a powerful feature so I hope to wrap that up by the end of the year, I’m a slow worker.

I think you’re part of the OpenMW-Lua Cabal. Can you tell us about its secret plans?

I promise we do only good. The super secret plans can be found on the projects GitLab issue tracker and forums. Instead of enumerating all the plans for the future, it’s better to answer this in a different way: OpenMW Lua is a new feature, and it’s missing a lot! Slowly but surely the team is hard at work filling in the gaps and making it into a mature framework which modders can depend on. A couple recent additions were the ability to create UI elements and play sounds. The work continues, we need to be able to do more! Everything from weather, sounds, input handling, combat, AI, etc…, need to be added as a new interface to the Lua framework. As always, we’re looking for new contributors on this front.

Since you’ve been working on improving OpenMW’s rendering and post-processing capabilities, when can we expect path tracing, tessellation, Lumen-like global illumination?

I’d love to see advanced techniques such as path tracing and global illumination, but a better time for this would be when OpenMW is able to switch rendering backends to something like Vulkan. That isn’t to say there is not a ton of room for improvement in other areas. I’ll talk about these in the other questions. Don’t let that deter you though, if someone is motivated enough we might get these features in our current renderer, I’d be happy to help this land.

Any cool things you plan to implement that you haven’t already started working on?

I have about 30 local branches where I have a half-baked approach to everything I’ve ever wanted to see implemented. The hardest part is sticking to one and finishing it. If I had to choose, point light shadows are at the top of my list. That will wait until we finally have the clustered renderer we mentioned earlier. Currently, a point light solution would be anti-climactic as it would likely be limited to hand-held light sources like torches due to performance concerns and needing to drastically limit the number of shadow casting lights. I also want to see a parameterized sky which we have accessible through a Lua weather controller, to drive diverse weather and custom particle VFX.

Speaking of cool things, with OpenMW 1.0 getting closer, how do you envision OpenMW 2.0?

Ask anyone and you’ll get a different answer for this. Version numbers hold little meaning to me and serve as marketing gimmicks mostly, everyone uses different metrics to measure the success and maturity of projects. The general consensus, however, is that 1.0 is about feature parity with `Morrowind.exe`, within reason. Past that I would say 2.0 would need a Vulkan renderer that is supported on all major platforms, and multiplayer support.

And any cool things you’re working on that aren’t OpenMW-related?

I see through your trickery. OpenMW is the only project I work on!

Anything else you’d like to add?

OpenMW is looking for contributors, especially graphics programmers! It’s a small army of dedicated individuals over here and we love to see new faces. For me, I’d love to see someone come in and implement height fog and atmospheric scattering. OpenMW still uses the most basic form of depth based fogging which emulates the ancient fixed function fog formula. The development team, including me, are always around to help out newcomers, so if you’re interested feel free to start a discussion on GitLab or Discord. We’re all happy to answer the million and one questions you will most certainly have. Thanks to everyone in the community who helps drive this amazing project!

2024-01-26 - jvoisin - No pingbacks so far.
Interview with zackhasacat 2024-01-12 - jvoisin

Who is Zack and does he really have a cat?

I have two cats, a mother and a daughter tuxedo pair. My name isn’t actually Zack, but I live in South Dakota in the USA. I’m 29 years old, and work as a technician at a Managed Service Provider, basically an IT company. When I’m not working on OpenMW or my real job, I spend time attending and staffing Anime Conventions. I grew up playing Morrowind, and the following games in the series, but none lived up to the original TES3!

You’ve been contributing since mid-2023, but when and how did you discover the project, and why did you decide to join the party?

I discovered the project a long long time ago, I was a member of the Google Groups email list, around August 2009. I’ve used it for playing Morrowind for a long time, I can’t remember when I switched. No later than 2015, since I started making mods for OpenMW primarily around that time. I actually first submitted a merge request in late 2021, but didn’t see it through to the end. I had become busy with other things in life, and came back when the API was far more progressed. It was merged, but ptmikheev was responsible for the finishing touches.

I submitted code again after I read up on C++ a bit more. I had never written C++ seriously before contributing to OpenMW. I wanted to create mods for OpenMW Lua, that required features that weren’t added yet, so I decided to stop waiting around and just add them.

Has OpenMW lived up to what you expected when you first discovered the project?

Yes, absolutely! As far as I’m concerned, it plays Morrowind flawlessly. I’m excited to see feature parity with MWSE, add in TES3MP into the master branch, and add more support for playing (or rendering) later games from the series.

Since it was mentioned, what’s your opinion on MWSE?

MWSE is pretty cool, and very powerful. I’ve developed several of my mods to use it. My most recent larger project, Clone, included a library that allowed you to use Lua code for both engines. I’m not sure that is feasible long term. It’s difficult to write mods for both engines, since both have their strengths and weaknesses.

My biggest issue using MWSE is my platform of choice, OpenMW works on Mac and Linux, whereas MWSE of course, doesn’t without major workarounds. I do have a virtual machine set up for it, but just am much more comfy with OpenMW Lua anyways.

Ohoh, are you planning to add some bits (or maybe, even all) of MWSE unto OpenMW?

There is a good amount I’d like to bring over. The ability to create records is pretty important, especially NPC records. Mostly stuff that I need anyways, but MWSE mods show what can be done once the OpenMW Lua API is even more mature.

However, certainly much of MWSE is beyond my ability at the moment to add to OpenMW. The advanced C++ programmers like urm and wazabear will most likely be doing the rendering/scene graph API.

You’re effectively co-leading the OpenMW Lua cabal, how do you feel about that?

I’m not sure if I’m leading anything, but I love helping the OpenMW Lua community grow. I try to help anyone in the OpenMW discord who is learning Lua, and all my mods are free for the picking to steal code from. You can get them from my GitLab, or my Nexus Mods

What have you been working on recently?

I recently got into Mac and iOS app development, using Apple’s Swift programming language. I’m creating a standalone launcher for OpenMW on Mac, that will be able to work as more of a mod manager like Mod Organizer 2, as opposed to OpenMW’s launcher.

I’ve got a few concepts for my existing mods, and a few new mod ideas. Notably, I’m hoping to get started on an update to my MUNDIS mod that would allow you to travel between save games, and even between OpenMW and MWSE, bringing your character, with their stats and items to the new “timeline”, similar to the real TARDIS.

What are some mod ideas you look forward to becoming doable in OpenMW?

I really want to build an RTS mode, using Morrowind actors as units, and being able to build structures as in the Command and Conquer games. I’ve already implemented a lot of this in my Ashlander Architect mod, we just need to make some improvements in the AI, and implement the user interface.

What kind of other nice stuff do you expect OpenMW will give us in the future?

I really hope for the ability to create new world spaces, similar to the later games. This will be great for adding new lands in mods. We’ll need to add support for mapping in these spaces.

How do you feel about OpenMW potentially adding support for more games in the future?

It’s very promising. It may not be fully ready to use until 2090™, but given the relatively short amount of time it took to support Morrowind, I think we can make good progress. I’ve only done one small contribution to help this, but hope to help more soon. Lua might come in handy to implement the mechanics.

Any cool things you plan to implement in the future that you haven’t already started working on?

Adding access to more record stores is very important. This will be needed for things like dehardcoding user interfaces. Dialogue records are one of the most important features not yet added to the Lua API. I’ve got a few contributions I need to finish before I want to start on this, however.

I want to be able to create new cells, with whatever parameters needed. This would be very handy for Ashlander Architect.

Game weather is not accessible to Lua yet. There has been discussion on this, and I think it is something I will tackle in a few months, if not already done by then.

Anything else you’d like to add?

I’m very happy that OpenMW has added Lua scripting. I used to be very frustrated with MWScript, Morrowind’s original scripting language, and created huge scripts that covered every use case I could think of. I wanted to add black soul gems to Morrowind, but doing it with MWScript caused so many problems, as documented in this forum thread After support was added to OpenMW Lua for souls in items (by me, but with help from the rest of the team), it was possible to do this cleanly in OpenMW Lua instead of scripting, or by editing the source of the engine.

You mentioned cats… can we see them?

2024-01-12 - jvoisin - No pingbacks so far.