Application: AnyOldName3

Join the team. This area is for people who want to participate in OpenMW's development in one way or another.
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Application: AnyOldName3

Post by AnyOldName3 »

Hi.

I just finished my second year of a CS degree, so have about three months free over the summer, and think OpenMW is probably a great thing to fill some time with. I've got limited experience with C++, but quite a bit with Java, as well as some C#, Python, ML (this is probably enough to identify where I'm doing my degree, as everywhere else teaches Haskel or OCAML), and probably some others I've forgotten.

I set up a dev environment around Christmas, although it ended up a bit of a mess due to not knowing as much git as I do now, so I'll probably redo that. I've read the code style guidelines etc., and once I make an issue tracker account, I'll be in a good position to be pointed in the general direction of a task.
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Application: AnyOldName3

Post by psi29a »

Awesome, welcome aboard! :)

Have a look through the open bugs and see if there is something that might interest you. Lots of OpenMW-CS low-lying fruit tasks still!
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Application: AnyOldName3

Post by AnyOldName3 »

So I've got OpenMW to build in both debug and release configurations (it's great to see Ace's script in the base repository now), but am having issues actually running the compiled builds. The debug build fails an assertion and throws a related exception if I ignore it, and release throws the same exception. Specifically, it's:

Code: Select all

MyGUI EXCEPTION : root widget name '_Main' in layout 'openmw_loading_screen.layout' not found. in MyGUI at C:\OpenMW\openmw\apps\openmw\mwgui\layout.cpp (line 32)
I don't know enough about MyGUI to identify anything as wrong with the nearby code, but I'm assuming that if this was a real issue, it would occur for everyone else, and not just me.
aesylwinn
Posts: 243
Joined: 14 Dec 2015, 20:30

Re: Application: AnyOldName3

Post by aesylwinn »

Do you have the resources folder in your "working directory"?
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Application: AnyOldName3

Post by AnyOldName3 »

There is a resources folder in the same directory as the solution file, and it has the same contents as my non-homemade install of OpenMW 0.39. The compiled binaries live in the Debug and Release subdirectories of the solution folder (depending on build configuration), and don't see the resources either when run in their actual folders, or when run from the solution folder.
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Application: AnyOldName3

Post by psi29a »

It looks like openmw (and friends) can't find your resources directory, try copying it to the directory of your openmw executable or placing it in a directory that openmw can find it.
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Application: AnyOldName3

Post by AnyOldName3 »

I made symlinks from the solution folder (Build_64) to the debug and release folders for:
  • resources
  • gamecontrollerdb.txt
  • openmw.cfg
  • openmw-cs.cfg
  • settings-default.cfg
This has basically the same effect as copying stuff, and so made everything work. However, these really should have been copied by either the build process or the prebuild script. If I missed something which I was supposed to do, I'd be glad to be pointed in the right direction. Otherwise, it's something that should really be set up in the future.

I also just looked at the thread I made at Christmas when I was having trouble with the script, and I apparently had the exact same problem, and discussed it with Ace, and came up with exactly the same solution. I'll probably tweak my local version of the build script to copy everything automatically, and then make a pull request.
aesylwinn
Posts: 243
Joined: 14 Dec 2015, 20:30

Re: Application: AnyOldName3

Post by aesylwinn »

I do recall from prior experience that there is some project setting that will change where MSVC's "working directory" is located. If you are running it from the editor, then that would probably be sufficient, assuming there is a directory that already contains all of the necessary files. Otherwise, you need to copy all the required files somewhere as you discovered.
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Application: AnyOldName3

Post by AnyOldName3 »

So that's been merged, so I'll try something in OpenMW or OpenCS proper now. https://bugs.openmw.org/issues/3243 looks like something I could investigate, especially if someone can point me in the direction of whichever classes are responsible for loading this kind of data.
aesylwinn
Posts: 243
Joined: 14 Dec 2015, 20:30

Re: Application: AnyOldName3

Post by aesylwinn »

Using grep, I searched the source directory for "Loading config file:" which shows up in the terminal. This lead me to apps/launcher/maindialogue.cpp. After examining the header file, I found that it referenced the components/config/launchersettings.hpp. My guess is that this would be a good place to start.

I would highly suggest finding a windows equivalent for grep. It makes finding everything much easier, considering the lack of extensive documentation for this project.
Post Reply