Игры > Игры на консолях 1-4 поколений
Мышь и сега
<< < (3/3)
Foxik:
Может быть для джойстика там и есть какой-то микроконтроль (ввиду сложности управления джоем в стратегиях), но мышке в дюне делать нечего, ибо по сравнению с ПК стратегиями в дюне никакой микроконтроль.

--- Цитата: Soujuu ---Я твоё замечание просто проигнорирую.
--- Конец цитаты ---
Бха, отмазался.
Soujuu:

--- Цитата: Foxik от 15 Январь 2009, 17:36:12 ---Может быть для джойстика там и есть какой-то микроконтроль (ввиду сложности управления джоем в стратегиях), но мышке в дюне делать нечего, ибо по сравнению с ПК стратегиями в дюне никакой микроконтроль.

--- Конец цитаты ---
Ты удивишься, но здесь я согласен :)
aptyp:
how-to как сделать мышку для SMD2: Журнал "Радiоаматор"
2001. - № 6 - с. 28-29 http://www.radioscanner.ru/files/journals/file4933/
2001. - № 7 - с. 28-30 http://www.radioscanner.ru/files/journals/file4934/
Geese:
aptyp,
ссори за оффтоп, но можешь мне в личку дать номера Радиоматора за 2000 год? жду.
aptyp:
на www.radioscanner.ru есть
Geese:
aptyp,
спасибо!
ALEX_230_VOLT:
тут такое дело... с играми которые официально поддерживают световой пистолет я разобрался - fusion отлично это делает, но вот как быть с играми где светововй пистолет/мышка не предусмотрены? Например недавно познакомился с классным виртуальным тиром Ground zero Taxes для sega CD и был ОЧЕНЬ обломан когда в Викикпедии узнал что рабработчики так ступили что не сделали поддержки светового пистолета.
Однако в Gens32 Sureal есть поддержка драйвера мыши, следовательно выход есть! вопрос в том как написать такой драйвер = ктонибуть в курсе?
destroyerbam:
че вы гоните,я мыщкой от компа сейчас вCannon Fodder и T2 Arcade Game рубаюсь!!!!на эмуляторе!
Эмулятор Gens Surreal + драйвер.
ALEX_230_VOLT:
тьфу ты! да при чём тут эти игры? и кто это "гонит"? На эти игры уже давно сделанны драйвера и только нуб не сумеет ими впоспользоватся, а я говорю (точнее спрашиваю) как быть с играми для которых таких драйверов нет (как Ground zero Taxes). Как эти драйвера вообще делать?
SnowWorm:

--- Цитата: ALEX_230_VOLT от 18 Февраль 2010, 21:24:43 ---как быть с играми для которых таких драйверов нет (как Ground zero Taxes). Как эти драйвера вообще делать?

--- Конец цитаты ---
поковырялся чутка, оказалоcь всё просто как солёный огурец (и в тоже самое время  - сложно и порой невозможно):

качаем gens32, и в архиве в папке Tools\Mouse Drivers\General Chaos лежит прога Mouse DriverBuilder, которую и будем использовать

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

значит, для начала надо взять игру, найти адреса в памяти X и Y координат курсора. Так что юзаем артмани например, будет очень ок (писать буду с учётом что как юзать артмани вы уже знаете).
для примера я взял Dynamite Duke (W) [!]

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

Добавляем их всех в таблицу результатов, по очереди замораживаем и смотрим как это влияет на игру - если в игре не смотря ни на что герой стреляет всегда в одну точку по горизонтали, как его ни двигай - вот оно! Смотрим какой адрес в эмуляторе (именно emul address, а не PC adress, это важно!!), и записываем это число. В этой игре например - FFC08E.
Ну или можно не замораживать а изменять значение в артмани - как хотите так и ищите, все средства хороши.
Ещё в этой игре есть нюанс что можно найти либо координату мишени, либо координату куда будет стрелять герой. Оно там раздельно хранится <_<. Немного плоховато, но для теста сойдёт. Ищем именно координату стрельбы, на мишень забьём.

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

Ещё нам надо определить минимальные и максимальные допустимые значения. Для этого мишень перемещаем сначала в самое влево, смотрим значение в артмани для координаты X. Там что-то около 130 . Потом сдвигаем мишень в крайне правое положение. Опять смотрим, видим 376. Круто, теперь для вертикали. Значение вверху экрана, и потом значение внизу экрана. 124 и соответственно 292.

Вот. заходим в какой-нибудь текстовый редактор. Пишем там следующие строки:
#SetPin 49294 49296
#SetArea 130 376 124 292
#DefineButton 1 2 3

49294 мы получили из FFC08E (сначала отбросив FF (вышло C08E), и затем переведя C08E в десятеричную систему счисления).
49296 получено из FFC090 аналогичным способом
с #SetArea думаю ясно, просто посомтрите какие куда цифры откуда
#DefineButton 1 2 3 - тут система такая:

--- Код: ---#DefineButton LeftButton RightButton MidleButton
The key index in #DefineButton:
A:     1
B:     2
C:     3
X:     4
Y:     5
Z:     6
Start: 7
Mode:  8
--- Конец кода ---
значит у нас левая кнопка мыши будет A, правая - B, средняя - C. Кому предложенный вариант не нравится - меняйте на здоровье

сохраняем полученный документ в той-же папке где лежит распакованный Mouse DriverBuilder

запускаем Mouse DriverBuilder
пишем build
жмём ENTER
пишем имя того текстового файла с которым мучались выше
жмём ENTER
пишем "Dynamite Duke (W) [!].gmd" (должно название быть как у рома, есличо смотрите сами)
ENTER
пишем y
опять enter
вроде всё. копируем Dynamite Duke (W) [!].gmd в папку с gens32, запускаем, радуемся


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

в приложении - текстовый документ с этим "скриптом", и готовый драйвер для gens32.
единственный минус - мишень мышкой не двигается, но точка куда стреляет персонаж - мышкой таки сдвигается.
Навигация
Главная страница сообщений
Предыдущая страница

Перейти к полной версии