Перейти к содержанию

Multi Language System


Рекомендуемые сообщения

Доброго времени суток!

Ребята, такой у меня вопрос :

Я как-то очень давно видел на каком-то интернациональном сервере такую фишку - заходишь на сервер, тебе выбивает окно "Выберите язык" и там на выбор, ну например, русский и английский. Выбираешь, например, русский язык и все НПЦ в игре становились на русском языке, аналогично с английским.

Реально как-то это воплотить в жизнь? Как это сделать? И если кто-то знает как, и готов заняться, то укажите стоимость, закажу.

Спасибо :-)

Ссылка на комментарий
Поделиться на другие сайты

Однако, тс вы обладаете годным чувством юмора.

Ничего юморного в своём посте я не нахожу.

Не обладаете информацией - не бузите.

Я спрашиваю, реально ли это осуществить, ибо когда-то я это видел.

Ссылка на комментарий
Поделиться на другие сайты

Ну извини. То что ты называешь системой есть дело о трех скриптах, первый срабатывает при первом появлении чара после создания и создает переменную уровня персонажа. Второй позволяет изменить язык и ставится во всех городах, исправляя переменную уровня персонажа. Третий скрипт представляет собою строки типа "если переменная такая то "выбор кейса" " и дальше в зависимости от переменной стартует текст любого нпс отталкиваясь от переменной персонажа и в каждом кейсе свой текст. Вся работа сводится к переделке всех действующих нпсов и дублировании текстов(оптимально просто дублировать весь скрипт нпса но с разными языками).

Вот я и пишу что это смешно, лично мне, так как это банальный скриптинг начального уровня не требующий никаких знаний. А все что можно нагородить сверху выше изложенной схемы по мне извращение.

Максимум что можно сделать для удобства, это написать функцию на уровне сорцов и внедрить новую команду(@leng), которая будет изменять переменную уровня персонажа(например заранее указать ее равную 200000000) уменьшая ее или увеличивая(200000000+-N), а первый скрипт сделать вообще глухим без какого либо интерфейса.

Грубо говоря сия система есть зацикленный бесконечный квест :P

Изменено пользователем Nezdeshniy
  • Upvote 2
Ссылка на комментарий
Поделиться на другие сайты

Соглашусь с Nezdeshniy Примеры:

При входе в игру.

prontera,0,0,0 script OnPCLoginEvent2 -1,{

OnPCLoginEvent:

mes "Choose your language.";

mes "Выберите ваш язык.";

switch(select("Русский.:English.")) {

case 1:

set #lang, 1;

mes "Приятной игры!";

break;

case 2:

set #lang, 2;

mes "Enjoy the game!";

close;

}

end;

}

НПС.

set .npc$,"[bloody Branch]";

mes .npc$;

if (#lang == 1) {

mes "Я могу сделать для тебя";

} else {

mes "I can do for you";

}

mes "^FF0000Bloody Branch^000000";

next;

mes .npc$;

mes "10 Dead branch = 1 Bloody branch";

if (#lang == 1) {

if(select("Я согласен.:Пожалуй откажусь.")==2){ close; }

} else {

if(select("I Agree.:Cancel.")==2){ close; }

}

p.s. Написал на скорую руку.

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Давным-давно я думал на эту тему. Хотел сделать подобную мультиязычность у себя. Хотел сделать отдельными файлами, а-ля, eng_phrases.txt и ru_phrases.txt в которых бы содержались массивы с текстом внутри, где индексом служил бы выбранный язык.

Что-то вроде:


setarray $@HealerHi$[0], "Hi, I can heal you!";
setarray $@HealerHi$[1], "Привет! Я могу тебя похилить";
================================================
mes $@HealerHi$[#lang];

Чтобы удобнее было потом, мало ли, переводить на другие языки и т.п. Ну как в том же Flux'е сделано, примерно.

Но выяснилось, что в память при работе сервера загружается ограниченное количество временных серверных переменных. Ну а городить подобные блоки в каждом скрипте и, *тьфу-тьфу-тьфу*, ужас, что написан постом выше я уже не захотел. Была мысль еще использовать базу данных, но и от нее я отказался.. Такие дела (:

Ссылка на комментарий
Поделиться на другие сайты

http://www.ragnarokeurope.com

евроофф, язык выбирается до выбора чара

Разницы нету когда, за это все равно отвечает переменная уровня персонажа, без вариантов.

Ссылка на комментарий
Поделиться на другие сайты

Доброго времени суток!

Ребята, такой у меня вопрос :

Я как-то очень давно видел на каком-то интернациональном сервере такую фишку - заходишь на сервер, тебе выбивает окно "Выберите язык" и там на выбор, ну например, русский и английский. Выбираешь, например, русский язык и все НПЦ в игре становились на русском языке, аналогично с английским.

Реально как-то это воплотить в жизнь? Как это сделать? И если кто-то знает как, и готов заняться, то укажите стоимость, закажу.

Спасибо :-)

Это даже в еамоде уже реализованно...осталось лишь использовать переменную #LANGTYPE 0,1, чтобы выводить инфу в нпс...

Ссылка на комментарий
Поделиться на другие сайты

http://www.ragnarokeurope.com

евроофф, язык выбирается до выбора чара

Разницы нету когда, за это все равно отвечает переменная уровня персонажа, без вариантов.

Да? Если ты при создании аккаунта указываешь язык - у тебя еще ни одного персонажа не создано, нету переменных персонажа.. Тогда используется переменная, привязанная к аккаунту.

Ссылка на комментарий
Поделиться на другие сайты

  • 3 месяца спустя...

Подскажите, как сделать чтобы к акаунту можно было привязать язык.Например при регистрации человек выбирает язык,(занести в базу например lang) и потом в игре нпс мог считать с базы параметр lang.

Регистрацию и в базу я добавлю параметр lang, вопрос как в игре считывать/реализовать это?

p/s что бы человек не при каждом логине выбирал язык, а 1 раз при создании аккаунта или персонажа выбрал и всё.Как пол или имя...

Ссылка на комментарий
Поделиться на другие сайты

Это уже обсуждалось, если вы реализуете выбор языка к примеру на сайте, это ничего не даст. В любом случае в игре придется делать множество проверок (Запросов в базу), что не есть зер гуд.

Ссылка на комментарий
Поделиться на другие сайты

Это уже обсуждалось, если вы реализуете выбор языка к примеру на сайте, это ничего не даст. В любом случае в игре придется делать множество проверок (Запросов в базу), что не есть зер гуд.

Зачем к бд кучу запросов? Делайте запись в переменную аккаунта и всё. Выше уже писали. В самих скриптах идея с созданием массивов с текстом даже очень интересная.

Ссылка на комментарий
Поделиться на другие сайты

Интересная, но Кеник вроде как пытался, и ничего не вышло. А про БД, это ответ именно к посту выше моего, ведь его автор намеревался именно через запросы =)

Изменено пользователем Киря ----
Ссылка на комментарий
Поделиться на другие сайты

вот сли в игре устанавливаешь значение #lang=1 То в базе

account_id key index value

2000001 #lang 0 1

Следовательно, могу ли я при регистрации в эту же таблицу добавить номер аккаунта зарегистрированного и ему уже значение #lang занести в таблицу.

Изменено пользователем maxmum
Ссылка на комментарий
Поделиться на другие сайты

вот сли в игре устанавливаешь значение #lang=1 То в базе

account_id key index value

2000001 #lang 0 1

Следовательно, могу ли я при регистрации в эту же таблицу добавить номер аккаунта зарегистрированного и ему уже значение #lang занести в таблицу.

Можешь.

Ссылка на комментарий
Поделиться на другие сайты

При регистрации идёт вставка нового пользователя.

Потом идёт запрос по логину определить account_id

Потом делаем вставку в таблицу acc_reg_num_db

account_id который приходит с запроса выше, #lang и значение, которое приходит с формы post.

Вроде бы так)

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...
Яндекс.Метрика