|
7 / 7 / 0
Регистрация: 20.04.2009
Сообщений: 45
|
|
Принцип создания браузерной игры22.04.2009, 23:47. Показов 181850. Ответов 351
Метки нет (Все метки)
6
|
|
| 22.04.2009, 23:47 | |
|
Ответы с готовыми решениями:
351
Создание браузерной игры... Клиент для браузерной игры. Написать бота для браузерной игры |
|
1 / 1 / 0
Регистрация: 20.10.2009
Сообщений: 11
|
|
| 21.10.2009, 10:25 | |
|
Браузерная игры начинают писаться с концепции вначале надо продумать систему боя изложить это всё на бумажке. и потом начать ее писать на систему боя уходит основная настройка базы данных потом рекомендую заняться статами и опять их применить к системе боя потом инвентарём и вещами и опять это всё начать прикручивать к системе боя после того как написал основные модули тогда уже можешь начинать писать разные другие вещи модули к примеру как город и разные там системы многое зависит от того что ты хочешь начать делать в игре.
К примеру я начал делать игру у меня основная система началась с заработка я начал делать экономику потом начал это всё прикручивать к городской система и сейчас только у меня начинается разработка системы боя . Систему боя я начал делать в самом конце по стольку у меня основная наклонность в игре не битвы а экономике всё зависит от жанра но регистрация делается в самую последнюю очередь
0
|
|
|
Телепат
724 / 118 / 8
Регистрация: 28.04.2009
Сообщений: 442
|
|
| 21.10.2009, 14:03 | |
|
Это чревато многими ошибками... Начинающи программист не имеющий опыт в разработки компьютерных игр не сможет все выложить на бумаге по той причине что он не сможет ее полностью продумать... это приведет к тому что он будет ее постоянно переделывать...
Я советую постувить так.. Создать миниверсию игры.. к примеру без регистрации и всех эти дел. приметивного персонажа, который не может менять комплект одежды. Просто это научит его (начинающег программиста) создать систему боя.. Затем сделать групповой бой, после добавить чат... и когда все будет прозрачно для программиста, можно переходить на создание полноценной, полнофункциональной онлайн игры с нуля. Я сам по началу сто раз переделывал ее, в конечном счете начал опять таки с нуля. Банзай браток а мы тебе поможем... по крайней мере я готов..
0
|
|
|
Программист
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
|
|
| 21.10.2009, 23:56 | |
|
я так понял,что страничка из 2-х фреймов состоит,так? один-игра,другой-чат?
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2009
Сообщений: 11
|
|
| 22.10.2009, 00:02 | |
|
Да так идет по стандарту!
0
|
|
|
Телепат
724 / 118 / 8
Регистрация: 28.04.2009
Сообщений: 442
|
|
| 22.10.2009, 14:51 | |
|
На самом деле фреймов больше чем их видно.. Один или два фрейма (невидимые, ширина которых равна 0 или высота равна 0) используются для того чтобы постоянно не перегружать страницу чата. Без них чат будет перегружаться (обновляться) и придется ждать когда он будет постоянно загружаться.. Чтоб этого небыло все это делает невидимый фрейм и средствами JavaScript добавляет в обычный чат сообщения...
0
|
|
|
Программист
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
|
|
| 22.10.2009, 20:26 | |
|
можешь написать код чата такого?))
0
|
|
|
Телепат
724 / 118 / 8
Регистрация: 28.04.2009
Сообщений: 442
|
|
| 24.10.2009, 13:25 | |
|
Код написать не смогу по причинам нехватки времени, так как много времени уходит на это да и готовых в просторах инета полно + ко всему цель данного форума не сделать работу за кого то а помочь в чем то. я лишь приблизительно опишу процедуру.
Пример чата. для простоты будем считать что фрейм "top" - отображающий сообщения а фрейм "bottom" для написания и отправки сообщений. (для простоты фрейм, в котором показываются количество пользователей я не показываю). HTML код будет примерно таким <FRAMESET ROWS="*,50,0" FRAMEBORDER="0" BORDER="0" FRAMESPACING="0"> <FRAME SRC="" NAME="top" SCROLLING="auto" FRAMEBORDER="0" BORDER="0" NORESIZE> <FRAME SRC="" NAME="bottom" BORDER="0"> <FRAME SRC="" NAME="hide" BORDER="0"> </FRAMESET> значение ROWS="*,50,0" поясняю.. 0 - это нулевая высота, то есть его не видно, 50 это нижний фрейм, в котором пишут сообщения и кнопка отправить, его высота равна 50 пикселам, и * - вся оставшая часть свободной площади отводится для отображения сообщений. База данных должна быть например с полями id - идентификатор пользователя from - от кого сообщение to - кому private - приватное сооюбение или нет (бдем отмечать 'y' если да и 'n' если нет) message - само сообщение Невидимый фрейм hide проверяет сообщения в БД и если есть то дописывает их во фрейм Top. Это сделано для того чтобы избежать постоянное обновление этого окна и не только.. при отправке сообщений (например: [motakuji] to [Милый Враг] привет...) в бд вносим запись id - идентификатор обязательно from - motakuji to - Милый Враг private - n message - привет... вот и показываем все вообщения такого типа всем кроме приватных. Приватные сообщения выбираем из базы только те, ник тоторого соответствует текущему пользователю. Так же все сообщения приватные и не приватные, ник которого соответствует текущему пользователю надо подчеркнуть либо выделить, чтоб не пропускать личные сообщения... Это я примерно показал, на самом деле там больше работы.. Например добавить время отправки сообщений, смыйлы, еще один фрейм для того чтобы видеть пользователей онлайн, регистрация, банить и др.... вот глянь, написал всего ничего а полстраницы заняло.. а ты хотел чтоб я чат написал
2
|
|
|
Корорль
|
|
| 29.10.2009, 16:23 | |
|
привет всем я хочу зделать браузерную игру
ктонить дайте ссылу на хороший самоучителт по пхп |
|
|
1 / 1 / 0
Регистрация: 09.07.2009
Сообщений: 93
|
||
| 29.10.2009, 17:50 | ||
Я сам писал такой чат.
0
|
||
|
1 / 1 / 0
Регистрация: 09.07.2009
Сообщений: 93
|
||
| 30.10.2009, 00:27 | ||
1Игрок выбрал "Удар и блок" и нажал "Вперед!!!" ---- 2Игрок тоже выбрал "Удар и блок" и нажал "Вперед!!!" Что с этими данными делается потом??? Они заносятся в БД ??? (Насчет сравнения не надо, это понятно и в меру легко...я не могу понять как считывать ВЫБРАННЫЕ ЗНАЧЕНИЯ персонажей..для последующего сравнения !!!) Бой с ботом могу легко поставить точнее уже поставил(т.к получаю данные только от игрока1, далее извлекаю из Мускл данные бота сравниваю и получаю результат), а вот с другим человеком не получается...я принципов понять не могу. Если не сложно объясни
0
|
||
|
Телепат
724 / 118 / 8
Регистрация: 28.04.2009
Сообщений: 442
|
|
| 03.11.2009, 20:24 | |
|
Вот ты сделал говоришь бота правильно? У бота те же парамерты что и человека, или другие это не важно.. так почему же не можите это органиховать.. получаем удары и блоки от пользователя, не важно сколько их (игроков), и поступаем так е как и с ботом (имею в виду по тем же расчетам).
или я вопрос не понял*?
0
|
|
|
1 / 1 / 0
Регистрация: 09.07.2009
Сообщений: 93
|
||
| 27.11.2009, 00:37 | ||
пришлось пройти курс онлайн, но теперь многое знаю.
0
|
||
|
0 / 0 / 2
Регистрация: 13.01.2010
Сообщений: 129
|
|
| 17.01.2010, 12:42 | |
|
А может ктото обьяснить сам принцип работы скрипта боя?Самого простого...
К примеру удары-блоки, как я понимаю, это простая форма(form.php), которая отправляет данные в какой-то файл(boi.php). Причём игрок должен остаться на странице form.php после нанесения удара.Тоесть прнцип такой?Происходит удар/блок, они обрабатываются в boi.php, сравниваются, и тут же идёт перенаправление обратно на страницу form.php, только с обновлённым состоянием боя?
0
|
|
|
0 / 0 / 0
Регистрация: 20.01.2015
Сообщений: 2
|
|
| 23.01.2010, 19:01 | |
|
Очень интересная тема. Всем спасибо!
Что касается системы боя то я думаю что тут еще должна быть страница ожидания... или ее же можна использовать как страницу расчетов. Сделать на ней кнопку "обновить" если опонент не провел свой удар и так же сделать авто обновление... Может кто привести примеры формул расчета урона... при бое.
0
|
|
|
20 / 19 / 0
Регистрация: 16.10.2009
Сообщений: 135
|
|
| 26.01.2010, 04:22 | |
|
Всем доброй ночи. Решил и я всунуть свой нос
![]() Что я имею Вам сказать, касательно системы боя вашей браузерной игрухи : В моей теории, ИМХО, систему боя нужно прятать как можно дальше от пхп\браузера(джава скрипт)\пользователя. я бы сделал так: основной движок - база данных. к ней делаем механизм, генерирующий события с определенным интервалом времени. например секунда. Тогда, каждую секунду проверяем получил ли движок новые "задания", если да - то обрабатываем их. Заданием может быть, к примеру: - Начало боя между двумя соперниками. При этом формируем определенную строку в таблице с указанием соперников, времени начала итд. - отдельный интервал боя (например кто то нанес удар). это задание записывается в историю и в дальнейшем учитывается при подсчете текущего состояния бойцов. - много перечислять не буду, поздно и фантазия на нуле) Вобщем, как то так. Если в общих чертах.... Есть ядро, которое получает на входе определенные действия пользователей, собирает их в "кеш", и по определенному событию обрабатывает их. Пользователь же получает в браузере ТОЛЬКО состояние базы данных игрового миря на определенный момент времени. Связь с базой данных - методом отправки "заданий" базе.
0
|
|
|
42 / 41 / 3
Регистрация: 04.01.2010
Сообщений: 205
|
|
| 26.01.2010, 09:01 | |
|
opensource, Все что ты описал - и есть работа ПХП скрипта, а не какого-то там Ядра базы данных.
Влиять на выполнения ПХП скрипта пользователь может исключительно в той степени, в какой ты ему это позволил и только косвенно. На то он и серверный скрипт а не браузерный. База же служит исключительно для хранения данных. Для этого и существует четкая схема пользователь-сервер-база.
0
|
|
|
20 / 19 / 0
Регистрация: 16.10.2009
Сообщений: 135
|
|||
| 26.01.2010, 13:29 | |||
|
Добавлено через 4 минуты
0
|
|||
|
42 / 41 / 3
Регистрация: 04.01.2010
Сообщений: 205
|
||
| 26.01.2010, 13:34 | ||
|
opensource, То, что логи боя хранятся в БД - это и так понятно.
В базе хранятся только основные данные, весь просчет боя ведется в скрипте, например в ходе сессии. А то, что данные отправляемые пользователем в ходе боя нужно хранить в БД - это само собой, так как у нас задействованы 2 пользователя (если система пвп очного, а не заочного), что требует координировать работу скрипта. Добавлено через 1 минуту opensource, но дает лишнюю нагрузку на БД, что не очень хорошо, особенно при больших объемах оной.
0
|
||
|
20 / 19 / 0
Регистрация: 16.10.2009
Сообщений: 135
|
|
| 26.01.2010, 13:36 | |
|
Уважаемый, я не собираюсь вам объяснять что такое хранимая процедура. Возьмите и почитайте.
Хотя бы на википедии.
0
|
|
|
42 / 41 / 3
Регистрация: 04.01.2010
Сообщений: 205
|
|
| 26.01.2010, 13:40 | |
|
opensource, ну так тогда хранимые процедурЫ, а не хранимые процедур.
0
|
|
| 26.01.2010, 13:40 | |
|
Упрощенный принцип создания поисковой системы на PHP Принцип работы онлайн игры Как правильно создать систему уведомлений для браузерной игры\сайта? Программисты для браузерной игры Сервер для многопользовательской браузерной игры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|