Jump to content

Dimosha

Members
  • Posts

    35
  • Joined

  • Last visited

Everything posted by Dimosha

  1. По поводу этого не знал - перечитаю, спасибо Наоборот, Вы объяснили, что такого решения, по факту, нет и предложили варианты решения проблемы, за что отдельное спасибо Благодарю ещё раз
  2. Допустим. Каким тогда образом я могу ловить исключения и сразу о них стучаться? Плюс ко всему.. В случае добавления какого-то события, мне приходилось бы его добавлять только на сервер (веб, к примеру), а сам клиент, то есть, сервер МТА, оставлять без изменений. По факту, двойная работа
  3. Обрабатывать логи с многих серверов в режиме реального времени. К примеру, те же оповещения на email/telegram при каких-то событиях на сервере. Отвалилась БД, скрипт не смог запуститься или ещё что. Возможно так же и в развлекательных целях, например, имеются системы автоматического проведения игр по CS (fastcup/overpro (не реклама)), они осуществляют свою деятельность именно таким способом. Придётся делать самопис, в случае отсутствия данной функции, но может есть какое-то решение "из коробки".
  4. Добрый день. Возник вопрос по поводу логов. Возможно ли каким-то образом забирать все логи в realtime с сервера (имею ввиду то, что пишется в консоли)? К примеру, в HLDS имеется такая штука, как "logaddress_add", есть ли что-то подобное в MTA?
  5. Благодарю за ответ! Всё работает, большое спасибо. Видимо, я где-то упустил этот момент. Возможно, Вы знаете какую-нибудь статью, отрывок в книге, где этот момент освещён? Я не припоминаю такого нигде. Заранее спасибо!
  6. Доброго времени суток. Прошу у Вас помощи, я не могу понять, как правильно передать фукнцию в аргументы. Имеется следующий код: Game = {}; function Game:new() game = {} function game:start() round:initialize(15); end round = {} function round:countdown(secondsToStart) if(secondsToStart > 0) then triggerEvent("onCountdown", getRootElement(), secondsToStart); setTimer(round:countdown, 1000, 1, secondsToStart - 1); -- Здесь ошибка. else triggerEvent("onRoundStarted", getRootElement()); end end function round:initialize(countdown) addEvent("onCountdownStarted"); round:countdown(countdown); end setmetatable(game, self); self.__index = self; return game; end Комментарием указано, на какой строке вылетает ошибка. Я хочу запустить рекурсивно приватную функцию с помощью таймера, но при передаче наименования фукнции, вылетает ошибка, что неправильно указана функция, а конкретнее: Собственно, вопрос, как я могу это исправить, что я делаю не так?
  7. Вопрос касался как раз этого. Огромное спасибо
  8. Добрый день. В данном случае я привёл Pawn как скудный язык. Я его выкинул из головы, здесь он указан чисто для примера и не более этого. По поводу того, что в Pawn статика - в курсе. Опять же, C# не связан с Pawn и SAMP, но суть я понял. Здесь указан опять же пример того, что есть информация для других языков, но для Lua (в плане оформления кода, архитектуры проекта), либо вовсе нет, либо очень скудная. Прочитав большую часть wiki, я не нашёл нужной мне информации. Если же она есть - прошу меня "ткнуть носом". Спасибо, но тут вопрос: что Вы подразумеваете под словом "менеджер"? Обработчик, грубо говоря, контроллер? Данную вещь, как разделение, я понимаю, тут вопрос обстоит несколько в другом: в Lua в связке с MTA есть возможность хранить информацию в различных местах, поэтому хотелось бы уточнить свой вопрос: в каких случаях использовать те или иные средства хранения информации (желательно поподробнее). Добрый день. Спасибо за предоставленную информацию, довольно прозрачно. Так же до сих пор не получил ответа на свой вопрос - как лучше всего оформлять код? Понимаю, что сколько людей, столько и мнений, столько и стилей написания, но хотелось бы узнать о наиболее популярных и прозрачных.
  9. Спасибо за информацию, но хотелось бы уточнить. Как располагаются внутри проекта файлы? Там их только два (server и client) или же более подробное деление на части?
  10. Доброго времени суток, господа. Как у разработчика встал вопрос - какую архитектуру лучшего всего использовать для написания игрового мода? По поводу игрового мода так же имеется вопрос, так как я заметил, что многие разработчики разбивают его на отдельные ресурсы: какие в этом преимущества, минусы, как лучше всего разбить большую систему на несколько ресурсов? Возможно, есть какие-то паттерны, а так же пожелания по написанию кода. Искал в интернете - ничем не помогло, информации по данному поводу нет (возможно, я не нашёл, не буду отрицать). Так же интересно узнать мнение по поводу того, как лучшего всего хранить большие объемы данных. Взять пример тот же Pawn - создаём массив и кладём в него данные и.. на этом всё. Тут же функционал более широкий (тот же element data), но почитав пару тем на форуме понял, что лучше с ним быть более аккуратным. Как лучшего всего поступить с большими объемами данных? Частота обновления ~ 2-3/сек. при нулевой онлайне. Взять тот же C# - много информации, статей, уроков и так далее, а тут, по факту, нет. Думаю, что многим начинающим разработчикам в MTA пригодится данная информация. Буду рад любому адекватному и обширному ответу (желательно с ссылками на те или иные статьи/темы). Заранее спасибо
  11. Доброго времени суток, господа. Постепенно осваивая Lua и используя ООП подход, я пришёл к такому вопросу: есть ли возможность расширить стандартные классы MTA? Такие, как: Element, Player, внедрив в них собственные методы и поля. Если да, то, если не трудно, покажите на примере, как можно внедрить функции, и получение и запись данных в них. Заранее спасибо
  12. Доброго времени суток, господа. У меня состоит вопрос в следующем: можно ли каким-то образом передавать данные из сервера (MTA) и передавать их на удаленный сервер в формате JSON, XML? Если же нет, то какие другие методы передачи данных Вы можете предложить?
  13. Спасибо большое
  14. Доброго времени суток, господа. Скажите, возможно ли в MTA создать пикап, который не будет респавниться при его использовании? Нашёл информацию на вики, попробовал несколько вариантов с параметром "respawnTime" и не получилось. Возможно, Вы поможете.
  15. Спасибо огромное, буду иметь ввиду
  16. Доброго времени суток, господа. У меня сложилась следующая проблема: я хочу, чтобы каждое сообщение игрока на сервере добавлялось в лог MySQL (создана таблица Logs, туда всё и запихиваю). Проблема обстоит с тем, что MySQL или же сервер не поддерживает кодировку (английский текст - нормально, русский - нет). Вопрос: возможно ли вообще реализовать данную затею или же нет? Если да, то, если не трудно, прошу объяснить, как мне нужно сохранить файлы *.lua (кодировка) и какую кодировку выставить в MySQL в целом. Заранее спасибо P.S. Текстовый редактор - Visual Studio Code
  17. Спасибо за ответ, но можно ли через данную функцию сохранить скриншот в виде изображения (файла) или же забить в БД(например)?
  18. Доброго времени суток, господа. Я играл когда-то в МТА на каком-то сервере и видел интересную фичу: можно было заливать свои скриншоты на сайт. Вопрос в следующем: какие функции можно использовать для того, чтобы сделать скриншот и отправить его?
  19. Доброго времени суток, господа. У меня возник вопрос: может ли один и тот же скрипт использоваться как клиентом, так и сервером, во избежании дублирования? В скрипте будет справочник ID, по которым будут выполняться разные функции как на сервере, так и на клиенте.
  20. Понял, буду знать. Огромное спасибо
  21. Проверь процесс через Process Explorer и убей его. Бывает, что процесс "почти умер" и висит как зависший, вроде, и не отображается в диспетчере
  22. Доброго времени суток. Помогите, пожалуйста, с решением ошибки. Обработчик с внешней функцией: -- Server Events addEventHandler ( "onPlayerWasted", getRootElement(), Round:OnPlayerDie ) Ошибка: [2016-02-17 13:57:45] SCRIPT ERROR: zp\Scripts\server\Events.lua:2: function arguments expected near ')' [2016-02-17 13:57:45] ERROR: Loading script failed: zp\Scripts\server\Events.lua:2: function arguments expected near ')' Функция в другом файле: Round = {} function Round:OnPlayerDie(ammo, attacker, weapon, bodypart) -- ammo - количество патрон умершего человека -- attacker - кто убил (player или vehicle). getElementType ( attacker ) == "player" или "vehicle" -- weapon - ИД оружия -- bodypart - часть тела Player:OnDie(source, attacker) end Голову сломал, понять не могу...
×
×
  • Create New...