 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Вопрос | Ответ
| |
| Arhan4hel | Дата: Понедельник, 05.03.2012, 12:09 | Сообщение # 3901 |
|
Новенький
Группа:
Пользователи
Сообщений: 42
Награды: 1
Город: Krivoy Rog
Репутация: 31
Замечания: 0%
Статус: 
| Спасибо.
|
| |
|
|
| Kirill_Shvaryov | Дата: Понедельник, 05.03.2012, 14:39 | Сообщение # 3902 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 845
Награды: 46
Город: Novorossiysk
Репутация: 1036
Замечания: 0%
Статус: 
| Arhan4hel, id 3276 не знаю, наверное уже нашёл)
Мои работы : Дополнительный город SA Заправка около Чиллиада Тропический остров Парк развлечений Стадион Спортивный комплекс Мото-фристайл(инт) Мотосалон (0.3e) GTA S.A.City
[url=http://www.radikal.ru]
Закажи карту на : gtamap-studio.ru
|
| |
|
|
| RudeBoy | Дата: Вторник, 06.03.2012, 09:36 | Сообщение # 3903 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| меня интересует подробнее про public OnPlayerUpdate(playerid)
сколько раз в секунду он 'точно' выполняется, 1 раз или больше?
|
| |
|
|
| Alcoholik | Дата: Вторник, 06.03.2012, 09:48 | Сообщение # 3904 |
|
Мастер джэдай
Группа:
Администратор
Сообщений: 8299
Награды: 111
Город: Санкт-Петербург
Репутация: 6085
Статус: 
| RudeBoy, больше, конечно. Вроде с той скоростью, как приходят пакеты. Можешь посчитать: Code public OnPlayerUpdate(playerid) { printf("Обновилось"); } Потом в логах глянь сколько раз он напишет за секунду.Добавлено (06.03.2012, 09:48) --------------------------------------------- А вообще зависит ещё от поведения игрока. Если рядом куча игроков, будет вызываться чаще, если сервер пустой и игрок афк, вообще вызываться не будет. Я бежал, у меня 21 раз за секунду вызвался.
if(isset($beer)&&isset($girl)) { drink($beer);fuck($girl); }else die(); Мониторинг sa:mp серверов Приватно никого не консультирую, моды также не пишу, ни так, ни за деньги. Моя ICQ 675715, пишу только с неё. Все остальные Роачи фейки, ничего я не продаю и продавать не буду, вас разводят.
|
| |
|
|
| RudeBoy | Дата: Вторник, 06.03.2012, 10:05 | Сообщение # 3905 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| понятно, значит больше, сделаю отдельный колбэк на 1 секунду для не особо нужных обновлений
public OnPlayerCommandText(playerid, cmdtext[])
давно хотел узнать в чем разница:
if(strcmp(cmdtext, "/test", true)==0)
if(strcmp(cmd, "/test", true) == 0)
стандартная cmdtext быстрее чем cmd или они отвечают за ввод человеком/сервером или для чего? думаю изменить все на стандартную вместо cmd
еще вопрос, никогда не задумывался что значит у таймера например true/1, true это значит повторять а 1 на 1 раз или?
SetTimer("test",1000,true); SetTimer("test",1000,1);
|
| |
|
|
| Rockman | Дата: Вторник, 06.03.2012, 10:53 | Сообщение # 3906 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 428
Награды: 4
Город: Нижний Новгород
Репутация: 474
Замечания: 0%
Статус: 
| Quote (RudeBoy) стандартная cmdtext быстрее чем cmd или они отвечают за ввод человеком/сервером или для чего? думаю изменить все на стандартную вместо cmd
Это переменные, а не функции, они не могут работать быстрее или медленнее.
Quote (RudeBoy) еще вопрос, никогда не задумывался что значит у таймера например true/1, true это значит повторять а 1 на 1 раз или?
SetTimer("test",1000,true); SetTimer("test",1000,1);
1 (как и собственно любое число отличное от 0) равносильно true 0 равносильно false
В pawn разницы нет, что использовать, это зависит от разработчика, кому как удобнее. Иногда понятнее видеть true/false чем 1/0
|
| |
|
|
| RudeBoy | Дата: Вторник, 06.03.2012, 12:21 | Сообщение # 3907 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| спасибо, все понятно.
Зависит ли количество строк на производительность? У меня около сотни тысяч строк, идеально выровнены по лесенке и без пустых строчек. (прогу использую постороннюю для выравнивания)
|
| |
|
|
| Artem_T | Дата: Вторник, 06.03.2012, 14:40 | Сообщение # 3908 |
|
Освоившийся
Группа:
I'm V.I.P.
Сообщений: 132
Награды: 26
Город: Полтава
Репутация: 59
Замечания: 40%
Статус: 
| Не зависит, компилятору всеравно сколько у тебя строк
|
| |
|
|
| RudeBoy | Дата: Вторник, 06.03.2012, 15:04 | Сообщение # 3909 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| спасибо, отлично тогда.
вот еще что, я удалил вообще колбэк public OnPlayerUpdate(playerid)
вместо него таймер на 1 секунду поставил, скажите, после удаления его, не будет проблем с чем либо? Раз он действует чрезмерно.. нафига он нужен тогда или стоит оставить?
|
| |
|
|
| Тимур | Дата: Вторник, 06.03.2012, 15:57 | Сообщение # 3910 |
|
Новенький
Группа:
Пользователи
Сообщений: 3
Награды: 0
Город: Набережные Челны
Репутация: 0
Замечания: 0%
Статус: 
| Помогите пожалуйста, как создать общак для банд/мафий? Можно ссылку на тему, только поподробней =D
|
| |
|
|
| MarkeloFF | Дата: Вторник, 06.03.2012, 17:11 | Сообщение # 3911 |
|
Советчик
Группа:
I'm V.I.P.
Сообщений: 1033
Награды: 14
Город: Калининград
Репутация: 191
Замечания: 80%
Статус: 
| RudeBoy, а как будешь сохранять статистику игрока?
Сообщение отредактировал MarkeloFF - Вторник, 06.03.2012, 17:11 |
| |
|
|
| RudeBoy | Дата: Вторник, 06.03.2012, 19:15 | Сообщение # 3912 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| MarkeloFF,
все очень просто, поставил таймер на N-нное число, создал отдельный колбэк
forward tupdate(playerid); // замена функции OnPlayerUpdate public tupdate(playerid) { new LevScore = PlayerInfo[playerid][pLevel]; SetPlayerScore(playerid, LevScore); (и другие необходимые функции) return 1; }
теперь раз в 1 секунду обновляется информация ЛВЛ, и других нужных, античит на быстрое передвижение поставил сюда же.
для других, маловажных античитов, чтобы не нагружали этот колбэк лишними проверками - сделал другой колбэк, раз в 5 секунд проверяет на множество других читов.
думаю с оптимизацией я добился большого успеха, так что я рад)
и еще вопрос к тем кто знает, можно ли как-то максимально сильно улучшить оптимизацию колбэка public OnPlayerCommandText(playerid, cmdtext[])
говорят лучше использовать dcmd, но мне честно говоря лень переделывать, хотя.. если другого способа нет найдется.. в общем, можно ли как то изменить что-то у стандартного колбэка для оптимизации?
Вот например обычные команды.. у меня в таком формате
if(strcmp(cmdtext, "/test", true)==0) { SCM(playerid, COLOR_GREY, "Тест"); return 1; }
if(strcmp(cmdtext, "/test", true)==0) { SCM(playerid, COLOR_GREY, "Тест"); return 1; }
можно ли шляпу if(strcmp(cmdtext, "/test", true)==0) изменить на более оптимизированный вариант?
для команд я использую new cmd[36], tmp[36]; как видим с числом 36, хотя можно и поменьше, и сокращение SCM, правда не знаю, дает ли сокращение ускорению, ну да ладно, главное короче чем SendClientMessage
Есть советы или делать dcmd?
|
| |
|
|
| MarkeloFF | Дата: Вторник, 06.03.2012, 20:20 | Сообщение # 3913 |
|
Советчик
Группа:
I'm V.I.P.
Сообщений: 1033
Награды: 14
Город: Калининград
Репутация: 191
Замечания: 80%
Статус: 
| RudeBoy, dcmd раотает быстрее. Но не значительно.
|
| |
|
|
| Rockman | Дата: Вторник, 06.03.2012, 21:14 | Сообщение # 3914 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 428
Награды: 4
Город: Нижний Новгород
Репутация: 474
Замечания: 0%
Статус: 
| Quote (Тимур) Помогите пожалуйста, как создать общак для банд/мафий? Можно ссылку на тему, только поподробней =D
Исходить нужно из того, где вы храните информацию. В файлах или базе данных, хотя на мой взгляд, это достаточно удобно реализовать и на файлах. Структуру хранения продумать не сложно, на каждой строке можно хранить значение денег для каждой организации, порядок строк соответствует номерам организаций, при запуске мода в определенный массив нужно прочитать значения из файла и дальше работать с этим массивом. Сохранять данные в файлы следует при завершении работы сервера, либо при каких либо других обстоятельствах, например через определенное кол-во времени.
|
| |
|
|
| RudeBoy | Дата: Среда, 07.03.2012, 08:01 | Сообщение # 3915 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| мне вот что интересно, если какая-нибудь команда не оптимизирована, затронет ли она в целом производительность мода? Или мод напрягается лишь когда кто-то ввел эту команду?
|
| |
|
|
|
 |
|
 | |
| |
|