(Игрова машина) Дизайн на рамка

В момента работя върху 2D браузър игра.

След като оставихме ZendFramework, моят екип и аз решихме да напишем наша собствена рамка.

Сега сме безпомощни, защото никой от нас не е разработвал нищо подобно, освен CMS frameworks и т.н.

Езикът е PHP и драйверът на базата данни, използван за него, е MySQL(i, PDO и т.н.)

Можете ли да ни дадете някакви съвети относно структурирането на рамката?

Благодаря ти ;)

Пример за жанра, в който трябва да се впише

  • Огейм
  • Травиан
  • Заренвар

(Моите) изисквания (към рамката)

  • Основен API
  • Няма огромно количество функционалност, с която не мога да се справя и не ми трябва

Моята представа за (моята) рамка

  • Някакво "backe-end"
  • Управление на database
  • Обработка на регистрации, HTTP заявки
  • Генериране на шансове нещо в играта да се случи или да не се случи
  • без графични механизми, само изчисляване на доходи, ден, повреда на резервоара xy и т.н.

Между другото, рамките, които тествах, не бяха php двигатели за игри, защото никога не намерих свободно достъпен php двигател за игри.


person Julius F    schedule 01.11.2009    source източник


Отговори (6)


PHP няма да има никакви възможности за правене на графична игра, тъй като може да създава спрайтове в движение, но работи от страната на сървъра и цялото действие е в браузъра.

Така че вашият двигател на играта трябва да е от страната, където правите графиките си.

Може да искате да напишете рамка за света, така че множество потребители да могат да преживеят един и същи свят и да си влияят един на друг, в този случай PHP ще бъде добре, тъй като просто ще поддържа модел на света и ще определя какво се е случило.

Така че каквото и да използвате в браузъра за показване на графиките, най-вероятно вече има разработен или разработван двигател за игри, така че може да искате да запишете изискванията си за двигател за игри и след това можете да зададете този въпрос: имат тези изисквания и след като разгледах тези двигатели за игри, които отхвърлих поради тези причини, кой двигател може да е най-добрият за моите нужди.

Би било хубаво да знаете не само вашите изисквания, но и защо сте отхвърлили някои от двигателите там, преди да дадете предложения.

person James Black    schedule 01.11.2009

Мисля, че това, което наистина търсите, е двигател за игри с javascript, тъй като PHP сам по себе си няма да осигури много, за да помогне с 2D взаимодействието в играта (движещи се спрайтове, промяна на резултати и т.н.). Може би погледнете един от няколкото javascript двигатели за игри като:

и няколко други, които са доста лесни за намиране...

person Scott Evernden    schedule 01.11.2009

Какви са причините да напишете собствена рамка? Сигурни ли сте, че искате да насочите енергията си към преоткриване на колелото (което вероятно ще се превърне в объркан процес, тъй като изглежда нямате много опит)? Чистата, стабилна рамка е основата на всеки проект и ако трябва да поправяте това през цялото време, проектът, който разчита на нея, ще пострада ужасно. Защо не изберете добре поддържана рамка с отворен код, за която можете да получите подкрепа от общността?

Повярвайте ми, ще имате достатъчно работа с истинската браузър игра. :)

person Pekka    schedule 01.11.2009
comment
...защото не намерих никаква OS рамка, съответстваща на нашите условия? Рамките там са направени за уеб приложения, добре, но не и за уеб базирани игри. - person Julius F; 01.11.2009
comment
Може би искате да редактирате въпроса си в този случай и да определите какви са вашите нужди. - person Pekka; 01.11.2009
comment
Съгласен съм с това - не можете смислено да напишете своя собствена игрова рамка, докато не сте написали игра и не знаете какво ви трябва за нея. Изградете прототипа, преди да конструирате производствената линия. - person Kylotan; 02.11.2009

Не съм съвсем сигурен каква игра имате предвид, но PHP сам по себе си не е правилният език за програмиране или технология за написване на 2D аспекта на играта.

Твърдите, че имате опит със CMS, което е добре, защото това може да се използва/адаптира към състоянието и обектите на играта CRUD.

Но за графиките помислете за използването на Flash или подобни технологии. Mabye просто обикновен javascript с новото платно html5 и php бекенд.

И относно рамките, въпреки че нямам опит с никоя от тях, има много за флаш и едно просто търсене в Google разкрива много активни експерименти и изследвания за javascript двигатели за игри.

person Sander Versluys    schedule 01.11.2009

Ако искате да разработите своя собствена рамка, предлагам ви първо да разработите няколко игри, като използвате съществуващи рамки, да използвате опита си за това какво работи и какви са вашите нужди в действителност и след това да разработите вашата рамка, използвайки това знание. Предполагам, че това би било по-бързо от разработването на рамка от нулата.

Но мисля, че това, което наистина искате, е да разработите игра и смятате, че разработването на собствена рамка ще бъде по-бързо от намирането на съществуваща и изпробвана рамка и ученето да я използвате. Прав ли съм?

person Zano    schedule 01.11.2009
comment
Да и не. Искам да напиша собствен двигател, за да създам игра, от една страна, но от друга искам да постигна по-високо ниво на програмиране чрез това. - person Julius F; 03.11.2009

Веднъж направих игра на PHP, стратегическа игра, комбинирах JQuery (JS) и PHP, но все още работя върху нея, но щях да започна да правя класове и функции (СЪВЕТ: Използвайте ООП), след като приключите, направете играта.

  1. OOP Framework (класове и функции) - 1 ден / 2 месеца
  2. Графика - 2 дни / 5 месеца
  3. Времева линия и интерфейси на играта - 1 месец / 1 година

--------- ОБЩО: МАКС. 1 година и 7 месеца - МИН. 1 месец и 3 дни ---------

Времето е просто средното време, необходимо за създаване на системата.

Късмет :)

person ADG Developing    schedule 12.01.2014