|
Отправлено: 26.06.09 09:13. Заголовок: FAQ (вопрос-ответ)
Будет постепенно пополняться. FAQ Графика, видео Анимация объекта Скрытый текст Анимация может быть трёх видов: 1) "персонаж" (character) 2) объект (object) 3) анимационный фон 1 - обычно для персонажей и делается 2 - для предметов (которые можно взять или изменить) 3 - изменяющийся фон (например сверкающая молния в небе) Если ты вообще хочешь какую-то киношку показать, это даже не анимация, а заставка (ролик). *** Допустим, нам надо анимировать объект-0, на который мы и нажали AnimateObject(0,0,0,false); первое число - номер объекта, дальше - номер лупа (сама анимация), скорость, и надо ли повторять (по умолчанию: нет). *** Если объект еще не создан, создаём его - Objects - New object и кликаешь куда его поставить. Появится синяя чашка. - Change Image... - меняешь её на облик нужного предмета-0 - Затем Interactions... - события этого объекта Interact object <-- вот сюда и ложишь скрипт
| Бэкграунд 8 bit, а картинка 16 bit -- что делать? Скрытый текст Если игра стоит на 8 бит, AGS автоматически превращает все картинки в 8 бит (поэтому где-то может потеряться цвет). В меню Game - Change colour depth... - лучше выбрать 16 бит. Это оптимальный вариант.
| Видеоролик Скрытый текст PlayVideo ("intro.mpg", 1, 1); avi, mpg и др форматы первая цифра - пропуск 0 - нельзя пропустить видео 1 - можно через ESC 2 - через любую клавишу 3 - через любую клавишу и нажатие мышкой вторая цифра - параметры 0 - видео будет оригинального размера, +звук 1 - сжато до размеров экрана с чёрными полями, +звук 10 - как 0, но без звука (причем игровая музыка будет пиликать дальше) 11 - как 1, но без звука Пока играет видео, игра на паузе. Кодеки: используются стандартные кодеки, поэтому если в твоём ролике используется DivX и др кодеки, можешь приложить к игре klmcodek*.exe (кодек-пак). Иначе у игрока может не проиграться видео. Куда ложить: или в папку с игрой (где exe) или в проект (снаружи) Во втором варианте, видео при компиляции игры должно запихаться в exe --- чтобы никто его не мог ни удалить ни изменить
| Иконка - как поменять (для игры / winsetup.exe) Скрытый текст Ложишь иконку в папку проекта и переименовываешь в "user.ico" (игра) или "setup.ico" (для winsetup.exe) Иконка должна быть 32х32, 16 цветов. Как сделать иконку из BMP Конвертер BMP2ICO (256 / 16 цветов) Подробнее: 1) есть у нас иконка на 256 цветов; но AGS её не примет 2) встаем на неё в Windows, чтобы увидеть её картинку 3) Alt+PrintScreen (или просто PrintScreen) 4) вставляем в Paint 5) эту картинку смещаем в самый левый угол 6) рисунок - аттрибуты - 32х32 ставим 7) сохраняем как BMP - 24-разрядный! (сохранятся все цвета как надо) 8) в BMP2ICO находим эту bmp и в режиме 256 цветов конвертим в ico [только "transparent" надо отключить!!! это прозрачность] 9) в проект ложим как user.ico и всё работает)) --- Иконки от TERNOX'а Пример для игры и winsetup.exe
| Как вытащить графику из SIERRA-игры? Скрытый текст 1. Через SCI Viewer открываете Sierra-квест* (выбираете папку) 2. Если нужен: - фон, идете в Picture, выбираете, Save as bmp. Всё. - предмет, или пара кадров каких-то. Лезете в VIEW, находите, сохраняете как bmp. Всё. - движения персонажа, то по-другому - сохраняешь как gif-анимацию и см. ниже Как вытащить графику из gif-анимации в AGS? 1. Через Active Gif Creator (запускаете, говорите Отмена) открываете gif 2. Затем меню "Файл - Экспорт" - сохраняете в PNG. 3. В AGS - Sprite manager - (прав.кн.мыши) Quick import multiple sprites - Вставляете все PNG 4. Выделяете PNG для одного виева, (прав.кн.мыши) Assign to view... - выбираете нужный виев (перед этим создайте его, если его нет), луп и Ок. Примечания: - каждый gif надо экспортировать по отдельности - не нужно из гифа брать анимацию хождения и влево, и вправо; достаточно взять только Влево. И через Assign view перевернуть (галочка внизу "Set all new frames flipped"). Не забудьте потом галочку убрать) *старые игры, включая Sierra-квесты, можно скачать с http://old-games.ru
| Прозрачный персонаж Скрытый текст Т.е. можно сделать любого персонажа прозрачным, главное чтобы у вас стояло как минимум 16 hi-color в настройках. SetCharacterTransparency(EGO,50); EGO - номер или скриптовое имя персонажа 50 - вроде проценты прозрачности, но 50 точно работает, остальное не проверял ;)
| Музыка, звуки Как вставить музыку в игру? Скрытый текст В наружних настройках комнаты (Settings). Ставишь галочку на "Play music on room load" и пишешь номер музыки (например 1). В папку с проектом игры (не внутри папки "Compiled", а снаружи) - ложишь музыкальный файл, переименованный в Music1.* Доступные форматы: OGG, MP3, WAV, MID, MOD, XM, S3M). Итак Music1, Music2, Music3, ... Например: Music3.mp3, Music1.mod, ... --- и именно этот номер ты и пишешь в настройках комнаты Если музыка не играет в игре, попробуйте след.варианты: 1) меню Game - Rebuild VOX files 2) меню File - Setup game --- выберите другие варианты в Digital Sound / Midi music 3) Громкость Windows (может быть, просто где-то отключен звук? весь, midi (синтезатор), ...)
| Скрипты, команды Двигать объект до опред. точки Скрытый текст Например, знаменитая "синяя чашка" ползёт из координат (5,10) в координаты (150,200) while ((GetObjectX(0)<150) && (GetObjectY(0)<200)) { MoveObjectDirect(0,GetObjectX(0)+2,GetObjectY(0)+2,2); Wait(2); } Цель: Двигать до (150,200) GetObjectX(0), GetObjectY(0) - получить координаты объекта-0 MoveObjectDirect(0,x,y,2); - двигать объект-0 в новые координаты со скоростью 2 почему я взял в MoveObjectDirect такие x,y: GetObjectX(0)+2 - это старая координата + 2. Т.е. новая координата будет на 2 пикселя правее. GetObjectY(0)+2 - (...) на 2 пикселя ниже. *** В итоге чашка двигается по диагонали вправо и вниз, пока не достигнет позиции (150,200)
| Двигать персонажа до опред. точки Скрытый текст MoveCharacter(0,x,y); 0 - номер персонажа x,y - куда идти Идёт только по Walkable Area
| Задержка в игре Скрытый текст Wait(); - в скобках число 40 - это 1 секунда 80 - 2 секунды и тд
| Как переместиться в другую комнату? Скрытый текст NewRoomEx(2,100,6); 2 - номер комнаты (куда), 100 и 6 - икс и игрик
| Как послать персонажа до опред. точки? Скрытый текст MoveCharacterBlocking(0,300,5,0); 0 - номер персонажа, 300 и 5 - икс и игрик (куда), 0 - норм ходьба (если 1 - игнорировать Walkable area / "эффект призрака")
| Как сделать клон комнаты? (или такую же, но с изменениями) Скрытый текст В папке игры находишь room*.crm - нужный номер копируешь и называешь под новым номером, перезапускаешь проект - комната появится в проекте. С изменениями - "клонируешь" и изменяешь.
| Как сделать так, чтобы что-то в игре происходило только один раз? Скрытый текст Если нужно, чтобы это происходило при первом входе в эту локацию (или в самом начале игры): просто положите ваши действия в "interactions" этой комнаты --- в First time player enters screen В любом другом месте надо использовать глобальные переменные. Одна часть ложится вместе с вашими действиями (где "..." - ваши действия), другая в меню Script - game_start перед } if (GetGlobalInt(3)==0) { SetGlobalInt(3,1); ... <-- нужные вам действия } -если значение глобал.переменной №3 равно нулю присвоить ей значение единицы ваши действия -конец "если" В "game_start" пишем стартовое значение: SetGlobalInt(3,0); -присвоить глоб.переменной №3 значение "ноль" (можно присваивать любое) То есть, 3 - номер глобальной переменной. Вместо неё, можете писать любой номер от 3 до 99 0 / 1 / ... - здесь это значение этой переменной; может быть любым числом
| Крестик (при нажатии) - нельзя взять эту вещь, подействовать Скрытый текст ChangeCursorGraphic(7,2060); Wait(40); ChangeCursorGraphic(7,2055); - меняем графику курсора "Ждать" на крестик - ждём -> соотв-но, вызываем курсор "Ждать", который у нас выглядит как крестик - меняем графику курсора "Ждать" обратно на часики предыдущий курсор появляется сам Это событие для - попытки взять неберущийся объект - попытки использовать инвентарь на объект, на который нельзя ничего использовать
| Очки - как вывести в сообщении? Скрытый текст string buffer; StrFormat (buffer, "%d", game.score); Display("Вы набрали %s очков", buffer);
| Скриншот - сделать и записать в файл Скрытый текст String input = Game.InputBox("Filename:"); input = input.Append(".bmp"); SaveScreenShot(input);
| Таймер Скрытый текст С остановкой всей игры: "Game - Pause command", или в скрипте Wait(100); Без остановки: 1) настройки комнаты (кнопка "i") 2) Repeatedly execute - Run Script if (GetGlobalInt(2)==1) { SetGlobalInt(1,GetGlobalInt(1)+1); if (GetGlobalInt(1) >= 100) { SetGlobalInt(2,0); SetGlobalInt(1,0); Display("Uraaa!!!!"); } } 100 - около 4 сек. Ставите свое значение. Вместо Display("Uraaa!!!!"); -- нужное вам действие Чтобы запустить этот таймер - пишите скрипт в соотв. месте: SetGlobalInt(2,1);
| Часы (визуальный таймер) Скрытый текст Движки, шаблоны (все движки теперь есть здесь) LucasArts (стиль Day of Tentacle) Скрытый текст SCI (стиль SQ4-5) Скрытый текст Текстовый ввод (а-ля EGA-игры), англ. команды Скрытый текст Проект+пример (1,5 Мб) Управление: - мышка / стрелочки - ввод команд (look, smotri, smotri timepod, potrogai, potrogai timepod) - повторить команду Ctrl+R Использование вещей: - должны делаться через ввод команд, вверху они просто показываются (мышкой их использовать нельзя) *** Добавление команд: - в Global Script вверху (где Said("look") и пр) - образец команды: if (Said("команда")) Display("текст"); - все новые слова из новой команды надо добавлять в Словарь (слева "Text Parser", правой кнопой справа - "Add new word...") Действия только вблизи: - например, таймпод можно потрогать только подойдя поближе - для этого поверх нужного объекта (например компьютера который наверху) создаешь широкий круглый hotspot и в blizko() указываешь его номер (для каждого объекта - разный хотспот) if (blizko(1)==0) {} else {} если герой далеко от объекта, тогда такая-то реплика, иначе (else) другая реплика.
| Текстовый ввод, русские команды Скрытый текст Проект+пример (1,6 Мб) - пишет по-русски без переключения раскладки - шрифт T&J Soft Управление+ - Shift - остановиться (теперь Роджер идёт напрямик, как и в SQ1-3) Добавление команд+ - теперь не нужно отдельно добавлять те же слова в "Text Parser" (его можно ваще удалить))) - в глобальном скрипте увидите "ВАШИ СКРИПТЫ" --- и образец как писать; вон туда и ложите команды Дизайн+ - теперь Роджер при остановке складывает руки на пояс - через какое-то время задумывается (а если спиной стоит, то машет руками) Команды - доступны сейчас: осмотрись, посмотри на таймпод, потрогай, потрогай таймпод, подумай, чихни - буквы "х" увы нет в шрифте (вернее "[" ), поэтому сделано аж три буквы "х" вместо =, \ и / (проверьте на "чихни" все три варианта)
| Ошибки AGS не запускается! Ошибка "Christmas..." Скрытый текст Встроенный в AGS прикол по проверке даты. Если сейчас 25 декабря и выше, то прога просто говорит вам пойти расслабиться в баре и отдохнуть, а не создавать игры)) Решается просто - поменяйте дату на 1 декабря например
| AGS 3.x скачал, но он не запускается Скрытый текст Для его работы надо также установить Microsoft .NET Framework 2.0 или выше (весит около 25 мб). Причем для запуска игр AGS3.x эта библиотека не нужна.
| GUI - не могу импортировать (вставить) Скрытый текст Скорее всего, он из другой версии AGS. Например, гуи из 2.7 не подойдет для 2.6
| Unable to initialize your audio hardware --- при запуске Скрытый текст Попробуйте в winsetup.exe выбрать Digital Sound: Default WaveOut Device MIDI music: Win32 MIDI Mapper
| winsetup.exe не работает Скрытый текст см. в "прочее" - "Как поменять название EXE'шника, чтобы работал winsetup.exe?"
| Вылетает посреди игры Скрытый текст Возможно, в пути игры есть # или другие специальные знаки. Например C:\Games\Mirror #29. Лучше заменить на Mirror 29. Эта ошибка появляется при попытке воспроизвести звук.
| Ошибка из-за музыки Скрытый текст Замечен такой баг в AGS 3.x версии: при тесте музыка работает, а в компилированном проекте - выдаёт ошибку. Путь к AGS-проекту должен быть английскими буквами. Например 'C:\AGS\Mygame'.
| Сохранение не работает Скрытый текст Если ты что-то изменил в проекте (через AGS), лучше заново сохраняться.
| Сохранения пропали Скрытый текст Возможно, игра сделана на AGS версии 3.х. Попробуйте установить режим совместимости с Windows 98 (exe'шнику) или вручную создать папки "My Documents/<имя учётной записи>/..." (для WinVista - Users/<имя учётной записи>/...). (или может быть не My Documents, а Documents and Settings)
| прочее DisplayMessage с лицом персонажа Скрытый текст 1) General Settings - (справа) Speech style: Ставишь Sierra style 2) в характерах Talking View - ставишь например 2 (view2 данного персонажа) 3) Views: на view2 ложишь кадры Говорящего лица (надо пару раз повторить кадры, чтобы герой побольше говорил) 4) скрипт сообщения DisplaySpeechAt (80,50,160,EGO, "Hi, my name is Pupkin."); 80 и 50 - x, y 160 - ширина EGO - скриптовое имя персонажа Пример: http://spacequest-time.narod.ru/files/forum/face_message.rar (надо кликнуть "глазом" на героя)
| Как переводить AGS-игры? Скрытый текст Русский шрифт Скрытый текст Сохранения - как удалить? Скрытый текст Они лежат в папке игры: agssave.001, *.002, *.003 и тд. Оттуда и удаляете. Если через игру: DeleteSaveSlot(); и в скобках номер сохранения.
| Как зарегистрироваться на bigbluecup.com? Скрытый текст Из-за английского языка не все вопросы понятны. Вот ответы на 05.01.2008, вряд ли вопросы менялись. 1-1 2-4 3-3 4-4 5-5 6-3 7-2 8-2 9-2 10-3 11-2 12-2 13-3 14-3 15-1
| Как поменять иконку у файла с игрой? Скрытый текст Чтобы поменять иконку, для начала создайте новую в программе AX-Icons ( скачать ее можно тут http://www.axialis.com ). Иконка должна быть размером 32х32 пикселя и сделана в 16 цветах. Когда все будет готово, поместите иконку в папку с проектом и назовите ее USER.ICO Чтобы поменять иконку у Setup сделайте то же самое, но назовите файл setup.ico
| Как поменять название EXE'шника, чтобы работал winsetup.exe? Скрытый текст Если у вас есть проект игры EXE'шник называется как папка игры. Выйдите из AGS, переименуйте папку и запустите проект - появится новый EXE'шник с новым именем папки. Если нет проекта Создайте в той же версии AGS новый проект, назовите папку так, как нужно чтоб назывался EXE'шник и сохраните и в папке Compiled. Там появится winsetup.exe, его скопируйте в игру, и там тоже переименуйте EXE'шник. P.S. Название EXE'шника должно быть не больше 8 символов. Достаточно аббревиатуры или сокращения (Kolya Superzmey -> Kolya.exe / KS.exe / Zmey.exe)
|
|