loot / libloot

A C++ library for accessing LOOT's metadata and sorting functionality.
GNU General Public License v3.0
32 stars 11 forks source link

Exception when loading the masterlist of Fallout New Vegas #96

Closed limo-app closed 2 months ago

limo-app commented 2 months ago

When trying to load the Fallout New Vegas masterlist, downloaded from here, libloot throws a std::runtime_error with the following message: yaml-cpp: error at line 19, column 9: bad conversion: 'text' key missing from 'message content' object

I have confirmed that the same code works for other masterlists, like the one for Skyrim SE.

I am using: libloot 0.23.0 yaml-cpp 0.8.0 from here.

Here is a minimal example that reproduces the error for me:

auto loot_handle = loot::CreateGameHandle(
  loot::GameType::fonv, "PATH/TO/GAME", "PATH/TO/PLUGINS");
// this line causes the exception:
loot_handle->GetDatabase().LoadLists("PATH/TO/MASTERLIST");
Ortham commented 2 months ago

That looks expected to me, the master branch of the masterlist repositories holds masterlists that use the first version of the file format: you should be using the v0.21 branch instead.

limo-app commented 2 months ago

That looks expected to me, the master branch of the masterlist repositories holds masterlists that use the first version of the file format: you should be using the v0.21 branch instead.

My bad. This fixes the issue, thank you!