CyberForum.ru - Форум программистов и сисадминов
Вернуться   Форум программистов и сисадминов CyberForum.ru > Форум web-программистов > Форум PHP

Ответ Создать новую тему
 
Старый 22.04.2009, 23:47   #1
zowen
Новичок
 
Регистрация: 20.04.2009
Сообщений: 74
Репутация: 4 (4)
По умолчанию Принцип создания браузерной игры

С чего начинаются писаться браузерные игры? С регистрации игрока?
zowen вне форума
Другие темы раздела
PHP регистрация на php
Я не силен в php вот такой вопрос: Создал саму форум регистрации reg.php <form action="registration.php" method="post"><br> <table border=2 width=400> <td width=150>*Имя в игре </td> <td width=250><input type="text" name="nick"></td> <tr><td width=150>*Введите пароль:</td>. регистрация на php
Подсчет записей в рубриках одним запросом PHP
Народ! Подскажите пожалуйста как правильно сделать подсчет записей в рубриках, вот пример одного сайта http://www.ukrbiznes.com/boardind.php как думаете, как они это делают?. Подсчет записей в рубриках одним запросом
Старый 20.10.2011, 16:01   #231
Dzhekson6000
Форумчанин
 
Регистрация: 25.11.2010
Адрес: Явас
Сообщений: 387
Репутация: 29 (32)
По умолчанию Re: Принцип создания браузерной игры

эм.... кода много
Dzhekson6000 вне форума
Старый 10.11.2011, 19:55   #232
Wonderslav
Новичок
 
Регистрация: 15.09.2011
Сообщений: 8
Репутация: 0 (0)
По умолчанию Re: Принцип создания браузерной игры

подскажите как правильно переделать этот код, чтобы вместо url страницы в див грузилась переменная $row:
Код JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script type="text/javascript">
   function AjaxRequest(result_id,url) {
 
        jQuery.ajax({
            
            url:     url, //Адрес подгружаемой страницы
            type:     "POST", //Тип запроса
            dataType: "html", //Тип данных
            error: function (){ //Если ошибка
                alert("Ошибка соединения");
            },
            success: function(response){ //success - функция, которая вызывается, когда запрос прошёл успешно и данные (data) получены
                document.getElementById(result_id).innerHTML = response;
             }
        });
   }
</script>

Последний раз редактировалось Vovan-VE; 11.11.2011 в 18:08. Причина: Используйте теги форматирования кода
Wonderslav вне форума
Старый 16.11.2011, 13:24   #233
SlesherY
Новичок
 
Регистрация: 14.11.2011
Сообщений: 53
Репутация: 4 (4)
По умолчанию Re: Принцип создания браузерной игры

Wonderslav, переменная откуда? если из пхп скрипта то <?php echo $row; ?> вместо url
SlesherY вне форума
Старый 06.12.2011, 22:26   #234
CrazyFreeMan
Новичок
 
Аватар для CrazyFreeMan
 
Регистрация: 06.12.2011
Адрес: Чернигов
Сообщений: 34
Репутация: 9 (9)
По умолчанию Re: Принцип создания браузерной игры

Отличная тема
Все прочитал, много вопросов закрыл своих, но один остался.
ММОРПГ-РТС (Риал лайф) - в игре есть некие задания(добывать ресурс, отправится в бой, исследовать) как правильно реализовать выполнение этих событий когда игрок оффлайн?
пример:
Я поставил на исследование улучшение навыка добычи ресурса(сейчас +100 в час), остается 2 часа до окончания. Ухожу в оффлайн, через 2 часа после завершения исследования должно быть +150 в час. Меня нет в онлайне 2 дня, как просчитать правильно?

Либо другие запланированные действия. MySQL - отмечать таймеры и мониторить? Крон - не известно будет ли линукс, Планировщик задач?
CrazyFreeMan вне форума
Старый 06.12.2011, 23:35   #235
afganec
Новичок
 
Аватар для afganec
 
Регистрация: 30.06.2009
Адрес: Пермь
Сообщений: 81
Репутация: 26 (19)
По умолчанию Re: Принцип создания браузерной игры

CrazyFreeMan,
не так давно задавался подобной проблемой.

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

Решил так.
Таблица строек - ID здания, время начала строительства, время окончания строительства.
Прирост ресурса высчитываю как сумму
(время окончания-время начала)*(коэффициент производства по старому уровню)+(время сейчас-время окончания)*(коэффициент производства по новому уровню).

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

Вот как-то так.
afganec вне форума
Старый 21.01.2012, 15:54   #236
alex130027
Новичок
 
Регистрация: 21.01.2012
Сообщений: 2
Репутация: 0 (0)
По умолчанию Re: Принцип создания браузерной игры

Скажите пожалуйста а где и как начать делать игру ? сайт есть или что ? чтобы на сайте было окончание .mobi

Добавлено через 1 час 40 минут
и как создать игру наподобее g.meni.mobi или же викинги этой же студии ??
alex130027 вне форума
Старый 21.01.2012, 21:07   #237
resource2008
Форумчанин
 
Аватар для resource2008
 
Регистрация: 11.03.2011
Сообщений: 207
Репутация: 66 (66)
По умолчанию Re: Принцип создания браузерной игры

Цитата Сообщение от alex130027 Посмотреть сообщение
чтобы на сайте было окончание .mobi
это домен верхнего уровня как com, net, org, ru, рф и т.д.

Цитата Сообщение от alex130027 Посмотреть сообщение
этой же студии ??
это как? подписаться чужим именем?
resource2008 вне форума
Старый 22.01.2012, 06:26   #238
alex130027
Новичок
 
Регистрация: 21.01.2012
Сообщений: 2
Репутация: 0 (0)
По умолчанию Re: Принцип создания браузерной игры

это как? подписаться чужим именем? нет , это создать примерно такие же игры из этой студии
alex130027 вне форума
Старый 19.02.2012, 01:45   #239
and_y
Новичок
 
Аватар для and_y
 
Регистрация: 02.05.2011
Адрес: Москва
Сообщений: 28
Репутация: 8 (8)
По умолчанию Re: Принцип создания браузерной игры

alex130027, Надо всего лишь :
1. знать хотя-бы основы HTML
2. желательно CSS
3. знать хотя-бы основы PHP
4. получить сервер с PHP и БД
5. Иметь Photoshop и уметь с ним работать
6. Придумать Тематику, Интерфейс, Баланс, Предметы, Персонажей, Комнаты, Магазины, и прочую интересную трепуху
7. Спланировать структуру Баз Данных
8. печатать...печатать...печатать...

по сути вроде всё под это подходит...

если я что забыл дополните

создать примерно такие же игры из этой студии
Даёшь креатив!

Последний раз редактировалось and_y; 19.02.2012 в 01:46. Причина: дополнение
and_y вне форума
После регистрации реклама в сообщениях будет скрыта
Старый 21.02.2012, 17:46   #240
crautcher
Форумчанин
 
Регистрация: 27.05.2011
Адрес: Lithuania
Сообщений: 979
Репутация: 308 (308)
По умолчанию Re: Принцип создания браузерной игры

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

Код PHP
1
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
42
43
44
45
 
class Map
{
private $maxx , $maxy ;
public $map;
 
    function __construct($maxx,$maxy)
    {
     if ($maxx < 1)
      $maxx = 1;
         $this -> maxx = $maxx;      
     if ($maxy < 1)
      $maxy = 1;
         $this -> maxy = $maxy;     
         $map = array(); 
    }   
    
    function SetDefaultTexture($Tcode)
    {
     for ($x = 0 ; !($x > $this -> maxx); $x++)
      for ($y = 0 ; !($y > $this -> maxy); $y++)
       $this -> AddObj($x , $y , $Tcode);
    }
    
    function AddObj($x, $y ,$obj)
    {
     if (!isset($this -> map [$x] [$y] ))
      $this -> map [$x] [$y] = $obj;
     else 
      $this -> map [$x] [$y] .= '/'.$obj;
    }
    
    function IsObjInSector($x, $y, $obj)
    {
     return in_array( $obj , $this -> GetSectorObj($x ,$y) );
    }
    
    function GetSectorObj($x , $y)
    {
     if (!isset($this -> map [$x] [$y] ))
      return array();
     return explode('/',$this -> map [$x] [$y]); 
    }
    
}
класс геренрит сетку(массив) , хранит обекты на секторах , в дальнейшим по ней будут наверн ходить игроки и бить ботов , еще не решил.
дальше придметы :
Код PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
class base
{
public $name;
#bot , npc , player , item
public $type;
 
 function __construct($type)
 {
 $this -> type = $type;
 $this -> SetName( 'unknow_'. $this->type );
 }
 
 function SetName($name)
 {
 $this -> name = $name;
 }
 
}
 
Код PHP
1
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
 
class Item extends base
{
public $bonuses;
public $requares;
 
 function __construct($type)
 {
  #weapon , ring , shield , boots , belts , bracers...
  parent::__construct($type);
  $this -> bonuses = array();
  $this -> requares = array();
 }
 
 function AddRequare($req , $count)
 {
  static $counter = 0;
  $count++;
  $this -> requares [$counter] ['name'] = $req;
  $this -> requares [$counter] ['count'] = $count;
 }
 
 function AddBonus($bonus , $count)
 {
  static $counter = 0;
  $counter ++; 
  $this -> bonuses [$counter] ['name'] = $bonus;
  $this -> bonuses [$counter] ['count'] = $count;
 } 
 
}
Код PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
class Weapon extends Item
{
#dager , mace , sword
public $subtype;
public $ldmg , $hdmg;
 
function __construct($ldmg,$hdmg)
{
parent::__construct('weapon');
$this -> ldmg = $ldmg;
$this -> hdmg = $hdmg;
}
 
function SetSubtype($type)
{
$this -> subtype = $type;
}
 
}
 
далее пойдут юниты

Код PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
class NPC extends base
{
#can he walk or stay on place
private $IsStatic;
 
 function __construct($name)
 {
  parent::__construct('npc');
  $this -> SetName($name);
  $this -> IsStatic = false;
 }
 
 function MakeStatic($is=true)
 {
  $this -> IsStatic = $is;
 } 
 
}
 
Код PHP
1
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
 
abstract class Unit extends base
{
#mage , warrior ... maybe robot , pirate )
public $Pclass;
public $stats;
public $lvl;
 
 function __construct($type)
 {
  #bot or player
  parent::__construct($type);
  $this -> Pclass = 'unknow_'.$type;
  $this -> lvl = 1;
  $this -> stats = array(); 
 }
 
 function SetClass($c)
 {
  $this -> Pclass = $c;
  $this -> compile();
 }
 
 function SetLvl($lvl)
 {
  $this -> lvl = $lvl;
  $this -> compile();
 }
 
 function SetStats($stat , $count)
 {
  if (!isset( $this -> stats [$stat] ))
   $this -> stats [$stat] = $count;
  else
   $this -> AddStat($stat , $count); 
 }
 
 function AddStat($stat , $count)
 {
  if (isset( $this -> stats [$stat] ))
   $this -> stats [$stat] += $count;
  else
   $this -> SetStat($stat , $count); 
 }
 
 function GetStats()
 {
  return $this -> stats;
 }
 
 #adding stats extends class , items , lvl , and bonuses
 abstract function compile();
 
}
 
так как боты и игроки обладают разными свойствами (например с бота может падать дроп , а игрок имеет икспу и может поднять свой лвл) сделал родительский класс , сегодня вечером напишу класс игрока и бота. Буду рад критике
crautcher вне форума
Ответ Создать новую тему

Похожие темы
Тема Автор
Проекты ищу людей для создания браузерной онлайн игры
аналогов наверно нет, начало есть(регистрация, авторизация, поиск, почти почта) обязательно скайп пишите mrpoops2
aristov-96
Visual Basic Нужна помощь в написании игры Манкала. Принцип игры то понятен.. а вот написать..
Здравствуйте! Нужна помощь в написании игры Манкала. Принцип игры то понятен.. а вот написать.. Лунки можно обозначить цифрами..
Сочинец
Проекты Ищу людей для создания браузерной онлайн игры
Добрый день. Есть идея создания браузерной онлайн игры, аналогов нет, существует один проект, очень отдаленно напоминающий мой замысел, но по сути это совсем другое. Единственным минусом моей идеи считаю то, что уже возможно ведутся такие разработки. Для старта, думаю, достаточно будет веб...
opportunity
Предложения работодателей Команда для создания браузерной онлайн-игры
Доброе время суток, я собираю команду PHP-программистов для создания браузерной онлайн-игры. Концепт-арт на руках, продуман весь мир и вся система. Работа будет осуществляться на бесплатной основе. Как только проект начнет действовать и, возможно, приносить доход, тогда посмотрим. Цель - не...
wulfvital
Опции темы

Текущее время: 04:30. Часовой пояс GMT +4.

Компьютерный форум программистов и сисадминов
Powered by vBulletin® Version 3.8.7 PL2
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Рейтинг@Mail.ru