|
ZX Power
#04
09 января 2000 |
|
Игротека - SNAKE Презентация написанной в Харькове недетерминированной игры.

SNAKE (C) 1999, Пелепейченко Александр __________________________________________ Вот и готова моя первая игра. Несмотря на многочисленные проблемы то с железом, то с музыкальным сопровождением, то с нех- ваткой времени, эта игрушка воплощена в жизнь. Не знаю, понравится ли она вам или нет, но думаю, что все-таки хоть кому-ни- будь она придется по вкусу. Идея этой игры принадлежит не мне: однажды я увидел SNAKE DEMO на РС, после чего и решил воплотить эту игру на СПЕКТРУМЕ. Игра относится к разряду логических. Вам будет предложено запрограммировать свою змею и провести бой с другой змеей. (Возможно той, что сделал ваш товарищ) Программирование змей осуществляется путем задавания девяти карт, определяющих их по- ведение. Управление: QAOP M SP, KEMPSTON MOUSE. Все кнопки работают одинаково (как в SE). Любые действия выполняются кликанием на кнопочки и сообщения. Ну, с кнопчками все ясно (их видно невооруженным глазом), а вот по поводу текстовых сообщений скажу пару слов. В меню ПАСПОРТ кликать можно на ПАРОЛЬ и имена змеюк, если напротив них стоит "+". (Если "+" нет, тогда надо ввес- ти пароль змеи.). В меню FILE можно ввести имя файла. В пункте НОВАЯ ЗМЕЮКА нажимае- мыми являются ПАРОЛЬ, ИМЯ, 1, 2, 3, 4, ОТ- МЕНА. Будьте внимательны: пароль можно ввести только при создании змеи. Текущей является та змея, напротив ко- торой в меню ПАСПОРТ стоит мигающая кнопка "+". Такие деиствия как редактирование карт, ставки, выполняются именно на текущую змею. Ну это, так сказать, отступление от су- ти, а теперь сама суть. Чтобы задать поведение змеи, необходимо отредактировать 1...9 карт в меню "ЛОГИКА ПОВЕДЕНИЯ". Во время боя эти карты сверя- ются по очереди с игровой ситуацией по та- ким правилам: 1. Карта накладывается на змею так, что под головой на карте оказывается голо- ва змеи на игровом поле. 2. Карта считается совпавшей, если под элементами на карте оказались точно такие же элементы на игровом поле. 3. В случае, если этого не произошло, сверяются точно таким же образом все повороты и отражения логической карты. 4. Сверяется менее приорететная карта. 5. В случае, если часть логической карты при наложении на поле вышла за его пределы, то эта часть считается сов- павшей. 6. Заштрихованные элементы логической карты считаются совпавшими. Далее выбирается одно из нескольких направлений: не совпала ни одна карта... отфонарное совпала карта, повернутая вверх........... вверх "-----"---" вниз........... вниз "-----"---" влево.......... влево "-----"---" вправо......... вправо Змея ползет в выбранном направлении. Кстати, если получилось так, что совпало несколько направлиений, то движение прои- зойдет в одну из этих сторон. Цель игры заключается в полном или час- тичном съедании всех (части) врагов путем откусывания хвостов. Для повышения слож- ности рекомендую не пользоваться СТАВКАМИ. Не следует пытаться поставить в логическую карту нечто вроде "не своя голова", или несколько "своих голов", объединенных или нет функцией "хотя бы" так как результат сравнения этих "левых" карт будет неопре- деленным, но скорее всего они не совпадут. Змеи ходят не по очереди, а случайным образом, но так, что за 1 раз ходят все змеи, которые находятся сейчас на экране. Одного раунда для определения пра- вильного соотношения силы гадюк недоста- точно. Практика показала, что для этого требуется несколько (чем больше, тем луч- ше) раундов. Например в хелпе на pc, как я помню, сказано, что 12-15 раундов позволя- ют определить победителя с точностью 80-90%. После загрузки в памяти находятся 4 змеи. Это сделано специально для иллюстра- ции работы алгоритма сверки карт. Пароль к ним всем 1111. Теперь вопросы, которые могут возникнуть при игре В: Я не могу зайти в меню ЛОГИКА ПОВЕДЕНИЯ и не могу сделать СТАВКУ. О: Зайдите в ПАСПОРТ, введите ПАРОЛЬ вашей змеи, после чего нажмите на появившийся напротив имени змеи "+". В: В логике поведения я поставил выше сво- ей головы "не препятствие" в надежде, что змея будет держаться подальше от бордюра, однако этого не происходит. О: Это и не должно происходить, так как когда змея подходит к бордюру, карта перестает совпадать. В: Очень часто происходит "зацикливание" змей. О: Попытайтесь задать логику поведения так, чтобы змея производила "расцикли- вание". У меня выходило так сделать, я даже придумал не один способ. Поэкспе- риментируйте, может удастся придумать что-нибудь и вам. В: Когда расстояние до ближайшей змеи так велико, что превосходит радиус действия карт, вероятность встречи уменьшается и приходится долго ждать пока кто-то ко- го-то догонит. О: Попытайтесь задать логику так, чтобы даже при отсутствии вблизи чего-либо ваша змея двигалась по какому-то зако- ну, "бороздя" там самым наибольший участок игрового пространства. В: А что, собственно, имеет смысл задавать в логике поведения? О: Можно попытаться задать не только жела- ние съесть врага, но и много других действий. Например, на рис.1 изображена змея, запутавшаяся в самой себе. Хвост, естественно, торчит наружу. БОльшая его часть в этом случае может быть безнака- занно откушена; попытайтесь избегать таких ситуаций. Но может произойти, что ваша змея окажется в роли "отгрызателя застрявшей"; тогда лучше (на мой взгляд) не съедать ту часть, которая может разблокировать змею, или хотя бы не съедать змею полностью, так, как в этом случае вы окажетесь в роли съеден- ной; попытайтесь задать и это. Наконец, можно попытаться сделать "срезание" уг- лов при погоне за врагами. Можно (прав- да не представляю как) задать самозапу- тывание змеи таким овразом, чтоб ее хвост был недоступен для зубов против- ника, правда делать это имеет смысл при приличной длине вашего питомца (хотя сделать это будучи коротким вряд ли удастся). Иногда бывает, что две (а то и больше) змеи запутались друг в друге. Естественно, что при нормальном и.и. такого происходить не должно. Подумайте сами, чего бы еще задать. рис. 1 В игре применен нестандартный дисковый интерфейс (с музыкой), что может вызвать неустойчивую или замедленную работу диско- вых операций на особо тормозных/турбиро- ванных дисководах или компах (хотя у меня работает без проблем) либо на дисках с не- удачным interleav'ом. Убедительная просьба: если будут заме- чены постоянные глюки в работе дисковго интерфейса на dos 5.04t или совместимой с ней сообщить о них. __________________________________________
Другие статьи номера:
Похожие статьи:
В этот день... 1 января
SibNews #08,
Woot! #01,
Spectrum Magazine #01,
ACNews #25,
Psychoz #14,
ACNews #14,
Last 128 #08,
Last 128 #06,
Last 128 #05,
Last 128 #04,
Last 128 #03,
Last 128 #02,
Last 128 #09,
Last 128 #3.5,
Last 128 #8.025,
Sinclair Club #05,
Last 128 #M!R 01,
Fantadrom #01,
Buzz #20,
Last 128 #01,
DonNews #13,
Nicron #120,
Promised Land #01,
Inferno #01,
Marazm #25,
Ultimathum #01,
Marazm #21,
Hooy Mag #02,
KrNews #11,
Marazm #22,
Marazm #23,
ZX Football 2000 #01,
Codemania #01,
Always #03,
Bugs #02,
IzhNews #08,
Virtual Worlds #01,
Listok #04,
Scenergy #02,
Flash Info #18,
Marazm #16,
Marazm #17,
Zed #01,
Balagan #02,
ZX Format #08,
ZX Power #03,
Shock #01,
Impulse #02,
Deja Vu #03,
ZX Club #08,
ZX Club #06,
Numberology #01,
Marazm #13,
Marazm #12,
Marazm #14,
Gorodok #02,
Zodiac #01,
Marazm #15,
Deja Vu #07,
Marazm #11,
Deja Vu #07,
Playboy #03,
Crazy News #2,
Crazy News #4,
ZX Light #01,
Crazy News #5,
Playboy #02,
ZX News #03,
ZX Review #1-2,
Read Me #02,
Crazy News #3,
Nicron #13,
Read Me #01,
Public Spirit #01,
Faultless #06,
Faultless #05,
ZX Software #01,
Stump #04,
Speccy #07,
Возраждение #0,
Speccy #03,
On-Line #17,
Scene+ #01,
Welcome Press #01,
ZX Konig #04,
Adventurer #01,
Faultless #05,
Faultless #04,
Di Halt #01,
Faultless #01,
Playboy #01,
Crazy News #1,
Faultless #03,
Pioneer #03,
Sinclair Town #02,
ZX Magazine #01,
Eldorado #01,
ZX Magazine #02,
Spectron #01,
ZX News #01,
ZX Konig #02,
200 #W,
Welcome Press #00,
Dune #07,
Subliminal Extacy #01,
Subliminal Extacy #02,
ZX Konig #01,
Subliminal Extacy #00,
Muchomor #01,
Spectrofon #01,
ZX Revija #02,
Outlet #01,
Outlet #1-3