There is a few posts here already about how to make a NPC / Edit so feel free to check out the link since it's very helpful:
[Only registered and activated users can see links. Click Here To Register...]
Editing a NPC that is already in game will require you to have:
LilProHacker's Data.Sah tool
[Only registered and activated users can see links. Click Here To Register...]
ZeroSignal's shay_data_edit_0-1b/c
[Only registered and activated users can see links. Click Here To Register...]
Python
[Only registered and activated users can see links. Click Here To Register...]
And Microsoft Excel or OpenOffice (to view)
[Only registered and activated users can see links. Click Here To Register...]
Those are the tools you will need if you are planning to edit or create an NPC. You can also do it in HxD but that's just a pain in the ass, and you would need a Hex Converter such as SubnetOnline which works pretty good.
Credits go to the Ubers here ^^ the rest will explain itself.