#1 28-05-2011 23:39

Sergey81
Registered: 19-12-2008
Posts: 654

[SA] Outlined subtitles

Скрипт убирает тень у субтитров, заменяя её на обрамление.
cc19774d6d54bae1d077ea700545eeaa.jpeg  6f0db5098b07bb8b17cc37d577e06eaf.jpeg  4df79b7019153982160d689dccbfec64.jpeg 

{$CLEO}
0000:
0A8C: write_memory 0x58C306 size 1 value 0x01 virtual_protect 1
0A8C: write_memory 0x58C308 size 4 value 0x0018D284 virtual_protect 1
0A93:

Last edited by Sergey81 (28-05-2011 23:40)

Offline

#2 29-05-2011 14:50

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

Версия 2, текстбоксы теперь без чёрного фона и тоже в обрамлении.
bf966bf47a9e2b738a6d0dd68289ccd1.jpeg  6559cdda3f4aa8c95a56a4d03db9a3ac.jpeg  7cc10762bfa929fff5d0f5fdc209925e.jpeg 

{$CLEO}
0000:
// subtitles //
0A8C: write_memory 0x58C306 size 1 value 0x01 virtual_protect 1
0A8C: write_memory 0x58C308 size 4 value 0x0018D284 virtual_protect 1

// textbox //
//0A8C: write_memory 0x0058BB2F size 1 value 0x02 virtual_protect 1 //outline size
//0A8C: write_memory 0x0058BB31 size 1 value 0x02 virtual_protect 1 //outline size

0A8C: write_memory 0x0058BB33 size 4 value 0x0018DA59 virtual_protect 1                                    
0A8C: write_memory 0x0058BB37 size 1 value 0x50 virtual_protect 1                                        
0A8C: write_memory 0x0058BB39 size 4 value 0x0018DA53 virtual_protect 1 
0A93:

По умолчанию обрамление размером как на скринах, чтобы увеличить, нужно раскомменить 2 строки outline size.

Last edited by Sergey81 (29-05-2011 14:59)

Offline

#3 30-05-2011 02:20

444andrei444
Registered: 29-03-2011
Posts: 317
Website

Re: [SA] Outlined subtitles

Было бы здорово если текст бокс не убирался а менял цвет. К примеру вместо черного слегка синий

Offline

#4 30-05-2011 09:35

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: [SA] Outlined subtitles

Присоединяюсь к вопросу 444andrei444, но другое предложение. Можно-ли сделать по бокам обрамление из txd файла? [spoiler]как в бета-версии:D[/spoiler]

Offline

#5 30-05-2011 14:34

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

Версия 3, уменьшен шрифт у текст бокса. Возможно ещё доработаю пропорции, пока сделал как в ivhudfix, 0.75/0.3.

{$CLEO}
0000:
// subtitles //
0A8C: write_memory 0x58C306 size 1 value 0x01 virtual_protect 1
0A8C: write_memory 0x58C308 size 4 value 0x0018D284 virtual_protect 1

// textbox //
//0A8C: write_memory 0x0058BB2F size 1 value 0x02 virtual_protect 1 //outline size
//0A8C: write_memory 0x0058BB31 size 1 value 0x02 virtual_protect 1 //outline size
0A8C: write_memory 0x0058BA6A size 4 value 0x00858C24 virtual_protect 1 //font size 
0A8C: write_memory 0x0058BA54 size 4 value 0x00858F34 virtual_protect 1 //font size
                                             
0A8C: write_memory 0x0058BB33 size 4 value 0x0018DA59 virtual_protect 1                                    
0A8C: write_memory 0x0058BB37 size 1 value 0x50 virtual_protect 1                                        
0A8C: write_memory 0x0058BB39 size 4 value 0x0018DA53 virtual_protect 1 
0A93:

34d67f00a1f1d723b9536bdce9b659f1.jpeg  93bd2510b5b61040dd23a3fdcbff9e1f.jpeg  b7980a401e7c40abe2128273d361563a.jpeg 

Sw[ee wrote:

t]Присоединяюсь к вопросу 444andrei444, но другое предложение. Можно-ли сделать по бокам обрамление из txd файла? [spoiler]как в бета-версии:D[/spoiler]

Цвет поменять можно, как и прозрачность:

.text:0058BB4D 028                 push    eax             ; a
.text:0058BB4E 02C                 push    ebp             ; b
.text:0058BB4F 030                 push    ebp             ; g
.text:0058BB50 034                 push    ebp             ; r

свой ргб задать не получится, так как всего 1 байт доступен(возможно способ и есть, но я не в курсе), поэтому играясь с регистрами можно получить что-то вроде этого:
169154a1f42e17e78aceeac2fcd55f8f.jpeg 
Про txd думаю врядли, если только считывать размеры текстбокса из памяти(если они там есть конечно), потом выводить текстуру опкодами. Да и врядли в бете так было, у R* функция вывода текстбокса наверно в 3-VCS  + manhunt практически не менялась, так как во всех играх очень похоже.

Offline

#6 30-05-2011 14:43

444andrei444
Registered: 29-03-2011
Posts: 317
Website

Re: [SA] Outlined subtitles

И куда это написать. Что то совсем плохо соображаю.(чтобы поменять цвет)

Offline

#7 30-05-2011 15:34

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

Удалось сделать цвет шрифта белым, как в IV:
ebc78752b0e4a7452d62a72204444ccd.jpg

@444andrei444 - ну например

0A8C: write_memory 0x0058BB4F size 1 value 0x50 virtual_protect 1

Вместо 0x50 можно писать 0x52, 0x57 и т.п.
Тоже самое и с остальными тремя адресами.

Offline

#8 30-05-2011 16:48

444andrei444
Registered: 29-03-2011
Posts: 317
Website

Re: [SA] Outlined subtitles

0x50 это значение цвета в hex или нет?

Offline

#9 30-05-2011 18:04

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

@444andrei444 - 0x50 это хекс код регистра eax.

Offline

#10 30-05-2011 19:21

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: [SA] Outlined subtitles

Обалденная штука, как вернусь в моддинг - поставлю!

Offline

#11 31-05-2011 08:21

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: [SA] Outlined subtitles

@Sergey81 - во, картинку нашёл.
grand-theft-auto-san-andreas-20040730111415515.jpg
Тут рамочка вокруг бокса.

Offline

#12 31-05-2011 08:39

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

Re: [SA] Outlined subtitles

так как всего 1
байт доступен(возможно способ и есть, но я
не в курсе)

Тебе надо 2 байта для команды
6A 00 // push 0
Можешь их взять там, где записывается значение в eax
mov eax, ...
Эта команда уже и так не нужна.
Вместо
51 // push eax
Ставишь ноп, т.е.
90.


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#13 31-05-2011 10:23

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

@DK22Pac - ргб там в ebp, если посмотреть код может и можно местечко найти. Но мне и без фона нормально:D

В 4-й версии текст в панелях тоже будет с обрамлением, + немного увеличена прозрачность чёрного фона. Также в закомментированном коде будут адреса rgb этого фона.

@Sw[ee]t - интересно, непонятно почему не дожило до релиза.

Offline

#14 31-05-2011 18:06

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

Версия 4, наверное финальная.
ee84ebc9bf587ff55df7672a7cf78d25.jpeg 

{$CLEO}
0000:
wait 500
// subtitles //
0A8C: write_memory 0x58C306 size 1 value 0x01 virtual_protect 1
0A8C: write_memory 0x58C308 size 4 value 0x0018D284 virtual_protect 1

// textbox //
//0A8C: write_memory 0x0058BB2F size 1 value 0x02 virtual_protect 1 //outline size
//0A8C: write_memory 0x0058BB31 size 1 value 0x02 virtual_protect 1 //outline size
0A8C: write_memory 0x0058BA6A size 4 value 0x00863E10 virtual_protect 1 //font size 0.36
0A8C: write_memory 0x0058BA54 size 4 value 0x00858F34 virtual_protect 1 //font size 0.75                                             
0A8C: write_memory 0x0058BB33 size 4 value 0x0018DA59 virtual_protect 1                                    
0A8C: write_memory 0x0058BB37 size 1 value 0x50 virtual_protect 1                                        
0A8C: write_memory 0x0058BB39 size 4 value 0x0018DA53 virtual_protect 1 
//NOP 5 bytes for white text color
0A8C: write_memory 0x0058BB74 size 1 value 0x90 virtual_protect 1                                        
0A8C: write_memory 0x0058BB75 size 4 value 0x90909090 virtual_protect 1

//Panels 
0A8C: write_memory 0x00580FC9 size 1 value 0x52 virtual_protect 1 //push edx
0A8C: write_memory 0x00580FCB size 4 value 0x001985C1 virtual_protect 1   //call 00719590
//0A8C: write_memory 0x580EF7 size 1 value 0xFF virtual_protect 1 //b
//0A8C: write_memory 0x580F01 size 1 value 0xFF virtual_protect 1 //g
//0A8C: write_memory 0x580F05 size 1 value 0xFF virtual_protect 1 //r
0A8C: write_memory 0x00580EF0 size 4 value 0x00000090 virtual_protect 1   //a
//0A8C: write_memory 0x00580F9B size 4 value  virtual_protect 1   //font scale

//STATUS TEXT
//0A8C: write_memory 0x0058B295 size 1 value 0x01 virtual_protect 1  //font type   
//0A8C: write_memory 0x0058B2B9 size 1 value 0x02 virtual_protect 1  //outline size   

  

0A93:

Offline

#15 02-06-2011 06:54

El Sanchez
From: Пермь
Registered: 25-08-2010
Posts: 20

Re: [SA] Outlined subtitles

Казалось бы мелочь, но приятно. Да и выглядит всё это красиво. Забираю smile

З.Ы. Да, фантазия у вас работает как надо.

Last edited by El Sanchez (02-06-2011 06:55)

Offline

#16 02-06-2011 08:38

[BOTF]GTAshnik
From: Самара
Registered: 16-01-2011
Posts: 10
Website

Re: [SA] Outlined subtitles

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

Offline

#17 02-06-2011 10:31

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

@[BOTF]GTAshnik - у меня всё нормально:
fb4f56ce75a949a42e576c197979de2d.jpg
Хотя я допускаю что такое может быть, пока никак не исправить.
Думаю будет ещё версия 5, с некоторыми другими изменениями, касательно текста названия миссии, панелей и радио.

Last edited by Sergey81 (02-06-2011 12:29)

Offline

#18 02-06-2011 10:36

444andrei444
Registered: 29-03-2011
Posts: 317
Website

Re: [SA] Outlined subtitles

Вопрос где перевести eax в hex.

Offline

#19 02-06-2011 11:25

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: [SA] Outlined subtitles

[BOTF wrote:

GTAshnik]Да, скрипт знатный, но в 4-ой версии есть небольшой баг - когда вводишь какой-нибудь чит-код, то надпись "Чит-код активирован" чёрного цвета выводится и буквы в этой надписи из-за этой мелочи сливаются.

Может проблемы с локализацией?

Вопрос где перевести eax в hex.

О_о
Это в смысле - перевести значение регистра eax в hex? так он и так в hex

Last edited by Sw[ee]t (02-06-2011 11:26)

Offline

#20 02-06-2011 12:50

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

Версия 5.
858a5cf7039732a46c69ce899667660f.jpeg  e70140cf37bc6e9b97b50468f98161bb.jpeg 

{$CLEO}
0000:
wait 500
// subtitles //
0A8C: write_memory 0x58C306 size 1 value 0x01 virtual_protect 1
0A8C: write_memory 0x58C308 size 4 value 0x0018D284 virtual_protect 1

// textbox //
//0A8C: write_memory 0x0058BB2F size 1 value 0x02 virtual_protect 1 //outline size
//0A8C: write_memory 0x0058BB31 size 1 value 0x02 virtual_protect 1 //outline size
0A8C: write_memory 0x0058BA6A size 4 value 0x00863E10 virtual_protect 1 //font size 0.36
0A8C: write_memory 0x0058BA54 size 4 value 0x00858F34 virtual_protect 1 //font size 0.75                                             
0A8C: write_memory 0x0058BB33 size 4 value 0x0018DA59 virtual_protect 1                                    
0A8C: write_memory 0x0058BB37 size 1 value 0x50 virtual_protect 1                                        
0A8C: write_memory 0x0058BB39 size 4 value 0x0018DA53 virtual_protect 1 
//NOP 5 bytes for white text color
0A8C: write_memory 0x0058BB74 size 1 value 0x90 virtual_protect 1                                        
0A8C: write_memory 0x0058BB75 size 4 value 0x90909090 virtual_protect 1

//Panels 
0A8C: write_memory 0x00580FC9 size 1 value 0x52 virtual_protect 1 //push edx
0A8C: write_memory 0x00580FCB size 4 value 0x001985C1 virtual_protect 1   //call 00719590
//0A8C: write_memory 0x580EF7 size 1 value 0x68 virtual_protect 1 //b
//0A8C: write_memory 0x580F01 size 1 value 0x26 virtual_protect 1 //g
//0A8C: write_memory 0x580F05 size 1 value 0x5C virtual_protect 1 //r
0A8C: write_memory 0x00580EF0 size 4 value 0x00000090 virtual_protect 1   //a
//0A8C: write_memory 0x00580F9B size 4 value  virtual_protect 1   //font scale
0006: 0@ = 0xBAB22C   // base
0A90: 1@ = 4 * 12   // panel text color (tbogt style)
005A: 0@ += 1@
0A8C: write_memory 0@ size 4 value 0xFF68265C virtual_protect 0  

//STATUS TEXT(may not work)
//0A8C: write_memory 0x0058B295 size 1 value 0x01 virtual_protect 1  //font type   
//0A8C: write_memory 0x0058B2B9 size 1 value 0x02 virtual_protect 1  //outline size   

//some hud colors
0006: 0@ = 0xBAB22C   // base
0A90: 1@ = 4 * 8   // radio text (gray)
005A: 0@ += 1@
0A8C: write_memory 0@ size 4 value 0xFFFFF844 virtual_protect 0 

0A8C: write_memory 0xBAB244 size 4 value 0xFF16A0CE virtual_protect 0   //mission text color
0A8C: write_memory 0x58D2B6 size 1 value 0x00 virtual_protect 0   //mission text font

{0A8C: write_memory 0x58D3F4 size 1 value 0x68 virtual_protect 1 //b mission text outline
0A8C: write_memory 0x58D3F6 size 1 value 0x26 virtual_protect 1 //g  mission text outline
0A8C: write_memory 0x58D3F8 size 1 value 0x5C virtual_protect 1 //r  mission text outline}

                       
0A93:

Изменён цвет и стиль названий миссий, цвет текста радио. tbogt style-панели.

Offline

#21 02-06-2011 15:40

[BOTF]GTAshnik
From: Самара
Registered: 16-01-2011
Posts: 10
Website

Re: [SA] Outlined subtitles

5-я версия, вообще класс, мне очень понравилась...особенно названия миссий...но вот хотелось бы спросить:
- На всех твоих скриншотах из кат-сцен игры у тебя нет "widescreen" или попросту "чёрных полос" сверху и снизу экрана. Как ты это сделал? И если не трудно то можешь это выложить сюда в качестве скрипта...

Last edited by [BOTF]GTAshnik (02-06-2011 15:41)

Offline

#22 02-06-2011 15:48

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

Re: [SA] Outlined subtitles

Насколько помню, в БОГТе сам бэкграунд фиолетовый.


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#23 02-06-2011 16:03

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

@[BOTF]GTAshnik - да с этими полосками вобще странная история, когда использовал exdisp.asi, они были. Когда заменил exdisp.asi на multipatch(d3d9.dll), они исчезли.

DK22Pac wrote:

Насколько помню, в БОГТе сам бэкграунд фиолетовый.

Ага, но не смотрится это в SA совсем, так что я по другому решил сделать.

Offline

#24 02-06-2011 17:24

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: [SA] Outlined subtitles

@Sergey81 - можно замутить в 6й версии обрамление (рамочку) вокруг бокса?

Offline

#25 02-06-2011 17:43

Sergey81
Registered: 19-12-2008
Posts: 654

Re: [SA] Outlined subtitles

@Sw[ee]t - если бы был такой опкод, может и можно было бы, а так врядли.

Offline

Board footer

Powered by FluxBB