Vielen Dank für die Idee,
wusste gar nicht das er die GDK nutzt^^
Jetzt funktioniert es jedenfalls - ohne Probleme und die natives werden auch gecalled 
//Edit
neues Problem
der Server crasht mir an einer dieser Stellen immer weg.
float x=amx_ctof(params[2]),y=amx_ctof(params[3])/float(1.8);
//float x=amx_ctof(params[2]),y=amx_ctof(params[3])/float(1.8);
//x=(x<133/2)?x:x-133/2;
char* text = NULL;
const char* text2 = NULL;
int len = NULL, pos = NULL, pos2 = NULL, color = NULL;
amx_StrParam(amx, params[4], text2);
cell *addr = NULL;
std::cout<<"0"<<std::endl;
amx_GetAddr(amx, params[4], &addr);
amx_StrLen(addr, &len);
std::cout<<"1"<<std::endl;
std::string str=text2, str2 = NULL;
std::cout<<"2"<<std::endl;
pos = str.find('{'),pos2 = str.find('}',pos);
std::cout<<"3"<<std::endl;
if(pos != -1 && pos2 !=-1)
{
std::cout<<"4"<<std::endl;
str2.copy(text,6,pos);
std::cout<<"5"<<std::endl;
text2=str2.c_str();
std::cout<<"6"<<std::endl;
logprintf(text2);
sscanf_s(text2, "%x", &color);
str.erase(pos,pos2+1);
}
text2=str.c_str();
Ich habe versucht über cout und logprintf irgendetwas ausgeben zulassen,
aber er gibt einfach nichts aus sondern crasht einfach.
angeblich soll man mit cout auch was in die Datei schreiben können,
was aber nicht funktioniert und ich bin auch gerade zu faul mir ein Dateisystem zu schreiben.
Darum hoffe ich das mir hier jemand helfen kann