Этого треда уже нет.
Это копия, сохраненная 14 мая 2023 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
1.jpg121 Кб, 1365x735
Буду неспешно пилить io-мобу. Круглые герои, башни, 701894 В конец треда | Веб
Буду неспешно пилить io-мобу. Круглые герои, башни, скиллы, предметы, все вот это вот. Отчеты каждый день. Стек: js, phaser, colyseus, с бд пока не определился. Погнали!
day1.mp41,2 Мб, mp4,
1360x736, 0:03
2 701898
День 1.

Развернул проект, реализовал подключение нескольких игроков и перемещение по карте. Пока ни коллизий, ни-че-го.
3 701927
>>01898
colyseus состояние бродкастит? что при расхождении делать?
4 701933
это выстрелит, рад что это происходит на моих глазах:)
5 701944
>>01927
Да, бродкастит.
Второй вопрос не очень понял. Легитимное состояние хранится на сервере, клиенты его читают и воздействуют на него своими сообщениями, которые, опять же, проявляются на легитимность на сервере.

>>01933
Спасибо. Посмотрим, что будет.
6 701945
>>01894 (OP)

>Стек: js, phaser, colyseus


А почему рот в говне?
7 701947
День 2, ч.1

Принято волевое решение сделать графон в 2д-олд-рпг-стиле.

>>01945
см. пик 2
8 701951
>>01947

>графон в 2д-олд-рпг-стиле.


Откуда тайлы?
Screenshot1.png2,3 Мб, 1365x722
9 701952
10 701955
>>01944
я не очень знаю, как работает колизей. вопрос был в том, ждешь ли ты ответ от сервера, прежде чем поменять локальное состояние, или меняешь сразу на основе инпута. если второе, у тебя возможны расхождения с состоянием на сервере. если первое - будут лаги
11 701957
>>01955
Все иошки в которые я играл, просчитывают перемещение на сервере, на основе твоих инпутов. Да, лаги есть, но до 100мс вполне комфортно играть яскозал. Зато не будет гемора с читерами, лагерами и синхронизацией. В доке, лоле и других страгияобразных так же сделано, и всем ок.
m1.jpg6,1 Мб, 1600x1600
12 701961
13 701963
>>01961
Цвета распидорасило, фотошоп задушил с какими-то rgb/cmyk, на самом деле все выглядит лучше.

Все-все, больше не спамлю сегодня.
m1.png5,7 Мб, 1600x1600
14 701982
Ай обманул.
1.mp49,3 Мб, mp4,
1360x764, 0:08
15 702028
День 3.
16 702044
>>02028
Карта маленькая слишком, и эти треугольные леса всратые
17 702045
>>02028
Хм, а ведь мобы в таком исполнении ещё нет? Причём игровую сессию можно не делать жёстко привязанной к игрокам. Если один игрок вышел, то на его место может зайти другой, со своим героем.
111.mp41010 Кб, mp4,
680x380, 0:06
18 702060
Коллизии и простенькая атака готовы. Завтра запилю хп, нанесение урона игрокам и что-нибудь еще.

>>02045
Да, думаю сделать бесконечный дэтматч, по крайней мере, на первых порах. А еще крипов не будет. Так что называть это мобой неправильно, наверное. Так, миниэкшнрпгшечка.

Решил вернуться к идее с героями-кругляшами. Сделать их можно няшно, плюс не придется париться с анимациями. йобу только за донат шучу

Идею с просчетом перемещений на сервере отмел, т.к. гемор и лаги. Будет достаточно просто проверять, не ходят ли игроки сквозь стены и не юзают ли спидхак.

Алсо, чекайте другую мою браузерку.
https://nvzaa.github.io/dungeon-671/
надо сделать визуальное отнимание/прибавление хп, плюс чтобы окно гемовера не вылезало мгновенно после смерти, не дав понять, что произошло. на днях мб
1.mp44,5 Мб, mp4,
680x380, 0:10
19 702217
День 4.
1.jpg388 Кб, 1343x753
20 702527
День 5.

Накидал всратенький интерфейс, структурировал код красиво по классам и функциям, запилил функционал работы скиллов, етц. Получается жирно.
21 702645
>>02527
Круто, слуш, Артем, сурсы будешь выкладывать?
Я сейчас тоже на колизее хренячу игру (ток пошаговую), интересно посмотреть как другие делают бекенд логику.
Со временем пришел к тому, что 1 плеер у меня roomOwner и "главную" логику делает он (физика, AI, еще что-то), в моем случае это работает и при этом я разгрузил сервер частично.
А ты пишешь 50/50, если будешь что-нибудь править, будет удобно в 2х местах одну и ту же логику делать?
22 702646
Тогда бы уже стратегию бы нормальную сделал не героическую, сессионную
мобы уже в печёнках
Screenshot3.jpg311 Кб, 1184x665
23 702670
День 6.

>>02645
Сурсы - нет.
Логика у меня только на сервере. К примеру, работа скиллов:
1. игрок прожал кнопку
2. отправил на сервер USE_SKILL { name: 'bombezhka-zhopy', angle: 87 }
3. сервер просчитал кто попадает под действие бомбежки, отнял им хп (то есть воздействовал на внутреннее состояние), что-то еще
4. сервер отправил всем (в т.ч. использовавшему скилл) PLAY_SKILL_ANIM { name: 'bombezhka-zhopy', angle: 87, playerId: '1488 }
5. каждый клиент проиграл у себя анимацию "на" указанном игроке

И так работает все. Кроме перемещения: оно сообщается серверу по факту совершения.

Короче говоря, дублирования логики нет.

>>02646
Нет, лучше ты.
24 702685
>>02646
распиши кириллотребования к стратегии, что там должно быть, сеттинг, сколько человек мультиплеер и т.д.
кун без фантазии
25 702715
>>02670

>Логика у меня только на сервере


Валидацию от нескольких вызовов одного скила будешь делать?
Можешь показать хотя бы как основной gameState на колизее выглядит?
map Player; map Units; map skills;?
1.png17 Кб, 600x518
26 702718
Цены на домены .io - мое почтение, конечно. 6к у reg.ru, 4.2к у godaddy, 28$ у namecheap. Возьму какой-нибудь .online или .space, цена вопроса 200р +-
Накинул один вариант названия игры/адреса сайта: funtasy.space
Сервер уже присмотрел, цена вопроса 5-10$/мес, есть вероятность, что будет ок. В гермашке для начала возьму.

Вообще, маняцель разработки - коммерческий успех. Средство достижения банальное - реклама.
Раскручивать попробую сайтами-каталогами браузерных игр, самые крупные это crazygames, iogames плюс миллиард более мелких.
Также можно будет подключить двач, реддит, етц.

Дедлайн на выкат первой версии: 14-й день. Озвучиваю чтобы сохранять настрой и мотивацию.
3 класса, 12 скиллов, 10 предметов, работающие башни, чатик, лог убийств, большая карта.

Как будут происходить катки, общая механика игры - пока неизвестно, думою.

Этот анон >>02044 прав, конечно, нужно переделать. Старая карта 1600х1600 тайлов. Думаю, 3000х3000 будет ок.

Заложил первые кирпичи будущего комунити: https://discord[точка]gg/KG73QR5
Можете джойниться зачем-нибудь.

Забавно, что в ОП-посте писал про "неспешно", но получается вполне в темпе.

>>02715
Я не использую typescript, если что. Так что state в виде произвольного объекта.

>Валидацию от нескольких вызовов одного скила будешь делать?


При прожимании скилла задаю currentCooldown, и не разрешаю повторно прожимать, пока это значение > 0.
27 702720
>>02685
да взять обычную концепцию стратегий из 00-х
типо варкрафта 2
или вархаммера
главное это адаптировать геймплей под быстрый In'n'out
чтоб человек заходил, делал катку, и выходил с некоторым опытом, некоторым количество очков, которые бы он мог потратить на развитие и т.д.
главное же в .io играх это именно быстрый безболезненный, понятный, не перегруженный лишней информацией, вход и выход
а потом уже если ему понравилось пусть остаётся и совершенствуется дальше
типо изи ту лёрн хард ту мастер, идеальная формула гиперкэжуал игр
возьми как анон из треда ассеты от рпгмейкера и на их основе сделай стратежку, количество игроков в сессии, и размер карты можешь уже настраивать потом в ходе тестов
главное в этой игре должна быть идея in'n'out человек должен быстро зайти совершить какой то минимальный набор действий, или даже не совершать его и сразу идти и месить противника
28 702722
>>02720
первое что приходит на ум в данной концепции
это:
начало игры, у игрока есть базовый юнит "постройки"
который идёт и кушает окружение, юнит типо матка, саранча, таракан, муравей, шарик круглый как агарию, только этот шарик кушает не игроков а окружение, леса, камень, чи ещё какую нить хуету
поедая окружение он копит деньги, становясь немного больше и сильнее
трятить деньги можно на его лёгкий апгрейд, или на покупку юнитов, которые "рождаются" из него, инкубируются в нём, пока юниты инкубируются, эта "матка" обездвижена или замедленна и уязвима
ну а дальше уже дело техники, строим юнитов и отправляем их пиздить чужую матку
потеряв матку игрок проигрывает
это важно в концепции in'n'out, должна быть конечная цель победы, а не просто уничтожить все юниты и построики врага
хотя это тоже можно сделать в качестве достижения победы, но не на ранних этапах
цели победы:
уничтожить матку
накопить определённое количество "еды"
не дать сопернику матки развиться, заставлять его держатся на определённом количестве "еды" определённое время
ну и много чего уже на этой базе можно повыдумывать
29 702723
>>02722

>из вархаммера


из вархаммера я имел ввиду это захват точек
в данной концепции это можно реализовать так, типо на карте есть точки добычи "еды" для матки, особенные
захватываешь их, и "курьеры" типо из этой точки\магазина\склада\пещеры таскают еду для матки
30 702762
>>02723
Слушай, а идея очень даже неплохая.

>главное же в .io играх это именно быстрый безболезненный, понятный, не перегруженный лишней информацией, вход и выход



про вход я тоже давно понял, но оформление выхода пока только по таймеру придумал. Что меня безумно раздражало в агар.ио (и что в зобмб.ио намного лучше сделано имхо) - это как раз выход. В агар.ио (исходной версии, сейчас там батл рояли вроде тоже появились, но в текущей версии переусложнен вход) ты начинаешь и не знаешь, когда все это кончится. А если остановишься - тебе пиздец.

Также если вспоминать стратегии 90х и 00х, в старкрафте партия могла длиться достаточно долго, что тоже шло во вред фану. Мне нравится идея, что матку нужно кормить, если добавить исчерпаемость ресурсов, то появляется ограничение на катку (можно даже голодные игры делать, лол)

>из вархаммера я имел ввиду это захват точек


в ваху не играл, но общую идею вроде бы понял

Спасибо за идею, попробую наваять что-то подобное, по результату отпишусь
31 702763
>>02762
зомбс.ио
быстрофикс
32 702796
>>02762
в агарио вся игра на рейтинг идёт и на накопление баллов
типо там нет конечной цели, конечная цель стать топ1, самым жирным и заработать по больше баллов
gif-eating-popcorn-12.gif3,3 Мб, 480x480
33 702857
>>02718

>Стек: js, phaser, colyseus


С удовольствием посмотрю, как ты обосрёшься.
34 702867
>>02857
С чего бы? Все летает.
35 702872
>>02867
Мне кажется он не про перфоманс, а просто токсик.
Кстати на каком хосте серв будешь покупать? А то у меня горький опыт был с русскими хостами постоянно бля отваливается, хотя пишут 99.9%
36 702878
>>02872
Я никогда не брал vps зарубежные и с высоким аптаймом, поэтому советовать не могу.

Из какого-то топа нашел https://www.kamatera.com/express/compute/products.php
пока ориентируюсь на него.
1.mp43,9 Мб, mp4,
1344x748, 0:23
37 702906
День 7-8.

Доволен собой.
38 702929
>>02906
выглядит годно, продалжай я тут буду переодичетски заходить
39 703017
>>02060

>А еще крипов не будет


А как вышки ломать?
# OP 40 703071
>>03017
Пока придумал и пилю такую механику: в один момент времени у каждой стороны деактивирована одна башня, какая именно - выбирается случайно каждые 1-2-3? минуты (офк выбирается самая дальняя на линии). Враги могут прийти и сломать ее.
При выпиле всех башен хотя бы на одной линии (2-3?) трон становится уязвимым, можно его сломать и победить.

постить теперь буду по мере запила контента, а не каждый день

код пишется аж обои от стен отклеиваются
41 703079
>>03071

>какая именно - выбирается случайно


Только не это. Минимизируй рандом по возможности. Пусть будет лолоподобный критшанс, но вот это точно фана не принесет.
И опять же: а что делают игроки, пока таверы активны? Ну тип вот я на миду сделал фб. И чем мне заняться дальше?
42 703097
>>03079
Ты прав, моя временная идея - отстой. Пока вообще нет идей, как нормально все обыграть. Принимаю реквесты.

Подруга рисует один арт к игре, мне оч нравится, покажу, как будет готово.
43 703185
>>03112 (Del)
А какой именно способ подойдет для игры ОПа? Хотя у него примитивная 2D йоба. Но какой вариант подойдет для большой чанковой ММО, хранить снимки состояний будет слишком дорого.. Есть еще что читнуть?
# OP 44 704237
Ирли аксесс переносится на 3 дня, т.к. ничего не готово))))))))))))))))
45 704422
>>04237
Классика, но мы такие же, все понимаем и подождем
1.jpg96 Кб, 615x864
# OP 46 704638
47 706230
>>01894 (OP)

> Отчеты каждый день.



ебало представили?
48 706233
>>06230
Проблема любых не опытных гейм-девелоперов. Как только проходит вдохновение от 1 до 14 дней обычно, всё забрасывается, либо переключается на новую идею и так далее.

Ебало наполненное безысходностью и отчаяньем.
# OP 49 706235
Даже не буду оправдываться. Запуск на днях. Написано и отрефакторено неебическое кол-во кода и логики. Осталось оптимизировать и накрутить баланса.
1.mp412,3 Мб, mp4,
1360x764, 0:35
# OP 50 706617
51 706639
Прикольно!

А фарм нейтральных юнитов будет? Что с сетью, просто вебсокеты делал и не парился? Матчи или закидывание игроков когда угодно как обычно в ио? Если первое, трафик будешь покупать, чтобы матча по 24 часа не ждать? Под зум разные спрайты рисовал или не?
# OP 52 706659
>>06639

>фарм нейтральных юнитов будет?


Нет. 5х5 на такой карте будет не пустынно.

>Что с сетью, просто вебсокеты делал и не парился?


colyseus

>Матчи или закидывание игроков когда угодно как обычно в ио?


Второе. Кидает в рандомную комнату, в которой есть место для тебя. Сломал башни -> сломал трон -> катка по новой. Позже запилю рейтинги, чтобы было на что дрочить.

>Под зум разные спрайты рисовал или не?


Не, зачем?

Из заметок: больше никогда не писать код без типизации.
53 706673
>>06617
Какаято залупа, уверен на 146% получится неиграбельное гавно
54 706694
>>06659

>больше никогда не писать код без типизации


Хы, а чего сразу тайпскрипт не захотел брать?
Откроешь доступ в гите?
# OP 55 706775
>>06694
Думал, без него быстрее. Потом соснул, офк, когда сущностей появилось дохера, и стал тратить на дебаг времени как на кодинг.

Хотелось бы, конечно, выложить на гитхаб, мол О КАК МОГУ, но не хочу чтобы васяны делали клоны, так что, нет.

Запуск 29.10.2020 00:00 МСК в тестовом режиме на домашней пеке 24/7 шоб все затестить.
56 706792
>>06775

>васяны делали клоны


Блин, яб со своей архитектурой сравнить хотел, ты же можешь скрыть часть файлов и выложить только код.
57 706816
>>06775

>стал тратить на дебаг времени как на кодинг.


Так это из-за мутабельности, а не из-за типов.
58 706831
>>06775
Жду, надеюсь там будут тяночки.
59 706862
>>06775

>Запуск 29.10.2020 00:00 МСК в тестовом режиме на домашней пеке 24/7 шоб все затестить.


Запустил? Давай ссылку.
# OP 60 706863
http://tema.ddns.net/

крайне возможны лютые баги с крашем всего и вся

дс для кооперации, помощи кириллу и прочего: https://discord[точка]com/invite/SRmaxk3

ладошки-то вспотели
# OP 61 706895
вроде ниче не крашится

подрубил ssl, чтобы закинуть на itch.io
https://tema.ddns.net:80/
111.jpg1,4 Мб, 1344x648
# OP 62 706918
чилибосим с анонами из /b
63 706919
>>01894 (OP)
Оп ты действительно молодец. Впервые за этот год удивил тред в /b/. Даже тред в /gd/ есть, кто же знал, что среди васянов такой гений появится. Стек отличный выбрал, желаю тебе удачи и успехов с игрой.
64 706920
>>01894 (OP)
С цветами союзников и врагов какая-то хуйня творится, чини.
# OP 65 706921
>>06919
Большое спасибо за поддержку.

Забавно, 8 человек онлайна сервер держит не потея, 0.5% проц (i7-3632qm) и 90 мб ОЗУ. И это интерпретируемая js-параша.

>>06920
Поподробнее. Сам чет не замечал.
66 706922
>>06921

>Поподробнее. Сам чет не замечал.


Сначала я был в синей команде, союзники были синими, а враги красными. Потом я перешел в красную команду, сам отображался красным, союзники красным, враги синим. Спустя время союзники начали отображаться синим, враги красным.
67 706924
>>06919
Что-то слишком много сарказма на один пост.
ОП, конечно, молодец, что пытается сделать игру, но нахваливать его пока рано, слишком сырой прототип.
68 706925
Нет оптимизации по отрисовке, в следствии чего ужасные лаги. Не синхронизированы игроки с сервером. Единственное, что понравилось - оформление.
69 706926
>>06922
Принял.

Лютые лаги из-за хп баров, сегодня-завтра сделою.
70 706929
>>06924
Обычно если игру делают, это скопированная по образцу из готовых ассетов на Юнити. Чтобы на Фазере игру делать уже мозги нужны, а ОП пишет не только клиентский код, но и серверный что в два раза сложнее. Да игра сырая, но за 6 дней он достиг таких успехов, которых мало кто достигает из начинающих геймдев разработчиков. Как один анон пишет >>06233 , они пробуют не получается и бросают. Проще скопировать чужое, чем делать свое. Оп не просто так боится загружать свой код на гитхаб, ему будет обидно, если кто-то украдет его тяжелую работу и выдаст за свою, а бояться будет только действительно тот, кто старался и делал.
71 706932
Нашёл визуальный баг. Пламя от выстрела остаётся висеть в воздухе и не пропадает.
72 706936
>>06929
Вообще-то в /gd/ много игр "не из готовых ассетов на Юнити". Где-то тут есть даже очень похожая веб-игра, где анон достиг чуть больших успехов (что было дальше не знаю). Кроме того, нахваливать за клиентский/серверный код пока рано, игра лагучая и багучая, почти неиграбельная, а ОП тратит уйму времени на дебаггинг, следовательно код он писал не слишком внимательно (навалить кучу говнокода любой сможет, если вложит в это достаточно времени, в этом нет какого-то великого достижения; а качество его кода мы можем оценить только по наблюдаемым багам, лагам и глюкам).

И потом, если он выложит на гитхаб под свободной лицензией, это будет не "украл", а "форкнул". Да, кто-нибудь может просто скопировать и запустить свой сервер, но кто-то может начать развивать и сделать игру ещё лучше - в этом вся суть опенсурса, ты можешь развивать чужой проект, когда даже автор забил на его развитие (или умер, или по любой другой причине больше не может работать над ним). Многие популярные в прошлом игры умерли навсегда лишь из-за того, что разработчик, владелец или издатель решили закрыть невыгодный проект, а исходные коды остались закрытыми. Многие бывшие игроки таких мёртвых проектов просят отдать им исходные коды, чтобы можно было продолжить то, что не смог изначальный разработчик. Разве было бы плохо, если бы проект продолжал жить и развиваться даже после смерти своих изначальных разработчиков?

>бояться будет только действительно тот, кто старался и делал


Также будет бояться тот, кто не старался и навалил кучу говнокода, за которую его могут высмеять. А также тот, кто натырил готовых решений из туториалов и склеил в клубок лапши, за что тоже будут высмеивать. Так что "я старался и поэтому никому не дам" - не единственный возможный сценарий.

ОП, я нисколько не преуменьшаю того, что ты уже сделал, но нахваливать тут пока реально не за что. Тебе ещё долго работать над игрой, чтобы довести её до презентабельного состояния... А то тебя сейчас перехвалят и потом будет очень больно сталкиваться с жестокой реальностью, в которой нужно не только сырой прототип склеить)
72 706936
>>06929
Вообще-то в /gd/ много игр "не из готовых ассетов на Юнити". Где-то тут есть даже очень похожая веб-игра, где анон достиг чуть больших успехов (что было дальше не знаю). Кроме того, нахваливать за клиентский/серверный код пока рано, игра лагучая и багучая, почти неиграбельная, а ОП тратит уйму времени на дебаггинг, следовательно код он писал не слишком внимательно (навалить кучу говнокода любой сможет, если вложит в это достаточно времени, в этом нет какого-то великого достижения; а качество его кода мы можем оценить только по наблюдаемым багам, лагам и глюкам).

И потом, если он выложит на гитхаб под свободной лицензией, это будет не "украл", а "форкнул". Да, кто-нибудь может просто скопировать и запустить свой сервер, но кто-то может начать развивать и сделать игру ещё лучше - в этом вся суть опенсурса, ты можешь развивать чужой проект, когда даже автор забил на его развитие (или умер, или по любой другой причине больше не может работать над ним). Многие популярные в прошлом игры умерли навсегда лишь из-за того, что разработчик, владелец или издатель решили закрыть невыгодный проект, а исходные коды остались закрытыми. Многие бывшие игроки таких мёртвых проектов просят отдать им исходные коды, чтобы можно было продолжить то, что не смог изначальный разработчик. Разве было бы плохо, если бы проект продолжал жить и развиваться даже после смерти своих изначальных разработчиков?

>бояться будет только действительно тот, кто старался и делал


Также будет бояться тот, кто не старался и навалил кучу говнокода, за которую его могут высмеять. А также тот, кто натырил готовых решений из туториалов и склеил в клубок лапши, за что тоже будут высмеивать. Так что "я старался и поэтому никому не дам" - не единственный возможный сценарий.

ОП, я нисколько не преуменьшаю того, что ты уже сделал, но нахваливать тут пока реально не за что. Тебе ещё долго работать над игрой, чтобы довести её до презентабельного состояния... А то тебя сейчас перехвалят и потом будет очень больно сталкиваться с жестокой реальностью, в которой нужно не только сырой прототип склеить)
изображение.png306 Кб, 329x401
73 706950
>>06932
По-моему это как-то связано с обновлением игры, когда клиент теряет связь с сервером. Сделай уже принудительное обновление страницы после потери связи с сервером. Или хотя бы уведомление "сервер всё".
74 706951
>>06936
Ты прав, листаю и действительно много хороших игр. Странно, что ты так строг к этой игре, всего ведь 6 дней делается. Насчет гитхаба, тут те кто уже хорошо игры делают им заходить туда вообще нет смысла. Плохие же разработчики форканут в лучшем случае, а в худшем будут наживаться на игре. Если бы разрабы открыли код старых игр было бы печально увидеть их новые версии с лутбоксами.
75 706957
>>06951

>всего ведь 6 дней делается


Ты что-то путаешь, шестой день был три недели назад:
>>01894 (OP)

>02/10/20 Птн 20:29:29


>>02670

>07/10/20 Срд 21:27:43


> День 6.



>>06951

>ты так строг к этой игре


Похвалами делу не поможешь. Лучше указать на ошибки, которые можно исправить, чем безосновательно хвалить. Можно указать на что-то, что понравилось лично тебе - это будет иметь смысл, в отличие от "ты делаешь игру = ты молодец".

>те кто уже хорошо игры делают им заходить туда вообще нет смысла


По-твоему в опенсурсе только плохие разработчики копаются?

>Если бы разрабы открыли код старых игр было бы печально увидеть их новые версии с лутбоксами


Существуют опенсурсные клоны старых игр. Существуют оригинальные исходники старых игр. Где же версии с лутбоксами?
https://github.com/id-Software/DOOM https://github.com/id-Software/Quake и другие игры от id Software
https://github.com/minetest/minetest - опенсурсный клон майнкрафта
Мне лень перечислять все опенсурсные игры, но что-то я не вижу среди них "жертв лутбоксов".
Да и правильно реализованные лутбоксы приятно видеть в игре, они не выкачивают из тебя деньги и только радуют)
76 706961
>>01894 (OP)
Сделай игру пободрее. Сейчас получается так:
- бежать до чужой базы или хотя бы первой вражеской базы - долго;
- ХП игрока слетает за 2-3 удара чужой башни/игрока;
- самоотхил очень долгий, фонтан не лечит, карманных хилок нет;
- деньги на шмотки копятся очень долго, даже в доте шмот раньше покупается, чем здесь;
- из-за лагов пвп/пве сильно затруднено, даже тупо по башне попасть трудно;
- для победы нужно вынести все башни, а это очень долго.
Моё предложение такое:
- или карту сжать, или увеличить скорость движения;
- ХП должно быть побольше и самоотхил повыше, лечилки дешёвые добавь;
- цены на шмот снизь, нужны несколько уровней шмота - от беспонтовой дешёвки до дорогой имбы;
- нужен какой-нибудь прицел (кроме курсора мыши), возможно автострельба как в доте;
- условие победы, да, я слышал, ты собираешься сменить на только одну линию, это норм.
Ещё можно TDM на время/число убийств и CTF на время/флаги замутить для разнообразия.
77 706965
>>06961

>лечилки дешёвые добавь


Или лучше точки на карте, где спавнятся одноразовые лечилки. Потому что даже если можно прокачать регенерацию или сбегать на базу, всё равно должен быть способ не выходить из боя лишний раз. Сейчас лучшая тактика выноса башен - встать рядом и кликать на неё, пока не умрёшь, затем снова добежать до башни и снова кликать, это уныло.

Алсо я так и не понял, можно ли уклониться от атаки? Игрок может промахнуться, а башни вроде не промахиваются совсем. В Доте 2, насколько я помню, снаряды башен летят медленно и от них можно буквально убежать, а у тебя по-моему башни бьют мгновенно и со 100% точностью.

Да, на счёт динамичности - в такую игру никто не будет играть с долгим развитием как в доте (там катка минимум полчаса, а то и целый час), должно быть максимум минут 10. Следовательно геймплей нельзя растягивать долгой ходьбой, долгим регеном, долгим фармом монет и т.д.

Я знаю, существуют ММОРПГ с точно таким же стилем графики, в которые задротят не меньше, чем в крупные ММО, но у тебя вроде как прицел на быстрые бои, а не длительное развитие?
78 706971
>>06950
Это в фазере, надо просто задать время жизни таким частицам
79 706983
Все, сервер кончился? Ну ладно.
80 706995
>>06983
Сейчас зашёл - работает. Скорее всего у него IP-адрес меняется (No-IP не сразу цепляет новый IP).

>>06971

>Это в фазере, надо просто задать время жизни таким частицам


Хочешь сказать, эти частицы у него остаются в памяти даже когда исчезают? У него явно какая-то утечка в клиенте.

У меня есть другая теория:
1. Т.к. башни стреляют струёй огня, а не снарядом, у каждой башни есть своя струя, по умолчанию невидимая.
2. Когда башня стреляет в игрока, она поворачивает свою струю в направлении игрока и временно делает её видимой.
3. Когда игра завершается, комната сбрасывается, но струи огня башен по ошибке становятся видимыми, не скрываются.
4. Если подойти к вражеской башне, она снова выстрелит - её струя развернётся и скроется как положено.
Т.е. проблема в шаге 3, на котором процесс сброса комнаты зачем-то делает видимыми эти струи огня.
Вангую, это вообще не частицы, а анимированные спрайты, там всего несколько кадров.
7.jpg983 Кб, 2115x3760
tema!!h/oCFxjpRA # OP 81 707010
>>06995
You are goddamn right.

жыра, канбан, эджайл пикрил

Апдейт с фиксом известных багов, улучшением баланса, логином/регистрацией тру-анонимусы по-прежнему смогут оставаться анонимусами, рейтингом сегодня до конца суток. Нравится пилить, но иногда такая лень наступает, что только обещание на дваче мотивирует, лол.
82 707027
>>07010

>7.jpg


Зачем на листочке? Поди потом сам же будешь гадать, что за слово ты написал)
Может от руки и быстрее, но мне больше нравится в Inkscape такие схемы набрасывать.
83 707035
>>07027
Ну хз, я тоже от руки набрасываю, намного быстрее, а свой почерк всегда поймешь
84 707036
>>06995

>Хочешь сказать, эти частицы у него остаются в памяти даже когда исчезают? У него явно какая-то утечка в клиенте


Клиент и написан на фазере, скорее всего он юзает группу для хранения всех эффектов или эффектов игрока, так вот там вручную надо очищать ее чтобы с экрана все лишнее убрать, вообще в js нет сборщика мусора и там надо ручками вычищать все говно, а учитывая как там массивы криво работает и т.п. То это становится болью
85 707064
>>07035

>свой почерк всегда поймешь


Я когда в школе учился, к последним классам вообще перестал понимать свои записи на уроках. Да даже записи своих идей по программированию с тех времён не могу расшифровать. Так что мне проще напечатать, чем возиться с ручкой и бумагой... На компе в любом случае удобнее, даже если схемы придётся мышкой строить. И показать другим людям проще, им-то придётся в твоём почерке разбираться, чтобы прочитать.

>>07036

>в js нет сборщика мусора и там надо ручками вычищать все говно


Правда? Я думал, в JS-то он обязан быть. Тогда понятно, откуда у него утечки/нарастающие со временем тормоза)

Блин, такие проекты вдохновляют запилить что-то похожее, но JS и сеть для меня дремучий лес...
86 707077
>>07010
почему клавиатура без казахской раскладки?
87 707083
>>06995
Я же говорил - проблема не в типах, а в мутабельности!
88 707086
>>07036

>js нет сборщика мусора


Вы не правы, даю вам первую ссылку в гугле https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management для ознакомления.
>>01894 (OP)
Небольшой "баг", в опере по нажатию на wasd я слышу звуки нажатия клавиш (фича браузера), в идеале нужно это как-то отключить, но как - ваша работа))0
89 707100
>>07083

>проблема не в типах, а в мутабельности!


Ты видел хотя бы одну сложную игру на функциональном ЯП, в котором все переменные получают значение всего один раз в своей жизни, при создании? Как, по-твоему, должна будет выглядеть игра, если для каждого действия игрока нужно создавать новый объект Player, потому что ни одно из его полей невозможно перезаписать? А в функциональном майнкрафте пришлось бы заново генерировать новый мир для изменения любого отдельного блока (и нет, одним чанком дело не обойдётся, ведь кроме чанка нужно пересоздать хранилище чанков; разве что остальные чанки можно перетащить в новое хранилище, но всё равно геморрой).

И как иммутабельность поможет ОПу, если у него в коде, условно, нужно заменить

>Tower.Flame.Visible = true


на

>Tower.Flame.Visible = false // или добавить эту строчку в метод Room.Reset(), в цикл обхода всех башен


и тогда пламя не будет оставаться на экране, а для переписывания на чисто функциональную парадигму уйдут недели?

Хотя это спор ни о чём, нужно смотреть конкретный код и тогда будет понятно, что там и почему.

>>07086

>в идеале нужно это как-то отключить


А в других HTML5-играх отключается? У меня вот проблема что иногда игра не перехватывает фокус клавиатуры и нажатие на backspace (набирая сообщение в чате) отправляет на предыдущую страницу (экран входа в игру)...
90 707132
>>07086

>Вы не правы, даю вам первую ссылку в гугле https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management для ознакомления.



Очень странный там сборщик и у каждого брузера свой, рассчитанный на работу с DOM скорее
91 707139
>>07100

>Ты видел хотя бы одну сложную игру на функциональном ЯП


Да.

>в котором все переменные получают значение всего один раз в своей жизни, при создании


Ты не очень понимаешь, о чем говоришь, забей.

>Как, по-твоему, должна будет выглядеть игра


Спроси у Джона Кармака: https://www.youtube.com/watch?v=1PhArSujR_A

>если для каждого действия игрока нужно создавать новый объект Player


Ты не очень понимаешь, о чем говоришь: изучи матчасть, пойми, как это реализовано и т.п.

>И как иммутабельность поможет ОПу


Я вот на это ссылаюсь:

>3. Когда игра завершается, комната сбрасывается


>или добавить эту строчку в метод Room.Reset(), в цикл обхода всех башен


Ты же понимаешь, что "комната сбрасывается, но не до конца" - это баг мутабельности? И что "обход всех башен и вызов ресет" - это артефакт мутабельности? При нормальном подходе ты просто выкидываешь старое состояние комнаты и все. Грубо говоря, вот есть у тебя переменная counter, тебе нужно его сбросить; ты пишешь: counter = 0, а не начинаешь как-то там менять биты в текущем значении, чтобы привести его в итоге к нулю, если фаза луны сегодня правильная. Вот и тут то же самое.

>>07100

>У меня вот проблема что иногда игра не перехватывает фокус клавиатуры


Два чаю, тоже бывает. Если еще пользуешься вимиумом или подобным расширением - не дай бог забудешь добавить сайт в исключения. Еще иногда почему-то в файрфоксе "западает" клавиша, типа нажимаешь w - и персонаж идет вверх, пока не перезагрузишь страницу. Еще иногда появляется какая-нибудь левая прокрутка, если позумишь страницу. Вообще гейминг в браузере - изначально ущербная идея, конечно. Когда думают жопой о технологиях, а не о юзере.
blya.jpg47 Кб, 512x402
tema!!h/oCFxjpRA # OP 92 707153
еще 2 часа
93 707154
>>07139

>При нормальном подходе ты просто выкидываешь старое состояние комнаты и все


По-моему тут как раз проблема в том, что он возвращает состояние по умолчанию (все спрайты видимы). То есть сброс происходит, но это сброс к состоянию по умолчанию (0, false, null), а не к состоянию "как задумано геймдизайнером" (hide = true).

>ты пишешь: counter = 0, а не начинаешь как-то там менять биты в текущем значении, чтобы привести его в итоге к нулю


Если у меня не переменная counter, а объект Room, то у него должен быть метод Create, в котором происходит инициализация. Инициализация будет включать создание вложенных объектов и вызов метода Reset, устанавливающего исходные значения полей. Если в будущем мне нужно вернуть Room в изначальное состояние, я могу просто вызвать Room.Reset. Room.Reset в свою очередь вызывает Tower.Reset всех вложенных Tower, которые были созданы вызовом Tower.Create в Room.Create. Как видишь, всё просто, ничего не нужно уничтожать и заново создавать, всё создаётся один раз и сколько угодно раз может быть возвращено в исходное состояние.

А чтобы можно было "Room = CleanRoom", нужно создать новый объект CleanRoom, а затем уничтожить Room и присвоить Room ссылку на CleanRoom, что эквивалентно созданию Room заново. Поскольку операции с Create/Destroy слишком дорогие, лучше сбросить состояние вызовом отдельного метода Reset, чем создавать объект заново.

Просто представь, что у тебя counter содержит не биты, а пачки пачек пачек пачек ... пачек битов, и ты не можешь просто так взять и присвоить миллион битов сразу, тебе нужно сначала собрать пачку битов, потом пачку пачек битов, потом пачку пачек пачек битов... и так далее, пока у тебя не получится новый counter, которым ты можешь заменить старый. Но это будет слишком долго по сравнению с тем, чтобы послать сигнал сброса вложенным объектам, не уничтожая и не создавая их заново.

Проблемы начнутся только если программист был пьян и создал новое поле, забыв присвоить ему значение в Reset, но уже где-то использует его. Чтобы такого не было, нужно каждому новому полю сразу присваивать начальное значение в Reset - но только если нам вообще нужно когда-либо возвращаться в это самое начальное значение (обычно смысла в полном сбросе нет).

>>07139

>Вообще гейминг в браузере - изначально ущербная идея, конечно. Когда думают жопой о технологиях, а не о юзере.


Ущербная идея - рендерить 3D-графоний процессором на интерпретируемом языке в и без того тормозном браузере. А 2D-игры в браузере могут быть неплохими и даже удобными - ты можешь играть на любом ПК, планшете и смартфоне, просто открыв браузер. Единственный фатальный недостаток - зависимость от сервера, но онлайн игры так и так от этого зависят... Юзерам ведь реально удобнее зайти через браузер, чем что-то качать и устанавливать (хотя обычный пользователь не догадывается, что браузер качает игру в кэш, потом кэш ломается, игра качается вновь и т.д.).
93 707154
>>07139

>При нормальном подходе ты просто выкидываешь старое состояние комнаты и все


По-моему тут как раз проблема в том, что он возвращает состояние по умолчанию (все спрайты видимы). То есть сброс происходит, но это сброс к состоянию по умолчанию (0, false, null), а не к состоянию "как задумано геймдизайнером" (hide = true).

>ты пишешь: counter = 0, а не начинаешь как-то там менять биты в текущем значении, чтобы привести его в итоге к нулю


Если у меня не переменная counter, а объект Room, то у него должен быть метод Create, в котором происходит инициализация. Инициализация будет включать создание вложенных объектов и вызов метода Reset, устанавливающего исходные значения полей. Если в будущем мне нужно вернуть Room в изначальное состояние, я могу просто вызвать Room.Reset. Room.Reset в свою очередь вызывает Tower.Reset всех вложенных Tower, которые были созданы вызовом Tower.Create в Room.Create. Как видишь, всё просто, ничего не нужно уничтожать и заново создавать, всё создаётся один раз и сколько угодно раз может быть возвращено в исходное состояние.

А чтобы можно было "Room = CleanRoom", нужно создать новый объект CleanRoom, а затем уничтожить Room и присвоить Room ссылку на CleanRoom, что эквивалентно созданию Room заново. Поскольку операции с Create/Destroy слишком дорогие, лучше сбросить состояние вызовом отдельного метода Reset, чем создавать объект заново.

Просто представь, что у тебя counter содержит не биты, а пачки пачек пачек пачек ... пачек битов, и ты не можешь просто так взять и присвоить миллион битов сразу, тебе нужно сначала собрать пачку битов, потом пачку пачек битов, потом пачку пачек пачек битов... и так далее, пока у тебя не получится новый counter, которым ты можешь заменить старый. Но это будет слишком долго по сравнению с тем, чтобы послать сигнал сброса вложенным объектам, не уничтожая и не создавая их заново.

Проблемы начнутся только если программист был пьян и создал новое поле, забыв присвоить ему значение в Reset, но уже где-то использует его. Чтобы такого не было, нужно каждому новому полю сразу присваивать начальное значение в Reset - но только если нам вообще нужно когда-либо возвращаться в это самое начальное значение (обычно смысла в полном сбросе нет).

>>07139

>Вообще гейминг в браузере - изначально ущербная идея, конечно. Когда думают жопой о технологиях, а не о юзере.


Ущербная идея - рендерить 3D-графоний процессором на интерпретируемом языке в и без того тормозном браузере. А 2D-игры в браузере могут быть неплохими и даже удобными - ты можешь играть на любом ПК, планшете и смартфоне, просто открыв браузер. Единственный фатальный недостаток - зависимость от сервера, но онлайн игры так и так от этого зависят... Юзерам ведь реально удобнее зайти через браузер, чем что-то качать и устанавливать (хотя обычный пользователь не догадывается, что браузер качает игру в кэш, потом кэш ломается, игра качается вновь и т.д.).
94 707161
>>07154

>По-моему тут как раз проблема в том, что он возвращает состояние по умолчанию (все спрайты видимы).


>1. Т.к. башни стреляют струёй огня, а не снарядом, у каждой башни есть своя струя, по умолчанию невидимая.



>Если у меня не переменная counter, а объект Room


Ты путаешь identity и value. Корректным было бы сравнение "если у меня не число типа Int, а объект типа Room".

>объект Room, то у него должен быть метод Create


У объекта Room метод create? И что же комната создает? Это уже и с точки зрения ООП никуда не годится.

>Если в будущем мне нужно вернуть Room в изначальное состояние, я могу просто вызвать Room.Reset


В котором тебе нужно не забыть вызвать reset для всех дочерних объектов. И для всех объектов, на которые у тебя могут быть ссылки. Точнее не для всех, а только для тех, которые надо сбросить. Еще могут быть кэши и пулы... И еще тебе нужно удостовериться, что никакие иные объекты не ссылаются на твой Room или его дочерние объекты, потому как ты их сбрасываешь, т.е. логически (с точки зрения игры) это уже другая комната. И еще тебе нужно не забыть внести соответствующие изменения по всю эту портянку при рефакторинге. Ну программисты же умные, не забудут, да?

>Как видишь, всё просто


)) эх, вот бы мне вернуться лет на 15 назад, тогда тоже все было просто

>А чтобы можно было "Room = CleanRoom", нужно создать новый объект CleanRoom


Зачем создавать новый объект, если данные иммутабельны?

>Поскольку операции с Create/Destroy слишком дорогие


Кто сказал?

>лучше сбросить состояние вызовом отдельного метода Reset, чем создавать объект заново


Чем лучше? Ты понимаешь, что сейчас всерьез пытаешься "оптимизировать" создание одной структуры раз в 15 минут (или сколько там матч идет), что как бы намекает на непонимание принципов и методов оптимизации?

>Но это будет слишком долго по сравнению с тем, чтобы послать сигнал сброса вложенным объектам, не уничтожая и не создавая их заново.


Во-первых, это будет присваивание одного указателя - и все. Во-вторых, см. предыдущий абзац. В-третьих, еще раз тебя прошу: прочитай литературу по теме, прежде чем строить домыслы и пытаться на их основе вести дискуссию. Это непродуктивная трата времени.

>Чтобы такого не было, нужно каждому новому полю сразу присваивать начальное значение в Reset


...вот еще немного подумай в этом направлении и как раз придешь к иммутабельному дизайну, лол.

>>07154

>Ущербная идея - рендерить 3D-графоний процессором


3д графоний в браузере рендерится гпу. И 2д, собственно, тоже.

>ты можешь играть на любом ПК, планшете и смартфоне, просто открыв браузер


Браузер, в котором игра рендерится через опенглное апи. Которое доступно и без браузера. На мой взгляд самый идеальный пример всего этого безумия - это веб-билд какой-нибудь стратегии про покрас на юнити, ну или аналогичного жанра игр, где все завязано на интерфейсе. Вот тогда получается просто идеально: у тебя браузер, в котором как бы хтмл5, и в нем один элемент, в котором рендерится игра, в которой свой уи-фреймворк.

>Юзерам ведь реально удобнее зайти через браузер, чем что-то качать и устанавливать


На смартфонах, где у юзеров есть выбор, никто не пользуется клиентами через браузер (потому что это убого), все устанавливают приложение. Это не про удобство, а про безысходность, потому что "так исторически сложилось".
94 707161
>>07154

>По-моему тут как раз проблема в том, что он возвращает состояние по умолчанию (все спрайты видимы).


>1. Т.к. башни стреляют струёй огня, а не снарядом, у каждой башни есть своя струя, по умолчанию невидимая.



>Если у меня не переменная counter, а объект Room


Ты путаешь identity и value. Корректным было бы сравнение "если у меня не число типа Int, а объект типа Room".

>объект Room, то у него должен быть метод Create


У объекта Room метод create? И что же комната создает? Это уже и с точки зрения ООП никуда не годится.

>Если в будущем мне нужно вернуть Room в изначальное состояние, я могу просто вызвать Room.Reset


В котором тебе нужно не забыть вызвать reset для всех дочерних объектов. И для всех объектов, на которые у тебя могут быть ссылки. Точнее не для всех, а только для тех, которые надо сбросить. Еще могут быть кэши и пулы... И еще тебе нужно удостовериться, что никакие иные объекты не ссылаются на твой Room или его дочерние объекты, потому как ты их сбрасываешь, т.е. логически (с точки зрения игры) это уже другая комната. И еще тебе нужно не забыть внести соответствующие изменения по всю эту портянку при рефакторинге. Ну программисты же умные, не забудут, да?

>Как видишь, всё просто


)) эх, вот бы мне вернуться лет на 15 назад, тогда тоже все было просто

>А чтобы можно было "Room = CleanRoom", нужно создать новый объект CleanRoom


Зачем создавать новый объект, если данные иммутабельны?

>Поскольку операции с Create/Destroy слишком дорогие


Кто сказал?

>лучше сбросить состояние вызовом отдельного метода Reset, чем создавать объект заново


Чем лучше? Ты понимаешь, что сейчас всерьез пытаешься "оптимизировать" создание одной структуры раз в 15 минут (или сколько там матч идет), что как бы намекает на непонимание принципов и методов оптимизации?

>Но это будет слишком долго по сравнению с тем, чтобы послать сигнал сброса вложенным объектам, не уничтожая и не создавая их заново.


Во-первых, это будет присваивание одного указателя - и все. Во-вторых, см. предыдущий абзац. В-третьих, еще раз тебя прошу: прочитай литературу по теме, прежде чем строить домыслы и пытаться на их основе вести дискуссию. Это непродуктивная трата времени.

>Чтобы такого не было, нужно каждому новому полю сразу присваивать начальное значение в Reset


...вот еще немного подумай в этом направлении и как раз придешь к иммутабельному дизайну, лол.

>>07154

>Ущербная идея - рендерить 3D-графоний процессором


3д графоний в браузере рендерится гпу. И 2д, собственно, тоже.

>ты можешь играть на любом ПК, планшете и смартфоне, просто открыв браузер


Браузер, в котором игра рендерится через опенглное апи. Которое доступно и без браузера. На мой взгляд самый идеальный пример всего этого безумия - это веб-билд какой-нибудь стратегии про покрас на юнити, ну или аналогичного жанра игр, где все завязано на интерфейсе. Вот тогда получается просто идеально: у тебя браузер, в котором как бы хтмл5, и в нем один элемент, в котором рендерится игра, в которой свой уи-фреймворк.

>Юзерам ведь реально удобнее зайти через браузер, чем что-то качать и устанавливать


На смартфонах, где у юзеров есть выбор, никто не пользуется клиентами через браузер (потому что это убого), все устанавливают приложение. Это не про удобство, а про безысходность, потому что "так исторически сложилось".
изображение.png201 Кб, 360x332
95 707164
>>07153
Ты весь день один апдейт пилишь или некогда игрой заниматься? Если крупный апдейт пилишь - тестируешь на своей локальной версии, отдельной от публичной?

Вчитался в подсказки в игре. "Магическое исцеление" требует 200 маны и даёт 300 маны, в результате прирост 100, но использовать можно только если есть больше 200. Это нормально? Я не спец в РПГ и фентези, но обычно какое-то действие не может одновременно требовать ману и давать ману - оно либо тратит ману на какой-то процесс, либо синтезирует ману из какого-то материала/собирает её из окружающей среды. Мана же "магическая энергия", если бы можно было тратить ману на получение большего количества маны - получился бы вечный двигатель, как заряжать батарейку от самой этой батарейки.

...хотя, по лору маг может тратить ману на ритмичные сокращения ануса, в результате чего резко увеличивается пассивный сбор маны из окружающей среды и поэтому маны получается больше, чем было затрачено, да и с геймплейной точки зрения элемент интересный (нельзя получить ману, если только что заюзал всё что было)... Просто показалось странным, когда заметил.
96 707167
>>07161
Во-первых, ты слишком придираешься к терминологии.
Во-вторых, мы из разных миров; ты профессионал, а я любитель, и отрицание(любовь(я(), функциональный(язык()))).
Я собирался возразить и привести аргументы, но зачем, если каждый останется при своём и будет по-своему прав.
И вообще это тред проекта ОПа, а мы тут флудим о программировании...
tema!!h/oCFxjpRA # OP 97 707169
>>07164
не целый день. да, тестирую локально

чекайте

https://tema.ddns.net:80/

вопросы на ответы завтра, анчоусы...
tema!!h/oCFxjpRA # OP 98 707174
наверное, сделаю фаст тп на базу и к любой живой союзной башне с небольшим кулдауном, ведь бегать туда сюда тупо, сомнений нет

прожал - стоишь n секунд без движения и получения урона - тпшишься кэп
tema!!h/oCFxjpRA # OP 99 707175
а лучше йоба-реген, когда постоял на месте, или йоба-хилки
operaMLlpgFAJcN.png241 Кб, 611x672
100 707177
101 707179
Как создавать румы? Можно было бы в /б вечерком собираться
102 707182
>>07179
Двачую, но видимо пока нельзя. Сам был бы не против. Можно просто конфу создать, если румы ещё не готовы
изображение.png297 Кб, 759x223
103 707192
>>07169
Куда третье очко статистики дел? Там вроде уничтоженные башни считались.
Алсо кроме убийств и смертей обычно считают "помощь" - если "убйством" считается последний нанесённый удар, то "помощь" это нанесение урона игроку, который вскоре после этого умрёт от чужого удара. Если уж считать башни, то для них тоже нужен отдельный параметр "помощи в сносе башни". Не то, чтобы это было очень нужно, но многие геймеры, я думаю, любят дрочить на циферки и писькомерство... Кому-то может не нравиться чистое пвп, они могут пытаться побить рекорды по сносу башен, например.
104 707193
>>07174

>фаст тп на базу и к любой живой союзной башне с небольшим кулдауном


>прожал - стоишь n секунд без движения и получения урона - тпшишься


В доте для этого вроде как специальные свитки телепортации юзались, покупаются дёшево на базе.

>>07175

>а лучше йоба-реген, когда постоял на месте, или йоба-хилки


Можно просто прерывать реген после получения дамага. Большинство игр с регеном так и делают: пока получаешь дамаг, регениться не можешь, если скроешься от врагов за преградой или сбежишь - сможешь относительно быстро излечиться.
Однако возвращение на базу всё равно нужно, там же магазин.

>>07179 >>07182
Лол, чего вы хотите от прототипа, который всего дня два онлайн? Да и пик числа игроков онлайн пока не превысил вместимости одной комнаты, насколько я понимаю. Но соглашусь, ручное создание комнат с уникальным ID - хорошая фича, во разных подобных играх видел.

А конфа в дискорде есть, немного выше ОП постил >>06863
105 707195
>>07164

>Вчитался в подсказки в игре. "Магическое исцеление" требует 200 маны и даёт 300 маны, в результате прирост 100, но использовать можно только если есть больше 200. Это нормально?


Я не оп, но оно дает ману и ближайшим союзникам, то есть 1500 маны может дать. Но только раз в 15 секунд. Вполне нормально. Часто еще делают спеллы по типу "отдай 200 маны сейчас, получи 400 маны в течение 30 секунд". Это распространенная механика в том числе и в настолках.
106 707196
>>07167
Так мой основной поинт в том, что ты сперва попробуй и разберись, а уже только после этого делай выводы о любви\нелюбви. Иначе получается (как это часто и бывает), что "не читал, но осуждаю". А по поводу частностей особо смысла дебатировать нет, угу, тем более в итт треде.
107 707205
>>07197 (Del)
Добавлю, что в случае мтг (даже без учета трешолд-эффекта) это далеко не просто +1 мана; смысл тут в том, что это инстант, поэтому ты можешь иметь 2 маны в манапуле, и твой соперник будет рассчитывать свой ход исходя из этого, а ты ВНЕЗАПНО можешь заиметь 3 маны вместо этого, и кастануть соответствующий спелл, который ты по мнению соперника скастовать не мог. То есть "истинная" механика тут немного другая, но основа та же, да.</offtop>
108 707218
>>07169

>чекайте


Ты хотя бы объявляй время сходки, чтобы тест был полноценным, типа

>йо, сегодня в XX:X0 мск проводим тест %фича_нейм%, нужно NN анчоусов, иначе не получится


Потому что просто заходить на пустой сервер, полчаса бегать в одиночестве и выходить, не дождавшись соперников - это бред, да и один на один тоже не очень. Если бы у тебя была ММОРПГ, где можно было бы занять себя ПвЕ, фармом, крафтом, квестами и т.д., если бы у тебя была песочница, где можно было бы строить всякую хрень в одиночестве, если бы у тебя были боты вместо недостающих живых игроков - тогда был бы смысл заходить на пустой/полупустой сервер. У тебя соревновательная игра 5 на 5 игроков, из ПвЕ контента только снос башен (унылый донельзя - стоишь на месте и кликаешь, ладно ещё абилки можно юзать с умом, чтобы быстрее башню разобрать, но этого мало) - мало того, что игроку нечем заняться в одиночестве, так и тестеру сложно протестировать геймплей игры, который будет в полноценных боях 5 на 5 (или хотя бы 3 на 3).

Вот, допустим, ты сейчас по просьбам ребаланснул атаку и цены, а как это повлияло на игру 5 на 5? Неизвестно. Если бы твоя игра была бы уже популярна, игроки бы сами находили друг друга и писали отзывы о текущем геймплее, а пока популярности нет - нужно объявлять время тестов. Ну и дни, когда ориентировочно собираешься проводить очередной тест. В остальном, даже держать сервер 24/7 смысла пока мало (уверен, 95+% времени на него никто не заходит, ибо не с кем).

Кстати, ботов делать будешь? Во многих io-играх, по-моему, есть боты, как минимум в портах на мобилки (некоторые даже маскируются под онлайн, хотя на деле играешь всегда только с ботами). Грустно будет игроку, который оказался 101 и не попал ни в одну из 10 уже заполненных комнат, а хотя бы 102 всё ещё не заходит.
tema!!h/oCFxjpRA # OP 109 707254
https://t.me/fantasio_space

сбор ежедневно в 20 по мск
tema!!h/oCFxjpRA # OP 110 707258
Запилил тред в /b. Ближайшие пару часов будет народ. Попробую каждый вечер создавать. Интересно, модеры задушат? С другой стороны я пропагандирую другие разделы помимо раковника с двач-я-посрал и танцулько-тредами.

Отреген после 5 секунд стояния добавил.
Screenshot9.png1,5 Мб, 1365x665
tema!!h/oCFxjpRA # OP 111 707259
сорян, что засираю доску
больше не буду
112 707260
>>07259
Лаги возрастают с течением времени и до перезагрузки страницы. В какой-то момент от нажатия на клавишу навыка (1-4) до применения навыка проходит больше секунды. Сообщения в чат поступают через 2 секунды. В общем, с таким лагодромом играть нереально, при том что компьютер не перегружен (хотя может браузер только одно ядро нагружает?).
113 707262
>>07260
та же хуйня
114 707265
>>07262
У тебя Firefox? У меня Firefox (Nightly 84). ОП говорит, что на хроме лагов нет или их меньше, но у меня нет хрома.

Если это >>07132

>Очень странный там сборщик и у каждого брузера свой


правда, то, возможно, проблема действительно со сборщиком мусора Firefox. Но мусор за собой всё-таки нужно убирать)
115 707273
Только что обнаружил и убил процесс firefox, загруженный на 30% ЦП и 1 ГБ RAM, по всей видимости он завис и не мог завершиться самостоятельно. Могла ли это быть эта игра? У меня на каждую вкладку создаётся отдельный процесс (мне так удобнее), а когда сегодня вечером пытался поиграть со всеми на сервере - вкладка с игрой сильно тормозила, аж интерфейсные кнопки не сразу отвечали, не факт, что она закрылась корректно. Хотя ничего не могу гарантировать, я потом ещё кучу вкладок открывал и в фоне у меня пара десятков вкладок в т.ч. несколько с ютубом (заметил только после запуска другой игры - процессор загрузился на 100% и я полез искать, кто создаёт такую нагрузку).

В любом случае, рекомендую ОПу сфокусироваться на проблемах с лагами/утечкой ресурсов. Наверняка где-то забываешь корректно освободить какую-нибудь картинку, а в результате клиент перегружается этими картинками)

Лайфхак: лучше сначала нарисовать архитектуру проекта схематически, прежде чем переходить к кодингу/рефакторингу. Даже если не хочешь выкладывать код, такую схему проекта продемонстрировать не страшно) Нубам урок, а опытные смогут что-нибудь подсказать по этой схеме.
116 707295
>>07265
А почему ты названия и описания предметов хранишь на клиенте, а не подгружаешь их с сервера, как впрочем и карту?
117 707301
>>07295
Я не ОП.
А зачем карту с сервера подгружать? Имхо, подгружать нужно только то, что динамически меняется. Если произойдёт существенное обновление контента игры, игрок должен будет нажать F5 (ctrl+F5) и таким образом скачать клиент заново.
118 707302
>>07301
Можно было бы рендерить случайные карты на сервере и клиент бы подгружал просто, это же обычный массив с кодом тайла, да и так надежнее, но я так понимаю на сервере коллизии не проверяются? Я не стал долго рыться в коде ОПа если что, вот только не пойму, там сжато все или ОП пишет в функциональном стиле?
119 707303
Еще вопрос на сколько выгоднее юзать ArrayBuffer от сырого json
120 707307
>>07302

>Можно было бы рендерить случайные карты на сервере и клиент бы подгружал


Я так понимаю, цель ОПа - сделать статичную карту а-ля Дота2, только в формате io-игры. Плюс такой карты - игрок может задрачивать навыки, тогда как на рандомной карте рандом будет влиять на исход каждого боя. Кроме того разработка хорошего генератора карт - отдельная тема, ему до неё ещё далеко)

>только не пойму, там сжато все или ОП пишет в функциональном стиле?


В чате он говорил что пропускает через какой-то обфускатор, т.е. то что ты видишь - не исходный код. Да и как он, по-твоему, может писать код вида "function n(t,e,i,n,r,s,o,a)"? Это же явно обфусцированный код.

А мне вот непонятно, зачем ему 13 отдельных js-файлов, каждый из которых подгружает одну png-картинку (см. пикрилы)... Он говорил, что это результат работы обфускатора, но как по мне, так нафиг этот обфускатор нужен, если он зафлуживает проект лишними мелкими файлами? Они занимают отдельное время на загрузку и интерпретацию, и место в кэше для хранения. Может выглядит как мелочь, но суммарно выходит много (будет заметно сильнее, если проект начнёт развиваться и пополняться контентом). Почему нельзя загружать картинки из одного скрипта?
tema!!h/oCFxjpRA # OP 121 707315
>>07077
Наизусть выучил.

>>07086

>в опере


Все в 2008-й, включаем автономный режим. Ну ты сам все понимаешь по своему сарказму

>>07302
Карта всегда одинаковая, рандома в этом плане не будет. Да, коллизии сейчас не проверяются на сервере, любой какер, угоревший по сетевому коду, сможет ходить сквозь лес, но только тссссс! В будущем надо будет при помощи того же фазера (@geckos.io/phaser-on-nodejs) создавать экземпляр игры на сервере и проверять их.

Предметы хранятся в items.json, который общий для сервера и клиента. Зачем что-то подгружать, если он 2 кб и статичен?

Все сжато webpack'ом.

>>07303
Все в ассемблер!

>>07192
Сейчас озадачился мотивационной частью игры.
По завершении катки будет появляться окно со статистикой всех игроков:
- убийства + ассисты
- общий нанесенный урон игрокам, башням и трону
- сломанные башни + ассисты
- командная работа (сколько отхилил союзникам, сколько баффов наложил)

За твое место в каждой из таблиц будут даваться очки (например, #1 - 10, #2 - 6, #3 - 3, далее 2, 1). Очки игроков команды-победителя будут умножены 2, например. За трипл-киллы, доминейшны и прочие эпичные мувы будут даваться какие-то медальки, на которые все женщины будут смотреть и течь.
Будет месячныей рейтинг (+недельный?, дневной?). Топовые игруны клешнями будут получать соответствующие короны возле ника.
При достижении какого-то количества очков можно будет выбрать скин покрасивше. Я бы рад добавить возможность ставить свои кастомные картинки, но как тогда понять, кто из чьей команды, какого класса?

>>07179
В главном меню будет список комнат с количеством игроков. Сможешь присоединиться к одной из или создать свою. И даже скопировать код комнаты чтобы кинуть корешу.

Лаги поправлю, ей-богу, руки не доходили еще.

itch.io даже траффик дает, на первой странице по некоторым тегам, где-то даже в топ 5, есть переходы с главной (?????). 50 просмотров, 21 запуск за 3 дня. Запилил превью покрасивше.

Также надо будет отслеживание траффика добавить, откуда люди приходят, просто записывать в базу их referrer.

Автобаланс сделаю. Когда разница в кол-ве игроков по командам критичная, выбираем в преобладающей команде игрока с меньшим кол-м киллов, пишем ему мол "через 10 секунд будешь переброшен", потом "через 5", потом перебрасываем.

Later.
tema!!h/oCFxjpRA # OP 121 707315
>>07077
Наизусть выучил.

>>07086

>в опере


Все в 2008-й, включаем автономный режим. Ну ты сам все понимаешь по своему сарказму

>>07302
Карта всегда одинаковая, рандома в этом плане не будет. Да, коллизии сейчас не проверяются на сервере, любой какер, угоревший по сетевому коду, сможет ходить сквозь лес, но только тссссс! В будущем надо будет при помощи того же фазера (@geckos.io/phaser-on-nodejs) создавать экземпляр игры на сервере и проверять их.

Предметы хранятся в items.json, который общий для сервера и клиента. Зачем что-то подгружать, если он 2 кб и статичен?

Все сжато webpack'ом.

>>07303
Все в ассемблер!

>>07192
Сейчас озадачился мотивационной частью игры.
По завершении катки будет появляться окно со статистикой всех игроков:
- убийства + ассисты
- общий нанесенный урон игрокам, башням и трону
- сломанные башни + ассисты
- командная работа (сколько отхилил союзникам, сколько баффов наложил)

За твое место в каждой из таблиц будут даваться очки (например, #1 - 10, #2 - 6, #3 - 3, далее 2, 1). Очки игроков команды-победителя будут умножены 2, например. За трипл-киллы, доминейшны и прочие эпичные мувы будут даваться какие-то медальки, на которые все женщины будут смотреть и течь.
Будет месячныей рейтинг (+недельный?, дневной?). Топовые игруны клешнями будут получать соответствующие короны возле ника.
При достижении какого-то количества очков можно будет выбрать скин покрасивше. Я бы рад добавить возможность ставить свои кастомные картинки, но как тогда понять, кто из чьей команды, какого класса?

>>07179
В главном меню будет список комнат с количеством игроков. Сможешь присоединиться к одной из или создать свою. И даже скопировать код комнаты чтобы кинуть корешу.

Лаги поправлю, ей-богу, руки не доходили еще.

itch.io даже траффик дает, на первой странице по некоторым тегам, где-то даже в топ 5, есть переходы с главной (?????). 50 просмотров, 21 запуск за 3 дня. Запилил превью покрасивше.

Также надо будет отслеживание траффика добавить, откуда люди приходят, просто записывать в базу их referrer.

Автобаланс сделаю. Когда разница в кол-ве игроков по командам критичная, выбираем в преобладающей команде игрока с меньшим кол-м киллов, пишем ему мол "через 10 секунд будешь переброшен", потом "через 5", потом перебрасываем.

Later.
122 707326
>>07315

>>в опере


>Все в 2008-й, включаем автономный режим


Настоящая Опера давным-давно сдохла, остался только прикольный скин для хрома с пачкой ненужных фич из коробки, который по недоразумению всё ещё называют оперой. Однако тебе стоит позаботиться обо всех возможных браузерах, или по крайней мере ставить заглушку "играйте на современном браузере", чтобы пользователи не жаловались на баги. Но ты пока для хрома и фаерфокса оптимизируй всё, чтоб не начинало дико лагать, когда в комнате больше 2 человек.

>создавать экземпляр игры на сервере


Звучит как костыльный велосипед с палками в колёсах.

>Все сжато webpack'ом.


И картинки тоже, судя по коду? А нахрена ты png сжимаешь, шакал? Сжимать png дополнительно - только увеличивать время загрузки. Лучше будет оптимизировать его объём каким-нибудь графическим редактором (некоторые умеют удалять из png всё лишнее; ещё можно убрать лишние оттенки и сохранить в 256-цветовой палитре, если не нужен альфа-канал).

>Сейчас озадачился мотивационной частью игры.


Чего там озадачиваться? Уровень игрока + монетки + премиумные баксы + персонажи и скины к ним + шмот (например, начальный шмот для входа в бой, или усилялки, или навыки) + лутбоксы со всем перечисленным. Таблицы рекордов и всё такое это хорошо, конечно, но 95% игроков будут ниже тысячи, а хвастаться перед друзьями "я сегодня с 15230 места перешёл на 14543" как-то беспонтово. При этом топ-10/топ-100 всегда удерживают самые хардкорные задроты и донатеры, если читеров нет... Таблицы - зло, короче. Лутбоксы - ангелочки в сравнении с таблицами. Таблицы могли быть приятным бонусом в 90-х, когда ты мог соревноваться только с друзьями, но с приходом интернета получение 15634-го места совсем не мотивирует (особенно когда на первом месте стоит X@k3P со счётом 999.999, а следом за ним едет паровозик из донатеров-"акул", и ещё пара тысяч задротов). А вот лутбоксы обязательно, лутбоксы это хорошо, люблю пускать лутбоксы по вене, открываешь лутбокс и кайфуешь, лутбоксы лучше секса, обязательно реализуй лутбоксы. Шучу. Нет, не шучу. Одной рукой пишу пост, другой открываю лутбокс.

>Я бы рад добавить возможность ставить свои кастомные картинки


Ты быстро перестанешь радоваться, когда твой сервер завалят дикпиками, говном, ниграми и ЦП. Не забывай, где ты пиаришься)

>как тогда понять, кто из чьей команды, какого класса?


Команда - цветной контур. Класс - пиктограмма. Но чтобы всё уместить, придётся поработать над дизайном. Алсо хорошо бы зафиксировать масштаб, но разрешить сдвигать камеру вбок относительно персонажа, в доте так можно (но там ещё ограниченное поле видимости врага, можно видеть только то, что рядом с твоими напарниками/глазами на палке). А то уже несколько раз попадал в ситуацию, что меня видят, а я в это время приблизил камеру и разглядываю траву... А нуб даже не успеет узнать, что камеру можно отдалять, чтобы видеть больше врагов. Ну и миникарта пригодится (значки - пиктограммы классов, команда - цвет пиктограммы; пиктограмма должна быть однотонной, разумеется, если хочешь - могу примеры предложить).

>В главном меню будет список комнат с количеством игроков


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

>itch.io


Ссылку-то дай, нам самим искать?

>Лаги поправлю, ей-богу, руки не доходили еще.


>Также надо будет отслеживание траффика добавить


Пока лаги не поправишь, я тебе и без отслеживания могу сказать, что трафик сквозь игру проходит all the way through.
Шучу, исправление лагов не добавит контент для достаточного удержания игроков))

>выбираем в преобладающей команде игрока с меньшим кол-м киллов


ТЕБЯ ЗАБРОСИЛО В КОМАНДУ НАГИБАТОРОВ
@
ВРАЖЕСКАЯ КОМАНДА ОБОСРАЛАСЬ И ЛИВАЕТ
@

>через 10 секунд будешь переброшен


@
ТЫ ПЕРЕБРОШЕН РЕАКТИВНОЙ СТРУЁЙ


С таким "автобалансом" фармить очки на те же скины будет слишком трудно, ящитаю. Даже в крупных сессионных играх а-ля овердроч не перекидывают во вражескую команду, а подбрасывают новых игроков или оставляют как есть (в соревновательных матчах). Ты не представляешь, насколько это больно, оказаться в команде, против которой ты только что воевал и почти победил.
122 707326
>>07315

>>в опере


>Все в 2008-й, включаем автономный режим


Настоящая Опера давным-давно сдохла, остался только прикольный скин для хрома с пачкой ненужных фич из коробки, который по недоразумению всё ещё называют оперой. Однако тебе стоит позаботиться обо всех возможных браузерах, или по крайней мере ставить заглушку "играйте на современном браузере", чтобы пользователи не жаловались на баги. Но ты пока для хрома и фаерфокса оптимизируй всё, чтоб не начинало дико лагать, когда в комнате больше 2 человек.

>создавать экземпляр игры на сервере


Звучит как костыльный велосипед с палками в колёсах.

>Все сжато webpack'ом.


И картинки тоже, судя по коду? А нахрена ты png сжимаешь, шакал? Сжимать png дополнительно - только увеличивать время загрузки. Лучше будет оптимизировать его объём каким-нибудь графическим редактором (некоторые умеют удалять из png всё лишнее; ещё можно убрать лишние оттенки и сохранить в 256-цветовой палитре, если не нужен альфа-канал).

>Сейчас озадачился мотивационной частью игры.


Чего там озадачиваться? Уровень игрока + монетки + премиумные баксы + персонажи и скины к ним + шмот (например, начальный шмот для входа в бой, или усилялки, или навыки) + лутбоксы со всем перечисленным. Таблицы рекордов и всё такое это хорошо, конечно, но 95% игроков будут ниже тысячи, а хвастаться перед друзьями "я сегодня с 15230 места перешёл на 14543" как-то беспонтово. При этом топ-10/топ-100 всегда удерживают самые хардкорные задроты и донатеры, если читеров нет... Таблицы - зло, короче. Лутбоксы - ангелочки в сравнении с таблицами. Таблицы могли быть приятным бонусом в 90-х, когда ты мог соревноваться только с друзьями, но с приходом интернета получение 15634-го места совсем не мотивирует (особенно когда на первом месте стоит X@k3P со счётом 999.999, а следом за ним едет паровозик из донатеров-"акул", и ещё пара тысяч задротов). А вот лутбоксы обязательно, лутбоксы это хорошо, люблю пускать лутбоксы по вене, открываешь лутбокс и кайфуешь, лутбоксы лучше секса, обязательно реализуй лутбоксы. Шучу. Нет, не шучу. Одной рукой пишу пост, другой открываю лутбокс.

>Я бы рад добавить возможность ставить свои кастомные картинки


Ты быстро перестанешь радоваться, когда твой сервер завалят дикпиками, говном, ниграми и ЦП. Не забывай, где ты пиаришься)

>как тогда понять, кто из чьей команды, какого класса?


Команда - цветной контур. Класс - пиктограмма. Но чтобы всё уместить, придётся поработать над дизайном. Алсо хорошо бы зафиксировать масштаб, но разрешить сдвигать камеру вбок относительно персонажа, в доте так можно (но там ещё ограниченное поле видимости врага, можно видеть только то, что рядом с твоими напарниками/глазами на палке). А то уже несколько раз попадал в ситуацию, что меня видят, а я в это время приблизил камеру и разглядываю траву... А нуб даже не успеет узнать, что камеру можно отдалять, чтобы видеть больше врагов. Ну и миникарта пригодится (значки - пиктограммы классов, команда - цвет пиктограммы; пиктограмма должна быть однотонной, разумеется, если хочешь - могу примеры предложить).

>В главном меню будет список комнат с количеством игроков


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

>itch.io


Ссылку-то дай, нам самим искать?

>Лаги поправлю, ей-богу, руки не доходили еще.


>Также надо будет отслеживание траффика добавить


Пока лаги не поправишь, я тебе и без отслеживания могу сказать, что трафик сквозь игру проходит all the way through.
Шучу, исправление лагов не добавит контент для достаточного удержания игроков))

>выбираем в преобладающей команде игрока с меньшим кол-м киллов


ТЕБЯ ЗАБРОСИЛО В КОМАНДУ НАГИБАТОРОВ
@
ВРАЖЕСКАЯ КОМАНДА ОБОСРАЛАСЬ И ЛИВАЕТ
@

>через 10 секунд будешь переброшен


@
ТЫ ПЕРЕБРОШЕН РЕАКТИВНОЙ СТРУЁЙ


С таким "автобалансом" фармить очки на те же скины будет слишком трудно, ящитаю. Даже в крупных сессионных играх а-ля овердроч не перекидывают во вражескую команду, а подбрасывают новых игроков или оставляют как есть (в соревновательных матчах). Ты не представляешь, насколько это больно, оказаться в команде, против которой ты только что воевал и почти победил.
unnamed.jpg42 Кб, 512x512
123 707417

>Только что обнаружил и убил процесс firefox, загруженный на 30% ЦП и 1 ГБ RAM



>>Стек: js, phaser, colyseus


>А почему рот в говне?

124 707430
>>07417
Справедливости ради, потом я смог найти в диспетчере задач процесс вкладки с игрой (по pid) и он потреблял, кажется, около 7% ЦП и 150 МБ RAM, но это после захода в пустую комнату, где ты один, в то время как серьёзные лаги возникают через какое-то время после игры с несколькими людьми. А вкладка, которая загружала на 30% и требовала гигабайт памяти - возможно, была связана с ютубом, т.к. после её убийства у меня все вкладки с ютубом покорёжило.

Да и глупо пенять на стек технологий, если говнокодер наговнокодит на любом стеке, а профессионал сможет выжать максимум возможностей из любого говна, на котором придётся работать.

Нужно будет проверить нагрузку вкладки с игрой через диспетчер задач и about:performance во время крупного боя... или создать клонов отдельным окном с игрой... Но с сервером какие-то проблемы сейчас.
125 707502
если нужен срочно оптимизон, а желания пердолить кроскомпиляцию сей нет, то рикамендую:

https://www.assemblyscript.org/introduction.html
126 707557
>>07502

>нужен срочно оптимизон


>As of today, the compiler still has its limitations and we are patiently waiting for and prototyping future WebAssembly features


Пытаешься убрать из своей игры лично тобой сделанные костыли
@
Добавляешь в игру чужие костыли, на которые ты повлиять не можешь

Компилируемый код, конечно, быстрее интерпретируемого, но это не решает проблемы, а только маскирует их. Ну вот у него допустим полоски ХП долго рисуются. Сейчас он это заметил с 3+ игроками на сервере. Если он сейчас скомпилирует код, возможно, код станет чуть шустрее, но проблема не исчезнет, только будет проявляться с 6+ игроками на сервере. При этом он потратит время на переделывание кода под требования компилятора и отладку возможных проблем, вместо того, чтобы просто поменять способ отрисовки полосок здоровья (например, сделать сегменты вместо непрерывных полосок).

tl;dr: это не оптимизация, это костылизация.

Алсо по моим наблюдениям, WebAssembly последних версий Unity-плеера не может работать на последних версиях Firefox: происходит какая-то безудержная утечка памяти (десятки гигабайт) и игра крашится, не успев загрузиться, так что я сильно сомневаюсь, что перекатиться с JS на WA очень просто - там слишком много тонкостей, о которых ОП точно не знает.
127 707611
>>07557
Я точно знаю что WA еще сликом сырой чтобы на нем игры пилить, даже простые примеры вылетают с ошибками в моем хроме и по наблюдениям жс работает быстрее чем WA на 30%
128 707801
>>01894 (OP)
А здоровый онлайн где возьмешь?
129 707976
2021 год
@
СНГ челики продолжают делать свою доту

Чел, объясни, почему СНГ человеку так важно сделать свою доту?
https://xgm.guru/p/wc3/17222
https://xgm.guru/forum/showthread.php?t=26688
https://xgm.guru/p/tcx
https://xgm.guru/forum/showthread.php?t=44443
https://xgm.guru/p/diablo-aos
https://xgm.guru/p/tcx/tcx-dota2
https://vk.com/rusdota

И это только то, что я смог нагуглить на старом ресурсе по варкрафту. А сколько было проектов забыто, просто не счесть.


Алсо, ты же понимаешь, что ЛоЛ мобайл выходит уже?
130 707977
>>07976
-Эй, Джон смотри, ты когда-нибудь видел такой огромный древний храм?
-Нет. Пошли, посмотрим, какие тайны он в себе хранит.
-Я не думаю что это хорошая идея.
-Не трусь, мы посмотрим и уйдем, все равно мы уже натаскали достаточно дров для лагеря.
-Ты как хочешь, а я возвращаюсь в лагерь.
-Ладно, иди, я тебя догоню.
Чем ближе Джон подходил к храму, тем больше он жалел о том, что не послушал своего друга. Оказавшись около его входа, он без лишних мыслей вошел в храм…
-Бен, беги!
-Что ты натворил?!
-Не когда рассказывать уносим ноги скорее!
1.mp411,2 Мб, mp4,
1360x764, 0:15
tema!!h/oCFxjpRA # OP 131 708026
Запилено:
- Создание комнат, присоединение к существующим, лимит в 10 игроков
- В одну комнату нельзя с одним и тем же IP
- Подсвечивается ник в скорборде
- Статистика битвы по завершении. За каждый тип активности даются алмазики. Не по занятому месту, как изначально планировал, а по показателю активности, умноженному на соотв. коэффицент. Из алмазиков формируется месячный рейтинг ниже
- 1 место - драконовая корона, 2 - аметистовая, 3 - алмазная, 4-10 - золотые, 11-20 - серебряные, 21-30 - бронзовые
- Короны показываются на главной странице, в чате, в логе убийств, в статистике битвы

БД - монга.
132 708041
Дико извиняюсь ОП, но почему мне кажется что ты делаешь не нужную хуйню? И главный вопрос для кого это?
133 708053
>>08052 (Del)
Нет, но тут насколько я вижу тут чужая графика и самой игры как бы и нету.
134 708070
>>08026

>В одну комнату нельзя с одним и тем же IP


Слыхал про NAT?
135 708078
>>08026

>- В одну комнату нельзя с одним и тем же IP


Ожидаем 1 vs 1 дуэли сборных мтс и мегафона
tema!!h/oCFxjpRA # OP 136 708604
Проблема с лагами решена одной строчкой. Она была, как и предполагал, в полоске хп.

При изменении хп игрока/башни/трона, я перерисовываю полоску методом .fillRect объекта типа Graphics. Казалось бы, если поверх старого квадратика нарисовать новый квадратик, который полностью перекрывает старый, то при рендере нам не нужно рисовать старый. Ан нет, предыдущие .fillRect наполнили commandBuffer графического объекта девятью тысячами команд на отрисовку квадратиков, и метод рендера проходится по ним.

hpGO.clear() для очистки буфера перед перерисовкой и все заебумба.

Боевой запуск на жирном домене на днях.
137 708623
>>08078
лол
ну учитвая размер плеербазы этой игры это даже фича а не баг
138 708809
оп блэд почему в игру не заходит?
1.png3 Кб, 938x77
tema!!h/oCFxjpRA # OP 139 708837
чувак, здесь что-то происходит
tema!!h/oCFxjpRA # OP 140 709774
Запустил.
https://fantasio.space/
tema!!h/oCFxjpRA # OP 141 709781
Офк, сейчас выглядит уныло. Просто у меня был челлендж - как можно быстрее сделать что-то и чтобы оно хоть как-то игралось. Доказать, что я не фантазирующий шизик-кирилл, который что-то годами пилит, но так и не запиливает.

Планы:
- Path finding
- Targeting system
- Крипы
- Разнообразие героев
- Разнообразие предметов
1.png10 Кб, 337x274
tema!!h/oCFxjpRA # OP 142 710841
Переписал сервер на тайпскрипте с самыми жесткими параметрами компиляции. Ясности стало больше, теперь я хозяин своего кода. Дело за клиентом.

Для поиска пути нашел классную библиотеку ( https://github.com/qiao/PathFinding.js ), ее и заюзаю.

Крипы будут ходить по жестким маршрутам, каждый по своей "рельсе", не следуя за врагами. Конечная цель - вражеский трон. Встретил вражеского героя, крипа или башню - атакует. Также можно добавить лесных мобов, эпичных драконов, которых будет смысл зачем-то убивать - ради баффа, денег, итемов, очка статистики, etc. Эти мобы будут тупо стоять на месте и атаковать ближайшего врага.

Коллизий не будет, так меньше гемора.

Добавлю звуки, музычку на фон, будет веселее.

Алсо, ищется хуйдожник для рисования анимаций скиллов, иконок героев/мобов и чего угодно, к чему лежит душа. Бесплатно, конечно же. @nvzaa, nv#9898
143 710888
>>10841
Хуй ты кого бесплатно найдешь, ну а с клиентом начнется веселуха теперь, хотя у тебя довольно таки простая механика, но готовься к сюрпрайзам
bandicam 2020-12-01 11-39-09-337.mp47 Мб, mp4,
600x400, 0:07
# OP 144 712394
Переписал клиент на ts.
Хороший наброс, мне понравился - https://habr.com/ru/post/500926/
Продолжаю пилить по настроению.
145 712408
>>12394
Забавно, что тебя проблемы подктолкнули к ts-у, я когда впервые его (ts) увидел - сразу понял, что к js-у больше не вернусь.
146 712420
>>12394
Советую тебе бросить эту затею, получается какая-то лажа не понятная, для кого, и главное зачем. Не опыта ты из этого полезного не получишь, не анонам чего либо.
Заведи пет проект на хабе и делай что нибудь полезное в портфолио.
Мобу делать когда ничего не понимаешь, пустая трата времени
# OP 147 712457
>>12420
Советую всем советчикам пойти нахуй, доебали, ей-богу.
148 712642
>>12457
Делай то, что считаешь нужным, это твой проект и тебе решать, что с ним делать.
Однако этот >>12420 прав в том, что сейчас проект выглядит как

>какая-то лажа не понятная, для кого, и главное зачем.


Полезный опыт ты из этого проекта извлечёшь, уже извлёк (хотя бы про типизацию), но как игра... пока сомнительно.
149 712686
Я не пойму зачем нужна дота в брузере, что нового в индустрии несет этот проект?
150 712702
>>12686

>что нового в индустрии несет этот проект


Ты рофлишь? Как еще проект?
Еслиб это был очередной китайский клон допустим на мобилки того же лола или доты, то ладно, ради быстро поднять кэша, анона понять можно. Но это, помимо того что находится в виде прототипа, так тут не механик, не арта, не чего-то уникального, ничего нет.
И возникает закономерный вопрос, зачем, почему, для чего?
151 713036
>>12702
То же самое говорили про агарио и слизерио. Времяубивалки, не привнесшие абсолютно ничего нового, однако в какой-то момент заполонили нишу тонной игроков и родили направление ио-игрушек на любой вкус.
bandicam 2020-12-04 23-54-17-524.mp45,1 Мб, mp4,
1344x660, 0:18
# OP 152 713123
153 713140
>>13036
но браузерных моб хватает
tacticscore например
154 713182
>>13123
Мда..... Выглядит как параша.
# OP 155 713192
>>13182
Покажи свою игру.
156 713209
>>13192
Начались мантры про - сперва сделай, потом критикуй?

Мне не надо поесть говна чтобы сказать что это говно. И я пишу, что выглядит твоя игра как говно, играется точно также. Прошло, сколько уже, месяц, два, с момента разработки? И что ты показываешь в итоге? Слепленное говно за пару дней на юнити/годоте/рпг макере или на любом уже готов движке.

Еслиб ты действительно хотел даже в мечтах что-то родить, пусть даже для фана в /b/ ты бы уже сделал кривое поделие, а то что ты показываешь это хуже разработки ленивого-чсвшного-червя пидора.

Не понимаю зачем ты выёбываешься и защищаешь свою парашу на которую потратил за всё время не больше пары часов разработки, из которых половину это ты смотрел видосики на ютубе как вывести картинку на экран.
157 713218
>>13123
Прикольно, а как вот реализованы мобы?
# OP 158 713230
>>13209
Пук среньк, как я и думал. Попробуй тоньше. Серьезно, ты таким образом пытаешься самоутвердиться? А мог бы полезное что-то сделать.
159 713240
>>12421 (Del)
>>13186 (Del)
>>13215 (Del)
Смысл срать колобками в гд?
160 713255
>>13209
Зачем ты такой живешь?
В смысле это не агрессивный выпад в твою сторону, но мне просто интересно, чем ты руководствуешься когда вбрасываешь не обоснованную критику, а просто "говно говна говну говном"?
Ты же тратишь и свое время и возможно трепишь нервы опу
1.mp421,1 Мб, mp4,
1104x592, 0:15
# OP 161 713288
sage 162 713290
>>13288
Короче не буду писать очевидно что это ссанина. И останется ссаниной через пол года, год, помните это.
Тех кто защищает этот кал прочтите этот пост через пару месяцев, и убедитесь что я был прав.

Сажа+скрыл. рака яичек ОПу, такого бездаря надо еще поискать на всей доске
163 713305
>>13288
Мне кажется лучше оставить управление кнопками
164 713372
>>13209

>Слепленное говно за пару дней


Каждый раз проигрываю. Типичный пост человека, который в жизни ничего не разрабатывал и понятия не имеет, сколько времени может уходить не то, что на сам код, а на ПЛАНИРОВАНИЕ ебаного кода.
165 713507
>>13290
прочту через год когда оп будет лечить орхиэктомию с твоих донатов на скины лисичек
1.png111 Кб, 329x199
# OP 166 713543
Че, пацаны, аниме?
167 713551
>>13543
А где девочки?
168 713563
>>13551
Это понастоящему мужская игра
girls.png52 Кб, 210x152
169 713567
# OP 170 713626
>>13218
Все просто. Есть массив с определениями 12 крипов, по 6 на каждую команду. Определение каждого крипа это waypoints, по которым он должен следовать, и описание базового скилла-атаки. С интервалом в n секунд каждый спаунится в waypoints[0].x, waypoints[0].y. Затем в цикле в функции onUpdate проходимся по каждому крипу: если в области его видимости есть враг, то бьем. Если нет, то немного продвигаемся дальше, к ближайшему недостигнутому вейпоинту.

Есть проблема: крипы могут накапливаться, стакаться в одной точке. В качестве временного решения буду давать им разный радиус атаки.

>>13305
Постоянно зажимать кнопки движения утомительно же. Пусть лучше будет по православному, ведь истерично кликать мышкой, дроча героя из стороны в сторону это неотъемлемая часть геймплея моб.

https://soundcloud.com/aaron-anderson-11/310-world-map-loop
Возьму у него треки, всё чисто, разрешает юзать для любых целей.
171 713639
>>13567
Так гораздо лучше.
Осталось добавить их реколор за донат, и ты в шоколаде.
1.mp45,4 Мб, mp4,
848x532, 0:07
# OP 172 713812
Наконец-то запилил логику нормальной "летящей" атаки.
173 713829
>>13812
сервер сам все просчитывает?
# OP 174 713885
>>13829
Да, а как еще?

Пилю уровневую систему. 16 уровней персонажа, на каждом повышаются базовые характеристики и дается очко скилла, все стандартно.
175 714044
>>13812
Сделай так, чтобы бы моб продолжал бить того же моба, а не агрился внезапно на тебя, потому что ты на миллиметр ближе стоишь.
# OP 176 714374
Стрим: https://www.twitch.tv/fantasio_space
Мб буду подрубать регулярно.
177 714409
>>14374
Ты там на слух, что ли, звуковые эффекты нормализуешь? Пиздец у вас там в шиндусе NOSOFT, в линупсах с полдюжины команднострочных инструментов для того, чтобы у всех аудиофайлов в каталоге подогнать громкость под один уровень.
# OP 178 714514
>>14409
Виноват, уже поставил генту конпилиться на ночь.
179 717204
Паджик есть?
180 717760
Чо там ОПчик. Понял что не сделаешь и дропнул7
181 717763
>>17760
Естественно, жопаскриптеры только шуметь горазды, а как до реального дела доходит, они жиденько обсираются.
182 717927
>>17763
хрюкни, джаваскриптоненавистничек, не надоело в тред срать?

Оп, сука, ты где?
183 718205
>>01957

> В доке, лоле и других страгияобразных так же сделано, и всем ок.


Только вот там UDP, а в вебопараше - TCP.

Алсо, в браузерах ведь есть SCTP через WebRTC, это почти UDP. Попробуй сделать через него.
# OP 184 718460
>>17204
Обязательно будет!

>>17763
:*

>>18205
Я иду по пути наименьшего копротивления, и ковыряние в протоколах вместо использования того, что дает ванильный колизеус, не входит в планы, увы.

Спок парни, оп занимается сменой работы и попутно вкатывается в юнити. Всегда считал его калом, но делать игры наполовину мышкой изкаропки, попутно кодя на немного похожем на приличный язык цэ решетке, не так уж плохо, оказывается. В ряду ассетодебилов пополнение.

Данный же проект люблю, продолжение запила не за горами. Перспективы туманны, геймплей под сомнением, онлайн не гарантирован, баланс в экселе не просчитан, графон спизжен, звуки не нормализованы, работает только в последнем хроме, но мы идем!

И с прошедшим, кириллы. Удачи в новом году.
185 718464
>>18460

>Стек: js, phaser, colyseus


>попутно вкатывается в юнити


Вот это поворот!
)))000)))))00000
original.jpg84 Кб, 1000x501
# OP 186 718470
>>18464
А то.
187 718478
>>18470
А ведь тебе, как типичному кириллу сказали в начале что ты делаешь хуйню, и ты продолжал её 2 месяца, пока не понял что надо делать игру, а не маятся хуйнёй.
188 718501
>>18478
Но ведь в эту хуйню играют другие кириллы, обмазывая опа отзывами, а ты только серишь в треде.
# OP 189 718779
вчерашний шторм не разбудил
кирилл мобу в 2020 пилил
жанр умер давно
получается говно

вебпаком код он свой сжимал
ссылку на сурцы не давал
чсв растет быстро
вдруг проджект кто-то спиздит

хейтеры сагают и ноют
игр не делают, оттого и воют

пламя в воздухе зависло
страница едва ли не зависла
оп снова обосрался
некисло

юнитидебилам на губам провел
много ночей бессонных провел
мог скачать нормальный движок
а не дрочить джээс, не лезть на рожон

типизацию завез не сразу
баги ловил не сразу
число или строка
понимал не сразу

но фэпэсов завез сразу
летает даже на ай девять
жрет цэпэ процентов девять

вайтнайтам в треде шлет респекты
хейтерам соболезнует
устраивает get rekt'ы

баланс не просчитал
маг всех снова выебал
много обещаний оп давал
все дедлайны проебал
схож с питером моленье
на нг ебашил оливье
# OP 189 718779
вчерашний шторм не разбудил
кирилл мобу в 2020 пилил
жанр умер давно
получается говно

вебпаком код он свой сжимал
ссылку на сурцы не давал
чсв растет быстро
вдруг проджект кто-то спиздит

хейтеры сагают и ноют
игр не делают, оттого и воют

пламя в воздухе зависло
страница едва ли не зависла
оп снова обосрался
некисло

юнитидебилам на губам провел
много ночей бессонных провел
мог скачать нормальный движок
а не дрочить джээс, не лезть на рожон

типизацию завез не сразу
баги ловил не сразу
число или строка
понимал не сразу

но фэпэсов завез сразу
летает даже на ай девять
жрет цэпэ процентов девять

вайтнайтам в треде шлет респекты
хейтерам соболезнует
устраивает get rekt'ы

баланс не просчитал
маг всех снова выебал
много обещаний оп давал
все дедлайны проебал
схож с питером моленье
на нг ебашил оливье
hqdefault.jpg6 Кб, 480x360
sage 190 718784
191 719023
Оп, готов по-братски помочь с чем-нибудь или просто побеседовать.

2chbpzgdANUSma`;eilPUNCTUMr*$su
192 719331
>>19023
А можешь пособеседовать? Wink, wink*
193 719430
>>19331
Ээээ... а почему ты говоришь винк, вместо того, чтобы просто подмигнуть?
Кто понел - тот молодец!
# OP 194 719652
Анон угорел по балансу, а я по интерфейсу.
16102229720411.png1,1 Мб, 1011x690
195 719657
>>19652
Угорел он
196 719870
>>09774
Почему не пашет?
197 719876
>>19870

>Почему не пашет?


Это рофл?
2021-01-11-092928589x215scrot.png20 Кб, 589x215
198 719913
>>19876
Жс-пидоры снова соснули.
199 719927
>>19913
Но зачем ты лезешь на сайт, если они соснули?
200 719961
>>19913
Боже, ты ретард что ли?

>>19927
Тоже не прочь соснуть видимо.
201 719976
>>19927
Чтобы убедиться, что жс-пидоры в очередной раз соснули.
>>19961
Нет, ты раз жабаскриптомакакствуешь
202 719989
>>19976
Поц, проверь свой жабаскриптовый радар. Я как раз писал ОПу что он хуйнёй маится, или ты думаешь он еще не съебался со своего треда с обосраными трусами?
203 720157
>>19989
Но ведь он до сих пор в треде, толстенький ты наш.
А ещё неироничное спасибо ему за либу, удобнейшая вещь
# OP 204 720215
Умнеют не по годам, теперь не простреливают через деревья, а значит можно будет сделать полноценный лес.
tiled.png1,3 Мб, 1365x737
# OP 205 720218
Подрубил смекалочку, использую Tiled для рисования полигонов коллизий. Создаешь "слой объектов", рисуешь на нем, экспортируешь карту в json, в коде читаешь полигоны оттуда.
206 720231
Молодец!
1.png109 Кб, 527x129
# OP 207 720311
Отображение наложенных эффектов и разделение характеристик на базовые и бонусные (от эффектов и предметов).
208 720423
Оп, ПОБРАЦКИ расскажи подробнее, как делал pathfinding и коллизии?
# OP 209 720465
>>20423
Напомню, что использую https://github.com/qiao/PathFinding.js

Начнем с матрицы, по которой будем искать. Наш тайловый редактор Tiled сохраняет карту в json, где каждый слой это массив вида [0, 0, 222, 333, 100, 0, 0, ...]. Мы заблаговременно все объекты с коллизиями кидали на отдельный слой. Нам как раз и нужен массив, в котором пустые места это 0, а не пустые - число больше нуля. Массив одномерный, а нам нужен двумерный - используем функцию chunk либы lodash, передав ей ширину мирка.

Клиент кликнул в точку на карте, выслал на сервер координаты этой точки X:Y. На сервере мы каждую целочисленно разделили на 32 (ширина клетки мирка), получили индексы конечных точек в нашей матрице. Передаем их в функцию поиска пути и получаем двумерный waypoints, т.е. точки следования. Путь можно сгладить функцией smoothenPath, чтобы персонаж не двигался прям по клеточкам.

На сервере, в функции onUpdate, потихоньку передвигаем персонажа к первому недостигнутому вейпоинту (см. Vector2.MoveTowards в том же юнити, чтобы понимать о чем речь). Достигли - удалили его.

Теперь если в качестве цели был выбран враг. В момент выбора мы так же нашли waypoints до этого врага. Так же записали их и двигаемся по ним. Один момент: в onUpdate нужно их пересчитывать в момент, когда враг меняет свою позицию. Сначала я думал, что это фейл - 20 раз в секунду пересчитывать пути 10 гипотетических героев. Ведь у нас в лучшем случае есть всего 50 мс на каждое обновление, и, скажем, 6 мс на каждый поиск нас уже не устроит. Методом теста выяснил, что на каждый поиск уходит ~1-2 мс. Но стоит ограничивать расстояние, на котором поиск срабатывает. Не разрешать выбирать слишком далекие точки для следования, ведь карта 100х100 клеток, и сервер загнется, если начнет считать перемещение из одного угла в другой, например. Возможно, в один момент я неиллюзорно пососу, когда одновременных битв станет больше одной-двух-трех не станет, ведь жс-пидоры снова соснули

О коллизиях, сквозь которые нельзя прострелить, написано выше. В момент, когда расстояние до врага меньше радиуса атаки героя, просто проверяем, что линия атаки не пересекается ни с одним полигоном коллизий. Если пересекется, то ничего не делаем и двигаемся дальше.
# OP 209 720465
>>20423
Напомню, что использую https://github.com/qiao/PathFinding.js

Начнем с матрицы, по которой будем искать. Наш тайловый редактор Tiled сохраняет карту в json, где каждый слой это массив вида [0, 0, 222, 333, 100, 0, 0, ...]. Мы заблаговременно все объекты с коллизиями кидали на отдельный слой. Нам как раз и нужен массив, в котором пустые места это 0, а не пустые - число больше нуля. Массив одномерный, а нам нужен двумерный - используем функцию chunk либы lodash, передав ей ширину мирка.

Клиент кликнул в точку на карте, выслал на сервер координаты этой точки X:Y. На сервере мы каждую целочисленно разделили на 32 (ширина клетки мирка), получили индексы конечных точек в нашей матрице. Передаем их в функцию поиска пути и получаем двумерный waypoints, т.е. точки следования. Путь можно сгладить функцией smoothenPath, чтобы персонаж не двигался прям по клеточкам.

На сервере, в функции onUpdate, потихоньку передвигаем персонажа к первому недостигнутому вейпоинту (см. Vector2.MoveTowards в том же юнити, чтобы понимать о чем речь). Достигли - удалили его.

Теперь если в качестве цели был выбран враг. В момент выбора мы так же нашли waypoints до этого врага. Так же записали их и двигаемся по ним. Один момент: в onUpdate нужно их пересчитывать в момент, когда враг меняет свою позицию. Сначала я думал, что это фейл - 20 раз в секунду пересчитывать пути 10 гипотетических героев. Ведь у нас в лучшем случае есть всего 50 мс на каждое обновление, и, скажем, 6 мс на каждый поиск нас уже не устроит. Методом теста выяснил, что на каждый поиск уходит ~1-2 мс. Но стоит ограничивать расстояние, на котором поиск срабатывает. Не разрешать выбирать слишком далекие точки для следования, ведь карта 100х100 клеток, и сервер загнется, если начнет считать перемещение из одного угла в другой, например. Возможно, в один момент я неиллюзорно пососу, когда одновременных битв станет больше одной-двух-трех не станет, ведь жс-пидоры снова соснули

О коллизиях, сквозь которые нельзя прострелить, написано выше. В момент, когда расстояние до врага меньше радиуса атаки героя, просто проверяем, что линия атаки не пересекается ни с одним полигоном коллизий. Если пересекется, то ничего не делаем и двигаемся дальше.
210 720488
>>20465

>не станет, ведь жс-пидоры снова соснули


Шаришь
211 720512
>>20488
Да выпей ты уже таблеток
DisneyCars-2.gif17 Кб, 240x321
212 720615
>>20465
Спасибо.

> smoothenPath


Позволяет срезать путь, а не идти через центры тайлов, верно?

> 20 раз в секунду пересчитывать пути 10 гипотетических героев.


Часть путей можешь считать на клиенте. Как минимум пути героя к точке. Серверу только валидацию нужно будет делать.

Могу проконсультировать по геймплейной составляющей.
Самая главная проблема твоего проекта - онлайн. Думай, как будешь эмулировать других игроков ботами.
Нужны ли тебе команды и вся моба механика? Команды уменьшают вероятность сражения (сравни с десматчем). Моба механики ограничивают подключение (и отключение) новых игроков во время боя.

Исходи из требований:
1) Единственный игрок на сервере сможет играть.
2) Игрок может подключиться после старта боя.
3) Дисконнект любого количества игроков не портит опыт всем остальным.
4) Игроку с первой секунды понятно, что нужно делать.

Вот тебе концепт для сравнения:
Игрок управляет маленькой машинкой. Катается, дрифтует, собирает бонусы. Машинка имеет "пулемет" и способности. Бой может быть дезматч, батлрояль, "догонялки".
За бои зарабатываешь валюту. За валюту покупаешь/прокачиваешь машинки.
213 720623
>>20615
Вот сам иди и делай свой батлроял. Хотя требования да, разумные.

мимо неоп
# OP 214 720629
>>20615

>Позволяет срезать путь, а не идти через центры тайлов, верно?


См. пик, наверное, ты это и имеешь в виду.

>Часть путей можешь считать на клиенте


Годно, услышал тебя.

Я сейчас как раз пилю разделение на рейтинговые матчи и фановые. В первом режиме все жестко - если вписался в игру, то за лив будешь наказан. С учетом того, что катки будут по 5-10 минут, они должны набираться рано или поздно, при хоть каком-нибудь онлайне. Можно сделать 3х3 чтобы ускорить процесс. К запиливанию этого режима меня подтолкнуло наличие прокачки в игре. Ведь при классическом io-раскладе ты будешь заходить первоуровнемым лошком, а там уже васяны макс уровня с предметами. А так все будут стартовать в один момент и даже есть спортивная составляющая когда-нибудь проведу двач кап

Если все-таки хочется хаоса и шлюх, и ранкед катка еще не набралась, то добро пожаловать во второй режим. В любой момент зашел, в любой вышел. Можно и тут сделать какой-то цифродроч, какой-то отдельный рейтинг. Либо чтобы он влиял на основной, но слабо. Что-нибудь придумаю. Виджет с поиском ранкед катки будет висеть во время фановой катки.

>эмулировать других игроков ботами


Проще застрелиться

>Единственный игрок на сервере сможет играть


Технически да, но смысла колупать крипов и башни в одно рыло нет. От нейтралов отказался

>Игрок может подключиться после старта боя


Фан режим

>Дисконнект любого количества игроков не портит опыт всем остальным


В фан режиме не портит. Там и автобаланс есть, если что

>Игроку с первой секунды понятно, что нужно делать


Если не сегодня подключил интернет, то разберется. Но какую-нибудь справку на видном месте все равно сделаю. Мб ты что-то другое имеешь в виду.

Дней через 5 снова запущусь.
# OP 214 720629
>>20615

>Позволяет срезать путь, а не идти через центры тайлов, верно?


См. пик, наверное, ты это и имеешь в виду.

>Часть путей можешь считать на клиенте


Годно, услышал тебя.

Я сейчас как раз пилю разделение на рейтинговые матчи и фановые. В первом режиме все жестко - если вписался в игру, то за лив будешь наказан. С учетом того, что катки будут по 5-10 минут, они должны набираться рано или поздно, при хоть каком-нибудь онлайне. Можно сделать 3х3 чтобы ускорить процесс. К запиливанию этого режима меня подтолкнуло наличие прокачки в игре. Ведь при классическом io-раскладе ты будешь заходить первоуровнемым лошком, а там уже васяны макс уровня с предметами. А так все будут стартовать в один момент и даже есть спортивная составляющая когда-нибудь проведу двач кап

Если все-таки хочется хаоса и шлюх, и ранкед катка еще не набралась, то добро пожаловать во второй режим. В любой момент зашел, в любой вышел. Можно и тут сделать какой-то цифродроч, какой-то отдельный рейтинг. Либо чтобы он влиял на основной, но слабо. Что-нибудь придумаю. Виджет с поиском ранкед катки будет висеть во время фановой катки.

>эмулировать других игроков ботами


Проще застрелиться

>Единственный игрок на сервере сможет играть


Технически да, но смысла колупать крипов и башни в одно рыло нет. От нейтралов отказался

>Игрок может подключиться после старта боя


Фан режим

>Дисконнект любого количества игроков не портит опыт всем остальным


В фан режиме не портит. Там и автобаланс есть, если что

>Игроку с первой секунды понятно, что нужно делать


Если не сегодня подключил интернет, то разберется. Но какую-нибудь справку на видном месте все равно сделаю. Мб ты что-то другое имеешь в виду.

Дней через 5 снова запущусь.
215 720655
>>20629

>они должны набираться рано или поздно, при хоть каком-нибудь онлайне


Зная, как ты будешь сегментировать игроков (регионы, режимы игры, "наказанные"), ты можешь посчитать, какой онлайн тебе нужен. Прикинуть длину средней игровой сессии. Посчитать необходимый дау. Посчитать необходимое количество активных юзеров. Подумать, где ты их возьмешь.

> Если не сегодня подключил интернет, то разберется. Но какую-нибудь справку на видном месте все равно сделаю. Мб ты что-то другое имеешь в виду.


Я хочу сказать, что игрок будет попадать в твою игру случайно, жать "старт игры", бегать 10 секунд и закрывать вкладку навсегда.
Возможно он бы поразбирался, если бы это была единственная игра на свете, но к сожалению свободного времени у людей гораздо меньше, чем хороших игр. Ты будешь конкурировать со стимом и апстором.
Получается, что у тебя есть буквально 5-10 секунд, чтобы заинтересовать игрока.
Сравни с http://slither.io/. Матч ищется мгновенно. Игра цепляет с первых секунд. И разбираться в ней не нужно.
216 720671
>>20655
Вот этого двачну. Есть такое понятие как "первичное удержание пользователя"
# OP 217 721651
да, анимации очень быстрые, так надо
video.mp44,3 Мб, mp4,
864x512, 0:15
# OP 218 721736
болванчики, курсор
219 721745
>>21736
Ты б лучше над увлекательностью игры подумал, чем анимации пилить.
220 721783
А как ты прожектаелы делал?
Это отдельная сущность с полным набором данных уровня:
{ sourceId, targetId, damageAmount, damageTypeId } и тд?
video.mp410,3 Мб, mp4,
1344x616, 0:11
# OP 221 721794
>>21783
именно так

- просмотр хп, маны, стат, скиллов, итемов других героев по клику
- задержка на респаун в зависимости от уровня
- произвольное перемещение камеры
- фокус на своем персонаже на пробел
sage # OP 222 721796
стремно заебывать доску своими однообразными высокохудожественными высерами с минимальными отличиями, но это мотивировало с самого начала, иначе никак, извините
223 721816
А что там по сетевой части, как организована?
Или ты просто отдал всё на откуп колизею и сам не в курсе, чё как?
У меня так в 13-ом году моба на ноде накрылась, когда я посчитал, что не смогу держать более нескольких сотен игроков на одном сервере. Если каждому юзеру слать хотя бы десять апдейтов в секунду, да ещё делать проверки, сервер охуеет.
И дело тут даже не в ноде, а в природе браузерных реалтаймовых игр. По-моему, без доступа к p2p их банально дорого содержать. Но я могу ошибаться.
224 721847
>>21796
Та не, это-то как раз нормально и правильно. Просто держи в уме, что нужно двигаться скорее в сторону того, что анон выше говорил про механ.
225 721872
>>21816
Щас впс с 2 ядрами пиздатыми всего 400р/мес стоит. В одном потоке сетевое взаимодействие пилишь, на втором обсчет игровой логики. Все, можешь держать онлайн в 2-3к запросто, считая для каждого по 10 раз в сек числа фиббоначи.
226 721876
>>21872

> 400р/мес стоит


И где их брать? Я лучше на эти деньги покушаю.
227 721879
>>21872

>Щас впс с 2 ядрами пиздатыми всего 400р/мес стоит


Не верю. Не окупится месяц работы двух мощных ядер, они электричества больше сожрут. Я когда гуглил, находил что-то похожее только от 100 баксов.
228 721912
>>21879
Ты майнкрафт с тяжелыми модами (которые взаимодйствуют с тонной мегов оперативки каждый тик) собрался пилить, или мобу с простейшей игровой логикой? Для первого может и понадобится выделеный серв за 100 бачей в месяц, а для мобы где чекается почти нихуя и vps за 400р пойдет.
# OP 229 722150
>>21912
соглашусь с этим

- полоски хп и размеры крипов. теперь можно различать крипов/героев, своих/чужих
- выдрочка интерфейса
- камеру можно двигать стрелками, wasd и (!) мышкой
- получение опыта за убийство врагов союзниками в радиусе
230 722378
>>22150
Этой бы штуке да оригинальный геймплей. А так... ты ведь понимаешь, с кем будешь конкурировать? Тут без шансов просто. Разве что делать ставку на скучающих клерков, которые нормальную доту не могут поставить на рабочий комп.
231 722385
>>22378

>делать ставку на скучающих клерков, которые нормальную доту не могут поставить на рабочий комп.


А ведь можно. Задротящее в доту поколение как раз пойдёт в офисы...
изображение.png8 Кб, 715x264
232 723498
>>22150
Где/как тестить? Проверь домен, может у тебя домен от сервера отвалился?

>Обмен пакетами с fantasio.space [83.229.85.39] с 32 байтами данных:


>Ответ от 213.254.219.98: Заданный узел недоступен.



Или мне в твою игру через VPN/прокси нужно заходить, лол?
233 723506
>>23498
ОП выключает сайт когда не тестит с анонами.
234 723510
>>23506
Энергию экономит? Где расписание тестов/объявления о тестах? Я как ни зайду - либо выключен, либо пуст, думал проект всё.
# OP 235 723736
кабанчиками
http://fantasio-space.ddns.net/

позже в /b создам
# OP 236 723743
залетел на сервер colyseus'а
237 723751
>>23736
Не пашет, и тред в б не нашел.
238 723754
>>23751
открывай сейчас. моментики фиксил. /b завтра
239 723756
>>23754
Я уже в кроватке сплю, сорян =(
240 723778
>>23743
>>23754
В чём проблема держать сервер 24/7? Поставь на Raspberry Pi, она бесшумная и маленькая, много не кушает.
241 723809
>>23778
Лучше взять промо тариф типа такого timeweb.com/ru/services/vds за 300 рублей на полгода. Линк намного пизже будет, чем к домашней пеке.
242 723818
>>23809
Тоже так думал, за 3 года получил несколько отключений и перенос сервера, при этом оповещения не приходят и иногда узнаешь про это спустя месяц.
Итог: за 300р можно брать "поиграться", для релиза или плати больше или ставь малинку на холодильник
243 723873
>>23818
Так на период разработки нет смысла брать за косарь в месяц, а за смешные копейки иметь 98% онлайна - самое оно. И судя по ip ОП из казахстана, и до него другим анонам линк может быть ебанутым из-за провайдерской маршрутизации. К примеру из ДС пинг будет 50мс, а из Питера 250мс. Всеж у датацентров то линковка между магистралями посерьезней, чем у домашнего инета. В билайне вообще порой гоняют весь RU трафик через европу, и люди охуевают, что до соседнего города пакет идет через люксембург.
# OP 244 723879
не кипишуйте, сейчас фаза поиска багов и запиливания недостающего, в vps 24/7 смысла ноль

запустил, заходите
1.png1,6 Мб, 1349x654
# OP 245 723889
движения ежжи дон
# OP 246 723946
Проект всё.
247 723948
>>23946
как-то быстро сдулся
248 723950
>>23946
Наигрался? Или фундаментальная причина какая-нибудь неверно выбранный стек технологий например?
249 723953
>>23946
Слыш исходники выложи хоть на почту дай
250 723958
>>23946
Даже если ты шутишь, то у моей мобы в 13-м году "всё" наступило примерно на этом же этапе. Причины были таковы:
1. Быдлокод, из-за которого сложно добавлять новые фичи.
2. Отсутствие интересных идей, куда вообще развивать проект.
3. Понимание, что постоянного онлайна без вливаний бабла нет и не будет.
Не знаю, какие из пунктов для тебя актуальны.
# OP 251 724024
Охладился, вернулся.

Пилил ОП код, удовлетворял фетиш на онлайн-игру, и только по окончании понял, что это нахуй не всралось, агарио не придет. Игрок зашел, убил/умер 2 раза, закрыл навсегда, т.к. МОТИВАЦИИ и ЧЕЛЛЕНДЖА нет. Можешь рвать жопу сколько угодно, но вольво не станешь.

>>23958

>2. Отсутствие интересных идей, куда вообще развивать проект.


>3. Понимание, что постоянного онлайна без вливаний бабла нет и не будет.


Всё так.

Посему решил ОП переобуться в оффлайн мобу с уровнями для прохождения. Запилить ботов-героев в дополнение к крипам. Куча переменных, меняющихся от уровня к уровню вроде силы врагов, силы союзников, их количества, время спауна крипов, ограниченное время на прохождение, любые другие условия. Также можно прикрутить внесессионную прокачку - уровень, айтемы, дэйли квесты, etc.

Каловые круглешки очевидно будут заменены на нормальные спрайты с анимацией. Когда-то можно будет закинуть это всё в бомжеплей.

Много сил потратил на сетевое взаимодействие. Его можно выкинуть, перенести всё на клиент, но это так грустно (выкидывать код). Оправдать его наличие можно защитой от накрутки и какими-то рейтингами. Мол вася228 прошел этот уровень, набрав 9000 очков, а ты 8999, это будет мотивировать тебя задротить и улучшаться. Или на время там, спидранерские движения. Что думаете, это интересно кому-то?

В общем, рейт идею в целом, и накидывайте мысли по поводу того, что можно сделать в рамках разумного, чтобы это хоть как-то интересно игралось и было востребованно, и возможно ли это в принципе.

>>23950

>неверно выбранный стек технологий например?


Да нет, тут претензий нет. Причесать код, убрать //@ts-ignore в некоторых местах. Может кто нормально объяснить претензии к стеку не в стиле жс-хейтера? Я, конечно, понимаю, что есть сеньоры-помидоры с академическими знаниями об ООП и компьютер сайнс, и для них это всё кал. Но куда нам до таких.
252 724042
>>23946
>>24024

>Буду неспешно пилить io-мобу. Круглые герои, башни, Аноним 02/10/20


>27/01/21 Срд 00:30:52


Поверь, принять, отпустить, вынести для себя опыт, это тоже полезно, хоть и заняло у тебя эта тягамотина на месяц-два дольше стандартного срока.
Стандартный срок разработки инди проекта в одно рыло +-2-3 недели, если по истечению этого срока у тебя нету прототипа, или тебе не нравится/не видится смысла зачем ты это делаешь, то дропаешь и переосмысляешь всё то что сделал. И далее как повезёт, кому то с 2-3 раз удаётся найти то что хочется, кому-то же не везёт и он вечно замкнут в кругах разработки-дропа.
sage 253 724048
ОП куколд
254 724051
>>24024

>Посему решил ОП переобуться в оффлайн мобу с уровнями для прохождения. Запилить ботов-героев в дополнение к крипам. Куча переменных, меняющихся от уровня к уровню вроде силы врагов, силы союзников, их количества, время спауна крипов, ограниченное время на прохождение, любые другие условия. Также можно прикрутить внесессионную прокачку - уровень, айтемы, дэйли квесты, etc.



Роуглайк-составляющие - это хорошо. В первую очередь это хорошо потому, что позволяет обойтись меньшим количеством контента. Если у тебя качественная генерация префиксов к оружию, ты можешь обойтись 20-ю спрайтами и описаниями вместо 2000.
Вообще, почаще думай, где можно срезать угол и уменьшить человекочасы, без жёсткой экономии разработка с нулевым бюджетом обречена на провал. Ищи наименее затратный стиль: юниты-фишки, твининг вместо покадровых анимаций, крупный пиксель, минимализм. Грамотное 3D и постпроцессинг тоже творят чудеса.

По поводу идеи игры - не спеши. Гореть идеей очень важно, так как ради её реализации придётся тратить месяцы и годы. Лично я не рекомендую полностью отказываться от сервера, сервер сейчас есть у любой игры - хотя бы хранить хайскор. Даже если ты сделаешь что-то синглплеерное, можешь оставить часть кода на сервере (например, генерацию уровней) и тем самым защититься от пиратства, если игре вдруг начнёт светить коммерческий успех.

> Мол вася228 прошел этот уровень, набрав 9000 очков, а ты 8999, это будет мотивировать тебя задротить и улучшаться.


Тут ты путаешь причину и следствие. Обычно людям сначала нравится игра, а уже потом у них появляется мотив показать в этой игре какие-то результаты. Мне сначала понравился старкрафт, а потом я решил доказать себе, что гидралискам под свармом батлкрузеры нипочём. Мне сначала понравился кроссаут, а потом я решил проверить, хорошо ли мой крафт держится в бою с другими игроками.
А ты будто решил сделать какую-то чисто киберспортивную штуку. Это как новый вид спорта ввести, без миллиардов бюджета так же нереально.
255 724054
>>24024
Попробую вылечить тебя от апатии бесплатно и без смс. Смотри, мне неповезло в силу возраста застать еще battle.net в пике своей формы для 3 варкрафта. И знаешь какие карты конкурировали с дотой тогда среди кастомных? Тауэр дефенсы всех мастей! Самыми популярными были green td и elemntal td насколько помню. А знаешь почему? Они были не слишком сложные, и можно было катку буквально за 10-15 минут пройти, в отличие от долгой доты. Школота вроде меня толпами сидела и пересоздавала их, стараясь не проебать в очередной раз крипов и вовремя апгрейднуть башню. Плюс когда отваливался человек или ебланил, это становилось БОНУСОМ, т.к. его неубитые крипы шли через тебя и давали больше денег.

Это я к чему. У тебя уже движок вполне способен выдать простенький тауэр дэфенс и играть в него толпой будет довольно свежо в отличие от заебавшей всех механики доты. Плюс если не будешь люто спамить, то можно же каждую неделю делать тред в /b и набирать новую партию игроков, а там и до выпуска на мобилы недалеко, где уже есть некий костяк фанатов. Кароче подумой над перекатом в TD, мне кажется это лучше, чем сразу делать никому не нужный оффлайн варик3 на 2д-канвасе в браузере. Без пиздатого сюжета никто не будет мириться с всратостью графена, и подобные проекты вытягивет только мультиплеер. Как-то так.
256 724056
>>24054

>Без пиздатого сюжета никто не будет мириться с всратостью графена, и подобные проекты вытягивет только мультиплеер. Как-то так.


Господи, что несёт. Игры вытягивает геймплей. Гейм-плей, блять. Сюжет вытягивает книгу. Если твои игры вытягивает сюжет, лучше становись писателем. А геймплей вообще не зависит от графики и сюжета. Либо у игрока есть интересный ему челендж, либо его нет. Вчера я полчаса наяривал в chrome://dino , хотя графики там нихуя, как и мультиплеера. Мультиплеер просто читерский способ дать игроку челендж, но это можно сделать и без него.
257 724164
>>20615
ОП, делай машинки. Будет тебе агарио.
258 724196
>>24056
Ох уже эти доёбы до точной терминологии. Суть ты понял. Если не понял, простыми словами: ОП не сможет сделать пиздатые синглпеерные кампании типа как в Warcraft III: The Frozen Throne. Для этого надо быть неплохим сценаристом как минимум и дохера работы с персонажами проделать (при этом вселенная варика 3 - это штамп на штампе и заезженным штампом погоняет). Но это не потятнуть в одиночку. Лучше идти по проторенному пути, делая бессюжетные мультиплеерные механики типа доты или TD, но с короткими катками и фаном. Это же под браузер игра, которую запускают в обеденное время в офисе. Дома то можно и в стиме поиграть в норм игры.

>>24024
ОП, надеюсь ты преодолеешь этот кризис и появишься в топе https://itch.io/games/html5/tag-multiplayer к концу года.
# OP 259 724200
>>24112 (Del)
Пришел к такой же очевидной мысли.
Добавлю ботов, анимации персонажей (уже примерил - выглядит неплохо), вывешу на crazygames'ы и тысячу подобных, буду в месяц тратить 1$ на vps и получать что-то с рекламы. И это уже будет успех. Мысли о переобувании в другую игру - минутный бред сумасшедшего.

Обнял-поцеловал.
260 724221
>>24054

>Тауэр дефенсы всех мастей


Так ведь моба - поджанр товердефенсов, там тоже башенки друг в друга пиу-пиу делают, не?

>>24056

>Если твои игры вытягивает сюжет, лучше становись писателем


Грань между книгой и игрой сегодня размыта. Есть интерактивные книги, например, их кому делать - писателям?

>А геймплей вообще не зависит от графики и сюжета


Зависит. Геймплей можно приделать к любой графике и любому сюжету, но с говёной графикой играть будут только копрофилы и копроеды. Без сюжета выкрутиться можно, если сделать песочницу, но некоторые люди вообще не играют, если нет никакого сюжета, для таких уникумов даже в майнкрафте главбосса запилили.

>>24196

>пиздатые синглпеерные кампании типа как в Warcraft


В них кто-то ещё играет? В смысле, сейчас основная аудитория в кликерах на мобилках...

>Дома то можно и в стиме поиграть в норм игры


Стим нужно запустить и дождаться обновления всех игр, а мобильник всегда под рукой и игры запускает сразу...
261 724225
>>24200
Ты, главное, не забывай, что твоя игра ещё в самом начале пути и сделать предстоит больше, чем сделано.
262 724229
>>24221

>Так ведь моба - поджанр товердефенсов, там тоже башенки друг в друга пиу-пиу делают, не?


Не совсем. Tower Defense и MOBA - это, так сказать, два ростка, проросшие из одной компостной кучи, где покоится труп реалтаймовых стратегий.
Уже в девяностых стало понятно, что геймплей старкрафта/варкрафта и им подобных РТС явственно распадается на макроменеджмент и микроконтроль, которые требуют от игрока совершенно разных качеств.
Макроменеджмент без микроконтроля - это защита башнями. Микроконтроль без макроменеджмента - это ДотА.
bogdanov-s-telefonom.jpg65 Кб, 746x573
263 724586
Добавь ранговую систему, готов стать Даймондом твоей хуйни.
264 728297
А ну сука не тонуть.
sage 265 728307
>>28297
нет тони
266 728345
>>28307
Пошел нахуй, а? Этот Кирилл рабочий прототип выкатил хотя бы, он молодец. Если б ещё исходники выложил...
sage 267 728357
>>28345
Он то молодец, спору нет, но если он ушел зачем нам этот тред?
Чуть что, так ругаться сразу, ужас..
268 728364
>>28357
Сорян, я думал ты антижсшизик, который тут срал.
269 728437
>>24586
Готов стать грандмастером 800+ птс, топ 10.
1.mp4731 Кб, mp4,
832x552, 0:05
270 729395
на неспешычах
1.mp43,3 Мб, mp4,
1360x736, 0:15
271 729548
ранкед
272 729574
>>29395
>>29548
Не обращай внимание на сагеров, задумка хорошая (хоть и реализация пока хромает)
Хотя я лучше завалю ебальник ибо за 6 лет работы в сфере гд выкатил только 2 прототипа
273 729577
>>29548
Пля, внушающая так-то демка. Кем ты раньше работал, анон?
tema!!h/oCFxjpRA 274 729597
>>29574
спасибо

>>29577
сейчас фронтенд, раньше фуллстек

>>29593 (Del)
да, время на сборы будет
tema!!h/oCFxjpRA 275 729943
Предварительная система подсчета рейтинга. Конкретные цифры могут быть другими.

За каждую игру игроки победившей команды получают 50, 40, 30, 20, 10 очков в соответствии с активностью во время игры. Проигравшей команды - то же самое, только со знаком минус. Далее, высчитываем коэффициент силы каждой команды, который основывается на соотношении суммы очков игроков оной (глобальных очков, которые были на момент начала игры) по отношению к вражеской команде. Допустим, получили 0.8 и 1.25. Допустим, выиграла команда с силой 0.8. Очки каждого игрока этой команды делим на 0.8 - их становится больше. Если проиграла, то умножаем на 0.8 - отрицательное значение становится менее отрицательным.

Когда глобальных очков у игрока становится больше, скажем, 1000, начинает действовать замедляющий коэффициент, равный (2000 - POINTS) / 1000. Количество получаемых за каждую победу очков будет умножаться на него. Очки за поражения не трогаем.

Когда очков становится меньше, скажем, 300, помогаем выбраться из ямы - на каждое поражение будет действовать коэффициент (POINTS / 300), а очки за победы не трогаем.
tema!!h/oCFxjpRA 276 729945
Есть фатальный минус этой системы: если ты попал в команду к слабым игрокам, играл очень хорошо, но вы все равно проиграли - неизбежно получаешь минус. Надо думать.
tema!!h/oCFxjpRA 277 729949
Лучше без разделения на команды давать от 1 до 10 места 50..-50 очков соответственно. Далее каждому победителю накидывать 20, а у проигравшего снимать 20.
278 729959
Советую сделать более щадящию систему, и к примеру при проигрыше отнимать не так как обычно, а на процентов 50% меньше стандартного значения. Всё таки у тебя не киберспорт, меньше горения у игроков, больше задержатся в игре.
279 730034
>>29943

>50, 40, 30, 20, 10 очков в соответствии с активностью


1. Почему кратно 10? У тебя всё равно деление и вещественные числа потом идут, где-то придётся округлять, так зачем брать крупные круглые числа?
2. Как вычисляется активность? По-моему тут должен быть сложный рассчёт, а не простая табличка с сортировкой по убийствам. Игрок может выполнить много полезных действий для команды, но при этом никого не убить, и наоборот, сделать всего одно убийство и оказаться первым в таблице игроков.

>то же самое, только со знаком минус


Не то же самое. Лучший проигравший должен получать минимальный штраф, в то время как худший победитель получает минимальную награду. Т.е. очки проигравшего = - (макс_очков - очки_активности), это как минимум.

>коэффициент силы команды


Несущественный. В идеале команды не должны отличаться более чем на несколько пунктов. Смысла в игре между двумя сильно отличающимися командами просто нет, одна другую быстро раскатает.

>замедляющий коэффициент


Зачем? Топовых игроков будет мало, и они сами друг друга урегулируют. В итоге топовые игроки будут болтаться в каком-то диапазоне чисел, правда, у них и матчи будут существенно дольше искаться (что логично).

>помогаем выбираться


Опять же смысла нет. Если игрок хорош, то он выберется из ямы сам, всегда занимая первые места в своей команде.
280 730036
>>29943
Короче, вот такой формулы должно хватить:
points -= round((lose - activity) x max);
Где:
lose может принимать значение 0 (победили) или 1 (проиграли),
activity в диапазоне [0..1] обозначает активность игрока во время матча,
max - константа, определяет максимум очков за матч (например, 30).
Примеры:
1000 - (1 - 0.5) x 30 = 985 (проиграли 15 очков)
985 - (0 - 0.2) x 30 = 991 (выиграли 6)
991 - (1 - 0.1) x 30 = 964 (проиграли 27)
964 - (0 - 0.99) x 30 = 994 (выиграли 30)
И т.д.

Никаких искусственных ограничений не нужно. Ну, кроме нижней планки, чтобы не получался отрицательный ранг. В остальном система откалибрует сама себя, если будешь собирать в матче команды с равными суммами очков, а в каждой команде разброс очков будет не больше 500 или около того.

Параметр активности игрока должен вычисляться по действиям, которые он совершает, например: дамаг, удачное применение способности, участие в убийстве. Важно считать все параметры, а не только число убийств. Потом приводим к диапазону [0..1], сравнивая с товарищами по команде. Скажем, очень хороший игрок будет в районе 1, а его его намного более слабые товарищи в районе 0, но именно для этого нужно ограничение в разнице ранга между игроками одной команды.

А вообще всё придумано для нас, нужно смотреть систему Elo и не изобретать велосипед. Я лично описал то, как приблизительно может работать ранговая система в Overwatch, в который я периодически играю, правда я там болтаюсь в бронзе (около 1000 очков) и поэтому не знаю, как дела обстоят на высоких рангах, только слышал что время ожидания больше часа, в то время как у меня матчи почти мгновенные (за непопулярные роли).
281 730040
>>29943
Да, забыл добавить, что вычисление награды - не самое сложное. Самое сложное, на мой взгляд, это первоначальное определение ранга игрока, т.н. калибровка. Мы ведь должны присвоить новичку какой-то определённый ранг. Тут нужно смотреть на его активность в матчах, сколько он действий совершает в секунду и сколько из них успешны, в общем измерять его эффективность. Правда, в любом случае будут игроки, создающие новый аккаунт и специально проваливающие первые матчи, чтобы получить низкий ранг и потом нагибать нубов - т.н. смурфы. Но их должно быстро повысить на их ранг, давая каждый раз по максимуму за победу и не штрафуя за поражение (всё по формуле).

Правда есть ещё проблема с игроками, которые специально бросают игру и бездействуют в матче, чтобы проиграть и слить рейтинг. Таких программно отследить трудно, они могут имитировать бурную активность и обманывать систему. С такими можно бороться системой репортов, игроки должны сами докладывать о тех, кто бездействует в соревновательных матчах.

А вообще, я тут вспомнил другие игры... К примеру, есть APB:R - там игроки сортируются по комнатам в соответствии с рангом, но рангов всего 4: зелёный, бронзовый, серебряный и золотой. Вычисляется, вроде бы, по соотношению убийств к смертям, т.е. если тебя постоянно убивают, тебя быстро отбрасыаает в нижние ранги. И зайти в комнаты можно только в соответствии с рангом +/-1, т.е. золото может только к золоту и серебру, а зелень только к зелени и бронзе. Ну, эта система не для соревнований, а скорее для песочницы, в которой игроки сортируются по комнатам в соответствии с личными умениями. Ты же вроде подумывал изменить суть игры, я ктому.
282 730049
>>29597

>да, время на сборы будет


В таком случае предусмотри отсутствие необходимого кол-ва игроков в онлайне. Пусть при недостатке игроков комната ожидания заполняется ботами.
1.mp45 Мб, mp4,
1344x664, 0:22
tema!!h/oCFxjpRA 283 730965
- Нейтралы. Есть обычные, за которых опыт + золото, есть дракончики, с которых еще и полезные штуки выпадают вроде дэблдэмджа на время. У каждого типа нейтрала уникальные статы. Респаунятся, офк
- Командный чат
- Командные киллы и личный kda в углу экрана
- Стильный магазин
- Избавление от //@ts-ignore везде, и от any там, где это возможно

Короче, глобально сделал всё, что хотел ботов не будет, и это охуенно приятное чувство - теперь можно спокойно рефакторить, дрочить карту, расставлять нейтралов, шатать спрайты, цифры, прочее. Не нужно ДУМАТЬ, крутить велосипеды.

Later.
284 730980
>>30965
Вообще, какую-то реальную пользу от тайпскрипта ощущаешь?
Я подумываю свой node-сервер на TS перевести, но код довольно объёмистый (около 300 килобайт с пробелами и комментариями) и не хотелось бы оказаться в дураках.
k.gif2,2 Мб, 478x268
tema!!h/oCFxjpRA 285 730998
>>30980
Ощущаю.

Я не советчик, опыта в ts мало, стал бы внедрять, только если код будет еще много допиливаться, грубо говоря, его станет в разы больше (как было у меня в момент внедрения). Если нет, то забить на эту идею.

Он супер "полумерный", скорее всего, у тебя будут грязные хаки, т.к. вряд ли захочется все переписывать на новый лад. Будешь стараться держать их под контролем, не давать разрастаться.

Попробуй кое-где внедрить, по ходу поймешь, надо ли оно тебе.

Сервер и клиент по 100 кб каждый.
286 731147
>>30965
И это ты родил за почти пол года разработки? СЕРЪЁЗНА!?
Не хочу обижать, но такое на юньке или даже господи упаси годоте за недельку слепишь.
На что ты тратил время?
tema!!h/oCFxjpRA 287 731175
>>31147
Праздные вечера с Вашей матушкой проводил.
tema!!h/oCFxjpRA 288 731181
Братик, попустись, речь ведь о ленивой разработке по желанию день через день/неделю, а не о фуллтайм поте.
tema!!h/oCFxjpRA 289 731182
+ наличие сети
tema!!h/oCFxjpRA 290 731185
Нахуй я кормлю зелень?
291 731211
>>31147

>И это ты родил за почти пол года разработки?


Только тролль или безыгорник может не увидеть в том ролике кучу проделанной работы. Все эти хтмл-менюшки с подсказками и стилями отжирают время только так. Я уж не говорю о том, что это мультиплеер.
292 731292
>>31211

> кучу проделанной работы


Как человек, пытавшийся в своём время писать игори на сраном sfml - неистово двачую.

>>30965
Прикольная абилка это ты сам сочинил или с гендзи из овера скопировал?
Алсо, по поводу расходников - ты не думал заменить банальные тиры2 на что-то более уникальное? Или это просто сейчас не приоритет?
tema!!h/oCFxjpRA 293 731306
>>31292

>sfml


Жму руку. Когда-то HGE ковырял, хоть это другое.

>Прикольная абилка это ты сам сочинил или с гендзи из овера скопировал?


Дружок предложил дэш, я прикинул, что реализовать просто - перманентно меняем позицию, накидываем анимацию из одного кадра, за счет твинов в phaser'е получается даже плавное перемещение. В оверы не играл, в других играх встречается часто, ничего необычно.

>Алсо, по поводу расходников - ты не думал заменить банальные тиры2 на что-то более уникальное? Или это просто сейчас не приоритет?


Тиры - очередная неудачная идея, через которые просто нужно пройти. И да, не приоритет. Я как бы по функционалу угорал, контент был на уровне заглушек, лишь бы запустить и протестить с анонами.
n9z7iqqne8w21.jpg149 Кб, 820x586
tema!!h/oCFxjpRA 294 731309
>>31306

>перманентно


всегда путаю с instantly
tema!!h/oCFxjpRA 295 731350
>>31342 (Del)
Уффф, зачем так жестко-то?
tema!!h/oCFxjpRA 296 734849
http://fs0321.ddns.net/
тестим, пишем баг-репорты. за контент и баланс не предъявляем, т.к. еще не налажены
297 734858
>>34849
У меня висит картинка загрузки и всё, инет нормальный в хд смарю ютуб.
whereisfocus.png1,3 Мб, 970x767
298 734922
>>34849
О, все стало по лучше и отзывчевее, нашел 1 баг с фокусом (пик1) если убрать фокус с вкладки то игра работает дальше (все анимации, прожектаелы, перемещение камеры), а юниты не обновляют своих позиций, так вот на скрине видно как юниты встали в центре, а прожектаелы летают слева снизу, при этом если вернуть фокус окну - все начинает работать as expected.

Еще за мага можно бить нейтралов, а они не дерутся в ответ (радиуса не хватает)
tema!!h/oCFxjpRA 299 734936
>>34922

>баг с фокусом


Фича ғой. Когда у вкладки нет фокуса и она вообще не отображается на экране, браузер снижает на ней производительность и некоторые вещи делает странно. Раньше, если уйти с вкладки и вернуться на нее спустя пару минут, все почти намертво зависало и "пропердывалось" через время, непроизошедшие перемещения происходили за долю секунды. Я связываю это с tween'ами - штуками в фазере, которые позволяют перемещать игровые объекты плавно, в координаты XY за N миллисекунд, а не мгновенно и с рывками. Они в фоне то ли вообще не обрабатываются, то ли медленно. Короче, чтобы не было проблем, я проверяю фокус на вкладке, и, если его нет, то не обновляю позиции юнитов. А с прожектайлами еще не сделал такое, поэтому и возникает эффект. Надо.
Проверять, что у вкладки фокуса нет, но она все равно на экране, смысла не вижу (и не знаю, возможно ли это), т.к. это редкая ситуация. Можно как-то визуально это обозначать, писать мол фокуса нет, затемнять экран.

>Еще за мага можно бить нейтралов, а они не дерутся в ответ (радиуса не хватает)


Пока не проработал это. Еще есть проблема с тем, что скиллы простреливают через лес.

>>34858
Браузер?
Мб проседание интернета в тот момент у кого-то из нас было. Чекни еще раз, если не сложно.

создатель колизеуса похвалил и заджойнился в дс сервер, лул
300 735047
>>34936

>создатель колизеуса похвалил и заджойнился в дс сервер


Ебать, это успех, п. А он откуда кстати? Не укр случайно?
301 735091
>>35047
Он из бразилии
302 735118
>>01894 (OP)
прочитал тредю по диагонали
но ОП выглядит молодцом
удачи, оп!
303 735186
>>35047
литерали ху и литерали ват ит зис

>>35091

> он из бразилии


ясно одна пидораха похвалила другую
tema!!h/oCFxjpRA 304 735445
Оптимизирую для встраивания в милипиздрические айфреймы на игровых порталах, первый ориентир - crazygames с минимальным размером 922 x 487. Примеряю рекламку. Еще между катками видео показывать можно.

Запилил мини-справку для хлебушков.

Охуеваю от себя, дело почти доведено до конца и не дропнуто. Осталось раскрасить карту, получше расставить нейтралов и наладить баланс. С одной стороны игры так и нет. Со стороны ио-дрочилен в стиле насади врага на меч или скушай чужой кружочек - она очень даже есть.

Присмотрел бюджетный vps от ruvds. Всего 1.7$. Одно ядро xeon 2.2 ghz, озу 512 мб, 10гб hdd. Должно хватить для начала.
305 735448
>>35445

>дело почти доведено до конца


Чё?
Ты серьезно сейчас?
Игра-то где?
Не вижу игры.
У тебя сейчас геймплейно готово примерно 1% от полноценной игры, хотя бы инди масштаба, которую можно было бы продавать в стиме.
306 735451
>>35445
А на самолете можно будет полетать?
tema!!h/oCFxjpRA 307 735453
>>35448
А я ставил целью сделать полноценную игру? Ты бы хоть старался, братик. Реквестирую жс-шизика, а то скучно стало.

>>35451
Конечно! НЫРЯЕМ ПО ССЫ...
308 735473
>>35453
От слова игра у тебя ничего нет, конечно если сервер будет онлайн 24/7 найдётся десяток шизиков на весь мир которые может и будут гамать, обычные же игроки уйдут в обычные мобилко парашные красочные игры.
tema!!h/oCFxjpRA 309 735475
>>35473
Хорошо, ты меня убедил. Какие предложения?
tema!!h/oCFxjpRA 310 735490
Какой же дерьмовой идеей были ранкед битвы. Какое-то вставание в очередь, ожидание, штрафы, хитровыебанный рейтинг. Этим никто не будет заниматься в бесконтентной безонлайновой иошке. Обидно, но надо убрать. Только рейтинг для мотивации оставить.

Режим гостя/регистрацию/логин тоже нахуй, слишком душно. Ввел ник - произошла авторегистрация чтобы рейтинг хранить в базе - сразу в бой.

Сила в простоте.

Кстати, подгоняя под маленькие размеры окна, понял, что и на мобилки перенести проблемы не составит.
1.mp41,5 Мб, mp4,
1360x664, 0:07
tema!!h/oCFxjpRA 311 735501
очередной пост уровня двач я посрал

максимально сократил путь от открытия игры до вступления в битву, даже выпилил выбор комнат. колизеус сам приконнектит к активной со свободными слотами или создаст новую. когда из игры ливает последний игрок, комната уничтожается. если бы не эта либа, хуй бы я когда-то взялся за такую игру
312 735603
>>35501
Вооот, я анон что выше писал. Перво наконец годное что сделал, одобряю, может не всё еще у тебя потеряно.
313 735712
>>35490

>Сила в простоте


Этот просветлился.

Продолжаем зоонаблюдать. Анончик, как выкатишь - дай ссылку.
314 735714
>>35501
И это правильно, юзверь должен вкатываться в игру без задержек. ТФ2 слава и Колизею тоже
tema!!h/oCFxjpRA 315 735833
http://fs0321.ddns.net/
тыкаем. последний запуск на локальном, на днях впс
tema!!h/oCFxjpRA 316 735858
Щас довели с анонами из бэ катку до конца, и оно играется НЕ ТАК УЖ И ПАРАШНО, я бы даже сказал неплохо. С прошлых разов увеличил хп всем в 2 раза, т.к. хуйня была - пришел - умер за 1 сек - по новой. Из проблем - упирание в 10 лвл, денег становится много, предметов для покупки больше нет, крч лейтгейма вообще нет.

И для меня показатель, что рандомные аноны стали НАМНОГО дольше задерживаться в игре. Избавление из кружочков, нейтралы, другие мелочи сыграли очень сильно.

Аж настроение из говна поднялось.

Серв держу до конца дня.
317 736023
>>35714

>ТФ2


Пардон, это что?
319 736154
>>01894 (OP)

>Аж настроение из говна поднялось


Ничего скоро вернётся
320 736157
>>35501
Ебтвоюмать. Ты еще рекламу с увеличением хуя повесь на весь экран. Нет выбора языка: играют русскоговорящие - высирает попап "ландан из зе кепител оф грейт бритн"
Хуита какая-то, потыкал 3 минуты и ливнул.
321 736195
>>36194 (Del)
А вот и главный серун, думаешь до тебя дело не дойдёт? Зря
322 736199
>>36196 (Del)
Я не про него. Чел получил больше обвинений, чем заслужил. My bad. Но я про тебя старикан
323 736226
>>36029
Я загуглил и получил такой же результат, но решил, что не так понял.
324 736230
>>36180 (Del)

>Ищите ошибки аноны


Зачем?
325 736262
>>36230
Как будто можно делать игры и оставаться анонимным.
Кого ещё в /gd не сдеанонили-то? Всем поебать.
tema!!h/oCFxjpRA 326 736426
Ну вот и всё.

https://fantasio.space/

Если вдруг не открывается, значит, у вас dns-сервера еще не подцепили домен.
3.png302 Кб, 776x588
tema!!h/oCFxjpRA 327 736430
4.png1,5 Мб, 1195x663
tema!!h/oCFxjpRA 328 736431
329 736432
>>36431
Я в телевизоре!
хуй в очке
tema!!h/oCFxjpRA 330 736553
Adsense в процессе рассмотрения заявки, также веду переговоры с Adinplay.
В качестве запасного варианта crazygames, чтобы монетизироваться у них, в самой игре не должно быть рекламы (но можно встроить через их SDK). Выглядит неплохо, у них 17 млн посетителей в месяц, раздел с иошками не очень большой, даже непопулярные получают траффик.
tema!!h/oCFxjpRA 331 736704
На itch на 13 месте по тегу мультиплеер в new and popular, поддержите братишку, сделайте братский клик с этой страницы:
https://itch.io/games/new-and-popular/tag-multiplayer
image.png380 Кб, 1050x447
332 736705
>>36704
Кликнул, но поиграть не удалось. Сначала было Error 1 вроде, потом что имя занят
tema!!h/oCFxjpRA 333 736707
>>36705
Просто некоторым людям вход воспрещен)))))))))))))))))))))))
на самом деле хуй знает что у тебя там, первый раз такое
lan.jpg72 Кб, 700x666
tema!!h/oCFxjpRA 334 736769
Поднимается на итче. По некоторым тегам входит в топ 5-10, кое-где даже не в new and popular, а просто popular.

Не щитпощу, просто показываю путь от двух желтых йоб на экране до того, что имеем.
335 737100
>>36769
Просто так сходу и в топы? Ебать мое почтение.
tema!!h/oCFxjpRA 336 737103
>>37100
Итч это помойка, так что, не показатель.

Adsense не приняли, ожидаемо.

Зато с Adinplay добазарился, всё аппрувнули, выслали инструкцию для встраивания, после этого доступ в кабинет дадут.

Crazygames пока Awaiting Moderator Approval.

iogames.space требуют ПЯТЬСОТ СЛОВ в описании, geez. Надо награфоманить.

Некоторые аноны заинтересовались, возвращаются, тыкают, фидбек дают.

Эх, ботов бы еще...
337 737106
>>36769
Полгода, однако
338 737517
ОП, не нашел нигде треда про фейзер, может ты подскажешь.
У меня спрайт персонажа полтора тайла высотой, поэтому второй уровень деревьев срезает ему башку. Как эту проблему решать?
Ладно деревья я сделал объектами, но здания, заборы и все остальное я хочу просто рисовать в редакторе карт.
tema!!h/oCFxjpRA 339 737544
>>37517
Как у тебя устроено перемещение по миру? Произвольное, не по клеточкам? Как у тебя определяются коллизии? Навскидку: используй аркадную физику с нулевой гравитацией, объекты вообще не будут пересекаться.
340 737570
>>37544
Да, произвольное, вектор скорости добавляю осям. Для коллизий использую слой, отмечаю там основания построек. Физика и так аркадная без гравитации.
Представь в тайледе колонну, одна клетка это нижняя часть с коллизией, а над ней на новом слое клетка с верхней частью, с максимальным z индексом, этот слой должен перекрывать персонажа. Если перс за колонной стоит, проблем нет. А если перед, то верхняя часть колонны срезает ему башку, потому что высота перса больше, чем высота нижней части колонны.
Короче я нашел уже решение. Нужно задавать глубину тайлам, как объектам. Но движок не поддерживает разные z индексы у отдельных тайлов, поэтому в create() автоматически создаю новые пустые слои и наполняю их этими верхушками из тайледа, а уже слоям назначаю глубину.
341 737639
Респект, чел
tema!!h/oCFxjpRA 342 737668
>>37570
да, все верно, сделал бы так же. покажи что пилишь, интересно

>>37639
videoplayback.mp42,3 Мб, mp4,
640x480, 0:36
343 737686
>>37668
Вот такую йобу пока что сделал. Стек такой же, но без колизея.
tema!!h/oCFxjpRA 344 737690
>>37686
Без колизея в смысле нода и голые вебсокеты или вообще без сети?

Вроде ты даже интерфейс делаешь на фазере, тут респект, я сразу забил на эту идею.

Знакомый тайлсет, хех.

Начало бодрое, но путь предстоит нелегкий.
tema!!h/oCFxjpRA 345 737692
ладно, судя по чату это ммо
346 737693
>>37690
Ага, ммо на простых сокетах. Их вполне хватает для синхронизации объектов в открытом мире.
Интерфейс пока просто для галочки, чтобы виден был лут для квеста, и то намучался пока эти три элемента вместе сводил. Надо ещё посмотреть какие есть готовые интерфейсы, чтобы с геймпадом тоже хорошо работали. Пока занят более важным делом, сменой локаций и мобами. Перед сном смотрю что Пинтерест подобрал по пиксельарту.
Да тут работы еще на годы, но я и не спешу.
347 737703
>>01894 (OP)
Не секрет, где, как и за сколько хостишься? Мне скоро понадобится хостинг для своей игры на node/socket.io, можешь что посоветовать?
meme.jpg277 Кб, 1257x839
tema!!h/oCFxjpRA 348 737710
Сделал очень смешной мем.

>>37703
https://www.kamatera.com/Products/250/Pricing
Очень советую, от 4$ сможешь подобрать себе что-нибудь. У меня щас триал за 25$, взял на похуй, всё летает. Потом буду переходить на максимально дешевые варианты. Рувдс за 130р (2.2 ghz, 512мб) лагал. Но в тот день у меня инет лагал, не сразу это понял. Так что не знаю, в сервере (вероятнее всего, т.к. 512мб это смех, не знаю, чем думал) была проблема или в инете, лол. Мб позже протестирую.

Расскажешь/покажешь чо за игра у тебя?
349 737722
>>37710
Спасибо, почитаю их планы.

О моей игре все и так услышат, когда придёт время.
350 737793
>>37686

Теперь это блядь официальный Фазер-разработки тред. ОП походу не одного меня вдохновил, гыг.
351 737834
0 игров онлайн.
352 738063
>>36704
Как можно было пушить на итч игру, не добавив криптоботов по скрипту хуячащих? Там же делов на 3-4 дня разработки, карта то одна, логика простейшая.
353 738913
>>01894 (OP)
Какой у тебя примерно за день онлайн на данный момент?
В каком состоянии договорённости с платформами?
Рассчитываешь ли, что платформы с io играми приведут основной трафик? Или есть ещё какие-то варианты?

И вообще, поделись плз, какие планы на развитие? Правильно ли я понял, что сейчас MVP готов и ты просто хочешь понять зайдёт ли геймплей игры, чтобы продолжать развивать?
githubPNG33.png10 Кб, 524x512
tema!!h/oCFxjpRA 354 738960
>>38913
Crazygames реджектнули (причину не сообщают), iogames засухарилилсь, запросили одно изменение, я его сделал, после этого перестали реагировать. Почитал, у многих так. Мб опубликуют, мб нет, мне уже похуй.

5-7 человек в день заходят.

На гитхаб думаю выложить сегодня-завтра и не ебать себе мозги, мб аноны присоединятся к такой фановой разработке. Было бы неплохо донатами пару баксов на сервер ежемесячно собирать, чтобы оно продолжало жить. Рейт идею.
tema!!h/oCFxjpRA 355 738963
Буду принимать ваши пуллреквесты, старательный анон сможет ботов запилить, классно же будет.
sage 356 738966
>>38960
Вот и делай блядь игры. Нахуй так жить?
tema!!h/oCFxjpRA 357 738988
https://www.twitch.tv/ryancooper2004

базарим за жизнь, за квадраты гологеймса, переезжам на гитхаб, слушаем музыку. можно залететь в дс
358 738992
>>38960
В самом начале тренда тебе предлагали на гит выложить и на тс перейти, анон гавна не посоветует
tema!!h/oCFxjpRA 359 739003
https://github.com/nvtem/fantasio.space

Говнокода и откровенного бреда очень много, т.к. делал на скорость, за это можете не предъявлять. Рад любым пулл реквестам с облагораживанием кода и новыми фичами.
sage 360 739023
>>38992

> на тс перейти


На Haxe
361 739302
>>39003
Во заебись, давно пора было. Я тебе могу даже базу подвести: внести улучшение в твой уже поднятый проект проще, чем пилить с нуля свой форк.
15020183904990.jpg62 Кб, 500x522
362 739504
>>38988
Что там с квадратами?
363 740002
Ого, нихуя себе ты молодец. Бесплатный бамп тебе.

Мимо пытался как-то помочь с балансом.
tema!!h/oCFxjpRA 364 740020
>>40002
от души брат

только я опять все сломал, т.к. надо было живучести и динамики добавить. вот бы кто снова посчитал, на этот раз уже есть ориентиры как оно должно выглядеть.......

тем временем, немного поправил карту, нейтралов по-другому расставил, неспешно накидываю другие коммиты, изучаю блендер и юнити

>>39504
их нет. дрочит-дрочит, а кончить никак не может
tema!!h/oCFxjpRA 365 740021
может кто пошагово на пальцах расписать алгоритм ботов для подобной игры? ботостроения дискач стартует здесь
366 740028
>>40021
На словах это просто. Смотришь что делают боты в альтернативных играх подобного жанра, представляешь как они реализованы, делаешь.
Проще всего делать так - Посылаешь бота на самую пробитую линию, если враги в радиусе, он начинает их бить, как только хп/мп мало, он убегает хилится. Это в грубой, но простой форме.
Потом начинаешь довешивать разные условия, по примеру добить/убежать противника/ждать кд скиллов/отдаться ли противнику, или убежать.
Главное в конце не забывать что игроку должно доставлять удовольствия играть с ботами, если они будут играть слишком токсично, это будет вызывать дикое желание абуза механик против бота(а они всегда будут), либо же дропнуть игру.
Так-же в данный момент самый максимум что у тебя получится - Это бот который идёт на линию/лес/фармит/не умирает по возможности/доджить скиллы, и пытается попасть своими. Единственный вариант добавлять сложность боту, это искусственно давать золото/опыт/статы, по другому бот всегда будет сосать, не смотря на его 0мс реакцию.
В общем если есть вопросы пиши.
367 740091
>>40028

>по-другому бот всегда будет сосать,


Alphastar смотрит на тебя с неодобрением. Другой вопрос что труда на него положили -ояебу.
368 740194
>>40091
Сразу видно что не шаришь в теме.
В старкрафте боты(Те которые тренируются на миллионах чужих игр) - Мгновенная реакция, идеальный микроконтроль, то что может делать алгоритм, но выигрывается это абузом тактики, или чем-то не ординарным. Если же боту режут до человеческих ограничений, отключают мапхак, то даже в равном макре он сосёт, реакция не спасает от тактических ходов, которые он естественно не может просчитать, это же не шахматы чтобы наперёд знать всё.
В доте - Тот который опенАи. Опять же идеальное микро, ясно по какой причине, но всё остальное сосёт. 1х1 на линии да, он заставит потеть про игрока, но как только начнётся его шатание/хитрые мувы, всё, гг. В 5х5 так это сосо с проглотом, опять же из-за мувов и тактики людей.
Яж говорю, если не шаришь в теме, не стоит бросаться словами за AI, единственное где он превосходит людей, это реакция, скорость мышления, и то, до той поры, если его не занижают для честной игры на равне, тогда и там сосёт.
369 740199
>>40194

>Те которые тренируются на миллионах чужих игр


Эти боты появились относительно недавно благодаря нейроночкам.

В первой доте бот делал как этот >>40028 описал только еще и с костылями. Стандартный AI варкрафта кастовал скилы когда врагов больше 2, а кастомный хак прям удалял способности у героев чтоб этого небыло.

Вообще деревья и стейты всему голова, я своим ботам закидываю "знания" уровня где враг, где воюют, где квест и что может сделать мой бот прямо сейчас и потом просчитываю лучшее решение (просто интом).
Плюсы: бот умнее чем просто "пошел в атаку - получил пиздюлей - ушел под фонтан"
Минусы: чем сложнее игра, тем больше стейтов нужно дать боту и тем больше времени на просчет.

Еще инфа, боты в каэс 1.6-сурс делают примерно так же в конкретной катке, но после конца раунда они сохраняют "лучшие исходы" чтобы не бегать в одну и ту же локу и постоянно умирать.

>>40020

>изучаю юнити


Забудь про вебгл и колизей, ты же помнишь мою простую демку, в которой даст боже 20 фпс будет))0
sage 370 740221
>>40194

>Яж говорю, если не шаришь в теме, не стоит бросаться словами за AI


> за


Слушай, свинка колхозная, а тебя не учили, что начинать сообщение со слов "ты не шаришь в теме" вредно для взаимопонимания с собеседником, а? Я хотел сказать что-то полезное, но ты со своим ЧСВ заслуживаешь только харчка в ебало.
371 750713
ОП ожил, немного поумнел, теперь будет пилить мобильные гонки на юнити на ассетах по большей части. Пока хз будет ли это изометрический вид или от третьего лица. Треки в блендере делать научился, надо будет таким же макаром начать делать поребрики и гардрейлы. Кар контроллер будет RCC или ACC.
372 750724
>>50713
Если ты реально поумнел, то сделаешь гонки сетевыми. На Photon PUN.
373 750728
>>50713
Прогресс не забывай постить. Интересное же!
374 750885
>>50728
Двачую. Оп конечно мальца ушлепок, но интересно же!
game.mp423,7 Мб, mp4,
1360x600, 0:26
temareloaded!!I43xfLv4/I 375 751221
674567457.jpg7 Кб, 247x250
376 751224
377 751226
ОП ты же делал Мобу? Уже выпустили или что случилось?
temareloaded!!I43xfLv4/I 378 751237
>>51226
туда контент и онлайн завозить надо, что анрил, посему был забит хуй
temareloaded!!I43xfLv4/I 379 751238
... мейби ботов и графон менее вырвиглазный запилю, и на мобилки закину
380 765781
ОПа создатель колизея в одну темочгу подтянул. Все-таки нет во мне жилки, криэйтерских способностей и одержимости что-то в соло сделать успешное. А делать таски как кодер это заебись.
1.mp46,2 Мб, mp4,
1360x664, 0:11
381 769702
по мелочи:
анимация смерти, а то раньше просто исчезали
телепорт на базу и к башням

начинаю делать ботов, первый кирпичик заложен

не отпускает меня эта хуйня. все-таки веселое время было, когда с горящими глазами что-то придумываешь и пилишь без опыта, а не формошлепствуешь на работе
382 769703
прогресс на гитхабе, ставьте пальцы вверх и звёзды давида
383 769705
Лоооол, ты вернулся??? ОПА!!

Ну теперь когда ты реалист и понимаешь суть происходящего, интересно будет последить, +1 анон в виверы на месте.
384 769725
Как же хочется запилить браузерную ммортс. Не типа клэш оф клэнс с улучшением зданий по 9 часов, а трушную, реалтаймовую, с большим процедурно-генерируемым миром, живущим неделями/месяцами, десятками игроков, десятками юнитов у каждого, добычей ресурсов, нейтралами. На первых порах два типа юнитов и зданий, графика квадратиками и кружочками. Это фигня, не суть. Над чем действительно стоит поломать голову, так это над адекватным перемещением кучек юнитов, чтобы не ходили сквозь друг друга, перестраивались, удобно контроллились в битвах. Это, сцуго, такой рокет сайнс, выглядит слишком сложно.

ОП
385 769888
>>69725
ЕА не потянуло концепцию, индюшатник жидко пернет в лужу. ЦнЦ Генералс онлайн ожидался и даже вышел в бету. Но проект прикрыли.
386 770166
>>69725
screeps же
387 770789
Оп, если ты еще жив. Пожалуйста, добавь пуджа.
388 770790
Тоже реквест сделаю, ОП добавь лольку какую нибудь!
389 771980
Оп, добавь в дискорде (Airin)
390 772387
ОП, сделай бочку!
image.png1,8 Мб, 1920x1080
391 772942
392 779642
оп жив?
393 779656
>>72942
Че это за сельская местность пьяных обезьян на карте? Топографически точный план поселка Кужлевка? Не хватает сельхоз совета и клуба на одной из сторон.
Тред утонул или удален.
Это копия, сохраненная 14 мая 2023 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /gd/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски