Forth http://fforum.winglion.ru/ |
|
Game-марафон http://fforum.winglion.ru/viewtopic.php?f=33&t=1457 |
Страница 1 из 3 |
Автор: | Hishnik [ Вт авг 12, 2008 23:47 ] |
Заголовок сообщения: | Game-марафон |
Подумал вот - а чего мелочиться с отдельными кусочками? На Форте писать просто и эффективно? Клавиатуру в лапы и вперед! Итак, постановка задачи (конкурса). В срок до 1 сентября написать как можно больше простых игрушек! Еще раз: не просто выставить на конкурс программку, а задавить конкурентов количеством! Что понимается под простой игрушкой? Тетрис, крестики-нолики, арканоид, color wars, luxor/zuma, pacman, lode runner, sokoban, братья Марио, питон, отражение атак НЛО, гонки, лабиринты и проч. и проч. и проч. Для определенности можно принять, что объем исходников не должен превышать 16 кб текста (графику, карты уровней и прочее не считаем). Допускаются как "походовые", так и "реалтаймовые" движки. Что требуется для "зачета"? Минимальная узнаваемость игры и функциональная завершенность движка. Красивая графика, дизайн и заставка не требуются (хотя и рисовать кружок с пометкой "считаем, что это танк" не стоит). Также не обязательны меню, настройка управления и таблица результатов. В то же время требуются явные условия победы или проигрыша, если предусмотрено по смыслу игры - подсчет очков. Не засчитываются интерфейсы к готовым движкам (например, шахмат или шашек). За каждую игру начисляется одно очко. Дополнительные очки можно получить за: - реализацию алгоритма поиска пути (одно очко на каждого участника, независимо от количества игр с ним); - реализацию алгоритма автоматического доигрывания или бота (скриптового или AI); - вменяемый генератор карт или уровней; - наличие сетевого режима. Ожидаемый формат представления: zip-архив с папкой, где находится вся игра (не исходники с указаниями по сборке). В папке должен быть запускающий файл (exe, bat, lnk - любой, который можно разместить ярлыком на рабочем столе). Допускается использование стандартных возможностей ОС и широко распространенных драйверов (т.е. DX, OpenGL, но не экзотические библиотеки или виртуальные машины). Анонсы и скриншоты приветствуются. Понеслася!!!! |
Автор: | VoidVolker [ Ср авг 13, 2008 00:20 ] |
Заголовок сообщения: | |
Ой как здорово, а приз будет? |
Автор: | вопрос [ Ср авг 13, 2008 00:38 ] |
Заголовок сообщения: | |
А каков скрытый смысл? Для чего это? |
Автор: | Hishnik [ Ср авг 13, 2008 00:46 ] |
Заголовок сообщения: | |
вопрос писал(а): А каков скрытый смысл? Для чего это?
На Форте писать просто: а) потому что мы все так говорим или б) потому что посмотрите сколько накидали, просто в рамках развлечения |
Автор: | Kopa [ Ср авг 13, 2008 07:35 ] |
Заголовок сообщения: | |
В зачет будут идти игры перенесенные из другой Форт системы? \ например в SPF? Доп требованием, при использовании spf, можно добавить поощрение к более интенсивному использованию его библиотек. P.S. Требование по ограничению использования сторонних библиотек насколько действует? \ Например для отображение графических файлов необходимо использовать Форт библиотеки? В рамках каких Форт-систем допустимы решения? \ Например скрипт для nncrona - это допустимо? |
Автор: | Hishnik [ Ср авг 13, 2008 20:41 ] |
Заголовок сообщения: | |
Kopa писал(а): В зачет будут идти игры перенесенные из другой Форт системы? \ например в SPF? Доп требованием, при использовании spf, можно добавить поощрение к более интенсивному использованию его библиотек. Разумеется, можно пользоваться любым Фортом. Единственное условие - чтобы игра была "готова к употреблению", а не требовала скачивать что-то с инета и собирать руками. Kopa писал(а): P.S. Требование по ограничению использования сторонних библиотек насколько действует? \ Например для отображение графических файлов необходимо использовать Форт библиотеки? Желательно положить эту библиотеку в папку с игрой. Kopa писал(а): В рамках каких Форт-систем допустимы решения?
\ Например скрипт для nncrona - это допустимо? Любых! Но! Игра должна запускаться на "чистой" системе (с минимумом драйверов). Все, что нестандартно, надо положить рядом. Инсталляция чего-либо в систему нежелательна (как правило, она плохо воспринимается пользователями). |
Автор: | NLObP [ Ср авг 13, 2008 22:00 ] |
Заголовок сообщения: | |
А игры мы сможем увидеть/пощупать? |
Автор: | Hishnik [ Ср авг 13, 2008 22:29 ] |
Заголовок сообщения: | |
NLObP писал(а): А игры мы сможем увидеть/пощупать?
Так а как же иначе убедиться в их наличии? |
Автор: | вопрос [ Ср авг 13, 2008 23:08 ] |
Заголовок сообщения: | |
ну и где? та что за 45 минут |
Автор: | Hishnik [ Ср авг 13, 2008 23:08 ] |
Заголовок сообщения: | |
1 сентября будет |
Автор: | VoidVolker [ Пн авг 18, 2008 00:52 ] |
Заголовок сообщения: | |
[offtop] Pretorian Настоятельно рекомендую хоршенько ознакомится с аналогами. [/offtop] |
Автор: | Гость [ Пн авг 18, 2008 12:45 ] |
Заголовок сообщения: | |
К сентябрю, по результатам опроса, по предварительным данным будет сделано 15...17 игр:) |
Автор: | Hishnik [ Вс авг 31, 2008 23:57 ] |
Заголовок сообщения: | |
Итак, уже почти 1 сентября. Несмотря на то, что формально у меня не 10 заявленных штук, результаты из принципа выложу Сначала сводка. Название Имя файла Размер текста, байт Краткое описание Пятнашки 15.fpm 1892 Обычные пятнашки Кости dices.fpm 1756 Кости против элементарного AI Luxor luxor.fpm 1541 Незаконченный движок Luxor Platformgame.fpm 1996 Убегание по лабиринту от монстра Spacetravel.fpm 2060 Управление "космическим кораблем" (осторожно, на экране есть черная дыра с тяготением) Угадай число ugadai.fpm 612 Угадай число Итого 9857 байт, т.е. 6 игрушек уложились в установленный конкурсом лимит Все запускается в трансляторе quark.exe. (http://www.msyst.ru/quarkexe.zip) Тексты пойдут отдельно. Запуск: quark.exe <имя файла> |
Автор: | Hishnik [ Вс авг 31, 2008 23:57 ] |
Заголовок сообщения: | |
15.fpm Код: " kernel32.dll" LOADLIBRARY
DUP " Sleep" GETPROCADDRESS CONSTANT SLEEP " GetTickCount" GETPROCADDRESS CONSTANT GetTickCount VARIABLE RND : RANDOMIZE GetTickCount RND ! ; RANDOMIZE : RANDOM \ ( -- u ) RND @ 69069 * 31415 + 278720333 MOD DUP RND ! ; CREATE ЯЧЕЙКИ[] // 16 ALLOT 3 C, 1 C, 15 C, 0 C, 8 C, 11 C, 13 C, 14 C, 4 C, 6 C, 10 C, 9 C, 12 C, 2 C, 5 C, 7 C, // 1 C, 2 C, 3 C, 4 C, 5 C, 6 C, 7 C, 8 C, // 9 C, 10 C, 11 C, 12 C, 13 C, 14 C, 0 C, 15 C, 50 CONSTANT TOP 50 CONSTANT LEFT 50 CONSTANT XSIZE 50 CONSTANT YSIZE : НаМестах? // -- T 1 15 0 DO ЯЧЕЙКИ[] I + C@ I 1 + = AND LOOP ; : Кто? // index -- number ЯЧЕЙКИ[] + C@ ; : РИСОВАТЬ 16 0 DO I 4 MOD XSIZE * LEFT + I 4 / YSIZE * TOP + OVER OVER TEXTXY " " PRINT TEXTXY I Кто? DUP IF . ELSE 32 EMIT THEN LOOP ; QUAN DONE : Ход MOUSE-X @ LEFT - XSIZE / MOUSE-Y @ TOP - YSIZE / OVER 0 3 WITHIN OVER 0 3 WITHIN AND IF 0 TO DONE 4 * + // cell index DUP 3 > OVER 4 - Кто? 0 = AND IF DUP Кто? OVER 4 - ЯЧЕЙКИ[] + C! 0 SWAP ЯЧЕЙКИ[] + C! 1 TO DONE THEN DUP 12 < OVER 4 + Кто? 0 = AND DONE NOT AND IF DUP Кто? OVER 4 + ЯЧЕЙКИ[] + C! 0 SWAP ЯЧЕЙКИ[] + C! 1 TO DONE THEN DUP 4 MOD 0 > OVER 1 - Кто? 0 = AND DONE NOT AND IF DUP Кто? OVER 1 - ЯЧЕЙКИ[] + C! 0 SWAP ЯЧЕЙКИ[] + C! 1 TO DONE THEN DUP 4 MOD 3 < OVER 1 + Кто? 0 = AND DONE NOT AND IF DUP Кто? OVER 1 + ЯЧЕЙКИ[] + C! 0 SWAP ЯЧЕЙКИ[] + C! 1 TO DONE THEN DROP THEN РИСОВАТЬ НаМестах? IF CLS 10 10 GOTOXY " Вы выиграли!!! (F1 - Заново)" PRINT ['] NOOP TO <MOUSE_LEFT> THEN ; : RESTART CLS ['] Ход TO <MOUSE_LEFT> РИСОВАТЬ ; ' RESTART TO K_F1 RESTART |
Автор: | Hishnik [ Вс авг 31, 2008 23:58 ] |
Заголовок сообщения: | |
dices.fpm Код: " kernel32.dll" LOADLIBRARY
DUP " Sleep" GETPROCADDRESS CONSTANT SLEEP " GetTickCount" GETPROCADDRESS CONSTANT GetTickCount VARIABLE RND : RANDOMIZE GetTickCount RND ! ; RANDOMIZE : RANDOM \ ( -- u ) RND @ 69069 * 31415 + 278720333 MOD DUP RND ! ; : DICE // -- 1..6 RANDOM ABS 6 MOD 1+ ; QUAN PLAYERSCORE QUAN AISCORE QUAN TEMPSCORE QUAN LASTDICE QUAN AIDICES : AIDICE DICE TO LASTDICE LASTDICE 1 > IF LASTDICE +TO TEMPSCORE 30 7 GOTOXY LASTDICE . 30 8 GOTOXY TEMPSCORE . THEN ; : AIFINISH TEMPSCORE +TO AISCORE 30 9 GOTOXY AISCORE . AISCORE 99 > IF 30 15 GOTOXY " Компьютер выиграл!" PRINT 0 TO PLAYERSCORE 0 TO AISCORE THEN ; : AI 0 TO AIDICES 0 TO TEMPSCORE BEGIN AIDICE 1 +TO AIDICES TEMPSCORE 0 = TEMPSCORE AIDICES / 3 > OR AIDICES 10 = OR UNTIL AIFINISH ; : PLAYERDICE DICE TO LASTDICE LASTDICE 1 > IF LASTDICE +TO TEMPSCORE ELSE 0 TO TEMPSCORE AI THEN 10 7 GOTOXY " Выпало:" PRINT LASTDICE . 10 8 GOTOXY " Накоплено:" PRINT TEMPSCORE . ; : PLAYERFINISH TEMPSCORE +TO PLAYERSCORE 10 9 GOTOXY " Всего: " PRINT PLAYERSCORE . PLAYERSCORE 99 > IF 30 15 GOTOXY " Вы выиграли!" PRINT 0 TO PLAYERSCORE 0 TO AISCORE ELSE AI THEN ; : TEST 20 0 DO DICE . LOOP ; 0 2 GOTOXY " Цель игры: набрать 100 очков раньше компьютера, бросая шестигранный кубик." PRINT CR " Если выпадает 1, ход переходит к противнику. В любой момент можно добавить" PRINT CR " накопленные очки к общей сумме, при этом ход передается противнику." PRINT CR " Клавиша F1 - бросок кубика. F2 - добавить очки" PRINT ' PLAYERDICE TO K_F1 ' PLAYERFINISH TO K_F2 |
Страница 1 из 3 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |