Since you're obviously using C++, why on earth are you using char pointers as strings? Don't do that. Use std::string. Also, you can't concatenate char pointers like that. You are adding the char value of your Zone ID to your pointer, offsetting it into some undefined territory.
How about this?
std::ostringstream folderName; folderName << "World" << WorldID; /MAKE NEW DIRECTORY mkdir( forderName.str().c_str() );