Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.09.2015, 14:19   #1
jonikster
Форумчанин
 
Регистрация: 28.10.2014
Сообщений: 216
По умолчанию Создание боя в онлайн-текстовой игре

Приветствую всех.
Интересует такой вопрос:
Какие знания по php и mysql нужно иметь, что бы в игре сделать такой бой:
17:41:56 HuskaR [14] (28/40) идет на п.18
17:41:57 BigStan [18] (1/30) идет на п.3
17:42:04 HuskaR [14] (28/40) идет на п.16
17:42:31 BigStan [18] (1/30) идет на п.7
17:42:32 HuskaR [14] (28/40) идет на п.14
17:42:59 BigStan [18] (1/30) стреляет одиночными с расстояния 7, нанеся урон в корпус на 31 HuskaR [14] (-3/40) HuskaR выбывает из строя. BigStan: Я думаю, что это ещё не всё. П: 7
17:42:59 BigStan [18] (1/30:31) vs HuskaR [14] (-3/40:0)
BigStan - 360 опыта
Пробовал делать, но ничего не выходит.
Плюс не совсем представляю, если бой ПВП, как сделать взаемодействие с игроками.
Знаю:
Основы php (переменные, условия, циклы, массивы, работа с mysql),
Некоторые функции (time и другие).
Ну и ООП естественно знаю.
Бои должны быть 2 команды. одна слева, другая справа.
Я привел только бой 1 на 1. Вот пример командного:
09:19:45 Nastavnik [32] (100/100) нападает на CCleaner [29] (90/90). Бой начался
09:19:48 moskvik [30] (57/110) в ходе боя нападает на Nastavnik [32] (100/100)
09:20:04 Nastavnik [32] (100/100) ускоряясь перемещается на позицию 12, танк
09:20:13 Special [31] (100/100) в ходе боя нападает на Nastavnik [32] (100/100)
09:20:13 CCleaner [29] (90/90) идет на п.4, танк
09:20:15 moskvik [30] (57/110) идет на п.3, танк
09:20:33 Nastavnik [32] (100/100) идет на п.10
09:20:41 CCleaner [29] (90/90) призывает в бой Альфа (120/120)
09:20:42 Альфа [n/a] (120/120) идет на п.10
09:20:45 moskvik [30] (57/110) идет на п.6, танк
09:20:55 Special [31] (100/100) ускоряясь перемещается на позицию 12, танк
09:21:02 Nastavnik [32] (100/100) идет на п.7, танк
09:21:09 Альфа [n/a] (120/120) промахивается в голову Nastavnik [32] (100/100). Aтака прыжком
09:21:15 moskvik [30] (57/110) стреляет с расстояния 1 и попадает в укрытие 7, нанеся урон 83
09:21:16 CCleaner кидает гранату в позиции 7-8. Урон получили: Nastavnik(4) . Оглушение
09:21:23 Special [31] (100/100) стреляет очередью с расстояния 5, но промахивается в корпус Nastavnik [32] (96/100). П: 12
09:21:36 Альфа [n/a] (120/120) идет на п.7
09:21:42 moskvik [30] (57/110) стреляет с расстояния 1 и попадает в укрытие 7, нанеся урон 78
09:21:45 CCleaner кидает гранату в позиции 7-8. Урон получили: Nastavnik(2) Альфа(2) . Оглушение
09:21:50 Special [31] (100/100) идет на п.8
09:22:09 moskvik [30] (57/110) стреляет очередью с расстояния 1, нанеся урон в голову на 63 Nastavnik [32] (31/100). Разрыв.эффект: 4. П: 6
09:22:12 CCleaner [29] (90/90) призывает в бой Дроид "Чак Норрис" Chaotic (100/100)
09:22:13 Дроид "Чак Норрис" Chaoti [n/a] (100/100) идет на п.7
09:22:17 Special [31] (100/100) стреляет очередью с расстояния 1, но промахивается в голову Nastavnik [32] (27/100). П: 8
09:22:24 Nastavnik [32] (27/100) идет на п.3, танк
09:22:26 Альфа [n/a] (118/120) идет на п.3
09:22:26 CCleaner [29] (90/90) идет на п.0
09:22:36 moskvik [30] (57/110) стреляет очередью с расстояния 3, нанеся урон в корпус на 42 Nastavnik [32] (-15/100). Разрыв.эффект: 8, пуля разносит полкорпуса. Nastavnik выбывает из строя. moskvik: ВУХАХАХАХАХАХАХАХАХХАХУХАААХАХ. П: 6
09:22:37 moskvik [30] (57/110:117) CCleaner [29] (90/90:1) Special [31] (100/100:0) Альфа [n/a] (118/120:0) Дроид "Чак Норрис" Chaoti [n/a] (100/100:0) vs Nastavnik [32] (-23/100:0)
Special - 0 опыта
moskvik - 78 опыта
CCleaner - 0 опыта
Заранее благодарен.
jonikster вне форума Ответить с цитированием
Старый 22.09.2015, 16:36   #2
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

Как минимум минимальные, хорошая база. А так вообще тут и не скажешь, ведь по этому тексту особо не скажешь на сколько там все закручено.

За "сценой" бывают простые "if, else" или же многослойные алгоритмы.

Еще важный момент это на сколько глубоко там все.


Вот на пример, если я стреляю в противника их лука.
Можно сделать просто, попал или нет. Если ды то убил а нет и нет.

А можно более сложно, попал в руку -10 от жизни в ногу -15 и т.д.

То при таком раскладе, нужно с 20-30 раз больше строк кода. Грубо говоря.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
pompiduskus вне форума Ответить с цитированием
Старый 22.09.2015, 16:45   #3
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

а еще лучше - не заниматься этой херней... текстовые онлайн бои.. .что за чушь
сейчас и графическими не всех заманишь...

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

грамотно поставленный вопрос - 90% решения
ADSoft вне форума Ответить с цитированием
Старый 22.09.2015, 18:17   #4
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Цитата:
Сообщение от ADSoft Посмотреть сообщение
а еще лучше - не заниматься этой херней... текстовые онлайн бои.. .что за чушь
сейчас и графическими не всех заманишь...
Для саморазвития вполне.
Потом можно привинтить сокеты, шмот на персонажах, саппорт (игровой, а-ля несколько персонажей в одном бою), командные бои, баталии.
Такие игры не стоит недооценивать, офисный планктон с удовольствием играет.
А затем и графику привинтить примитивную — упрощенные пошаговые стратегии годно подходят.

UPD, да, по теме: ООП надо знать, начальные знания http и функциональщины (хз как в пыхе с ним) будут плюсом. Для стартового представления рекомендую гуглить лекции Яндекс-ШРИ, про все три темы рассказывал Иван Бибилов в 2013 году. Дальше уже можно и серьезней литературу читать на эти темы.
п.с. Лекция про ООП у него ваще ад — за полтора часа рассказал лучше, чем в универе это вдалбливали 5 лет.
Alar, верни репу!

Последний раз редактировалось Naive; 22.09.2015 в 18:22.
Naive вне форума Ответить с цитированием
Старый 22.09.2015, 19:11   #5
jonikster
Форумчанин
 
Регистрация: 28.10.2014
Сообщений: 216
По умолчанию

Уважаемые . Я задал вопрос, что бы вы ответили. А не несли бред.
Такая игра мне потому, что незрячие из онлайновых браузерных мы можем только в такое играть. звуковых мало. А та игра, где есть такой бой, требует годы прокачки.
jonikster вне форума Ответить с цитированием
Старый 22.09.2015, 19:41   #6
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

jonikster, до тебя пытаются донести, что из твоего сумбурного описания вообще ничего непонятно – не ясна ни логика, ни структура, ни принцип игры.
Соответственно, ты получаешь такие же невнятные ответы, как и сам твой вопрос – ибо «Garbage In – Garbage Out»(GIGO) работает всегда и во всём, что касается алгоритмов и программирования.
Не торопись, соберись, хорошо всё продумай – и выдай нормальное детальное пошаговое описание игры, что-то типа хорошего грамотного ТЗ.
В этом случае, возможно, тебе здесь смогут чем-то реально помочь.
Andkorol вне форума Ответить с цитированием
Старый 22.09.2015, 20:35   #7
jonikster
Форумчанин
 
Регистрация: 28.10.2014
Сообщений: 216
По умолчанию

Надеюсь описания игры хватит. Еще добавлю. В игре после хода дается 27 сек запрета на ход. у меня будет походил 1, потом второй, и так по всем участникам боя. т.к для времени, знакомый сказал, что нужен js. а я его ненавижу.
Вот описание боя из игры:
Бой представлен двумерной системой, в которой вы можете передвигаться (по оси Y от 0 до 20), стрелять из огнестрельного оружия и арбалетов, сходиться в рукопашном бою, проставляя блоки и применяя различные навыки, кидать во врагов гранаты и применять стимпакеты для лечения, звать в бой животных (только фракция доггеры) и клановых боевых дроидов.

img
Окно боя. Два выпадающих списка - враги и перемещение. Нанести удар в рукопашном бою можно только находясь в одной позиции с противником. см. ниже

img
Cхема боя. Противник-бот начинает бой всегда с позиции 0, вы находитесь на позиции 20. за ход вы можете сделать ход вверх по оси Y или вниз. Т.е. нажав на Бег -2 вы переместитесь из позиции 20 в позицию 18. В это же время противник переместится из позиции 0 на позицию 2. Дабы ускорить процесс боя введена кнопка "Ход", нажав на которую противник не будет ожидать 27 секунд пока вы сделаете свой ход, а сразу будет к вам приближаться.


Стрельба ведется на дистанции, указанные в описании к конкретному оружию, т.е. при стрельбе на заведомо дальнее расстояние вы не попадете.
Стрелять и бить можно в голову, корпус и ноги.

Корпус - наилучший шанс попасть, самое низкое повреждение
Ноги - меньший шанс попасть, повреждение выше, шанс 10% сделать противнику перелом на 2 часа (скорость в бою снижается вдвое)
Голова - самый маленький шанс попасть, очень серьезные повреждения

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

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

Броня также делится на 3 части, т.е. при попадании в голову будет учитываться только броня, даваемая шлемом, в корпус - одеждой и броней, в ноги - штанами и обувью, соответственно. За исключением того, что имплантанты, увеличивающие броню, увеличивают общий показатель брони для всех частей тела.

Стрелки разом теряют до 50% шанса попасть если противник подступает на дистанцию рукопашного боя, т.е. в ту же позицию, где находится и стрелок.

Гранаты действуют на две позиции, на ту в которую кидается и предыдущую. Урон от гранаты получают все персонажи, находящиеся в этих позициях, как союзники, так и противники.

Также вам доступен боевой инвентарь, который ограничен 4-мя вещами на выбор, будь то 4 магазина патронов, или, к примеру, 3 гранаты и стимпакет.

Для удобства на мобильных телефонах в бою можно пользоваться клавиатурой для быстрого доступа к функциям:
2 - Обновить
1 - 1 шаг вниз
4 - 2 шага вниз
7 - 3 шага вниз
* - 4 шага вниз
3 - 1 шаг вверх
6 - 2 шага вверх
9 - 3 шага вверх
# - 4 шага вверх
5 - защита головы
8 - защита корпуса
0 - защита ног
jonikster вне форума Ответить с цитированием
Старый 22.09.2015, 20:37   #8
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Цитата:
Сообщение от jonikster Посмотреть сообщение
Я задал вопрос, что бы вы ответили. А не несли бред.
Да иди ка ты на[censored]! Школу окончи сперва. А если случайно так получилось, что уже окончил, то попробуй повзрослеть и понять, что в этой жизни никто тебе ни[censored] не должен, и сам ты на[censored] никому не уперся. Пипл тебе подсказывает, а ты такую [ctnsored] постишь...
Причем никто не стебался, не угарал, все высказали адекватное мнение по поводу задумки, я даже одобрил как стартовый проект, тока не несущий никаких плюсов кроме опыта кодерста.
Меня вот по-жосче опускали тру-кодеры во времена, когда я был молодым и красивым, однако мне хватало мозга прислушаться к советам и выцепить нужную информацию из стеба надо мной.

п.с. Если я не прав, набери в рот какашек и плюнь в меня.

UPD Спасибо за описание игры Silent Storm
Alar, верни репу!

Последний раз редактировалось Naive; 22.09.2015 в 20:40.
Naive вне форума Ответить с цитированием
Старый 22.09.2015, 20:41   #9
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Мне жаль. Вы никогда не станите - умными. Жопа, всегда будет бежать впереди вас.Я повидал на своём веку, знающих, не знающих только вот, никак я не могу, понять - летающих. Либо в облаках ( но не ко времени) либо-как- будто не исполнилось. Из теории, не вынутьи стины. И из песни, не слов не вынути, гля. Просто, математики нам выстлали. Рая, преисподии и .... Не подобрал рифму, мы - программёры, и к ому и к другому причастны.

Ад создали для людей, а хотели - рай.
Лучьше-б трахали....
Ай-ай-ай-ай-ай-ай.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 23.09.2015, 13:59   #10
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

Ребята, чего вы так накилулись на него. Он просто не знает что к чему, мы же все когда то начинали с нуля. !
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
pompiduskus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как взломать персонажа в онлайн текстовой игре jonikster Безопасность, Шифрование 1 19.09.2015 13:49
Вероятность исхода боя в браузерной игре. 13th Свободное общение 25 17.01.2012 18:46