stringtable.csv still works fine
I'm an old timer. This soothes my fragile nerves

And if you want to convert from stringtable.csv to xml:
CSVtoXML.7zJust pass the path to the csv as first parameter.
I wish I had the wisdom to implement that solution into my mission
EDIT: The descritpion.ext entry for the string is different from OFP and Armed Assault though. Here's what it supposed to look like (working example):
class CfgSounds
{
class grunt_01
{
name = "grunt_01";
sound[] = {"sound\grunt_01.ogg", db+20, 1.0, 160};
titles[]={0, "$STR_grunt_01"};
};
class grunt_02
{
name = "grunt_02";
sound[] = {"sound\grunt_02.ogg", db+20, 1.0, 160};
titles[]={0, "$STR_grunt_02"};
};
class grunt_03
{
name = "grunt_03";
sound[] = {"sound\grunt_03.ogg", db+20, 1.0, 160};
titles[]={0, "$STR_grunt_03"};
};
class grunt_04
{
name = "grunt_04";
sound[] = {"sound\grunt_04.ogg", db+20, 1.0, 160};
titles[]={0, "$STR_grunt_04"};
};
class grunt_05
{
name = "grunt_05";
sound[] = {"sound\grunt_05.ogg", db+20, 1.0, 160};
titles[]={0, "$STR_grunt_05"};
};
class grunt_06
{
name = "grunt_06";
sound[] = {"sound\grunt_06.ogg", db+20, 1.0, 160};
titles[]={0, "$STR_grunt_06"};
};
class grunt_07
{
name = "grunt_07";
sound[] = {"sound\grunt_07.ogg", db+20, 1.0, 160};
titles[]={0, "$STR_grunt_07"};
};
};
Please note that the stringtable.csv must be in the root-folder of the mission (unlike the sounds it's refering to). And every string must be named with a line staring with a dollar sign. But don't use the dollarsign when you are referring to the string in a script. OK?