4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
1 | |
Не браузерные МО, ММО02.10.2011, 09:34. Показов 3311. Ответов 44
Метки нет (Все метки)
С чего начинать разработку не браузрной МО или ММО? Как делать регистрацию? Где хранить аккаунты? Где хранить игровые данные? Нужен ли игре форум? Как делать чат? Я хочу сделать 3D с помощью OpenGL. Есть по этой библиотеке какие нибудь туториалы? Как без директа делать звук? Как делать обмен между сервером и клиентами? Следует ли предпочесть UPD, или TCP? Какие данные передавать? Исходную 3D геометрию + текстуры, или готовое видео? А может модели с текстурами хранить на клиентах, а передавать только положения и ориентации? А может скомбинировать? Модели и текстуры предметов хранить на клиентах, а геометрию и текстуры местности передавать с сервера? На сколько сложно сделать войс-чат? Посоветуйте среду для разработки клиента, чтоб его можно было с минимальными затратами собрать для Windwos, alt LINUX, UBUNTU, XUBUNTU. Возможна ли сборка подо всё перечисленное на винде? Как писать, чтоб можно было собирать для всего перечисленного, не залезая в исходник? Как делать ботов для игры? Предположим, космическая леталка. Как для неё сделать бота? Как делать баланс в игре? Как делать экономику?
1
|
02.10.2011, 09:34 | |
Ответы с готовыми решениями:
44
Пошаговые ММО: что посоветуете? PowerPad: геймпад для ММО-игр Сборка системника для ММО игр Выбор SSD для системы и пары ММО |
Заблокирован
|
|
02.10.2011, 09:41 | 2 |
собрать команду естественно
амбиции у тебя непомерные. Один человек впринципе всё сделать не сможет, тем более с нулевыми знаниями во всех областях одновременно, попробуй хотя бы приличные танчики написать для начала...
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 10:18 [ТС] | 3 |
Знание языка у меня не нулевое, СУБД знаю. Я новичок только в игрострое и сетевом программировании. И без директа - не значит без библиотек.
Добавлено через 8 минут Давайте начнём с разбора таких вопросов: 1. Где делать регистрацию? В клиенте, или на сайте? 2. Для хранения аккаунтов использовать СУБД, или хранить в файле данных самого приложения? Если СУБД, то какую? 3. Для хранения игровых данных использовать СУБД, или хранить в файле данных самого приложения? А может в оперативе? Если СУБД, то какую? Добавлено через 2 минуты Ну а помимо команды? Какие аспекты дизайна надо рассмотреть в первую очередь? Какие части сервера и клиента пишутся первыми? Добавлено через 3 минуты И ещё. О качестве игры в первом посте ни слова, а кривоподелуха по силам любому и в одиночку. Не хотелось бы кривоподелуху, но на сколько смогу. ММО - крайне сомнительна, а просто интернетная МО - вполне вероятна.
0
|
1674 / 1046 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
02.10.2011, 10:37 | 4 |
Встречаются и такие, и такие варианты, иногда сразу оба. По большому счёту, без разницы, с учётом ответа на следующий вопрос.
Разумеется, только СУБД и только на сервере. Клиенту только предоставлять доступ для проверки пароля, при этом должен соблюдаться безопасный протокол "доказательства с нулевым знанием". То есть, сервер не должен знать сам пароль, должен хранить только его хэш. Для авторизации сервер предъявляет некую случайно сгенерированную информацию, клиент обрабатывает её хэшем пароля и предъявляет серверу, тот сравнивает с результатами такой же операции на своей стороне. Что до выбора СУБД, то нужно выбирать что-то по возможностям: что можно позволить себе с точки зрения финансов, что лучше знакомо, что потянет достаточно интенсивную работу с большим количеством игроков. Бывают варианты, когда проверку клиентов предоставляют сторонним организациям, но тут лучше всё самому. Все игровые данные, которые сохраняются между сессиями, хранить исключительно на сервере в СУБД, причём изменения вносить сразу же по мере их возникновения. Исключение - личные настройки пользователя, хотя и их можно на сервере хранить. По поводу СУБД - см. выше.
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 11:27 [ТС] | 5 |
То, что на сервере, это и так понятно.
Добавлено через 5 минут Сервер сгенерил случайное число, или несколько таких чисел и передал клиенту. Как теперь считатется хэш? Передал клиент этот хеш на сервер. С чем его сравнивать? Ведь если сервер не знает пароля, то не сможет вычислить его хеш. Значит надо подставить полученный хеш в обратную функцию. Как её определить? Понятно, что при разработке. Но как? Добавлено через 3 минуты Тогда в клиенте. Добавлено через 2 минуты А в какой интегрированной среде лучше делать клиент, чтоб его можно было без изменения исходника собрать под разные операционные системы? JAVA и C# просьба не предлагать.
0
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
02.10.2011, 11:31 | 6 |
НУ БОЖЕ Ж МОЙ!
Вы СЛИШКОМ МНОГО НА СЕБЯ БЕРЁТЕ. Нулевые знания вкупе с отсутствием навыка использовать Гугл (а вопрос про туториалы по OpenGL говорит именно об этом. Вам MSDN), даёт чёткую уверенность в невозможности завершить этот проект в долгосрочной перспективе. Тут каждое предложение это ОЧЕНЬ большой раздел, который не рассмотреть в рамках форума, не то что одной темы. И я позволю себе добавить ещё вопросы к твоему списку: Как нарисовать графику? Как построить 3D модель? Как записать звуки и музыку? Как загрузить модель в игру? Что такое UV-mapping? Как синхронизировать действия игроков? Как придумать сценарий?
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 11:36 [ТС] | 7 |
Добавлено через 41 секунду Ну это как раз известно. Добавлено через 33 секунды Тем более.
0
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
02.10.2011, 11:37 | 8 |
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 11:45 [ТС] | 9 |
Что значит "синхронизировать"? Это игра, а не синхронное плавание. А место второго вопроса должен занимать "С каких аспектов начинать диздок?".
Добавлено через 2 минуты Вообще http://ru.wikipedia.org/wiki/%... 0%B8%D1%8F - это о том хеше, или о чём то другом? Добавлено через 4 минуты Конкретная хеш-функция должна быть засекречена?
0
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
02.10.2011, 11:51 | 10 |
Сообщение было отмечено как решение
Решение
По лесу шёл Злобный Тролль. Шёл, никого не трогал, как вдруг, на опушке леса увидел прекрасную принцессу, которая собирала ягоды. Тихо к ней подкравшись, Тролль отвесил принцессе пенделя. Взвизгнув принцесса скрылась за горизонтом...
Компьютер 1: принцесса пролетела 100500 метров и упала в озеро. Прекрасный принц вытащил её, откачал и они жили долго и счастливо. Компьютер 2: принцесса пролетела 100499 метров (погрешность вычислений, пичалька), зацепилась за вершину дерева, вспорола себе живот и так и осталась висеть, разлагаясь под палящим солнцем. Принцу она, почему-то не понравилась. Для остальных 100 компьютеров развития событий тоже могут пойти по разному. Как будешь синхронизировать, чтобы одно и то же действие имело одни и те же последствия на всех компьютерах сети? P.S. Если думаешь, что я прикалываюсь, то спешу тебя расстроить. Это реальная проблема, возникшая при разработке игры Blac&Whit, только я персонажей поменял. Читал блоги разработчиков.)
3
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 11:55 [ТС] | 11 |
Добавлено через 1 минуту Но ведь расстояние посчитано один раз на сервере! Оно не может иметь 100 разных ошибок округления.
0
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
02.10.2011, 11:56 | 12 |
Вот видишь! Ты уже принял решение, все физические расчёты выполнять на сервере. Уверен, что производительности сервера хватит?
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 11:59 [ТС] | 13 |
А ты предлагаешь доверить расчёты клиенту? Мало того, что кто нибудь обязательно в них влезет, так они ещё и насчитают каждый своё. А у кого нибудь точно не хватит или сети, или ЦП или посчитать всю динамику, или получить для неё данные. На роль же сервера выбирают мощную машину, но так как суперкомпьютер мне не свети, то
становится ещё одним аргументом против реализуемости ММО. Но не МО вообще. Спектруму и то хватало камня на все расчёты в космическом сингле. Думаешь пень четвёртый после этого не потянет все расчёты игроков для 16-ти? А со временем будет и многоядерный, то есть как раз мощный комп.
0
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
02.10.2011, 12:03 | 14 |
Я ничего не предлагаю. Ты проектировщик, ты принимаешь проектные решения. Я лишь задаю наводящие вопросы.
Если сто магов одновременно разрушат 100 домов в разных частях мира, сервер сможет вычислить происходящие разрушения в реал-тайм? (А скомпилировать потоковое видео высокой чёткости для 100 игроков одновременно и передать его в сеть?)
0
|
Фрилансер
|
|
02.10.2011, 12:04 | 15 |
Лучше всего через сайт
На сервере Обязательно При самом запуске приложения, оно должно считать с серверной части размещение объектов (не текстур, а объектов). Текстуры же должны хранится в клиентской части. Передавать нужно размещение игроков относительно объектов и других игроков. QT Возможна, с незначительными изменениями Писать исключительно по стандарту языка Бот понятие очень большое. Зависит от того что бот должен делать. Баланс чего? Придумать некоторую игровую валюту, потом сравнивать ее количество, количество "опыта", для получения новых навыков
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 12:12 [ТС] | 16 |
Опять 100? Причём, одних магов, не считая рыцарей с лучниками. ММО рассматриваем только теоретически, а делать буду МО. Не потянет сотню игроков - сделаю меньше. Игра на двоих - тоже МО.
0
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
02.10.2011, 12:17 | 17 |
Ты определился, на какое количество игроков рассчитан сервер? Сколько одновременно игр может быть запущено? (я не играю в МО-ММО игры, поэтому могу терминологию напутать. Миров, Сетов одновременно сколько может быть)
Честно говоря, я знаю что такое ММО, но не знаю, что такое МО.( Если 473 робота выстрелят по 179 танкам, сервер сможет вычислить полёт ракет и просчитать последствия взрывов/попаданий/промахов?
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
02.10.2011, 12:23 [ТС] | 18 |
Читай: http://ru.wikipedia.org/wiki/Игровой баланс. Как его делать в МО?
Добавлено через 2 минуты На одном сервере ровно одна игра. Добавлено через 1 минуту На сколько хватит, но точно не больше 1024-х одновременно. А может и в переделах 10-ти. Добавлено через 2 минуты МО - многопользовательская онлайн игра, ММО - массовая многопользовательская онлайн игра, отличается тем, что: 1 в неё могут играть от нескольких сотен игроков одновременно, 2 каждый конкретный игрок может войти в игру, или выйти из неё в любой момент, не мешаю остальным.
2
|
Фрилансер
|
|
02.10.2011, 12:24 | 19 |
taras atavin, ну допустим ты напишешь игровую часть (игровой сервер), и клиент. Где собрался хранить серверную часть? Как будешь информацию с сервера передавать на сайт? (Статистика и т.д.)
Без ответов на эти вопросы продолжать нет смысла
0
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
02.10.2011, 12:24 | 20 |
Когда у одного BFG, а у другого пукалка - плохой баланс.
Когда один должен пройти налево 3 метра за красной бронёй, а второму приходится бежать за километр за масеньким хелсом - плохой баланс. Когда все находятся в примерно равных ресурсных/стратегических условиях - хороший баланс. Продумать баланс очень сложно, т.к. почти всегда можно найти трюк, для изменения баланса в свою сторону. Т.е. нужно играть, играть и играть и со временем баланс можно будет сделать хорошим. Но сперва нужно определиться со словом "хороший баланс".
0
|
02.10.2011, 12:24 | |
02.10.2011, 12:24 | |
Помогаю со студенческими работами здесь
20
Браузерные артефакты? о.о Браузерные игры Браузерные ограничения JS Ищу команду разработчиков для создания ММО игры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |