shape1
shape2
shape3
shape4
shape7
shape8

Оптимизация команд


Статус
Закрыто для дальнейших ответов.

Dmitriy_Orell

алкоголик
Пользователь
12.04.2015
977
2
390
0
Оптимизации игровых модов.

Ну во-первых заставляет немного подгрузиться серверу система сохранения аккаунтов MxINI. Из этой системы можно сделать конфетку если постараться над инклюдом. НО, лучше не заморачиваться над багами данной системы и перейти на MySQL. Как перейти на MySQL найдете в гугле (Лучше переходите на R7, т.к. там наблюдается многопоточность.)
Во-вторых это использование стандартной системы комманд. Да, strcmd вполне хорошая система, багов нету, но тот-же ZCMD, а темболее YCMD намного оптимизированней. Переход с одного на другое не составит труда, разве размеры и около дня для переписания комманд

Было:

Код:
if(strcmp(cmd,"/taxiskill",true) == 0)   
{   
if(IsPlayerConnected(playerid))   
{   
if(PlayerInfo[playerid][pTskill] > 1000){ PlayerInfo[playerid][pTskill] = 1000; }   
if(PlayerInfo[playerid][pTskill] < 0){ PlayerInfo[playerid][pTskill] = 0; }   
format(string,sizeof(string),"Ваш скилл таксиста» : %d / 1000",PlayerInfo[playerid][pTskill]);   
SendClientMessage(playerid,COLOR_BLUE,string);   
return 1;   
}   
return 1;   
}
Стало:

Код:
CMD:taxiskill(playerid, params[])
{
if(!IsPlayerConnected(playerid)) return true;
if(PlayerInfo[playerid][pTskill]>999) return PlayerInfo[playerid][pTskill]=1000;
if(PlayerInfo[playerid][pTskill]<0) return PlayerInfo[playerid][pTskill]=0;
format(string,sizeof(string),"Ваш скилл таксиста» : %d / 1000",PlayerInfo[playerid][pTskill]);   
SendClientMessage(playerid,COLOR_BLUE,string);   
return true;
}
1. Комманды станут короче.

2. Более оптимизированы.

3. Некоторые на убой не хотят использовать свич, хотя он намного удобнее сравнения.

4. Это много ненужных комманд/скриптов.

Пример:

Код:
if(dialogid == 99)
{
test=1;
}
if(dialogid == 88)
{
test=2;
}
и т.д.
со свичем

Код:
switch(dialogid)
{
case 99: test=1;
case 88: test=2;
return true;
}
Чем же это оптимизирует? А тем, что при сравнении сервер тоже использует память, и в итоге если этих диалогов будет не 2 как в примере, а 20000. То при поиске диалога сервер просто-напросто повиснет, а в случае со свичем он просто ищет диалог. То-есть он не проверяет каждую возможность, а просто берет число и ищет кейс с ним.
Многие непопулярные сервера не задумываются о том, что например комманда /kiss, /minet и другие ненужные могут просто напросто положить сервер, особенно если эти комманды на strcmd с системой сохранения комманд MxINI. Эти комманды не то что просто валяются без дела, они еще и вредят ему. (Тот-же пример с /cnn, /cnnn, одну комманду можно смело убрать. Т.к. они выполняют одну и ту-же функцию но одна показывает ник, а другая нет...) А тем более меня поражают такие сервера, на которых стоят разнообразные казино, у людей денег море... Зачем казино? Господи, оно не вливается в ваш супер-пупер Role Play режим, где бомж приезжает и можно сказать находит чемодан с миллионами вирт. А ведь эти казино еще и нагружают сервер своими системами.
В-пятых, это множество домов/квартир и других вещей. Ну вот у вас онлайн на сервере 20-30 человек. Зачем вам 600-700 домов? Куда они вам? Зачем вам 2000 квартир которые вы старательно выставляли? Зачем вам 40 бизнесов по всему штату? Зачем вам 33 организации на сервер? Когда 5-6 человек обычно администраторы, а остальные лидеры. Советую пока онлайн сервера не подрастет заставить игроков посидеть в одном городе... 
В-шестых, это огромное кол-во объектов, ненужных автомобилей на сервере. Где вы видели у мэрии около 120-150 объектов? Да и море автомобилей для фракции с максимальным кол-вом человек в 5-10 во фракции, из которых одновременно играет человека 2-3.
В общем так, повышают пинг игроков огромное кол-во объектов, автомобилей, пикапов домов, пикапов квартир, великое кол-во ненужных комманд и систем... Так-же повышают пинг игроков многие другие системы (комманды, сохранение/загрузка аккаунтов).

Автор: Неизвестен.

 
Последнее редактирование модератором:
A

Amfy

Гость
Гость
Многие непопулярные сервера не задумываются о том, что например комманда /kiss, /minet и другие ненужные могут просто напросто положить сервер
:D83DDE2F:

Это как интересно они могут положить сервер? Всё зависит от кода в командах.

Тема - сплошные рекомендации.

 
Последнее редактирование:

LHTTD

Темная сторона Форума
Пользователь
08.10.2014
325
43
0
По своему опыту дальше 4 пункта не читал, :D.

Если например у человека плагинов многовато, и он не хочет подключать другие (ну можно zcmd сделать поблажку)?

4. Это много ненужных комманд/скриптов.
Я твоя не панимать

 Комманды станут короче.
Это не означает, что мод от этого станет лучше.

Более оптимизированы.
Смотря кто их оптимизирует

 
Статус
Закрыто для дальнейших ответов.