PHP, HTML, JAVA, CSS, mySQL

Принцип создания браузерной игры

С чего начинаются писаться браузерные игры? С регистрации игрока?

с сюжета, конечно. :-)
потом делаются наброски дизайнером,
специалист по экономике игр просчитывет варианты развития(чтобы и не очень сложно было, и не сильно легко; а то никто играть не будет),
потом по этим наброскам и с учетом экономики делается страница регистрации,
и, собственно, игра.

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

Привет народ. Занят аналогичной проблемой - создаю браузерную рпг. Вопрос следующего типа - как реализуются таймеры, к примеру восстановление здоровья после боя, или там 2 часа копаем руду в шахте. Через javascript?
ps: первый раз этим начал заниматься, поэтому чувствую что будет много вопросов

Цитата:
Сообщение от deprime
Привет народ. Занят аналогичной проблемой - создаю браузерную рпг. Вопрос следующего типа - как реализуются таймеры, к примеру восстановление здоровья после боя, или там 2 часа копаем руду в шахте. Через javascript?
ps: первый раз этим начал заниматься, поэтому чувствую что будет много вопросов
хех+) одно время тоже этим увлекался) правда до финальной стадии так ничего и не довёл)

Цитата:
Сообщение от deprime
Вопрос следующего типа - как реализуются таймеры, .... Через javascript?
ни в коем случае не через ява-скрипт +)) он исполняется на стороне клиента, у тебя, если через ява-скрипт через 10 минут после начала игры появится народ, который будет капать шахту не за 2 часа а за 10 секунд)
Все операции с временем только на сервере и только по серверному времени. ява-скриптом можно выводить таймер пользователю, чтобы у него он тоже тикал и он видел когда заканчивается. а так вообще я реализовывал вот как:
в момент запуска пхп получает текущее время, заносит его в БД. а при каждом обновлении уже проверяется прошло ли время и сколько осталось... при этом паралельно с этим ява-скрипт на компьютере пользователя тоже тикает, но независимо от сервера (т.е. скриптом ему рисуется, как растут хп, но если он начнёт подкручивать у себя данные, то при следующем обновлении страницы они всёранво будут получены с сервера.)

кстати есть ещё такая очень хорошая штука в линуксе - крон. очень помогает с некоторыми таймерами если будешь писать не рпг а стратегию например но тогда надо предусмотреть, чтобы потом сервер под игру на лине был +)

zowen, игра начинается писаться с того, что ты придумываешь на бумаге вю модель игры. что игрок будет уметь делать, какие кнопки у него будут и т.п., как какое действие будет реализовываться. +) потом смотришь на эту модель и думаешь, что из этого ты умеешь делать а что нет +) и либо идёшь читать книжки, либо меняешь модель
когда модель игры будет готова и ты уверен что сможешь реализовать все действия, тогда создаётся база данных для игры. (все таблицы где будут хранится параметры игроков и т.п., причём БД тоже надо отдельно продумать и разработать, так чтобы она была оптимизирована и позволяла хранитьв се необходимые значения, по возможности с запасом.) и вот когда БД создана, тогда начинают уже страниццу регистрации, поле боя и т.п. делать+)

Балин про ннКрон даж чет и не вспомнил =)
А вот ты говоришь - заносим в таблицу бд. Эт получается у каждого чара есть пункт в табличке например Time и отталкиваясь от него буду вычислять хп нарегененое, а потом когда хп отрегенилось, это значение затираю. Такая логика примерно?
Или нужно поле-флаг для индикации хп регеним хп нерегеним?

Таймер восстановления здоровья... Сам занимался этим делом..


Код Java1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41   ///////////////////////////////////////////////////////////////////// var delay = 10; var maxHP var TimerOnHP = -1; var speed = 100; var currHP ///////////////  SET_HP function setHP(value, max, newspeed) {   currHP=value;   maxHP=max;   if (TimerOnHP>=0)   {     clearTimeout(TimerOnHP);     TimerOnHP=-1;   }   speed = newspeed;   setHPlocal(); } function setHPlocal() {   if (currHP>maxHP) { currHP=maxHP; }   var imgW1 = Math.round((254/maxHP)*currHP);   var imgW2 = 255 - imgW1;   if (document.getElementById(HP))   {     document.HP1.width=imgW1;    // document.HP2.width=imgW2;       if (currHP/maxHP < 0.33) { document.HP1.src=../img/hpb/hp3.gif; } // темная полоса     else     {       if (currHP/maxHP < 0.66) { document.HP1.src=../img/hpb/hp2.gif; } // более светлая     else { document.HP1.src=../img/hpb/hp1.gif; } // смая светлая     }   }   currHP = (currHP+(maxHP/100)*speed/1000);   if (currHP<maxHP) { TimerOnHP=setTimeout(setHPlocal(), delay*100); }   else { TimerOn=-1; currHP = maxHP; } }  
Этот скрипт я вынес в отдельный файл.
В самом хтмл нужно указать полосу и ее зармер, например над персонажем
Правда таблицу писать всю не буду, главное показать тебе фрагмент.

Код HTML1 2 3 4 5 6        <td align="left" valign="middle" colspan="3" height="10" width="260" background="../img/hpb/level.gif" nowrap nobr onmouseover="show_hint(Уровень жизни: +Math.round(currHP)+/+maxHP)" onmouseout="hide_hint()">       <img align="left" id="HP" name="HP1" width="1" height="8" src="../img/hpb/hp1.gif">      </td>  
и не забудь в теге
<body onload="onload="setHP(<?php echo "$curHP,$maxHP,$delay"; ?>);" >

Добавлено через 7 минут 55 секунд
сорри..
не <body onload="onload="setHP(<?php echo "$curHP,$maxHP,$delay"; ?>);" >
а надо <body onload="onload="setHP(300,200,100);" >

где 300 - максимальное кол-во жизни
200- текущая
100 - задержка - то есть с какой скоростью персонаж восстанавливается...
у меня это все берется из базы данных как ты видел выше и php подставляет их в html.
Так же у меня в бд указывается последнее время модификации текущей и максимальной жизни. Это нужно для того чтобы при обновлении страницы в функцию setHP(300,200,100) передавались новые значеня. Иначе хп будет постоянно одним и тем же))
совет. Вначале делай разберись с комплектами. У меня не получается... я на этом и застрял. точнее игра моя в принципе готова, осталось комплекты рисовать но я хочу переделать метод хранения комплектов.. если ты знаешь мне помоги а я тебе чем смогу..

Добавлено через 2 минуты 37 секунд
кстати show_hint и hide_hint у тебя работать не будут... у меня просто фенкция которая отображает нестандартную подсказку а выводит на экран новый слой в котором и отображается подсказка.

Добавлено через 10 минут 21 секунду
У мну так.
Если MaxHP>CurHP то ренегим (только если не в бою...)
Иначе таймер стоит..

Добавлено через 1 минуту 45 секунд
Вобщето я думаю надо для этой важной снова начать форум...
така если начнете мне напишите или скиньте ссылку на мыло))

Ого! Пасибо! блин, я так понимаю много функций придется писать. Но ведь РНР поддерживает и объектоно ориентированную модель, то есть вопрос такой - не хлеще бы было уже тогда в классы загонять все? Или и функций хватит?

ПС: 2 Милый Враг - ты в конце написал про нью форум, я немного не понял, про что ты . Общий проект мутить или просто глобальное обсуждение браузерных игр?

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

Добавлено через 52 минуты 45 секунд
Можно и общий проект мутить и так для того чтобы нового и полезного узнать.
Но я считаю, если даже проект до дела не довести, в любом случае пользы много.. я начав свой проект столкнулся с многими трудностями и естественно все это на пользу пошло.. тебе тоже спасибо что открыл эту тему.. если тут будут отписываться и дальше то уверен, тут много полезного будет (пища для ума)...
************************************************** *******
кстати.. чтобы начать прект, надо вначале одбумать все. я приведу примеры.
Как оказалось почти все онлайн игры этого типа идентичны.
У персонажа есть сила, ловкость, интеллект, инстинкт,жизнеспособность и может еще что то.
Надо решить какие парамерты будут по дефолту (по умолчанию) и на сколько это все будет прибавляться... Сразу замечу, что тут как ни крути но должна быть точка опоры, а именно - базовые значения. Например:
После регистрации у персонажа уже есть базовые значения, к примеру:
Сила 3
Ловкость3
инстинкт 3
жизнеспособность 3

Кроме того так же и имеются базовые модификаторы такие как:

HP (уровень жизни)
PW (уровень выносливости)
Критический удар
Антикритический удар (против критического, далее - акрит)
Уворот
Антиуворот (против уворота, далее - ауворот)

Все это должно быть взаимосвязано, иначе нарушится баланс игры и играть будет не интересно!
К примеру умножаем
HP=жизнеспособность * 6
PW=сила * 6
крит=ловкость*3
аКрит=локвость*3
уворот=инстинкт*3
аУворот=инстинкт*3
В итоге при регистрации персонажа будут парамерты...
****
HP=18
PW=18
сила=3
ловкость=3
выносливость=3
жизнеспособность=3
крит=9
аКрит=9
уворот=9
аУворот=9
*****
при расчетах урона берутся парамерты: Крит, аКрит, сила, жизнеспособность, минимальный урон, максимальный урон, причем сила должна поднимать границу не максимального урона а минимального а граница максимального урона при этом должна увеличиваться незначительно!
то есть если min/max урон составляет 10-50 то с увеличение силы нижняя планка подымается, например 30-55
Такие парамерты как ловкость, инстинкт действуют не на силу удара а на вероятность его..
Ловкость: Чем выше параметр, тем больше шансов критануть противника но меньше шансов получить крит
Инстинкт - Чем выше параметр, тем больше шансов увернуться от удара и больше шансов на то что противник не увернется.
Жизнеспособность вобщето ни как не должна прибавлять к урону. От нее лишь зависит урон. то есть если PW 100% то урон максимальный, если 50% то урон в половину меньше, причем это должно быть так. Предположим 2 персонажа у одного PW=100, у другого 500
в начале боя это не дает приимуществ, потому как у обоих оно является 100%
но с каждым ударом PW вычитывается (например
простой удар с попаданием -3 pw
простой удар и попал в блок -4 pw
простой удар и промах - 5 pw
попал с атаки -4 pw
в блок с атаки - 5 pw
промах с атаки -6 pw
)

в итоге после например 20 ударов у первого персонажа опустится PW и останется примерно 10-20% в то время как у второго персонажа еще много останется...
и к середины боя, тот у кого мало хп было, станет заметно слаб. У кого хп побольше, тот естественно в ударах меньше теряет.
Так же выносливлсть должна влиять на блок. выноса больше значит больше вероятности пробить блок, и больше вероятности того, что тебе блок не пробьют
+ ко всему комплекты шмота надо подбирать грамотно.. например имеется 5 щитов. один щит прибавляет в броне к примеру
+5 голова, +5 тело, +5пояс, +5 ноги
другой щит
+2 голова, +2 тело, +2пояс, 2 ноги +3 крит
другой щит
+2 ловкость, +4 инстинкт
другой щит
+7уворот, +8 антиуворот +10 HP
и т.д.
Это очень важный момент
Согласитесь если допустить ошибку тут и неправильно их подобрать то окажется что комбинация одного комплекта хороша и все будут его одевать а другие вещи просто не станут использовать.
Через год в вашей игре будут все в одном и том же коомплекте бегать...
Надо так сделать чтобы пользователи (игроки) думали "блин какой же одеть пояс, тот или этот.. Если тот одену, пропадет этот модификатор, если другой, тогда первый пропадет..."
И окажется так что кому то этот понравится, кому то другой. Все будут одеваться по своему и конечно же станет намного интереснее...
Благодорю за внимание...


Если расчеты будут именно такими (начальные параметры =3 а хп=сила*6) то в скрипте что я тебе дал, первая строчка должна быть
var delay = 18;

Добавлено через 1 час 19 минут 33 секунды
Кстати хочу добавить что уровень персонажа ни в коем случае не должен влиять на его боевые парамерты!!! Уровень это так сказать прожвижение персонажа - его прогресс. Уровень персонажа лишь ограничивет, чточбы персонаж 1 лвл не мог одеть комплект предназначенный для уровня выше...
************************************************** *******
Так люди, теперь хочу рассмотреть ваше предложение насчет хранения комплектов в БД.
Вначале вот что. Парамерты.
1. Уровень (для какого уровня предназначен комплект)
2. Название ( Имя щита, кольца или другой вещи)
3. Сила ( требования - минимальный параметр чтобы можно было одеть эту вещь.)
4. Ловкость (требования .)
5. Инстинкт (требования .)
6. Жизнеспособность (требования .)
7. Сила (увеличение параметра - если эта вещь прибавляет к силе)
8. Ловкость (увеличение параметра )
9. Инстинкт (увеличение параметра )
10. Жизнеспособность (увеличение параметра )
11. Уровень жизни (увеличение параметра )
12. Уровень выносливости (увеличение параметра )
13. Крит (увеличение параметра )
14. аКрит (увеличение параметра )
15. уворот (увеличение параметра )
16. аУворот (увеличение параметра )
17. защита головы
18. защита тела
19. защита пояса
20. защита ног
21. Вес предмета
22. Долговечность
23. Изображение (.gif)
24. Цена

Передаются этм параметры в игре (в скрипт для отобрадения например) в виде
(уровень,название,цена,вес,сила и т.д) то есть к примеру
(5, Копье безумца,35,,80,2,0,0,15,70,9,0 ,0,0 ......)
Так теперь предложения по хранению комплектов пожалуйста, если у кого есть я с радостью выслушаю...
Пока что я сделал себе так...
Хранить каждый комплект у самого персонажа - дело неоправданное, потому как весь этот список будет у одного перса, а персонажей будет может тысяч 5-10 кто его знает... поэтому я сделал вот что.
В БД у меня отдельная таблица в которой только комплекты. одна строчка - одна вещь - например топор.
В таблице уникальное поле id - auto increment
Всего на персонаже 14 слотов (шляпа, оружие, щит, жилет, 4 кольца, пояс, серьги,браслеты, наручи, перчатки, сапоги).

Когда персонаж покупает или одевает комплект, то в его слоты (в БД) вписываются только номер id комплекта.
Тут я столкнулся с трудность...
Надо сделать так чтобы
во первых...
можно было комплект одевать или снимать (переместить его в инвентарь)
во вторых
Долговечность комплекта должна уменьшаться с каждым пораженим.
насчет долговечности тоже туго... казалось бы надо спросто считать долговечноть во время покупки шмота и с каждым поражением уменьшать его... на самом дела как я писал выше комплектов 14 и для каждого из них на каждого персонажа новое поле "долговечность".... Хреново получится я думаю... грамоздкая таблица будет...
Идеи у кого есть, прошу в студию.. буду очень рад... Кстати хотелось бы выслушать
идеи от Humanoid. Незнаю почему он мне тут понравился, точнее его активность и его предложения и помощь людям..

Лично на мой взгляд, самое сложное в браузерных играх - это интерфейс... там придётся размещать много javascript-скриптов. Надо вначале решить, как будет выглядеть игра... будет ли там персонаж ходить как по шахматной доске в пошаговом режиме или будет режим реального времени (в этом случае будет много проблем у пользователей с медленным инетом... да и сервер может быть иногда перегружен). А возможно, пользователю вообще будут выдаваться только сообщения о том, что происходит в игровом мире, а пользователь будет давать команды что делать. Лично я думаю, что наиболее подходящий вариант из этого - это пошаговый режим по клеткам... в этом случае и сервер не будет сильно нагружаться, и наглядность будет достаточно хорошая.
Потом надо решить, о чём вообще будет игра. Я так понимаю, что ты хочешь что-то вроде LA2 или WOW, но только в браузерном варианте.
Надо решить, как будет осуществляться передвижение... думаю, можно сделать как в игре Травиан (из браузерных только в неё играл)... т.е. указываешь пункт назначения и командуешь "идти". Твой герой идёт к этой точке, а у пользователя отображаются часы с отсчётом времени, когда герой придёт.
Одна из особенностей браузерных игр - это то, что многие действия могут происходить когда пользователя нет на месте... поэтому лучше будет указывать поведение персонажа в случае столкновения с противником. Например:
1. Если столкнулся с другим враждебным игроком, то аттаковать или постараться избежать боя.
2. Если столкнулся с другим нейтральным игроком (с которым нет никаких отношений... ни вражды, ни дружбы), то аттаковать или избегать боя.
3. Если столкнулся с каким-то компьютерным персонажем (животные, варвары, бандиты и т.п.), то тоже что делать.
Если хотя бы один из столкнувшихся персонажей хочет воевать, то будет бой... но если они оба пытаются избегать конфликта, то просто пройдут мимо.

И ещё... я смотрю, ты написал процедуру восстановления здоровья на javascript... но я думаю, что лучше, что бы эта процедура только отображала ход выздоравливания пользователю, но никак не влияла. Все изменения и расчёты должны происходить только на стороне сервера, а в браузере только отображаться. Иначе читеры могут подделывать и здоровье и что угодно.

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

Насчет технологий: тут Humanoid прав. РНР на сервере для основных расчетов, JavaScript для предания игре какой-никакой динамики, отображения каких либо событий. Кроме того наверно неплохо было бы применять Ajax, поскольку асинхронка она щас очень модная и перспективная вещь. Насчет Flash ничего говорить не буду - не любитель, не программил в нем никогда, для меня темный лес.

Насчет комплектов, вещей и прочей всячины инвентарной - комплекты и вещи наверно должны иметь поле Принадлежность, где будет заноситься id игрока. Вот только меня такой вопрос интересует - простые вещи (бутыли, свитки и т.д.) и шмот типа Броня - все это будет храниться в одной табличке или в разных?
тоже самое касается и состояний Одет В Инвентаре - отдельное поле которое говорит, к примеру 1- на игроке, 2 - в инвентаре.

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

По браузерным играм :

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

1. Тебе понадобятся художники или может даже целая дизайнерская фирма. Художники хотят кушать. Значит им нужно платить.

2. Тебе нужен будет граммотный верстальшик, чтобы в твою игру могли зайти люди не только с расширение 1024 на 768

3. Тебе понадобится профессиональные java скриптер который тебе нормально пропишет все красивенькие функции. ( у меня их в игре где-то 400)

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

5. Понадобится дефенсер, который вместе с пункто 4 защитит твою игру от всях иньекций и прочей срани.

6. Ну и наконецто бета тестеры, которые будут искать баги в твоей игре.

вот в принципе все что тебе понадобится.


Мои советы по созданию.

1.Используй как можно больше java script
2.Как только начинаешь писать файл, сразу ставь фильтры :


Код PHP1 2 3 4 5 6 7 8 9 10 11 12 13 14 15         $text_to_check = mysql_real_escape_string ($_GET["запрос"]);       $text_to_check = strip_tags($text_to_check);               $text_to_check = htmlspecialchars($text_to_check);       $text_to_check = stripslashes($text_to_check);           $text_to_check = addslashes($text_to_check);         $_GET["запрос"] = $text_to_check;    
Такими фильтрами нужно пробивать каждый запрос.

3. Шифруй запросы. Пример :



Код PHP1 2 3 4 5 6 7 8 9      main.php?golocation=lavka   // - не правильно !    // правильно :    main.php?go=13&get_id=aHVtYW5fY2l0eTE=&vcode=74471923990ade41e373b3dde18c36ac    
Запросы шифруются таким образом :


Код PHP1 2 3 4 5 6 7 8 9 10 11      md5();    // Советую эту кодировку    base64_encode();    base64_decode();    

4. Используй как-можно больше флеша.
5. Помни на стороне клиента - js и flesh на стороне сервера - php и mysql
6. Удачи +)

Вот тут лежат мои древние но весьма работоспособные скрипты. Если знаешь есть такая игрушка Alone Islands. Так вот я 1 из первых программистов начавших ее создание. В этих скриптах лежит переработанная версия но не доработанная.
Разбирайся +). На все вопросы отвечу

З.Ы. эти скрипты я писал в 14 лет +)

Добавлено через 42 секунды
З.Ы пароль на архив 12345

Спасибо за то что не оставил без внимания эту тему.. Скрипт который я писал - это только индикатор восстановления здоровья.. если пользователь будет подкручивать его то при обновлении все равно данные берутся из БД. Так что с этим нет проблем.. Вторая не точноть, точнее вероятно я не правильно обьяснил суть игры.. игра типа MMORPG - многие называют ее текстовой.. То есть например, перед тобой
кнопки radio или checkbox которыми выбираешь удары и которыми выбираешь блок, а так же кнопка атака и простой удар. На самом деле человек лищшь видит своего персонажа в таком виде (я прикреплю файл сюда, в котором увидишь..)
к примеру есть группа кнопок
удар блок
############################
#[]-удар в голову # []-блок головы #
#[]-удар в грудь # []-блок груди #
#[]-уар в пояс # []-блок пояса #
#[]-удар в ноги # []-блок ног #
############################
# []-атака # []-защита #
############################
# [ударить] #
############################
пользователь может выбрать только один удар
пользователь может выбрать только 1 блок если на нем нет щита в противном случае 2 блока
пользователь выбирает ЛИБО с атаки ЛИБО с защиты бить (с атаки урон наносимый больше но есть вероятность получить посильнее то есть защита автомат. слабеет)
и наживмает кнопку ударить...
другой игрок на другом конце провода делает то же самое..
происходят расчеты, кто кого куда ударил, не ударил, промахнулся ли еще что, и соответственно жизнь персонажа уменьшается, когда она становится 0 то он проинрал, если в бою команда на команду, то выиграет та команда, в которой останется хоть один живой, а если умрут все то ничья...
Во влажении главная страница проекта и второе вложение информация о персонаже...
только там не видно вещей, (шита, оружия, колец...) потому как дизайнера нету у меня я пременно своего племяшку поставил)))

Цитата:
Сообщение от NEOSYS
1. Тебе понадобятся художники или может даже целая дизайнерская фирма. Художники хотят кушать. Значит им нужно платить.

2. Тебе нужен будет граммотный верстальшик, чтобы в твою игру могли зайти люди не только с расширение 1024 на 768

3. Тебе понадобится профессиональные java скриптер который тебе нормально пропишет все красивенькие функции. ( у меня их в игре где-то 400)

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

5. Понадобится дефенсер, который вместе с пункто 4 защитит твою игру от всях иньекций и прочей срани.

6. Ну и наконецто бета тестеры, которые будут искать баги в твоей игре.

вот в принципе все что тебе понадобится.
Прасибо огромное..
Хочу сказать что насчет безопасности, все ок..

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

2. Я сам верстальщик, проверял и тестил все на разных расширениях и под разными браузерами. Результат меня радует. Все браузеры корректно и одинакого отображают страницы, правда мучался с оперой долго, он черным цветом отображал бордюры фреймов и еще другие проблемы были, коротые я преодолел... кстати, при входе в игру, куча проверок - что за браузер у пользователя, поддерживается ли Javascript или нет, поддерживаются ли Cookies и др. с этим тож запарился, потому как проект такого типа первый и сразу не все учитывал.. постепенно приходило в голову, я его дополнял и переделывал((

3. Большую часть красивых функций на JS я сам прописал...

4. Серверная часть написана. Осталось кое что улучшить...

5. Защитил от всякой как вы говорите срани свою игру и от иньекций...

6. Бета тестеры есть... Хорошие знакомые, которые ждут-недождутся когда проект выйдет в свет. Кстати некоторые из них естили уже ее со мной, правда пока без комплектов (точнее пограмно комплект надет, но так как нет изображений, его просто не видать, я вместо него просые картинки ставил...).

А вот с флэш - у мну проблемы...

Так что просто улучшать надо, а именно как говорил, хранение комплектов и кстати чат.. В игре пока что 1 город, но когда народу станет много, активирую второй и др. по мере надобности... Так как в каждом городе по несколько локаций (4 комнаты для боя, центральная площадь, магазин, биржа, телепорт и др.) то с чатом возникает тоже проблема... Как организовать эти каналы, в каком формате хранить чат и какая структура таблицы БД.. Все это пока темное для меня... и еще бота надо, чтоб разговаривал с людьми, хотя бы на приметивном уровне... Все это пока для меня непонятно... Думаю реализовать смогу но нужен толчок, который называется - идея!
Повторяюсь.. рад услышать любые предложения!

Добавлено через 14 минут 54 секунды
А вот еще походу вопрос.
Можно ли подделать переменную $session[user] например (точнее массив)
или другую из массива $session
Если да то как этого избежать? Я просто с этим не сталкивался...
Сразу говорю, что если пользователь введет в адресной строке например ...?user=xxx$pass=xxx то это не пройдет.
Как то по другому можно или не стоит волноваться из за этого?

Цитата:
Сообщение от Милый Враг
А вот еще походу вопрос.
Можно ли подделать переменную $session[user] например (точнее массив)
или другую из массива $session
Если да то как этого избежать? Я просто с этим не сталкивался...
Сразу говорю, что если пользователь введет в адресной строке например ...?user=xxx$pass=xxx то это не пройдет.
Как то по другому можно или не стоит волноваться из за этого?
по этому поводу можешь не волноваться. главное фильтровать все запросы.

Милый Враг,

вот скрины :

Доброго времени суток...желание создать свою браузерку сидит во мне с того момента как я увидел БК. И вижу что тут собрались заинтересованные люди.=)) Вообщем, предлагаю (если еще не предложили) создать портал (если еще не создали)
и начать (если еще не начали) разработку браузерной MUDRPG. Себя могу предложить в качестве PHP-программиста. Сам занимался написанием простеньких скриптов а-ля регистрация, новостная лента и т.д. Вы спросите почему нужно создать портал? Ну на мой взгляд должно быть место где мы все будем собираться и обсуждать какие-либо проблемы, принятие решений...мы могли бы использовать форум конечно...но я дума будет чуть-чуть неудобно (я не хочу обидеть форумчан и админов). Проекта как такогового может и не получиться...но опыта и фана будет куча. Ну что товарищи...начинаем сбор команды (пока без названия) кто заинтересовался 362365229, Mrpain07@mail.ru, у меня еще скайп есть...но вот только я свой аккаунт не помню!!!! Энтузиасты я вас жду!!!

Самый лучший способ - Skype
Общая комната, в котором могут быть хоть 100 человек и общаться, обсуждать.. я по вечерам бываю.. мой скайп MILIY_VRAG
кто хочет мне написать прошу сразу же говорите что по этому поводу.. терпеть не могу когда пишут одно слово привет и ждут ответа...

Мда... Просмотрел вложеные скрины... Не Впечатляет...
Фараон - Украденый скрипт с Carnage чуть-чуть измененный дизайн... Но во всяком случае Инфа персонажа совпадает с инфой Carnage

NEOSYS - Ваша игра скопирована с игры dwar!!! Изменены кнопки, обводка... Тобишь дизайн!

А на счет темы форума... Я когда-то сам баловался и ставил краденные Игры) изменял дизайн и ставил... Но поставив себя на место игрока, понял! Зачем играть в игру похожу на уже существующую онлайн у которо в десятки-сотни раз больше...
NEOSYS - В вашей игре спасением может быть исключительно сюжет, тобиш квесты которые затянут игрока...


Милый Враг - тебе для сравнения http://arkaim.carnage.ru/inf.pl?user=%C2%E5%F0%E4 -- Сравни свою с этой

Цитата:
Сообщение от Diohu
NEOSYS - Ваша игра скопирована с игры dwar!!! Изменены кнопки, обводка... Тобишь дизайн!
Не согласен с вами. Если вы заметили, то все новые , качественные игры от компании IT territorie идут с очень похожими друг на друга дизайнами, к примеру
www.dwar.ru
www.dantar.ru
www.3kingdom.ru

и много других. Так скажите , чем я хуже ?)
С чего начинаются писаться браузерные игры? С регистрации игрока?

NEOSYS, скажем так, вы абсолютно не хуже других, но желательно стремится быть лучше других а не подобать им... Вы могли придумать совершенно другую игру на этом движке, которая была бы намного лучше тех которые вы перечислили...

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

Из того что играл, больше всего впечатлила http://morward.ru/
хорошо оживлённая с помощью Ajax и красочно отрисованная, вобщем играть в неё приятно, хотя идея Травиановская )

Цитата:
Сообщение от Diohu
Фараон - Украденый скрипт с Carnage чуть-чуть измененный дизайн... Но во всяком случае Инфа персонажа совпадает с инфой Carnage
на самом деле это не так.. Ничего ворованного.. похожее это другое дело.. Дело в том что я довольно долгое время играл в БК и Carnage вот и сделал похожее.. Сами же скрипты не ворованные а написанные мной... (в моей игре)