Jump to content

L2jRoboto - A Fake Player Engine


Elfo

Recommended Posts

On 03/02/2019 at 10:57, Elfocrash said:

L2jRoboto agora está completamente reescrito em Kotlin e parte do L2Extend.

 

Atualmente trabalhando no painel de controle do administrador no jogo para bots.

Começarei com coisas básicas como Nome, Nível e IA e ele ficará mais avançado com buffs, armaduras, armas e spawns e rotinas programadas.

 

https://i.imgur.com/XQBcKKd.gifv

 

What a sensational job. Congratulations, brother. Forgive me for my English. ^^

Link to comment
Share on other sites

  • 3 weeks later...

how to do random? chose of this code? 50/50% s grade armor a grade armor 
 

itemIds = Arrays.asList(6379, 6380, 6381, 6382, 858, 858, 889, 889, 920);
itemIds = Arrays.asList(547, 2382, 5768, 5780, 858, 858, 889, 889, 920);

 

Link to comment
Share on other sites

  • 2 months later...

Working on a complete rewrite of the engine. Nothing in terms of AI has changed yet but now it fundamentally works in a different way. Instead of having a single repeatable task iterating over all the players on an interval each players has their own thinking "task". I use quotation marks because it's not really a task or a thread and it's not using the threadpool. 

 

With an iteration speed of 200 milliseconds the bots can now think 5 times a second individually giving a way more fluid and realistic action speed.

 

In terms of performance, it has actually improved significantly. Here is an example with 1000 players fighting Valakas. I was barely getting one frame per second but the CPU load was averaging 2-4%.

 

u9jPRwp.png

 

Once I benchmark how far it can scale without any performance hits and settle on how low I can go on the iteration interval I will start rewriting the way the bots think as well.

  • Like 4
  • Upvote 2
Link to comment
Share on other sites

6 hours ago, Elfocrash said:

Trabalhando em uma reescrita completa do motor. Nada em termos de IA mudou ainda, mas agora funciona fundamentalmente de uma maneira diferente. Em vez de ter uma única tarefa repetível interagindo sobre todos os jogadores em um intervalo, cada jogador tem sua própria "tarefa" de raciocínio. Eu uso aspas porque não é realmente uma tarefa ou um segmento e não está usando o threadpool. 

 

Com uma velocidade de iteração de 200 milissegundos, os bots agora podem pensar 5 vezes por segundo individualmente, proporcionando uma velocidade de ação mais fluida e realista.

 

Em termos de desempenho, melhorou significativamente. Aqui está um exemplo com 1000 jogadores lutando contra Valakas. Eu mal estava recebendo um quadro por segundo, mas a carga da CPU estava na média de 2-4%.

 

u9jPRwp.png

 

Uma vez que eu benchmark até onde pode escalar sem qualquer acerto de desempenho e decidir sobre o quão baixo eu posso ir no intervalo de iteração vou começar a reescrever a maneira como os bots pensam também.

Sensational brother, what a fantastic job

Link to comment
Share on other sites

19 hours ago, Elfocrash said:

Working on a complete rewrite of the engine. Nothing in terms of AI has changed yet but now it fundamentally works in a different way. Instead of having a single repeatable task iterating over all the players on an interval each players has their own thinking "task". I use quotation marks because it's not really a task or a thread and it's not using the threadpool. 

 

With an iteration speed of 200 milliseconds the bots can now think 5 times a second individually giving a way more fluid and realistic action speed.

 

In terms of performance, it has actually improved significantly. Here is an example with 1000 players fighting Valakas. I was barely getting one frame per second but the CPU load was averaging 2-4%.

 

u9jPRwp.png

 

Once I benchmark how far it can scale without any performance hits and settle on how low I can go on the iteration interval I will start rewriting the way the bots think as well.

Amazing work Elfo, i didn't know you wree working on another engine until i read all the comments, i was adapting l2jroboto to work with low server rates, just for testing and was working great on acis 370.

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...
On 8/3/2019 at 5:55 PM, Elfocrash said:

Working on a complete rewrite of the engine. Nothing in terms of AI has changed yet but now it fundamentally works in a different way. Instead of having a single repeatable task iterating over all the players on an interval each players has their own thinking "task". I use quotation marks because it's not really a task or a thread and it's not using the threadpool. 

 

With an iteration speed of 200 milliseconds the bots can now think 5 times a second individually giving a way more fluid and realistic action speed.

 

In terms of performance, it has actually improved significantly. Here is an example with 1000 players fighting Valakas. I was barely getting one frame per second but the CPU load was averaging 2-4%.

 

u9jPRwp.png

 

Once I benchmark how far it can scale without any performance hits and settle on how low I can go on the iteration interval I will start rewriting the way the bots think as well.

 

Yeah the old engine could cause up to 20% of CPU usage after adapting Larger quantity and complex AI. I wonder how you make this optimized and great work again!

 

 

Link to comment
Share on other sites

On 2019. 8. 29. at 오후 12시 27분, ShinichiYao said:

 

예, 오래된 엔진은 대량의 복잡한 AI를 적용한 후 CPU 사용량의 최대 20 %를 유발할 수 있습니다. 이 최적화되고 훌륭한 작업을 다시 수행하는 방법이 궁금합니다!

 

 

Can you share your code? [H5]

Thank you

Link to comment
Share on other sites

Well my work is based on Elfocrash's code and the environment is original L2J Server H5 but its quite modified in both core and dp which adapted a lot of additional change such as skill rework and dressme system. And also as you see, my server is totally Chinese localization, its very difficult to separate the roboto part out of the entire server.

Link to comment
Share on other sites

38 minutes ago, ShinichiYao said:

내 작업은 Elfocrash의 코드를 기반으로하며 환경은 원래 L2J Server H5이지만 기술 재 작업 및 드레스 시스템과 같은 추가 변경을 많이 적용한 코어 및 dp 모두에서 상당히 수정되었습니다. 또한 보시다시피, 내 서버는 완전히 중국어 버전이므로 로봇 부분을 전체 서버에서 분리하기가 매우 어렵습니다.

 

I envy you.  i understand what you mean.

Thank you for your reply!

Link to comment
Share on other sites

  • 2 months later...

Hello guys, i have some issue: 

I use the server files from Fandc/ro-team H5 L2Ava (compiled files), and i want to use the L2Roboto mod and  some years ago it was simpler to install it manually but now i can't remember how to install because i don't find the java file to put on the list my files and get start on sv console. 

 

Can someone please help me put it on track, thank you in advance.

 

 

 

Link to comment
Share on other sites

  • 2 weeks later...

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now



×
×
  • Create New...