Разработка и ромхакинг > Ромхакинг и программирование
[SMD] Rock 'n' Roll Racing -= Ломаем игру=-
<< < (11/111) > >>
topos84:

--- Цитата: SnowWorm ---Насчёт вэйпоинтов ещё нюансы всякие есть. Например на блоке X противник в любом случае едет прямо, даже если вэйпоинтом ему было приказано свернуть. Тоже самое касается и T-образных перекрёстков. Там есть какая-то своя хитрая система, так что они в определённых случаях едут не по вейпоинту, а по своим каким-то скриптовым путям. Тут в общем лучше всего посмотреть как всякие развилки делаются в стандартных трассах, и сделать также
--- Конец цитаты ---
Ага, значит, я еще намаюсь с лабиринтами, когда буду их делать. Видимо, хороших лабиринтов никак не получится, если на перекрестках и развилках комп все равно будет ехать прямо. Но, по крайней мере, думаю неплохие срезы в лабиринто-подобных трассах все же сделать получится, благодаря чекпоинтам (ведь они на комп не распространяются, верно?).

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

Добавлено позже:
Да, и еще. Хорошо бы было, если можно было рисовать полотно дороги так же, как и прямую линию в Пэйнте, зажав, например, клавишу Alt (чтобы по одной не копировать).

Добавлено позже:
Кстати, а каково минимальное количество чекпоинтов на трассе (про максимальное в мануале говорится - 16, а про минимальное нет).
SnowWorm:

--- Цитата: topos84 от 12 Ноябрь 2009, 01:25:45 ---ведь они на комп не распространяются, верно?

--- Конец цитаты ---
счас проверил. нет. боты тоже должны проезжать через них (ну и как игрок - один могут пропустить, тогда круг всё равно будет засчитан). В общем-то можешь обойтись минимальным количеством этих чекпоинтов, только очередная проблема тогда возникает - респаун в случае взрыва происходит на чекпоинт-блоках, и если их мало - может возвразать игрока на полтрассы назад например, а это не ок :/


--- Цитата: topos84 от 12 Ноябрь 2009, 01:25:45 ---Да, и еще: очень важно, чтобы в редакторе была функция изменения начальной высоты, а то менять все клетки в ручную слишком долго.

--- Конец цитаты ---
Да, что-то такое надо. И ещё повышение высоты сразу всех блоков на всей трассе


--- Цитата: topos84 от 12 Ноябрь 2009, 01:35:47 ---Да, и еще. Хорошо бы было, если можно было рисовать полотно дороги так же, как и прямую линию в Пэйнте, зажав, например, клавишу Alt (чтобы по одной не копировать).

--- Конец цитаты ---
Хорошо бы. Может и получится, но не обещаю.
topos84:
Еще есть предложение: правая кнопка мыши на любом блоке трассы отражает его по горизонтали, а средняя кнопка мыши - по вертикали (имеется в виду только дорожное полотно, высоты, стрелки и лужи при этом не копируются и не отражаются). Это, в комбинации с копированием одноклеточного участка дороги с использованием зажатия Ctrl, позволит свести к минимуму обращение к выпадающему списку (и/или к прокручиванию этого списка стрелками клавиатуры).

Добавлено позже:
А как насчет машин-гибридов:

 :) :D :lol:
topos84:

--- Цитата: topos84 ---Видимо, хороших лабиринтов никак не получится, если на перекрестках и развилках комп все равно будет ехать прямо
--- Конец цитаты ---
Еще не пробовал делать кучу перекрестков, но когда куча развилок, типа |- и -|, идущих одна за другой, то комп едет куда надо, если вэйпоинты и чекпоинты правильно расставить.
r57shell:
такс, конечно крутой хак, мне понравился, но покачто нет времени проходить, меня больше заинтересовала идея 4-х плееров, чтоб потом посетке рубатцо... поэтому, я решил попробовать решить проблему с фулскринами, в частности проблему с фулскрином для второго плеера, и начал копаться в ромке, напишу сдесь то что накопал, т.к. скоро сессия надо сдавать долги ^^ вотЬ!
думаю комуто это будет интересно. Ну и ещё, сразу огорчу, но похоже если кому-то захочется (а мне вот хочется!) сделать чтобы можно было смотреть от лица 3-го игрока, или 4-го игрока то похоже придётся для них отдельно писать "рэндеринг", так как для 1-го игрока и для 2-го они разные, хотя и отличаются всего адресами некоторыми.

Все следуйщее описания относятся только к оригинальной версии, может она у вас другая, у меня нету описания её версии (((. Если и есть, то скажите где посмотреть, в имени файла ничего нет ).
Кроме этого многие ведущие нули буду опускать (нафиг они нужны?!). Мне лень было разбирать код на предмет того "как он именно работает", поэтому я шаманил, небуду рассказывать как ). Некий метод тыка, нахождения зависимостей, и подставления замены переменных ^^.

Отрыл где тусит цикл "трассы" можно так образно сказать, он тусит по адресу B1B2.
За мои коментарии непинать, это всего-лишь предположения). "i dunno" - коверканное "i don't know".
Лучше всё это самому посмотреть.


--- Код: ---ROM:0000B1B2 race_cycle:                             ; CODE XREF: sub_B088+206j
ROM:0000B1B2                 addq.w  #1,$4F24(a4)
ROM:0000B1B6                 jsr     loc_13C80
ROM:0000B1BC                 jsr     sub_107BC       ; input
ROM:0000B1C2                 jsr     loc_10EE0
ROM:0000B1C8                 jsr     sub_C17E
ROM:0000B1CE                 jsr     sub_C97A        ; without it you can ride on all places on map
ROM:0000B1D4                 jsr     sub_10622
ROM:0000B1DA                 bsr.w   sub_B292
ROM:0000B1DE                 jsr     (sub_356E).l    ; speed control
ROM:0000B1E4                 move.w  #$1A,$4256(a4)
ROM:0000B1EA                 bsr.w   sub_B57A
ROM:0000B1EE                 jsr     (sub_556C).l    ; move cars
ROM:0000B1F4                 jsr     sub_9D24
ROM:0000B1FA                 jsr     sub_1265C       ; ressurect dead
ROM:0000B200                 jsr     sub_D6B2        ; explode
ROM:0000B206                 jsr     sub_D56A        ; rotate car
ROM:0000B20C                 jsr     sub_C32C        ; rotate car
ROM:0000B212                 jsr     sub_D7DA        ; update map tile
ROM:0000B218                 jsr     sub_9FC4        ; update map tile
ROM:0000B21E                 jsr     sub_A93E        ; i dunno
ROM:0000B224                 jsr     (sub_356E).l    ; i dunno
ROM:0000B22A                 move.w  #$1C,$4256(a4)
ROM:0000B230                 bsr.w   sub_B57A        ; without - strange bug
ROM:0000B234                 jsr     sub_B40E        ; placing of car model
ROM:0000B23A                 jsr     (sub_62D2).l    ; again
ROM:0000B240                 jsr     (sub_5B70).l    ; again
ROM:0000B246                 jsr     (sub_5EF4).l    ; again and refresh of ammo?
ROM:0000B24C                 clr.w   d0
ROM:0000B24E                 jsr     sub_F434        ; refresh radar and ammoinfo on screen
ROM:0000B254                 jsr     (sub_5792).l    ; again
ROM:0000B25A                 jsr     sub_BC46        ; i dunno
ROM:0000B260                 jsr     sub_103EA       ; rockets, nitro, mines... placing
ROM:0000B266                 jsr     sub_F502        ; rockets after placing - > mechanics
ROM:0000B26C                 jsr     (sub_616A).l    ; rockets after mechanics and placing -> display
ROM:0000B272                 jsr     (sub_356E).l    ; laps and life info
ROM:0000B278                 bsr.w   sub_B7E0        ; your smoke
ROM:0000B27C                 bsr.w   sub_B8F2        ; junk if you die
ROM:0000B280                 bsr.w   sub_B960        ; laps update
ROM:0000B284                 move.w  #$1E,$4256(a4)
ROM:0000B28A                 bsr.w   sub_B57A        ; make black car if race end
ROM:0000B28E                 bra.w   race_cycle

--- Конец кода ---

Прикольные game-gine читы которые я отрыл:
ffd1a0:0000  - взрывающиеся противники (небудут мешать)

Так как мне лень было фсякие фичи искать, или изучать или ещё чё... Поэтому я быренько написал перловый(потомучто на перле быстрее всего утилиты маленькие пишутся) скрипт который патчит ROM. Дак вот. Я хз как эти патчи будут в виде game-gine, такчто буду приводить их в своём формате, прикреплю перловый скрипт если кому интересно ^^. Формат патчей "offset,data", где offset и data в виде хекса, и может содержать пробельные символы типо табуляций и пробелов, data всегда чётной длины, data записана по байтово. пример 01 23 b,01e f  означает что по адресу 0123bh перепишем байт на 01h а по адресу 0123c перепишем байт на efh вотЬ. Тут HEX регистронезависимый (upper/lower).

18E2, 04 01 05 02 06 03
меняя в этом патче байты можно менять "плэйлист" (так я его назвал). Вторая цифра например означает номер трэка который играет в самом начале, когда только появляется надпись SEGA.

"WHATA COOL PATCH ))" вместо демонстраций(если в первых заставках ничё неделать) вместо демонстраций попадаем на ввод паролей )))
1686, 00 00 00 00 00 00

"aka trial version" вместо игры ОДНА ДЕМОНСТРАЦИЯ ))))
1676, 00 00 00 00 00 00

"speedhack" для тех кому кажется игра медленной...
b1de,00000000 0000

одно нажатие кнопки во время заставок, сразу переход в меню, + по картам как с читом можно ездить весьде
0000165A, 00 00 00 00

все следуйщие строчки вместе это попытка сделать фуллскрин для 2-го плеера, на основе того, что _Ti писал на 39-ой странице
b6b9,20
b6bd,05
b6cb,b0
b6e3,b2
b6f3,9c
60c9,00 - это всеголишь сдвиг всех моделей машинок у второго плеера вверх, это не решение проблемы, потомучто culling становится глючным, и докучи этот патч недвигает пули/ракеты/дым/ранки, поэтому я пытался найти как вычисляется эта позиция, и от чего она зависит, чтобы потом добавить такойже оффсет на ту переменную относительно которой всё это веритися, может я конечно дурак и если сразу както сказать чтобы он рисовал в верхней половине второго игрока то это(добавление оффсета) нафиг ненадо будет. Ну и вот собственно, терь есть цель куда копать, "как в верхнее окошко затолкать 2-го плеера", а с оффсетом пока надо бы забросить...
Ещё я пытался узнать от чего зависит будет ли рисоваться 2 экрана или один? так и не нашел, нашел только переменную с каким-то количеством игроков по адрессу ffcece:xx где xx 1 либо 2. Если в главном меню таким читом выставить 2 плэера, то при выборе в меню что хотим водного шпилить, будет вдвушнег шпилево %). А если загрузить сэйв одного игрока, с этим же читом на 2 игрока, то на трассе второй игрок будет играть за глючную невидимую тачку %). О пока писал эту часть, понял что надо попробовать купить в таком режиме второму игроку тачку! и тогда можно будет шпилить опять вдвоём ))

Ладно это написал, покачто хватит)).
А кстати вот ещё варьянт попытки на фулскрин где в {...} на вкус
b6ae,4ef90000b766
{b79d,00
60c9,00}
Я писал эту инфу так, чисто поделитцо, вдруг кто продвинется дальше. Ппц там всё закручено то.
Токачто увидел что _Ti писал в Need.txt как ставить split/fullscreen вовремя игры, такчто вопрос мой один снят).
r57shell:
Я говорил о цикле трассы а не об всей функции включая инициализацию :) но спасиба шо показал :)

я вот обещал... но вот не сделал, а именно я обещал выложить скрипт перловский для патчинга, и тут вот толькочто написал аналог только на С++ (когото савсем непрёт полюбому качать перл, ПЕРЛ РУЛЕД!).

теперь ещё парочку открытий(опятьже я так и не сделал фуллскрин для второго)

disco!  - все любят глюки (незабудте ездить, иначе нефан, лучше всего смотреть демонстрацию, или фулскрин от второго чела только в режиме одного игрока)
c3b,05

skip update hight of 5-th and 6-th car/player? - интересно нафиг они нужны вообще, может деВЕлоперы хотели сделать 4 игрока + 2 противника? O_o? ну да ладно, факт тот что я нинашел багов если убрать этот кусок кода.
62eb,054e75

второй варьянт предыдущего патча
62ea,4e75
третий варьянт предыдущего патча
62e6,60
update 5-th car - collision with smoke :) and not only - тот кусок кода который обновляет 4го и 5-го игрока необновляет некоторые весчи, вот я решил заменить более полным обновлением, глюки -  коллизии с дымом
62ec,60000010

fast ressurect hack - быстро воскрешаются плееры, хотел ещё быстрее, незнаю как (
d785,01

fast kick! - быстро можно бортоваться (как по английски бортоваться?:)) по умолчанию значение f
1271f,01
12725,01

терь насчёт того как юзать утилиту (она ожидается будет одинакого работать что на перле что на си, такчто одно описание, найдёте баги плз сообщите)

(hexpatcher.exe|patcher.pl)  in.bin out.bin patch.txt [v]
      
   in.bin копируется и заменяет out.bin, затем патчится данными из patch.txt
   v - флаг verbose - типо "молчать", ато программа пишет то что делает :)
 
   в patch.txt все строки - патчи, кроме тех которые на патчи нипохожи
   нормальная строка патча выгледит "Offset,data" где Offset и Data - любые строки из из символов HEX-а или/либо пробелов или/либо табуляций.
   Offset воспринимается как HEX позиция в файле где пропатчить.
   data воспринимается как данные которые надо записать в побайтовом представлении (как в HEX редакторах) в HEX виде
   Пример: 0ffeD21,0A3E2364DCF

опять я со своим велосипедом, но замечу одно, удобно у такой программы то, что ненадо хексредакторов и дополнительной шаурмы, достаточно в текстовом редакторе писать патч, кроме того, чтобы отключить патч, достаточно втокнуть в его строчку недопустимый символ для патча (я например пишу #, это своеобразный метод коментирования), и логично все описания патча можно некоментировать :) кроме тех которые только из букв abcde :D

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

насамом деле нужно для начала понять от чего зависит такая весчь:
создаём игру на одного чела например в vs.mode, всё делаем, начинаем трассу и потом вводим game-gine ffb8fa:8014 (вот кстати тут ты ошибся со значениями, 8014 - сплит, 8004 - фулл; ну конечно то значение тоже канает, но сама игра эти значения ставит)
и внимательно смотрим на экран первого игрока! что мы видим? мы видим то что это не так как еслиб было 2 плеера
r57shell:
game-genie позволяет патчить != 4 размером? хм там в описании ненаписано ))))
ну плюс game-geine недаёт сохранять ромку )
и кстати как менять код через game-genie? я знаю только как менять память
r57shell:
да это то я понимаю всё, ааа блин, вот в чём косяг, ну короче понял как делать... надобыло 00d784:00ff делать и тогда всё классно )

зато я написал альтернативу ips до? или я неправ? если я прав отвечать ненадо :D
r57shell:
нехочу всё писать чо нарыл, долго, легче напишу только куда щя буду копать дальше, а именно в функцию 9D70 - подозрение что это изменения координат тачек и связанных с ними координат на экране...
(update_map_offsets - обновляет сдвиг тайлов карты относительно экрана)
т.к.

--- Код: ---ROM:00009D24 move_cars:                              ; CODE XREF: RACE+B6p
ROM:00009D24                                         ; RACE+16Cp
ROM:00009D24                 tst.b   $4F94(a4)
ROM:00009D28                 bne.s   loc_9D38        ; if freezed skip
ROM:00009D2A                 suba.l  a0,a0           ; a0 = 0 (player 1)
ROM:00009D2C                 jsr     sub_9D70        ; maybe CAR POSITIONS GLOBAL?
ROM:00009D32                 jsr     update_map_offsets
ROM:00009D38
ROM:00009D38 loc_9D38:                               ; CODE XREF: move_cars+4j
ROM:00009D38                 tst.b   $4F95(a4)
ROM:00009D3C                 bne.s   loc_9D4E        ; if freezed skip
ROM:00009D3E                 movea.w #1,a0           ; a0 = 1 (player 2)
ROM:00009D42                 jsr     sub_9D70        ; maybe CAR POSITIONS GLOBAL?
ROM:00009D48                 jsr     update_map_offsets
ROM:00009D4E
ROM:00009D4E loc_9D4E:                               ; CODE XREF: move_cars+18j
ROM:00009D4E                 tst.b   $4F96(a4)
ROM:00009D52                 bne.s   loc_9D5E        ; if freezed skip
ROM:00009D54                 movea.w #2,a0           ; a0 = 2 (player 3)
ROM:00009D58                 jsr     sub_9D70        ; maybe CAR POSITIONS GLOBAL?
ROM:00009D5E
ROM:00009D5E loc_9D5E:                               ; CODE XREF: move_cars+2Ej
ROM:00009D5E                 tst.b   $4F97(a4)
ROM:00009D62                 bne.s   locret_9D6E     ; if freezed skip
ROM:00009D64                 movea.w #3,a0           ; a0 = 3 (player 4)
ROM:00009D68                 jsr     sub_9D70        ; maybe CAR POSITIONS GLOBAL?
ROM:00009D6E
ROM:00009D6E locret_9D6E:                            ; CODE XREF: move_cars+3Ej
ROM:00009D6E                 rts

--- Конец кода ---

посмотрел я это всё, ацтой какойто... и ваще, столько мяса ваще...

узнал я что за адреса 778C(для первого игрока) 779C(для второго)
по этим адресам тусят команды которые пошлются (функцией по адресу BFA) на VDP_CONTROL в момент обновления экрана, только вот сами команды непойму как работают...

VDP я неразбирал, но немножко посмотрел, там есть координаты спрайтов, и спрайты состовляют односвязный список. Возможно эти команды (778С, 779С) всеголишь заменяют координаты спрайтов в VDP. Жаль дебаггера нет в котором можно былоб делать watch

у меня только безумная идея сделать скриптик который построит графы зависимостей переменных (тупо как адрессов)

как никрути я долго ещё буду RRR разбирать, т.к. имеется злющая идея, и очень охото её воплотить в жизнь ^^
BARAKA:
А у меня есть такая мысль,а если у гонщиков(некоторых)вместо бонуса скорости,поворотов и т.д. поставить бонусы на скидку.
Например у механика(не помню я его имен,он зелёный ещё такой) сделать скидку (гдеты 1000-2000)на покупку апгрейдов для машины,
а у каждого босса сделатьт скидку на покупку той машины,на которой он ездит(будь он компьютером а не игроком).а все эти бонусы с поворотами и ускарением убрать нафиг.
p_star:
Существенно подтер тему на предмет соплей, ибо сначала читать потенциальным помошникам было страшно скучно, теперь тока по теме осталось. Минус 20 страниц епта !!! :wow:
BARAKA:

--- Цитата: p_star от 03 Декабрь 2009, 10:58:37 ---Существенно подтер тему на предмет соплей, ибо сначала читать потенциальным помошникам было страшно скучно, теперь тока по теме осталось. Минус 20 страниц епта !!! :wow:

--- Конец цитаты ---
Воот,теперь по цивильней выглядет.Спаибо.
SnowWorm:
обновил редактор трасс, добавил много из того что хотел topos84:

быстрый экспорт в ром
держа alt при перетаскивании блок копируется на все остальные через которые его протащат
возможность отзеркалить блок по горизонтали или вертикали
смена высоты сразу всех блоков
куча хоткеев

ну в общем с хоткеями и альтом - создание трассы ускорилось на порядок :wow:


http://twistedbytes.ucoz.ru/load/0-0-1-4-20
topos84:
Вооо! Теперь процесс создания и редактирования трасс наберет обороты. :D
SnowWorm:
ну и приятный бонус, может кому-то пригодится. исходники.
писано в Embarcadero C++ Builder 2010 (это который раньше был Borland). 2009 версия тоже должна по идее открывать и компилить. с остальными версиями - как повезёт

поскольку сразу не сообразил и не спланировал как оно в итоге должно выглядеть - пришлось потихоньку доделывать и допиливать. Поэтому куча граблей и костылей :?
В общем, кому надо - разберётся. А если на основе этого ещё и кошерный редактор трасс с 3D интерфейсом сделает - будет вообще замечательно :hi:

http://twistedbytes.ucoz.ru/load/0-0-1-7-20
topos84:
Ti_, мне тоже интересно придумывать трассы, да и делать их мне не так уж и лень. А вот тестить их - так это просто с ума спрыгнуть можно! Я два дня потратил на тестирование одного единственного бугорка! Я не преувеличиваю, серьезно говорю - 2 дня. А все потому, что из-за этого поганого бугра у меня весь объезд летит к черту: то бугорок слишком тормозит машину и объезд становится невыгодным, то бугорок слишком прост и машина его вовсе перелетает и тогда объезд становится таким выгодным, что за 3-круга можно врагов по кругу догнать и лаппинг бонус схватить, даже если играешь на самой высокой сложности. Причем, как назло, в случае с машинами, у которых турбо вместо прыжка, второй вариант случается почти всегда, а в случае с машинами с прыжком - почти всегда первый, и это есть полный геморрой, потому что для первой планеты (да и для второй, как правило, тоже) такие трассы заведомо не годятся, а для последующих планет они бесполезны из-за наличия турбин у машин (вот если бы ты прислушался к моему совету о включении в игру (временно, разумеется) машин-клонов с прыжками вместо турбин, то таких проблем бы у меня не было, так как можно было бы организовать специально для них кучу интересных объездов).

Я все это к тому, что трассы мне не лень делать, но где я найду армию тестеров, которая будет мне помогать их тестить, а то ведь с ума свихнуться можно, тестировать каждую трассу на каждой из машин и на каждой из планет, с учетом особенностей апгрейдов игрока и АИ противников. Все это нереально в одиночку сделать, а на глазок тут фиг че сделаешь так, чтобы было более или менее прилично.
Fly:
Помню, в дивизионе A первой планеты была трасса (вторая, кажется), которая начиналась чуть-чуть до старта. Подобные трассы можно делать?

--- Цитата: topos84 ---Я все это к тому, что трассы мне не лень делать, но где я найду армию тестеров, которая будет мне помогать их тестить, а то ведь с ума свихнуться можно, тестировать каждую трассу на каждой из машин и на каждой из планет, с учетом особенностей апгрейдов игрока и АИ противников. Все это нереально в одиночку сделать, а на глазок тут фиг че сделаешь так, чтобы было более или менее прилично.
--- Конец цитаты ---
Выкладываешь на форум, и все желающие её тестируют.
r57shell:
если кто разбирал функции где вводят пароль, и т д, то яб на вашем месте сделал паролями все возможные комбинации )))) (если уж места ну ваапсче нет) ну посчитайте, из простейшей комбинаторики всего комбинаций A^B - где A - кол-во варьянтов на одном месте, и где B количество всего символов, тоесть A=4*8=32 а B=3*4=12 тоесть всего возможно 32^12 комбинаций а это из школьной алгебры (2^5)^12=2^(5*12)=2^(60) тоесть это (MAX_INT64+1)/16 Вот.

Представте такое число. MAX_INT64 порядка 10^18 (кто занимался прогингом тот должен это знать) тоесть комбинаций гдето 10^17 (нижняя оценка).
После таких размышлений остаётся выбрать из этого огромного кол-ва паролей, те которые будут что-либо значить. Мне кажется можно вообще посимвольно назначить то, что будет значить буква, а потом генерировать чексумму в остальных. А алгоритм чексуммы можно придумать от балды, мы же не протокол TCP/IP разрабатываем чтобы проверять неповредился ли пакет ).

И тогда (ВЫ НЕ ПОВЕРИТЕ!) У вас будет возможность натолкать 32 планеты, 32 машины, 32 цвета, 32 пуль, 32 мин, 32 нитр, 32 персонажа, 32 сложности, 32 дивизиона в пароль ))) и ещё останется 12-9=3 символа под чексумму ) можно немного сжать предыдущие данные, и тогда будет ещё больше на чексумму, тоесть 32^3=(2^5)^3=2^15=65536/2=32768 воть. Вот переберите ручками, а каму надобудет тот всегда взломает )))

Ладно раз уж начал, чексумму можно просто сделать суммой по модулю какому-нибудь))). Очевидно что пароль можно представить как число в системе исчисления по основанию 32. Тогда очевидно как его можно представить в системе исчесления по основанию 2, тогда можно разбить все разряды этого числа, на подстроки, которые будут означать какое-то значение, так можно существенно сжать, без шифрования. Можно ещё зашифровать но это уже сами думайте (например перетусовать биты). А чексумму можно сделать легким движением руки, написав странную какую-нибудь функцию. Вот. Такие пароли будут чуток защищенными, ну и пофигу как-то ))).

Это писал тем, кто вдруг захочет паролегенератор придумать, и аналогично загрузку из пароля.
topos84:

--- Цитата: Fly ---Выкладываешь на форум, и все желающие её тестируют.
--- Конец цитаты ---
Т.е., в худшем случае, никто, а в лучшем - полтора человека. :?


--- Цитата: Ti_ ---кстати пока мои прикидки по машинам:
так как у нас пароли держат только 8машин,  а моделей новых аж 4,
1) airblade ultra модель будет замена на RMP формулу (так как самая быстрая машина хака- убираем клон моделей)

--- Конец цитаты ---
Тогда прыжок меняй на турбину, а разрывные мины на красные шарики (турбина и обычные мины будут помогать оторваться от противника, а красные шарики с турбинами - догонять впереди идущих).


--- Цитата: Ti_ ---2) marauder xl  будет убрана/переделана из-за слишком мощной комбы оружия.
3) комба ракеты(передние)+пульки  будет у нового джипа (RPM) и это будет самая мощная машина, доступная на новых планетах)
--- Конец цитаты ---
Вот на этот джип и поменяй Марадера ИксЭль. Вот только как же быть с прыжками? Оставить? Но тогда пулек будет удвоенное количество, верно? Ведь нужно же будет ему каким-то образом отрываться от противников без турбины (за счет большого числа красных шариков это еще возможно, а за счет медленных ракет - не очень). А вот догонять тогда ему будет трудно: турбин нет, шарики летят медленно и не догоняют впереди идущих, а ракеты летят и того медленнее (может имеет смысл заменить ему ракеты пулеметом, по крайней мере пули будут быстрее лететь, что даст ему шансы догонять противников, после чего отрываться от них с помощью красных шариков).


--- Цитата: Ti_ ---4) еще одна машина (где девил 6колесный или RPM-спорткарт) будет доступна к последней(-им) планете игры , где пароли не актуальны.,  она не будет держаться в паролях.
--- Конец цитаты ---
6-колесный ДД должен быть самым мощным, но зато самым медленным из всех машин, которые имеются на последних планетах. Предлагаю сделать его таким: задняя ракета вместо мин, красные шарики (удв. количество) на первый слот и прыжок на второй слот (с таким набором ему будет трудно догонять, но зато будет очень легко отрываться).


--- Цитата: Ti_ ---5) опять же 6колесный девил или спорткарт, что из этих 2 останется, станет на место Marauder Xl, и будет доступно с 1-ой планеты. (оружие пока не знаю, но не пульки и не разрыв. мины точно)
--- Конец цитаты ---
Спорткар будет тут неплохо смотреться (6-колесный ДД выглядит как сущий монстр, его лучше на последние планеты оставить), эдакий недоаэроблад получается. Пусть у него будет пулемет, турбина и простая мина (из-за большого количества шипов на дороге, польза от ее турбины будет намного меньше, чем от турбины на последующих планетах, где шипов либо мало, либо вообще нет).
Марат:
r57shell, а деньги ты куда запишешь?
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

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