killer100 Posted July 13, 2011 Share Posted July 13, 2011 volk-rus спс. У меня ещё вопрос, как сделать что бы в лог заносилось всё? Например что пишут в чате и.т.д ? Link to comment
Kenix Posted July 13, 2011 Share Posted July 13, 2011 Вообще когда кто - то что нибудь пишет в чате это сохраняется в логе . Вот функция : https://wiki.multitheftauto.com/wiki/OutputServerLog Link to comment
MX_Master Posted July 13, 2011 Share Posted July 13, 2011 Появился такой вопрос: в луа используюся null-terminated строки или как определяется конец строки?Второй вопрос: через fileWrite можно записывать только текстовые строки? (согласуется с первым вопросом) Хороший вопрос. Советую проверить это на практике самому. Чтобы дать ответ, другие тоже должны проверить это на практике, а это куда дольше, чем тебе бы хотелось (: отпишись потом Link to comment
killer100 Posted July 13, 2011 Share Posted July 13, 2011 Вообще когда кто - то что нибудь пишет в чате это сохраняется в логе . Вот функция : https://wiki.multitheftauto.com/wiki/OutputServerLog А когда допустим вводишь команду или когда выходят сообщения скриптов как сделать что бы они сохранялись в лог? Link to comment
MX_Master Posted July 13, 2011 Share Posted July 13, 2011 Вообще когда кто - то что нибудь пишет в чате это сохраняется в логе . Вот функция : https://wiki.multitheftauto.com/wiki/OutputServerLog А когда допустим вводишь команду или когда выходят сообщения скриптов как сделать что бы они сохранялись в лог? есть события https://wiki.multitheftauto.com/wiki/OnClientChatMessage https://wiki.multitheftauto.com/wiki/OnClientConsole для них можно добавить обработчик в котором будет outputServerLog Link to comment
nicolaw Posted July 15, 2011 Share Posted July 15, 2011 (edited) +1 Edited July 20, 2011 by Guest Link to comment
AirKite Posted July 15, 2011 Share Posted July 15, 2011 Смотри https://wiki.multitheftauto.com/wiki/FadeCamera Link to comment
nicolaw Posted July 15, 2011 Share Posted July 15, 2011 (edited) +1 Edited July 20, 2011 by Guest Link to comment
Kenix Posted July 15, 2011 Share Posted July 15, 2011 https://wiki.multitheftauto.com/wiki/SetPedGravity Link to comment
nicolaw Posted July 15, 2011 Share Posted July 15, 2011 (edited) +1 Edited July 20, 2011 by Guest Link to comment
_Vincent_ Posted July 17, 2011 Share Posted July 17, 2011 Можно ли на уровне сервера (весь скрипт только на сервере) сделать так, чтобы сообщение выводилось только определенным группам зарегенных юзеров? Пробовал делать проверку local acn = getAccountName(getPlayerAccount(source)) if isObjectInACLGroup("user." .. acn, aclGetGroup("Admin")) or isObjectInACLGroup("user." .. acn, aclGetGroup("SuperModerator")) or isObjectInACLGroup("user." .. acn, aclGetGroup("Moderator")) then и далее на подобие outputChatBox(getPlayerName(source) .. ": " .. stringWithAllParameters, getRootElement(), 255, 255, 0, true) Но в итоге потерпел fail, так как выводилось всем, даже незарегенному Можно ли вообще такую проверку делать, и что-то я не очень понял + как этот visibleTo юзать (и надо ли)? Link to comment
TEDERIs Posted July 17, 2011 Share Posted July 17, 2011 Одно из решений for _, player in ipairs ( getElementsByType ( "player" ) ) do local playerAccount = getPlayerAccount ( player ) if isGuestAccount ( playerAccount ) ~= true then local accountName = getAccountName ( playerAccount ) if isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Admin" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ("SuperModerator" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Moderator" ) ) then outputChatBox ( "Text", player ) end end end Link to comment
Kernell Posted July 17, 2011 Share Posted July 17, 2011 Можно ли на уровне сервера (весь скрипт только на сервере) сделать так, чтобы сообщение выводилось только определенным группам зарегенных юзеров?Пробовал делать проверку local acn = getAccountName(getPlayerAccount(source)) if isObjectInACLGroup("user." .. acn, aclGetGroup("Admin")) or isObjectInACLGroup("user." .. acn, aclGetGroup("SuperModerator")) or isObjectInACLGroup("user." .. acn, aclGetGroup("Moderator")) then и далее на подобие outputChatBox(getPlayerName(source) .. ": " .. stringWithAllParameters, getRootElement(), 255, 255, 0, true) Но в итоге потерпел fail, так как выводилось всем, даже незарегенному Можно ли вообще такую проверку делать, и что-то я не очень понял + как этот visibleTo юзать (и надо ли)? visibleTo - это тот игрок которому придёт сообщение.. root - для всех. можно построить дерево назвав его например Admins в котором будут админы.. Например: -- При старте ресурса создаём элемент с именем группы + префикс Admins = createElement( 'acl:Admins' ); -- При подключении игрока (или при ещё каких либо событиях) заносим его в елемент админов (убедившись что он админ) local pAcc = getPlayerAccount( player ); if not isGuestAccount( pAcc ) == false and isObjectInACLGroup ( "user." .. getAccountName( pAcc ), aclGetGroup( "Admin" ) ) then setElementParent( player, Admins ); end -- А вот так отправлять сообщение всем админам outputChatBox( 'txt', Admins ); Link to comment
_Vincent_ Posted July 17, 2011 Share Posted July 17, 2011 Спасибо за ответы Так как опыта у меня почти нет, более привлекательным кажется вариант Kernell'а, он как-то легок для понимания, чтоли. А то в альтернативном варианте меня в ступор уже первая строка ввела, если несложно, то разъясните, что есть "in ipairs"?.. Link to comment
Kernell Posted July 18, 2011 Share Posted July 18, 2011 Спа сибо за ответы Так как опыта у меня почти нет, более привлекательным кажется вариант Kernell'а, он как-то легок для понимания, чтоли. А то в альтернативном варианте меня в ступор уже первая строка ввела, если несложно, то разъясните, что есть "in ipairs"?.. ipairs - цикл по элементам массива с целочисленными индексами (до первого отсутствующего). pairs - цикл по элементам массива где индекс может быть чем угодно (кроме nil). Link to comment
Easterdie Posted July 19, 2011 Share Posted July 19, 2011 возникла непонятная проблема, после запуска линух сервера на сервер зайти невозможно, при этом сам хост пингуется, сервер отображается в списке, часть названия "SigNet.su", при попытке законнектиться висит окошко с подключением, а потом всё это обрывается таймаутом. в чём может быть проблема и как это лечить? Link to comment
AirKite Posted July 19, 2011 Share Posted July 19, 2011 Порты все открыти или за маппены (если сервер за роутером)?. Link to comment
MX_Master Posted July 19, 2011 Share Posted July 19, 2011 запустить чистый серв последней версии с найтли со свежими ресурсами? у меня кста 1,0,5 линух серв не посл вверсии на проекте и все робит как часы ну еще как полагается мона проверить логи серва Link to comment
Easterdie Posted July 19, 2011 Share Posted July 19, 2011 сервер чистый, ресы стандартные, настройки нормальные, так что я хз, почему не коннектится. Link to comment
Arisu Posted July 20, 2011 Share Posted July 20, 2011 RAGE POST. Сервер работает и отвечает по http. СТАР, Я ТЕБЯ НАВЕРНОЕ, ДВАДЦАТЬ РАЗ ПРОСИЛ СВАЛИТЬ ЭТОТ ЧЕРТОВ СЕРВЕР, ЧТОБЫ Я МОГ ЕГО ПЕРЕНАСТРОИТЬ. ТЫ ДВЕ НЕДЕЛИ МЕНЯ НЕ СЛУШАЛ, ТАК ЧТО Е**СЬ С НИМ САМ ТЕПЕРЬ, ТУТ ТЕБЕ ПОМОГУТ. Но помогут не более чем "порты открыты?" "анонс идет?" "редиреста нет?". Link to comment
Arisu Posted July 20, 2011 Share Posted July 20, 2011 Добавлю только, что даже если б я его перенастроил, это бы ничего не решило. Чисто для уверенности, что нет ошибок в конфиге. Сервер анонсится, сервер отвечает по http. До сервера не доходят данные по игровому порту ИЗ ТОМСКА, но при этом на него умудрилось зайти 8 человек ОТКУДА-ТО. ???? -> Неправильно настроен хост. Тут без вопросов. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now