Перейти к содержанию
Авторизация  
s1ngLe

Диалог Адептов

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

Подскажите пожалуйста, в каком файле находятся фразы Адептов ходящих по городам (ХФ хроники, сборка l2emu-ent), чтобы можно было изменить то, что они говорят в чат? В гугле ищу, пока без результатов

Изменено пользователем s1ngLe

Поделиться сообщением


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

это в их AI

АИ адептов нашел, прям в ява файле менять то что они должны говорить? В каком формате? Там сейчас так:

 

 

case 1:

npcStringId = NpcStringId.CLOUDS_OF_BLOOD_ARE_GATHERING_SOON_IT_WILL_START_TO_RAIN_THE_RAIN_OF_CRIMSON_BLOOD;

break;

case 2:

npcStringId = NpcStringId.WHILE_THE_FOOLISH_LIGHT_WAS_ASLEEP_THE_DARKNESS_WILL_AWAKEN_FIRST_UH;

break;

case 3:

npcStringId = NpcStringId.IT_IS_THE_DEEPEST_DARKNESS_WITH_ITS_ARRIVAL_THE_WORLD_WILL_SOON_DIE;

break;

case 4:

npcStringId = NpcStringId.DEATH_IS_JUST_A_NEW_BEGINNING_HUHU_FEAR_NOT;

break;

Поделиться сообщением


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

если хочеш дописывать свои фразы то тут уже нужно будет использовать

 

Functions.npcSay(actor, "");

 

 

и вписывать свой текст между ковычками

Изменено пользователем BrainEater
  • Upvote 1

Поделиться сообщением


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

если хочеш дописывать свои фразы то тут уже нужно будет использовать

 

Functions.npcSay(actor, "");

Свои фразы я не дописать хочу, а заменить те, которые сейчас Адепты говорят. Менять их, я так понял в папке АИ, в файле адептов? Меня смущает, что сейчас их фразы в АИ прописаны через npcStringId

 

в принципе сейчас по эксперементирую с двумя вариантами и после отпишу. если не получится

Изменено пользователем s1ngLe

Поделиться сообщением


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

Менять там. АИ прописаны через фразы клиента.

Чтобы вписать что то свое, нужно использовать простой String.

 

типа

String fr;

fr = new String("111");

  • Upvote 1

Поделиться сообщением


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

Менять там. АИ прописаны через фразы клиента.

Чтобы вписать что то свое, нужно использовать простой String.

 

типа

String fr;

fr = new String("111");

 

Я удалил все фразы что были прописаны в АИ и написал там свои. Но НПС все равно говорит старыми фразами. Получается он тянет их с какого то другого файла

Поделиться сообщением


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

public class Adepts extends L2NpcWalkerAI {

 

private static final int[] ADEPTS = {4309,4310,4311,4312};

private static final int SHOUT_DELAY = 8000;

private long _nextShoutTime = 0;

 

public Adepts(L2Character cha) {

super(cha);

}

 

protected void onEvtThink(){

super.onEvtThink();

 

/*

* Кричим на чаще, чем SHOUT_DELAY.

* Шанс введен для рандомайза времени криков.

*/

if (_nextShoutTime <= System.currentTimeMillis()){

if (Rnd.chance100(15)){

sayRndMsg();

_nextShoutTime = System.currentTimeMillis() + SHOUT_DELAY;

}

}

}

 

private void sayRndMsg()

{

L2Npc actor = getActor();

if(actor == null)

return;

 

NpcStringId npcStringId;

switch(Rnd.get(7))

{

case 1:

npcStringId = NpcStringId.CLOUDS_OF_BLOOD_ARE_GATHERING_SOON_IT_WILL_START_TO_RAIN_THE_RAIN_OF_CRIMSON_BLOOD;

break;

case 2:

npcStringId = NpcStringId.WHILE_THE_FOOLISH_LIGHT_WAS_ASLEEP_THE_DARKNESS_WILL_AWAKEN_FIRST_UH;

break;

case 3:

npcStringId = NpcStringId.IT_IS_THE_DEEPEST_DARKNESS_WITH_ITS_ARRIVAL_THE_WORLD_WILL_SOON_DIE;

break;

case 4:

npcStringId = NpcStringId.DEATH_IS_JUST_A_NEW_BEGINNING_HUHU_FEAR_NOT;

break;

case 5:

npcStringId = NpcStringId.AHH_BEAUTIFUL_GODDES_OF_DEATH_COVER_OVER_THE_FILTH_OF_THOS_WORLD_YOUR_DARKNESS;

break;

case 6:

npcStringId = NpcStringId.THE_GODDESS_RESURRECTION_HAS_ALREADY_BEGUN_HUHU_INSIGNIFICANT_CREATURES_LIKE_YOU_CAN_DO_NOTHING;

break;

default:

npcStringId = NpcStringId.A_BLACK_MOON_NOW_DO_YOU_UNDERSTAND_THAT_HE_HAS_OPENED_HIS_EYES;

break;

}

actor.broadcastNpcSay(npcStringId);

}

 

public static void main(String[] args)

{

AIManager.getInstance().registerAi(ADEPTS, Adepts.class);

}

 

}

 

 

 

 

Вот код без изменений. Для того чтобы НПС заговорил моими фразами я поменял после npcStringId = NpcStringId. предложения

Изменено пользователем s1ngLe

Поделиться сообщением


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

 

L2Npc actor = getActor();

if(actor == null)

return;

 

String npcStringId;

switch(Rnd.get(7))

{

case 1:

npcStringId = new String("текст"); // и так с каждым

break;

case 2:

npcStringId = NpcStringId.WHILE_THE_FOOLISH_LIGHT_WAS_ASLEEP_THE_DARKNESS_WILL_AWAKEN_FIRST_UH;

break;

case 3:

npcStringId = NpcStringId.IT_IS_THE_DEEPEST_DARKNESS_WITH_ITS_ARRIVAL_THE_WORLD_WILL_SOON_DIE;

break;

case 4:

npcStringId = NpcStringId.DEATH_IS_JUST_A_NEW_BEGINNING_HUHU_FEAR_NOT;

break;

case 5:

npcStringId = NpcStringId.AHH_BEAUTIFUL_GODDES_OF_DEATH_COVER_OVER_THE_FILTH_OF_THOS_WORLD_YOUR_DARKNESS;

break;

case 6:

npcStringId = NpcStringId.THE_GODDESS_RESURRECTION_HAS_ALREADY_BEGUN_HUHU_INSIGNIFICANT_CREATURES_LIKE_YOU_CAN_DO_NOTHING;

break;

default:

npcStringId = NpcStringId.A_BLACK_MOON_NOW_DO_YOU_UNDERSTAND_THAT_HE_HAS_OPENED_HIS_EYES;

break;

}

actor.broadcastNpcSay(npcStringId);

}

 

public static void main(String[] args)

{

AIManager.getInstance().registerAi(ADEPTS, Adepts.class);

}

 

}

 

 

попробуй так

  • Upvote 1

Поделиться сообщением


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

попробуй так

 

сделал вот так, один фиг нпс говорит старыми фразами

 

public class Adepts extends L2NpcWalkerAI {

 

private static final int[] ADEPTS = {4309,4310,4311,4312};

private static final int SHOUT_DELAY = 8000;

private long _nextShoutTime = 0;

 

public Adepts(L2Character cha) {

super(cha);

}

 

protected void onEvtThink(){

super.onEvtThink();

 

/*

* Кричим на чаще, чем SHOUT_DELAY.

* Шанс введен для рандомайза времени криков.

*/

if (_nextShoutTime <= System.currentTimeMillis()){

if (Rnd.chance100(15)){

sayRndMsg();

_nextShoutTime = System.currentTimeMillis() + SHOUT_DELAY;

}

}

}

 

private void sayRndMsg()

{

L2Npc actor = getActor();

if(actor == null)

return;

 

String npcStringId;

switch(Rnd.get(7))

{

case 1:

npcStringId = new_String("текст1");

break;

case 2:

npcStringId = new_String("текст2");

break;

case 3:

npcStringId = new_String("текст3");

break;

case 4:

npcStringId = new_String("текст4");

break;

case 5:

npcStringId = new_String("текст5");

break;

case 6:

npcStringId = new_String("текст6");

break;

default:

npcStringId = new_String("текст7");

}

actor.broadcastNpcSay(new_String);

}

 

public static void main(String[] args)

{

AIManager.getInstance().registerAi(ADEPTS, Adepts.class);

}

 

}

 

}

 

Поделиться сообщением


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

очень странно. А в статах {4309,4310,4311,4312}; вот этих нпц какое АИ стоит?

Поделиться сообщением


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

очень странно. А в статах {4309,4310,4311,4312}; вот этих нпц какое АИ стоит?

по идее это все 4 нпс Адепта, которые есть на сервере

 

где можно глянуть прописанный АИ для этих НПС? (сорри, я не шибко давно разбираюсь со сборками, только учусь)

Изменено пользователем s1ngLe

Поделиться сообщением


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

в статах нпц

Позже буду разбираться где прописаны эти диалоги. Спасибо за помощь и потраченное время,

Поделиться сообщением


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

Позже буду разбираться где прописаны эти диалоги. Спасибо за помощь и потраченное время,

в базе данных! таблица auto_chat_text

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...