Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Shagg_E

Страницы: 1 ... 32 33 [34] 35
496
Мануал хороший, но в вайсе например 60 фпс - отстой, т.к. многие вещи в игре начинают вести себя неадекватно. Про создание сложных скриптов, связанных с  геймплеем можно вообще забыть(делал у себя скрипт прижимной силы для суперкаров, так с 60 фпс был сплошной ужас. Аналогично - с плаванием, парашютом, да и во всех остальных скриптах, где используется задержка 0 ms)

Про SA хз

497
Программирование / Re: Trails - вызов на лету
« : Апрель 05, 2014, 08:46:36 am »
Я давно работал с Motion Blur(он же Trails) - убирал "мочу" в глазах, оставляя приятные эффекты вроде улучшенных капель, нагретого воздуха и т.д.
Но это всё я делал в timecyc.dat , и вот подумал - почему бы не изменять это в нужный момент через память, для таких модов, как представлен выше(пьянка).

Нашел адреса:
7E4734 [4b] // Blur R
7E4730 [4b] // Blur G
7E472C [4b] // Blur B
- но средствами CLEO(даже с virtual_protect 1) не удается сменить значения.
В "Артмани" же работает(если включить заморозку значения) - хоть и не всё время, а миганиями.

Дело в том, что этот способ позволит регулировать интенсивность и цвет blur-а, поэтому было бы неплохо понять, как юзать эти адреса(я не очень шарю в "замороженных" адресах)

Ах да - чуть не забыл! Эти три адреса цвета Blur, помимо самого цвета задают еще и интенсивность. Т.е. выставив значения 3 3 3 - вы почти не увидите мочи в глазах, зато все остальные эффекты будут видны. Выставив же 255 255 255 - вы зальете экран белесым веществом. Ну, в общем, вы поняли :D

P.S. Повторюсь - со всеми значениями я экспериментировал в timecyc.dat, а не через память. Через память кое-как криво получалось в артмани(с миганием), а потому цель сообщения - нахождение способа использовать адреса памяти

498
Моды / Re: ModLoader для Vice City
« : Апрель 03, 2014, 06:03:50 pm »
нет, в том варианте, что я расписал - всё это будет делать автоматика, и тот, кто ставит - не будет ничго знать о содержимом модов - ведь в облегчении установки смысл ModLoader-а, не так ли?
Если окажется, что какие-то моды несовместимы - можно убрать галочку, и мод деинсталлируется, и никаких приоритетов выставлять не нужно будет

P.S. Как вы себе представляете работу ModLoader-а? С технической точки зрения. Я расписал, как это представляю я, и пока здесь других рабочих концептов не увидел

499
Моды / Re: ModLoader для Vice City
« : Апрель 03, 2014, 02:01:58 pm »
вы одно не учли - есть лимит на кол-во дополнительных img.
Поэтому то я и предложил способ с одним дополнительным img.

Про конфликты - они всё равно будут. ДА - вылетов не будет, но если два модмейкера добавят на карту разные объекты под одним именем - то в конце концов на карте в двух местах будет один и тот же объект, а не два разных, как задумано авторами.
Это никак не учесть и не исправить. Просто будут несовместимые друг с другом моды

500
Общие вопросы / Re: MenuFix - мой вариант меню
« : Апрель 03, 2014, 01:53:56 pm »
Я просто и в delphi то не очень шарю.
К примеру, я вообще не знаю, как сделать это:
BYTE *bGTAUserFolder = (BYTE *) 0x6D63D8; // окей, это понятно
WriteStr(bGTAUserFolder, 26, "save"); // вот тут мы в BYTE записываем string? я вот это не понимаю

501
Скриптинг / Re: Опкод
« : Апрель 02, 2014, 10:01:27 pm »
нет такого, но вот код:

00AA: store_car 0@ position_to 1@ 2@ 3@
0174: 4@ = car 0@ z_angle
00AB: put_car 0@ at 1@ 2@ 3@
0175: set_car 0@ z_angle_to 4@

502
Моды / Re: ModLoader для Vice City
« : Апрель 02, 2014, 09:41:32 pm »
Если кому поможет - вот способ от DimZet13, который позволяет делать практически любые моды, изменяя лишь default.dat.
Этот файл(вернее его название) я, помнится, заменял на defaul2.dat посредством патчинга exe. Соответственно, вы(те, кто смыслят в программировании) сможете просто пропатчить память.

Итого - лучший способ, что я вижу:

1) Гуглим и вспоминаем старенький "GTA Mod Installer".
2) Создаем в папке с игрой папку MODS, в которую закидываем defaul2.dat - копию оригинала. Также туда же кидаем пустой MODS.img(с MODS.dir).
3) Создаем exe-загрузчик, при старте которого в папке MODS ищутся подпапки(папки модов), в которых есть, помимо всяких dff, txd и прочей лабуды файл custommod.cfg, в котором прописано, куда закидывать какие dff, куда - какие txd и т.д.
И здесь по-подробнее:
В exe-загрузчике таким образом будут отображаться имеющиеся кастом-моды, напротив каждого - галочка.
Когда отмечаем нужные галочки-моды и нажимаем заветное "Ok", происходит "компиляция" - все отмеченные моды ставятся и прописываются в наших defaul2.dat и img. Убранная галочка - мод, наоборот, удаляется.
После "компиляции" запускается игра, одновременно идет подмена в памяти игры пути "ИГРА/data/default.dat" на "ИГРА/MODS/defaul2.dat"
4) Делаем "ModBuilder" - прогу для мододелов, которая будет генерировать код для конфигов custommod.cfg, которые будут распространяться с их модами.
5) У exe-загрузчика будет ini, в котором прописано, какие моды сейчас активны(установлены), а у каких - "галочка снята", т.е. существуют лишь в виде папок в папке MODS. Если с момента последнего запуска "отмеченность" галочек не изменилась - загрузчик заного не "компилируется".

Плюсы:
*Реальность исполнения:ковыряние img еще ALEXANDER делал - мб подскажет, но он делал для img 2.0 - SA , хотя принцип ковыряния всех img одинаков. А всякие текстовые файлы для вас изменять - не проблема.
*Простота использования - для простого игрока нужно просто закинуть папки с модами в папку ИГРА/MODS/ и при старте игры через загрузчик отметить нужные галочки, и нажать "OK".

Минусы:
*Геморрой: реальность исполнения еще не означает его легкость.
*конфликты - если двое мододелов добавляют своими модами объекты на карту с одинаковым именем "dom01.dff".
Но знаете-ли, от этого при любой реализации modloader-а не упастись.
*Если за раз при запуске игрок наотмечает кучу галочек - установка-компиляция будет долгой.

503
Общие вопросы / Re: MenuFix - мой вариант меню
« : Апрель 02, 2014, 08:38:12 pm »
не, у меня принцип другой, и расчитан именно на применение моддерами, что про твой плагин сказать нельзя(как его использовать в скриптах например?), да и сопутствующая бонусная хрень там будет.
Как будет сегодня время - сделаю

А касаемо Menufix: просьба сделать какой-нить конфиг, дабы отключать ненужное. У меня например, своё подобие Menu fix, но написано на Delphi. Там есть кое-что, нужное лишь мне, а кое-чего - нет, а изобретать велосипед, имея аналог на C++ - не очень хочется, но и самому запилить конфиг для твоего Menufix не получится(C++ builderа нет, ровно как и соответствующих знаний по C++)

504
Общие вопросы / Re: MenuFix - мой вариант меню
« : Апрель 02, 2014, 12:24:55 pm »
Чувак тут есть одна идейка - кое-че попробую: если выйдет, то можно будет trails юзать по-другому - удобнее, и намного круче

505
Скриптинг / Re: Проблема со скриптом охраны
« : Апрель 02, 2014, 12:22:36 pm »
для загрузки моделей есть опкод -> 038B: load_requested_models
и проверять ничего не надо.
это работает во всей третьей серии.
o_0 хз у меня иногда вылетало, если загружал, и сразу использовал без проверки

506
Скриптинг / Re: Проблема со скриптом охраны
« : Апрель 02, 2014, 10:01:58 am »
Это CLEO скрипт?

Если да, то: не юзай глобальные переменные типа $1307, используй локальные 1@ 2@ и т.д.
----------------------------------------------------------------------------------

Далее:
***ты загружаешь модели
model.Load(#AK47)
Model.Load(#BALLAS2)
038B: load_requested_models
А потом сразу создаешь чувака и даешь ему оружие
3@ = Actor.Create(gang2,#BALLAS2, 1@, 2@, 3@)
$1307 = Marker.CreateAboveActor(3@)
04C4: create_coordinate 1@ 2@ 3@ from_actor $PLAYER_ACTOR offset 0.0 1.2 0.0
0631: put_actor 3@ in_group $PLAYER_GROUP
01B2: give_actor 3@ weapon 30 ammo 6000 // Load the weapon model before using this   
, а модели игрока и оружия могут не успеть прогрузиться.
поэтому тебе нужно делать проверку, загрузились ли модели, и лишь потом создавать чела с оружием:
0248:   model #AK47 available
0248:   model #BALLAS2 available
----------------------------------------------------------------------------------

*** ты создаешь чувака:
3@ = Actor.Create(gang2,#BALLAS2, 1@, 2@, 3@)а уже потом получаешь координаты игрока, в которые нужно спавнить "охранника":
04C4: create_coordinate 1@ 2@ 3@ from_actor $PLAYER_ACTOR offset 0.0 1.2 0.0, т.е. нужно это поменять местами.
----------------------------------------------------------------------------------

***ты используешь одну переменную в двух противоречивых местах:
Цитировать
3@ = Actor.Create(gang2,#BALLAS2, 1@, 2@, 3@)
Это нормально, если ты хочешь оптимизировать код, но лишь если код позволяет это сделать, но у тебя ниже идут строки:
Цитировать
$HLT = actor.Health(3@) // кстати здесь опять нужно заменить глоб. переменную на локальную
         if or
         not player.Defined(0)
         0AB6: store_target_marker_coords_to 1@ 2@ 3@ // IF and SET
         then
           
         break
         else
             if
             actor.Dead(3@)
- и в результате - каша. В общем замени переменную актера 3@ на 4@, чтобы не путалось с координатами.

P.S. Может еще че есть, но пока - это то, что бросилось в глаза.

507
Общие вопросы / Re: MenuFix - мой вариант меню
« : Апрель 02, 2014, 09:42:13 am »
Кстати интересно. Вот если можно отключить остановку рендера, т.е. чтобы и в меню игра работала - как поведет себя trails?
Если включение trails будет работать - значит, его можно будет как-то активировать прямо в игре, т.к. от остановки рендера он не будет зависеть.
Но опять же - это только если сработает.

508
Идеи / Re: Авиация - что можно улучшить
« : Март 30, 2014, 09:49:33 pm »
Я заменял его на НЛО и прописывал пути так, чтобы он мёртвые петли делал вокруг мостов, но большую часть времени проводил вне зоны видимости(чтобы был редко виден). Потом надоело и пока удалил вообще(мешает при разработке).

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

509
Моды / Re: Hydraulics on all сars
« : Март 28, 2014, 01:58:55 am »
Скорее всего, ты использовал опкод driving_heli из СА(04A9). Для вайса он не подходит.
Тот, что я написал тут(04AA) - малоизвестный, но чисто "вайсовский" опкод. В общем, в моем примере всё будет 100% правильно работать, уж поверь(за 6 лет копания вайса кучу скриптов с такими условиями клепал ;D)

Просто есть даже такая простая причина переделки твоего скрипта, как включение в список вертолётов #SPARROW и #SEASPARROW.
Ну а коли переделывать будешь - почему бы ни оптимизировать код?  ;)

P.S. От меня кстати тут уже на подходе ERONDONDON.cs со всякими фентифлюшками типа продвинутой гидравлики и трюков на двух колёсах, а также wheelie  8)

510
Моды / Re: Hydraulics on all сars
« : Март 26, 2014, 12:45:02 pm »
Хороший скрипт , но
80DE: not player $PLAYER_CHAR driving_vehicle_type #POLMAV
  80DE: not player $PLAYER_CHAR driving_vehicle_type #MAVERICK
  80DE: not player $PLAYER_CHAR driving_vehicle_type #SKIMMER
  80DE: not player $PLAYER_CHAR driving_vehicle_type #VCNMAV
можно было заменить на
84AA:   not player $PLAYER_CHAR driving_heli
84C9:   not player $PLAYER_CHAR driving_plane
а также добавить
847E:   not player $PLAYER_CHAR driving_a_motorbike
84A8:   not player $PLAYER_CHAR driving_boat
Но это лишь предложение: хз, мб и без этого норм пашет(не проверял).

Страницы: 1 ... 32 33 [34] 35