This is another hd graphical mod for Quake2, with advanced glsl render.

Add file Report quake2xp 1.26.7 release
Location
Games : Quake 2 : Mods : quake2xp : Files
Filename
q2xp126_7inst.7z
Category
Full Version
Uploader
KirkBarnes
Added
Size
1.51gb (1,616,153,317 bytes)
Downloads
5,316 (20 today)
MD5 Hash
1ce51609024ab1e009d2c940f0566df2
Embed Button
Embed Widget
Description

Remove winXP and Vista support OpenGL 4.5 video card required - AMD RX series or NVIDIA 6XX

Preview
quake2xp 1.26.7 release
Comments  (0 - 50 of 99)
sergiotal
sergiotal

flashlight dont work quake2 Ground Zero.....

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

flashlight work only in vanilla or xatrix ))))

Reply Good karma+2 votes
sergiotal
sergiotal

in the after version it's work.....

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

This part of the code is rewritten, and now there will not work there

Reply Good karma+1 vote
Whitegoldl
Whitegoldl

Sweet! Can't wait to check this out. Thanks for all your hard work and keeping this classic alive.

Reply Good karma Bad karma+2 votes
Guest
Guest

Мульиплеер вылетает сразу же после того как нажмешь Begin, на прошлых версиях такого не наблюдается.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

С консоли запускай мультик, там все пашет. С меню разберусь на днях

Reply Good karma+1 vote
Yo$hik
Yo$hik

как запустить мульт с консоли? У меня тоже норм пашет сингл, но с мультом не заладилось.

Reply Good karma Bad karma+1 vote
Guest
Guest

This comment is currently awaiting admin approval, join now to view.

blaster0054
blaster0054

Brains (beta class) do not use their laser attack in that mode. But when i run the vanilla the reckoning, beta class brain uses his laser attack properly. Please fix that.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

map name with brains(beta)

Reply Good karma+1 vote
blaster0054
blaster0054

Inner Compound (map xcompnd2).

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

fixed

Reply Good karma+1 vote
blaster0054
blaster0054

Thanks!

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Yadi.sk
fixed game dll

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

reckoning? ok i'm check it

Reply Good karma+1 vote
Ballmer
Ballmer

Здравствуйте.
Кнопки геймпада "Select" и "Start" определяются как MOUSE4 и MOUSE5 (хотел забиндить на них квиксейв и меню соответственно).
И немного не разобрался с синематик эффектом: сейчас всё вместе работает, и виньетирование и нойз и цветовая коррекция (Technicolor)?

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

да, есть такое, там не все гладко с биндингом...
да при включении фильм фильтра работает с ходу нойз, царапины, ыиньетка и цветовая коррекция.

Reply Good karma+2 votes
KirkBarnes AuthorOnline
KirkBarnes

Контроллер я к стати сегодня переделал
Pp.userapi.com

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

новый экзе, там все окей с джоем. все кнопки и курки биндятся,
исп нативные имена, а не ремап на джойстик-мышку. и не надо использовать ремап проги, контроллер пашет полностью нативно
Yadi.sk

Reply Good karma+2 votes
Ballmer
Ballmer

Теперь намного лучше :) Спасибо!
Заметил ошибку: нажатие направый и левый стики, при биндинге в меню, распознается как XPAD_THUMB_LEFT и XPAD_THUMB_RIGHT, т.е. как правый и левый курки.
И еще предложение, захардкодить в меню "A" как выбор пункта меню, "B" как возврат в предыдущее (в общем функционально как ENTER и ESCAPE). Это более привычные кнопки в современных играх. Или и так и сяк реализовать. Я пока в SVN логе не прочёл:
*add controller support for menu (activate-back) actions
не допетрил, что оно уже есть, ну или я туп стал совсем :(

P.S. Не осилил забиндить "START" как вызов меню, добавление в конфиг bind XPAD_START "togglemenu" почему-то воспринимается не как вызов меню, а как написанный текст.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

По поводу старт и бэк - на них записано вход в менюшки и откат назад
то есть это эквивалент энтер и эскейп. По части перепутанных курков чуть позже гляну

Reply Good karma+1 vote
Ballmer
Ballmer

Т.е. как я понимаю, кеи глобально биндятся, игра не видит в меню это или во время экшна? Так?
P.S. Курки не перепутаны, я про нажатие вниз на Пр/Лев стики написал, это тоже кнопки и они при биндинге определяются как курки и соотв-но на них не повесить другие функции.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

ааа, ты про обзор стиком имитирующий мышь? там есть цвар, который пинч инвертит.
Стити - жестко зашиты в коде, их можно поменять местами или инвертнуть у обзора пинч

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

такс я обновил экзе по ссылке, там мелкие правки.
и еще раз по управлению
стики зашиты жестко - один на перемещение, второй на обзор.
их можно менять местами.
дпад с стрелками зашит как собственно стрелки, на них можно вешать разную хрень, как и на остальное.
На старт и бэк весит перемещение по менюшкам (энтер и эскейп), но в игре они тоже биндятся.

Reply Good karma+1 vote
Ballmer
Ballmer

Нет, вы не поняли меня. Стики это не только аналоговые оси, но и кнопка, если на стик надавить вниз, не отклонить, а надавить до щелчка (не сломайте геймпад :)). Сейчас то, что забиндено на правый курок, будет и при нажатии на правый стик.
Зайдите в бинды, присвойте атаке XPAD_RIGHT_TRIGGER. Затем, не выходя из меню бинда на включение фонарика забиндите т.е. нажмите вниз до щелчкм на правый стик. И всё увидите.
А я код посмотрю, и msdn, вчера на ночь смотрел, но с телефона неудобно было на sf. Может я чего не понимаю.

Reply Good karma Bad karma+1 vote
Ballmer
Ballmer

Навскидку за 10 минут:

win_xbox360.c

//=============
if (xInputStage.Gamepad.bLeftTrigger >= 128) //map to XINPUT_GAMEPAD_LEFT_THUMB
buttonState |= 4;

if (xInputStage.Gamepad.bRightTrigger >= 128) // map to XINPUT_GAMEPAD_RIGHT_THUMB
buttonState |= 8;

if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_START) buttonState |= 1;
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_BACK) buttonState |= 2;
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB) buttonState |= 4; // down
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB) buttonState |= 8; // down
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_SHOULDER) buttonState |= 16; // up
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_SHOULDER) buttonState |= 32; // up
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_A) buttonState |= 64;
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_B) buttonState |= 128;
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_X) buttonState |= 256;
if (xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_Y) buttonState |= 512;

Вот тут у вас аналоговое состояние триггера (xInputStage.Gamepad.bRightTrigger >= 128) т.е. нажат курок, эквивалентно xInputStage.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB. Т.е. возвращает buttonState |= 8

Msdn.microsoft.com(v=vs.85).aspx

VK_PAD_RTRIGGER и VK_PAD_RTHUMB_PRESS.

Reply Good karma Bad karma+1 vote
Ballmer
Ballmer

И ещё. Добавьте ПОЖАЛУЙСТА в menu.c

156 строка:
switch (key) {
case K_ESCAPE:
case K_XPAD_BACK:
case K_XPAD_B: // в меню "B" работает как навигация назад

427 строка:
int M_Main_Key (int key) {
switch (key) {
case K_ESCAPE:
case K_XPAD_BACK:
case K_XPAD_B: // в меню "B" работает как навигация назад

200 строка:
case K_MOUSE1:
case K_MOUSE2:
case K_MOUSE3:
case K_XPAD_START:
case K_XPAD_A: // в меню "A" работает как выбор пункта меню

443 строка:
case K_KP_ENTER:
case K_XPAD_START:
case K_ENTER:
case K_XPAD_A: // в меню "A" работает как выбор пункта меню

Торопился, но вроде не напутал.
И для навигации вверх/вниз по пунктам меню удерживание кнопок для репита не работает. Приходится нажимать кнопку n-раз. Не смотрел пока где.
Я посмотрю еще, если не возражаете :)

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

хорошее дополнение! я так и сделаю)

Reply Good karma+1 vote
Ballmer
Ballmer

Уже сам сделал :)
Quake 2 xp trunk 948
Navigation with working "A" and "B" buttons in menu. Have fun:
Rgho.st
P.S. Вы нигде не написали, что VS нужна не ниже 2015-й, пришлось искать ставить (может и на 2013 соберётся).
Я поковыряюсь пока вы отдыхаете, аккаунт на sourceforge оказывается я заводил лет 8 назад, можно патчи слать.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Ага... Я просто практически один кодом занимаюсь по этому спокойно использую посл студию.

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Нижние курки не кнопки, а аналоговые стики.
я из за этого по началу матерился страшно. Пришлось вот так принудительно делать из стика кнопку.
А эту доку я не видел еще. Потом почитаю. Через пару недель как вернусь в город....

Reply Good karma+1 vote
Ballmer
Ballmer

А вообще предполагаю, что через SDL сделать поддержку геймпада правильнее что-ли, коли уж есть в порте поддержка линуха. Плюс довольно много Dinput падов.
Поковыряться что-ли. Сколько проект собирается по времени? У меня C2Quad Q9550 и 5GB DDR2 Ram. Старье короче :)
P.S. Приятного отпуска :)

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

секунд за 20-30 соберется проект на таком камушке.
А что до сдл, я его в гробу видал. оно у меня только как часть линукс порта, и перекочевало из ямаджи

Reply Good karma+1 vote
Ballmer
Ballmer Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Короче, я вернулся. Вечерком погляжу что ты там накодил)))

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Hi) проглядел код, все ок, портанул. Единственное. не стал цвары на дэд зону переносить, имхо не нужно это.

Reply Good karma+2 votes
Ballmer
Ballmer

Спасибо :)
А cvar для Deadzone для стиков всё-таки временами необходимая в FPS вещь: есть масса XInput геймпадов, мертвые зоны (механически) бывают разные, а константа от M$ это такая "средняя температура по больнице", для их продукции. Меня попробовавшего (на Logitech F510) играть с дефолтной DZ в квейке боты раскатывали как Тузик грелку (а геймпадом в шутеры я играю лет 6, RAGE например полностью прошел так), убавив её примерно на 40% я уже более-менее приноровился. В DOOM 3 BFG например, cvar для Deadzone есть, как и Trigger Threshold (порог нажатия курка как кнопки, я его тоже в цвар добавил). Но решать вам конечно.

Я сам пока с падом не определился. Dualshock 4 от PS4 кстати поддерживает DirectInput, мне интересно напрямую, т.е. без врапперов вроде DS4Windows, разные фичи (гироскоп, цветоиндикация, тачпанель) доступны только купившим их SDK? Хотя вроде где-то мелькала инфа, что СДК таки слили в сеть. В наших краях он 4500 стоит, от Xbox One последней ревизии с Bluetooth примерно столько же + беспроводные ресиверы от 1300 до 2000. O_o У буржуев 45$, но доставка...

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

ага, я понял. Тогда сделаю цвар для мертвой зоны) У меня три джоя, от хбокс уан(самый новый с синезубы ест любые), от пс4 (с самой плойкой, киндер рубится) и старый логитех дуал экшен. Самый удобный -это от плойки.
Из неприятного - если хУановский коннектится по свистку скорость падает до 135фпс, хотя без контроллера там 151 или 196фпс.. Коннект по проводу такого фреймдроппа не дает. Сижу вот репу чешу (проц и7 3770, видео 980ти)

Reply Good karma+1 vote
Ballmer
Ballmer

Блютус использует ресурс проца, я вчера читал, что Майкрософт гарантирует работоспособность только одного устройства подсоединённого к ПК. Если подключить ещё один пад к БТ, ещё просядет фреймрейт.
Вообще МС засранцы те еще, поддержка БТ с ХУан падом только с Win10, у меня 7, я даже не ставил себе 8, 8.1, 10...
А попробуйте узнать про вот такую штуку: Dns-shop.ru, там Wi-Fi.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Видел эту шнягу... Я лучше просто свисток новый куплю.

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

и еще я вывел дефолт раскладку контроллера в отдельный файл.
сейчас он такой
bind XPAD_START "menu_main"
bind XPAD_BACK "+flashlight"
bind XPAD_LEFT_THUMBSTICK "cmd help"
bind XPAD_RIGHT_THUMBSTICK "invuse"
bind XPAD_LEFT_BUMPER "+movedown"
bind XPAD_RIGHT_BUMPER "+moveup"
bind XPAD_A "invnext"
bind XPAD_B "invprev"
bind XPAD_X "weapprev"
bind XPAD_Y "weapnext"
bind XPAD_DPAD_LEFT "invdrop"
bind XPAD_LEFT_TRIGGER "+zoom"
bind XPAD_RIGHT_TRIGGER "+attack"

Если есть предложения пиши, сделаем мини подборку пресетов))

Reply Good karma+1 vote
Ballmer
Ballmer

Как-то так:
bind XPAD_BACK "cmd help"
bind XPAD_LEFT_THUMBSTICK "+speed"
bind XPAD_LEFT_BUMPER "weapprev"
bind XPAD_RIGHT_BUMPER "weapnext"
bind XPAD_A "+moveup"
bind XPAD_B "+movedown"
bind XPAD_X "invuse"
bind XPAD_Y "+flashlight"
bind XPAD_DPAD_UP "invdrop"
bind XPAD_DPAD_DOWN "inven"
bind XPAD_DPAD_LEFT "invprev"
bind XPAD_DPAD_RIGHT "invnext"
bind XPAD_LEFT_TRIGGER "+zoom"
bind XPAD_RIGHT_TRIGGER "+attack"

P.S. "Start" у меня был захардкоден как вызов меню. Я бы его так и оставил.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

тоже как вариант. по поводу дэд зон и усилия нижних триееров - может туда писать не полное значение, а скейл?(с переводом в инт само собой) В бфг поглядел, там вообще флоаты юзаются.. Ненавижу с++

Reply Good karma+1 vote
Ballmer
Ballmer

Ну под нормализацией я имел именно это ввиду: от 0 до 1 например, флоат.
Только 0 оно для юзера, чтобы сам НПС не ходил)), а так минимальный порог 1500 где-то, верхний пусть в 2-2.5 раза больше константы от МС, для ушатанных падов или хронических алкоголиков, с трясущимися руками. Ацессибилити :)))
Типа такого:
float normDeadz - minDeadzone) / (maxDeadzone - minDeadzone);
Pastebin.com двиг сайта режет. :(

Я с мобильного начинал кодить, Symbian C++. Мне ничего уже не страшно )) Хотя вру, в рендеринге вероятно вообще ужОс, и матан, матан, матан...

P.S. BB-кодов жаль тут нет.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

надо будет поиграться с нормализацией. Проще конечно писать туда скей. На трешолд оказалось тоже есть у них дефайн равный 30.

Reply Good karma+1 vote
Ballmer
Ballmer

Это про триггеры? Я писал что есть ) Я добавлял, есть в коде, дефолтное как 1/4 от 255, т.е 64.
Я б вообще всю эту писанину перевел на SDL2, выше писал почему. Но пока можно и так.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Я позже для линя буду апдейтить до сдл2. Но сейчасл во первых лень. во вторых работы навалили.
по поводу дэд зоны - сделал вот так
int outDz = (float)deadZone * x360_deadZone->value;
при значении 0,4 поведение стиков очень стало напоминать как геймпад ведет себя в д3бфг

Reply Good karma+1 vote
Ballmer
Ballmer

Глянул в репо, если вы о [r954] то вы дефолтные XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE и XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE в коде поставили (385 строка win_xbox360.c), цвары не юзаются. Может это временно правда сделано или очепятка, я не знаю.

Reply Good karma Bad karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

я просто это вынес в IN_ControllerAxisMove
и там считаю

void IN_ControllerAxisMove(usercmd_t *cmd, int axisval, int deadZone, int axismax, int type)
{
int outDz = (float)deadZone * x360_deadZone->value;
для курков тоже перевел в 0-1
хотя я с клампом цваров наебался... щас поправлю

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

Ого! реально кнопка, не знал! Но это все буду копать после отпуска

Reply Good karma+1 vote
KirkBarnes AuthorOnline
KirkBarnes

вызов главного меню - menu_main
те пишем в конфиг чет типа
bind XPAD_B "menu_main"

Reply Good karma+2 votes
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Icon
Quake 2
Game
Quake 2
Developer
Quake2xp Team
Contact
Send Message
Release date
Mod watch
Follow
File
Browse
Files
New
Add file
Report
Report
Share
Related Mods
Related Games
Quake 2
Quake 2 First Person Shooter
Related Groups
Quake2xp Team
Quake2xp Team Developer & Publisher
Tags

quake2xp 1.26.7 release has not been tagged yet.