Портал Готика Готика II Готика 3 Аркания Модификации Файлы Форумы РПГ Альманах Дух Готики

 

Seite 1 von 2 12 Letzte »
Ergebnis 1 bis 20 von 26
  1. Homepage besuchen Beiträge anzeigen #1 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline

    Zerberus (Цербер) и отмененный sci-fi action Piranha Bytes

    Новая тема от Phantom95 (публикую по его просьбе)

    Zerberus ("Цербер")​


    Что такое Zerberus? Это внутреннее название отменённого научно-фантастического экшена с элементами шутера разрабатываемого студией Пиранья Байтс на базе движка CodeCreatures с 1999 по октябрь 2001 года. Планы на разработку данной игры были продиктованы Пираньям материнской компанией Феномедией АГ ещё в июне 1999 года в самый разгар разработки основного проекта студии - "Готики". Согласно новой стратегии развития студии навязанной материнской компанией, пираньям нужно было начать строить планы на будущее и расширять численность своей команды. Спустя некоторое время им это удалось сделать. Уже через пару месяцев, в сентябре 1999 года, Пиранья Байтс приобрели молодую, но подающую большие надежды в области разработки графических технологий студию CodeCult (студия существовала с 06/1999 по 09/2002) некоторые выходцы из которой, такие как например, программист Курт Пельцер, позднее перейдут в Пиранья Байтс и будут работать в ней ещё долгие годы. Благодаря данной покупке, Пираньи смогли расширить свой штат и организовать вторичную внутреннюю команду на которую были возложены задачи разработки нового движка CodeCreatures и Sci-Fi Экшена на его основе. Конечно, команда не была ещё полностью укомплектована и параллельно с разработкой всё те же Пираньи продолжали активно привлекать новых людей в свою команду для работы над этим секретным проектом. В Октябре 1999 года, когда стоимость акций феномедии значительно взлетела, на сайте студии можно было обнаружить новость, что команда Пираний всё ещё нуждалась в новых сотрудниках для работы над проектом. Были ли привлечены ещё какие-либо сотрудники и кто именно это был - точно не известно, но команда уже к этому моменту совершенно точно находилась в состоянии вести активную разработку проекта и к декабрю 1999 года они уже сумели разработать играбельный прототип на базе своего нового движка. В декабре этого года один журналист из Gzone посетил офис Пираний и взял интервью у Тома Путцки, который помимо готики, также поведал ему и об этом самом секретном проекте. Вот что отметил в своём отчёте сотрудник журнала Gzone:

    Spoiler:(zum lesen bitte Text markieren)
    Секретный проект

    В конце нашего визита Том Путцки рассказал мне некоторые подробности о следующем проекте, который уже во всю готовится в Piranha Bytes. Например, молодая команда планирует некую 3D-игру, подробностей по которой всё еще очень мало. До сих пор, этот проект не имеет названия и с ним студии ещё только предстоит определиться в ближайшем будущем. Эта игра будет иметь революционные графические эффекты, такие как рельефное отображение и NURBS, а также предлагать полностью разрушаемую местность и строения. По словам Тома, последняя особенность, в частности, нуждается в точной полировке, «потому что на текущем этапе вы можете "проложить себе путь" прямо до ядра земли если имеете в своём арсенале тяжелое оружие и немного терпения!


    Однако после данной новости молва об этом проекте постепенно сошла на нет и его разработка оставалась в тени вплоть до мая 2001 года. Несложно догадаться, что всё это время работа над проектом если и велась, то только медленными темпами, потому как Пираньям в первую очередь нужно было завершить работу над своим основным проектом готикой, разработку которой уже к этому времени перенесли на более долгий срок.
    В марте 2000 года, в документе опубликованным феномедией можно было также обнаружить упоминание этого таинственного проекта где у него как раз и обозначается его внутреннее название "Zerberus", вот краткий отрывок из того документа:

    Spoiler:(zum lesen bitte Text markieren)
    "Agreements already made for Gothic comics, novels,
    action figures and add-ons emphasize the extent of the product's added value which
    stretches to merchandising activities. Piranha Bytes is already working intensively on a
    follow-up game with Zerberus as a working title."


    Спустя год, в марте 2001 состоится долгожданный релиз готики 1 после чего Пираньи отправляется в свой заслуженный отпуск.
    Выйдя из отпуска и определив планы на будущее, Пираньи в мае 2001 года снова делятся на две команды: создаётся первичная команда имеющая внутреннее название Piranha Bytes Team #1 во главе с Алексом Брюггеманом и Стефаном Ньюлем, которая начинает разработку аддона для первой готики с временным названием "Готика Сиквел" и вторичная команда - Piranha Bytes Team #2 во главе с Майком Хоге и Бьорном Панкратцем решившая возвратиться к разработке секретного "Цербера" имея в своей команде много хороших программистов таких как Курт Пельцер, Роман Кескенти и Карстен Эденфельд, а также основных 3д дизайнеров принимавших участие в разработке готики - Хорста Дворжака, Марио Рёске и Саши Хенрикса.
    На этом изображении вы можете наблюдать состав новообразованной команды Piranha Bytes Team #2, которой совместно с CodeCult было поручено завершить разработку научно-фантастического экшена:

    Spoiler:(zum lesen bitte Text markieren)
    [Bild: pEf9wZOJdeo.jpg]

    Состав команды (сверху вниз по порядку):
    Майк Хоге (Геймдизайнер)
    Бьорн Панкратц (Геймдизайнер)
    Курт Пельцер (Программист)
    Хорст Дворжак (Левел дизайнер)
    Карстен Эденфельд (Программист)
    Марио Рёске (3д дизайнер)
    Стефан Кальверам (Сценарист, скриптинг)
    Саша Хенрикс (3д дизайнер)
    Роман Кескенти (Программист)


    Спустя 4 месяца работы над проектом, в Сентябре 2001 года, данная команда привозит на ECTS свою специально подготовленную техническую демо-версию движка CodeCreatures производящую на выставке настоящий фурор и большой ажиотаж вокруг готовящихся проектов ПБ. Всё это в общем то было и неудивительно, ведь с той графикой продемонстрированной в демонстрации могли посоперничать лишь Crytek с их тогдашним бенчмарком X-Isle, который к слову был очень похож на представленное поделие Пираний. Как известно, в последствии с использованием наработок данной графической демонстрации суждено было появиться знаменитой, очень успешной и любимой многими любителями жанра шутеров - игре Far Cry.

    Техническая демонстрация CodeCreatures:

    [Video]


    Техническая демонстрация X-Isle:

    [Video]

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  2. Homepage besuchen Beiträge anzeigen #2 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Сканы страниц журнала и видео-отчёт PC Action по движку Codecreatures:

    [Video]




    На той же выставке, Том Путцки - Директор феномедии по маркетингу даёт интервью российскому журналу Game.exe в котором хвалит все преимущества их нового движка и ещё раз сообщает о таинственном научно-фантастическом экшене находящемся в разработке и базирующемся на представленной технологии.
    Вот отрывок из того интервью:

    Spoiler:(zum lesen bitte Text markieren)
    ".EXE: В Gothic 2 тоже будет много открытых пространств?
    Т.П.: А вы как думали? Ведь он...
    Том прерывается и смотрит на нас. Наконец, широко улыбается и к нашему вящему удивлению энергично подпрыгивает на высоком стуле. Его совершенно явно охватывает неконтролируемая волна веселья.
    Т.П.: Раскололи, да? Это я на радостях. Вчера мы впервые начали показывать на публике (специализированной, конечно) наш новый доселе совершенно секретный движок. И знаете, толпа посетителей-разработчиков не иссякает! А прямо перед вами заглянул знакомый журналист из нашего, немецкого, игрового журнала. Так вот, сегодня он рассказал о нашем графическом движке Питеру Молиньё, и тот... ни за что бы не поверил!.. собирается навестить нас, чтобы полюбоваться нашим творением!
    Череда прыжков на стуле, ерзанье, откровенное счастье в глазах.
    .EXE: Питер? Да, он здесь селебрити первой величины. (Верный .УЧУман Молиньё получил в этот раз почти ВСЕ, кроме трех, официальные награды ECTS. Мы, взяв грех на душу, старого друга решили не баловать, презентовав свою звездочку "PC Game of The Year — Russia" издателям Baldur's Gate 2 — любимой фирме Interplay. — А.В.) И этот движок будет использован для проекта Gothic 2, так?
    Т.П.: Не-а. Gothic 2 мы делаем на доработанной версии старого движка. Там будет еще больше открытых пространств и не менее великолепные ландшафты — вы ведь этого ожидаете? А новый движок, который для нас сделала компания Codecult, мы приберегаем для нашего второго проекта. Он не объявлен, еще не имеет названия, и я вообще не должен о нем заикаться.
    .EXE: И все же?
    Т.П.: Мы будем делать 3D action. С такой графикой, что стушуются и Black & White, и Messiah. Посмотрите сами!
    Смотрим. Очень внимательно. Движок называется Codecreatures (http://www.codecult.com/). Демонстрируемая технологическая демо-версия шокирует не хуже любого специально подготовленного ролика ультрамодной карты GeForce3. С одной оговоркой: она полностью интерактивна. Идиллическая картинка на экране зачаровывает, она живет, она дышит. Мерно шуршат стебли высокой травы, покачиваются от ветра ромашки, листья деревьев дис-крет-но по-ма-хи-ва-ют в сто-ро-ну ле-ни-во про-ле-та-ю-щих ми-мо ба-бо-чек. Но даже на Рentium 4 с фирменным GeForce3 действо безбожно тормозит. Том охотно комментирует: "Вы видите обработку 10 миллионов полигонов в секунду. В Gothic весь мир состоял из 95000 полигонов — а здесь только 13000 уходит на одно деревце". Камера свободно вращается: приближается прямо к спокойной поверхности пруда, чтобы одновременно похвастаться и текстурой дна, и туманным расплывчатым отражением... орла, царственно раскинувшего крылья в небе.
    Один щелчок мыши — и текстуры исчезают, заваливая экран тетрисными контурами полигонов. Картина из жизни сталкера. Пучки травы ходят ходуном, по-змеиному шевелятся прожилки листьев. Жуткое зрелище!
    .EXE: Том, а почему бы не использовать это чудо для Gothic 2?
    Т.П.: Придется заново переделывать всю архитектуру, а нам бы этого не хотелось. К тому же такие красоты могут быть в игре только одного жанра — 3D action!"


    К сожалению, как мы знаем, в августе 2001 года, незадолго до выставки ECTS феномедия подписала контракт с издательством Джовуд на публикацию некоторых своих игр. Спустя несколько месяцев, а именно в конце октября 2001 года, Феномедия решила свернуть оба проекта Пираний ради разработки полноценной готики 2 что конечно же привело к тому, что проекты "Цербер" и "Готика Сиквел" были отложены в чёрный ящик из которого последний сумел выкарабкаться лишь спустя 16 лет, в 2017 году, а сам "Цербер" до сих пор покоится на дне этого ящика окутанный завесой тайны, надежно скрываясь от глаз публики и фанатов студии...

    https://upload.worldofplayers.de/fil...ia_ar_e_99.pdf

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)
    Geändert von odin68 (11.02.2020 um 00:27 Uhr)

  3. Homepage besuchen Beiträge anzeigen #3 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    По поводу Zerberus, это название использовалось только для демо версии 1999 года, позднее шутер уже планировалось назвать по другому и он оставался без названия до самого момента отмены проекта. (Октябрь 2001 года)

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  4. Beiträge anzeigen #4 Zitieren
    Ritter Avatar von LEDsky
    Registriert seit
    Jun 2008
    Ort
    Russland
    Beiträge
    1.220
     
    LEDsky ist offline
    Отличный материал, спасибо! Кто знает, сложись у ПБ лучше отношения с другими издателями, возможно они стали бы крупной студией и выпускали бы не только РПГ с видом от 3-го лица. Я бы поиграл в иммерсив сим в фантастическом сеттинге от этих парней, я имею в виду старый состав ПБ.

  5. Beiträge anzeigen #5 Zitieren
    Piranha Club Avatar von elind
    Registriert seit
    Jul 2007
    Ort
    Burgas, Bulgarien
    Beiträge
    7.492
     
    elind ist offline
    Один, спасибо огромное! Проглотила эту историю, как захватывающий детектив!

  6. Homepage besuchen Beiträge anzeigen #6 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Zitat Zitat von elind Beitrag anzeigen
    Один, спасибо огромное! Проглотила эту историю, как захватывающий детектив!
    Алена, может задашь вопросики кому-нибудь из участников? Вдруг они вспомнят чего-нибудь интересное...

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  7. Beiträge anzeigen #7 Zitieren
    Piranha Club Avatar von elind
    Registriert seit
    Jul 2007
    Ort
    Burgas, Bulgarien
    Beiträge
    7.492
     
    elind ist offline
    Zitat Zitat von odin68 Beitrag anzeigen
    Алена, может задашь вопросики кому-нибудь из участников? Вдруг они вспомнят чего-нибудь интересное...
    Ох, Саш, да они все как будто обет молчания и клятву на крови давали. Если только Тома Путцки попробовать расшевелить...

  8. Homepage besuchen Beiträge anzeigen #8 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Zitat Zitat von elind Beitrag anzeigen
    Ох, Саш, да они все как будто обет молчания и клятву на крови давали. Если только Тома Путцки попробовать расшевелить...
    Ну, этот проект вроде безобидный по части тайн. Там даже какой-то бесплатный SDK движка 'Codecreatures' для комьюнити вроде как анонсировали, хотелось бы на него поглазеть.
    Вот ТУТ говорится об этом.
    "So gibt eine kostenlose Community Edition, welche für nicht-kommerzielle Zwecke mit vollen Funktionsumfang zur Verfügung steht."

    Еще очень интересна версия, что каньон из этого проекта шутера потом приспособили в локацию Яркендара.

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  9. Beiträge anzeigen #9 Zitieren
    Piranha Club Avatar von elind
    Registriert seit
    Jul 2007
    Ort
    Burgas, Bulgarien
    Beiträge
    7.492
     
    elind ist offline
    ОК. Посоветуюсь со Стефаном. Но вопросы ты сам подготовь. Если что-то сложится, я их переведу.

  10. Beiträge anzeigen #10 Zitieren
    Moderator Avatar von Ametistys
    Registriert seit
    Apr 2013
    Beiträge
    1.514
     
    Ametistys ist gerade online
    Спасибо большое, Один!
    Любопытно, если окажется, что идеи сего полузабытого проекта эволюционировали в голове Майка и привели к решению создания космической action-RPG и Piranha Bytes RED...
    ​Я скажу: “Не надо рая, дайте Готику мою”

  11. Homepage besuchen Beiträge anzeigen #11 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Zitat Zitat von elind Beitrag anzeigen
    ОК. Посоветуюсь со Стефаном. Но вопросы ты сам подготовь. Если что-то сложится, я их переведу.
    Отлично, спасибо! Вопросы подготовлю. С каким Стефаном? А то Стефанов у нас много)) Например, есть Стефан Хергет директор развития Codecult. Он как раз и основал Codecult вместе с Стефаном Хайнеманном, который на тот момент был членом Правления (Совета директоров) Phenomedia.

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)
    Geändert von odin68 (13.02.2020 um 13:43 Uhr)

  12. Beiträge anzeigen #12 Zitieren
    Piranha Club Avatar von elind
    Registriert seit
    Jul 2007
    Ort
    Burgas, Bulgarien
    Beiträge
    7.492
     
    elind ist offline
    Не, я имела в виду нашего Дона.

  13. Homepage besuchen Beiträge anzeigen #13 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Во, теперь понятно))
    Я предлагаю всем, кому интересно, тоже написать сюда свои вопросы. Не отсиживайтесь!

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  14. Homepage besuchen Beiträge anzeigen #14 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Zitat Zitat von elind Beitrag anzeigen
    ...Но вопросы ты сам подготовь. Если что-то сложится, я их переведу.
    Подготовил. Жду с нетерпением ответов

    1. Известно ли вам что-нибудь об истории образования команды Codecult и о том, как и на каких условиях она попала в офисы Phenomedia в 1999 году?

    2. Чем эта команда Codecult занималась в первые месяцы своего прибывания в офисе Phenomedia?

    3. Если вы что-нибудь помните об этом, то можете ли вы поведать нам, когда именно стартовала работа над проектом с внутренним названием "Zerberus", и что из себя должен был представлять этот проект. Может быть вы помните какие-либо подробности о нём? (Сеттинг игры, концепции, лор)

    4. Известно ли вам что стало с проектом Zerberus после релиза Gothic 1? Правда ли что дальнейшая доработка этой игры начала развиваться совсем в ином направлении, когда в мае 2001 года за него взялись геймдизайнеры Майк Хоге и Бьорн Панкратц?

    5. Были ли вы в курсе каких-либо подробностей касательно сеттинга, концепции и сюжета готовящейся игры разрабатываемой с мая по октябрь 2001 года? На какую из ныне существующих игр больше всего походил планируемый Пираньями шутер?

    6. Известно ли вам что стало с SDK Codecreatures? Может быть вы осведомлены о его текущей рыночной стоимости? Насколько нам известно была также запланирована бесплатная версия SDK для разработки некоммерческих проектов, может быть вы сохранили её и можете поделиться ею с нами?

    И желательно в самом конце задать, вдруг повезет :
    7. Сохранились ли у вас какие-либо материалы по проекту Zerberus и можете ли вы ими поделиться?

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  15. Beiträge anzeigen #15 Zitieren
    Lehrling
    Registriert seit
    Sep 2017
    Beiträge
    39
     
    Elmenibo ist offline
    Спасибо большое интересную тему. Планов у Гринвуд оказывается было громадье, но не сложилось что-то у них. У меня вопрос по движку CodeCreatures, - как его разрабатывали? с нуля или на основе другого движка? и почему собственно на нем не стали делать другие игры?

  16. Homepage besuchen Beiträge anzeigen #16 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    PC Action 11/2001

    [Bild: iyP_7vO5uGk.jpg]

    Стефан Хергет, Marco Spörl, ?, Томас Фон Трейхель, Деннис Люссбринк, Курт Пельцер, Оливер Хёллер, ?, ?, Роман Кескенти, Стефан Хайнеманн

    Может кто-нибудь знает тех, кто под вопросиками?

    На фото я не вижу Филиппа Краузе, хотя он тоже тогда был в Codecult. Или я его не узнал.
    Подпись под фото говорит о 13 программистах и художников, но на снимке только 11 человек.
    Может известен кому-нибудь состав команды?

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)
    Geändert von odin68 (04.04.2020 um 01:55 Uhr)

  17. Homepage besuchen Beiträge anzeigen #17 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Zitat Zitat von odin68 Beitrag anzeigen
    Может известен кому-нибудь состав команды?
    Выяснил состав команды, работавших над бенчмарком от Codecult.

    Codecreatures Benchmark Pro v.1.0

    Author: Codecult
    Date: 04/05/2002 09:56 AM
    Size: 39.2 MB
    License: Freeware
    Requires: Win 10 / 8 / 7 / Vista / XP

    Codecreatures is a 3D graphics benchmark based on the CodeCreatures 3D engine. Project has been abandoned.

    The Codecreatures benchmark is written with Microsoft's DirectX 8.1 API and incorporates the use of Vertex and PixelShaders popular on next generation 3D accelerators. The benchmark plays a photo-realistic nature scene and calculates the performance of the graphics adapter by measuring the fps that it can display at 1024x768, 1280x1024, and 1600x1200 resolutions. The score is a geometric mean of those three resolutions called the Codecreatures number.

    СКАЧАТЬ (38,2 Мб)


    CREDITS

    PROGRAMMING


    CODECULTs CODECREATURES

    ENGINE

    Oliver “Shrike” Höller (Lead Programmer) and (in alphabetical order)
    Stefan “Siliconavatar” Dilger (Prog.)
    Roman “SmoCoder” Keskenti (Prog.)
    Max Dennis “Hamburgler” (Prog.)
    Manuel “Z-Man” Moos (Prog.)
    Kurt “Badorties” Pelzer (Senior Prog.)
    Christoph “Schniedel” Schneiders (Prog.)
    Philipp “BiGGs” Simon (Prog.)
    Marco “Mephiston” Spörl (Prog.)

    EDITOR

    Dr. Frank “cphuhu” Riepenhausen (Lead Programmer) and (in alphabetical order)
    Michael “RamsesMC” Classen (Prog.)
    Philipp “Rastarocket” Krause (Prog.)
    Georg “Vincent Vega” Leidinger (Prog.)

    SCRIPT

    Stefan “Hans” Herget (Lead Programmer)

    ADDITIONAL PROGRAMMING

    BENCHMARK PROGRAMMING

    Kurt “Badorties” Pelzer

    TOOL PROGRAMMING

    Carsten “Chase” Edenfeld

    GRAPHICS

    Horst “Lady” Dworczak (Lead Artist) and (in alphabetical order)
    Sascha “Mosh-Head” Henrichs (Modeling)
    Mario “Snoelk” Röske (Modeling)

    MUSIC

    Kai ”KaiRo” Rosenkranz (Composer)

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  18. Beiträge anzeigen #18 Zitieren
    Waldläufer Avatar von Flatcher Goth
    Registriert seit
    May 2019
    Ort
    Ukraine
    Beiträge
    120
     
    Flatcher Goth ist offline
    Проект Zerberus - это отмененный action/shooter от студии Piranha Bytes, который разрабатывался внутренней командой разработчиков с 1999 по 2001 года параллельно с разработкой Gothic 1.
    По замыслу разработчиков, Zerberus должен был стать научно-фантастическим immersive sim, наподобие Deus Ex. При этом геймплейно игра должна была напоминать помесь Far Cry и Deus Ex. Разработчики обещали самую технологичную и продвинутую игру как в плане графики, так и в плане используемых технологий, таких как DirectX 8 и тотального разрушения, терроформинга и высокий уровень интерактивности окружения. К сожалению распыление сил и другие неурядицы поставили крест на перспективном проекте Piranha Bytes. Поэтому я думаю очень важным, рассказать вам об этой уникальной странице в истории студии, которую до недавнего времени мало кто знал. КТо знает, быть может, если бы все сложилось удачно, то Пираний знали бы не только как авторов культовой серии Gothic (Готика)

    https://youtu.be/azib52C3Qz4

  19. Homepage besuchen Beiträge anzeigen #19 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Напутано в хронологии событий 1999 года. Когда инфа в текстовом виде - это еще можно поправить, но в видео такое недопустимо. Выдаются за факт те вещи, которые либо не подтверждены, либо заведомо ложны (так как есть факты обратного). В общем видео ужасное, имхо.

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

  20. Homepage besuchen Beiträge anzeigen #20 Zitieren
    Knight Commander Avatar von odin68
    Registriert seit
    Aug 2008
    Beiträge
    2.729
     
    odin68 ist offline
    Пользователь Vaana опубликовал свое исследование на эту тему - ЗДЕСЬ.
    Опубликую пока оригинал, попозже переведу. Так как очень интересное исследование.

    Hello,

    I would like to start this thread to bring the rumours to rest and perhaps start a discussion about the history of the Genome Engine and its relation to the CodeCreatures engine by CodeCreatures. Let's start with the basic facts



    A short backstory

    In the late 90s, a small German company called "Codecult Software Research & Development GmbH", was developing its own "CodeCreatures" engine. CodeCreatures was conceived as a "GDS" or a Game Development System, which was meant to be licensed by other game companies for their games.

    Around the same time Piranha Bytes was working on their Gothic RPG game. As you might have known, Piranha Bytes ran out of money around the latter half of 1999 and was acquired by Phenomedia AG.

    With the new cash injection Piranha Bytes received, they decided to expand and make plans for the next game after Gothic. That's why they acquired CodeCult and its CodeCreatures engine with plans to use it for their next game.

    codecult software research & development GmbH aims to offer this technology on specializedlicensing markets as an international provider, and to utilize it within the Creative Products businessunit in the area of offline games (Piranha Bytes Software GmbH) and online games (Better DayCommunications Werbeagentur GmbH)
    Also around this time in 1999/2000, Piranha Bytes was working on Project Zerberus, which, according to all known information, was only a demo made on the CodeCreatures engine.

    After Gothic was released in March 2001 and subsequent patches came out, Piranha Bytes started working on the recently-discussed sci-fi shooter game, which used the CodeCreatures engine. This game was cancelled in October 2001 in favor of Gothic 2.

    In 2002 Phenomedia AG's stock collapsed after it was found out that the company leaders were under investigation for falsifying balance sheets. While Phenomedia AG was going through the insolvency proceedings, Pluto 13 GmbH was formed by members of Piranha Bytes and bought the Piranha Bytes studio and its assets. The same happened for CodeCult, with the creation of H2Labs Creative Research GmbH and the acqusition of CodeCult's property.

    This is where Piranha Bytes and CodeCult separated, with CodeCult slowly fading into obscurity and their engine sadly never being used in any released game (even though it was licensed by several companies).

    Interestingly, sometime after the bankruptcy of Phenomedia AG, many of the programmers, like Oliver Höller, Kurt Pelzer, Philipp Krause or Roman Keskenti who had previously worked on CodeCreatures went on to work at Piranha Bytes on Gothic 3 and it's "Genome" engine, which was said to be created from scratch.



    GE -> Genome?

    In 2016 the user Avallach made post in which it was mentioned that Gothic 1 included and used the GEdialogs.dll library which originated from the CodeCreatures engine. The post also mentions the fact the file has the prefix GE (Gothic?, Genome?) and not CE (CodeCreatures). This might lead you to the conclusion that these are the origins of the Genome Engine. However, it's not as simple.

    In 2002 the Codecult Codecreatures Benchmark was released. As the name suggests, it is based on the CodeCreatures engine (and also includes the GEdialogs.dll library). The most interesting part about it is when you decide to inspect all the .exes and .dll included in the benchmark. Using a tool like strings2, we can view strings and symbolic information which was leftover from the compilation process. Depending on the compiler options, the .exe/.dll can include paths to and file names of the original source code files.

    Using this method, we can easily explain the prefix GE. If you use strings2 on any of the benchmark's .exes or .dlls, eventually you will encounter one of these file paths.

    Code:
    U:\golem\work\source\engine\plugins\plfxgrass\ge_main.cpp
    As you can see, the source code of the engine was stored in a folder called Golem. This leads us to the conclusion that the engine was internally called the "Golem engine" hence the prefix GE and has nothing to do with the name Genome. Case solved?




    A closer look

    If you're as curious as me, you might find yourself performing this kind of autopsy on Gothic 3. When doing so, you will find that the compilation process of Gothic 3 also left behind these file paths.

    Code:
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_States\ZS_Freeze.cpp
    This is where I thought that finding all these paths would help me take a closer look at the technical side of the game. For that purpose I ended up putting together a small tool which roughly filtered out all the paths from the output of the strings2 tool.

    After manually filtering and beautifying the output further, I ended up with this.

    Spoiler:(zum lesen bitte Text markieren)
    C:\Windows\system32\ageia\pcmpLocation.txt
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Cooking\src\ConvexHullBuilder.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Cooking\src\ConvexMeshBuilder.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Cooking\src\InternalTriangleMeshBuilder.c pp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Cooking\src\TriangleMeshBuilder.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\CCDTest.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\ContactBoxMeshICE.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\ContactConvexHeightfield. cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\ContactMeshMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\ContactPlaneMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\ConvexMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\EdgeList.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\HeightField.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\HeightFieldShape.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\IceAdjacencies.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\InternalTriangleMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\Joint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\PenetrationMap.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\Scene.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\Shape.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\SphereShape.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\TriangleMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\cloth\Cloth.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Core\Common\src\cloth\ClothManager.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Opcode\src\IcePrunable.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Opcode\src\OPC_MeshInterface.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Opcode\src\OPC_Model.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\Actor.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpBoxShape.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpConvexMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpCylindricalJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpD6Joint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpDefaultScheduler.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpDistanceJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpFixedJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpHeightField.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpMaterial.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpPhysicsSDK.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpPointInPlaneJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpPointOnLineJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpPrismaticJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpPulleyJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpRevoluteJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpScene.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpSphericalJoint.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpSpringAndDamperEffector.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\NpTriangleMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\cloth\NpCloth.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\cloth\NpClothMesh.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\fluids\NpFluid.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\fluids\NpFluidEmitter.cpp
    C:\dev\Workspace_Release\Piranha Bytes\Gothic III\work\source\NovodexPhysicsAPI\SDKs\Physics\src\npactor.cpp
    C:\dev\sh8\SHW32.pdb
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\Hs32bitAddrMem.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsDME.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsDMEController.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsEMUController.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsExternalMem.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsPCEThreadProgram.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsSyncNet.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsVCUThreadProgram.cpp
    C:\p4\release\PhysX_2.4.1\novodex\HLSoftSim\HsVPUThreadProgram.cpp
    C:\p4\release\PhysX_2.4.1\novodex\PhysX-DDI\HLP\fluid\HOST\hlpPipelineStages.cpp
    C:\p4\release\PhysX_2.4.1\novodex\PhysX-DDI\common\fluid\src\types\BucketArrayHLP.cpp
    C:\p4\release\PhysX_2.4.1\novodex\PhysX-DDI\common\fluid\src\types\CellArrayHLP.cpp
    C:\p4\release\PhysX_2.4.1\novodex\PhysX-DDI\common\fluid\src\types\ParticleArrayFW.cpp
    C:\p4\release\PhysX_2.4.1\novodex\PhysX-DDI\common\fluid\src\types\portableIntVectors.cpp
    C:\p4\release\PhysX_2.4.1\novodex\SDKs\Core\Hardware\src\NfPhysicsSDK.cpp
    C:\p4\release\PhysX_2.4.1\novodex\SDKs\Core\Hardware\src\NfRBFwPipeline.cpp
    C:\p4\release\PhysX_2.4.1\novodex\SDKs\Core\Hardware\src\NfScene.cpp
    C:\p4\release\PhysX_2.4.1\novodex\SDKs\Core\Hardware\src\NfShape.cpp
    C:\p4\release\PhysX_2.4.1\novodex\SDKs\Core\Hardware\src\fluids\NfFluidPPUInterf aceHw.cpp
    C:\p4\release\physx_2.4.1\novodex\hlsoftsim\HsMailbox.h
    C:\p4\release\physx_2.4.1\novodex\sdks\core\hardware\src\NfPPUDataStream.h
    D:\Devel\projects\bink\build\binkw32.pdb
    E:\8397\vc98\self\bin\x86\msvcrt.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\Engine.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\Exporter.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\FileSystem.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\GFC.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\GUI.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\Game.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\Importer.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\SCM.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\Script.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\Scripts\Script_Game.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\SharedBase.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\ge3Prototype1.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\ge3dialogs.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\bin\sapi_lipsync.pdb
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\admin\ge_application.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\animation\propertysets\ge_ps_resource_animatio nactor.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\console\ge_consolecommands.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Admin\ge_windowmanager.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Fonts\ge_fontresource.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_buttonctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_contextmenu.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_dllinfoctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_entityctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_listboxctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_listctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_progressctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_propertyctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_propertysetctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_staticctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_tooltipctrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\gui\Windows\Controls\ge_treectrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\physics\admin\ge_physics_scene.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\rendersystem\stages\PVSPrefetcher\ge_pvsprefet cher3.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\resource\propertysets\collision\ge_ps_resource _collisionmesh.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\resource\propertysets\ge_ps_resource_base.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\resource\propertysets\mesh\ge_ps_resource_ligh tmap.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\resource\propertysets\mesh\ge_ps_resource_mesh complex.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\resource\propertysets\mesh\lightmaps\ge_lightm ap.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\resource\propertysets\speedtree\ge_ps_resource _speedtree.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\resource\speedtree\ge_speedtree_renderbuffer.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\scene\admin\ge_entityadmin.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\scene\context\ge_entity_templatecontext.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\scene\entity\ge_dynamicentity.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\scene\entity\ge_entity.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\components\scene\entity\ge_templateentity.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\io\archivesystem\ge_archivefile.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\io\physical\ge_configfile.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Engine\io\physical\ge_unicodeconfigfile.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Importer\helpers\scenecompiler\ge_sectorcompiler.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Action.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_AniStateAction.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Attack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Cast.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Dialog.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Die.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_DropInventoryItem.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Enjoy.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_EquipInventoryWeapo ns.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_FinishingAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_GetUpAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_GetUpParade.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Goto_Ext.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_HUD.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_HackAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_HeavyParadeStumble. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_HoldInventoryItems. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_HoldItems.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Jump.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_JumpAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_JumpBack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_LieKnockDown.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Parade.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_ParadeStumble.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_PierceAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_PierceStumble.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_PowerAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_QuickAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_QuickStumble.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Say.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_SelectWeapon.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Shoot.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_StandUp.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Stumble.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_TakeItem.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_TransferItem.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_TwirlAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_Unlock.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_UseInventoryItem.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_UseItem.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\AI_WhirlAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\EquipBestMeleeWeapon.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\GiveDefeatXP.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\GiveXP.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\SelectCombatMove.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\StartSayAttackEnd.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\StartSayAttackReason.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Commands\StartSayRefuseTalk.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\CanParade.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\CanSleep.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\GetAttitude.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\GetFollowTime.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\GetThreatenTime.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\HasAttackReasonToKill. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\HasDangerousWeapon.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsEvil.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsGuard.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsHumanoid.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsLivestock.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsOwner.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsSlave.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsUndead.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\IsUpset.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\WantToEat.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\WantToFlee.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\WantToRansack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\WantToSwim.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Decision\WantToThreaten.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Memory\GetAttribute.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Memory\GetPlayerCrime.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Memory\MemorizePlayerCrime.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Memory\SetAttackReason.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessActivePercepti on.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessBody.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessCmdAttack.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessDefeat.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessDoor.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessFightSound.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessHit.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessMurder.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessNearNpc.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessPlayer.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessPlayerSneaking .cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessPlayerWeapon.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessPlayerZone.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessPrey.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessTakeItem.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessTalk.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessTarget.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessUseInteractObj ect.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\AssessWarn.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Perception\SendPerception.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Party_Tasks\ZS_Arena.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Party_Tasks\ZS_FollowPlay er.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Party_Tasks\ZS_GuidePlaye r.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Party_Tasks\ZS_WaitForPla yer.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Attack. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Dead.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_EatBody .cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Flee.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Hunt.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Inspect Body.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Observe Suspect.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Ransack Body.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_ReactTo Damage.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_ReactTo Weapon.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_ReactTo Zone.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Stumble .cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Talk.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Threate n.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_Unconsc ious.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\AI\AI_Tasks\Reaction_Tasks\ZS_WatchFi ght.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Enclave\Enclave.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\GetAniStateByA ction.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\GetCombatMoveL ength.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\GetDCCRadius.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\GetFocusEntity Priority.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\IsFirstPersonC ameraAllowed.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnCheat.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnDamage.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnDoor.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnEnterArea.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnEnterProcess ingRange.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnExitProcessi ngRange.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnGameStartUp. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnHit.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnInit.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnLeaveArea.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnMovementMode Changed.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnProcessRouti ne.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnResetPlayer. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnReturnFromMe nu.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnTick.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnTouchCharact er.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnTouchDamage. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnTouchItem.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_Callback\OnTouchZone.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Idle_Closed.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Idle_Trade.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_NoEnc laveReputation.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_NoLea rnRequirements.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_NoPar ty.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_NoPol iticalReputation.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_NotEn oughGold.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_NotEn oughLP.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_Proce ssInfo.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\IS_Running_Selec tInfo.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Engine\Engine_States\ZS_SwitchTask.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Barrier\OnTouchMagicBarri er.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Decision\CanTameAnimal.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Decision\CanTransformInto .cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Spells\Magic.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Spells\MagicAdanos.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Spells\MagicBeliar.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Spells\MagicInnos.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_Spells\MagicMisc.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_States\ZS_Burn.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_States\ZS_Freeze.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_States\ZS_MagicSleep.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_States\ZS_Misc.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_States\ZS_Summoned.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Magic\Magic_States\ZS_WaitForDawn.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_Interface\OnPlayerChang ed.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_Interface\OnPlayerGameK eyPressed.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\Bookstand.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_DuskToDawn.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_Ghost.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_HUD.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_Interact.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_Inventory.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_Magic.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_Melee.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_Normal.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Player\Player_States\PS_Ranged.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Commands\ContinueRout ine.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Commands\SelectRoutin eDestination.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Commands\SelectRoutin eTask.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Decision\GetRoutineTi me.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Decision\GetTravellin gWalkMode.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Decision\IsFreeDestin ation.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\Routine_Callbac k.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Alchemy.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Ambient.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_AnimalSleep. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Barbecue.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Bard.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Boss.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Break.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_CarryStones. cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Cook.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Digger.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Farmer.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Goblin.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Grind.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Guard.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_HangAround.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Herd.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Listen.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Lumberjack.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Monster.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_OrcParty.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Pray.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Preach.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_RunToAttackP oint.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_SlaveBabe.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Sleep.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Smalltalk.cp p
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Smith.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Study.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Trader.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Routine_Tasks\ZS_Woodwork.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Rtn_Monster.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Rtn_Player.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Routine\Rtn_Test.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Test\TA_Test_NavOffset.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Test\TestEffect.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Test\ZS_NavEval.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\Scripts\Script_Game\Script\Test\ZS_NavOffset.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\bugslayer\BSUFunctions.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\bugslayer\CrashHandler.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\bugslayer\GetLoadedModules.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\bugslayer\IsNT.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\bugslayer\NT4ProcessInfo.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\bugslayer\TLHELPProcessInfo.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\World\ge_world.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\admin\ge_gameapp.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\entity\ge_gameentity.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\gui\ge_dialogManagerCtrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\gui\ge_npcInfoCtrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\gui\ge_questLogCtrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\gui\ge_screenOutputCtrl.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\inventory\objects\ge_inventoryslots.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\inventory\propertyobjects\ge_inventoryslot.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\layers\ge_templatelayer.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\movement\propertysets\ge_ps_charactermovement.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\quests\ge_ps_quest.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\game\session\ge_session.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\container\map\ge_indexmap.inl
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\kernel\ge_basemem.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\kernel\ge_fpuadmin.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\kernel\ge_message.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\kernel\ge_validatemem.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\math\3d\ge_octtree.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\math\interpolation\ge_keyframerdata.inl
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\accessors\ge_accessor_type.inl
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\base\ge_po_puresmartptr.inl
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\factories\ge_propertyobjectfactory.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\factories\ge_propertyobjectsingleton.c pp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\objects\ge_propertyobject.inl
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\persistence\ge_propertylayout.cpp
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\types\ge_propertytype.inl
    E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\propertysystem\types\ge_propertytypebase.cpp
    F:\rtm\vctools\vc7libs\ship\atlmfc\include\afxwin2.inl
    F:\rtm\vctools\vc7libs\ship\atlmfc\src\mfc\filecore.cpp
    F:\rtm\vctools\vc7libs\ship\atlmfc\src\mfc\filetxt.cpp


    At this point I asked myself "what if i did the same to the CodeCreatures Benchmark?". Sure enough, this was the result.

    Spoiler:(zum lesen bitte Text markieren)
    T:\DOut\GELibShared\GELibShared.pch
    T:\DOut\GELibShared\GELibShared.pch
    T:\DOut\GELibShared\ge_basemem.obj
    T:\DOut\GELibShared\ge_message.obj
    T:\DOut\GELibShared\ge_string.obj
    T:\DOut\GELibShared\vc60.pdb
    T:\DOut\gedi8drv\ge_di8_device.obj
    T:\DOut\gedi8drv\ge_di8_keyboard.obj
    T:\DOut\gedi8drv\ge_di8_mouse.obj
    T:\DOut\gedi8drv\ge_di8_sys.obj
    T:\DOut\gedi8drv\ge_di8_sys.objJ
    T:\DOut\gedi8drv\ge_di8interface.obj
    T:\ROut\GELibShared\GELibShared.pch
    T:\ROut\filemanager\filemanager.pch
    T:\ROut\gecore\gecore.pch
    T:\ROut\gedx8graphicdrv\gedx8graphicdrv.pch
    T:\ROut\ploutdoor\plOutdoor.pch
    T:\ROut\plrender\plrender.pch
    T:\ROut\plscene\plscene.pch
    T:\ROut\plsmartrenderer\plsmartrenderer.pch
    T:\ROut\sysmanager\sysmanager.pch
    U:\Golem\work\engine\debug\gedi8drv.dll
    U:\Golem\work\engine\debug\gedi8drv.exp
    U:\Golem\work\source\engine\enginecore\gecore\admin\ge_admin.cpp
    U:\Golem\work\source\engine\enginecore\gecore\admin\ge_cacheadmin.cpp
    U:\Golem\work\source\engine\enginecore\gecore\admin\ge_itemadmin.cpp
    U:\Golem\work\source\engine\enginecore\gecore\admin\ge_render.cpp
    U:\Golem\work\source\engine\enginecore\gecore\admin\ge_subadmin.cpp
    U:\Golem\work\source\engine\enginecore\gecore\camera\ge_camera.cpp
    U:\Golem\work\source\engine\enginecore\gecore\interface.cpp
    U:\Golem\work\source\engine\enginecore\gecore\system\ge_CPUIDdump.cpp
    U:\Golem\work\source\engine\enginecore\gecore\system\ge_SysProbe.cpp
    U:\Golem\work\source\engine\enginecore\gecore\system\ge_optimize.cpp
    U:\Golem\work\source\engine\enginecore\gecore\system\ge_processor.cpp
    U:\Golem\work\source\engine\enginecore\gecore\system\ge_sysinfo.cpp
    U:\Golem\work\source\engine\enginecore\gecore\system\ge_timer.cpp
    U:\Golem\work\source\engine\plugins\plCollision\Primitives\ge_bbox.cpp
    U:\Golem\work\source\engine\plugins\plCollision\Primitives\ge_cylinder.cpp
    U:\Golem\work\source\engine\plugins\plCollision\Primitives\ge_primitive.cpp
    U:\Golem\work\source\engine\plugins\plCollision\Primitives\ge_sphere.cpp
    U:\Golem\work\source\engine\plugins\plCollision\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_cubemaplight.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_fog.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_lensflare.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_mirror.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_odbase.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_outdoor.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_quad.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_sky.cpp
    U:\Golem\work\source\engine\plugins\plOutdoor\ge_skybody.cpp
    U:\Golem\work\source\engine\plugins\pladmin\ge_admin.cpp
    U:\Golem\work\source\engine\plugins\pladmin\interface.cpp
    U:\Golem\work\source\engine\plugins\plcamera\Interface\ge_plugincamera.cpp
    U:\Golem\work\source\engine\plugins\plfxgrass\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plfxgrass\ge_main.cpp
    U:\Golem\work\source\engine\plugins\plparticle\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plphysics\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plrender\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_GOO.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_admin.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_culler.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_cullobject.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_pipeline.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_renderer.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_renderzoneadmin.cpp
    U:\Golem\work\source\engine\plugins\plrender\main\ge_supportrender.cpp
    U:\Golem\work\source\engine\plugins\plscene\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plscene\ge_sceneadmin.cpp
    U:\Golem\work\source\engine\plugins\plscene\main\ge_scenecontainer.cpp
    U:\Golem\work\source\engine\plugins\plscene\main\ge_scenelink.cpp
    U:\Golem\work\source\engine\plugins\plscene\main\ge_sceneobject.cpp
    U:\Golem\work\source\engine\plugins\plscene\main\ge_zonecache.cpp
    U:\Golem\work\source\engine\plugins\plscenehandler\Interface\ge_plugin_scenehand ler.cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\ge_interface.cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\ge_admin.cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\ge_smartrenderer.cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\jobs\ge_srjobattenuatio nlightandshadow.cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\jobs\ge_srjobbasic.cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\jobs\ge_srjobcubemap.cp p
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\jobs\ge_srjobimpostor.c pp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\jobs\ge_srjobmirror.cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\jobs\ge_srjobshadowmap. cpp
    U:\Golem\work\source\engine\plugins\plsmartrenderer\main\jobs\ge_srjobvertexligh tandshadow.cpp
    U:\Golem\work\source\engine\system\filemanager\ge_archivestream.cpp
    U:\Golem\work\source\engine\system\filemanager\ge_filemanager.cpp
    U:\Golem\work\source\engine\system\filemanager\stream\ge_fmfilestream.cpp
    U:\Golem\work\source\engine\system\filemanager\stream\ge_fmstream.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\ge_dx8framedrawbase.c pp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\ge_dx8generalservice. cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\ge_dx8image.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\ge_dx8imagedrawbase.c pp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\ge_dx8interface.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\ge_dx8interfaceservic e.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\ge_dx8renderbase.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobarchiveloa d.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobbasic.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobblend.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobempty.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobmulti.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobplugin.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobprimary.cp p
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobrectcopy.c pp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobscale.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobscene.cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobuncompress .cpp
    U:\Golem\work\source\engine\system\graphic\GEDX8GRAPHICDRV\jobs\ge_jobvirtualloa d.cpp
    U:\Golem\work\source\engine\system\input\gedx8input\ge_di8_device.cpp
    U:\Golem\work\source\engine\system\input\gedx8input\ge_di8_device.h
    U:\Golem\work\source\engine\system\input\gedx8input\ge_di8_keyboard.cpp
    U:\Golem\work\source\engine\system\input\gedx8input\ge_di8_mouse.cpp
    U:\Golem\work\source\engine\system\input\gedx8input\ge_di8_sys.cpp
    U:\Golem\work\source\engine\system\input\gedx8input\ge_di8interface.cpp
    U:\Golem\work\source\engine\system\sysmanager\ge_basmem.cpp
    U:\Golem\work\source\engine\system\sysmanager\ge_errorsys.cpp
    U:\Golem\work\source\engine\system\sysmanager\ge_heap.cpp
    U:\Golem\work\source\engine\system\sysmanager\ge_linklist.h
    U:\Golem\work\source\engine\system\sysmanager\ge_syncobjects.cpp
    U:\Golem\work\source\engine\system\sysmanager\ge_sysmanager.cpp
    U:\Golem\work\source\shared\GELibShared\container\map\ge_indexmap.h
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\common\ge_cachebase.cp p
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\ge_archivehelp.h
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\items\ge_item_visual.h
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\items\ge_item_visual_a rrays.h
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\items\ge_items.cpp
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\plugins\ge_plugins.cpp
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\subsystems\ge_inputdrv interface.h
    U:\Golem\work\source\shared\GELibShared\engine\interfaces\subsystems\ge_subsyste m.h
    U:\Golem\work\source\shared\GELibShared\gfx\ge_imagedescriptor.cpp
    U:\Golem\work\source\shared\GELibShared\io\logical\ge_amarchive.cpp
    U:\Golem\work\source\shared\GELibShared\io\logical\ge_amfile.cpp
    U:\Golem\work\source\shared\GELibShared\io\logical\ge_ampackage.cpp
    U:\Golem\work\source\shared\GELibShared\io\logical\ge_amresourcegroup.cpp
    U:\Golem\work\source\shared\GELibShared\io\logical\ge_archivemanager.cpp
    U:\Golem\work\source\shared\GELibShared\io\logical\ge_archivestream.cpp
    U:\Golem\work\source\shared\GELibShared\io\physical\ge_diskmanager.cpp
    U:\Golem\work\source\shared\GELibShared\io\physical\ge_filestream.cpp
    U:\Golem\work\source\shared\GELibShared\io\streams\ge_iostream.cpp
    U:\Golem\work\source\shared\GELibShared\kernel\container\ge_map.h
    U:\Golem\work\source\shared\GELibShared\kernel\container\ge_queue.h
    U:\Golem\work\source\shared\GELibShared\kernel\container\map\ge_indexmap.h
    U:\Golem\work\source\shared\GELibShared\kernel\ge_basemem.cpp
    U:\Golem\work\source\shared\GELibShared\kernel\ge_baseobject.cpp
    U:\Golem\work\source\shared\GELibShared\kernel\ge_message.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_eulerangles.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_matrix.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_octtree.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_quaternion.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_sphericalrotation.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_vector.cpp
    U:\Golem\work\source\shared\GELibShared\math\interpolation\ge_interpolatorfactor y.cpp
    U:\Golem\work\source\shared\GELibShared\system\win32\ge_memorymappedfile.cpp
    U:\Golem\work\source\shared\GELibShared\system\win32\ge_win32_guid.cpp
    U:\Golem\work\source\shared\GELibShared\types\ge_datetime.cpp
    U:\Golem\work\source\shared\GELibShared\types\ge_def.cpp
    U:\Golem\work\source\shared\GELibShared\types\ge_guid.cpp
    U:\Golem\work\source\shared\GELibShared\types\ge_string.cpp
    U:\Golem\work\source\shared\GELibShared\types\ge_string.h
    U:\Golem\work\source\shared\GELibShared\types\ge_variant.cpp


    If you compare both of these lists, you might notice that there is some overlap. In fact, there are at least 3 files that have the same name and same directory path in both CodeCreatures and Genome.

    U:\Golem\work\source\shared\GELibShared\kernel\ge_basemem.cpp -> E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\kernel\ge_basemem.cpp
    U:\Golem\work\source\shared\GELibShared\kernel\ge_message.cpp -> E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\kernel\ge_message.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_octtree.cpp -> E:\Workspace\Piranha Bytes\Gothic III\work\source\sharedbase\math\3d\ge_octtree.cpp
    You can see that in both cases, all of these files are in the "shared" part of the engine (to my understanding this is the part of the engine which is shared by all modules), which in one case is called GELibShared and sharedbase in the other. Beyond that, the paths and names are identical.

    kernel\ge_basemem.cpp
    kernel\ge_message.cpp
    math\3d\ge_octtree.cpp

    To gain more information, I performed the same analysis on the rest of PB games. Risen has only 2 of the paths shown above and in newer games (particularly ELEX), the team at Piranha Bytes was more "careful" with the compilation process.

    Risen:
    Code:
    U:\Golem\work\source\shared\GELibShared\kernel\ge_basemem.cpp -> C:\Project\platform\pc\source\sharedbase\kernel\ge_basemem.cpp
    U:\Golem\work\source\shared\GELibShared\math\3d\ge_octtree.cpp -> C:\Project\platform\pc\source\sharedbase\math\3d\ge_octtree.cpp
    This led me to examine the extracted strings further to see if I could spot anything else that looked similar. This is one of the things i found:

    CodeCreatures:
    Code:
    Integer-persistence poses a cross-processor incompatibility threat. Consider using explicit byte-size-types such as GEU32 etc.
    GECOutputStream::Read( GEInt )
    Gothic 3:
    Code:
    bCOutputStream::Read( GEInt )
    Integer-persistence poses a cross-processor incompatibility threat. Consider using explicit byte-size-types such as GEU32 etc.
    bCOutputStream::Read( GEUInt )
    Another similarity between the engines is how they're both structured into multiple modules that are loaded at runtime. They both have similarly named library files that seem to do the same thing.

    For example, in CodeCreatures there is gedialogs.dll, while in Gothic 3 there is ge3dialogs.dll or the CodeCreatures library file gecore.dll which's functionality in Gothic 3's case is taken care of by SharedBase.dll.




    Not so fast

    Even if the information shown so far might make you think that Genome was based on CodeCreatures, the truth may be much more benign than you think. As mentioned above, the same programmers that worked on CodeCreatures later worked on Gothic 3 and Genome. In that case there are bound to be similarities.

    With all of the information presented here taken into consideration, I would narrow it down to 3 scenarios:

    Scenario n.1
    The Genome engine is a direct fork of the CodeCreatures engine, which was slowly moulded into the shape we know it as today. In my opinion, this is the most unlikely option. If such was true, there would be many more similarities and Gothic 3 would not have taken 3 years to develop.

    Scenario n.2
    The similarities in project structuring and filenames are just down to both engines being coded by the same team of programmers. The structuring and naming is the same because that's how they structure and name all of their projects.

    Scenario n.3
    Only the most basic code which is the starting point of any engine (such as matrix calculations or perspective projection) was brought over in order to speed up the development process. People are lazy... efficient and don't like to do the things they have just done all over again.

    I think scenario n.3 is the most likely option. Piranha Bytes was a small team and starting totally from scratch would not make sense.

    Of course it could be a combination of all of the scenarios. Perhaps PB only reused the core of the CodeCreatures engine and built the rest of the engine and game around it.



    Conclusion

    I would like you to again reconsider all of the info laid out here before jumping to any
    conclusions. There is not a reasonable way to find out what actually happened without either comparing both of the engine's source codes or letting somebody who knows how it was answer it. In the end it doesn't really matter. It's just an interesting piece of video-game history.

    If you wish to explain this or have spotted a mistake feel free to tell me and I will correct the record.


    Finally, I would like to thank Odin68 and Lali for their amazing work in researching the origins of the cancelled PB sci-fi shooter and CodeCult itself.

    Stay safe people

    [Bild: odin_md_akcr.jpg]
    ASUS LGA-1150 Z97-K, Intel Core i7-4770 3.4 GHz, EVGA GTX 980 Ti Hybrid ( 6.0 Gb), 16Gb DDR3, SSD OSZ Vertex 460A (240 Gb) + SSD Samsung SM951 M.2 (256 Gb), Dell Ultrasharp U2515H (2560 x 1440) + BenQ E2400HD (1920x1080)

Seite 1 von 2 12 Letzte »

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
Impressum | Наши Баннеры | Приват
World of Gothic © by World of Gothic Team
Gothic, Gothic 2 & Gothic 3 are © by Piranha Bytes & Egmont Interactive & JoWooD Productions AG, all rights reserved worldwide