Перейти к содержанию

Дайджест за январь-март

Обновления гайдов и аддонов

Март Февраль Январь

Мониторинг серверов и редактор аддонов

Представляем вам две легенды. То, о чем можно было только мечтать, стало реальностью.

Мониторинг серверов Редактор аддонов

Подсказки из игры на вашем сайте

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

Подробнее

Апдейтер аддонов

Представляем вам программу для автообновления аддонов и делимся подробностями.

Подробнее Скачать

DarkMaster

Пользователь
  • Постов

    162
  • Зарегистрирован

  • Посещение

Весь контент DarkMaster

  1. Обновил версию. 1. Интерфейс переделан 2. Дамаг от падение болше не учитываеться 3. Дамаг нанесенный себе самим сабой тоже не учитываеться
  2. Quote: Находясь в Новой Земле с дебафом Обморожение - мои повреждения постоянно растут на число повреждений, которые получаю Я, ДПС растет соответственно) Спасибо учту. Видимо Обморожение это уроно который игрок наносит себе сам *)))) вот аддон его и шетает. Поправлю. Quote: нет ли желания прикрутить, сюда же ХПС и Хил общий? Есть конечно. Но опять же не все сразу. Работаю я пока что 1. 8((( Quote: а ещо нет ли возможности округлить дпс хатябы до 2-х зхнаков после запятой? а то 7-8 значные числа неочень смотряца при дпс в районе 4-5 единиц (игрался твинком некром 6-го уровня) Да прям шас поправлю и обновлю. Quote: DarkMaster, скриншотик будет? Пока нет - текуший "!интерфейс" аддона сложно назвать вменяемым *))))))) Я работаю над нормальным - функциональным дизайном - как закончу так выложу скриншот на страничуц аддона.
  3. 2 MARATTX Сброс счетчика ДПС происходит в тот момент когды ты входишь в бой. То есть если ты пулишь мобов подрят не выходя из боя то счетчик не сбрасываеться. Более нормальный функционал - типа кнопка сброса, хранение 5-ти послекдних боев, общего урона за все время и т.д. пока нет так как есть много работы а я 1 *))))) Со временем все будет. Quote: еще бывает что после убийства моба повреждения=ДПС или повреждения например 32147 а ДПС=0 )) Скорее всего это из за того что ты ваншотиш мобы. Если идет бой - аддон каждую секунду выводит на экран ОбщийНанесенныйУрон / ВремяБоя, так как ты убиваешь моба моментально - ОбщийНанесенныйУрон = ХХХ а ВремяБоя = 0 вот и получеться что ДПС = 0 *))))). Рапартуйте о своих наблюдениях, багах, глюках - это сильно поможет. Например я вообще не тестил в данжах - хз как там будет работать. ( не могу своими лоу лвл персами ходить в данжи, не скем, даже протестировать режим работы в пати не могу толком ) ))))
  4. Нашел функции для работы с пати\рейдом, засада в том что у нивала нету разделения на пати и рейд - это одно и тоже - смотреть в хелпе CategoryRaid - в роде есть все что нужно, так что дело за малым добавить в аддон распазнавания данных не только по игроку но и по его пати\рейду, НО это после того как доведу до ума сбор и вывод данных по игроку соло. Quote: можно влево вниз впихнуть, под кнопки ЛР... и слово "повреждения" можно было бы сократить... Вообще хотелось бы сделать перетаскиваемым, разабраться бы как это делать для начала *)))
  5. Да не успело пройти и пары дней а уже возникает потребность в расширении АПИ *))) Давайте составим список того что нам нужно и этого нет в теккущей версии АПИ и дадим этот список Ниваловцем переваривать. 1. Адекватный способ конвертирования из string в WString. Во многих примерах написано debugCommon.ToWString( "Text" ) - но это не работает, отключена демаг беблиотека. Ну так почемубы не перенести ToWString( ) в common билиотеку например. Встретил в одной из функций интересную запись : Code: if common.IsWString( arg ) then newArgList [ i ] = arg else newArgList [ i ] = tostring( arg ) end Попробовал сам использовать tostring( "text" ) не получилось *((( 2. Сохранение данных - аадон поработал, я хочу сохранить данные накопленные в ходе работы. Как это сделать ? *))) Походу никак. *))) Дополняем список буду обновлять первый пост !
  6. Ok жду с нетерпением. Шас погряз в анализе КомбатЛога, что нужно что не нужно хранить и как лучше это делать *)))) Чтоб и инфармотивно и не громоздко. Залог успеха правльно сформировать table описывающий информацию о спеллах и правлеьно ее собирать *))))
  7. В том то и дело что будет нажиматься, просто визуально этого не будет видно. Обычно такие вещи делаютсья так: Есть контрол типа ЛистБокс - у енр есть свойсто SelectedStringIndex и событие onClick в котором я могу с пощью SelectedStringIndex узнать какой элемент в данном ЛистБоксе выбран. Я не нашел у нивала ЛистБокса, а в том TextView которое они предлагают я вообше не нашел сопсоба задать строки отдельные 8))))) Поэтому - мой выбор это кнопки. что то типа такого : Наприме у меня в пати 2 человка + я. Code: № Name DD DPS-------------------------------- | [ 1. Вася - 567 ( 40.24 ) ] | -- это типа активные элементы списка. При клике я буду | [ 2. Маша - 345 ( 23.32 ) ] | -- 100% знать о ком вывести инфу подробную *))) | [ 3. Я - 275 ( 12.576 ) ] | -------------------------------- Если можешь расказать по пунктам расказывай, я понятливый *)))) За динамически кнопки спс бум разбираться. Я пока что покапаю в сторону формиравания статисти по комбат логу и выводу в чат, потом интерфейсом займсь
  8. Привествую комрады !!! Это пока что просто каркас, от которого буду отталкиваться выложил то что есть так как даже такой аддон уже лучше чем нечего. Я участвовал в разработке аддона Recount для ВОВ есть опыт *))) В планах восоздать максимум фунционала Recounta, но тут проблема - Ниваловское АПИ жутко неудобное и ограничено *((( Причем сам Комбат Лог оставляет желать лущего. Я с удовольсвием приму любую помощьв разработке. Например Текстурки. *)))) План разработки: 1. Приатачить петов к дамагу хозяина. ( разабрался, осталось заскриптовать ) 2. Релизовать вывод в чат - /say /party /raid /whisper /guild 3. Режим работы в пати рейде - это более сложно, так как я пока что не нашел как идентифицировать игрока находиться ли они в твоей пати. 4. Сделать окно movable - если это вообще возможно *)))) 5. Сделать храннение полной информации о нанесеном уроне - какими иммено абилками, сколько критов мисов доджов пари, и т.д Это сделать реально уже сейчас. Дизайн - тут нада основательно подумать, так как набор контролов от Нивала сильно ограничен. Я не нашел Скорлинга, я не аонял как сделать Спсок строк любой длины, да и много еше чего пока что непонятно *)))) Нивал АПИ - это хардкор, особенов плане модинга интерфейсных фреймов *)))) Пока пришел к следующему: Главное окно - небольная панелька на которой располженны кнопки вертикально , каждая кнопка - это статистика по каждому отдельному игроку в пати, в лабел кнопки выводиться инфа о ДПС и ДД ( ДамайджДоне - нанесенный урон ), причем рейлизовать эти кнопки без графики состояний ( нажата, моузофер ) просто вне зависимости от действий текстура - нормал. Нажатие на конопку открывает отдельное окно с полной статистикой по данному игроку. И тут проблемка - как создавать динамически обьекты интерфейса ( кнопки ) я пока не понял. Первый топорный вариант - создать заранее N кнопок, пусть пока что для 6 человек -0 пати и просто скрывать\ показывать в зависимости от состава пати. Вообщем работы не початый край, которая делиться на две основные части: 1. Анализ КомбатЛога и формирование стаистики о повреждениях 2. Интерфейс. Так что еше раз любой помощи буду рад. А так же пишите пожелания, идеи.
  9. Самая большая проблема иммено в Wstring *)))) Как ее получить нормальным человеческим способом а не через ж... , тоесть файл *)
  10. Блин писец просто работа с текстом и контролами через одно место. Ктонить может полный пример выложить - 1. Вывод сообшения в чат 2. Создать окошко и выводить туда текст в TextView Ниваловские примеры пестрят вот такими констукциями debugCommon.ToWString( "Hi, all." ) Когда пишеш в коде - это не пашет ! Вот я логики ен вижу нафига это отрубать то ? Зачем! Нада писать нивалу чтоб врубили возможность вот так задавать WString debugCommon.ToWString( "Hi, all." )
  11. Столкнулся с проблемой Есть перменная типа WString пытаюсь сравнить с ней какоелибо значение - результат всегда отрецательный, кто подскажет что делать ? Пример Code: SpellInfo.Name -- WString name -- Строка заданная "text" if SpellInfo.Name == name then ....... else ........ end Пробовал конвертировать с помощью debugCommon.ToWString( "text" ) - вообще не работает, видимо отклучена дебаг библиотека. Пробовал tostring( "text" ) тоже самое. Есть идеи что может быть не так ?
  12. Обявление глобальной переменой : -- CONSTANTS Global( "MyVariable", 0 ) Global( "GlobalSectionName", "SECTION_NAME" ) . . . MyVariable = MyVariable + 1 *)))) я перстал пписчать аддоны для АО *) Но опытом поделюсь с удовольствием
  13. 100% знаю что перестала работать функция avatar.IsTargetInMeleeRange() тепреь всегда возврашает true - про остальное ХЗ *)))
  14. Пример записи в user.cfg Code: function WriteAllTargetBuffInfoToCfg() local Target = avatar.GetTarget() if Target then local buff_count = unit.GetBuffCount( Target ) local buff local section = {} if buff_count > 0 then for i = 0, buff_count - 1 do buff = unit.GetBuff( Target, i ) section = buff.debugName end end common.SetGlobalConfigSection( "TARGET_BUFF_LIBRARY", section ) end end Пример того что он туда запишет Code: table_begin ScriptLocal_TARGET_BUFF_LIBRARY table_begin data int_keys_begin data 0 = l"Mechanics/Spells/Paladin/HolyStrike/Buff01.xdb" int_keys_end data table_end data remote_version = -1 table_end ScriptLocal_TARGET_BUFF_LIBRARY
  15. Да истину глаголишь ..... НО при наличии определенного опыта ( онлайн игр ) и программирования - можно написать авто-бота - который будет за тебя что то делать. Авто-боты бывают разные - есть такие которые могу вообще все за тебя делать - напримре ты его настроил - и он сам убивает монстров, ждет их респавна убивает снова, при переполнении сумок бежи к торговцу - продает хлам возвращаеться (Но такие боты зло - в нормальных ММО если поймают - сразу удалят акк). Бывают и более спецефические - например я сам себе седлал МОД для ВОВ и для АО ( когда в нее играл ) - боевой-бот - я жму 1 кнопку а он крутит за меня ротацию ( последовательность абилок- баффы \ дебаффы подерживает и т.д. ), бывают и совсем безобидные - проигрывают разные эмоции и бегают по маршрутам гринда ресурсов. И кстати бояться бана за использования ботов в АО стоит меньше всего - так как ингейм ГМов нету. *)))))
  16. function GetActionInfo( slotId ) local actionInfo = avatar.GetActionInfo( slotId ) if actionInfo then actionInfo.valid = IsActionTypeValid( actionInfo.type ) actionInfo.enabled = true actionInfo.texture = GetTexture( "Placeholder" ) else actionInfo = { valid = false } end actionInfo.slotId = slotId if actionInfo.valid then if actionInfo.type == ACTION_TYPE_SPELL then actionInfo = GetSpellInfo( actionInfo ) elseif actionInfo.type == ACTION_TYPE_ITEM then actionInfo = GetItemInfo( actionInfo ) end end return actionInfo end Функция берет то инфо о спелле в слоте function GetSpellIDFromActionSlot( actioninfo ) local spellInfo = avatar.GetSpellObjectInfo( actioninfo.id ) if spellInfo then return spellInfo.id end return -1 end Функция берет спелл ИД из акшенинфо function CastSpell( spellId ) local spellInfo = avatar.GetSpellInfo( spellId ) if spellInfo.targetType == SPELL_TYPE_POINT and ( spellInfo.prepared or spellInfo.launchWhenReady ) then --trace( "Cast AE" ) common.SendEvent( "SCRIPT_REQUEST_AEMARKER", { spellId = spellInfo.id } ) else --trace( "RunSpell" ) common.SendEvent( "SCRIPT_CANCEL_AEMARKER", {} ) avatar.RunSpell( spellInfo.id ) end end Функция кастует спелл *))) юзать так: local ActionSlotInfo0 = GetActionInfo( 0 ) -- 1 slot CastSpell( GetSpellIDFromActionSlot(ActionSlotInfo0) ) Я шас тебе расказал практически вс е что нужно чтоб написать мегга аддон. Я седня добрый *)))) Далее сам - включи фантазию *)
  17. Подскажите как оформить код функций ввиде вставки кода чтоб с отсупами и тд ! а то не читабельно *))))
  18. Вот функции написанные мной - проверяют есть ли данный бафф на цели или игроке. function GetPlayerBuffByDebugName( buffname ) local buff_count = unit.GetBuffCount( avatar.GetId() ) local buff if buff_count > 0 then for i = 0, buff_count - 1 do buff = unit.GetBuff( avatar.GetId(), i ) if buff then if buff.debugName == buffname then return buff end end end end return nil end function GetTargetBuffByDebugName( buffname ) local Target = avatar.GetTarget() if Target then local buff_count = unit.GetBuffCount( Target ) local buff if buff_count > 0 then for i = 0, buff_count - 1 do buff = unit.GetBuff( Target, i ) if buff then if buff.debugName == buffname then return buff end end end end end return nil end Узнать какое у баффа имя можно вот так : function WriteAllPlayerBuffInfoToCfg() local buff_count = unit.GetBuffCount( avatar.GetId() ) local buff local section = {} if buff_count > 0 then for i = 0, buff_count - 1 do buff = unit.GetBuff( avatar.GetId(), i ) section = buff.debugName end end common.SetGlobalConfigSection( "PLAYER_BUFF_LIBRARY", section ) end function WriteAllTargetBuffInfoToCfg() local Target = avatar.GetTarget() if Target then local buff_count = unit.GetBuffCount( Target ) local buff local section = {} if buff_count > 0 then for i = 0, buff_count - 1 do buff = unit.GetBuff( Target, i ) section = buff.debugName end end common.SetGlobalConfigSection( "TARGET_BUFF_LIBRARY", section ) end end Пример использования: Просто вызываем функции потом в personal.cfg смотрим секции TARGET_BUFF_LIBRARY и PLAYER_BUFF_LIBRARY WriteAllPlayerBuffInfoToCfg() WriteAllTargetBuffInfoToCfg() Пример использования функций проверок local HolyStrikeDebuff = GetTargetBuffByDebugName( "Mechanics/Spells/Paladin/HolyStrike/Buff01.xdb" ) if ((MarkOfCrusaderDebuff == nill) or (MarkOfCrusaderDebuff.stackCount<3)) then Например вывести мессайдж о том что на цели нужное количество дебафов *)))) end Мне помогавет в моем аддона-писании, надеюсь и вам поможет ! З.Ы. Блин как вставлять нормально ? в виде кода ?
  19. Скомпили - свой аддон заработало *))) спасибо что навели на способ *)))
  20. Налицо полное игнорирование наших(модмейкеров) пожеланий. Какому то "умнику" в Нивале пришла походу следующая мысль в голову: По опыту многих ММО где практически в каждой есть АПИ и можно писать модификации, с ними возникают 2 случая. 1-й АПИ слишком функциональное - и позволяет писать "ботов" - модификации которые позволяют автоматизировать игровой процесс чуть ли не полностью - вы оставляете перса а он сам качаеться, добывает, крафтит, собирает лут, продает и т.д. 2-ой вариант приемлемое апи позволяюше делать моды, но в котором нет возможности создать "бота" - например ВОВ. При чем Близзард так изящно нашел регение проблемы что когда я в свое вермя это увидил - лишний раз убедился Близзы - имбы игровой индустрии ! Но ушлые программисты - все равно находят лазейки и пишут таки "ботов" - есть по крайнемере 2 способа которые я знаю как написать "бота" для ВОВ, но при этом - таким ботам совершенно не свойствено широкое распостранение из за их специфики. Видимо все это знает тот самый "умник" из Нивала. И он решил - а вот выкусите ! Совершенно выкусите *)))) Не дадим лапать грязными(модмейкерскими) руками чистоту воплощенного в коде гения. *)))) Или я хз - чего такое негативное отношение к аддонвм у Нивала. Стремиться нада к 2-ому варианту который УЖЕ реализован Близзами ( Раз так много было "позаимствованно", чего было не взять их модель аддонов ??? ). Но видимо плане "кооректировать\поправлять" в Нивале работают чисто по "русски" - "Руби с плеча". Походу вся "точность" от разбрав к мобам перешла. *))))) Вместо того чтобы "точечно" править , рубят все под корень. Так правят баланс классов ( Сталкер, Мистик - тому примеры), "поправили" дамаг у мобов ( они шас вообше ватные ), а теперь и аддоны. *(((( Но возможно причина и в другом .... Возможно просто для реализации нормальных вещей - требуеться большой опыт и скилл в программирование. А у разбрав его нет и времени на создание таких вещей у них уходим очень много, вот и ставят глухие заглушки. Но мне совершенно не понятно следуюшее - ведущий дизайнер проекта или совсем эммм новичек в игрострое или курит траву. Есть очевидная вещь ( всем кроме нивала наверное ) - Для успеха проекта , нужны игроки !!! "Встречают по одежке, проважают по уму!" - Интерфейс = лицо проекта, только потом идет механика игры. Первое с чем знакомиться игрок - это ингейм интерфейс. Если он не дружелюбен и отталкивает свим не удобством, громсокий, мало информативный и т.д. - новичкам ОЧЕНь быстро надоедает такой проект ( Вот пример ЕВА - я сам не стал в нее играть ибо интерфейс полное УГ, хотя игра реально крутая и интересная - те кто пересилил себя - говорят "оооо ева это инетресно", но я не хочу играть в то что напрягает меня своим интерфейсом, и таких как я очень много). Тем более, что игрок то шас "присыщен", он уже не тот что 5 лет назад, во времена старта ВОВ. Он уже наелся вкусностей - ддметров, атлослутов, картограферов, х-перлов т.д. Он уже привык к "комфорту". На правах ИМХО - был бы открытый АПИ, такие как я наклепалибы массу, нет МАССУ полезных аддонов - отестировали, отладили, обновляли бы и улучшали их - чтобы естествено игру только облагородило - "смотрите наш проект популярен, комьюнити пишет для него аддоны" !!! Но как всегда в жизни есть и обратная сторона медали - да неизбежно бы появились "плохие" аддоны, возможно боты и т.д. НО - бороться с ними можно, ди и нужно УЖЕ ПОСЛЕ РЕЛИЗА ! Это ОБТ - хрен с ними -с ботоводами да пусть уделаються их один хрен мизерный процент от общего числа. За то сколько бы приобрела игра - за эту небольшую плату. Кстати опять как пример - Близзы заблакировали возможность создавать внутриигровых ботов по средствам LUA только в патче 2.х !!! 2.х - это вам не ОБТ ! Как я думаю - Нивал сканит этот форум тщательно - поэтому я уверен они прочтут этот пост *))) Я писал что то похожее на их форуме - тему потерли. Все выше сказаное мое ИМХО - на правах 8 летнего стажа игры в ММО ( да да я еше с УО начинал ), опыта программиста, скриптера. Нивал - задумайтесь - возможно вам палки в колеса вставляет "большое" начальство - найдите способы обьяснить, возможно - у вас нету опыта - спрапшивайте проводите опросы, возможно у вас плохие кадры - увольте наберите новых ( многие бы откликнулись при приемлеммых условиях работы, я например *))) ). Думайте - НЕ спускайте все на самотек, и престанте "рубить с плеча". З.Ы. И в конце самое главное - общение залог успеха, большая проблема в том что нет диалога между вами и игроками. Вы гтовите пачи - нету никаких пре-тестов описаний будущих планируемых изменений и т.д. Больше общения - не держите "народ" в неведении - это пораждает массу слухов сплетен и нервных растройств - кторые не идет на благо проекта.
  21. Кабздец ! добили последне что работало новым патчем ! Шас вообше ничего не возможно написать !
  22. А конкрентее можно ? с примером плиз.
  23. А подробнее? с пример желательно
  24. уже есть *))) ушлые аддона-писатели - уже вовсю авто-ботов шпарят (авто бафалки, 1кнопочные ротации и т.д) ! Я поражаюсь логике нивала - запретили МАССУ возможностей сделать РЕАЛЬНО полезные аддоны, а автоботов - делать проше пареной репы .... жесть, как говориться - "Маразм крепчал и танки наши быстры", "...За то в хокее и балете мы впереди планеты всей!!!" !
  25. Читерим *)))) А никак - пока не доступны фукции конвертирования строки сравния типа: if buff.name = "CoolBuff" then .... или local SpellInfo = GetSpellInfo("SuperSpell") сделать нельзя Вывод - ждем релиза норм АПИ от нивала
×
×
  • Создать...

Важная информация

Пользуясь сайтом, вы принимаете Условия использования