azerothcore / azerothcore-wotlk

Complete Open Source and Modular solution for MMO
http://www.azerothcore.org
GNU Affero General Public License v3.0
6.46k stars 2.59k forks source link

Feature: headless client for World of Warcraft written in TypeScript and Deno #5878

Closed FrancescoBorzi closed 2 months ago

FrancescoBorzi commented 3 years ago

It would be nice to have a headless client written in TypeScript and Deno that is able to perform all the operations that the client normally does.

This would help in creating an e2e test suite for AzerothCore.

The same way there is Headless Chrome:

A headless browser is a great tool for automated testing and server environments where you don't need a visible UI shell.

it would be nice if there was Headless WoW so you can write automated tests and have the client login and perform some actions such as logging in, creating a character, accessing the world, engaging a fight with an NPC, etc...

I've never dug into wowser code myself, but probably contains something we can reuse or at least take inspiration from (it's WoW written in JavaScript that runs in a browser).

Kitzunu commented 3 years ago

https://github.com/novuscore/NovusCore-Headless not written in TS or Deno but could be cool to look at anyways

FrancescoBorzi commented 3 years ago

thanks @Kitzunu , I did not know that

https://github.com/novuscore/NovusCore-Headless not written in TS or Deno but could be cool to look at anyways

@Pursche @NixAJ why is it archived? are you no longer working on it or just moved elsewhere?

NixAJ commented 3 years ago

thanks @Kitzunu , I did not know that

https://github.com/novuscore/NovusCore-Headless not written in TS or Deno but could be cool to look at anyways

@Pursche @NixAJ why is it archived? are you no longer working on it or just moved elsewhere?

As you know we're writing our own client, which means we no longer need a separate client to achieve headless.

FrancescoBorzi commented 3 years ago

@NixAJ so basically the client can optionally be run in headless mode?

NixAJ commented 3 years ago

@NixAJ so basically the client can optionally be run in headless mode?

Not currently, but that functionality will be built in later

You could take the headless client and update it, it wasn't far from being properly useable

FrancescoBorzi commented 3 years ago

@NixAJ so basically the client can optionally be run in headless mode?

Not currently, but that functionality will be built in later

You could take the headless client and update it, it wasn't far from being properly useable

we can surely take inspiration from that one, but I still prefer TypeScript over C++ whenever performance is not a critical requirement as it's a language that is way simpler, more accessible and with a lot of tooling around it.

Kitzunu commented 2 months ago

Closing as it has nothing to do with the core