Позиция окна при запуске клиента?

Neo`

Свой человек
Участник
Старожил I степени
Сообщения
37
Розыгрыши
0
Репутация
0
Реакции
22
Баллы
545
Добрый день! Прошу вашей помощи, излазил все *.ini и так и не смог найти и понять можно ли как-то настроить координаты для того, чтобы клиент запускался всегда в одной позиции окна (находил параметр WindowPosition в l2.ini, но он не работает, окно все равно каждый раз запускается рандомно). При этом если запускать клиент сторонним лаунчером (например l2alone), то этот лаунтчер имеет такую фичу - запускать клиент с определенной позицией (вероятно лаунчер передает какие-то флаги клиенту при запуске). Помогите пожалуйста найти ответ на этот вопрос.
Заранее огромное вам спасибо!
 
Добрый день! Прошу вашей помощи, излазил все *.ini и так и не смог найти и понять можно ли как-то настроить координаты для того, чтобы клиент запускался всегда в одной позиции окна (находил параметр WindowPosition в l2.ini, но он не работает, окно все равно каждый раз запускается рандомно). При этом если запускать клиент сторонним лаунчером (например l2alone), то этот лаунтчер имеет такую фичу - запускать клиент с определенной позицией (вероятно лаунчер передает какие-то флаги клиенту при запуске). Помогите пожалуйста найти ответ на этот вопрос.
Заранее огромное вам спасибо!
option.ini если не ошибаюсь.
 
нет в option.ini таких опций :(
 
нет в option.ini таких опций :(
Попробуйте удалить этот фаил, зайти в игру, выставить все нужные настройки, перетянуть окно игры в нужное место и выйти. Затем опять зайти проверить.
 
Попробуйте удалить этот фаил, зайти в игру, выставить все нужные настройки, перетянуть окно игры в нужное место и выйти. Затем опять зайти проверить.
поробовал - не помогло
 
Если вы имеете в виду позиции окон в нутри ингры, тоесть статусбар, таргет статусвинд и тд и тп, то как минимум в хф за это отвечает файл "WindowsInfo.ini" Зайдите в игру, выставле все окна как вам удобно, после выйдите с игры нормальным способом и в своиствах этого файла поставте галочку на "Только чтение" 1720162938685.png
Если же после того как вы выставили окна как вам надо и после перезапуска они снова сбились, тогда перед тем как их выставлять убедитесь что это галочка не стоит.
 
Если вы имеете в виду позиции окон в нутри ингры, тоесть статусбар, таргет статусвинд и тд и тп, то как минимум в хф за это отвечает файл "WindowsInfo.ini" Зайдите в игру, выставле все окна как вам удобно, после выйдите с игры нормальным способом и в своиствах этого файла поставте галочку на "Только чтение" Посмотреть вложение 75452
Если же после того как вы выставили окна как вам надо и после перезапуска они снова сбились, тогда перед тем как их выставлять убедитесь что это галочка не стоит.
интересует не расположение окон внутри игры, а расположение окна самой игры после запуска
 
Возможно в апдейтере вызов самого l2.exe идет через WinAPI функцию CreateProcess или подобное, а там насколько помню в параметрах можно передать структуру с свойствами запуска, в которые входит и позиция окна создаваемого процесса.
 
интересует не расположение окон внутри игры, а расположение окна самой игры после запуска

За ради интереса, проверил, перемещает окно л2 в указанное место, далее уже можно извращаться как угодно.
 

За ради интереса, проверил, перемещает окно л2 в указанное место, далее уже можно извращаться как угодно.
Прошу простить меня, но не совсем понял к чему это. Писать отдельную утилю для перемещения окна л2? это не совсем то, чем хотелось бы заниматься, интересует именно расположение где хранится по-молчанию позиция окна l2 при запуске (ведь наверняка он берет её из ini).
 
Прошу простить меня, но не совсем понял к чему это. Писать отдельную утилю для перемещения окна л2? это не совсем то, чем хотелось бы заниматься, интересует именно расположение где хранится по-молчанию позиция окна l2 при запуске (ведь наверняка он берет её из ini).
В L2 всё приходится делать так как не хотелось.
У меня есть стойкое ощущение, что тебе придется прислушаться к тому что тебе говорят.

ведь наверняка он берет её из ini
Найди. Я не искал.
Однако предполагаю что L2 не сохраняет координаты XY окна на твоем экране и всегда открывает L2 не в той позиции в которой была закрыта игра.

Я могу ошибаться, тут много гуру клиента, которые расщепили л2 на атомы, они поправят.
 
Прошу простить меня, но не совсем понял к чему это. Писать отдельную утилю для перемещения окна л2? это не совсем то, чем хотелось бы заниматься, интересует именно расположение где хранится по-молчанию позиция окна l2 при запуске (ведь наверняка он берет её из ini).
Ну ты ж привел примером запуска в нужной позиции запуск через лаунчер. Как я выше и говорил - скорее всего клиент там запускается через CreateProcess, с задаванием именно в нем позиции окна клиента.
 
Ну ты ж привел примером запуска в нужной позиции запуск через лаунчер. Как я выше и говорил - скорее всего клиент там запускается через CreateProcess, с задаванием именно в нем позиции окна клиента.
Если не ошибаюсь, там процесс запускается с помощью ShellExecuteW, попробую порыть в эту сторону.

Ну ты ж привел примером запуска в нужной позиции запуск через лаунчер. Как я выше и говорил - скорее всего клиент там запускается через CreateProcess, с задаванием именно в нем позиции окна клиента.
Смущает один факт. Есть две сборки клиента Interlude, они открывают окна в разных местах (вы наверняка скажете, что l2.exe или l2.bin редактирован, но нет), если взять все *.ini пачкой и скопировать в другой клиент - они будут открывать окна в одинаковых местах. Соот-но в ini где-то хранится инфа о координатах позиции окна, но где - вопрос.
 
Кстати глянул - в новых клиентах позиция сохраняется.
За это отвечают значения параметров GamePlayViewportStartX и GamePlayViewportStartY из секции [Video] в option.ini
 
Кстати глянул - в новых клиентах позиция сохраняется.
За это отвечают значения параметров GamePlayViewportStartX и GamePlayViewportStartY из секции [Video] в option.ini
Это размер окна, а не позиция.
 
Добрый день! Прошу вашей помощи, излазил все *.ini и так и не смог найти и понять можно ли как-то настроить координаты для того, чтобы клиент запускался всегда в одной позиции окна (находил параметр WindowPosition в l2.ini, но он не работает, окно все равно каждый раз запускается рандомно). При этом если запускать клиент сторонним лаунчером (например l2alone), то этот лаунтчер имеет такую фичу - запускать клиент с определенной позицией (вероятно лаунчер передает какие-то флаги клиенту при запуске). Помогите пожалуйста найти ответ на этот вопрос.
Заранее огромное вам спасибо!
Как ниже ответили, логично что лаунчер выполняет функцию запуска окна клиента игры, соответственно он и может указать позицию создавшегося окна клиента игры, вам лишь требуется повторить функционал этого лаунчера , вот и все .
1.запуск
2.установка позиции

=)
Как то так.
 
Напиши сам или закажи кому то прожку для таких нужд

Также тебе поможет DxWnd
 
Больше интересно для чего это нужно) будто религия не позволяет самому перетащить окно))))
 
Назад
Сверху Снизу