Помощь по коду
|
|
pike | Дата: Среда, 12.08.2009, 02:05:40 | Сообщение # 1 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| При обнаружении у одного игрока в бан идут все Code public Speedhack() { for(new i=1;i<=g_MaxPlayers;i++) { if(is_user_alive(i)) { new origin[3] new oldorigin[3] new dist //new flags = entity_get_int(i,EV_INT_flags) //Get origins get_user_origin(i, origin, 0) oldorigin[0] = userOrg[i][0] oldorigin[1] = userOrg[i][1] oldorigin[2] = userOrg[i][2] { origin[2] = 0 oldorigin[2] = 0 } dist = get_distance(origin, oldorigin) if (userDetections[i][SPEEDHACK] >= 3) userDetections[i][SPEEDHACK]-- if (userDetections[i][SPEEDHACK] < 0) userDetections[i][SPEEDHACK] = 0 if (dist >= 240) userDetections[i][SPEEDHACK] = userDetections[i][SPEEDHACK] + 3 if (userDetections[i][SPEEDHACK] >= 6) //if (userDetections[i][SPEEDHACK] >= 8) cheatDetected(i,SPEEDHACK) userOrg[i][0] = origin[0] userOrg[i][1] = origin[1] userOrg[i][2] = origin[2] } } return PLUGIN_CONTINUE } Изменения делал Code public Speedhack(id)
cheatDetected(id,SPEEDHACK) Обнаружение есть, но бана нет, т.к. читается имя сервера. Code server_cmd("amx_banip %d #%d %s", get_cvar_num("anti_hack_bantime"), get_user_userid(id), reason)
|
|
| |
defaultNick8433 | Дата: Среда, 12.08.2009, 02:20:24 | Сообщение # 2 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Если скорость игрока болшая,то его банит,да?
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
pike | Дата: Среда, 12.08.2009, 11:05:37 | Сообщение # 3 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| Да.
|
|
| |
defaultNick8433 | Дата: Среда, 12.08.2009, 12:30:50 | Сообщение # 4 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Вместо этого Code server_cmd("amx_banip %d #%d %s", get_cvar_num("anti_hack_bantime"), get_user_userid(id), reason) попробуй это Code server_cmd("ban %d #%d %s", get_cvar_num("anti_hack_bantime"), get_user_userid(i), reason) Quote public Speedhack(id) cheatDetected(id,SPEEDHACK) Не используй
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
pike | Дата: Среда, 12.08.2009, 14:26:12 | Сообщение # 5 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| Спасибо за ответ. У меня Code public cheatDetected(id, rcode) { new name[64] new ip[64], reason[64] new authid[64] get_user_name(id, name, 63) get_user_ip(id, ip, 63, 1) get_user_authid(id, authid, 63) if (rcode==MAYHEM) reason = "Cheat Project Mayhem" if (rcode==SPEEDHACK) reason = "Speedhack" /// ..........и др. server_cmd("amx_banip %d #%d %s", get_cvar_num("anti_hack_bantime"), get_user_userid(id), reason) С остальными обнаружениями и банами порядок. Speedhack детектится, но сервер не понимает кого точно банить и банит всех.
Сообщение отредактировал pike - Среда, 12.08.2009, 14:27:13 |
|
| |
defaultNick8433 | Дата: Среда, 12.08.2009, 14:41:12 | Сообщение # 6 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Попробуй создать логическую переменную new bool:bancheat[33],и когда будет к примеру: Code if (rcode==SPEEDHACK) reason = "Speedhack" делай переменную нашу правдивой,чтобы выделить определённого игрока,связанного с читом определённым: Ну а дальше будет идти бан: Code server_cmd(ban %d #%d %s",get_cvar_num("anti_hack_bantime"),id,"Причина бана") При коннекте и дисконнекте следует сделать переменную ложной,чтобы не банились игроки случайные,при заходе на сервер или выходе. Code public client_putinserver(id) { bancheat[id]=false } public client_disconnect(id) { bancheat[id]=false } Да кстати в массивах name,ip,authid размерность сократи до 32
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
pike | Дата: Среда, 12.08.2009, 15:09:44 | Сообщение # 7 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| Это то что нужно, спасибо, работает.
|
|
| |
defaultNick8433 | Дата: Среда, 12.08.2009, 15:15:40 | Сообщение # 8 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Всегда пожалуйста
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
pike | Дата: Среда, 12.08.2009, 15:42:36 | Сообщение # 9 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| Симитировать спидхак можно многократным использованием на игроке команды slap Возможно отключить обнаружение на этот случай ?
|
|
| |
defaultNick8433 | Дата: Среда, 12.08.2009, 15:53:31 | Сообщение # 10 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Возможно: Code if (rcode==SPEEDHACK&&user_slap(id,1)) return PLUGIN_HANDLED
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
pike | Дата: Среда, 12.08.2009, 16:49:38 | Сообщение # 11 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| так не видит слэп, может здесь Code if (userDetections[i][SPEEDHACK] >= 6) //if (userDetections[i][SPEEDHACK] >= 8) &&user_slap(id,1) // если юзер слэп нет детекта cheatDetected(i,SPEEDHACK)
|
|
| |
defaultNick8433 | Дата: Среда, 12.08.2009, 18:33:29 | Сообщение # 12 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| тогда if(user_slap(i,1))
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
pike | Дата: Среда, 12.08.2009, 19:08:37 | Сообщение # 13 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| Quote (defaultNick8433) тогда if(user_slap(i,1)) В твой предыдущий код ?
|
|
| |
defaultNick8433 | Дата: Среда, 12.08.2009, 19:11:14 | Сообщение # 14 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Code if(user_slap(i,1)) cheatDetected(i,SPEEDHACK) Так
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
pike | Дата: Среда, 12.08.2009, 20:36:43 | Сообщение # 15 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| Не то.
|
|
| |