TeamAssault


Пт Апр 24, 2009 10:56
Jumangee
Во всех бочках затычка

TeamAssault ФРПГ

представляет из себя идею воплощения нового способа отыгрывания форумной ролевой игры. Она совмещает в себе такие идеи как графическое отображение текущей ситуации на карте для каждого игрока отдельно, учёт и изменение данных по игре программой (автоматизация игрового процесса) и гибкость позволяющую ДМу влиять на происходящее и дающую возможность проводить игру с использованием автоматизации без потери игрового отыгрыша.
А теперь всё тоже самое, но более простым языком Smile

Игра происходит в замкнутых "лабиринтах" между командами игроков. Каждый игрок обладает целым рядом параметров.

Игровой процесс со стороны игроков будет выглядеть так:
в игровой теме, игроки используя тэг "скрытых сообщений" пишут приказы своему персонажу, например так:
[priv=мастер]
ИДТИ
ВПРАВО
ВПРАВО
ВЫСТРЕЛИТЬ
[/priv]

Всё, приказы отданы, теперь игрок ждёт ответа мастера.

Мастер игры собирает со всех игроков приказы, открывает определённую страницу, указывает файл "сохранёнки" с прошлого хода (хранящийся у него на компьютере) и отправляет на сервер, потом вставляет приказы игроков. Программа генерирует на выходе: новый "сейв" игры и сама добавляет новое сообщение в игровой теме, в котором будут: текущая карта игры для мастера и карта+"лог событий" для каждого игрока (конечно же, эти данные будут "обрамлены" тэгами скрытых сообщений для конкретных получателей).

Как видите, получается довольно "прозрачно" Smile
Если мастеру хочется больше отыгрыша, чтобы игроки писали литературный отыгрыш, то мастер может выступить в роли "переводчика" с литературного языка в "приказы" программе.

Каждый персонаж обладает параметрами:

  • меткость – влияет на шанс попадания в противника из оружия
  • скорость – кол-во возможных действий за один ход
  • скрытность – шанс что противник не заметит вас (пока не реализовано)
  • бросок – дальность и точность броска гранаты (пока не реализовано)

Возможные приказы:
ВСТАТЬ/СЕСТЬ/ЛЕЧЬ – изменение позы (1 / 2 / 3). Стоя в вас легче попасть, лёжа – больше ОД для выполнения действий. Сидя – компромисс. Стоимость зависит от текущей позы.
ВЛЕВО\ВПРАВО – повернуться в строну. Всего сторон – 8. Стоимость: 1 ОД
ИДТИ – сделать шаг вперёд. Стоимость: 1*поза ОД
ОТСТУПИТЬ – сделать шаг назад (не поворачиваясь). Стоимость: 2*поза ОД
СТРЕЙФ ВЛЕВО\ВПРАВО – шаг в бог без поворота. Стоимость: 1*поза ОД
ВЫСТРЕЛИТЬ/ВЫСТРЕЛИТЬ ОЧЕРЕДЬЮ – выстрел по персонажу перед собой (одиночный/очередь). Стоимость 1 ОД / 2 ОД.
РАДИО/РАДИО, ВСЕМ – сказать в рацию что-то, например "РАДИО: Привет!" все игроки одной команды получат "Привет!", а "РАДИО, ВСЕМ: Привет!" получат вообще все игроки.
ПРИЦЕЛИТЬСЯ – команда предшествующая стрельбе – повышает шанс попасть в противника. Если эта команда была "крайней" для вашего персонажа, а в процессе движения чужой персонаж появился в зоне видимости вашего и у него остались свободные ОД, то он произведёт выстрел. Стоимость: 1 ОД.

Шанс попадания в противника при стрельбе зависит от:
1. Дальности противника
2. Его позы
3. Меткости стреляющего
4. Позы стреляющего (поза "лёжа" даёт бонус)
5. Оружия стреляющего

Оружие обладает рядом параметров, такими как минимальная/максимальная дальность, мощность, бронебойность, оптимал, и другие.
Повреждение нанесённое каждой пулей зависит от расстояния (уменьшается линейно) и изначальной мощности оружия.

Предложения, комментарии приветствуются – сейчас ещё есть возможность их учесть!

Для иллюстрации своих слов, вот скриншот так сказать с "альфа-версии", это пример карты которую увидит игрок после завершения хода.


  • test1_player2_map_t1_557G322L.png (7.91 КБ) Просмотров: 1843 раз(а) 
    test1_player2_map_t1_557G322L.png
Пт Апр 24, 2009 17:01
Алекс
1  7  Хозяин подземелья

идея отличная (являющаяся шагом к осуществлению первоначальной задумки автоматизации),
хочу сказать еще, что эту концепцию хотелось бы реализовать системонезависимой (или приспособленной к зрпг, если отталкиваться от моих личных устремлений).
И еще один вопрос: как выглядит визуально ввод ДМом команд в обрабатывающий скрипт?

Пт Апр 24, 2009 17:12
Jumangee
Во всех бочках затычка

Теоретически текущую логическую систему можно переделывать, но практически – очень трудно сказать. Причин тут много, потому, думаю реально реализовать те системы, которые очень похожи, причем по многим факторам.
Ввод комманд ещё "не выглядит", его пока нету. Потому и начал обсуждение на этапе когда разработка частей взаимодействия с игроком и дмом скоро начнётся. Предполагаю, что это будет так:
1 шаг: дм открывает страницу teamassault, выбирает файл с компьютера (файл сейва), нажимает "загрузить"
2 шаг: открывается окно полями ввода команд для каждого игрока, дм каждому вводит команды, нажимает "выполнить"
3 шаг: дм скачивает новый файл сейва, а в теме игры уже создано сообщение от имени ДМа в котором описаны результаты хода

Да, а для создания карт есть модифицированная версия редактора zombie map editor Smile

Сб Апр 25, 2009 13:41
Jumangee
Во всех бочках затычка

Забыл рассказать что интересного остаётся на мастере игры:

1. Карта и предметы на ней
2. Придумывание оружия (от названий до параметров)
3. Начальное создание и размещение игроков. С какими параметрами и оружием игроки начнут – зависит только от мастера.
4. Повышение/понижение параметров в зависимости от результатов действий игроков
5. Обработка "использований" особых предметов (в планах)
6. Игра за NPC
7. Респавн полезных объектов и/или врагов-NPC
8. Респавн убитых игроков

UPD:
Оружие игрокам раздаёт мастер, он же и единственный кто может его игроку поменять/изменить/и т.д.

Сб Апр 25, 2009 19:36
Алекс
1  7  Хозяин подземелья

а игроки будут сохраняться в локальной сохраненке или на сервере?

Сб Апр 25, 2009 19:41
Jumangee
Во всех бочках затычка

Вся информация об игре лежит в одном файле – "сейве" который и загружается мастером на сервер. Формат файла – текстовый, что позволяет вносить правки в него элементарно с помощью блокнота.

Пример файла:
name=test1
w=20
h=20
turn=1
topic=123
dm=2
map:
vb:hb|__:hb|__:hb|vk:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|vk:hb|__:hb|__:hb|vk:hb|__:hb|__:hb|vb:__
vb:|:|:|vk:|vk:hk|__:hk|vk:hk|__:hk|__:|vk:hk|:hk|__:hk|vk:|:hk|__:hk|__:hk|__:|vk:hk|vk:|vb:__
vb:|:hk|__:hk|__:|:|:|vk:|vk:hk|__:hk|__:|:|:|vk:|__:|:|:|:|vk:|vk:|vb:
vb:|:|:|:|:|vk:hk|:|vk:|vk:hk|__:hk|__:hk|vk:|vk:|__:|:|:|:|vk:|vk:|vb:
vb:|vk:hk|:hk|vk:|:|:hk|__:hk|__:hk|__:|:|:|:hk|__:|vk:hk|:hk|__:hk|vk:|:hk|vk:|vb:
vb:hk|__:|vk:|vk:hk|vk:|:|vk:|__:|vk:hk|:hk|vk:|vk:hk|vk:|vk:|:|:|:hk|vk:|vk:|vb:__
vb:|vk:hk|:hk|__:|vk:|vk:hk|__:|:|vk:|__:|vk:|vk:|vk:|__:hk|__:hk|vk:|:|:hk|vk:|vb:
vb:|:hk|__:hk|vk:|vk:|__:|:|vb:hb|:hb|__:hb|vb:|vk:|vk:|vk:hk|vk:|__:hk|__:hk|__:hk|__:|vb:
vb:hk|__:hk|__:|:hk|__:|:|:|vb:|__:|:|vb:|vk:|vk:hk|:|vk:|vk:hk|__:hk|__:hk|vk:|vb:
vb:|vk:hk|vk:|__:|:|:|:|vb:|__:|:|vb:|vk:|:hk|__:hk|__:|:hk|__:hk|__:|vk:|vb:__
vb:|vk:|vk:|:|vk:hk|:hk|vk:|:hb|__:hb|__:|:|:hk|__:hk|vk:hk|vk:|:|:|:|:|vb:
vb:|vk:|vk:|:|vk:|__:|vk:|__:hk|vk:hk|__:hk|__:hk|__:hk|vk:|vk:hk|:|vk:hk|:hk|__:hk|vk:|vb:
vb:|:hk|__:|:|:hk|__:hk|__:|:hk|vk:|:hk|__:hk|__:hk|__:|vk:|__:|:hk|__:hk|__:hk|__:|vb:
vb:|:|:|:|vk:hk|:hk|__:hk|__:hk|__:|:|:|:|vk:hk|:|:|:|:|vk:hk|vk:|vb:__
vb:|vk:|__:hk|__:hk|vk:|:|vk:hk|:hk|__:hk|__:hk|__:hk|__:hk|__:|vk:hk|vk:|__:|:|vk:|__:hk|vb:__
vb:|vk:hk|:hk|__:hk|__:|:|vk:|__:|:|:|:|:|:|vk:|vk:|:|:|:hk|vk:|vb:
vb:|vk:|__:|:|:|:|:hk|__:|:|vk:|__:|:|:|vk:|vk:|vk:hk|vk:|vk:|:|vb:
vb:|vk:|__:|:|vk:|__:|vk:hk|:|:|:|:|vk:hk|:hk|__:hk|__:|vk:|vk:|:hk|__:hk|vb:__
vb:|:|:|:|vk:|__:|vk:|__:|:|:|:|vk:|__:|:|:|vk:|vk:|:|:|vb:
:hb|:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:hb|__:__

team:
id=5|name=test
team:
id=2|name=gg

weapon:
id=2|name=АК-47|ammo=32|ammo_max=32|acc=4|power=50|piercing=25|burst=3|brst_dec=15|minrng=1|maxrng=20|optimal=10
weapon:
id=13|name=АК-47|ammo=32|ammo_max=32|acc=4|power=50|piercing=25|burst=3|brst_dec=15|minrng=1|maxrng=20|optimal=10

player:
id=2|name=Jum|team=5|hp=35|hp_max=35|armor=7|armor_max=7|stealth=3|spd=7|acc=70|throw=3|x=1|y=3|pos=1|dir=8|inventory=
player:
id=13|name=Test|team=2|hp=35|hp_max=35|armor=7|armor_max=7|stealth=3|spd=4|acc=70|throw=3|x=6|y=3|pos=1|dir=4|inventory=

object:
type=MED|x=4|y=4

Сб Апр 25, 2009 19:45
Алекс
1  7  Хозяин подземелья

локальный сейв персонажей усложняет одновременную работу нескольких ДМов

Сб Апр 25, 2009 20:05
Jumangee
Во всех бочках затычка

TA – не та игра где требуется несколько дм-ов, кроме случаев, когда TA будет использован только как тактический движок в более глобальной игре. Объяснюсь.
Представьте что на примере карты нарисованной выше, нету одного из кусков черной стены по периметру – пролом/дверь/...
Так вот, игрок подходит к пролому и... ДМ убирает его с этой карты, а добавляет в другую, т.е. игрок как бы путешествует!
Таким образом, получится что каждая карта это что-то навроде "игровой локации" куда можно прийти, или откуда можно уйти. Таким образом из маленьких карт-кусков можно собрать целый мир Shocked
А так как каждому куску можно сопоставить своего дм-а то как раз таки одновременная работа нескольких дм-ов будет очень и очень серьёзно упрощена. В случае перемещения например, игрока Test в другую локацию, всё что потребуется – это сообщить одному дм-у другому типа:
"к тебе пришёл игрок
player:
id=13|name=Test|team=2|hp=35|hp_max=35|armor=7|armor_max=7|stealth=3|spd=4|acc=70|throw=3|x=6|y=3|pos=1|dir=4|inventory="
Сложно?

Сб Апр 25, 2009 20:20
Алекс
1  7  Хозяин подземелья

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

Сб Апр 25, 2009 20:25
Jumangee
Во всех бочках затычка

Что значит игрок "не у дел"? И что значит к кому обратиться?
К кому должен обратиться владелец художественной книги, чтобы ему прочитали название книги? Smile

Сб Апр 25, 2009 20:42
Алекс
1  7  Хозяин подземелья

ну допустим, есть 4 ДМа, а игрок поиграл у одного и потом три месяца отсутствовал, потом пришел, а состав ДМов сменился и водят уже другие, че делать?

Сб Апр 25, 2009 21:01
Jumangee
Во всех бочках затычка

Ну, всё зависит от ДМ-ов наверное – сохранял ли ктолибо эту строку с описанием этого игрока. Вопрос явно не к системе, а к дмам. Если игрок уходя попросил дм-а сохранить его, то дм может просто сохранить строку с описанием и передать следующему дму. Всё просто.

Сб Май 09, 2009 12:25
DimXmiD
Путник

это напоминает Квейк пошаговый(да что там, это и есть квейк пошаговый =) )

лучше всего сделать игру наподобие CtF(capture the flag) в каждую команду по 5 человек, и играть.

или например survival, поставить на карту N зомби, и статические ловушки, и нужно выжить, или ...

или если кто играл в ВарКрафт, карта Alien (ну что-то типа того)
1 человек становится монстром(но выглядит он как человек) и он должен убить втихую всех своих напарников. Монстры на карте его не трогают(он может превращаться в монстра, и наоборот)
когда он убивает кого нибудь из людей они тоже становятся монстрами... ололо

ну... главное чтоб народу было побольше 2,5 человек) автоматизация процесса это халява для ДМа))

Вс Май 10, 2009 0:12
Jumangee
Во всех бочках затычка

CtF и вообще разные "режимы" можно организовать без проблем
В принципе из названия ясно что игра рассчитана на командную игру, на это сделан упор – каждый игрок видит только зону перед собой, а это означает что игркоки должны обмениваться информацией и действовать сообща. Думаю, в ближайшие дни смогу протестировать игру в "живой" игре и выявить слабые и сильные стороны.

Вс Май 10, 2009 9:54
DimXmiD
Путник

если что я играю)
лучше всего это когда 2 команды первая – люди(марины хехехе) а вторая – зомби( зерги хехехе) и у обоих одинаковые навыки. если зомби убивают людей то они переходят в зомби. (сделать к примеру 5 человек и 3 зомби... или ну в мафию играли все наверное) просто мне кажется в данном случае survival будет поинтереснее

Вс Май 17, 2009 2:32
Jumangee
Во всех бочках затычка

Проект не только не заглох, но и продолжает развиваться. Внесён ряд довольно серьёзных изменений в систему, добавлены гранаты и "активирован" параметр "скрытность".

Теперь игровые данные сохраняются и на сервере, т.е. мастер игры может не хранить файл с данными у себя на компьютере.

Добавлены гранаты – бросать можно в том направлении, куда смотрит персонаж. Для гранат добавлена команда: "ГРАНАТА", её можно использовать без параметров, так и с параметрами – указывая дальность броска (не более чем значение параметра "бросок"). Брошенная граната взрывается _не_сразу_, а в конце хода – когда все игроки выполнили свои ходы. При взрыве граната может уничтожить кирпичные стены в клетке взрыва, и причинить ранение в клетке взрыва и окружающих клетках (см. приложение).

После каждого передвижения вашего персонажа по карте (т.е, например, после каждой команды "ИДТИ") осуществляется проверка – заметил ли вас кто-то из противников. Теперь, персонажа могут и не заметить – если параметра "скрытность" окажется достаточно для этого и вам повезёт. Вероятность зависит от "скрытности" и расстояния до "смотрящего", чем больше "скрытность" и чем дальше – тем лучше.

Внесено изменение в команду "ПРИЦЕЛИТЬСЯ" – теперь, после выполнения команды если перед персонажем есть противник, то будет произведён выстрел по нему, остальные эффекты команды остались прежними.


Вс Май 17, 2009 3:39
Алекс
1  7  Хозяин подземелья

Внесено изменение в команду "ПРИЦЕЛИТЬСЯ" – теперь, после выполнения команды если перед персонажем есть противник, то будет произведён выстрел по нему

а до изменений по кому совершался выстрел?
остальные эффекты команды остались прежними

остальные – это какие?

Добавил через 7 минут 53 секунд:

по поводу формулы скрытности, которую мы не успели обсудить в аське. Она имеет вид неравенства: х*у > у, и, если сократить обе части на у, то получится х*1 > 1, т.е. х > 1. Иными словами, переменная у абсолютно ни на что не влияет, несмотря на то, что присутствует в формуле 2 раза.

Вс Май 17, 2009 12:09
Jumangee
Во всех бочках затычка

Алекс
Читаем первое сообщение внимательнее
По поводу формулы – она выглядит не совсем так, а потому – ты не прав

Вс Май 17, 2009 17:25
Алекс
1  7  Хозяин подземелья

По поводу прицеливания я все равно не понял, но больше спрашивать не буду, опять отошлешь куда-нибудь внимательно перечитать что-нибудь.
По поводу формулы, ты поменял ее еще раз, после того, как показал мне в асе?

Добавил через 45 минут 49 секунд:

то, что там есть генерация случайных чисел, ничего не меняет. Переменная "у" по-прежнему не играет роли, т.е. вероятность генерации числа в данном диапазоне не зависит от "у". При различных "у" вероятность будет постоянной.

Вт Май 19, 2009 12:05
Jumangee
Во всех бочках затычка

Готова первая версия руководства игрока. Читать можно здесь:
http://wiki.jumangee.net/wiki/TA_FRPG:PlayerGuide
Комментарии, идеи и предложения приветствуются

Вт Май 19, 2009 14:45
Pans
Бывалый авантюрист

Заметил пару "ошибок":
Придумывание оружия...
Может лучше реализация.
Респавн полезных....
Респаун.

Признаться, очень понравилась идея. Внесение разнообразия в ФРПГ. Темболее такую систему можно применить к книграм...


_________________
У счастья нет завтрашнего дня, есть только настоящее, и то не день, а лишь мгновенье...
When you can live forever, what do you live for?
Ср Май 20, 2009 18:03
Jumangee
Во всех бочках затычка

Рад что заинтересовал Smile

У мну новости Smile
Добавил в систему дополнительный тип "перегородок" – т.н. "окна"
Это конечно обширное понятие, подразумевающее за собой "заборы" и защиту из мешков, т.е."частичную защиту"
Через такую перегородку можно видеть и стрелять, но нельзя пройти. В игрока находящегося "за окном" труднее попасть.

В систему добавлены т.н. "свойства карты". Они предназначены для мастеров, с их помощью можно будет менять свойства системы для игры. Сейчас можно указать свой "тайлсет" – поменять картинки использующиеся для рисования карты.

Ср Май 20, 2009 18:43
Pans
Бывалый авантюрист

Круто! А функция видоизменения персонажей предусматривается?


_________________
У счастья нет завтрашнего дня, есть только настоящее, и то не день, а лишь мгновенье...
When you can live forever, what do you live for?
Ср Май 20, 2009 22:47
Jumangee
Во всех бочках затычка

Сейчас, как раз с помощью свойства tileset можно поменять вид всех персонажей, но, думаю, можно сделать вид персов более "уникальными", но надо ли?

Добавил через 11 минут 36 секунд:

Вопрос – имеет ли смысл хранить дополнительные, дм-ские описания к каждой клетке карты? Это может пригодиться для более литературного описания событий, туда например, можно писать о ловушках

Чего бы ещё хотелось в такой системе? Чего не хватает?

Ср Май 20, 2009 23:03
Pans
Бывалый авантюрист

Музыки. Smile


_________________
У счастья нет завтрашнего дня, есть только настоящее, и то не день, а лишь мгновенье...
When you can live forever, what do you live for?

Разделы форума