
01 / 07 — Картаген
Пустинята, в която започва всичко. Колкото по-тежък е врагът, толкова по-дълбоко затъва в подвижните пясъци.
- Подвижни пясъци
- Пясъчна буря
Реални екрани от проекта, преди пускането
Стратегическа tower defense кампания по границите на Римската империя, която изградихме на Godot за Alopix Studios: седем региона, 35 нива и 558 вълни.

Задача
Прототип в браузъра да прерасне в пълна кампания по римската граница за Steam.


01Предизвикателство
Играта започна като прототип в браузъра: мрежа върху платно, един път и пет вида римски кули. Задачата беше той да прерасне в пълна кампания за Steam — седем региона, които се играят различно, стратегия, която се чете на всяка стъпка, и билд, който се тества и издава като истински софтуер.
02Подход
Изградихме всеки регион като отделна сцена със свои правила, сглобена в редактора, а всеки враг — като анимиран персонаж от части; обикновените са рендерирани предварително в регионални атласи. Headless серията тестове минава на Windows при всеки push в кода на играта.
03Резултат
Версията за плейтест 0.9.5 съдържа цялата кампания: 7 региона, 35 нива и 558 вълни. В хранилището на играта има 200 автоматизирани тестови сценария и 189 къмита от март до октомври 2026 г.
Акценти
ГЛ. 01—07
Глави
Porta Westfalica е tower defense кампания за един играч, която изградихме за Alopix Studios на Godot 4. Играете като Аврелий — млад легионер, който стига от Картаген до пролома на Везер през седем региона, всеки със свои правила. Пет вида римски кули, осем типа врагове и бос във всеки регион.
ГЛ. 01 / 07 — Кампания
Играете като Аврелий, млад легионер, изпратен в Картаген. След всеки регион той получава повишение, а картата чертае пътя му по границите на империята до Porta Westfalica, където Рим го помни като Dux Limitis.
Маршрут
ПЛ. 01 — Седем региона, един път: от Картаген до Везер
Маршрут


Маршрут
ГЛ. 02 / 07 — Отбрана
Стрелците сипят залпове, пилумите пробиват броня, онагърът бие групи, а казармата и конницата държат пътя. Всяка кула расте до ниво III; от регион III може да вземе една от две платени доктрини, а в последните два региона — и майсторско подобрение.
Кулите се строят до пътя; клик отваря подобрение, цел и продажба. Вие решавате по кого стреля всяка кула и кога да ударят Arrow Rain или Boulder Drop.
ПЛ. 01 — Строите, подобрявате, насочвате
01
Строите, подобрявате, насочвате
Кулите се строят до пътя; клик отваря подобрение, цел и продажба. Вие решавате по кого стреля всяка кула и кога да ударят Arrow Rain или Boulder Drop.
02
Кула Sagittarii
Една стрела на ниво I, четири на ниво III и шест на всеки десети залп. Доктрини: огнени или отровни стрели.



03
Платформа Pilum
Тежки копия, които пробиват броня: 72 базови щети на удар на ниво III. Доктрини: копие, което троши бронята, или такова, което пронизва още две цели.



04
Кула Onager
Камъкът засяга и до трима врагове около целта, а на ниво III я отблъсква назад. Доктрини: трошащи камъни или ударна вълна.



05
Казарма на легионерите
Легионери, които спират врага на пътя: двама на ниво I и трима с по 400 точки живот на ниво III. Доктрини: стена от щитове или ветерани.



06
Лагер на конницата Auxilia
Ездачи, които пресрещат пробивите: един на ниво I, двама на нива II и III. Доктрини: бързи разузнавачи или тежка конница.



01
Строите, подобрявате, насочвате
Кулите се строят до пътя; клик отваря подобрение, цел и продажба. Вие решавате по кого стреля всяка кула и кога да ударят Arrow Rain или Boulder Drop.
02
Кула Sagittarii
Една стрела на ниво I, четири на ниво III и шест на всеки десети залп. Доктрини: огнени или отровни стрели.



03
Платформа Pilum
Тежки копия, които пробиват броня: 72 базови щети на удар на ниво III. Доктрини: копие, което троши бронята, или такова, което пронизва още две цели.



04
Кула Onager
Камъкът засяга и до трима врагове около целта, а на ниво III я отблъсква назад. Доктрини: трошащи камъни или ударна вълна.



05
Казарма на легионерите
Легионери, които спират врага на пътя: двама на ниво I и трима с по 400 точки живот на ниво III. Доктрини: стена от щитове или ветерани.



06
Лагер на конницата Auxilia
Ездачи, които пресрещат пробивите: един на ниво I, двама на нива II и III. Доктрини: бързи разузнавачи или тежка конница.



ГЛ. 03 / 07 — Региони
Всеки регион добавя свое правило: пясъкът забавя тежките, вятърът мени обхвата, портите се пробиват. Седем бойни полета, а всички кадри тук са от самата игра.
Картаген
Пустинята, в която започва всичко. Колкото по-тежък е врагът, толкова по-дълбоко затъва в подвижните пясъци.
ПЛ. 01 — Картаген

01 / 07 — Картаген
Пустинята, в която започва всичко. Колкото по-тежък е врагът, толкова по-дълбоко затъва в подвижните пясъци.

02 / 07 — Юдея
Два пътя се редуват: път A на нечетните вълни, път B на четните, а следа по земята показва кой е следващият.

03 / 07 — Сирия
Вятърът сменя посоката си на всеки 5–10 секунди: по вятъра обхватът на стрелците расте с 15%, срещу него пада с 20%.

04 / 07 — Британия
Врагът може да пробие трите порти и да отвори нови линии; портите се ремонтират със злато. Девиз: „The battlefield remembers“.

05 / 07 — Алпите
Заснежени проходи. След обратно броене срутище оставя камъни, които забавят врага, а в някои вълни трябва да опазите инженер, който поправя кулите.

06 / 07 — Германия
Гъста гора, блата и засади по горни и дълбоки горски пътеки. Преди боса военен съвет ви дава избор.

07 / 07 — Porta Westfalica
Финалът: три линии през пролома, мост, порта и девет механики, които идват ниво по ниво.

01 / 07 — Картаген
Пустинята, в която започва всичко. Колкото по-тежък е врагът, толкова по-дълбоко затъва в подвижните пясъци.

02 / 07 — Юдея
Два пътя се редуват: път A на нечетните вълни, път B на четните, а следа по земята показва кой е следващият.

03 / 07 — Сирия
Вятърът сменя посоката си на всеки 5–10 секунди: по вятъра обхватът на стрелците расте с 15%, срещу него пада с 20%.

04 / 07 — Британия
Врагът може да пробие трите порти и да отвори нови линии; портите се ремонтират със злато. Девиз: „The battlefield remembers“.

05 / 07 — Алпите
Заснежени проходи. След обратно броене срутище оставя камъни, които забавят врага, а в някои вълни трябва да опазите инженер, който поправя кулите.

06 / 07 — Германия
Гъста гора, блата и засади по горни и дълбоки горски пътеки. Преди боса военен съвет ви дава избор.

07 / 07 — Porta Westfalica
Финалът: три линии през пролома, мост, порта и девет механики, които идват ниво по ниво.
ГЛ. 04 / 07 — Врагът
Нищо не идва без предупреждение: преди всяка вълна прегледът казва формацията и как да я спрете. Изненадата е в комбинацията — всеки регион тегли от свой пул формации, а в пет региона чака и кризисна вълна.
Обсадна колона
Първи тръгват таранът и бронираната охрана. Отговорът: цел по бронираните, копия срещу бронята и казарма, която ги задържа.
| Вълните идват във формация | ||||||
|---|---|---|---|---|---|---|
| КартагенI | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| ЮдеяII | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион |
| СирияIII | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| БританияIV | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион | Идва в този регион |
| АлпитеV | Идва в този регион | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион |
| ГерманияVI | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| Porta WestfalicaVII | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| Идва в този регион | 5/7 | 5/7 | 6/7 | 7/7 | 6/7 | 5/7 |
| Вълните идват във формация | Обсадна колона | Щурм със щитове | Прикриващ екран | Бърза глутница | Смесен щурм | Кризисна вълна |
|---|---|---|---|---|---|---|
| КартагенI | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| ЮдеяII | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион |
| СирияIII | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| БританияIV | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион | Идва в този регион |
| АлпитеV | Идва в този регион | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион |
| ГерманияVI | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| Porta WestfalicaVII | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| Идва в този регион | 5/7 | 5/7 | 6/7 | 7/7 | 6/7 | 5/7 |
| Вълните идват във формация | Обсадна колона | Щурм със щитове | Прикриващ екран | Бърза глутница | Смесен щурм | Кризисна вълна |
|---|---|---|---|---|---|---|
| КартагенI | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| ЮдеяII | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион |
| СирияIII | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| БританияIV | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион | Идва в този регион |
| АлпитеV | Идва в този регион | Идва в този регион | Не идва в този регион | Идва в този регион | Идва в този регион | Не идва в този регион |
| ГерманияVI | Не идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| Porta WestfalicaVII | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион | Идва в този регион |
| Идва в този регион | 5/7 | 5/7 | 6/7 | 7/7 | 6/7 | 5/7 |
ГЛ. 05 / 07 — Porta Westfalica
Последният регион, сглобен пред очите ви: терен, три линии, мост и порта, после гората. В петте му нива идват патрули, засади по хребета, диверсанти на моста и финт, който пуска линиите една по една.
Проломът на Везер
Река, хълмове и скали: долният слой на сцената, едно цяло изображение, върху което се реди всичко останало.
От слоеве до битка

01 / 05 — Терен
Проломът на Везер
Река, хълмове и скали: долният слой на сцената, едно цяло изображение, върху което се реди всичко останало.
От слоеве до битка

02 / 05 — Пътища
Три линии
Пътищата очертават трите линии: главния път през моста, хребета и брега на реката. Хребетът се отваря в ниво 2, брегът — в ниво 3.
От слоеве до битка

03 / 05 — Мост и порта
Мостът и портата
Каменният мост и дървената порта с палисада. Кулите до моста стрелят с 8% по-бързо, докато диверсант не прекъсне контрола над моста.
От слоеве до битка

04 / 05 — Гора
Гората и бурята
Дървета, камъни и хълм довършват сцената, а дъжд и облаци минават над войските. Горското прикритие на хребета крие засадите.
От слоеве до битка

05 / 05 — Битка
Вълна 25 от 25
Gatebreaker of Westfalica идва по главния път: щурм на моста и три фази до атака по трите линии. Добре изиграният регион му оставя по-малко подкрепа.
От слоеве до битка

01 / 05 — Терен
Проломът на Везер
Река, хълмове и скали: долният слой на сцената, едно цяло изображение, върху което се реди всичко останало.
От слоеве до битка

02 / 05 — Пътища
Три линии
Пътищата очертават трите линии: главния път през моста, хребета и брега на реката. Хребетът се отваря в ниво 2, брегът — в ниво 3.
От слоеве до битка

03 / 05 — Мост и порта
Мостът и портата
Каменният мост и дървената порта с палисада. Кулите до моста стрелят с 8% по-бързо, докато диверсант не прекъсне контрола над моста.
От слоеве до битка

04 / 05 — Гора
Гората и бурята
Дървета, камъни и хълм довършват сцената, а дъжд и облаци минават над войските. Горското прикритие на хребета крие засадите.
От слоеве до битка

05 / 05 — Битка
Вълна 25 от 25
Gatebreaker of Westfalica идва по главния път: щурм на моста и три фази до атака по трите линии. Добре изиграният регион му оставя по-малко подкрепа.
От слоеве до битка

ГЛ. 06 / 07 — Разработка
Играта започна като прототип на чист HTML и JavaScript. Когато беше създадено хранилището ѝ, до прототипа вече работеше версия на Godot 4, а в първите дни кодът се раздели на симулация, изобразяване, въвеждане и данни — основата на всичко след това.
Платно 1100×620, кули като кръгчета с „L1“, врагове като точки и първи регион, който вече се казва Porta Westfalica. Кулите са запазили имената и цените си.
ПЛ. 01 — Прототипът
01
Прототипът
Платно 1100×620, кули като кръгчета с „L1“, врагове като точки и първи регион, който вече се казва Porta Westfalica. Кулите са запазили имената и цените си.

02
Стратегия, която се чете
След всяко ниво Battle Report казва какво проработи и какво се обърка, а Strategy Codex обяснява враговете, формациите и доктрините.
Четим и достъпен
Екрани и настройки в играта
03
Персонажи от части
Всеки враг е сглобен от отделни части с опорни точки за четири посоки. Обикновените врагове са рендерирани предварително в седем регионални атласа.

04
Жива картина при зареждане
След заставката на студиото менюто и активният регион се зареждат в отделна нишка зад петсекундна жива илюстрация. С Reduced Motion тя е неподвижна.
05
Проверка, която проверява и себе си
Всеки push в кода на играта пуска официалния Godot 4.7.2 на Windows и тестовете без екран. Всяка грешка ги проваля, дори след PASS.
Headless проверка за издаване
GitHub Actions · windows-latest
01
Прототипът
Платно 1100×620, кули като кръгчета с „L1“, врагове като точки и първи регион, който вече се казва Porta Westfalica. Кулите са запазили имената и цените си.

02
Стратегия, която се чете
След всяко ниво Battle Report казва какво проработи и какво се обърка, а Strategy Codex обяснява враговете, формациите и доктрините.
Четим и достъпен
Екрани и настройки в играта
03
Персонажи от части
Всеки враг е сглобен от отделни части с опорни точки за четири посоки. Обикновените врагове са рендерирани предварително в седем регионални атласа.

04
Жива картина при зареждане
След заставката на студиото менюто и активният регион се зареждат в отделна нишка зад петсекундна жива илюстрация. С Reduced Motion тя е неподвижна.
05
Проверка, която проверява и себе си
Всеки push в кода на играта пуска официалния Godot 4.7.2 на Windows и тестовете без екран. Всяка грешка ги проваля, дори след PASS.
Headless проверка за издаване
GitHub Actions · windows-latest
ГЛ. 07 / 07 — Резултат
От първия къмит в хранилището на 5 март до пакета за плейтест 0.9.5 на 5 октомври 2026 г.: цялата кампания, с автоматични тестове при всеки push.
нива в 7 региона
вълни в кампанията
реда GDScript в играта
автоматизирани тестови сценария
предварително рендерирани кадъра анимация
къмита в хранилището на играта

ПЛ. 01—04




Контакт
Искате нещо подобно?
30 минути, без ангажимент. Тръгвате си с конкретни идеи за сайта, процесите или продукта си.
Изберете удобен час в календара ни.
Разкажете ни за проекта. Отговаряме до няколко часа в работно време.
Разкажете ни за проекта. Отговаряме до няколко часа в работно време.