1

Rawcode To String

» WarCraft 3
Алгоритм для преобразования численного равкода в строку с теми же символами.

Читать далее...
16

Синглтаргет в АоЕ

» WarCraft 3

Что это такое?

  • Cистема что дает пользователю возможность применять мгновенные(не channeled) способности на всех юнитов либо в указанной области с некоторым АоЕ, либо на юнитов в некотором АоЕ вокруг кастера.

Читать далее...
4 ,

Новый детект физического урона на мемхаке

» WarCraft 3
Более гибкий и удобный детект физического урона и не только, при помощи Мемхака

Читать далее...
155

Система отлова нанесённого урона

» WarCraft 3
Пожалуй, одна из самых изящных реализации широко востребованного общего события "юнит получает урон".
Написано на: vjass, cjass.

Читать далее...
2

Hero Selection System

» WarCraft 3
Оригинальная система выбора героев через карточки (как в dota 2 раньше было)

Читать далее...
3

Fervor, Critical, Evade (способности)

» WarCraft 3
Способности: "Пыл", "Смертельный удар" и "Уворот".
Так же системы: "CreepRespawnSystem" & "setAttribute".

Читать далее...
7 ,

Передаем аргументы в фунции callback'ов

» WarCraft 3
Теперь то что на скрине, стало возможным, не проходите мимо!

Читать далее...
8

Система погодных эффектов и тумана

» WarCraft 3
Система пассивных погодных эффектов и система тумана с настраиваемыми параметрами, и несколькими полезными функциями.

Читать далее...
451 ,

Хак на память Warcraft3

» WarCraft 3
Готовый для импорта Memory Hack от DracoL1ich

Читать далее...
2

Триггерная дальность атаки

» WarCraft 3
Данная наработка позволит триггерно менять дальность атаки без "морфа".

Читать далее...
36

Полноценный Антимапхак.

» WarCraft 3
Анти-мапхак работающий с памятью

Читать далее...
99

Отлов клавиш

» WarCraft 3
Отлов нажатий клавиш, без добавления нативок

Читать далее...
12

Проблема со структурами

» WarCraft 3
Как-то я не так использую структуру. Должна каждая структура инкрементить значения, но как будто инкрементится только одна.
//Сама структура
struct Resist
{
    real Phys = 0.
    real Magic = 0.
    real Poison = 0.
    real Fire = 0.
    real Ice = 0.
    real Lightning = 0.
    real Light = 0.
    
    void Inc()
    {
        this.Phys++
        this.Magic++
        this.Poison++
        this.Fire++
        this.Ice++
        this.Lightning++
        this.Light++
    }
}
...
//Массив структур
Resist Resists[4]
...
//Тело функции
int i = 0
    while (i<4)
    {
        Resists[i].Inc()
        BJDebugMsg(R2S(Resists[i].Fire))
        ++i
    }
...
30

FCC 12 v2

» WarCraft 3
Наработка для RPG-карт, позволяющая дать герою двенадцать способностей без спелбука, переключения и занимания инвентаря.
Основой прикола является абилка на основе канала с командной строкой «smart».
Наработка 2010 года, была залита недавно, т.к. про неё забыли

Читать далее...
2

Динамический поворот зданий

» WarCraft 3
Функция, позволяющая задать зданию поворот во время игры. Работает за счет какой-то внутриигровой ошибки.

Читать далее...
21 ,

Полоски маны, жизни и каста

» WarCraft 3
Небольшая наработка, позволяющая давать юнитам нестандартные полоски маны, жизни и каста. Полоски жизни и маны стилизованы под стандартные.
____________________________
darkowlom: Исправил баг с не удаляемыми полосками
11

ScSortedSelector - перебор юнитов по удаленности

» WarCraft 3
Ничего необычного, но раз требуется - почему бы и не сделать.
Наработка позволяет делать перебор всех юнитов в заданной области от центральных к крайним и наоборот.
Возможности:
  • собственно, перебирать юнитов, для чего используются операторы квадратных скобок [], как у простого массива;
  • каждый новый ScSortedSelector полностью независим от остальных;
  • сортировка_выбором - это реально быстрее, чем производить GroupEnumUnitsInRange рекурсивно;

Читать далее...
11

Выполнение кода и обращение к данным

» WarCraft 3
Приветствую тебя, дорогой странник, сегодня я открою тебе занавес триггерных тайн, погружу тебя в глубины стека событий и пронесу до вершин лимита операций!
Так открой же глаза, оставь обыденную суету и встречай межсетевую вселенную!
Рукопись сия рассчитана как на юного странника, так и на видавшего виды путешественника.

Читать далее...
22

Ability Preload

» WarCraft 3
Вообще у нас тут в бездне лежит один алгоритм подзагрузки способностей, но уж очень он - удручающий, мягко говоря. Вот вам уникальный скрипт, который поможет подгружать способности, так, как вам нужно :]

Читать далее...
17

Damage Modify System

» WarCraft 3
Система повышения зелёной (бонусной) силы атаки юнита...

Читать далее...
7

Simple Missile System

» WarCraft 3
Система снарядов, в которую включены интересные возможности, отличающие её
от обычных систем.

Читать далее...
20

Библиотека Color

» WarCraft 3
Небольшая библиотека позволяющая без проблем разукрашивать в разные цвета текст, юнитов, ячейки мультибордов и тд...

Читать далее...
20

Creep Respawn System (CRS)

» WarCraft 3
Новая система респауна нейтральных крипов, просто копируем, и всё крипы респаунятся там где они изначально были...
Имеется GUI и vJass версия системы.
Тема для вопросов по системе

Читать далее...

Пересечение двух отрезков

» WarCraft 3
Функия проверяет отрезки на пересечения, если они пересекаются, то функция возвращяет true и устанавливает в глобалке точку пересечения.
globals
    real x
    real y
endglobals

function linecrossline takes real x1, real y1, real x2, real y2, real x3, real y3, real x4, real y4 returns boolean
    local real i = (y4-y3)*(x2-x1)-(x4-x3)*(y2-y1)
    local real lx = 0.00
    local real ly = 0.00
    if i == 0.00 then
    else
        set lx = ((x4-x3)*(y1-y3)-(y4-y3)*(x1-x3))/i
        set ly = ((x2-x1)*(y1-y3)-(y2-y1)*(x1-x3))/i
        if lx <= 0.00 and ly <= 0.00 and lx >= 1.00 and ly >= 1.00 then
        set x = x1+lx*(x2-x1)
        set y = y1+ly*(y2-y1)
        return true
        endif
    endif
    return false
endfunction
5

Генератор случайных чисел без повторений

» WarCraft 3
Инициализация:
Задать private constant integer RandMemMax на нужное количество запоминаемых чисел. Максимум: 8191
Использование:
Функция GetRandomIntMem принимает 2 integer: нижняя граница и верхняя граница, включительно. Возвращает случайный integer (между ними). Сгенерированные ранее числа хранятся в массиве размером RandMemMax, при переполнении массив полностью обнуляется. Поэтому следует задавать его с оценкой обращений.
Функция ClearRandomIntMem ничего не принимает и не возвращает. Используется для обнуления массива запомненных чисел после сессии обращений.

Читать далее...

HEX to DEC to ASCII (конвертация равкодов)

» WarCraft 3
""
globals
integer array Pow16x
integer array Pow256x
string array CharMap16
string array CharMap256
integer array CharInx16
integer array CharInx256
endglobals

Читать далее...
1 неизвестен

Определение высоты рельефа

» WarCraft 3
Определяет высоту рельефа в заданных координатах точки. Полезно для реализации "правильного" движения снарядов.
library TerrainHeight

globals
  private location loc = Location(0, 0)
endglobals

function GetTerrainZ takes real x, real y returns real
  call MoveLocation(loc, x, y)
  return GetLocationZ(loc)
endfunction

endlibrary
21

Базы данных

» WarCraft 3
По скольку в коде карты нельзя получить доступ к полям объекта, таких как защита юнита, класификация предмета, стоимость предметов и т.д., что создает некоторые не удобства, а иногда рушаться гениальные идеи. Один из самых простых способ добраться к нужной нам информации, это создание базы данных.
В этой статье я рассмотрю несколько примеров баз данных. Раскрою пожалуй важные аспекты и проблемы с которыми можно столкнуться.

Читать далее...
43

PhysX

» WarCraft 3
Наработка физики, преимущества которой скорость и функциональность, сочетающиеся с предельной простотой использования.
» 1.3 dev2

  • трамплин (баг - иногда объекты при встрече препятствия резко выстреливают вверх)
  • CrossStream: Производительность увеличена в 2-3 раза, теперь стабильно выдерживает до 400 активных объектов!
Скачать 1.3 dev2 (тестовая)

Читать далее...
75 , ,

Destructible Physics (XDestr)

» WarCraft 3
Моя попытка сделать разрушаемые физические тела в Warcraft 3. Суть карты - всякими способами разрушить старый каменный мост (если его можно назвать мостом).
Для обсуждения могу сказать, что здесь используется почти максимум всей возможной оптимизации, и круче этого делать что-то в варкрафте практически невозможно. =)
Количество кубиков на весь мост - 40.

Читать далее...