Убрал таймер, нагружал сервер при орде зомби. В этой версии должнобыть все стабильно.
А у тебя плагин разве на каждой карте заново загружается? Обычно такое в начале карты делают, а не при старте плагина
Отправлено 05 Ноябрь 2024 - 22:03
Убрал таймер, нагружал сервер при орде зомби. В этой версии должнобыть все стабильно.
А у тебя плагин разве на каждой карте заново загружается? Обычно такое в начале карты делают, а не при старте плагина
Отправлено 06 Ноябрь 2024 - 12:55
А у тебя плагин разве на каждой карте заново загружается? Обычно такое в начале карты делают, а не при старте плагина
Точно подметил, бессмысленно.
Отправлено 14 Ноябрь 2024 - 2:31
Парни хелпаните вырезал глазки для выживших и саму камеру не чего не работает. Оригинальный плагин тоже не работает
Вырезал от сюда https://forums.allie...ad.php?t=332388
Отправлено 16 Ноябрь 2024 - 12:04
Парни хелпаните вырезал глазки для выживших и саму камеру не чего не работает. Оригинальный плагин тоже не работает
Вырезал от сюда https://forums.allie...ad.php?t=332388
У меня есть предположение почему у тебя камера не работает.
public void CreateCamera(int client)
{
int entity;
if (gc_iCameraEntRef[client] != INVALID_ENT_REFERENCE)
{
entity = EntRefToEntIndex(gc_iCameraEntRef[client]);
if (entity != INVALID_ENT_REFERENCE)
{
AcceptEntityInput(entity, "Disable");
AcceptEntityInput(entity, "Kill");
}
gc_iCameraEntRef[client] = INVALID_ENT_REFERENCE;
}
entity = CreateEntityByName("point_viewcontrol"); // вот тут ошибка, так как в первой части именно самого point_viewcontrol вроде нету
gc_iCameraEntRef[client] = EntIndexToEntRef(entity);
DispatchKeyValue(entity, "targetname", "l4d_survivor_eyes");
DispatchSpawn(entity);
AcceptEntityInput(entity, "Enable", client);
}
Сообщение отредактировал valedar: 16 Ноябрь 2024 - 12:08
Отправлено 16 Ноябрь 2024 - 20:54
У меня есть предположение почему у тебя камера не работает.
public void CreateCamera(int client) { int entity; if (gc_iCameraEntRef[client] != INVALID_ENT_REFERENCE) { entity = EntRefToEntIndex(gc_iCameraEntRef[client]); if (entity != INVALID_ENT_REFERENCE) { AcceptEntityInput(entity, "Disable"); AcceptEntityInput(entity, "Kill"); } gc_iCameraEntRef[client] = INVALID_ENT_REFERENCE; } entity = CreateEntityByName("point_viewcontrol"); // вот тут ошибка, так как в первой части именно самого point_viewcontrol вроде нету gc_iCameraEntRef[client] = EntIndexToEntRef(entity); DispatchKeyValue(entity, "targetname", "l4d_survivor_eyes"); DispatchSpawn(entity); AcceptEntityInput(entity, "Enable", client); }
Камера работает
Отправлено 29 Ноябрь 2024 - 21:39
Без просада FPS
Отправлено 02 Декабрь 2024 - 20:51
Добавлено пару тройку фичей в плагин:
1.Эффект тряски персонажа реалистичность предали типа трясется от холода.
2.Эффект неба более насыщен под зимнию атмосферу.
3.Эффект ветра, звук ветра проигрывается с интервалом
Все стало реалистичным
При желании можно сделать налет мороза это уже вы сами можете сделать оставлю второй плагин
Создаем в папке materials папку overlays в эту папку поместим текстуру заморозки, оставлю свою текстуру.
Но вы можете свою сделать с помощью компилятора VTFEdit
Настройки текстуры должны быть такие
Плагин over.sp для реалистичного эффекта заморозки.
Отправлено 04 Декабрь 2024 - 18:02
Добавлено пару тройку фичей в плагин:
1.Эффект тряски персонажа реалистичность предали типа трясется от холода.
2.Эффект неба более насыщен под зимнию атмосферу.
3.Эффект ветра, звук ветра проигрывается с интервалом
Все стало реалистичным
При желании можно сделать налет мороза это уже вы сами можете сделать оставлю второй плагин
Создаем в папке materials папку overlays в эту папку поместим текстуру заморозки, оставлю свою текстуру.
Но вы можете свою сделать с помощью компилятора VTFEdit
Настройки текстуры должны быть такие
Скрытый текст
Плагин over.sp для реалистичного эффекта заморозки.
l4d_show_frozen_overlay Переведён на новый синтаксис, скомпилирован и всё разложено по соответствующим папкам
Отправлено 16 Февраль 2025 - 23:48
Появилась такая уязвимость ложный спавн босов, замечать стал только сегодня.
Было подобное у моего друга на сервере не знаю как он это исправил, находил я тут решения данной проблемы.
Как спавнились ложно босы так и продолжили спавниться, пока сам не взялся написать плагин, итог такой ложный спавн есть но он минимальный спавнится 3 боса как и должно быть посути.
Но удалось блокировать полностью спавн босов, но как по мне ложные 3 боса вреда не какого не нанесут серверу.
UP Убрал код под спойлер.
Сообщение отредактировал Alexander_Mirny: 16 Февраль 2025 - 23:56
Отправлено 17 Февраль 2025 - 16:19
Привет форум!
ребят подскажите пожалуйста , как называлось плагин который не дает заканчивать игру после инкапа игрока ?
дело в том что если последнего игрока повалили то игра заканчивается если даже у него есть таблетки (self help) .
Был плагин но вот вспомнить название не могу )))))
Отправлено 17 Февраль 2025 - 17:50
Привет форум!
ребят подскажите пожалуйста , как называлось плагин который не дает заканчивать игру после инкапа игрока ?
дело в том что если последнего игрока повалили то игра заканчивается если даже у него есть таблетки (self help) .
Был плагин но вот вспомнить название не могу )))))
Отправлено 17 Февраль 2025 - 19:21
Привет форум!
ребят подскажите пожалуйста , как называлось плагин который не дает заканчивать игру после инкапа игрока ?
дело в том что если последнего игрока повалили то игра заканчивается если даже у него есть таблетки (self help) .
Был плагин но вот вспомнить название не могу )))))
Попробуй мой варик, предотвращает завершение игры, если повалили то игрок снова спавнится.
Работает на моем проекте как часы.
Не забудь закинуть только файл l4d1_lastincap.txt в папку gamedata
Отправлено 18 Февраль 2025 - 2:30
Хочу поделиться своим творением, помню что кто-то спрашивал как сохранять оружие когда выходишь с сервера.
Такая возможность теперь есть, сохраняются все слоты. Начиная от пестолета заканчивая гранатами.
Небольшой видео обзор плагина - https://www.youtube....h?v=Xmvd2qkAcIo
Все это хранится в базе sqlite
Для работы плагина нужно прописать в databases.cfg подключение базы.
"l4d1_weapons"
{
"driver" "sqlite"
"database" "weaponsaver"
}
База появится автоматически, самим не чего делать не нужно.
Примерно так все будет выглядеть
Отправлено 18 Февраль 2025 - 18:05
Хочу поделиться своим творением, помню что кто-то спрашивал как сохранять оружие когда выходишь с сервера.
Такая возможность теперь есть, сохраняются все слоты. Начиная от пестолета заканчивая гранатами.
Небольшой видео обзор плагина - https://www.youtube....h?v=Xmvd2qkAcIo
Все это хранится в базе sqlite
Для работы плагина нужно прописать в databases.cfg подключение базы.
"l4d1_weapons" { "driver" "sqlite" "database" "weaponsaver" }База появится автоматически, самим не чего делать не нужно.
Примерно так все будет выглядеть
Скрытый текст
Сообщение отредактировал BloodyBlade: 18 Февраль 2025 - 18:08
Отправлено 09 Март 2025 - 1:40
delete
Сообщение отредактировал Alexander_Mirny: 09 Март 2025 - 20:22
Отправлено 20 Март 2025 - 12:29
Доброго времени суток, кто-то знает возможность добавить слушатель для форвардов вызываемых в *.smx плагинах для плагинов *.so *.dll
Отправлено 21 Март 2025 - 18:19
Доброго времени суток, кто-то знает возможность добавить слушатель для форвардов вызываемых в *.smx плагинах для плагинов *.so *.dll
Хуки на урове соурспавн либо регистрация нативных.
Отправлено 21 Март 2025 - 18:38
Хуки на урове соурспавн либо регистрация нативных.
Было бы неплохо прослушивать форвард из плагина adminmenu.smx OnAdminMenuReady в плагинах с расширением *.so а как ето зделать я так и не разобрался
получити Handle_t получилось без питань,
IPlugin *GetPlugins(const char *pl_name)
{
IPluginIterator *pl_inter = plsys->GetPluginIterator();
while(pl_inter->MorePlugins())
{
if(g_Sample.my_bStrcmp(pl_name, pl_inter->GetPlugin()->GetFilename()))
{
return pl_inter->GetPlugin();
}
pl_inter->NextPlugin();
}
return nullptr;
}
int GetHandleAdminMenu()
{
IPlugin *pl = GetPlugins("adminmenu.smx");
if(pl)
{
IPluginRuntime *pl_runtime = pl->GetRuntime();
IPluginFunction *fn = pl_runtime->GetFunctionByName("__GetAdminTopMenu");
if(fn)
{
cell_t param[] = {0, 0};
fn->PushCell(param[0]);
fn->PushCell(param[1]);
cell_t result;
fn->Execute(&result);
return result;
}
}
return -1;
}
даже удалось получить из хендила указатель на ITopMenu для того чтобы добавить новые пункты в админ меню
ITopMenu* GetAdminTopMenu()
{
Handle_t* hTopMenuType = nullptr;
IExtension* pOwner = nullptr;
Dl_info info;
if(dladdr(g_pTopMenu, &info) != 0)
{
void *hndl = dlopen(info.dli_fname, RTLD_NOW);
if(hndl)
{
hTopMenuType = (Handle_t*)memutils->ResolveSymbol(hndl, "hTopMenuType");
pOwner = *(IExtension **)memutils->ResolveSymbol(hndl, "myself");
dlclose(hndl);
}
}
ITopMenu *topMenu = nullptr;
if(hTopMenuType && pOwner)
{
Handle_t handl = GetHandleAdminMenu();
if(handl > 0 )
{
HandleError err;
HandleSecurity sec(myself->GetIdentity(), pOwner->GetIdentity());
if((err = handlesys->ReadHandle(handl, *hTopMenuType, &sec, (void**)&topMenu)) != HandleError_None)
{
m_sLog->LogToFileEx(false, "Invalid Handle %x (error: %d)", handl, err);
topMenu = nullptr;
}
}
}
return topMenu;
}
но для корректного добавления пунктов требуется OnAdminMenuReady
и скорей всего нужно создавать native и добавлять ее в плагин adminmenu.smx
Сообщение отредактировал DenMarko: 21 Март 2025 - 20:46
Отправлено 29 Март 2025 - 11:52
Видел на некоторых серверах плагин, который переименовывает Игрух, Фритпшек и других дефолтноименных в Безымянку или Смени ник. Где раздобыть этот плагин?
Игровые сервера →
Counter-Strike: Source →
Добавить в исходник ADMFLAG_CUSTOMАвтор PR0metei97 , 29 мар 2025 |
|
|
||
Новости, обсуждения, предложения →
Общие вопросы →
Это капец....Автор 53SATURN35 , 19 янв 2024 |
|
|
||
Игровые сервера →
Counter-Strike 1.6 →
Проблема CSDM cs 1.6 с респауномАвтор armick , 11 дек 2023 |
|
|
||
Игровые сервера →
Left 4 Dead →
Сохранение модели и оружия (cookies)Автор wwdbear , 20 авг 2023 |
|
|
||
Игровые сервера →
Counter-Strike: Global Offensive →
Как поменять режим на соревновательный с обычного?Автор UKVATOP , 01 апр 2023 |
|
|
0 пользователей, 0 гостей, 0 анонимных