Jump to content

Вопросы и ответы по MTA.


Recommended Posts

Называется обновил MTA на линухе:
libmysqlclient.so.15: невозможно открыть разделяемый объектный файл: Нет такого файла или каталога

ERROR: Loading mod (***/mods/deathmatch/deathmatch.so) failed!

Press Q to shut down the server!

Где можно найти информацию о требуемых библиотеках?

А то сидель гадать как-то не нормально. (Это ладно сейчас ещё более менее понятно, а то бывает и вообще пакеты выпадают которые никогда не видел)

UPD:

ls /usr/lib/mysql показывает что libmysqlclient.so.15 есть (убило нахрен D:)

:-( У меня точно так же после обновления... Вопрос открыт.

Link to comment
найдите оригинал файла (установите mysql, если нет) и сделайте ссылки с этим именем в /usr/lib/ и /lib/

Спасибо Мастер, попробую... Но что за ерунда происходит то? До установки новой версии сервера, под Linux, все работало и MySQL у меня стоит, и файлик, libmysqlclient.so.15, у меня есть, без него ранее сервер не стартовал, я все настроил и вот на тебе, чтоб не скучали... До установки файлов новой ревизии сервер полностью работал с БД MySQL и я ни чего не изменял, кроме замены файлов старой версии на файлы новой версии сервера.

Link to comment

Потытался я вернуться на "старую версию" сервера и вот таков ответ при запуске сервера - "ERROR: Unable to connect to mysql: (2002) Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)"

Да,... мистика и только... Кто подскажет что и где "крутить"? :cry:

И нафига я ставил эти обновления?!... На старой версии все и так работало!...

Edited by Guest
Link to comment
найдите оригинал файла (установите mysql, если нет) и сделайте ссылки с этим именем в /usr/lib/ и /lib/

Это называется "кривое решение проблемы", что в Linux делать не желательно.. А если прочитать тему внимательнее, то многое станет яснее.

Link to comment

function Function0 (thePlayer, id) 
    local status = setPedFightingStyle ( thePlayer, tonumber(4) ) 
    setTimer ( Function1, 4000, 1 ) -- пересылка на 1 функцию 
end 
---------------------------------------------------------------------------------------- 
function Function1 (thePlayer, id) 
    local status = setPedFightingStyle ( thePlayer, tonumber(5) ) 
    setTimer ( Function2, 4000, 1 ) -- пересылка на 2 функцию 
end 
---------------------------------------------------------------------------------------- 
function Function2 (thePlayer, id) 
    local status = setPedFightingStyle ( thePlayer, tonumber(6) ) 
    setTimer ( Function3, 4000, 1 ) -- пересылка на 3 функцию 
end 
---------------------------------------------------------------------------------------- 
function Function3 (thePlayer, id) 
    local status = setPedFightingStyle ( thePlayer, tonumber(7) ) 
    setTimer ( Function4, 4000, 1 ) -- пересылка на 0 функцию 
end 
---------------------------------------------------------------------------------------- 
addEventHandler("onResourceStart", getResourceRootElement(getThisResource()), Function0 ) -- запуск 0 функции при старте ресурса 

Что тут у меня не так. Смысл скрипта - каждые 4 сек меняется стиль боя на следующий

Link to comment
Что тут у меня не так. Смысл скрипта - каждые 4 сек меняется стиль боя на следующий

Function0 не может получить аргументы thePlayer и id от события onResourceStart. Также 4-й тамер прикреплен к несуществующей функции. Попробуй так:

addEventHandler ( "onPlayerJoin", root, 
 function ( ) 
  setPedFightingStyle ( source, 4 ) 
  setElementData ( source, "fightingStyle", 4 ) 
  setTimer ( resetFightingStyle, 4000, 1, source ) 
 end ) 
  
function resetFightingStyle ( player ) 
 if isElement ( player ) then 
  local style = getElementData ( player, "fightingStyle" ) 
  if type ( style ) ~= "number" then return end 
  style = style + 1 
  if style > 7 then 
   style = 4 
  end 
  setPedFightingStyle ( player, style ) 
  setElementData ( player, "fightingStyle", style ) 
  setTimer ( resetFightingStyle, 4000, 1, player ) 
 end 
end 

Link to comment
Попробуй так:

неа стиль не меняет - остаётся нубский

Таймер начинает работать только после входа игрока в игру. Можно переделать на комманду:

addCommandHandler ( "afstyle", 
function ( player ) 
 if not getElementData ( player, "fightingStyle" ) then 
  setPedFightingStyle ( player, 4 ) 
  setElementData ( player, "fightingStyle", 4 ) 
  setTimer ( resetFightingStyle, 4000, 1, player ) 
 else 
  outputChatBox ( "Вы уже применили эту комманду", player ) 
 end 
end ) 
      
function resetFightingStyle ( player ) 
if isElement ( player ) then 
 local style = getElementData ( player, "fightingStyle" ) 
 if type ( style ) ~= "number" then return end 
  style = style + 1 
  if style > 7 then 
   style = 4 
  end 
  setPedFightingStyle ( player, style ) 
  setElementData ( player, "fightingStyle", style ) 
  setTimer ( resetFightingStyle, 4000, 1, player ) 
 end 
end 

После ввода /afstyle запускается таймер смены режима борьбы. Что очень важно, это серверный скрипт.

Link to comment
Потытался я вернуться на "старую версию" сервера и вот таков ответ при запуске сервера - "ERROR: Unable to connect to mysql: (2002) Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)"

Да,... мистика и только... Кто подскажет что и где "крутить"? :cry:

И нафига я ставил эти обновления?!... На старой версии все и так работало!...

Лучше в отдельной теме обсудить этот трабл с мускул библой.

Link to comment

Извините, но вы сами обновляетесь на nightly, стабильность с nightly никто не гарантирует, это по сути беты, на странице сказано:

"Be aware that this is experimental software that will run at your own risk. None of the contributors can be held responsible for any damage that might have occurred because of the software."

Какие к нам претензии? Мы вас не заставляем использовать тестовые версии. А стабильные linux версии на http://linux.multitheftauto.com/

Link to comment
Извините, но вы сами обновляетесь на nightly, стабильность с nightly никто не гарантирует, это по сути беты, на странице сказано:

"Be aware that this is experimental software that will run at your own risk. None of the contributors can be held responsible for any damage that might have occurred because of the software."

Какие к нам претензии? Мы вас не заставляем использовать тестовые версии. А стабильные linux версии на http://linux.multitheftauto.com/

Лично я не обвиняю команду разработчиков в проблеме с нестабильной версией сервера, более того, говорю спасибо за ваш труд! Но вот же проблема... После версии сервера linux-1.1.1-rc-3347, переустановил весь VPS, установил и настроил заново все необходимые программы и сервер MTA 1.1.1 - Linux server package R4 (build 3297), но сервер выдает по прежнему такую ошибку "ERROR: Unable to connect to mysql: (2002) Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)".

Что произошло, что даже полное восстановление VPS не помогло?... :shock:

Почему, теперь я не могу вернуться к стабильной версии сервера??? Странно...

Link to comment
Почему, теперь я не могу вернуться к стабильной версии сервера??? Странно...

Помогла замена localhost на 127.0.0.1 при подключении к БД.

Сервер стартовал! :D

Link to comment
а собственно зачем менять каждые 4 секунды стиль борьбы?
Это для комбо. Например: Бьешь по боксёрски 4 сек - в это время должно вместится удара 3, а потом как с ноги хрясь, хрясь, птыщь, потом еще серия других ударов, потом внубском стиле по яйцам - нас :redhotevil: ка!!!!!
Link to comment

Это версия сервера еще официально не вышла, когда выйдет будет 2 версии - одна с mysql, вторая как раньше с sqlite. Для версии с sqlite никаких новых библиотек вам не понадобится.

Link to comment

Можно использовать в разных файлах одного ресурса переменные с одинаковым названием?

Или переменные в файлах

[ресурс]/1st_file.lua

[ресурс]/2nd_file.lua

Будут связаны и одни и те же названия использовать нельзя?

Link to comment
  • Other Languages Moderators
Можно использовать в разных файлах одного ресурса переменные с одинаковым названием?

Или переменные в файлах

[ресурс]/1st_file.lua

[ресурс]/2nd_file.lua

Будут связаны и одни и те же названия использовать нельзя?

Есть понятие: локальные переменные и глобальные переменные.

Глобальные переменные:

x = y 

Локальные переменные:

local x = y 

Link to comment

Я знаю, что это такое.

Значит, если у меня в одном файле ресурса есть код:

x = 5 

то в другом файле ресурса я смогу получить это значение?

А если я напишу

local x = 5 

то в другом ресурсе вернется nil?

Я не до конца понял, как вообще работают файлы ресурса, они объединяются все в один или работают независимо друг от друга?

Link to comment
  • Other Languages Moderators
Я знаю, что это такое.

Значит, если у меня в одном файле ресурса есть код:

x = 5 

то в другом файле ресурса я смогу получить это значение?

А если я напишу

local x = 5 

то в другом ресурсе вернется nil?

Я не до конца понял, как вообще работают файлы ресурса, они объединяются все в один или работают независимо друг от друга?

Весь прикол заключается в том что я их путаю :lol: Помоему глобальные работают во всем моде, а локальные только в одном файле.

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...