Важная информация

User Tag List

Страница 3 из 10 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 91

Тема: Генерация лабиринтов

  1. #21
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В моём алгоритме не используется ГСЧ. На самом деле предварительно составляется список всех поднимаемых стенок, а затем список "рассортировывается" по ГСЧ


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

    как и обещал, высылаю выдранный из MAZIACS генератор
    а алгоритм выяснил? если нет, подожду хотя бы вх./вых. параметры...

  2. #22
    Veteran Аватар для TomCaT
    Регистрация
    25.06.2005
    Адрес
    Одесса
    Сообщений
    1,795
    Спасибо Благодарностей отдано 
    54
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    22 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SMT
    TCT>> как и обещал, высылаю выдранный из MAZIACS генератор

    SMT>а алгоритм выяснил? если нет, подожду хотя бы вх./вых. параметры...
    Послушайте, я понимаю, что пишу не туда, и это чистый флейм. Но не в силах ли кто-нибудь подсказать, как файл Hobeta быстро перекинуть на fdi-дискетку для дебага (мой SN недавно сдох, т.к. заапгрейдился до AMD Sempron 1800, - Runtime Error 200, до сих пор даже патчи не помогли). Иначе вх./вых. параметры будут не скоро...

    (Хотя если память не врёт, процедура просто вызывается по адресу Start самого файла-аттача. Генерит циклический лабиринт 64x64 из байтов 0 и 1, выходя вниз, приходишь сверху, выходя влево приходишь справа, НО НА 1 СТРОКУ ВЫШЕ. вход помечен квадратом нулей 3x3. Выхода процедура не выставляет. А вот адрес, куда кладётся лабиринт, я уже и не вспомню. Если смогу поднять Spectrum Navigator, расскажу)
    Помни. Только на компьютере можно семь раз Cut, а один - Format. В реале все иначе. (c)
    Власть людей сильнее, чем люди у власти.
    Чем меньше мы смотрим на мир, тем больше задумываемся о нем. (c)

    Скрытый текст

    Can you help Robin in his quest for the silver arrow? (c) Odin "Robin of the Wood"
    Мы все немного режем по дереву, а потом собираем корабли в бутылках.
    Is it the same old story you are going to tell me
    or is it the old story telling me and you we are the same?
    http://www.sky.od.ua/~ptsk
    [свернуть]


  3. #23
    Activist Аватар для Raider
    Регистрация
    24.06.2005
    Адрес
    novosibirsk
    Сообщений
    266
    Записей в дневнике
    5
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от TomCaT
    Послушайте, я понимаю, что пишу не туда, и это чистый флейм.

    Это называется Offtopic а не Flame.

    А что касается генерации лабиринтов - действовать от противного.
    Сгенерировать непроходимый лабиринт, а потом прорубить случайные проходы. Вообще, я думаю по запросу maze generation гугль вывалит столько...
    Alex Raider, Flash inc. 1992-1997 Новосибирск

  4. #24
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    TomCat: генератор запускается точно не сначала. в начале - мусор

  5. #25
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,753
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    286
    Поблагодарили
    214 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    На спеке была поляческая игра так и называлась 3д лабиринт
    генерила лабиринт вида 2 с тупиками и тп


    и еще игруха Fred
    Последний раз редактировалось jerri; 12.09.2005 в 15:11.
    С уважением,
    Jerri / Red Triangle.

  6. #26
    Veteran Аватар для TomCaT
    Регистрация
    25.06.2005
    Адрес
    Одесса
    Сообщений
    1,795
    Спасибо Благодарностей отдано 
    54
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    22 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ура, запустил SN и наконец-то скинул в Shalaev'скую дискетку MAZIACS и свою прогу Labirint на основе выдранного из первой игры куска! Отдебагил всё вкупе, и не зря. В результате:

    1)выдранные 1-1,5 килобайт местами содержат мусор, но я просто перестраховывался и сохранил с лишним (помню, сохранил один раз именно этот кусок без пары байт в конце, долго вис и сбрасывался )

    2) адрес запуска 42720

    3) лабиринт после генерации кладётся куда-то с 49000 и дальше, занимает 4кб. Точного адреса размещения пока не выяснил, но это легче, чем точка входа

    4) для тех, кто не понял, о чём речь, см. мои посты на прошлой странице, гдя я выкладывал процедурку.
    Помни. Только на компьютере можно семь раз Cut, а один - Format. В реале все иначе. (c)
    Власть людей сильнее, чем люди у власти.
    Чем меньше мы смотрим на мир, тем больше задумываемся о нем. (c)

    Скрытый текст

    Can you help Robin in his quest for the silver arrow? (c) Odin "Robin of the Wood"
    Мы все немного режем по дереву, а потом собираем корабли в бутылках.
    Is it the same old story you are going to tell me
    or is it the old story telling me and you we are the same?
    http://www.sky.od.ua/~ptsk
    [свернуть]


  7. #27
    Veteran Аватар для TomCaT
    Регистрация
    25.06.2005
    Адрес
    Одесса
    Сообщений
    1,795
    Спасибо Благодарностей отдано 
    54
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    22 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    5) после недолгого просмотра кода с 42720 (A6E0) выяснил, что скоро идёт вызов процедуры по адресу 42078, которая использует слова по адресам 42074, 42076 как переменные. Так что фактически мусор если и есть, то перемешан с нужными процедурами, что при безусловных переходах делает бесполезным его изъятие

    6) лабиринт располагается с адреса 49152 (C000) - можно было бы и догадаться, а я вот долго думал, что с 49155 и ещё удивлялся, почему такой странный адрес. В лабиринте 0 - пустоты и проходы, 255 - стенки.

    7) проверил, верно то, что выходы из квадрата лабиринта вправо не совпадают с выходами влево - надо следить за переводом строки.

    2jerri: это всё тоже интересно, но вот как оттуда генераторы вынуть и рассмотреть? ведь MAZIACS на полу-Бэйсике, а те в маш. кодах (Fred, во всяком разе). Хотя польский 3д лабиринт тоже бы надо посмотреть, может, он и на Бэйсике. Может, ссылку кинешь?
    Помни. Только на компьютере можно семь раз Cut, а один - Format. В реале все иначе. (c)
    Власть людей сильнее, чем люди у власти.
    Чем меньше мы смотрим на мир, тем больше задумываемся о нем. (c)

    Скрытый текст

    Can you help Robin in his quest for the silver arrow? (c) Odin "Robin of the Wood"
    Мы все немного режем по дереву, а потом собираем корабли в бутылках.
    Is it the same old story you are going to tell me
    or is it the old story telling me and you we are the same?
    http://www.sky.od.ua/~ptsk
    [свернуть]


  8. #28
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    алгоритм раздизасмил. идея довольно простая, но написан жутко неоптимально по скорости. конец генерации лабиринта привязан к таймеру (или может, сравнение #5C78 c #96 - это нажатие кнопки - не силён я в basic-переменных)

  9. #29
    Veteran Аватар для TomCaT
    Регистрация
    25.06.2005
    Адрес
    Одесса
    Сообщений
    1,795
    Спасибо Благодарностей отдано 
    54
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    22 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SMT
    алгоритм раздизасмил. идея довольно простая, но написан жутко неоптимально по скорости.
    Так разжуй же нам, убогим. Даже неоптимальную

    Цитата Сообщение от SMT
    конец генерации лабиринта привязан к таймеру (или может, сравнение #5C78 c #96 - это нажатие кнопки - не силён я в basic-переменных)
    А, понятно... нет, это действительно привязка к таймеру. Хотя внутри, кажется, местами прерывания вырубаются. Просто для "успокоения игрока" время генерации не ниже 3c (#96). Это позволяет не мигать экраном "Подождите, идёт постройка..." и тут же входить в игру, а дать отдохнуть игроку и показать, что в КАЖДОЙ игре лабиринт создаётся небыстро. И лучше мирно подождать, чем злится, что в этот раз "долго строит".

    Отсюда, кстати, и неоптимальность по времени. Дону Пристли не нужны были быстрые построения, он сам тормозил их.
    Помни. Только на компьютере можно семь раз Cut, а один - Format. В реале все иначе. (c)
    Власть людей сильнее, чем люди у власти.
    Чем меньше мы смотрим на мир, тем больше задумываемся о нем. (c)

    Скрытый текст

    Can you help Robin in his quest for the silver arrow? (c) Odin "Robin of the Wood"
    Мы все немного режем по дереву, а потом собираем корабли в бутылках.
    Is it the same old story you are going to tell me
    or is it the old story telling me and you we are the same?
    http://www.sky.od.ua/~ptsk
    [свернуть]


  10. #30
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,753
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    286
    Поблагодарили
    214 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    2jerri: это всё тоже интересно, но вот как оттуда генераторы вынуть и рассмотреть? ведь MAZIACS на полу-Бэйсике, а те в маш. кодах (Fred, во всяком разе). Хотя польский 3д лабиринт тоже бы надо посмотреть, может, он и на Бэйсике. Может, ссылку кинешь?

    он в кодах и там задается лабиринт почти любого размера

    http://trd.speccy.cz/gamez/123/3DLABYR_.ZIP

    а можно сюда зааттачить Maziaks а то прокся ftp режет
    Последний раз редактировалось jerri; 14.09.2005 в 11:38.
    С уважением,
    Jerri / Red Triangle.

Страница 3 из 10 ПерваяПервая 1234567 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •