A launcher for AdventureQuest Classic including some Quality of Life improvements.
I am not Artix Entertainment!
Now that I got your attention, I am a 3rd party developer unrelated to Artix Entertainment in any way, nor was this project endorsed by them.
This removes any responsibility for you using this launcher from Artix Entertainment.
Be sure you're completely aware of that before using it.
Thanks,
Nivp.
Same goes for me.
No warranties, guaranties, USE AT YOUR OWN RISK!
NOTE: It is a lot easier to just install a Ruffle plugin for your browser and use that to play AQ.
NOTE: Right now Ruffle has some issues with AQ.
- Enemies may go down to 1 HP, but don't actually die.
- Special triggers from monsters may persist across battles.
(Say, a monster reduces damage by 5. Next monster does the same, regardless of monster type / name.) - Over time, the game becomes slow / FPS goes down.
This is very noticeable in multiscreen mode.
These can be fixed by reloading the page / plugin and logging in again.
This version is safer.
I have used the Electron docs and changed some settings.
Of course as we are dealing with the web, it can never be safe.
After some digging, I don't think this project can be done without the use of Electron or something similar.
(i.e. only using a JS and a HTML file - making it a lot simpler)
Mostly because CORS.
In November 2023, I came across this launcher.
I have spent many hours to try to understand how it works and to update it.
This version kinda WORKS, but as it does not follow the electron security guidelines,
I would consider it UNSAFE.
"Electron embeds Chromium and Node.js to enable web developers to create desktop applications."
This application opened a Chromium browser tab and loaded the flash plugin into it with the right params to load AQ.
It could also open new tabs or for Multiscreen use one tab and load the flash plugin multiple times.
One could then package all this for multiple platforms.
However, you still needed to install Node.js and npm.
As flash is now considered dead, it would be a security risk to load a flash plugin.
More importantly as Chromium has dropped support for it,
you could only load it into an old Chromium version.
This of course would be a bigger risk...
BUT there is Ruffle.
It is a highly supported alternate plugin to play flash content.
You can just install it into your browser and play flash games again.
Some game sites load it automatically for you.
So I could have loaded the ruffle extension for Chromium into this project,
but that would have been harder and thankfully Ruffle can be loaded just like any other JS library.
(At this point, I thought, why use electron?
I could just as easily make a HTML file and a JS file that load Ruffle.
You could just open this in any browser.)
NOTE that drag and drop and isDev modules have been removed from the dependencies,
because they are old and may be vulnerable.
Also I have started to reorganize the project, which is only partially done.
I have mode parts of the JS code to the modules
directory.
Popop menu content (like war wins) is no longer working because the AQ website has changed.
This could be fixed, but of course you can just as well open a normal browser to check them...
(Popup wasn't a priority to get working again...)
Multiscreen works, but it seems that all game objects only use one CPU core,
so it becomes a slideshow at 4 screens...
Using 4 browser windows seems to do a bit better...
NOTE right now with Firefox the Ruffle plugin 'lingers' after closing the game tab.
This is using CPU unnecessarily.
(I mean instead of using this project.)
NOTE Ruffle is a WIP - work in progress.
There may be issues with playing flash content.
I have found that sometimes you can't kill a monster.
It will have 1 HP, no matter how long you hit it.
The only solution is to close the tab and start a new one, and then relogin to AQ.
This project uses the latest Ruffle.
Hopefully these problems will be fixed soon.
NOTE all this has ONLY been tested on Debian 12 linux.
First install Node.js (and npm).
Install this project with: (inside the downloaded project folder)
npm install
Start with:
npm start
Feature List:
- Automatically fetches most recent AQ version.
- Tabbed interface: load up several characters at the same time
- Multiscreen support: Open several AQ instances on the same tab
- Character page loader: Input a character ID and press "Go" to open it in new tab.
- Keyboard Shortcuts:
- F4 to clear cache
- F5 to refresh
- Ctrl+F5 to refresh and clear cache
- F11 toggle full screen
- Ctrl+Shift+I to open the Developer Console
- Menu icon for various AQ resources that open in a draggable window.
- Change the current tab's server to play on multiple servers or accounts.
Screenshots: https://imgur.com/a/QrbBoN2
npm install
Do note that per the Adobe Flash Player license agreement I can't distribute it, and you are therefore required to include it yourself in the resources folder. The most recent Flash version that doesn't include the Killswitch is 32.0.0.371. The plugins should be renamed as follows:
Linux 32-bit:
libpepflashplayer_32.so
Linux 64-bit:
libpepflashplayer_64.so
Windows 32-bit:
pepflashplayer_32.dll
Windows 64-bit:
pepflashplayer_64.dll
OS X:
PepperFlashPlayer.plugin
ARM Linux:
libpepflashplayer_armv7l.so
Windows has a script to automatically build for all available platforms:
./build.bat [version]
For example:
./build.bat 1.4.4
Otherwise run the same command as Linux for manually building for each platform.
npm run package-[platform]
Platforms: mac, win, win64, linux, linux64, linuxarmv7l
For example, building to Windows 64-bit would be:
npm run package-win64