AGS 3.3.0 Release Candidate

Started by Crimson Wizard, Thu 04/04/2013 19:16:28

Previous topic - Next topic

Radiant


Crimson Wizard

I download a 0-bytes zip file :-\.
Also, I'd need a matching game executable to use this, can you send me too, please?

Radiant


Crimson Wizard

#503

Radiant

Well, there's no crash this time, but it doesn't fall back to the software mode either. Starting up in windowed mode it says "640x400 32bit requested adapter mode is not supported".

Spoiler
Adventure Game Studio v3.3 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2013 others
ACI version 3.3.0.1150

***** ENGINE STARTUP
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: d:/Prog/HQuest/Jukebox/Compiled/Jukebox.exe

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Heroine's Jukebox
Checking for disk space
Initializing MOD/XM player
Init gfx driver
Created graphics driver: Direct3D 9
Initializing screen settings
Init gfx filters
Applying scaling filter: None
Switching to graphics mode
Widescreen side borders: disabled (windowed mode)
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Widescreen side borders: enabled, attempting resolution 320 x 240
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 200; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 341 x 200 anyway
Attempt to switch gfx mode to 341 x 200 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 409 x 240 anyway
Attempt to switch gfx mode to 409 x 240 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
320x200 not supported, trying with 2x filter
Applying scaling filter: StdScale2
Widescreen side borders: game resolution: 320 x 200; desktop resolution: 1024 x 600
Widescreen side borders: enabled, attempting resolution 320 x 200
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Widescreen side borders: enabled, attempting resolution 320 x 240
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 200; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 341 x 200 anyway
Attempt to switch gfx mode to 341 x 200 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 409 x 240 anyway
Attempt to switch gfx mode to 409 x 240 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
[close]

Fullscreen, same effect.
Spoiler

Adventure Game Studio v3.3 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2013 others
ACI version 3.3.0.1150

***** ENGINE STARTUP
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: d:/Prog/HQuest/Jukebox/Compiled/Jukebox.exe

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Heroine's Jukebox
Checking for disk space
Initializing MOD/XM player
Init gfx driver
Created graphics driver: Direct3D 9
Initializing screen settings
Init gfx filters
Applying scaling filter: None
Switching to graphics mode
Widescreen side borders: game resolution: 320 x 200; desktop resolution: 1024 x 600
Widescreen side borders: enabled, attempting resolution 320 x 200
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Widescreen side borders: enabled, attempting resolution 320 x 240
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 200; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 341 x 200 anyway
Attempt to switch gfx mode to 341 x 200 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 409 x 240 anyway
Attempt to switch gfx mode to 409 x 240 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
320x200 not supported, trying with 2x filter
Applying scaling filter: StdScale2
Widescreen side borders: game resolution: 320 x 200; desktop resolution: 1024 x 600
Widescreen side borders: enabled, attempting resolution 320 x 200
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Widescreen side borders: enabled, attempting resolution 320 x 240
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 200; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 341 x 200 anyway
Attempt to switch gfx mode to 341 x 200 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: game resolution: 320 x 240; desktop resolution: 1024 x 600
Couldn't find acceptable supported resolution
Widescreen side borders: gfx card does not support suitable resolution. Will attempt 409 x 240 anyway
Attempt to switch gfx mode to 409 x 240 (24-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
[close]

Radiant

I don't get why it's going for all those resolutions. It should be pretty straightforward to create a 640x400 window on a desktop that's larger than that, no?

Crimson Wizard

This is how it was done originally in AGS, it just tried all variants in certain range from the actual game size, because custom display resolution was not implemented.

I see now that it fails only after trying everything. I'll check if it is possible to detect that d3d9 does not support anything at all prior to all those attemtps.

Radiant

I think this routine is just overcomplicated. For fullscreen mode, it makes perfect sense. For windowed mode, however, it could simply do (1) find desktop resolution, (2) calculate highest multiple of game resolution that fits in that desktop, abort if none, (3) create Dx9 window with that size, (4) if fail, create Dx5 window with that size, (5) if fail, abort. It makes little sense to try a series of window sizes.

Dirt McStain

Quote from: Dirt McStain on Fri 22/11/2013 00:37:04
Hey Crimson Wizard!  Great work on the engine so far!  Radiant told me that this may be the best place to reach you regarding this issue:

Music and SFX skip when transitioning screens
QuoteWhen transitioning from one background to another, music and sfx will skip. It appears that the longer it takes to transition (longer due to memory, not longer by design) the longer the music and sfx skip.

I hope that this is something that you can take a look at!  Thank you in advance!

To add, here's what I noticed with different ACI interpreter versions:

ACI version 3.3.0.1148: skips; stops skipping with threaded=1 in the acsetup.cfg file
ACI version 3.3.0.1146: skips (not sure why because I didn't have an acsetup.cfg file - will check with Radiant); when I copy the acsetup.cfg file that the below version uses, there is no more skipping (and there's no threaded entry)
ACI version 3.3.0.1144: doesn't skip and doesn't have the threaded=1 entry in the acsetup.cfg file

So, it appears that the skipping started with 1146 but, threaded=1 wasn't the fixing factor until 1148.

Crimson Wizard

@Dirt McStain, threaded audio was disabled by default since 3.3.0.1146 (see list of changes); that's why skipping starts from 1146. Not sure why "threaded=1" doesn't help in 1146 though.

Currently JJS is looking into music stuttering issue, that occurs with threaded audio. He already found what causes that, hopefully this will be resolved.
I will look into skipping on room load problem as soon as I get more free time; the game should still play well without threaded audio too, because it is not compatible with Pamela lipsync yet (as AGD2 mentioned). I think this might be easy to fix: just adding few more intermediate music updates; but I will need to make some tests to see which internal operations take most time during room transition.

Crimson Wizard

@Radiant, here's an updated engine, that tries software driver if it could not make D3D9 work.
http://www.mediafire.com/download/9a7xhyyi00avqgt/acwin1148plus_30nov2013.7z

I can't normally test this on my machine, because I cannot find a resolution that will work with DX5 but not with D3D9 (if it did not work with first, it did not with second too). I tested only by hacking D3D9 always return error.
I am still wondering how it might be possible that there's a machine where DX5 run a resolution that D3D9 cannot, but maybe I just do not know how these things work.

I need to be sure this one works, because I feel doubts about the idea in general.

Radiant

Interesting, I think we're getting there.

Starting in windowed mode doesn't work,
Spoiler
Adventure Game Studio v3.3 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2013 others
ACI version 3.3.0.1148

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: d:/Prog/HQuest/Jukebox/Compiled/Jukebox.exe

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Heroine's Jukebox
Checking for disk space
Initializing MOD/XM player
Init gfx driver
Created graphics driver: Direct3D 9
Initializing screen settings
Init gfx filters
Applying scaling filter: None
Switching to graphics mode
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
320x200 not supported, trying with 2x filter
Applying scaling filter: StdScale2
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
Init gfx driver
Created graphics driver: Allegro/DX5
Initializing screen settings
Init gfx filters
Applying scaling filter: None
Switching to graphics mode
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (32-bit)
Succeeded. Using gfx mode 320 x 200 (32-bit)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 1
[close]

Running in full-screen mode first gives the error "requested adapter mode not supported"... and then opens and runs the game anyway!

Spoiler

Adventure Game Studio v3.3 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2013 others
ACI version 3.3.0.1148

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: d:/Prog/HQuest/Jukebox/Compiled/Jukebox.exe

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing audio vox
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Heroine's Jukebox
Checking for disk space
Initializing MOD/XM player
Init gfx driver
Created graphics driver: Direct3D 9
Initializing screen settings
Init gfx filters
Applying scaling filter: StdScale2
Switching to graphics mode
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
Init gfx driver
Created graphics driver: Allegro/DX5
Initializing screen settings
Init gfx filters
Applying scaling filter: StdScale2
Switching to graphics mode
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (32-bit)
Succeeded. Using gfx mode 320 x 200 (32-bit)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 1
***** ENGINE HAS SHUTDOWN
[close]
(note that the engine shuts down because I'm pressing the 'quit' button)

Radiant

Quote from: Crimson Wizard on Sat 30/11/2013 20:08:47
I am still wondering how it might be possible that there's a machine where DX5 run a resolution that D3D9 cannot, but maybe I just do not know how these things work.
I believe that computers with no 3D capability (e.g. my traveling laptop) will simply fail a D3D9 call. Which makes me wonder why you wouldn't use D2D9, if such a thing exists :)

Crimson Wizard

Quote from: Radiant on Sat 30/11/2013 21:01:58
Starting in windowed mode doesn't work,
But according to the log, it started the game? What is going on there exactly?

Quote from: Radiant on Sat 30/11/2013 21:01:58
Running in full-screen mode first gives the error "requested adapter mode not supported"... and then opens and runs the game anyway!
Yes, it displays a message before switching to DX5... I think I'll add a name of driver that failed to the message text.

Radiant

Quote from: Crimson Wizard on Sat 30/11/2013 21:19:58
But according to the log, it started the game? What is going on there exactly?
If I may hazard a guess, it started the game, but still had a return code set to false somewhere, causing the game to abort almost instantly. But feel free to add more (temporary) logging lines to your logfile :)

Crimson Wizard

Quote from: Radiant on Sat 30/11/2013 21:45:40
Quote from: Crimson Wizard on Sat 30/11/2013 21:19:58
But according to the log, it started the game? What is going on there exactly?
If I may hazard a guess, it started the game, but still had a return code set to false somewhere, causing the game to abort almost instantly.
Good idea. I'll look more into this.

Radiant

Quote from: Crimson Wizard on Sat 30/11/2013 21:19:58
Yes, it displays a message before switching to DX5... I think I'll add a name of driver that failed to the message text.
If the game successfully fallbacks to DX5, then it shouldn't give the player an error message. The logfile already shows what happens, but as far as the player is concerned, the game works fine.

Crimson Wizard

I fixed couple of things, not sure atm, but that may fix windowed mode problem...
http://www.mediafire.com/download/zrd3gdup9j3d6nz/acwin1148plus_1dec2013.7z

If not, I'll check again tomorrow.

Radiant

Fullscreen now works.

Windowed mode gives no error message, and this log. It appears to create the window but not display it; the game does run and is responsive to input (specifically, it aborts when I press escape, not any sooner). For what it's worth, the game shows up in the taskbar but not the alt-tab list on windows 7.
Spoiler
Adventure Game Studio v3.3 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2013 others
ACI version 3.3.0.1148

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: d:/Prog/HQuest/Jukebox/Compiled/Jukebox.exe

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Heroine's Jukebox
Checking for disk space
Initializing MOD/XM player
Init gfx driver
Created graphics driver: Direct3D 9
Initializing screen settings
Init gfx filters
Applying scaling filter: StdScale2
Switching to graphics mode
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Attempt to switch gfx mode to 320 x 200 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (32-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (24-bit)
Failed, resolution not supported
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 240 (24-bit)
Failed, resolution not supported
Init gfx driver
Created graphics driver: Allegro/DX5
Initializing screen settings
Init gfx filters
Applying scaling filter: StdScale2
Switching to graphics mode
Widescreen side borders: disabled in Setup
Attempt to switch gfx mode to 320 x 200 (32-bit)
Succeeded. Using gfx mode 320 x 200 (32-bit)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 1
***** ENGINE HAS SHUTDOWN
[close]

Crimson Wizard

Ok, here's another try. I found that in some cases D3D9 can change window style, so this version has a fix to set it back when D3D9 is cancelled.
http://www.mediafire.com/download/o2193bkfljdbgkk/acwin1148plus_3dec2013.7z

Although, to be honest, the more I explore the graphics part of the engine, the more skeptical I get. The code is pretty non-flexible, and was written having straightforward one-time initialization in mind. I would not want to tweak it any further at the moment.

SMF spam blocked by CleanTalk