М.Двач / Gamedev

Этого треда уже нет.
Это копия, сохраненная 11 ноября 2020 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

258 Кб, 1120x640
Gamemaker Thread 23 авг 2017, 16:41 439561 В конец треда | Веб

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

Относительно недавно вышла вторая версия: GameMaker Studio 2, пиратки которой еще нет.
Стало НАМНОГО удобнее работать с тайлами, слои тоже помогают.

Так-то 1.4 может все то же, что и двойка, поэтому если жалко бабла, можно писать на старой версии. Но двойку будут развивать и она будет становиться только лучше.

Ответы439595439715443351454980457059457079458111458517458522488012493292493641494815497356500489500564500617504807526082526428526631526865533080535714536359542602623766

2 23 авг 2017, 20:31 2 439595

>>439561 (OP)
Двойка - недоделанная параша. Лагающая, забагованная и неудобная.
А 1.4 я купил с кучей индюшатины на хамбл бандле за 15 бачей и не жалею.

Ответы439598439620

3 23 авг 2017, 20:34 3 439598

>>439595
> Лагающая
Обнови пеку для учебы

>забагованная
Список багов в студию

>неудобная
Хз. я после 1.4 просто кайфую от скорости своей работы.

4 23 авг 2017, 22:52 4 439620

>Обнови пеку для учебы
У меня на десятилетнем ПК летает.

>Список багов в студию
А вот один баг я лично отрепортил. Функция keyboard_key_press в step event при 60 fps вызывала утечку памяти, крашила игру через некоторое время и не позволяла запуститься дебагеру - крашила его сходу. Понять в чём причина было очень тяжело.

>Хз. я после 1.4 просто кайфую от скорости своей работы.
Я периодически открываю 1.4 для туториалов. 2 намного удобней. Но воркспейсы всё равно недобработаны. Должно быть как-то по другому. То что есть - годится только для драг-н-дроп даунов.

Так что шлём этого >>439595 нахуй уже вдвоём.

Ответы439624

5 23 авг 2017, 23:08 5 439624

>>439620
Чем тебе конкретно воркспейсы не угодили? Мне больше нравится, нежели каша из окон в 1.4

Ответы439634

6 23 авг 2017, 23:46 6 439634

>>439624
В основном тем, что из-за боковых окон на воркспейсе места мало. Соответственно и окошки очень маленькие. Постоянно возникает горизонтальная полоса прокрутки. Чтобы нажать на неё нужно либо вырубать нижнюю панель (которая всё равно влезает назад после каждого запуска игры) либо таскать окно. И боковая панель всё время вылезает, если у тебя где-то в таба комната открыта.
Ну и без правой панели всё равно не обойтись, ибо навигироваться по воркспейсу невозможно. С выкрученным зумом невозможно разобрать, что там в окошках. При основном масштабе нужно тянуть несколько экранов, чтобы найти нужный обхект с открытыми ивентами.
Даже на домашнем 40ка дюймовом монике постоянно такая проблема. На мелком рабочем мониторе - просто невозможно пользоваться.
Такие дела.

Ответы439637

7 24 авг 2017, 00:11 7 439637

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

8 24 авг 2017, 15:19 8 439715

>>439561 (OP)
Зачем обсуждать гамак здесь? Если есть какие-то вопросы - на них ответят на форуме yoyo.
Если просто потрындеть - нас здесь полтора игродела.

Разве что перекличку провести.

Ответы439722

9 24 авг 2017, 16:00 9 439722

>>439715
Да пусть будет, жалко что ли.

10 24 авг 2017, 17:59 10 439740

Обновились тут малость
http://gms.yoyogames.com/ReleaseNotes.html

Ответы439745

11 24 авг 2017, 19:04 11 439745

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

Ответы439843

12 25 авг 2017, 10:45 12 439843

>>439745
Ага, круто. Ну и где блеать теперь узнать значения переменных?

13 26 авг 2017, 04:00 13 440002

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

Ответы440003

14 26 авг 2017, 04:02 14 440003

>>440002
Пока не так много отличий на самом деле кроме удобства. А так я бы не стал переносить старый большой проект в двойку потому что импорт насоздает кучу скриптов совместимости. Нахуй надо.

15 30 авг 2017, 17:26 15 440866

Как вытащить переменную из комнаты, в которой ты находишься в данный момент?

Допустим у меня есть две комнаты room_01 и room_02

В create event первой комнаты записано: shadow_level = 0
В create event второй: shadow_level = 1

Как объекту фонарик, находящемуся внутри комнаты добраться до этих значений?

Если я пишу фонарику в create event:
shadow_level = room.shadow_level - нихера не работает

если я пишу
shadow_level = room_01.shadow_level - получаю 1, как и положено. Но мне нужен shadow_level не строго заданной комнаты, а текущей!

Ответы441000441336

16 31 авг 2017, 03:50 16 441000

>>440866
Используй глобальную переменную global.shadow_level

Ответы441078

17 31 авг 2017, 14:04 17 441078

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

Ответы441079

18 31 авг 2017, 14:08 18 441079

>>441078
их нет

19 1 сен 2017, 13:39 19 441224

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

Круто.

20 2 сен 2017, 08:56 20 441336

>>440866
Не пиши ничего в коде инициализации комнаты, исполтщуй для этого объекты.

Ответы441338

21 2 сен 2017, 11:46 21 441338

>>441336
Почему не использовать код инициализации комнаты для инициализиции комнаты при переходе из комнаты в комнату?

Пока что я остановился на том, что пишу там
with obj_game {}
и задаю все нужные параметры.
Это лучше, что иметь в obj_game begin_step_event, следящий за сменой комнаты.

Ответы441339

22 2 сен 2017, 11:49 22 441339

>>441338
> следящий за сменой комнаты
Используй room_start и room_end эвенты, юный падаван.

Ответы441344

23 2 сен 2017, 13:34 23 441344

>>441339
>room_start и room_end эвенты

Опа нихуя. Я о них даже и не знал.

Сначала идут create ивенты объектов, потом create event комнаты, потом начинаются begin_step ивенты.

А когда выполняется ивент room_start?

Ответы441347

24 2 сен 2017, 14:06 24 441347

>>441344
Ладно, ты ж не гугл. Можешь не отвечать.

https://files.64digits.com/tahnok100/Order_Of_Events_In_Game_Maker_Rev.1_Tahnok100_.pdf

Ответы441348

25 2 сен 2017, 14:07 25 441348

>>441347
Ну это для гм6.1 актуально, в гмс:2 может быть по-другому.

26 3 сен 2017, 11:27 26 441431

https://www.youtube.com/watch?v=G1WxKEk6Wrw

27 17 сен 2017, 17:57 27 443345

Аноны, туплю. Вообщем реализовал такую камеру. Когда нажимаю мышкой могу "тащить" вид. Т.е. тоже самое когда в стандартном windows просмотрщике фото приближаешь фото и перемещаешься по нему. Сделал все, но один нюанс работает немного криво. Ограничил вид с помощью clamp и по координатам. Но когда я упираюсь в край карты с большим ускорением происходит кратковременный лаг.
Как правильно ограничить вид чтобы он не выходит за пределы комнаты? Чтобы он как влитой останавливался у края комнаты а не резко "пружинил"

Ответы443346

28 17 сен 2017, 18:11 28 443346

>>443345
покажи свой код и сними на видео этот эффект

Ответы443347443348

29 17 сен 2017, 18:34 29 443347

>>443346
http://185.159.82.148/heroes/

30 17 сен 2017, 18:39 30 443348

>>443346
Код
https://pastebin.com/GBS6JF9j

Ответы443425

31 17 сен 2017, 18:58 31 443351

>>439561 (OP)
Единственное серьезное слабое место в 1.4 это редактор комнат. Ну и редактор кода можно подтянуть. Остальное можно вообще выпилить, только мешает. По мне так гамаку гуй вообще не нужен, особенно гуй объектов.

32 18 сен 2017, 03:56 32 443424

Купил сегодня вторую версию, заодно появилась возможность поставить легальную 1.4. Вот не знаю какую юзать. Импортнул проект из 1.4, приятно удивило то, что все нормально заработало из коробки. В 1.4 не нравился редактор комнат и дебаг (а именно невозможность добавлять вотчи). В двойке не понравилось, что отошли от интерфейса, к которому я привык ещё со времен версии GM5, но думаю привыкну. Есть ещё какие подводные камни?

Ответы443427445035

33 18 сен 2017, 04:29 33 443425

>>443348
у тебя сначала идет clamp, а потом движение камеры
clamp должен быть в конце после всего кода

Ответы443483

34 18 сен 2017, 04:42 34 443427

>>443424
Юзай вторую. К интерфейсу привыкнешь.

Ответы445035

35 18 сен 2017, 10:50 35 443483

>>443425
Спасибо, помогло!

36 18 сен 2017, 13:39 36 443531

Подскажите туториалов по камере и интерфейсам в GMS2

Ответы443533

37 18 сен 2017, 13:41 37 443533

>>443531
https://www.youtube.com/watch?v=rrn_2hxL11A
https://www.youtube.com/watch?v=Pd54vNc2N4E

Ответы443547

38 18 сен 2017, 14:24 38 443547

>>443533
Вот ты серьёзно думаешь, что я не смог в гугле вбить gms2 camera tutorial?

Ответы443548

39 18 сен 2017, 14:26 39 443548

>>443547
А чем тебя эти не устроили? Сполдинг норм рассказывает же.

Ответы443549443550443556

40 18 сен 2017, 14:30 40 443549

>>443548
Сполдинг норм, я с него и начинал. Но все его туториалы максимум поверхностные, для самых ньюфагов. Уже давно не интересно.

Но у меня уже появились идеи, почему у меня интерфейс колбасится при движении. Буду пробовать.

Ответы443552

41 18 сен 2017, 14:31 41 443550

>>443548
Ну и как тебе туториал сполдинга по one way platform? Норм что ли?

Ответы443552

42 18 сен 2017, 14:33 42 443552

>>443550
Не смотрел, я только самые основы посмотрел, дальше сам уже.

>>443549
Дак ты б код вбросил.

43 18 сен 2017, 14:54 43 443556

>>443548
А ещё он коллизии объектами делает.

Ответы443557

44 18 сен 2017, 14:59 44 443557

>>443556
А надо чем?

Ответы443558

45 18 сен 2017, 15:00 45 443558

>>443557
Тайлами.

Ответы443560

46 18 сен 2017, 15:04 46 443560

>>443558
Ну это если у тебя вся игра сделана под квадраты/прямоугольники, то мб и да.

Ответы443561

47 18 сен 2017, 15:09 47 443561

>>443560
Любой формы, которая описывается мат. формулой очень легко.

Ознакомься:
https://forum.yoyogames.com/index.php?threads/on-slopes-and-grids-subpixel-perfect-topdown-movement-and-collision-line-without-objects.4073/

И дальше модифицируешь под свои нужды - объекты разного размера, тайлы разной формы.

Ответы443562

122 Кб, 900x580
48 18 сен 2017, 15:18 48 443562

>>443561
У меня проще система. Объект коллизий, который я просто поверх тайлов стретчу.

97 Кб, 1920x552
49 18 сен 2017, 15:59 49 443594

Пошёл по туториалу спалдинга.

Там, где у него получился нормальный экран с выставленным размером у меня получилось пикрелейтед. Что это за нахуй?

global.camera = camera_create();

var view_matrix = matrix_build_lookat(x,y,-10,x,y,0,0,1,0);
//var projection_matrix = matrix_build_projection_ortho(1280,768,1,10000);
var projection_matrix = matrix_build_projection_ortho(1920,1080,0,10000);

camera_set_view_mat(global.camera,view_matrix);
camera_set_proj_mat(global.camera,projection_matrix);

view_camera[0] = global.camera;

Ну и ешё спалдинг забыл views включить. Без этих строк просто чёрный экран:

//Enable the use of views
view_enabled = true;
//Make view 0 visible
view_set_visible(0,true);

Ответы443598

50 18 сен 2017, 16:03 50 443598

>>443594
это фуллскрин?

Ответы443601

51 18 сен 2017, 16:08 51 443601

>>443598
Это окно.

Ответы443602

52 18 сен 2017, 16:10 52 443602

>>443601
а значения x и у какие?

Ответы443604

53 18 сен 2017, 16:15 53 443604

>>443602
Где в комнате поставил, такие и значения.

У него походу viewport через интерфейс настроен.

Добавил:

view_hport[0]= 1080;
view_wport[0] = 1920;

//Enable the use of views
view_enabled = true;
//Make view 0 visible
view_set_visible(0,true);

window_set_rectangle((display_get_width() - view_wport[0])0.5,(display_get_height() - view_hport[0])0.5,view_wport[0], view_hport[0]);
surface_resize(application_surface,view_wport[0],view_hport[0]);

заработало.

Ответы443750

54 19 сен 2017, 08:52 54 443750

>>443604
Хоспади, вчера за 2 часа, сидя с температурой 38 градусов, не имея никаких знаний, кроме кривого гайда, я сделал камеру лучше, чем у этих уёбков из One dog story.
Да, у меня бомбит от них.

Ответы443753

55 19 сен 2017, 08:55 55 443753

>>443750
Небось они по тому же гайду от Сполдинга и делали. У него так же тошнотворно кобасит камеру после остановки движения (но не так сильно, как в собаке, у них делитель скорости выше)

56 21 сен 2017, 14:03 56 444191

Какой примерный алгоритм чтобы сделать gui. Допустим у меня есть спрайт 16x16 с рамкой окна. Но т.к. окна могут быть разного размера этот спрайт надо как-то разбивать на куски. Т.е. берем угол потом скейлим (или просто кучу 1х1 рисуем) вернюю плашку на заданный размер х. Потом опять уголок. Верхушка готова. Нашел функции draw_part, как я понимаю надо использовать ее?

На ютубе примеры что я нашел рисовали окошки с помощью draw_rectangle или вообще draw_line, что мне не очень подхожит. Нужно чтобы окно создавалось именно из кусков спрайта.

Ответы444197

57 21 сен 2017, 14:13 57 444197

>>444191
нихуя не понял

Ответы444216

58 21 сен 2017, 14:21 58 444198

Cап, мейкеры. Решил вкатиться в гейммейкер и сделать что-то для души. Решил погуглить гайдов, но они или легкие, по вещам, которые знает любой за первые курсы обучения, или по очень узко направленным вещам. С чего начать? Есть ли по gml'ю учебник? Гугл не помог, хотя и искать мог хуёво. Всякие ютуб канальчики, гайдики, которые разжуют сложное, а лёгкое опустят до гиперссылок на другие их ролики. Или тексты. С меня как обычно.

Ответы444199444200444235

59 21 сен 2017, 14:23 59 444199

>>444198
http://rgho.st/private/6MZcxFy7v/6ccef8663dff78ae101ef3ac3d60e13c

Ответы444231

60 21 сен 2017, 14:32 60 444200

>>444198
Если по английски понимаешь, то рекомендую оффициальный мануал читать. Он у них лучше любого учебника написан. Я такое редко встречал, обычно мануалы больше для продвинутой аудитории подходят.

Ответы444231444235

61 21 сен 2017, 17:22 61 444216

>>444197
Ну во многих играх окно ui рисуется ж собираясь по кусочкам из спрайта а не с помощью функций движка..

Ответы444217444242

62 21 сен 2017, 17:40 62 444217

>>444216
Теоретически ты можешь на GUI слой пилить свои элементы и они будут скейлиться вместе с размером GUI и не надо будет нарезать.

63 21 сен 2017, 18:00 63 444231

>>444199
>>444200
Спасибо, анончики

64 21 сен 2017, 18:17 64 444235

>>444198
На Hellroom есть "Школа GML Архив". Но если не абсолютный новичок, то вперед реализовывать проект параллельно читая справку. Справка у гамака как уже сказал >>444200 , хороша. Что-то более специфическое спрашивают на форуме yoyo, на русских сайтах бесполезно. Уже почти все умерли.

16 Кб, 233x248
65 21 сен 2017, 19:01 65 444242

>>444216
Бери пикчу рамки (допустим, 9696), руби на мелкие(типа 3232), делай функцию, которая будет рисовать тебе рамки любого размера по кусочкам из твоего стрипа. На пикче чёрно-жёлтое говно - твоя рамка, красные перпендикулярные и прозрачные штуки - линии разреза.

Ответы444267

66 21 сен 2017, 21:40 66 444267

>>444242
Так и сделал. Спасибо за совет.

67 21 сен 2017, 21:52 67 444272

На всякий случай отпишу и в эту тему тоже.

Требуется сделать прототип игры на Game Maker Studio 2. Ничего сверхъестественного - список фич, которые требуется реализовать скину. В основном это ходьба, менюшки и т.д. Ничего сложного.

Контакты - f=H.orgmANUSlisH5GtPUNCTUMrqKxu

Работа оплачивается

Ответы444444

3,4 Мб, webm,
1024x768, 0:14
68 22 сен 2017, 18:50 68 444444

>>444272

Ответы444680

69 23 сен 2017, 14:22 69 444680

>>444444
бля, ещё 1 гет просрали

Ответы444717444725

70 23 сен 2017, 15:39 70 444717

>>444680
А по-моему это шин и суть /gd/

6,8 Мб, webm,
1024x768, 0:22
71 23 сен 2017, 15:58 71 444725

>>444680
Ничего себе просрали. Гет в ГД взяли игрой. Это ли не вин?
Я сделал это за один день.

72 25 сен 2017, 00:27 72 445035

>>443427

>>443424-кун репортинг ин.
Да, GMS2 божественна. Наконец всё для людей, Yoyogames молодцы, что не побоялись всё так радикально переделать. 1.4 теперь воспринимается как идеологически устаревшее, глюченное нагромождение костылей. Ни капли не жалею потраченных 1500 рублей.

Ответы445039445040

73 25 сен 2017, 00:39 73 445039

>>445035
Рад за тебя, пили годноту.

74 25 сен 2017, 00:50 74 445040

>>445035
Вот только на десктоп пилить никакого интереса нет.. по крайней мере у меня. А мобильные и хтмл5 модули стоят дорого.... очень дорого даже учитывая региональные цены в стиме. Учитывая что под боком юнити который во всем лучше.

Ответы446661

75 26 сен 2017, 01:22 75 445259

В 1.4 раздражает гуй. Сделали бы гм фрейморком и все настройки проекта в json. Удобнее было чем эти лагающие Delphi окошки с мерцающим дефолтным скином... Я с этого реально охуел еще в 2010. Мерцающие епта окошки... В дорогущем софте. Гуй не приспособлен совершенно для работы без мышки, что тоже очень неудобно.

Ответы445262445333

76 26 сен 2017, 01:49 76 445262

>>445259
Купи двойку

77 26 сен 2017, 11:49 77 445290

Внимание! Внимание!

В гамаке недостаточно просто уничтожить data structure (например ds_grid) функцией ds_grid_destroy(name)

Необходимо также очистить указатель на неё
name = noone;

Иначе если какой-либо ещё объект создаст новую data structure, твоя переменная name может снова стать указателем на data structure, только уже другого объекта.

Этот долбаный баг преследовал меня месяц. Наконец я понял в чём дело. Может ещё кому-то пригодится.

78 26 сен 2017, 14:05 78 445333

>>445259
>Сделали бы гм фрейморком и все настройки проекта в json.
В 1.4 так всё и есть, только проект хранится в xml.
Скачай сторонний редактор (их два, один хреновый, а второй тормозной и платный), или напиши свой.

В 2.0 вроде тоже хранится в xml, но формат другой.

79 30 сен 2017, 19:22 79 446076

https://gm48.net/

Ответы446082

80 30 сен 2017, 19:57 80 446082

>>446076
Нихуя не понял, как участвовать.

Ответы446087

81 30 сен 2017, 20:33 81 446087

>>446082
К началу приходи, там все напишут.

82 3 окт 2017, 19:52 82 446592

Бамп треду. Аноны, кто-нибудь знает: дэсктоп-версия за 1,5 в стиме полноценная? Она чем-то отличается от версии на оф. сайте?

Ответы446593446601

83 3 окт 2017, 19:52 83 446593

>>446592
Полноценная. Ничем не отличается.

Ответы446597

84 3 окт 2017, 19:59 84 446597

>>446593
Стоит ли брать, если ты не умеешь кодить, но хочешь сделать игру?

Ответы446600

85 3 окт 2017, 20:01 85 446600

>>446597
Из всех 2д движков гамак наверн самый простой в освоении.
Главное не лениться и освоить его внутренний скриптовый язык, а не костылить конструктором.
Туториалов дохуя.

Ответы446602

86 3 окт 2017, 20:01 86 446601

>>446592
Ничем. Более того ты сможешь и на офф. сайте скачать не стимовскую.

87 3 окт 2017, 20:03 87 446602

>>446600
>Туториалов дохуя.
На GMS 2 почти нихуя не нашёл. В основном кидало на туторы по первому.

Ответы446604446607

88 3 окт 2017, 20:06 88 446604

>>446602
https://docs2.yoyogames.com/

Ответы446605

89 3 окт 2017, 20:09 89 446605

>>446604
А у них там детально расписано? Можно при помощи этого гайда узнать, как, например, создать систему инвентаря в игре?
Извиняюсь, если слишком много лишних вопросов.

Ответы446613

90 3 окт 2017, 20:11 90 446607

>>446602
https://www.youtube.com/channel/UCnKHIXYeYkehIJtF414f65A
https://www.youtube.com/channel/UCrHQNOyU1q6BFEfkNq2CYMA
https://www.youtube.com/channel/UCn7FE3Tx391g1tWPv-1tv7Q

Ответы446609

91 3 окт 2017, 20:13 91 446609

>>446607
Спасибо, посмотрю.

92 3 окт 2017, 20:31 92 446613

>>446605
Создание инвентаря - это общий алгоритм. Зная как создавать инвентарь в целом ты сможешь это реализовать на любом движке.

93 4 окт 2017, 01:45 93 446661

>>445040
А я пилю некоммерческий инди-аутизм
как и большинство здесь
Так что похуй.

43 Кб, 594x402
94 8 окт 2017, 21:30 94 447408

129 Кб, 625x937
95 8 окт 2017, 21:31 95 447409

96 6 ноя 2017, 23:57 96 454978

Дано прямоугольный треугольник

783,145/|
/ |
/ |
/ |
/ |
/ ______|783,159
769,159

Для провеки коллизии с треугольником в точках 769,159 и 783,159 используем функцию point_in_triangle
point_in_triangle(769,159,783,145,783,159,769,159) - результат true
point_in_triangle(783,159,783,145,783,159,769,159) - результат false

Охуеть не встать. Нахуя вообще такие функции нужны?

2 Кб, 640x400
97 7 ноя 2017, 00:11 97 454980

>>439561 (OP)
Спрошу еще и тут, может знает кто.

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

Ответы454984

98 7 ноя 2017, 00:16 98 454984

>>454980
Сам спросил - сам ответил.

Да.

Ответы454990

99 7 ноя 2017, 00:40 99 454990

>>454984
Я не знаю как это сделать.

Ответы455018

100 7 ноя 2017, 10:19 100 455018

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

Ответы455122

101 7 ноя 2017, 18:28 101 455122

>>455018
Виды не помогают. Если я в оконном режиме задам view_wport и view_hport, то да, гамак установит соответствующие размеры и у окна. Но в полноэкранном режиме он растягивает все на весь экран, а я могу только выбирать, сохранять пропорции или нет.

Ответы455333

102 8 ноя 2017, 19:00 102 455333

>>455122
В полноэкранном тебе надо менять размер application surface

Ответы455347

103 8 ноя 2017, 20:30 103 455347

>>455333
Я ковырялся с этим, ничего не получилось, и я забил. У игры разрешение 640x360, что идеально масштабируется на популярное разрешение 1080p, а для остальных добавлю возможность поиграть в окошке.

Ответы456248

104 10 ноя 2017, 15:14 104 455697

Код кинетического скролла нужен кому-нибудь?

105 11 ноя 2017, 22:17 105 456019

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

Ответы456049

106 12 ноя 2017, 02:47 106 456049

>>456019
конкретнее вопрос задай

Ответы456125

107 12 ноя 2017, 14:26 107 456125

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

Ответы456248

108 13 ноя 2017, 03:54 108 456248

>>455347
https://forum.yoyogames.com/index.php?threads/how-to-properly-scale-your-game.995/

Я примерно так делаю.
Скопипастил тебе код из своего проекта.
https://pastebin.com/LfBif95f
Возможно, не оптимальный - несколько раз перекраивал, но работает и я не трогаю.

>>456125
Способ "в лоб" - юзать audio_sound_gain() для каждого звука с коэффициентом, устанавливаемым в настройках. Че-то типа:

bgm_sound_inst = audio_play_sound(bgm_level_1, 0, true)
audio_sound_gain(bgm_sound_inst, global.master_volume global.bgm_volume, 0)

sfx_jump_inst = audio_play_sound(sfx_jump, 0, false)
audio_sound_gain(sfx_jump_inst, global.master_volume global.sfx_volume, 0)

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

Ответы456249456254456393

109 13 ноя 2017, 04:03 109 456249

>>456248
Полетела разметка кода про звук из-за звездочек, которые макаба воспринимает как курсив.
https://pastebin.com/8KWrigJk

110 13 ноя 2017, 05:19 110 456254

>>456248
спасибо за ответ, но да, тут все-таки нагромождение, сам понимаешь. Буду думать дальше. И так стараюсь во второй игре избежать всех ошибок первой

Ответы456263

111 13 ноя 2017, 08:41 111 456263

>>456254
Можно эту штуку обернуть в скрипт и вызывать вместо audio_play_sound(). Будет не громоздко, как по мне.

112 13 ноя 2017, 22:09 112 456393

>>456248
>https://forum.yoyogames.com/index.php?threads/how-to-properly-scale-your-game.995/
Я эту статью читал. Но у меня не рисуется application_surface. Пишет: Trying to use non-existing surface. Не понимаю, почему так, вроде application_surface должна всегда существовать.

Ответы456401

113 13 ноя 2017, 22:42 113 456401

>>456393
Нет, все-таки рисуется. Это я невнимательный, использовал application_surface_enable() вместо application_surface_draw_enable(). А в твоем коде мне две вещи остались не ясны.
1. Зачем ты в событии Step изменяешь размер окна при переходе в полноэкранный режим? Это же вроде ни на что не влияет уже.
2. Почему рисуешь application_surface в PreDraw? Ведь все остальное отрисовывается после, а мы увидим предыдущий кадр таким образом, правильно?

Ответы456421456888

sage 114 13 ноя 2017, 23:22 114 456404

На 8.1 сижу, пофиг на эти 1.4, 2

Ответы456410456421

115 13 ноя 2017, 23:38 115 456410

>>456404
Да всем похуй на тебя, дедуль.

116 14 ноя 2017, 01:35 116 456421

>>456401
1. Индусский код-анахронизм, оставшийся от предыдущих вариантов реализации. Сам убрал, когда перечитал его в очищенном от кучи закомменченного мусора виде. Уже после отправки на двач, лол.
2. Почему-то в свое время решил, что так надо. Сейчас прочитал вот этот док http://docs.yoyogames.com/source/dadiospice/002_reference/surfaces/the application surface.html и увидел, что действительно логичнее рисовать application surface в post-draw.

В общем, и для меня это дело оказалось полезным.
Пересмотрел свежим взглядом на код, который накостылил по наитию и боялся менять.

>>456404
4.3 была самая ламповая. Жаль, что игоры, сделанные в ней, нормально не идут на современные пеки.

Ответы456888

117 16 ноя 2017, 03:37 117 456732

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

Ответы456733456806

118 16 ноя 2017, 04:31 118 456733

>>456732
таки реализовал. По своему, но работает. Все равно не откажусь почитать ваши варианты, если кто чего отпишет

119 16 ноя 2017, 16:38 119 456806

>>456732
Реально тупой вопрос. Как у тебя вообще дамагание реализовано?

У меня при мили ударе возникает объект, который существует до тех пор, пока проигрывается ударная анимация. Любой объект семейства enemy, столкнувшийся с этим объектом получает урон, но получает его только 1 раз.

Для этого в create event создаю список
targets = ds_list_create();

В евенте "столкновение с объектом enemy" пишу:

if ds_list_find_index(targets,other) = -1
{
нанести урон
}
ds_list_add(targets, other);

и не забываю уничтожить этот список в destroy event
ds_list_destroy(targets);

Ответы456807456821456887

120 16 ноя 2017, 17:00 120 456807

>>456806
Если тебе нужен КД в пару секунд - очищай список целей каждые пару секунд.

121 16 ноя 2017, 19:18 121 456821

>>456806
Да оно у меня очень просто реализовано. Есть родительский объект врага и родительский объект оружия. Плюс есть объект, который хранит данные о здоровье босса. В итоге я просто подвязал уже имеющийся скрипт и при столкновении этих двух объектов запускается внутренний таймер с миганием спрайта того, кто словил дамаг

122 17 ноя 2017, 03:54 122 456887

>>456806
точно также делал, когда пилил игру типа нинджа гайдена

123 17 ноя 2017, 04:01 123 456888

>>456401
Таки пришлось вернуть этот код.
Почему-то если игра стартует в полноэкранном режиме, то если из него выйти, размер окна становится иногда неадекватно мелким. Почему-то этот баг не проявляет себя, если менять полноэкранный режим через Window_set_fullscreen() - только через alt+enter.

>>456421-кун

Ответы457018

124 17 ноя 2017, 21:14 124 457018

>>456888
Хотел протестировать, но у меня на комбинацию alt+enter нет реакции.

125 18 ноя 2017, 10:06 125 457059

>>439561 (OP)
Если я хочу писать бровзерные игори, то надо платить 149 бачей?

126 18 ноя 2017, 13:32 126 457079

>>439561 (OP)
Я правильно понимаю, что gamemaker не дает сохранять файлы в папку с игрой, а только в общую папку <LOCALAPPDATA>/<GameName>? И теоретически, если на компе другая игра с тем же именем будет писать в тот же файл, то она всю сохраненку похерит. Как с этим бороться и нужно ли?

Ответы457162

127 19 ноя 2017, 04:48 127 457162

>>457079
ты сам можешь выбрать, куда твоя игра будет сохранять данные

Аноним 128 19 ноя 2017, 10:25 128 457169

Давно искал тред по вопросам по GM. Ялично юзаю юнити (и там тоже есть 3D, но хочетчя создавать реальные 2D игоры. И так, как создать ландшафт, как создать героя, можно ли в бесплатной версии Game Maker создать норм игору без гличей и багов? Да и вообще можно ли?
Никогда не юзал ГМ

Ответы457189

129 19 ноя 2017, 13:57 129 457189

>>457169
GDevelop попробуй.

130 20 ноя 2017, 14:16 130 457455

Я смотрю вы тут по хардкору с камерой разбираетесь.

Подскажите мне, как правильно переносить камеру из комнаты в комнату? У меня при переходе из комнаты в комнату странным образом растягивается. Пока что я решил, что буду убивать камеру в room_end event и создавать новую камеру в room_start event. Но правильное ли это решение?

21 Кб, 1204x158
131 20 ноя 2017, 18:13 131 457498

что это блять за хуйня? я планировал первые игры на мобилки делать, ибо игры того типа, что я делаю, в стиме доебали вкрай. Ммало того, что на виндовс 39 бачейгодовая, сука, так сука на андроиды 400. Четыре сотни СУКА. Спасибо, продолжу сношаться с юнити, хотя гм:с первая очень нравилась

Ответы457507457517460214

132 20 ноя 2017, 18:54 132 457507

>>457498
Monogame :3

Ответы457515

133 20 ноя 2017, 19:17 133 457512

Ответь, анон, как Gamemaker экспортирует в html5?
Лучше, чем Unity? Как производительность относительно phaser?

Ответы458250496772496839

134 20 ноя 2017, 19:50 134 457515

>>457507
Ты бы ещё libgdx предложил.

Ответы457559

135 20 ноя 2017, 19:55 135 457517

>>457498
В стиме 6400 рубасов, что чуть больше 100 баксов.

Ответы457533

136 20 ноя 2017, 21:24 136 457533

>>457517
этот чувак поди и 39 баксов жмет, какие там 6400 рубасов

Ответы457539

137 20 ноя 2017, 22:34 137 457539

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

Ответы457546460215

138 20 ноя 2017, 22:50 138 457546

>>457539
Сомнительно, конечно, что отобьет. В Play market over 9000000 проектов с 5-10 установками...

Ответы457550

139 20 ноя 2017, 23:13 139 457550

>>457546
А, если геймаркет, то да. А ежели стим, то все ок

140 21 ноя 2017, 02:08 140 457559

>>457515
> libgdx
Параша/10. На нем нету ни одной годной игры в отличие от моногейма.

Ответы460214

141 23 ноя 2017, 08:04 141 457951

Нуб в треде. Можно ли в гм2 один объект (например, персонажа) "собирать" из нескольких разных спрайтов (например, два спрайт рук, два спрайта ног, спрайт туловища и спрайт головы, итого 6 отдельных спрайтов)? Или для этого нужно создавать соответствующее количество объектоа (6 в случае приведенного примера), и уже к ним привязывать спрайты?
Заодно может подскажете, из вашего опыта или вычитанных где-нибудь мудростей, каким количеством объектов на комнату следует ограничиваться?

Ответы496773

142 23 ноя 2017, 08:05 142 457953

Нуб в треде. Можно ли в гм2 один объект (например, персонажа) "собирать" из нескольких разных спрайтов (например, два спрайт рук, два спрайта ног, спрайт туловища и спрайт головы, итого 6 отдельных спрайтов)? Или для этого нужно создавать соответствующее количество объектоа (6 в случае приведенного примера), и уже к ним привязывать спрайты?
Заодно может подскажете, из вашего опыта или вычитанных где-нибудь мудростей, каким количеством объектов на комнату следует ограничиваться?

Ответы457954

143 23 ноя 2017, 08:15 143 457954

>>457953
Можно собирать из спрайтов посредством эвента draw, но это тот еще гемор.
Лучше писать контроллер, который бы собирал персонажа из объектов, проще манажить будет.

144 23 ноя 2017, 19:40 144 458077

Аноны, там сейчас в стиме распродажа, поэтому решил купить дэсктоп версию. Что означает галочка In-App Purchases? Меня не наебут, заставив платить за что-либо ещё?

Ответы458106

145 23 ноя 2017, 21:28 145 458106

>>458077
Не наебут

146 23 ноя 2017, 21:33 146 458111

>>439561 (OP)
покажите САМЫЕ КРАСИВЫЕ игры на геймейкере

Ответы458114458159

147 23 ноя 2017, 21:34 147 458114

>>458111
hyperlight drifter норм

Ответы458160

148 23 ноя 2017, 23:28 148 458159

>>458111
http://store.steampowered.com/app/293680/Cinders/

Ответы458160

149 23 ноя 2017, 23:37 149 458160

>>458114
>>458159
красиво. а сколько человек сколько месяцев их делали?

Ответы458162

150 23 ноя 2017, 23:48 150 458162

>>458160
возьми и напиши им

151 24 ноя 2017, 13:14 151 458250

>>457512
Неебу как относительно Phaser, но производительность неплохая. Правда пришлось править сгенеренный html код ручками т.к. какого-то хуя канвас сглаживался по-умолчанию что пиксельной игре не нужно.

Ответы496767

152 24 ноя 2017, 20:56 152 458327

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

Ответы458328

153 24 ноя 2017, 21:05 153 458328

>>458327
Да, там практически идентично все в плане кода (с небольшими исключениями).
Двойка просто сильно удобнее сама по себе.

Ответы458343

154 24 ноя 2017, 23:33 154 458343

>>458328
Спасибо, друг.

104 Кб, 1280x720
155 26 ноя 2017, 02:30 155 458517

>>439561 (OP)
Вопрос к специалистам. Как реализовать редактор уровней в gms?

156 26 ноя 2017, 03:12 156 458522

>>439561 (OP)
>2
Язык-то добавили или так на ЖМЛ и сидите?

Ответы458708

157 27 ноя 2017, 04:18 157 458663

Жмл более чем достаточно для создания игр.

158 27 ноя 2017, 13:59 158 458708

>>458522
Так-то ГМЛ норм на самом деле, хотя и не хватает нормального ООП конечно. Частично это компенсируется системой эвентов. Но приходится писать скрипты вне объектов, чтобы имитировать методы.
Итого жить можно, но можно и лучше.

159 29 ноя 2017, 05:40 159 459023

Помогите пожалуйста с одной проблемой. Делаю простенький платформер и пытаюсь сделать выстрелы вроде все нормально, но сука я не знаю как сделать так чтобы когда персонаж смотрит влево стреляет влево когда смотрю вправо стреляет вправо.
Вот код:
x = obj_hero.x+11;
y = obj_hero.y+6;
x2=0;
if (obj_hero.sprite_index == spr_hero_idle_right or spr_hero_right)
{
x2 = x+1;
}
else if (obj_hero.sprite_index == spr_hero_idle_left or spr_hero_left)
{
x2 = x-1;
}

image_angle = point_direction(x,y,x2,y);
firingdelay = firingdelay - 1;
if (keyboard_check(vk_space)) and (firingdelay < 0)
{
firingdelay = 5;
with (instance_create_layer(x,y,"Bullets",obj_bullet))
{
speed = 10;
direction = other.image_angle;
image_angle = direction;

}
}

159 29 ноя 2017, 05:40 159 459023

Помогите пожалуйста с одной проблемой. Делаю простенький платформер и пытаюсь сделать выстрелы вроде все нормально, но сука я не знаю как сделать так чтобы когда персонаж смотрит влево стреляет влево когда смотрю вправо стреляет вправо.
Вот код:
x = obj_hero.x+11;
y = obj_hero.y+6;
x2=0;
if (obj_hero.sprite_index == spr_hero_idle_right or spr_hero_right)
{
x2 = x+1;
}
else if (obj_hero.sprite_index == spr_hero_idle_left or spr_hero_left)
{
x2 = x-1;
}

image_angle = point_direction(x,y,x2,y);
firingdelay = firingdelay - 1;
if (keyboard_check(vk_space)) and (firingdelay < 0)
{
firingdelay = 5;
with (instance_create_layer(x,y,"Bullets",obj_bullet))
{
speed = 10;
direction = other.image_angle;
image_angle = direction;

}
}

Показать весь текст
Ответы459070

160 29 ноя 2017, 15:59 160 459070

>>459023
1) Направление взгляда вынеси в отдельную переменную +1/-1, тогда просто будешь умножать на него и не нужно будет дублировать кучу кода.

2) Вместо A == B or C должно быть (A == B) or (A == C)

Ответы459541

161 3 дек 2017, 15:16 161 459541

>>459070
Спасибо за ответ, но я уже разобрался. И опять застрял, но теперь нет идеи.:(

162 7 дек 2017, 04:53 162 460214

>>457559
Первый That Level Again на libgdx сделан. Что еще расскажешь ыксперд?
>>457498
На первый такая же цена. Мне он правда по акции достался за 25$ весь комплект. Проф-версия, андроид и все-все-все, кроме iOS. Правда без интеграции со стимом, но через год дали и её. Надо просто подождать распродажи.

Ответы460642

163 7 дек 2017, 06:21 163 460215

>>457539
> Любая хуевая игра отобьет эти шесть тысяч с головой
BLASTER COP

Ответы460241

164 7 дек 2017, 11:37 164 460241

>>460215
почаще издавайтесь у дагов

Ответы460243

165 7 дек 2017, 11:44 165 460243

>>460241
ну нас остальные бы опустили так, что мы б в обнимочку повесились с горя

Ответы460250

166 7 дек 2017, 12:15 166 460250

>>460243
как же вы заебали уже. Сами бы издались и профит был в несколько раз выше гарантированно. Хотя, если ты ленивое хуйло и тебе настолько похуй,что ты слил игру дагам, то может быть и нет.

Ответы460251

167 7 дек 2017, 12:29 167 460251

>>460250
бля, теперь и поныть на моих двачах не дают, ну надо же! ладно, ладно, понел.

Ответы460252

168 7 дек 2017, 12:40 168 460252

>>460251
То-то же. По поводу заработка, если ты вдруг не веришь - загугли nikita ghost rus. Есть такой говнодел в стиме, который клепает говно со скоростью света и издается сам. Вряд ли бы он стал делать то, что не окупается рака яиц ему

Ответы460256

169 7 дек 2017, 12:46 169 460256

>>460252
видел этого хуесоса. но с габендиректом он скорее всего обнищает такие суммы вливать.

Ответы460355

170 7 дек 2017, 22:26 170 460355

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

171 9 дек 2017, 14:39 171 460641

> That Level Again
То еще говнецо.
> Первый на libgdx сделан.
1/3. Автор понял какое это говно и съебал на другой движок

Ответы460642460974

172 9 дек 2017, 14:40 172 460642

>>460641 --> >>460214

173 10 дек 2017, 18:59 173 460808

Анончики, нужна помощь. Когда-то давно установил GM 1.4, забросил. Позже пытался работать на Construct, но ограничения разочаровали. Короче, снова взялся за GM, даже успел запилить игрульку. И тут встал вопрос, а откуда я её качал? Может ли быть 1.4 у меня бесплатным и лицензионным? И смогу ли я выложить в плэй маркет эту игру?

Ответы460976

174 12 дек 2017, 07:57 174 460971

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

Ответы460975

175 12 дек 2017, 08:46 175 460974

>>460641
Говнецо не говнецо, а слушать будешь стоя а ЕМНИП больше 5кк скачиваний. Так что рассуждения о качестве продукта, имеющего такую оценку аудитории бессмысленно.
К тому же да, 2 и 3 были сделаны на Unity и, как следствие, оптимизированы гораздо хуже. Багов в них полно, в то время как в 1 части их не было вообще. Тут он скорее перескочил из-за удобства и скорости разработки, чем из-за чего-то еще.

176 12 дек 2017, 08:49 176 460975

>>460971
Дык выставь условие, чтоб он за 2-3 пикселя до мыши останавливался. Координаты того и того у тебя есть, если векторную математику не прогуливал на первом курсе, то проблем не будет, а если прогуливал, то загугли.
Просто весь скрипт движения подпихни под условие.

Ответы460977

177 12 дек 2017, 08:50 177 460976

>>460808
Если сможешь сделать билд под андроид, то да. Но вряд ли ты сможешь, если он не лицензионный.

178 12 дек 2017, 09:27 178 460977

>>460975
А как взять Икс Игрик центра объекта?

Ответы460980460987

179 12 дек 2017, 13:52 179 460980

>>460977
Во-первых забудь про DnD. Сделать что-то на этом говне на порядок сложнее, чем через нормальный код.

Во-вторых координата объекта выставляется в спрайте этого объекта. По умолчанию x,y объекта это x,y верхнего левого угла спрайта. Если ты хочешь координаты центра этого спрайта, тогда пиши:
x_center = object.x + object.sprite_width/2;
y_center = object.y + object.sprite_height/2;

Или, если у тебя пиксель-пёрфект движение (что разумней):
x_center = object.x + ceil(object.sprite_width/2);
y_center = object.y + ceil(object.sprite_height/2);

Ответы460982460987

180 12 дек 2017, 14:01 180 460982

>>460980
Ну или можешь в спрайте выставить центр на центр спрайта и тогда x,y объекта у тебя будет его центром.

Ответы460987

181 12 дек 2017, 14:33 181 460987

>>460980
>>460982
Рили не понял нах эта лишняя дрочь, когда в настройках спрайта есть центрирование.
>>460977
Центрируешь спрайт. Центром будет object_name.x и object_name.y

Ответы460989

182 12 дек 2017, 14:43 182 460989

>>460987
Поймёшь, когда тебе понадобится что-то кроме центра спрайта.

183 15 дек 2017, 10:44 183 461344

Как в ГМС2 сделать так, чтобы при переключении в полноэкранный не картинка растягивалась, а поле зрения камеры увеличивалось.

Ну и соответственно при ресайзе окна было то же самое - растягиваешь окно, а у тебя не изображение растягивалось, а просто больший кусок игрового поля показывался.

Ответы461373

184 15 дек 2017, 15:12 184 461373

>>461344
Играйся к с камерой и application surface

Ответы461375

185 15 дек 2017, 15:17 185 461375

>>461373
Точно с камерой? Может надо как-то алгоритм стрельбы персонажа поменять?

186 15 дек 2017, 23:12 186 461439

Аноны, помогите со стрельбой в гмс2. Я столкнулся с проблемой, что пули не летят, когда в комнате включена физика, но без нее ничего не двигается. Как быть?

Ответы461440

187 15 дек 2017, 23:35 187 461440

>>461439
так это самое. Если мне не изменяет память, в первом гамаке точно так же. Либо ты делаешь все на встроенной физике и пилишь все под нее, либо пишешь свою физику, либо пользуешься чужой

Ответы461441

188 15 дек 2017, 23:40 188 461441

>>461440
2й день юзаю гейм мейкер. Как так изъебнуться, чтобы объект летел в заданном направлении на встроенной физике?

Ответы461442461491

189 15 дек 2017, 23:40 189 461442

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

Ответы461443

190 15 дек 2017, 23:42 190 461443

>>461442
Из документации я понял чуть больше чем нихуя... Где можно найти чью-ту физику? Форумы там какие

Ответы461448

191 16 дек 2017, 00:11 191 461448

>>461443
https://forum.yoyogames.com

Ответы461449

192 16 дек 2017, 00:13 192 461449

>>461448
Там еще хуже чем на дваче. Мне предъявили, что я хуйню пощу и вежливо нахуй послали

Ответы461450461485

193 16 дек 2017, 00:15 193 461450

>>461449
так ты не пости, а просто поиском пользуйся, там да, как на дваче. В идеале как можешь делать - гугли на маркете гамака ассет под нужный тебе жанр игры (платформер, шмап и тд) , качаешь и разбираешь его по косточкам, там и найдешь самописные решения. Либо смотри туториалы пиксельпопа, heartbeast'a и шона сполдинга

194 16 дек 2017, 06:19 194 461485

>>461449
Тебе там ясно сказали: либо используешь встроенный физический движок, либо передвигаешь объекты вручную - и даже дали ссылку.

Ответы461487

195 16 дек 2017, 07:28 195 461487

>>461485
Тщ майор, можете залогиниться

196 16 дек 2017, 09:45 196 461491

>>461441
ты юзаешь movedir_x и movedir_y?
если да, то изменению параметров x и y на физоне делается не через x += и y+=, а через phy_position_x += и phy_position_y +=, параметры в твоем случае равнозначные

Ответы461494461496

197 16 дек 2017, 10:43 197 461494

>>461491
Ну я phy_poisition и юзаю всегда...

386 Кб, 699x629
198 16 дек 2017, 10:47 198 461496

>>461491
Ну только пули работают в моем понимании при отключенной физики в комнате, а phy_position не работает без физики

Ответы461498461501

199 16 дек 2017, 11:49 199 461498

>>461496
если пули физический объект, то без включенной физики в комнате они работать как надо НЕ будут
если не физический, то ты прописываешь координаты x += и y+=

Ответы461500

200 16 дек 2017, 11:53 200 461500

>>461498
я юзал move_towards_point, оно двигает в сторону курсора, но при x += не будет же лететь в указанном направлении

Ответы461506

201 16 дек 2017, 11:55 201 461501

>>461496
Для платформера вообще не нужна физика, начнём с этого. Если что-то перемещается, это не значит, что надо использовать физ. движок.

phy_position задается в коде один раз, а перемещение осуществляется приложением силы к объекту. Прочитай внимательно ссылку на статью, которую тебе дали.

Правильное решение: убери физику с персонажа и двигай его так же, как и пулю - изменением координат.

Ответы461502461513461611

202 16 дек 2017, 11:58 202 461502

>>461501
>Правильное решение: убери физику с персонажа и двигай его так же, как и пулю - изменением координат
А оно разве не будет как слайд шоу?

Ответы461506

203 16 дек 2017, 12:19 203 461506

>>461500
хуевый выбор, чую, если сдвинешь курсор, то пули тоже изменят направление
лучше высчитывай направление один раз исходя, например, из угла отрисовку спрайта оружия, если оно поворачивается, и используй lengthdir
>>461502
не будет, движение просчитывается каждый кадр, никакой разницы между физикой и её отсутствием тут нет

Ответы461511

204 16 дек 2017, 12:27 204 461511

>>461506
С пулями все норм, они меняют направление, если прописать mp_potential_step

Ответы461512

205 16 дек 2017, 12:29 205 461512

>>461511
в любом случае физон тут лишний, если вызывает такие проблемы

206 16 дек 2017, 12:31 206 461513

>>461501
А как тогда возвращать гг на землю при прыжке без физики?

Ответы461515

207 16 дек 2017, 12:44 207 461515

>>461513
умножаешь вертикальную скорость на число меньше 1, где-то 0.3 или 0.25
только gravity его не называй, это уже вшитое

Ответы461516

208 16 дек 2017, 12:46 208 461516

>>461515
ой, бля, зачеркните
прибавляешь, не умножаешь

Ответы461517

209 16 дек 2017, 12:47 209 461517

>>461516
тогда каждый фрейм скорость будет уменьшаться на 0.3, типа, стартовая -8, следующий кадр -7.7, -7.4 и так далее

210 16 дек 2017, 14:48 210 461541

Аноны, кто сейчас делает игры могу предложить свою помощь. Сам овощ нихуя рифма, ничего не могу сам сделать за не имением идей. Если у вас есть идея готов помочь реализовать. Связаться можно по почте lolqwerw.Qt569ANUSgmaiKZClPUNCTUMcoqtRm

Ответы461544

211 16 дек 2017, 14:55 211 461544

>>461541
Если согласен помогать 3м школьникам с охуительными амбициями и хуевыми знания гейм мейкера, за нихуя, ради призрачного профита ввиде стартапа на патреоне и последующей выгрузки игры в стим, то велком
/Чел, разосравшийся в этом треде с физикой

Ответы461546

212 16 дек 2017, 15:04 212 461546

>>461544
Как связаться? Есть тим спик дискорд

Ответы461547

213 16 дек 2017, 15:05 213 461547

>>461546
Кстати живу на Камчатке и имею часовой пояс + 12 У ДС + 3 если что

Ответы461549

214 16 дек 2017, 15:14 214 461549

>>461547
Ля, ну если +12, то дискорд нн прокатит, давай я тебе на почту напишу лучше

Ответы461550

215 16 дек 2017, 15:16 215 461550

>>461549
А что не так? Сейчас зайти могу

216 16 дек 2017, 22:31 216 461611

>>461501
Блять у меня теперь вообще гг распидарасило. Он ебашит без остановки во все стороны и ему абсолютно поебать на все преграды и он пролетает сквозь все объекты

Ответы461624

217 16 дек 2017, 22:51 217 461614

В написании своей физики, кстати, нет ничего сложного. Там буквально десяток строчек и все будет работать заебись. Главное пару принципов использовать и будет красота.

sage 218 16 дек 2017, 23:46 218 461624

>>461611
Почитай мануал, пройди несколько туториалов, скачай пример платформера и разбери - потом начинай делать своё.

219 18 дек 2017, 22:19 219 461873

Всё не даёт покоя этот калечный редактор изображений. Как работать с ним? У него же ограниченное число пикселей на изображение, как я понял. Есть способ работать через другую программу, чтобы делать анимацию по кадрам? Интересует именно функция onion layers.

Ответы461875

sage 220 18 дек 2017, 22:48 220 461875

>>461873
Не используй совсем. Или жди, пока допилят.

Ответы461901

221 19 дек 2017, 06:46 221 461901

>>461875
Ну бля, работают же как-то люди. Вопрос в том, как.

222 20 дек 2017, 11:47 222 462083

Есть где скачать для пиратобояр вторую версию? А то когда последний раз смотрел (давно) не было ещё.

Ответы462117

223 20 дек 2017, 15:27 223 462117

>>462083
Там анальный дрм

Ответы462125

224 20 дек 2017, 16:07 224 462125

>>462117
Мб есть добрые люди на каких-нибудь сайтах, кто общедоступную версию выложил?

Ответы462232

225 20 дек 2017, 18:28 225 462157

Собирал кто пустой проект в apk на андроид? Какой размер пустого выходит?

Ответы462193

226 20 дек 2017, 21:51 226 462193

>>462157
Во второй хз, в первой если онли ARMV7 + x86 то 2мб

227 21 дек 2017, 08:27 227 462232

>>462125
Ты блять тупой? Дрм там не просто так для галочки

Ответы462262462368

228 21 дек 2017, 11:50 228 462262

>>462232
Хуя ты восторженный даун. В этом мире существуют тысячи игр и прочего контента с дрм, но это не мешает пиратам такую защиту снимать.
мимо

Ответы462547

229 21 дек 2017, 18:56 229 462368

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

230 23 дек 2017, 12:38 230 462547

>>462262
в первом тоже была защита. просто второй никому не нужен, первого и так хватает

231 25 дек 2017, 11:52 231 462874

Бамп-антивайп.

232 26 дек 2017, 12:45 232 463156

Ньюфаг в треде. Раскидал по комнате тайлы, поместил туда же обЪект с игроком и запустил для проверки. Игрока почему-то не видно. Что не так?

Ответы463424

233 26 дек 2017, 19:07 233 463424

>>463156
Мы экстрасенсы?

Ответы463469

234 27 дек 2017, 00:40 234 463469

>>463424
Да я уже и сам разобрался.
Ещё такой момент: с чем может быть связанно отталкивание игрока от стенки, если напирать на неё? Если медленно пододвинуть объект к стене и затем двинуть его, игрока вообще вытолкнет за стену.

235 27 дек 2017, 15:39 235 463602

Делаю платформер, на данный момент коллизии сделаны с помощью объекта стены. Хочу переделать коллизию на тайлы.
У меня есть движущиеся платформы, которые не представляю, как сделать тайлами.
В связи с этим два вопроса.
1) Будет ли прирост производительности, если статические стены (коих 90%) заменить тайлами, а движущиеся оставить объектами?
Тогда, получается, мне нужно будет в коде проверять коллизию дважды - на тайлах и на объектах. Но ведь объектов-стен теперь будет на порядок меньше. Стоит ли пытаться?
2) Можно ли сделать движущиеся платформы тайлами?

Ответы463603

236 27 дек 2017, 15:48 236 463603

>>463602
1) будет
2) нельзя. Оставь движущуюся платформу объектом - остальное тайлами.

Бамп треду. 237 31 янв 2018, 10:16 237 472064

38 Кб, 313x2373 Мб, mp4,
1024x768, 0:06511 Кб, mp4,
550x304, 0:05

Как я свет в гамаке анимировал.

Ответы472088

238 31 янв 2018, 12:23 238 472088

>>472064
заебись

239 31 янв 2018, 14:25 239 472109

>>472080
Как я вилкой чистить буду?
Расскажи, что имеешь ввиду, а ещё лучше дай туториал на то, как это сделать в.

240 3 фев 2018, 07:59 240 472709

615 Кб, 1920x1080581 Кб, 1920x1080

Как сделать чтобы герой был поверх верхних стен, но под нижними стенами, как на пикриле?

Ответы472713472725

241 3 фев 2018, 09:57 241 472713

>>472709
Простейший шейдер. Можешь навелосипедить с draw_sprite_part(), но будет совсем не гибко.

Ответы472725

242 3 фев 2018, 12:22 242 472725

>>472709
Блин, у тебя же туториал открыт. Смотри как сделано.

>>472713
draw_sprite_part() и шейдер. Всё так.

Ответы472726472727486508

243 3 фев 2018, 12:27 243 472726

>>472725
Вон в том же туториале, который ты смотришь, написано, что лучше шейдер использовать.
// a simple shader would be better/faster than setting the fog for each sprite drawn.
gpu_set_fog(true,i.silhouette_colour,1.0,1.0);
draw_sprite_ext( i.sprite_index, i.image_index, i.x,i.y, 1,1,0,i.silhouette_colour,1);

Но они там делают какое-то извращение, имхо.

244 3 фев 2018, 12:27 244 472727

>>472725
Я шото прихуел с того, что там есть, поэтому тут и спросил

Ответы472744

245 3 фев 2018, 13:26 245 472744

>>472727
Знаешь, я сейчас открыл их туториал и тоже прихуел. Но это не значит, что не надо изучать как там что сделано - у них есть решения, охуенно экономящие фпс. Я этот гайд ковырял когда освещением занимался. В конце концов сделал всё на порядок проще, но их приёмы с растягиваием и блуром сурфейса я запомнил.

Можно гораздо проще всё сделать.
Держи охуенный гайд по шейдерам ля начинающих гамакеров:
http://xorshaders.weebly.com/

Ну и как спрайт кусками рисовать - сам разберёшься.

246 3 фев 2018, 19:01 246 472790

Как работает ds_list_create? У меня он строку как то неправильно распознает, если количество значений поменялось.

Ответы472795

247 3 фев 2018, 20:04 247 472795

>>472790
Ты нормально вопрос задай.

Ответы472797

248 3 фев 2018, 20:07 248 472797

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

Ответы472843

249 4 фев 2018, 01:23 249 472843

>>472797
Так, уже речь не про ds_list_create, значит?

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

250 5 фев 2018, 15:15 250 473062

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

Смотрю урок Make an RPG, там проблему бесконечного проигрывания анимации после начала движения решают через

if (!key_right and !key_left) {
image speed = 0
}

Я же хочу включать idle анимацию. Понятно, что надо просто прописать sprite_index = spr_player_idle; но у мня их две штуки, чтобы игрок оставался в левой idle анимации после того, как шел влево и в провой idle анимации после того, как шел вправо. Как это сделать?

Ответы473091473099

251 5 фев 2018, 17:29 251 473091

>>473062
if image_xscale > 0 {
sprite_index = idle_right
} else {
sprite_index = idle_left

Это если ты его разворачиваешь через скейл

Ответы473104

252 5 фев 2018, 17:51 252 473099

>>473062

Не бойся изобретать. Не бойся вводить новые переменные.

Зафигачь себе

if (!key_right and !key_left) {
sprite_index = spr_idle; //меняй спрайт с анимацией idle
image_speed = 0;
}
else{
sprite_index = spr_run; //меняй спрайт на спрайт бега
image_speed = 1;
}

Ответы473100473104

253 5 фев 2018, 17:52 253 473100

>>473099
тьфу ты.

if (!key_right and !key_left) {
sprite_index = spr_idle; //меняй спрайт на анимацией idle
image_speed = 1;
}
else{
sprite_index = spr_run; //меняй спрайт на спрайт бега
image_speed = 1;
}

Ответы473104

254 5 фев 2018, 18:25 254 473104

>>473091
Нет, не через скеил. У меня просто прописано

if (key_right) {
sprite_index = spr_player_run_right;
}

if (key_left) {
sprite_index = spr_player_run_left;
}

и соответственно загружено две разные анимации.

>>473099
>>473100
Я Game Maker Studio только этим утром установил. И не совсем понимаю твой код.

Алсо сейчас досмотрел этот урок https://youtu.be/72SWn4xr-0Q и вопрос по анимациям остался, т.к. он там удары не стал анимировать. С анимацией ходьбы/бега все понятно: нажимаешь вправо - проигрывается анимация вправо, нажимаешь влево - проигрывается анимация влево, а вот с ударами как? Как сделать, чтобы при нажатии одной и той же кнопки удара игра понимала, какую именно из анимаций проигрывать? Короче мне надо еще уроков по гейм мейкеру, в этой серии он многих вещей не касается.

Ответы473291

255 5 фев 2018, 20:50 255 473154

Подскажите пожалуйста. Вот я покупаю гейммейкер 2 за 1500 рубасов в стиме и могу проддавать эти игры? Меня не нагнут за это?

Ответы473198473208

256 5 фев 2018, 21:40 256 473198

>>473154
за что тебя нагибать?

Ответы473200

257 5 фев 2018, 21:53 257 473200

>>473198
Всякая фигня с лицензиями

258 5 фев 2018, 22:25 258 473208

>>473154
да. Проблем нет, брат жив

259 6 фев 2018, 09:46 259 473291

>>473104
>не совсем понимаю твой код.

В гамаке есть keyword- sprite_index - указывает на спрайт объекта. При помощи него ты можешь менять спрайт объекта когда захочешь, а не только при создании объекта.

260 6 фев 2018, 14:57 260 473348

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

Ответы473353

261 6 фев 2018, 15:35 261 473353

>>473348
Бери туториал для платформера и не делай прыжки. В чём проблема?

Ответы473547

262 7 фев 2018, 13:42 262 473547

>>473353
https://youtu.be/G90wXOwPPVE?t=6m6s
Нахуя он создает вериабл b = -1; ?

Получается он дальше пишет
if (image_xscale = 1)
-1.direction = 0;
} else {
-1.direction = 180;
}
что блядь это вообще должно означать?

Ответы473554473558

263 7 фев 2018, 14:13 263 473554

>>473547
Резервирует контейнер для пули.

Для того, чтобы не использовать b в каком-то другом месте.
Во-вторых, если вдруг ему нужно будет обратиться к пуле b в каком-то другом месте,он сможет сделать проверку
if instance_exists(b)
{
блаблабла
}

Если b задано не будет - получится критическая ошибка. Если же b будет иметь значение -1, то это соответствует ключевому слову noone в гамаке. Проверка будет пройдена.

Вообще, когда я создаю всякие пули, я задаю временную переменную.

var b = instance_create...
b.spd = ...
b.dirx = ...
b.dmg = ...

Но если бы мне понадобилось, например, управлять пулей используя для управления объект игрока, я бы в криэйт ивенте написал
b = noone;
И ты лучше пиши не
b = -1;
а
b = noone или b = false
В смысле не используй цифру -1 там, где должно быть ключевое слово. Не потому, что работать не будет, а потому что в последствии, вернувшись к своему коду через пару месяцев, тебе будет легче в нём разобраться.

264 7 фев 2018, 14:31 264 473558

>>473547
>Получается он дальше пишет

Ты не понял что он делает.
Сначала у него была b = -1
Потом он написал
b = instance_create.. и b поменяла значение.
Фунция instance_create возвращает id созданного объекта.
Теперь b содержит ссылку на созданный им инстанс. (Ключевое слово гамака id)

Поэтому, когда ты дальше пишешь

b.direction = 0

Ты изменяешь параметр direction этого объекта на 0.

И тут важно, обрати внимание и запомни:
Когда создаётся объект при помощи instance_create
сразу же начинает выполняться его криэейт ивент. СРАЗУ ЖЕ.

Поэтому, когда ты следующей строкой пишешь
b.direction = 0
помни, что криэей ивент УЖЕ произошёл.
Ну и, соответственно, ты не можешь использовать в криэйт ивенте этого инстанcа данные от создателя. Если тебе нужно вычислить для пули скорость в зависимоти от направления, либо вычисляй её после instance_create и предавай объекту, либо у объекта делай "дополнительный приэйт ивент".

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

Ответы473571

265 7 фев 2018, 14:57 265 473571

>>473558
Ну и раз уж ты такие вопросы задаёшь:

переменная в гамаке - штука умная и универсальная.

Во-первых она сама определяет свой тип, когда ты используешь =

Если b = 1 то она - int
Если b = 1/3 то она сразу real
Если b = "hello wrold" То она string

Но это тебе не очень инересно.

А вот если

b = spr_player
и при этом spr_player - это название твоего спратйа игрока, то b становится ссылкой на это спрайт.

И ты можешь использовать её для анимации. Например

create event:
sprite_walk_right = spr_zombie_walk_right
sprite_walk_left = spr_zombie_walk_left

if dirx = 1{
sprite_index = sprite_walk_right
}
else{
wprite_index = sprite_walk_left
}

Зачем так делать? Да затем, что когда ты будешь создавать много врагов, ты сможешь использовать для них одни и те же скрипты, меняя лишь значение sprite_walk_right в create event. Ты просто child objects будешь создавать, у которых только криэйты разные. Удобно же!

b = room_index

И теперь b это ссылка на твою комнату.
И так далее.

265 7 фев 2018, 14:57 265 473571

>>473558
Ну и раз уж ты такие вопросы задаёшь:

переменная в гамаке - штука умная и универсальная.

Во-первых она сама определяет свой тип, когда ты используешь =

Если b = 1 то она - int
Если b = 1/3 то она сразу real
Если b = "hello wrold" То она string

Но это тебе не очень инересно.

А вот если

b = spr_player
и при этом spr_player - это название твоего спратйа игрока, то b становится ссылкой на это спрайт.

И ты можешь использовать её для анимации. Например

create event:
sprite_walk_right = spr_zombie_walk_right
sprite_walk_left = spr_zombie_walk_left

if dirx = 1{
sprite_index = sprite_walk_right
}
else{
wprite_index = sprite_walk_left
}

Зачем так делать? Да затем, что когда ты будешь создавать много врагов, ты сможешь использовать для них одни и те же скрипты, меняя лишь значение sprite_walk_right в create event. Ты просто child objects будешь создавать, у которых только криэйты разные. Удобно же!

b = room_index

И теперь b это ссылка на твою комнату.
И так далее.

Показать весь текст
Ответы473806

266 8 фев 2018, 15:16 266 473806

>>473571
Спасибо. Я едва ли что-то из этого понял вчера когда прочитал, но сейчас немного разобрался, когда делал удар врага по игроку.
Переменную можно привязать к объекту и это удобно тем, что можно создавать этот объект с уже заданными параметрами в коде его создателя.
var enhit = 0;
//enemy attack
if (alarm[0] <= 0) {
enhit = instance_create (x,y+30,obj_enemy_hit);
enhit.image_xscale = image_xscale;
alarm[0] = 60;
}
можно придать заданное направление (например для удара), скорость (для пули) и т.д.

Ответы473814

267 8 фев 2018, 15:43 267 473814

>>473806
Послушай совет:
Никогда. Не. Используй. Алармы.

Во-первых их всего 12.
А если у твоего игрока куча разных механик? Тебе не хватит.

Во-вторых порядок исполнения кода. Ты знаешь когда они выполняются? В тот самый момент, когда оттикал таймер. А когда тикает этот таймер? В начале шага, в конце, в самом шаге? А в какой последовательности у разных объектов он тикает? А если твой игрок неуязвим, а на тебе ДоТ, который сделан на аларме, а аларм тикает у врага? НАХУЙ! Это самое главное.

В-третьих без алармов код проще и понятней.
То, что у тебя написано превращается в:

В криэйт ивент пишеш:
enemy_hit_timer = 0;
enemy_hit_time = 60

В степ ивенте меняешь аларм на:

enemy_hit_timer ++
if enemy_hit_timer > enemy_hit_time{
enemy_hit_timer = 0;
enhit = ...
бла бла бла }

И не думаешь через месяц "а за что у меня отвечает alarm[8]?" и не вспоминаешь "а я этот же аларм использовал для кулдауна регенерации здоровья, надо поменять." У тебя всё в криэйт ивенте хранится.

Нахрена тебе эта ересь?

267 8 фев 2018, 15:43 267 473814

>>473806
Послушай совет:
Никогда. Не. Используй. Алармы.

Во-первых их всего 12.
А если у твоего игрока куча разных механик? Тебе не хватит.

Во-вторых порядок исполнения кода. Ты знаешь когда они выполняются? В тот самый момент, когда оттикал таймер. А когда тикает этот таймер? В начале шага, в конце, в самом шаге? А в какой последовательности у разных объектов он тикает? А если твой игрок неуязвим, а на тебе ДоТ, который сделан на аларме, а аларм тикает у врага? НАХУЙ! Это самое главное.

В-третьих без алармов код проще и понятней.
То, что у тебя написано превращается в:

В криэйт ивент пишеш:
enemy_hit_timer = 0;
enemy_hit_time = 60

В степ ивенте меняешь аларм на:

enemy_hit_timer ++
if enemy_hit_timer > enemy_hit_time{
enemy_hit_timer = 0;
enhit = ...
бла бла бла }

И не думаешь через месяц "а за что у меня отвечает alarm[8]?" и не вспоминаешь "а я этот же аларм использовал для кулдауна регенерации здоровья, надо поменять." У тебя всё в криэйт ивенте хранится.

Нахрена тебе эта ересь?

Показать весь текст
Ответы473854

268 8 фев 2018, 17:14 268 473854

>>473814
За совет спасибо. Про timer я вообще не знал, про алармы узнал из туториалов в связи с этим и использовал. В принципе конкретно в этом случае с врагом у меня это временная мера, пока враг представляет собой красный прямоугольник который бьет меня оранжевым прямоугольников. В будущем планирую привязать obj_enemy_hit к кадру анимации, в которой враг будет бить, так что этот аларм можно будет спокойно вырезать.

Но на всякий пожарный уточню, алармов всего 12 ведь не на всю игру, а на конкретный объект? То-есть alarm[0] прописанный для obj_player не имеет никакого отношения к alarm[0] прописанного для obj_enemy, гейммейкер путать их не будет и они прекрасно живут своей жизнью независимо друг от друга?

Ответы473880

269 8 фев 2018, 18:10 269 473880

>>473854
На объект.

>о-есть alarm[0] прописанный для obj_player не имеет никакого отношения к alarm[0] прописанного для obj_enemy,

И даже alarm на одном obj_enemy не имеет отношения к alarm На другом obj_enemy.
Это просто встроенный неудобный таймер гейммейкера. лучше таймеры делать самостоятельно.

270 9 фев 2018, 20:08 270 474263

Хм... создал сейчас вторую комнату и перемещение между ними через дверь, все работает, но на душе как-то неспокойно. Я решил чтобы не засирать лишними эвентами obj_player создать коллижн ивен внутри самой двери
if (instance_exists(obj_player)) and (key_use) {
room_goto(rm_f1_garage);
obj_player.x = 180;
}
Только после того, как все опробовал и убедился, что плеер перемещается и хп у него остается ровно тоже количество что и было в предыдущей комнате, задумался а почему оно вообще работает. Ведь этот коллижн ивент запускается из самой двери, почему room_goto перемещает именно плеера в другую комнату, а например не саму дверь? Такой код вообще нормальный или я потом с ним наебусь?

Ответы474287474293

271 9 фев 2018, 21:34 271 474287

>>474263
Потому что это не объект игрок перемещается куда-то, а исчезает одна комната и на её месте появляется другая.

Если на каком-то объекте стоит галочка persistent, этот объект остаётся на своём месте.
Остальные обхекты исполняю свой room_end event и исчезают.
Затем появляются объекты новой комнаты.

Строкой obj_player.x = 180; ты меняешь ккординату x игрока. Камера перемещается за ним. Она у тебя сейчас автоматическая, от гейммейкера, и ты её должным образом не контролируешь. Но и комната у тебя, скорее всего, в один экран, поэтому странного поведения камеры ты не видишь.

Ответы474289474301

272 9 фев 2018, 21:43 272 474289

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

Читай мануал:
Note that calling this function does not instantly change rooms, and the room will not change until the end of the current game frame (meaning that any code after this function will still be run, as will some events). This function will also trigger the Room End event.

Команда room_goto поднимает флаг перехода в другую комнату.
Но переход этот происходит только после окончания текущего фрейма.
Также эта команда выполняет room_end event всех объектов.

Порядок выполнения кода такой:
В step event у тебя где-то срабатывает команда room_goto. После этой команды всё продолжается как обычно.
Выполняются step event всех объектов, потом их draw event на самом деле ивентов больше. но сейчас это не важно

После исполнения draw event начинается, собственно, переход в другую комнату.

Сначала выполняется room_end event комнаты вот с ивентами комнаты могу ошибаться
Затем для каждого объекта исполняется room_end event, после чего объект, если он не persistent, уничтожается.

Потом выполняется room_start event новой комнаты. Затем create event всех объектов в новой комнате, затем room_start event всеъ объектов в новой комнате, затем create event новой комнаты, затем room_start event новой комнаты.

Я надеюсь ты понял мысль.

Ответы474301

273 9 фев 2018, 21:53 273 474293

>>474263
>Такой код вообще нормальный или я потом с ним наебусь?

Вот это хорошо:
if (instance_exists(obj_player))

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

274 9 фев 2018, 22:09 274 474301

>>474287
>Потому что это не объект игрок перемещается куда-то, а исчезает одна комната и на её месте появляется другая.
>Если на каком-то объекте стоит галочка persistent, этот Теперь все понятно, на obj_player у меня как раз стоит persistent. Makes total sence.
>>474289
Из этого поста пока мало что понял, но не буду рашить. У меня еще много базовых вещей впереди на освоение. Вернусь к этому чуть позже.

275 16 фев 2018, 19:01 275 476840

Аноны, помогите сделать движение рук. Нужно, чтобы пока нажата ЛКМ, при передвижении курсора справа от игрока его руки целились в сторону курсора, а когда курсор переходит в левую часть экрана, спрайт менялся на противоположный

Ответы476885

276 16 фев 2018, 21:13 276 476885

>>476840
Step Event:

if (mouse_check_button(mb_left)) {
if (mouse_x < x) {
image_yscale = -1;
} else {
image_yscale = 1;
}

image_angle = point_direction(x, y, mouse_x, mouse_y);
}

Ответы477110477115

277 17 фев 2018, 22:50 277 477110

>>476885
Может еще подскажешь, как сделать спрайт рук отдельно от основного

Ответы477167

278 17 фев 2018, 23:03 278 477115

>>476885
И еще при нажатии спрайт выворачивается, но я юзал похожую функцию для поворотов. Если нажать в левую часть, то после нажатия кнопок вправо и влево используется противоположное направление

Ответы477167

279 18 фев 2018, 00:19 279 477167

>>477110
Рисуй в draw event два спрайта.

Основной объект рисуй как
draw_self();
Дополнительный рисуй как
draw_sprite_ext(....) - и вводи для него отдельные переменные
sprite_hands_sprite_index =
sprite_hands_image_number =
sprite_hands_rotation =
sprite_hands_image_xscale =
и так далее. В мануале всё написано.

>>477115
Разжёвывать никто тебе не будет. Ты задаёшь ЭЛЕМЕНТАРНЫЕ вопросы, ответ на них есть в мануале.
Тебе показали способ как это сделать,и подсказали, про что читать. Иди и читай мануал.
пункт draw_sprite_ext

280 25 фев 2018, 22:47 280 480204

Вопрос мёртвому треду: что там по turn-based rpg? Есть гайды о том, как реализовывать битву с действиями и т. д.?
мимонуфак

Ответы480248480276

281 26 фев 2018, 10:02 281 480248

>>480204
Сам пиши, ничего в этом сложного нет

Ответы480312

282 26 фев 2018, 11:20 282 480276

>>480204
Хотел побыть хорошим полицейским и по-доброму ответить на твой вопрос. Но просто не могу.

Ты написал хамский, потребительский пост, который даже не содержит в себе вопроса.

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

Ответы480312480353

283 26 фев 2018, 14:01 283 480312

>>480248
Не знаю ни одного ЯП, в гамак вкатился из-за рекомендаций, мол, очень хорош для новичков.
>>480276
Меня интересует система битв в целом: инициация боя, организация ходов, использование скиллов и предметов из инвентаря, накладывание эффектов, вот это вот всё. Не знаю ничего.

Ответы480331

284 26 фев 2018, 14:40 284 480331

>>480312
И ты ожидаешь, что я тебе тут книгу напишу про то, как это делать, или дам ссылку на гайд "как сделать заебись"?

При том, что ты даже сам не можешь написать, что ты хочешь сделать.

> Не знаю ничего.
Тогда запускай самые первые туториалы по гамаку от Спалдинга и делай астероиды.

Ответы480335

285 26 фев 2018, 14:51 285 480335

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

286 26 фев 2018, 15:11 286 480344

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

Видимо не освоил, иначе знал бы, как работать с объектами.

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

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

Что ты ответишь?

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

Тогда тебе ответят:

Воткни в начало степ ивента объекта obj_enemy такую конструкцию:

if !turn_is_over
{turn_is_over = false;}
else
{exit;}
Дальше пиши код как обычно.

Потом создай кнопку, после нажатия на которую она будет выполнять следующий код
with obj_enemy
{turn_is_over=true}

Теперь после нажатия на эту кнопку у всех твоих врагов флаг turn_is_over станет true. Они выполнят step event один раз и снова установят у себя флаг turn_is_over = false.

>Я бы описал концепт, если бы беседовал с кем-нибудь индивидуально
Ты /gd с /b попутал. Тут всего 15 человек сидит. В общей сложности.

Я всё ещё добрый полицейский. Но это в последний раз.

286 26 фев 2018, 15:11 286 480344

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

Видимо не освоил, иначе знал бы, как работать с объектами.

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

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

Что ты ответишь?

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

Тогда тебе ответят:

Воткни в начало степ ивента объекта obj_enemy такую конструкцию:

if !turn_is_over
{turn_is_over = false;}
else
{exit;}
Дальше пиши код как обычно.

Потом создай кнопку, после нажатия на которую она будет выполнять следующий код
with obj_enemy
{turn_is_over=true}

Теперь после нажатия на эту кнопку у всех твоих врагов флаг turn_is_over станет true. Они выполнят step event один раз и снова установят у себя флаг turn_is_over = false.

>Я бы описал концепт, если бы беседовал с кем-нибудь индивидуально
Ты /gd с /b попутал. Тут всего 15 человек сидит. В общей сложности.

Я всё ещё добрый полицейский. Но это в последний раз.

Показать весь текст
Ответы480347

287 26 фев 2018, 15:15 287 480347

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

Ответы480351

288 26 фев 2018, 15:20 288 480351

>>480347
Здесь нет никого, кроме меня. Захочу ли я тебе что-то объяснять зависит только от тебя.

Ответы480352

289 26 фев 2018, 15:22 289 480352

>>480351
И что же мне нужно делать, чтобы добиться твоего одобрения?

Ответы480353

290 26 фев 2018, 15:26 290 480353

>>480352
Задавать правильные вопросы вот по этой инструкции >>480276

Ответы480354

291 26 фев 2018, 15:28 291 480354

>>480353
Мог бы, но не хочу палить концепт. Могли бы обменяться мылами и поговорить наедине.

Ответы480367480394

292 26 фев 2018, 15:37 292 480367

>>480354
>Мог бы, но не хочу палить концепт.
Смирись с тем, что твой концепт не интересен никому.

>Могли бы обменяться мылами и поговорить наедине.
Я сижу на анонимном форуме не потому, что хочу меняться мылами и говорить с кем-то наедине.

293 26 фев 2018, 16:13 293 480394

>>480354
>Мог бы, но не хочу палить концепт.
Ну бля, ну так хотелось спиздить у тебя идею очередной рпгшки, ну чо вы опять обламываете(9(

Ответы480398480407

294 26 фев 2018, 16:19 294 480398

>>480394
скоро будет ажиотаж вокруг рпг, успей вкатиться

Ответы480401

295 26 фев 2018, 16:21 295 480401

>>480398
Ага, скоро ведь девяностые, рпг на пике своей популярности

296 26 фев 2018, 16:27 296 480407

>>480394
Я просто не хочу шкварить своё говноподелие об двач, тем более /gd.

Ответы480409

297 26 фев 2018, 16:28 297 480409

>>480407
Но у тебя нет никакого поделия. И не бует.

Ответы480416

298 26 фев 2018, 16:38 298 480416

>>480409
Ну раз ты так сказал.

299 27 фев 2018, 14:57 299 480762

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

Ответы480777

300 27 фев 2018, 16:04 300 480777

>>480762
Ты определись, тебе стрельбу нужно реализовывать или повороты рук?

У тебя 2д или 3д? Вектор? Руки - отдельный объект? С вот этим всем определись.

А лучше всего - нарисовать каждый кадр положения рук и тела для стрельбы, иначе будет выглядеть как говно.

Ответы480813

301 27 фев 2018, 16:40 301 480813

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

Ответы480819

302 27 фев 2018, 17:21 302 480819

>>480813
>>потому что тогда нельзя будет поворачиваться и стрелять одновременно

Чтоблять?

Ты сначала объясни, что ты хочешь, картинки запости. Понять что-то из твоего лепета невозможно.

Ответы480892

303 27 фев 2018, 21:16 303 480892

>>480819
Да хуле непонятно-то? Мне надо чтобы при стрельбе можно было вертеть руками во все стороны и это не выглядело по-уебански. Я пытался сделать это отдельным спрайтом рук и получилась хуйня. Вот я и спрашиваю другие способы сделать это

Ответы480895

304 27 фев 2018, 21:33 304 480895

>>480892
Делай 3д хуле. Как ещё можно сделать не рисуя отдельные кадры для каждого положения, еблан?

Ответы480897

305 27 фев 2018, 21:41 305 480897

>>480895
У тебя 2d вид сбоку? Или 3d? Или изометрия? Ты не способен видео залить на двач? Иди учись.

Если 2d вид сбоку - рисуй.

Ты из автомата стреляешь или из пистолета?

Где ты видел, чтобы кто-то за спину себе стрелял? Как ты вообще себе это представляешь?

Посмотри как в ghost 1.0 сделано. Она наклоняется вперёд и назад туловищем, сгибает руки, отставляет назад ногу, опускает и поднимает голову и стреляет только в передней полусфере. Если надо стрелять назад - разворачивается.
Она векторная, состоит из кусков, но каждый кадр стрельбы отрисован. Каждые 10 градусов поза чуть-чуть меняется, а в пределах 10 градусов ходят только руки.

Если ты хочешь тупо вращать неанимированный спрайт рук - у тебя и получится тупо. Чтобы было хорошо нужно много работать.

Ответы480920

306 27 фев 2018, 23:17 306 480920

>>480897
>Каждые 10 градусов поза чуть-чуть меняется
Ну и это будет выглядеть дёргано и будет ощущение, что пуля летит не из дула
>Где ты видел, чтобы кто-то за спину себе стрелял? Как ты вообще себе это представляешь?
Ну так за спиной у меня спрайт меняется на противоположный

Ответы480926

307 27 фев 2018, 23:47 307 480926

>>480920
>Ну и это будет выглядеть дёргано и будет ощущение, что пуля летит не из дула

Ты жопой читаешь? Поза меняется каждые 10 градусов. В пределах этих 1- градусов перемещаются руки. Открой ghost 1.0 да посмотри как там сделано.

Чтобы это повторить мне, например, нужно недели две рисовать. У меня уже опыт некоторый есть со спайном. Тебе - два месяца понадобится. Готов? Вперёд!

284 Кб, 850x531
308 2 мар 2018, 21:38 308 482212

Поднять паруса!!!
https://rutracker.org/forum/viewtopic.php?t=5528246

Ответы482213482222482241486329513550

309 2 мар 2018, 21:41 309 482213

>>482212
ЙАРРРРРРРРРР

310 2 мар 2018, 22:18 310 482222

>>482212
Хотел посидеть на раздаче, но самому не скачать.

Ответы482231482232

311 2 мар 2018, 23:34 311 482231

>>482222
Я сидел на раздаче, но у меня она перестала идти

312 2 мар 2018, 23:36 312 482232

>>482222
Да че ты врежч, скорость около 1мб

313 3 мар 2018, 00:51 313 482241

>>482212
посижу на раздаче с недельки две, если дадите докачать до фулла

19 Кб, 417x388
314 3 мар 2018, 19:35 314 482368

315 3 мар 2018, 20:24 315 482376

щитпостинг

316 3 мар 2018, 20:28 316 482378

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

317 5 мар 2018, 07:52 317 482800

Кто-нибудь знает, как в GMS2 под windows сохранить файлы где-то кроме "User\AppData\Local\project_name"? Разумеется, без вызова диалога. Нашёл для обхода этого "сэндбокса" несколько расширений от пользователей, но они все на гейммейкер версии 1.4. Буду очень признателен, если кто подскажет что-нибудь.

318 14 мар 2018, 00:08 318 486329

>>482212
Всё скачалось (скорость 1мб), сижу на раздаче.

319 14 мар 2018, 10:46 319 486508

>>472725
>Блин, у тебя же туториал открыт
Это не туториал, а пример.

320 17 мар 2018, 21:52 320 487982

Анон, почему, когда я иду в вертикальную коллизию и пытаюсь подвигать вправо-влево, я не двигаюсь до тех пор, пока не перестану идти в стену, но если я делаю аналогично с вертикальной коллизией, то такого не происходит. Что за хуйня?

Код:
obj_player

create

w_spd = 2;
n_spd = 3;
r_spd = 6;
spd = 3;

draw

draw_self();

step

//UPDATE INPUT
input_left = keyboard_check(vk_left);
input_right = keyboard_check(vk_right);
input_up = keyboard_check(vk_up);
input_down = keyboard_check(vk_down);
input_walk = keyboard_check(vk_control);
input_run = keyboard_check(vk_shift);

//ALTER SPEED
if(input_walk or input_run) {
spd = abs((input_walkw_spd) - (input_runr_spd));
} else {
spd = n_spd;
}

//RESET MOVE VARIABLES
moveX = 0;
moveY = 0;

//INTENDED MOVEMENT
moveY = (input_down - input_up) spd;
if(moveY == 0){ moveX = (input_right - input_left) spd; }

//COLLISION CHECK
//Horizontal
if(moveX != 0){
if(place_meeting(x+moveX, y, obj_collision)){
repeat (abs(moveX)){
if(!place_meeting(x+sign(moveX), y, obj_collision)){ x += sign(moveX);}
else { break; }
}
moveX = 0;
}
}

//Vertical
if(moveY != 0){
if(place_meeting(x, y+moveY, obj_collision)){
repeat (abs(moveY)){
if(!place_meeting(x, y+sign(moveY), obj_collision)){ y += sign(moveY);}
else { break; }
}
moveY = 0;
}
}

//APPLY MOVEMENT
x += moveX;
y += moveY;

320 17 мар 2018, 21:52 320 487982

Анон, почему, когда я иду в вертикальную коллизию и пытаюсь подвигать вправо-влево, я не двигаюсь до тех пор, пока не перестану идти в стену, но если я делаю аналогично с вертикальной коллизией, то такого не происходит. Что за хуйня?

Код:
obj_player

create

w_spd = 2;
n_spd = 3;
r_spd = 6;
spd = 3;

draw

draw_self();

step

//UPDATE INPUT
input_left = keyboard_check(vk_left);
input_right = keyboard_check(vk_right);
input_up = keyboard_check(vk_up);
input_down = keyboard_check(vk_down);
input_walk = keyboard_check(vk_control);
input_run = keyboard_check(vk_shift);

//ALTER SPEED
if(input_walk or input_run) {
spd = abs((input_walkw_spd) - (input_runr_spd));
} else {
spd = n_spd;
}

//RESET MOVE VARIABLES
moveX = 0;
moveY = 0;

//INTENDED MOVEMENT
moveY = (input_down - input_up) spd;
if(moveY == 0){ moveX = (input_right - input_left) spd; }

//COLLISION CHECK
//Horizontal
if(moveX != 0){
if(place_meeting(x+moveX, y, obj_collision)){
repeat (abs(moveX)){
if(!place_meeting(x+sign(moveX), y, obj_collision)){ x += sign(moveX);}
else { break; }
}
moveX = 0;
}
}

//Vertical
if(moveY != 0){
if(place_meeting(x, y+moveY, obj_collision)){
repeat (abs(moveY)){
if(!place_meeting(x, y+sign(moveY), obj_collision)){ y += sign(moveY);}
else { break; }
}
moveY = 0;
}
}

//APPLY MOVEMENT
x += moveX;
y += moveY;

Показать весь текст
Ответы487983

321 17 мар 2018, 21:53 321 487983

>>487982
Ёбаный курсив. Там в двух местах есть звёздочки, если что.

322 17 мар 2018, 23:36 322 487995

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

if(moveY == 0){ moveX = (input_right - input_left) spd; }

Вообще это пиздец - то что ты написал. Надеюсь ты первый день просто как кодить учишься.

Ответы488007

323 18 мар 2018, 00:34 323 488007

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

560 Кб, 700x700
324 18 мар 2018, 01:16 324 488012

>>439561 (OP)
Гд, родимый, помоги пожалуйста забороть ошибку:

############################################################################################
FATAL ERROR in
action number 1
of Step Eventunit1
for object obj_unit_effector:

Variable <unknown_object>.<unknown variable>(100007, -2147483648) not set before reading it.
at gml_Object_obj_unit_effector_Collision_2de17de7_8960_48b4_917c_ea87cd83c070 (line 5) - if (creator.allie_status != other.allie_status)
############################################################################################
--------------------------------------------------------------------------------------------
stack frame is
gml_Object_obj_unit_effector_Collision_2de17de7_8960_48b4_917c_ea87cd83c070 (line 5)

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

Рандомпик

Ответы488018

325 18 мар 2018, 02:24 325 488018

>>488012
Скорее всего ты не проверяешь существуют ли инстансы перед тем как ими манипулировать. Или не назначаешь или неправильно назначаешь переменную creator. Или у другого объекта просто нет такой переменной как allie status. Или ты случайно назначил юнит родителем эффектора или еще какие-нибудь проблемы с наследованием.
В общем показывай весь код и общий вид объекта эффектора и заодно скрипт который его создает.

Ответы488020

326 18 мар 2018, 02:48 326 488020

282 Кб, 1600x1160260 Кб, 1600x1160286 Кб, 1600x1160

>>488018
Вот. Только не пугайся кода, я в гмс всего два дня сижу.

Ответы488022

327 18 мар 2018, 03:30 327 488022

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

Ответы488023488024

328 18 мар 2018, 03:43 328 488023

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

283 Кб, 2779x1190
329 18 мар 2018, 03:50 329 488024

>>488022
В этот раз игра хотя бы открылась, хоть и не надолго.

(Алсо, можешь поподробнее объяснить, почему получается, что я ситуативно назначаю, но однозначно спрашиваю? Или какой-нибудь урок/статью может посоветуешь, чтобы разобраться)

Ответы488026

330 18 мар 2018, 04:34 330 488026

>>488024
>можешь поподробнее объяснить
Что там объяснять, получается так потому что ты не назначаешь создателя сразу же при создании (и не проверяешь назначен ли он перед тем как запросить статус, но это в данном случае было бы необязательно). То есть effector.creator=id дожно быть на следующей строчке после instance_create(effector), а не по разную сторону фигурных скобок двух-трех разных if else, у которых вся суть в том что код срабатывает только в зависмости от ситуации.

Да и вообще делать это в step не самая лучшая идея, ты создаешь допустим 60 объектов в секунду, а нужен из них только один, только когда срабатывает alarm, соотвественно лучше и перенести в аларм.

Ответы488029

331 18 мар 2018, 04:55 331 488029

>>488026
Вау, сейчас сделал как ты сказал, и все заработало. Спасибо тебе огромное, родина не забудет твоего подвига!

2 Кб, 500x500
332 18 мар 2018, 14:21 332 488100

Анон, у меня проблема. Делаю анимации, которые разложены в чарлисте, с которого берутся необходимые куски.
Есть объект игрока, который имеет спрайт 200x200 в виде белого квадрата, но с коллизией и центровкой персонажа. В коде:

obj_player

create

x_frame = 0;
y_frame = 0;

draw

var anim_length = 10;
var frame_size = 200;
var anim_speed = 3;

draw_sprite_part(charlist,0,floor(x_frame)звёздочкаframe_size,y_frame,frame_size,frame_size,x,y);

if (x_frame < anim_length -1) {
x_frame += anim_speed/60;
} else {
x_frame = 0;
}

В итоге получается хуйня, как на пикриле: посередине квадрат, за которым в углу находится персонаж. Жёлтое - коллизия. В чём подвох?

Ответы488106488118

333 18 мар 2018, 14:34 333 488106

>>488100
UPD: отключил родителя, который отвечал за глубину объектов, и квадрат исчез, но персонаж всё ещё в углу.

334 18 мар 2018, 15:03 334 488118

>>488100
>В чём подвох?
>NOTE: When drawing with this function, the sprite x offset and y offset are ignored and the sprite part will be drawn with the top left corner at the specified x / y position in the room.
Отнимай соответствующие оффсеты из координатов x и y в draw_sprite_part.

Ответы488121488123

335 18 мар 2018, 15:09 335 488121

>>488118
Объясни, пожалуйста, про какой именно оффсет идёт речь. Первый кадр анимации расположен в левом верхнем углу.

Ответы488123

336 18 мар 2018, 15:13 336 488123

>>488118
>>488121
Падажжи, оффсета - это центровка? Тот маленький крестик? Теперь понятно. Спасибо, запомнб на будущее.

337 20 мар 2018, 09:58 337 488591

Где-то читал, что для gms2 будет поддержка Нинтендо Сыча. Но ведь Nintendo не дают левым разработчикам выкладываться? Или как?

Ответы488600

338 20 мар 2018, 10:20 338 488600

>>488591
> Где-то читал, что для gms2 будет поддержка Нинтендо Сыча. Но ведь Nintendo не дают левым разработчикам выкладываться? Или как?

Как и со всеми соснулями - пишешь заявление с приложенным диздоком нинтенде, что ты такой хороший и нинтендо обязательно должна разрешить разрабатывать тебе твою игру про корованы. Далее если соне одобрит - подписываешь NDA и покупаешь девкит. Уведомляешь нинтенду что будешь писать на свитч.

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

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

Ответы488601488603488722

339 20 мар 2018, 10:21 339 488601

>>488600
>если соне одобрит

Нинтенда, т.е.

340 20 мар 2018, 10:23 340 488603

>>488600

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

Ответы488606488722488763

341 20 мар 2018, 10:27 341 488606

>>488603
Форма заявления на анальное рабство здесь:

https://developer.nintendo.com/register/create

Ответы488722

342 20 мар 2018, 16:07 342 488722

>>488606
>>488600
>>488603

Йеп. Спасибо огромное.

Стало быть какой-то отдельный Nintendo SDK не нужен и я смогу из "родной среды", в случае чего, портировать под свич?

343 20 мар 2018, 18:22 343 488763

>>488603
Одно из этих пожеланий будет нон стопом ебашить марио

Ответы488784

344 20 мар 2018, 19:15 344 488784

>>488763
@
А ТЫ И НЕ ПРОТИВ

Кстати, парни, в GML можно как-то объявлять свои функции? Хочу, например апдейт состояния персонажа вынести в отдельный блок и вызывать его при определённых обстоятельствах (внутри step ивента, но не каждый раз)

Ответы488786

345 20 мар 2018, 19:19 345 488786

>>488784
Переформулирую вопрос, ибо я даун. Я наю, что скрипт вызывается как функция. А как работает передача туда значений? Нужно ли это вообще?

Ответы488834

346 20 мар 2018, 23:22 346 488834

>>488786
>А как работает передача туда значений?
Слегка через жопу. При вызове скрипта стандартно -- пишешь аргументы в скобках через запятую. А в самом скрипте будет что-то вроде
var xyz=argument0
var qwe=argument1
и так далее.
>Нужно ли это вообще?
Естественно, и возвращать из них значения тоже нужно.

Ответы488839

347 20 мар 2018, 23:58 347 488839

>>488834
всё, на самом деле я и сам разобрался. Не привык я к тому, что в документации действительно ВСЁ написано. Я такое наверное только к РенПаю видел, и то там пользовательские вики, а не официалка.

Но всё равно большое спасибо. Я рад что у вас тут дружелюбное коммьюнити.

348 29 мар 2018, 19:48 348 492927

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

Идея была проста:
два массива, в одном символы допустимые для данной сложности, во втором символы нагенерированные для уровня.
После генерации спавнятся блоки на которые наносятся эти символы по порядку.

Но я э... Видимо, где-то что-то проебал по фактике и мне пришлось перезагружать компьютер, потому что он чуть не загорелся, так и не запустив окошко. Но он так и не выдал ошибки. Я боюсь открывать этот проект у себя :(
чё делать?

Ответы492937493045

349 29 мар 2018, 20:32 349 492937

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

350 29 мар 2018, 20:57 350 492942

Анон, объясни, как ебануть простейший спрайт с анимацией. Есть меню. В Draw GUI пытался прикрепить анимированный фон, но нихуя не понимаю, что использовать: draw_sprite_ext не работает, вроде. Можешь помочь?

Ответы492947493047

351 29 мар 2018, 21:29 351 492947

>>492942
>draw_sprite_ext не работает, вроде
такого быть не может

Ответы492952

352 29 мар 2018, 21:40 352 492952

>>492947
Тогда как делать то, что я описал, через него? Объясни, пожалуйста.

Ответы492955

353 29 мар 2018, 21:44 353 492955

>>492952
братан, причин множество. кривой 3д-режим, который не справляется с переходами из него, depth объекта выше задника, прочее говно с view, alpha в 0, крч тонны их. я не смогу угадать. это как если бы ты спросил "почему у меня моделька в юнети не импортируется".

Ответы492956

354 29 мар 2018, 21:52 354 492956

>>492955
Альфа на единичке. Всё что могу сказать.
Если в subimg выставить -1, то спрайт тупо начнёт быстро пролистываться, хотя у меня скорость анимации на единице.
Можешь хотя бы объяснить, как это проворачивать с нуля?

Ответы492957

355 29 мар 2018, 21:56 355 492957

>>492956
>Можешь хотя бы объяснить, как это проворачивать с нуля?
берешь и без задней мысли отрисовываешь.
draw_sprite(x,y, sprite_index, image_index); и всё.
в том то и проблема что инфы от тебя мало вата

Ответы493012

356 30 мар 2018, 06:43 356 493012

>>492957
Хорошо, распишу подробнее.
Нужно, чтобы фон растягивался по всей комнате. То есть наверное нужно брать начало в 0,0, плюс высоту-ширину обоев, плюс скейлить. Но как ебануть нормальную анимацию с нужной скоростью?

sage 357 30 мар 2018, 11:37 357 493045

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

Вуаля. Далее жамкай f9 пока не поймёшь, где же ошибка.

358 30 мар 2018, 11:45 358 493047

>>492942
draw_sprite_ext прекрасно работает.

create event:
animation_timer = 0;
animation_speed = 0.08;

bg_sprite_ = spr_background
bg_max_frame = sprite_get_number(bg_sprite) - 1;
bg_alpha = 0.5;
bg_xscale, bg_yscale = вычисляешь сам

draw_event
var frame = animation_timer хпишу Х вместо звёздочки animation_speed;
if frame > bg_max_frame {animation_time = 0; frame = 0;}
draw_sprite_ext(bg_sprite, frame, x, y, bg_xscale, 0, c_white, bg_alpha)

Вот тебе счастье

Ответы493048493051493267

359 30 мар 2018, 11:46 359 493048

>>493047
>draw_sprite_ext(bg_sprite, frame, x, y, bg_xscale, bg_yscale, 0, c_white, bg_alpha)

Ответы493267

360 30 мар 2018, 11:49 360 493051

>>493047
draw_event
var frame = animation_timer хпишу Х вместо звёздочки animation_speed;
animation_timer ++; пропустил строчку
if frame > bg_max_frame {animation_time = 0; frame = 0;}
draw_sprite_ext(bg_sprite, frame, x, y, bg_xscale, 0, c_white, bg_alpha)

Ответы493267

361 30 мар 2018, 18:40 361 493267

>>493047
>>493048
>>493051
Анон, всё работает. Добра!
Олсо, ещё заметил, что нужно офсету вычитать, ну или крепить её в центр, но всё равно спасибо.

1,8 Мб, mp4,
1600x900, 0:19
362 30 мар 2018, 20:15 362 493292

>>439561 (OP)
Здарова, игроделы. Хуй знает, может кто сталкивался с проблемой. Когда объект движется по диагонали, то камера начинает дергаться. В чем проблема то может быть.

Ответы493578493584

363 31 мар 2018, 18:55 363 493544

Анон, где можно посмотреть различные команды для дебаффа? Вот, например, мне нужно, чтобы у меня выводились офсеты объектов с их координатами по y. Как это сделать?

Ответы493579493588

364 31 мар 2018, 23:02 364 493578

>>493292
Подкрути в настройках камеры границы с 200 до 198 и посмотри стало ли лучше. Подгони там же аспект порта под аспект камеры, пусть будет 800х800 например.

Ответы493584

365 31 мар 2018, 23:08 365 493579

>>493544
В draw_event объекта пиши draw_text(x+30,y-30,переменная).

Ответы493588

sage 366 31 мар 2018, 23:48 366 493584

>>493292
А я тебе лучше совет дам, чтем этот >>493578

Не используй встроенную гамаковскую камеру. Делай свою.

В этом треде есть всё, что нужно:
https://forum.yoyogames.com/index.php?threads/guide-meet-the-new-camera-system.12269/

Ответы493639

sage 367 1 апр 2018, 00:13 367 493588

>>493544
Вот здесь.

https://docs2.yoyogames.com/index.html?page=source/_build/2_interface/2_extras/debugging.html

А вообще пиши сам, как этот >>493579 советует. Будет удобней.

368 1 апр 2018, 13:43 368 493639

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

369 1 апр 2018, 13:50 369 493641

>>439561 (OP)
Алсо вопрос. Запарно ли сделать так, чтобы спрайт врага изменялся в зависимости от положения? Например у меня 8 сторон движения и соответственно 8 спрайтов. Какая вообще должны быть логика изменения спрайтов? Мол if direction = значение градуса {
sprite_index = spr_move_top;
}
или что то вроде такого.

Ответы493646

370 1 апр 2018, 15:21 370 493646

>>493641

Всё будет так, как захочешь лично ты. Нет такой логики, которая "должна" быть.

Я бы сделал так:
Ввёл бы врагу две переменных dirx и diry.

Сделал бы 3 вот таких переключателя:

if dirx == 1
{
switch diry
{
case -1: sprite_index = sprite_walk_right_top; break;
case 0: sprite_index = sprite_walk_right; break;
case 1: sprite_index = sprite_walk_right_bot; break;
}
}

if dirx == 0
{
switch diry
{
case -1: sprite_index = sprite_walk_top; break;
case 1: sprite_index = sprite_walk_bot; break;
}
}

if dirx == -1
{
switch diry
{
case -1: sprite_index = sprite_walk_left_top; break;
case 0: sprite_index = sprite_walk_left; break;
case 1: sprite_index = sprite_walk_left_bot; break;
}
}

Можно даже свитч из свитчей, но так код, имхо, более читаемый.

370 1 апр 2018, 15:21 370 493646

>>493641

Всё будет так, как захочешь лично ты. Нет такой логики, которая "должна" быть.

Я бы сделал так:
Ввёл бы врагу две переменных dirx и diry.

Сделал бы 3 вот таких переключателя:

if dirx == 1
{
switch diry
{
case -1: sprite_index = sprite_walk_right_top; break;
case 0: sprite_index = sprite_walk_right; break;
case 1: sprite_index = sprite_walk_right_bot; break;
}
}

if dirx == 0
{
switch diry
{
case -1: sprite_index = sprite_walk_top; break;
case 1: sprite_index = sprite_walk_bot; break;
}
}

if dirx == -1
{
switch diry
{
case -1: sprite_index = sprite_walk_left_top; break;
case 0: sprite_index = sprite_walk_left; break;
case 1: sprite_index = sprite_walk_left_bot; break;
}
}

Можно даже свитч из свитчей, но так код, имхо, более читаемый.

Показать весь текст

371 8 апр 2018, 21:08 371 494790

Допустим, мне нужен рандомное число от 0 до 60, но мне нужно исключить отрезок от 20 до 40. Как это сделать через irandom_range? Это вообще возможно?

Ответы494793494796

372 8 апр 2018, 22:00 372 494793

>>494790
не уверен в синтаксисе, давно на GML не писал

while true {
var num = irandom_range(0, 60);
if (num < 20 || num > 40) break;
}

Ответы494796

373 8 апр 2018, 23:02 373 494796

>>494790
if(irandom(1))
num = irandom(20);
else
num = irandom_range(40, 60);

>>494793
Чет оподливился с этого кода.

Ответы494970

374 9 апр 2018, 03:34 374 494815

>>439561 (OP)
Господа, я тут недавно начал осваивать сурфейсы. Собсна вопрос, как на сурфейсе отрисовывать анимированный спрайт?

Ответы494817

375 9 апр 2018, 05:18 375 494817

>>494815
Отбой, уже сам разобрался

9 Кб, 600x600
376 9 апр 2018, 20:42 376 494970

>>494796
Не работает нихуя.
У меня есть хуйня, при помощи которой можно выкидывать предметы из инвентаря. Выкидываются они по окружности, как на рисунке, но в красные области по бокам выкидывать нельзя, потому что предмет там застревает с нихуя и его нельзя подобрать. Следовательно мне нужно исключить области от 330 до 30 и от 150 до 210 градусов. Если я пишу
var itemdir;
if(irandom(30)){
itemdir = irandom(150);
} else {
itemdir = irandom_range(210, 330);
}

, то нихуя не работает.

Ответы494971494991494992

377 9 апр 2018, 20:46 377 494971

>>494970
Ёбаный высер Абу не может нормально показывать табы. Вот лучше:
var itemdir;
if(irandom(30)){
itemdir = irandom(150);
} else {
itemdir = irandom_range(210, 330);
}

Ответы494987

378 9 апр 2018, 22:00 378 494987

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

Для нового примера сойдет такой код:
rand = irandom_range(30, 270);
if(rand >= 150)
rand += 60;

379 9 апр 2018, 22:25 379 494991

>>494970
>if(irandom(30))
Ты вообще задумываешься перед тем, как код копипастить?

380 9 апр 2018, 22:27 380 494992

>>494970
>предмет там застревает с нихуя
Значит у тебя баг в коде, ищи его.

Ответы495006

57 Кб, 456x566
381 9 апр 2018, 23:54 381 495006

>>494992
Уже нашёл, спасибо.

382 12 апр 2018, 19:33 382 495519

Как убрать определённую составляющую из энумератора? Допустим, у меня код типа такого:
enum item {
item1 = 1,
item2 = 2,
...
item100 = 100,
}

Как мне в irandom_range(1, 100) убрать, скажем, тридцатый номер?

Ответы495522

383 12 апр 2018, 20:19 383 495522

>>495519
Можно сделать

var item = choose(irandom_range(1,29),irandom_range(31,100))

или просто
item = choose(item.item1,item.item2,item.item5)
если веще мало.

384 14 апр 2018, 02:01 384 495708

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

Ответы495709

3,7 Мб, webm,
1920x1012, 0:43
385 14 апр 2018, 02:30 385 495709

>>495708
Ты не о том паришься.
Разбивай на скрипты и регионы смело.
Я тоже долго парился о такой фигне.

Ответы495711

386 14 апр 2018, 02:50 386 495711

>>495709
Да я все время блять не о том парюсь из-за своего ебаного перфекцеонизма. Тем более я еще даже на стадии прототипирования, где по идее велосипедить и костылить вполне норма, но нет блять, мне нужно сразу все в финальной архитектуре и с минимальной нагрузкой на железо. Но в принципе так, как ты скинул, я себе все это дело и представлял. Мде, работа прогером явно не для меня.

Ответы495719

387 14 апр 2018, 11:02 387 495719

>>495711
Вот нашел чем удивить. Когда я только начинал, точно так же пытался всё сделать максимально эффективно. Например по мтнимуму вводил новые переменные, они же память занимают! Лучше я одну и ту же переменную буду использовать как таймер для всех фаз и всех состояний. Но это же полная хуйня.

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

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

Ответы623768

388 19 апр 2018, 05:53 388 496394

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

Ответы496503

389 19 апр 2018, 21:08 389 496503

>>496394
>Как заставить скрипт выполняться несколько раз?
https://docs.yoyogames.com/source/dadiospice/002_reference/001_gml language overview/401_11_for.html

Ответы496531

390 19 апр 2018, 23:10 390 496531

>>496503
Ну то есть 2 вариант. Жаль. Было бы прикольно, если бы была команда по типу "повторить" выполнение скрипта и писать ее в самом скрипте.

Ответы496533

3 Кб, 322x101
391 19 апр 2018, 23:46 391 496533

>>496531
>если бы была команда по типу "повторить" выполнение скрипта
так у тебя степ каждый кадр это делает

Ответы496535

392 20 апр 2018, 00:09 392 496535

>>496533
Но мне это нужно не в степе, а внутри самого скрипта, пока степ "спит". А кстати, можно ли вызвать скрипт в теле его самого?

Ответы496543

393 20 апр 2018, 00:40 393 496543

>>496535
>внутри самого скрипта
а почему бы и нет?
>To execute a script from an object or a time line you can use the Execute Script action , but you can also call it in a code box using the actual script name as if it were a function or even by using the GML function script_execute.
script_execute(scr, arg0, arg1, arg2, ...);

Ответы496559

394 20 апр 2018, 01:24 394 496559

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

395 21 апр 2018, 15:37 395 496767

>>458250
Кинешь игру заценить?

396 21 апр 2018, 16:25 396 496772

>>457512
>как Gamemaker экспортирует в html5
Очень хорошо, он из GML генерирует аналогичные функции на js и потом обфусцирует их. Правда, некоторые функции иногда могут не работать.

397 21 апр 2018, 16:32 397 496773

>>457951
Можно использовать скелетные анимации.

398 21 апр 2018, 20:52 398 496839

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

399 26 апр 2018, 16:21 399 497356

>>439561 (OP)
Анон, выручай.
Проснулся из глубокого сна, лол.
В 2011 баловался с GM 8.0., в 2012 купил в стиме game maker stuido за даллары, но так нихуя и не сделал, но потом узнал, что моя лицензия походу стала бесплатной.
Что там сейчас в 1.4? Можно ли на ней делать и релизить бесплатные игры в том же стиме? Можно ли монетизировать рекламой внутри игры?(да, влажные фантазии, просто не смог найти адекватной лицензии). В том же юнити все просто, получаешь больше 100к $ - покупай лицензию.
Или для все этого нужно покупать анальную 2.0 студию?

Ответы498624

400 28 апр 2018, 06:03 400 497536

Нахуя нужно Draw_self;
Смотрю гайди, часто пишут. По логике нарисовать объект, но он и так сука есть. Зачем нужно это?

Ответы497541

401 28 апр 2018, 08:06 401 497541

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

Ответы497542497544

402 28 апр 2018, 08:06 402 497542

>>497541
пропадает*

403 28 апр 2018, 08:30 403 497544

>>497541
Благодарю

11 Кб, 610x70
404 1 мая 2018, 08:51 404 497907

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

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

Есть ещё какие-то варианты? Или, мб, ломаная версия (только на период разработки. Как только я начну собирать проект я обязательно куплю лицензию)

Ответы497920

405 1 мая 2018, 12:30 405 497920

>>497907
>Тратить тонну бабла особо не охота
Берешь коммерческий продукт для разработки. Говоришь что тратить бабла не охота. Логика?

>Есть ещё какие-то варианты?
Дохрена. От взять старую ломаную пиратку гамака до фришных инструментов типа с++. Выбирай на вкус.

Ответы497964497970

406 1 мая 2018, 21:21 406 497964

>>497920
>взять старую ломаную пиратку гамака до фришных инструментов типа с++
и через какой отрезок времени будет готов прототип на гмл и через какой на цпп?
ну конечно если это не match3 :3

407 1 мая 2018, 23:25 407 497970

>>497920
>тратить бабла не охота
Не охота, до тех пор, пока то, что я делаю не оформится в играбельный вид. Я же говорю, в целом, я более чем готов платить за лицензию. Но какой смысл покупать её, если, я не знаю, я где нибудь в середине пойму, что мне не хватает возможностей? Или, там, что всё лагает как кусок говна.

Потом я, в любом случае, купил бы лицензию чтоб собрать проект

408 8 мая 2018, 13:49 408 498624

>>497356
Бамп вопросу.
Тредик, не умирай!

1,2 Мб, 1920x1080
409 13 мая 2018, 06:45 409 499215

Матерые кодеры, если таковые имеются, я никогда не работал кодером, но свою игру делаю сам, расскажите, когда кодер понимает, что его код вполне хорошо выглядит, и в целом надежен, понятен (читай переполнен комментариями) и его можно пускать в свет?

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

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

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

Ответы499216499229

410 13 мая 2018, 07:30 410 499216

>>499215
> расскажите, когда кодер понимает, что его код
как только он написан. тут, понимаешь, без реальных образцов разного кода не обойтись. лаконичность (DRY, KISS) очень растяжимое понятие. кто-то жарит красивые однострочники, чтобы вместо 500 строчек было 100, а кому-то надо 100 строк без извратов с синтаксисом, третий напишет 1500 строчек с очень продуманным api и максимально высокой отчуждаемостью, а четвертый жахнет в 20 строк, но с миллионом тормозных зависимостей и "небольшим" сайд-эффектом. и автор каждого решения будет считать свой код правильным и хорошим. важно иметь опыт в каждом из этих подходов - тогда код становится инструментом. чем длиннее инструкция к молотку (комментов к коду) - тем больше он говно. и еще важно пройти этап тяжелых задач (кодеры постоянно комплексуют из-за тривиальных задач). чтобы желание "все переписать" отбилось, чтобы не плодить лишние классы... чтобы не было оверинжиниринга, чтобы у написание кода была прозрачная цель. и вот когда оба этих "важно" пройдены - только тогда ты можешь смастерить честный молоток, а не ходить по галочкам "меньше строчек" и "полное покрытие тестами". хороший код пишется медленно (пусть и быстрее из раза в раз), плохой быстро. сила в том, чтобы стараться везде засунуть говнокод, но угадывать места, где этого делать не стоит.

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

Ответы499243

22 Кб, 800x600
411 13 мая 2018, 11:26 411 499229

>>499215
с опытом
например я елси посмотрю свой код год назад у меня рукалицо, и я уверен что через год у меня будет такое же чувство если я буду смотреть на свой код в текущий момент
но вообще не еби мозги, прототип всегда может быть таким, если работает то заебись, потом отрефакторишь, когда общая картина появится

Ответы499243

412 13 мая 2018, 11:34 412 499230

в чем разница межу обычной компиляцией и YYС? Внутри APK не нашел ничего особо отличающегося
Поясните за компиляцию?

Ответы499244

413 13 мая 2018, 15:22 413 499243

>>499216
>>499229
Окей, спасибо, попробую дальше говнокодить, мб понимание придет

414 13 мая 2018, 15:50 414 499244

>>499230
в гугле есть инфа

Ответы499245

415 13 мая 2018, 15:52 415 499245

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

Ответы499246

416 13 мая 2018, 15:59 416 499246

>>499245
https://www.youtube.com/watch?v=BPJ4hCfTZEM

Лично у меня в игре где мало объектов и сложной логики разницы нет, но собираю в yyc

417 14 мая 2018, 07:11 417 499282

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

И это я только две анимации впихнул. Хуль так сложно? Как белые люди это делают, что у них ничего не застревает? А я еще наивный дебил хотел хитбоксами все захуярить, я ж ебанусь это вручную хуярить все.

Ответы499296544137

12,7 Мб, mp4,
1392x868, 0:16
418 14 мая 2018, 12:04 418 499296

>>499282
Неправильный подход.

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

Я задал своему персонажу width и height и считаю коллизии по ним. Они не меняются вообще никогда. По колижн маскам считаю только столкновения с другими объектами.
единственный момент, когда рамка в стену уходит - залезание на препядствия. Для этого костыли стоят.

Ответы499344544137

122 Кб, 900x900
419 14 мая 2018, 13:31 419 499305

Какая формула расчета скорости, если известны hspeed и vspeed.
Школу прогуливал.

Ответы499307499308

420 14 мая 2018, 13:40 420 499307

>>499305
теорема Пифагора

А вообще зачем тебе рассчитывать ее, если ты задаешь hspeed и vspeed, и объект автоматически движется?

Ответы499316

421 14 мая 2018, 13:41 421 499308

>>499305
Сложение двух ортогональных векторов.
Вычисляй модуль скорости по теореме Пифагора.

75 Кб, 960x951
422 14 мая 2018, 14:48 422 499316

>>499307
>зачем тебе рассчитывать ее, если ты задаешь hspeed и vspeed, и объект автоматически движется?
Затем, что он как раз таки начинает автоматически двигаться, и движение врядли как-то можно отменить не приравняв эту самую скорость к нулю. Мне нужен был именно расчет без движения.

А вообще сейчас хорошенько прогулялся по городу и понял что скорость можно найти по принципу point_distance(x, y, x+hspeed, y+vspeed).
Надеюсь подводных камней в таком методе нету.

Ответы499319

423 14 мая 2018, 14:52 423 499319

>>499316
Ты действительно поехавший.

424 14 мая 2018, 17:19 424 499344

>>499296
У меня маска была в самой сердцевине персонажа, иногда игнорировала голову и конечности и пр. Думал, что при обволакивании будут слишком большие зазоры между препятствиями и персонажем. Окей, спасибо, попробую обволакивать. Прямоугольник, кстати - отдельный объект или в дро отрисовываешь?

Ответы499347

425 14 мая 2018, 17:33 425 499347

>>499344
Я просто его в draw event нарисовал, для наглядности.

426 18 мая 2018, 07:46 426 499894

Анон, как правильно вращать?
У меня есть энное количество отдельных спрайтов, которые должны быть соединены друг с другом и вращаться как-то так, чтобы красиво было. Как автомат с магазином и лежащими на нем руками.
Но как только я начинаю эту ебалу вращать, она расплывается по всему экрану. Я понимаю, что для этого надо смещать все добро через тригонометрические функции, плюс появилась идея учитывать оффсеты спрайтов, но я не могу обволочь эти мысли в какую-то понятную для всех, для гейммейкера и для себя самого форму.
Есть ли где-то видеоуроки или хотя бы текст об этом? Во всех туториалах на ютубе пилят очередную говноспрайтовую РПГ, а у меня система анимации ближе к флешевой, многокадровые спрайты мне не подходят никак.

Ответы499899

427 18 мая 2018, 09:31 427 499899

>>499894
spine или dragon bone + Skeletal Animations гейммейкера.

Гугли.

428 22 мая 2018, 11:46 428 500481

50 Кб, 532x3987 Кб, 454x41

Анон, выручай.
Пытаюсь сделать параллакс скроллинг в GMS2.
Все бы ничего, но во время движения с краю экрана появляется вот такая полоска, а когда персонаж останавливается, бэкграунд резко дергается на ширину этой самой полоски. Объект, на котором висит код параллакса загружается самым первым, код находится в Step Event, пробовал пихать его в End Step и Begin Step, но ноль эффекта

Ответы500523

429 22 мая 2018, 12:23 429 500489

>>439561 (OP)
1. Если я верно понял, триалка не ограничена по времени и можно хоть до усрачки изучать триал, и даже полноценно пилить в нём своего игоря?

2. Что там с физикой, есть хоть какие-нибудь зачатки?

Ответы500525500526

430 22 мая 2018, 14:36 430 500523

>>500481
У тебя какого размера БГ? Сдаётся мне, что ширина у него с твой экран. Поэтому если ты его сдвигаешь, то остаётся неочищенный участок старого application_surface.

Ты попробуй галочку поставить в свой бэкграунд Horizontal Tile. Что изменится?

Ответы500528500547

431 22 мая 2018, 14:40 431 500525

>>500489
Триал не полноценный.
Я полную версию купил, когда обнаружил, что в триале нельзя создать больше одного тайлсета. Знаю что какие-то функции path в триале ограничены, какие-то gpu.

Ответы500528

432 22 мая 2018, 14:48 432 500526

>>500489
Что там с физикой - без понятия. Она там есть. Я использую свою.

433 22 мая 2018, 14:50 433 500528

>>500525
>>500523
Спасибо, качну пока 1.4 на освоение.

434 22 мая 2018, 16:54 434 500547

>>500523
Ничего не меняется. Попробовал использовать в два раза более широкое изображение — то же самое.

Ответы500559

435 22 мая 2018, 18:21 435 500559

>>500547
Скинь проект в дропбокс, посмотрю что ты делаешь.

Ответы500683

436 22 мая 2018, 18:40 436 500564

>>439561 (OP)
Скачал, посмотрел, некоторые вещи осваиваются интуитивно, это очень хорошо.
Вопрос такой. Есть объект, который постоянно должен "падать", ибо гравитация. Как это реализовать? Порылся в ивентах, не нашёл "пустого" события, которое должно выполняться всегда, без условий.
Ну или ткните в ссыль с такими вот базовыми туториалами.

Ответы500565500607500681

437 22 мая 2018, 18:42 437 500565

>>500564
step

Ответы500612

438 23 мая 2018, 00:18 438 500607

>>500564
Бегом смотреть Shaun Spalding

Ответы500612

439 23 мая 2018, 00:45 439 500612

>>500565
Спасибо, нашёл, разобрался.
>>500607
Смотрю уже.
Да, неплохое двигло, мне нравится, ещё бы умел на андройды выгружать, и не по лицухе за 130 баксов.

Ответы500624

440 23 мая 2018, 01:06 440 500617

>>439561 (OP)
А инди-песочницу гамак2 осилит? Пример - Stardew Valley.

Ответы500625500645

441 23 мая 2018, 01:32 441 500624

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

442 23 мая 2018, 01:33 442 500625

>>500617
По-моему, легче спросить, что он НЕ осилит. В 2д, разумеется.

443 23 мая 2018, 04:38 443 500645

>>500617
Осилит. Но мне в гамаке сложновато работать с большими проектами.

444 23 мая 2018, 10:21 444 500681

>>500564
В GMS2 (и в более ранних версиях роде тоже) есть встроенный туториал в духе "шаг за шагом делаем первую примитивную игру". Там делов на полчаса, и практически все базовые вещи научишься делать. Это гораздо лучше, чем видосы-туториалы, где бородатый хер два часа чавкает в микрофон, объясняя 2 строки кода смотреть.

445 23 мая 2018, 10:27 445 500683

>>500559
Не могу этого сделать по ряду причин, но проблему я более-менее решил.

Я пришел к выводу, что переменная, которая получается из команды camera_get_view_x(view_camera[0]) все время отстает на один фрейм от настоящего положения камеры. Тогда я поставил условие, что бэкграунд двигается только при условии, что скорость персонажа не равна нулю. Это, конечно, как-то костыльно, и вылезла еще пара проблем, но их оказалось легко решить, и все работает. Наверное, есть какой-то более изящный путь, если найду, то поменяю систему, конечно.

446 11 июня 2018, 11:00 446 504034

Бамп.

447 14 июня 2018, 01:38 447 504807

>>439561 (OP)

448 6 июля 2018, 16:25 448 510367

Вопрос от Фонаря:
Хочу запилить Монополию, но никак не могу придумать - как лучше реализовать улицы? Делать как отдельные объекты или как?

Ответы510387

449 6 июля 2018, 16:59 449 510387

>>510367
Тайлмапами делай.

Ответы510389

450 6 июля 2018, 17:01 450 510389

>>510387
А как тогда отслеживать их переменные?

Ответы510403

451 6 июля 2018, 17:14 451 510403

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

Ответы510405

452 6 июля 2018, 17:16 452 510405

>>510403
А разве не подходит вариант сделать 40 объектов для каждого поля, и у каждого объекта - свои переменные?

Ответы510407

453 6 июля 2018, 17:18 453 510407

>>510405
Вполне подходит. Одобряю.

Ответы510408

454 6 июля 2018, 17:19 454 510408

>>510407
Просто мне такой способ кажется очевидным, но при этом - костыльным. Не может же все быть настолько просто. Или может? И нет смысла изъебываться, если можно все сделать просто?

Ответы510410

455 6 июля 2018, 17:20 455 510410

>>510408
Да забей. Главное, чтоб работало.

Ответы510415

456 6 июля 2018, 17:24 456 510415

>>510410
И то верно. Спасибо, анон.

457 7 июля 2018, 01:09 457 510700

Гамак не видит подключенный геймпад (gamepad_is_connected();) пока игра свернута. Подключал четвертый дуалшок.
Проблема в гамаке, в геймпаде или во мне?

Ответы511032

Аноним 458 7 июля 2018, 19:38 458 510976

Бамп.

459 7 июля 2018, 21:21 459 511032

>>510700
Безотносительно: зачем игре видеть геймпад когда она свёрнута?
Она клавиатуру-то не видит, когда ты табнулся в другое окно. И это правильно.

Ответы511126

460 8 июля 2018, 01:11 460 511126

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

461 9 июля 2018, 20:43 461 511672

349 Кб, 1280x720393 Кб, 1280x720

Сап аноны. Я очень нью, но может вы поможете мне с одним вопросом. Решил попробовать сделать первую лёгкую игрушку про самолетик, который стреляет говном (стандарт из стандартов). Самолет должен стрелять в сторону, в которую направлена мышка, с промежутком а 310-50 градусов. Но вот беда.
Для поворота модельки я сделал вот:
var mouse_angle = point_direction(x, y, mouse_x, mouse_y);
if (mouse_angle > 310 || mouse_angle < 50)
image_angle = mouse_angle;
Как сделать подобное ограничение для пуль, которые вылетают. Пробовал часа три и нихуя не придумал, собсна. Вот мои самые удачные идеи (пикрилы)

Ответы511673511790511791

462 9 июля 2018, 20:54 462 511673

>>511672
> с промежутком В 310-50 градусов
самофикс

463 10 июля 2018, 06:24 463 511790

>>511672
Есть функция clamp, которая позволит сделать все то же самое, но в одну строчку.
И я не понял, в чем твоя проблема. Все должно работать. Скорость пули можно записать через speed ее экземпляра, направление через direction, которое ограничить через clamp.

Ответы511791511866

464 10 июля 2018, 06:26 464 511791

>>511790
>>511672
Черт, я болван слепошарый, там все так и сделано. Прошу прощения.
Но тогда я по-прежнему не понимаю, в чем твоя проблема.

Ответы511793

465 10 июля 2018, 06:37 465 511793

>>511791
Я пробовал делать через clamp, но это не даёт никакого эффекта. Хотя может быть просто я криворукий (что более вероятно) и попробую ещё, как приду домой, спасибо. Если не получится, спрошу ещё раз, надеюсь на помощь :3

Ответы511797

466 10 июля 2018, 06:48 466 511797

>>511793
А да. Не дало эффекта, это значит, что она просто не работала, и камы-пули продолжали лететь из очка вертолета, будто ограничения и вовсе нет. Но скорее всего я просто жиденько обосрался и попробую еще раз переписать.

467 10 июля 2018, 10:48 467 511866

>>511790
Попробовал вот так:
direction = clamp(point_direction(x,y,mouse_x,mouse_y),310,50) + random_range(-4,4);
Не работает ниже 0, пробовал через -50, пробовал через кламп 310,0 + кламп 0,50 — ни в какую.

Ответы511879

468 10 июля 2018, 11:04 468 511879

>>511866
var куда_стрелять = point_direction(x, y, mouse_x, mouse_y);
if ((куда_стрелять < 180) {
куда_стрелять = clamp(куда_стрелять, 0, 50);
} else {
куда_стрелять = clamp(куда_стрелять, 310, 360);
}

Ответы511890511892

128 Кб, 1187x712
469 10 июля 2018, 11:43 469 511890

>>511879
Не выходит, получается аналогично моему варианту.

Ответы511892

470 10 июля 2018, 11:46 470 511892

>>511879
>>511890
А, все, понял, где я обосрался. Вместо 0 поставил 360 как у тебя и все ахуенно заработало. Спасибо, анон!

471 10 июля 2018, 11:52 471 511897

Гамаконы, есть вопрос. Во второй студии есть адекватная реализация коллекций вместо отвратительной "ds_ " ? И что там вообще по ООП, есть какие то подвижки?

Ответы511902511949

472 10 июля 2018, 11:57 472 511902

>>511897
Не держись за гамак. Если чувствуешь, что тебе тесно в игровом конструкторе - переходи на полноценный движок. Базарю, чем позже перейдешь, тем больше пожалеешь о потраченном на все эти гамаки времени впоследствии.

Ответы511953

473 10 июля 2018, 14:10 473 511949

>>511897
Сложные вопросы задаёшь.

В GMS2 есть возможность подключать какие-то явовские списки. Я сильно не вникал, т.к. меня ds полностью устраивают.

По ООП фигово, только самому имитировать скриптами. Функции нормально строятся.

474 10 июля 2018, 14:17 474 511953

>>511902
Странные вещи говоришь.

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

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

475 13 июля 2018, 14:18 475 513550

>>482212
Там ак нужно регать, меня по опи не вычислют?

476 13 июля 2018, 23:07 476 513691

Можно ни на гамаке написать аналог косморейнджеров, симуляцию жизни и т.п?
Насколько юнити сложнее чем гамак, что лучше изучать: гамак или юнити?

Ответы513693513695513707

477 13 июля 2018, 23:10 477 513693

>>513691
Программирование изучай, даун.

478 13 июля 2018, 23:20 478 513695

>>513691
Можно.

Для 2д гамак.
Для 3д - юнити.

Ответы513698

479 13 июля 2018, 23:23 479 513698

>>513695
>Для 2д Анриал.
>Для 3д - Анриал.

Ответы518477

480 13 июля 2018, 23:49 480 513707

>>513691
Гамак легче чем Юнити. 2D в Юнити это особая форма извращенства, когда есть гейммейкер (есть ещё Годот, но зочем).

Ответы513715

757 Кб, 1024x631
481 14 июля 2018, 00:09 481 513715

>>513707
>Годот, но зочем
Кубики в дырку кидать.

482 22 июля 2018, 17:12 482 516548

Тред, не умерай.

Ответы516855

483 23 июля 2018, 15:06 483 516855

>>516548
Обнаружил в ГМС2 серьёзный баг с утечкой памяти.

Жду исправления от йойошников.

Ответы516880

484 23 июля 2018, 16:16 484 516880

>>516855
Исправление будет в ГМС3, можете оформить предзаказ за $80 уже сейчас.

485 25 июля 2018, 12:07 485 517385

Какой же уебищный интерфейс у гмс2 по сравнению с гмс1 и гм4-8, пиздец.

Ответы518178

486 27 июля 2018, 13:02 486 518178

>>517385
Ты про удобство или про внешний вид?

Ответы518515

487 28 июля 2018, 00:16 487 518477

>>513698
>Для 2д Анриал.
Больной ублюдок.

488 28 июля 2018, 05:43 488 518515

>>518178
Про удобство. Внешний вид - ну да, типо современно

111 Кб, 1435x856
489 9 авг 2018, 17:33 489 521812

Парни, есть трабл, поможите. Юзаю гмс2, десктопная лицуха.

Вкратце вопрос звучит так - как сделать чтобы импортируемые спрайты не выглядели как дерьмо на фулскрине с 1920х1080?

Развернуто - импортирую спрайты для своего платформера, и они выглядят как параша, даже в оконном режиме на 640х320.
Притом что в комнате при редактировании они выглядят хорошо? Что я делаю не так? Дрочился с настройками в опциях к платформе (в данном случае шиндовс) - нехуя не помогло.

Нагуглил посты на форме гмс и хелруме, часть из них помогла решить проблема с бекграундами (хуярил слишком большие картинки) но вот с обычными объектами я хз че делать. Пробовал уменьшать через image_xscale - не работает.
Натыкался на https://forum.yoyogames.com/index.php?threads/scaling-resolution-and-aspect-ratio-management-for-gms1-gms2.7106/ но по его уроку нехера не вышло, даже с учетом адаптации кода под текущую версию гамака.

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

Ответы521814

490 9 авг 2018, 17:41 490 521814

>>521812
> они выглядят как параша
Что конкретно не устраивает?

Ответы521816

27 Кб, 610x412
491 9 авг 2018, 17:48 491 521816

>>521814
Почему качество спрайта так убивается, еще даже не в полноэкранном режиме?

Ответы521817

492 9 авг 2018, 17:51 492 521817

>>521816
Разрешение вьюпорта в первой загружаемой комнате (или самой комнаты, если вьюпорты отключеры) задают разрешение всей игры. Разрешение остальных комнат масштабируется под него. Может в этом проблема?

Ответы521818521820

493 9 авг 2018, 17:55 493 521818

>>521817
Снимай штаны, буду сосать. Именно в этом была трабла, писос я дебич.

494 9 авг 2018, 17:55 494 521820

>>521817
скинь кошелек какой, скину сотку на пивко

Ответы521821

495 9 авг 2018, 17:58 495 521821

>>521820
да не надо

496 9 авг 2018, 20:39 496 521833

подходит ли сей движок для геймджемов?
имею ввиду,что можно ли за 48 часов на нем что-то сносное склепать,если есть желание и идеи

Ответы521836

497 9 авг 2018, 20:45 497 521836

>>521833
da

137 Кб, 350x289
498 15 авг 2018, 10:42 498 522685

Я немного выпал из трендов разработки, но есть ли смысл нынче париться о нескольких разрешениях для своей игры, особенно пиксельной? Я вот думаю сделать разрешение 540р (с дальнейшим апскейлом х2 на 1080р). И типа есть ли вообще смысл париться о том, что у каких-то бомжей не будет монитора 16:9 (хотя на 4:3 мониторе там просто полосы будут, что в принципе терпимо) или мониторов с поддержкой 1080р (такие есть еще?)?

Ответы522694522986

51 Кб, 1100x550
499 15 авг 2018, 12:19 499 522694

>>522685
Есть смысл париться, если в крупнопиксельной игре разрешение монитора не делится нацело на разрешение игры. Тогда появятся некрасивые деформации пикселей.

Ответы522701

500 15 авг 2018, 12:57 500 522701

>>522694
Эх, ну да, беспокоясь о бомжах на старых пеках, я и забыл, что уже есть челики с разрешениями больше 1080р, но меньше 2160р. Сука, у меня в игре дохуя геометрии даже в банальных игровых действиях, вот чего мне блять для полного штанов счастья не хватало, так это рескейлить игру под другие разрешения.

Как это вообще делают? Новый комплект ассетов рисуют или что? Это ж ебануться можно. Лучше уж тогда в рамку нахуярить. Или просто каждый ассет вручную растягивают до нужных пропорций и потом ретушируют?

Ответы522731

501 15 авг 2018, 14:55 501 522731

>>522701
Дешевый и сердитый вариант, который в гамаке легко реализуется, это если у игрока нестандартный монитор, то дать ему возможность либо играть в полноэкранном режиме и наблюдать пиксельные деформации, либо запустить игру в окне с подходящим разрешением. К тому же, чем больше разрешение, тем меньше эти деформации заметны. Самое плохое - это когда скейлить надо в 1.5 раза. Еще была идея рисовать все на текстуре 2160p, а потом уменьшать ее до нужного разрешения со сглаживанием. В графическом редакторе результат нормальный, а в гамаке не пробовал, удобно ли это делать.

Ответы522752

502 15 авг 2018, 15:39 502 522741

как в gms 3d подключить?

503 15 авг 2018, 16:35 503 522752

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

Ответы522775

504 15 авг 2018, 17:44 504 522775

>>522752
Галочки "сделать полноэкран с рамкой" в настройках гамака нет, можно только черные полоски. Хотя странно, почему они такую фичу не добавили, вроде эта идея сама собой напрашивается. Наверно, это можно сделать с помощью своих костылей.

Ответы522780

505 15 авг 2018, 17:59 505 522780

>>522775
Ну я и не думал, что в гамаке есть для этого галочка, конечно костылями.

1,1 Мб, 761x536
506 16 авг 2018, 13:38 506 522904

Господа, помогите разобраться в проблеме.

Есть платформа, которая движется вертикально вверх

create
vdist=6;
direction=90;
vspeed = 6
alarm[0]=1;

alarm0
direction=90;
alarm[0]=vdist*vspeed;

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

Есть две проблемы:

1. Игрок застревает в вертикально двигающейся платформе при прыжках на ней. Причем такого нет на горизонтальных платформах, больше он не застревает нигде, от слова совсем.
Пробовал делать отдельные группы, и писать для них костыли, но не помогает.
Как это пофиксить? В какую сторону копать?

2. Есть код который описывает врезание в потолок игрока (в степе игрока)

if (place_meeting(x,y-1,oParSolid) and (v >=0))
{
hp = 0
}

Поэтому при прыжках по вертикально движущейся платформе, когда он застревает в платформе, его хп становится равным 0, игра рестартуется. Я понимаю что наговнокодил, но как сделать иначе - хз.

1,1 Мб, 761x536
506 16 авг 2018, 13:38 506 522904

Господа, помогите разобраться в проблеме.

Есть платформа, которая движется вертикально вверх

create
vdist=6;
direction=90;
vspeed = 6
alarm[0]=1;

alarm0
direction=90;
alarm[0]=vdist*vspeed;

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

Есть две проблемы:

1. Игрок застревает в вертикально двигающейся платформе при прыжках на ней. Причем такого нет на горизонтальных платформах, больше он не застревает нигде, от слова совсем.
Пробовал делать отдельные группы, и писать для них костыли, но не помогает.
Как это пофиксить? В какую сторону копать?

2. Есть код который описывает врезание в потолок игрока (в степе игрока)

if (place_meeting(x,y-1,oParSolid) and (v >=0))
{
hp = 0
}

Поэтому при прыжках по вертикально движущейся платформе, когда он застревает в платформе, его хп становится равным 0, игра рестартуется. Я понимаю что наговнокодил, но как сделать иначе - хз.

Показать весь текст
Ответы522924

411 Кб, 1600x900
507 16 авг 2018, 15:56 507 522924

>>522904

Ты используешь какие-то безумные функции искаропки, не зная толком, как они работают.

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

Это раз.

Два. Про платформы.

Хуй знает, что ты там наворотил но скорее всего проблема в очерёдности выполнения кода. Если ты хочешь, чтобы платформы двигали игрока, то пусть все перемещения платформ и двигание ими игрока происходят в begin step а все самостоятельные перемещения игрока происходят в step.

Про врезание в потолок.

Во ты нахуевертил. Place meeting это во-первых ресурсозатратная функция, во-вторых в её работе есть много нюансов. Использовать её следует только в самых простых случаях.

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

Например как делаю я:

У меня есть функция "gridcol_line", которая проверяет: если провести линию из точки А в точку Б, будет ли коллизия на этой линии.

Чтобы понять, есть ли земля под ногами, мне достаточно сделать

var ground_check = gridcol_line(x-width/2,y+height/2+1,x_width/2,y+height/2+1)

На самом деле для этого у меня просто функция ground_check() и использую я её типа "if !ground_check() , это я тебе для примера расписал.

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

мои скорости vx и vy
Если в точке x+vx и y+vy place_meeting даёт false - перемещаюсь в точку x+vx и y+vy
Иначе начинаю перемещаться по одному пикселю по x пока не встречу препятствие, затем по одному пикселю по y.

Вообще корень зла у тебя, видимо, в коде перемещения (А он у тебя есть вообще? Ты походу vspeed hspeed используешь - а это тоже искаропки). Гугли на ютубе game maker pixel perfect movement. И одновременно изучай вот это невероятно полезный туториал : https://forum.yoyogames.com/index.php?threads/on-slopes-and-grids-subpixel-perfect-topdown-movement-and-collision-line-without-objects.4073/

В первую очередь ты должен научиться делать ТОЧНЫЕ до пикселя коллизии и перемещения.
А ты в курсе, что если у тебя препятствие с координатами левой стороны 0 и правой стороны 10, а твой игрок это. например, точка размером 1*1 пиксель, то для твоего игрока

var check_left = place_meeting(0,0, obj_collision) даст true
а
var check_right = place_meeting(10,0, obj_collision) даст false

и то же самое с низом и верхом.

411 Кб, 1600x900
507 16 авг 2018, 15:56 507 522924

>>522904

Ты используешь какие-то безумные функции искаропки, не зная толком, как они работают.

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

Это раз.

Два. Про платформы.

Хуй знает, что ты там наворотил но скорее всего проблема в очерёдности выполнения кода. Если ты хочешь, чтобы платформы двигали игрока, то пусть все перемещения платформ и двигание ими игрока происходят в begin step а все самостоятельные перемещения игрока происходят в step.

Про врезание в потолок.

Во ты нахуевертил. Place meeting это во-первых ресурсозатратная функция, во-вторых в её работе есть много нюансов. Использовать её следует только в самых простых случаях.

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

Например как делаю я:

У меня есть функция "gridcol_line", которая проверяет: если провести линию из точки А в точку Б, будет ли коллизия на этой линии.

Чтобы понять, есть ли земля под ногами, мне достаточно сделать

var ground_check = gridcol_line(x-width/2,y+height/2+1,x_width/2,y+height/2+1)

На самом деле для этого у меня просто функция ground_check() и использую я её типа "if !ground_check() , это я тебе для примера расписал.

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

мои скорости vx и vy
Если в точке x+vx и y+vy place_meeting даёт false - перемещаюсь в точку x+vx и y+vy
Иначе начинаю перемещаться по одному пикселю по x пока не встречу препятствие, затем по одному пикселю по y.

Вообще корень зла у тебя, видимо, в коде перемещения (А он у тебя есть вообще? Ты походу vspeed hspeed используешь - а это тоже искаропки). Гугли на ютубе game maker pixel perfect movement. И одновременно изучай вот это невероятно полезный туториал : https://forum.yoyogames.com/index.php?threads/on-slopes-and-grids-subpixel-perfect-topdown-movement-and-collision-line-without-objects.4073/

В первую очередь ты должен научиться делать ТОЧНЫЕ до пикселя коллизии и перемещения.
А ты в курсе, что если у тебя препятствие с координатами левой стороны 0 и правой стороны 10, а твой игрок это. например, точка размером 1*1 пиксель, то для твоего игрока

var check_left = place_meeting(0,0, obj_collision) даст true
а
var check_right = place_meeting(10,0, obj_collision) даст false

и то же самое с низом и верхом.

Показать весь текст
Ответы522925522953

508 16 авг 2018, 16:12 508 522925

>>522924
Это мой первый проект, я стараюсь чето учить + использовать это.

Про алармы не совсем понял - я читал документацию и кажется понимаю. Там же все подвязано на скорости комнаты, утрировано.

Про гайды спасибо, обмажусь.

Еще вопрос, чем плох vspeed hspeed?

Ответы522928

509 16 авг 2018, 16:40 509 522928

>>522925

>Про алармы не совсем понял - я читал документацию и кажется понимаю.
Тогда скажи, в какой момент тикает таймер аларма? Что произойдёт раньше, room_end event или тик аларма? Или аларм тикает в начале фрейма а не в конце? Я вот, например, не в курсе. Если погуглить, то наверняка найду. Но в любом случае, таймер, который тикает вне твоего кода - это очень, очень плохо. Может привести к тяжёлым последствиям.

>Еще вопрос, чем плох vspeed hspeed?

То же самое. Когда происходит это перемещение? Твои платформы тоже перемещаются при помощи vspeed hspeed? Значит ты не контролируешь того момента, когда перемещается игрок, а когда платформа.

Допустим платформа создана раньше игрока. Тогда, возможно, сначала гамак будет двигать платформу, а потом игрока.

Тогда, если игрок стоит на платформе, которая едет вверх что будет?
Платформе же пофигу на коллизии с игроком? Она просто двинется вверх.

Потом начнёт своё движение игрок. А у него вертикальная скорость меньше, чем у платформы или нулевая. И он окажется внутри платформы.

Потом будет степ ивент. Если платформа создана раньше, и именно платформа перемещает игрока, то она его передвинет куда надо и игрок ничего не заметит.

А если игрок создан раньше? Тогда его код будет исполнен первым и он заметит коллизию и самоуничтожится.

Это раз.

Два: у тебя все скорости целочисленные? Наверняка нет. Тогда перемещение искаропки будет ставить твоего игрока в дробные координаты. И ты, для вычисления коллизий, будешь работать с float переменными. И это может привести к неожиданным для тебя результатам.

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

Поэтому всегда лучше использовать для координат int.

509 16 авг 2018, 16:40 509 522928

>>522925

>Про алармы не совсем понял - я читал документацию и кажется понимаю.
Тогда скажи, в какой момент тикает таймер аларма? Что произойдёт раньше, room_end event или тик аларма? Или аларм тикает в начале фрейма а не в конце? Я вот, например, не в курсе. Если погуглить, то наверняка найду. Но в любом случае, таймер, который тикает вне твоего кода - это очень, очень плохо. Может привести к тяжёлым последствиям.

>Еще вопрос, чем плох vspeed hspeed?

То же самое. Когда происходит это перемещение? Твои платформы тоже перемещаются при помощи vspeed hspeed? Значит ты не контролируешь того момента, когда перемещается игрок, а когда платформа.

Допустим платформа создана раньше игрока. Тогда, возможно, сначала гамак будет двигать платформу, а потом игрока.

Тогда, если игрок стоит на платформе, которая едет вверх что будет?
Платформе же пофигу на коллизии с игроком? Она просто двинется вверх.

Потом начнёт своё движение игрок. А у него вертикальная скорость меньше, чем у платформы или нулевая. И он окажется внутри платформы.

Потом будет степ ивент. Если платформа создана раньше, и именно платформа перемещает игрока, то она его передвинет куда надо и игрок ничего не заметит.

А если игрок создан раньше? Тогда его код будет исполнен первым и он заметит коллизию и самоуничтожится.

Это раз.

Два: у тебя все скорости целочисленные? Наверняка нет. Тогда перемещение искаропки будет ставить твоего игрока в дробные координаты. И ты, для вычисления коллизий, будешь работать с float переменными. И это может привести к неожиданным для тебя результатам.

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

Поэтому всегда лучше использовать для координат int.

Показать весь текст
Ответы522930

510 16 авг 2018, 16:48 510 522930

>>522928
Не подумал о проблеме с этой стороны, спасибо, так стало в разы понятнее.

Пойду думать как переписать все это дерьмо, чтобы работало в одной вселенной.

4,9 Мб, webm,
1024x768, 0:11
511 16 авг 2018, 16:50 511 522931

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

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

Проблема решилась переносом кода платформы в begin step event

512 16 авг 2018, 19:05 512 522953

>>522924
>Place meeting это во-первых ресурсозатратная функция
С чего это проверка пересечения прямоугольников стало ресурсозатратным?

Ответы522955

513 16 авг 2018, 19:22 513 522955

>>522953
С того, что во-первых это далеко не всегда пересечение прямоугольников. Гамак поддерживает precise per frame collisions.
А во-вторых объектов коллизий может быть много, а проверка коллизий может происходить много раз за фрейм.

Коллизии это то, что стоит держать в узде.

Ответы522961

514 16 авг 2018, 19:49 514 522961

>>522955
А твоя gridcol_line как работает, проверяет пересечение линии только с тайлами? А с движущимися объектами как проверяешь столкновения, если не place_meeting?

Ответы522986

515 16 авг 2018, 22:20 515 522986

>>522961
Моя движущаяся платформа это совершенно отдельный от коллизий объект.

Моя игра не плаформер и движущиеся платформы и препятствия не являются в ней основой геймплея. Поэтому я сделал принципиально другую механику.

Если в комнате есть плаформа, в скрипте ground_check() включается дополнительная проверка, которая работает только при движении вниз. Она проверяет две точки в основании ног игрока на столкновение с плаформой.

if(instance_exists(obj_platform) && (position_meeting(x-sprite_width/2,y+sprite_height/2,obj_platform) || position_meeting(x+sprite_width/2-1,y+sprite_height/2,obj_platform)))
{
return 1;
}

Если такое столкновение есть, у игрока, в дополнение к флагу "я на земле" загорается флаг "я на платформе" и запомнает id платформы, на которой он находится.. Если флаг "я на платформе горит" игрок проверяет, находится ли он всё на той же платформе, и если да, то сообщает именно этой платформе, что он на ней, зажигая на ней флаг "на мне игрок".

Сама платформа перемещается в begin step. Если на платформе горит флаг "на мне игрок". то она передаёт игроку на сколько пикселей она переместилась по горизонтали и вертикали в начале шага.

В свою очередь игрок в середине шага, обладая знаниями о том, на сколько пикселей переместилась платформа под ним при помощи скрипта gridcol_move перемещает себя на столько же пикселей. И только после этого при помощи того же скрипта gridcol_move перемещает себя в соответствии со своими скоростями vx и vy.

>>522685
Я очень долго ломал над этим голову, аноне.

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

Соответственно у мониторов с большим разрешением видно большее пространство игрового поля. Поэтому даже на Ultra wide пониторе смотрится отлично.

На мониторах с разрешением меньше 720р в мою игру уже будет нипаиграть. Можно для них сделать костыль, чтобы убрать увеличение пикселя в 2 раза. Но зачем? Разве остались в мире ещё такие мониторы?

Чтобы было понятней вот:
https://2ch.hk/gd/res/476891.html#496629 (М)
Здесь меню в 1080р и в 720р.

Вот инитиализация моей камеры в room_start ивенте

global.camera = camera_create();

width = round(display_get_width()/2);
height = round(display_get_height()/2);

var view_matrix = matrix_build_lookat(x,y,-10,x,y,0,0,1,0);
var projection_matrix = matrix_build_projection_ortho(width,height,0,10000);
view_camera[0] = global.camera;
view_hport[0] = height;
view_wport[0] = width;

camera_set_view_mat(global.camera,view_matrix);
camera_set_proj_mat(global.camera,projection_matrix);

//Enable the use of views
view_enabled = true;
//Make view 0 visible
view_set_visible(0,true);
//Resize and center
//we are fullscreen
surface_resize(application_surface,view_wport[0],view_hport[0]);

if (follow != noone)
{
x_to = follow.x;
y_to = follow.y;
}

x = x_to;
y = y_to;

border_x = view_wport[0]/2;
border_y = view_hport[0]/2;

515 16 авг 2018, 22:20 515 522986

>>522961
Моя движущаяся платформа это совершенно отдельный от коллизий объект.

Моя игра не плаформер и движущиеся платформы и препятствия не являются в ней основой геймплея. Поэтому я сделал принципиально другую механику.

Если в комнате есть плаформа, в скрипте ground_check() включается дополнительная проверка, которая работает только при движении вниз. Она проверяет две точки в основании ног игрока на столкновение с плаформой.

if(instance_exists(obj_platform) && (position_meeting(x-sprite_width/2,y+sprite_height/2,obj_platform) || position_meeting(x+sprite_width/2-1,y+sprite_height/2,obj_platform)))
{
return 1;
}

Если такое столкновение есть, у игрока, в дополнение к флагу "я на земле" загорается флаг "я на платформе" и запомнает id платформы, на которой он находится.. Если флаг "я на платформе горит" игрок проверяет, находится ли он всё на той же платформе, и если да, то сообщает именно этой платформе, что он на ней, зажигая на ней флаг "на мне игрок".

Сама платформа перемещается в begin step. Если на платформе горит флаг "на мне игрок". то она передаёт игроку на сколько пикселей она переместилась по горизонтали и вертикали в начале шага.

В свою очередь игрок в середине шага, обладая знаниями о том, на сколько пикселей переместилась платформа под ним при помощи скрипта gridcol_move перемещает себя на столько же пикселей. И только после этого при помощи того же скрипта gridcol_move перемещает себя в соответствии со своими скоростями vx и vy.

>>522685
Я очень долго ломал над этим голову, аноне.

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

Соответственно у мониторов с большим разрешением видно большее пространство игрового поля. Поэтому даже на Ultra wide пониторе смотрится отлично.

На мониторах с разрешением меньше 720р в мою игру уже будет нипаиграть. Можно для них сделать костыль, чтобы убрать увеличение пикселя в 2 раза. Но зачем? Разве остались в мире ещё такие мониторы?

Чтобы было понятней вот:
https://2ch.hk/gd/res/476891.html#496629 (М)
Здесь меню в 1080р и в 720р.

Вот инитиализация моей камеры в room_start ивенте

global.camera = camera_create();

width = round(display_get_width()/2);
height = round(display_get_height()/2);

var view_matrix = matrix_build_lookat(x,y,-10,x,y,0,0,1,0);
var projection_matrix = matrix_build_projection_ortho(width,height,0,10000);
view_camera[0] = global.camera;
view_hport[0] = height;
view_wport[0] = width;

camera_set_view_mat(global.camera,view_matrix);
camera_set_proj_mat(global.camera,projection_matrix);

//Enable the use of views
view_enabled = true;
//Make view 0 visible
view_set_visible(0,true);
//Resize and center
//we are fullscreen
surface_resize(application_surface,view_wport[0],view_hport[0]);

if (follow != noone)
{
x_to = follow.x;
y_to = follow.y;
}

x = x_to;
y = y_to;

border_x = view_wport[0]/2;
border_y = view_hport[0]/2;

Показать весь текст
Ответы522987

516 16 авг 2018, 22:23 516 522987

>>522986
Что-то пошло не так. Вот правильная ссылка на пост.
https://2ch.hk/gd/res/476891.html#499433 (М)

517 18 авг 2018, 16:22 517 523250

При попытке загрузить на андроид вылетает такая ошибка:
FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '10.0.2'.
ЧЯДНТ?
SDK и NDK в порядке, версия GM 1.4

10 Кб, 357x223
518 20 авг 2018, 13:34 518 523428

Что-то пиксельарт тред глубоко внизу, поэтому спрошу тут: аноны, как импортировать пиксели из паинта в игру? Я в первый раз участвую в разработке игоря чукча не Кирилл, чукча хуйдожник, и не знаю об этом ничего, объясните подробно, плиз, как дауненку.

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

Ответы523431523452523481

519 20 авг 2018, 14:29 519 523431

>>523428
>как импортировать пиксели из паинта в игру?

Нажимаешь alt+s для создания спрайта.
Там увидишь кнопочку импорт, жамкаешь на неё и импортируешь.

Хочешь перетащить спрайт в комнату? Создай в комнате assets layer и таскай спрайты мышкой из ресурсов в комнату на этот слой.

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

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

Зато всега присутствует скейлинг всего. Насколько я понимаю скейлить менее затратно, чем рисовать сурфейс во весь экран.

Ответы523477

520 20 авг 2018, 17:06 520 523452

>>523428
Пиксельные спрайты отлично масштабируются в графических редакторах. Выбираешь изменение размеров без сглаживания и всё.

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

Ответы523477523480

6 Кб, 221x223
521 20 авг 2018, 23:07 521 523477

>>523452
>>523431
Спасибо, аноны.

522 20 авг 2018, 23:32 522 523480

>>523452
Так не надо масштабировать каждый спрайт движком, это действительно затормозит игру.

Достаточно растянуть финальный сурфейс на весь экран подкрутив настройки камеры.

Собственно сами jojo games в своих туториалах рекомендуют растягивать сурфейсы вместо создания сразу больших сурфейсов. Это экономичнее.

Ответы523506

523 21 авг 2018, 00:51 523 523481

>>523428
В первую очередь, убери нахуй пейнт и возьми редакторы нормального человека по типу aseprite или pro motion ng (первый очень простой и интуитивный и в целом покрывает все нужды в пикселях, второй более профессионален и поначалу ты будешь в нем плавать, но зато потом ты сэкономишь себе тучу времени)

524 21 авг 2018, 10:31 524 523506

>>523480
Разница будет только в занимаемом месте на диске, при этом памяти будет сжирать всё равно столько же, но минус твоего способа в том, что если это java или c# машина или браузер, то предложенный тобой способ хуже так как сборщик очистит кэш и после снова придётся подгружать изображение и проводить масштабирование, тогда как в случае с заранее отрисованными текстурами просто будет подгрузка в кэш без лишних действий.

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

525 25 авг 2018, 12:14 525 524150

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

526 25 авг 2018, 12:16 526 524151

Забыл также упомянуть что html5 экспортером занимается теперь хороший человек наш соотечественник. Погуглите блог yellowafterlife он фактически герой гм*/гмс/гмс2

14 Кб, 1247x181
527 26 авг 2018, 20:51 527 524441

Добрый день, господа!

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

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

Ответы524467524468524584525771

528 26 авг 2018, 23:42 528 524467

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

Ответы524580

529 26 авг 2018, 23:45 529 524468

>>524441
Да, есть. Нужно брать бесплатные проги, если ты нищебродина и боишься сгухи. Есть годот и юнити, а ты сука сухари суши, или денюжку плоти.

Ответы524580

530 27 авг 2018, 01:09 530 524483

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

531 27 авг 2018, 17:15 531 524580

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

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

>>524468
>>Нужно брать бесплатные проги, если ты нищебродина

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

Ответы524581

532 27 авг 2018, 17:16 532 524581

>>524580
>нищука, который сразу потратит свои сбережения на иллюзорный вклад в будущее
Какой вклад, ослина, я на бесплатных прогах сижу.

Ответы524584

533 27 авг 2018, 17:26 533 524584

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

>>524581
Успешный господин в треде.

Ответы524589

534 27 авг 2018, 17:42 534 524589

>>524584
>> со школьных обедов нужную сумму

ипотечную ставку понизил уже?

535 27 авг 2018, 21:50 535 524642

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

Ответы524795

536 29 авг 2018, 09:29 536 524795

>>524642
Похоже что таких нет. Была какая-то софтина в которой можно было лепить примитивные шейдеры для гамака, но есть подозрение что фишай там не сделоть.

Ответы524796

537 29 авг 2018, 09:31 537 524796

>>524795
Я такие вопросы в glsl треде задавал, мне отвечали.

Сам я только самые примитивные шейдеры умею делать.

Ответы524797

538 29 авг 2018, 09:32 538 524797

>>524796
Тьфу. в Opengl треде.

539 29 авг 2018, 18:33 539 524844

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

Ответы524856

540 29 авг 2018, 19:10 540 524856

>>524844
Пустота в тайле это 0.

Ответы524866

541 29 авг 2018, 20:17 541 524866

>>524856
То есть похуй, что эта пустота в границе тайла?

Ответы524912

542 30 авг 2018, 09:28 542 524912

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

Если ты не ставишь тайл в клетку, то tilemap_get(tilemap_id,cx,cy) в этой клетке вернёт 0.

Если ты сканируешь tilemap_get_at_pixel() то если у тебя размер тайла 16, то например tilemap_get_at_pixel(tilemap_id,0,0) вернёт значение первого тайла, а tilemap_get_at_pixel(tilemap_id,16,0) уже значение второго.

543 3 сен 2018, 15:19 543 525624

Господа, столкнулся с проблемой.

Дано два состояния объекта - скольжение и бег.
Для бега коллизии считываются по отдельно заданному спрайту.
Я решил сделать отдельную маску для скольжения (потому как при выполнении анимации объект становится меньше по вертикали) и тут возникло несколько проблем. Я пробовал mask index и object set mask.

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

Обернуто это вот так:
есть скрипт где задана переменная отвечающая за нажатие клавиши

в степе объекта

if (kSlide ) //&& onGround ) - закоментил переменную чекающую коллизии с твердым объектом, для теста, иначе анимация проигрывается 2 раза с разрывом, это тоже проблема.
{

h=maxH;
hp -= 1 / room_speed
state = SLIDE

if (colRight) colRight - это переменная чекающая коллизия справа
{
oPlayer_t.hp = 0
}

}

ниже в стейт машине, тоже в степе:

switch (state) {
// тут перечисление всех состояний - бег, айдл

case SLIDE:
image_speed = 1.0
mask_index = sPlayerMaskSlide

if kSlideRelease это отпущенная клавиша скольжения
{
mask_index= sPlayerMaskSlide
}

sprite_index = sPlayerSlide
break

Куда стоит копать для решения проблемы? Есть идеи?

543 3 сен 2018, 15:19 543 525624

Господа, столкнулся с проблемой.

Дано два состояния объекта - скольжение и бег.
Для бега коллизии считываются по отдельно заданному спрайту.
Я решил сделать отдельную маску для скольжения (потому как при выполнении анимации объект становится меньше по вертикали) и тут возникло несколько проблем. Я пробовал mask index и object set mask.

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

Обернуто это вот так:
есть скрипт где задана переменная отвечающая за нажатие клавиши

в степе объекта

if (kSlide ) //&& onGround ) - закоментил переменную чекающую коллизии с твердым объектом, для теста, иначе анимация проигрывается 2 раза с разрывом, это тоже проблема.
{

h=maxH;
hp -= 1 / room_speed
state = SLIDE

if (colRight) colRight - это переменная чекающая коллизия справа
{
oPlayer_t.hp = 0
}

}

ниже в стейт машине, тоже в степе:

switch (state) {
// тут перечисление всех состояний - бег, айдл

case SLIDE:
image_speed = 1.0
mask_index = sPlayerMaskSlide

if kSlideRelease это отпущенная клавиша скольжения
{
mask_index= sPlayerMaskSlide
}

sprite_index = sPlayerSlide
break

Куда стоит копать для решения проблемы? Есть идеи?

Показать весь текст
Ответы525652

544 3 сен 2018, 17:34 544 525652

>>525624

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

Даже есть несколько предположений, в первую очередь связанных с тем, что у тебя центровка спрайтов разная. Ещё я бы обратил внимание на то, что ты СНАЧАЛА меняешь маску, а ПОТОМ меняешь спрайт.

mask_index= sPlayerMaskSlide

sprite_index = sPlayerSlide

Должно быть наоборот.

Ответы525656

545 3 сен 2018, 18:08 545 525656

>>525652
О предложенных решениях уже думал, но они не решают проблему, хех. Буду дальше ковырять.

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

Ответы525661

546 3 сен 2018, 18:45 546 525661

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

Ответы525672

23 Кб, 958x481
547 3 сен 2018, 21:27 547 525672

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

Ответы525681

548 3 сен 2018, 23:04 548 525681

>>525672
А теперь я бы порекомендовал тебе всё же разобраться, в какой момент твой персонаж съезжает на пиксель вниз и пофиксить это.

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

Ответы525807

549 4 сен 2018, 22:52 549 525769

Выйдет ли че-то хорошее из пиздинга разных нужных кусков кода и объединения всех их в эдакого франкенштейна для создания игры?

Ответы525806

550 4 сен 2018, 23:04 550 525771

>>524441
Купи через стим, там гораааздо дешевле

551 5 сен 2018, 08:42 551 525806

>>525769
скорее нет чем да.

552 5 сен 2018, 08:43 552 525807

>>525681
Так и сделал тащемта.

553 7 сен 2018, 21:40 553 526082

>>439561 (OP)
УРА НАКОНЕЦ-ТО ВЫПУСТИЛИ КРЯК БЕЗ ПОДКЛЮЧЕНИЯ К ИНТЕРНЕТУ
ТЕПЕРЬ БЕЗ ПЕРДОЛЛИНГА ПРИ КАЖДОМ ЗАПУСКЕ

554 8 сен 2018, 12:48 554 526136

Ребята, подскажите, будет ли тут просто собрать 2Д симулятор ходьбы с парочкой мини-игр?

Нужно:
1. Несколько ветвлений сценария.
2. Мини-игра «затарься в супермаркете». Ходишь по магазу, собираешь дешевую продуктовую корзину, от ее содержимого зависят некоторые ветвления «сюжета».
3. Ходьба, поездки на метро/ автобусе, диалоги.
4. Чтобы он смог выдержать толпу идущих прохожих без лагов. Ну, штук 20 хотя бы

И каков гамак в сравнении с юнити?

Ответы526158

555 8 сен 2018, 15:29 555 526158

>>526136
Не знаю что ты имеешь ввиду под "собирать", но то что ты описал сделать весьма просто.

Лаги зависят в основном не от движка а от того, как ты всё реализуешь. Можно и один объект написать так, что игра не запустится, можно и 1000 обхектов двигать без всяких лагов.

Гамак гораздо проще юнити и заточен под 2д. Юнити сложнее, мощнее, в нём больше ассетов и специализован на 3д.

Ответы526190

556 8 сен 2018, 18:18 556 526190

>>526158
Короче, я глянул туториалы и решил, что гамак мне идеально подходит.

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

Кстати. У вас нет своей ламповой конфочки в телеге?

Ответы526193

557 8 сен 2018, 19:00 557 526193

>>526190
>Кстати. У вас нет своей ламповой конфочки в телеге?
Не стоит вскрывать эту тему.

558 8 сен 2018, 19:16 558 526197

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

Ответы526198

559 8 сен 2018, 19:21 559 526198

>>526197
Глобальные переменные?

Ответы526199

560 8 сен 2018, 19:28 560 526199

>>526198
Вот не знаю, как через них сделать. Потому что, например, лежат на уровне две идентичных коробки с говном (один и тот же объект), одну игрок подобрал, вторую — нет. глобальная переменная же не различит, какую коробку он взял.

Ответы526200526202

561 8 сен 2018, 19:31 561 526200

>>526199
Идентификаторы для кого придумали?

562 8 сен 2018, 19:49 562 526202

>>526199
Я делаю следующим образом:

У меня есть obj_game
permanent объект, в котором хранится самая важная информация.

В нём я создал ds_grid со списком всех вещей, которые есть в игре.

У каждой вещи есть параметры "уникальная?" и "игрок уже подобрал меня?"

Все коробки в игре одинаковы. различаются только дополнительным room_create_event, который идёт после create_event объекта. кликни на предмет в комнате два раза и выбери create_event - это оно.

В нём я указываю парамер item, который сообщает коробке, какой предмет в неё лежит.

В step event коробки я пишу.

if !init
{
init = true;
if ds_grid_game(obj_game.items, item, уникальная) == true
{
if ds_grid_game(obj_game.items, item, игрок уже подобрал меня) == false exit
else
{
instance_destroy();
exit;
}
}
}

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

562 8 сен 2018, 19:49 562 526202

>>526199
Я делаю следующим образом:

У меня есть obj_game
permanent объект, в котором хранится самая важная информация.

В нём я создал ds_grid со списком всех вещей, которые есть в игре.

У каждой вещи есть параметры "уникальная?" и "игрок уже подобрал меня?"

Все коробки в игре одинаковы. различаются только дополнительным room_create_event, который идёт после create_event объекта. кликни на предмет в комнате два раза и выбери create_event - это оно.

В нём я указываю парамер item, который сообщает коробке, какой предмет в неё лежит.

В step event коробки я пишу.

if !init
{
init = true;
if ds_grid_game(obj_game.items, item, уникальная) == true
{
if ds_grid_game(obj_game.items, item, игрок уже подобрал меня) == false exit
else
{
instance_destroy();
exit;
}
}
}

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

Показать весь текст

563 9 сен 2018, 11:45 563 526256

Господи, как тут все удобно-то. Юнити действительно под 2Д плохо катит. Я балдею от гейммейкера.

пускает слюни

Ответы526273

564 9 сен 2018, 13:30 564 526273

>>526256
>Юнити действительно под 2Д плохо катит
Потамушта пиксельные игры это прошлый век и нахуй они нужны когда есть ахуенный графон почти как в жизни вон посмотри на нового асасина

565 10 сен 2018, 11:02 565 526380

Почему если я юзаю room_restart объекты, в ходе взаимодействия с которыми я вписал instance_destroy() не восстанавливаются?

Простой пример - есть объект игрока, есть аптека. В скрипте отвечающим за смерть есть room_restart и после смерти игрока комната перезагружается но аптек нет. В гамаке так и задумано? Как это обойти? Записывать айди всех аптек в комнате и ресать их? Или например сделать видимость 0 после того как их взяли? Вернуться к ним у игрока в рамках комнаты возможности не будет.

Ответы526381

566 10 сен 2018, 11:08 566 526381

>>526380
Проверь, не перманентные ли у тебя объекты не восстанавливаются.

Ответы526382

567 10 сен 2018, 11:12 567 526382

>>526381
Речь про Persistent? Нет, они не пермаментные.

Ответы526385

568 10 сен 2018, 11:13 568 526383

А, кажется понял. У меня руум рестарт не фунциклирует.

569 10 сен 2018, 11:14 569 526385

>>526382
Я, честно говоря, не пользовался никогда room_restart
В мануале написано, что работает так, как будто ты только что зашёл в комнату.
Т.е. должны создаваться все не persistent объекты по новой, выполняться все create events и room create events.

А сама комната не persistent?

Ответы526386

570 10 сен 2018, 11:17 570 526386

>>526385
Да, она была persistent, помогло, спасибо.

571 10 сен 2018, 15:08 571 526405

Поясните мне за два вопроса. Я правильно понимаю, что КАМЕРА рисует на ВЬЮ ПОРТЕ? И зачем нужно несколько вью портов/ камер? Чтобы, допустим, держать в одной комнате несколько мини-комнат и переключаться между ними, используя разные вью порты?

Ответы526422526423

572 10 сен 2018, 17:20 572 526422

>>526405
Ну, например, чтобы сплит скрин сделать.

Один анон в ньюфаготреде сделал миникарту, повесив вторую камеру, которая показывала полностью всю комнату в уменьшенном виде. Но я не рекомендую такой способ.

573 10 сен 2018, 17:22 573 526423

>>526405
И камера ничего не рисует. Она показывает.

Ответы526424

574 10 сен 2018, 17:26 574 526424

>>526423
Отрисовка в гамаке по умолчанию происходит на application_surface

https://docs.yoyogames.com/source/dadiospice/002_reference/surfaces/the application surface.html

Ответы526427

6,8 Мб, mp4,
1600x900, 0:21
575 10 сен 2018, 17:37 575 526427

>>526424
Вот как я задаю камеру в своей игре:

Создаётся камера, определяются view и projection матрицы.
global.camera = camera_create();

width = round(display_get_width()/2);
height = round(display_get_height()/2);

var view_matrix = matrix_build_lookat(x,y,-10,x,y,0,0,1,0);
var projection_matrix = matrix_build_projection_ortho(width,height,0,10000);

Задётся, что view_camera[0] транслируются в созданную мной камеру
view_camera[0] = global.camera;
Его размеры подгоняются под размеры projection матрицы камеры.
view_hport[0] = height;
view_wport[0] = width;

Затем устанавливаем view и projection матрицы в камеру
camera_set_view_mat(global.camera,view_matrix);
camera_set_proj_mat(global.camera,projection_matrix);

Включаем view
//Enable the use of views
view_enabled = true;
//Make view 0 visible
view_set_visible(0,true);

А потом подгоняем размеры application surface под размеры view 0
surface_resize(application_surface,view_wport[0],view_hport[0]);

Ты можешь заметить, что размеры этого view у меня 1/2 от размеров дисплея. А выводится он на весь экран. Таким образом получаем пиксель с зумом х2.

В webm мы можешь увидеть, как я копирую aplication surface на отдельный surface, снимая скриншот, потом рисую интерфейс и рисую этот скриншот в нужном мне месте с нужным мне скейлом.

6,8 Мб, mp4,
1600x900, 0:21
575 10 сен 2018, 17:37 575 526427

>>526424
Вот как я задаю камеру в своей игре:

Создаётся камера, определяются view и projection матрицы.
global.camera = camera_create();

width = round(display_get_width()/2);
height = round(display_get_height()/2);

var view_matrix = matrix_build_lookat(x,y,-10,x,y,0,0,1,0);
var projection_matrix = matrix_build_projection_ortho(width,height,0,10000);

Задётся, что view_camera[0] транслируются в созданную мной камеру
view_camera[0] = global.camera;
Его размеры подгоняются под размеры projection матрицы камеры.
view_hport[0] = height;
view_wport[0] = width;

Затем устанавливаем view и projection матрицы в камеру
camera_set_view_mat(global.camera,view_matrix);
camera_set_proj_mat(global.camera,projection_matrix);

Включаем view
//Enable the use of views
view_enabled = true;
//Make view 0 visible
view_set_visible(0,true);

А потом подгоняем размеры application surface под размеры view 0
surface_resize(application_surface,view_wport[0],view_hport[0]);

Ты можешь заметить, что размеры этого view у меня 1/2 от размеров дисплея. А выводится он на весь экран. Таким образом получаем пиксель с зумом х2.

В webm мы можешь увидеть, как я копирую aplication surface на отдельный surface, снимая скриншот, потом рисую интерфейс и рисую этот скриншот в нужном мне месте с нужным мне скейлом.

Показать весь текст
Ответы526431

576 10 сен 2018, 17:46 576 526428

>>439561 (OP)
Так, вопросик. Планирую вкатиться в ГМ. Помимо встроенного языка GML можно использовать какие-либо языки программирования? Или онли GML?

Ответы526429

577 10 сен 2018, 17:49 577 526429

>>526428
GLSL еще есть для шейдеров

Ответы526432

578 10 сен 2018, 17:52 578 526431

>>526427
Но в принципе ты мог бы использовать для того же эффекта несколько view, нарисовав интерфейс в одном месте и выводя его на экран, сначала камеру, которая смотрит на интерфейс, а потом камеру. которая смотрит на уровень. Изменяя вторую камеру ты мог бы добиться того же самого.

579 10 сен 2018, 18:07 579 526432

>>526429
Благодарю

Ответы526436

580 10 сен 2018, 19:08 580 526436

>>526432
Тэкс, посмотрел синтаксис, очень похоже на js с различными костылями.

581 10 сен 2018, 20:15 581 526439

Что скажете за гибкость DnD?

Ответы526458

582 10 сен 2018, 22:20 582 526458

>>526439
Лучше кодь сразу. Потом себе спасибо скажешь.

Ответы526459

583 10 сен 2018, 22:30 583 526459

>>526458
Я уже глянул на тот пиздец с DnD. Да, проще кодить.

584 11 сен 2018, 22:54 584 526631

>>439561 (OP)
The ​depth​​property is necessary. This property can be any real integer value. It controls
which objects are drawn in front of other objects. Lower values are brought to the front
and higher values are pushed to the back. If you have a tree object that you want to be
in the background (behind the player), you might give it a depth value of 5 and your
player a depth value of 10. This would draw the player object in front of the tree object
because 10 is lower​than 5

Хуита какая-то. В том же вебе слои движутся в сторону пользователя, т.е. Если персонажу задать depth z-index 10, а дереву depth 5, то на переднем плане будет персонаж. А тут наоборот.

Ответы526632526633

585 11 сен 2018, 22:55 585 526632

>>526631
А, ну да, само название depth означает глубину, то есть, насколько глубоко от пользователя находится слой. Мде

586 11 сен 2018, 23:19 586 526633

>>526631
Всё равно ты будешь работать со слоями.
В room_start event записывай id слоёв в переменные а потом работай с ними. Иначе запутаешься.

418 Кб, 631x901
587 12 сен 2018, 09:54 587 526658

Скидон подъехал https://store.steampowered.com/sale/madewithgamemaker?utm_source=social&utm_campaign=sale

Ответы526669526766526767

588 12 сен 2018, 11:49 588 526669

>>526658
Блять. Я уж обосрался, что на 2 гамак скидка 80%, и меня неплохо наебали со скидкой по факту владения 1 версией.

Ответы526697

589 12 сен 2018, 16:55 589 526697

>>526669
А уж как я обосрался купил в воскресенье.

590 13 сен 2018, 10:01 590 526766

>>526658
В чём отличие двойки от 1.4, помимо той хуйни с тайлами и соплеразмазки ресурсов по экрану?

591 13 сен 2018, 10:27 591 526767

>>526658
чет - покупать вторую студию
нечет - перекатываться в юнити

Ответы526768

592 13 сен 2018, 10:28 592 526768

>>526767
всего доброго

593 13 сен 2018, 10:58 593 526773

https://www.youtube.com/watch?v=UTyRXdk_Jro
Пиздец, как они такое делают на гамаке?

Ответы526775

594 13 сен 2018, 11:12 594 526775

>>526773
Шо тебя смущает? Гамак же 3д поддерживает с палеозоя

Ответы526776

595 13 сен 2018, 11:17 595 526776

>>526775
Ну прост я привык в качестве "3д на гамаке" видеть говние уровня бластеркопа. А тут что-то интересное и даже по своему красивое.

Ответы526780

596 13 сен 2018, 11:42 596 526780

>>526776
Потому что у тебя, как и у большинства посетителей гдача, неправильное понимание движков: ты считаешь (и наверняка готов это отстаивать), что графон в игре обеспечивает движок. Но нет, графон обеспечивает разработчик, а движок обеспечивает среду для создания игор и более ничего.
Я как-то весной заикнулся об этом, так на меня целая толпа нубья слетелась, с пеной у рта доказывать мне, как я неправ.
Напомню, речь шла о том, что крупная студия при желании может сделать ААА-игру на любом из известных движков. Нубы усирались, доказывая, что нет, ты што, только на топовых движках, тычё!
И ещё.
Это твоё забуждение основано на тех образцах и примерах, что поставляются с движками. Есть ряд движков (не будем конкретизировать), которые поставляются с уёбищными и/или неоптимизированно-тормозящими демками. У людей, далёких от геймдева, складывается впечатление, что это предел возможностей движка. На самом деле демки - это предел творческих возможностей их создателей, не более.

Ответы526781526783

597 13 сен 2018, 11:48 597 526781

>>526780
Ты прав.

598 13 сен 2018, 11:52 598 526783

>>526780
слечусь пожалуй на тебя.
>графон в игре обеспечивает движок
в видеосике статичная модель с запеченными лайтмапами. там даже свет очень всрато поддерживатся, чего уж говорить о современных шейдерах.
можно усраться, но даже готику первую на нем не сделать — нет костной анимации.
>крупная студия при желании может сделать ААА-игру на любом из известных движков
нет, не на любом, а лишь на паре десятков. игрострой это не только качество, это еще и возможность правильно отрисовывать это качество. напомните, сурс энжайн уже научился в pbr?
>На самом деле демки - это предел творческих возможностей их создателей, не более.
в юнети нет SSS и индирект лайт скаттеринга. точнее есть, но фейковые и от васянов с сопутствующим пакетом всякой вич-инфекции. почему ты считаешь что топовые студии могут обходиться без этих новомодных приблуд?

Ответы526784526785

599 13 сен 2018, 11:55 599 526784

>>526783
>нет костной анимации
https://www.youtube.com/watch?v=C1SCb9ajsXM

Ответы526786

600 13 сен 2018, 12:00 600 526785

>>526783
>можно усраться, но даже готику первую на нем не сделать — нет костной анимации
https://www.youtube.com/watch?v=_IC1OnTrkpE

Ответы526786

601 13 сен 2018, 12:16 601 526786

>>526784
>>526785
хорошо, вы победили. готику сделать можно.

602 13 сен 2018, 14:24 602 526799

А вот Теккен не сделать!

Ответы526800526804

603 13 сен 2018, 14:30 603 526800

>>526799
:D

604 13 сен 2018, 15:16 604 526804

>>526799
Да как нехуй!
Но вот лично мне лень ебаться с ебучими фреймами и прочим файтеровским говном)

44 Кб, 714x524
605 13 сен 2018, 21:20 605 526865

>>439561 (OP)
Первый день в гмс, как очистить нахуй вот эту хуйню, оставшуюся от передвижения персонажа? Олсо, ответьте, куда лучше подобную хуйню задавать: в gm тред или помощь ньюфагам? Так как я предполагаю, что ближайшие пару месяцев буду часто хуйню спрашивать.

Ответы526868

606 13 сен 2018, 21:46 606 526868

>>526865
Здесь пиши. Я всегда отвечаю на адекватные вопросы. В ньюфаготред почти не хочу.

Твой вопрос не особо адекватен - что за хуйню ты вообще сделал?

Ты рисуешь не на application surface? Тогда делай каждый шаг в begin_draw_event surface_clear_alpha своему сурфейсу.

Ответы526870

607 13 сен 2018, 22:33 607 526870

180 Кб, 869x633219 Кб, 1134x713

>>526868
Первый день в гм, анон. Я вообще нихуя не знаю.
>application surface
Не ебу, что это. Как понял - отрисовка на отдельном слое

Сделал новую комнату, создал несколько слоев. В одном слое - инстансы объектов, другой - тайлсет.
Белая хренота по центру - персонаж, управляемый пользователем, коллизии обрабатываются таким образом(пикрил 2)
Кроме этого события ничего не писал.
Проблема в том, что при передвижении остаются предыдущие полупрозрачные отрисовки персонажа.

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

Ответы526871

608 13 сен 2018, 22:45 608 526871

>>526870
Тогда у тебя просто фона нет, либо он у тебя прозрачный.

Сделай полностью непрозрачный фон.

Ответы526872

609 13 сен 2018, 22:47 609 526872

>>526871
Благодарю.

Отсюда вытекает другой вопрос: Получается, все предыдущие draw сохранены и очищения не происходит?

Ответы526873

610 13 сен 2018, 22:53 610 526873

>>526872
Когда ты рисует по умолчанию - ты рисуешь на application_surface

По умолчанию она не очищается, так что всё нарисованное остаётся на ней.

Когда ты включаешь фон, то в начале каждого шага на твоём application_surface рисуется фон в режиме gpu_set_blendmode(normal). Если фон непрозрачный, он соответсвенно заменяет собой каждый пиксель твоего application_surface, таким образом происходит его очищение. Потом, поверх этого фона, рисуется всё остальное.

Ответы526874527324

611 13 сен 2018, 22:54 611 526874

>>526873
Спасибо

612 14 сен 2018, 19:56 612 526988

Посоны, я интернет-инвалид, где найти русификатор на гамак?

Ответы527031

613 14 сен 2018, 23:59 613 527031

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

614 15 сен 2018, 12:16 614 527078

>>527074
Вроде пермач

615 15 сен 2018, 12:47 615 527080

>>527074
>перманентная
Постоянная. Как же заебали косить под пиндосов

Ответы527087

616 15 сен 2018, 13:19 616 527087

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

Ответы527089527090527419527546527562

617 15 сен 2018, 13:38 617 527089

>>527087
>Вы блять им ноги целовать должны
Не передергивай

Ответы527095

618 15 сен 2018, 13:38 618 527090

>>527087
>Вы блять им ноги целовать должны
За то что они спиздили технологии немцев и русских?)) А ты знал что идея интернета сначала в ссср появилась?))

https://youtu.be/R3fw5y9VoQo

Ответы527106527107

619 15 сен 2018, 14:16 619 527095

>>527089
Отвечаю передергиванием на передергивание, если человек такими категориями размышляет, хули нет. Употреблять англицизмы - это закос под клятых пиндосов, ага.

620 15 сен 2018, 15:40 620 527106

>>527090
>спездели!1!11!
Ну да, это такая уникальная разработка, да. То, что совок не смог реализовать интернет для общего доступа это значит, что он и не разработал его вообще. Я тоже могу сделать сотни прототипов уникальной игры, но это не значит, что это законченный продукт.

Ответы527109

621 15 сен 2018, 16:15 621 527107

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

Ответы527109

622 15 сен 2018, 16:25 622 527109

>>527106
>>527107
С чего вы взяли что ничего не было реализовано? Прототип наверняка тестировался. Пиндосы просто его спиздили и завербовали правительство СССР, которые свернули свои разработки. Так же и развалили СССР

Ответы527112

623 15 сен 2018, 16:55 623 527112

>>527109
Ты реально думаешь, что на такую жирноту кто-то поведется? инбифайв азаза ты же ответил значит повелся

624 17 сен 2018, 12:50 624 527312

Кстати, в маркетлейсе йойо отдают Geon FX с небольшой скидкой

625 17 сен 2018, 14:42 625 527324

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

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

Ответы527405

626 17 сен 2018, 23:34 626 527405

>>527324
Проще всего объектом.
Производительнее - тайлом.

По тайловым коллизиям рекомендую гайд - https://forum.yoyogames.com/index.php?threads/on-slopes-and-grids-subpixel-perfect-topdown-movement-and-collision-line-without-objects.4073/ - если разберёшься - многое поймёшь о коллизиях и перемещениях.

Как там physics работает - вообще без понятия. Гравитацию и соударения я сам сделал. Пользоваться чем-то, что я не знаю как работает и в каком месте поставит мне подножку не было желания изначально.

Сколько объектов потянет? Ну накидай в комнату объектов да посмотри на fps_real.

627 18 сен 2018, 04:44 627 527419

>>527087
> где все от и до сделано пиндосами
Шизик и не лечишься.
Напомнил мне какую-то либерашку или какла верефицированного в твиттере, который на полном серьезе рассуждал о том, что латиница - "пиндосское изобретение".

Ответы527432

628 18 сен 2018, 12:52 628 527432

>>527419
хочешь сказать русское?

Ответы527443

629 18 сен 2018, 14:40 629 527443

>>527432
И не русское. И не пиндосское. А латинское, как ни удивительно.

Ответы527496

630 19 сен 2018, 00:26 630 527496

>>527443
Покажи мне на карте такую страну как Латиния))) только чур не украину)

Ответы527519527520

631 19 сен 2018, 11:21 631 527519

>>527496
Только после того, как ты мне покажешь "швейцарский" язык Швейцарии)) Раз у тебя все страны говорят на одноимённом языке)

632 19 сен 2018, 11:25 632 527520

>>527496
А хотя, вот тебе из гугла:
>Лаций (лат. Latium) — регион в античной Италии, прародина современных романских языков. Здесь же зародились римляне. Его территория в настоящее время входит в состав более крупного административно-территориального образования современной Италии — Лацио.

Ответы527545

81 Кб, 333x112
633 19 сен 2018, 15:03 633 527545

>>527520
>Италия
Ну ясно же, что пендосы проклятые. И кто теперь обосрался, м?

Ответы527557

634 19 сен 2018, 15:10 634 527546

Кто о чём, а пидорашки
о покланении хозяину. >>527087
Мочера в тред!

635 19 сен 2018, 16:42 635 527557

>>527545
Пиндосы - греки.
Обосрался - ты (или тот, за кого ты отвечаешь).

636 19 сен 2018, 17:43 636 527562

>>527087
>Вы блять им ноги целовать должны.
А ты целуешь или облизываешь? Про Пентковского и прочих слышал что или в школе не проходили?

637 19 сен 2018, 19:44 637 527581

Покупать?

638 20 сен 2018, 20:09 638 527746

Как рисовать партиклы у движущихся объектов?

Есть объект игрок и в определенном состоянии
должны вызываться эффекты искры.

В общем и целом они вызываются,и так получается что за объектом дорожка из зачаточного состояния эффекта (пучок искр) вместо одного длинного снопа. ЧЯДНТ?

create
//Spark on slide //----------------------------------------//-------------------------------------------//
//Creating Particle Types
//sparks
global.pt_sparks = part_type_create();
part_type_shape(global.pt_sparks, pt_shape_explosion);
part_type_size(global.pt_sparks, 0.50, 1, 0, 0);
part_type_scale(global.pt_sparks, 0.20, 0.03);
part_type_orientation(global.pt_sparks, 157, 189, 0, 0, 0);
part_type_color3(global.pt_sparks, 13828095, 4320254, 3132923);
part_type_alpha3(global.pt_sparks, 1, 0.81, 0.69);
part_type_blend(global.pt_sparks, 0);
part_type_life(global.pt_sparks, 10, 50);
part_type_speed(global.pt_sparks, 2, 5, 0, 0);
part_type_direction(global.pt_sparks, 170, 185, 0, 0);
part_type_gravity(global.pt_sparks, 0.09, 180);

//Creating Emitters
global.pe_sparks = part_emitter_create(SLIDE_PART);

var xp, yp;
xp = x;
yp = y;
//part_emitter_region(SLIDE_PART, global.pe_sparks, xp-2, xp+2, yp-2, yp+2, ps_shape_rectangle, ps_distr_gaussian);
part_emitter_stream(SLIDE_PART, global.pe_sparks, global.pt_sparks, 3);

step

if (проверка нажатия клавиши) //тут пробовал проверять по состоянию нажатия клавиши или "состоянию" объекта
{

part_particles_create(SLIDE_PART,x, y, global.pt_sparks, 1);

if (проверка того что клавиша отжата)

part_particles_clear(SLIDE_PART)

638 20 сен 2018, 20:09 638 527746

Как рисовать партиклы у движущихся объектов?

Есть объект игрок и в определенном состоянии
должны вызываться эффекты искры.

В общем и целом они вызываются,и так получается что за объектом дорожка из зачаточного состояния эффекта (пучок искр) вместо одного длинного снопа. ЧЯДНТ?

create
//Spark on slide //----------------------------------------//-------------------------------------------//
//Creating Particle Types
//sparks
global.pt_sparks = part_type_create();
part_type_shape(global.pt_sparks, pt_shape_explosion);
part_type_size(global.pt_sparks, 0.50, 1, 0, 0);
part_type_scale(global.pt_sparks, 0.20, 0.03);
part_type_orientation(global.pt_sparks, 157, 189, 0, 0, 0);
part_type_color3(global.pt_sparks, 13828095, 4320254, 3132923);
part_type_alpha3(global.pt_sparks, 1, 0.81, 0.69);
part_type_blend(global.pt_sparks, 0);
part_type_life(global.pt_sparks, 10, 50);
part_type_speed(global.pt_sparks, 2, 5, 0, 0);
part_type_direction(global.pt_sparks, 170, 185, 0, 0);
part_type_gravity(global.pt_sparks, 0.09, 180);

//Creating Emitters
global.pe_sparks = part_emitter_create(SLIDE_PART);

var xp, yp;
xp = x;
yp = y;
//part_emitter_region(SLIDE_PART, global.pe_sparks, xp-2, xp+2, yp-2, yp+2, ps_shape_rectangle, ps_distr_gaussian);
part_emitter_stream(SLIDE_PART, global.pe_sparks, global.pt_sparks, 3);

step

if (проверка нажатия клавиши) //тут пробовал проверять по состоянию нажатия клавиши или "состоянию" объекта
{

part_particles_create(SLIDE_PART,x, y, global.pt_sparks, 1);

if (проверка того что клавиша отжата)

part_particles_clear(SLIDE_PART)

Показать весь текст
Ответы527747527792

639 20 сен 2018, 20:11 639 527747

>>527746
>\t
это артефакт в копировании

640 21 сен 2018, 00:23 640 527792

>>527746
Во-первых опиши что ты хочешь и что у тебя есть. Со скриншотами и рисунками. Я тебе телепат, угадывать что там у тебя в голове?

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

В step event изменяй параметры part_emitter_region

Ответы527840

641 21 сен 2018, 11:24 641 527840

>>527792
Ну и вот это в каждом шаге part_particles_clear не даёт твоим партиклам "развиться". Что ты хотел-то?

Ответы527917

1,7 Мб, 552x343
642 21 сен 2018, 19:05 642 527917

>>527840
Хотел нечто подобное запилить, типа молнии при скольжении. Вчера как раз emitter_region подвигал и добился вот такого эффекта, но чет есть подозрение что я все равно не так это делаю лол

part_emitter_clear в степе чистит эмитер если объект не в нужном состоянии.

Ответы527922

643 21 сен 2018, 19:24 643 527922

>>527917
На, дарю.
https://drive.google.com/open?id=1sQCU6BROFcN11ChpTqD3DrHJXtcQp2s-

https://marketplace.yoyogames.com/assets/4574/geon-fx-particle-editor

Ответы527925

360 Кб, 1026x628
644 21 сен 2018, 19:31 644 527925

>>527922
>
>https://marketplace.yoyogames.com/assets/4574/geon-fx-particle-editor

Ты не поверишь, но купил на недавней распродаже

Так то спасибо, хех.

645 21 сен 2018, 19:39 645 527928

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

Ответы527931527953

646 21 сен 2018, 19:45 646 527931

>>527928
Можно.

Ответы527937

647 21 сен 2018, 19:52 647 527937

>>527931
Есть примеры таких игр? Можешь посоветовать какой-нибудь курс уроков по созданию многопользовательской ио игры на гейммейкере?

Ответы527948

648 21 сен 2018, 20:01 648 527948

>>527937
https://forum.yoyogames.com/index.php?threads/online-multiplayer-game.2109/

649 21 сен 2018, 20:07 649 527953

>>527928
> онлайн игру с динамично изменяющейся картой и большим числом игроков на сервере?
Но нахуя?

Ответы527954527955

650 21 сен 2018, 20:08 650 527954

>>527953
Хочу сделать игру, похожую на starve.io

651 21 сен 2018, 20:08 651 527955

>>527953
Под его определение попадают мультиплеерные крестики-нолики с динамично изменяющимся полем.

Ответы527958

652 21 сен 2018, 20:16 652 527958

>>527955
Динамично изменяющаяся карта - наверно, таким образом я описал возможность строить и сносить здания, сажать и рубить деревья, вот это всё.

Ответы527963

653 21 сен 2018, 20:27 653 527963

>>527958
> таким образом я описал возможность строить и сносить здания, сажать и рубить деревья
Очередной выживач с 0 онлайна чтоле?
Это можно сделать на чем угодно, но с твоими познаниями максимум что ты сделаешь - нечто, запускающееся только на суперкомпьютерах.

Ответы527964

654 21 сен 2018, 20:30 654 527964

>>527963
>Очередной выживач с 0 онлайна чтоле?
Да, типа того.
А почему моя поделка заработает только на суперкомпьютерах? Подобные игры очень требовательны к чистоте коде и вычислительным ресурсам?

Ответы527967

655 21 сен 2018, 20:38 655 527967

>>527964
> А почему моя поделка заработает только на суперкомпьютерах?
Потому что тебе нужно будет писать код не только как рубить деревья и перемещать персонажа, а с оглядкой на то, чтобы у тебя весь твой огромный мир работал одновременно и не засорял память лишними вычислениями.

656 28 сен 2018, 10:05 656 529289

871 Кб, 1920x1080725 Кб, 1920x1080

Есть у кого проблема с интерфейсом GMS2? Когда приближаешь, кажется, что даже текст растровый, все мылиться, и потом при отдалении это мыло остается. Очень глаз режет, помогите пожалуйста.

Ответы529562529574

657 29 сен 2018, 18:54 657 529562

>>529289
Бамп вопросу, а то потонет.
Upd: настройка dpi ничего не дала

Ответы529688

658 29 сен 2018, 20:37 658 529574

>>529289
Да, есть такое. Пофиксить не получится, насколько я знаю. Но в настройках можно задать размер шрифта, если тебя не устраивает дефолтный и тебе приходится сильно приближать окно для работы.

Ответы529647

659 30 сен 2018, 09:02 659 529647

>>529574
Да с кодом я решил проблему настройкой его открытия в новом окне. А вот все остальное просто раздражает.

660 30 сен 2018, 10:50 660 529664

Как лучше отрисовать карту - полностью нарисовать всю карту (все дорожки,тропинки,цветочки и прочие статические прелести)в редакторе или разделить все части карты на тайлы и расставить их вручную?

Ответы529665529668

661 30 сен 2018, 10:59 661 529665

>>529664
Когда карту достаёшь из колоду, на ней уже всё нарисовано.
Учись правильно задавать вопросы.

662 30 сен 2018, 11:49 662 529668

>>529664
Удобнее работать с тайтлами. Появляется возможность нормального переиспользования, если карта большая - лучше оптимизация

663 30 сен 2018, 14:17 663 529688

>>529562
>gd
>потонет
)))

Ответы532768

664 3 окт 2018, 20:32 664 530552

Внимание! Не рекомендую ставить сегодняшний апдейт GMS2

Там пиздец какие баги.

665 16 окт 2018, 15:24 665 532691

Ёбаный-карёбаный, вы ещё не сдохли?

Ответы532768

666 16 окт 2018, 23:13 666 532768

>>532691
>>529688

667 18 окт 2018, 23:06 667 533080

>>439561 (OP)
Ананас, хочу вкатиться в GMS ибо самому с нуля каждый раз писать дико удручает и выматывает, а тут будет как мне кажется несколько проще.
С чего начать? Опыта в программировании достаточно.

Ответы533081

668 18 окт 2018, 23:13 668 533081

>>533080
>Опыта в программировании достаточно.

Тогда с диздока.

Ответы533082533083

669 18 окт 2018, 23:15 669 533082

>>533081
Если ты про "изучить интерфейс" и "как создавать объекты и размещать их в комнате" то начинай с
https://www.youtube.com/channel/UCn7FE3Tx391g1tWPv-1tv7Q

670 18 окт 2018, 23:17 670 533083

>>533081
Нихера себе.

671 21 окт 2018, 23:30 671 533545

Как рисовать партиклы на экране, чтобы они были в статике? Я так понимаю все партиклы рисуются от объекта, но если объект двигается то эффект от них размывается по поверхности. Надо их как-то от вида рисовать или че?

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

Ответы533582

672 22 окт 2018, 11:25 672 533582

>>533545
Для начала сформулируй вопрос так, чтобы его поняли другие.

Что значит фраза "партиклы рисуются от объекта"? Ты упоротый?

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

"рисовать относительно вида" чё блять? но я примерно понимаю, что ты имеешь ввиду.

Отключи автоматическую отрисовку партиклов
part_system_automatic_draw(ind, automatic);

Затем создай какой-нибудь объект-контроллер частиц, который будет заниматься их рисованием.
И через его draw_event работай с ними используя функци. part_system_drawit(ind)

Установи своему эмиттеру фиксированные координаты. Создай сурфейс так, чтобы координаты были в его центре. Потом
surface_set_target(surf)
part_system_drawit()
surfcae_reset_target()

А можешь камеру двигать, прежде чем частицы отрисовать, а потом возвращать назад.
matrix_set( matrix_world, matrix_build( -30, -30, 0, 0, 0, 0, 1, 1, 1 ) );
part_system_drawit()
matrix_set( matrix_world, matrix_build_identity() );

Ответы533601

673 22 окт 2018, 14:08 673 533601

>>533582
>>533582
>Что значит фраза "партиклы рисуются от объекта"? Ты упоротый?
Я имел в виду что координаты для имитера мы задаем в объекте.

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

За советы спасибо, попробую накатить.

Ответы533605

674 22 окт 2018, 14:43 674 533605

>>533601
Модешь ещё попробовать в ивенте draw_gui рисовать свой интерфейс и в этом же ивенте использовать функцию
part_system_drawit()

Не знаю, что получится. Но по-идее должно быть именно то, что тебе нужно.

draw_gui это такой ивент, когда все координаты считаются не относительно верхнего левого угла комнаты, а относительно верхнего левого угла экрана.

Ответы533624

675 22 окт 2018, 17:09 675 533624

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

131 Кб, 858x600
676 22 окт 2018, 22:21 676 533685

ПОМОГИТЕ АНАНАСЫ!
Во второй версии геймейкера присутствует такая функция: instance_create_depth, которой нет в версии 1.4, на которой я работаю.
Мне нужно написать что-то типа этого

if (keyboard_check_pressed(ord("")))
instance_create_depth(x, y, 0, object);

через функции 1.4, подскажите как

Ответы533688

677 22 окт 2018, 22:52 677 533688

>>533685
Ничего не перепутал?
Вроде в 1.4 нету layer зато есть depth. А в 2 есть и то и другое.

И в чём проблема-то? Ну заменяешь depth на layer, содаёшь instance_layer на нужной тебе глубине и создаёшь инстанс в него.

678 4 ноя 2018, 18:35 678 535521

Может кто-нить в курсе
поставил объекту вертикальную скорость hspd = sign(obj_player,y-y)* spd
но при достижении одного уровня высоты его начинает немного трясти
проверки уровня высоты и ограничения скорости не помогают, что я делаю не так?

Ответы535528535750

679 4 ноя 2018, 18:47 679 535528

>>535521

Начнём с того, что ты скажешь, как ты хочешь чтобы было?

Хочешь чтобы объект занял один эшелон с игроком? Делай так:

diry = sign(obj_player.y-y)
if diry = 0 diry = 1 всегда ставлю такое условие, чтобы не проебаться с анимацией

if abs(obj_player.y-y) > abs(vy) если объект ещё не достаточно приблизился к игроку
{
vy = diry *spd
}
else
{
vy = 0;
y = obj_player.y
}

307 Кб, 1589x707
680 5 ноя 2018, 18:44 680 535714

>>439561 (OP)
Вчера прошел свежевышедший сиквел Ундертале, и так вдохновился заебенить что-нибудь эдакое (благо идея есть), что начал гуглить, в чем игру делали. Оказалось - Гейммейкер.
Скажите, если я пиратку поюзаю, а потом нет-нет да и решу серьезно заняться проектом для выкатывания его на всеобщий суд, мне же придется покупать лицуху или как? Там типа строго с этим, от каждого юзера требуют какой-нибудь лицензионный код в качестве пруфа или что?
И главное: можно же будет потом все свои недоделки с пиратки на лицуху перекинуть? Читать-то двиглу в теории один хуй те же самые файлы.

Ответы535715535717535737

681 5 ноя 2018, 18:55 681 535715

>>535714
>все свои недоделки с пиратки на лицуху перекинуть? Читать-то двиглу в теории один хуй те же самые файлы.
перекинуть - да, остальное хз

682 5 ноя 2018, 19:01 682 535717

>>535714
Берёшь бесплатную триалку и делаешь.

К тому моментку, как ты хорошенько освоишься с гамаком, вопрос покупать/не покупать у тебя отпадёт.

Ответы535718

683 5 ноя 2018, 19:03 683 535718

>>535717
И в чем особенность триалки? Вырезано 95% функционала лицухи?

Ответы535720

684 5 ноя 2018, 19:10 684 535720

>>535718

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

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

Ответы535723

685 5 ноя 2018, 19:14 685 535723

>>535720
Вроде же еще какие-то функции не работают?

Ответы535724

686 5 ноя 2018, 19:31 686 535724

>>535723
https://help.yoyogames.com/hc/en-us/articles/230407528-GameMaker-Studio-2-Trial-Limitations

687 5 ноя 2018, 21:45 687 535737

>>535714
Много таких по весне оттаяло.

Ответы535742

688 5 ноя 2018, 23:04 688 535742

>>535737
Можно только порадоваться, что ещё кто-то решил взяться за дело. Зачем сразу пугать?

Ответы535745

689 5 ноя 2018, 23:22 689 535745

>>535742
Потому что даже горящие геймдевом долгое время люди приходят и обсираются. А тут ребенок, который жил себе не тужил, вдруг поиграл в очередное оверхайпнутое говно для детей и решил в геймдевелопера поиграть, ну так, в перерыве между каточками в фортнайте. Какой багаж базовых знаний ему нужен, ребенок, конечно же, не удосужился узнать, думая, что двигло сделает все за него по нажатию кнопки "зделоть пиздато", да и местые шизики ведь уверяют, что "нада тока начать и будет крута атвичаю!", ну точно все заебись должно быть! В чем же заключается цепляемость того же ундерсраля, у ребенка есть только призрачные (и те неверные) представления, но у него уже есть "идея" своей слезодавильной говноистории, которая, конечно же, взорвет весь игропром (нет). При получении все большего и большего количества помощи и сурсов для чтения по движку у ребенка начнут затухать его горящие глаза творца, пока окончательно не потухнут и он не пойдет дальше брать топ-1 в своем фортнайте. Проходили уже.

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

Ответы535750535789

690 5 ноя 2018, 23:38 690 535750

>>535745
Мне это ты зачем объясняешь?
А ты в курсе, что самые фанатичные и упорные как раз таки тоже дети? В определённом возрасте ребёнок может определить для себя интерес на всю жизнь. Нужно только поддержать.

И по поводу поддержания треда в чистоте ты не совсем прав. Этот тред по большей части бессмыслен. Уровень вопросов от неофитов тут вот такой: >>535521
Какая ещё концентрация полезных постов? Её даже на yoyo форуме нет.

691 6 ноя 2018, 07:45 691 535789

>>535745
Ебать тут обиженке сракотан половой жопы разворотило, аж стену высрал, проецируя свои боли и обиды на взрослого и успешного человека.

Ответы535799

692 6 ноя 2018, 10:13 692 535799

>>535789
>обиженке сракотан половой жопы разворотило
>взрослый и успешный человек

Что-то не сходится.

693 7 ноя 2018, 22:15 693 536079

Скажите, а у всех в процессе загрузки компонентов при первом запуске GM насоздавал хуеву гору системных дисков, а потом их поочередно поудалял? Я вообще не понял юмора.

Ответы536081536095

694 7 ноя 2018, 22:19 694 536081

>>536079
у меня во время использования он их создает

Ответы536082

695 7 ноя 2018, 22:20 695 536082

>>536081
Он ебанутый? Че он с ними делает?

696 7 ноя 2018, 23:06 696 536095

>>536079
Есть такая хуйня.
Он делает 3 виртуальных диск, в каждом из которых содержимое гамакерской AppData.

Зачем - ни малейшего представления. Но если у него вдруг не получится это сделать - приложение не запустится.

697 10 ноя 2018, 10:34 697 536359

>>439561 (OP)
Посмотрел вот это:
https://www.youtube.com/watch?v=izNXbMdu348
Если до конца все было понятно, то с прыжка я охуел.
Почему vertical speed была выставлена на -7? Почему минус 7? Ось координат поменяла свои значения? Вроде вверх — это плюс.
Но что я точно не понимаю — это каким хуем вообще здесь работает прыжок. Почему спрайт прыгает вверх, замирает, а потом падает вниз? Чем это вообще обусловлено? Почему прыжок плавный? Судя по коду, после нажатия пробела спрайт должен телепортироваться на 7 пикселей вверх и вроде бы даже замереть в воздухе. Почему он, сука, падает?
Почему я такой тупой?

Ответы536366536367536368

698 10 ноя 2018, 11:22 698 536366

>>536359
Он присваивает -7 вертикальной скорости, которая потом увеличивается из-за гравитации, и получается плавный прыжок.
И там ниже он делает y=y+vsp, что ставит вертикальную координату.

Ответы536379

699 10 ноя 2018, 11:31 699 536367

>>536359
Потому что начало координат обычно считается от верхнего левого угла поля и ось Y направлена вниз.
Привыкнуть не легко.

После нажатия прыжка спрайт подпрыгивает вверх на 7 пикселей 60 раз в секунду (или 30 раз, смотря какой фреймрейт выставлен).
Плюс идёт работа гравитации, которая плавно обнуляет скорость прыжка а потом разворачивает её в другую сторону. Почему ты этого не заметил?

v=at

Это, вроде, пятый класс.

Ответы536379

700 10 ноя 2018, 11:31 700 536368

>>536359
>Почему минус 7?
Очевидно, ось Y направлена вниз. В разных движках могут оси располагать как создателям вздумается.

>Почему спрайт прыгает вверх, замирает, а потом падает вниз?
Действует гравитация. Тело движется с ускорением. Смотри внимательнее.
>vsp = vsp + grv;
vsp сохраняет свое значение каждый кадр, и его немного изменяет grv.

Ответы536379

701 10 ноя 2018, 14:09 701 536379

>>536366
>>536367
>>536368
Спасибо за попытку объяснить, но я все равно нихуя не понял.
Попробую сам все это повторить ручками, может, допетрю.

Ответы536381

702 10 ноя 2018, 14:26 702 536381

>>536379
Код в step event выполняется циклично, 60 раз в секунду.

Ответы536396

703 10 ноя 2018, 15:59 703 536396

>>536381
Это я понял. Я даже примерно могу представить, что высота прыжка именно в vsp = -7 и устанавливается. Я не понимаю, где в коде указано, что спрайт должен падать при достижении этой отметки.

Ответы536399536402

704 10 ноя 2018, 16:14 704 536399

>>536396
Вот здесь:

vsp = vsp + grv;

Каждый шаг к скорости прибовляется 0.1
В момент нажатия кнопки "прыжок" скорость мгновенно становится -7 и персонаж летит вверх.
Затем в течении 70 шагов скорость увеличивается до 0, и персонаж останавливается. Это высшая точка прыжка. Потом скорость продолжает увеличиваться по 0.1, скорость становится положительной и персонаж с ускорением летит вниз.

Ответы536405

705 10 ноя 2018, 16:23 705 536402

>>536396
0.1 это ускорение, начальная скорость в -7 каждый фрейм "увеличивается" на 0.1, т.е. за 60 фреймов скорость станет -1, за 120 фреймов станет 5, т.е. объект в обратную сторону по игреку двигаться начнёт.
На 70 фрейме скорость будет 0 - это и есть та точка, где спрайт зависнет в воздухе, а на 71 фрейме начнёт падать из-за скорости в 0.1

Ответы536405

706 10 ноя 2018, 16:37 706 536405

>>536399
>>536402
Бляха-муха, я понял. Нет, правда.
Спасибо от души.

707 11 ноя 2018, 04:21 707 536503

Таки получил первый заказ на игру сделанную в гм2 и заработал свои первые 100к лол.

Ответы536504

708 11 ноя 2018, 04:23 708 536504

>>536503
Поздравляю. Пили кулстори как поднять бабла

Ответы536506

709 11 ноя 2018, 04:31 709 536506

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

Ответы536507536537

710 11 ноя 2018, 04:32 710 536507

>>536506
Хорошие у тебя друзья. Итог покажешь, или это сорт оф НДА?

Ответы536508

711 11 ноя 2018, 04:33 711 536508

>>536507
Покажу как он релизнет ее, если не забуду. Пока просил не светить.

Ответы536510

712 11 ноя 2018, 04:36 712 536510

>>536508
дил

713 11 ноя 2018, 04:37 713 536511

Алсо, как же заебал GML, сил моих нет уже. Так устал костылить со скриптами это словами не описать. Хоть на юнити перекатывайся к нормальному ООП блжад.

1,2 Мб, 540x417
714 11 ноя 2018, 12:01 714 536537

>>536506
Прикольно, а что, всю разработку, включая арт и музыку, ты сам ебашил?
Как к цене такой пришли, с самого начала договорились, или ты почасовую озвучил, или в конце просто сказал: дай стописят штукарей, а заказчик такой: "Че ахуел?))) вот те сто и радуйся епта"?

715 11 ноя 2018, 13:52 715 536552

Товарищи, а как сделать так, чтобы я нажал кнопку один раз, и анимация вращения проигралась целиком, но при этом у меня нет раскадровки, а только image_angle += 10?
И так, и сяк ебался, лупы тут просто не работают, потому что луп покадровый и так запущен.
Анимация проигрывается нормально только для зажатой клавиши.

Ответы536565

716 11 ноя 2018, 15:46 716 536565

>>536552

Create Event:
rotating = false;
rotating_counter= 36;

Step Event:
if (!rotating && keyboard_check_pressed(vk_space)) {
rotating = true;
}

if (rotating) {
image_angle += 10;
rotating_counter -= 1;
if (rotating_counter == ) {
rotating = false;
rotating_counter = 36;
}
}

Ответы536634

717 11 ноя 2018, 19:24 717 536602

Сап двач, у меня к тебе разговор.
Я старпёр 30+ который уже отработал на разных работках. Несколько лет назад меня это задобало, и я решил уйти в геймдев, благо накопил нехило денег пока работал. Пообщался с разными людьми, прокачал свои скиллы (рисование/анимация, в код не могу, ибо окологуманитарий), поработал за еду в котрке которая пилила мобилки что бы понять как это работает изнутри, и в итоге открыл свою компанию. Естеественно начал пилить игру мечты, и вполне закономерно провалились, потеряв попутно почти всё что заработал за 10 лет.

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

Короче говоря, ищю партнёра на новый проект. Особенно если у тебя уже есть опыт в игрострое (дополнително, если ты погромист будем более менее друг друга дополнять). Хотелось бы вовлечёного человека (то есть с долями в компании), ну и желательно не моложе 25и и с достаточном количеством свободного времени. Так как бюджет есть, то будет скорее всего и зарплата. Короче всё обсудимо.

Понимаю что не лучшее место для такого поиска, но я пробую все варианты, если интересно пиши на фейко мэйл: serapNx2isANUSyr&TahooPUNCTUMco#G9m

Ответы536610536616536646536700

718 11 ноя 2018, 20:15 718 536610

>>536602
Я готов, но непонятно, что за проект, 2д говно на гамаке?

Ответы536644

719 11 ноя 2018, 20:59 719 536616

>>536602
И потому ты зашёл на двач. Уж тут-то ты найдёшь адекватных сотрудников.

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

Сдаётся мне, ты очередной шизик.

У нас в последнее время просто наплыв директоров. Школа бизнес молодости где-то протекла?

Ответы536644

720 11 ноя 2018, 22:27 720 536634

>>536565
Дополнительная переменная, которую нужно понижать до нуля с каждым поворотом. Ну конечно!
Грасиас, синьор.

721 11 ноя 2018, 23:57 721 536644

>>536610
Есть различные наработки, хотелысь бы вместе выбрать.
>>536616
Ты дебик или на русском читать не умеешь? Ссылки не будет посколько нихрена ничего не было сделанно. А насчёт энтузиазма, прямо же написанно что раз есть бюджет будет и зарплата...

Ответы536675

722 12 ноя 2018, 00:01 722 536646

>>536602
На почту-то будешь отвечать?

723 12 ноя 2018, 07:10 723 536675

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

724 12 ноя 2018, 12:51 724 536700

>>536602
> Нашёл с горем пополам инвестора
Чот кринжанул.
Инвесторы на 2д перделки сделанные на гамаке.

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

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

Ответы536701536702536718536792

725 12 ноя 2018, 13:03 725 536701

>>536700
>которые просто проверяли свои силы в игрострое.
>а потом подняв бабла в полную силу пилили ИГРУ и получалось только говно и моча

Ответы536704

726 12 ноя 2018, 13:09 726 536702

65 Кб, 604x45311 Кб, 271x186

>>536700
>кринжанул

Ответы536704

727 12 ноя 2018, 13:18 727 536704

>>536701
Именно так.

>>536702
О, одноклассники протекли :)

Ответы536707

50 Кб, 604x402
728 12 ноя 2018, 13:35 728 536707

>>536704
>О, одноклассники протекли :)
Ыыы, бля

729 12 ноя 2018, 15:53 729 536718

>>536700
Блэать, только что дошло что изначально запостил не в тот тред. Гамак или негамак не похер одходило бы только к игре.

>Не помню ни единого завершенного проекта, который бы начинался так
Stardust Valley, Armello, World of Goo, Minecraft...Нет не слышал про такое.

Ответы536719536728

730 12 ноя 2018, 15:55 730 536719

>>536718
Ну что, ты нашел "партнера"?

731 12 ноя 2018, 19:08 731 536728

>>536718
>Stardust Valley
Stardew Valley
Создан одним человеком, который и рисовал, и кодил, и писал музыку. Начал делать игру спонтанно, пытался лишь воссоздать более старую игру Harvest Moon, как проверку своих сил после обучения программированию.
> World of Goo
Создан двумя друзьями в свободное время от основной работы в EA.
> Minecraft
Создан одним человеком. Спонтанно, как попытка возродить более древнюю и уже дохлую на тот момент игру Infiniminer.

Я вижу у тебя познания на уровне.

Ответы536729

732 12 ноя 2018, 19:20 732 536729

>>536728
Hollow Knight тебе в ебало.

sage 733 13 ноя 2018, 16:08 733 536792

>>536700
> А вся инди годнота вообще была сделана на коленке одним-двумя людьми, которые просто проверяли свои силы в игрострое.
Инди-годнота типично сделана адовыми профи с десятком лет за плечами увидевшими что издатели уходят из рыночной ниши малых и средних игр.

734 15 ноя 2018, 23:37 734 537105

Здарова, гамакеры.

Вопрос теоретического порядка. Есть игра на ведра https://www.youtube.com/watch?v=5G7Xb5gFa80
Как наиболее оптимально реализовать похожую механику поведения пловцов?
Рассчитывать шаг исходя из того что в игре все клетки одного размера и добавлять условия при встрече с бортами? Как вообще реализуют такого рода игры с хождением по клетке? вот еще пример ходьбы по клеткам https://youtu.be/ptYwMwxP7ho

Ответы537139

735 16 ноя 2018, 09:38 735 537139

>>537105
А в чём вообще проблема заключается?
Сам-то подход пытался придумать?

Я бы сделал ds_grid, задающую координатную сетку.
В каждую ячейку поместил бы массив, описвающий её содержимое.
Тип клетки, соответсвующий спрайт, всякие дополнительные параметры типа "рассыпанные камни" или "в зоне действия водоворота". И естественно ссылки на объекты, которые в ней находятся.

Для всего этого дела создал бы контроллер, который бы в ds_queue собирал от объектов запросы на перемещение из одной клетки в другую.
Ввёл бы параметр отвечающий за "ход". За один ход один обхект может отправить столько запросов на перемещение, сколько клеток за ход он может пройти.

Затем в конце каждого хода выключал бы контроллер игрока, и двигал объекты в соответствии с ds queue, проигрывая анимацию движения.

Ответы537144537145

736 16 ноя 2018, 10:23 736 537144

>>537139
Понел, пойду читать документацию потому как до этого касался ds_grid только теоретически.

737 16 ноя 2018, 10:27 737 537145

>>537139
>ds_grid
Да, вопрос в подходе. В этом проекте хочется попробовать не говнокодить со старта а сделать нормальную базу.

Ответы537146

738 16 ноя 2018, 10:55 738 537146

>>537145
Можешь ещё всунуть в каждую ячейку ds_grid ссылку на ds_map вместо массива.

И для каждой клетки свой ds_map вести.

739 19 ноя 2018, 13:39 739 537537

Ананасы, мож кто знает как импортнуть видео для катсцены в гмс 2?
Нужно сильно шо пиздец

Ответы537945538075

740 22 ноя 2018, 23:58 740 537945

>>537537
Видел на итче какую-то тему связанную с импортом видео в гамак, погугли. Не знаю правда поможет или нет.

741 23 ноя 2018, 22:15 741 538075

>>537537
Вроде как на маркете есть ассет, который это делает. Но он вроде как платный.

742 6 дек 2018, 23:33 742 539833

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

Ответы539907541343

743 7 дек 2018, 12:46 743 539907

>>539833
Почему?

Ответы539919539983

744 7 дек 2018, 13:40 744 539919

>>539907
Потому что не знал про божественный CopperCube!

745 7 дек 2018, 19:17 745 539983

>>539907
У гамака есть огромная проблема. При мало-мальском усложнении проекта вся структура кода идет по пизде из-за того, что ГМЛ очень и очень слаб.
То есть вместо того, чтобы писать человеческие классы с нужными методами, ты постоянно плодишь скрипты, которые лежат хуй знает где и ты начинаешь охуевать от говнокода.

Плюс отсутствие нормальных человеческих структур данных вымораживает. ds_list, ds_map - это ебаный ад и израиль.

Т.е. пилить всякие платформеры/раннеры несложные гамак позволяет очень легко и быстро. Но как только ты делаешь что-то с механиками посложнее - начинается пиздец.

Люблю гамак всей душой, но я его перерос.

Ответы539987

746 7 дек 2018, 19:56 746 539987

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

Но перекатываться всё же пока не планирую.

Ответы539990542013

747 7 дек 2018, 19:59 747 539990

>>539987
Из скрипта можно вернуть массив (или дс лист) с нужным кол-вом переменных. Но это треш все равно.

Ответы542013

748 9 дек 2018, 20:38 748 540265

Скачал я тут значит ваш гамакер. Хочу забахать игру типо хотлайн майами чтобы продалась в миллион копий. С чего начать?

Ответы540269

749 9 дек 2018, 21:01 749 540269

>>540265
С туториалов Спалдинга.

750 11 дек 2018, 14:22 750 540513

Ребят, решил вкатится и имею проблему.

Пилю крч платформер со случайно генерируемыми платформами по которым надо прыгать. И фишка в том что при соприкосновении с платформой снизу или сбоку объект игрока прилипает к ней. И соответственно платформа начинает двигаться с игроком. Как фиксить? От чего может быть? Вот говнокод в столкновении с игроком

if (vspeed > 0 && !place_free(x,y+vspeed))
{
move_contact(270);
vspeed = 0;
jumpCount = jumpCountAspect;
}

if (vspeed < 0 && !place_free(x,y-vspeed))
{
move_contact(0);
vspeed = 0;
}

if !place_free(x+30,y)
{
move_contact(360);
vspeed = 20;

// x = x+(global.levelSpeed+10)
}

пытался запилить костыль hspeed = o_platform.hspeed; в последней проверке чтобы объект игрока принимал скорость платформы и она не сдвигалась но все равно. Платформа спавнится с hspeed=(0-global.levelSpeed)
В create у контролера global.levelSpeed = 6

750 11 дек 2018, 14:22 750 540513

Ребят, решил вкатится и имею проблему.

Пилю крч платформер со случайно генерируемыми платформами по которым надо прыгать. И фишка в том что при соприкосновении с платформой снизу или сбоку объект игрока прилипает к ней. И соответственно платформа начинает двигаться с игроком. Как фиксить? От чего может быть? Вот говнокод в столкновении с игроком

if (vspeed > 0 && !place_free(x,y+vspeed))
{
move_contact(270);
vspeed = 0;
jumpCount = jumpCountAspect;
}

if (vspeed < 0 && !place_free(x,y-vspeed))
{
move_contact(0);
vspeed = 0;
}

if !place_free(x+30,y)
{
move_contact(360);
vspeed = 20;

// x = x+(global.levelSpeed+10)
}

пытался запилить костыль hspeed = o_platform.hspeed; в последней проверке чтобы объект игрока принимал скорость платформы и она не сдвигалась но все равно. Платформа спавнится с hspeed=(0-global.levelSpeed)
В create у контролера global.levelSpeed = 6

Показать весь текст
Ответы540520540521

751 11 дек 2018, 14:58 751 540520

>>540513

У тебя ещё гравитация работает? Направление vspeed учитываешь?
Скорее всего у тебя вот это (vspeed < 0 && !place_free(x,y-vspeed)) в правду превращается, когда vspeed обнуляется, а потом срабатывает гравитация. Хуй знает короче.

Запускаешь игру в режиме дебага, когда объект прилип к платформе табаешься в ide и ставишь брекпоинт в step event объекта. И шаг за шагом смотришь, что у тебя срабатывает.

Запостил какой-то кусок кода без коментов, без объяснений. Мы угадывать должны, как оно у тебя работает?

Безотносительно твоего вопроса - не рекомендовал бы использовать вот эту шнягу искаропки: move_contact, place_free и т.д. Особенно если пишешь платформер. Напиши свои функции, о работе которых ты будешь знать всё. А то тебя ждут весёлые провливания сквозь пол, застревания, прилипания. Вот это всё.

Ответы540530

752 11 дек 2018, 15:00 752 540521

>>540513
Ну и ещё по движущимся платформам совет.

Обрабатывай движения игрока в step а движения платформ в end_step или begin_step.

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

753 11 дек 2018, 15:33 753 540530

>>540520
Спасибо анон, поковыряю.
Добра

754 11 дек 2018, 19:10 754 540567

Хз, было или нет, но вот вам Гамак Студия 2

https:// rut racker. org/forum/viewtopic.php?t=5603189

Ответы540570

755 11 дек 2018, 19:12 755 540568

А у меня вопрос, как сделать анимацию броска кубика (6-8-10-20 граней, способ, наверное, универсальный должен быть). В смысле, ну, не рисовать же анимацию перекатывания от каждого числа к каждому числу, верно?

Ответы540569

756 11 дек 2018, 19:16 756 540569

>>540568
А как ты хочешь, чтобы она выглядела? Можешь 3д кубик нарисовать и бросать.

Можешь нарисовать каждую грань отдельным спрайтом а потом на едином шаблоне рисовать отдельные спрайты.

Ответы540856

757 11 дек 2018, 19:17 757 540570

>>540567
Тебе 6 лет? Пшел в садик!

758 13 дек 2018, 18:23 758 540856

>>540569
нет ли каких-то демо проектов с чем-то похожим? Чтоб посмотреть?

На самом деле мне не принципиально, каким именно образом

Ответы540882

759 13 дек 2018, 21:55 759 540882

>>540856
>На самом деле мне не принципиально, каким именно образом

Ну вот тебе 2d кубик на 4.

https://drive.google.com/open?id=1hwj8sHL90HCjP7OVacbJTZGzzKjBXuLp

Ответы540893

760 13 дек 2018, 22:42 760 540893

>>540882
<3

761 19 дек 2018, 02:34 761 541343

>>539833
Перекат в процессе, заодно хапнул заказик, чтобы училось лучше.
Юнька-таки гораздо удобнее конечно, если в ней разобраться. На гме у меня правда все делалось в 1.5 - 2 раза быстрее, но чем дальше в проект, тем больше пизда рулю в плане организации кода.
Человеческое ООП решает все-таки.

Ответы541931

762 24 дек 2018, 11:03 762 541931

>>541343
2d заказики есть на юньке?

Ответы542038

763 24 дек 2018, 17:53 763 542013

>>539987
>>539990

>можно, например, вернуть только одну переменную
>можно вернуть массив (или дс лист) с нужным кол-вом переменных

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

764 24 дек 2018, 20:30 764 542038

>>541931
Да

765 26 дек 2018, 19:39 765 542386

503 Кб, 1600x900520 Кб, 1600x900

Сап двач. При создании комнаты возникает вот такая проблема, хотя у объекта текстбокса слой выше(глубина равна 0)

Причем после переходов через комнаты все становится норм.

В чем косяк? Сталкивался кто? ибо я упорно не понимаю чому слои не работают как надо

Ответы542389542433542435579054

257 Кб, 1600x900
766 26 дек 2018, 19:40 766 542389

>>542386
слои

767 26 дек 2018, 21:35 767 542433

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

show_debug_message(depth);

Ответы542457542461

768 26 дек 2018, 21:44 768 542435

>>542386
Возможно в какой-то из комнат слои в другом порядке идут.

Ответы542457

769 26 дек 2018, 22:30 769 542457

227 Кб, 1600x900222 Кб, 1600x900

>>542435
прочекал, везде одинаково

>>542433
попробую сейчас

364 Кб, 1600x900
770 26 дек 2018, 22:39 770 542461

>>542433
чому то глубина одинакавая выставлялась.
Выставил для каждого объекта отдельно - пофиксилось

Спасибо геймдевач-помогач

Ответы542509542830

771 27 дек 2018, 06:39 771 542509

>>542461
https://www.youtube.com/watch?v=f7KOOp80VJY
ебать охуенно

Ответы549124

29 Кб, 482x480
772 27 дек 2018, 14:36 772 542602

>>439561 (OP)
Вопрос №1: Можно ли на нём пилить RTS, 3d/2d масштабом в 25-50 юнитов на экране?

Вопрос №2: Можно ли на нём пилить (TBS), 3d/2d масштабом в 50-100 юнитов на экране?

Вопрос N3: Возможно ли на нём прописать аи противника?

я кончил.

Ответы542617542620542844

773 27 дек 2018, 15:11 773 542617

>>542602
да

774 27 дек 2018, 15:30 774 542620

>>542602
3д в гамаке хуевый, не стоит даже пробовать.
В 2д в принципе можно делать что угодно, но если у тебя планируется ложная логика проекта, то быстро упрешься в ограничения GML/

Ответы542624

775 27 дек 2018, 15:44 775 542624

>>542620
Что ты там воду льёшь?
Вопрос: можно ли сделать то то и то то.
Ответ: можно.
Всё.

776 28 дек 2018, 23:03 776 542830

>>542461
Где ты уроки находишь, или сам разбираешься в проге?

Ответы542833549126

777 28 дек 2018, 23:22 777 542833

>>542830
https://www.youtube.com/channel/UCn7FE3Tx391g1tWPv-1tv7Q

мимо

23,1 Мб, webm,
1048x1050, 0:40
778 29 дек 2018, 00:17 778 542844

>>542602

Здесь:
Пасфайдинг.
Система классов: маг/вор/воин
Система квестов
Система принятия решений.
Система нанесения урона.

Сдлано за два вечера.

779 4 янв 2019, 04:31 779 543647

Моя геймдев-карьера: установил украденную версию 1.4, не смог запустить.

Ответы543650

780 4 янв 2019, 04:55 780 543650

>>543647
В том числе 1.4.9999.
По результатам гугла моя ошибка описана здесь, только у меня ХР:
https://gcup.ru/forum/36-29024-1

>Установочник запускается,установка успешно проходит,а вот сама прога не катит! sad

>Все просто и сложно одновременно. Была такая же проблема. В Appdata есть файлик trace там ошибка твоего запуска. У меня ругался на framework. Исправил версию в файле .config и все распаковалось. Поправил версию framework в распакованном studio и все заработало.

Но у меня папка проги в appdata пуста. Что написать в конфиге?

781 4 янв 2019, 05:15 781 543651

Да и ладно, запустил 8.1.

782 4 янв 2019, 10:20 782 543662

Как вы ориентируетесь во встроенных функциях и переменных? В мануале они приводятся по ходу дела и в разных местах, а в меню скриптов только списки без описания.

Ответы543710

783 4 янв 2019, 14:13 783 543710

>>543662
А в чем проблема? Тебе ж не надо сходу их все помнить.

Ответы543783

784 5 янв 2019, 00:31 784 543783

>>543710
Уже ни в чем, я ебси в глаза и не мог найти раздел Game play в главе GML в справке.

785 5 янв 2019, 18:09 785 543892

Анчоусы, как по уму хранить большие объемы текста в игре?

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

Ответы543906

786 5 янв 2019, 18:39 786 543906

>>543892
Храни в ini файлах, один файл на свой язык.

1,4 Мб, webm,
640x508, 0:10
787 6 янв 2019, 07:01 787 543988

Хелло ворлд, сделал коника.
Понял, что зря у меня весь код в степ ивенте, наверно не так надо было начинать.
А вы настраиваете один ивент и в нем пишете все основное или делаете по скрипту на фичу? Есть рекомендации как лучше их организовать?

Ответы543995

788 6 янв 2019, 10:18 788 543995

>>543988
Всё что можно - в скрипты.
Всё разбиваю на регионы.
Для каждой фичи - свой объект. За параллакс фонов отвечает obj_bg, за свет obj_light, за интерфейс obj_gui

789 6 янв 2019, 14:27 789 544013

6к деревянных (и та за не мультиплатформу) - непосильная ноша, имхо.
Есть ли какие обходные пути, или, например, пиратские версии.
Ясен хуй, на стим/прочее не выложишь с взломанной версии, но в любом случае, есть ли какие обходные пути.

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

Ответы544014544016545561

790 6 янв 2019, 14:31 790 544014

>>544013
upd://
где-то читал, что тут платишь и всё, ты вроде как разработчику ничего не должен, и если смотреть в перспективе - с отчислений разработчику отдашь намного больше, чем эти 6к.

Меня интересует безпроблемный перенос со взломанной версии на купленную

791 6 янв 2019, 14:43 791 544016

>>544013
Пили на юнити

792 7 янв 2019, 10:17 792 544137

>>499282

Тоже запарился, но у меня не с анимации, а движение на 360. Есть два объекта - снаряд и препятствие. При расчете столкновения по х, у снаряда его маска вообще игнорируется, хоть так >>499296 хоть точно по спрайту, а происходит столкновение центра снаряда с границей препятствия. Хотя все настройки у обоих объектов одинаковые.

Ответы544144

793 7 янв 2019, 10:20 793 544139

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

794 7 янв 2019, 11:32 794 544144

>>544137
Из такого описания не понять, в чём твоя проблема.

Код в студию.

Может ты вместо place_meeting instance_position используешь.
Или prec false поставил.
Или у тебя снаряд прыжками двигается по 20 пикселей за кадр.

Ответы544325

795 8 янв 2019, 03:48 795 544325

>>544144

>place_meeting

Спасибо за подсказку, маска заработала. Я использовал collision_point ставя prec=true, почему-то в этом случае он все равно считает маску центральной точкой.

Пока это увидел, перебрал имитации маски через collision_circle и collision_rectangle. Решил, что в этом случае столкновения вообще лишние, сделаю снаряду превентивный круиз-контроль.

796 8 янв 2019, 10:04 796 544346

Как определить направление до объекта или от точки до точки в градусах?

Ответы544348544356

797 8 янв 2019, 10:36 797 544348

>>544346
Mathf.Atan2(p2.y-p1.y, p2.x-p1.x)*180 / Mathf.PI;

Ответы544351

798 8 янв 2019, 11:41 798 544351

>>544348
Пасиб. Бля, восьмой класс(

799 8 янв 2019, 12:23 799 544356

>>544346
point_direction(x1,y1,x2,y2) возвращает направление в градусах. 0 справа, против часовой стрелки.

800 13 янв 2019, 16:00 800 545561

>>544013
Работаю на первой же скаченной с рутрекера версии, проблем вообще никаких. ГМ 2, да, если что. Не знаю, как вы находите проблемы с этой прогой.

52 Кб, 900x900
801 19 янв 2019, 03:40 801 547330

Поясните по дельта-тайм.
Хули оно такое неточное?
Даже у васянов с ютуба при расчетах всегда неточные числа получаются, а они на это реагируют мол: "Да неточно и хуй с ним чо)) результат на пару десятых отличается каждый раз, да и пох)))) лойс подписка))"

При длинных расчетах вообще же вся физика по пизде идет.
Должен же быть какой-то метод чтобы игра не была фиксированная на 60фпс и при этом выполняла точные расчеты вплоть до пикселя.

Ответы547333

802 19 янв 2019, 04:17 802 547333

>>547330
> Хули оно такое неточное?
точное, никогда таких проблем не было

Ответы547335

803 19 янв 2019, 04:36 803 547335

>>547333
Ну вот, держи, первое же видео с гугла.
https://www.youtube.com/watch?v=NVfrAPos88k
8:35 неточный расчет и реакция на это васяна.

Ответы547338

804 19 янв 2019, 04:56 804 547338

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

Если нужны равные промежутки, то велкам в юнити, там есть FixedUpdate

Ответы547339

805 19 янв 2019, 05:07 805 547339

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

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

Ответы547341

806 19 янв 2019, 05:09 806 547341

>>547339
Дак оно и будет случаться из-за перепадов фреймрейта.

Ответы547343

807 19 янв 2019, 05:22 807 547343

>>547341
И в чем смысл тогда этого дельта-тайма, если из-за перепадов фпс и неточности расчета у тебя, к примеру, персонаж начинает прыгать на пару пикселей ниже положенного, в то время как у тебя код написан чтобы персонаж прыгал вверх исключительно на N игровых блоков, да аж с точностью до пикселя.

Ответы547344

808 19 янв 2019, 05:36 808 547344

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

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

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

809 21 янв 2019, 23:13 809 548025

Вот пишу я шейдер.
Спрайт - вертикальная линия.

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

varying vec2 v_vTexcoord;
varying vec4 v_vColour;

uniform float PixelW;

vec2 Coord = v_vTexcoord;

void main()
{
vec2 Coord = v_vTexcoord + PixelW20.0vec2(v_vTexcoord.y, 0.0);

gl_FragColor = v_vColour * texture2D( gm_BaseTexture, Coord);
}

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

Чому? Разве v_vTexcoord.y не должно варьироваться от 0.0 до 1.0 ?

Ответы548032

810 21 янв 2019, 23:26 810 548032

>>548025
Ну как всегда, сам спросил, сам ответил.
v_vTexcoord.y - видимо изменяется от 0 до 1 не при прохождению по спрайту. а при прохождении по той texture_page на которой нарисован спрайт.

Тогда я беру uvs координаты низа спрайта, верха спрайта и передаю их в шейдер.
var tex = sprite_get_uvs(sprite_index,image_index);
zero_level = tex[3];

Сдвигаю х координату так:
vec2 Coord = v_vTexcoord + PixelWFrevec2((Zero_Level-v_vTexcoord.y)/(Zero_Level-One_Level) , 0.0);

То, что нужно. Бля, пол дня голову ломал, пока буквами не написал.

811 25 янв 2019, 00:56 811 549124

>>542509
Правда? Если да то благодарствую)
Планирую выпустить где-то в начале весны, если все сложится.

812 25 янв 2019, 00:57 812 549126

>>542830
Где то сам. Какие то функции по описанию/справочникам изучаю. Если совсем не могу додуматься то гайды ищу схожие по теме.

7 Кб, 458x153
813 26 янв 2019, 09:20 813 549483

Этот код определяет ближайшего противника и заставляет объект идти к нему. Как заставить этот объект определять не один тип противника, а несколько?
Например есть объект o_enemy1 и o_enemy2, но объект будет двигаться к тому, который ближе.

Ответы549493

814 26 янв 2019, 10:25 814 549493

>>549483
Назначь своим o_enemy_number родителя o_enemy и определяй расстояние до него.

Ответы549494

815 26 янв 2019, 10:27 815 549494

>>549493
Вот тут и начинаются проблемы. У всех этих объектов уже есть родительский объект.

Ответы549496

816 26 янв 2019, 10:30 816 549496

>>549494
Вставь между ними ещё один родительский объект.
Функция будет находить объекты ниже по иерархии данные ей.

Например у меня есть родитель obj_living у него child obj_enemy у него child obj_rat

Могу обращаться ко всем живым, обращаясь к obj_living или ко всем врагам obj_enemy

Ответы549497

817 26 янв 2019, 10:38 817 549497

>>549496
Работает, спасибо.

818 26 янв 2019, 20:29 818 549739

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

Ответы549742

819 26 янв 2019, 20:54 819 549742

>>549739
Ты ещё и коллизии с объектами используешь. Никто тебе не виноват что ты кривой.

820 28 янв 2019, 17:02 820 550818

Запускаю игру в обычном режиме появляются просадки в фпс на 1-2 секунды во время игры. Когда запускаю в дебаг моде их нету. Такое возможно? и почему так можешь происходить? на сцене кроме персонажа ничего нету.

Ответы550834

821 28 янв 2019, 17:43 821 550834

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

Ответы550839

822 28 янв 2019, 17:53 822 550839

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

14 Кб, 778x272
823 3 фев 2019, 13:34 823 552975

в чем тут проблема?
var lerp_amt = (time - keu_previous/number_of_key_times)* number_of_key_times;
/////////////////
color_mix= [lerp (color[key_previous,0],color[key_next,0],lerp_amt),
lerp (color[key_previous,1],color[key_next,1],lerp_amt),
lerp (color[key_previous,2],color[key_next,2],lerp_amt)];

824 10 фев 2019, 11:18 824 555549

Что быстрее, distance_to_object or distance_to_point? Или point_distance?

Ответы555550579052

825 10 фев 2019, 11:24 825 555550

>>555549
Сделай цикл миллион раз посчитай и узнаешь.

Ответы555551

826 10 фев 2019, 11:26 826 555551

>>555550
Вдруг до меня кто-то так делал

Ответы555554

827 10 фев 2019, 12:22 827 555554

>>555551
Конечно, делали, ну ищи.

828 22 фев 2019, 17:45 828 559817

Бамп вопросом. Как сделать так, чтобы фулскрин шейдер не задевал интерфейс?

Ответы559919

829 22 фев 2019, 20:27 829 559919

>>559817
Отключай шейдер до того, как начинаешь рисовать интерфейс.

830 3 апр 2019, 23:03 830 571219

Блядь, в наше время еще делают нормальные, НЕВИДЕО-туториалы по сабжу? Я ебал в рот, всюду один ютуб, я так воспринимать инфу не умею.

831 4 апр 2019, 00:18 831 571230

Похуй, буду читать документацию

15 Кб, 617x482
832 4 апр 2019, 09:54 832 571255

Начал пилить игруху на аднроид, запилил пару комнат, в гамаке и в ЕХЕшнике всё работает как по маслу. Скомпилировал апк потестить на мобиле, запустил, а там всё распидорасило, какие-то кракозябры, все спрайты повылезали которые вообще не должны быть видны в начале игры, вью отображаются половинчатыми, полный пиздец. В чём может быть проблема? Гамак 1.4.1567, с бухты качал.

Ответы571256

833 4 апр 2019, 09:55 833 571256

>>571255
Надо было юньку брать, долбоеб. Страдай, хуль.

Ответы571260

834 4 апр 2019, 10:52 834 571260

>>571256
Может ты и прав, глянул щас, там нужно YоYо 400 долларов отдать, чтобы получить право размещать своё поделие в апсторе.

Ответы571263571267

835 4 апр 2019, 10:57 835 571263

>>571260
Уж сколько раз твердили миру - берите юньку, дауны;
но только все не впрок,
И снова ныть в гд приходит гамакодолбоеб.

Ответы572537

836 4 апр 2019, 11:20 836 571267

>>571260
Бери годот. Размещение в апсторе бесплатно.

Ответы571269571270

837 4 апр 2019, 11:22 837 571269

>>571267
Попробую. Сильно отличается процесс верстания?

Ответы571271

838 4 апр 2019, 11:22 838 571270

>>571267
>Размещение в апсторе $99 долларами за iOS Developer Program
Бвстрофикс. Но это от Хуана уже не зависит.

839 4 апр 2019, 11:24 839 571271

>>571269
Все гайды и туториалы есть. Нет смысла пересказывать их ИТТ. Если английского не знаешь, то у пети сканера на ютубе есть подробный туториал по сборке приложения под андроид, с иосом примерно так же, не ебу. Не фанат эппла.

Ответы571272

840 4 апр 2019, 11:26 840 571272

>>571271
Ну ок, спс. Инглиш знаю.

Ответы571274

841 4 апр 2019, 11:30 841 571274

>>571272
Не за что. Убедительная просьба к тебе. Если что-то получится, и даже если что-то не получится - отпишись о результатах в годотред.

842 10 апр 2019, 07:01 842 572537

>>571263
Юнька для 2Д избыточна. А в гамаке еще и охуенная заточенность под работу с тайлами.

843 13 апр 2019, 18:01 843 573355

У меня тут НЕСЧАСТЬЕ приключилось.
Делал себе игру, но буквально на неделю где-то пришлось сделать перерыв. Все работало нормально.

А сейчас открыл Гейм Мейкер, он обновился, я запустил Run и происходит какой-то пиздец: половина слоев не рендерится, половина мелькает и моргает, и полная жопа. Я ничего не изменял в коде. Почему такое могло произойти?

Ответы573356573357573360

69 Кб, 224x225
844 13 апр 2019, 18:03 844 573356

>>573355
Потому что не взял юнити, а ведь тебя предупреждали

845 13 апр 2019, 18:04 845 573357

>>573355
Ради эксперимента тупо сделал пустую комнату и пихнул туда какой-то ничего не делающий, но видимый объект: он вообще не рендерится.

846 13 апр 2019, 18:31 846 573360

>>573355
Ложная тревога: дело оказалось в том, что я нечаянно забил жесткий диск до отказа за эту неделю, что и привело к таким результатам. Освободил место и все стало нормально.
Следите за своим жестким диском друзья, а юнитипидорам перо под ребро и хуй в сраку

847 1 мая 2019, 16:18 847 577712

Ебать у вас тред мертвый.

Ответы577728577749

848 1 мая 2019, 17:02 848 577728

>>577712
Так потому что гамак говно
уже2годанаэтомдерьме

Ответы577853

849 1 мая 2019, 18:14 849 577749

>>577712
я на юнити съебнул и перестал читать этот тред
оп

850 2 мая 2019, 06:47 850 577853

>>577728
Да с хуев? На чем еще пилить 2д сайд-скроллеры?

Ответы577968

851 2 мая 2019, 10:32 851 577881

Анон, помоги с вопросом
Поясню за суть.
Моим дипломным проектом является игра. пишу аркадку на с++ в UE4, и до меня доебался куратор по димпломке с вопросом, А зачем А нахуя твоя игра и дипломка?
Лично я делаю для опыта и интереса, она хочет чтобы я раскрыл сокральный смысл моей работы, чтобы она спасла детей в африке, но я не ебу как это описать для чего работа

Ответы577889577915577961577967

852 2 мая 2019, 10:53 852 577889

>>577881
Тредом промахнулся?
Именно сакральный смысл его интересует, практический не устроит?

853 2 мая 2019, 11:59 853 577915

>>577881
Глянь что пишут других дипломах на похожую тему, в чем проблема вообще?

12 Кб, 259x250
854 2 мая 2019, 12:56 854 577961

>>577881
Был научным руководителем у выпускника, мы с ним на юнити сделали игру ака вотч догс 2д про мамкиного хакера, взламывающего здание.
Приплели как анализ инф. безопасности систем. Когда игрока ловили охранники итд итп показывалась статья с описанием. По мере прохождения ГГ говорил о том, почему текущая организация плохо защищена.
Студент учился по этой специальности, сдал на 4(хотя мог изи на 5 сдать,он сам начал запинаться во время выступления).

Как вариант советую тебе взять какой-то процесс из жизни по твоей специальности и воспроизвести его с использованием твоего же УЕ4. А аркада абсолютно не связанная с твоей специальностью да, нахуй не вперлась никому. Пожумай сам своей головой,в комиссии будут сидеть 40+ дяди и тети, которым твои игрушки не интересны, им интересно, чтобы ты с умными щами заливал про важность предварительного анализа и моделирования hueta.Name , и именно твоя убогая программа позволяет это сделать.

Если будут еще вопросы, пиши.

Ответы577966577973

855 2 мая 2019, 13:04 855 577966

>>577961
Читаю это все и понимаю, какая же рашкинское образование галимая фикция и натужная попытка создавать видимость работы. Неудивительно, что все в стране по такому же подобию функционирует (если вообще функционирует).

Ответы577971

856 2 мая 2019, 13:04 856 577967

>>577881
>А зачем А нахуя твоя игра и дипломка?
Чтобы выпуститься наконец-то из вашего говновузика, Будто бы, блядь, дипломные работы вообще должны что-то решать, а не быть просто бумажкой для подтирания.
Я бы ответил как-то так.

857 2 мая 2019, 13:06 857 577968

>>577853
Забей, они сами не знают чего хотят, поэтому им лучше более универсальный двиг. А если знаешь, что двадэ, то гамак наиболее удобный в плане отсутствия всяких "прелюдий" для начала работы. Берешь и рисуешь/кодишь. Изи.

Ответы578003

328 Кб, 902x977
858 2 мая 2019, 13:15 858 577971

>>577966
Да не переживай, это не только в рашке.
Во всяких стэнфордах и берклях та же самая хуета с ещё большим попилом грантов.
https://www.youtube.com/watch?v=LVsqIjAeeXw

Ответы577980

859 2 мая 2019, 13:16 859 577973

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

Ответы578019

860 2 мая 2019, 13:27 860 577980

>>577971
По крайней мере если ты хочешь делать игры - там ты идешь тупо в институт, который, блять, охуеть!, учит делать игры, а не дрочишь 4-5 лет бесполезную хуету, чтобы иметь возможность как-то уцепиться по одной из профильных тематик и сделать игру как диплом, и то не факт что проканает, а без диплома тебя развернут.

Ответы577982578032

861 2 мая 2019, 13:37 861 577982

>>577980
Зато нет факультетов журналистики и полно факультетов богословия.

862 2 мая 2019, 14:01 862 578003

>>577968
>А если знаешь, что двадэ, то гамак наиболее удобный
>гамак
У тебя пять ошибок в слове "годот".

863 2 мая 2019, 14:31 863 578019

>>577973
Я второкурсникам когда преподавал структуры данных, сказал им самим выбирать тему курсовой, подготовил около 10 тем по играм от крестиков ноликов до тетрисов(они на тот момент по программе только консольные писали).
Почти все принесли игры и им понравилось, месяца полтора я их консультировал, каждому помог составить план разработки. Ну, как план, помог каждому разбить на этапы и каждую неделю приносить и показывать результат.
Они были очень благодарны, хэх.
А потом я дропнул преподавание, когда меня хотели заставить снова читать хуйню по информационной безопасности, в которой я не работаю. Ибо нахуй плодить необразованность.

Ответы578024

864 2 мая 2019, 14:52 864 578024

>>578019
Ты - хороший человек, добра тебе.

865 2 мая 2019, 15:29 865 578032

>>577980
Опять прилетаешь РАШКУ? В Казани например на базе КФУ (в одном из его зданий) есть факультет, в котором учат твоему любимому гейдеву, на вторых курсах или позже начинается целенаправленное изучение сисярпа с Юнити. В Штатах тоже не на каждом углу учат игры делать, но да, факультетов там немного больше.
Понапаступают в сельские шараги, а потом удивляются.
Да и например PyGame в школах с 11 класса по профильной программе изучают, в Яндекс Лицеях с 8-9 классах могут.

Ответы578157

sage 866 3 мая 2019, 12:39 866 578157

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

95 Кб, 264x191
867 6 мая 2019, 20:34 867 578983

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

Ответы578984

868 6 мая 2019, 20:35 868 578984

>>578983
>Два раза пытался в юнити, не осилил. Решил попробовать в гамак.
Тебе все равно придется его осилить, лучше не трать время зря.

43 Кб, 498x500
869 7 мая 2019, 07:57 869 579045

GM2 или GODOT?
Вот реально хотел бы выслушать плюсы и минусы, что выбрать вкатывающемуся в 2д-игростроение.

Ответы579058

870 7 мая 2019, 09:36 870 579052

>>555549
Давай порассуждаем.
distance_to_object будет искать ближайшее расстояние от объекта до объекта
distance_to_point будет искать ближайшее расстояние от объекта до точки
point_distance ищет показывает между двумя точками и ничего не ищет
Значит, оно быстрее всего

871 7 мая 2019, 09:52 871 579054

>>542386
Даю добрый совет - если много текста, используй бесплатное дополнение, которое есть на маркете. Работает с текстом просто на ура, используя кучу сложных скриптов. HappyTearParacoopa

872 7 мая 2019, 10:52 872 579058

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

Из годота может что-то хорошее и выйдет. А может и нет.

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

Ответы579610

873 9 мая 2019, 20:20 873 579610

>>579058
Пошел нахуй. Гамак УДОБНЫЙ, в отличие от юнити, и использовать проще

Ответы579625

874 9 мая 2019, 22:05 874 579625

>>579610
А что там собственно проще? Юнити не сложнее гамака.

Ответы579761579762

875 10 мая 2019, 15:37 875 579728

>>579640
Аниме хорошее, а ты хуйню написал, инфу брал с треда про юнити?

мимо

876 10 мая 2019, 18:13 876 579761

>>579625
не знаю, я просто так написал, я юнити не пользовался

877 10 мая 2019, 18:15 877 579762

>>579625
ну там же наверняка нет окошечек, где прописан код отдельно на create, отдельно на step, отдельно на collision и т.д.

наверняка на юнити нет комнаты, куда можно мышкой перетаскивать объекты

наверняка на юнити нельзя делать анимированные спрайты прямо во вкладке sprites

Ответы579821

878 11 мая 2019, 00:22 878 579821

>>579762
ты толстишь что-ли?

create -> Start
step -> Update
collision -> OnCollisionEnter
комнта -> сцена

редактора спрайтов в юнити нет, но есть вкладка редактора анимаций

Ответы580019

879 11 мая 2019, 18:30 879 580019

>>579821
возможно,я перейду на юнити в будущем, но это не точно

Ответы580020

880 11 мая 2019, 18:31 880 580020

>>580019
тем более гейммейкер не на языке С, который похож на джаву, которая мне не нравится

Ответы580492580516

881 13 мая 2019, 02:51 881 580492

>>580020
У тебя с головушкой все впорядке?

Ответы580516581135

882 13 мая 2019, 08:51 882 580516

>>580492
Двачую.
>>580020
Вообще-то шарп похож на кресты, и джава похожа на кресты. А знаешь почему? Потому что они оба из семейства си-подобных языков!!

Ответы581135

883 14 мая 2019, 20:56 883 581135

>>580492
>>580516
меня бесит слово override, которое там есть. Что оно значит, я не знаю, но мне страшно и поэтому нахуй язык c++

Ответы581595

884 16 мая 2019, 06:46 884 581404

Сызнова решил вкатиться в (вечную) разработку рогаликов и иже с ними, есть GMS 1.4 Professional лицуха, но хочется ВОРКСПЕЙСА и свистелок с перделками. За полторы тыщи брать новый гамак не хотел, но сейчас на хамблобандле за 500 отдают. Купить или ну его нахуй?

Ответы581411581418

885 16 мая 2019, 10:08 885 581411

>>581404
В новом гамаке только косметические изменения. Лучше сразу на другой движок переходи.

Ответы581638

92 Кб, 394x312
886 16 мая 2019, 11:02 886 581418

>>581404
1500 стоит возможность экспорта на мак линух и шинду. Там за 500р продается только экспорт на шиндовс.
скидка 20% оч много конечно.

Ответы581987

887 16 мая 2019, 21:51 887 581595

>>581135
>меня бесит слово override, которое там есть. Что оно значит, я не знаю
Ты странный. Оно позволяет перезаписывать одну и ту же функцию, как угодно, в рамках наследуемого класса.

Ответы581613

888 16 мая 2019, 23:30 888 581613

>>581595
Спасибо, понял

889 17 мая 2019, 08:24 889 581638

>>581411
>Лучше сразу на другой движок переходи.
Здравствуйте! Я бы хотел предложить вам молодой, развивающийся движок ПЩВЩЕ. Опенсорсный!

890 19 мая 2019, 04:58 890 581987

>>581418
>только экспорт на шиндовс
Как что-то плохое. Аудитория на маках и линухах стремится к нулю, а те кому очень нужно могут под вайном запустить.

801 Кб, 794x798
891 21 мая 2019, 20:05 891 582579

>>579640
>не иметь 64битную винду
>не пиратить

892 23 мая 2019, 16:38 892 582942

Антоши, давно ничё не писал на гамаке, в последний раз пользовался версией 8.1, а гмс1.2 на то время не понравился т.к. интерфейс стал выглядеть уёбищно и игры компилились долговато.

Так вот, как со всем этим сейчас дела обстоят? Правильно понимаю что уже имеются компиляторы под пс4,хуящ,свитч? Как с пиратством?

В принципе восьмёрка еще пашет, но, бля, это всё же говно мамонта и пора обновиться.

Ответы583018

893 24 мая 2019, 01:41 893 583018

>>582942
не знаю, есть пиратская версия для компиляции под десктоп. Но если найдешь под андроид или html пиратку, буду благодарен и скину денежку

Ответы583024

894 24 мая 2019, 06:57 894 583024

>>583018
Нашёл только такую, не ебу какие компиляторы работают.
https://thepiratebay.org/torrent/23041242/Game_Maker_Studio_2.1.4.285

Ответы583144

895 24 мая 2019, 21:31 895 583144

>>583024
актуальный кряк практически всегда можно найти тут в обсуждении(на нынешнюю кста там тоже есть),сам пользовался пока не купил (ведройд аштимель и шиндовс робочие проверял сам)
https://gmsc-97507.firebaseapp.com/

Ответы583793

896 28 мая 2019, 03:06 896 583793

>>583144
спасибо, анон. Под андроид же потом нужно будет всякие sdk устанавливать, лааадно

Ответы583899

897 28 мая 2019, 17:06 897 583899

>>583793
ну разок поеаться с сдк придется ,но достаточно прочитать оф гайд на сайте йойо ,там все написано, только на пендоском , но даж по картинкам удет понятно

898 29 мая 2019, 11:39 898 583999

Какая же блять убогая система слоев в гмс2...

Ответы584017584130

899 29 мая 2019, 13:04 899 584017

>>583999
какая есть, но и без слоев можно обойтись, глубина все так же работает ,как раньше

900 29 мая 2019, 22:30 900 584130

>>583999
Зато таймер одной строчкой, лол.

901 22 июня 2019, 10:18 901 588086

Тред умер?

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

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

Как и где их лучше хранить? Я предполагаю пока, что для этого хорошо подойдет json. Если через json делать, то для этого нужно использовать ds_map()? Как быстро гамак работает с ним вообще? Есть ли способы быстрее/оптимальнее?

Ответы588108588334

902 22 июня 2019, 14:57 902 588108

>>588086
Да, все стрктуры данных в гамаке делаются через ds_list, ds_map, что пиздец как неудобно.

Ответы588128

903 22 июня 2019, 17:46 903 588128

>>588108
Ну, выбора особо и нет, а изобретать велосипед вряд ли выйдет производительно. Буду работать с тем, что дают.

904 23 июня 2019, 20:48 904 588334

>>588086
да хоть в ини файле можешь хранить все это ,как тебе удобнее

Ответы588357

905 23 июня 2019, 22:25 905 588357

>>588334
мимо анон, храню в ини файле все что есть, тому что проще. А массивы нахуй нахуй

906 24 июня 2019, 22:05 906 588567

ГМ лучше Годота?

Ответы588568588584589752

907 24 июня 2019, 22:06 907 588568

>>588567
Две хуйни

Ответы588570

908 24 июня 2019, 22:07 908 588570

>>588568
А на чем делать 2д сайдскроллер типа Лизы?

Ответы588572588584588625

909 24 июня 2019, 22:10 909 588572

>>588570
Юнити, если новичок констракт. Ну можно и на гамаке, но он говно бесперспективное.

Ответы588584588604

910 24 июня 2019, 22:40 910 588584

>>588567
Лучше.

Отлично задокументирован, куча отличных туториалов.

>>588570
Для 2д бери гамак. Годотошизика >>588572 шли на хуй.

Ответы588604

83 Кб, 1246x895
911 24 июня 2019, 23:58 911 588604

>>588584
>Годотошизика >>588572 шли на хуй.
Там юнитишизик ващет.
А этот ваш гамак может похвастаться опенсорсностью?
мимо-гододик-шизик-годаун

Ответы588623588657

sage 912 25 июня 2019, 07:17 912 588623

>>588604
>похвастаться опенсорсностью?
>похвастаться
Это всё равно, что хвастаться инвалидностью.

Ответы588635

913 25 июня 2019, 07:43 913 588625

>>588570
На том же, на чем делалась Лиза — RPG Maker.

914 25 июня 2019, 08:38 914 588635

>>588623
Хммм, ну вот смотри, меня интересуют платформы: десктоп, мобилы, хтмл5 - на годоте я смогу создавать свои поделия бесплатно. Чтобы аналогичное сделать на гамаке, мне потребуется 99+149+199 = 400 баксов.
Итак, что такого крутого мне сможет предложить гамак, чего у меня нет в годоте?

Ответы588646588652

915 25 июня 2019, 10:03 915 588646

>>588635
А где игры-то на годоте? Почему их не видно?

Ответы588651

916 25 июня 2019, 10:27 916 588651

>>588646
Сходи в годотред, там тебя покормят ссылками на игры прямо из шапки и ты сможешь в 100500й раз сказать что "игры по ссылкам не игры, дайте игры на эртэ".

Ответы588653588685

917 25 июня 2019, 10:38 917 588652

>>588635
Бля, ну вот серьёзно. Ну хватит уже эти движкосрачи. Лучший движок тот, который лично ты лучше знаешь.
Если анон не знает ни одного - для него лучше будет тот, что проще изучить.
А с учётом того, что ему нужно 2D - стрелка указывает на два варианта: Construct2 или GameMaker.
>я смогу создавать свои поделия бесплатно
Не бесплатно. Ты не учитываешь своё время. Если ты вложил полгода (1000 часов примерно), то ты потратил минимум 1000*10=10000 долларов. 400 долларов - это 0,4 от всей суммы затрат. Или 40 часов.
Насколько дольше ты будешь разбираться в годоте/юнити/дельфи/уече и насколько быстрее(медленнее) ты тоже самое сделаешь в гамаке? Ответь на эти вопросы и ты поймёшь, что дешевле - годот или гамак.
Но это, опять же, будут твоя личная стоимость.

Ответы588654

918 25 июня 2019, 10:39 918 588653

>>588651
>игры по ссылкам не игры
Тетрис и марио можно и без движков запилить и бегать верещать - ВОТ ИГРЫ ВООООТ, ДВИЖКИ НЕ НУЖНЫЫЫ!
Нужно уже отдельный термин вводить "годотовская игра" как символ кала, высранного школьником на какай-нибудь конкурс школьников - высри хуйню за 48 часов!

Ответы588654

919 25 июня 2019, 10:43 919 588654

>>588652
>Бля, ну вот серьёзно. Ну хватит уже эти движкосрачи.
Щас пну в последний раз залётного додика и всё.
>>588653
Говноигры не продаются в стиме, сразу тонут на дне рейтингов. А игры на годоте успешно продаются в стиме. Обтекай.

Ответы588655

920 25 июня 2019, 10:44 920 588655

>>588654
Спасибо.

746 Кб, 1096x664
921 25 июня 2019, 10:54 921 588657

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

Ответы588659588661

922 25 июня 2019, 11:04 922 588659

>>588657
>Донатят им 10500 долларов в месяц на двоих.
А тебе - нет. И ты знаешь почему.

Ответы588660

46 Кб, 247x250
923 25 июня 2019, 11:07 923 588660

>>588659
>годот полное говно, вот четкие неопровержимые аргументы...
>а вот ты, а ты сам!...

Ответы588661

924 25 июня 2019, 11:12 924 588661

>>588660
>годот полное говно, вот четкие неопровержимые аргументы
>>588657
>Донатят им 10500 долларов в месяц на двоих.
Вот бы и мне так же впаривать говно лохам. Но не выйдет. И я знаю почему. И у тебя не выйдет. И ты знаешь, почему.
Себе-то не ври. А двач простит.

925 25 июня 2019, 13:09 925 588685

>>588651
Нахуй мне куда-то идти? Ты не можешь сам расписать?

Ответы588700

926 25 июня 2019, 14:03 926 588700

>>588685
Он правильно сказал, не надо портить ламповейший тред вашими срачами. Пожалуйста, проследуйте оба в годо-тред.

Ответы588701

927 25 июня 2019, 14:19 927 588701

>>588700
Ты мне еще расскажи что мне делать.

928 27 июня 2019, 10:21 928 589118

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

Ответы589238

929 27 июня 2019, 18:14 929 589238

>>589118
это пока ты не решишь прикрутить к игре что-нибудь сложнее стреляющего бегающего спрайта

Ответы589245

930 27 июня 2019, 18:35 930 589245

>>589238
прикрутил ,не ощутил

Ответы589246

931 27 июня 2019, 18:37 931 589246

>>589245
вон у мнфля спроси как тама с торидэ обстоят дела

Ответы589301589325

932 27 июня 2019, 23:48 932 589301

>>589246
А зачем мне 3д? Мне и в юнити кривого 2д хватило, ну нахуй

Ответы589328589345

933 28 июня 2019, 07:00 933 589325

>>589246
нет спасибо я не голодный

934 28 июня 2019, 07:15 934 589328

>>589301
>А зачем мне 3д?
За тем, что все долбоебы думают - 3д сложна, сделаю 2д говно на мобилки! - И теперь на мобилках такой поток хуйни, что никак не пробиться. Следующий этап осознания - на мобилках ловить нечего, сделаю 2д хуйню для стимы... Но там тоже самое...
В итоге придешь к тому, что 3д делать сложно, но конкуренция меньше и деваться некуда.

935 28 июня 2019, 09:07 935 589345

>>589301
>Мне и в юнити кривого 2д хватило
Узнаю гэдэ. Заебавшись с двадэ в тридэдвижке, гдачер идёт в двадэдвижок и ебётся там уже с тридэ.

Ответы589349589404

51 Кб, 800x480
936 28 июня 2019, 09:18 936 589349

>>589345

Ответы589442

937 28 июня 2019, 12:49 937 589404

>>589345
Так и живу, на гамаке 3д, а если полезу в юнити/анрил, буду в 2д. Иначе не интересно.

Ответы589442

938 28 июня 2019, 16:47 938 589442

>>589349
>>589404
А мог бы делать игры, как наш Учитель >>589428

939 28 июня 2019, 19:41 939 589507

Сап двощ. Пытаюсь в sprite stacking. Как можно реализовать поворот всех объектов в комнате? Хочу добиться эффекта как в dont starwe.
Пробовал через lenghtdir_x/y но безуспешно

Ответы589551

940 28 июня 2019, 21:44 940 589551

>>589507
Как насчёт гугления?

https://medium.com/@avsnoopy/beginners-guide-to-sprite-stacking-in-gamemaker-studio-2-and-magica-voxel-part-1-f7a1394569c0

Ответы589559

32 Кб, 494x323
941 28 июня 2019, 21:59 941 589559

>>589551
Не завезли еще.

Ответы589562589583

942 28 июня 2019, 22:00 942 589562

>>589559
Немножко подождать еще!

Ответы589584

943 28 июня 2019, 23:28 943 589583

>>589559
Что не завезли? Вращай камеру при помощи view matrix.

Ответы589584

944 28 июня 2019, 23:33 944 589584

>>589583
>>589562
https://www.youtube.com/watch?v=NDH_UoQBToI#t=5m
нужно вот такое вращение

Ответы589650

15 Кб, 629x640
945 29 июня 2019, 11:23 945 589649

В гамаке как то можно сделать так, чтобы спрайт который крутиться с помощью image_angle был как второй квадрат? мб шейдер какой или можно прям в игре рендерить это? А то если его просто крутить, то будет как третий квадрат, который совсем не пиксель перфект

Ответы589721

946 29 июня 2019, 11:24 946 589650

>>589584
тут какое-то хитрое 3д, сел-шейдинг или вроде того. Хотя можно навелосипедить, что уж.

Ответы589651

947 29 июня 2019, 11:25 947 589651

>>589650
Вот мне бы хоть узнать как это называется. А там и нагуглить можно

Ответы589653

948 29 июня 2019, 11:28 948 589653

>>589651
Cell-shading гугли.

Ответы589661

209 Кб, 334x305
949 29 июня 2019, 12:16 949 589661

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

Ответы589731

950 29 июня 2019, 16:59 950 589721

>>589649
попробуй выключить интерполяцию

951 29 июня 2019, 17:26 951 589731

>>589661
Красота. Это несколько спрайтов, которые врашаются и смещены по вертикали друг относительно друга?

Ответы589734

1,5 Мб, 1244x951
952 29 июня 2019, 17:35 952 589734

>>589731
угу. И делается всего одной строчкой.
Вот тут еще пиксель перфект замутил

Ответы589737

953 29 июня 2019, 18:00 953 589737

>>589734
Хорош. Красава.
Я так во флеше изгалялся в своё время.

954 29 июня 2019, 19:25 954 589752

>>588567
ГМ со второй версии в говно скатился. Бери либо Юнити, либо Годот, либо ещё что.

Ответы589774589962

7,5 Мб, 700x394
955 29 июня 2019, 21:12 955 589774

>>589752

Ответы589780589781

62 Кб, 777x583
956 29 июня 2019, 21:22 956 589780

>>589774

957 29 июня 2019, 21:24 957 589781

>>589774
Сплайнодрочер детектид.

Ответы589865

958 30 июня 2019, 01:27 958 589864

В каких случаях нужно начинать использовать шейдеры?

Ответы589866589882

959 30 июня 2019, 01:28 959 589865

>>589781
что такое сплайн?

960 30 июня 2019, 01:29 960 589866

>>589864
Когда хочешь сделать визуальный эффект, который не получается без них.

961 30 июня 2019, 02:58 961 589882

>>589864
Когда тебе нужно искажать весь экран, либо делать что-то со всей картинкой в каждом кадре на уровне пикселей.
я-с-дивана-не-пинайте

962 30 июня 2019, 14:38 962 589962

>>589752
>ГМ со второй версии в говно скатился
Почему? Я запускал ГМ2 и у меня вообще вопросов не возникло. Все удобно и понятно (с помощью ютуба). Черт, там даже встроенные туториалы есть.

Ответы589966590040590056

963 30 июня 2019, 15:02 963 589966

>>589962
Потому что годотошкольник срёт в треде. ГМ - отличный движок.

964 30 июня 2019, 19:41 964 590040

>>589962
потому что гм для людей сделан ,чтоб все понятно было

965 30 июня 2019, 20:58 965 590056

>>589962
Интерфейс слили в абсолютное говнище. Вместо нормальных вкладок или окошек, как в прошлой версии, какие-то обоссаные сплайны с воркспейсами. Сами элементы интерфейса увеличились раза в полтора, так что реального полезного пространства стало гораздо меньше чем было.
Сам же гмл порос каким-то говном -- добавили слои, которые на самом деле обёртка глубины (которую убрали, удачи теперь с depth = -y), с конвертацией строк намутили какой-то ёбаный пиздец с тысячей различных поведений вместо простого автокаста числа в строку.

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

И буквально только сейчас, после трёх лет с релиза ГМС2, ЁЁ таки подняли с жопы и впиливают структы в гмл - то, что у них просили ещё со времён ГМ8. Хотя ещё надо посмотреть, как они их впилят - не мал шанс, что просрут так же, как просрали каст чисел в строки.

Я писал игорьки на гм порядка шести лет, но после такой хуйни свалил от него подальше - и ни капельки не жалею.

Ответы590084590109

966 1 июля 2019, 00:31 966 590084

>>590056
>Интерфейс слили в абсолютное говнище.
Вкусовщина. Я после интерфейса гмс2 не могу воспринимать интерфейс гмс1 вообще.

>(которую убрали, удачи теперь с depth = -y)
Так и делаю, всё абсолютно нормально. Совмещаю слои и depth. Слои удобны в room editor. Слой это просто ссылка на глубину.

>автокаста числа в строку
О чём ты, я не понимаю?

А вот дебагер в гмс2 сделали просто роскошным. Ещё бы дали возможность зумировать текстуры в предпросмотре и дебагать шейдеры.

Ответы590089

967 1 июля 2019, 00:39 967 590089

>>590084
>Так и делаю, всё абсолютно нормально. Совмещаю слои и depth. Слои удобны в room editor. Слой это просто ссылка на глубину.
Там для этого новый слой создаётся на каждое новое значение depth. Ты себе так игру повалишь к чертям.

>О чём ты, я не понимаю?
В ГМЛ чтобы в строку пихнуть число, надо делать вот так:
"value: " + string(someValue) + "."
Во всех нормальных языках это давно делается вот так:
"value: " + someValue + "."

Люди просили сделать нормальный автокаст, так эти долбоёбы устроили какую-то джаваскриптовую парашу и впилили наоборот. Теперь строки конверируются в числа. Иногда. А иногда не ковертируются, а вылетают. Например, 1 + "2" выдаст 3, а "1" + 2 - ошибку, нахуй.
Сурс: https://forum.yoyogames.com/index.php?threads/gml-consistency-in-gms2-v2-2-2.59856/

Ответы590093590095

968 1 июля 2019, 00:44 968 590093

>>590089
Я в курсе. И что? Для gui у меня слои вверху, для обхектов на карте набор слоёв ниже. В room_start я забираю минимальное и максимальное значение глубины для объктов (из первого и последнего слоёв, предназначенных для объектов), вычисляю шаг глубины, соответствующий шагу по y и каждому объекту добавляю room_start event с одной строкой
depth = obj_game.zero_depth + obj_game.depth_step*y;

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

Ответы590097

969 1 июля 2019, 00:49 969 590095

>>590089
>В ГМЛ чтобы в строку пихнуть число, надо делать вот так:
>"value: " + string(someValue) + "."

Я вообще не вижу в этом никакой проблемы. Наоборот, это, сука, нормально.

>Люди просили сделать нормальный автокаст

Со временем я начинаю понимать, что автоматическая конвертация переменных - это не очень хорошо. float должен быть float, real должен быть real, int не должен внезапно превращаться в real и т.д. Прибавлять к строке число не правильно.

Вытащить число из строки.. Это иногда может быть полезным.
Но
> 1 + "2"
блять, не надо так.

Ответы590097

970 1 июля 2019, 01:08 970 590097

>>590093
>Я в курсе. И что? Для gui у меня слои вверху, для обхектов на карте набор слоёв ниже. В room_start я забираю минимальное и максимальное значение глубины для объктов (из первого и последнего слоёв, предназначенных для объектов), вычисляю шаг глубины, соответствующий шагу по y и каждому объекту добавляю room_start event с одной строкой

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

>>590095
>Со временем я начинаю понимать, что автоматическая конвертация переменных - это не очень хорошо. float должен быть float, real должен быть real, int не должен внезапно превращаться в real и т.д. Прибавлять к строке число не правильно.

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

> Вытащить число из строки.. Это иногда может быть полезным.
Конечно. Только это должно быть выполнено в фиде отдельной функции, а не автокастом, который ещё и работает только в половине случаев.

Ответы590138

971 1 июля 2019, 07:18 971 590109

>>590056
Твой пост пропитан синдромом утенка. "Раньшибылалудше, Дуров, верни стену", ага. Каждый твой аргумент — "вот тогда было так, а щас вот так и мне не нра". Все с тобой ясно.

Ответы590156591244

972 1 июля 2019, 08:32 972 590122

чёртова обнова из-за неё все ини-файлы слетели, смена уровней порушена, пришлось игру урезать

Ответы590140

973 1 июля 2019, 10:29 973 590138

>>590097
>с ГМ свалил
Надеюсь, на годот свалил?

Ответы590156

974 1 июля 2019, 10:31 974 590139

проигрываю с тех челиков, которым новый интерфейс не нравится

975 1 июля 2019, 10:32 975 590140

>>590122
Переходи на годот.
(и на JSON вместо ini;)

976 1 июля 2019, 11:11 976 590156

>>590109
Так дело-то в том, что и у ГМС1 интерфейс был говном. Ужасно дёрганный и глючный. Это реально надо было поменять, но не в ущерб реальному рабочему пространству. Более того, на нотубуке с трекпадом воркспейсы - вообще какой-то пиздец.
Слои же - это классная концепция, которую давно пока было ввести. Но не так убого, как это сделали ЁЁ. Ведь можно же было оставить сортировку по глубине внутри слоя, и всё было бы круто. Даже дело не в том, что оно в принципе поменялось и это хуёво - дело в том, что текущая реализация ставит палки в колёса если хочешь depth = -y. ЁЁ просто поленились сделать по-нормальному, а обычным юзерам теперь это расхлёбывать

>>590138
На твою маму.

977 1 июля 2019, 11:14 977 590157

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

Ответы590158

978 1 июля 2019, 11:15 978 590158

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

Ответы590159

979 1 июля 2019, 11:18 979 590159

>>590158
Почему же? Видел много программистов, ковыряющих ГМ. Даже сейчас. Под ГМС2 даже нормальный редактор кода запилили, без обоссаных сплайнов и со вкладками.

Ответы590343590344

980 1 июля 2019, 21:13 980 590343

>>590159
так все эти сплайны вырубаются в настроках ,а так да ,сижу на этот самом редакторе

981 1 июля 2019, 21:15 981 590344

>>590159
На стриме у галенкина издатель говорил, что если к нему приходят с годной игрой на гамаке то ее перепиливают на юнити сами потом.

Ответы590398

982 2 июля 2019, 01:48 982 590398

>>590344
Жоска, лол.

Ответы590415

983 2 июля 2019, 01:55 983 590399

https://www.youtube.com/watch?v=A-ay8-abdJQ

984 2 июля 2019, 11:07 984 590415

>>590398
А чего жоскаво-то? Все современные движки сделаны по одному шаблону: майнлуп с колбеками и сиподобный синтаксис скрипта.
Тебе один раз нужно сделать образец для переноса игор с движка А на движок Б, в котором будут имитированы нюансы движка А с реализацией на движке Б. Например, встроенные функции-хелперы. В движке А допустим есть функция lerp(vec2 from, vec2 to, float step) и код игры завязан на неё, а в движке Б это метод вектора vec2.lerp(vec2 to, float step). Зная это, ты один раз пишешь примерно такую функцию-обёртку:
lerp(vec2 from, vec2 to, float step) { return from.lerp(to, step); }
И далее исходный код пихаешь без изменений. Ну это самый простой случай. На деле инди разрабы могут дичайшую дичь издателям приносить.

Ответы590423

985 2 июля 2019, 11:43 985 590423

>>590415
Жоска гамак обоссали.

Ответы590426

986 2 июля 2019, 11:47 986 590425

Как вывести через draw_text знак процента? Пробовал через chr(37) - не отрисовывается.

Ответы590534

987 2 июля 2019, 11:48 987 590426

>>590423
Не вижу обсыка. Анон сделал прототип на движке, в котором ему удобно делать прототип. Студия издателя перекинула прототип на профессиональный движок и сделала релиз.

988 2 июля 2019, 20:50 988 590534

>>590425
нпросто в аргумент текста пишешь "%" ,если там квадрат ,то шрифт не поддреживает этот знак ,а можешь вот так string(значение) + "%"

Ответы590616

56 Кб, 923x829
989 3 июля 2019, 01:58 989 590616

>>590534
Да, тупанул, действительно в шрифте просто не было символа. Вот все символы есть, а % нету.

990 6 июля 2019, 01:21 990 591244

>>590109
> синдромом утенка.
Школьник детектед.
За гм не скажу, но очень часто бывает, что программы с новыми версиями становятся всё хуже и хуже.

Ответы591252

991 6 июля 2019, 08:05 991 591252

>>591244
>За гм не скажу
Тогда нахуй ты варежку свою раззявил?

Ответы591267

992 6 июля 2019, 11:17 992 591257

ffffffffff

993 6 июля 2019, 12:35 993 591267

>>591252
Ты не понял, я это не для ёбнутых опущенцев писал, так что проходи мимо.

994 6 авг 2019, 10:42 994 599028

Как сделать игру на гамаке?

Ответы599030599218

995 6 авг 2019, 10:47 995 599030

>>599028
Без задней мысли

996 6 авг 2019, 21:45 996 599218

>>599028
Запускаешь туториалы Спалдинга и фигачишь по ним.

Ответы599405

997 7 авг 2019, 19:01 997 599405

>>599218
Каковы шансы, что я освою, если я туповатый? Английский язык знаю.

Ответы599406599414

998 7 авг 2019, 19:10 998 599406

>>599405
откуда мы блять знаем
пиздуй и пробуй мудила

Ответы599412599414

999 7 авг 2019, 20:01 999 599412

>>599406
Чому, кстати, тред мертвый?

Ответы599413599414

1000 7 авг 2019, 20:06 1000 599413

>>599412
Вероятнее всего потому, что всем всё понятно.
Но крайней мере тем, кто пилит свои игры на гамаке.

Если что-то не понятно - спрашивай. Но не забудь перед этим прочитать мануал.

Ответы599564

1001 7 авг 2019, 20:08 1001 599414

>>599406
Токсический петух токсичен.

>>599405
А как можно что-то не освоить? Если ты прикладываешь усилия - будут результаты. Если тебе нужна кнопка "сделать заебись" - её тут нет.

>>599412
Лучше так, чем говнометание двух шизоидов "юнити говно, нет годот говно".

Ответы599564

1002 8 авг 2019, 08:10 1002 599564

>>599413
>>599414
Ок, спасибо.

1003 9 авг 2019, 09:56 1003 599783

Перекатывайтесь на юнити. Все равно рано или поздно упретесь в потолок гма.

Ответы599804

1004 9 авг 2019, 12:16 1004 599804

>>599783
Тебе платят что ли за это, ебанутый?

1005 19 авг 2019, 12:36 1005 603149

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

3,2 Мб, webm,
840x524, 0:43
1006 5 окт 2019, 06:29 1006 615607

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

1007 21 ноя 2019, 08:05 1007 623766

>>439561 (OP)
>Делимся опытом
Пишу на gmEdit, еле-еле нашел работу 10$ в час на удаленке, так вышло что из Unity3D, Cocos Creator'a и Phaser самая доходная работа именно на платформе game maker studio 2.

Остальные gms'ы лучше даже не трогать, они мертвы и не поддерживаются. gmEdit позволяет делает такие вещи как лямбды, даже какие-то корутины и фэйковые типы данных (аж через точку будут показываться, но само собой для такого трюка нужны энамы). Также помогает с аргументами скрипта, больше никаких грязных argument0, argument1,
просто пишешь #args val, foo, bar (а если в конце добавить запятую тогда уже можно работать с argument count для бесконечных аргументов)

Что могу сказать о том что такое game maker и почему он может быть интересен, в нем достаточно развитое сообщество, есть свои звезды программирования которые накодили к нему сторонних инструментов и библиотек, lazyLoad, gmEdit, gmLife, gmsTweens, Scrimblе, HaxeToGML, был еще какой-то для более интерактивной справки
Плюс к этому он позволяет писать логику игры местами даже лучше и быстрее чем на каком-нибудь lua.
Для меня этих плюсов достаточно чтобы покрыть его минусы. Но само собой есть игры, в которых я гмс никогда бы не выбрал (но блин он такой халявный местами, что если честно через скрежет открывал юнити, но что поделать, это жизнь, а я программист, который должен решать задачу)

Ответы623767

1008 21 ноя 2019, 08:10 1008 623767

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

1009 21 ноя 2019, 08:20 1009 623768

>>495719
в некоторых случаях и инвентарь требует оптимизации, потому что по итогу в некоторых случаях 180 или больше ячеек инвентаря быстрее работают в объектах, чем в фейковых структурах)
Но быстрее они будут работать только если не будут каждый шаг обновлять свою позицию по центру, а только при открытии например.
Есть кейсы когда важно оптимизировать, а иногда нафиг не нужно.

Тред утонул или удален.
Это копия, сохраненная 11 ноября 2020 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /gd/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion