Fix snprintf usage

snprintf can return negative values for errors; also, change MSVC to use _snprintf_s (since that's what picojson does), and use it in game.cpp as well as overmap.cpp (best would be to put it in a header, but there's no one header that's included from everywhere)