Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Drop remover with delay

, FIX PLEASE!!!!! :) +T...
Статус пользователя ssx
сообщение 22.6.2015, 16:16
Сообщение #1


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Всем привет!
На сервере ХЛ постоянно мясо и много оружия. (в логах последние строчки при краше Too many entities in visible packet list. )

Решил поставить плагин который по таймеру убирает оружие (только дропнутое игроком)

Нашел плагин: https://forums.alliedmods.net/showthread.php?t=122361 тут его попытались фиксануть http://amx-x.ru/viewtopic.php?f=44&t=27530
Но плаг под дебагом вот такое выдает:
Код
L 06/22/2015 - 16:48:05: [FAKEMETA] Invalid entity
L 06/22/2015 - 16:48:05: [AMXX] Displaying debug trace (plugin "weapon_drop_remover.amxx")
L 06/22/2015 - 16:48:05: [AMXX] Run time error 10: native error (native "set_pev")
L 06/22/2015 - 16:48:05: [AMXX]    [0] float.inc::operator+(Float:,_:) (line 117)
L 06/22/2015 - 16:48:05: [AMXX]    [1] weapon_drop_remover.sma::RemoveItems (line 41)


Код с АМХ-Х.РУ
Код:
#include <amxmodx>

#include <fakemeta>

new Pcvar_Remove, Pcvar_TimeRemove, DeleteWeapons

public plugin_init()

{

register_plugin("Remove Drop Weapons", "0.0.2", "Athix")

Pcvar_Remove = register_cvar("amx_remove_item_dropped", "1")

Pcvar_TimeRemove = register_cvar("amx_time_to_remove", "20.0")

register_forward(FM_SetModel, "Fw_SetModel")

DeleteWeapons = get_pcvar_num(Pcvar_Remove)

}

public Fw_SetModel(entity, const model[])

{

static Float:Timetoremove; Timetoremove = get_pcvar_float(Pcvar_TimeRemove)

if(DeleteWeapons > 0) set_task(Timetoremove, "RemoveItems", entity); return

}

public RemoveItems(entity)

{

static Class[10]

if(pev_valid(entity)) pev(entity, pev_classname, Class, 9)

if(equal(Class, "weaponbox")) set_pev(entity, pev_nextthink, get_gametime() + DeleteWeapons); return

}


Помогите пожалуйста исправить плагин ;)
Зарание Спасибо!

Отредактировал: ssx, - 22.6.2015, 16:21


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
XyLiGaN
сообщение 22.6.2015, 16:19
Сообщение #2
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

ssx, Тут есть - Склад маленьких плагинов норм код - Remove Dropped Weapons
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 22.6.2015, 16:24
Сообщение #3


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Цитата(XyLiGaN @ 22.6.2015, 17:19) *
ssx, Тут есть - Склад маленьких плагинов норм код - Remove Dropped Weapons

Первый просто удаляет дроп - не подходит (нужен таймер)

Второй: Склад маленьких плагинов (Пост #591184) сейчас попробую, но что-то я сомневаюсь что будет в ХЛ корректно работать.


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
XyLiGaN
сообщение 22.6.2015, 16:25
Сообщение #4
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

ssx,
Цитата
WPN_REMOVE_TIME - через сколько секунд удалить оружие
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 22.6.2015, 16:30
Сообщение #5


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Цитата(XyLiGaN @ 22.6.2015, 17:25) *
ssx,

Не работает плагин. Не удаляет ни дропнутое по команде drop ни дропнутое выпавшее при убийстве .



[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
XyLiGaN
сообщение 22.6.2015, 16:37
Сообщение #6
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

ssx, Тогда, Сафу ждём, может что-то и подскажет или кто то другой)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 22.6.2015, 16:40
Сообщение #7


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Код с АМХ-Х работает но выдает много дебагов


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 22.6.2015, 20:34
Сообщение #8


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

Код:
#include <amxmodx>
#include <fakemeta>

#define PLUGIN "Remove Drop Weapons"
#define AUTHOR "Player"
#define VERSION "0.1"

#define REMOVE_DROP_TIME 20.0

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

register_forward(FM_SetModel, "fw_SetModel")
}

public fw_SetModel(ent, const model[])
{
if(!pev_valid(ent) || strlen(model) < 8)
return

static szClassName[10]
pev(ent, pev_classname, szClassName, charsmax(szClassName))

if(equal(szClassName, "weaponbox"))
set_pev(ent, pev_nextthink, get_gametime() + REMOVE_DROP_TIME)
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя ssx
сообщение 22.6.2015, 20:44
Сообщение #9


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Цитата(Fintok @ 22.6.2015, 21:34) *


не удаляет по заданному времени :(

Отредактировал: ssx, - 22.6.2015, 20:45


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 23.6.2015, 0:11
Сообщение #10
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Цитата(ssx @ 22.6.2015, 17:16) *
Помогите пожалуйста исправить плагин ;)

Не плагин, а кусок дикого быдлокода.


Цитата(Fintok @ 22.6.2015, 21:34) *
Код:
кодец

Nice try ;) Но плагины из паблика крайне редко оказываются лучше тех, на которыми я поработал smile.gif


Цитата(XyLiGaN @ 22.6.2015, 17:19) *
Тут есть - Склад маленьких плагинов норм код - Remove Dropped Weapons

В HL совсем другая песня smile.gif
Применённые способы отлова нужного момента и удаления непригодны; оставшееся после смерти игрока оружие удаляется спустя 2 минуты (в CS - через 5), а дропнутое вручную не удаляется никогда. Среди дефолтных биндов даже нет дропа xD


ssx, замутил плагин. С тебя мегаприват для моих HL-серверов derisive.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 3 раз
   + Цитировать сообщение
Статус пользователя ssx
сообщение 23.6.2015, 1:19
Сообщение #11


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Цитата
Среди дефолтных биндов даже нет дропа xD

Функция ручного дропа (drop) работает в ХЛ. .
Лично я играю с пиратки и себе когда-то забиндил вручную .. а со стим редко играю .. не замечал как-то.

Спасибо за плагин! Сейчас затестирую !!!

Для тебя никакого "привата" не жалко ..

Отредактировал: ssx, - 23.6.2015, 1:20


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 23.6.2015, 1:32
Сообщение #12


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Плагин работает:
Если дропнул сам - не удаляет
Если дропнула твоя жалкая смерть - удаляет

Все равно спасибо! Буду очень благодарен за фикс.


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 23.6.2015, 2:12
Сообщение #13
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Цитата(ssx @ 23.6.2015, 2:19) *
Функция ручного дропа (drop) работает в ХЛ.

Разумеется. Но бинда на кнопку по дефолту нет.

Цитата(ssx @ 23.6.2015, 2:32) *
Если дропнул сам - не удаляет

Ну, тебе главное, чтобы при смерти коробки удалялись smile.gif
Твой сервер на порту 27016 удаляет дропнутое вручную, несколько раз перепроверил.

Отредактировал: Safety1st, - 23.6.2015, 15:17
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 25.6.2015, 16:15
Сообщение #14


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

Я совсем забыл, что в халве немножко по другому реализован weaponbox, сто лет не играл. pardon.gif

Safety1st, я думаю не стоит постоянно включать и отключать Ham_Think, так как Ham_Think выполняется с задержкой, а Ham_RemovePlayerItem выполняется сразу. Если игрок выкинет за небольшой промежуток времени сразу 2 оружия, то Ham_RemovePlayerItem отработает сразу и пошлет две команды включения Ham_Think. Как только задержка выйдет, Ham_Think отработает удаление первого оружия и сразу отключится, а второе оружие попросту не сможет обработать.
Возможно я ошибаюсь crazy.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 25.6.2015, 17:50
Сообщение #15
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

ИМХО ошибаешься. Там не короткий промежуток (это тебе не таски), всё выполняется в одном и том же фрейме. 'А вот если быть не может' © smile.gif
Такой метод отлова нужного момента придумал не я, а KORD_12.7, я ему полностью доверяю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: