AGS 3.1.2 Final - Obama Edition

Started by Pumaman, Sun 04/01/2009 00:02:55

Previous topic - Next topic

Pumaman

What better way to celebrate the start of Obama's 6 months to save the world than with this new beta:

Because of the Vista new game crashing bug in 3.1.1, I'll try to make this release on a fairly short cycle to get the fixes out there.

Changes in 3.1.2 Final:

* Improved performance of Theora video playing
* Changed error to warning if you use Mouse.ChangeModeGraphic on the inventory cursor, to assist backwards compatibility
* Fixed object positions getting corrupted when importing a hi-res game from AGS 2.72 (bug introduced by 3.1)
* Fixed editor's room area undo buffer not being cleared when a different room was loaded


Changes in 3.1.2 RC 2:

* When changing the game resolution, the editor will now offer to automatically resize all your GUIs to compensate.
* "Letterbox Mode" option in General Settings is now only shown if the game resolution is 320x200 or 640x400
* Added plugin API event AGS_EngineInitGfx and methods GetDirectInputKeyboard, GetDirectInputMouse and ReplaceFontRenderer.
* Improved rendering of View Editor at 120 DPI
* Fixed DisplayAtY, GUI.SetSize and Mouse.SetPosition not checking Y co-ordinate correctly in 320x240 and 640x480 games when using native co-ordinates
* Fixed DX5 driver problem switching a GUI background graphic from one with to one without alpha channel
* Fixed potential crash on fadeout with DX5 Nearest Neighbour filters

Changes in 3.1.2 RC 1:

* Added support for using Transparency properties with alpha-channel sprites
* Added Error Reporting feature to editor, to send error information to AGS website if the editor crashes
* Added eKey* enum for use with on_key_press and IsKeyPressed, to make script more readable
* Added Show Start Page option to Help menu to allow you to access Tips if you have the start page disabled at startup
* Made some stability improvements to how the editor handles the sprite file
* Translations are now automatically recompiled if you change the game name, to ensure that they still work
* Moved the "You are currently using the eraser" tooltip further away from the cursor so it doesn't obscure what you're doing
* Improved the editor error message if the game folder had unicode characters in it
* Fixed game.screenshot_height not allowing 240/480 in games of those resolutions
* Fixed Vista Game Explorer integration appearing as "Play" in the start menu recent list
* Fixed GUI button being set to wrong size if you changed its image in the editor to a low-res sprite in a hi-res game



Changes in 3.1.2 beta 1:

* Added inventory item CursorImage property to allow you to set a different image for the mouse cursor to the inventory window
* Added Character.SpeechAnimationDelay property which replaces the old game.talkanim_speed setting and also works with Sierra-style speech. A new General Settings option is provided to enable/disable backwards compatibility.
* Added Game.TextReadingSpeed and Game.MinimumTextDisplayTime properties; obsoleted game.text_speed
* Templates are now stored in a "Templates" sub-folder to satisfy Vista permissions
* Moved the character SpeechColor property from the Movement to the Appearance section in the editor, where it belongs!
* DynamicSprite.Resize now won't allow new image to be over 25 MB to help spot mistakes in size calculations
* Mouse.ChangeModeGraphic now won't allow you to change the graphic of the Inventory cursor if "Use selected inventory graphic for cursor" is enabled
* Fixed crash in Vista creating a new game in the editor
* Fixed dynamic sprites sometimes being discarded by the sprite cache
* Fixed dialog script compiler bug if you used "this" in a string within a normal scripting command
* Fixed custom dialog options not working properly when using transparent background
* Fixed colour corruption if you imported an 8-bit sprite into a hi-color game and palette slot 0 of the sprite was not black
* Fixed save games not persisting the walking state of the highest-numbered character
* Fixed Dialog.GetOptionText returning original English text when a translation was in use
* Fixed PlayAmbientSound screwing up audio if it was used on a channel where a normal PlaySound command was still playing
* Fixed PlayVideo not working properly when DX5 graphics filter was in use
* Fixed button ClipImage property clipping 1 pixel too many in high-res games
* Fixed script editor crash if you deleted a block of code, then hovered the mouse over a script variable.
* Fixed editor not allowing you to rename a script to a different capitalization of the same name
* Fixed editor crash if you tried to rename a script file to contain  or :


THIS IS A BETA. MAKE A BACKUP OF YOUR GAME BEFORE TRYING IT OUT. DO NOT RELY ON A BETA FOR DISTRIBUTING YOUR GAME.

http://www.adventuregamestudio.co.uk/AGS-3.1.2-Final.exe

Shane 'ProgZmax' Stevens

Hooray!  Hopefully all my sprite import problems are fixed now!

Ryan Timothy B

QuoteFixed PlayAmbientSound screwing up audio if it was used on a channel where a normal PlaySound command was still playing
Excellent work my boy! Excellent work.  Very fast too.  :P  Thanks

Dualnames

Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

Snarky

Great! If you're changing the text speed system, any chance you could take a look at this suggestion (with ensuing discussion)?

Basically, I'm asking for a way to disable the text skip button(s) for a short moment right after a line change, but only if the previous line timed out. Thereby ensuring that if the line you want to skip times out just as you're clicking, you don't miss the next line. Personally, this is a feature I wish all games had. (If I finish reading a line a bit early, I'm often afraid to click to skip it, because this might happen and I'll miss the next one.)

The simplest way would probably be something like a TextSkipDisableTimeMs property, by default set to 0 to maintain backwards compatibility. However, a callback function like on_mouse_click() for whenever a line of text goes away, with an argument indicating if it timed out or was skipped, would also enable this functionality (at more work for the game developer), and could potentially be more flexible.

Another thing: In the manual, it'd probably be helpful if game.skip_speech_specific_key, SetSkipSpeech, TextReadingSpeed property, and MinimumTextDisplayTimeMs property all linked to each other under "see also."

Shane 'ProgZmax' Stevens

Hey CJ, I noticed the Character.InventoryDisplayed property doesn't show up at all in the manual, and I think it's the first time I've noticed it (I don't pay attention to auto-complete usually).

subspark

QuoteThereby ensuring that if the line you want to skip times out just as you're clicking, you don't miss the next line.
Good suggestion Snarky. I second that. Too long have I been haunted by the unpredictable window of time that text is displayed and how long I have before I can skip it before it times out. Perhaps AGS could be the first engine to specifically support a feature to counter this undesirable behavior.

Cheers,
Sparx.

Pumaman

Quote from: Snarky on Sun 04/01/2009 03:26:12
Great! If you're changing the text speed system, any chance you could take a look at this suggestion (with ensuing discussion)?

Basically, I'm asking for a way to disable the text skip button(s) for a short moment right after a line change, but only if the previous line timed out. Thereby ensuring that if the line you want to skip times out just as you're clicking, you don't miss the next line. Personally, this is a feature I wish all games had. (If I finish reading a line a bit early, I'm often afraid to click to skip it, because this might happen and I'll miss the next one.)

That is a very good idea actually, I have the same problem when playing games. I'll look into it.

QuoteAnother thing: In the manual, it'd probably be helpful if game.skip_speech_specific_key, SetSkipSpeech, TextReadingSpeed property, and MinimumTextDisplayTimeMs property all linked to each other under "see also."

Good point, thanks, I'll do that.

QuoteHey CJ, I noticed the Character.InventoryDisplayed property doesn't show up at all in the manual, and I think it's the first time I've noticed it (I don't pay attention to auto-complete usually).

There is no such property. Perhaps you're using a script module that has added it as an extender function?

Nickydude

Wow! Another update already :)

* Added Character.SpeechAnimationDelay property which replaces the old game.talkanim_speed setting and also works with Sierra-style speech. A new General Settings option is provided to enable/disable backwards compatibility.
* Added Game.TextReadingSpeed and Game.MinimumTextDisplayTime properties; obsoleted game.text_speed

Fantastic!
Best Regards,
Nickydude
www.madladdesigns.co.uk

AGS Beginner's Guide - All you'll ever need!

Shane 'ProgZmax' Stevens


Nickydude

Now I'm probably being picky here  ;D

But could you possibly put something in to specify the length of pauses in dialogue / speech?

I have dialog that has many 1 / 2 word sentences and in order to keep them on screen long enough I'm using Game.MinimumTextDisplayTimeMs = 3000; which is just about right, the problem is I'm using '...' as pauses which means there's nothing on screen for 3 seconds. I'd like the pauses to be shorter, about 1 second, is there a way round that?
Best Regards,
Nickydude
www.madladdesigns.co.uk

AGS Beginner's Guide - All you'll ever need!

Pumaman

How about using Wait() for your pauses instead of player.Say("...")?

Nickydude

That should do it, thanks :)

Just so you know, all these questions I ask will only be asked once as they are going into the guide.

Best Regards,
Nickydude
www.madladdesigns.co.uk

AGS Beginner's Guide - All you'll ever need!

TheMagician

Thanks for the new Beta Version  :D
In my 640x480 game, the biggest value I can set the Game Variable game.screenshot_hight to is 400. Is it possible to change it to the full 480 pixels?

F1ak3r

There's a bug in the dialogue editor. Any if statement used (indented, properly laid out and all) will give a "parse error at '-'", even if '-' doesn't even appear in the statement.

At first I thought it was just me doing something wrong, but once I'd tried everything I could think of to fix it, and failed, I became convinced it was a bug.

Of course, there's always a chance that it's just me, so yeah.

Pumaman

Quote from: TheMagician on Mon 05/01/2009 20:49:04
In my 640x480 game, the biggest value I can set the Game Variable game.screenshot_hight to is 400. Is it possible to change it to the full 480 pixels?

I'll look into this. However, do you really need save game screenshots to be of that size?

QuoteThere's a bug in the dialogue editor. Any if statement used (indented, properly laid out and all) will give a "parse error at '-'", even if '-' doesn't even appear in the statement.

How about you post the dialog script that's causing the problem? "if" statements seem to work fine for me.

monkey0506

I'm sporadically getting an error where if I have a room opened for editing and I test the game (with or without debugger) the colors in the room go all wacky...I have to switch off the tab then back for it to correct the colors. If needed I'll post a screenshot.

Also, is the official fix for games with no dialog_request just simply for the editor to create the function? Maybe it's just me but it's been bugging me that a function that serves no real purpose anymore (because we can put the scripts directly into the dialog script) (not to mention the fact that it's an empty function) keeps appearing every time I try and add a new interaction function.

TheMagician

QuoteI'll look into this. However, do you really need save game screenshots to be of that size?

I know that the savegames increase in size when they include bigger screenshots. However, in my current (non-adventure) game I use the screenshots for an important fullscreen special effect while loading the game.
Of course I'll give the user the possibility to disable the effect to save disc space but it would be a great feature.

F1ak3r

Well, that's embarrassing. Turns out I left out a "return". =) Oops...

abstauber

Yay, thanks for fixing that dialog gui thing! :)

SMF spam blocked by CleanTalk