m_sMerchantsSocketID is now signed. Fixed up a few bad checks involving it (>= MAX_USER is illegal, > MAX_USER includes element at index 3000 -- which would be valid if MAX_USER was 3001, not 3000. 0-indexing! Yay!), and - like the trade system, party system, etc, enforced < 0 (more specifically -1) as the invalid/unused ID. Additionally, it's g_pMain not m_pMain now (one global ref vs _many_ local refs...). ;)