![]() |
MySQL запросы в online играх
Вообщем проблема такова, начал писать движок для on-line игры RPG типа Ragnarok. Сделал самые основы: генерация локации, расстановка преград, персонаж бегает и т.д.
Решил пока на этом остановиться т.к. один вопрос вышел у меня на первый план: Получается, что flash клиент должен постоянно передавать данные и очень часто т.к. персонажи постоянно бегают, и надо отслеживать их движения, причем всех сразу... в коде AS это происходит таким образом Код:
onEnterFrame = function() {Запустил Flash вроде как все заработало, залогинился, побегал по карте, проверил БД координаты обновляются, НО не прошло и минуты как flash начал тормозить, и апач начал очень сильно грузиться... Теперь у меня тупиковая ситуация, проект забрасывать неохота, а реального выхода пока не вижу, может есть на форуме люди которые занимались этим или может кто-нить знает другие варианты решения этой проблемы? |
не зная точно что вы делаете трудно дать однозначный совет, но думается мне курить надо в сторону изменения логики сохранения данных. Например, не сохранять каждую точку положения объекта в базе, а только начальную и конечную координту объекта. промежуточные значения хранить и обрабатывать во флеше
|
Цитата:
Я бы начал думать о конкретной реализации игры исходя из того как решить проблему большого потока данных. Например, игра может быть не такой динамичной, видимая облать малой (герой шарахается по темным узким подземельям - разгулятся негде), передвижение крипов обновляется не с сервера а зашито во флешке... |
terbooter
совершенно верно, это и есть игра, но походу реализовать я ее не смогу... за это время я связался с etc и он объяснил мне, что такие серверная часть для таких игр пишется через C++ либо C# , но никак не php... Обмен в таких игрушках идет таков Flash <=> Socket <=> MySQL иначе никак... Цитата:
Цитата:
Цитата:
|
Я бы тоже прошел легбез от __etc на тему "Архитектура MMORPG игр: Flash <=> Socket <=> MySQL".
А чем плохи (хуже сокета на C) потоковые серваки? (Red5) __etc, может откроешь раздел в блоге и помещать туда самые интересные и полезные свои ответы -) Цитата:
не какой-то баг который надо фиксить, а самый первый вопрос который надо решать когда вы задумываете какую-то игру. |
Цитата:
|
| Часовой пояс GMT +4, время: 09:55. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.