BLANCO


Главная » 2009 » Февраль » 15 » .fb
.fb
23:12
Хорошие и плохие новости :-) Суть в том, что мне не хватает времени делать игровой мир (кое-как вообще на игру время выделяю), поэтому решено предоставить вам пустыню с Великим Порталом Обновления. То есть игра будет обновляться прямо в онлайне. Так же вы сможете (точнее уже можете) сажать деревья, строить здания, дороги. Все задумывалось так, чтобы мы могли построить города, хотя я понимаю, что на практике это будет несуразная куча фонарей, лавок и дорог. Но я надеюсь, что все же что-нибудь да получится! Я не знаю, как поведет себя Великий Портал на практике, будет ли он создавать асинхронизационный хаос, не ответит нам или будет перегружать мир своим величием до полной остановки игрового времени лагами, но пока тесты нормально идут. Однако не все так гладко, как хотелось бы. Во-первых, Великий Портал Обновления настолько велик, что подчинить его человеческой воле не всегда удается; во-вторых, нужен реальный 24/7 сервер. И еще один отягчающий фактор: у меня нет инета (100-150 байт в сек не в счет). В результате появилось очень очень много организационных деталей, в частности за порядком кто-то должен будет следить (аля gm'ы), они же должны ее тестировать. А пока вот некому.
Автор: Stasundr


Всего комментариев: 8
20.02.2009
8. Stasundr (Stasundr) [Материал]
Фиговая ^_^
Во-первых, с явой я знаком поверхностно и писать полноценный сервер да еще и с нуля будет напряжно. Во-вторых, утечку памяти в гм можно легко отследить, а потому само использование явы теряет смысл.

Я к слову понял, как сделать, чтобы с автообновлением не было проблем и сейчас переписываю его. Раньше было так: у каждого элемента игры есть свой уникальный идентификатор и просто идентификатор. Сначала посылался список уникальных идентификаторов, клиент выбирал нужные ему и возвращал на сервер. Сервер в свою очередь посылал нужные элементы. Но когда элементов за 300, а каждый пакет содержащий uidы содержал 6 + 3*кол-во элементов в списке байт, то рассылать их скажем 50 игрокам уже не хочется. Причем, часто будут отправляться ненужные элементы, т.к. как правило обновление идет последних уидов.
Просто с конца тоже нельзя идти, т.к. при обрыве связи будет фигня. Короче, сейчас я делаю так:
Отправляется номер последнего обновления (допустим last). Если он больше, чем клиентский, клиент сообщает свою версию (my). Сервер отправляет только один пакет обновления (my+1). Когда клиент его полностью установит, он помечает, что теперь его клиент обновлен до my+1 и так до тех пор, пока my не станет равно last. При обрыве связи my просто не увеличивается на 1 и ничего страшного не происходит.


19.02.2009
7. Миша (WertyXBOCT) [Материал]
Есть предложение, писать сервер на Java. Возможно скорость от этого возрастет, а может и нет, но суть в том, что дырок в памяти не будет. Да и можно будет просто обращаться к БД. Ну или создать свою на основе листов и объектов. Как идея?

18.02.2009
6. war. (SRes) [Материал]
Ну, я бы не против помочь ;). Стас, это тебе на заметку..)

18.02.2009
5. Stasundr (Stasundr) [Материал]
Тяжело сделать нормальное автообновление реального времени... Хитрость в том, что когда данных мало, все отлично, но вот когда их много... В общем нужен длительный тест.

17.02.2009
4. Fint_ru [Материал]
"Великий Портал Обновления настолько велик, что подчинить его человеческой воле не всегда удается" звучит зловеще )))
А зачем для тестов 24/7?
Я бы мог последить пару часов в день, тем более давно уже теста жду ). Если что в асю стучи )

16.02.2009
3. Wollf (Wollf) [Материал]
Стас ,свяжись со мной в аське или ещё как то ,пожалуйста.

16.02.2009
2. NeedlZ [Материал]
Йа бы тоге записалсо. Но почему то мою запись удолили.

16.02.2009
1. deathstyle [Материал]
Мне бы в гм"ы записаться, только вот врядли я смогу исполнять нормально свой долг - школа, парень, сон, папа за компом... =\

Имя *:
Email *:
Код *:


2007 © Стасундр и Лёнич
Сайт управляется системой uCoz