Сохранен 1022
https://2ch.hk/gd/res/439561.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Gamemaker Thread

 Аноним 23/08/17 Срд 16:41:21 #1 №439561 
Newspost.png.png
Почему бы не создать ламповый гм-тредик?
Обсуждаем, обмениваемся опытом, задаем вопросы.

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

Так-то 1.4 может все то же, что и двойка, поэтому если жалко бабла, можно писать на старой версии. Но двойку будут развивать и она будет становиться только лучше.
Аноним 23/08/17 Срд 20:31:04 #2 №439595 
>>439561 (OP)
Двойка - недоделанная параша. Лагающая, забагованная и неудобная.
А 1.4 я купил с кучей индюшатины на хамбл бандле за 15 бачей и не жалею.
Аноним 23/08/17 Срд 20:34:33 #3 №439598 
>>439595
> Лагающая
Обнови пеку для учебы

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

>неудобная
Хз. я после 1.4 просто кайфую от скорости своей работы.
Аноним 23/08/17 Срд 22:52:38 #4 №439620 
>Обнови пеку для учебы
У меня на десятилетнем ПК летает.

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

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

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


Аноним 23/08/17 Срд 23:08:30 #5 №439624 
>>439620
Чем тебе конкретно воркспейсы не угодили? Мне больше нравится, нежели каша из окон в 1.4
Аноним 23/08/17 Срд 23:46:09 #6 №439634 
>>439624
В основном тем, что из-за боковых окон на воркспейсе места мало. Соответственно и окошки очень маленькие. Постоянно возникает горизонтальная полоса прокрутки. Чтобы нажать на неё нужно либо вырубать нижнюю панель (которая всё равно влезает назад после каждого запуска игры) либо таскать окно. И боковая панель всё время вылезает, если у тебя где-то в таба комната открыта.
Ну и без правой панели всё равно не обойтись, ибо навигироваться по воркспейсу невозможно. С выкрученным зумом невозможно разобрать, что там в окошках. При основном масштабе нужно тянуть несколько экранов, чтобы найти нужный обхект с открытыми ивентами.
Даже на домашнем 40ка дюймовом монике постоянно такая проблема. На мелком рабочем мониторе - просто невозможно пользоваться.
Такие дела.
Аноним 24/08/17 Чтв 00:11:38 #7 №439637 
>>439634
Странно, у меня 24 дюйма моник и мне нормально. Причем кода у меня достаточно и прыгаю по объектам бывает часто. Короче, мне зашло больше, чем в 1.4
Аноним 24/08/17 Чтв 15:19:47 #8 №439715 
>>439561 (OP)
Зачем обсуждать гамак здесь? Если есть какие-то вопросы - на них ответят на форуме yoyo.
Если просто потрындеть - нас здесь полтора игродела.

Разве что перекличку провести.
Аноним 24/08/17 Чтв 16:00:05 #9 №439722 
>>439715
Да пусть будет, жалко что ли.
Аноним 24/08/17 Чтв 17:59:33 #10 №439740 
Обновились тут малость
http://gms.yoyogames.com/ReleaseNotes.html
Аноним 24/08/17 Чтв 19:04:23 #11 №439745 
>>439740
О, круто! Новый дебагер - это то, что мне нужно, т.к. я сегодня взялся ещё раз переделать систему пасфадинга и перемещения своих квадратов.
Аноним 25/08/17 Птн 10:45:55 #12 №439843 
>>439745
Ага, круто. Ну и где блеать теперь узнать значения переменных?
Аноним 26/08/17 Суб 04:00:32 #13 №440002 
Процесс компиляции во второй отличается от первой? Пока сам работаю на первой, есть ли смысл финальную сборку проводить во второй? Добавили ли туда какие-нибудь магические оптимизации и прочее или в конечном итоге не будет разницы независимо от версии на которой игра компилировалась?
Аноним 26/08/17 Суб 04:02:33 #14 №440003 
>>440002
Пока не так много отличий на самом деле кроме удобства. А так я бы не стал переносить старый большой проект в двойку потому что импорт насоздает кучу скриптов совместимости. Нахуй надо.
Аноним 30/08/17 Срд 17:26:57 #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 не строго заданной комнаты, а текущей!






Аноним 31/08/17 Чтв 03:50:17 #16 №441000 
>>440866
Используй глобальную переменную global.shadow_level
Аноним 31/08/17 Чтв 14:04:50 #17 №441078 
>>441000
Я спрашиваю не про пути обхода, а про способ получения доступа к переменным текущей комнаты.
Аноним 31/08/17 Чтв 14:08:53 #18 №441079 
>>441078
их нет
Аноним 01/09/17 Птн 13:39:37 #19 №441224 
Дебагер после апдейта стал просто шикарным.
Теперь можно посмотреть значения переменных прямо в окне с кодом, можно залезть внутрь ds структуры. Можно менять значения переменных во время дебаганья.

Круто.
Аноним 02/09/17 Суб 08:56:53 #20 №441336 
>>440866
Не пиши ничего в коде инициализации комнаты, исполтщуй для этого объекты.
Аноним 02/09/17 Суб 11:46:48 #21 №441338 
>>441336
Почему не использовать код инициализации комнаты для инициализиции комнаты при переходе из комнаты в комнату?

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






Аноним 02/09/17 Суб 11:49:07 #22 №441339 
>>441338
> следящий за сменой комнаты
Используй room_start и room_end эвенты, юный падаван.
Аноним 02/09/17 Суб 13:34:40 #23 №441344 
>>441339
>room_start и room_end эвенты

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

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

А когда выполняется ивент room_start?
Аноним 02/09/17 Суб 14:06:02 #24 №441347 
>>441344
Ладно, ты ж не гугл. Можешь не отвечать.

https://files.64digits.com/tahnok100/Order_Of_Events_In_Game_Maker_Rev.1_Tahnok100_.pdf
Аноним 02/09/17 Суб 14:07:04 #25 №441348 
>>441347
Ну это для гм6.1 актуально, в гмс:2 может быть по-другому.
Аноним 03/09/17 Вск 11:27:10 #26 №441431 
https://www.youtube.com/watch?v=G1WxKEk6Wrw
Аноним 17/09/17 Вск 17:57:27 #27 №443345 
Аноны, туплю. Вообщем реализовал такую камеру. Когда нажимаю мышкой могу "тащить" вид. Т.е. тоже самое когда в стандартном windows просмотрщике фото приближаешь фото и перемещаешься по нему. Сделал все, но один нюанс работает немного криво. Ограничил вид с помощью clamp и по координатам. Но когда я упираюсь в край карты с большим ускорением происходит кратковременный лаг.
Как правильно ограничить вид чтобы он не выходит за пределы комнаты? Чтобы он как влитой останавливался у края комнаты а не резко "пружинил"
Аноним 17/09/17 Вск 18:11:56 #28 №443346 
>>443345
покажи свой код и сними на видео этот эффект
Аноним 17/09/17 Вск 18:34:52 #29 №443347 
>>443346
http://185.159.82.148/heroes/
Аноним 17/09/17 Вск 18:39:07 #30 №443348 
>>443346
Код
https://pastebin.com/GBS6JF9j
Аноним 17/09/17 Вск 18:58:43 #31 №443351 
>>439561 (OP)
Единственное серьезное слабое место в 1.4 это редактор комнат. Ну и редактор кода можно подтянуть. Остальное можно вообще выпилить, только мешает. По мне так гамаку гуй вообще не нужен, особенно гуй объектов.
Аноним 18/09/17 Пнд 03:56:02 #32 №443424 
Купил сегодня вторую версию, заодно появилась возможность поставить легальную 1.4. Вот не знаю какую юзать. Импортнул проект из 1.4, приятно удивило то, что все нормально заработало из коробки. В 1.4 не нравился редактор комнат и дебаг (а именно невозможность добавлять вотчи). В двойке не понравилось, что отошли от интерфейса, к которому я привык ещё со времен версии GM5, но думаю привыкну. Есть ещё какие подводные камни?
Аноним 18/09/17 Пнд 04:29:33 #33 №443425 
>>443348
у тебя сначала идет clamp, а потом движение камеры
clamp должен быть в конце после всего кода
Аноним 18/09/17 Пнд 04:42:54 #34 №443427 
>>443424
Юзай вторую. К интерфейсу привыкнешь.
Аноним 18/09/17 Пнд 10:50:54 #35 №443483 
>>443425
Спасибо, помогло!
Аноним 18/09/17 Пнд 13:39:03 #36 №443531 
Подскажите туториалов по камере и интерфейсам в GMS2

Аноним 18/09/17 Пнд 13:41:21 #37 №443533 
>>443531
https://www.youtube.com/watch?v=rrn_2hxL11A
https://www.youtube.com/watch?v=Pd54vNc2N4E
Аноним 18/09/17 Пнд 14:24:26 #38 №443547 
>>443533
Вот ты серьёзно думаешь, что я не смог в гугле вбить gms2 camera tutorial?


Аноним 18/09/17 Пнд 14:26:54 #39 №443548 
>>443547
А чем тебя эти не устроили? Сполдинг норм рассказывает же.
Аноним 18/09/17 Пнд 14:30:03 #40 №443549 
>>443548
Сполдинг норм, я с него и начинал. Но все его туториалы максимум поверхностные, для самых ньюфагов. Уже давно не интересно.

Но у меня уже появились идеи, почему у меня интерфейс колбасится при движении. Буду пробовать.
Аноним 18/09/17 Пнд 14:31:11 #41 №443550 
>>443548
Ну и как тебе туториал сполдинга по one way platform? Норм что ли?
Аноним 18/09/17 Пнд 14:33:34 #42 №443552 
>>443550
Не смотрел, я только самые основы посмотрел, дальше сам уже.

>>443549
Дак ты б код вбросил.
Аноним 18/09/17 Пнд 14:54:47 #43 №443556 
>>443548
А ещё он коллизии объектами делает.
Аноним 18/09/17 Пнд 14:59:53 #44 №443557 
>>443556
А надо чем?
Аноним 18/09/17 Пнд 15:00:41 #45 №443558 
>>443557
Тайлами.
Аноним 18/09/17 Пнд 15:04:40 #46 №443560 
>>443558
Ну это если у тебя вся игра сделана под квадраты/прямоугольники, то мб и да.
Аноним 18/09/17 Пнд 15:09:13 #47 №443561 
>>443560
Любой формы, которая описывается мат. формулой очень легко.

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

И дальше модифицируешь под свои нужды - объекты разного размера, тайлы разной формы.
Аноним 18/09/17 Пнд 15:18:17 #48 №443562 
.jpg
>>443561
У меня проще система. Объект коллизий, который я просто поверх тайлов стретчу.
Аноним 18/09/17 Пнд 15:59:19 #49 №443594 
1.jpg
Пошёл по туториалу спалдинга.

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

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);
Аноним 18/09/17 Пнд 16:03:49 #50 №443598 
>>443594
это фуллскрин?
Аноним 18/09/17 Пнд 16:08:21 #51 №443601 
>>443598
Это окно.
Аноним 18/09/17 Пнд 16:10:44 #52 №443602 
>>443601
а значения x и у какие?
Аноним 18/09/17 Пнд 16:15:24 #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]);

заработало.
Аноним 19/09/17 Втр 08:52:00 #54 №443750 
>>443604
Хоспади, вчера за 2 часа, сидя с температурой 38 градусов, не имея никаких знаний, кроме кривого гайда, я сделал камеру лучше, чем у этих уёбков из One dog story.
Да, у меня бомбит от них.
Аноним 19/09/17 Втр 08:55:03 #55 №443753 
>>443750
Небось они по тому же гайду от Сполдинга и делали. У него так же тошнотворно кобасит камеру после остановки движения (но не так сильно, как в собаке, у них делитель скорости выше)
Аноним 21/09/17 Чтв 14:03:47 #56 №444191 
Какой примерный алгоритм чтобы сделать gui. Допустим у меня есть спрайт 16x16 с рамкой окна. Но т.к. окна могут быть разного размера этот спрайт надо как-то разбивать на куски. Т.е. берем угол потом скейлим (или просто кучу 1х1 рисуем) вернюю плашку на заданный размер х. Потом опять уголок. Верхушка готова. Нашел функции draw_part, как я понимаю надо использовать ее?

На ютубе примеры что я нашел рисовали окошки с помощью draw_rectangle или вообще draw_line, что мне не очень подхожит. Нужно чтобы окно создавалось именно из кусков спрайта.
Аноним 21/09/17 Чтв 14:13:55 #57 №444197 
>>444191
нихуя не понял
Аноним 21/09/17 Чтв 14:21:36 #58 №444198 
Cап, мейкеры. Решил вкатиться в гейммейкер и сделать что-то для души. Решил погуглить гайдов, но они или легкие, по вещам, которые знает любой за первые курсы обучения, или по очень узко направленным вещам. С чего начать? Есть ли по gml'ю учебник? Гугл не помог, хотя и искать мог хуёво. Всякие ютуб канальчики, гайдики, которые разжуют сложное, а лёгкое опустят до гиперссылок на другие их ролики. Или тексты. С меня как обычно.
Аноним 21/09/17 Чтв 14:23:57 #59 №444199 
>>444198
http://rgho.st/private/6MZcxFy7v/6ccef8663dff78ae101ef3ac3d60e13c
Аноним 21/09/17 Чтв 14:32:34 #60 №444200 
>>444198
Если по английски понимаешь, то рекомендую оффициальный мануал читать. Он у них лучше любого учебника написан. Я такое редко встречал, обычно мануалы больше для продвинутой аудитории подходят.
Аноним 21/09/17 Чтв 17:22:03 #61 №444216 
>>444197
Ну во многих играх окно ui рисуется ж собираясь по кусочкам из спрайта а не с помощью функций движка..
Аноним 21/09/17 Чтв 17:40:25 #62 №444217 
>>444216
Теоретически ты можешь на GUI слой пилить свои элементы и они будут скейлиться вместе с размером GUI и не надо будет нарезать.
Аноним 21/09/17 Чтв 18:00:37 #63 №444231 
>>444199
>>444200
Спасибо, анончики
Аноним 21/09/17 Чтв 18:17:36 #64 №444235 
>>444198
На Hellroom есть "Школа GML Архив". Но если не абсолютный новичок, то вперед реализовывать проект параллельно читая справку. Справка у гамака как уже сказал >>444200 , хороша. Что-то более специфическое спрашивают на форуме yoyo, на русских сайтах бесполезно. Уже почти все умерли.
Аноним 21/09/17 Чтв 19:01:32 #65 №444242 
image.png
>>444216
Бери пикчу рамки (допустим, 9696), руби на мелкие(типа 3232), делай функцию, которая будет рисовать тебе рамки любого размера по кусочкам из твоего стрипа. На пикче чёрно-жёлтое говно - твоя рамка, красные перпендикулярные и прозрачные штуки - линии разреза.
Аноним 21/09/17 Чтв 21:40:42 #66 №444267 
>>444242
Так и сделал. Спасибо за совет.
Аноним 21/09/17 Чтв 21:52:52 #67 №444272 
На всякий случай отпишу и в эту тему тоже.

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

Контакты - [email protected]

Работа оплачивается
Аноним 22/09/17 Птн 18:50:11 #68 №444444 
Runner 2017-09-22 18-24-36-46.webm
>>444272
Аноним 23/09/17 Суб 14:22:06 #69 №444680 
>>444444
бля, ещё 1 гет просрали
Аноним 23/09/17 Суб 15:39:17 #70 №444717 
>>444680
А по-моему это шин и суть /gd/
Аноним 23/09/17 Суб 15:56:37 #71 №444724 DELETED
>>444717
особенно как его клинит в конце и он до стенки не доежает
Аноним 23/09/17 Суб 15:58:11 #72 №444725 
Runner 2017-09-22 21-21-10-72.webm
>>444680
Ничего себе просрали. Гет в ГД взяли игрой. Это ли не вин?
Я сделал это за один день.

Аноним 25/09/17 Пнд 00:27:27 #73 №445035 
>>443427

>>443424-кун репортинг ин.
Да, GMS2 божественна. Наконец всё для людей, Yoyogames молодцы, что не побоялись всё так радикально переделать. 1.4 теперь воспринимается как идеологически устаревшее, глюченное нагромождение костылей. Ни капли не жалею потраченных 1500 рублей.
Аноним 25/09/17 Пнд 00:39:29 #74 №445039 
>>445035
Рад за тебя, пили годноту.
Аноним 25/09/17 Пнд 00:50:00 #75 №445040 
>>445035
Вот только на десктоп пилить никакого интереса нет.. по крайней мере у меня. А мобильные и хтмл5 модули стоят дорого.... очень дорого даже учитывая региональные цены в стиме. Учитывая что под боком юнити который во всем лучше.
Аноним 26/09/17 Втр 01:22:36 #76 №445259 
В 1.4 раздражает гуй. Сделали бы гм фрейморком и все настройки проекта в json. Удобнее было чем эти лагающие Delphi окошки с мерцающим дефолтным скином... Я с этого реально охуел еще в 2010. Мерцающие епта окошки... В дорогущем софте. Гуй не приспособлен совершенно для работы без мышки, что тоже очень неудобно.
Аноним 26/09/17 Втр 01:49:29 #77 №445262 
>>445259
Купи двойку
Аноним 26/09/17 Втр 11:49:39 #78 №445290 
Внимание! Внимание!

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

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

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


Этот долбаный баг преследовал меня месяц. Наконец я понял в чём дело. Может ещё кому-то пригодится.
Аноним 26/09/17 Втр 14:05:40 #79 №445333 
>>445259
>Сделали бы гм фрейморком и все настройки проекта в json.
В 1.4 так всё и есть, только проект хранится в xml.
Скачай сторонний редактор (их два, один хреновый, а второй тормозной и платный), или напиши свой.

В 2.0 вроде тоже хранится в xml, но формат другой.
Аноним 30/09/17 Суб 19:22:56 #80 №446076 
https://gm48.net/
Аноним 30/09/17 Суб 19:57:29 #81 №446082 
>>446076
Нихуя не понял, как участвовать.
Аноним 30/09/17 Суб 20:33:02 #82 №446087 
>>446082
К началу приходи, там все напишут.
Аноним 03/10/17 Втр 19:52:14 #83 №446592 
Бамп треду. Аноны, кто-нибудь знает: дэсктоп-версия за 1,5 в стиме полноценная? Она чем-то отличается от версии на оф. сайте?
Аноним 03/10/17 Втр 19:52:53 #84 №446593 
>>446592
Полноценная. Ничем не отличается.
Аноним 03/10/17 Втр 19:59:23 #85 №446597 
>>446593
Стоит ли брать, если ты не умеешь кодить, но хочешь сделать игру?
Аноним 03/10/17 Втр 20:01:15 #86 №446600 
>>446597
Из всех 2д движков гамак наверн самый простой в освоении.
Главное не лениться и освоить его внутренний скриптовый язык, а не костылить конструктором.
Туториалов дохуя.
Аноним 03/10/17 Втр 20:01:26 #87 №446601 
>>446592
Ничем. Более того ты сможешь и на офф. сайте скачать не стимовскую.
Аноним 03/10/17 Втр 20:03:36 #88 №446602 
>>446600
>Туториалов дохуя.
На GMS 2 почти нихуя не нашёл. В основном кидало на туторы по первому.
Аноним 03/10/17 Втр 20:06:09 #89 №446604 
>>446602
https://docs2.yoyogames.com/
Аноним 03/10/17 Втр 20:09:20 #90 №446605 
>>446604
А у них там детально расписано? Можно при помощи этого гайда узнать, как, например, создать систему инвентаря в игре?
Извиняюсь, если слишком много лишних вопросов.
Аноним 03/10/17 Втр 20:11:08 #91 №446607 
>>446602
https://www.youtube.com/channel/UCnKHIXYeYkehIJtF414f65A
https://www.youtube.com/channel/UCrHQNOyU1q6BFEfkNq2CYMA
https://www.youtube.com/channel/UCn7FE3Tx391g1tWPv-1tv7Q
Аноним 03/10/17 Втр 20:13:27 #92 №446609 
>>446607
Спасибо, посмотрю.
Аноним 03/10/17 Втр 20:31:20 #93 №446613 
>>446605
Создание инвентаря - это общий алгоритм. Зная как создавать инвентарь в целом ты сможешь это реализовать на любом движке.
Аноним 04/10/17 Срд 01:45:36 #94 №446661 
>>445040
А я пилю некоммерческий инди-аутизм
как и большинство здесь
Так что похуй.
Аноним 08/10/17 Вск 21:30:58 #95 №447408 
No-Cups-in-Ovechkins-House.jpg
Аноним 08/10/17 Вск 21:31:16 #96 №447409 
b5522377c1158b7f8da490d09aa734c00ab333c7194e9fa4b71145b65e9[...].jpg
Аноним 06/11/17 Пнд 23:57:30 #97 №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

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



Аноним 07/11/17 Втр 00:11:04 #98 №454980 
s.png
>>439561 (OP)
Спрошу еще и тут, может знает кто.

Как масштабировать в гейммейкере в целое число раз в полноэкранном режиме. Если разрешение экрана не делится на цело на заданное то нужно, увеличить рабочую область максимально насколько возможно, а вокруг оставить черную рамку.
Аноним 07/11/17 Втр 00:16:30 #99 №454984 
>>454980
Сам спросил - сам ответил.

Да.
Аноним 07/11/17 Втр 00:40:13 #100 №454990 
>>454984
Я не знаю как это сделать.
Аноним 07/11/17 Втр 10:19:28 #101 №455018 
>>454990
В любой ситуации с пропорциями экрана юзай виды. В твоём случае можно просто создать и увеличивать вид в целое число раз, пока он не будет по ширине или высоте больше самого экрана.
Аноним 07/11/17 Втр 18:28:07 #102 №455122 
>>455018
Виды не помогают. Если я в оконном режиме задам view_wport и view_hport, то да, гамак установит соответствующие размеры и у окна. Но в полноэкранном режиме он растягивает все на весь экран, а я могу только выбирать, сохранять пропорции или нет.
Аноним 08/11/17 Срд 19:00:51 #103 №455333 
>>455122
В полноэкранном тебе надо менять размер application surface
Аноним 08/11/17 Срд 20:30:18 #104 №455347 
>>455333
Я ковырялся с этим, ничего не получилось, и я забил. У игры разрешение 640x360, что идеально масштабируется на популярное разрешение 1080p, а для остальных добавлю возможность поиграть в окошке.
Аноним 10/11/17 Птн 15:14:08 #105 №455697 
Код кинетического скролла нужен кому-нибудь?
Аноним 11/11/17 Суб 22:17:20 #106 №456019 
Сап, пачаны. Есть вопрос - как лучше всего сделать в гамаке настройки звука в игре? У меня есть на руках готовое решение, но у него есть свои косяки и неприятные стороны так сказать. Может, Анончик знает что получше
Аноним 12/11/17 Вск 02:47:38 #107 №456049 
>>456019
конкретнее вопрос задай
Аноним 12/11/17 Вск 14:26:59 #108 №456125 
>>456049
куда уж конкретнее. Хочу в экран настроек игры кроме локализации, которую уже запилил, ползунки громкости звука, а если быть еще конкретнее, то музыки игровой. В готовой решении могу сделать три ползунка: мастер, музыка, эффекты, и убрать два последних, но мне по сути нужен только второй, а из-за чудесного кода плугина это сделать не получится. Либо мириться и оставлять два ползунка, либо что-то еще придумать
Аноним 13/11/17 Пнд 03:54:05 #109 №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, но другого способа я пока не вижу.
Аноним 13/11/17 Пнд 04:03:16 #110 №456249 
>>456248
Полетела разметка кода про звук из-за звездочек, которые макаба воспринимает как курсив.
https://pastebin.com/8KWrigJk
Аноним 13/11/17 Пнд 05:19:54 #111 №456254 
>>456248
спасибо за ответ, но да, тут все-таки нагромождение, сам понимаешь. Буду думать дальше. И так стараюсь во второй игре избежать всех ошибок первой
Аноним 13/11/17 Пнд 08:41:10 #112 №456263 
>>456254
Можно эту штуку обернуть в скрипт и вызывать вместо audio_play_sound(). Будет не громоздко, как по мне.
Аноним 13/11/17 Пнд 22:09:44 #113 №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 должна всегда существовать.
Аноним 13/11/17 Пнд 22:42:36 #114 №456401 
>>456393
Нет, все-таки рисуется. Это я невнимательный, использовал application_surface_enable() вместо application_surface_draw_enable(). А в твоем коде мне две вещи остались не ясны.
1. Зачем ты в событии Step изменяешь размер окна при переходе в полноэкранный режим? Это же вроде ни на что не влияет уже.
2. Почему рисуешь application_surface в PreDraw? Ведь все остальное отрисовывается после, а мы увидим предыдущий кадр таким образом, правильно?
sageАноним 13/11/17 Пнд 23:22:07 #115 №456404 
На 8.1 сижу, пофиг на эти 1.4, 2
Аноним 13/11/17 Пнд 23:38:06 #116 №456410 
>>456404
Да всем похуй на тебя, дедуль.
Аноним 14/11/17 Втр 01:35:56 #117 №456421 
>>456401
1. Индусский код-анахронизм, оставшийся от предыдущих вариантов реализации. Сам убрал, когда перечитал его в очищенном от кучи закомменченного мусора виде. Уже после отправки на двач, лол.
2. Почему-то в свое время решил, что так надо. Сейчас прочитал вот этот док http://docs.yoyogames.com/source/dadiospice/002_reference/surfaces/the%20application%20surface.html и увидел, что действительно логичнее рисовать application surface в post-draw.

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

>>456404
4.3 была самая ламповая. Жаль, что игоры, сделанные в ней, нормально не идут на современные пеки.
Аноним 16/11/17 Чтв 03:37:47 #118 №456732 
Анон, выручай еще раз, я с тупым вопросом. Решился чего-то вдруг запилить боссфайт в игру и все сделал, кроме одной детали - гг лупит оружием ближнего боя (копья и мечи), и получается так, что при ударе по боссу, он за секунду соприкосновения с оружием выхватывает каждый тик указанный дамаг и умирает сразу. Подскажи, как сделать после получения дамага кулдаун в пару секунд, а то голова не варит уже. Спасибо
Аноним 16/11/17 Чтв 04:31:24 #119 №456733 
>>456732
таки реализовал. По своему, но работает. Все равно не откажусь почитать ваши варианты, если кто чего отпишет
Аноним 16/11/17 Чтв 16:38:49 #120 №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);



Аноним 16/11/17 Чтв 17:00:10 #121 №456807 
>>456806
Если тебе нужен КД в пару секунд - очищай список целей каждые пару секунд.
Аноним 16/11/17 Чтв 19:18:33 #122 №456821 
>>456806
Да оно у меня очень просто реализовано. Есть родительский объект врага и родительский объект оружия. Плюс есть объект, который хранит данные о здоровье босса. В итоге я просто подвязал уже имеющийся скрипт и при столкновении этих двух объектов запускается внутренний таймер с миганием спрайта того, кто словил дамаг
Аноним 17/11/17 Птн 03:54:09 #123 №456887 
>>456806
точно также делал, когда пилил игру типа нинджа гайдена
Аноним 17/11/17 Птн 04:01:05 #124 №456888 
>>456401
Таки пришлось вернуть этот код.
Почему-то если игра стартует в полноэкранном режиме, то если из него выйти, размер окна становится иногда неадекватно мелким. Почему-то этот баг не проявляет себя, если менять полноэкранный режим через Window_set_fullscreen() - только через alt+enter.

>>456421-кун
Аноним 17/11/17 Птн 21:14:38 #125 №457018 
>>456888
Хотел протестировать, но у меня на комбинацию alt+enter нет реакции.
Аноним 18/11/17 Суб 10:06:34 #126 №457059 
>>439561 (OP)
Если я хочу писать бровзерные игори, то надо платить 149 бачей?
Аноним 18/11/17 Суб 13:32:10 #127 №457079 
>>439561 (OP)
Я правильно понимаю, что gamemaker не дает сохранять файлы в папку с игрой, а только в общую папку <LOCALAPPDATA>/<GameName>? И теоретически, если на компе другая игра с тем же именем будет писать в тот же файл, то она всю сохраненку похерит. Как с этим бороться и нужно ли?
Аноним 19/11/17 Вск 04:48:02 #128 №457162 
>>457079
ты сам можешь выбрать, куда твоя игра будет сохранять данные
[561843] Аноним 19/11/17 Вск 10:25:35 #129 №457169 
Давно искал тред по вопросам по GM. Ялично юзаю юнити (и там тоже есть 3D, но хочетчя создавать реальные 2D игоры. И так, как создать ландшафт, как создать героя, можно ли в бесплатной версии Game Maker создать норм игору без гличей и багов? Да и вообще можно ли?
Никогда не юзал ГМ
Аноним 19/11/17 Вск 13:57:17 #130 №457189 
>>457169
GDevelop попробуй.
Аноним 20/11/17 Пнд 14:16:31 #131 №457455 
Я смотрю вы тут по хардкору с камерой разбираетесь.

Подскажите мне, как правильно переносить камеру из комнаты в комнату? У меня при переходе из комнаты в комнату странным образом растягивается. Пока что я решил, что буду убивать камеру в room_end event и создавать новую камеру в room_start event. Но правильное ли это решение?
Аноним 20/11/17 Пнд 18:13:45 #132 №457498 
image.png
что это блять за хуйня? я планировал первые игры на мобилки делать, ибо игры того типа, что я делаю, в стиме доебали вкрай. Ммало того, что на виндовс 39 бачейгодовая, сука, так сука на андроиды 400. Четыре сотни СУКА. Спасибо, продолжу сношаться с юнити, хотя гм:с первая очень нравилась
Аноним 20/11/17 Пнд 18:54:51 #133 №457507 
>>457498
Monogame :3
Аноним 20/11/17 Пнд 19:17:32 #134 №457512 
Ответь, анон, как Gamemaker экспортирует в html5?
Лучше, чем Unity? Как производительность относительно phaser?
Аноним 20/11/17 Пнд 19:50:36 #135 №457515 
>>457507
Ты бы ещё libgdx предложил.
Аноним 20/11/17 Пнд 19:55:13 #136 №457517 
>>457498
В стиме 6400 рубасов, что чуть больше 100 баксов.
Аноним 20/11/17 Пнд 21:24:04 #137 №457533 
>>457517
этот чувак поди и 39 баксов жмет, какие там 6400 рубасов
Аноним 20/11/17 Пнд 22:34:35 #138 №457539 
>>457533
ну это пиздец конечно. Любая хуевая игра отобьет эти шесть тысяч с головой, а тут жлобство какое-то
Аноним 20/11/17 Пнд 22:50:18 #139 №457546 
>>457539
Сомнительно, конечно, что отобьет. В Play market over 9000000 проектов с 5-10 установками...
Аноним 20/11/17 Пнд 23:13:20 #140 №457550 
>>457546
А, если геймаркет, то да. А ежели стим, то все ок
Аноним 21/11/17 Втр 02:08:32 #141 №457559 
>>457515
> libgdx
Параша/10. На нем нету ни одной годной игры в отличие от моногейма.
Аноним 23/11/17 Чтв 08:04:33 #142 №457951 
Нуб в треде. Можно ли в гм2 один объект (например, персонажа) "собирать" из нескольких разных спрайтов (например, два спрайт рук, два спрайта ног, спрайт туловища и спрайт головы, итого 6 отдельных спрайтов)? Или для этого нужно создавать соответствующее количество объектоа (6 в случае приведенного примера), и уже к ним привязывать спрайты?
Заодно может подскажете, из вашего опыта или вычитанных где-нибудь мудростей, каким количеством объектов на комнату следует ограничиваться?
Аноним 23/11/17 Чтв 08:05:24 #143 №457953 
Нуб в треде. Можно ли в гм2 один объект (например, персонажа) "собирать" из нескольких разных спрайтов (например, два спрайт рук, два спрайта ног, спрайт туловища и спрайт головы, итого 6 отдельных спрайтов)? Или для этого нужно создавать соответствующее количество объектоа (6 в случае приведенного примера), и уже к ним привязывать спрайты?
Заодно может подскажете, из вашего опыта или вычитанных где-нибудь мудростей, каким количеством объектов на комнату следует ограничиваться?
Аноним 23/11/17 Чтв 08:15:36 #144 №457954 
>>457953
Можно собирать из спрайтов посредством эвента draw, но это тот еще гемор.
Лучше писать контроллер, который бы собирал персонажа из объектов, проще манажить будет.
Аноним 23/11/17 Чтв 19:40:00 #145 №458077 
Аноны, там сейчас в стиме распродажа, поэтому решил купить дэсктоп версию. Что означает галочка In-App Purchases? Меня не наебут, заставив платить за что-либо ещё?
Аноним 23/11/17 Чтв 21:28:05 #146 №458106 
>>458077
Не наебут
Аноним 23/11/17 Чтв 21:33:24 #147 №458111 
>>439561 (OP)
покажите САМЫЕ КРАСИВЫЕ игры на геймейкере
Аноним 23/11/17 Чтв 21:34:20 #148 №458114 
>>458111
hyperlight drifter норм
Аноним 23/11/17 Чтв 23:28:36 #149 №458159 
>>458111
http://store.steampowered.com/app/293680/Cinders/
Аноним 23/11/17 Чтв 23:37:09 #150 №458160 
>>458114
>>458159
красиво. а сколько человек сколько месяцев их делали?
Аноним 23/11/17 Чтв 23:48:37 #151 №458162 
>>458160
возьми и напиши им
Аноним 24/11/17 Птн 13:14:07 #152 №458250 
>>457512
Неебу как относительно Phaser, но производительность неплохая. Правда пришлось править сгенеренный html код ручками т.к. какого-то хуя канвас сглаживался по-умолчанию что пиксельной игре не нужно.
Аноним 24/11/17 Птн 20:56:03 #153 №458327 
Пацаны, а если я буду учиться по 1.4 (мануалов больше), то потом смогу с полученными знаниями перекатиться в двойку?
Аноним 24/11/17 Птн 21:05:52 #154 №458328 
>>458327
Да, там практически идентично все в плане кода (с небольшими исключениями).
Двойка просто сильно удобнее сама по себе.
Аноним 24/11/17 Птн 23:33:54 #155 №458343 
>>458328
Спасибо, друг.
Аноним 26/11/17 Вск 02:30:01 #156 №458517 
966C8HzRC8.jpg
>>439561 (OP)
Вопрос к специалистам. Как реализовать редактор уровней в gms?
Аноним 26/11/17 Вск 03:12:35 #157 №458522 
>>439561 (OP)
>2
Язык-то добавили или так на ЖМЛ и сидите?
Аноним 27/11/17 Пнд 04:18:39 #158 №458663 
Жмл более чем достаточно для создания игр.
Аноним 27/11/17 Пнд 13:59:22 #159 №458708 
>>458522
Так-то ГМЛ норм на самом деле, хотя и не хватает нормального ООП конечно. Частично это компенсируется системой эвентов. Но приходится писать скрипты вне объектов, чтобы имитировать методы.
Итого жить можно, но можно и лучше.
Аноним 29/11/17 Срд 05:40:01 #160 №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;

}
}
Аноним 29/11/17 Срд 15:59:02 #161 №459070 
>>459023
1) Направление взгляда вынеси в отдельную переменную +1/-1, тогда просто будешь умножать на него и не нужно будет дублировать кучу кода.

2) Вместо A == B or C должно быть (A == B) or (A == C)
Аноним 03/12/17 Вск 15:16:18 #162 №459541 
>>459070
Спасибо за ответ, но я уже разобрался. И опять застрял, но теперь нет идеи.:(
Аноним 07/12/17 Чтв 04:53:10 #163 №460214 
>>457559
Первый That Level Again на libgdx сделан. Что еще расскажешь ыксперд?
>>457498
На первый такая же цена. Мне он правда по акции достался за 25$ весь комплект. Проф-версия, андроид и все-все-все, кроме iOS. Правда без интеграции со стимом, но через год дали и её. Надо просто подождать распродажи.
Аноним 07/12/17 Чтв 06:21:19 #164 №460215 
>>457539
> Любая хуевая игра отобьет эти шесть тысяч с головой
BLASTER COP
Аноним 07/12/17 Чтв 11:37:01 #165 №460241 
>>460215
почаще издавайтесь у дагов
Аноним 07/12/17 Чтв 11:44:50 #166 №460243 
>>460241
ну нас остальные бы опустили так, что мы б в обнимочку повесились с горя
Аноним 07/12/17 Чтв 12:15:16 #167 №460250 
>>460243
как же вы заебали уже. Сами бы издались и профит был в несколько раз выше гарантированно. Хотя, если ты ленивое хуйло и тебе настолько похуй,что ты слил игру дагам, то может быть и нет.
Аноним 07/12/17 Чтв 12:29:21 #168 №460251 
>>460250
бля, теперь и поныть на моих двачах не дают, ну надо же! ладно, ладно, понел.
Аноним 07/12/17 Чтв 12:40:12 #169 №460252 
>>460251
То-то же. По поводу заработка, если ты вдруг не веришь - загугли nikita ghost rus. Есть такой говнодел в стиме, который клепает говно со скоростью света и издается сам. Вряд ли бы он стал делать то, что не окупается рака яиц ему
Аноним 07/12/17 Чтв 12:46:33 #170 №460256 
>>460252
видел этого хуесоса. но с габендиректом он скорее всего обнищает такие суммы вливать.
Аноним 07/12/17 Чтв 22:26:24 #171 №460355 
>>460256
да нихуя подобного, он через директ залил все, что через грин не пролезло и не думает останавливаться судя по всему
Аноним 09/12/17 Суб 14:39:28 #172 №460641 
> That Level Again
То еще говнецо.
> Первый на libgdx сделан.
1/3. Автор понял какое это говно и съебал на другой движок
Аноним 09/12/17 Суб 14:40:53 #173 №460642 
>>460641 --> >>460214
Аноним 10/12/17 Вск 18:59:13 #174 №460808 
Анончики, нужна помощь. Когда-то давно установил GM 1.4, забросил. Позже пытался работать на Construct, но ограничения разочаровали. Короче, снова взялся за GM, даже успел запилить игрульку. И тут встал вопрос, а откуда я её качал? Может ли быть 1.4 у меня бесплатным и лицензионным? И смогу ли я выложить в плэй маркет эту игру?
Аноним 12/12/17 Втр 07:57:48 #175 №460971 
Создаю игру в которой главный герой бегает за мышкой. Делаю через ДнД и указываю направление движения и скорость, но когда гг доходит до мышки дико дергается. Как сделать чтобы он под мышкой останавливался или есть команда которая указывает путь а не направление?
Аноним 12/12/17 Втр 08:46:14 #176 №460974 
>>460641
Говнецо не говнецо, а слушать будешь стоя а ЕМНИП больше 5кк скачиваний. Так что рассуждения о качестве продукта, имеющего такую оценку аудитории бессмысленно.
К тому же да, 2 и 3 были сделаны на Unity и, как следствие, оптимизированы гораздо хуже. Багов в них полно, в то время как в 1 части их не было вообще. Тут он скорее перескочил из-за удобства и скорости разработки, чем из-за чего-то еще.
Аноним 12/12/17 Втр 08:49:29 #177 №460975 
>>460971
Дык выставь условие, чтоб он за 2-3 пикселя до мыши останавливался. Координаты того и того у тебя есть, если векторную математику не прогуливал на первом курсе, то проблем не будет, а если прогуливал, то загугли.
Просто весь скрипт движения подпихни под условие.
Аноним 12/12/17 Втр 08:50:55 #178 №460976 
>>460808
Если сможешь сделать билд под андроид, то да. Но вряд ли ты сможешь, если он не лицензионный.
Аноним 12/12/17 Втр 09:27:08 #179 №460977 
>>460975
А как взять Икс Игрик центра объекта?
Аноним 12/12/17 Втр 13:52:46 #180 №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);


Аноним 12/12/17 Втр 14:01:39 #181 №460982 
>>460980
Ну или можешь в спрайте выставить центр на центр спрайта и тогда x,y объекта у тебя будет его центром.
Аноним 12/12/17 Втр 14:33:10 #182 №460987 
>>460980
>>460982
Рили не понял нах эта лишняя дрочь, когда в настройках спрайта есть центрирование.
>>460977
Центрируешь спрайт. Центром будет object_name.x и object_name.y
Аноним 12/12/17 Втр 14:43:00 #183 №460989 
>>460987
Поймёшь, когда тебе понадобится что-то кроме центра спрайта.
Аноним 15/12/17 Птн 10:44:20 #184 №461344 
Как в ГМС2 сделать так, чтобы при переключении в полноэкранный не картинка растягивалась, а поле зрения камеры увеличивалось.

Ну и соответственно при ресайзе окна было то же самое - растягиваешь окно, а у тебя не изображение растягивалось, а просто больший кусок игрового поля показывался.
Аноним 15/12/17 Птн 15:12:06 #185 №461373 
>>461344
Играйся к с камерой и application surface
Аноним 15/12/17 Птн 15:17:11 #186 №461375 
>>461373
Точно с камерой? Может надо как-то алгоритм стрельбы персонажа поменять?
Аноним 15/12/17 Птн 23:12:45 #187 №461439 
Аноны, помогите со стрельбой в гмс2. Я столкнулся с проблемой, что пули не летят, когда в комнате включена физика, но без нее ничего не двигается. Как быть?
Аноним 15/12/17 Птн 23:35:10 #188 №461440 
>>461439
так это самое. Если мне не изменяет память, в первом гамаке точно так же. Либо ты делаешь все на встроенной физике и пилишь все под нее, либо пишешь свою физику, либо пользуешься чужой
Аноним 15/12/17 Птн 23:40:03 #189 №461441 
>>461440
2й день юзаю гейм мейкер. Как так изъебнуться, чтобы объект летел в заданном направлении на встроенной физике?
Аноним 15/12/17 Птн 23:40:52 #190 №461442 
>>461441
хуй знает, этим говном не пользовался никогда, всегда либо сам, либо подсматривал у кого. Почитай документацию, мб там поймешь чего
Аноним 15/12/17 Птн 23:42:46 #191 №461443 
>>461442
Из документации я понял чуть больше чем нихуя... Где можно найти чью-ту физику? Форумы там какие
Аноним 16/12/17 Суб 00:11:36 #192 №461448 
>>461443
https://forum.yoyogames.com
Аноним 16/12/17 Суб 00:13:18 #193 №461449 
>>461448
Там еще хуже чем на дваче. Мне предъявили, что я хуйню пощу и вежливо нахуй послали
Аноним 16/12/17 Суб 00:15:15 #194 №461450 
>>461449
так ты не пости, а просто поиском пользуйся, там да, как на дваче. В идеале как можешь делать - гугли на маркете гамака ассет под нужный тебе жанр игры (платформер, шмап и тд) , качаешь и разбираешь его по косточкам, там и найдешь самописные решения. Либо смотри туториалы пиксельпопа, heartbeast'a и шона сполдинга
Аноним 16/12/17 Суб 06:19:36 #195 №461485 
>>461449
Тебе там ясно сказали: либо используешь встроенный физический движок, либо передвигаешь объекты вручную - и даже дали ссылку.
Аноним 16/12/17 Суб 07:28:02 #196 №461487 
>>461485
Тщ майор, можете залогиниться
Аноним 16/12/17 Суб 09:45:27 #197 №461491 
>>461441
ты юзаешь movedir_x и movedir_y?
если да, то изменению параметров x и y на физоне делается не через x += и y+=, а через phy_position_x += и phy_position_y +=, параметры в твоем случае равнозначные
Аноним 16/12/17 Суб 10:43:05 #198 №461494 
>>461491
Ну я phy_poisition и юзаю всегда...
Аноним 16/12/17 Суб 10:47:04 #199 №461496 
image.png
>>461491
Ну только пули работают в моем понимании при отключенной физики в комнате, а phy_position не работает без физики
Аноним 16/12/17 Суб 11:49:07 #200 №461498 
>>461496
если пули физический объект, то без включенной физики в комнате они работать как надо НЕ будут
если не физический, то ты прописываешь координаты x += и y+=
Аноним 16/12/17 Суб 11:53:34 #201 №461500 
>>461498
я юзал move_towards_point, оно двигает в сторону курсора, но при x += не будет же лететь в указанном направлении
Аноним 16/12/17 Суб 11:55:15 #202 №461501 
>>461496
Для платформера вообще не нужна физика, начнём с этого. Если что-то перемещается, это не значит, что надо использовать физ. движок.

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

Правильное решение: убери физику с персонажа и двигай его так же, как и пулю - изменением координат.
Аноним 16/12/17 Суб 11:58:12 #203 №461502 
>>461501
>Правильное решение: убери физику с персонажа и двигай его так же, как и пулю - изменением координат
А оно разве не будет как слайд шоу?
Аноним 16/12/17 Суб 12:19:30 #204 №461506 
>>461500
хуевый выбор, чую, если сдвинешь курсор, то пули тоже изменят направление
лучше высчитывай направление один раз исходя, например, из угла отрисовку спрайта оружия, если оно поворачивается, и используй lengthdir
>>461502
не будет, движение просчитывается каждый кадр, никакой разницы между физикой и её отсутствием тут нет
Аноним 16/12/17 Суб 12:27:38 #205 №461511 
>>461506
С пулями все норм, они меняют направление, если прописать mp_potential_step
Аноним 16/12/17 Суб 12:29:49 #206 №461512 
>>461511
в любом случае физон тут лишний, если вызывает такие проблемы
Аноним 16/12/17 Суб 12:31:38 #207 №461513 
>>461501
А как тогда возвращать гг на землю при прыжке без физики?
Аноним 16/12/17 Суб 12:44:47 #208 №461515 
>>461513
умножаешь вертикальную скорость на число меньше 1, где-то 0.3 или 0.25
только gravity его не называй, это уже вшитое
Аноним 16/12/17 Суб 12:46:48 #209 №461516 
>>461515
ой, бля, зачеркните
прибавляешь, не умножаешь
Аноним 16/12/17 Суб 12:47:56 #210 №461517 
>>461516
тогда каждый фрейм скорость будет уменьшаться на 0.3, типа, стартовая -8, следующий кадр -7.7, -7.4 и так далее
Аноним 16/12/17 Суб 14:48:39 #211 №461541 
Аноны, кто сейчас делает игры могу предложить свою помощь. Сам овощ нихуя рифма, ничего не могу сам сделать за не имением идей. Если у вас есть идея готов помочь реализовать. Связаться можно по почте [email protected]
Аноним 16/12/17 Суб 14:55:22 #212 №461544 
>>461541
Если согласен помогать 3м школьникам с охуительными амбициями и хуевыми знания гейм мейкера, за нихуя, ради призрачного профита ввиде стартапа на патреоне и последующей выгрузки игры в стим, то велком
/Чел, разосравшийся в этом треде с физикой
Аноним 16/12/17 Суб 15:04:32 #213 №461546 
>>461544
Как связаться? Есть тим спик дискорд
Аноним 16/12/17 Суб 15:05:46 #214 №461547 
>>461546
Кстати живу на Камчатке и имею часовой пояс + 12 У ДС + 3 если что
Аноним 16/12/17 Суб 15:14:58 #215 №461549 
>>461547
Ля, ну если +12, то дискорд нн прокатит, давай я тебе на почту напишу лучше
Аноним 16/12/17 Суб 15:16:30 #216 №461550 
>>461549
А что не так? Сейчас зайти могу
Аноним 16/12/17 Суб 22:31:47 #217 №461611 
>>461501
Блять у меня теперь вообще гг распидарасило. Он ебашит без остановки во все стороны и ему абсолютно поебать на все преграды и он пролетает сквозь все объекты
Аноним 16/12/17 Суб 22:51:33 #218 №461614 
В написании своей физики, кстати, нет ничего сложного. Там буквально десяток строчек и все будет работать заебись. Главное пару принципов использовать и будет красота.
sageАноним 16/12/17 Суб 23:46:54 #219 №461624 
>>461611
Почитай мануал, пройди несколько туториалов, скачай пример платформера и разбери - потом начинай делать своё.
Аноним 18/12/17 Пнд 22:19:32 #220 №461873 
Всё не даёт покоя этот калечный редактор изображений. Как работать с ним? У него же ограниченное число пикселей на изображение, как я понял. Есть способ работать через другую программу, чтобы делать анимацию по кадрам? Интересует именно функция onion layers.
sageАноним 18/12/17 Пнд 22:48:07 #221 №461875 
>>461873
Не используй совсем. Или жди, пока допилят.
Аноним 19/12/17 Втр 06:46:40 #222 №461901 
>>461875
Ну бля, работают же как-то люди. Вопрос в том, как.
Аноним 20/12/17 Срд 11:47:19 #223 №462083 
Есть где скачать для пиратобояр вторую версию? А то когда последний раз смотрел (давно) не было ещё.
Аноним 20/12/17 Срд 15:27:41 #224 №462117 
>>462083
Там анальный дрм
Аноним 20/12/17 Срд 16:07:49 #225 №462125 
>>462117
Мб есть добрые люди на каких-нибудь сайтах, кто общедоступную версию выложил?
Аноним 20/12/17 Срд 18:28:23 #226 №462157 
Собирал кто пустой проект в apk на андроид? Какой размер пустого выходит?
Аноним 20/12/17 Срд 21:51:33 #227 №462193 
>>462157
Во второй хз, в первой если онли ARMV7 + x86 то 2мб
Аноним 21/12/17 Чтв 08:27:35 #228 №462232 
>>462125
Ты блять тупой? Дрм там не просто так для галочки
Аноним 21/12/17 Чтв 11:50:09 #229 №462262 
>>462232
Хуя ты восторженный даун. В этом мире существуют тысячи игр и прочего контента с дрм, но это не мешает пиратам такую защиту снимать.
мимо
Аноним 21/12/17 Чтв 18:56:50 #230 №462368 
>>462232
Ты блять в послание вникни, я блять написал про общедоступный аккаунт. Такая хуйня есть с играми на яблоки
Аноним 23/12/17 Суб 12:38:49 #231 №462547 
>>462262
в первом тоже была защита. просто второй никому не нужен, первого и так хватает
Аноним 25/12/17 Пнд 11:52:52 #232 №462874 
Бамп-антивайп.
Аноним 26/12/17 Втр 12:45:30 #233 №463156 
Ньюфаг в треде. Раскидал по комнате тайлы, поместил туда же обЪект с игроком и запустил для проверки. Игрока почему-то не видно. Что не так?
Аноним 26/12/17 Втр 19:07:59 #234 №463424 
>>463156
Мы экстрасенсы?
Аноним 27/12/17 Срд 00:40:37 #235 №463469 
>>463424
Да я уже и сам разобрался.
Ещё такой момент: с чем может быть связанно отталкивание игрока от стенки, если напирать на неё? Если медленно пододвинуть объект к стене и затем двинуть его, игрока вообще вытолкнет за стену.
Аноним 27/12/17 Срд 15:39:06 #236 №463602 
Делаю платформер, на данный момент коллизии сделаны с помощью объекта стены. Хочу переделать коллизию на тайлы.
У меня есть движущиеся платформы, которые не представляю, как сделать тайлами.
В связи с этим два вопроса.
1) Будет ли прирост производительности, если статические стены (коих 90%) заменить тайлами, а движущиеся оставить объектами?
Тогда, получается, мне нужно будет в коде проверять коллизию дважды - на тайлах и на объектах. Но ведь объектов-стен теперь будет на порядок меньше. Стоит ли пытаться?
2) Можно ли сделать движущиеся платформы тайлами?
Аноним 27/12/17 Срд 15:48:48 #237 №463603 
>>463602
1) будет
2) нельзя. Оставь движущуюся платформу объектом - остальное тайлами.
Бамп треду. Аноним 31/01/18 Срд 10:16:31 #238 №472064 
1.png
Runner 2018-01-31 09-41-56-12 (1).mp4
Runner 2018-01-31 09-48-26-45 (1).mp4
Как я свет в гамаке анимировал.
Аноним 31/01/18 Срд 11:39:25 #239 №472080 DELETED
>>472064
А где же HDR и "игра палитрой" всего экрана?
Аноним 31/01/18 Срд 12:23:02 #240 №472088 
>>472064
заебись
Аноним 31/01/18 Срд 14:25:38 #241 №472109 
>>472080
Как я вилкой чистить буду?
Расскажи, что имеешь ввиду, а ещё лучше дай туториал на то, как это сделать в.
Аноним 03/02/18 Суб 07:59:07 #242 №472709 
image.png
image.png
Как сделать чтобы герой был поверх верхних стен, но под нижними стенами, как на пикриле?
Аноним 03/02/18 Суб 09:57:24 #243 №472713 
>>472709
Простейший шейдер. Можешь навелосипедить с draw_sprite_part(), но будет совсем не гибко.
Аноним 03/02/18 Суб 12:22:17 #244 №472725 
>>472709
Блин, у тебя же туториал открыт. Смотри как сделано.

>>472713
draw_sprite_part() и шейдер. Всё так.
Аноним 03/02/18 Суб 12:27:14 #245 №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);

Но они там делают какое-то извращение, имхо.
Аноним 03/02/18 Суб 12:27:27 #246 №472727 
>>472725
Я шото прихуел с того, что там есть, поэтому тут и спросил
Аноним 03/02/18 Суб 13:26:13 #247 №472744 
>>472727
Знаешь, я сейчас открыл их туториал и тоже прихуел. Но это не значит, что не надо изучать как там что сделано - у них есть решения, охуенно экономящие фпс. Я этот гайд ковырял когда освещением занимался. В конце концов сделал всё на порядок проще, но их приёмы с растягиваием и блуром сурфейса я запомнил.

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

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

Аноним 03/02/18 Суб 19:01:33 #248 №472790 
Как работает ds_list_create? У меня он строку как то неправильно распознает, если количество значений поменялось.
Аноним 03/02/18 Суб 20:04:38 #249 №472795 
>>472790
Ты нормально вопрос задай.
Аноним 03/02/18 Суб 20:07:50 #250 №472797 
>>472795
Я решил сделать импорт старых сохранений, все по порядку разобрал, но в некоторых случаях ds_list_find_value получает не те значени, какие надо
Аноним 04/02/18 Вск 01:23:44 #251 №472843 
>>472797
Так, уже речь не про ds_list_create, значит?

Сделай ещё попытку, всё равно не получилось вопрос задать. И не забывай, ты всегда можешь заглянуть внутрь своих дата структур через дебагер.
Аноним 05/02/18 Пнд 15:15:57 #252 №473062 
Я догадываюсь, что поступаю как мудак, если на самом первом этапе повторения уроков лезу с вопросами, но с другой стороны это сообщение можно просто проигнорировать, если что, а может кому-то как раз нечем себя занять и он мне поможет.

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

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

Я же хочу включать idle анимацию. Понятно, что надо просто прописать sprite_index = spr_player_idle; но у мня их две штуки, чтобы игрок оставался в левой idle анимации после того, как шел влево и в провой idle анимации после того, как шел вправо. Как это сделать?
Аноним 05/02/18 Пнд 17:29:10 #253 №473091 
>>473062
if image_xscale > 0 {
sprite_index = idle_right
} else {
sprite_index = idle_left

Это если ты его разворачиваешь через скейл
Аноним 05/02/18 Пнд 17:51:03 #254 №473099 
>>473062

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

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

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






Аноним 05/02/18 Пнд 17:52:16 #255 №473100 
>>473099
тьфу ты.

if (!key_right and !key_left) {
sprite_index = spr_idle; //меняй спрайт на анимацией idle
image_speed = 1;
}
else{
sprite_index = spr_run; //меняй спрайт на спрайт бега
image_speed = 1;
}
Аноним 05/02/18 Пнд 18:25:55 #256 №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 и вопрос по анимациям остался, т.к. он там удары не стал анимировать. С анимацией ходьбы/бега все понятно: нажимаешь вправо - проигрывается анимация вправо, нажимаешь влево - проигрывается анимация влево, а вот с ударами как? Как сделать, чтобы при нажатии одной и той же кнопки удара игра понимала, какую именно из анимаций проигрывать? Короче мне надо еще уроков по гейм мейкеру, в этой серии он многих вещей не касается.
Аноним 05/02/18 Пнд 20:50:40 #257 №473154 
Подскажите пожалуйста. Вот я покупаю гейммейкер 2 за 1500 рубасов в стиме и могу проддавать эти игры? Меня не нагнут за это?
Аноним 05/02/18 Пнд 21:40:30 #258 №473198 
>>473154
за что тебя нагибать?
Аноним 05/02/18 Пнд 21:53:01 #259 №473200 
>>473198
Всякая фигня с лицензиями
Аноним 05/02/18 Пнд 22:25:21 #260 №473208 
>>473154
да. Проблем нет, брат жив
Аноним 06/02/18 Втр 09:46:53 #261 №473291 
>>473104
>не совсем понимаю твой код.

В гамаке есть keyword- sprite_index - указывает на спрайт объекта. При помощи него ты можешь менять спрайт объекта когда захочешь, а не только при создании объекта.
Аноним 06/02/18 Втр 14:57:48 #262 №473348 
Посоветуйте туториалы по созданию игры типа Lone Survivor, т.е. перемещение по одной оси, стрельба, взаимодействие с объектами, инвентарь, диалоги и т.д.
В сети достаточно подробных туториалов для нубов, по которым даже человек абсолютно без опыта программирования может повторить шаг за шагом процесс создания игры в гамаке, но те что я видел, обычно для платформеров, изометрических рпг или топ-даун шутеров.
Аноним 06/02/18 Втр 15:35:06 #263 №473353 
>>473348
Бери туториал для платформера и не делай прыжки. В чём проблема?
Аноним 07/02/18 Срд 13:42:26 #264 №473547 
>>473353
https://youtu.be/G90wXOwPPVE?t=6m6s
Нахуя он создает вериабл b = -1; ?

Получается он дальше пишет
if (image_xscale = 1)
-1.direction = 0;
} else {
-1.direction = 180;
}
что блядь это вообще должно означать?
Аноним 07/02/18 Срд 14:13:39 #265 №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 там, где должно быть ключевое слово. Не потому, что работать не будет, а потому что в последствии, вернувшись к своему коду через пару месяцев, тебе будет легче в нём разобраться.




Аноним 07/02/18 Срд 14:31:49 #266 №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 и предавай объекту, либо у объекта делай "дополнительный приэйт ивент".

Но это уже другая история, этим ты будешь заниматься потом. Пока кури туториалы.
Аноним 07/02/18 Срд 14:57:35 #267 №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 это ссылка на твою комнату.
И так далее.



Аноним 08/02/18 Чтв 15:16:26 #268 №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;
}
можно придать заданное направление (например для удара), скорость (для пули) и т.д.
Аноним 08/02/18 Чтв 15:43:21 #269 №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]?" и не вспоминаешь "а я этот же аларм использовал для кулдауна регенерации здоровья, надо поменять." У тебя всё в криэйт ивенте хранится.


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

Аноним 08/02/18 Чтв 17:14:51 #270 №473854 
>>473814
За совет спасибо. Про timer я вообще не знал, про алармы узнал из туториалов в связи с этим и использовал. В принципе конкретно в этом случае с врагом у меня это временная мера, пока враг представляет собой красный прямоугольник который бьет меня оранжевым прямоугольников. В будущем планирую привязать obj_enemy_hit к кадру анимации, в которой враг будет бить, так что этот аларм можно будет спокойно вырезать.

Но на всякий пожарный уточню, алармов всего 12 ведь не на всю игру, а на конкретный объект? То-есть alarm[0] прописанный для obj_player не имеет никакого отношения к alarm[0] прописанного для obj_enemy, гейммейкер путать их не будет и они прекрасно живут своей жизнью независимо друг от друга?
Аноним 08/02/18 Чтв 18:10:17 #271 №473880 
>>473854
На объект.

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

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


Аноним 09/02/18 Птн 20:08:59 #272 №474263 
Хм... создал сейчас вторую комнату и перемещение между ними через дверь, все работает, но на душе как-то неспокойно. Я решил чтобы не засирать лишними эвентами obj_player создать коллижн ивен внутри самой двери
if (instance_exists(obj_player)) and (key_use) {
room_goto(rm_f1_garage);
obj_player.x = 180;
}
Только после того, как все опробовал и убедился, что плеер перемещается и хп у него остается ровно тоже количество что и было в предыдущей комнате, задумался а почему оно вообще работает. Ведь этот коллижн ивент запускается из самой двери, почему room_goto перемещает именно плеера в другую комнату, а например не саму дверь? Такой код вообще нормальный или я потом с ним наебусь?
Аноним 09/02/18 Птн 21:34:40 #273 №474287 
>>474263
Потому что это не объект игрок перемещается куда-то, а исчезает одна комната и на её месте появляется другая.

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

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

Аноним 09/02/18 Птн 21:43:46 #274 №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 новой комнаты.

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




Аноним 09/02/18 Птн 21:53:58 #275 №474293 
>>474263
>Такой код вообще нормальный или я потом с ним наебусь?

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

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

Аноним 09/02/18 Птн 22:09:46 #276 №474301 
>>474287
>Потому что это не объект игрок перемещается куда-то, а исчезает одна комната и на её месте появляется другая.
>Если на каком-то объекте стоит галочка persistent, этот Теперь все понятно, на obj_player у меня как раз стоит persistent. Makes total sence.
>>474289
Из этого поста пока мало что понял, но не буду рашить. У меня еще много базовых вещей впереди на освоение. Вернусь к этому чуть позже.
Аноним 16/02/18 Птн 19:01:30 #277 №476840 
Аноны, помогите сделать движение рук. Нужно, чтобы пока нажата ЛКМ, при передвижении курсора справа от игрока его руки целились в сторону курсора, а когда курсор переходит в левую часть экрана, спрайт менялся на противоположный
Аноним 16/02/18 Птн 21:13:12 #278 №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);
}
Аноним 17/02/18 Суб 22:50:22 #279 №477110 
>>476885
Может еще подскажешь, как сделать спрайт рук отдельно от основного
Аноним 17/02/18 Суб 23:03:11 #280 №477115 
>>476885
И еще при нажатии спрайт выворачивается, но я юзал похожую функцию для поворотов. Если нажать в левую часть, то после нажатия кнопок вправо и влево используется противоположное направление
Аноним 18/02/18 Вск 00:19:01 #281 №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

Аноним 25/02/18 Вск 22:47:35 #282 №480204 
Вопрос мёртвому треду: что там по turn-based rpg? Есть гайды о том, как реализовывать битву с действиями и т. д.?
мимонуфак
Аноним 26/02/18 Пнд 10:02:56 #283 №480248 
>>480204
Сам пиши, ничего в этом сложного нет
Аноним 26/02/18 Пнд 11:20:07 #284 №480276 
>>480204
Хотел побыть хорошим полицейским и по-доброму ответить на твой вопрос. Но просто не могу.

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

Попробуй задать вопрос ещё раз, при этом опиши то, что ты хочешь сделать, что именно у тебя не получается, опиши свои варианты подхода к проблеме и почему они не сработали.
Аноним 26/02/18 Пнд 14:01:01 #285 №480312 
>>480248
Не знаю ни одного ЯП, в гамак вкатился из-за рекомендаций, мол, очень хорош для новичков.
>>480276
Меня интересует система битв в целом: инициация боя, организация ходов, использование скиллов и предметов из инвентаря, накладывание эффектов, вот это вот всё. Не знаю ничего.
Аноним 26/02/18 Пнд 14:40:58 #286 №480331 
>>480312
И ты ожидаешь, что я тебе тут книгу напишу про то, как это делать, или дам ссылку на гайд "как сделать заебись"?

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

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

Аноним 26/02/18 Пнд 14:51:20 #287 №480335 
>>480331
>И ты ожидаешь, что я тебе тут книгу напишу про то, как это делать, или дам ссылку на гайд "как сделать заебись"?
Я какбэ в первом посте писал, что мне нужны гайды по тбрпг, блять. Почему харкачеры так привыкли искажать всё.
>При том, что ты даже сам не можешь написать, что ты хочешь сделать.
Я бы описал концепт, если бы беседовал с кем-нибудь индивидуально, но меня в первую очередь интересуют базовые механики, о которых я уже говорил.
>Тогда запускай самые первые туториалы по гамаку от Спалдинга и делай астероиды.
Зачем мне аркадные механики в турн бэйсед рпг, объяснишь мне? Все эти коллизии и прочую хуйню я и так освоил, меня интересуют углублённые знания.
Аноним 26/02/18 Пнд 15:11:27 #288 №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 человек сидит. В общей сложности.

Я всё ещё добрый полицейский. Но это в последний раз.
Аноним 26/02/18 Пнд 15:15:25 #289 №480347 
>>480344
Ну, в таком случае мне нужен анон, с которым я смогу работать индивидуально. Тогда я уже смогу задавать ему конкретные вопросы, но один хуй никто не захочет этим заниматься.
Аноним 26/02/18 Пнд 15:20:24 #290 №480351 
>>480347
Здесь нет никого, кроме меня. Захочу ли я тебе что-то объяснять зависит только от тебя.
Аноним 26/02/18 Пнд 15:22:07 #291 №480352 
>>480351
И что же мне нужно делать, чтобы добиться твоего одобрения?
Аноним 26/02/18 Пнд 15:26:53 #292 №480353 
>>480352
Задавать правильные вопросы вот по этой инструкции >>480276
Аноним 26/02/18 Пнд 15:28:40 #293 №480354 
>>480353
Мог бы, но не хочу палить концепт. Могли бы обменяться мылами и поговорить наедине.
Аноним 26/02/18 Пнд 15:37:19 #294 №480367 
>>480354
>Мог бы, но не хочу палить концепт.
Смирись с тем, что твой концепт не интересен никому.

>Могли бы обменяться мылами и поговорить наедине.
Я сижу на анонимном форуме не потому, что хочу меняться мылами и говорить с кем-то наедине.
Аноним 26/02/18 Пнд 16:13:40 #295 №480394 
>>480354
>Мог бы, но не хочу палить концепт.
Ну бля, ну так хотелось спиздить у тебя идею очередной рпгшки, ну чо вы опять обламываете(9(
Аноним 26/02/18 Пнд 16:19:21 #296 №480398 
>>480394
скоро будет ажиотаж вокруг рпг, успей вкатиться
Аноним 26/02/18 Пнд 16:21:12 #297 №480401 
>>480398
Ага, скоро ведь девяностые, рпг на пике своей популярности
Аноним 26/02/18 Пнд 16:27:44 #298 №480407 
>>480394
Я просто не хочу шкварить своё говноподелие об двач, тем более /gd.
Аноним 26/02/18 Пнд 16:28:52 #299 №480409 
>>480407
Но у тебя нет никакого поделия. И не бует.
Аноним 26/02/18 Пнд 16:38:55 #300 №480416 
>>480409
Ну раз ты так сказал.
Аноним 27/02/18 Втр 14:57:08 #301 №480762 
Подскажите как реализовать стрельбу в платформере. Меня интересует даже не столь техническая, как практическая сторона. Вот у меня есть персонаж, и он может стрелять во все стороны. Как лучше сделать повороты рук, чтобы это не выглядело будто у гг суставы вращаются во все стороны? Может есть примеры там в каких-то играх или видео какие-нибудь
Аноним 27/02/18 Втр 16:04:11 #302 №480777 
>>480762
Ты определись, тебе стрельбу нужно реализовывать или повороты рук?

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

А лучше всего - нарисовать каждый кадр положения рук и тела для стрельбы, иначе будет выглядеть как говно.
Аноним 27/02/18 Втр 16:40:54 #303 №480813 
>>480777
Повороты рук во время стрельбы. Рисовать каждый кадр смысла нету, потому что тогда нельзя будет поворачиваться и стрелять одновременно
Аноним 27/02/18 Втр 17:21:36 #304 №480819 
>>480813
>>потому что тогда нельзя будет поворачиваться и стрелять одновременно

Чтоблять?

Ты сначала объясни, что ты хочешь, картинки запости. Понять что-то из твоего лепета невозможно.
Аноним 27/02/18 Втр 21:16:33 #305 №480892 
>>480819
Да хуле непонятно-то? Мне надо чтобы при стрельбе можно было вертеть руками во все стороны и это не выглядело по-уебански. Я пытался сделать это отдельным спрайтом рук и получилась хуйня. Вот я и спрашиваю другие способы сделать это
Аноним 27/02/18 Втр 21:33:25 #306 №480895 
>>480892
Делай 3д хуле. Как ещё можно сделать не рисуя отдельные кадры для каждого положения, еблан?
Аноним 27/02/18 Втр 21:41:19 #307 №480897 
>>480895
У тебя 2d вид сбоку? Или 3d? Или изометрия? Ты не способен видео залить на двач? Иди учись.

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

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

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



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

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

Аноним 27/02/18 Втр 23:17:17 #308 №480920 
>>480897
>Каждые 10 градусов поза чуть-чуть меняется
Ну и это будет выглядеть дёргано и будет ощущение, что пуля летит не из дула
>Где ты видел, чтобы кто-то за спину себе стрелял? Как ты вообще себе это представляешь?
Ну так за спиной у меня спрайт меняется на противоположный
Аноним 27/02/18 Втр 23:47:53 #309 №480926 
>>480920
>Ну и это будет выглядеть дёргано и будет ощущение, что пуля летит не из дула

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

Чтобы это повторить мне, например, нужно недели две рисовать. У меня уже опыт некоторый есть со спайном. Тебе - два месяца понадобится. Готов? Вперёд!
Аноним 02/03/18 Птн 21:38:56 #310 №482212 
image.png
Поднять паруса!!!
https://rutracker.org/forum/viewtopic.php?t=5528246
Аноним 02/03/18 Птн 21:41:13 #311 №482213 
>>482212
ЙАРРРРРРРРРР
Аноним 02/03/18 Птн 22:18:42 #312 №482222 
>>482212
Хотел посидеть на раздаче, но самому не скачать.
Аноним 02/03/18 Птн 23:34:58 #313 №482231 
>>482222
Я сидел на раздаче, но у меня она перестала идти
Аноним 02/03/18 Птн 23:36:41 #314 №482232 
>>482222
Да че ты врежч, скорость около 1мб
Аноним 03/03/18 Суб 00:51:34 #315 №482241 
>>482212
посижу на раздаче с недельки две, если дадите докачать до фулла
Аноним 03/03/18 Суб 19:35:55 #316 №482368 
Screenshot20180303-1934131.jpg

Аноним 03/03/18 Суб 20:24:06 #317 №482376 
щитпостинг
Аноним 03/03/18 Суб 20:28:09 #318 №482378 
Соре, я просто даунич немного. Кстати, я раздаю. Качайте, сейчас скорость норм должна быть
Аноним 05/03/18 Пнд 07:52:26 #319 №482800 
Кто-нибудь знает, как в GMS2 под windows сохранить файлы где-то кроме "User\AppData\Local\project_name"? Разумеется, без вызова диалога. Нашёл для обхода этого "сэндбокса" несколько расширений от пользователей, но они все на гейммейкер версии 1.4. Буду очень признателен, если кто подскажет что-нибудь.
Аноним 14/03/18 Срд 00:08:03 #320 №486329 
>>482212
Всё скачалось (скорость 1мб), сижу на раздаче.
Аноним 14/03/18 Срд 10:46:08 #321 №486508 
>>472725
>Блин, у тебя же туториал открыт
Это не туториал, а пример.
Аноним 17/03/18 Суб 21:52:22 #322 №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;
Аноним 17/03/18 Суб 21:53:34 #323 №487983 
>>487982
Ёбаный курсив. Там в двух местах есть звёздочки, если что.
Аноним 17/03/18 Суб 23:36:55 #324 №487995 
И что тебе не нравится? Ты же сам пишешь, что у тебя движение по х возможно только если нет движения по у.

if(moveY == 0){ moveX = (input_right - input_left) spd; }

Вообще это пиздец - то что ты написал. Надеюсь ты первый день просто как кодить учишься.
Аноним 18/03/18 Вск 00:34:39 #325 №488007 
>>487995
>Ты же сам пишешь, что у тебя движение по х возможно только если нет движения по у.
Бля, точно. Спасибо, не заметил.
>Вообще это пиздец - то что ты написал. Надеюсь ты первый день просто как кодить учишься.
Учусь по гайдам.
Аноним 18/03/18 Вск 01:16:48 #326 №488012 
Артик.png
>>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)



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

Рандомпик
Аноним 18/03/18 Вск 02:24:40 #327 №488018 
>>488012
Скорее всего ты не проверяешь существуют ли инстансы перед тем как ими манипулировать. Или не назначаешь или неправильно назначаешь переменную creator. Или у другого объекта просто нет такой переменной как allie status. Или ты случайно назначил юнит родителем эффектора или еще какие-нибудь проблемы с наследованием.
В общем показывай весь код и общий вид объекта эффектора и заодно скрипт который его создает.
Аноним 18/03/18 Вск 02:48:43 #328 №488020 
image.png
image.png
image.png
>>488018
Вот. Только не пугайся кода, я в гмс всего два дня сижу.
Аноним 18/03/18 Вск 03:30:37 #329 №488022 
>>488020
Ну вот смотри, насколько я вижу создаешь ты эффектор однозначно, но создателя ему назначаешь ситуативно, а потом переменную хозяина спрашиваешь однозначно, при этом создаешь эффектор там где гарантированно срабатывает Collision. Creator в таком случае получается инициализированной, но пустой переменной.
Перенеси создание эффектора под скобки боевого статуса и посмотри станет ли лучше.

Аноним 18/03/18 Вск 03:43:35 #330 №488023 
>>488022
Да, я так как раз делал, когда пытался сам баг выловить, в таком случае ошибка все равно вылетает, но позже. Сейчас сделаю и покажу.
Аноним 18/03/18 Вск 03:50:00 #331 №488024 
image.png
>>488022
В этот раз игра хотя бы открылась, хоть и не надолго.

(Алсо, можешь поподробнее объяснить, почему получается, что я ситуативно назначаю, но однозначно спрашиваю? Или какой-нибудь урок/статью может посоветуешь, чтобы разобраться)
Аноним 18/03/18 Вск 04:34:04 #332 №488026 
>>488024
>можешь поподробнее объяснить
Что там объяснять, получается так потому что ты не назначаешь создателя сразу же при создании (и не проверяешь назначен ли он перед тем как запросить статус, но это в данном случае было бы необязательно). То есть effector.creator=id дожно быть на следующей строчке после instance_create(effector), а не по разную сторону фигурных скобок двух-трех разных if else, у которых вся суть в том что код срабатывает только в зависмости от ситуации.

Да и вообще делать это в step не самая лучшая идея, ты создаешь допустим 60 объектов в секунду, а нужен из них только один, только когда срабатывает alarm, соотвественно лучше и перенести в аларм.
Аноним 18/03/18 Вск 04:55:23 #333 №488029 
>>488026
Вау, сейчас сделал как ты сказал, и все заработало. Спасибо тебе огромное, родина не забудет твоего подвига!
Аноним 18/03/18 Вск 14:21:36 #334 №488100 
Untitled.png
Анон, у меня проблема. Делаю анимации, которые разложены в чарлисте, с которого берутся необходимые куски.
Есть объект игрока, который имеет спрайт 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;
}

В итоге получается хуйня, как на пикриле: посередине квадрат, за которым в углу находится персонаж. Жёлтое - коллизия. В чём подвох?
Аноним 18/03/18 Вск 14:34:01 #335 №488106 
>>488100
UPD: отключил родителя, который отвечал за глубину объектов, и квадрат исчез, но персонаж всё ещё в углу.
Аноним 18/03/18 Вск 15:03:34 #336 №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.
Аноним 18/03/18 Вск 15:09:17 #337 №488121 
>>488118
Объясни, пожалуйста, про какой именно оффсет идёт речь. Первый кадр анимации расположен в левом верхнем углу.
Аноним 18/03/18 Вск 15:13:40 #338 №488123 
>>488118
>>488121
Падажжи, оффсета - это центровка? Тот маленький крестик? Теперь понятно. Спасибо, запомнб на будущее.
Аноним 20/03/18 Втр 09:58:31 #339 №488591 
Где-то читал, что для gms2 будет поддержка Нинтендо Сыча. Но ведь Nintendo не дают левым разработчикам выкладываться? Или как?
Аноним 20/03/18 Втр 10:20:50 #340 №488600 
>>488591
> Где-то читал, что для gms2 будет поддержка Нинтендо Сыча. Но ведь Nintendo не дают левым разработчикам выкладываться? Или как?

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

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

После чего с полученным разрешением идешь на форум юнити в закрытый от простого быдла раздел где по ссылке качаешь закрытые компоненты юньки для свитча (нужна версия про, если что).
Аноним 20/03/18 Втр 10:21:15 #341 №488601 
>>488600
>если соне одобрит

Нинтенда, т.е.
Аноним 20/03/18 Втр 10:23:09 #342 №488603 
>>488600

Ну и да, в данном варианте, не забывай что нинтенда по-факту становится твоим издателем и ты будешь обязан выполнять все её пожелания, зарубать по её прихоти свои безумные идеи, реализовывать одно охуительнее другого пожелания нинтенды оптимизировать код и.т.д.
Аноним 20/03/18 Втр 10:27:13 #343 №488606 
>>488603
Форма заявления на анальное рабство здесь:

https://developer.nintendo.com/register/create
Аноним 20/03/18 Втр 16:07:29 #344 №488722 
>>488606
>>488600
>>488603


Йеп. Спасибо огромное.

Стало быть какой-то отдельный Nintendo SDK не нужен и я смогу из "родной среды", в случае чего, портировать под свич?
Аноним 20/03/18 Втр 18:22:37 #345 №488763 
>>488603
Одно из этих пожеланий будет нон стопом ебашить марио
Аноним 20/03/18 Втр 19:15:30 #346 №488784 
>>488763
@
А ТЫ И НЕ ПРОТИВ


Кстати, парни, в GML можно как-то объявлять свои функции? Хочу, например апдейт состояния персонажа вынести в отдельный блок и вызывать его при определённых обстоятельствах (внутри step ивента, но не каждый раз)
Аноним 20/03/18 Втр 19:19:16 #347 №488786 
>>488784
Переформулирую вопрос, ибо я даун. Я наю, что скрипт вызывается как функция. А как работает передача туда значений? Нужно ли это вообще?
Аноним 20/03/18 Втр 23:22:28 #348 №488834 
>>488786
>А как работает передача туда значений?
Слегка через жопу. При вызове скрипта стандартно -- пишешь аргументы в скобках через запятую. А в самом скрипте будет что-то вроде
var xyz=argument0
var qwe=argument1
и так далее.
>Нужно ли это вообще?
Естественно, и возвращать из них значения тоже нужно.
Аноним 20/03/18 Втр 23:58:49 #349 №488839 
>>488834
всё, на самом деле я и сам разобрался. Не привык я к тому, что в документации действительно ВСЁ написано. Я такое наверное только к РенПаю видел, и то там пользовательские вики, а не официалка.


Но всё равно большое спасибо. Я рад что у вас тут дружелюбное коммьюнити.
Аноним 29/03/18 Чтв 19:48:50 #350 №492927 
Привет, парни. Я решил попробовать сделать клавиатурный тренажер, как самое простое, что я смог придумать.

Идея была проста:
два массива, в одном символы допустимые для данной сложности, во втором символы нагенерированные для уровня.
После генерации спавнятся блоки на которые наносятся эти символы по порядку.

Но я э... Видимо, где-то что-то проебал по фактике и мне пришлось перезагружать компьютер, потому что он чуть не загорелся, так и не запустив окошко. Но он так и не выдал ошибки. Я боюсь открывать этот проект у себя :(
чё делать?
Аноним 29/03/18 Чтв 20:32:24 #351 №492937 
>>492927
> мне пришлось перезагружать компьютер, потому что он чуть не загорелся
> если бы волшебники были погромистами
Проиграл чет с этого.
Аноним 29/03/18 Чтв 20:57:45 #352 №492942 
Анон, объясни, как ебануть простейший спрайт с анимацией. Есть меню. В Draw GUI пытался прикрепить анимированный фон, но нихуя не понимаю, что использовать: draw_sprite_ext не работает, вроде. Можешь помочь?
Аноним 29/03/18 Чтв 21:29:43 #353 №492947 
>>492942
>draw_sprite_ext не работает, вроде
такого быть не может
Аноним 29/03/18 Чтв 21:40:49 #354 №492952 
>>492947
Тогда как делать то, что я описал, через него? Объясни, пожалуйста.
Аноним 29/03/18 Чтв 21:44:14 #355 №492955 
>>492952
братан, причин множество. кривой 3д-режим, который не справляется с переходами из него, depth объекта выше задника, прочее говно с view, alpha в 0, крч тонны их. я не смогу угадать. это как если бы ты спросил "почему у меня моделька в юнети не импортируется".
Аноним 29/03/18 Чтв 21:52:43 #356 №492956 
>>492955
Альфа на единичке. Всё что могу сказать.
Если в subimg выставить -1, то спрайт тупо начнёт быстро пролистываться, хотя у меня скорость анимации на единице.
Можешь хотя бы объяснить, как это проворачивать с нуля?
Аноним 29/03/18 Чтв 21:56:35 #357 №492957 
>>492956
>Можешь хотя бы объяснить, как это проворачивать с нуля?
берешь и без задней мысли отрисовываешь.
draw_sprite(x,y, sprite_index, image_index); и всё.
в том то и проблема что инфы от тебя мало вата
Аноним 30/03/18 Птн 06:43:08 #358 №493012 
>>492957
Хорошо, распишу подробнее.
Нужно, чтобы фон растягивался по всей комнате. То есть наверное нужно брать начало в 0,0, плюс высоту-ширину обоев, плюс скейлить. Но как ебануть нормальную анимацию с нужной скоростью?
sageАноним 30/03/18 Птн 11:37:06 #359 №493045 
>>492927
Ты словил бесконечный цикл.
Запускай игру в режиме дебага, можешь даже без брекпоинтов. Когда начнёт адски тормозить дави, переключайся в окно дебагера и дави на паузу.

Вуаля. Далее жамкай f9 пока не поймёшь, где же ошибка.
Аноним 30/03/18 Птн 11:45:41 #360 №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)

Вот тебе счастье
Аноним 30/03/18 Птн 11:46:33 #361 №493048 
>>493047
>draw_sprite_ext(bg_sprite, frame, x, y, bg_xscale, bg_yscale, 0, c_white, bg_alpha)
Аноним 30/03/18 Птн 11:49:30 #362 №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)
Аноним 30/03/18 Птн 18:40:14 #363 №493267 
>>493047
>>493048
>>493051
Анон, всё работает. Добра!
Олсо, ещё заметил, что нужно офсету вычитать, ну или крепить её в центр, но всё равно спасибо.
Аноним 30/03/18 Птн 20:15:26 #364 №493292 
2018.03.30-20.12.mp4
>>439561 (OP)
Здарова, игроделы. Хуй знает, может кто сталкивался с проблемой. Когда объект движется по диагонали, то камера начинает дергаться. В чем проблема то может быть.
Аноним 31/03/18 Суб 18:55:03 #365 №493544 
Анон, где можно посмотреть различные команды для дебаффа? Вот, например, мне нужно, чтобы у меня выводились офсеты объектов с их координатами по y. Как это сделать?
Аноним 31/03/18 Суб 23:02:54 #366 №493578 
>>493292
Подкрути в настройках камеры границы с 200 до 198 и посмотри стало ли лучше. Подгони там же аспект порта под аспект камеры, пусть будет 800х800 например.
Аноним 31/03/18 Суб 23:08:22 #367 №493579 
>>493544
В draw_event объекта пиши draw_text(x+30,y-30,переменная).
sageАноним 31/03/18 Суб 23:48:07 #368 №493584 
>>493292
А я тебе лучше совет дам, чтем этот >>493578

Не используй встроенную гамаковскую камеру. Делай свою.

В этом треде есть всё, что нужно:
https://forum.yoyogames.com/index.php?threads/guide-meet-the-new-camera-system.12269/

sageАноним 01/04/18 Вск 00:13:11 #369 №493588 
>>493544
Вот здесь.

https://docs2.yoyogames.com/index.html?page=source%2F_build%2F2_interface%2F2_extras%2Fdebugging.html

А вообще пиши сам, как этот >>493579 советует. Будет удобней.
Аноним 01/04/18 Вск 13:43:14 #370 №493639 
>>493584
Благодарю. Но я вообще нихуя не шарю пока что в этом. Так что будет сложновато в коде разобраться.
Аноним 01/04/18 Вск 13:50:07 #371 №493641 
>>439561 (OP)
Алсо вопрос. Запарно ли сделать так, чтобы спрайт врага изменялся в зависимости от положения? Например у меня 8 сторон движения и соответственно 8 спрайтов. Какая вообще должны быть логика изменения спрайтов? Мол if direction = значение градуса {
sprite_index = spr_move_top;
}
или что то вроде такого.
Аноним 01/04/18 Вск 15:21:38 #372 №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;
}
}

Можно даже свитч из свитчей, но так код, имхо, более читаемый.
Аноним 08/04/18 Вск 21:08:34 #373 №494790 
Допустим, мне нужен рандомное число от 0 до 60, но мне нужно исключить отрезок от 20 до 40. Как это сделать через irandom_range? Это вообще возможно?
Аноним 08/04/18 Вск 22:00:13 #374 №494793 
>>494790
не уверен в синтаксисе, давно на GML не писал

while true {
var num = irandom_range(0, 60);
if (num < 20 || num > 40) break;
}
Аноним 08/04/18 Вск 23:02:24 #375 №494796 
>>494790
if(irandom(1))
num = irandom(20);
else
num = irandom_range(40, 60);

>>494793
Чет оподливился с этого кода.
Аноним 09/04/18 Пнд 03:34:15 #376 №494815 
>>439561 (OP)
Господа, я тут недавно начал осваивать сурфейсы. Собсна вопрос, как на сурфейсе отрисовывать анимированный спрайт?
Аноним 09/04/18 Пнд 05:18:19 #377 №494817 
>>494815
Отбой, уже сам разобрался
Аноним 09/04/18 Пнд 20:42:31 #378 №494970 
Безымянный.png
>>494796
Не работает нихуя.
У меня есть хуйня, при помощи которой можно выкидывать предметы из инвентаря. Выкидываются они по окружности, как на рисунке, но в красные области по бокам выкидывать нельзя, потому что предмет там застревает с нихуя и его нельзя подобрать. Следовательно мне нужно исключить области от 330 до 30 и от 150 до 210 градусов. Если я пишу
var itemdir;
if(irandom(30)){
itemdir = irandom(150);
} else {
itemdir = irandom_range(210, 330);
}

, то нихуя не работает.
Аноним 09/04/18 Пнд 20:46:10 #379 №494971 
>>494970
Ёбаный высер Абу не может нормально показывать табы. Вот лучше:
var itemdir;
if(irandom(30)){
itemdir = irandom(150);
} else {
itemdir = irandom_range(210, 330);
}
Аноним 09/04/18 Пнд 22:00:49 #380 №494987 
>>494971
Конечно не работает, ты же хуйню написал, а я не знал куда оно тебе нужно и сделал для твоего примера.

Для нового примера сойдет такой код:
rand = irandom_range(30, 270);
if(rand >= 150)
rand += 60;
Аноним 09/04/18 Пнд 22:25:38 #381 №494991 
>>494970
>if(irandom(30))
Ты вообще задумываешься перед тем, как код копипастить?
Аноним 09/04/18 Пнд 22:27:46 #382 №494992 
>>494970
>предмет там застревает с нихуя
Значит у тебя баг в коде, ищи его.
Аноним 09/04/18 Пнд 23:54:16 #383 №495006 
19289794.jpg
>>494992
Уже нашёл, спасибо.
Аноним 10/04/18 Втр 00:30:48 #384 №495008 DELETED
Аноним 12/04/18 Чтв 19:33:35 #385 №495519 
Как убрать определённую составляющую из энумератора? Допустим, у меня код типа такого:
enum item {
item1 = 1,
item2 = 2,
...
item100 = 100,
}

Как мне в irandom_range(1, 100) убрать, скажем, тридцатый номер?
Аноним 12/04/18 Чтв 20:19:46 #386 №495522 
>>495519
Можно сделать

var item = choose(irandom_range(1,29),irandom_range(31,100))

или просто
item = choose(item.item1,item.item2,item.item5)
если веще мало.
Аноним 14/04/18 Суб 02:01:01 #387 №495708 
Если у меня платформер с большим количеством разных состояний персонажа, которые перекрывают базовые механики (например, скиллы, которые блокируют любые другие кнопки во время своего исполнения, кроме определенных "окон", когда можно нажать что-то определенное и зависящее от скилла), то наверное это лучше делать не в одном степе, а каждое состояние перенести на свой скрипт, активирующийся по выполнению определенных условий во время степа, я прав? Не будет ли это нагрузочно для системы (постоянные вызовы скриптов по идее должны отнимать ресурсов)? Просто я пытаюсь как-то весь код степа разбить на состояния и понимаю, что я там очень быстро запутаюсь, отдельные скрипты очень сильно помогут в этом плане.
Аноним 14/04/18 Суб 02:30:49 #388 №495709 
GameMakerStudio 2018-04-14 02-12-40-09.webm
>>495708
Ты не о том паришься.
Разбивай на скрипты и регионы смело.
Я тоже долго парился о такой фигне.
Аноним 14/04/18 Суб 02:50:16 #389 №495711 
>>495709
Да я все время блять не о том парюсь из-за своего ебаного перфекцеонизма. Тем более я еще даже на стадии прототипирования, где по идее велосипедить и костылить вполне норма, но нет блять, мне нужно сразу все в финальной архитектуре и с минимальной нагрузкой на железо. Но в принципе так, как ты скинул, я себе все это дело и представлял. Мде, работа прогером явно не для меня.
Аноним 14/04/18 Суб 11:02:58 #390 №495719 
>>495711
Вот нашел чем удивить. Когда я только начинал, точно так же пытался всё сделать максимально эффективно. Например по мтнимуму вводил новые переменные, они же память занимают! Лучше я одну и ту же переменную буду использовать как таймер для всех фаз и всех состояний. Но это же полная хуйня.

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

И всё равно, когда требуется написать что-то не требующее оптимизаций (инвентарь например, или эффект в паузе) просто кайфую. Писать получается в три раза быстрее, а код, по сути, такой же точно выходит.
Аноним 19/04/18 Чтв 05:53:54 #391 №496394 
Аноны, у меня в Степе при определенном действии вызывается определенный скрипт. Скрипт должен двигать объект с определенным таймингом, по сути мелкими дискретными шагами. Но ведь вызывается он один раз. Как заставить скрипт выполняться несколько раз? Или надо переписывать логику, чтобы он нужное количество раз просто из Степа вызывался?
Аноним 19/04/18 Чтв 21:08:07 #392 №496503 
>>496394
>Как заставить скрипт выполняться несколько раз?
https://docs.yoyogames.com/source/dadiospice/002_reference/001_gml%20language%20overview/401_11_for.html
Аноним 19/04/18 Чтв 23:10:02 #393 №496531 
>>496503
Ну то есть 2 вариант. Жаль. Было бы прикольно, если бы была команда по типу "повторить" выполнение скрипта и писать ее в самом скрипте.
Аноним 19/04/18 Чтв 23:46:29 #394 №496533 
no.png
>>496531
>если бы была команда по типу "повторить" выполнение скрипта
так у тебя степ каждый кадр это делает
Аноним 20/04/18 Птн 00:09:49 #395 №496535 
>>496533
Но мне это нужно не в степе, а внутри самого скрипта, пока степ "спит". А кстати, можно ли вызвать скрипт в теле его самого?
Аноним 20/04/18 Птн 00:40:05 #396 №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, ...);
Аноним 20/04/18 Птн 01:24:00 #397 №496559 
>>496543
Да, я уже проверил, правда оказалось, что это не совсем то, что нужно, потому что без степа теперь скрипт не будет учитывать столкновения, которые могут возникнуть во время движения в скрипте. Так что буду все же вызывать скрипт степом несколько раз.
Аноним 21/04/18 Суб 15:37:41 #398 №496767 
>>458250
Кинешь игру заценить?
Аноним 21/04/18 Суб 16:25:56 #399 №496772 
>>457512
>как Gamemaker экспортирует в html5
Очень хорошо, он из GML генерирует аналогичные функции на js и потом обфусцирует их. Правда, некоторые функции иногда могут не работать.
Аноним 21/04/18 Суб 16:32:10 #400 №496773 
>>457951
Можно использовать скелетные анимации.
Аноним 21/04/18 Суб 20:52:54 #401 №496839 
>>457512
Он это делает весьма непредсказуемо. В моей игре он например отрубил партиклы к хуям. Плюс почему-то добавился статтеринг и хуй ты пойми откуда.
Было играбельно, но как-то вот не радовало.
Переписал на фазере и стало заебись.
Аноним 26/04/18 Чтв 16:21:27 #402 №497356 
>>439561 (OP)
Анон, выручай.
Проснулся из глубокого сна, лол.
В 2011 баловался с GM 8.0., в 2012 купил в стиме game maker stuido за даллары, но так нихуя и не сделал, но потом узнал, что моя лицензия походу стала бесплатной.
Что там сейчас в 1.4? Можно ли на ней делать и релизить бесплатные игры в том же стиме? Можно ли монетизировать рекламой внутри игры?(да, влажные фантазии, просто не смог найти адекватной лицензии). В том же юнити все просто, получаешь больше 100к $ - покупай лицензию.
Или для все этого нужно покупать анальную 2.0 студию?
Аноним 28/04/18 Суб 06:03:39 #403 №497536 
Нахуя нужно Draw_self;
Смотрю гайди, часто пишут. По логике нарисовать объект, но он и так сука есть. Зачем нужно это?
Аноним 28/04/18 Суб 08:06:33 #404 №497541 
>>497536
Потому что draw_self изначально есть у всех объектов, но создав даже пустой скрипт в событии draw, оно продает и тебе необходимо указать его явно, не сделав этого и запустив игру у тебя просто не будет рисоваться тот спрайт который ты указал в настройках объекта
Аноним 28/04/18 Суб 08:06:52 #405 №497542 
>>497541
пропадает*
Аноним 28/04/18 Суб 08:30:55 #406 №497544 
>>497541
Благодарю
Аноним 01/05/18 Втр 08:51:58 #407 №497907 
hHeDFtX.png
Эт чё такое? Я всё понимаю, я абсолютно нормально отношусь к тому, что из бесплатной версии нельзя собрать проекты ни под одну из платформ и ничего против не имею, но вроде же говорили, что всё остальное, кроме материалов стора доступно.

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

Есть ещё какие-то варианты? Или, мб, ломаная версия (только на период разработки. Как только я начну собирать проект я обязательно куплю лицензию)
Аноним 01/05/18 Втр 12:30:22 #408 №497920 
>>497907
>Тратить тонну бабла особо не охота
Берешь коммерческий продукт для разработки. Говоришь что тратить бабла не охота. Логика?

>Есть ещё какие-то варианты?
Дохрена. От взять старую ломаную пиратку гамака до фришных инструментов типа с++. Выбирай на вкус.
Аноним 01/05/18 Втр 21:21:06 #409 №497964 
>>497920
>взять старую ломаную пиратку гамака до фришных инструментов типа с++
и через какой отрезок времени будет готов прототип на гмл и через какой на цпп?
ну конечно если это не match3 :3
Аноним 01/05/18 Втр 23:25:50 #410 №497970 
>>497920
>тратить бабла не охота
Не охота, до тех пор, пока то, что я делаю не оформится в играбельный вид. Я же говорю, в целом, я более чем готов платить за лицензию. Но какой смысл покупать её, если, я не знаю, я где нибудь в середине пойму, что мне не хватает возможностей? Или, там, что всё лагает как кусок говна.

Потом я, в любом случае, купил бы лицензию чтоб собрать проект
Аноним 08/05/18 Втр 13:49:00 #411 №498624 
>>497356
Бамп вопросу.
Тредик, не умирай!
Аноним 13/05/18 Вск 06:45:03 #412 №499215 
image.png
Матерые кодеры, если таковые имеются, я никогда не работал кодером, но свою игру делаю сам, расскажите, когда кодер понимает, что его код вполне хорошо выглядит, и в целом надежен, понятен (читай переполнен комментариями) и его можно пускать в свет?

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

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

В общем, тл;др - через что чаще всего должен пройти прототипный код, чтобы стать релизным? А то боюсь пока дальше новые механики писать, боюсь, что будет такая каша, что потом либо все переписывать придется, либо будет неоптимизированная параша.
Аноним 13/05/18 Вск 07:30:33 #413 №499216 
>>499215
> расскажите, когда кодер понимает, что его код
как только он написан. тут, понимаешь, без реальных образцов разного кода не обойтись. лаконичность (DRY, KISS) очень растяжимое понятие. кто-то жарит красивые однострочники, чтобы вместо 500 строчек было 100, а кому-то надо 100 строк без извратов с синтаксисом, третий напишет 1500 строчек с очень продуманным api и максимально высокой отчуждаемостью, а четвертый жахнет в 20 строк, но с миллионом тормозных зависимостей и "небольшим" сайд-эффектом. и автор каждого решения будет считать свой код правильным и хорошим. важно иметь опыт в каждом из этих подходов - тогда код становится инструментом. чем длиннее инструкция к молотку (комментов к коду) - тем больше он говно. и еще важно пройти этап тяжелых задач (кодеры постоянно комплексуют из-за тривиальных задач). чтобы желание "все переписать" отбилось, чтобы не плодить лишние классы... чтобы не было оверинжиниринга, чтобы у написание кода была прозрачная цель. и вот когда оба этих "важно" пройдены - только тогда ты можешь смастерить честный молоток, а не ходить по галочкам "меньше строчек" и "полное покрытие тестами". хороший код пишется медленно (пусть и быстрее из раза в раз), плохой быстро. сила в том, чтобы стараться везде засунуть говнокод, но угадывать места, где этого делать не стоит.

> через что чаще всего должен пройти прототипный код, чтобы стать релизным
через зеленую кнопочку "релиз" в админке стима, например.
Аноним 13/05/18 Вск 11:26:20 #414 №499229 
done-better-than-perfect.jpg
>>499215
с опытом
например я елси посмотрю свой код год назад у меня рукалицо, и я уверен что через год у меня будет такое же чувство если я буду смотреть на свой код в текущий момент
но вообще не еби мозги, прототип всегда может быть таким, если работает то заебись, потом отрефакторишь, когда общая картина появится
Аноним 13/05/18 Вск 11:34:20 #415 №499230 
в чем разница межу обычной компиляцией и YYС? Внутри APK не нашел ничего особо отличающегося
Поясните за компиляцию?
Аноним 13/05/18 Вск 15:22:07 #416 №499243 
>>499216
>>499229
Окей, спасибо, попробую дальше говнокодить, мб понимание придет
Аноним 13/05/18 Вск 15:50:16 #417 №499244 
>>499230
в гугле есть инфа
Аноним 13/05/18 Вск 15:52:06 #418 №499245 
>>499244
я тупой и сычующий дегенерат, который найти разницу вообще в гуглах не смог
Аноним 13/05/18 Вск 15:59:14 #419 №499246 
>>499245
https://www.youtube.com/watch?v=BPJ4hCfTZEM

Лично у меня в игре где мало объектов и сложной логики разницы нет, но собираю в yyc
Аноним 14/05/18 Пнд 07:11:05 #420 №499282 
Как же я заебался с анимациями и коллизиями. Если спрайты разных анимаций разной высоты - считай уже себе гемора прибавил, это говно обязательно застрянет в полу и перестанет двигаться и прыгать. Если маска коллизий не строго зеркальна по центральной вертикали, то возле стен при смене направления движения так же ебаные застревания.

И это я только две анимации впихнул. Хуль так сложно? Как белые люди это делают, что у них ничего не застревает? А я еще наивный дебил хотел хитбоксами все захуярить, я ж ебанусь это вручную хуярить все.
Аноним 14/05/18 Пнд 12:04:58 #421 №499296 
Runner 2018-05-14 12-02-40-951.mp4
>>499282
Неправильный подход.

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

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

Аноним 14/05/18 Пнд 13:31:15 #422 №499305 
0.jpg
Какая формула расчета скорости, если известны hspeed и vspeed.
Школу прогуливал.
Аноним 14/05/18 Пнд 13:40:55 #423 №499307 
>>499305
теорема Пифагора

А вообще зачем тебе рассчитывать ее, если ты задаешь hspeed и vspeed, и объект автоматически движется?
Аноним 14/05/18 Пнд 13:41:45 #424 №499308 
>>499305
Сложение двух ортогональных векторов.
Вычисляй модуль скорости по теореме Пифагора.
Аноним 14/05/18 Пнд 14:48:08 #425 №499316 
1.jpg
>>499307
>зачем тебе рассчитывать ее, если ты задаешь hspeed и vspeed, и объект автоматически движется?
Затем, что он как раз таки начинает автоматически двигаться, и движение врядли как-то можно отменить не приравняв эту самую скорость к нулю. Мне нужен был именно расчет без движения.

А вообще сейчас хорошенько прогулялся по городу и понял что скорость можно найти по принципу point_distance(x, y, x+hspeed, y+vspeed).
Надеюсь подводных камней в таком методе нету.
Аноним 14/05/18 Пнд 14:52:35 #426 №499319 
>>499316
Ты действительно поехавший.
Аноним 14/05/18 Пнд 17:19:59 #427 №499344 
>>499296
У меня маска была в самой сердцевине персонажа, иногда игнорировала голову и конечности и пр. Думал, что при обволакивании будут слишком большие зазоры между препятствиями и персонажем. Окей, спасибо, попробую обволакивать. Прямоугольник, кстати - отдельный объект или в дро отрисовываешь?
Аноним 14/05/18 Пнд 17:33:51 #428 №499347 
>>499344
Я просто его в draw event нарисовал, для наглядности.
Аноним 18/05/18 Птн 07:46:46 #429 №499894 
Анон, как правильно вращать?
У меня есть энное количество отдельных спрайтов, которые должны быть соединены друг с другом и вращаться как-то так, чтобы красиво было. Как автомат с магазином и лежащими на нем руками.
Но как только я начинаю эту ебалу вращать, она расплывается по всему экрану. Я понимаю, что для этого надо смещать все добро через тригонометрические функции, плюс появилась идея учитывать оффсеты спрайтов, но я не могу обволочь эти мысли в какую-то понятную для всех, для гейммейкера и для себя самого форму.
Есть ли где-то видеоуроки или хотя бы текст об этом? Во всех туториалах на ютубе пилят очередную говноспрайтовую РПГ, а у меня система анимации ближе к флешевой, многокадровые спрайты мне не подходят никак.
Аноним 18/05/18 Птн 09:31:05 #430 №499899 
>>499894
spine или dragon bone + Skeletal Animations гейммейкера.

Гугли.
Аноним 22/05/18 Втр 11:46:54 #431 №500481 
image.png
image.png
Анон, выручай.
Пытаюсь сделать параллакс скроллинг в GMS2.
Все бы ничего, но во время движения с краю экрана появляется вот такая полоска, а когда персонаж останавливается, бэкграунд резко дергается на ширину этой самой полоски. Объект, на котором висит код параллакса загружается самым первым, код находится в Step Event, пробовал пихать его в End Step и Begin Step, но ноль эффекта
Аноним 22/05/18 Втр 12:23:09 #432 №500489 
>>439561 (OP)
1. Если я верно понял, триалка не ограничена по времени и можно хоть до усрачки изучать триал, и даже полноценно пилить в нём своего игоря?

2. Что там с физикой, есть хоть какие-нибудь зачатки?
Аноним 22/05/18 Втр 14:36:13 #433 №500523 
>>500481
У тебя какого размера БГ? Сдаётся мне, что ширина у него с твой экран. Поэтому если ты его сдвигаешь, то остаётся неочищенный участок старого application_surface.

Ты попробуй галочку поставить в свой бэкграунд Horizontal Tile. Что изменится?
Аноним 22/05/18 Втр 14:40:35 #434 №500525 
>>500489
Триал не полноценный.
Я полную версию купил, когда обнаружил, что в триале нельзя создать больше одного тайлсета. Знаю что какие-то функции path в триале ограничены, какие-то gpu.

Аноним 22/05/18 Втр 14:48:22 #435 №500526 
>>500489
Что там с физикой - без понятия. Она там есть. Я использую свою.
Аноним 22/05/18 Втр 14:50:38 #436 №500528 
>>500525
>>500523
Спасибо, качну пока 1.4 на освоение.
Аноним 22/05/18 Втр 16:54:40 #437 №500547 
>>500523
Ничего не меняется. Попробовал использовать в два раза более широкое изображение — то же самое.
Аноним 22/05/18 Втр 18:21:53 #438 №500559 
>>500547
Скинь проект в дропбокс, посмотрю что ты делаешь.
Аноним 22/05/18 Втр 18:40:33 #439 №500564 
>>439561 (OP)
Скачал, посмотрел, некоторые вещи осваиваются интуитивно, это очень хорошо.
Вопрос такой. Есть объект, который постоянно должен "падать", ибо гравитация. Как это реализовать? Порылся в ивентах, не нашёл "пустого" события, которое должно выполняться всегда, без условий.
Ну или ткните в ссыль с такими вот базовыми туториалами.
Аноним 22/05/18 Втр 18:42:02 #440 №500565 
>>500564
step
Аноним 23/05/18 Срд 00:18:09 #441 №500607 
>>500564
Бегом смотреть Shaun Spalding
Аноним 23/05/18 Срд 00:45:43 #442 №500612 
>>500565
Спасибо, нашёл, разобрался.
>>500607
Смотрю уже.
Да, неплохое двигло, мне нравится, ещё бы умел на андройды выгружать, и не по лицухе за 130 баксов.
Аноним 23/05/18 Срд 01:06:52 #443 №500617 
>>439561 (OP)
А инди-песочницу гамак2 осилит? Пример - Stardew Valley.
Аноним 23/05/18 Срд 01:32:30 #444 №500624 
>>500612
Подозреваю, что этот экспортер делает некислую прибыль, так что вряд ли забесплатно сделают. Но если они выкатывают при этом такой продукт, то не жалко.
Аноним 23/05/18 Срд 01:33:28 #445 №500625 
>>500617
По-моему, легче спросить, что он НЕ осилит. В 2д, разумеется.
Аноним 23/05/18 Срд 04:38:59 #446 №500645 
>>500617
Осилит. Но мне в гамаке сложновато работать с большими проектами.
Аноним 23/05/18 Срд 10:21:38 #447 №500681 
>>500564
В GMS2 (и в более ранних версиях роде тоже) есть встроенный туториал в духе "шаг за шагом делаем первую примитивную игру". Там делов на полчаса, и практически все базовые вещи научишься делать. Это гораздо лучше, чем видосы-туториалы, где бородатый хер два часа чавкает в микрофон, объясняя 2 строки кода смотреть.
Аноним 23/05/18 Срд 10:27:19 #448 №500683 
>>500559
Не могу этого сделать по ряду причин, но проблему я более-менее решил.

Я пришел к выводу, что переменная, которая получается из команды camera_get_view_x(view_camera[0]) все время отстает на один фрейм от настоящего положения камеры. Тогда я поставил условие, что бэкграунд двигается только при условии, что скорость персонажа не равна нулю. Это, конечно, как-то костыльно, и вылезла еще пара проблем, но их оказалось легко решить, и все работает. Наверное, есть какой-то более изящный путь, если найду, то поменяю систему, конечно.
Аноним 11/06/18 Пнд 11:00:43 #449 №504034 
Бамп.
Аноним 14/06/18 Чтв 01:38:25 #450 №504807 
>>439561 (OP)
Аноним 06/07/18 Птн 16:25:16 #451 №510367 
Вопрос от Фонаря:
Хочу запилить Монополию, но никак не могу придумать - как лучше реализовать улицы? Делать как отдельные объекты или как?
Аноним 06/07/18 Птн 16:59:53 #452 №510387 
>>510367
Тайлмапами делай.
Аноним 06/07/18 Птн 17:01:55 #453 №510389 
>>510387
А как тогда отслеживать их переменные?
Аноним 06/07/18 Птн 17:14:59 #454 №510403 
>>510389
Вариантов куча. Первое, что приходит в голову - завести массив / словарь / список, и в процедуре генерации карты заводить в него нужные данные с тем же индексом, что у тайла в тайлмапе. Обращение к тайлам организовать через геттер, в котором эти данные будут доставаться.
Аноним 06/07/18 Птн 17:16:17 #455 №510405 
>>510403
А разве не подходит вариант сделать 40 объектов для каждого поля, и у каждого объекта - свои переменные?
Аноним 06/07/18 Птн 17:18:14 #456 №510407 
>>510405
Вполне подходит. Одобряю.
Аноним 06/07/18 Птн 17:19:27 #457 №510408 
>>510407
Просто мне такой способ кажется очевидным, но при этом - костыльным. Не может же все быть настолько просто. Или может? И нет смысла изъебываться, если можно все сделать просто?
Аноним 06/07/18 Птн 17:20:24 #458 №510410 
>>510408
Да забей. Главное, чтоб работало.
Аноним 06/07/18 Птн 17:24:16 #459 №510415 
>>510410
И то верно. Спасибо, анон.
Аноним 07/07/18 Суб 01:09:30 #460 №510700 
Гамак не видит подключенный геймпад (gamepad_is_connected();) пока игра свернута. Подключал четвертый дуалшок.
Проблема в гамаке, в геймпаде или во мне?
[bump] Аноним 07/07/18 Суб 19:38:45 #461 №510976 
Бамп.
Аноним 07/07/18 Суб 21:21:37 #462 №511032 
>>510700
Безотносительно: зачем игре видеть геймпад когда она свёрнута?
Она клавиатуру-то не видит, когда ты табнулся в другое окно. И это правильно.
Аноним 08/07/18 Вск 01:11:37 #463 №511126 
>>511032
Просто таким образом можно было бы намеренно или случайно вызвать ошибку, свернув игру в определенный момент, но уже вроде нашел, как это исправить.
Аноним 09/07/18 Пнд 20:43:38 #464 №511672 
1531158217612.png
1531158218072.png
Сап аноны. Я очень нью, но может вы поможете мне с одним вопросом. Решил попробовать сделать первую лёгкую игрушку про самолетик, который стреляет говном (стандарт из стандартов). Самолет должен стрелять в сторону, в которую направлена мышка, с промежутком а 310-50 градусов. Но вот беда.
Для поворота модельки я сделал вот:
var mouse_angle = point_direction(x, y, mouse_x, mouse_y);
if (mouse_angle > 310 || mouse_angle < 50)
image_angle = mouse_angle;
Как сделать подобное ограничение для пуль, которые вылетают. Пробовал часа три и нихуя не придумал, собсна. Вот мои самые удачные идеи (пикрилы)
Аноним 09/07/18 Пнд 20:54:44 #465 №511673 
>>511672
> с промежутком В 310-50 градусов
самофикс
Аноним 10/07/18 Втр 06:24:39 #466 №511790 
>>511672
Есть функция clamp, которая позволит сделать все то же самое, но в одну строчку.
И я не понял, в чем твоя проблема. Все должно работать. Скорость пули можно записать через speed ее экземпляра, направление через direction, которое ограничить через clamp.
Аноним 10/07/18 Втр 06:26:51 #467 №511791 
>>511790
>>511672
Черт, я болван слепошарый, там все так и сделано. Прошу прощения.
Но тогда я по-прежнему не понимаю, в чем твоя проблема.
Аноним 10/07/18 Втр 06:37:50 #468 №511793 
>>511791
Я пробовал делать через clamp, но это не даёт никакого эффекта. Хотя может быть просто я криворукий (что более вероятно) и попробую ещё, как приду домой, спасибо. Если не получится, спрошу ещё раз, надеюсь на помощь :3
Аноним 10/07/18 Втр 06:48:54 #469 №511797 
>>511793
А да. Не дало эффекта, это значит, что она просто не работала, и камы-пули продолжали лететь из очка вертолета, будто ограничения и вовсе нет. Но скорее всего я просто жиденько обосрался и попробую еще раз переписать.
Аноним 10/07/18 Втр 10:48:54 #470 №511866 
>>511790
Попробовал вот так:
direction = clamp(point_direction(x,y,mouse_x,mouse_y),310,50) + random_range(-4,4);
Не работает ниже 0, пробовал через -50, пробовал через кламп 310,0 + кламп 0,50 — ни в какую.
Аноним 10/07/18 Втр 11:04:40 #471 №511879 
>>511866
var куда_стрелять = point_direction(x, y, mouse_x, mouse_y);
if ((куда_стрелять < 180) {
куда_стрелять = clamp(куда_стрелять, 0, 50);
} else {
куда_стрелять = clamp(куда_стрелять, 310, 360);
}

Аноним 10/07/18 Втр 11:43:47 #472 №511890 
image.png
>>511879
Не выходит, получается аналогично моему варианту.
Аноним 10/07/18 Втр 11:46:11 #473 №511892 
>>511879
>>511890
А, все, понял, где я обосрался. Вместо 0 поставил 360 как у тебя и все ахуенно заработало. Спасибо, анон!
Аноним 10/07/18 Втр 11:52:17 #474 №511897 
Гамаконы, есть вопрос. Во второй студии есть адекватная реализация коллекций вместо отвратительной "ds_ " ? И что там вообще по ООП, есть какие то подвижки?
Аноним 10/07/18 Втр 11:57:25 #475 №511902 
>>511897
Не держись за гамак. Если чувствуешь, что тебе тесно в игровом конструкторе - переходи на полноценный движок. Базарю, чем позже перейдешь, тем больше пожалеешь о потраченном на все эти гамаки времени впоследствии.
Аноним 10/07/18 Втр 14:10:19 #476 №511949 
>>511897
Сложные вопросы задаёшь.

В GMS2 есть возможность подключать какие-то явовские списки. Я сильно не вникал, т.к. меня ds полностью устраивают.

По ООП фигово, только самому имитировать скриптами. Функции нормально строятся.
Аноним 10/07/18 Втр 14:17:19 #477 №511953 
>>511902
Странные вещи говоришь.

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

Но это только верхушка айсберга. На самом деле с гамаком можно сделать намного больше. Абсолютно всё, что может понадобиться для хорошей 2д игры.
Аноним 13/07/18 Птн 14:18:40 #478 №513550 
>>482212
Там ак нужно регать, меня по опи не вычислют?
Аноним 13/07/18 Птн 23:07:47 #479 №513691 
Можно ни на гамаке написать аналог косморейнджеров, симуляцию жизни и т.п?
Насколько юнити сложнее чем гамак, что лучше изучать: гамак или юнити?
Аноним 13/07/18 Птн 23:10:10 #480 №513693 
>>513691
Программирование изучай, даун.
Аноним 13/07/18 Птн 23:20:12 #481 №513695 
>>513691
Можно.

Для 2д гамак.
Для 3д - юнити.
Аноним 13/07/18 Птн 23:23:20 #482 №513698 
>>513695
>Для 2д Анриал.
>Для 3д - Анриал.
Аноним 13/07/18 Птн 23:49:30 #483 №513707 
>>513691
Гамак легче чем Юнити. 2D в Юнити это особая форма извращенства, когда есть гейммейкер (есть ещё Годот, но зочем).
Аноним 14/07/18 Суб 00:09:04 #484 №513715 
1531510578.png
>>513707
>Годот, но зочем
Кубики в дырку кидать.
Аноним 22/07/18 Вск 17:12:51 #485 №516548 
Тред, не умерай.
Аноним 23/07/18 Пнд 15:06:17 #486 №516855 
>>516548
Обнаружил в ГМС2 серьёзный баг с утечкой памяти.

Жду исправления от йойошников.
Аноним 23/07/18 Пнд 16:16:22 #487 №516880 
>>516855
Исправление будет в ГМС3, можете оформить предзаказ за $80 уже сейчас.
Аноним 25/07/18 Срд 12:07:42 #488 №517385 
Какой же уебищный интерфейс у гмс2 по сравнению с гмс1 и гм4-8, пиздец.
Аноним 27/07/18 Птн 13:02:26 #489 №518178 
>>517385
Ты про удобство или про внешний вид?
Аноним 28/07/18 Суб 00:16:00 #490 №518477 
>>513698
>Для 2д Анриал.
Больной ублюдок.
Аноним 28/07/18 Суб 05:43:47 #491 №518515 
>>518178
Про удобство. Внешний вид - ну да, типо современно
Аноним 09/08/18 Чтв 17:33:01 #492 №521812 
2018-08-0917-29-17.png
Парни, есть трабл, поможите. Юзаю гмс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 которые как-то это все должны хендлить, но мои вялые попытки написать чето используя данную функцию не дали ровным счетом нехуя. Шо делать
Аноним 09/08/18 Чтв 17:41:08 #493 №521814 
>>521812
> они выглядят как параша
Что конкретно не устраивает?
Аноним 09/08/18 Чтв 17:48:01 #494 №521816 
2018-08-0917-47-13.png
>>521814
Почему качество спрайта так убивается, еще даже не в полноэкранном режиме?

Аноним 09/08/18 Чтв 17:51:17 #495 №521817 
>>521816
Разрешение вьюпорта в первой загружаемой комнате (или самой комнаты, если вьюпорты отключеры) задают разрешение всей игры. Разрешение остальных комнат масштабируется под него. Может в этом проблема?
Аноним 09/08/18 Чтв 17:55:14 #496 №521818 
>>521817
Снимай штаны, буду сосать. Именно в этом была трабла, писос я дебич.
Аноним 09/08/18 Чтв 17:55:50 #497 №521820 
>>521817
скинь кошелек какой, скину сотку на пивко
Аноним 09/08/18 Чтв 17:58:14 #498 №521821 
>>521820
да не надо
Аноним 09/08/18 Чтв 20:39:31 #499 №521833 
подходит ли сей движок для геймджемов?
имею ввиду,что можно ли за 48 часов на нем что-то сносное склепать,если есть желание и идеи
Аноним 09/08/18 Чтв 20:45:48 #500 №521836 
>>521833
da
Аноним 15/08/18 Срд 10:42:27 #501 №522685 
image.png
Я немного выпал из трендов разработки, но есть ли смысл нынче париться о нескольких разрешениях для своей игры, особенно пиксельной? Я вот думаю сделать разрешение 540р (с дальнейшим апскейлом х2 на 1080р). И типа есть ли вообще смысл париться о том, что у каких-то бомжей не будет монитора 16:9 (хотя на 4:3 мониторе там просто полосы будут, что в принципе терпимо) или мониторов с поддержкой 1080р (такие есть еще?)?
Аноним 15/08/18 Срд 12:19:26 #502 №522694 
goodbad.png
>>522685
Есть смысл париться, если в крупнопиксельной игре разрешение монитора не делится нацело на разрешение игры. Тогда появятся некрасивые деформации пикселей.
Аноним 15/08/18 Срд 12:57:34 #503 №522701 
>>522694
Эх, ну да, беспокоясь о бомжах на старых пеках, я и забыл, что уже есть челики с разрешениями больше 1080р, но меньше 2160р. Сука, у меня в игре дохуя геометрии даже в банальных игровых действиях, вот чего мне блять для полного штанов счастья не хватало, так это рескейлить игру под другие разрешения.

Как это вообще делают? Новый комплект ассетов рисуют или что? Это ж ебануться можно. Лучше уж тогда в рамку нахуярить. Или просто каждый ассет вручную растягивают до нужных пропорций и потом ретушируют?
Аноним 15/08/18 Срд 14:55:39 #504 №522731 
>>522701
Дешевый и сердитый вариант, который в гамаке легко реализуется, это если у игрока нестандартный монитор, то дать ему возможность либо играть в полноэкранном режиме и наблюдать пиксельные деформации, либо запустить игру в окне с подходящим разрешением. К тому же, чем больше разрешение, тем меньше эти деформации заметны. Самое плохое - это когда скейлить надо в 1.5 раза. Еще была идея рисовать все на текстуре 2160p, а потом уменьшать ее до нужного разрешения со сглаживанием. В графическом редакторе результат нормальный, а в гамаке не пробовал, удобно ли это делать.
Аноним 15/08/18 Срд 15:39:03 #505 №522741 
как в gms 3d подключить?
Аноним 15/08/18 Срд 16:35:45 #506 №522752 
>>522731
Я вот думаю насчет варианта либо полноэкран с деформациями, либо полноэкран нормальный, если человек настраивает разрешение у себя или у него оно само по себе подходящее, либо сделать полноэкран с рамочками, обрамленными каким-нибудь артом. Это, кстати, в гамаке можно сделать как-то? Я видел это у некоторых игр, и смотрелось вполне неплохо.
Аноним 15/08/18 Срд 17:44:40 #507 №522775 
>>522752
Галочки "сделать полноэкран с рамкой" в настройках гамака нет, можно только черные полоски. Хотя странно, почему они такую фичу не добавили, вроде эта идея сама собой напрашивается. Наверно, это можно сделать с помощью своих костылей.
Аноним 15/08/18 Срд 17:59:46 #508 №522780 
>>522775
Ну я и не думал, что в гамаке есть для этого галочка, конечно костылями.
Аноним 16/08/18 Чтв 13:38:06 #509 №522904 
Fail.gif
Господа, помогите разобраться в проблеме.


Есть платформа, которая движется вертикально вверх

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, игра рестартуется. Я понимаю что наговнокодил, но как сделать иначе - хз.

Аноним 16/08/18 Чтв 15:56:33 #510 №522924 
Скриншот 2018-08-16 15.47.44.png
>>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

и то же самое с низом и верхом.
Аноним 16/08/18 Чтв 16:12:52 #511 №522925 
>>522924
Это мой первый проект, я стараюсь чето учить + использовать это.

Про алармы не совсем понял - я читал документацию и кажется понимаю. Там же все подвязано на скорости комнаты, утрировано.

Про гайды спасибо, обмажусь.

Еще вопрос, чем плох vspeed hspeed?

Аноним 16/08/18 Чтв 16:40:54 #512 №522928 
>>522925

>Про алармы не совсем понял - я читал документацию и кажется понимаю.
Тогда скажи, в какой момент тикает таймер аларма? Что произойдёт раньше, room_end event или тик аларма? Или аларм тикает в начале фрейма а не в конце? Я вот, например, не в курсе. Если погуглить, то наверняка найду. Но в любом случае, таймер, который тикает вне твоего кода - это очень, очень плохо. Может привести к тяжёлым последствиям.

>Еще вопрос, чем плох vspeed hspeed?

То же самое. Когда происходит это перемещение? Твои платформы тоже перемещаются при помощи vspeed hspeed? Значит ты не контролируешь того момента, когда перемещается игрок, а когда платформа.

Допустим платформа создана раньше игрока. Тогда, возможно, сначала гамак будет двигать платформу, а потом игрока.

Тогда, если игрок стоит на платформе, которая едет вверх что будет?
Платформе же пофигу на коллизии с игроком? Она просто двинется вверх.

Потом начнёт своё движение игрок. А у него вертикальная скорость меньше, чем у платформы или нулевая. И он окажется внутри платформы.

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

А если игрок создан раньше? Тогда его код будет исполнен первым и он заметит коллизию и самоуничтожится.

Это раз.

Два: у тебя все скорости целочисленные? Наверняка нет. Тогда перемещение искаропки будет ставить твоего игрока в дробные координаты. И ты, для вычисления коллизий, будешь работать с float переменными. И это может привести к неожиданным для тебя результатам.

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

Поэтому всегда лучше использовать для координат int.


Аноним 16/08/18 Чтв 16:48:32 #513 №522930 
>>522928
Не подумал о проблеме с этой стороны, спасибо, так стало в разы понятнее.

Пойду думать как переписать все это дерьмо, чтобы работало в одной вселенной.
Аноним 16/08/18 Чтв 16:50:57 #514 №522931 
1.webm
А вот, например, что бывает, если платформа передаёт игроку ускорение. Платформа создана позже игрока и её код выполняется позже.

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

Проблема решилась переносом кода платформы в begin step event
Аноним 16/08/18 Чтв 19:05:20 #515 №522953 
>>522924
>Place meeting это во-первых ресурсозатратная функция
С чего это проверка пересечения прямоугольников стало ресурсозатратным?
Аноним 16/08/18 Чтв 19:22:42 #516 №522955 
>>522953
С того, что во-первых это далеко не всегда пересечение прямоугольников. Гамак поддерживает precise per frame collisions.
А во-вторых объектов коллизий может быть много, а проверка коллизий может происходить много раз за фрейм.

Коллизии это то, что стоит держать в узде.
Аноним 16/08/18 Чтв 19:49:46 #517 №522961 
>>522955
А твоя gridcol_line как работает, проверяет пересечение линии только с тайлами? А с движущимися объектами как проверяешь столкновения, если не place_meeting?
Аноним 16/08/18 Чтв 22:20:34 #518 №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;



Аноним 16/08/18 Чтв 22:23:17 #519 №522987 
>>522986
Что-то пошло не так. Вот правильная ссылка на пост.
https://2ch.hk/gd/res/476891.html#499433
Аноним 18/08/18 Суб 16:22:22 #520 №523250 
При попытке загрузить на андроид вылетает такая ошибка:
FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '10.0.2'.

ЧЯДНТ?
SDK и NDK в порядке, версия GM 1.4
Аноним 20/08/18 Пнд 13:34:54 #521 №523428 
игра улица.png
Что-то пиксельарт тред глубоко внизу, поэтому спрошу тут: аноны, как импортировать пиксели из паинта в игру? Я в первый раз участвую в разработке игоря чукча не Кирилл, чукча хуйдожник, и не знаю об этом ничего, объясните подробно, плиз, как дауненку.

Еще есть такой вопрос - в паинте я рисую пиксели обычного размера, т.е. рисунок получается очень маленьким, если не приближать его. Вопрос такой - можно ли его будет потом четко, без размытия увеличить для игры? Или лучше сразу делать в нужном размере? Или это вообще не так происходит?
Аноним 20/08/18 Пнд 14:29:25 #522 №523431 
>>523428
>как импортировать пиксели из паинта в игру?

Нажимаешь alt+s для создания спрайта.
Там увидишь кнопочку импорт, жамкаешь на неё и импортируешь.

Хочешь перетащить спрайт в комнату? Создай в комнате assets layer и таскай спрайты мышкой из ресурсов в комнату на этот слой.

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

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

Зато всега присутствует скейлинг всего. Насколько я понимаю скейлить менее затратно, чем рисовать сурфейс во весь экран.

Аноним 20/08/18 Пнд 17:06:33 #523 №523452 
>>523428
Пиксельные спрайты отлично масштабируются в графических редакторах. Выбираешь изменение размеров без сглаживания и всё.

Это нужно делать именно в редакторе, чтобы движок не тратил ресурсы на лишнее масштабирование, хотя зависит от того как много текстур ты собираешься использовать, если минимализм, то большой просадки не будет, но если куча объектов на сцене, то тормоза гарантированы, хотя они будут и без текстур, так как сегодня тонкое горлышко всех игроделов это слабые процессоры, которые почти перестали увеличивать производительность где-то с 2013 года.
Аноним 20/08/18 Пнд 23:07:28 #524 №523477 
игра комната.png
>>523452
>>523431
Спасибо, аноны.
Аноним 20/08/18 Пнд 23:32:31 #525 №523480 
>>523452
Так не надо масштабировать каждый спрайт движком, это действительно затормозит игру.

Достаточно растянуть финальный сурфейс на весь экран подкрутив настройки камеры.

Собственно сами jojo games в своих туториалах рекомендуют растягивать сурфейсы вместо создания сразу больших сурфейсов. Это экономичнее.
Аноним 21/08/18 Втр 00:51:55 #526 №523481 
>>523428
В первую очередь, убери нахуй пейнт и возьми редакторы нормального человека по типу aseprite или pro motion ng (первый очень простой и интуитивный и в целом покрывает все нужды в пикселях, второй более профессионален и поначалу ты будешь в нем плавать, но зато потом ты сэкономишь себе тучу времени)
Аноним 21/08/18 Втр 10:31:59 #527 №523506 
>>523480
Разница будет только в занимаемом месте на диске, при этом памяти будет сжирать всё равно столько же, но минус твоего способа в том, что если это java или c# машина или браузер, то предложенный тобой способ хуже так как сборщик очистит кэш и после снова придётся подгружать изображение и проводить масштабирование, тогда как в случае с заранее отрисованными текстурами просто будет подгрузка в кэш без лишних действий.

Разница заметна на слабых мобильных устройствах, где использование масштабирования считается крайне плохим тоном и практически нигде не используется, по крайней мере в 2D играх.
Аноним 25/08/18 Суб 12:14:26 #528 №524150 
Не тоже самое что и двойка, в двойке кроме ide очень много исправлений компилятора, стандартных функций и даже теперь визуальные кнопки превращаются отныне в годный код.
Казалось бы косметика, но изменений больше чем кажется.
Аноним 25/08/18 Суб 12:16:31 #529 №524151 
Забыл также упомянуть что html5 экспортером занимается теперь хороший человек наш соотечественник. Погуглите блог yellowafterlife он фактически герой гм*/гмс/гмс2
Аноним 26/08/18 Вск 20:51:09 #530 №524441 
ktoprocheltot-loh.PNG
Добрый день, господа!

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

Т.к. выпускать с пиратской версии не особо то законно (скорее всего), но покупать за 20 с лихуем лицензию для того, чтобы получиться возможность заработать на детище - бред.
Есть ли законные (или может даже не очень) выходы из этой ситуации
Аноним 26/08/18 Вск 23:42:41 #531 №524467 
>>524441
>но покупать за 20 с лихуем лицензию для того, чтобы получиться возможность заработать на детище - бред.
Действительно, такая бредятина - вкладывать средства в свой бизнес, кто этим вообще занимается?
Аноним 26/08/18 Вск 23:45:38 #532 №524468 
>>524441
Да, есть. Нужно брать бесплатные проги, если ты нищебродина и боишься сгухи. Есть годот и юнити, а ты сука сухари суши, или денюжку плоти.
Аноним 27/08/18 Пнд 01:09:58 #533 №524483 
Или можешь посмотреть стоимость лицухи в стиме, и вроде как я слышал что на гоге бывают распродажи с низким прайсом на лицухи.
Аноним 27/08/18 Пнд 17:15:07 #534 №524580 
>>524467
Давай начнем с того, что бизнеса как такового (именно в гамак-геййдеве) быть и не может без покупки лицензии (исключая обходные пути)
Я и не говорил о том, что вкладывать деньги в бизнес - это бред.

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

>>524468
>>Нужно брать бесплатные проги, если ты нищебродина

Вот тут ты и обосрался молодой человек. Твои слова как-раз таки и выдают в тебе нищука, который сразу потратит свои сбережения на иллюзорный вклад в будущее, который еще не факт что хоть как-то окупиться, и как я написал выше проверить это ты увы не сможешь.
Аноним 27/08/18 Пнд 17:16:35 #535 №524581 
>>524580
>нищука, который сразу потратит свои сбережения на иллюзорный вклад в будущее
Какой вклад, ослина, я на бесплатных прогах сижу.
Аноним 27/08/18 Пнд 17:26:55 #536 №524584 
>>524441
Пока будешь делать игру, как раз отложишь со школьных обедов нужную сумму.

>>524581
Успешный господин в треде.
Аноним 27/08/18 Пнд 17:42:51 #537 №524589 
>>524584
>> со школьных обедов нужную сумму

ипотечную ставку понизил уже?
Аноним 27/08/18 Пнд 21:50:36 #538 №524642 
Есть тут шейдероебы? Нужно зделоть искривление картинки на мониторе, к примеру, какой-нибудь банальный фишай, чтобы я просто смог понять принцип этого дерьма и сделать, что хотел. Из вариантов пока придумал только ставить какой-то 3д объект и смотреть через него преломление.
Аноним 29/08/18 Срд 09:29:27 #539 №524795 
>>524642
Похоже что таких нет. Была какая-то софтина в которой можно было лепить примитивные шейдеры для гамака, но есть подозрение что фишай там не сделоть.
Аноним 29/08/18 Срд 09:31:35 #540 №524796 
>>524795
Я такие вопросы в glsl треде задавал, мне отвечали.

Сам я только самые примитивные шейдеры умею делать.
Аноним 29/08/18 Срд 09:32:48 #541 №524797 
>>524796
Тьфу. в Opengl треде.
Аноним 29/08/18 Срд 18:33:53 #542 №524844 
Пустота в тайле считывается при коллизиях или считывается только непустота?
Аноним 29/08/18 Срд 19:10:35 #543 №524856 
>>524844
Пустота в тайле это 0.
Аноним 29/08/18 Срд 20:17:34 #544 №524866 
>>524856
То есть похуй, что эта пустота в границе тайла?

Аноним 30/08/18 Чтв 09:28:24 #545 №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) уже значение второго.
Аноним 03/09/18 Пнд 15:19:43 #546 №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


Куда стоит копать для решения проблемы? Есть идеи?

Аноним 03/09/18 Пнд 17:34:45 #547 №525652 
>>525624

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

Даже есть несколько предположений, в первую очередь связанных с тем, что у тебя центровка спрайтов разная. Ещё я бы обратил внимание на то, что ты СНАЧАЛА меняешь маску, а ПОТОМ меняешь спрайт.

mask_index= sPlayerMaskSlide

sprite_index = sPlayerSlide

Должно быть наоборот.
Аноним 03/09/18 Пнд 18:08:45 #548 №525656 
>>525652
О предложенных решениях уже думал, но они не решают проблему, хех. Буду дальше ковырять.

Нужно это для того чтобы успешно проезжать под препятствиями.
Аноним 03/09/18 Пнд 18:45:50 #549 №525661 
>>525656
А чего думать? Напиши дебагескую тулзу, которая будет рисовать тебе маску спрайта каждый шаг и смотри что происходит по шаг за шагом.
Аноним 03/09/18 Пнд 21:27:25 #550 №525672 
runprblm.jpg
>>525661
Так и сделал. Это помогло понять и пофиксить некоторые мелочи, и основную проблему я решаю костылем - поставил у второй маски центр по верхнему краю и добавил мини прыжок после после перехода из состояния скольжения в бег - по какой-то причине маска застревает после этого перехода. Показал на картинке.

Аноним 03/09/18 Пнд 23:04:10 #551 №525681 
>>525672
А теперь я бы порекомендовал тебе всё же разобраться, в какой момент твой персонаж съезжает на пиксель вниз и пофиксить это.

Коллизии - это основа основ и это очень просто. Костыли в коллизиях повлекут за собой непредвиденные проблемы, когда ты будешь добавлять разнообразные механики.
Аноним 04/09/18 Втр 22:52:06 #552 №525769 
Выйдет ли че-то хорошее из пиздинга разных нужных кусков кода и объединения всех их в эдакого франкенштейна для создания игры?
Аноним 04/09/18 Втр 23:04:37 #553 №525771 
>>524441
Купи через стим, там гораааздо дешевле
Аноним 05/09/18 Срд 08:42:47 #554 №525806 
>>525769
скорее нет чем да.
Аноним 05/09/18 Срд 08:43:15 #555 №525807 
>>525681
Так и сделал тащемта.
Аноним 07/09/18 Птн 21:40:04 #556 №526082 
>>439561 (OP)
УРА НАКОНЕЦ-ТО ВЫПУСТИЛИ КРЯК БЕЗ ПОДКЛЮЧЕНИЯ К ИНТЕРНЕТУ
ТЕПЕРЬ БЕЗ ПЕРДОЛЛИНГА ПРИ КАЖДОМ ЗАПУСКЕ
Аноним 08/09/18 Суб 12:48:01 #557 №526136 
Ребята, подскажите, будет ли тут просто собрать 2Д симулятор ходьбы с парочкой мини-игр?

Нужно:
1. Несколько ветвлений сценария.
2. Мини-игра «затарься в супермаркете». Ходишь по магазу, собираешь дешевую продуктовую корзину, от ее содержимого зависят некоторые ветвления «сюжета».
3. Ходьба, поездки на метро/ автобусе, диалоги.
4. Чтобы он смог выдержать толпу идущих прохожих без лагов. Ну, штук 20 хотя бы

И каков гамак в сравнении с юнити?
Аноним 08/09/18 Суб 15:29:02 #558 №526158 
>>526136
Не знаю что ты имеешь ввиду под "собирать", но то что ты описал сделать весьма просто.

Лаги зависят в основном не от движка а от того, как ты всё реализуешь. Можно и один объект написать так, что игра не запустится, можно и 1000 обхектов двигать без всяких лагов.

Гамак гораздо проще юнити и заточен под 2д. Юнити сложнее, мощнее, в нём больше ассетов и специализован на 3д.
Аноним 08/09/18 Суб 18:18:24 #559 №526190 
>>526158
Короче, я глянул туториалы и решил, что гамак мне идеально подходит.

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

Кстати. У вас нет своей ламповой конфочки в телеге?
Аноним 08/09/18 Суб 19:00:00 #560 №526193 
>>526190
>Кстати. У вас нет своей ламповой конфочки в телеге?
Не стоит вскрывать эту тему.
Аноним 08/09/18 Суб 19:16:23 #561 №526197 
Что-то подтупливаю над элементарной задачей.
При погибании персонажа, комната перезагружается, соответственно перезагружаются и враги, и игрок и все остальное. А как сделать, чтоб, например, уже собранные бонусы не перезагружались, чтобы игрок раз за разом халявные патроны не находил, например? Или без перезагрузки комнаты придется пердолиться с каждым отдельным врагом?
Аноним 08/09/18 Суб 19:21:30 #562 №526198 
>>526197
Глобальные переменные?
Аноним 08/09/18 Суб 19:28:08 #563 №526199 
>>526198
Вот не знаю, как через них сделать. Потому что, например, лежат на уровне две идентичных коробки с говном (один и тот же объект), одну игрок подобрал, вторую — нет. глобальная переменная же не различит, какую коробку он взял.
Аноним 08/09/18 Суб 19:31:04 #564 №526200 
>>526199
Идентификаторы для кого придумали?
Аноним 08/09/18 Суб 19:49:19 #565 №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;
}
}
}

Таким образом коробка самоуничтожается, если в ней уникальный предмет, который игрок уже подобрал.
Аноним 09/09/18 Вск 11:45:35 #566 №526256 
Господи, как тут все удобно-то. Юнити действительно под 2Д плохо катит. Я балдею от гейммейкера.

пускает слюни
Аноним 09/09/18 Вск 13:30:13 #567 №526273 
>>526256
>Юнити действительно под 2Д плохо катит
Потамушта пиксельные игры это прошлый век и нахуй они нужны когда есть ахуенный графон почти как в жизни вон посмотри на нового асасина
Аноним 10/09/18 Пнд 11:02:16 #568 №526380 
Почему если я юзаю room_restart объекты, в ходе взаимодействия с которыми я вписал instance_destroy() не восстанавливаются?


Простой пример - есть объект игрока, есть аптека. В скрипте отвечающим за смерть есть room_restart и после смерти игрока комната перезагружается но аптек нет. В гамаке так и задумано? Как это обойти? Записывать айди всех аптек в комнате и ресать их? Или например сделать видимость 0 после того как их взяли? Вернуться к ним у игрока в рамках комнаты возможности не будет.
Аноним 10/09/18 Пнд 11:08:51 #569 №526381 
>>526380
Проверь, не перманентные ли у тебя объекты не восстанавливаются.
Аноним 10/09/18 Пнд 11:12:05 #570 №526382 
>>526381
Речь про Persistent? Нет, они не пермаментные.
Аноним 10/09/18 Пнд 11:13:43 #571 №526383 
А, кажется понял. У меня руум рестарт не фунциклирует.
Аноним 10/09/18 Пнд 11:14:35 #572 №526385 
>>526382
Я, честно говоря, не пользовался никогда room_restart
В мануале написано, что работает так, как будто ты только что зашёл в комнату.
Т.е. должны создаваться все не persistent объекты по новой, выполняться все create events и room create events.

А сама комната не persistent?
Аноним 10/09/18 Пнд 11:17:26 #573 №526386 
>>526385
Да, она была persistent, помогло, спасибо.
Аноним 10/09/18 Пнд 15:08:22 #574 №526405 
Поясните мне за два вопроса. Я правильно понимаю, что КАМЕРА рисует на ВЬЮ ПОРТЕ? И зачем нужно несколько вью портов/ камер? Чтобы, допустим, держать в одной комнате несколько мини-комнат и переключаться между ними, используя разные вью порты?
Аноним 10/09/18 Пнд 17:20:15 #575 №526422 
>>526405
Ну, например, чтобы сплит скрин сделать.

Один анон в ньюфаготреде сделал миникарту, повесив вторую камеру, которая показывала полностью всю комнату в уменьшенном виде. Но я не рекомендую такой способ.
Аноним 10/09/18 Пнд 17:22:05 #576 №526423 
>>526405
И камера ничего не рисует. Она показывает.
Аноним 10/09/18 Пнд 17:26:37 #577 №526424 
>>526423
Отрисовка в гамаке по умолчанию происходит на application_surface

https://docs.yoyogames.com/source/dadiospice/002_reference/surfaces/the%20application%20surface.html

Аноним 10/09/18 Пнд 17:37:12 #578 №526427 
Runner 2018-05-18 17-45-15-839.mp4
>>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, снимая скриншот, потом рисую интерфейс и рисую этот скриншот в нужном мне месте с нужным мне скейлом.

Аноним 10/09/18 Пнд 17:46:36 #579 №526428 
>>439561 (OP)
Так, вопросик. Планирую вкатиться в ГМ. Помимо встроенного языка GML можно использовать какие-либо языки программирования? Или онли GML?
Аноним 10/09/18 Пнд 17:49:28 #580 №526429 
>>526428
GLSL еще есть для шейдеров
Аноним 10/09/18 Пнд 17:52:15 #581 №526431 
>>526427
Но в принципе ты мог бы использовать для того же эффекта несколько view, нарисовав интерфейс в одном месте и выводя его на экран, сначала камеру, которая смотрит на интерфейс, а потом камеру. которая смотрит на уровень. Изменяя вторую камеру ты мог бы добиться того же самого.
Аноним 10/09/18 Пнд 18:07:55 #582 №526432 
>>526429
Благодарю
Аноним 10/09/18 Пнд 19:08:19 #583 №526436 
>>526432
Тэкс, посмотрел синтаксис, очень похоже на js с различными костылями.
Аноним 10/09/18 Пнд 20:15:25 #584 №526439 
Что скажете за гибкость DnD?
Аноним 10/09/18 Пнд 22:20:12 #585 №526458 
>>526439
Лучше кодь сразу. Потом себе спасибо скажешь.
Аноним 10/09/18 Пнд 22:30:31 #586 №526459 
>>526458
Я уже глянул на тот пиздец с DnD. Да, проще кодить.
Аноним 11/09/18 Втр 22:54:18 #587 №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, то на переднем плане будет персонаж. А тут наоборот.
Аноним 11/09/18 Втр 22:55:16 #588 №526632 
>>526631
А, ну да, само название depth означает глубину, то есть, насколько глубоко от пользователя находится слой. Мде
Аноним 11/09/18 Втр 23:19:45 #589 №526633 
>>526631
Всё равно ты будешь работать со слоями.
В room_start event записывай id слоёв в переменные а потом работай с ними. Иначе запутаешься.
Аноним 12/09/18 Срд 09:54:22 #590 №526658 
image.png
Скидон подъехал https://store.steampowered.com/sale/madewithgamemaker?utm_source=social&utm_campaign=sale
Аноним 12/09/18 Срд 11:49:02 #591 №526669 
>>526658
Блять. Я уж обосрался, что на 2 гамак скидка 80%, и меня неплохо наебали со скидкой по факту владения 1 версией.
Аноним 12/09/18 Срд 16:55:48 #592 №526697 
>>526669
А уж как я обосрался купил в воскресенье.
Аноним 13/09/18 Чтв 10:01:30 #593 №526766 
>>526658
В чём отличие двойки от 1.4, помимо той хуйни с тайлами и соплеразмазки ресурсов по экрану?
Аноним 13/09/18 Чтв 10:27:16 #594 №526767 
>>526658
чет - покупать вторую студию
нечет - перекатываться в юнити
Аноним 13/09/18 Чтв 10:28:49 #595 №526768 
>>526767
всего доброго
Аноним 13/09/18 Чтв 10:58:04 #596 №526773 
https://www.youtube.com/watch?v=UTyRXdk_Jro
Пиздец, как они такое делают на гамаке?
Аноним 13/09/18 Чтв 11:12:46 #597 №526775 
>>526773
Шо тебя смущает? Гамак же 3д поддерживает с палеозоя
Аноним 13/09/18 Чтв 11:17:08 #598 №526776 
>>526775
Ну прост я привык в качестве "3д на гамаке" видеть говние уровня бластеркопа. А тут что-то интересное и даже по своему красивое.
Аноним 13/09/18 Чтв 11:42:55 #599 №526780 
>>526776
Потому что у тебя, как и у большинства посетителей гдача, неправильное понимание движков: ты считаешь (и наверняка готов это отстаивать), что графон в игре обеспечивает движок. Но нет, графон обеспечивает разработчик, а движок обеспечивает среду для создания игор и более ничего.
Я как-то весной заикнулся об этом, так на меня целая толпа нубья слетелась, с пеной у рта доказывать мне, как я неправ.
Напомню, речь шла о том, что крупная студия при желании может сделать ААА-игру на любом из известных движков. Нубы усирались, доказывая, что нет, ты што, только на топовых движках, тычё!
И ещё.
Это твоё забуждение основано на тех образцах и примерах, что поставляются с движками. Есть ряд движков (не будем конкретизировать), которые поставляются с уёбищными и/или неоптимизированно-тормозящими демками. У людей, далёких от геймдева, складывается впечатление, что это предел возможностей движка. На самом деле демки - это предел творческих возможностей их создателей, не более.
Аноним 13/09/18 Чтв 11:48:24 #600 №526781 
>>526780
Ты прав.
Аноним 13/09/18 Чтв 11:52:23 #601 №526783 
>>526780
слечусь пожалуй на тебя.
>графон в игре обеспечивает движок
в видеосике статичная модель с запеченными лайтмапами. там даже свет очень всрато поддерживатся, чего уж говорить о современных шейдерах.
можно усраться, но даже готику первую на нем не сделать — нет костной анимации.
>крупная студия при желании может сделать ААА-игру на любом из известных движков
нет, не на любом, а лишь на паре десятков. игрострой это не только качество, это еще и возможность правильно отрисовывать это качество. напомните, сурс энжайн уже научился в pbr?
>На самом деле демки - это предел творческих возможностей их создателей, не более.
в юнети нет SSS и индирект лайт скаттеринга. точнее есть, но фейковые и от васянов с сопутствующим пакетом всякой вич-инфекции. почему ты считаешь что топовые студии могут обходиться без этих новомодных приблуд?
Аноним 13/09/18 Чтв 11:55:43 #602 №526784 
>>526783
>нет костной анимации
https://www.youtube.com/watch?v=C1SCb9ajsXM
Аноним 13/09/18 Чтв 12:00:55 #603 №526785 
>>526783
>можно усраться, но даже готику первую на нем не сделать — нет костной анимации
https://www.youtube.com/watch?v=_IC1OnTrkpE
Аноним 13/09/18 Чтв 12:16:30 #604 №526786 
>>526784
>>526785
хорошо, вы победили. готику сделать можно.
Аноним 13/09/18 Чтв 14:24:25 #605 №526799 
А вот Теккен не сделать!
Аноним 13/09/18 Чтв 14:30:08 #606 №526800 
>>526799
:D
Аноним 13/09/18 Чтв 15:16:24 #607 №526804 
>>526799
Да как нехуй!
Но вот лично мне лень ебаться с ебучими фреймами и прочим файтеровским говном)
Аноним 13/09/18 Чтв 21:20:45 #608 №526865 
c02fd66966[1].jpg
>>439561 (OP)
Первый день в гмс, как очистить нахуй вот эту хуйню, оставшуюся от передвижения персонажа? Олсо, ответьте, куда лучше подобную хуйню задавать: в gm тред или помощь ньюфагам? Так как я предполагаю, что ближайшие пару месяцев буду часто хуйню спрашивать.
Аноним 13/09/18 Чтв 21:46:32 #609 №526868 
>>526865
Здесь пиши. Я всегда отвечаю на адекватные вопросы. В ньюфаготред почти не хочу.

Твой вопрос не особо адекватен - что за хуйню ты вообще сделал?

Ты рисуешь не на application surface? Тогда делай каждый шаг в begin_draw_event surface_clear_alpha своему сурфейсу.
Аноним 13/09/18 Чтв 22:33:07 #610 №526870 
1b0de27d1c[1].jpg
0ee97f0c2b[1].jpg
>>526868
Первый день в гм, анон. Я вообще нихуя не знаю.
>application surface
Не ебу, что это. Как понял - отрисовка на отдельном слое

Сделал новую комнату, создал несколько слоев. В одном слое - инстансы объектов, другой - тайлсет.
Белая хренота по центру - персонаж, управляемый пользователем, коллизии обрабатываются таким образом(пикрил 2)
Кроме этого события ничего не писал.
Проблема в том, что при передвижении остаются предыдущие полупрозрачные отрисовки персонажа.

Как я понял, я должен чистить буфер после каждой отрисовки, как ты говоришь. Вот только я не знаю, как это сделать.
Аноним 13/09/18 Чтв 22:45:08 #611 №526871 
>>526870
Тогда у тебя просто фона нет, либо он у тебя прозрачный.

Сделай полностью непрозрачный фон.
Аноним 13/09/18 Чтв 22:47:49 #612 №526872 
>>526871
Благодарю.

Отсюда вытекает другой вопрос: Получается, все предыдущие draw сохранены и очищения не происходит?
Аноним 13/09/18 Чтв 22:53:27 #613 №526873 
>>526872
Когда ты рисует по умолчанию - ты рисуешь на application_surface

По умолчанию она не очищается, так что всё нарисованное остаётся на ней.

Когда ты включаешь фон, то в начале каждого шага на твоём application_surface рисуется фон в режиме gpu_set_blendmode(normal). Если фон непрозрачный, он соответсвенно заменяет собой каждый пиксель твоего application_surface, таким образом происходит его очищение. Потом, поверх этого фона, рисуется всё остальное.
Аноним 13/09/18 Чтв 22:54:41 #614 №526874 
>>526873
Спасибо
Аноним 14/09/18 Птн 19:56:56 #615 №526988 
Посоны, я интернет-инвалид, где найти русификатор на гамак?
Аноним 14/09/18 Птн 23:59:14 #616 №527031 
>>526988
Себе же хуже делаешь, запутаешься в меню, сверяя их с английскими эквивалентами. Даже если язык не знаешь, лучше англюсик ставить.
Аноним 15/09/18 Суб 11:54:08 #617 №527074 DELETED
>>526658
Это перманентная лицуха, или только на год?
Аноним 15/09/18 Суб 12:16:46 #618 №527078 
>>527074
Вроде пермач
Аноним 15/09/18 Суб 12:47:11 #619 №527080 
>>527074
>перманентная
Постоянная. Как же заебали косить под пиндосов
Аноним 15/09/18 Суб 12:52:34 #620 №527082 DELETED
>>527080
Лицевую поверхность отслеживателя изображений уже распечатал?
Аноним 15/09/18 Суб 13:19:18 #621 №527087 
>>527080
Я больше охуеваю, как в геймдеве - области, где все от и до сделано пиндосами, есть люди, которые от них отбрыикваются. Вы блять им ноги целовать должны. Хотя это вообще практически на все ойти распространяется.
Аноним 15/09/18 Суб 13:38:24 #622 №527089 
>>527087
>Вы блять им ноги целовать должны
Не передергивай
Аноним 15/09/18 Суб 13:38:39 #623 №527090 
>>527087
>Вы блять им ноги целовать должны
За то что они спиздили технологии немцев и русских?)) А ты знал что идея интернета сначала в ссср появилась?))

https://youtu.be/R3fw5y9VoQo
Аноним 15/09/18 Суб 14:16:00 #624 №527095 
>>527089
Отвечаю передергиванием на передергивание, если человек такими категориями размышляет, хули нет. Употреблять англицизмы - это закос под клятых пиндосов, ага.
Аноним 15/09/18 Суб 15:40:40 #625 №527106 
>>527090
>спездели!1!11!
Ну да, это такая уникальная разработка, да. То, что совок не смог реализовать интернет для общего доступа это значит, что он и не разработал его вообще. Я тоже могу сделать сотни прототипов уникальной игры, но это не значит, что это законченный продукт.
Аноним 15/09/18 Суб 16:15:39 #626 №527107 
>>527090
Я придумал в своей голове некстген игру и даже знаю как ее реализовать, теперь когда такую игру игру сделают, это значит, что у меня спиздили!!!!!
ебать ты ебнулся
Аноним 15/09/18 Суб 16:25:47 #627 №527109 
>>527106
>>527107
С чего вы взяли что ничего не было реализовано? Прототип наверняка тестировался. Пиндосы просто его спиздили и завербовали правительство СССР, которые свернули свои разработки. Так же и развалили СССР
Аноним 15/09/18 Суб 16:55:44 #628 №527112 
>>527109
Ты реально думаешь, что на такую жирноту кто-то поведется? инбифайв азаза ты же ответил значит повелся
Аноним 17/09/18 Пнд 12:50:00 #629 №527312 
Кстати, в маркетлейсе йойо отдают Geon FX с небольшой скидкой
Аноним 17/09/18 Пнд 14:42:31 #630 №527324 
>>526873
Новый вопрос. По поводу объектов. Вот, допустим, есть у меня объект персонаж. и есть стена. Я могу эту стену сделать в виде простого тайла читай, нарисовать на отдельном слое, а могу сделать в виде объекта со спрайтом. Как лучше сделать эту стену, чтобы потом обработать коллизии персонажа и стены.

Олсо, насколько я понял, в physics не рекомендуется создание большого количества объектов. Тогда, получается, придется пилить свою физику. Но не будет ли это костыльной хуетой, ведь можно использовать уже готовую физику. Также интересует, какое именно количество объектов в physics является критичным для средней системы.
Аноним 17/09/18 Пнд 23:34:09 #631 №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.
Аноним 18/09/18 Втр 04:44:49 #632 №527419 
>>527087
> где все от и до сделано пиндосами
Шизик и не лечишься.
Напомнил мне какую-то либерашку или какла верефицированного в твиттере, который на полном серьезе рассуждал о том, что латиница - "пиндосское изобретение".
Аноним 18/09/18 Втр 12:52:40 #633 №527432 
>>527419
хочешь сказать русское?
Аноним 18/09/18 Втр 14:40:24 #634 №527443 
>>527432
И не русское. И не пиндосское. А латинское, как ни удивительно.
Аноним 19/09/18 Срд 00:26:15 #635 №527496 
>>527443
Покажи мне на карте такую страну как Латиния))) только чур не украину)
Аноним 19/09/18 Срд 11:21:52 #636 №527519 
>>527496
Только после того, как ты мне покажешь "швейцарский" язык Швейцарии)) Раз у тебя все страны говорят на одноимённом языке)
Аноним 19/09/18 Срд 11:25:59 #637 №527520 
>>527496
А хотя, вот тебе из гугла:
>Лаций (лат. Latium) — регион в античной Италии, прародина современных романских языков. Здесь же зародились римляне. Его территория в настоящее время входит в состав более крупного административно-территориального образования современной Италии — Лацио.
Аноним 19/09/18 Срд 15:03:50 #638 №527545 
14761226428300.png
>>527520
>Италия
Ну ясно же, что пендосы проклятые. И кто теперь обосрался, м?
Аноним 19/09/18 Срд 15:10:52 #639 №527546 
Кто о чём, а пидорашки
о покланении хозяину. >>527087
Мочера в тред!
Аноним 19/09/18 Срд 16:42:12 #640 №527557 
>>527545
Пиндосы - греки.
Обосрался - ты (или тот, за кого ты отвечаешь).
Аноним 19/09/18 Срд 17:43:44 #641 №527562 
>>527087
>Вы блять им ноги целовать должны.
А ты целуешь или облизываешь? Про Пентковского и прочих слышал что или в школе не проходили?
Аноним 19/09/18 Срд 19:44:46 #642 №527581 
Покупать?
Аноним 20/09/18 Чтв 20:09:41 #643 №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)





Аноним 20/09/18 Чтв 20:11:09 #644 №527747 
>>527746
>\t
это артефакт в копировании
Аноним 21/09/18 Птн 00:23:58 #645 №527792 
>>527746
Во-первых опиши что ты хочешь и что у тебя есть. Со скриншотами и рисунками. Я тебе телепат, угадывать что там у тебя в голове?

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

В step event изменяй параметры part_emitter_region
Аноним 21/09/18 Птн 11:24:33 #646 №527840 
>>527792
Ну и вот это в каждом шаге part_particles_clear не даёт твоим партиклам "развиться". Что ты хотел-то?
Аноним 21/09/18 Птн 19:05:30 #647 №527917 
sparks.gif
>>527840
Хотел нечто подобное запилить, типа молнии при скольжении. Вчера как раз emitter_region подвигал и добился вот такого эффекта, но чет есть подозрение что я все равно не так это делаю лол

part_emitter_clear в степе чистит эмитер если объект не в нужном состоянии.
Аноним 21/09/18 Птн 19:24:37 #648 №527922 
>>527917
На, дарю.
https://drive.google.com/open?id=1sQCU6BROFcN11ChpTqD3DrHJXtcQp2s-

https://marketplace.yoyogames.com/assets/4574/geon-fx-particle-editor
Аноним 21/09/18 Птн 19:31:17 #649 №527925 
fx.gif
>>527922
>
>https://marketplace.yoyogames.com/assets/4574/geon-fx-particle-editor

Ты не поверишь, но купил на недавней распродаже

Так то спасибо, хех.
Аноним 21/09/18 Птн 19:39:23 #650 №527928 
Всем привет. Аноны, подскажите, можно ли на гейммэйкере сваять онлайн игру с динамично изменяющейся картой и большим числом игроков на сервере?
Аноним 21/09/18 Птн 19:45:08 #651 №527931 
>>527928
Можно.
Аноним 21/09/18 Птн 19:52:06 #652 №527937 
>>527931
Есть примеры таких игр? Можешь посоветовать какой-нибудь курс уроков по созданию многопользовательской ио игры на гейммейкере?
Аноним 21/09/18 Птн 20:01:06 #653 №527948 
>>527937
https://forum.yoyogames.com/index.php?threads/online-multiplayer-game.2109/
Аноним 21/09/18 Птн 20:07:00 #654 №527953 
>>527928
> онлайн игру с динамично изменяющейся картой и большим числом игроков на сервере?
Но нахуя?
Аноним 21/09/18 Птн 20:08:12 #655 №527954 
>>527953
Хочу сделать игру, похожую на starve.io
Аноним 21/09/18 Птн 20:08:56 #656 №527955 
>>527953
Под его определение попадают мультиплеерные крестики-нолики с динамично изменяющимся полем.
Аноним 21/09/18 Птн 20:16:17 #657 №527958 
>>527955
Динамично изменяющаяся карта - наверно, таким образом я описал возможность строить и сносить здания, сажать и рубить деревья, вот это всё.
Аноним 21/09/18 Птн 20:27:58 #658 №527963 
>>527958
> таким образом я описал возможность строить и сносить здания, сажать и рубить деревья
Очередной выживач с 0 онлайна чтоле?
Это можно сделать на чем угодно, но с твоими познаниями максимум что ты сделаешь - нечто, запускающееся только на суперкомпьютерах.
Аноним 21/09/18 Птн 20:30:13 #659 №527964 
>>527963
>Очередной выживач с 0 онлайна чтоле?
Да, типа того.
А почему моя поделка заработает только на суперкомпьютерах? Подобные игры очень требовательны к чистоте коде и вычислительным ресурсам?
Аноним 21/09/18 Птн 20:38:06 #660 №527967 
>>527964
> А почему моя поделка заработает только на суперкомпьютерах?
Потому что тебе нужно будет писать код не только как рубить деревья и перемещать персонажа, а с оглядкой на то, чтобы у тебя весь твой огромный мир работал одновременно и не засорял память лишними вычислениями.
Аноним 28/09/18 Птн 10:05:08 #661 №529289 
image.png
image.png
Есть у кого проблема с интерфейсом GMS2? Когда приближаешь, кажется, что даже текст растровый, все мылиться, и потом при отдалении это мыло остается. Очень глаз режет, помогите пожалуйста.
Аноним 29/09/18 Суб 18:54:28 #662 №529562 
>>529289
Бамп вопросу, а то потонет.
Upd: настройка dpi ничего не дала
Аноним 29/09/18 Суб 20:37:14 #663 №529574 
>>529289
Да, есть такое. Пофиксить не получится, насколько я знаю. Но в настройках можно задать размер шрифта, если тебя не устраивает дефолтный и тебе приходится сильно приближать окно для работы.
Аноним 30/09/18 Вск 09:02:41 #664 №529647 
>>529574
Да с кодом я решил проблему настройкой его открытия в новом окне. А вот все остальное просто раздражает.
Аноним 30/09/18 Вск 10:50:27 #665 №529664 
Как лучше отрисовать карту - полностью нарисовать всю карту (все дорожки,тропинки,цветочки и прочие статические прелести)в редакторе или разделить все части карты на тайлы и расставить их вручную?
Аноним 30/09/18 Вск 10:59:07 #666 №529665 
>>529664
Когда карту достаёшь из колоду, на ней уже всё нарисовано.
Учись правильно задавать вопросы.
Аноним 30/09/18 Вск 11:49:39 #667 №529668 
>>529664
Удобнее работать с тайтлами. Появляется возможность нормального переиспользования, если карта большая - лучше оптимизация
Аноним 30/09/18 Вск 14:17:42 #668 №529688 
>>529562
>gd
>потонет
)))
Аноним 03/10/18 Срд 20:32:15 #669 №530552 
Внимание! Не рекомендую ставить сегодняшний апдейт GMS2

Там пиздец какие баги.
Аноним 16/10/18 Втр 15:24:45 #670 №532691 
Ёбаный-карёбаный, вы ещё не сдохли?
Аноним 16/10/18 Втр 23:13:03 #671 №532768 
>>532691
>>529688
Аноним 17/10/18 Срд 23:10:51 #672 №532964 DELETED
>туториал с сайта
Вы реально так поехавшие?
Аноним 18/10/18 Чтв 22:29:22 #673 №533066 DELETED
Рисовать во время анимации - тема.
Аноним 18/10/18 Чтв 23:06:31 #674 №533080 
>>439561 (OP)
Ананас, хочу вкатиться в GMS ибо самому с нуля каждый раз писать дико удручает и выматывает, а тут будет как мне кажется несколько проще.
С чего начать? Опыта в программировании достаточно.
Аноним 18/10/18 Чтв 23:13:04 #675 №533081 
>>533080
>Опыта в программировании достаточно.

Тогда с диздока.
Аноним 18/10/18 Чтв 23:15:39 #676 №533082 
>>533081
Если ты про "изучить интерфейс" и "как создавать объекты и размещать их в комнате" то начинай с
https://www.youtube.com/channel/UCn7FE3Tx391g1tWPv-1tv7Q
Аноним 18/10/18 Чтв 23:17:09 #677 №533083 
>>533081
Нихера себе.
Аноним 20/10/18 Суб 01:21:02 #678 №533256 DELETED
Можно ли научить авто-тайлинг рандомизации?
Аноним 20/10/18 Суб 01:55:00 #679 №533258 DELETED
>>533256
И как вообще автотайлингом пользоваться в рум-едиторе?
Аноним 21/10/18 Вск 23:30:35 #680 №533545 
Как рисовать партиклы на экране, чтобы они были в статике? Я так понимаю все партиклы рисуются от объекта, но если объект двигается то эффект от них размывается по поверхности. Надо их как-то от вида рисовать или че?

Допустим у меня есть гуи с хп, и я заебенил клевый эффект мерцания при определенных обстоятельствах (подбор апетеки) но т.к. сейчас я рисую его в объекте игрока эффект как будто растекается по поверхности за игроком (считай скорость появления спрайтов в партикле х еденица времени).
Можно их как-то рисовать относительно вида? Или сделать объект который будет рисоваться относительно вида, или камеры?
Аноним 22/10/18 Пнд 11:25:16 #681 №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() );
Аноним 22/10/18 Пнд 14:08:53 #682 №533601 
>>533582
>>533582
>Что значит фраза "партиклы рисуются от объекта"? Ты упоротый?
Я имел в виду что координаты для имитера мы задаем в объекте.

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

За советы спасибо, попробую накатить.
Аноним 22/10/18 Пнд 14:43:45 #683 №533605 
>>533601
Модешь ещё попробовать в ивенте draw_gui рисовать свой интерфейс и в этом же ивенте использовать функцию
part_system_drawit()

Не знаю, что получится. Но по-идее должно быть именно то, что тебе нужно.

draw_gui это такой ивент, когда все координаты считаются не относительно верхнего левого угла комнаты, а относительно верхнего левого угла экрана.
Аноним 22/10/18 Пнд 17:09:01 #684 №533624 
>>533605
Вроде запилил, учитывая что я до этого на сурфейсы вообще не смотрел. Сейчас хоть разобрался что да как
Аноним 22/10/18 Пнд 22:21:42 #685 №533685 
14695650804830.jpeg
ПОМОГИТЕ АНАНАСЫ!
Во второй версии геймейкера присутствует такая функция: instance_create_depth, которой нет в версии 1.4, на которой я работаю.
Мне нужно написать что-то типа этого

if (keyboard_check_pressed(ord("")))
instance_create_depth(x, y, 0, object);


через функции 1.4, подскажите как
Аноним 22/10/18 Пнд 22:52:27 #686 №533688 
>>533685
Ничего не перепутал?
Вроде в 1.4 нету layer зато есть depth. А в 2 есть и то и другое.

И в чём проблема-то? Ну заменяешь depth на layer, содаёшь instance_layer на нужной тебе глубине и создаёшь инстанс в него.
Аноним 04/11/18 Вск 18:35:31 #687 №535521 
Может кто-нить в курсе
поставил объекту вертикальную скорость hspd = sign(obj_player,y-y)* spd
но при достижении одного уровня высоты его начинает немного трясти
проверки уровня высоты и ограничения скорости не помогают, что я делаю не так?
Аноним 04/11/18 Вск 18:47:09 #688 №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
}
Аноним 05/11/18 Пнд 18:44:16 #689 №535714 
Screenshot2.png
>>439561 (OP)
Вчера прошел свежевышедший сиквел Ундертале, и так вдохновился заебенить что-нибудь эдакое (благо идея есть), что начал гуглить, в чем игру делали. Оказалось - Гейммейкер.
Скажите, если я пиратку поюзаю, а потом нет-нет да и решу серьезно заняться проектом для выкатывания его на всеобщий суд, мне же придется покупать лицуху или как? Там типа строго с этим, от каждого юзера требуют какой-нибудь лицензионный код в качестве пруфа или что?
И главное: можно же будет потом все свои недоделки с пиратки на лицуху перекинуть? Читать-то двиглу в теории один хуй те же самые файлы.
Аноним 05/11/18 Пнд 18:55:32 #690 №535715 
>>535714
>все свои недоделки с пиратки на лицуху перекинуть? Читать-то двиглу в теории один хуй те же самые файлы.
перекинуть - да, остальное хз
Аноним 05/11/18 Пнд 19:01:01 #691 №535717 
>>535714
Берёшь бесплатную триалку и делаешь.

К тому моментку, как ты хорошенько освоишься с гамаком, вопрос покупать/не покупать у тебя отпадёт.
Аноним 05/11/18 Пнд 19:03:38 #692 №535718 
>>535717
И в чем особенность триалки? Вырезано 95% функционала лицухи?
Аноним 05/11/18 Пнд 19:10:07 #693 №535720 
>>535718

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

Но можно загрузить в триалке проект, в котором уже несколько тайловых слоёв создано и работать с ним. Например туториальный проект.
Аноним 05/11/18 Пнд 19:14:32 #694 №535723 
>>535720
Вроде же еще какие-то функции не работают?
Аноним 05/11/18 Пнд 19:31:36 #695 №535724 
>>535723
https://help.yoyogames.com/hc/en-us/articles/230407528-GameMaker-Studio-2-Trial-Limitations

Аноним 05/11/18 Пнд 21:45:57 #696 №535737 
>>535714
Много таких по весне оттаяло.
Аноним 05/11/18 Пнд 23:04:23 #697 №535742 
>>535737
Можно только порадоваться, что ещё кто-то решил взяться за дело. Зачем сразу пугать?
Аноним 05/11/18 Пнд 23:22:22 #698 №535745 
>>535742
Потому что даже горящие геймдевом долгое время люди приходят и обсираются. А тут ребенок, который жил себе не тужил, вдруг поиграл в очередное оверхайпнутое говно для детей и решил в геймдевелопера поиграть, ну так, в перерыве между каточками в фортнайте. Какой багаж базовых знаний ему нужен, ребенок, конечно же, не удосужился узнать, думая, что двигло сделает все за него по нажатию кнопки "зделоть пиздато", да и местые шизики ведь уверяют, что "нада тока начать и будет крута атвичаю!", ну точно все заебись должно быть! В чем же заключается цепляемость того же ундерсраля, у ребенка есть только призрачные (и те неверные) представления, но у него уже есть "идея" своей слезодавильной говноистории, которая, конечно же, взорвет весь игропром (нет). При получении все большего и большего количества помощи и сурсов для чтения по движку у ребенка начнут затухать его горящие глаза творца, пока окончательно не потухнут и он не пойдет дальше брать топ-1 в своем фортнайте. Проходили уже.

А еще этот ребенок выкладывает свой пост в гамако-треде, хотя замени в нем гамак на любое другое двигло - и ему место только в ньюфаготреде, а здесь должны быть обсуждения по конкретным фичам конкретного движка и решения вопросов по коду и прочим непонятным штукам, а подобные посты лишь разбавляют концентрацию полезных постов своей бесмыссленностью.
Аноним 05/11/18 Пнд 23:38:01 #699 №535750 
>>535745
Мне это ты зачем объясняешь?
А ты в курсе, что самые фанатичные и упорные как раз таки тоже дети? В определённом возрасте ребёнок может определить для себя интерес на всю жизнь. Нужно только поддержать.

И по поводу поддержания треда в чистоте ты не совсем прав. Этот тред по большей части бессмыслен. Уровень вопросов от неофитов тут вот такой: >>535521
Какая ещё концентрация полезных постов? Её даже на yoyo форуме нет.
Аноним 06/11/18 Втр 07:45:57 #700 №535789 
>>535745
Ебать тут обиженке сракотан половой жопы разворотило, аж стену высрал, проецируя свои боли и обиды на взрослого и успешного человека.
Аноним 06/11/18 Втр 10:13:51 #701 №535799 
>>535789
>обиженке сракотан половой жопы разворотило
>взрослый и успешный человек

Что-то не сходится.
Аноним 07/11/18 Срд 22:15:23 #702 №536079 
Скажите, а у всех в процессе загрузки компонентов при первом запуске GM насоздавал хуеву гору системных дисков, а потом их поочередно поудалял? Я вообще не понял юмора.
Аноним 07/11/18 Срд 22:19:22 #703 №536081 
>>536079
у меня во время использования он их создает
Аноним 07/11/18 Срд 22:20:37 #704 №536082 
>>536081
Он ебанутый? Че он с ними делает?
Аноним 07/11/18 Срд 23:06:58 #705 №536095 
>>536079
Есть такая хуйня.
Он делает 3 виртуальных диск, в каждом из которых содержимое гамакерской AppData.

Зачем - ни малейшего представления. Но если у него вдруг не получится это сделать - приложение не запустится.
Аноним 10/11/18 Суб 10:34:57 #706 №536359 
>>439561 (OP)
Посмотрел вот это:
https://www.youtube.com/watch?v=izNXbMdu348
Если до конца все было понятно, то с прыжка я охуел.
Почему vertical speed была выставлена на -7? Почему минус 7? Ось координат поменяла свои значения? Вроде вверх — это плюс.
Но что я точно не понимаю — это каким хуем вообще здесь работает прыжок. Почему спрайт прыгает вверх, замирает, а потом падает вниз? Чем это вообще обусловлено? Почему прыжок плавный? Судя по коду, после нажатия пробела спрайт должен телепортироваться на 7 пикселей вверх и вроде бы даже замереть в воздухе. Почему он, сука, падает?
Почему я такой тупой?
Аноним 10/11/18 Суб 11:22:05 #707 №536366 
>>536359
Он присваивает -7 вертикальной скорости, которая потом увеличивается из-за гравитации, и получается плавный прыжок.
И там ниже он делает y=y+vsp, что ставит вертикальную координату.
Аноним 10/11/18 Суб 11:31:10 #708 №536367 
>>536359
Потому что начало координат обычно считается от верхнего левого угла поля и ось Y направлена вниз.
Привыкнуть не легко.


После нажатия прыжка спрайт подпрыгивает вверх на 7 пикселей 60 раз в секунду (или 30 раз, смотря какой фреймрейт выставлен).
Плюс идёт работа гравитации, которая плавно обнуляет скорость прыжка а потом разворачивает её в другую сторону. Почему ты этого не заметил?

v=at

Это, вроде, пятый класс.
Аноним 10/11/18 Суб 11:31:32 #709 №536368 
>>536359
>Почему минус 7?
Очевидно, ось Y направлена вниз. В разных движках могут оси располагать как создателям вздумается.

>Почему спрайт прыгает вверх, замирает, а потом падает вниз?
Действует гравитация. Тело движется с ускорением. Смотри внимательнее.
>vsp = vsp + grv;
vsp сохраняет свое значение каждый кадр, и его немного изменяет grv.
Аноним 10/11/18 Суб 14:09:23 #710 №536379 
>>536366
>>536367
>>536368
Спасибо за попытку объяснить, но я все равно нихуя не понял.
Попробую сам все это повторить ручками, может, допетрю.
Аноним 10/11/18 Суб 14:26:51 #711 №536381 
>>536379
Код в step event выполняется циклично, 60 раз в секунду.
Аноним 10/11/18 Суб 15:59:58 #712 №536396 
>>536381
Это я понял. Я даже примерно могу представить, что высота прыжка именно в vsp = -7 и устанавливается. Я не понимаю, где в коде указано, что спрайт должен падать при достижении этой отметки.
Аноним 10/11/18 Суб 16:14:16 #713 №536399 
>>536396
Вот здесь:

vsp = vsp + grv;

Каждый шаг к скорости прибовляется 0.1
В момент нажатия кнопки "прыжок" скорость мгновенно становится -7 и персонаж летит вверх.
Затем в течении 70 шагов скорость увеличивается до 0, и персонаж останавливается. Это высшая точка прыжка. Потом скорость продолжает увеличиваться по 0.1, скорость становится положительной и персонаж с ускорением летит вниз.
Аноним 10/11/18 Суб 16:23:47 #714 №536402 
>>536396
0.1 это ускорение, начальная скорость в -7 каждый фрейм "увеличивается" на 0.1, т.е. за 60 фреймов скорость станет -1, за 120 фреймов станет 5, т.е. объект в обратную сторону по игреку двигаться начнёт.
На 70 фрейме скорость будет 0 - это и есть та точка, где спрайт зависнет в воздухе, а на 71 фрейме начнёт падать из-за скорости в 0.1
Аноним 10/11/18 Суб 16:37:22 #715 №536405 
>>536399
>>536402
Бляха-муха, я понял. Нет, правда.
Спасибо от души.
Аноним 11/11/18 Вск 04:21:40 #716 №536503 
Таки получил первый заказ на игру сделанную в гм2 и заработал свои первые 100к лол.
Аноним 11/11/18 Вск 04:23:39 #717 №536504 
>>536503
Поздравляю. Пили кулстори как поднять бабла
Аноним 11/11/18 Вск 04:31:12 #718 №536506 
>>536504
Да внезапно чел постучался и грит, мол другнейм говорит, ты можешь игори делать, а мне как раз нужна небольшая перда.
В итоге сделал ему его раннер и получил баблеца.
Аноним 11/11/18 Вск 04:32:28 #719 №536507 
>>536506
Хорошие у тебя друзья. Итог покажешь, или это сорт оф НДА?
Аноним 11/11/18 Вск 04:33:40 #720 №536508 
>>536507
Покажу как он релизнет ее, если не забуду. Пока просил не светить.
Аноним 11/11/18 Вск 04:36:37 #721 №536510 
>>536508
дил
Аноним 11/11/18 Вск 04:37:57 #722 №536511 
Алсо, как же заебал GML, сил моих нет уже. Так устал костылить со скриптами это словами не описать. Хоть на юнити перекатывайся к нормальному ООП блжад.
Аноним 11/11/18 Вск 12:01:27 #723 №536537 
15348576671581.gif
>>536506
Прикольно, а что, всю разработку, включая арт и музыку, ты сам ебашил?
Как к цене такой пришли, с самого начала договорились, или ты почасовую озвучил, или в конце просто сказал: дай стописят штукарей, а заказчик такой: "Че ахуел?))) вот те сто и радуйся епта"?
Аноним 11/11/18 Вск 13:52:07 #724 №536552 
Товарищи, а как сделать так, чтобы я нажал кнопку один раз, и анимация вращения проигралась целиком, но при этом у меня нет раскадровки, а только image_angle += 10?
И так, и сяк ебался, лупы тут просто не работают, потому что луп покадровый и так запущен.
Анимация проигрывается нормально только для зажатой клавиши.
Аноним 11/11/18 Вск 15:46:29 #725 №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;
}
}
Аноним 11/11/18 Вск 19:24:01 #726 №536602 
Сап двач, у меня к тебе разговор.
Я старпёр 30+ который уже отработал на разных работках. Несколько лет назад меня это задобало, и я решил уйти в геймдев, благо накопил нехило денег пока работал. Пообщался с разными людьми, прокачал свои скиллы (рисование/анимация, в код не могу, ибо окологуманитарий), поработал за еду в котрке которая пилила мобилки что бы понять как это работает изнутри, и в итоге открыл свою компанию. Естеественно начал пилить игру мечты, и вполне закономерно провалились, потеряв попутно почти всё что заработал за 10 лет.

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

Короче говоря, ищю партнёра на новый проект. Особенно если у тебя уже есть опыт в игрострое (дополнително, если ты погромист будем более менее друг друга дополнять). Хотелось бы вовлечёного человека (то есть с долями в компании), ну и желательно не моложе 25и и с достаточном количеством свободного времени. Так как бюджет есть, то будет скорее всего и зарплата. Короче всё обсудимо.

Понимаю что не лучшее место для такого поиска, но я пробую все варианты, если интересно пиши на фейко мэйл: [email protected]
Аноним 11/11/18 Вск 20:15:08 #727 №536610 
>>536602
Я готов, но непонятно, что за проект, 2д говно на гамаке?
Аноним 11/11/18 Вск 20:59:18 #728 №536616 
>>536602
И потому ты зашёл на двач. Уж тут-то ты найдёшь адекватных сотрудников.

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

Сдаётся мне, ты очередной шизик.

У нас в последнее время просто наплыв директоров. Школа бизнес молодости где-то протекла?
Аноним 11/11/18 Вск 22:27:48 #729 №536634 
>>536565
Дополнительная переменная, которую нужно понижать до нуля с каждым поворотом. Ну конечно!
Грасиас, синьор.
Аноним 11/11/18 Вск 23:57:01 #730 №536644 
>>536610
Есть различные наработки, хотелысь бы вместе выбрать.
>>536616
Ты дебик или на русском читать не умеешь? Ссылки не будет посколько нихрена ничего не было сделанно. А насчёт энтузиазма, прямо же написанно что раз есть бюджет будет и зарплата...
Аноним 12/11/18 Пнд 00:01:42 #731 №536646 
>>536602
На почту-то будешь отвечать?
Аноним 12/11/18 Пнд 07:10:00 #732 №536675 
>>536644
>Есть различные наработки, хотелысь бы вместе выбрать.
Я в констракте профи, гамак даже не открывал ни разу.
Аноним 12/11/18 Пнд 12:51:59 #733 №536700 
>>536602
> Нашёл с горем пополам инвестора
Чот кринжанул.
Инвесторы на 2д перделки сделанные на гамаке.

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

Не помню ни единого завершенного проекта, который бы начинался так. А вся инди годнота вообще была сделана на коленке одним-двумя людьми, которые просто проверяли свои силы в игрострое.
Аноним 12/11/18 Пнд 13:03:21 #734 №536701 
>>536700
>которые просто проверяли свои силы в игрострое.
>а потом подняв бабла в полную силу пилили ИГРУ и получалось только говно и моча
Аноним 12/11/18 Пнд 13:09:06 #735 №536702 
Внеземной долбоеб.jpg
Что ты такое.jpg
>>536700
>кринжанул
Аноним 12/11/18 Пнд 13:18:34 #736 №536704 
>>536701
Именно так.

>>536702
О, одноклассники протекли :)
Аноним 12/11/18 Пнд 13:35:50 #737 №536707 
Долбоеб, блять, гондон.jpeg
>>536704
>О, одноклассники протекли :)
Ыыы, бля
Аноним 12/11/18 Пнд 15:53:23 #738 №536718 
>>536700
Блэать, только что дошло что изначально запостил не в тот тред. Гамак или негамак не похер одходило бы только к игре.

>Не помню ни единого завершенного проекта, который бы начинался так
Stardust Valley, Armello, World of Goo, Minecraft...Нет не слышал про такое.


Аноним 12/11/18 Пнд 15:55:22 #739 №536719 
>>536718
Ну что, ты нашел "партнера"?
Аноним 12/11/18 Пнд 19:08:17 #740 №536728 
>>536718
>Stardust Valley
Stardew Valley
Создан одним человеком, который и рисовал, и кодил, и писал музыку. Начал делать игру спонтанно, пытался лишь воссоздать более старую игру Harvest Moon, как проверку своих сил после обучения программированию.
> World of Goo
Создан двумя друзьями в свободное время от основной работы в EA.
> Minecraft
Создан одним человеком. Спонтанно, как попытка возродить более древнюю и уже дохлую на тот момент игру Infiniminer.

Я вижу у тебя познания на уровне.
Аноним 12/11/18 Пнд 19:20:47 #741 №536729 
>>536728
Hollow Knight тебе в ебало.
sageАноним 13/11/18 Втр 16:08:27 #742 №536792 
>>536700
> А вся инди годнота вообще была сделана на коленке одним-двумя людьми, которые просто проверяли свои силы в игрострое.
Инди-годнота типично сделана адовыми профи с десятком лет за плечами увидевшими что издатели уходят из рыночной ниши малых и средних игр.
Аноним 15/11/18 Чтв 23:37:02 #743 №537105 
Здарова, гамакеры.

Вопрос теоретического порядка. Есть игра на ведра https://www.youtube.com/watch?v=5G7Xb5gFa80
Как наиболее оптимально реализовать похожую механику поведения пловцов?
Рассчитывать шаг исходя из того что в игре все клетки одного размера и добавлять условия при встрече с бортами? Как вообще реализуют такого рода игры с хождением по клетке? вот еще пример ходьбы по клеткам https://youtu.be/ptYwMwxP7ho
Аноним 16/11/18 Птн 04:14:37 #744 №537132 DELETED
>>536729
>Hollow Knight тебе в ебало.
Аноним 16/11/18 Птн 09:38:04 #745 №537139 
>>537105
А в чём вообще проблема заключается?
Сам-то подход пытался придумать?


Я бы сделал ds_grid, задающую координатную сетку.
В каждую ячейку поместил бы массив, описвающий её содержимое.
Тип клетки, соответсвующий спрайт, всякие дополнительные параметры типа "рассыпанные камни" или "в зоне действия водоворота". И естественно ссылки на объекты, которые в ней находятся.

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

Затем в конце каждого хода выключал бы контроллер игрока, и двигал объекты в соответствии с ds queue, проигрывая анимацию движения.
Аноним 16/11/18 Птн 10:23:10 #746 №537144 
>>537139
Понел, пойду читать документацию потому как до этого касался ds_grid только теоретически.
Аноним 16/11/18 Птн 10:27:34 #747 №537145 
>>537139
>ds_grid
Да, вопрос в подходе. В этом проекте хочется попробовать не говнокодить со старта а сделать нормальную базу.
Аноним 16/11/18 Птн 10:55:47 #748 №537146 
>>537145
Можешь ещё всунуть в каждую ячейку ds_grid ссылку на ds_map вместо массива.

И для каждой клетки свой ds_map вести.
Аноним 19/11/18 Пнд 13:39:44 #749 №537537 
Ананасы, мож кто знает как импортнуть видео для катсцены в гмс 2?
Нужно сильно шо пиздец
Аноним 22/11/18 Чтв 23:58:09 #750 №537945 
>>537537
Видел на итче какую-то тему связанную с импортом видео в гамак, погугли. Не знаю правда поможет или нет.
Аноним 23/11/18 Птн 22:15:19 #751 №538075 
>>537537
Вроде как на маркете есть ассет, который это делает. Но он вроде как платный.
Аноним 06/12/18 Чтв 23:33:18 #752 №539833 
Через полтора года юзания гма начал потихоньку перекатываться на юнити.
Аноним 07/12/18 Птн 12:46:45 #753 №539907 
>>539833
Почему?
Аноним 07/12/18 Птн 13:40:17 #754 №539919 
>>539907
Потому что не знал про божественный CopperCube!
Аноним 07/12/18 Птн 19:17:41 #755 №539983 
>>539907
У гамака есть огромная проблема. При мало-мальском усложнении проекта вся структура кода идет по пизде из-за того, что ГМЛ очень и очень слаб.
То есть вместо того, чтобы писать человеческие классы с нужными методами, ты постоянно плодишь скрипты, которые лежат хуй знает где и ты начинаешь охуевать от говнокода.

Плюс отсутствие нормальных человеческих структур данных вымораживает. ds_list, ds_map - это ебаный ад и израиль.

Т.е. пилить всякие платформеры/раннеры несложные гамак позволяет очень легко и быстро. Но как только ты делаешь что-то с механиками посложнее - начинается пиздец.

Люблю гамак всей душой, но я его перерос.
Аноним 07/12/18 Птн 19:56:49 #756 №539987 
>>539983
Добавлю что из скрипта можно, например, вернуть только одну переменную, когда хотелось бы, например, вектор.


Но перекатываться всё же пока не планирую.
Аноним 07/12/18 Птн 19:59:19 #757 №539990 
>>539987
Из скрипта можно вернуть массив (или дс лист) с нужным кол-вом переменных. Но это треш все равно.
Аноним 09/12/18 Вск 20:38:26 #758 №540265 
Скачал я тут значит ваш гамакер. Хочу забахать игру типо хотлайн майами чтобы продалась в миллион копий. С чего начать?
Аноним 09/12/18 Вск 21:01:43 #759 №540269 
>>540265
С туториалов Спалдинга.
Аноним 11/12/18 Втр 14:22:38 #760 №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

Аноним 11/12/18 Втр 14:58:18 #761 №540520 
>>540513

У тебя ещё гравитация работает? Направление vspeed учитываешь?
Скорее всего у тебя вот это (vspeed < 0 && !place_free(x,y-vspeed)) в правду превращается, когда vspeed обнуляется, а потом срабатывает гравитация. Хуй знает короче.

Запускаешь игру в режиме дебага, когда объект прилип к платформе табаешься в ide и ставишь брекпоинт в step event объекта. И шаг за шагом смотришь, что у тебя срабатывает.

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



Безотносительно твоего вопроса - не рекомендовал бы использовать вот эту шнягу искаропки: move_contact, place_free и т.д. Особенно если пишешь платформер. Напиши свои функции, о работе которых ты будешь знать всё. А то тебя ждут весёлые провливания сквозь пол, застревания, прилипания. Вот это всё.
Аноним 11/12/18 Втр 15:00:25 #762 №540521 
>>540513
Ну и ещё по движущимся платформам совет.

Обрабатывай движения игрока в step а движения платформ в end_step или begin_step.

Нехорошо когда объекты двигают друг друга в произвольном порядке.
Аноним 11/12/18 Втр 15:33:25 #763 №540530 
>>540520
Спасибо анон, поковыряю.
Добра
Аноним 11/12/18 Втр 19:10:56 #764 №540567 
Хз, было или нет, но вот вам Гамак Студия 2

https:// rut racker. org/forum/viewtopic.php?t=5603189
Аноним 11/12/18 Втр 19:12:04 #765 №540568 
А у меня вопрос, как сделать анимацию броска кубика (6-8-10-20 граней, способ, наверное, универсальный должен быть). В смысле, ну, не рисовать же анимацию перекатывания от каждого числа к каждому числу, верно?
Аноним 11/12/18 Втр 19:16:28 #766 №540569 
>>540568
А как ты хочешь, чтобы она выглядела? Можешь 3д кубик нарисовать и бросать.

Можешь нарисовать каждую грань отдельным спрайтом а потом на едином шаблоне рисовать отдельные спрайты.
Аноним 11/12/18 Втр 19:17:14 #767 №540570 
>>540567
Тебе 6 лет? Пшел в садик!
Аноним 13/12/18 Чтв 18:23:27 #768 №540856 
>>540569
нет ли каких-то демо проектов с чем-то похожим? Чтоб посмотреть?

На самом деле мне не принципиально, каким именно образом
Аноним 13/12/18 Чтв 21:55:21 #769 №540882 
>>540856
>На самом деле мне не принципиально, каким именно образом

Ну вот тебе 2d кубик на 4.

https://drive.google.com/open?id=1hwj8sHL90HCjP7OVacbJTZGzzKjBXuLp
Аноним 13/12/18 Чтв 22:42:59 #770 №540893 
>>540882
<3
Аноним 19/12/18 Срд 02:34:04 #771 №541343 
>>539833
Перекат в процессе, заодно хапнул заказик, чтобы училось лучше.
Юнька-таки гораздо удобнее конечно, если в ней разобраться. На гме у меня правда все делалось в 1.5 - 2 раза быстрее, но чем дальше в проект, тем больше пизда рулю в плане организации кода.
Человеческое ООП решает все-таки.
Аноним 24/12/18 Пнд 11:03:35 #772 №541931 
>>541343
2d заказики есть на юньке?
Аноним 24/12/18 Пнд 17:53:07 #773 №542013 
>>539987
>>539990

>можно, например, вернуть только одну переменную
>можно вернуть массив (или дс лист) с нужным кол-вом переменных

А что с этим не так? Деды возвращали из функций всегда по одной переменной, и ты так делай. Чем отдельные скрипты принципиально отличаются в этом плане? Нужно много данных вернуть - заворачиваешь их в объект/структуру/массив/небо.
Аноним 24/12/18 Пнд 20:30:37 #774 №542038 
>>541931
Да
Аноним 26/12/18 Срд 19:39:01 #775 №542386 
image.png
image.png
Сап двач. При создании комнаты возникает вот такая проблема, хотя у объекта текстбокса слой выше(глубина равна 0)

Причем после переходов через комнаты все становится норм.

В чем косяк? Сталкивался кто? ибо я упорно не понимаю чому слои не работают как надо
Аноним 26/12/18 Срд 19:40:24 #776 №542389 
image.png
>>542386
слои
Аноним 26/12/18 Срд 21:35:05 #777 №542433 
>>542386
дебажь глубину в степ эвентах всех объектов и смотри, чо за хуйня

show_debug_message(depth);
Аноним 26/12/18 Срд 21:44:33 #778 №542435 
>>542386
Возможно в какой-то из комнат слои в другом порядке идут.
Аноним 26/12/18 Срд 22:30:56 #779 №542457 
image.png
image.png
>>542435
прочекал, везде одинаково


>>542433
попробую сейчас
Аноним 26/12/18 Срд 22:39:39 #780 №542461 
image.png
>>542433
чому то глубина одинакавая выставлялась.
Выставил для каждого объекта отдельно - пофиксилось

Спасибо геймдевач-помогач
Аноним 27/12/18 Чтв 06:39:14 #781 №542509 
>>542461
https://www.youtube.com/watch?v=f7KOOp80VJY
ебать охуенно
Аноним 27/12/18 Чтв 14:36:29 #782 №542602 
7oR01oTtc-4.jpg
>>439561 (OP)
Вопрос №1: Можно ли на нём пилить RTS, 3d/2d масштабом в 25-50 юнитов на экране?

Вопрос №2: Можно ли на нём пилить (TBS), 3d/2d масштабом в 50-100 юнитов на экране?

Вопрос N3: Возможно ли на нём прописать аи противника?

я кончил.
Аноним 27/12/18 Чтв 15:11:19 #783 №542617 
>>542602
да
Аноним 27/12/18 Чтв 15:30:12 #784 №542620 
>>542602
3д в гамаке хуевый, не стоит даже пробовать.
В 2д в принципе можно делать что угодно, но если у тебя планируется ложная логика проекта, то быстро упрешься в ограничения GML/
Аноним 27/12/18 Чтв 15:44:58 #785 №542624 
>>542620
Что ты там воду льёшь?
Вопрос: можно ли сделать то то и то то.
Ответ: можно.
Всё.
Аноним 28/12/18 Птн 23:03:52 #786 №542830 
>>542461
Где ты уроки находишь, или сам разбираешься в проге?
Аноним 28/12/18 Птн 23:22:22 #787 №542833 
>>542830
https://www.youtube.com/channel/UCn7FE3Tx391g1tWPv-1tv7Q

мимо
Аноним 29/12/18 Суб 00:17:23 #788 №542844 
Runner 2018-12-09 00-20-18-93.webm
>>542602

Здесь:
Пасфайдинг.
Система классов: маг/вор/воин
Система квестов
Система принятия решений.
Система нанесения урона.

Сдлано за два вечера.
Аноним 04/01/19 Птн 04:31:43 #789 №543647 

Моя геймдев-карьера: установил украденную версию 1.4, не смог запустить.
Аноним 04/01/19 Птн 04:55:29 #790 №543650 
>>543647
В том числе 1.4.9999.
По результатам гугла моя ошибка описана здесь, только у меня ХР:
https://gcup.ru/forum/36-29024-1

>Установочник запускается,установка успешно проходит,а вот сама прога не катит! sad

>Все просто и сложно одновременно. Была такая же проблема. В Appdata есть файлик trace там ошибка твоего запуска. У меня ругался на framework. Исправил версию в файле .config и все распаковалось. Поправил версию framework в распакованном studio и все заработало.

Но у меня папка проги в appdata пуста. Что написать в конфиге?
Аноним 04/01/19 Птн 05:15:44 #791 №543651 
Да и ладно, запустил 8.1.
Аноним 04/01/19 Птн 10:20:50 #792 №543662 
Как вы ориентируетесь во встроенных функциях и переменных? В мануале они приводятся по ходу дела и в разных местах, а в меню скриптов только списки без описания.
Аноним 04/01/19 Птн 14:13:39 #793 №543710 
>>543662
А в чем проблема? Тебе ж не надо сходу их все помнить.
Аноним 05/01/19 Суб 00:31:31 #794 №543783 
>>543710
Уже ни в чем, я ебси в глаза и не мог найти раздел Game play в главе GML в справке.
Аноним 05/01/19 Суб 18:09:56 #795 №543892 
Анчоусы, как по уму хранить большие объемы текста в игре?

Раньше просто записывал все в переменную, но теперь когда делаю игру с охуеть каким колличеством текста понимаю что на локализации ебнусь даже с двумя языками. У меня всякие диалоги, реплики, прочая срань.
Аноним 05/01/19 Суб 18:39:21 #796 №543906 
>>543892
Храни в ini файлах, один файл на свой язык.
Аноним 06/01/19 Вск 07:01:50 #797 №543988 
media.ioScreen Recording (06.01.2019 8-04-42).webm
Хелло ворлд, сделал коника.
Понял, что зря у меня весь код в степ ивенте, наверно не так надо было начинать.
А вы настраиваете один ивент и в нем пишете все основное или делаете по скрипту на фичу? Есть рекомендации как лучше их организовать?

Аноним 06/01/19 Вск 10:18:46 #798 №543995 
>>543988
Всё что можно - в скрипты.
Всё разбиваю на регионы.
Для каждой фичи - свой объект. За параллакс фонов отвечает obj_bg, за свет obj_light, за интерфейс obj_gui
Аноним 06/01/19 Вск 14:27:38 #799 №544013 
6к деревянных (и та за не мультиплатформу) - непосильная ноша, имхо.
Есть ли какие обходные пути, или, например, пиратские версии.
Ясен хуй, на стим/прочее не выложишь с взломанной версии, но в любом случае, есть ли какие обходные пути.

Или возможно ли без последствий, сделать проект на взломанной версии, а потом, когда уже готовый проект пихнуть в купленную версию? Возникают ли какие-нибудь несоответствия или артефакты/ошибки?
Аноним 06/01/19 Вск 14:31:03 #800 №544014 
>>544013
upd://
где-то читал, что тут платишь и всё, ты вроде как разработчику ничего не должен, и если смотреть в перспективе - с отчислений разработчику отдашь намного больше, чем эти 6к.

Меня интересует безпроблемный перенос со взломанной версии на купленную
Аноним 06/01/19 Вск 14:43:00 #801 №544016 
>>544013
Пили на юнити
Аноним 07/01/19 Пнд 10:17:31 #802 №544137 
>>499282

Тоже запарился, но у меня не с анимации, а движение на 360. Есть два объекта - снаряд и препятствие. При расчете столкновения по х, у снаряда его маска вообще игнорируется, хоть так >>499296 хоть точно по спрайту, а происходит столкновение центра снаряда с границей препятствия. Хотя все настройки у обоих объектов одинаковые.
Аноним 07/01/19 Пнд 10:20:22 #803 №544139 
Я уже даже габариты снаряда в отдельные переменные считал и сталкивал - в половине случаев работает как надо, но застревает при движении возле препятствия и на некоторых углах лол.
Аноним 07/01/19 Пнд 11:32:42 #804 №544144 
>>544137
Из такого описания не понять, в чём твоя проблема.

Код в студию.

Может ты вместо place_meeting instance_position используешь.
Или prec false поставил.
Или у тебя снаряд прыжками двигается по 20 пикселей за кадр.
Аноним 08/01/19 Втр 03:48:49 #805 №544325 
>>544144

>place_meeting

Спасибо за подсказку, маска заработала. Я использовал collision_point ставя prec=true, почему-то в этом случае он все равно считает маску центральной точкой.

Пока это увидел, перебрал имитации маски через collision_circle и collision_rectangle. Решил, что в этом случае столкновения вообще лишние, сделаю снаряду превентивный круиз-контроль.
Аноним 08/01/19 Втр 10:04:47 #806 №544346 
Как определить направление до объекта или от точки до точки в градусах?
Аноним 08/01/19 Втр 10:36:01 #807 №544348 
>>544346
Mathf.Atan2(p2.y-p1.y, p2.x-p1.x)*180 / Mathf.PI;
Аноним 08/01/19 Втр 11:41:13 #808 №544351 
>>544348
Пасиб. Бля, восьмой класс(
Аноним 08/01/19 Втр 12:23:49 #809 №544356 
>>544346
point_direction(x1,y1,x2,y2) возвращает направление в градусах. 0 справа, против часовой стрелки.
Аноним 13/01/19 Вск 16:00:01 #810 №545561 
>>544013
Работаю на первой же скаченной с рутрекера версии, проблем вообще никаких. ГМ 2, да, если что. Не знаю, как вы находите проблемы с этой прогой.
Аноним 13/01/19 Вск 16:57:32 #811 №545577 DELETED
>>544013
Вроде же всего полтора косаря. 6к за мобилки или XBOX кажись.
Аноним 19/01/19 Суб 03:40:48 #812 №547330 
003.jpg
Поясните по дельта-тайм.
Хули оно такое неточное?
Даже у васянов с ютуба при расчетах всегда неточные числа получаются, а они на это реагируют мол: "Да неточно и хуй с ним чо)) результат на пару десятых отличается каждый раз, да и пох)))) лойс подписка))"

При длинных расчетах вообще же вся физика по пизде идет.
Должен же быть какой-то метод чтобы игра не была фиксированная на 60фпс и при этом выполняла точные расчеты вплоть до пикселя.
Аноним 19/01/19 Суб 04:17:41 #813 №547333 
>>547330
> Хули оно такое неточное?
точное, никогда таких проблем не было
Аноним 19/01/19 Суб 04:36:13 #814 №547335 
>>547333
Ну вот, держи, первое же видео с гугла.
https://www.youtube.com/watch?v=NVfrAPos88k
8:35 неточный расчет и реакция на это васяна.
Аноним 19/01/19 Суб 04:56:36 #815 №547338 
>>547335
Падажжи, дельта тайм и не должен быть одинаковым. Он всегда разный, хоть убейся. Поэтому его и юзают для того, чтобы на него множить условную скорость и получать опять уже условно константную скорость перемещения объекта вне зависимости от фреймрейта.

Если нужны равные промежутки, то велкам в юнити, там есть FixedUpdate
Аноним 19/01/19 Суб 05:07:55 #816 №547339 
>>547338
Так это в видео отображается и не дельта тайм, а результат на основании перемножения дельтатайма на другие переменные.
При использовании дельта тайм у тебя объект одно и то же расстояние преодолевает каждый раз за разное количество времени. Каждый раз разница в ноль-целых-хуй-десятых и автор видео говорит что подобная мелочь в общем-то хуйня и случилась она просто из-за перепада фпс.

На деле же эта крошечная единичка запускает у тебя в коде цепную реакцию и провидит к полному пиздецу в физике, стоит твоей игре просто хотя бы дропнуть пару фпс в каком-нибудь моменте.
Аноним 19/01/19 Суб 05:09:48 #817 №547341 
>>547339
Дак оно и будет случаться из-за перепадов фреймрейта.
Аноним 19/01/19 Суб 05:22:03 #818 №547343 
>>547341
И в чем смысл тогда этого дельта-тайма, если из-за перепадов фпс и неточности расчета у тебя, к примеру, персонаж начинает прыгать на пару пикселей ниже положенного, в то время как у тебя код написан чтобы персонаж прыгал вверх исключительно на N игровых блоков, да аж с точностью до пикселя.
Аноним 19/01/19 Суб 05:36:12 #819 №547344 
>>547343
Ты путаешь назначение дельта тайма просто. Он никогда не служил инструментом для того, чтобы что-то делать через разные промежутки времени.

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

Посмотри тутор сполдинга, он рассказывает о том, как это все реализовать.
Аноним 21/01/19 Пнд 23:13:21 #820 №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 ?
Аноним 21/01/19 Пнд 23:26:30 #821 №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);

То, что нужно. Бля, пол дня голову ломал, пока буквами не написал.
Аноним 25/01/19 Птн 00:56:48 #822 №549124 
>>542509
Правда? Если да то благодарствую)
Планирую выпустить где-то в начале весны, если все сложится.
Аноним 25/01/19 Птн 00:57:48 #823 №549126 
>>542830
Где то сам. Какие то функции по описанию/справочникам изучаю. Если совсем не могу додуматься то гайды ищу схожие по теме.
Аноним 26/01/19 Суб 09:20:38 #824 №549483 
image.png
Этот код определяет ближайшего противника и заставляет объект идти к нему. Как заставить этот объект определять не один тип противника, а несколько?
Например есть объект o_enemy1 и o_enemy2, но объект будет двигаться к тому, который ближе.
Аноним 26/01/19 Суб 10:25:22 #825 №549493 
>>549483
Назначь своим o_enemy_number родителя o_enemy и определяй расстояние до него.
Аноним 26/01/19 Суб 10:27:48 #826 №549494 
>>549493
Вот тут и начинаются проблемы. У всех этих объектов уже есть родительский объект.
Аноним 26/01/19 Суб 10:30:45 #827 №549496 
>>549494
Вставь между ними ещё один родительский объект.
Функция будет находить объекты ниже по иерархии данные ей.

Например у меня есть родитель obj_living у него child obj_enemy у него child obj_rat

Могу обращаться ко всем живым, обращаясь к obj_living или ко всем врагам obj_enemy
Аноним 26/01/19 Суб 10:38:50 #828 №549497 
>>549496
Работает, спасибо.
Аноним 26/01/19 Суб 20:29:43 #829 №549739 
Ябучоя физика, чем дальше копаю, тем больше костылей и тем больше убеждаюсь, что руками прописать гравитацию там и прочее было бы практичнее
Аноним 26/01/19 Суб 20:54:24 #830 №549742 
>>549739
Ты ещё и коллизии с объектами используешь. Никто тебе не виноват что ты кривой.
Аноним 28/01/19 Пнд 17:02:01 #831 №550818 
Запускаю игру в обычном режиме появляются просадки в фпс на 1-2 секунды во время игры. Когда запускаю в дебаг моде их нету. Такое возможно? и почему так можешь происходить? на сцене кроме персонажа ничего нету.
Аноним 28/01/19 Пнд 17:43:43 #832 №550834 
>>550818
Ошибка из за камеры которая таскает за собой вид. Все равно не понятно почему лагает, раньше не лагало
Аноним 28/01/19 Пнд 17:53:40 #833 №550839 
>>550834
Погоди, сейчас придут телепаты и расскажу тебе, как оно у тебя было раньше и что изменилось.
Аноним 03/02/19 Вск 13:34:31 #834 №552975 
image.png
в чем тут проблема?
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)];
Аноним 10/02/19 Вск 11:18:50 #835 №555549 
Что быстрее, distance_to_object or distance_to_point? Или point_distance?
Аноним 10/02/19 Вск 11:24:36 #836 №555550 
>>555549
Сделай цикл миллион раз посчитай и узнаешь.
Аноним 10/02/19 Вск 11:26:22 #837 №555551 
>>555550
Вдруг до меня кто-то так делал
Аноним 10/02/19 Вск 12:22:16 #838 №555554 
>>555551
Конечно, делали, ну ищи.
Аноним 22/02/19 Птн 17:45:35 #839 №559817 
Бамп вопросом. Как сделать так, чтобы фулскрин шейдер не задевал интерфейс?
Аноним 22/02/19 Птн 20:27:23 #840 №559919 
>>559817
Отключай шейдер до того, как начинаешь рисовать интерфейс.
Аноним 03/04/19 Срд 23:03:11 #841 №571219 
Блядь, в наше время еще делают нормальные, НЕВИДЕО-туториалы по сабжу? Я ебал в рот, всюду один ютуб, я так воспринимать инфу не умею.
Аноним 04/04/19 Чтв 00:18:50 #842 №571230 
Похуй, буду читать документацию
Аноним 04/04/19 Чтв 09:54:02 #843 №571255 
sdk.png
Начал пилить игруху на аднроид, запилил пару комнат, в гамаке и в ЕХЕшнике всё работает как по маслу. Скомпилировал апк потестить на мобиле, запустил, а там всё распидорасило, какие-то кракозябры, все спрайты повылезали которые вообще не должны быть видны в начале игры, вью отображаются половинчатыми, полный пиздец. В чём может быть проблема? Гамак 1.4.1567, с бухты качал.
Аноним 04/04/19 Чтв 09:55:56 #844 №571256 
>>571255
Надо было юньку брать, долбоеб. Страдай, хуль.
Аноним 04/04/19 Чтв 10:52:09 #845 №571260 
>>571256
Может ты и прав, глянул щас, там нужно YоYо 400 долларов отдать, чтобы получить право размещать своё поделие в апсторе.
Аноним 04/04/19 Чтв 10:57:32 #846 №571263 
>>571260
Уж сколько раз твердили миру - берите юньку, дауны;
но только все не впрок,
И снова ныть в гд приходит гамакодолбоеб.
Аноним 04/04/19 Чтв 11:20:38 #847 №571267 
>>571260
Бери годот. Размещение в апсторе бесплатно.
Аноним 04/04/19 Чтв 11:22:26 #848 №571269 
>>571267
Попробую. Сильно отличается процесс верстания?
Аноним 04/04/19 Чтв 11:22:46 #849 №571270 
>>571267
>Размещение в апсторе $99 долларами за iOS Developer Program
Бвстрофикс. Но это от Хуана уже не зависит.
Аноним 04/04/19 Чтв 11:24:37 #850 №571271 
>>571269
Все гайды и туториалы есть. Нет смысла пересказывать их ИТТ. Если английского не знаешь, то у пети сканера на ютубе есть подробный туториал по сборке приложения под андроид, с иосом примерно так же, не ебу. Не фанат эппла.
Аноним 04/04/19 Чтв 11:26:47 #851 №571272 
>>571271
Ну ок, спс. Инглиш знаю.
Аноним 04/04/19 Чтв 11:30:05 #852 №571274 
>>571272
Не за что. Убедительная просьба к тебе. Если что-то получится, и даже если что-то не получится - отпишись о результатах в годотред.
Аноним 10/04/19 Срд 07:01:42 #853 №572537 
>>571263
Юнька для 2Д избыточна. А в гамаке еще и охуенная заточенность под работу с тайлами.
Аноним 13/04/19 Суб 18:01:25 #854 №573355 
У меня тут НЕСЧАСТЬЕ приключилось.
Делал себе игру, но буквально на неделю где-то пришлось сделать перерыв. Все работало нормально.

А сейчас открыл Гейм Мейкер, он обновился, я запустил Run и происходит какой-то пиздец: половина слоев не рендерится, половина мелькает и моргает, и полная жопа. Я ничего не изменял в коде. Почему такое могло произойти?
Аноним 13/04/19 Суб 18:03:13 #855 №573356 
image.png
>>573355
Потому что не взял юнити, а ведь тебя предупреждали
Аноним 13/04/19 Суб 18:04:45 #856 №573357 
>>573355
Ради эксперимента тупо сделал пустую комнату и пихнул туда какой-то ничего не делающий, но видимый объект: он вообще не рендерится.
Аноним 13/04/19 Суб 18:31:07 #857 №573360 
>>573355
Ложная тревога: дело оказалось в том, что я нечаянно забил жесткий диск до отказа за эту неделю, что и привело к таким результатам. Освободил место и все стало нормально.
Следите за своим жестким диском друзья, а юнитипидорам перо под ребро и хуй в сраку
Аноним 01/05/19 Срд 16:18:40 #858 №577712 
Ебать у вас тред мертвый.
Аноним 01/05/19 Срд 17:02:52 #859 №577728 
>>577712
Так потому что гамак говно
уже2годанаэтомдерьме
Аноним 01/05/19 Срд 18:14:35 #860 №577749 
>>577712
я на юнити съебнул и перестал читать этот тред
оп
Аноним 02/05/19 Чтв 06:47:49 #861 №577853 
>>577728
Да с хуев? На чем еще пилить 2д сайд-скроллеры?
Аноним 02/05/19 Чтв 10:32:06 #862 №577881 
Анон, помоги с вопросом
Поясню за суть.
Моим дипломным проектом является игра. пишу аркадку на с++ в UE4, и до меня доебался куратор по димпломке с вопросом, А зачем А нахуя твоя игра и дипломка?
Лично я делаю для опыта и интереса, она хочет чтобы я раскрыл сокральный смысл моей работы, чтобы она спасла детей в африке, но я не ебу как это описать для чего работа
Аноним 02/05/19 Чтв 10:53:31 #863 №577889 
>>577881
Тредом промахнулся?
Именно сакральный смысл его интересует, практический не устроит?
Аноним 02/05/19 Чтв 11:59:45 #864 №577915 
>>577881
Глянь что пишут других дипломах на похожую тему, в чем проблема вообще?
Аноним 02/05/19 Чтв 12:56:57 #865 №577961 
15561315367070.jpg
>>577881
Был научным руководителем у выпускника, мы с ним на юнити сделали игру ака вотч догс 2д про мамкиного хакера, взламывающего здание.
Приплели как анализ инф. безопасности систем. Когда игрока ловили охранники итд итп показывалась статья с описанием. По мере прохождения ГГ говорил о том, почему текущая организация плохо защищена.
Студент учился по этой специальности, сдал на 4(хотя мог изи на 5 сдать,он сам начал запинаться во время выступления).

Как вариант советую тебе взять какой-то процесс из жизни по твоей специальности и воспроизвести его с использованием твоего же УЕ4. А аркада абсолютно не связанная с твоей специальностью да, нахуй не вперлась никому. Пожумай сам своей головой,в комиссии будут сидеть 40+ дяди и тети, которым твои игрушки не интересны, им интересно, чтобы ты с умными щами заливал про важность предварительного анализа и моделирования hueta.Name , и именно твоя убогая программа позволяет это сделать.

Если будут еще вопросы, пиши.
Аноним 02/05/19 Чтв 13:04:20 #866 №577966 
>>577961
Читаю это все и понимаю, какая же рашкинское образование галимая фикция и натужная попытка создавать видимость работы. Неудивительно, что все в стране по такому же подобию функционирует (если вообще функционирует).
Аноним 02/05/19 Чтв 13:04:37 #867 №577967 
>>577881
>А зачем А нахуя твоя игра и дипломка?
Чтобы выпуститься наконец-то из вашего говновузика, Будто бы, блядь, дипломные работы вообще должны что-то решать, а не быть просто бумажкой для подтирания.
Я бы ответил как-то так.
Аноним 02/05/19 Чтв 13:06:36 #868 №577968 
>>577853
Забей, они сами не знают чего хотят, поэтому им лучше более универсальный двиг. А если знаешь, что двадэ, то гамак наиболее удобный в плане отсутствия всяких "прелюдий" для начала работы. Берешь и рисуешь/кодишь. Изи.
Аноним 02/05/19 Чтв 13:15:15 #869 №577971 
image.png
>>577966
Да не переживай, это не только в рашке.
Во всяких стэнфордах и берклях та же самая хуета с ещё большим попилом грантов.
https://www.youtube.com/watch?v=LVsqIjAeeXw
Аноним 02/05/19 Чтв 13:16:01 #870 №577973 
>>577961
Вспомнил, когда учился в институте, нам физик сказал - напишите программу, которая моделировала бы наглядно какое-нибудь явление, поставлю зачёт. Я (как удивительно) - угорал по играм, написал на паскале простенькую программку, которая рисовала луч, отражающийся и преломляющийся от поверхности. Нарисовал (в пиксельном редакторе) транспортир, красивую поверхность, сделал управление кнопками, чтобы углом полосочки-луча управлять и по кнопке чтобы транспортир это вылетал и прикладывался к лучу, лол.
Получил зачёт автоматом.
Аноним 02/05/19 Чтв 13:27:30 #871 №577980 
>>577971
По крайней мере если ты хочешь делать игры - там ты идешь тупо в институт, который, блять, охуеть!, учит делать игры, а не дрочишь 4-5 лет бесполезную хуету, чтобы иметь возможность как-то уцепиться по одной из профильных тематик и сделать игру как диплом, и то не факт что проканает, а без диплома тебя развернут.
Аноним 02/05/19 Чтв 13:37:48 #872 №577982 
>>577980
Зато нет факультетов журналистики и полно факультетов богословия.
Аноним 02/05/19 Чтв 14:01:35 #873 №578003 
>>577968
>А если знаешь, что двадэ, то гамак наиболее удобный
>гамак
У тебя пять ошибок в слове "годот".
Аноним 02/05/19 Чтв 14:31:36 #874 №578019 
>>577973
Я второкурсникам когда преподавал структуры данных, сказал им самим выбирать тему курсовой, подготовил около 10 тем по играм от крестиков ноликов до тетрисов(они на тот момент по программе только консольные писали).
Почти все принесли игры и им понравилось, месяца полтора я их консультировал, каждому помог составить план разработки. Ну, как план, помог каждому разбить на этапы и каждую неделю приносить и показывать результат.
Они были очень благодарны, хэх.
А потом я дропнул преподавание, когда меня хотели заставить снова читать хуйню по информационной безопасности, в которой я не работаю. Ибо нахуй плодить необразованность.
Аноним 02/05/19 Чтв 14:52:11 #875 №578024 
>>578019
Ты - хороший человек, добра тебе.
Аноним 02/05/19 Чтв 15:29:28 #876 №578032 
>>577980
Опять прилетаешь РАШКУ? В Казани например на базе КФУ (в одном из его зданий) есть факультет, в котором учат твоему любимому гейдеву, на вторых курсах или позже начинается целенаправленное изучение сисярпа с Юнити. В Штатах тоже не на каждом углу учат игры делать, но да, факультетов там немного больше.
Понапаступают в сельские шараги, а потом удивляются.
Да и например PyGame в школах с 11 класса по профильной программе изучают, в Яндекс Лицеях с 8-9 классах могут.
sageАноним 03/05/19 Птн 12:39:04 #877 №578157 
>>578032
макаронить говнокод - последнее, что нужно в геймдеве
геймдизайну учат полтора человека на всю страну, и я не про наёбку от вышкопидоров
Аноним 06/05/19 Пнд 20:34:00 #878 №578983 
изображение.png
Два раза пытался в юнити, не осилил. Решил попробовать в гамак.
Прочитал весь этот тред, и хочу сказать, что тут сидит один из самых адекватных и помогательных анонов на этой борде.
Если ты ещё сюда заходишь - добра тебе и удачи (если не заходишь - то всё равно удачи и добра). Смотрел, скольким ты тут помог и диву давался. Респект и уважуха.
просто-решил-высказать-своё-очень-важное-мнение-кун
Аноним 06/05/19 Пнд 20:35:37 #879 №578984 
>>578983
>Два раза пытался в юнити, не осилил. Решил попробовать в гамак.
Тебе все равно придется его осилить, лучше не трать время зря.
Аноним 07/05/19 Втр 07:57:38 #880 №579045 
15018731974260.jpg
GM2 или GODOT?
Вот реально хотел бы выслушать плюсы и минусы, что выбрать вкатывающемуся в 2д-игростроение.
Аноним 07/05/19 Втр 09:36:28 #881 №579052 
>>555549
Давай порассуждаем.
distance_to_object будет искать ближайшее расстояние от объекта до объекта
distance_to_point будет искать ближайшее расстояние от объекта до точки
point_distance ищет показывает между двумя точками и ничего не ищет
Значит, оно быстрее всего
Аноним 07/05/19 Втр 09:52:05 #882 №579054 
>>542386
Даю добрый совет - если много текста, используй бесплатное дополнение, которое есть на маркете. Работает с текстом просто на ура, используя кучу сложных скриптов. HappyTearParacoopa
Аноним 07/05/19 Втр 10:52:57 #883 №579058 
>>579045
С гамака все уходят, он бесперспективный, не развивается, содержит фатальные дизайнерские ошибки, которые не дадут тебе сделать сколь-нибудь крупную игру.

Из годота может что-то хорошее и выйдет. А может и нет.

А юнити уже сейчас готовый продукт, стабильный, популярный и продолжающий активно развиваться.
Аноним 09/05/19 Чтв 20:20:38 #884 №579610 
>>579058
Пошел нахуй. Гамак УДОБНЫЙ, в отличие от юнити, и использовать проще
Аноним 09/05/19 Чтв 22:05:45 #885 №579625 
>>579610
А что там собственно проще? Юнити не сложнее гамака.
Аноним 09/05/19 Чтв 22:45:53 #886 №579640 DELETED
>>579610
>Гамак УДОБНЫЙ
>требует 64битную винду и подписку
Аноним 10/05/19 Птн 15:37:59 #887 №579728 
>>579640
Аниме хорошее, а ты хуйню написал, инфу брал с треда про юнити?

мимо
Аноним 10/05/19 Птн 16:57:17 #888 №579742 DELETED
>>579728
>инфу брал с треда про юнити
Из юзер экспириенса своего.
Аноним 10/05/19 Птн 18:13:20 #889 №579761 
>>579625
не знаю, я просто так написал, я юнити не пользовался
Аноним 10/05/19 Птн 18:15:44 #890 №579762 
>>579625
ну там же наверняка нет окошечек, где прописан код отдельно на create, отдельно на step, отдельно на collision и т.д.

наверняка на юнити нет комнаты, куда можно мышкой перетаскивать объекты

наверняка на юнити нельзя делать анимированные спрайты прямо во вкладке sprites
Аноним 11/05/19 Суб 00:22:12 #891 №579821 
>>579762
ты толстишь что-ли?

create -> Start
step -> Update
collision -> OnCollisionEnter
комнта -> сцена

редактора спрайтов в юнити нет, но есть вкладка редактора анимаций
Аноним 11/05/19 Суб 18:30:32 #892 №580019 
>>579821
возможно,я перейду на юнити в будущем, но это не точно
Аноним 11/05/19 Суб 18:31:41 #893 №580020 
>>580019
тем более гейммейкер не на языке С, который похож на джаву, которая мне не нравится
Аноним 13/05/19 Пнд 02:51:18 #894 №580492 
>>580020
У тебя с головушкой все впорядке?
Аноним 13/05/19 Пнд 08:51:22 #895 №580516 
>>580492
Двачую.
>>580020
Вообще-то шарп похож на кресты, и джава похожа на кресты. А знаешь почему? Потому что они оба из семейства си-подобных языков!!
Аноним 14/05/19 Втр 20:56:08 #896 №581135 
>>580492
>>580516
меня бесит слово override, которое там есть. Что оно значит, я не знаю, но мне страшно и поэтому нахуй язык c++
Аноним 16/05/19 Чтв 06:46:14 #897 №581404 
Сызнова решил вкатиться в (вечную) разработку рогаликов и иже с ними, есть GMS 1.4 Professional лицуха, но хочется ВОРКСПЕЙСА и свистелок с перделками. За полторы тыщи брать новый гамак не хотел, но сейчас на хамблобандле за 500 отдают. Купить или ну его нахуй?
Аноним 16/05/19 Чтв 10:08:22 #898 №581411 
>>581404
В новом гамаке только косметические изменения. Лучше сразу на другой движок переходи.
Аноним 16/05/19 Чтв 11:02:26 #899 №581418 
image.png
>>581404
1500 стоит возможность экспорта на мак линух и шинду. Там за 500р продается только экспорт на шиндовс.
скидка 20% оч много конечно.
Аноним 16/05/19 Чтв 21:51:52 #900 №581595 
>>581135
>меня бесит слово override, которое там есть. Что оно значит, я не знаю
Ты странный. Оно позволяет перезаписывать одну и ту же функцию, как угодно, в рамках наследуемого класса.
Аноним 16/05/19 Чтв 23:30:44 #901 №581613 
>>581595
Спасибо, понял
Аноним 17/05/19 Птн 08:24:07 #902 №581638 
>>581411
>Лучше сразу на другой движок переходи.
Здравствуйте! Я бы хотел предложить вам молодой, развивающийся движок ПЩВЩЕ. Опенсорсный!
Аноним 19/05/19 Вск 04:58:49 #903 №581987 
>>581418
>только экспорт на шиндовс
Как что-то плохое. Аудитория на маках и линухах стремится к нулю, а те кому очень нужно могут под вайном запустить.
Аноним 21/05/19 Втр 20:05:47 #904 №582579 
15054360006150.png
>>579640
>не иметь 64битную винду
>не пиратить
Аноним 23/05/19 Чтв 16:38:17 #905 №582942 
Антоши, давно ничё не писал на гамаке, в последний раз пользовался версией 8.1, а гмс1.2 на то время не понравился т.к. интерфейс стал выглядеть уёбищно и игры компилились долговато.

Так вот, как со всем этим сейчас дела обстоят? Правильно понимаю что уже имеются компиляторы под пс4,хуящ,свитч? Как с пиратством?

В принципе восьмёрка еще пашет, но, бля, это всё же говно мамонта и пора обновиться.
Аноним 24/05/19 Птн 01:41:41 #906 №583018 
>>582942
не знаю, есть пиратская версия для компиляции под десктоп. Но если найдешь под андроид или html пиратку, буду благодарен и скину денежку
Аноним 24/05/19 Птн 06:57:08 #907 №583024 
>>583018
Нашёл только такую, не ебу какие компиляторы работают.
https://thepiratebay.org/torrent/23041242/Game_Maker_Studio_2.1.4.285
Аноним 24/05/19 Птн 21:31:31 #908 №583144 

>>583024
актуальный кряк практически всегда можно найти тут в обсуждении(на нынешнюю кста там тоже есть),сам пользовался пока не купил (ведройд аштимель и шиндовс робочие проверял сам)
https://gmsc-97507.firebaseapp.com/
Аноним 28/05/19 Втр 03:06:51 #909 №583793 
>>583144
спасибо, анон. Под андроид же потом нужно будет всякие sdk устанавливать, лааадно
Аноним 28/05/19 Втр 17:06:38 #910 №583899 
>>583793
ну разок поеаться с сдк придется ,но достаточно прочитать оф гайд на сайте йойо ,там все написано, только на пендоском , но даж по картинкам удет понятно
Аноним 29/05/19 Срд 11:39:53 #911 №583999 
Какая же блять убогая система слоев в гмс2...
Аноним 29/05/19 Срд 13:04:13 #912 №584017 
>>583999
какая есть, но и без слоев можно обойтись, глубина все так же работает ,как раньше
Аноним 29/05/19 Срд 22:30:47 #913 №584130 
>>583999
Зато таймер одной строчкой, лол.
Аноним 22/06/19 Суб 10:18:23 #914 №588086 
Тред умер?

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

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

Как и где их лучше хранить? Я предполагаю пока, что для этого хорошо подойдет json. Если через json делать, то для этого нужно использовать ds_map()? Как быстро гамак работает с ним вообще? Есть ли способы быстрее/оптимальнее?
Аноним 22/06/19 Суб 14:57:10 #915 №588108 
>>588086
Да, все стрктуры данных в гамаке делаются через ds_list, ds_map, что пиздец как неудобно.
Аноним 22/06/19 Суб 17:46:45 #916 №588128 
>>588108
Ну, выбора особо и нет, а изобретать велосипед вряд ли выйдет производительно. Буду работать с тем, что дают.
Аноним 23/06/19 Вск 20:48:44 #917 №588334 
>>588086
да хоть в ини файле можешь хранить все это ,как тебе удобнее
Аноним 23/06/19 Вск 22:25:11 #918 №588357 
>>588334
мимо анон, храню в ини файле все что есть, тому что проще. А массивы нахуй нахуй
Аноним 24/06/19 Пнд 22:05:41 #919 №588567 
ГМ лучше Годота?
Аноним 24/06/19 Пнд 22:06:11 #920 №588568 
>>588567
Две хуйни
Аноним 24/06/19 Пнд 22:07:40 #921 №588570 
>>588568
А на чем делать 2д сайдскроллер типа Лизы?
Аноним 24/06/19 Пнд 22:10:23 #922 №588572 
>>588570
Юнити, если новичок констракт. Ну можно и на гамаке, но он говно бесперспективное.
Аноним 24/06/19 Пнд 22:40:13 #923 №588584 
>>588567
Лучше.

Отлично задокументирован, куча отличных туториалов.

>>588570
Для 2д бери гамак. Годотошизика >>588572 шли на хуй.
Аноним 24/06/19 Пнд 23:58:46 #924 №588604 
изображение.png
>>588584
>Годотошизика >>588572 шли на хуй.
Там юнитишизик ващет.
А этот ваш гамак может похвастаться опенсорсностью?
мимо-гододик-шизик-годаун
sageАноним 25/06/19 Втр 07:17:35 #925 №588623 
>>588604
>похвастаться опенсорсностью?
>похвастаться
Это всё равно, что хвастаться инвалидностью.
Аноним 25/06/19 Втр 07:43:45 #926 №588625 
>>588570
На том же, на чем делалась Лиза — RPG Maker.
Аноним 25/06/19 Втр 08:38:25 #927 №588635 
>>588623
Хммм, ну вот смотри, меня интересуют платформы: десктоп, мобилы, хтмл5 - на годоте я смогу создавать свои поделия бесплатно. Чтобы аналогичное сделать на гамаке, мне потребуется 99+149+199 = 400 баксов.
Итак, что такого крутого мне сможет предложить гамак, чего у меня нет в годоте?
Аноним 25/06/19 Втр 10:03:08 #928 №588646 
>>588635
А где игры-то на годоте? Почему их не видно?
Аноним 25/06/19 Втр 10:27:25 #929 №588651 
>>588646
Сходи в годотред, там тебя покормят ссылками на игры прямо из шапки и ты сможешь в 100500й раз сказать что "игры по ссылкам не игры, дайте игры на эртэ".
Аноним 25/06/19 Втр 10:38:48 #930 №588652 
>>588635
Бля, ну вот серьёзно. Ну хватит уже эти движкосрачи. Лучший движок тот, который лично ты лучше знаешь.
Если анон не знает ни одного - для него лучше будет тот, что проще изучить.
А с учётом того, что ему нужно 2D - стрелка указывает на два варианта: Construct2 или GameMaker.
>я смогу создавать свои поделия бесплатно
Не бесплатно. Ты не учитываешь своё время. Если ты вложил полгода (1000 часов примерно), то ты потратил минимум 1000*10=10000 долларов. 400 долларов - это 0,4 от всей суммы затрат. Или 40 часов.
Насколько дольше ты будешь разбираться в годоте/юнити/дельфи/уече и насколько быстрее(медленнее) ты тоже самое сделаешь в гамаке? Ответь на эти вопросы и ты поймёшь, что дешевле - годот или гамак.
Но это, опять же, будут твоя личная стоимость.
Аноним 25/06/19 Втр 10:39:23 #931 №588653 
>>588651
>игры по ссылкам не игры
Тетрис и марио можно и без движков запилить и бегать верещать - ВОТ ИГРЫ ВООООТ, ДВИЖКИ НЕ НУЖНЫЫЫ!
Нужно уже отдельный термин вводить "годотовская игра" как символ кала, высранного школьником на какай-нибудь конкурс школьников - высри хуйню за 48 часов!
Аноним 25/06/19 Втр 10:43:23 #932 №588654 
>>588652
>Бля, ну вот серьёзно. Ну хватит уже эти движкосрачи.
Щас пну в последний раз залётного додика и всё.
>>588653
Говноигры не продаются в стиме, сразу тонут на дне рейтингов. А игры на годоте успешно продаются в стиме. Обтекай.
Аноним 25/06/19 Втр 10:44:08 #933 №588655 
>>588654
Спасибо.
Аноним 25/06/19 Втр 10:54:24 #934 №588657 
image.png
>>588604
>опенсорсность бесплатнасть
Это значит, что один аргентинский велосипедист, лежа на пляже в перерывах между написанием чиптюновой музычки и поревом жены будет делать фичи к движку очень долго с огромным количеством багов, не доводя ни одну до конца. Донатят им 10500 долларов в месяц на двоих.
Аноним 25/06/19 Втр 11:04:58 #935 №588659 
>>588657
>Донатят им 10500 долларов в месяц на двоих.
А тебе - нет. И ты знаешь почему.
Аноним 25/06/19 Втр 11:07:35 #936 №588660 
Ди Каприо.png
>>588659
>годот полное говно, вот четкие неопровержимые аргументы...
>а вот ты, а ты сам!...
Аноним 25/06/19 Втр 11:12:50 #937 №588661 
>>588660
>годот полное говно, вот четкие неопровержимые аргументы
>>588657
>Донатят им 10500 долларов в месяц на двоих.
Вот бы и мне так же впаривать говно лохам. Но не выйдет. И я знаю почему. И у тебя не выйдет. И ты знаешь, почему.
Себе-то не ври. А двач простит.
Аноним 25/06/19 Втр 13:09:58 #938 №588685 
>>588651
Нахуй мне куда-то идти? Ты не можешь сам расписать?
Аноним 25/06/19 Втр 14:03:56 #939 №588700 
>>588685
Он правильно сказал, не надо портить ламповейший тред вашими срачами. Пожалуйста, проследуйте оба в годо-тред.
Аноним 25/06/19 Втр 14:19:01 #940 №588701 
>>588700
Ты мне еще расскажи что мне делать.
Аноним 27/06/19 Чтв 10:21:27 #941 №589118 
ну может гамак и имеет ограничения, однако это с лихвой компенсируется скоростью с которой ты можешь довести проект до финала, ибо сделан для людей
Аноним 27/06/19 Чтв 18:14:52 #942 №589238 
>>589118
это пока ты не решишь прикрутить к игре что-нибудь сложнее стреляющего бегающего спрайта
Аноним 27/06/19 Чтв 18:35:16 #943 №589245 
>>589238
прикрутил ,не ощутил
Аноним 27/06/19 Чтв 18:37:28 #944 №589246 
>>589245
вон у мнфля спроси как тама с торидэ обстоят дела
Аноним 27/06/19 Чтв 23:48:02 #945 №589301 
>>589246
А зачем мне 3д? Мне и в юнити кривого 2д хватило, ну нахуй
Аноним 28/06/19 Птн 07:00:18 #946 №589325 
>>589246
нет спасибо я не голодный
Аноним 28/06/19 Птн 07:15:55 #947 №589328 
>>589301
>А зачем мне 3д?
За тем, что все долбоебы думают - 3д сложна, сделаю 2д говно на мобилки! - И теперь на мобилках такой поток хуйни, что никак не пробиться. Следующий этап осознания - на мобилках ловить нечего, сделаю 2д хуйню для стимы... Но там тоже самое...
В итоге придешь к тому, что 3д делать сложно, но конкуренция меньше и деваться некуда.
Аноним 28/06/19 Птн 09:07:33 #948 №589345 
>>589301
>Мне и в юнити кривого 2д хватило
Узнаю гэдэ. Заебавшись с двадэ в тридэдвижке, гдачер идёт в двадэдвижок и ебётся там уже с тридэ.
Аноним 28/06/19 Птн 09:18:10 #949 №589349 
6756858.jpg
>>589345
Аноним 28/06/19 Птн 12:49:22 #950 №589404 
>>589345
Так и живу, на гамаке 3д, а если полезу в юнити/анрил, буду в 2д. Иначе не интересно.
Аноним 28/06/19 Птн 16:47:15 #951 №589442 
>>589349
>>589404
А мог бы делать игры, как наш Учитель >>589428
Аноним 28/06/19 Птн 19:41:41 #952 №589507 
Сап двощ. Пытаюсь в sprite stacking. Как можно реализовать поворот всех объектов в комнате? Хочу добиться эффекта как в dont starwe.
Пробовал через lenghtdir_x/y но безуспешно
Аноним 28/06/19 Птн 21:44:27 #953 №589551 
>>589507
Как насчёт гугления?

https://medium.com/@avsnoopy/beginners-guide-to-sprite-stacking-in-gamemaker-studio-2-and-magica-voxel-part-1-f7a1394569c0
Аноним 28/06/19 Птн 21:59:34 #954 №589559 
image.png
>>589551
Не завезли еще.
Аноним 28/06/19 Птн 22:00:44 #955 №589562 
>>589559
Немножко подождать еще!
Аноним 28/06/19 Птн 23:28:40 #956 №589583 
>>589559
Что не завезли? Вращай камеру при помощи view matrix.
Аноним 28/06/19 Птн 23:33:08 #957 №589584 
>>589583
>>589562
https://www.youtube.com/watch?v=NDH_UoQBToI#t=5m
нужно вот такое вращение
Аноним 29/06/19 Суб 11:23:54 #958 №589649 
image.png
В гамаке как то можно сделать так, чтобы спрайт который крутиться с помощью image_angle был как второй квадрат? мб шейдер какой или можно прям в игре рендерить это? А то если его просто крутить, то будет как третий квадрат, который совсем не пиксель перфект
Аноним 29/06/19 Суб 11:24:19 #959 №589650 
>>589584
тут какое-то хитрое 3д, сел-шейдинг или вроде того. Хотя можно навелосипедить, что уж.
Аноним 29/06/19 Суб 11:25:53 #960 №589651 
>>589650
Вот мне бы хоть узнать как это называется. А там и нагуглить можно
Аноним 29/06/19 Суб 11:28:22 #961 №589653 
>>589651
Cell-shading гугли.
Аноним 29/06/19 Суб 12:16:59 #962 №589661 
cartest.gif
>>589653
Спасибо анончик.
Все оказалось намного проще. Нужно было просто растянуть сурфейс.
как то пиздец проблематично это все было гуглить. с таким трудном нашел то, что нужно
Аноним 29/06/19 Суб 16:59:24 #963 №589721 
>>589649
попробуй выключить интерполяцию
Аноним 29/06/19 Суб 17:26:28 #964 №589731 
>>589661
Красота. Это несколько спрайтов, которые врашаются и смещены по вертикали друг относительно друга?
Аноним 29/06/19 Суб 17:35:14 #965 №589734 
test4.gif
>>589731
угу. И делается всего одной строчкой.
Вот тут еще пиксель перфект замутил
Аноним 29/06/19 Суб 18:00:02 #966 №589737 
>>589734
Хорош. Красава.
Я так во флеше изгалялся в своё время.
Аноним 29/06/19 Суб 19:25:32 #967 №589752 
>>588567
ГМ со второй версии в говно скатился. Бери либо Юнити, либо Годот, либо ещё что.
Аноним 29/06/19 Суб 21:12:07 #968 №589774 
1 (1).gif
>>589752
Аноним 29/06/19 Суб 21:22:19 #969 №589780 
be576ec821cdd9c027b0affb2eac98f6.jpeg
>>589774
Аноним 29/06/19 Суб 21:24:28 #970 №589781 
>>589774
Сплайнодрочер детектид.
Аноним 30/06/19 Вск 01:27:49 #971 №589864 
В каких случаях нужно начинать использовать шейдеры?
Аноним 30/06/19 Вск 01:28:07 #972 №589865 
>>589781
что такое сплайн?
Аноним 30/06/19 Вск 01:29:52 #973 №589866 
>>589864
Когда хочешь сделать визуальный эффект, который не получается без них.
Аноним 30/06/19 Вск 02:58:44 #974 №589882 
>>589864
Когда тебе нужно искажать весь экран, либо делать что-то со всей картинкой в каждом кадре на уровне пикселей.
я-с-дивана-не-пинайте
Аноним 30/06/19 Вск 14:38:00 #975 №589962 
>>589752
>ГМ со второй версии в говно скатился
Почему? Я запускал ГМ2 и у меня вообще вопросов не возникло. Все удобно и понятно (с помощью ютуба). Черт, там даже встроенные туториалы есть.
Аноним 30/06/19 Вск 15:02:11 #976 №589966 
>>589962
Потому что годотошкольник срёт в треде. ГМ - отличный движок.
Аноним 30/06/19 Вск 19:41:29 #977 №590040 
>>589962
потому что гм для людей сделан ,чтоб все понятно было
Аноним 30/06/19 Вск 20:58:19 #978 №590056 
>>589962
Интерфейс слили в абсолютное говнище. Вместо нормальных вкладок или окошек, как в прошлой версии, какие-то обоссаные сплайны с воркспейсами. Сами элементы интерфейса увеличились раза в полтора, так что реального полезного пространства стало гораздо меньше чем было.
Сам же гмл порос каким-то говном -- добавили слои, которые на самом деле обёртка глубины (которую убрали, удачи теперь с depth = -y), с конвертацией строк намутили какой-то ёбаный пиздец с тысячей различных поведений вместо простого автокаста числа в строку.

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

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

Я писал игорьки на гм порядка шести лет, но после такой хуйни свалил от него подальше - и ни капельки не жалею.
Аноним 01/07/19 Пнд 00:31:19 #979 №590084 
>>590056
>Интерфейс слили в абсолютное говнище.
Вкусовщина. Я после интерфейса гмс2 не могу воспринимать интерфейс гмс1 вообще.

>(которую убрали, удачи теперь с depth = -y)
Так и делаю, всё абсолютно нормально. Совмещаю слои и depth. Слои удобны в room editor. Слой это просто ссылка на глубину.

>автокаста числа в строку
О чём ты, я не понимаю?


А вот дебагер в гмс2 сделали просто роскошным. Ещё бы дали возможность зумировать текстуры в предпросмотре и дебагать шейдеры.


Аноним 01/07/19 Пнд 00:39:42 #980 №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/



Аноним 01/07/19 Пнд 00:44:51 #981 №590093 
>>590089
Я в курсе. И что? Для gui у меня слои вверху, для обхектов на карте набор слоёв ниже. В room_start я забираю минимальное и максимальное значение глубины для объктов (из первого и последнего слоёв, предназначенных для объектов), вычисляю шаг глубины, соответствующий шагу по y и каждому объекту добавляю room_start event с одной строкой
depth = obj_game.zero_depth + obj_game.depth_step*y;

Так на старте комнаты все объекты занимают свою глубину. Очень удобно, т.к. на карте их куча, но все распределены по слоям. Можно выключить все кусты, или все деревья и т.д.
Аноним 01/07/19 Пнд 00:49:51 #982 №590095 
>>590089
>В ГМЛ чтобы в строку пихнуть число, надо делать вот так:
>"value: " + string(someValue) + "."

Я вообще не вижу в этом никакой проблемы. Наоборот, это, сука, нормально.

>Люди просили сделать нормальный автокаст

Со временем я начинаю понимать, что автоматическая конвертация переменных - это не очень хорошо. float должен быть float, real должен быть real, int не должен внезапно превращаться в real и т.д. Прибавлять к строке число не правильно.

Вытащить число из строки.. Это иногда может быть полезным.
Но
> 1 + "2"
блять, не надо так.
Аноним 01/07/19 Пнд 01:08:18 #983 №590097 
>>590093
>Я в курсе. И что? Для gui у меня слои вверху, для обхектов на карте набор слоёв ниже. В room_start я забираю минимальное и максимальное значение глубины для объктов (из первого и последнего слоёв, предназначенных для объектов), вычисляю шаг глубины, соответствующий шагу по y и каждому объекту добавляю room_start event с одной строкой

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

>>590095
>Со временем я начинаю понимать, что автоматическая конвертация переменных - это не очень хорошо. float должен быть float, real должен быть real, int не должен внезапно превращаться в real и т.д. Прибавлять к строке число не правильно.

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

> Вытащить число из строки.. Это иногда может быть полезным.
Конечно. Только это должно быть выполнено в фиде отдельной функции, а не автокастом, который ещё и работает только в половине случаев.







Аноним 01/07/19 Пнд 07:18:50 #984 №590109 
>>590056
Твой пост пропитан синдромом утенка. "Раньшибылалудше, Дуров, верни стену", ага. Каждый твой аргумент — "вот тогда было так, а щас вот так и мне не нра". Все с тобой ясно.
Аноним 01/07/19 Пнд 08:32:53 #985 №590122 
чёртова обнова из-за неё все ини-файлы слетели, смена уровней порушена, пришлось игру урезать
Аноним 01/07/19 Пнд 10:29:51 #986 №590138 
>>590097
>с ГМ свалил
Надеюсь, на годот свалил?
Аноним 01/07/19 Пнд 10:31:53 #987 №590139 
проигрываю с тех челиков, которым новый интерфейс не нравится
Аноним 01/07/19 Пнд 10:32:03 #988 №590140 
>>590122
Переходи на годот.
(и на JSON вместо ini;)
Аноним 01/07/19 Пнд 11:11:40 #989 №590156 
>>590109
Так дело-то в том, что и у ГМС1 интерфейс был говном. Ужасно дёрганный и глючный. Это реально надо было поменять, но не в ущерб реальному рабочему пространству. Более того, на нотубуке с трекпадом воркспейсы - вообще какой-то пиздец.
Слои же - это классная концепция, которую давно пока было ввести. Но не так убого, как это сделали ЁЁ. Ведь можно же было оставить сортировку по глубине внутри слоя, и всё было бы круто. Даже дело не в том, что оно в принципе поменялось и это хуёво - дело в том, что текущая реализация ставит палки в колёса если хочешь depth = -y. ЁЁ просто поленились сделать по-нормальному, а обычным юзерам теперь это расхлёбывать

>>590138
На твою маму.
Аноним 01/07/19 Пнд 11:14:14 #990 №590157 
Собственно, сейчас мне скорее кажется, что ЁЁ решили своей аудиторией сделать всяких художников и прочих неосиляторов (у них и 4к мониторы на пол-стены скорее всего есть, на которые этот интерфейс влезет), а программистам помахали ручкой.
Аноним 01/07/19 Пнд 11:15:44 #991 №590158 
>>590157
Программисты на такой хуйне даже за деньги пилить не будут, все правильно разрабы делают.
Аноним 01/07/19 Пнд 11:18:30 #992 №590159 
>>590158
Почему же? Видел много программистов, ковыряющих ГМ. Даже сейчас. Под ГМС2 даже нормальный редактор кода запилили, без обоссаных сплайнов и со вкладками.
Аноним 01/07/19 Пнд 21:13:25 #993 №590343 
>>590159
так все эти сплайны вырубаются в настроках ,а так да ,сижу на этот самом редакторе
Аноним 01/07/19 Пнд 21:15:12 #994 №590344 
>>590159
На стриме у галенкина издатель говорил, что если к нему приходят с годной игрой на гамаке то ее перепиливают на юнити сами потом.
Аноним 02/07/19 Втр 01:48:11 #995 №590398 
>>590344
Жоска, лол.
Аноним 02/07/19 Втр 01:55:23 #996 №590399 
https://www.youtube.com/watch?v=A-ay8-abdJQ
Аноним 02/07/19 Втр 11:07:03 #997 №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); }
И далее исходный код пихаешь без изменений. Ну это самый простой случай. На деле инди разрабы могут дичайшую дичь издателям приносить.
Аноним 02/07/19 Втр 11:43:34 #998 №590423 
>>590415
Жоска гамак обоссали.
Аноним 02/07/19 Втр 11:47:28 #999 №590425 
Как вывести через draw_text знак процента? Пробовал через chr(37) - не отрисовывается.
Аноним 02/07/19 Втр 11:48:36 #1000 №590426 
>>590423
Не вижу обсыка. Анон сделал прототип на движке, в котором ему удобно делать прототип. Студия издателя перекинула прототип на профессиональный движок и сделала релиз.
Аноним 02/07/19 Втр 20:50:18 #1001 №590534 
>>590425
нпросто в аргумент текста пишешь "%" ,если там квадрат ,то шрифт не поддреживает этот знак ,а можешь вот так string(значение) + "%"
Аноним 03/07/19 Срд 01:58:54 #1002 №590616 
image.png
>>590534
Да, тупанул, действительно в шрифте просто не было символа. Вот все символы есть, а % нету.
Аноним 06/07/19 Суб 01:21:30 #1003 №591244 
>>590109
> синдромом утенка.
Школьник детектед.
За гм не скажу, но очень часто бывает, что программы с новыми версиями становятся всё хуже и хуже.
Аноним 06/07/19 Суб 08:05:25 #1004 №591252 
>>591244
>За гм не скажу
Тогда нахуй ты варежку свою раззявил?
Аноним 06/07/19 Суб 11:17:19 #1005 №591257 
ffffffffff
Аноним 06/07/19 Суб 12:35:03 #1006 №591267 
>>591252
Ты не понял, я это не для ёбнутых опущенцев писал, так что проходи мимо.
Аноним 06/08/19 Втр 10:42:06 #1007 №599028 
Как сделать игру на гамаке?
Аноним 06/08/19 Втр 10:47:02 #1008 №599030 
>>599028
Без задней мысли
Аноним 06/08/19 Втр 21:45:44 #1009 №599218 
>>599028
Запускаешь туториалы Спалдинга и фигачишь по ним.
Аноним 07/08/19 Срд 19:01:01 #1010 №599405 
>>599218
Каковы шансы, что я освою, если я туповатый? Английский язык знаю.
Аноним 07/08/19 Срд 19:10:42 #1011 №599406 
>>599405
откуда мы блять знаем
пиздуй и пробуй мудила
Аноним 07/08/19 Срд 20:01:06 #1012 №599412 
>>599406
Чому, кстати, тред мертвый?
Аноним 07/08/19 Срд 20:06:23 #1013 №599413 
>>599412
Вероятнее всего потому, что всем всё понятно.
Но крайней мере тем, кто пилит свои игры на гамаке.

Если что-то не понятно - спрашивай. Но не забудь перед этим прочитать мануал.
Аноним 07/08/19 Срд 20:08:54 #1014 №599414 
>>599406
Токсический петух токсичен.

>>599405
А как можно что-то не освоить? Если ты прикладываешь усилия - будут результаты. Если тебе нужна кнопка "сделать заебись" - её тут нет.

>>599412
Лучше так, чем говнометание двух шизоидов "юнити говно, нет годот говно".
Аноним 08/08/19 Чтв 08:10:53 #1015 №599564 
>>599413
>>599414
Ок, спасибо.
Аноним 09/08/19 Птн 09:56:05 #1016 №599783 
Перекатывайтесь на юнити. Все равно рано или поздно упретесь в потолок гма.
Аноним 09/08/19 Птн 12:16:57 #1017 №599804 
>>599783
Тебе платят что ли за это, ебанутый?
Аноним 19/08/19 Пнд 12:36:09 #1018 №603149 
Кто-нибудь знает, как за один draw text сделать разные цвета? Есть мб какой-то пример, весь гугл обошёл, везде написано что гамак на такое не способен.
Аноним 05/10/19 Суб 06:29:57 #1019 №615607 
SPOOPY.webm
Полгода перерыва, вчера пофиксил мальца свет и тени, запилил блуждающие тени или типа того, которые должны игрока убивать (но смерти пока нет), вроде нормально, хотя конечно стены надо все таки не цельным спрайтом делать, а четырьмя отдельными, а то обратную сторону видно, когда не должно.
Процедурную генерацию на потом отложил, я ее за час сделаю (не выёбуюсь, опыт есть и ворлд генерации и данжей), сейчас enviroinmental dangers, инвентарь, сейв/лоад, такое.
Аноним 21/11/19 Чтв 08:05:01 #1020 №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.
Для меня этих плюсов достаточно чтобы покрыть его минусы. Но само собой есть игры, в которых я гмс никогда бы не выбрал (но блин он такой халявный местами, что если честно через скрежет открывал юнити, но что поделать, это жизнь, а я программист, который должен решать задачу)
Аноним 21/11/19 Чтв 08:10:15 #1021 №623767 
>>623766
Также хочется добавить к этому сообщению, что я стал ценить свое время. Поэтому не желаю денег на инструменты, чтобы заработать их еще больше. Нет смысла искать пиратские версии, просто даже из-за обновлений и поддержки авторов, которых можно донимать, потому что купил их инструмент)
Аноним 21/11/19 Чтв 08:20:32 #1022 №623768 
>>495719
в некоторых случаях и инвентарь требует оптимизации, потому что по итогу в некоторых случаях 180 или больше ячеек инвентаря быстрее работают в объектах, чем в фейковых структурах)
Но быстрее они будут работать только если не будут каждый шаг обновлять свою позицию по центру, а только при открытии например.
Есть кейсы когда важно оптимизировать, а иногда нафиг не нужно.
comments powered by Disqus

Отзывы и предложения