Hallo Community
Derzeit frage ich mich was am besten ist zum Speichern von Daten.
Version 1:
new query[512];
format(query, 512, "UPDATE accounts SET Money = %d,AdminLevel = %d,DonateRank = %d,UpgradePoints = %d,ConnectedTime = %d WHERE Name = '%s'",PlayerMoney[playerid],SpielerInfo[playerid][pAdmin],SpielerInfo[playerid][pDonateRank],SpielerInfo[playerid][gPupgrade],SpielerInfo[playerid][pConnectTime],sendername);
mysql_query(query,(-1),(-1),SQLCon[0]);
Version 2:
mysql_SetInt("accounts","DonateRank",SpielerInfo[playerid][pDonateRank] , "Name", sendername);
mysql_SetInt("accounts","UpgradePoints",SpielerInfo[playerid][gPupgrade] , "Name", sendername);
mysql_SetInt("accounts","ConnectedTime",SpielerInfo[playerid][pConnectTime] , "Name", sendername);
mysql_SetInt("accounts","Money", PlayerMoney[playerid] , "Name", sendername);
Und die dazugehörige mysql_setInt
stock mysql_SetInt(Table[], Field[], To, Where[], Where2[])
{
new query[128];
mysql_real_escape_string(Table, Table);
mysql_real_escape_string(Field, Field);
mysql_real_escape_string(Where, Where);
mysql_real_escape_string(Where2, Where2);
format(query, 128, "UPDATE %s SET %s = '%d' WHERE %s = '%s'", Table, Field, To, Where, Where2);
mysql_query(query,(-1),(-1),SQLCon[0]);
return true;
}
Es sind natürlich viel mehr Daten.
Das Problem liegt nähmlich das mein Server extrem laggt (3-5 Sekunden passiert nichts bei allen)wenn alle Spieler gespeichert werden und das bei rund 20 Spielern.
Vielleicht kennt jemand sogar noch eine bessere Lösung.
Achja derzeit verwende ich Version 2.
Ich verwende das Mysql Plugin von g-stylez (weiß den Namen nicht genau)
Edit:
Ich habe ein Root-Server mit Quadcore 2,6 ghz und 8 GB Ram fals das notwendig ist