StevenH
Умник
Всем доброго вечера, сегодня я заказал кое что у скриптера, он мне сделал всё, но не в этом суть.
Он написал что сохранять все данные стоит после совершения действия, например купил дом, то сразу сохраняются в базу, но не в переменные игрока.
Ибо у меня сейчас в сохранении аккаунта, всего 15 переменных (это только аккаунт), и уже используется 600 символов (ячеек). А что когда будет например +70 переменных, как например в State99 или ещё где, если за секунду оффнутся 2-3 игрока это уже фактически около 5000 символов пойдёт в базу, а если у игрока ещё дома/бизнес/АЗС, то более 8000 символов соотвественно, за секунду.
И скриптер написал что база просто может не выдержать, что вполне мне кажется возможно..
Вопрос:
Стоит ли делать сохранение в БАЗУ после совершение какого либо действия (покупки дома/телефона и т.д.).
Вот код, SavePlayer, прошу заметить это только SavePlayer, а что если АЗС/бизнес/дом. То сохранять надо много.
Он написал что сохранять все данные стоит после совершения действия, например купил дом, то сразу сохраняются в базу, но не в переменные игрока.
Ибо у меня сейчас в сохранении аккаунта, всего 15 переменных (это только аккаунт), и уже используется 600 символов (ячеек). А что когда будет например +70 переменных, как например в State99 или ещё где, если за секунду оффнутся 2-3 игрока это уже фактически около 5000 символов пойдёт в базу, а если у игрока ещё дома/бизнес/АЗС, то более 8000 символов соотвественно, за секунду.
И скриптер написал что база просто может не выдержать, что вполне мне кажется возможно..
Вопрос:
Стоит ли делать сохранение в БАЗУ после совершение какого либо действия (покупки дома/телефона и т.д.).
Вот код, SavePlayer, прошу заметить это только SavePlayer, а что если АЗС/бизнес/дом. То сохранять надо много.
PHP:
stock SavePlayer(playerid)
{
if(GetPVarInt(playerid,"gPlayerLogged") == 1)
{
new string[600];
GetPlayerHealth(playerid, PlayerInfo[playerid][Health]);
format(string,sizeof(string),"UPDATE `"TABLE_ACCOUNT"` SET `Password` = '%s', `Email` = '%s', `Age` = '%d', `Skin` = '%d', `Sex` = '%d', `Level` = '%d', `Health` = '%f', ",
PlayerInfo[playerid][Pass], PlayerInfo[playerid][Email],
PlayerInfo[playerid][Age], PlayerInfo[playerid][Skin],
PlayerInfo[playerid][Sex], PlayerInfo[playerid][Level],
PlayerInfo[playerid][Health]);
format(string,sizeof(string),"%s `Cash` = '%d', `HouseKey` = '%d', `SaleHouse` = '%d', `Car` = '%d', `BusinessKey` = '%d', `Phone` = '%d', `PhoneNumber` = '%d', `FuelCar` = '%d' WHERE `Name` = '%s'",string,
PlayerInfo[playerid][Cash], PlayerInfo[playerid][HouseKey],
PlayerInfo[playerid][SaleHouse], PlayerInfo[playerid][Car],
PlayerInfo[playerid][BusinessKey], PlayerInfo[playerid][pPhone],
PlayerInfo[playerid][pPhoneNumber],PlayerInfo[playerid][pFuelCar],
GetName(playerid));
mysql_query(string, -1, 0, MysqlConnect);
}
return true;
}
