1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Результаты поиска

  1. Hardx
  2. Hardx
  3. Hardx
    Тема

    PW Ability Draft

    ку всем) На днях возникла прикольная идея, запилить в пв Ability Draft(как в доте) К примеру, после создания персонажа, изначально умений у него нету, учить умения своего класса он не может, но может выбрать умения из общего пула умений всех персонажей. Естественно выбирать персонаж сможет только по 2-3 умения с каждой уважухи. К примеру: [IMG] Это только пример, но если подойти к этому грамотно, может получится неплохая фишка, которая добавить уникальности каждому герою, игроки будут придумывать какие нибудь связки, выбирать приоритеты(уйти в бафы или контроль, или как всё нормально совместить), пвп будут не такие предсказуемые, если еще учитывать умения джина, да и игрокам понравится такое разнообразие. И естественно со всех умений убрать ограничение по оружию, и сделать анимацию на все расы. Что скажите по этой фиче? Ну и собственно не случайно я создал тему в разделе "ищю", всё это мне по силам реализовать, но всё сливается в одну банальную проблему. Нет возможности открыть сервер в материальном плане. Если кто заинтересовался, пишите в лс, там всё обсудим.
    Автор темы: Hardx, 2 дек 2015, ответов - 27, в разделе: Ищу
  4. Hardx
    Прив всем) Вопрос может быть и нубский, но ответа я в интернете не нашел. Есть идея читать пакеты принятые от игровых служб PW с помощью рефлексии и рекурсии. Допустим есть структура GRoleBase из Gamedbd: public class GRoleBase { public byte version { get; private set;} public int id{ get; private set;} public Octets name{ get; private set;} public int race{ get; private set;} public int cls{ get; private set;} public byte gender{ get; private set;} public Octets custom_data{ get; private set;} public Octets config_data{ get; private set;} public int custom_stamp{ get; private set;} public byte status{ get; private set;} public int delete_time{ get; private set;} public int create_time{ get; private set;} public int lastlogin_time{ get; private set;} public GRoleForbid[] forbid{ get; private set;} public Octets help_states{ get; private set;} public int spouse{ get; private set;} public int userid{ get; private set;} public Octets cross_data{ get; private set;} public byte reserved2{ get; private set;} public byte reserved3{ get; private set;} public byte reserved4{ get; private set;} } В этой структуре есть массив из GRoleForbid, и каждый элемент в массиве содержит следующую структуру: public class GRoleForbid { public byte type { get; private set;} public int time { get; private set;} public int createtime { get; private set;} public Octets reason { get; private set;} } И мой метод чтения: public static void DoReflection(object cls, PacketReader packetReader) { foreach (var prop in cls.GetType().GetProperties()) { switch (prop.PropertyType.ToString()) { case "System.Byte": { prop.SetValue(cls, packetReader.ReadByte()); break; } case "System.Int32": { prop.SetValue(cls, (int)packetReader.ReadInt32()); break; } case "SGR.Octets": { prop.SetValue(cls, packetReader.ReadOctets()); break; } default: { if (prop.PropertyType.IsArray) { var length = packetReader.ReadCUInt32(); object value = Activator.CreateInstance(prop.PropertyType, length); //prop.PropertyType равняется GRoleForbid[] foreach (var item in (object[])value) { //Перед вызовом следующего метода, нужно создать экземпляр. DOReflection(item, packetReader); } prop.SetValue(cls, value); } else { object value = Activator.CreateInstance(prop.PropertyType); prop.SetValue(cls, value); DoReflection(value, packetReader); } break; } } } } Проблема возникла с создание экземпляра класса в массиве. Если брать по примеру, то создать экземпляр GRoleForbid. Но для создания нужно узнать сначала тип этого элемента, ведь этот метод будет читать любые структуры, отправленные в этот метод. Собственно в этом и заключается вопрос, как это можно сделать? P.S От безысходности уже хотел согрешить, и использовать велосипед, переведя тип массива в строку и убрать квадратные скобки. Но это уже, по моему мнению, какой-то ад получается.
    Автор темы: Hardx, 24 окт 2015, ответов - 11, в разделе: PW Вопросник
  5. Hardx
    Привет всем) Представляю Вам свою разработку: [IMG] AIPolicy Editor - редактор логики монстров в MMORPG игре Perfect World. С помощью данного редактора Вы сможете создавать уникальных монстров и боссов, которые будут не только бить персонажа, но и взаимодействовать с миром, создавать новых монстров, использовать умения (и многое другое) при определённых условиях. Редактор предоставляет Вам удобный способ редактирования условий для выполнения действий, окно выбора умения с его описанием, быстрыми перехода между связными действиями и удобный расширенным поиском. Большинство полей расшифровано и подробно описано, чтобы начальный пользователь не запутался в создание логики монстра. Редактор поддерживает AIPolicy.data от версии 1.2.6 до 1.5.1, и в будущем будет обновляться до новых версий. Также в случае возникновения ошибки (никто от этого не застрахован), в редактор встроена функция мгновенной отправки ошибки разработчику, для исправления этой ошибки (по желанию, можно прикрепить сам файл AIPolicy.data). Возможности: Загрузки, редактирования, сохранения файла AIPolicy.data версий от 1.2.6 до 1.5.1 Загрузка файла с описанием умений всех версий и удобный выбор умений Удобный редактор условий, никакого текста, только элементы управления Массовое редактирование всех полей и элементов Удобное массовое позиционирование элементов в программе Сортировка Массовое копирование в буфер обмена и вставка из буфера Расширенный поиск со встроенным редактором Удаления всех пустых контроллеров Удобное редактирование сообщений в игре с выбором канала чата. Расширенный список настроек, включая четыре разных дизайна под Ваш вкус Удобный интерфейс программы с перемещением окон и смены их размера Отправка сообщения разработчику при возникновения ошибки с возможностью прикрепить AIPolicy.data и strskills.txt По желанию, делать Backup файла перед сохранением изменений Скриншоты программы: [IMG] [IMG] [IMG] [IMG] Цена: 5 000 рублей Первым трём покупателям скидка 5%:) Skype: dimonpw2
    Автор темы: Hardx, 22 авг 2015, ответов - 8, в разделе: Продам
  6. Hardx
  7. Hardx