HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Quake Remake (https://hlfx.ru/forum/forumdisplay.php?forumid=32)
-- Quake Wrap (https://hlfx.ru/forum/showthread.php?threadid=4964)
Отправлено Дядя Миша 05-03-2017 в 13:47:
Quake Wrap
К созданию этого проекта меня подтолкнуло сразу несколько факторов, которые накапливались на протяжении долгого времени.
Во первых, дело в том, что я когда-то написал неплохой интерпретатор КуСи для старого ксаша, взял туда qclib из FTE для канпеляции, вообщем оформил красивую виртуальную машинку, которую впоследствии пришлось похоронить еще тогда, в 2008-м году. И вот оно мне не даёт покоя, что такая красота пылится без дела. Ну это как основной фактор - незавершённый гештальт.
Во вторых, у нас тут есть товарищи, которые могут в КуСи, однакож немогут в С++, но при этом на куси писать любят всякие там моды какие-то пишут, а один даже в подписи написал "I love to want QuakeC in XashNT", да прямо так и написал или совсем по другому, но QuakeC и XashNT там точно были.
В третьих, по большому счёту 20 лет форка первого квейка так и не привели к желаемому результату. Здесь придется остановиться по подробнее. Большинство форков первокваки внедряли в движок новые эффекты, которые начинали работать изкаропки. Такие движки в принципе неплохо воспринимались игроками (еще и потому, что там сразу был включён +mlook и выставленая 32-битная глубина цвет, ну и регулятор гаммы работал), но для разработчиков он не несли в себе ровным счётом никаких преимуществ. Одно время была даже мода форкать форки, когда их накопилось достаточное кол-во. Т.е. был некоторый обязательный набор, которым должен был обладать форк, типа того же 32-битного цвета, регулятора гаммы и отремонтированных фуллбрайтов в GL-режиме. А дальше разрабы форков тупо копировали друг у друга наиболее понравившиеся фишки, по принципу, один написал - семеро к себе скопировало. Ну и неудивительно, что на таком засилье форков, оригинальных проектов было весьма мало. MHQuake, Tenebrae, Darkplaces. Вроде бы и всё. Но не было чёткого вектора развития, кто-то если и пытался что-то внедрить, то максимум это согласовывалось на уровне других таких же форкеров движка. А вот РЕАЛЬНЫЕ РАЗРАБОТЧИКИ под первокваку срать хотели на все эти дополнения, как правило. Собственно, похожая ситуация наблюдается и в HL-Коммунити, большинству не нужны ни новые эффекты, ни новые энтити. Возьмем Arcane Dimensions для примера. Была проделана фундаментальная работа. Новые монстры, новые энтити, новые модели, новые уровни, всё новое. А теперь держитесь крепче за стул: в игре нет внешних текстур. Всё буйство красок обеспечено шареной палитрой в 256 цветов из первокваки. Этим автор как бы намекнул где он видал любителей внешних текстур. Из всего богатства возможностей, которые предоставляет тот же даркплейс (кому?), были заюзаны ровно две фичи - effectsinfo (это описание кастомных эффектов для партиклей) и формат BSP с увеличенными лимитами. Т.е. автор не стал даже привязываться к какому-то конкретному форку. Вот вам наглядный пример взаимодействия между программистом и дизайнером, первый делает то, что второму не нужно, а то что нужно второму - первый не делает. А ведь это ключевой момент в вопросе выбора движка.
В четвертых, сделав римейк Кваки и почти доделав римейк Хипнотика, меня посетила мысль, что это занятие хотя и интересное, но весьма тяжкое. И одновременно пришла в голову мысль, что ведь тех, кто что-то до сих пор делает под кваку, можно было бы перетащить на ксаш куда надежнее, чем римейком кваки. Для этого надо сделать, чтобы квака и её моды запускались под ксашем нативно. Вот собственно об этом и мой проект. Он не отменяет мои римейки никоим образом, и я не считаю что та работа была проделана зря. Скорее выводит совместимость на новый уровень. Итак, что же нам потребуется для того, чтобы научить Ксаш понимать кваку и её моды? На самом деле не так уж и много:
1. научить его грузить спрайты из кваки. done
2. научить его грузить и рисовать модельки из кваки. done
3. научить Ксаш грузить карты из кваки и рисовать кушные эффекты done
4. Самое интересное: враппер между движком и виртуальной машинкой кваки. Если быть точным, это то, что в кваке находится в файликах pr_exec.c, pr_edict.c, pr_cmds.c. Ну, конечно моя задача чуть сложнее - надо ведь будет подружить это всё с сейв-рестором халфы, но в целом - тоже работы весьма немного. done
5. Меню на манер кушного. Достаточно простой копипасты из движка. Самое главное, чтобы оно грузило эти картиночки. done
И на выходе мы получаем полноценную поддержку большинства кушных модов с кастомными моделями и кодом. Разумеется это всё можно будет портировать на андроид к примеру.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено XaeroX 05-03-2017 в 15:13:
Только не Wrap, а Warp. И не Quake, а Perilous. И не Xash, а Volatile. А так, в целом - всё верно!
__________________
Отправлено ~ X ~ 05-03-2017 в 15:25:
Цитата:
Дядя Миша писал:
Разумеется это всё можно будет портировать на андроид к примеру.
при помощи забаненных на форуме учаснегов? ну-ну 
А по сабжу мне сказать почти нечего: квакеСи я ненавижу и стремлюсь уничтожить не использую, а для нормальных людей придумали angelscript. Тем более что он источник многих бед, таких как string_t. Ну что ж - если люди хотят, то должны получать. 
Но лучше бы ты силы направил в мирное русло. Портабельная физика, рагдоллы, машинки... 
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
Отправлено XaeroX 05-03-2017 в 15:58:
Цитата:
~ X ~ писал:
при помощи забаненных на форуме учаснегов? ну-ну
Не вижу никаких препятствий - технически сам форум в портировании не участвует.__________________
Отправлено Дядя Миша 05-03-2017 в 18:06:
Цитата:
~ X ~ писал:
А по сабжу мне сказать почти нечего: квакеСи я ненавижу и стремлюсь уничтожить не использую, а для нормальных людей придумали angelscript.
Ты рассуждаешь с позиции "вон тот язык мне нравится больше, но я сам не пробывал". А я рассуждаю с позиции "на QuakeC написано дочерта модов".
Цитата:
~ X ~ писал:
Тем более что он источник многих бед, таких как string_t
ухты.
Цитата:
~ X ~ писал:
Портабельная физика, рагдоллы, машинки...
Та чота мне физика не особо интересна стала. Сами возитесь.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено ~ X ~ 05-03-2017 в 18:09:
Цитата:
Дядя Миша писал:
А я рассуждаю с позиции "на QuakeC написано дочерта модов".
Ок. Хочешь утянуть квакокоммунити - ничего против не имею. Ну кроме перенаправлении твоей энергии на физику 
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
Отправлено Crystallize 05-03-2017 в 18:16:
Следующая стадия - нативный запуск Анрила под Ксашем? 
Отправлено thambs 05-03-2017 в 18:26:
>многих бед, таких как string_t
Можно подробности?
__________________
http://www.moddb.com/mods/monorail-quest
Отправлено nemyax 05-03-2017 в 19:29:
Можете показать пример чего-нибудь умного на QuakeC?
Отправлено Дядя Миша 05-03-2017 в 20:45:
Цитата:
Crystallize писал:
Следующая стадия - нативный запуск Анрила под Ксашем?
У нас свой анрил есть - XDM называется 
Надо только редемир сделать.
nemyax тот же C только QuakeC.
Добавлено 05-03-2017 в 23:45:
Ну вот пример тепичной энтити
C++ Source Code:
5 | if (self.spawnflags & START_OFF) |
7 | lightstyle(self.style, "m"); |
8 | self.spawnflags = self.spawnflags - START_OFF; |
12 | lightstyle(self.style, "a"); |
13 | self.spawnflags = self.spawnflags + START_OFF; |
17 | /*QUAKED light (0 1 0) (-8 -8 -8) (8 8 8) START_OFF |
19 | Default light value is 300 |
21 | If targeted, it will toggle between on or off. |
34 | if (self.spawnflags & START_OFF) |
35 | lightstyle(self.style, "a"); |
37 | lightstyle(self.style, "m"); |
На уродский синтаксис не обращайте внимание. Щас все куси компиляторы дают писать нормально, как в чистом Си.
Ждём волнующих комментариев от Мастера по поводу увиденнова.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено nemyax 05-03-2017 в 21:10:
Цитата:
Дядя Миша писал:
Щас все куси компиляторы дают писать нормально, как в чистом Си.
С for-ом и struct-ами?
Цитата:
void()
Странная весчь.
Отправлено st1x51 05-03-2017 в 21:19:
Фраза "I want QuakeC in XashNT" умерла вместе с XashNT.
А вообще,есть один интересный проект на QC,о котором так сразу и не скажешь,что это на QC написано(https://eukara.github.io/FreeCS/)
А на QC и физику еще писали,ага.(Twig)
Сейчас еще многие знакомые квакеры переезжают на fteqw(ну наверное потому что обновляется еще).
__________________
//generated by Quake, do not modify
//I want QuakeC in XashNT
http://www.moddb.com/games/conscript
Отправлено thambs 05-03-2017 в 21:26:
>Ждём волнующих комментариев от Мастера по поводу увиденнова.
Дык Мастер же _в принципе_ ненавидит всё что интерпретируется вместо того что бы байты дрочить.
__________________
http://www.moddb.com/mods/monorail-quest
Отправлено Дядя Миша 06-03-2017 в 09:14:
Цитата:
nemyax писал:
С for-ом и struct-ами?
да.
Цитата:
st1x51 писал:
Сейчас еще многие знакомые квакеры переезжают на fteqw
Ну вот я и планирую взять расширенные прогсы оттуда.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено st1x51 06-03-2017 в 09:41:
Только серверную часть?
Или всё(как в старом ксаше,сервер,клиент,меню)
__________________
//generated by Quake, do not modify
//I want QuakeC in XashNT
http://www.moddb.com/games/conscript