Copyright (c) 2002 unreal79
Hydrofin -- это клиент для Hydra (системы разработки игр жанра Interactive Fiction, написанной на языке Python). Интересующимся просьба обратиться непосредственно к разработчику Hydra -- WildWizard (WildWizard [at] SoftHome.net).
Hydrofin может работать только в операционных системах Windows 9x, Windows 2000, Windows XP и более поздних. На данный момент, Hydrofin был мною протестирован на системах Windows 98, Windows 2000, Windows XP. Я бы оценил любые сообщения касающиеся работоспособности Hydrofin под Windows 95 и Windows NT 4.0 .
Hydrofin работает в консольном режиме. Если вы желаете чтобы Hydrofin находился в полноэкранном режиме (в отличие от стандартного оконного режима предлагаемого Windows), одновременно нажмите клавиши Alt и Enter.
Запуск игры в Hydrofin возможен двумя способами:
- Из командной строки: Наберите:
Hydrofin.exe foo
, где "foo" -- игра, которую вы хотите запустить. Игра "foo" должна находится в поддиректории "games" либо как директория "foo", либо как файл "foo.py".
- С помощью "Сундучка Игр": Запустите программу Hydrofin.exe, и с помощью появившегося диалога "Сундучка Игр" добавьте требуемую игру в "Сундучок" и запустите ее.
Для нормальной работы Hydrofin необходимы следующие файлы:
- Python20.dll -- Python -- источник всего зла :-) ,
- hydrofinstart.py -- осуществляет связь Hydrofin и Hydra,
- hydrofin.ini -- файл настроек Hydrofin. В случае отсутствия будет создан, используя стандартные настройки Hydrofin,
- директория "Hydra" -- система разработки игр Hydra (содержит несколько файлов с расширением .py),
- директория "Lib" -- стандартные библиотеки Python,
- директория "games" -- стандартное месторасположение игр на Hydra,
- директория "save" -- содержит все файлы сохранения игр.
В случае ошибки в игре или в Hydra, вся информация, сообщаемая при этом Python, выводится в файл "GameSession.log". Рекомендуется периодически удалять его т.к. он может достигнуть значительных размеров.
Список специальных клавиш обрабатываемых Hydrofin:
- F1 помощь Hydrofin
- F9 настройка цветов фона и букв
- Alt-H помощь Hydrofin
- Alt-T начать/прекратить стенографировать
- Alt-X, Ctrl-C выйти из игры
При вводе команды доступны следующий функции:
- Для исправления уже набранной команды, перемещайте курсор при помощи клавиш "Стрелка влево"/"Стрелка вправо" (ArrowLeft/ArrowRight)
- История команд: Нажмите клавушу "Стрелка вверх" (Arrow Up). Чтобы вернуться к следуюещей команде в истории команд нажмите "Стрелка вниз" (Arrow Down),
- Для просмотра предыдущих экранов (экранов, содержимое которых уже не видно из-за поступления нового текста) используйте клавиши PageUp и PageDown. Для "перемотки" назад/вперед по пол-экрана используйте клавиши Shift+PageUp/Shift+PageDown. Для "перемотки" по одной строке вверх/вниз используйте клавиши Shift+ArrowUp и Shift+ArrowDown,
- Чтобы "прыгать" от слова к слову в командной сроке, используйте Ctrl+ArrowLeft и Ctrl+ArrowRight,
- Перейти в начало строки -- клавиша Home,
- Перейти в конец строки -- клавиша End,
- Забой предыдущего/последующего символа: клавиши Backspace/Del,
- Очистка всей строки -- клавиша Esc.
Внимание! При запуске Hydrofin на компьютерах с системой Windows 98 (и, наверное, Windows 95) проявляет себя ошибка при наборе буквы "р" (кириллица) -- вместо нее функция ReadConsoleInput() (и getch() ) выдает букву "h". В связи с этим Hydrofin принудительно заменяет появление буквы "h" на "р". (Ввод заглавных букв ("Р"(кириллица) и "H"(латиница)) происходит нормально.) Если вы знаете какой либо способ избежать этого, используя Microsoft Visual C++ 6.0, пожалуйста, напишите мне.
Что нового:
- (+) добавление функциональности
- (!) изменение с технической стороны
- (*) ликвидация недочета
- (*) Происходит перевод всех заглавных введенных букв в нижний регистр в "hydrofinstart.py"
- (*) Функция ScrIn() теперь работает правильно с выводом строки приглашения (">")
- (+) В "Сундучке Игр" появилась возможность выделения нескольких элементов одновременно
- (*) Значительно расширен файл "README.txt"
version 0.9a5 (10.09.2002)
- (*) Исправлена ошибка с возвращением размера консоли под Win9x при выходе (завершении игры)
- (+) Теперь все ошибки Python выводятся в файл "GameSession.log"
- (+) Наконец-то при вводе работает режим замены (клавиша Insert)
- (+) Создан "Сундучок Игр"
- (+) Теперь возможна настройка цветов фона, букв (клавиша F9)
- (+) Теперь настройки Hydrofin сохраняются в файл "hydrofin.ini"
- (+) Добавлены горячие клавиши (Alt-H)
- (!) Перед выводом строка, переданная из Hydra, копируется, т.к. в процессе работы Hydrofin она модифицируется
- (+) И много мелких (и не очень) исправлений
version 0.9a4 (24.05.2002)
- (+) Теперь, при редактировании командной строки, можно перескакивать от слова к слову, используя клавиши Ctrl+ArrowLeft/ArrowRight
- (*) Улучшен метод завершения работы (функция ExitGame())
- (+) Добавлена возможность записи стенограммы (как выводимого игрой текста, так и вводимого игроком) игры в файл
- (+) Добавлена возможность отображения статусной линии (верхняя часть экрана), состоящей из нескольких строк
version 0.9a3 (17.05.2002)
- (*) Учтен случай, когда выводимое игрой слово не вмещается на одну строку
- (*) Исправлена ошибка, если выводимая функцией ScrOut() строка не завершалась выводом новой линии
- (!) Добавлены тэги, которые на данном этапе игнорируются (не выводятся на экран):
<hr>, <p aligh="center">
. А эти обрабатываются:<p>, </p>,
- (!) Все поступающие для вывода знаки табуляции пропускаются
- (*) Исправлено исчезновение курсора при нажатии PageUp, если ни каких предыдущих экранов не имелось
- (+) Теперь, после завершения работы, Hydrafin возвращает размеры окна консоли в начальное значение
- (+) Обработка события нажатия клавиш Ctrl+Break, Ctrl+C
version 0.9a2 (24.04.2002)
- (+) Нажатие на Esc обнуляет всю вводимую игроком строку
- (+) Нажатие на Ctrl+Del при вводе стирает все символы справа от курсора, нажатие на Ctrl+Backspace при вводе стирает все символы слева от курсора.
- (!) Теперь в ParseOutputString() производится замена '\r' (CR) на '\n' (LF)
- (!) Теперь в качестве параметра в StrIn() нужно передавать определенную строку, а не динамическую (т.е. нельзя использовать ScrIn("\r>") из-за того, что эта строка может быть изменена (см. пункт выше) )
- (+) Добавлена история команд (клавиши UpArrow и DownArrow)
- (+) Добавлена возможность просмотра предыдущих экранов (клавиши Shift+ArrowUp/ArrowDown и [Shift+]PageUp/PageDown
- (!) Все функции работы с вводом вынесены в отдельный файл "Hydrofin_Input.cpp"
version 0.9a1 (22.03.2002) Первая версия.