1
16
2 года назад
1

» WarCraft 3 / Naruto Wars Reloaded v1.3

Drulia_san, проверь наличие пробелов. Бывает, что когда пишешь что-то перед ссылкой на картинку забывая поставить пробел, она становится как текст.
Готово
0
16
2 года назад
Отредактирован Drulia_san
0

» WarCraft 3 / Naruto Wars Reloaded v1.3

Скриншотов бы)
Добавил! Правда первый скрин почему-то не расчехляется превьюшкой
0
16
4 года назад
Отредактирован Drulia_san
0

» WarCraft 3 / cJass2Lua(v1.12) - Преобразователь кода cJass и JASS в Lua

exAres:
if udg_MBcount[udg_player[i]+10]==0 then
превращается в
if udg_MBcount[udg_playeri] + 10 == 0 then
Это норм?)
Классическая бажина. К сожалению я без понятия когда захочу/смогу исправить и захочу ли я вообще. Warcraft я забросил далеко и надолго из-за нецелесообразности Reforged. Занят другим проектом на Dota 2.
Если кто-то всё таки захочет исправить\улучшить утилиту за меня - в посте снизу есть ссылка на гитхаб, рассмотрю любые pull реквесты, протестирую, опубликую новую версию, могу ответить на технические вопросы если что.
7
16
4 года назад
7

» XGM Team / Закрытие XGM (нет)

Proshel_Doty:
Drulia_san:
ну я не знаю, подождал бы уж патч, который обещают к концу недели)
хотя в принципе купить его снова всегда успеется)
Лучше игра не станет, а даже если станет я у этих шарлатанов больше ничего не куплю.
8
16
4 года назад
8

» XGM Team / Закрытие XGM (нет)

Я вернул себе бабки за рефорж (это каждый может делать без участия поддержки в пару кликов, работает даже если предзаказ был давно и после релиза хоть 40 часов наиграли)
Больше карты для варика делать не будуи и покидаю картодел, у этой отрасли нет будущего. С рефоржем была надежда, что это все заиграет новыми красками и будет большой спрос на карты, но получилось что получилось, большая часть игроков сделала возврат и игра не стоит того, чтоб на нее тратили время. Оптимизация плохая, багов достаточно, редактор все та же моча, желание что-то делать - пропало, я всегда всех отговаривал, мол рано бету ругаете, близы еще покажут вам. Но нет, игра полный разводняк и кидалово, халтура на халтуре. Мультиплеер там уже загибается, едва ли можно доту или какую-то карту 2х2 собрать.
Делать карты для старого варика? Это не имеет смысла, гарена недавно закрылась, остался айсикап на 1.26, вечная стогнация на старой версии без нового функционала... На айсиакапе где смертным даже мемхак юзать нельзя... Нет извините, делать карты смысла больше нет.
Перехожу на доту2 и вам советую, там современный редактор с широким набором возможностей и луа, знание которого не пропадет даром.
5
16
4 года назад
Отредактирован Drulia_san
5

» XGM Team / Закрытие XGM (нет)

Выскажусь по поводу копирайта:
Прежде всего призываю и рекомендую класть бибу на их правила, соглашения, копирайты, всё равно это никто не читает. Можно использовать какие угодно ресурсы, хоть 10 раз скопированные из других продуктов.
  1. У игры нет своего воркшопа как в стиме, следовательно они никак не могут взять и удалить карту, термин удалить\запретить в данном случае слишком абстрактный, карту можно хостить в мультиплеере и присоединяться к другим.
  2. Могут конечно по хеш-сумме карты запретить её, но для такой примитивной игры это слишком заумно будет да и потом любые изменения и хеш поменялся.
  3. Никому ничего за это не будет
Можете импоритировать модельки как угодно, будто кого-то это остановит.

Кстати, варкрафт это наполовину веб приложение, у него меню всё на встроенном хроме работает.
0
16
4 года назад
0

» WarCraft 3 / Релиз Warcraft 3: Reforged

Время переходить на Dota 2 и браться за Hammer, там тот же Lua.
0
16
4 года назад
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

GetLocalPlayer:
Для выпиливания скинов - нужно импортировать в карту отредактированный abilityskin.txt из которого убрана информация о скинах нужной способности.
В самом рефорже это проблем не вызывает?
Не должно, этот файл рентабелен только в матчмейкинге и поиске на расстройку.
0
16
4 года назад
0

» WarCraft 3 / Релиз Warcraft 3: Reforged

prog:
Свежие новости. Найден надежный и универсальный фикс для морфов. Немного костыльно, но это лучшее что можно сделать пока близы сподобятся починить баг сами.
Суть фикса - достаем abilityskin.txt, удаляем оттуда информацию о скинах той способности, на основе которой у нас морф, импортируем этот файл в карту. Не используем оригинал этой способности в карте, только копии. Наслаждаемся жизнью и рабочим морфом.
О как, интересно, спасибо!
А это работает если допустим в игре 3 абилки с морфом на базе одной и той же абилки, так можно этим 3 абилкам разный морф сделать?
16
16
4 года назад
Отредактирован ivanbakavan
16

» WarCraft 3 / Релиз Warcraft 3: Reforged

GetLocalPlayer:
Кто еще не в курсе, старую добрую иконку кобольтов "Сэмми"
В HD заменили на
это
Кто если еще не решился брать рефорж.
Брутального бородатого мачо-мэна который всем своим видом ассоциируется со старой брутальной вселенной варкрафта заменили, в принципе это всё что нужно знать о положении дел в этой игре :D
1 пункт от ivanbakavan: 1.1 (ненормативная лексика) Не нужно оскорблять других людей
0
16
4 года назад
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

prog:
Я попробую еще всякие варианты, возможно еще найду что-то более рабочее.
В любом случае большое спасибо за глубокое исследование этой проблемы! У самого работы много, не было времени изучить этот вопрос
0
16
4 года назад
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

О, как раз вовремя блин, ахах
prog:
Это еще не решение, а только более точная диагностика проблемы.
Через cheat engine или всякие хуки winapi можно добавить поле в РО?
2
16
4 года назад
Отредактирован Drulia_san
2

» WarCraft 3 / cJass2Lua(v1.12) - Преобразователь кода cJass и JASS в Lua

NazarPunk:
Проэект ещё жив? Можно добавить галку для common.j и ему подобных файлов?

Две чёрточки нужно убрать

появился новый тип minimapicon

появился новый тип commandbuttoneffect

---@return nothing заменить на ---@return nil
Окей, я добавлю исправления, постараюсь на неделе
17
16
4 года назад
Отредактирован Drulia_san
17

» WarCraft 3 / Релиз Warcraft 3: Reforged

Как я уже сказал, релиз полное говнище. Это та же бета, но уже в релизе. Многие баги так и перекочевали в релиз, их не исправляли.
Кампанию перепроходить нет смысла, я без преувеличения скажу что это та же кампания, так как движок почти полностью совсестим, кампанию тупо скопировали из старого варика в новый.
Катсцены из 2002 в игре из 2020, которая обещала как минимум освежить всё в игре выглядят убого.
В игре нет НИЧЕГО НОВОГО.
И напоследок, скажу что близадр тупо обманщики, обманом сделали годную демку полтора года назад, чтоб содрать баблишка за предзаказ.
В итоге не сдержали обещаний, НИЧЕГО из обещанного не добавили, это просто старая игра, которой освежили графику. Выглядит как будто разлагающийся труп побрызгали духами.
Ожидание - реальность ,как выглядит стратхольм в релизе:
Последний раз покупал что-то у близов. Игра - говно. Хотелось бы похвалить, может с другой стороны можно её описать, может можно как-то под другим углом посмотреть, объективный взгляд и тд, но проблема в том что игра со всех сторон говно. Она не может быть ремейком, так как это ремастер уже. Но и как ремастер это полный шлак, катсцены и графика - отстой, вдобавок куча багов и непонятно зачем новая озвучка если игра старая.

Пару слов о редакторе, это тоже убогая дрисня. Всё тот же редактор триггеров, тот же шрифт без подсветки убогий, изменений в нём НЕТ.
Я потратил около полугода на написание конвертера кода карт на луа, я потратил кучу времени на порт своих карт на луа и подготовку их к игре на рефорже, но теперь - я бросаю картодел, ну его нахер, если близам так плевать на игру, то мне и подавно. Возможно не на совсем, но длительное время собираюсь отдохнуть от этого.
0
16
4 года назад
Отредактирован Drulia_san
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

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

DarkLigthing:
Drulia_san:
BlzCreateUnitWithSkin
Это костыль. Пора отвыкать от костылей и использовать вещи с прямым назначением.
Метаморфоза это комплексная вещь, в то время как BlzCreateUnitWithSkin - нативная функция, то есть составляющая. Что делает её максимально гибкой, ты можешь сделать точно то, что ты задумал, в то время как метаморфоза тебя ограничивает(ибо это уже готовая система, комплексная со всеми вытекающими) или в крайнем случае имеет лишний функционал. Так что же из этого костыль ? xD
Метаморфоза - комплексное решение узкой задачи, когда нужно просто переключить юнита в другую форму. Ты еще скажи, что зачем юнитов в астрал кидать, лучше вон покрась в зеленый цвет, сделай прозрачным, налепи эффект, убери атаку и на луа урон от магии увеличивай. И даже если ничего из этого кастомизировать не нужно, всё равно сделай, ну а шо, чем больше кода тем лучше. Это не нужно в данной ситуации. Задачи общего типа требуют простых общих решений.

Hate:
а как насчет просто подождать релиза?
Классика ответов на XGM, просьбы под постом не читаем или читаем, но делаем наоборот, на вопрос не отвечаем, советуем идти в обход более грубыми путями, плодим оффтоп.
0
16
4 года назад
Отредактирован Drulia_san
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

8gabriel8:
Drulia_san, это был юмор, так как назвал костылём нативную функцию. Вообще ничего странного в своих словах не почувствовал, когда это печатал?
Нет, не почувствовал, всё что требует лишних конструкций, когда рядом есть функция уже предназначенная для решения проблемы - костыль, давайте может закроем уже тему с нативками и прочим, это лютый оффтоп. Не собираюсь я лечить нативками метаморфозу, которая должна работать через настройки в РО, могу но принципиально не хочу и не буду. Если бы метаморфозы в игре не было, тогда справедливо, но давайте пожалуйста без нативок.
Если я найду решение сам раньше, чем это сделает кто-либо другой и выложит сюда - я поделюсь обязательно, чтобы несчастные люди испытывающие траблы с метаморфозой не нагромождали костыли с надстройками из нативок на полноценные спеллы, потому что это ***ня из под коня.
0
16
4 года назад
Отредактирован Drulia_san
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

NazarPunk:
Это костыль.
Сама метаморфоза в варе это костыль, так что нужно от неё отказаться чтоб не использовать костыли.
Я поспорю, это удобная юзабельная универсальная абилка, одна немногих которая у меня не вызывала никаких проблем. Избавляет от нужды лишний раз писать логику, дает всё что нужно для любых манипуляций с превращением (кроме пассивных и особых случаев), переключений режимов атаки в двойном режиме и тому подобное. метаморфоза - хорошая, годная абилка и я не собираюсь сейчас продолжать спор на эту тему.
Это то же самое, что отвечать "переходи на линукс" на вопрос "Почему у меня вылетел экран смерти?"
0
16
4 года назад
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

Bergi_Bear:
В топку метаморфозу там тупо новая функция по смене скина есть
BlzCreateUnitWithSkin

и скорее всего для смена скина тоже есть подобное
Это костыль. Пора отвыкать от костылей и использовать вещи с прямым назначением. Давать скин юниту и отслеживать его состояние метаморфозы всего лишь будет очередным костыльным нагромождением в скрипте, уродство. Мне нужно поменять то самое значение абилки.
0
16
4 года назад
0

» WarCraft 3 / [1.32] Как исправить метаморфозу

Proshel_Doty:
Ну так у него и спроси как он этого добился
Или он забыл?
Я потерял его на форуме к сожалению, а личных контактов не знаю, потому и спрашиваю не знает ли кто из местных
9
16
4 года назад
Отредактирован Drulia_san
9

» WarCraft 3 / депротект карты (за плату)

Во-первых давайте без споров свою не свою, руки голова, это никому не интересно, автор все же предлагает деньги и ему виднее.
Просто скажу для осведомленности автора, взлом карты это не снятие замка от волшебной двери за которой вся начинка аккуратно сложена в стопочку. Там обфусцирован весь код и нет ГУИ триггеров, всё это превращается в стену кода из JASS. Чтобы это открывалось в редакторе там должны быть файлы для редактора которые ему необходимы, это легко сделать, просто перепаковав архив карты. (Если ты хочешь просто встроить туда читы или быренько убрать защитную механику какую-то я это бесплатно тебе сделаю)
Вся сложность в том чтобы руками деобфусцировать JASS код. Это даже не vJASS, это чистый JASS где все функции и переменные называются как afdf ssed oiqe и так далее, там по названию-то не понятно что происходит, нужно всё это разметить, расставить отступы, переименовать идентификаторы по их смысловому значению, короче говоря привести код в редактируемое состояние где его поймет не только машина но и человек, чтобы ты мог его уже легко править не особо вникая, такой процесс ничем не легче дизассемблинга и отнимает очень много времени, я бы например за такое и за 10 тысяч не взялся потому что отнимет много времени и сил, перелопатить огромную кучу неразборчивого JASS кода.
Я механики доты с нуля воссоздавал, это куда проще и быстрее, советую вложить деньги если некуда деть в воссоздание механик карты с нуля, а не их реверсинг из недр кода карты
0
16
4 года назад
0

» WarCraft 3 / Lua и ООП

Doc:
Каких-то особых удобств ООП в луа не дает.
Дает, оборачивание дамми, снарядов, контейнеров и прочие вещи в объекты позволяет быстро и удобно плодить их в процессе разработки, делая универсальными, видя что может предоставить тебе класс. ООП незаменимая вещь где бы она ни была. Просто в варкрафте её должно быть по-меньше, но оно имеет место быть. Делать всё через функциональщину мерзко и неудобно.
>Приватные переменные вы не сделаете
Это возможно если использовать способ ООП, который описывал я
3
16
4 года назад
3

» WarCraft 3 / Lua и ООП

NazarPunk:
И правильно, зачем думать?
Избыточность информации усложняет и делает невозможным усваивание материала, нельзя начинать учить что-то, давая сразу всю инфу, нужно абстрагировать от глаз всё что происходит за кулисами и скормить лишь суть, как этим воспользоваться. Потом уже сам узнаешь постепенно что и как работает.
Я не говорю, что надо всю жизнь копировать, в конечном итоге нужно это будет узнать, но в начале от всего что происходит за кулисами лучше абстрагироваться.
2
16
4 года назад
Отредактирован Drulia_san
2

» WarCraft 3 / Lua и ООП

prog:
Drulia_san, фигню понаписал, у тебя методы создаются для каждого экземпляра, а должны для индексной таблицы создаваться один раз, иначе зачем тебе метатаблица и индексная таблица тогда...
Для начала и так сойдет, пусть с этим сначала разберется
1
16
4 года назад
Отредактирован Drulia_san
1

» WarCraft 3 / Lua и ООП

NazarPunk:
Почему все носятся с ООП как с писанной торбой и пытаются применить её ко всем ЯП?
Потому что это удобно.
Не читал что вы понаписывали, объясню ООП в луа на пальцах. Объяснения с теориями всякими, объяснением что такое метатаблицы - всосная муть, которая только усложняет.
Короче. В луа есть переменные и функции. В луа все функции это еще и переменные, а переменные могут хранить и функции. Они могут хранить в себе другие переменные и функции если присваивать их через оператор точку ( . ), например var.a = 4. Мета-таблицы создают завершенность этого механизма, позволяя эту магию использовать в качестве ООП.
Ты хочешь создать класс, допустим класс Projectile. Класс снаряда, которому ты дашь параметры, а потом запустишь и он полетит себе так как ты прописал.
Для начала объявим его глобально:
Projectile = {}
Тут мы просто создали пустой массив, он необходим чтоб хранить объекты со всей их инфой о нашем классе, мы к нему никогда обращаться напрямую не будем, просто ну вот так надо, не задумывайся. Не думай вообще что такое мета-таблицы, такие объекты и так далее, просто работай с этим и всё, потом осознание что это такое придет само (или почувствуешь сам что готов про это почитать отдельно). А пока не засоряй себя и идем дальше.
У класса должен быть конструктор, то с чего всё начинается.
Объявляем:
-- У нас конструктор принимает путь к эффекту effectStr и две локации, откуда лететь и куда лететь (locA, locB)
function Projectile:new(effectStr, locA, locB) 
    local this = {} -- Собственно наш новый объект, текущий экземпляр, просто массив-локальная переменная которая хранит наши члены и методы
    
    -- Сначала объявим методы, я не буду писать реализацию снаряда, главное понять приницп

    function this.Move() -- Метод Move, двигает наш снаряд, если он достиг цели - возвращаем false, иначе - true
         ...........
    end

   function this.destroy() -- Деструктор. Луа не умеет их вызывать самостоятельно, вызываем вручную где надо
   ...
   end

    function this.Launch() -- Метод запуска, вызывает в таймере метод Move() пока он не вернет false
        local t = CreateTimer()
        save(GetHandleId(t), 1, this)
        TimerStart(t, 0.01, true, function()
                local t = GetExpiredTimer()
                local This = load(GetHandleId(t), 1)
                if not This.Move() then
                        This.destroy()
                        DestroyTimer(t)
                end
          end)
    end

    --А теперь код самого конструктора, напомню что мы снова пишем в скоупе функции Projectile:new, нашего "конструктора"
   this.Dummy = CreateDummy(bla bla bla)
   this.effect = CreateEffect(bla bla bla)
   ... -- И так далее
   
    -- Это должно быть обязательно
    setmetatable(this, self)
	self.__index = self
	return this
end
Итак, у нас есть свой класс, который что-то делать, пройдемся еще раз, начинку класса объявляем внутри конструктора function Projectile:new(effectStr, locA, locB) , локальная переменная this в нём и есть объект класса, который мы потом вернём. Объявление функций внутри конструктора с префиксом this. это и есть объявление методов, внутри них все манипуляции с классовыми членами и методами делаются строго через написание перед ними this. , потом уже сам код конструктора, инициализируем нужные члены, ресурсы, подготовим все и в конце вот это:
    setmetatable(this, self)
	self.__index = self
	return this
Не думай вообще что это такое, знание этого тебе ничего не даст, просто скопируй, оно вернет в конце рабочий this в место где ты создаешь объект.
Как пользоваться? Изи.
proj = Projectile.Create("war3imported\\myEffect.mdl", myloc, dest)
proj.launch()
Ничего сложного
Вот еще пример с очень простым классом, скопируй и тестируй тут: www.lua.org/cgi-bin/demo
Код для теста под катом
-- Пример класса суммирующего 2 переменные
Sum = {}

function Sum:new(a, b)
    local this = {}
    
    function this.Calc()
        print( this.a + this.b )
    end

    this.a = a
    this.b = b
    setmetatable(this, self)
    self.__index = self
    return this
end

-- Test
mySum = Sum:new(2, 5)
mySum.Calc()
0
16
4 года назад
0

» WarCraft 3 / Cannot find appropriate CD keys

PT153:
Я выше дал ссылку
Там нет никаких ссылок
Ev3nt:
Drulia_san, попробуйте это.
Спасибо большое, заработало! То что нужно