При смене языка в клиенте меняем язык сервера

  • Автор темы Автор темы ids
  • Дата начала Дата начала
Сервер пытался получить чтото, но я упустил после чего имено

[22:32:54] WARN Direct access to bypass: set_Language en / IN_GAME IP: 192.168.0.222 Account: wwww Player : gsdf[268477405]
[22:33:09] WARN Direct access to bypass: set_Language en / IN_GAME IP: 192.168.0.222 Account: wwww Player : gsdf[268477405]
[22:35:17] WARN Direct access to bypass: set_Language en / IN_GAME IP: 192.168.0.222 Account: wwww Player : gsdf[268477405]

Мысль я твою поймал, спасибо, какой то результат есть.
[23:04:44] WARN Direct access to bypass: bypass -h user_cfg lang en / IN_GAME IP: 192.168.0.222 Account: qqqq Player : IDS[268477035]
Просто при выборе языка не шлется ничего, я создал во имя експеримента КНОПКУ "GameOKBtn" в настройках
1Видео
2Звук
3Игра
"GameOKBtn" При нажатии на батон как раз и отправляется пакет. Проблема в том что я так понял сервер ругается на етот байпас с клиета
 
Последнее редактирование модератором:
В файле RequestBypassToServer.java необходимо указать серверу, что делать с этим пакетом. У меня есть только исходный Мебиуса , я думаю, что логика работы везде одинакова.

RequestBypassToServer.java
Java:
private static final String[] _possibleNonHtmlCommands = {
  "_bbs",
  "bbs",
  "_mail",
  .......................
  .......................
  .......................
  "set_Language"
};

protected void runImpl() {
  .......................
  .......................
  .......................

  // Клиент  RequestBypassToServer("set_Language");
  if(_command.startsWith("set_Language")) {

      String _Language = String.valueOf(_command.replace("set_Language", "")).trim();

      player.sendMessage("ServerBypass : Language = " + _Language);

    }
    .......................
    .......................
    .......................
}

Если все сделаешь правильно в результате в чате игры получишь этот текст

 
Реакции: ids
BIT_hack Добрался уже и до Java ?
 
Думаю самый простой вариант будет в интерфейсе сделать так:
Скрытое содержимое доступно для зарегистрированных пользователей!


На сервере просто сделать toggle и все.
 
Я тоже так делал, но, по-моему, эти команды отправляются через чат, а за это можно получить бан чата в игре)

[23:04:44] WARN Direct access to bypass: bypass -h user_cfg lang en / IN_GAME IP: 192.168.0.222 Account: qqqq Player : IDS[268477035]
Если у тебя на сервере уже есть эта команда bypass -h user_cfg lang en поищи ее в исходниках и посмотри как она работает, после отошли на сервер правильный bypass.
Здесь есть более опытные ребята знающие сборки серверов, возможно, они тебе помогут.
 
Конечно, имено етих две команды и меняют язык
 
не понимаю, ранее ты писал что хочешь сам разобраться, а по итогу ты даже не догадался заменить байпасс на свой, который отвечает за смену языка, это точно попытка разобраться, а не "сделайте за меня"?
 
Реакции: Rolo
У меня сборка от Dizera я так понимаю сам я ее не копну!
ето займет некоторое время, что бы дизер вписал ето
 
altsettings.properties:
XML:
AltSimpleBypassAllowed = _mrsl,_diary,_match,manor_menu_select,bypass -h npc_%objectId%_lang ru,bypass -h npc_%objectId%_lang en,_olympiad,_dispel
догадаешься какой байпасс нужен?
 
на форуме люцеры есть бразилец который продаёт интерфейс, у него там прикручен автофарм не через байпассы а через команды, недавно мне пишет чел который купил его поделие за 150$, типа помоги что то сделать у игроков банчата вечный
 
На самом деле нет, ведь это как если бы в чат например . menu


Можно настроить на отдельные .menu и прочее по другому.

Варианты есть как сделать в любом случае
 
нет такого конвига, но есть типа
пакет фильтр
<packetByName name="RequestBypassToServer">
<limit count="1" perMs="100">
<log format="Player %user_name%/%account_name%[%ip%/%hwid%] limit RequestBypassToServer"/>
<actionFailed/>
<!-- <drop/> -->
<!-- <kick/> -->
</limit>
</packetByName>
 
значит у тебя версия старая и через интерфейс получить доступ к байпассу не получится
 
Пол года не обновлялся примерно, не нужно было
тогда конкретно к языковым байпассам доступ должен быть

bypass -h npc_%objectId%_lang ru
bypass -h npc_%objectId%_lang en
 
Перечитал я его тему с 166 protocpl. и я так понял ето для 166 протокола, чтобы кнопки переключения были видны не в самой html
а в углу окна по байпасам

USE_HTML_LOCALIZATION_BUTTON=true при значени tru
RU_HTML_LANGUAGE_BYPASS=example_bypass_switch_ru
EN_HTML_LANGUAGE_BYPASS=example_bypass_switch_en


У меня есть байпасы, но они не предназначены переключать язык аж там.
1.bypass -h npc_%objectId%_lang en
2.bypass -h user_cfg lang en
Они работаут в структуре html
<html>
<title>Cfg</title>
<table width=260>
<tr>
<td width=140>Language:</td>
<td width=30>%lang%</td>
<td width=30><button width=30 height=15 back="L2UI_CH3.bigbutton2_down" fore="L2UI_CH3.bigbutton2" action="bypass -h user_cfg lang en" value="En"></td>
<td width=30><button width=30 height=15 back="L2UI_CH3.bigbutton2_down" fore="L2UI_CH3.bigbutton2" action="bypass -h user_cfg lang ru" value="Ru"></td>
<td width=30></td>
</tr>
</table>
</body>
</html>

Умення interlude
 
И ладно еще с моим байпасом bypass -h user_cfg lang ru
так меня и не пускает даже с bypass _bbshome
WARN Direct access to bypass: bypass _bbshome / IN_GAME IP: 192.168.0.222 Account: qqqq Player : IDS[268477035]
 
причем здесь interlude/classic и вообще кнопки, кнопки просто делают вызов байпасса, разницы нет откуда его вызывать
дизер сделал путаницу с словом bypass конкретно в смене языка
что бы вызвать _bbshome нужно написать просто RequestBypassToServer("_bbshome"); а не RequestBypassToServer("bypass _bbshome");
но вероятно ничего не выйдет, так как для кб отдельный фильтр байпассов (в новой реве)
для смены языка просто посылай RequestBypassToServer("bypass -h npc_%objectId%_lang ru"); / RequestBypassToServer("bypass -h npc_%objectId%_lang en");
 
И так, (методом експеримента)при отправки пакетов
_bbsclan
_bbshome
function LanguageToServer() {
local int SelectedIndex;
SelectedIndex = class 'UIAPI_COMBOBOX'.static.GetSelectedNum("OptionWnd.LanguageBox");
if (0 == SelectedIndex) RequestBypassToServer("_bbsclan");
if (1 == SelectedIndex) RequestBypassToServer("_bbshome");
}
Работает, а при смене языка еще нет
 
обновись
 
Реакции: ids

    ids

    Баллов: 1
    Помог
Данный сайт использует cookie. Вы должны принять их для продолжения использования. Узнать больше…