Superuser8 Ну тогда опять поиск рулит, ищешь по файлам проекта всё связанное с клиентскими пушками и комментишь/удаляешь. Я, кстати, не так давно до конца вырезал их, ибо были траблы со временем в оружии, оно неправильно считалось по какой-то волшебной причине.
PLut т.е для Base Defense вырезал? Траблов в мульте не было?
Я тут побаловался с опцией cl_lw, играл по сети в HL на лицензии.
Разницы вообще не заметно, правда при пинге ~100 мне показалось что попадать по врагам стало немного труднее
Superuser8 ну так убери дефайн CLIENT_WEAPONS из свойств обоих проектов. Удали папку hl из cl_dll. И всего делов. Для чистоты эксперимента можешь вырезать весь код, обёрнутый в #ifdef CLIENT_WEAPONS. Если правильно сделаешь, всё будет работать. Ну только эгон и гаусс не будут рисовать свои эффекты при cl_lw 1. Это уже код самих оружий надо ковырять. Смотри Дядь Мишин спирит.
Добавлено 22-07-2015 в 21:30:
Цитата:
Superuser8 писал: Траблов в мульте не было?
Появятся лаги при выстрелах, если пинг больше 50. 100% проверено. Чем выше пинг, тем больше лаг. Погоняй в ксаш по сети с отключенным предиктингом оружий. Увидишь, как это.
Superuser8 Лагов не было никаких, вот с клиентскими пушками были: стреляешь из мп5, пули вылетают, а анимация куда-то потерялась. Сейчас работает отлично, тестировал на серваке американском с 200 пингом, причем на той версии, что сейчас есть в доступе свободном, т.е. на старой, где еще много фиксов нет и работа с сетью ужасная, ибо было рассчитано на кооператив для двоих из одной страны с мощным интернетом. Даже с пингом 200 вполне реально играть, в будущем буду развивать серверы для бдефа. Следующий сервер вполне возможно будет в Польше, для европы, думаю, будет самое то.
Так что практика побеждает, а не теория. Клиентские пушки - неоправданная заморочка, на мой взгляд, более того, сделанная через одно место. Эффект с отключеным кваром и полным удалением этого хлама из кода несравним - для справки.
Superuser8 писал: Правда не знаю что делать с эвентами ( PLAYBACK_EVENT_FULL )
Их тоже нужно вырезать?
Нет. Они не являются частью клиентских пушек. Они служат для выполнения каких-либо действий на клиенте без использования пользовательских и иных мессаг. Основное назначение - анимации, звуки и эффекты при стрельбе оружия. Но вообще, через них можно делать всё, что душе угодно. Если это нужно, конечно. Например, можно убрать вызов стандартной мессаги взрыва на сервере, а вместо неё вызвать эвент. На клиенте же запихать в этот эвент систему частиц, динлайт, красивые спрайты, скриншейк, скринфейд, декаль, блекджек и шл.. и проч. То есть одним выстрелом убить 5-6 зайцев. Вместо вызова на сервере 5-6 мессаг всего один эвент. Ну это так, утрировано.
У меня с этими эвентами и клиентскими пушками мерзкая запара вышла. Если игрок не локальный, то есть рассинхрон в проигрывании звуков и анимаций чейнгана. Начинает проигрываться клиентский эвент, а через долю секунды серверный. Флаг FEV_NOTHOST вообще приводит к непроигрыванию эвентов у локального игрока время от времени, хотя клиентские пушки активны. Пока не придумал как это забороть. Ещё с монтировкой проблема: на клиенте нужно зеркало FindHullIntersection и рассчёта попадания/промаха. На сервере мы попадаем по стенке, а на клиенте нет. В спиритах 1.7 и 1.9 такая проблема. Тоже пока не решил её.
Добавлено 23-07-2015 в 04:12:
Цитата:
Superuser8 писал: FEV_NOTHOST отсюда удалять не нужно?
FEV_NOTHOST указывает, что для локального игрока этот эвент проигрывать на сервере не нужно, только на клиенте. Соответственно, если клиентские пушки отключены, то этот флаг не нужен. Иначе эвент не будет проигрываться для локального игрока.
Ku2zoff а на клиенте стёкла/ящики/монстры хорошо трейсятся? (у меня пока нет клиентских пушек т.к. меня взбесил хак с weapondata_s.. или clientdata_s.. и лучами пылесоса... и пока не стал делать, но план был)