- Сообщений: 231
- Спасибо получено: 15
Правила раздела:
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.
Нужна помощь - вам сюда!
16 года 3 мес. назад #30645
от Avatosius
Avatosius ответил в теме Нужна помощь - вам сюда!
Я лично копирую файл конфигурации (game) из проектов, которые на мукере создал без ничего (там есть строчка rgss102e.dll), ставлю на "только чтение" и всё. Мукер вначале ругается, а потом, когда он уже запустился, надо ещё раз поставить "только чтение".
Этот конфигурацонный файл, при изменении проекта, меняет строчку на rgss100j.dll и не хочет отображать шрифты
У меня лично так.
Этот конфигурацонный файл, при изменении проекта, меняет строчку на rgss100j.dll и не хочет отображать шрифты
Тема заблокирована.
16 года 3 мес. назад #30646
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
<strong>Dr. Nick To писал(а):</strong>
Уж это врядли) скорее всего у парня корейская версия а шрифта с иероглифами нет)Либо убей руссификатор и переставь без него. Может он.Длиб оскачай руссификатор.
Тема заблокирована.
16 года 3 мес. назад #30666
от Samsong
Samsong ответил в теме Нужна помощь - вам сюда!
Спасибо огромное!
На самом деле помог совет с созданием нового проекта. После этого все действительно стало отображаться корректно.
На самом деле помог совет с созданием нового проекта. После этого все действительно стало отображаться корректно.
Тема заблокирована.
16 года 3 мес. назад #30671
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
вот всё как просто
Тема заблокирована.
16 года 3 мес. назад #30672
от Avatosius
Avatosius ответил в теме Нужна помощь - вам сюда!
Есть вопрос... Может кто-нибудь дать ВВ-код спойлера? А то он у меня не работает
Тема заблокирована.
16 года 3 мес. назад #30675
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
ВНИМАНИЕ: Спойлер!
[\spoiler]
Тема заблокирована.
16 года 3 мес. назад #30676
от Avatosius
Avatosius ответил в теме Нужна помощь - вам сюда!
Логично) Спасибо)
Тема заблокирована.
16 года 3 мес. назад #30683
от roxie
roxie ответил в теме Нужна помощь - вам сюда!
Как на эвентах сделать так, чтобы при нажатии клавиши, например "C" запускалась команда, отмеченная мной (callevent, например? Я делал это через "conditional branch - button "C" is being pressed" и параллельно запускал этот common event с одним из свитчей, но после старта он не ждал, пока будет нажата клавиша "C", а сразу запускал команду... @_@ как от этого избавиться? Или мб как-то можно с помощью скрипта по нажатию клавиши запускать callevent?
Тема заблокирована.
16 года 3 мес. назад #30685
от mephis
→ → ↓ ↑ Y
mephis ответил в теме Нужна помощь - вам сюда!
Всё должно работать, как описано. Может быть у тебя косяк с ивентом? Тогда его скриншот в студию.
Можно и скриптом сделать. Только указывай версию мэйкера.
Можно и скриптом сделать. Только указывай версию мэйкера.
→ → ↓ ↑ Y
Тема заблокирована.
16 года 3 мес. назад - 16 года 3 мес. назад #30686
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
во-первых проверь какой кнопокой у тебя настроенна клавиша С.
Напоминаю, что изначально мэйкер делалася под джойстик, так что С может быть пробелом или шифтом.
Чтобы настроить управление нажимаем Ф1 в игре.
Ивент должен работать постоянно. Ждать пока будет нажата уазанная клавиша, за тем будет включать нужную функицю. Делаем с помощью ВЕТВЛЕНИЙ УСЛОВИЙ или Cordition Batch не помню как пишется.
При этом комон ивент сам по себе не будет работать.
го надо активировать как параллельный процесс с помощью переключателя.
Напоминаю, что изначально мэйкер делалася под джойстик, так что С может быть пробелом или шифтом.
Чтобы настроить управление нажимаем Ф1 в игре.
Ивент должен работать постоянно. Ждать пока будет нажата уазанная клавиша, за тем будет включать нужную функицю. Делаем с помощью ВЕТВЛЕНИЙ УСЛОВИЙ или Cordition Batch не помню как пишется.
При этом комон ивент сам по себе не будет работать.
го надо активировать как параллельный процесс с помощью переключателя.
Последнее редактирование: 16 года 3 мес. назад пользователем Злодей.
Тема заблокирована.
- alexian
- Новый участник
-
Скрыть
Больше
- Спасибо получено: 0
16 года 3 мес. назад #30688
от alexian
alexian ответил в теме Нужна помощь - вам сюда!
Слушайте, если у меня моя игра подвисает, когда много всего на карте и у меня комп говно, то на ваших же, компах все будет куда лучше? (ВХ)
Тема заблокирована.
16 года 3 мес. назад #30689
от Sn@ke
"Люди, Ангелы, Демоны... Есть ли между ними разница? Я не согласен с теми, кто утверждает, что Демоны - это абсолютное зло. Бывают Люди, гораздо хуже Демонов.И бывают Демоны куда более великодушные, чем Ангелы. Важно не то, кто ты, а то, кем ты хочешь быть..."
- Найн, Высший Демон -
Dark Arts - The Wings of Angel
Sn@ke ответил в теме Нужна помощь - вам сюда!
Вроде того. Однако, сколько же всего тебе надо было запихнуть на карту, чтобы у тебя мейкерная игра стала тормозить?
Хотя, конечно это и от компа зависит.
Еще - сильно тормозить мейкер может и из-за паралельного процесса. Некоторые виды действий, поставленых в паралельный процесс, могут сильно тормозить систему. Например, показ боевой анимации, зацикленный в ПП.
Еще - сильно тормозить мейкер может и из-за паралельного процесса. Некоторые виды действий, поставленых в паралельный процесс, могут сильно тормозить систему. Например, показ боевой анимации, зацикленный в ПП.
"Люди, Ангелы, Демоны... Есть ли между ними разница? Я не согласен с теми, кто утверждает, что Демоны - это абсолютное зло. Бывают Люди, гораздо хуже Демонов.И бывают Демоны куда более великодушные, чем Ангелы. Важно не то, кто ты, а то, кем ты хочешь быть..."
- Найн, Высший Демон -
Dark Arts - The Wings of Angel
Тема заблокирована.
16 года 3 мес. назад #30690
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
Общеизвестны торомоза при большом количестве ивентов в одной локации.
Как правило на старых компах начинаются лаги после 30 событий, одновременно работающих.
На новых компьютерах лимит гораздо высше. Более 70 ивенотов.
Как правило на старых компах начинаются лаги после 30 событий, одновременно работающих.
На новых компьютерах лимит гораздо высше. Более 70 ивенотов.
Тема заблокирована.
- alexian
- Новый участник
-
Скрыть
Больше
- Спасибо получено: 0
16 года 3 мес. назад #30691
от alexian
alexian ответил в теме Нужна помощь - вам сюда!
Хреново. У меня не получается создавать маленькие локации и мало эвентов на них(
Тема заблокирована.
16 года 3 мес. назад #30692
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
да норм. делай как есть. у нас тормозить не будет.
Тема заблокирована.
16 года 3 мес. назад #30693
от mephis
→ → ↓ ↑ Y
mephis ответил в теме Нужна помощь - вам сюда!
alexian, тогда тебе скрипт AntiLag в помощь. Как раз для случаев с большим количеством ивентов на карте.
→ → ↓ ↑ Y
Тема заблокирована.
16 года 3 мес. назад #30694
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
опа))) прикольный скрипт)) у меня много игр на старом компе тормозят)
Тема заблокирована.
16 года 3 мес. назад #30695
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
Вот нашёл антилаг для ХР.
А существует ли для VX?
А существует ли для VX?
ВНИМАНИЕ: Спойлер!
#======================================================================
=========
# ** AntiLag Script
#
#
# f0tz!baerchen
# 0.71
# 06.01.2007
#
#
#
# Credits:
# Chaosg1 (for testing )
# NearFantastica (for the Event AntiLag I used and improved)
#
#
#
# Features:
# - Event AntiLag: Event (and their Sprites) which are not on the screen are
# not updated except they run on "Autostart" or "Parallel Process" or they
# have an empty comment in the first line
# - High Priority: Game can be run on high priority
# - Smooth Antilag: the Event AntiLag does only work fine if the events are
# distributed over the whole map, but when there are many events at the same
# place it lags again. If the script notices that the CPU utilization
# gets higher than $antilag.max_cpu_utilization it will slow down the game and
# reduce the framerate as long as needed.
#
#
#
# Settings:
# can be changed anytime during the game. They are found at the end of the
# script.
#
#===============================================================================
#
# * SDK Log Script
#
SDK.log('AntiLag', 'f0tz!baerchen', 0.71, '06.01.07')
#
# Begin SDK Enabled Check
#
if SDK.enabled?('AntiLag')
#===============================================================================
# Class for Antilag Settings
#===============================================================================
class Antilag_Settings
attr_accessor :event
attr_accessor :max_cpu_utilization
attr_accessor :cpu_tolerance
#
# initializes default settings
#
def initialize
@event = true
@high_priority = true
@max_cpu_utilization = 100
@cpu_tolerance = 20
@SetPriorityClass = Win32API.new('kernel32', 'SetPriorityClass',
, 'i')
@GetProcessTimes = Win32API.new('kernel32', 'GetProcessTimes',
, 'i')
end
#
# turns high priority on/off
#
def high_priority=(value)
@high_priority = value
if @high_priority
@SetPriorityClass.call(-1, 0x00000080) # High Priority
else
@SetPriorityClass.call(-1, 0x00000020) # Normal Priority
end
end
#
# returns the current CPU Utilization
#
def get_cpu_utilization
# uses API Call to get the Kernel and User Time
creation_time = '0' * 10
exit_time = '0' * 10
kernel_time = '0' * 10
user_time = '0' * 10
@GetProcessTimes.call(-1, creation_time, exit_time, kernel_time, user_time)
# converts times into integer (in 100ns)
kernel_time = kernel_time.unpack('l2')
user_time = user_time.unpack('l2')
kernel_time = kernel_time[0] + kernel_time[1]
user_time = user_time[0] + user_time[1]
# takes differences to calculate cpu utilization
if @old_time != nil
timer_difference = Time.new - @old_timer
time_difference = kernel_time + user_time - @old_time
result = time_difference / timer_difference / 100000
else
result = $antilag.max_cpu_utilization
end
# saves values (to calculate the differences, s.a.)
@old_timer = Time.new
@old_time = kernel_time + user_time
return result
end
end
$antilag = Antilag_Settings.new
#===============================================================================
# Scene_Map class
#===============================================================================
class Scene_Map
#
# update method, smooth antilag has been added
#
alias f0tzis_anti_lag_scene_map_update update
def update
f0tzis_anti_lag_scene_map_update
if Graphics.frame_count % 20 == 0 and $antilag.max_cpu_utilization <= 100
# calculates difference between max utilization and current utilization
abs = $antilag.max_cpu_utilization - $antilag.get_cpu_utilization
# changes Frame Rate if difference is bigger than the tolerance
if abs.abs >= $antilag.max_cpu_utilization * $antilag.cpu_tolerance/100.0
Graphics.frame_rate = [[15, Graphics.frame_rate + abs / 2].max, 40].min
end
end
end
end
#===============================================================================
# Game_Event Class
#===============================================================================
class Game_Event
#
# for AntiLag, decides, if an event is on the screen or not.
#
def in_range?(force=false)
# returns true if $event_antilag is false or the event is an
# Autostart/Parallel Process event or it has an empty
# comment in the first line
if (!$antilag.event and !force) or (@trigger == 3 or @trigger == 4 or
(@list != nil and @list[0].code == 108 and @list[0].parameters == ))
return true
end
screne_x = $game_map.display_x
screne_x -= 300
screne_y = $game_map.display_y
screne_y -= 300
screne_width = $game_map.display_x
screne_width += 3000
screne_height = $game_map.display_y
screne_height += 3000
return false if @real_x <= screne_x
return false if @real_x >= screne_width
return false if @real_y <= screne_y
return false if @real_y >= screne_height
return true
end
#
# update method
#
alias f0tzis_anti_lag_game_event_update update
def update
return if not self.in_range?
f0tzis_anti_lag_game_event_update
end
end
#===============================================================================
# Sprite_Character Class
#===============================================================================
class Sprite_Character < RPG::Sprite
#
# update method, parameters added for Loop_Map, rebuild for 8dirs
#
alias f0tzis_anti_lag_sprite_char_update update
def update
return if @character.is_a?(Game_Event) and not @character.in_range?(true)
f0tzis_anti_lag_sprite_char_update
end
end
#===============================================================================
# Settings
#===============================================================================
$antilag.max_cpu_utilization = 70 # the maximum CPU utilization, the script
# try to stay under this value during changing
# changing the frame rate. The lower this
# value the higher will be the lag reduction
# (and the smoothness, too), a value > 100
# will disable this feature completely
$antilag.cpu_tolerance = 20 # this value tells the script how many % of
# the CPU utilization change should be ignored
# If you change it too a higher value you,
# your Frame Rate will be more constant but
# smaller lags will be ignored.
$antilag.high_priority = true # set this to true if you want the game to run
# on high priority
$antilag.event = false # set this to true to enable normal anti-lag
end[\spoiler]
=========
# ** AntiLag Script
#
#
# f0tz!baerchen
# 0.71
# 06.01.2007
#
#
#
# Credits:
# Chaosg1 (for testing )
# NearFantastica (for the Event AntiLag I used and improved)
#
#
#
# Features:
# - Event AntiLag: Event (and their Sprites) which are not on the screen are
# not updated except they run on "Autostart" or "Parallel Process" or they
# have an empty comment in the first line
# - High Priority: Game can be run on high priority
# - Smooth Antilag: the Event AntiLag does only work fine if the events are
# distributed over the whole map, but when there are many events at the same
# place it lags again. If the script notices that the CPU utilization
# gets higher than $antilag.max_cpu_utilization it will slow down the game and
# reduce the framerate as long as needed.
#
#
#
# Settings:
# can be changed anytime during the game. They are found at the end of the
# script.
#
#===============================================================================
#
# * SDK Log Script
#
SDK.log('AntiLag', 'f0tz!baerchen', 0.71, '06.01.07')
#
# Begin SDK Enabled Check
#
if SDK.enabled?('AntiLag')
#===============================================================================
# Class for Antilag Settings
#===============================================================================
class Antilag_Settings
attr_accessor :event
attr_accessor :max_cpu_utilization
attr_accessor :cpu_tolerance
#
# initializes default settings
#
def initialize
@event = true
@high_priority = true
@max_cpu_utilization = 100
@cpu_tolerance = 20
@SetPriorityClass = Win32API.new('kernel32', 'SetPriorityClass',
, 'i')
@GetProcessTimes = Win32API.new('kernel32', 'GetProcessTimes',
, 'i')
end
#
# turns high priority on/off
#
def high_priority=(value)
@high_priority = value
if @high_priority
@SetPriorityClass.call(-1, 0x00000080) # High Priority
else
@SetPriorityClass.call(-1, 0x00000020) # Normal Priority
end
end
#
# returns the current CPU Utilization
#
def get_cpu_utilization
# uses API Call to get the Kernel and User Time
creation_time = '0' * 10
exit_time = '0' * 10
kernel_time = '0' * 10
user_time = '0' * 10
@GetProcessTimes.call(-1, creation_time, exit_time, kernel_time, user_time)
# converts times into integer (in 100ns)
kernel_time = kernel_time.unpack('l2')
user_time = user_time.unpack('l2')
kernel_time = kernel_time[0] + kernel_time[1]
user_time = user_time[0] + user_time[1]
# takes differences to calculate cpu utilization
if @old_time != nil
timer_difference = Time.new - @old_timer
time_difference = kernel_time + user_time - @old_time
result = time_difference / timer_difference / 100000
else
result = $antilag.max_cpu_utilization
end
# saves values (to calculate the differences, s.a.)
@old_timer = Time.new
@old_time = kernel_time + user_time
return result
end
end
$antilag = Antilag_Settings.new
#===============================================================================
# Scene_Map class
#===============================================================================
class Scene_Map
#
# update method, smooth antilag has been added
#
alias f0tzis_anti_lag_scene_map_update update
def update
f0tzis_anti_lag_scene_map_update
if Graphics.frame_count % 20 == 0 and $antilag.max_cpu_utilization <= 100
# calculates difference between max utilization and current utilization
abs = $antilag.max_cpu_utilization - $antilag.get_cpu_utilization
# changes Frame Rate if difference is bigger than the tolerance
if abs.abs >= $antilag.max_cpu_utilization * $antilag.cpu_tolerance/100.0
Graphics.frame_rate = [[15, Graphics.frame_rate + abs / 2].max, 40].min
end
end
end
end
#===============================================================================
# Game_Event Class
#===============================================================================
class Game_Event
#
# for AntiLag, decides, if an event is on the screen or not.
#
def in_range?(force=false)
# returns true if $event_antilag is false or the event is an
# Autostart/Parallel Process event or it has an empty
# comment in the first line
if (!$antilag.event and !force) or (@trigger == 3 or @trigger == 4 or
(@list != nil and @list[0].code == 108 and @list[0].parameters == ))
return true
end
screne_x = $game_map.display_x
screne_x -= 300
screne_y = $game_map.display_y
screne_y -= 300
screne_width = $game_map.display_x
screne_width += 3000
screne_height = $game_map.display_y
screne_height += 3000
return false if @real_x <= screne_x
return false if @real_x >= screne_width
return false if @real_y <= screne_y
return false if @real_y >= screne_height
return true
end
#
# update method
#
alias f0tzis_anti_lag_game_event_update update
def update
return if not self.in_range?
f0tzis_anti_lag_game_event_update
end
end
#===============================================================================
# Sprite_Character Class
#===============================================================================
class Sprite_Character < RPG::Sprite
#
# update method, parameters added for Loop_Map, rebuild for 8dirs
#
alias f0tzis_anti_lag_sprite_char_update update
def update
return if @character.is_a?(Game_Event) and not @character.in_range?(true)
f0tzis_anti_lag_sprite_char_update
end
end
#===============================================================================
# Settings
#===============================================================================
$antilag.max_cpu_utilization = 70 # the maximum CPU utilization, the script
# try to stay under this value during changing
# changing the frame rate. The lower this
# value the higher will be the lag reduction
# (and the smoothness, too), a value > 100
# will disable this feature completely
$antilag.cpu_tolerance = 20 # this value tells the script how many % of
# the CPU utilization change should be ignored
# If you change it too a higher value you,
# your Frame Rate will be more constant but
# smaller lags will be ignored.
$antilag.high_priority = true # set this to true if you want the game to run
# on high priority
$antilag.event = false # set this to true to enable normal anti-lag
end[\spoiler]
Тема заблокирована.
16 года 3 мес. назад - 16 года 3 мес. назад #30696
от roxie
вот, как устроен эвент, казалось бы всё должно быть шоколадно, но как только свитч с именем "intro02" меняет свое положение на ВКЛ - эвент сразу же срабатывает и выполняет callCommonEvent, он не дожидается пока будет нажата клавиша, в общем, как будто ему плевать на conditional branch.
Это глюк? или что-то не так? И еще раз попрошу, кто знает, как сделать тоже самое помощью скрипта @_@ спасибо заранее.
p.s. совсем забыл, версия - XP.
p.p.s. Разобрался, да, как писали выше, дело было в управлении, но всё же интересно про скрипт.
roxie ответил в теме Нужна помощь - вам сюда!
вот, как устроен эвент, казалось бы всё должно быть шоколадно, но как только свитч с именем "intro02" меняет свое положение на ВКЛ - эвент сразу же срабатывает и выполняет callCommonEvent, он не дожидается пока будет нажата клавиша, в общем, как будто ему плевать на conditional branch.
Это глюк? или что-то не так? И еще раз попрошу, кто знает, как сделать тоже самое помощью скрипта @_@ спасибо заранее.
p.s. совсем забыл, версия - XP.
p.p.s. Разобрался, да, как писали выше, дело было в управлении, но всё же интересно про скрипт.
Последнее редактирование: 16 года 3 мес. назад пользователем roxie.
Тема заблокирована.
16 года 3 мес. назад #30697
от Злодей
Злодей ответил в теме Нужна помощь - вам сюда!
ну убедись что все действия находятся внутри цикла кордитионал батча.
А не под.
То, что ХР - видно))
зачем тут функция Call common event??
А не под.
То, что ХР - видно))
зачем тут функция Call common event??
Тема заблокирована.
Время создания страницы: 0.267 секунд
