Next we're back to "CharacterUtilite.c", line 1847, which is in the middle of this:
Code:
string GetReputationName(int reputation)
{
// KK -->
int delta = roundup(makefloat(REPUTATION_MAX - REPUTATION_MIN + 1) / makefloat(REPUTATION_TABLE_SIZE));
int rep = makeint(makefloat(reputation) / makefloat(delta));
return ReputationTable[rep]; <-- this is line 1847
// <-- KK
}
I can actually make a guess at what's happening here. It works out the full range of the reputation scale, divides "reputation" by that to figure out how far up the table you are, then picks the reputation label out of the table. What's it going to do if "reputation" is negative, which is what seems to have happened here? It's complaining about an index of -1, which is presumably what "rep" ended up as.