[Emu] REVOLUTiON Emulator | RevEmu

Обсуждаем все, что относится к выделенным серверам *NIX (Unix, Linux) и Windows
Сообщение
Автор
Аватара пользователя
leha---83
Капитан
Капитан
Сообщения: 275
Зарегистрирован: 24.11.2008
Откуда: Perm (Chernushka)
Контактная информация:

#151 Сообщение 25.07.2011, 20:41

"sv_master_legacy_mode" = "0"
- Use old (outside-of-Steam) code to communicate with master servers.
ты уверен что тебе это надо?
P.S. Вроде как пофиксили с последними обновами и у себя не наблюдаю призраков.
Изображение

Аватара пользователя
Dasister
Лейтенант
Лейтенант
Сообщения: 121
Зарегистрирован: 05.01.2009
Откуда: Ставрополь
Контактная информация:

#152 Сообщение 25.07.2011, 21:09

У себя после обнов я их тоже не наблюдал, но спустя некоторое время они, все-таки, появляются. Да и с серверами DoD:S'а дела обстоят не так уж "Гладко". Там призраков мнооого, даже после последних апдейтов.

Ну, можно в server.cfg добавить

sv_master_legacy_mode 1

sv_master_legacy_mode 0

Ибо, достаточно просто сменить значение этого квара на 1, призраки с сервера исчезнут. Т.е изменять его значение на "1" один раз за карту будет вполне достаточно.
Последний раз редактировалось Dasister 25.07.2011, 21:12, всего редактировалось 3 раза.

Аватара пользователя
niask
Лейтенант
Лейтенант
Сообщения: 167
Зарегистрирован: 11.11.2009
Откуда: Калуга

#153 Сообщение 25.07.2011, 21:39

Dasister
висит 1 призрак на сервере dods, щас попробовал сделать как ты написал, в консоли сервера:
sv_master_legacy_mode 1 - исчез
sv_master_legacy_mode 0 - снова появился, причём с таким же uptime

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#154 Сообщение 25.07.2011, 21:47

у себя на линуховой сошке(немного подправленной) уже дня 3 призраков нет, но она не пускает Unknown клиентов.
Изображение

@serg@
Нович0к
Нович0к
Сообщения: 25
Зарегистрирован: 05.02.2011

#155 Сообщение 25.07.2011, 23:13

Насчёт призраков, отпишусь, не знаю на сколько важно, наблюдал всего 1 раз (специально не искал, но и жалоб от народа небыло). Просмотрел внимательно логи и выяснил, что время входа призрака совпало со временем входа одного из стим-клиентов. Скорее всего это всёже дыра самого движка, нежели эмулятора.

Аватара пользователя
jamaicada
Лейтенант
Лейтенант
Сообщения: 103
Зарегистрирован: 31.05.2009

#156 Сообщение 25.07.2011, 23:39

Конечно, я мониторил сервер и на лицензии и на эмуляторе. Результат одинаковый. Призраки и на лицензии и на эмуляторе. Поэтому это проблема "чистого" сервера. Но тут это уже не раз говорили :D
Кстати, вот что заметил - nosteam клиенты "роняют" чистый сервер со временем. bir3yk, реально ли это?
Поставил чистый сервер, из-за популярности моего сервера среди nosteam игроков они продолжали заходить, вместе с этим сервер начал просто зависать с собщением.
PreMinidumpCallback: updating dump comment
Вернул эмулятор - 3 дня без единого зависа.
Сам эту вещь воспроизвести не смог.

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#157 Сообщение 26.07.2011, 01:24

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

Аватара пользователя
PhO3n1X
Сержант
Сержант
Сообщения: 96
Зарегистрирован: 01.01.2006
Откуда: Latvia
Поблагодарили: 1 раз
Контактная информация:

#158 Сообщение 26.07.2011, 01:39

При попытке вызвать функцию Rev_BGetPlayerInfoBySteamID на подключённого игрока сервер выдаёт ошибку

после чего функция возвращает результат false и структура PlayerInfo_t заполняется нулями.

Актуальны ли эти функции для получения данных об игроке, в последнем steamclient.dll?
GunGame.LV - Pro Gamers Portal | CS:S GG & DM Servers
Изображение

Изображение Изображение

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#159 Сообщение 26.07.2011, 10:37

PhO3n1X
должен работать, возможно вы не правильно определили структуру PlayerInfo_t и передаете ее не корректно в функцию.
struct PlayerInfo_t
{
unsigned int m_unUserID;
CSteamID m_steamIDPlayer;
EUserType m_ePlayerType;
unsigned int m_unIP;
};

или до обновления ваш код работал?
Изображение

Аватара пользователя
PhO3n1X
Сержант
Сержант
Сообщения: 96
Зарегистрирован: 01.01.2006
Откуда: Latvia
Поблагодарили: 1 раз
Контактная информация:

#160 Сообщение 26.07.2011, 12:02

bir3yk
Как было раньше сказать не могу, поскольку только сейчас решил прикрутить данную фишку к серверу. Вроде структура определена правильно, код который вызывает функцию выглядит следующим образом:

Код: Выделить всё

bool GetSteamID(CSteamID *sid, int index)
{
    const CSteamID *pSteamID;

    pSteamID = engine->GetClientSteamID(engine->PEntityOfEntIndex(index));

    if (!pSteamID)
        return false;

    *sid = *pSteamID;
    return true;
}

cell_t Rev_GetPlayerType(IPluginContext *pContext, const cell_t *params)
{
    int index = params[1];

    CSteamID steamID;
    PlayerInfo_t playerInfo;

    if (!GetSteamID(&steamID, index))
    {
        pContext->ThrowNativeError("Error getting CSteamID for client: %d", index);
    }

	Rev_BGetPlayerInfoBySteamID(steamID, &playerInfo);

    return playerInfo.m_ePlayerType;
}
Последний раз редактировалось PhO3n1X 26.07.2011, 12:15, всего редактировалось 2 раза.
GunGame.LV - Pro Gamers Portal | CS:S GG & DM Servers
Изображение

Изображение Изображение

alfagen
Нович0к
Нович0к
Сообщения: 22
Зарегистрирован: 26.07.2011

#161 Сообщение 26.07.2011, 12:06

2. даже не знаю где искать проблему, на сервере или на клиенте. revEmu последний. игра left4dead2
3.
rev.ini с сервера
[Emulator]

# CacheEnabled set to true to enable loading apps from GCF.
# If it is true, and a clientregistry.blob file is not supplied,
# then you must supply revApps.ini file with the correct cache requirements.
# See the example revApps.ini, however it is highly recommended that you use
# a clientregistry.blob file for maximum compatibility
#
# Default = False
#
CacheEnabled = false

# CachePath - set to the folder where your GCF files are lo ed
#
# Default = (n/a)
#
CachePath = E:\Steam\SteamApps

# Language - rev emu will automagically load the correct language files.
# This can be English, French, Italian, German, Spanish, sChinese,
# Korean, Koreana, tChinese, Japanese, Russian, Thai, or Portugeuse
#
# revEmu will try to set the Language key in the following order:
# Use the Language key in the this rev.ini if it is present
# Use the Steam Language key in the registry if it is present
# Default the Language to English
#
#Language = English
Language = Russian

# Change Logging to True to enable/disable log file output for steam.dll
#
# Default = False
#
Logging=False

# Change SteamDll to point to your official Steam client DLL.
# This setting is required for Steam UserID Validation functions
# to support legit Steam IDs. Otherwise, all clients would get
# IDs generated from their IP addresses.
# Also make sure you uncomment the line below (remove "#")
# if you want to use this setting
# Note that this setting only applies to games using SteamGameServer
# up to version 003. (e.g. CS: Source, Team Fortess 2, Garry's Mod)
#
# Default = (n/a)
#
SteamDll=.\bin\Steam\Steam.dll

# Change SteamClient to True if you want to use the steamclient emulator.
# This setting is recommended to be true for both clients \ game servers
# and for all games, except games which use SteamClient006 interface
# (e.g. CS: Source, Half-Life 2: D hmatch)
# To see if the game is using this old interface, enable SteamClient,
# enable Logging and you will notice a log line "Using SteamClientXXX".
# If 007, leave the option ON, otherwise, it is recommended not to use it.
#
# Default = False
#
SteamClient = True

# Change SteamUser to the steam username that you wish to use with revEmu
# Defaults to revCrew if not specified
#
SteamUser = SteamPlayer

- [Log]

# If Logging is set to True, choose which functions would you like to log.
#
# Default = False
#
FileSystem=False
Account=False
UserID=False

- [steamclient]

################################### NOTE ####################################
# These settings may apply even if you don't choose to use steamclient.dll #
#############################################################################
#
# Change the setting below to set your PlayerName (used in src2007 engine)
# not use ""
#
# Default = REVOLUTiON
#
PlayerName=Your name


# Change the setting below to enable/disable log file output for steamclient.dll
#
# Default = False
#
Logging=False

# Change ClientDLL to point to the original steamclient.dll
# This setting will enable VAC for your server and your server will be listed
# on Valve master server Also, Steam clients will have their regular Steam IDs
# Please use the steamclient.dll from Steam folder
#
# Default = (n/a)
#
#ClientDLL=.\bin\Steam\steamclient.dll

#
#
#SteamExe=E:\Steam\Steam.exe

# DisableUnlockedItems enables you to choose whether to use the new weapons in
# Team Fortress 2. This setting applies to you only if you are a regular player,
# or to all your clients if you are a server hoster.
#
# Default = False
#
#DisableUnlockedItems = True

# If you use in Ultimate SSDK change the setting below to True
# use only Ultimate SSDK enable else disable.
# Default = False
#
#EnableSDK = True

#Change the setting to set masterserver, from where serverlist will be got.
#No support Setti masterserver.....
#Default = 72.165.61.136:27015 only for HL2
#Friends tab in serverbrowser shows another masterserver for VIP server ( )
#
#HL1 servers
#MasterServer = 188.40.40.201:27010
#MasterServer = 69.28.158.131:27010
#MasterServer = 209.197.20.34:27010
#MasterServer = 69.28.140.247:27010
#
#HL2 servers
#
MasterServer = 72.165.61.153:27015
#MasterServer = 63.234.149.83:27011
#MasterServer = 63.234.149.90:27011
#
#rdkf
#MasterServer = 68.142.72.250:27012

#Search game version in MasterServer.
#Default search all version.
#
#GameVersion = 1.0.0.64

#Add rename ClanTag maximum 12 symbol UTF-8 or 24 symbol ANSI
#ex. ClanTag = revcrev
ClanTag=[revcrew]

- [GameServer]

# GameServer policy rules
# Allow (v9.73 < revEmu < 9.83) clients to join your server
#
# Default = True
#
AllowOldRev74=True

# Allow revEmu v9.63 ~ 9.73 clients to join your server
# revEmu v9.62 and below will be rejected nevertheless
#
# Default = True
#
AllowOldRev=True

# Allow unknown clients to join your server
#
# Default = True
#
AllowUnknown=True

# Allow cracked Steam clients to join your server
#
# Default = True
#
AllowCracked=True

# Allow legitimate Steam clients to join your server
#
# Default = True
#
#AllowLegit=False

#Allowed any count connect Unknown client with one IP (25 Unknown clients 1 IP default true)
#
AllowedAnyCountConnectUnknownClientWithOneIP = false

- [GameServerNSNet]
#EnableNSNetSvc = [False/UDP/TCP/BOTH]
#NSNetDedi edPort = Порт(Только для Slave серевров)
#AdditionalSlaveServer = IP:PORT
#AdditionalSlaveServer = IP:PORT
#AdditionalSlaveServer = IP:PORT
#AdditionalSlaveServer = IP:PORT
rev.ini с клиента
[Emulator]

Language = Russian

SteamClient = True

SteamUser = revCrew

[steamclient]
PlayerName =alf1k
6. Да
7. При заходе на сервер выкидывает и пишет STEAM Validation rejected
Недавно обновил сервер с 2074 на 2075. Не понимаю что такое, все было нормально.

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#162 Сообщение 26.07.2011, 12:26

alfagen
всех выкидывает или только клиентов с эмулятором?
раньше работало нормально?
установи на сервере дллку с логированием и посмотри создается ли rev-client.log.
Изображение

alfagen
Нович0к
Нович0к
Сообщения: 22
Зарегистрирован: 26.07.2011

#163 Сообщение 26.07.2011, 12:33

bir3yk писал(а):alfagen
1 всех выкидывает или только клиентов с эмулятором?
2 раньше работало нормально?
3 установи на сервере дллку с логированием и посмотри создается ли rev-client.log.
1 с эмулятором
2 да, до обновления
3
rev-client.log
2011/07/26 01:32:03 Startup
2011/07/26 01:32:21 Using Interface: SteamClient010
2011/07/26 01:32:21 CAdapterSteamClient010::SetLocalIPBinding
2011/07/26 01:32:21 CAdapterSteamClient010::SetLocalIPBinding
2011/07/26 01:32:21 CAdapterSteamClient010::CreateLocalUser
2011/07/26 01:32:21 CAdapterSteamClient010::CreateLocalUser
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamGameServer
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamGameServer
2011/07/26 01:32:21 Using Interface: SteamGameServer010
2011/07/26 01:32:21 Using Interface: SteamGameServer010
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamUtils
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamUtils
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamApps
2011/07/26 01:32:21 Using Interface: SteamUtils005
2011/07/26 01:32:21 Using Interface: STEAMAPPS_INTERFACE_VERSION004
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamApps
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamGameServer
2011/07/26 01:32:21 Using Interface: STEAMAPPS_INTERFACE_VERSION004
2011/07/26 01:32:21 Using Interface: SteamGameServer010
2011/07/26 01:32:21 Adapters::CSteamGameServer010::LogOn
2011/07/26 01:32:21 Using Interface: SteamMasterServerUpdater001
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamGameServer
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamNetworking
2011/07/26 01:32:21 Using Interface: SteamGameServer010
2011/07/26 01:32:21 Using Interface: SteamNetworking004
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamMasterServerUpdater
2011/07/26 01:32:21 Using Interface: SteamMasterServerUpdater001
2011/07/26 01:32:21 CAdapterSteamClient010::GetISteamNetworking
2011/07/26 01:32:21 Using Interface: SteamNetworking004
2011/07/26 01:40:37 Adapters::CSteamGameServer010::SendUserConnectAndAuthenticate
2011/07/26 01:40:37 Ticket: Rev Emu.
2011/07/26 01:40:37 UserConnect IP = 82.193.151.69 | SteamID = STEAM_0:0:2110921119 (178)

2011/07/26 01:40:37 CAdapterSteamClient010::GetISteamGameServer
2011/07/26 01:40:37 Using Interface: SteamGameServer010
2011/07/26 01:40:37 CAdapterSteamClient010::GetISteamMasterServerUpdater
2011/07/26 01:40:37 Using Interface: SteamMasterServerUpdater001
2011/07/26 01:40:37 CAdapterSteamClient010::GetISteamNetworking
2011/07/26 01:40:37 Using Interface: SteamNetworking004
2011/07/26 02:00:42 SteamDisconnect IP = 82.193.151.69 | SteamID = STEAM_0:0:2110921119

2011/07/26 02:43:26 Adapters::CSteamGameServer010::SendUserConnectAndAuthenticate
2011/07/26 02:43:26 Ticket: Rev Emu.
2011/07/26 02:43:26 UserConnect IP = 172.21.84.53 | SteamID = STEAM_0:0:966519090 (178)

2011/07/26 02:43:32 SteamDisconnect IP = 172.21.84.53 | SteamID = STEAM_0:0:966519090

2011/07/26 02:43:32 Adapters::CSteamGameServer010::SendUserConnectAndAuthenticate
2011/07/26 02:43:32 Ticket: Rev Emu.
2011/07/26 02:43:32 UserConnect IP = 172.21.84.53 | SteamID = STEAM_0:0:966519090 (178)

2011/07/26 02:45:50 SteamDisconnect IP = 172.21.84.53 | SteamID = STEAM_0:0:966519090

2011/07/26 12:13:10 Adapters::CSteamGameServer010::SendUserConnectAndAuthenticate
2011/07/26 12:13:10 Ticket: Rev Emu.
2011/07/26 12:13:10 UserConnect IP = 92.252.148.212 | SteamID = STEAM_0:0:1915531649 (178)

2011/07/26 12:18:34 SteamDisconnect IP = 92.252.148.212 | SteamID = STEAM_0:0:1915531649
Это логирование до того момента этих суток, когда версия сервера была еще 2.0.7.4
Сейчас же лог не переписывается.

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#164 Сообщение 26.07.2011, 12:37

PhO3n1X
стоит добавить проверку что возвращает функция.

if(Rev_BGetPlayerInfoBySteamID(steamID, &playerInfo)
return playerInfo.m_ePlayerType;

типы клиентов на всякий случай...
enum EUserType
{
k_eSteamLegitUser = 0,
k_eSteamCrackedUser,
k_eRevEmuUser,
k_eRevEmuUserOld,
k_eSettiSRCScanBot,
k_eRevEmuUserV74,
k_eRevEmuUserVeryOld,
k_eUnknownUser,
k_eSteam2Legit,
k_eSteam2Cracked
};

и попробуй все таки использовать bool Rev_BGetPlayerInfoByUserID ( unsigned int unUserID, PlayerInfo_t* pPlayerInfo )
с индексом игрока меньше хлопот будет.

Добавлено спустя 2 минуты 53 секунды:
alfagen
не совсем мне нравится твой rev.ini для сервера, возьми обычный из архива. там где есть в имени слово server
Изображение

alfagen
Нович0к
Нович0к
Сообщения: 22
Зарегистрирован: 26.07.2011

#165 Сообщение 26.07.2011, 12:54

alfagen
не совсем мне нравится твой rev.ini для сервера, возьми обычный из архива. там где есть в имени слово server
Не понял. Откуда?

Ответить Вложения 6