Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

[Blood Arena] CS 1.6 Portal _ Kоманда портала [Blood Arena] _ denesik

Автор: denesik 6.6.2012, 17:40

Цитата
Требования:
1. Показ своих работ (или сборка отдельно или уже запущеная на чьей-то машине).
2. Адекватность.
3. Умение грамотно подбирать програмные комплектующие (плагины, конфиги, моды, библиотеки).
4. Знание AMX (во всё широком его понимании) минимум полгода.
5. Внимательность.

1. http://blood-arena.ru/forum/forum374.html
2. +
3. +
4. Переписывал половину плагинов на хлдм 3. Не плохо разобрался в амхх скриптинге.
5. +

Автор: BaHeK 6.6.2012, 18:52

1) На твоем сервере есть psyhostats, каким методом он собирает статистику и через какой промежуток времени он обновляет статистику
2) Каким образом можно передать переменную из одного плагина в другой(например как jb pack для jail #1 или ammopack для zombie plague)
3) Как через dproto запретить заход игрокам у которых нет steamid
4) Где в amxbans включать свои причины банов
5) Если стоит роутер то в веб-части amxbans будет IP 192.168.*.* и будет показывать, что сервер вырублен, как исправить эту причину(пример могу пивести с зм+дм елси не понял в чем суть вопроса)

У тебя вопросы в разы сложней чем у ахмада, поэтому даю 3 попытки на ответ каждого вопроса.

Автор: denesik 6.6.2012, 20:32

1) Собирает информацию с log файлов, которые находятся в /cstrike/logs
Может собирать инфу по нику, ip, стиму в зависимости от навтроек.
Обновляет статистику раз в несколько часов.

2) Используя native функцию.

В первом плагине пишем саму функцию.
И регестрируем ее как native

плагин 1

Код
#include <amxmodx>
#include <amxmisc>

new param[]="blood-arena" //переменная которую передаем

public plugin_init() {
    register_plugin("test", "test", "test")
}

public  plugin_natives ( ){
    
    register_native("native_test", "native_test", 1)
    
}

public native_test(){
    
    return param               //переменная которую передаем
    
}



Далее создаем заголовочный файл(инклюдник^_^) в который записываем объявление натив функции
Называем его test.inc
Записываем туда:
native plugin_natives ( )

Далее пишем второй плагин, в котором подключаем ранее созданный инклюдник.

плагин 2

Код
#include <amxmodx>
#include <amxmisc>
#include <test>

new param[] //переменная , значение которой будет взято из плагина 1.

public plugin_init() {
    register_plugin("test2", "test2", "test2")
    register_clcmd("teeest","native_show")
}

public native_show(id){
    
    param=native_test(); //узнали значение из плагина 1.
    client_print(id, print_chat, "%s", param )
    
}


Плагины не компилировал.

Так же возможно теоретически можно передать переменную через квар. (предположение, не проверял)
Так же если в плагине был создан объект то с помощью set_pev, pev и pev_iuser можно передавать/получать информацию об объекте из любого плагина. Достаточно все голишь знать ID объекта.

3.
В настройке dproto:
cid_HLTV = 7 #разрешаем hltv
cid_NoSteam47 = 5 #запрещаем нонстим
cid_NoSteam48 = 5 #запрещаем нонстим
cid_Steam = 1 #разрешаем стим
cid_SteamPending = 9
cid_RevEmu = 5 #запрещаем эмулирование стима
cid_SC2009 = 5 #запрещаем эмулирование стима
cid_OldRevEmu = 5 #запрещаем эмулирование стима
cid_SteamEmu = 5 #запрещаем эмулирование стима
cid_AVSMP = 5 #запрещаем эмулирование стима
cid_Setti = 5 #запрещаем эмулирование стима


ps.gif а не легче выключить дпрото? :D

4.

Админцентр->сервер->причины банов
Создаем причину банов.

Админцентр->сервер->настройки
Выбираем созданную причину банов.

При добавлении нового админа в пункте
Цитата
Использовать только указанные сроки банов:

Выбрать НЕТ

5.
amxbans_server_address "" указать сдесь адрес и порт

Автор: BaHeK 6.6.2012, 20:42

1) -
2) не совсем так, но ладно, за это +
3) -, надо запретить заход игрокам у которых нет steamid, а игроки с пиратским steamid должны без проблем зайти на сервер(как на dethrun, zm+dm, jail #1)
4) один важный компонент пропустил, из-за него - (стыдно на таком запороться)
5) +
Исправляй: 1, 3, 4

Автор: denesik 6.6.2012, 21:10

1)
О ужс, на myarene психостатс прослушивает UDP порт сервера по протоколу stream
3)
В настройке dproto:
cid_HLTV = 7 #разрешаем hltv
cid_NoSteam47 = 5 #выкидываем игроков без steam_id
cid_NoSteam48 = 5 #выкидываем игроков без steam_id
cid_Steam = 1
cid_SteamPending = 9
cid_RevEmu = 1
cid_SC2009 = 1
cid_OldRevEmu = 1
cid_SteamEmu = 1
cid_AVSMP = 1
cid_Setti = 1
4)
Оговорился :/
Создаем причины, потом создаем группу в которой указываем галочками причины, которые будут в группе.
Далее все так же как и в посте №2.

Автор: BaHeK 6.6.2012, 23:15

1) подробнее о способе, как он собирает информацию и через какой промежуток времени он обновляет статистику
3) +
4) +

Автор: denesik 7.6.2012, 11:00

На myarena статистика обновляется автоматически раз в 4 часа.
На счет того как работает stream инфы не нашел. На myarene все говорят в стиле: "Устанавливай стату по инструкции и будет счастье тебе, а как работает не важно."
Офф сайт психо почему-то не робит :/
На forums.alliedmods.net инфы тоже не нашел, так что не карайте строго :D

И да, т.к. это потоковый протокол, то психо работает как сниффер, прослушивает порт сервера (анализирует трафик) и от-туда уже считывает данные об убийствах и т.д.

Автор: denesik 8.6.2012, 1:45

Цитата(denesik @ 7.6.2012, 11:00) *
На myarena статистика обновляется автоматически раз в 4 часа.
На счет того как работает stream инфы не нашел. На myarene все говорят в стиле: "Устанавливай стату по инструкции и будет счастье тебе, а как работает не важно."
Офф сайт психо почему-то не робит :/
На forums.alliedmods.net инфы тоже не нашел, так что не карайте строго :D

И да, т.к. это потоковый протокол, то психо работает как сниффер, прослушивает порт сервера (анализирует трафик) и от-туда уже считывает данные об убийствах и т.д.

Перечеркнуть все нафиг :)

Так как это протокол stream то психо читает данные в режиме реального времени, т.е. произошло убийство на сервере и психо сразу это прочитал из потока, добавил в базу данных и обновил результаты в веб интерфейсе. Таким образом статистика обновляется мнгновонно.

Автор: BaHeK 8.6.2012, 16:50

Опрос и сборку ты прошел, на выходных если все с компом будет нормально скину сборку с рекламой, ты будешь рекламу удалять, а пока скачай платформу, т.к. сборка будет без платформы.

Автор: BaHeK 6.7.2012, 19:55

Ну чтож с удалением рекламы быстро справился, так что принят.

Форум Invision Power Board (http://nulled.ws)
© Invision Power Services (http://nulled.ws)