Ecstatica II
Ecstatica II — компьютерная игра в жанре action-adventure, изданная компанией Psygnosis в 1997 году на MS-DOS и…
| Ecstatica II | |
|---|---|
| | |
| Разработчик | Эндрю Спенсер |
| Издатель | Psygnosis |
| Часть серии | Ecstatica[вд] |
| Даты выпуска | Март, 1997 |
| Жанры | action-adventure, слэшер |
| Технические данные | |
| Платформы | MS-DOS, Windows |
| Режим игры | однопользовательский |
| Носители | Дискеты 31⁄2" или CD-ROM (1) |
Ecstatica II — компьютерная игра в жанре action-adventure, изданная компанией Psygnosis в 1997 году на MS-DOS и Windows. Является прямым продолжением Ecstatica.
Сюжет
История начинается непосредственно там, где заканчивается первая часть игры, когда безымянный путешественник, отказавшийся быть принцем неназванной страны, спас Экстатику из обречённого города Тирих. Принц возвращается в его королевство с Экстатикой планируя жениться, но находит свой замок опустошённым и разграбленным, а своих людей жестоко убитыми демонами, гоблинами и варварами. Как только он появляется у разводного моста, крылатый демон хватает Экстатику и уносит её, пока принц был сбит другим крылатым демоном. Очнувшись, он находит себя привязанным к позорному столбу. Тем не менее, принц возвращается к жизни и освобождается благодаря чудесному женскому голосу, побуждающему его победить злобного архимага и вернуть мировой баланс восстановив 7 древних знаков. Также у него появляется возможность вызволить возлюбленную Экстатику у архимага прежде чем он принесёт её в жертву.
Технологии, применённые при разработке игры
- Необычная элипсоидная графика
- Для 3D-графики используется целочисленная математика с фиксированной точкой.
- Собственный байт-код интерпретатор для игровых скриптов и AI.
Интересные моменты исходного кода[1]
- Стиль кода очень процедурный и "досовский" (что нормально для середины 90-х).
- Те объекты (actors), которые нужно рисовать находятся в display list.
- Большая часть памяти выделена статически под данные разных видов.
- Иногда используются весьма нетривиальные структуры данных.
- Код для работы с структурами данных не особо оптимальный, но в игре не так много одновременных объектов, поэтому это не проявляется.
- Многие ресурсы в файлах ресурсов хранятся как наборы "событий" (events).
- Благодаря "событиям" (events) многое "управляется данными" (data-driven). Однако есть и то, что намертво "захардкодено" (UI, Init, некоторые игровые проверки).
- В названиях процедур на английском есть забавные ошибки. Например, "pallette" (palette) и "ambiants" (ambients). То есть английский язык для программиста — не родной.
- Для поддержки режима SVGA (640x480) по всему коду жёстко понаставили "if'ы". В результате игра поддерживает только два разрешения: 320x200 и 640x480.
- Иногда код немного не совпадает и SVGA версия может, например, "забыть" что-нибудь стереть с экрана, например часть интерфейса.
- Чтобы можно было переключаться между VGA и SVGA прямо из игры в код по-быстрому добавили две процедуры GoSVGA() и GoVGA().
- Поддержку Win95 тоже добавляли "чтобы по-быстрому". Ведь в 1996 году поддержка Win95 ещё только набирала обороты. Например, обработку сообщений Windows и реагирование на сворачивание/восстановление окна, восстановление DirectDraw после сворачивания и остановку/запуск при этом музыки под Win95 приткнули "за компанию" в процедуру обновления позиции и перерисовки курсора мыши GetMouse().
- В многих процедурах кода видны остатки режима редактирования ресурсов (Edit). Возможно режим редактирования даже рабочий, если настроить окружение.
Примечания
Ссылки
Овальная революция. История серии Ecstatica. stopgame.ru
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.