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

User Tag List

Страница 1 из 7 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 70

Тема: Russian Railway Magnat (demo)

  1. #1
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Russian Railway Magnat (demo)

    Привет всем!
    После почти годового перерыва решил тряхнуть кой-чем и взять наконец в руки шашки. И начала реализовываться давняя задумка - что-то типа Transport Tycoon для Спектрума на карте России. На данный момент в представленной демо можно строить железные дороги между 122-ю городами Российской империи, которая включает все территории бывшего СССР, а также утраченные Польшу, Финляндию, турецкий Эрзурум, китайские Порт-Артур и Харбин, Ново-Архангельск на Аляске. Плюс несколько пограничных не наших городов.
    Планируется сделать перевозку между городами ресурсов. Но вот как ее интересно сделать, пока не знаю. Может, подскажете.
    Мысли альтернативные такие:
    1. Запустить поезда, которыми либо управлять вручную, либо они сами будут ездить по алгоритму определения пути. Ресурсы, которые необходимы конечному городу, назначаются в начальном городе либо вручную, либо автоматически определенное количество. Ессно на однопутном участке не может находиться больше 1 поезда, а на 2-путном больше 2х. В городах может быть любое количество поездов. Деньги зарабатываются в зависимости от перевезенных грузов, и тратятся на строительство новых путей, а также на обслуживание существующих путей. Недостаток - поездов будет очень много, примерно 2 тысячи, и управлять таким количеством вручную нудно.
    2. Поезда не запускать, а после строительства путей до нового города автоматически рассчитывать модель сети в зависимости от необходимых городам ресурсов и показывать цветом загруженность путей. В зависимости от этого игрок будет принимать решение, где строить дальше. Деньги рассчитываются также, как в первом варианте. Недостаток - быстродействия Спека может не хватить, значит модель нужно упрощать, что может плохо повлиять на играбельность. И вообще играбельность в этом варианте под вопросом.

    В общем, играйте и думайте. Клавиши q,a,o,p - передвижение на 1 клетку; shift+q,a,o,p - передвижение на экран; 1,2 - строительство 1- и 2-путных ж.д.
    Исходник игры на ассемблере и ZX Like Pascal прикладываю, а также карту России 170х170 в bmp и утилиту кодирования ее в ассемблер. Карту обрисовал пикселями с реальной физической карты СССР
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	demo_rus_rail.png 
Просмотров:	457 
Размер:	4.8 Кб 
ID:	61770  
    Вложения Вложения

  2. Этот пользователь поблагодарил Andrew771 за это полезное сообщение:

    scooter (14.10.2019)

  3. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  4. #2
    Veteran Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,486
    Спасибо Благодарностей отдано 
    219
    Спасибо Благодарностей получено 
    149
    Поблагодарили
    115 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
          ld    hl,_SOURCE_NAME+0
          ld    (addr_arraystring_index_2),hl
          ld    hl,string_temp
          ld    (hl),0
          ld    de,_STR0
          call  add_string
          ld    hl,(addr_arraystring_index_2)
          ld    (hl),0
          ld    de,string_temp
          call  add_string
          ld    hl,_SOURCE_NAME+11
          ld    (addr_arraystring_index_2),hl
          ld    hl,string_temp
          ld    (hl),0
          ld    de,_STR1
          call  add_string
          ld    hl,(addr_arraystring_index_2)
          ld    (hl),0
          ld    de,string_temp
          call  add_string
          ....
    тут напрашивается всё завернуть в макрос, хотя бы так

    Код:
          MACRO do_string src, addr, str
              ld    hl,src
              ld    (addr),hl
              ld    hl,string_temp
              ld    (hl),0
              ld    de,str
              call  add_string
    
              ld    hl,(addr)
              ld    (hl),0
              ld    de,string_temp
              call  add_string
          ENDM
    и потом вызывать это дело
    do_string _SOURCE_NAME+0, addr_arraystring_index_2, _STR0
    do_string _SOURCE_NAME+11, addr_arraystring_index_2, _STR1
    do_string _SOURCE_NAME+22, addr_arraystring_index_2, _STR2
    ...

    а здоровые массивы данных (фонт и всё остальное) красивее вытянуть отдельным файлом и инклудить.
    Тогда при необходимости очень просто менять асмовый кусок с блоками defb на инклуд уже скомпиленого шрифта (который можно готовить в какой-либо удобной утилите).
    Сам к примеру делаю так:
    Код:
    	IFDEF ZX7PACK
    		INCBIN "packed/table.gfx.zx7"
    	ELSE
    		INCLUDE "../gfx/environment/table.a80"
    	ENDIF
    Последний раз редактировалось Bedazzle; 24.07.2017 в 00:20.

  5. #3
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,767
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    142
    Спасибо Благодарностей получено 
    1,173
    Поблагодарили
    770 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Andrew771, если не трудно (наверняка память не под завязку) компильте хотя бы с 24576, а не 23900
    пользователям с trdos будет гораздо проще

  6. #4
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Это скомпилено ZX Like Pascal-ем
    Вообще-то, было бы в языке реализовано присваивание при объявлении переменных (о чем мне говорил когда-то AzAtom), такой бы порнографии не было бы. Буду доделывать компиль.

    - - - Добавлено - - -

    Цитата Сообщение от goodboy Посмотреть сообщение
    Andrew771, если не трудно (наверняка память не под завязку) компильте хотя бы с 24576, а не 23900
    пользователям с trdos будет гораздо проще
    Ок!

  7. #5
    Junior Аватар для Sameone
    Регистрация
    30.04.2010
    Адрес
    Харцызск, Донецкая область, Украина
    Сообщений
    24
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Почитал... Не понял, когда происходят события игры. Ко времени аренды Порт-Артура Аляска давно была продана.
    В любом случае, события происходят до 1917 года, в таком случае в списке городов есть ошибки. Что заметил:
    Запорожье в те времена называется Александровск;
    Таллин -- Ревель;
    Донецк -- Юзовка (если речь об областном центре, но он основан только в 1869 году и на время игры ещё небольшой городишко);
    Магнитогорск -- основан в 1929 году.
    Далее прочие мысли и вопросы.
    Все значения, присваемые при инициализации, жёстко прописаны в исходнике. А нет желания вынести их в отдельный файл и считывать оттуда? Тогда, меняя только этот файл, но не движок, можно будет тайкунить не только в РИ, но и, по желанию игрока, в Циньской империи, США, Британской Индии, да хоть на Альфе Центавра.
    Да и максимальные значения необязательно вбивать в исходник -- их тоже можно считывать из файла и иметь возможность играть на картах разного размера, с разным количеством городов и т. д.
    Переменные и константы россыпью... нет желания структурировать в массивы да записи и обрабатывать в цикле?
    Почему коническая проекция карты? Зачем нужны тайлы пустоты?
    Будут ли в игре компьютерные коллеги-конкуренты, которых нужно перемагнатить?

  8. #6
    Member Аватар для Flash_zx
    Регистрация
    26.09.2015
    Адрес
    г. Пермь
    Сообщений
    73
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    12
    Спасибо Благодарностей получено 
    11
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sameone Посмотреть сообщение
    Почитал... Не понял, когда происходят события игры. Ко времени аренды Порт-Артура Аляска давно была продана.
    В любом случае, события происходят до 1917 года, в таком случае в списке городов есть ошибки. Что заметил:
    Запорожье в те времена называется Александровск;
    Таллин -- Ревель;
    Донецк -- Юзовка (если речь об областном центре, но он основан только в 1869 году и на время игры ещё небольшой городишко);
    Магнитогорск -- основан в 1929 году.
    ...
    Пусть события происходят в скором будущем.. тогда там все правильно
    Сайт: http://ckazka.info/
    ZX-Evolution 4096 rev.A /SD/10Gb HDD+CD/FDD 1.2+1.44/ZiFi

  9. #7
    Activist Аватар для hippiman
    Регистрация
    29.02.2008
    Адрес
    Ростов-на-Дону
    Сообщений
    435
    Записей в дневнике
    27
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    42
    Поблагодарили
    19 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да какая разница как города называются, чай не Europa Universalis. В Open TTD вообще карта генерится случайно и города на ней тоже. Главное чтобы интересно было.
    Dizzy Scripting Engine:http://www.dizzy-se.ru/

  10. #8
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sameone Посмотреть сообщение
    Почитал... Не понял, когда происходят события игры. Ко времени аренды Порт-Артура Аляска давно была продана.
    В любом случае, события происходят до 1917 года, в таком случае в списке городов есть ошибки. Что заметил:
    Запорожье в те времена называется Александровск;
    Таллин -- Ревель;
    Донецк -- Юзовка (если речь об областном центре, но он основан только в 1869 году и на время игры ещё небольшой городишко);
    Магнитогорск -- основан в 1929 году.
    Спасибо за подробный отзыв!
    Да, действие по задумке происходит до 1917 года, где-то в середине XIX века, в сферически вакуумной Российской Империи. Города оставшиеся переименую под старину, я просто работал на компе вдали от интернетов (чтоб не отвлекали), так что свериться не с кем было. Уточню обязательно.
    Магнитогорск, Ямбург и подобные добавил для пущего интереса, хотя тогда они не существовали, чтобы не было пустоты на карте и было что возить из ресурсов (у первого - металл, у второго - нефть). Чтобы был резон строить Трансполярную магистраль, БАМ или Белкомур, и даже ж.д. на Аляску и Камчатку можно строить, которых в реальности нет и может и не будет. Естественно, за большую цену по вечной мерзлоте.

    Цитата Сообщение от Sameone Посмотреть сообщение
    Все значения, присваемые при инициализации, жёстко прописаны в исходнике. А нет желания вынести их в отдельный файл и считывать оттуда? Тогда, меняя только этот файл, но не движок, можно будет тайкунить не только в РИ, но и, по желанию игрока, в Циньской империи, США, Британской Индии, да хоть на Альфе Центавра.
    Да и максимальные значения необязательно вбивать в исходник -- их тоже можно считывать из файла и иметь возможность играть на картах разного размера, с разным количеством городов и т. д.
    Карта сейчас только одна - Россия. Я ее обрисовывал поверх реальной карты неделю чистого времени где-то (изначально вообще казалась нереальной задачей сделать ее). Вряд ли кто-то возьмется делать неблагодарную работу - новые карты, хотя инструменты я дал в исходнике. Массив по идее должен быть вбит в виде байтов, а не присваиваниями, как сейчас. Это пока ограничение языка ZX Like Pascal (отсутствие инициализации переменных при объявлении), но я уже устраняю этот недочёт, обещаю закончить на ближайших выходных, уже делаю! Заодно и расход памяти существенно уменьшится.
    Для игры наверно жестко заданные значения по городам и грузам нормально, они же к карте привязаны.
    Но если очень охота, то всё можно поменять через исходники. Движок карты взят из моей другой игры Euphoria 2D, а в ней уже имеется генератор случайных карт. А у меня была другая идея - подсунуть карту России в игру Euphoria

    Цитата Сообщение от Sameone Посмотреть сообщение
    Переменные и константы россыпью... нет желания структурировать в массивы да записи и обрабатывать в цикле?
    Записей в ZX Like Pascal нет. А всё задаю жестко для конкретной карты. Пока о гибкости не думал, написать бы, что имею.


    Цитата Сообщение от Sameone Посмотреть сообщение
    Почему коническая проекция карты? Зачем нужны тайлы пустоты?
    Чтобы влезть в размеры движка Эйфории - 170 на 170 клеток (3 бита на клетку), и чтобы не было много пустого места на карте. Пустотами загородил территорию Китая, Монголии, Японии, Восточной Европы, они к Российской Империи не относятся, а также Северный Ледовитый океан. Я кстати немного сжульничал, сжал территорию центральной Сибири, чтобы уместить в квадрат. В реальности Сибирь больше, но городов там мало, так что потеря земель не велика.

    Цитата Сообщение от Sameone Посмотреть сообщение
    Будут ли в игре компьютерные коллеги-конкуренты, которых нужно перемагнатить?
    О, классная наводка. Даже не думал об этом, хотя в описаниях для PC-игр встречал. Насамом деле, интересно было бы, но нужно придумывать ИИ, желательно не очень сложный.

  11. #9
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В общем, по аналогии с соседней темой ALKO, ищу художника и музыканта для окончания данной игры (а может, ALKO захочет?). Есть шансы закончить к конкурсу Яндекса в декабре. Ибо код за последний месяц я написал на 80%, спасибо августовскому отпуску. Сейчас продолжаю потихоньку по вечерам. Игра переходит в стадию оформительства, так что очень нужен художник и консультант в одном лице, а также музыкант. И есть шанс успеть к конкурсу (месяц назад мне так не казалось ).
    Я реализовал-таки компании-конкуренты (спасибо Sameone за идею!), с которыми соревнуется игрок в строительстве путей между городами, дабы захапать побольше городов для обслуживания и получения прибыли, а также установлением тарифов на перевозки для выбивания конкурентов из городов. Конкурентов будет 2 штуки (больше не задумано движком и форматом карты 3 бита на клетку). Конкурентами будут: Российская Империя, Советский Союз и Российская Федерация, за одного из них играет юзер. За каждой "компанией" стоит реальная историческая личность, связанная с железной дорогой. Собственно, художнику необходимо изобразить спрайты 3 логотипов/флагов, а также 6-8 портретов этих личностей (размер под вопросом, где-то от 4х4 до 7х7 знакомест). Портреты можно в мультяшном стиле, но не карикатурные. Также нужны советы по оформлению игры, где-что-как разместить красиво: картинки, таблицы, пояснения. А также сделать заставку для игры, идея и набросок (в виде фото) ее уже у меня есть. По сути, работа будет сводиться к обрисовыванию фоток и собственной интерпретации.
    Музыку же - хотелось бы аранжировку романса на железнодорожную тематику одного известного русского композитора XIX века (его тоже в соавторы возьмем ), в личке скажу, кого имею в виду. Но наверно, некоторые уже догадались. Можно в современной обработке, а можно, как в оригинале. Ноты имеются.
    В общем, и так уже многое раскрыл. Остальное, кого заинтересует быть соавторами, будем подробно в личке обсуждать, предоставлю текущую демо. Здесь в первом посте есть первоначальное демо.

  12. #10
    Guru Аватар для ALKO
    Регистрация
    25.09.2009
    Адрес
    Одесса
    Сообщений
    2,257
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    183
    Поблагодарили
    86 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ... а тем временем движок ZXoom с колоссальным потенциалом под полноэкранные РПГ-квесты простаивает без дела, будучи некогда обплеванным за попытку реализации недо-шутера.
    Последний раз редактировалось ALKO; 26.09.2019 в 01:32.

Страница 1 из 7 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Russian ZX BUS
    от VELESOFT в разделе Несортированное железо
    Ответов: 12
    Последнее: 11.07.2019, 15:38
  2. [Atari] Russian charset
    от breeze в разделе Atari
    Ответов: 52
    Последнее: 01.05.2014, 19:04
  3. Are the new Russian Spectrums still in production?
    от jmk в разделе RST#38
    Ответов: 7
    Последнее: 06.07.2010, 03:59
  4. RUSSIAN SOFTWARE and real ZX
    от VELESOFT в разделе Игры
    Ответов: 74
    Последнее: 29.11.2008, 13:49
  5. Looking for Russian Games
    от CityAceE в разделе RST#38
    Ответов: 3
    Последнее: 19.02.2008, 16:24

Ваши права

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