Автор Тема: Game Maker обсуждение и хелп  (Прочитано 77180 раз)

0 Пользователей и 3 Гостей просматривают эту тему.

Оффлайн Blood

  • Пользователь
  • Сообщений: 183
  • TheDarkSide.su
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #120 : 01 Август 2009, 10:30:36 »
Key Press лучше чем key release, потому что кнопку можно зажать, а отпустить только через 30 секунд
Это проблемы тех, кому нравится вдавливать кнопку 30 секунд.

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #121 : 01 Август 2009, 11:21:05 »
А если мне надо стрельбу зажать к примеру?
Это никак не проблема игрока, это проблема криворукого програмиста не расчитавшего такие простые детали, а в итоге страдать будет игрок.
« Последнее редактирование: 01 Август 2009, 11:35:17 от Kostey D. »

Оффлайн Blood

  • Пользователь
  • Сообщений: 183
  • TheDarkSide.su
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #122 : 01 Август 2009, 18:21:15 »
Kostey D., а ты точно прочитал его вопрос ? Ему нужно сделать, чтобы кнопка не зажималась.

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #123 : 01 Август 2009, 18:35:50 »
Этот вопрос можно по-разному истолковать, притом ответ напрямую зависит от того как ты растолкуешь. Главное чтобы у ALEX_230_VOLT заработало, что он там хотел и ладно.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #124 : 08 Октябрь 2009, 00:57:28 »
люди, кто знает, как пользоваться surface, и как их рисовать?

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

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #125 : 08 Октябрь 2009, 04:02:12 »
Цитата: Segaman
люди, кто знает, как пользоваться surface, и как их рисовать?
Лично не знаю, не пробовал никогда, но в хелпе есть все функции связанные с ними, в том числе и draw, только там примечания ещё надо почитать.
В хелпе - Game Maker Language - Game Graphics - Drawing Surfaces


Цитата: Segaman
а ещё как сд елать обработку кода единажды в скрипте. т.е. у меня скрипт кнопки возвращает свой статус. а я хочю чтоб при наведении на неё курсора проигрывался звук один раз, а не циклично.
попробуй Add Event - Mouse - Mouse Enter.

Оффлайн NuM

  • Пользователь
  • Сообщений: 15
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #126 : 10 Октябрь 2009, 15:16:20 »
mouse enter и mouse leave часто криво работают, надежнее по координатам проверять

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #127 : 10 Октябрь 2009, 15:49:47 »
Цитата: NuM
mouse enter и mouse leave часто криво работают, надежнее по координатам проверять
Да, знаю, сам пробовал игру делать и у меня пояснения к меню оставались на экране иногда. Но для чего-нибудь простого в самый раз, чтобы не морочиться с переменными.

Оффлайн Teffycom

  • Пользователь
  • Сообщений: 1701
  • Пол: Мужской
  • Ex-Cool-Spot
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #128 : 28 Октябрь 2009, 15:35:02 »
А знаете про конвертер gm6 to jar(ява игры для мобилки)? Сам пробовал, работает! Только есть ограничения. Кому надо, дам ссылку)

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #129 : 29 Октябрь 2009, 01:19:54 »
Cool-Spot,
Слышал о нём в оригинальной теме на GMC форуме, но так и не опробовал. А что за ограничения?

Оффлайн Teffycom

  • Пользователь
  • Сообщений: 1701
  • Пол: Мужской
  • Ex-Cool-Spot
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #130 : 29 Октябрь 2009, 08:42:48 »
Нельзя использовать скрипты, пути, размер комнаты строго по размеру экрана. Ссылка нужна?

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #131 : 29 Октябрь 2009, 09:51:33 »
Цитата: Cool-Spot
Нельзя использовать скрипты, пути, размер комнаты строго по размеру экрана. Ссылка нужна?
Ссылку можешь дать, правда я не знаю зачем мне такое если нельзя на скриптах писать, но в хозяйстве пригодится. А кастомные библиотеки действий он поддерживает?

Оффлайн Teffycom

  • Пользователь
  • Сообщений: 1701
  • Пол: Мужской
  • Ex-Cool-Spot
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #132 : 29 Октябрь 2009, 12:27:29 »
download.ru -> Категория Разработка и программирование -> Средства разработки -> GMConverter
для работы необходимо, чтобы на компьютер были установлены пакеты разработчика Java от Sun Microsystems - JDK и WTK, и java runtime Environment
http://download.java.net/jdk7/binaries/ - качаем jdk-7-ea-bin-b74-windows-i586-15_oct_2009.exe, 97.63 MB ( MD5_Checksum)
Потом качаем http://www.java.com/ru/download/index.jsp
и
http://www.4shared.com/file/17139892/98dcd147/
В доках написано что и как. Доки находятся в самой программе

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #133 : 30 Октябрь 2009, 22:49:41 »
попробуй Add Event - Mouse - Mouse Enter.
У меня кнопки в редакторе скриптовые.

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #134 : 31 Октябрь 2009, 16:37:27 »
если кнопка проверяется в степе через скрипт, можешь попробовать сделать переменную и уменьшать её в самом начале кода степа на -1 и проверять чтобы она была не меньше -10 (чтобы слишком большое число не получилось). Когда проверка кнопки выдаёт положительно, сначала проверяй если переменная меньше 1, играй звук, а потом ставь переменную от 60 до 300 без проверки самой переменной, но в том же куске кода что относится к кнопке.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #135 : 01 Ноябрь 2009, 12:40:56 »
(не пойми меня не правильно и без обид)
обьясни русским языком или же напиши пример скрипта. сам попробуй понять написанное(без обид)

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #136 : 01 Ноябрь 2009, 15:10:23 »
Я предполагаю, что кнопка проверяется через скрипт в степе подобным макаром.

if mouse_x>100
if mouse_x<200
if mouse_y>50
if mouse_y<100
{
sound_play(sound1)
some_action()
}


тогда в креэйте создай переменную ccc
ccc=0


теперь степ становиться чем-то вроде

if ccc>-10
ccc-=1

if mouse_x>100
if mouse_x<200
if mouse_y>50
if mouse_y<100
{

if ccc<1
     {
     sound_play(sound1)
     }

ccc=60    //2 секунды

some_action()
}
« Последнее редактирование: 01 Ноябрь 2009, 15:12:58 от Kostey D. »

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #137 : 01 Ноябрь 2009, 18:28:37 »
 ^_^ ааа, теперь понятно.
спасибо

Оффлайн Teffycom

  • Пользователь
  • Сообщений: 1701
  • Пол: Мужской
  • Ex-Cool-Spot
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #138 : 04 Ноябрь 2009, 14:47:14 »
Плиз, помогите нубу!
Мне нужно чтобы все управляемые объекты отталкивались друг от друга и от стен, как в арканоиде. См. проект

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #139 : 04 Ноябрь 2009, 15:16:01 »
Cool-Spot,
Попробуй скопировать point_direction(x,y,other.x,other.y)-180 в графу direction в колиизии шаров. Это не совсем правильная физика шарообразных объектов, но мне напрягать свой мозг сейчас не охота.
У тебя стоит Relative, я не знаю надбавляет ли это угол, лучше устанавливай отдельно переменные speed и direction, у speed ставь Relative 1, у direction ставь point_direction(x,y,other.x,other.y)-180 без Relative.
Чтобы нормально работало, нажми center у спрайтов 0 и 1.
Для хорошего результата, сталкирай шары не под прямыми углами 0, 90, 180, 270.
Убери галочку Solid у объектов шаров.
« Последнее редактирование: 04 Ноябрь 2009, 15:20:28 от Kostey D. »

Оффлайн Teffycom

  • Пользователь
  • Сообщений: 1701
  • Пол: Мужской
  • Ex-Cool-Spot
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #140 : 05 Ноябрь 2009, 04:33:35 »
Kostey D., спасибо, все работает)

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #141 : 05 Ноябрь 2009, 10:01:26 »
Люди, а как платформер сделать, чтоб можно было по кривым порхностям ходить. например по диагонали

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #142 : 05 Ноябрь 2009, 16:41:14 »
Лично помочь не могу, но у меня на ХД есть несколько примеров, только у всех у них проблема есть небольшая - когда спускаешься, игрок как бы "падает" слегка. Я не сравнивал их, поэтому не могу гарантировать, что это лучший вариант, но тем не менее смотри в аттаче и отпишись когда скачаешь - я удалю, а то не хорошо чужую работу так выкладывать.
« Последнее редактирование: 18 Декабрь 2009, 01:32:32 от Kostey D. »

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #143 : 07 Ноябрь 2009, 16:21:41 »
люди, кто знает, как пользоваться surface, и как их рисовать?

Лично не знаю, не пробовал никогда, но в хелпе есть все функции связанные с ними, в том числе и draw, только там примечания ещё надо почитать.
В хелпе - Game Maker Language - Game Graphics - Drawing Surfaces
Я имел ввиду, как их редактировать в реальном времени. мне надо создать большую поверхность, прорисовать её последовательностью спрайтов и рисовать выбранную часть в окне.

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #144 : 07 Ноябрь 2009, 16:48:50 »
Я только что прочитал хелп, попытаюсь набрасать алгоритм не тестируя


img=surface_create(w,h)
surface_set_target(img)
//по идее, всё последующее рисуется на сёрфасе

//x и у должны быть числами скорее всего
draw_sprite(x,y,subimg,sprite1)
draw_sprite(x,y,subimg,sprite2)
draw_sprite(x,y,subimg,sprite3)

surface_reset_target()

//это уже рисует сам сёрфейс, все draw десйствия уже рисуются на экране
draw_surface(img,x,y)
//или draw_surface_general(id,left,top,width,height,x,y,xscale,yscale,rot,c1,c2,c3,c4,alpha)

//чтобы сохранить изображение можно использовать
//surface_save(id,fname), а потом грузить как картинку и рисовать

Возможно всё до draw_surface(img,x,y) можно сделать в креэйте или другом эвенте, чтобы был фиксированный эффект. Думаю сначала можно потестировать код в драве, а потом пытаться в креэйте. Сохранять скриншот сёрфэйса и обновлять копию на ходу тоже может быть хорошей альтернативой: типа хранить спрайт как скриншот последнего сёрфейса и на нажатие кнопки добавлять этот спрайт в драв сёрфейса + новый спрайт поверх - таким образом не надо будет держать позиции спрайтов, потому что x и y дожны от куда-то браться. Если так не понятно, можешь глянуть surface_copy(destination,x,y,source) так даже лучше будет ибо не надо сохранять файл и загружать его.
« Последнее редактирование: 07 Ноябрь 2009, 16:56:30 от Kostey D. »

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #145 : 07 Ноябрь 2009, 17:44:18 »
огромное спасибо.
в жизни бы недогадался :D

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #146 : 10 Ноябрь 2009, 10:17:47 »
Я предполагаю, что кнопка проверяется через скрипт в степе подобным макаром.

if mouse_x>100
if mouse_x<200
if mouse_y>50
if mouse_y<100
{
sound_play(sound1)
some_action()
}


тогда в креэйте создай переменную ccc
ccc=0


теперь степ становиться чем-то вроде

if ccc>-10
ccc-=1

if mouse_x>100
if mouse_x<200
if mouse_y>50
if mouse_y<100
{

if ccc<1
     {
     sound_play(sound1)
     }

ccc=60    //2 секунды

some_action()
}
попробовал я код такого тима. не помогает
есть что- нибудь ещё на примете?

Добавлено позже:
Нельзя использовать скрипты, пути, размер комнаты строго по размеру экрана. Ссылка нужна?
А тексты в переменных вида
global.code[46]="draw_text(global.arg[0],global.arg[1],global.arg[2])"он держит?

Оффлайн Kostey D.

  • Emu-Land Team
  • Сообщений: 2979
  • Пол: Мужской
  • to destroy us all!
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #147 : 10 Ноябрь 2009, 15:52:02 »
Цитата: Segaman
попробовал я код такого тима. не помогает
там порядок действия важен, если строчка выше/ниже, логика уже не так работать будет.

Самый верный вариант иметь переменную, 1 или 0, если 0 - обрабатывать скрипт, если 1 - скрипт был обработан и больше работать не должен. Если курсор не на кнопке - ставить 0.
Можешь хотя бы пример из своего скрипта скинуть, одну и ту же вещь каждый может делать по-своему разными способами, и ещё бывают какие-то осложнения, которые могут сделать тот или иной код неподходящим в конкретной ситуации.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #148 : 18 Ноябрь 2009, 14:03:45 »
Люди! кто знает почему, когда я создаю поверхность(surface) после создания и нарисования другой поверхности она жуётся и неподдаётся нормальной прорисовке? вместо этого она очень неплохо смешивается с предыдущей, да ещё и искажается, хотя цель рисования я сбросил. вообщем обьясните, как их создавать, удалять и как безопасно их рисовать

Оффлайн Blood

  • Пользователь
  • Сообщений: 183
  • TheDarkSide.su
    • Просмотр профиля
Re: Game Maker обсуждение и хелп
« Ответ #149 : 21 Ноябрь 2009, 13:40:04 »
Доброго времени суток.

Я недавно задумал сделать небольшую игрушку под впечатлением от двух произведений про людей с способностями : Герои и Тёмнее Чёрного ( Darker Than Black).

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

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

НО!
Каждому случайным образом даётся одна из 8 суперспособностей. Описание их ниже.
После смерти и респауна способность меняется. У каждой свои достоинства и недостатки, способность тратит энергию. Нет энергии - нет способности, но энергия со временем восстанавливается. Так что будьте аккуратны.
Описание Способностей :
Цитата
Все, абсолютно все они активируются/деактивируются или используются правой кнопкой мыши.
Суперскорость : некоторое время вы можете бегать с большой скоростью, активировав силу. Правой кнопкой мыши она и выключатеся. На суперскорости легче уворачиваться от пуль, но пока конкретного смысла она не несёт - аптечек-то ещё нет.

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

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

Регенерация : заживляет вас, что довольно полезно против обычных пуль. Но от суперсил это вас не спасёт.

Пирокинез : стерляете мощными огненными зарядами, те мало того что наносят нехилый урон, так после них некоторое время противник горит, что продолжает наносить ему урон или просто ЖЕЧЬ! ;)

Заморозка : Ну тут всё понятно. Аналог Пирокинеза, только заряды ледяные и потому на время замораживают врага.

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

Электричество : в месте вашего прицела возникают весёлые молнии, которые делают врагу весьма больно, отключая его способность (если та включена) и снижая скорость. (не действует на людей с такой же способностью)
-----------------------------------------------------------------------------
Архив, тест 2| Скачать
-----------------------------------------------------------------------------

Распакуйте архив в любую папку. В нём два exe-файла - Сервер и сама игра. Один из игроков запускает у себя сервер, тот включается и говорит ему IP, по которому к этому серверу можно законнектиться. После чего этот айпи можно сказать другим игрокам, те запускают саму игру, и коннектятся к нему. Кроме того самому "хозяину сервера" нужно запустить ещё и приложение и самому к себе приконнектится.

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

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

Ах да, совсем забыл.
Управление :
Цитата
WASD - перемещение.
Мышь - движение прицела и поворот игрока. Чтобы вам было понятнее, нажав кнопку W игрок всегда бежит к точке прицела, а не просто вверх. А нажав S он побежит назад от прицела. В общем, разберётесь.
Левая кнопка мыши - стрелять простыми бесконечными пулями.
Правая кнопка мыши - использовать Способности.
shift - вход/выход из режима чата.
Команды для сервера :
Цитата
pm Nickname text - отправить игроку с ником Nickname определённый text. (Там именно пробелы, а не подчёркивания)
kick Nickname - кикнуть определённого игрока.
ipkick 127.0.0.1 - кикнуть игрока с IP 127.0.0.1 (для случаев, когда по нику кикнуть не удаётся).
Вот собственно и всё. Оставляю эту бету на ваш суд. ;)

О всех ошибках, странностях и ваших предложениях докалывайте сюда, я собираюсь модернизировать игру шаг за шагом, делать разделение на команды "Героев и Злодеев", чтобы игра стала больше напоминать CS.
« Последнее редактирование: 21 Ноябрь 2009, 13:46:26 от Blood »