San Andreas Multiplayer

San Andreas Multiplayer
Тип модифікація
Автор Kalcor (Kye), Spookie
Розробник SA-MP Team
Перший випуск 0.1 (10 травня 2006)
Стабільний випуск 0.3.7 R5 (15 листопада 2022; 16 місяців тому (2022-11-15)[1])
Нестабільний випуск 0.3.8 (4 листопада 2017; 6 років тому (2017-11-04)[2])
Платформа багатоплатформність
Операційна система Windows
Linux (тільки ігровий сервер)
Мова програмування Pawn
Розмір
Доступні мови англійська
Українська мова ні
Стан розробки не підтримується
Ліцензія вільна[3]
Вебсайт sa-mp.app

San Andreas Multiplayer (скорочено SA:MP) — безкоштовна багатокористувацька модифікація для відеогри Grand Theft Auto: San Andreas у версії для Windows з закритим початковим кодом. Розроблялася командою «SA-MP Team» на добровільній основі, провідними програмістами проекту є дві особи з нікнеймами Kalcor (Kye)[недоступне посилання] і Spookie[недоступне посилання].

Історія[ред. | ред. код]

Vice City Multiplayer[ред. | ред. код]

За основу модифікації було використано аналогічну модифікацію попередньої гри серії, Grand Theft Auto: Vice City під назвою Vice City Multiplayer, випущену у квітні 2005 року. Команда творців складалася з кількох осіб, відомих у спільноті модифікаторів Grand Theft Auto, на чолі з kyeman (Kye) (наразі відомий як Kalcor) — значущою особою у спільноті модобудівничих GTA. Надаючи знімки екрана та відео, які демонстрували плин розробки (що відбувалася достатньо швидко), модифікація набула загального визнання серед GTA-спільноти та з невеликим форумом залучила близько 120 користувачів перед переїздом на новий хостинг.

Після ряду публічних бета-тестів, які набули величезної популярності (багатьом навіть доводилося чекати звільнення місць на бета-серверах), Vice City Multiplayer було нарешті випущено і майже відразу оновлено до версії 0.1d, до кінця вже маючи відкритий початковий код. Цей код було використано іншою командою розробників для продовження розвитку VC-MP (цей проект досі розвивається і наразі має версію 0.4), а команда kyeman'а (Kalcor'a) розпочала розробку SA-MP. Крім того, теперішні розробники VC-MP роблять багатокористувацьку гру як для оригінальної гри Grand Theft Auto: Vice City, так і для модифікації, що переносить місто Ліберті-Сіті на рушій гри.

San Andreas Multiplayer[ред. | ред. код]

Розробка SA-MP привернула великий інтерес шанувальників ігор серії GTA. У квітні 2006 року розділу на форумі GTAForums.com стало недостатньо, і розробники вирішили відкрити власний форум. У кінці березня розробка вже була повноцінним мультиплеєром і, після деяких закритих бета-тестів, у квітні-травні було проведено три публічних бета-тести. За кілька годин після третього бета-тесту, 10 травня 2006 року kyeman (Kalcor) заявив, що проект повністю готовий до випуску. Однак у релізі виявилося досить багато багів, і за кілька днів було випущено оновлення до версії 0.1b. Після цього користувачі продовжили вивчати мову програмування Pawn і створювати різноманітні ігрові режими, а самі розробники зникли на деякий час. Лише наприкінці червня в повідомленні на своєму блозі вони заявили, що розробка все ще триває, хоча в них дуже мало часу. Розробники продемонстрували кілька скріншотів можливості додавання об'єктів на карту. Ходили чутки, що незабаром вийде версія 0.1c, але до вересня нової інформації від розробників не надходило. Лише наприкінці вересня невелике оновлення блогу свідчило, що розробка триває, і було представлено невеликий список нововведень.

2 жовтня 2006 року з'явилася інформація про те, що готується нова версія 0.2. Інформацію було підкріплено великим списком нововведень і відеороликом, що показує безліч нових можливостей. Це викликало хвилю інтересу серед шанувальників SA-MP, яких тоді налічувалося вже кілька тисяч по всьому світу. Однак після цього нової інформації не було кілька місяців. Розробка дуже затягнулася і, після декількох невеликих оновлень, 9 березня 2007 року розробники представили на своєму блозі прев'ю версії 0.2 з великим списком змін і двома відеороликами, знятими на закритих бета-тестах. Також було оголошено, що незабаром буде проведено кілька публічних бета-тестів. До початку першого публічного бета-тесту пройшов іще місяць. До того часу ажіотаж з приводу нової версії досяг неймовірно великого рівня, і розробники вирішили не оголошувати про бета-тестування на своєму блозі. Натомість напередодні Великодня, 8 квітня, на сайті розробників з'явилася пасхалка у вигляді посилання, яке через кілька перенаправлень виводило користувача на IRC-канал бета-тестування, що розпочалося ввечері того ж дня. Спочатку було відкрито один сервер на 100 місць, але незабаром було запущено ще декілька серверів. Це бета-тестування тривало до 11 квітня. Наступний бета-тест пройшов лише за місяць і тривав кілька годин. Метою його було протестувати можливість сервера витримувати навантаження до 200 гравців. Після цього на блозі kyeman (Kalcor) оголосив, що буде проведено ще щонайменше два бета-тести. Наприкінці травня пройшов перший з них, після чого у блозі було оголошено деякі нововведення. 3 червня 2007 року розробники випустили RC-версію клієнта і сервери 0.2 на чотири місця, тим самим дозволивши користувачам розпочати розробку й оновлення режимів для нової версії. Протягом наступних двох тижнів було випущено ще два реліз-кандидати, і після четвертого бета-тестування, що перейшло у п'яте, 20 червня 2007 року SA-MP 0.2 була офіційно випущена. Але розробка не завершилася, і за кілька днів уже було випущено версію 0.2.1 з деякими оновленнями та виправленнями.

24 червня 2007 несподівано для користувачів команда SA-MP оголосила на своєму сайті, що припиняє роботу над модом і будь-яку його підтримку, бо не мають більше сил і можливостей боротися з людьми, які, не боячись нічого, розробляють чіти та експлойти для SA-MP. Миттєво в Інтернеті була організована петиція з вимогою до розробників повернутися до роботи над модом. За кілька годин під петицією підписалося кілька тисяч чоловік. Це спрацювало, і менше ніж за добу роботу всіх серверів SA-MP було відновлено. Наступного дня було випущено оновлення для сервера, що закриває експлойт, попереджує падіння серверу і містить вбудований античіт SAC (англ. SA-MP Anti-Cheat), що не дозволяє гравцям заходити у гру з чітерськими трейнерами або плаґінами для SA-MP. За місяць, 29 серпня 2007 року, після двох відкритих бета-тестів було випущено версію 0.2.2 і було оголошено про початок роботи над версією 0.3. А наступного дня, 30 серпня, було випущено клієнт SA-MP версії 0.2.2 R2, що усуває кілька помилок, знайдених у версії 0.2.2 відразу ж після релізу.

13 травня 2008 року, несподівано для всіх, команда SA-MP закрила сайт і оголосила про кінець розробки SA-MP. За кілька днів сайт був відновлено, і на ньому з'явилася новина про закінчення розробки SA-MP. Вночі 23 травня було відновлено форум. 21 червня 2008 року для вирішення проблем з безпекою було випущено версію 0.2.2 R3. Також в оновленні були виправлені деякі баги і збільшено обмеження кількості моделей машин. Оновлення стосувалося лише клієнта.

20 листопада 2008 року було випущено версію SA-MP 0.2x. Більшість змін не були значними для звичайного гравця, за винятком поліпшення синхронізації та усунення проблем з вильотом клієнта. У вкладці «Internet» сервери версії 0.2.2 більше не з'являються. Більшість серверів переведено на версію SA-MP 0.2x. Також було оголошено про розробку версії SA-MP 0.3. Раніше обіцяну версію SA-MP 0.2.5 випущено не буде.

14 серпня 2009 року розпочалися публічні бета-тестування SA-MP 0.3. 15 серпня відбулося друге бета-тестування, в якому взяло участь понад 400 гравців. 19 жовтня було випущено фінальну версію 0.3a. Згодом було випущено кілька незначних оновлень в лінійці даної версії. 11 серпня 2010 року розпочалося тестування версії 0.3b, а її випуск відбувся 21 серпня 2010 року. 28 листопада 2010 року до мережі потрапили клієнт і сервер (Windows і Linux) RC2-версії 0.3c.

На початку 2012 року вийшла версія SA: MP 0.3d. У травні 2012 року вийшов SA: MP 0.3e. На початку 2013 року вийшов клієнт SA: MP 0.3x. 13 лютого 2014 року офіційно вийшли клієнт і сервер 0.3z. 18 січня 2015 року вийшла перша бета-версія SA: MP 0.3.7 RC-1. Розробники урізноманітнили гілку 0.3. До даної версії було внесено значні зміни.

1 травня 2015 року вийшов SA: MP 0.3.7. 13 липня 2015 року вийшло оновлення для сервера SA: MP 0.3.7 R2.

4 листопада 2017 року розробник Kalcor заявив про випуск бета-версії SA: MP 0.3.8 R1, але до фінальна версія не була опублікована, натомість 13 січня 2018 року анонсували нову версію SA: MP 0.3.DL, яка дає можливість розробникам ігрових серверів завантажувати модифікації на сервер (нові моделі персонажів, об'єктів).

Історія версій[ред. | ред. код]

Аудиторія мультиплеєру
Регіон Аудиторія
СНД СНД 55.6 %
США США 21.9 %
Німеччина Німеччина 4.3 %
Польща Польща 3.1 %
Бразилія Бразилія 2.8 %
Туреччина Туреччина 1.4 %
Інші 10.9 %

GTAU-MP[ред. | ред. код]

2008 року розробники San Andreas Multiplayer видали спеціальну версію клієнту мультиплеєру, розраховану на гру з модифікацією GTA United, яка замінює оригінальну карту штату Сан-Андреас містами Ліберті-Сіті та Вайс-Сіті[10]. За основу було взято версію мультиплеєру 0.2x. Для модифікації було виділено спеціальний розділ офіційного форуму та сайт, обидва з яких наразі закрито.

Оскільки зміни торкнулися тільки процесу побудови графіки, то решта можливостей SAMP залишилися тими самими — скрипти пишуться мовою Pawn. Для GTAU-MP було написано декілька стандартних ігрових режимів, які й ідуть разом із сервером. Наприклад, великий режим Deathmatch, який дозволяє вільно пересуватися Ліберті-Сіті та Вайс-Сіті, наповнює їх транспортом і дозволяє вибирати острів появи.

Наразі проект офіційно не підтримується. Після виходу в жовтні 2009 року версії SA-MP 0.3 модифікацію нової версії для GTAU так і не було випущено. Останню доступну версію t3 випущено 19 липня 2009 року.

Літом 2020 року, було закрито офіційний форум sa-mp.

Ігровий процес[ред. | ред. код]

Всі ігрові сервери SA-MP відносяться до одного чи кількох жанрів. Найпоширенішими жанрами є:

  • Дрифт (англ. Drift) — режим, схожий на політ, в якому гравці заробляють очки, контролюючи заноси на спеціально розроблених картах
  • Перегони (англ. Race), беручи участь у яких, необхідно виграти якомога більше коштів
  • Рольова гра (англ. Roleplay) — найпопулярніший режим, мета якого полягає в імітуванні реального життя
  • Стантрайдинг (англ. Stunt) — додано предмети для виконання акробатичних трюків на транспортних засобах
  • Deathmatch — кожен грає сам за себе, мета — вбити якомога більше супротивників
  • Freeroam — вільна гра, суміш декількох режимів
  • Team Deathmatch — гра ведеться в командах, мета — вбити якомога більше гравців команди-суперниці
  • Truck — на сервері присутні лише вантажівки та причепи, мета — розвозити товари вантажівкою та заробити собі на життя

Деякі елементи ігрового процесу містять контрольні та початкові точки, бонуси, зброю та різноманітні об'єкти — від рамп до вибухових діжок. Багато онлайн-серверів містять нетипові ігрові режими, що використовують скриптовий рушій, включений до SA-MP. Прикладами можуть бути такі ігрові режими, як Freeroam, де гравці можуть вільно пересуватися картою Сан-Андреаса, чи змагальні режими на кшталт Race, Destruction / Demolition Derby, Team DeathMatch і Fallout, де персонажі гравців опиняються в повітрі на скляній платформі, що раптово падає після показу, гравці мають стрибати шматками платформи, а останній вцілілий виграє. Принцип Fallout подібний до Hay, де гравці мусять вилазити на копиці сіна та бути на першій з них. Останній режим також демонструє, як багато ігрових режимів і скриптів можна створити на скриптовому рушії SAMP із нескінченними можливостями та різновидами.

Існує багато специфічних жанрів ігор і спільнот, як-от гра ролі з реального життя, класична рольова гра й ігрові спільноти, що пропонують широке розмаїття різних ігрових режимів, іноді разом на одному сервері. Сьогодні середня кількість ігрових серверів Сан-Андреаса в San Andreas Multiplayer сягає понад 4000 з загальною кількістю гравців онлайн 19—23 тис. одночасно.

Рольова гра[ред. | ред. код]

Рольова гра (англ. Role-Playing Game, RPG) — гра, в якій гравці створюють єдину історію з особистостями своїх персонажів. В інших іграх (як-от Metin2) поняття ролі загалом не розуміється. Хоча більшість Інтернет-ігор називається рольовими, вони навіть віддалено не мають з ними нічого спільного. В SA-MP цей термін називається RolePlay. Тому рольові сервери не є окремими «рольовими іграми». GTA San Andreas — багатокористувацька гра за грою.

Починаючи гру на багатьох серверах, гравець безробітний, але має деякі кошти. Йому потрібно знайти професію та заробити гроші. У грі він зіткнеться з такими поняттями, як «за роллю» (IC), «поза роллю» (OOC) та «суперечить ролі» (NON-RP). Їх значення зазначено нижче:

In-Character
Життя не гравця, а його персонажа. Це не гра, в яку він грає, це життя, яким живе його персонаж.
Out-of-Character
Речі поза життям персонажа. Наприклад, речення «Якою клавішею сісти на пасажирське сидіння?» не є рольовим.
NON-RP
Персонаж не зображає реальну людину. Прикладом цього є відкриття вогню, озираючись при цьому.
Суміш
Наприклад, гра позаігрових речей всередині гри.
Метагра[ru]
В реальному житті ніхто не знає нічиїх імен до особистого знайомства. У грі персонаж також не повинен знати імен інших. Якщо хтось, не знаючи когось, звертається до нього на ім'я чи іншим чином поводиться так, ніби знає його, це метагра.
Павергра[en]
Порушення балансу та ролі шляхом виконання дій, які неможливо здійснити в реальному житті. Наприклад, взяти будь-який з усіх типів транспортних засобів у грі.

Часто використовувані команди на рольових серверах:

/b [текст]
Нерольова команда. Тексти можуть читатися на відстані.
/s [текст]
Команда крику. Сказане можна почути на відстані. Рольова команда.
/do [текст]
Використовується для того, щоб показати, доповісти чи нагадати іншим гравцям про те, що відбувається. Рольова команда. Зазвичай використовується, коли ігрової графіки недостатньо.
/me [текст]
Рольова команда, що використовується для позначення власних дій. Відображається, наприклад, як [Ім'я] [текст]. Використовується, коли ігрова графіка не є адекватною. Наприклад, /me дивиться крізь вікно автомобіля, /me загоряється, /me посміхається.
/help
Команда, за допомогою якої можна дізнатися про рольові та нерольові команди, а також правила серверу. Зазвичай містить усі команди на сервері.

Можливості[ред. | ред. код]

Скриптинг[ред. | ред. код]

Завдяки скриптовому рушієві мовою Pawn, вбудованому в SA-MP, будь-який користувач із певними знаннями у програмуванні може розробляти власні ігрові режими та фільтрувальні скрипти. Також сьогодні існує велика кількість ігрових режимів у вільному використанні, зокрема багато великих рольових і MMORPG режимів, як-от PEN1:LS, The Godfather і GTO. Pawn дозволяє будь-кому створювати цілі місії в межах ігрового світу GTA San Andreas. Кожний ігровий режим або фільтрувальний скрипт використовується сервером у вигляді окремого файлу. В будь-який момент може бути запущено лише один ігровий режим і не більше 16 фільтрувальних скриптів. Режим, як правило, виконує основні функції ведення ігрового процесу, тоді як фільтрувальні скрипти відповідають за сторонні функції серверу, які можна вмикати та вимикати в будь-який момент без шкоди для ігрового процесу. Втім, таке розділення вельми умовне й нічого не заважає перенести всю функціональність до режиму чи навпаки, до фільтрувальних скрипів. Скриптовий API серверу містить як активні функції, що виконується в певний момент, так і перехоплювачі події, що виконуються автоматично під час певних подій, як-от підключення гравця до серверу, запуск або зупинка режиму тощо.

Можна розділяти ігровий режим і фільтрувальні скрипти. Попри відсутність систематичних відмінностей між режимом і кодуванням скрипту є важливі подробиці. Під час входу до гри спочатку відкривається перший режим у server.cfg, а лише потім побічні режими. Щойно режим завантажується до папки gamemodes, він записується як gamemode0 (без розширення) з server.cfg. Скрипти відокремлюються від фільтрувальних скриптів на основі рядка gl_actions. Якщо замість gamemode0 написано gamemode1, скрипти не працюватимуть.

Файли скриптів є файлами коду, які можна можна додати поза режимом замість додавання до самого режиму. За необхідності їх можна активувати та дезактивувати без вимикання режиму. Це спрямовано на полегшення режиму. Якщо всі файли скриптів вставити до режиму, то їх завантаження та редагування займатиме час.

Конфігураційні файли[ред. | ред. код]

Налаштування модифікації для мережевої гри у Grand Theft Auto: San Andreas під назвою San Andreas Multiplayer (скорочено SA-MP) можливе як на боці сервера, так і на боці клієнта. Перший спосіб налаштувань впливає на всіх гравців певного сервера, тоді як другий — лише на того гравця, який зробив свої налаштування. Відповідно, серверні параметри зберігаються у файлі server.cfg[11], а клієнтські — у файлі sa-mp.cfg[12]. Формат обох файлів подібний до INI файлів, але дещо спрощений, наприклад, не використовується розподіл параметрів за секціями.

Режими[ред. | ред. код]

Стандартний набір серверу містить декілька простих режимів і фільтрувальних скриптів, які демонструють застосування основних функцій мультиплеєру. Багато поширених сьогодні режимів є тією чи іншою мірою модифікаціями стандартних режимів. До основних ігрових режимів відносяться:

Barron або RC Barnstorm
Ігровий режим з метою знищення транспортних засобів з дистанційним керуванням інших гравців
Grand Larceny (Grandlarc)
Офіційний режим жанру Freeroam, створений SA-MP Team
Rivershell
Режим жанру Team DeathMatch на річці, розташованій у Сан-Фієрро

Команди серверу[ред. | ред. код]

Скриптом режиму задаються ігрові команди, які починаються з символу / та використовуються для полегшення гри, наприклад, /help — допомога, /kill — самогубство, /stats — статистика. В кожному режимі свої команди, серед яких телепортація, довідка, початок перегонів, створення маркеру, адміністративні команди й інші.

Плагіни[ред. | ред. код]

Починаючи з версії 0.2, мультиплеєр підтримує можливість створення плагінів, які розширюють можливості серверу. Найпопулярнішими є плагіни для роботи з СКБД MySQL, чатами IRC-мережі та розсиланням електронних листів протоколом SMTP.

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. SA-MP 0.3.7 R4 Release (англійською) .{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)[недоступне посилання]
  2. SA-MP 0.3.8 is released! (англійською) .{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)[недоступне посилання]
  3. SA-MP Client and Server Software License Agreement (англійською) . The SA-MP Team. Процитовано 15 січня 2017. {{cite web}}: Недійсний |мертвий-url=dead (довідка)
  4. https://wiki.sa-mp.com/wiki/Introduction#What_is_SA:MP.3F
  5. Changelog — SA-MP Wiki (англійською) .{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)[недоступне посилання]
  6. News and Updates — SA-MP Forums (англійською) .{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)[недоступне посилання]
  7. strftime. C++ Reference (англійською) . Архів оригіналу за 28 січня 2018. Процитовано 29 січня 2018.
  8. Демонстрація нових функцій SA:MP 0.3.8 на YouTube
  9. Kalcor (22 листопада 2019). SA-MP 0.3.7 R4 client update (strongly recommended) [Клієнтське оновлення SA-MP 0.3.7 R4 (суворо рекомендовано)]. SA-MP Forums (англійською) . Процитовано 1 січня 2020.{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)[недоступне посилання]}
  10. Сайт модифікації GTA United. moddb.com. Архів оригіналу за 20 квітня 2019. Процитовано 20 квітня 2019.
  11. Server.cfg. SA-MP Wiki (англійською) .{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)[недоступне посилання]
  12. Sa-mp.cfg. SA-MP Wiki (англійською) .{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)[недоступне посилання]

Посилання[ред. | ред. код]