Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ Вопросы по RunUO _ Старые вопросы о главном. Подбор клиента к ранке.

Автор: HeavyMetalKid 25.7.2018, 14:04

Привет всем. Так вышло что решил свободное время потратить на то чтобы снова попытаться поднять сервер. Просто играть уже видимо не так интересно.

Вопрос - вот на сайте https://www.runuo.net/

есть раздел с самими ранками:

RunUO 2.3 - Stable
RunUO 2.6 - Beta
RunUO 2.7 - Alpha

Недолго думая я скачал RunUO 2.6 - Beta, так как 2.3 мне показалась слишком старой, а 2,7 - слишком сырой.

Вопрос - поддерживает ли ранка 2.6 клиент с подобной графикой:

Изображение

Если нет, то какая ранка поддерживает. Если да, то какой это клиент и где можно скачать?

Автор: olduo.com 25.7.2018, 16:17

с большой долей уверенности могу сказать что это клиент kingdom reborn

Автор: HeavyMetalKid 25.7.2018, 16:24

Цитата(olduo.com @ 25.7.2018, 16:17) *

с большой долей уверенности могу сказать что это клиент kingdom reborn



И судя по отсутствию mul файлов в клиенте КР - с ранкой он не дружит? Или есть какая-то возможность запустить подобный "3д" клиент вместе с ранкой? Видимо можно ей скормить мул файлы с 2д клиента. Вопрос тогда в том - будут-ли изменения в них отображаться в 3д клиенте?

Автор: Juzzver 25.7.2018, 17:56

Возможно ранка будет поддерживать вход и игру в этом 3д (Kingdom of Reborn) клиенте, но множество функций, такие как грид сетка бек пака, какие-то диалоговые и контекстовые меню, а так же хоткеи с макросами - работать не будут. Но играть при этом можно будет. Иными словами, под новые фишки этих 3д клиентов - надо реализовывать логику на стороне сервера. Остальная же логика соответствует 2д клиенту, а значит стандартные вещи работать должны. По крайней мере это работает с Enhanced Client.

Автор: HeavyMetalKid 31.7.2018, 11:54

Цитата(Juzzver @ 25.7.2018, 17:56) *

Возможно ранка будет поддерживать вход и игру в этом 3д (Kingdom of Reborn) клиенте, но множество функций, такие как грид сетка бек пака, какие-то диалоговые и контекстовые меню, а так же хоткеи с макросами - работать не будут. Но играть при этом можно будет. Иными словами, под новые фишки этих 3д клиентов - надо реализовывать логику на стороне сервера. Остальная же логика соответствует 2д клиенту, а значит стандартные вещи работать должны. По крайней мере это работает с Enhanced Client.



Вот например есть такой сервер: http://runuo.theabyss.ru/
3д уо причем как они пишут - сервер runuo.
И видимо там в достаточной мере он поддержан. Поэтому хочется понять - это они настолько ранку и возможно сам клиент переработали чтобы все было окей или уже есть готовая ранка нормально функционирующая с подобным клиентом.

Автор: Juzzver 31.7.2018, 13:53

У них поддержка 3д (еще на то время KR клиента) была реализована примерно в году 2008.


В интернете можно поискать проект GeNova, на гитхабе были сорсы. Там есть поддержка KR клиента, она в значительной степени совместима с Enhanced 3д клиентом, но сборка уже довольно старая, возможно самые свежие версии Enhanced там работать не будут, из-за отсутствия поддержки новых пакетов. В этом случае можно поискать готовые сборки 3д клиента времен 2010-2012х годов примерно. На торрентах может валяться.

Что касается поддержки свежих версий Enhanced клиента, то можно ServUO попробовать, их сборка должна поддерживать свежие пакеты и большинство фьютчерсов этого клиента.

Автор: HeavyMetalKid 5.8.2018, 13:06

Цитата(Juzzver @ 31.7.2018, 13:53) *

У них поддержка 3д (еще на то время KR клиента) была реализована примерно в году 2008.
В интернете можно поискать проект GeNova, на гитхабе были сорсы. Там есть поддержка KR клиента, она в значительной степени совместима с Enhanced 3д клиентом, но сборка уже довольно старая, возможно самые свежие версии Enhanced там работать не будут, из-за отсутствия поддержки новых пакетов. В этом случае можно поискать готовые сборки 3д клиента времен 2010-2012х годов примерно. На торрентах может валяться.

Что касается поддержки свежих версий Enhanced клиента, то можно ServUO попробовать, их сборка должна поддерживать свежие пакеты и большинство фьютчерсов этого клиента.


Juzzver, спасибо. Поставил ServUO, нашел подходящий Enhanced клиент. Все работает, уже даже разобрался как изменить стартовую локацию персонажа.

Вот что смущает, хотя ServUO и поддерживает 3д клиент, при запуске нужно все равно указывать файлы 2д клиента. И соответственно если я хочу внести какие-то изменения во внешний мир - мне нужно редактировать файлы 2д клиента. Но в таком случае в 3д клиенте этих изменений не будет. Как разрешить эту неурядицу?

Автор: Wap 5.8.2018, 22:34

Цитата(HeavyMetalKid @ 5.8.2018, 11:06) *
Вот что смущает, хотя ServUO и поддерживает 3д клиент, при запуске нужно все равно указывать файлы 2д клиента. И соответственно если я хочу внести какие-то изменения во внешний мир - мне нужно редактировать файлы 2д клиента. Но в таком случае в 3д клиенте этих изменений не будет. Как разрешить эту неурядицу?
А ты хочешь чтобы игроки играли только на 3D? Это заведомо тупик.

Соответственно, чтобы игроки могли нормально играть, в любом случае нужно редактировать оба вида файлов или переносить изменения софтом.

Автор: Narciruss 5.8.2018, 23:54

Ребят, хочется для обучения покопаться в сорсах рануо smile.gif

Интересует такой вопрос — много ли различий в ядрах текущих актуальных версий рануо? Понятно что есть разница в реализациях уо-фич, но меня в основном интересует возможность играть через EC клиент, а он есть даже в последних версиях https://github.com/runuo/runuo есть на сколько я понимаю.
И поддержка linux.

Правда ли servuo такой треш (зато очень активный судя по гитхабу, что огромный плюс)? Стоит ли искать мистическую runuo re? smile.gif

Автор: HeavyMetalKid 6.8.2018, 0:01

Wap, планировал только 3д клиент. 2д считаю слишком устаревшим. Нетцели создать супер шард который всем понравиться - поэтому могу обойтись только 3д. Но если будет возможность без особых усилий с файлов одной версии перекидывать изменений на файлы другой - может и о 2д позабочусь.
Поэтому теперь меня интересует что это за софт для переноса изменений?


Narciruss, в чем трешовость по твоему в servUO?

Автор: Narciruss 6.8.2018, 0:09

Тут иногда проскакивают какие-то притензии к коду servuo smile.gif мне хочется понять на основании чего?

Автор: Soteric 6.8.2018, 8:01

Давно не смотрел, но по-моему разница между ServUO и последним RunUO больше в кастомизации и поддержке последних УО фичей. По-крайней мере так было изначально. В плане ядра не думаю, что ServUO что-то принципиально поменял, опять же если только добавляли поддержку каких-то последних фич.

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

Про RunUO RE я слышал только, что в нем все было хорошо и бегали розовые пони, а в оригинальном RunUO все было плохо. Чем именно они отличаются знает только автор. С тех пор прошло уже столько времени, а RE вроде как не обновлялся. Я бы не заморачивался и не искал в нем грааля. Если ты не планируешь какой-то адски оригинальный ни на что непохожий УО вроде квинты, то лучше взять ServUO и пилить его в нужном тебе направлении.

Автор: Narciruss 6.8.2018, 10:37

Цитата(Soteric @ 6.8.2018, 8:01) *

Давно не смотрел, но по-моему разница между ServUO и последним RunUO больше в кастомизации и поддержке последних УО фичей. По-крайней мере так было изначально. В плане ядра не думаю, что ServUO что-то принципиально поменял, опять же если только добавляли поддержку каких-то последних фич.

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

Про RunUO RE я слышал только, что в нем все было хорошо и бегали розовые пони, а в оригинальном RunUO все было плохо. Чем именно они отличаются знает только автор. С тех пор прошло уже столько времени, а RE вроде как не обновлялся. Я бы не заморачивался и не искал в нем грааля. Если ты не планируешь какой-то адски оригинальный ни на что непохожий УО вроде квинты, то лучше взять ServUO и пилить его в нужном тебе направлении.


Меня интересует advanced-ai (на сколько его можно реализовать) + контролирование большого кол-во нпс-ов + возможность обработки огромного кол-во item'ов в одном регионе smile.gif Смотрю исходники servuo и никаких особых притензий на первый не глубокий взгляд не возникает. В общем хрен с ним, в servuo кажется встроена какая-та vita-core для всяких таких штук, не думаю что в runuo re есть какой-то магический оптимизипрованный отправлятель пакетов.

Автор: Juzzver 6.8.2018, 12:01

Цитата
Правда ли servuo такой треш (зато очень активный судя по гитхабу, что огромный плюс)? Стоит ли искать мистическую runuo re?

Искать не стоит, даже если найдешь - там всё будет уже устаревшее.
Ставь сервуо, с нуля - это более подходящий вариант, чем ранкой догонять все интересные фитчи с оси контента.
Цитата
Меня интересует advanced-ai (на сколько его можно реализовать) + контролирование большого кол-во нпс-ов + возможность обработки огромного кол-во item'ов в одном регионе Смотрю исходники servuo и никаких особых притензий на первый не глубокий взгляд не возникает. В общем хрен с ним, в servuo кажется встроена какая-та vita-core для всяких таких штук, не думаю что в runuo re есть какой-то магический оптимизипрованный отправлятель пакетов.

всё что в пределах возможностей клиента - всё это реализуемо на стороне сервера ранки/сервуо.

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

Автор: Narciruss 6.8.2018, 13:17

Спасибо за информацию smile.gif Жду когда https://www.servuo.com/ поднимется.

Автор: Aimed 6.8.2018, 13:20

ServUO однозначно.
RunUO это мертвый проект. Код и там и там плохой есть, тут Soteric уже все грамотно написал по этому поводу.

Advanced-ai это что? Машинальное обучение?))

Я когда-то выкладывал видос как у меня на УОРПГ на одном экране 5к орк шаманов было и они в меня кастовали. Клиент не вытягивал такое кол-во объектов на экране и жутко тормозил, а сервер вполне себе работал.

Автор: Narciruss 6.8.2018, 13:28

Цитата(Aimed @ 6.8.2018, 13:20) *

ServUO однозначно.
RunUO это мертвый проект. Код и там и там плохой есть, тут Soteric уже все грамотно написал по этому поводу.

Advanced-ai это что? Машинальное обучение?))

Я когда-то выкладывал видос как у меня на УОРПГ на одном экране 5к орк шаманов было и они в меня кастовали. Клиент не вытягивал такое кол-во объектов на экране и жутко тормозил, а сервер вполне себе работал.


Кстати, а orion вытягивает? smile.gif Самая большая засада с орионом в том, что он на с++ laugh.gif был бы rust или golang я бы влез с удовольствием. Хоть и видно, что исходники ориона очень аккуратные, и никакого mind-fuckа от странных с-макросов я у себя не наблюдал. (кстати, кто может подсказать каких знаний с++, точнее говоря какого из стандартов с++ хватит для работы с сорсами ориона? общее понимание есть, но изучать каждый новый тип поинторов, выходящих в каждом стандарте не хочется, простите за ленность)

P.S. - на счет advanced ai — скажем так, нет, не машинное обучение, а длинные сценарии ai. Например контролируемое скопление нпс-ов в кол-ве 100-200 штук в одном регионе, в которое заложено кастомное поведение, типа одна подгруппа нпс-ов неторопливо воюет с другой подгруппой. Пишу свои хотелки и понимаю, что наверное проблем с таким не будет, 5000 орков на одном скрине мне не нужно smile.gif С другой стороны 5к орков разбросанных по серверу и не просто ходящих по около-рандому пути мне все-таки нужно.

Немного запутанно описал smile.gif

Автор: Aimed 6.8.2018, 15:04

Цитата(Narciruss @ 6.8.2018, 12:28) *

Кстати, а orion вытягивает? smile.gif Самая большая засада с орионом в том, что он на с++ laugh.gif был бы rust или golang я бы влез с удовольствием. Хоть и видно, что исходники ориона очень аккуратные, и никакого mind-fuckа от странных с-макросов я у себя не наблюдал. (кстати, кто может подсказать каких знаний с++, точнее говоря какого из стандартов с++ хватит для работы с сорсами ориона? общее понимание есть, но изучать каждый новый тип поинторов, выходящих в каждом стандарте не хочется, простите за ленность)

P.S. - на счет advanced ai — скажем так, нет, не машинное обучение, а длинные сценарии ai. Например контролируемое скопление нпс-ов в кол-ве 100-200 штук в одном регионе, в которое заложенное кастомное поведение, типа одна подгруппа нпс-ов неторопливо воюет с другой подгруппой. Пишу свои хотелки и понимаю, что наверное проблем с таким не будет, 5000 орков на одном скрине мне не нужно smile.gif С другой стороны 5к орков разбросанных по серверу и не просто ходящих по около-рандому пути мне все-таки нужно.

Немного запутанно описал smile.gif



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

Насчет Ориона:
Нет, не вытянет конечно же. Орион никаких рендер оптимизаций не имеет, там просто в immediate mode рисуется все что попадает в список для отрисовки.
Орион хоть и на С++ написан, но ООП там очень базовое и понятное любому, шаблоны не используются и много кода написано в С стиле. Из выкрутасов стандартов С++ ничего не используется. Если ты на С умеешь кодить и хоть немного понимаешь ООП - то Орион для тебя будет очень простым.

Автор: Narciruss 6.8.2018, 15:42

Цитата(Aimed @ 6.8.2018, 15:04) *

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

Насчет Ориона:
Нет, не вытянет конечно же. Орион никаких рендер оптимизаций не имеет, там просто в immediate mode рисуется все что попадает в список для отрисовки.
Орион хоть и на С++ написан, но ООП там очень базовое и понятное любому, шаблоны не используются и много кода написано в С стиле. Из выкрутасов стандартов С++ ничего не используется. Если ты на С умеешь кодить и хоть немного понимаешь ООП - то Орион для тебя будет очень простым.


Отлично, кстати, что есть такая оптимизация НПС-ов smile.gif (интересно есть ли такая оптимизация на сфере, кстати, lol). Тут кстати наверное и не будет проблем, если саму логику просчитывать в отдельном треде, а runuo api уже использовать как рендерилку (но это я уже ухожу в фантазии и вспоминаю всякие умные современные рендерилки веба аля vdom).

То что клиент тормозит на большом кол-ве объектов печально, хотелось бы строить окружение прямо из уо-объектов (мечты о динамическом мире не отпускают, пусть это и мечты-да-фантазии). Простой пример — британия вдруг покрывается пеплом и снегом.

Орион кстати более менее нормально работает на большом кол-во не-статичных объектов, первая прогрузка, конечно заметна.

ООП в крови уже laugh.gif 8 лет руби/джаваскриптов/java и так далее. Но С++ всегда боялся и обходил стороной, C более менее могу. Хорошо, что нет шаблонов и в коде есть упоминание auto. Хочется думать в сторону патчинга UI клиента, не более, наврятли я смогу осилить запатчить движок рендеринга (кстати, сколько может стоить такая штука на заказ? 30-50к деревянных? — это реальные суммы за кастом патчи или дешевле/дороже?)

Автор: Juzzver 6.8.2018, 15:56

Цитата
Простой пример — британия вдруг покрывается пеплом и снегом.

Если сильно много объектов, то можно карту отдельную завести, где это всё уже в статике будет, и потом в один миг просто переключить карту в реалтайме уже посредством сервера. Если будет создаваться скажем тысяча и более объектов - это вызовет кратковременную задержку потока, и помимо еще и дисконект клиента у которого лопнет буфер), потому вариант с картой отдельной тут более оптимальный.

Автор: olduo.com 6.8.2018, 16:00

Цитата(Narciruss @ 6.8.2018, 13:28) *

на счет advanced ai — скажем так, нет, не машинное обучение, а длинные сценарии ai. Например контролируемое скопление нпс-ов в кол-ве 100-200 штук в одном регионе, в которое заложено кастомное поведение

я еще не встретил уо эмуляторов на которых это нельзя было бы сделать. я такое делал на ПОЛе
[+]

по приколу делал и 5000 юнитов (2500вс2500) в локации размером с город. тут главное главное руки кодера, у меня домашний комп особой нагрузки не ощутил, лагов не было. делал и корявый вариант обучаемого ИИ на основе нейронных сетей, но применения пока не нашел.
Цитата(Narciruss @ 6.8.2018, 15:42) *

хотелось бы строить окружение прямо из уо-объектов (мечты о динамическом мире не отпускают, пусть это и мечты-да-фантазии). Простой пример — британия вдруг покрывается пеплом и снегом.
и такое делал, например рандомно генерируемые данжены и копание шахт под землей типа 2д майнкрафт, но тут сервер лагал потому что реализовал не через мультисы, а просто тайлами. каждый тайл это пакет от сервера в сторону клиента и это только на один тайл. если один клиент, то проблем нет, 20 человек и кол-во пакетов стало х20 на каждый клиент и сервер стал тормозить. к слову на ОСИ слышал делали снег на карте, как, вопрос не изучал.

Автор: Narciruss 6.8.2018, 16:06

Цитата(Juzzver @ 6.8.2018, 15:56) *

Если сильно много объектов, то можно карту отдельную завести, где это всё уже в статике будет, и потом в один миг просто переключить карту в реалтайме уже посредством сервера. Если будет создаваться скажем тысяча и более объектов - это вызовет кратковременную задержку потока, и помимо еще и дисконект клиента у которого лопнет буфер), потому вариант с картой отдельной тут более оптимальный.


ээээ подмена карты? huh.gif
офигеть, не думал никогда о таком. Правильно ли я понимаю, что сейчас в клиент можно запихнуть карты произвольного размера? Подмена карты это аля смена facet'а?

Автор: Aimed 6.8.2018, 16:12

Цитата(Narciruss @ 6.8.2018, 14:42) *

Отлично, кстати, что есть такая оптимизация НПС-ов smile.gif (интересно есть ли такая оптимизация на сфере, кстати, lol).

Да есть, ещё со времен 51 сферы есть. Это по моему один из основных механизмов работы с ИИ. Иначе сервер постоянно будет что-то обрабатывать и жрать ресурсы.


Цитата(Narciruss @ 6.8.2018, 14:42) *

Тут кстати наверное и не будет проблем, если саму логику просчитывать в отдельном треде, а runuo api уже использовать как рендерилку (но это я уже ухожу в фантазии и вспоминаю всякие умные современные рендерилки веба аля vdom).


С таким подходом будут проблемы. Пока в другом треде будет обрабатываться логика где используются данные из мейн треда, состояние обьектов в мейн треде уже наверняка изменится и весь твой анализ из параллельного треда устареет. Тут обязательным условием является то что действия из твоего анализа данных должны выполняться сразу же после полученных данных из мейн треда, тобишь в самом мейн треде.
Из того что я знаю, решение такой проблемы лучше делать разбивая главный тред на несколько под определенные части карты, либо разбивать карту на несколько серверов, где у каждого куска будет свой мейн тред или сервер.


Цитата(Narciruss @ 6.8.2018, 14:42) *
То что клиент тормозит на большом кол-ве объектов печально, хотелось бы строить окружение прямо из уо-объектов (мечты о динамическом мире не отпускают, пусть это и мечты-да-фантазии). Простой пример — британия вдруг покрывается пеплом и снегом.

Орион кстати более менее нормально работает на большом кол-во не-статичных объектов, первая прогрузка, конечно заметна.

ООП в крови уже laugh.gif 8 лет руби/джаваскриптов/java и так далее. Но С++ всегда боялся и обходил стороной, C более менее могу. Хорошо, что нет шаблонов и в коде есть упоминание auto. Хочется думать в сторону патчинга UI клиента, не более, наврятли я смогу осилить запатчить движок рендеринга (кстати, сколько может стоить такая штука на заказ? 30-50к деревянных?)


Есть такой проект - https://www.youtube.com/channel/UCu_ouxy6l4DUMhQjcDLO6kw, c его помощью можно реализовать то что ты хочешь.

Клиент и так рисует дофига обьектов. Там могут быть десятки тысяч обьектов на одном экране без всяких 5к орков. Спрайты пола, спрайты зданий, анимированный статики и так далее и на соверменной видеокарте он нормально справляется, но не у всех она есть. А что б 5к одинаковых орков так сильно не нагружали нужно оптимизации делать.

Я от Ориона отошел, так как я решил профессионально заняться гейм девом и у меня больше нету времени на опен сорс проектики в свободное время. Если тебе нужны будут форки Ориона, то лучше пиши в скайп hotridee. Если будет что-то серьёзное, то думаю он найдет свободное для тебя время smile.gif Но лично я не стал бы так сильно на Орион ставить.

Автор: Narciruss 6.8.2018, 16:14

Цитата(olduo.com @ 6.8.2018, 16:00) *

я еще не встретил уо эмуляторов на которых это нельзя было бы сделать. я такое делал на ПОЛе
[+]

по приколу делал и 5000 юнитов (2500вс2500) в локации размером с город. тут главное главное руки кодера, у меня домашний комп особой нагрузки не ощутил, лагов не было. делал и корявый вариант обучаемого ИИ на основе нейронных сетей, но применения пока не нашел.
и такое делал, например рандомно генерируемые данжены и копание шахт под землей типа 2д майнкрафт, но тут сервер лагал потому что реализовал не через мультисы, а просто тайлами. каждый тайл это пакет от сервера в сторону клиента и это только на один тайл. если один клиент, то проблем нет, 20 человек и кол-во пакетов стало х20 на каждый клиент и сервер стал тормозить. к слову на ОСИ слышал делали снег на карте, как, вопрос не изучал.


Вот это и проблема да. Мне пока матчасти не хватает, чтобы понять, можно ли например брать статические куски (есть же дома, к примеру) и динамически их размещать в регионе, тогда по идеи level-генерация может быть проще, если взять с 10-ок готовых квадратов и динамически из них составить уровень.

Ну вот если немного накидать снега по холмам брита - то клиент, думаю, справится с таким. С другой стороны напрашивается тот факт, что официальный клиент возможно умеет как-то специально такие ситуации рендерить? И почему нельзя отправлять сразу пачку пакетов, есть ли в этом смысл? (с текущим рендерингом понятно, что толку от этого не будет)

Автор: Aimed 6.8.2018, 16:21

Цитата(olduo.com @ 6.8.2018, 15:00) *

по приколу делал и 5000 юнитов (2500вс2500) в локации размером с город. тут главное главное руки кодера, у меня домашний комп особой нагрузки не ощутил, лагов не было. делал и корявый вариант обучаемого ИИ на основе нейронных сетей, но применения пока не нашел.



Вот бы ещё при онлайне хотя бы в 50 человек такое потестить ))

Автор: olduo.com 6.8.2018, 16:26

Цитата(Narciruss @ 6.8.2018, 16:14) *

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

да конечно и реализация была бы проще, но я кодю под енханцед клиент, а там делать мультисы не тревильно. на 2д просто

Цитата(Aimed @ 6.8.2018, 16:21) *

Вот бы ещё при онлайне хотя бы в 50 человек такое потестить ))

да хоть 500, АИ же все равно кого бить человека или другого НПЦ. потом 5000 НПц они не в пределах 1 экрана, а в локе размером с город, т.е. они все сразу не ударят 1 игрока

Автор: Narciruss 6.8.2018, 16:28

Цитата(Aimed @ 6.8.2018, 16:12) *

С таким подходом будут проблемы.


Да, понял. Там где не может быть async'а — его быть не может, грубо говоря laugh.gif

Цитата(Aimed @ 6.8.2018, 16:12) *

либо разбивать карту на несколько серверов


Это возможно сделать? Я так понимаю проблема в том что придется делать сетевую синхронизацию (трансфер одного сериализуемого объекта между сервером) между серверами, дополнять сиреализицию и вводить server_id некий? Это мега круто, если это возможно сделать красиво smile.gif

Меня именно этот вопрос очень волнует — как клиент будет наблюдать переход между серверами?

И в теории: можно как-то послать клиенту пакеты, чтобы его разлогинело и залогинело на другой сервер? На оскоме такое реализовано (но возможно у них клиент патченный).

Цитата(Aimed @ 6.8.2018, 16:12) *

А что б 5к одинаковых орков так сильно не нагружали нужно оптимизации делать.

Могу я уточнить у тебя какого рода оптимизации? Хотя бы примерно. Мне понятно что существуют самые очевиные оптимизации — типа отрисовывать не по одному пакету, а только по группе пакетов, но дальше моя мысль никуда не идет laugh.gif

Цитата(Aimed @ 6.8.2018, 16:12) *

Но лично я не стал бы так сильно на Орион ставить.

Потому что скоро он станет outdated?

P.S. я мечтаю уйти в гейм дев, но упираюсь в то что трудно с графикой smile.gif хочется попрактиковаться на uo пока.

Автор: Aimed 6.8.2018, 16:41

Цитата(olduo.com @ 6.8.2018, 15:26) *

да хоть 500, АИ же все равно кого бить человека или другого НПЦ. потом 5000 НПц они не в пределах 1 экрана, а в локе размером с город, т.е. они все сразу не ударят 1 игрока


Ну они ж там не на месте стоят? Да и 5к НПЦ даже для Тринсика это очень плотно. У тебя на видео 500 на 500, а тут в 10 раз больше получается. + в любом момент может произойти скопление, а так же есть игроки которых нужно апдейтить. Я уверен что сервер начнет подтормаживать.

Автор: olduo.com 6.8.2018, 16:55

Цитата(Aimed @ 6.8.2018, 16:41) *

Ну они ж там не на месте стоят? Да и 5к НПЦ даже для Тринсика это очень плотно. У тебя на видео 500 на 500, а тут в 10 раз больше получается. + в любом момент может произойти скопление, а так же есть игроки которых нужно апдейтить. Я уверен что сервер начнет подтормаживать.

ты все правильно говоришь, абсолютно согласен. поэтому в АИ есть анти застревание, случайные действия убегаение догоняние итдитп. поэтому многие не сразу понимают глядя на видео что это не игроки.

Автор: Aimed 6.8.2018, 17:02

Цитата(Narciruss @ 6.8.2018, 15:28) *

Это возможно сделать? Я так понимаю проблема в том что придется делать сетевую синхронизацию (трансфер одного сериализуемого объекта между сервером) между серверами, дополнять сиреализицию и вводить server_id некий? Это мега круто, если это возможно сделать красиво smile.gif


А почему нет? Правда в контексте УО в этом будет мало смысла.
Ещё систему сейвов через общую БД прийдется сделать и на каждой машине свою локальную БД, для своего региона, которая постоянно держит связь с главной БД.


Цитата(Narciruss @ 6.8.2018, 15:28) *

Меня именно этот вопрос очень волнует — как клиент будет наблюдать переход между серверами?
И в теории: можно как-то послать клиенту пакеты, чтобы его разлогинело и залогинело на другой сервер? На оскоме такое реализовано (но возможно у них клиент патченный).


Как сделаешь - так будет))) Можно сделать так что б обслуживаемый сервер посылал пакеты для создания новых коннектов, к 2-3-4 серверам одновременно. Когда подходишь с границе регионов и при определенном переходе обращаешься уже к правильному сокету и тебя начнет обслуживать уже другой сервер. Никакой видимой разницы быть не должно, если все сделано грамотно. Кстати в LiF: MMO такая система реализована.

Цитата(Narciruss @ 6.8.2018, 15:28) *


Могу я уточнить у тебя какого рода оптимизации? Хотя бы примерно. Мне понятно что существуют самые очевиные оптимизации — типа отрисовывать не по одному пакету, а только по группе пакетов, но дальше моя мысль никуда не идет laugh.gif

Отрисовка пакетов?)
Текстурирование статики, батчинг спрайтов.

Цитата(Narciruss @ 6.8.2018, 15:28) *

Потому что скоро он станет outdated?


Нет, потому что УО это дохлый номер и вкладывать в новый УО сервер такие деньги нецелесообразно.

Автор: Narciruss 6.8.2018, 17:06

Цитата(Aimed @ 6.8.2018, 17:02) *

А почему нет? Правда в контексте УО в этом будет мало смысла.
Систему сейвов через общую БД сделать и на каждой машине свою локальную БД, для своего региона, которая постоянно держит связь с главной БД.
Как сделаешь - так будет))) Можно сделать так что б обслуживаемый сервер посылал пакеты для создания новых коннектов, к 2-3-4 серверам одновременно. Когда подходишь с границе регионов и при определенном переходе обращаешься уже к правильному сокету и тебя начнет обслуживать уже другой сервер. Никакой видимой разницы быть не должно, если все сделано грамотно.
Отрисовка пакетов?)
Текстурирование статики, батчинг спрайтов.
Нет, потому что УО это дохлый номер и вкладывать в новый УО сервер такие деньги нецелесообразно.


"Рендеринг" пакетов smile.gif Хотя понятно, что я не совсем корректно выражаюсь. Спасибо за информацию, круто что без патчинга клиента можно что-то такое сделать.

Автор: Aimed 6.8.2018, 17:07

Цитата(Narciruss @ 6.8.2018, 16:06) *

"Рендеринг" пакетов smile.gif Хотя понятно, что я не совсем корректно выражаюсь. Спасибо за информацию, круто что без патчинга клиента можно что-то такое сделать.


Я не говорил что без патчинга такое можно сделать )

Автор: Narciruss 6.8.2018, 17:08

Цитата(Aimed @ 6.8.2018, 17:07) *

Я не говорил что без патчинга такое можно сделать )


Тогда грусть печаль laugh.gif полнейшая.

Автор: Soteric 7.8.2018, 15:56

Цитата(Narciruss @ 6.8.2018, 16:28) *
P.S. я мечтаю уйти в гейм дев, но упираюсь в то что трудно с графикой smile.gif хочется попрактиковаться на uo пока.

Хочешь уходить в геймдев - бери современные фреймворки, технологии и последние учебники. Познавать что-то на РанУО это сублимация, никакого толку не будет. РанУО загоняет тебя в искусственные рамки заложенные ее дизайном. Лучше с нуля писать свою игру. Это заложит хороший фундамент и позволит увидеть что можно делать так, можно иначе, здесь свои плюсы, здесь минусы. РанУО пустая трата времени.

Автор: Aimed 7.8.2018, 16:01

Цитата(Soteric @ 7.8.2018, 14:56) *

Хочешь уходить в геймдев - бери современные фреймворки, технологии и последние учебники. Познавать что-то на РанУО это сублимация, никакого толку не будет. РанУО загоняет тебя в искусственные рамки заложенные ее дизайном. Лучше с нуля писать свою игру. Это заложит хороший фундамент и позволит увидеть что можно делать так, можно иначе, здесь свои плюсы, здесь минусы. РанУО пустая трата времени.


Хех, я ему тоже самое сейчас в ЛС говорю smile.gif

Автор: olduo.com 7.8.2018, 17:26

не согласен. геймдев понятие растяжимое. это и геймдизайн и программирование. он может делать игровую механику, это геймдев. он может делать АИ это геймдев, свои гампы интерфейса это геймдев, квесты это геймдев. если хочет продвигаться в плане графики, то вроде были клиенты с исходным кодом.

другое дело что по сути это не новая игра, но навыки будут же. да и это в целом нормальная практика когда сервер клиент не делаются с нуля, а покупаются комерческие и на их основе делается. чем по сути отличается от клиента УО и эмулятора, ничем.

Автор: Aimed 7.8.2018, 18:05

Цитата(olduo.com @ 7.8.2018, 16:26) *

не согласен. геймдев понятие растяжимое. это и геймдизайн и программирование. он может делать игровую механику, это геймдев. он может делать АИ это геймдев, свои гампы интерфейса это геймдев, квесты это геймдев. если хочет продвигаться в плане графики, то вроде были клиенты с исходным кодом.

другое дело что по сути это не новая игра, но навыки будут же. да и это в целом нормальная практика когда сервер клиент не делаются с нуля, а покупаются комерческие и на их основе делается. чем по сути отличается от клиента УО и эмулятора, ничем.


С чем ты не согласен то?

Автор: olduo.com 7.8.2018, 18:32

у тебя что сборщик мусора сработал?)) выше же написано)

Автор: Aimed 7.8.2018, 19:42

Цитата(olduo.com @ 7.8.2018, 17:32) *

у тебя что сборщик мусора сработал?)) выше же написано)


Там конкретно про графику в гейм деве было написано и зачем то в УО человек хочет с графикой практиковаться. Soteric все грамотно ему ответил. Ну а если очень хочеться именно в УО, то кроме как с Орионом или UltimaXNA в УО с графикой негде практиковаться. Можно конечно ещё подизасмить и пытаться делать то что делает StaticZ с UCS, либо с 0 новый УО клиент писать, но это совсем уж маразм, что бы таким способом графику осваивать. В УО клиенте рендеринг это лишь мизерная часть кода.

Так вот ты ответил что не согласен ( с чем именно ? ) и начал целый список аспектов гейм дева перечислять, хотя довольно конкретно было сказано о чем речь. Поэтому я и спросил с чем не согласен.

Автор: olduo.com 7.8.2018, 20:24

не согласен с критичностью постановки ответа, что если геймдев и графика, то только "современные фреймворки, технологии и последние учебники". чем не устраивает орион для обучения? геймдев это понятие обобщенное где в итоге получается игра. можно взять фреймворк, как предлагаешь, и писать клиент с нуля, можно изучать уже сделанное, в итоге опыт с графикой. вот о чем я.

Автор: Aimed 7.8.2018, 21:11

Цитата(olduo.com @ 7.8.2018, 19:24) *

не согласен с критичностью постановки ответа, что если геймдев и графика, то только "современные фреймворки, технологии и последние учебники". чем не устраивает орион для обучения?


Многим. Там слишком много мусора для освоения которого нужно курить УО клиент и его данные. OpenGL всего лишь версии 2.0 и при всём при этом там очень базовый код, который ещё надо исправлять во многих местах. Если конкретно graphics pipeline интересует то заниматься Орионом для ее изучения на данном этапе Ориона - крайне глупо. Подсматривать код из Ориона пока что-то своё пилишь это самый оптимальный сценарий. Но опять таки, для этого лучше по современным туториалам сперва пройтись.

Автор: olduo.com 7.8.2018, 21:37

и кстати само программирование в геймдеве можно разделить на серверное, клиентское, программист АИ, !программист графики! итд. естественно есть фулстэк парни которые могут всё, но в целом людей делят по способностям и требованиям. я к тому, что в геймдеве полно людей, которые не знают опенжл и диретХ ) и они кстати, считают себя программистами только потому что знают пыхыпэ)))

Автор: Atheist 7.8.2018, 22:38

в геймдеве можно вообще не быть программистом если что smile.gif программисты это исполнители

Автор: Narciruss 7.8.2018, 22:45

Я согласен с olduo.com на тему того, что runuo может быть платформой для получения опыта. Ну вот даже накодить эти бои 500х500 — уже нормальный микроопыт, чтобы прочувствовать некоторые сложности/проблематику да и вообще предметную область.

С Soteric и Aimed как бы тоже согласен ( biggrin.gif ). Но опять же - разве mono и c# уже перестают быть современными технологиями? Юнити и все вот это — тот же c#. А ядро наверное на c++? В unreal engine вот все на с++.

Проблема с С++ в том, что молодое поколение скоро начнет выбирать Rust, тот же перфоманс и меньше приключений в мире плюсов, хотя понятно, что в Rust свои приключения. (это просто к слову)

Кстати, Aimed, то что ты говоришь, что графический протокол это малая часть кода клиента — прикольно, пойду почитаю smile.gif

Автор: Soteric 8.8.2018, 3:05

Я не хочу затевать дискуссию и писать убедительные посты. Скажу вкратце, что если у тебя хороший бэкграунд и ты используешь его для решения проблемы в РанУО, то это будет хороший опыт. Если наоборот, то достаточно бесполезный. Но мотивация это тоже важно и если ты прямо хочу-хочу попробовать РанУО, то честь тебе и хвала - обязательно пробуй, я рекомендую это.

В свое время я просто не мог найти калитку в программирование. Я читал учебники, пытался кодить на С++, все это быстро надоедало и я забивал. Потом я просто залип в РанУО, ночами не спал кодил как мог, параллельно читал учебники и это дало мне трамплин с которого я стартовал в профессии. Позже я попробовал написать свою программу, жестоко разочаровался в своем псевдоопыте, но у меня уже был прочный фундамент, на который стали легко и быстро ложиться новые знания.

Языки (C#, Java, Python) не устаревают, важны фреймворки и технологии. Тот же Юнити хороший выбор. По-крайней мере был таким пару лет назад, не думаю что что-то изменилось. С тем же Юнити (или андроидом) ты можешь быстро сваять приложение, залить в облако, получить отзыв живых людей. Это то вокруг чего построена сейчас игровая индустрия, есть куча мануалов, обучалок, людей. А РанУО морально устарел, он не использует ни одной библиотеки. РанУО это пакетоприемник (стандартные асинхронные сокеты), однопоточный монолитный мир, отсутствие логирования и статистики, отсутствие юнит тестов, отсутствие модульности, сохранение данных в файлы в своем проприетарном формате, вот пожалуй и все. То есть ты сначала создашь себе сам проблемы, потом героически преодолеешь их, а в реальном игрострое обнаружишь, что это неэффективные и порой вредные решения.

Но опять же я боюсь демотивировать, это страшный грех для человека вызвавшегося давать советы. Просто попробуй тот же Юнити. Там не надо сразу графикой размахивать, пусть две точки летают по экрану, но пусть ими можно будет управлять по сети одновременно двум игрокам. Мне кажется это достаточно весело закодить и для этого тебе придется сразу хапануть столько знаний, что они просто увлекут тебя. Если не понравится, не пойдет, застопорится, то ты всегда сможешь вернуться к РанУО. Но для меня сейчас заглянуть в РанУО это как открыть бабушкин чулан.

Автор: Narciruss 8.8.2018, 14:31

Цитата(Soteric @ 8.8.2018, 3:05) *

Я не хочу затевать дискуссию и писать убедительные посты.


Но именно это и получилось laugh.gif cool.gif

Вообще не очень понимаю как дискуссия превратилась в муки выбора, я на самом деле провожу рисерч для себя, чтобы понять что в ядре рануо происходит, и твой ответ, кстати, это именно то что я и искал smile.gif

Спасибо за инфу про логгинг, ядро и все остальное.

Автор: olduo.com 8.8.2018, 16:51

взял я как-то пацаньчика на вакансию скриптера. до этого его опыт программирования заключался в 2х месяцах изучения джаваскрипта на сайте js.do. он там сидел изучал синтаксис в действии т.е. фактически нулёвый кадр, но для LUA скриптинга сгодился вполне. обьяснял что к чему ему всего пару дней. с этими знаниями, через пару месяцев работы этот пацаньчик шпарил игровой контент только в путь.

так что я даже не знаю что значит геймдев в понимании многих на этом форуме)) это к слову про фреймворки, мануалы))

Автор: Aimed 8.8.2018, 18:23

Цитата(olduo.com @ 8.8.2018, 15:51) *

взял я как-то пацаньчика на вакансию скриптера. до этого его опыт программирования заключался в 2х месяцах изучения джаваскрипта на сайте js.do. он там сидел изучал синтаксис в действии т.е. фактически нулёвый кадр, но для LUA скриптинга сгодился вполне. обьяснял что к чему ему всего пару дней. с этими знаниями, через пару месяцев работы этот пацаньчик шпарил игровой контент только в путь.

так что я даже не знаю что значит геймдев в понимании многих на этом форуме)) это к слову про фреймворки, мануалы))


Там вполне конкретную часть в гейм деве изначально озвучили, а именно про графику ( на сколько я понимаю имелась в виду клиентская часть и рендеринг, правда не понятно 2д или 3д, потому что разница огромная ).

Хоть он это и сказал, но в одночасье пишет про РанУО и ИИ. Вобщем по моему Narciruss ещё сам не знает что ему нужно от гейм дева, видимо пока смотрит на все что связано с программированием в гейм деве.

Автор: olduo.com 8.8.2018, 18:57

мне лично вполне понравился анрил енжин. все достаточно просто и там школьники с минимальными познаниями в программирвовании и без этих ваших фрейморков в графическом редакторе на blueprint'e лепят игрухи. вот я как тру школьник гаймдевелопир делал просто по приколу не написав ни строчки кода)

[+]

так что эти ваши фреймворки, мануалы, это все прошлый век)) это конечно шутка, но в ней есть доля шутки)))

Автор: Juzzver 8.8.2018, 19:53

Цитата
гаймдевелопир делал просто по приколу не написав ни строчки кода)

Цитата
так что эти ваши фреймворки, мануалы, это все прошлый век)) это конечно шутка, но в ней есть доля шутки)))

Придя в геймдев контору - эти скиллы однозначно заценят smile.gif

Автор: olduo.com 8.8.2018, 20:20

абсолютно согласен, если эта контора занимается разработкой на UE4))) и им там может быть и не важно делал ты это только блюпринте или еще и в коде! "школьник" это была шутка, вполне серьезные дяди могут делать часть игры на школьном блюпринте потому что это просто и ты визуально видишь игровую логику.

Автор: Narciruss 8.8.2018, 21:58

Цитата(Aimed @ 8.8.2018, 18:23) *

Там вполне конкретную часть в гейм деве изначально озвучили, а именно про графику ( на сколько я понимаю имелась в виду клиентская часть и рендеринг, правда не понятно 2д или 3д, потому что разница огромная ).

Хоть он это и сказал, но в одночасье пишет про РанУО и ИИ. Вобщем по моему Narciruss ещё сам не знает что ему нужно от гейм дева, видимо пока смотрит на все что связано с программированием в гейм деве.


Я не очень понимаю где я призывал обсуждать мою мотивацию/личность/планы, я задавал конкретные вопросы, а не "ребята что мне делать, как стать геймдевом" или "стоит ли открывать шард"?

Прихожу к выводу, что мои вопросы оскорбительны для некоторых участников форума, раз так сильно хочется обсудить меня (причем тут вообще блин я laugh.gif )

Всем пис smile.gif

Автор: Aimed 8.8.2018, 23:22

Цитата(Narciruss @ 8.8.2018, 20:58) *

Я не очень понимаю где я призывал обсуждать мою мотивацию/личность/планы, я задавал конкретные вопросы, а не "ребята что мне делать, как стать геймдевом" или "стоит ли открывать шард"?

Прихожу к выводу, что мои вопросы оскорбительны для некоторых участников форума, раз так сильно хочется обсудить меня (причем тут вообще блин я laugh.gif )

Всем пис smile.gif


Извини если я тебя как то задел, я этого не хотел. Дискуссия про геймдев началась когда Soteric тебя процитировал:
Цитата(Narciruss @ 6.8.2018, 15:28) *
P.S. я мечтаю уйти в гейм дев, но упираюсь в то что трудно с графикой smile.gif хочется попрактиковаться на uo пока.

По моему довольно четко сформулировано что тебя сейчас интересует программирование клиентской части, а именно рендеринга, в гейм деве. И ты это хочешь практиковать используя UO. Чуть попозже ты уже пишешь что делаешь ресерч что б понять что в ядре рануо происходит. Это вещи настолько разные и из-за этого складывается впечатление что ты либо не определился чего ты хочешь от гейм дева, либо тебе интересно все что касается программирования что-бы можно было единолично заниматься всем сразу как full-stack разработчик.

Автор: Morbit 9.8.2018, 11:23

Цитата(olduo.com @ 8.8.2018, 18:57) *

мне лично вполне понравился анрил енжин. все достаточно просто и там школьники с минимальными познаниями в программирвовании и без этих ваших фрейморков в графическом редакторе на blueprint'e лепят игрухи. вот я как тру школьник гаймдевелопир делал просто по приколу не написав ни строчки кода)
[+]

так что эти ваши фреймворки, мануалы, это все прошлый век)) это конечно шутка, но в ней есть доля шутки)))



Когда ты сел в машину я понял что это GTA 2 v2 biggrin.gif

Автор: olduo.com 9.8.2018, 11:34

да, гта с беспределом. но когда я понял что изучение ue4 переходит в создание игры, я это бросил

Автор: HeavyMetalKid 10.8.2018, 10:38

Что-то servUO все не хочет подниматься.

Автор: Aimed 10.8.2018, 14:53

Цитата(HeavyMetalKid @ 10.8.2018, 9:38) *

Что-то servUO все не хочет подниматься.


Отдельную тему создай и вывод консоли выложи.

Автор: Juzzver 10.8.2018, 15:04

Цитата
Отдельную тему создай и вывод консоли выложи.

он имеет ввиду, что сайт лежит.

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)