Thousands of games needing testing

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

User avatar
dreammaster
ScummVM Developer
Posts: 468
Joined: Fri Nov 04, 2005 2:16 am
Location: San Jose, California, USA

Thousands of games needing testing

Post by dreammaster »

We're finally ready to unleash the motherlode onto the public for testing. The AGS engine has had many freeware games released over the years, as well as quite a few commercial games as well. Keep in mind that, like the stand-alone AGS interpreter the engine is derived from, only AGS games from 2.5 onwards are supported.

So if any of you are interested, try downloading some freeware games from The AGS website. You will need a daily development build. As always, please submit the bug reports to our issue tracker. It would also be helpful to let us know in the #engine-ags Discord channel which games you finish testing.
GateKeeper
Posts: 27
Joined: Thu Dec 14, 2017 10:40 am

Re: Thousands of games needing testing

Post by GateKeeper »

dreammaster wrote: Sun Apr 04, 2021 6:05 pm We're finally ready to unleash the motherlode onto the public for testing. The AGS engine has had many freeware games released over the years, as well as quite a few commercial games as well. Keep in mind that, like the stand-alone AGS interpreter the engine is derived from, only AGS games from 2.5 onwards are supported.

So if any of you are interested, try downloading some freeware games from The AGS website.
This is fantastic news!

Is there a way to tell which game uses which AGS version?
I don't think that's mentioned on the AGS site? So it's really just trial and error, unless you try to narrow it down based on the release dates?

There are also tons of games that are not freeware, or are freeware but not listed on the AGS site. Is there some specific reason why only freeware from the AGS site is included in this?
User avatar
dreammaster
ScummVM Developer
Posts: 468
Joined: Fri Nov 04, 2005 2:16 am
Location: San Jose, California, USA

Re: Thousands of games needing testing

Post by dreammaster »

GateKeeper wrote: Wed Apr 07, 2021 6:35 pm This is fantastic news!

Is there a way to tell which game uses which AGS version?
Not currently, but it may be useful information, so I'll look into adding a debugger command to give a running game's version. Good idea.
GateKeeper wrote: Wed Apr 07, 2021 6:35 pm I don't think that's mentioned on the AGS site? So it's really just trial and error, unless you try to narrow it down based on the release dates?

There are also tons of games that are not freeware, or are freeware but not listed on the AGS site. Is there some specific reason why only freeware from the AGS site is included in this?
Testing of commercial games is included in this; it's just obviously easier for users to get hold of the freeware games if they're interested in testing. Internally, we've already had some testing of the Blackwell games series that went well. If you're interested, have a look at the engine's master detection list for all the games we currently know about. The file is separated into separate lists for pre-2.5 games that definitely aren't supported, 2.5+ commercial games, freeware games, and demos. So basically, anything with an UNSUPPORTED isn't supported by this engine, but everything else should be supported in theory.
User avatar
criezy
ScummVM Developer
Posts: 804
Joined: Sat Sep 23, 2006 10:41 am
Location: West Sussex, UK

Re: Thousands of games needing testing

Post by criezy »

dreammaster wrote: Wed Apr 07, 2021 11:51 pm
GateKeeper wrote: Wed Apr 07, 2021 6:35 pm This is fantastic news!

Is there a way to tell which game uses which AGS version?
Not currently, but it may be useful information, so I'll look into adding a debugger command to give a running game's version. Good idea.
The AGS version is actually printed to the terminal/console when you start an AGS game in ScummVM. If you are not running ScummVM from the command line (or if you are on Windows and the output is suppressed), you can check if it is added to the ScummVM log file (I suspect it might not, but I didn't check).

I understood the original question differently though. If you want to know before adding the game to ScummVM if it has a chance of being supported, the AGS version is included in the game data file, and would be fairly easy to extract. On Linux/macOS you can for example use the 'strings' command to see all the strings in the executable, or you can use an hex editor to search for a string. The version is close after the string "Adventure Creator Game File v2".
GateKeeper
Posts: 27
Joined: Thu Dec 14, 2017 10:40 am

Re: Thousands of games needing testing

Post by GateKeeper »

OK, I found some time for a very short and small scale test.

Overall, it looks very promising. This makes ScummVM at least 1000 times better than it already is! :D

Anyway, I tested some random games that I had readily available from relatively recent playthroughs, and here are some obsevations. Everything was tested with Windows 10 and ScummVM daily build running with console enabled.

Adventures of Max Fax
The game is properly recognised and seems to be running fine. Saving and loading works.


La Croix Pan
The game is properly recognised and seems to be running fine. Saving and loading works. Some texts (like pressing F1 for instructions) looked a bit smudgy, I don't know if that's a settings issue of some kind, but the texts look quite clear when running the game exe without ScummVM.


The Rail
Adding the game causes an error message to appear:

Code: Select all

The game in 'The Rail\' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the ags engine: ags-fallback

  {"Rail.exe", 0, "973f6b65820ca1f4e19704a49be99d76", 23852280},
If I interpret the console correctly, it's 3.2.0 version.
The game appears as Adventure Game Studio Game in the menu view, and starting the game from the menu will start the game. The game will show introductions and the first room, but when moving to the second room it crashes with a Microsoft Visual C++ Runtime Library error message:

Code: Select all

Assertion failed!
Program: scummvm.exe
File: soundclip.cpp
Line: 44
Expression: str

Bear in Venice
Adding the game causes an error message to appear:

Code: Select all

The game in 'Bear in Venice\' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the ags engine: ags-fallback

  {"Bear in Venice.exe", 0, "7d2c5cddcac88662b24165b3a0dd77c9", 20615211},
If I interpret the console correctly, it's 3.4.1.15 version.
The game appears as Adventure Game Studio Game in the menu view, and starting the game from the menu will start the game. The game will run, and I didn't notice any real errors, but it's very slow and sluggish making it very difficult to play due to its unresponsiveness.


The Antidote
(This is a commercial game that is not listed on AGS site. One of my favourite AGS games, actually.)
Adding the game causes an error message to appear:

Code: Select all

The game in 'The Antidote\' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the ags engine: ags-fallback

  {"The Antidote.exe", 0, "4017d881af6467d6aad9183e6e38a261", 325819947},
If I interpret the console correctly, it's 3.4.1 (5) version.
The game appears as Adventure Game Studio Game in the menu view, and starting the game from the menu will start the game. The game will run, and I didn't notice any real errors, but it's very slow and sluggish making it very difficult to play due to its unresponsiveness. Saving and loading seems to be working too.


King of Rock (or The King of Rock in Riding the Wild Wind as the game title screen has it)
If I interpret the console correctly, it's 2.60 version.
The game appears as AGS MI3 in the menu view, and starting the game from the menu will start the game. NOTE: this is one of the buggiest AGS games, quite literally every line has a spelling error or several in the game, the protagonist keeps partially clipping through walls, and there are problems with hotspots and so on, all this when running the game "normally". ScummVM seems to be replicating that behaviour quite right, so presumably it works quite well!
Trying to save the game in ScummVM causes an error message and crash though:

Code: Select all

An internal error has occurred. Please note down the following information. 
(ACI version 3.0.0.0)

Error: save game directory overflow

NES Quest
The game is properly recognised. Trying to run the game will briefly splash the first title screen, and the game crashes with the following Microsoft Visual C++ Runtime Library error message:

Code: Select all

Assertion failed!
Program: scummvm.exe
File: soundclip.cpp
Line: 44
Expression: str

That was all that I had time for, not quite thousands of games, but hope that is of some help.
I don't know if these are known issues or not, I didn't check any bug reports, I did check that recognised games list though, and what gets recognised and what doesn't seems to be following that.
User avatar
criezy
ScummVM Developer
Posts: 804
Joined: Sat Sep 23, 2006 10:41 am
Location: West Sussex, UK

Re: Thousands of games needing testing

Post by criezy »

GateKeeper wrote: Sat Apr 10, 2021 5:11 pm Some texts (like pressing F1 for instructions) looked a bit smudgy, I don't know if that's a settings issue of some kind, but the texts look quite clear when running the game exe without ScummVM.
Initially we were always using antialiasing to draw text with TTF fonts. This was changed two days ago to respect by default the AA option set by the game (and there is now a user option to force using antialiasing). If you used an older build for that test that might be the reason.
GateKeeper wrote: Sat Apr 10, 2021 5:11 pm

Code: Select all

  {"Rail.exe", 0, "973f6b65820ca1f4e19704a49be99d76", 23852280},
  {"Bear in Venice.exe", 0, "7d2c5cddcac88662b24165b3a0dd77c9", 20615211},
  {"The Antidote.exe", 0, "4017d881af6467d6aad9183e6e38a261", 325819947},
Thank you. Those have been added now.
GateKeeper wrote: Sat Apr 10, 2021 5:11 pm

Code: Select all

Assertion failed!
Program: scummvm.exe
File: soundclip.cpp
Line: 44
Expression: str
We received similar bug reports already. There is probably something wrong with the way we handle sound clips in ScummVM.
GateKeeper wrote: Sat Apr 10, 2021 5:11 pm but it's very slow and sluggish making it very difficult to play due to its unresponsiveness.
We are aware that the performances of the AGS engine in ScummVM is not optimal and that some games are slow. Hopefully this is something we will be able to improve.
Kirtai
Posts: 3
Joined: Sat Apr 10, 2021 10:00 pm

Re: Thousands of games needing testing

Post by Kirtai »

Hey, thanks for adding this engine. I spent some time a while ago trying to get some commercial AGS games to work on self compiled engines. Glad to see I don't need to fight with that any more :)

I did a quick test with some commercial games I have and got the following results.

All of them produced the following:

Code: Select all

WARNING: channel 2 - same clip assigned
The following loaded and ran through the beginning:
  • Blackwell 1-3 & 5
    Gemini Rue
    Heroine's Quest
    Primordia
    Resonance
    Shardlight
All from GOG other than Heroine's Quest which is from Steam.


The following had problems:
  • Blackwell 4
    Technobabyon
They crashed after a while with the error

Code: Select all

scummvm: backends/fs/posix/posix-fs.cpp:132: virtual AbstractFSNode* POSIXFilesystemNode::getChild(const Common::String&) const: Assertion `!n.co
ntains('/')' failed.
They also immediately resized their window to a much taller one than I was expecting for games that had vertical resolutions of 400 or 480 pixels.

Blackwell 4 & 5 were also very sluggish on my laptop.

This was with a self compiled

Code: Select all

ScummVM 2.3.0git15051-ga419212336 (Apr 10 2021 22:20:24)
on Kubuntu 20.10.
User avatar
legluondunet
Posts: 38
Joined: Fri Jan 30, 2015 9:24 am

Re: Thousands of games needing testing

Post by legluondunet »

Hello,
I just tested quickly this games:

King's Quest I: Quest for the Crown (AGDI remake)
Maniac Mansion Deluxe - AGS
Quest for Glory II: Trial By Fire [ADGI Remake]

I saw no issue.

Some errors messages through (I kept only error messages from terminal log):

--> King's quest I AGD remake:

Code: Select all

WARNING: TODO: SetCurrentDirectory: ./!
WARNING: font 'agsfnt12.wfn' has mistakes in data format, some characters may be displayed incorrectly
WARNING: TODO: video_on_gfxmode_changed!
WARNING: channel 2 - same clip assigned
WARNING: channel 2 - same clip assigned
--> Maniac Manson Deluxe:

Code: Select all

WARNING: TODO: video_on_gfxmode_changed!
WARNING: channel 2 - same clip assigned
WARNING: TODO: get_palette!
WARNING: TODO: get_palette!
WARNING: TODO: get_palette!
WARNING: TODO: get_palette!
--> Quest for glory II ADG remake:

Code: Select all

WARNING: TODO: SetCurrentDirectory: ./!
WARNING: File::open: 'speech.vox' does not exist!
WARNING: TODO: video_on_gfxmode_changed!
WARNING: channel 2 - same clip assigned
WARNING: File::open: 'Qfg2vga.010' does not exist!
WARNING: File::open: 'g2vga.011' does not exist!
User avatar
Raziel
ScummVM Porter
Posts: 1354
Joined: Tue Oct 25, 2005 8:27 am
Location: a dying planet

Re: Thousands of games needing testing

Post by Raziel »

@dreammaster

Awesome and finally, thanks a lot :-)

I know this is an engine in development, but since a few days i get this and no game starts (i tried withSQ: Decision of the Elders and A Son of Xenon)
Looking for a plugin supporting this target... Adventure Game Studio
Initializing allegro
Initializing game data
WARNING: TODO: SetCurrentDirectory: ./!
Common::Array: failure to allocate 201326592 bytes!
Debugger started, type 'exit' to return to the game.
Type 'help' to see a little list of commands and variables.
ERROR: Common::Array: failure to allocate 201326592 bytes!
And yes, i have over 1 GB of free RAM available.
This is on Big Endian AmigaOS4 (SDL2)

It's a regression, because four or five days agao i was able to run the game
User avatar
criezy
ScummVM Developer
Posts: 804
Joined: Sat Sep 23, 2006 10:41 am
Location: West Sussex, UK

Re: Thousands of games needing testing

Post by criezy »

@Raziel would you be able to get a backtrace or bisect to find the commit that introduced this regression?
I looked at the changes we made to the AGS engine in the past week and I don't see any obvious culprit for such a regression.
User avatar
Raziel
ScummVM Porter
Posts: 1354
Joined: Tue Oct 25, 2005 8:27 am
Location: a dying planet

Re: Thousands of games needing testing

Post by Raziel »

criezy wrote: Sun Apr 11, 2021 4:33 pm @Raziel would you be able to get a backtrace or bisect to find the commit that introduced this regression?
I looked at the changes we made to the AGS engine in the past week and I don't see any obvious culprit for such a regression.
I feared you ask for bisect :-(

I can only do manualbisection, which means downloading, building, testing, until i find it...if i have the energy, i'll try to pinpoint it
User avatar
Raziel
ScummVM Porter
Posts: 1354
Joined: Tue Oct 25, 2005 8:27 am
Location: a dying planet

Re: Thousands of games needing testing

Post by Raziel »

criezy wrote: Sun Apr 11, 2021 4:33 pm @Raziel would you be able to get a backtrace or bisect to find the commit that introduced this regression?
I looked at the changes we made to the AGS engine in the past week and I don't see any obvious culprit for such a regression.
Sorry, no regression.
Was testing a game from a different engine, my bad.

Genuine error.

It normally stops at
WARNING: TODO: SetCurrentDirectory: ./!
the failure to allocate is one out of five
User avatar
Alien Grey
Posts: 50
Joined: Thu Sep 18, 2014 1:12 pm
Location: Belgium

Re: Thousands of games needing testing

Post by Alien Grey »

I didn't expect that to happen so sson. This is awesome. :D

Space Quest Minus 1 - Decisions of the Elders, Space Quest - A Son Of Xenon, Space Quest 2 VGA Remake, Space Quest IV.5, Space Quest - Vohaul Strikes Back and Space Quest - Incinerations are all working with the ScummVM AGS engine. 8)
GateKeeper
Posts: 27
Joined: Thu Dec 14, 2017 10:40 am

Re: Thousands of games needing testing

Post by GateKeeper »

OK, I found a little time for a new round of testing.

La Croix Pan

The earlier font issue is no longer there, but fonts are still wrong.
For instance, v is not symmetrical and forward slash is so flat that it's more like a hyphen.


The Rail

The earlier crashing seems to be at least partially fixed, and the game continues in the second room, saving and loading works too.
Something is still wrong though, because after entering the second room there is a non-stop warning message repeating in the console, but at least the game seems to work regardless of that.


NES Quest

The earlier behaviour where the game crashed with the same error message as with The Rail seems to be fixed. There are some warning messages appearing in the console, but not in an endless loop like in The Rail. The game works, and saving and loading works too.


King of Rock

The earlier problem with saving seems to be fixed, as saving and loading works now without any problems.


The Shaft

Adding the game causes an error message to appear:

Code: Select all

The game in 'The Shaft\' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the ags engine: ags-fallback

  {"TheShaft.exe", 0, "7ddb9e776648faed5a51170d087074e9", 24992168},
If I interpret the console correctly, it's 3.4.1.15 version.
The game appears as Adventure Game Studio Game in the menu view, and starting the game from the menu will start the game. The game will run, saving and loading works too.


Echoes of Terra

Adding the game causes an error message to appear:

Code: Select all

The game in 'Echoes of Terra\' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the ags engine: ags-fallback

  {"echoes.exe", 0, "a524cbb1c51589903c4043b98917f1d9", 42866707},
If I interpret the console correctly, it's 3.1.2 version.
The game appears as Adventure Game Studio Game in the menu view, and starting the game from the menu will start the game. The game will run, saving and loading works too.


Clotilde Soffritti in Never Buy a Used Spaceship

Adding the game causes an error message to appear:

Code: Select all

The game in 'Clotilde Soffritti in Never Buy a Used Spaceship\' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the ags engine: ags-fallback

  {"Clotilde astronave.exe", 0, "286551ded3eedc428451e506e29196c9", 368664276},
If I interpret the console correctly, it's 3.4.1.11 version.
The game appears as Adventure Game Studio Game in the menu view, and starting the game from the menu will start the game. The game will run, saving and loading works too. Just like few other games, it seems to be running slow.


That's it this time.

Also I found an "issue" in the detection list, which is probably the least important thing in the world, but it caught my eye there...

Shouldn't "Time Gentlemen, Please" be listed under commercial games? "Ben There, Dan That" was freeware, but the the two sequels, "Time Gentlemen, Please" and the recent platformer game were commercial games.
User avatar
criezy
ScummVM Developer
Posts: 804
Joined: Sat Sep 23, 2006 10:41 am
Location: West Sussex, UK

Re: Thousands of games needing testing

Post by criezy »

An update from the last two days:

Detection:
  • I have added The Shaft, Echoes of Terra, and Clotilde Soffritti detections (I have also added a few other detection reported on our bug tracker).
  • I have moved Time Gentlemen, Please detection to the commercial game section.
SoundClip assert
  • The assert in The Rail was due to unsupported 24 bit PCM wav file. I have removed the assert, so it will only be a warning now, and I created https://github.com/scummvm/scummvm/pull/2942 to add support for these files. So once this is merged the warning should be gone and the machinery noise in the second room should work properly.
  • The assert in NES Quest was due to looping MOD audio and is now fixed.
King of Rock
There was a memory issue when loading the old dialog scripts. This caused random issues (in my case it was usually crashing when starting the game). The same issue existed in AGS 3.5 as well. I have fixed it both in ScummVM and AGS. I can now start the game and loading and saving works for me, so hopefully the issue reported here was caused by the same bug (and since it now works for GateKeeper I am hopeful that is indeed the case).

POSIXFilesystemNode::getChild assert
I played a good chunk of Blackwell 4, and I have not encountered the issue yet. I created https://bugs.scummvm.org/ticket/12416 to track the issue so that we do not forget about this and can continue investigating. If you have more information about the issue, such as a savegame near the place where it crashes for you, it would be good to add those to the bug ticket.

failure to allocate 201326592 bytes
This might indeed be an endianness issue. I tried SQ: Decision of the Elders and it starts and seems to work properly for me. Unless that was caused by the same random memory issue found with King of Rock (I only tested Decision of the Elders after that bug had been fixed).

Warnings
Some of the reported warnings (such as "channel 2 - same clip assigned") also happen with the AGS 3.5 executable. So I am not worried about those.
Others indicates things we have not (yet) implemented in ScummVM. Some of them may not be needed. For example I have only seen calls to SetCurrentDirectory() with "./", which is the current directory, and in such a case we don't need to do anything. We will need to look at others (such as get_palette and video_on_gfxmode_changed).
Post Reply