the thing is, I want to create dynamic NPCs, meaning that their entire behaviour could change under special circumstances. So my default ''unimportant worker'' may trespass on a nobleman's territorry each morning while going to work. Each time the nobleman sees this, he gets this ID of that worker and uses it as a key in his own 'Reputation' hashtable. He then subtracts maybe 10 from the corresponding integer value and compares the result with his behaviour. If the integer is less than 0, he will attack the worker, if it's less than 50, he will get angry, and so on.
Normally I would have just used the gameObject as the key, but since I can only use a string, I have to make sure that each NPC is treated individually. If I were to just use the name as a string, the nobleman would after some time attack each and every worker because they've all got the same name. I haven't tried the path solution but I guess that works only for prefabs and would be a bother to edit by hand.