Главная Форум Файлы

Вернуться   Mafia-Game Forum > Mafia: The City Of Lost Heaven > Скриптинг
Расширенный поиск

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.10.2019, 16:32   #21
Firefox3860 вне форума Firefox3860
Аватар для Firefox3860
Mafia Modding Crew
Сообщений: 687
Репутация: 773
Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold
Priest
Информация о репутации (Firefox3860)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Firefox3860 / 773
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
CurtisTea, привет )
Не использовал такую команду, но интересно стало. Видимо, она может сделать объект (полу)прозрачным.
В справочнике написано, что у - это номер переменной со значением альфы. То есть не само её значение.
Ещё, как я понял, в качестве фрейма надо указывать конкретный объект 4ds-модели, а не всю модель.
цитата
Поблагодарили: 3
CurtisTea (25.10.2019), Staghound (31.10.2019), Tosyk (25.10.2019)
Старый 25.10.2019, 17:27   #22
CurtisTea вне форума CurtisTea
Аватар для CurtisTea
Member
Сообщений: 49
Репутация: 40
CurtisTea is on a distinguished road
Detective
Информация о репутации (CurtisTea)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
CurtisTea / 40
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от Firefox3860
Ещё, как я понял, в качестве фрейма надо указывать конкретный объект 4ds-модели, а не всю модель.
Воу, да, ты прав, так и работает) Именно это я и не мог понять, спасибо
цитата
Старый 10.11.2019, 19:40   #23
Tosyk вне форума Tosyk
Аватар для Tosyk
Administrator
Сообщений: 762
Репутация: N/A
Tosyk отключил(а) отображение уровня репутации
Подскажите как настроить горячие клавиши во фрирайде для изменения FOV камеры

edit
нашёл: http://mafiascene.com/forum/viewtopi...3ac761e#129859
цитата
Старый 23.03.2020, 17:55   #24
fuchs11 вне форума fuchs11
Banned
Сообщений: 2
Репутация: 2
fuchs11 is an unknown quantity at this point
Detective
Информация о репутации (fuchs11)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
fuchs11 / 2
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от GOLOD55 Посмотреть сообщение
нака доку по скрипткомандам. видимо свежовее чем у тя..
http://dropmefiles.com/JsMi4
У кого-нибудь сохранилось? Перезалейте пожалуйста
цитата
Старый 23.03.2020, 18:49   #25
Firefox3860 вне форума Firefox3860
Аватар для Firefox3860
Mafia Modding Crew
Сообщений: 687
Репутация: 773
Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold
Priest
Информация о репутации (Firefox3860)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Firefox3860 / 773
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от fuchs11 Посмотреть сообщение
У кого-нибудь сохранилось? Перезалейте пожалуйста
На. Там ещё несколько интересных документов

https://drive.google.com/drive/u/0/f...c4kdZ6YEVFSN_t
цитата
Поблагодарил:
fuchs11 (24.03.2020)
Старый 27.10.2020, 18:04   #26
CurtisTea вне форума CurtisTea
Аватар для CurtisTea
Member
Сообщений: 49
Репутация: 40
CurtisTea is on a distinguished road
Detective
Информация о репутации (CurtisTea)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
CurtisTea / 40
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Ребя, я тут немного ударился в оптимизацию кода и есть пара вопросов, которые хотелось бы точно выяснить) Заранее извиняюсь если вопросы покажутся нубацкими

Как работают скрипты вообще? Я так понимаю сперва выполняется 1 строчка 1-го скрипта в сцене, потом 1 строчка 2-го скрипта... 1 строчка последнего, далее 2 строчка 1-го, 2 строчка 2-го и так далее, верно? Что в таком случае делает commandblock? Выполняет строчки своего скрипта, пока не наткнется на commandblock 0 и только тогда переходит к следующему?

Если инактивится скрипт (командой act_setstate), он останавливается на определенной строчке или его работа сбрасывается полностью (как при смене миссии)? Если его инактивить и заактивить обратно, он запустится с определённой строчки когда он стал неактивным или с самого начала?

P.S. просто хочется понимать точную суть происходящего, а не на уровне "с коммандблок скрипт работает быстрее")
цитата
Старый 27.10.2020, 18:18   #27
KlassenAS вне форума KlassenAS
Аватар для KlassenAS
Senior Member
Сообщений: 341
Репутация: 287
KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough
Enforcer
Информация о репутации (KlassenAS)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
KlassenAS / 287
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от CurtisTea Посмотреть сообщение
Как работают скрипты вообще? Я так понимаю сперва выполняется 1 строчка 1-го скрипта в сцене, потом 1 строчка 2-го скрипта... 1 строчка последнего, далее 2 строчка 1-го, 2 строчка 2-го и так далее, верно? Что в таком случае делает commandblock? Выполняет строчки своего скрипта, пока не наткнется на commandblock 0 и только тогда переходит к следующему?
Совершенно верно. Команды между CommandBlock 1 и CommandBlock 0 выполняются без прерываний на иные задачи. Поэтому с коммандблоками нужно быть внимательным. Чтобы внути не оказался бесконечный цикл, например.
А самый простой способ намертво повесить игру выглядит так:
CommandBlock 1
Wait 100
Поскольку команда ожидания под коммандблоком, игра ждёт окончания ожидания, не переходя к другим задачам. Но к этим другим задачам, как раз относится отсчёт времени ) Игра ждёт, но время не идёт.
Цитата:
Сообщение от CurtisTea Посмотреть сообщение
Если инактивится скрипт (командой act_setstate), он останавливается на определенной строчке или его работа сбрасывается полностью (как при смене миссии)? Если его инактивить и заактивить обратно, он запустится с определённой строчки когда он стал неактивным или с самого начала?
Хз, но есть очень простой и эффективный способ проверить.
В одном скрипте пишешь:
Dim_Flt 1
Let Flt[0]=0
Label 1
Lel Flt[0]=Flt[0]+1
FreeRide_ScoreSet Flt[0]
Wait 1000
GoTo 1
А из другого скрипта его активируешь/деактивируешь по таймеру или по нажатию какой-нибудь клавиши.
И сразу видно, продолжает скрипт работу после повторной активации или начинает заново.
Экспериментом скриптинг не испортишь )

Последний раз редактировалось KlassenAS; 27.10.2020 в 19:05.
цитата
Поблагодарил:
CurtisTea (27.10.2020)
Старый 27.10.2020, 19:49   #28
1MAMOHT1 вне форума 1MAMOHT1
Аватар для 1MAMOHT1
Mafia Modding Crew
Сообщений: 49
Репутация: 31
1MAMOHT1 is on a distinguished road
Detective
Информация о репутации (1MAMOHT1)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
1MAMOHT1 / 31
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от CurtisTea Посмотреть сообщение
Если инактивится скрипт (командой act_setstate), он останавливается на определенной строчке или его работа сбрасывается полностью (как при смене миссии)? Если его инактивить и заактивить обратно, он запустится с определённой строчки когда он стал неактивным или с самого начала?
Цитата:
Сообщение от KlassenAS Посмотреть сообщение
Хз, но есть очень простой и эффективный способ проверить.
Даже любопытно стало...
Да продолжает из тела скрипта, счетчик не обнуляется
цитата
Поблагодарили: 2
CurtisTea (27.10.2020), KlassenAS (27.10.2020)
Старый 28.10.2020, 16:12   #29
CurtisTea вне форума CurtisTea
Аватар для CurtisTea
Member
Сообщений: 49
Репутация: 40
CurtisTea is on a distinguished road
Detective
Информация о репутации (CurtisTea)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
CurtisTea / 40
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Спасибо) Тогда ещё вопрос: влияет ли на загруженность движка количество переменных/акторов/фреймов, резервируемых в скрипте (даже если не все они используются)?
Проверил через getticktime - уменьшения скорости не показало, но и не факт что должно было.
цитата
Старый 28.10.2020, 16:45   #30
KlassenAS вне форума KlassenAS
Аватар для KlassenAS
Senior Member
Сообщений: 341
Репутация: 287
KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough
Enforcer
Информация о репутации (KlassenAS)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
KlassenAS / 287
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от CurtisTea Посмотреть сообщение
Спасибо) Тогда ещё вопрос: влияет ли на загруженность движка количество переменных/акторов/фреймов, резервируемых в скрипте (даже если не все они используются)?
Проверил через getticktime - уменьшения скорости не показало, но и не факт что должно было.
Переменная типа Float занимает в памяти 4 байта.
Даже с сотней переменных и полкилобайта не наберёшь.
С акторами и фреймами картина примерно такая же - это, по сути переменные с набором идентификаторов и свойств, через которые движок обращается к конкретным моделям.
Для движка это - капля в море.
Для сравнения - качественная модель авто для игры - от 1Мб и более. И вот они движок и проц грузят )
А что до скриптов - хоть километровый скрипт напиши, игра и не заметит.
Орять же - можно провести эксперимент.
Dim_Flt 2
Dim_Act дофига
Label 1
GetGameTime 0
FindActor 0
//тут можно сотню команд натолкать
FindActor X
И смотрим, сколько времени ушло на команды
CommandBlock 1
GetGameTime 1
Let Flt[0]=Flt[1]-Flt[0]
FreeRide_ScoreSet Flt[0]
CommandBlock 0
Wait 500
GoTo 1
Увеличиваем количество акторов и команд в неразумных пределах, с помощью копипаста, и смотрим, как увеличивается время выполнения.
Если количество команд и акторов увеличилось вдвое, и время увеличилось вдвое - значит, движок работает всё с той же скоростью.
Если количество акторов и команд увеличилось в 10 раз, а время выполнения в 15 раз - то движок начал тормозить )

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

Последний раз редактировалось KlassenAS; 28.10.2020 в 16:47.
цитата
Поблагодарили: 2
CurtisTea (28.10.2020), Firefox3860 (28.10.2020)
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Регистрация
×
Чтобы оставлять на форуме Mafia-Game Forum сообщения, необходимо сначала зарегистрироваться.
Пожалуйста, укажите ваше имя пользователя, адрес электронной почты и прочую обязательную информацию о себе в форме ниже.
Имя:
Пароль / Адрес электронной почты
Пароль:
Подтвердите пароль:
Адрес электронной почты:
Подтвердите адрес:
Реферер
Если вы пришли на этот форум по совету одного из участников, то, пожалуйста, введите его имя пользователя.
Реферер:
Время на форуме может быть выставлено в соответствии с тем, где вы находитесь. Выберите свой часовой пояс из списка ниже.
Учитывать переход на летнее или зимнее время (DST).
Получать электронные письма
Время от времени администрация может посылать вам сообщения по электронной почте.

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

Текущее время: 14:53. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.11 Release Candidate 2
Copyright ©2000 - 2024, vBulletin Solutions Inc. Перевод: zCarot (VK2425)