PDA

Просмотр полной версии : [Вопрос] реализация "боев"



Batya_Montes
26.07.2017, 14:26
привет, ребята
встал недавно вопрос.. а возможно ли такое в сампе ?
суть в том, что при входе на сервер игрок отправляется в лобби, подтверждает вход в игру, а дальше как только набирается допустим 50 человек система запускает игру, но не одну. она должна запускать игру каждый раз как только наберется 50 игроков, но отбор так же будет содержать в себе балансер.
по сути это можно описать 2 словами - зашел в ожидание боя, команда сформировалась, отправились в бой.

- - - Добавлено - - -

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

wAx
26.07.2017, 15:59
лол пубг в сампе? Как же оригинально. Если вопрос заключается только в том можно ли это реализовать, то да, можно.

Batya_Montes
26.07.2017, 18:27
лол пубг в сампе? Как же оригинально. Если вопрос заключается только в том можно ли это реализовать, то да, можно.

была идея его сделать, но давно отпала
режимы свои будут, главное узнать было реально сделать систему ожидания или нет ;)

Seviel
27.07.2017, 20:39
Отправляешь в TogglePlayerSpectating(при этом можешь отправить людей смотреть пейзажи прекрасного штата Сан Андреас InterpolateCameraPos, InterpolateCameraLookAt), ждешь пока наберутся нужное количество спавнишь людей на базе своей команды, при этом в переменной записываешь в какую тиму кинул, а лучше сразу через SetSpawnInfo, вроде ясно выразился как это сделать, подсчет игроков делай в OnPlayerConnect and OnPlayerDisconnect, какую-нибудь переменную и при подключении просто прибавляй к этой переменной(++), а при отключении отнимай(--), также в OnPlayerConnect делай проверку на нужное количество игроков для начала боя, ну как-то так.

Batya_Montes
28.07.2017, 09:52
Отправляешь в TogglePlayerSpectating(при этом можешь отправить людей смотреть пейзажи прекрасного штата Сан Андреас InterpolateCameraPos, InterpolateCameraLookAt), ждешь пока наберутся нужное количество спавнишь людей на базе своей команды, при этом в переменной записываешь в какую тиму кинул, а лучше сразу через SetSpawnInfo, вроде ясно выразился как это сделать, подсчет игроков делай в OnPlayerConnect and OnPlayerDisconnect, какую-нибудь переменную и при подключении просто прибавляй к этой переменной(++), а при отключении отнимай(--), также в OnPlayerConnect делай проверку на нужное количество игроков для начала боя, ну как-то так.

Это да, но количество одновременных боев (команд) может быть разное. Все зависеть от онлайна будет. Одновременно может быть 1 бой, а может и 10. Вообще, я думал, через итераторы foreach'a сделать айдишники команд. А разделять игроков по карте - через виртуальный мир. Ибо по другому завершение боев и подсчет статистики не вижу как сделать ;(