AGS 3.1.1 Final 3 - Christmas Edition

Started by Pumaman, Wed 12/11/2008 01:33:40

Previous topic - Next topic

Pumaman

Well, it's that time of the year once more when we must drink mulled wine, punch santa squarely in the nuts and get embarassingly drunk at the office christmas party. But there might be some spare time to make games:

Changes in 3.1.1 Final 3:

* Fixed short small MP3 files failing to play (regression from AGS 3.1)

Changes in 3.1.1 Final 2:

* Fixed compile error if there was an indented blank line in a dialog script

Changes in 3.1.1 Final:

* Fixed object "ignore walk-behinds" setting not working with D3D driver
* Fixed MP3 and MOD/XM music not playing (bug introduced by previous 3.1.1 beta)


Changes in 3.1.1 RC 2:

* Assign To View dialog now remembers the loop assigned to last time as well as the view
* Added editor keyboard shortcuts list to manual
* Removed some remaining references to the interaction editor from the help file
* Improved editor error handling if it was unable to start the game for testing
* Fixed PlayVideo failing to play some WMV files with D3D driver
* Fixed PlayVideo skip setting eVideoSkipAnyKeyOrMouse not allowing keypresses to skip Theora video
* Fixed corruption in letterbox borders when drawing non-fullscreen Theora video
* Fixed Theora video being 1 pixel too small
* Fixed new dialog script compiler not allowing commas with set-globalint or set-speech-view
* Fixed a couple of potential crashes if characters had an invalid view/loop/frame
* Fixed potential crash displaying text in voice-only mode


Changes in 3.1.1 RC 1:

* Added basic save and load GUIs to the Default Game template
* Cursor mode now sets back to Select after adding a GUI control to assist the most common workflow
* Workaround for Windows error getting file list on Linux network shares
* Fixed clicking in the corner of the screen taking you back to the desktop when using D3D driver
* Fixed text box stealing up/down arrow key presses (AGS 3.1 regression)
* Fixed save game list not working, broken in beta 1
* Fixed OGG Theora player to preserve aspect ratio when stretching to full screen
* Fixed dialog script compiler to re-build all dialog scripts if a dialog is renamed/deleted
* Fixed error running the game if you didn't have a dialog_request function
* Fixed D3D driver drawing an extra game loop before the room faded out
* Fixed autocomplete not always correctly selecting entries containing an underscore
* Fixed engine hanging if you tried to move the character while he was on a non-walkable area (3.1.1 beta 1 bug)


Changes in 3.1.1 beta 1:

* Added support for running normal scripts as part of dialog scripts, and thus obsoleted the run-script, dialog_request business
* Added OGG Theora video support to PlayVideo, and enabled theora videos to be compiled into the game EXE
* Added right-click "Find Sprite By Number" option to Sprite Manager
* Added Dialog.HasOptionBeenChosen script function.
* Replaced Anti-Glide mode with a per-character setting MovementLinkedToAnimation.
* Improved auto-dedent of } in script editor to make it more useful and less annoying
* Improved performance of pathfinder when calculating a route.
* When changing between room area mask types, the current tool will be set back to the Select tool to assist the most common workflow
* Discontinued support for Windows 98 due to upgrading compiler from VC6 to VC2008.
* Improved editor error messages if an error occurred reading/writing the sprite file
* Fixed transparent sprites not rendering correctly with D3D
* Fixed GetLocationName/GetLocationType not returning anything if the mouse cursor was over a GUI, but a different X/Y was being checked
* Fixed GetLocationName returning a single space if a name-less object was at the location
* Fixed editor crash debugging if the call stack had more than 6 lines
* Fixed call stack window not appearing if the project tree was on the left hand side
* Fixed crash if you manually set Character.Loop and the current Frame was invalid for the new loop
* Fixed crash in DisplayAt/SayAt if you passed the width in as 0
* Fixed debug console showing low-res co-ordinates for Character.Walk

How do I use the new dialog scripts?

The dialog script can now contain normal scripting commands. The way that AGS differentiates is that if there is no space at the start of the line it assumes it's a Dialog Scripting command, and if there are spaces/tabs at the start of the line it interprets it as a Normal Scripting command. For example:

@1  // option 1 clicked
bman: &3 "Please help me. I've been standing here for ages trying to get through that door."
Narrator: &1 What a sad man!!
  Display("This is being displayed from the normal script");
  GiveScore(5);
  player.Walk(player.x - 20, player.y, eBlock);
bman: &5 "And it's getting pretty boring, I can tell you."
return

How do I use OGG Theora video?

Simple. Just make sure the file has an .OGV extension (some converters create them as .OGG but you'll need to name it .OGV for AGS to work), put the file in the game folder (NOT the Compiled folder, because it will get built into the game EXE). Then just use a PlayVideo command with the .OGV's filename.

What do you want me to check?

The dialog script compiler has been scrapped and instead AGS now converts the dialog scripts into normal scripts. So there's quite a lot of scope for error -- please make sure your dialogs still work correctly.

Also, I've had to fiddle around with the D3D driver quite a bit, as it turns out that adding the anti-aliasing filters in 3.1 broke transparent sprites. This should now be fixed but please make sure your game looks right with the D3D driver.


THIS IS A BETA VERSION. BACK UP YOUR GAME BEFORE USING IT. ONCE YOUR GAME HAS BEEN LOADED INTO THIS BETA YOU CANNOT LOAD IT BACK INTO PREVIOUS VERSIONS.

http://www.adventuregamestudio.co.uk/AGS-3.1.1.exe?final3

Installer only, as this is the final release candidate. If no problems are found, I hope to release it to the website in a week or so, followed by a RAR version.

Ghost

Quote from: Pumaman on Wed 12/11/2008 01:33:40
* Added support for running normal scripts as part of dialog scripts, and thus obsoleted the run-script, dialog_request business
* Improved auto-dedent of } in script editor to make it more useful and less annoying

*Whooo-hoooooo!* for that!
And an even louder YAY for you to be such a quick feature-fixer!

Gilbert

Ah well... This is fast.

Considering some of the improvements and changes (dialog scripts, discontinuation of Win98 support and anti-glide mode to name a few) I wonder whether of not the update is that minor to worth just a tiny 0.0.1 increment in the version number though (especially, as always, when we expect there will be more to come in the next betas).

GarageGothic

Holy crap, you're one fast mofo, CJ! I'm not sure where to start. Ogg Theora support and compiling videos into the .exe? Fantastic! Normal scripts within dialog script? That makes me rethink if I even need my whole custom dialog system. The MovementLinkedToAnimation setting also sounds like a neat improvement. I look forward to trying it all out.

Ishmael

Wow, this is shaping up to look even more excellent than I had hoped for, once again. I really hope I can pick up the pace with any of my bigger projects to get to benefit from all these new things.
I used to make games but then I took an IRC in the knee.

<Calin> Ishmael looks awesome all the time
\( Ö)/ ¬(Ö ) | Ja minähän en keskellä kirkasta päivää lähden minnekään juoksentelemaan ilman housuja.

monkey0506

Seeing as my projects don't make use of the dialog_request function, one doesn't exist in my scripts at all. As soon as I run the game I get:

Quote---------------------------
Adventure Game Studio
---------------------------
Script link failed: Runtime error: unresolved import 'dialog_request'

---------------------------
OK   
---------------------------

As a temporary fix I just put:

Code: ags
function dialog_request(int) {}


Which rectified the problem...but it appears to be a bug as it worked fine in 3.1.0.

Oh, and thanks so much for this update Chris! ;D

Lt. Smash

#6
these improvements are really great.  Thanks Pumaman!
Now would be cool:
- marking both brackets if the cursor is near one. Like it is already when closing brackets. If you have many ifs within ifs and want to make else to some of them, you may get lost in the huge amount of brackets.
if (a<b)
{| <- This is the cursor
  if (c<b)
  {
     if (a<c && !b)
     {
       do;
      }
   }
   else do2;
}

  - break, continue support. I would have use for them very often. (To rewrite 20 continues and 5 breaks within one loop isn't that easy.:))
  - static variable support in structs.
  - for loops would be nice buts not a priority as we can use while instead.
  - switch: also not that important but would make things easier
I know these were suggested very often but I'm trying again as they are very much helpful and I thought maybe now you havethe time to implement these as I see you're going to make huge improvements. (like ags script in ags dialogs)
 

Trent R

Smash, did you know you can press Ctrl-B while next to a bracket to highlight the opposite one? Although I'd agree with the cursor behavior if possible (but I wouldn't be surprised if it annoys people, so a preference might be requested).

~Trent
To give back to the AGS community, I can get you free, full versions of commercial software. Recently, Paint Shop Pro X, and eXPert PDF Pro 6. Please PM me for details.


Current Project: The Wanderer
On Hold: Hero of the Rune

Lt. Smash

#8
Quote from: Trent R on Wed 12/11/2008 17:43:27
Smash, did you know you can press Ctrl-B while next to a bracket to highlight the opposite one?
thats... interesting. I would suggest a help file site for all shortcuts?

may I ask if there is a shortcut for commenting out a block of code?

Trent R

#9
Not that I know of, but you can automatically indent blocks of code that you have selected. Then I usually take in into Notepad and use the ReplaceAll feature.

~Trent
PS-Monkey, thanks for the work around. :D
To give back to the AGS community, I can get you free, full versions of commercial software. Recently, Paint Shop Pro X, and eXPert PDF Pro 6. Please PM me for details.


Current Project: The Wanderer
On Hold: Hero of the Rune

Khris

Sure:
Code: ags
/* I'm
completely
green in
the editor
because I'm
a block
commented
out */

Snarky

In Visual Studio (or Eclipse, I forget), Ctrl-/ (control+slash) will comment out selected lines, and Ctrl-Shift-/ will uncomment them. I use that a lot.

Lt. Smash

@Khris: I'm aware of this. I was more looking for smth like Snarky wrote.
The shortcut Ctrl+/ would be a nice addition to the ags script editor.

Pumaman

QuoteConsidering some of the improvements and changes (dialog scripts, discontinuation of Win98 support and anti-glide mode to name a few) I wonder whether of not the update is that minor to worth just a tiny 0.0.1 increment in the version number though (especially, as always, when we expect there will be more to come in the next betas).

Interesting point. I'm not planning to add much more to 3.1.1, because it fixes a few fairly important things from 3.1, so this will probably be a short-ish release cycle which probably means 3.1.1 will be an appropriate name.

QuoteSeeing as my projects don't make use of the dialog_request function, one doesn't exist in my scripts at all. As soon as I run the game I get:
Script link failed: Runtime error: unresolved import 'dialog_request'

Thanks, well spotted. I'll get that fixed.

Quote- marking both brackets if the cursor is near one. Like it is already when closing brackets. If you have many ifs within ifs and want to make else to some of them, you may get lost in the huge amount of brackets.

This is a possibility, but the Match Brace feature is easy enough to use as Trent says.

Quotethats... interesting. I would suggest a help file site for all shortcuts?

Well, this is displayed on the Edit menu, so it's not exactly a hidden shortcut.


PixelPerfect

Nice work CJ!

I had the same script link error that monkey reported and used his work-around to test theora which seems to be working pretty splendidly!  8) Now you can actually use video without bloating the game.

LimpingFish

Compiled Theora vids!

/does a happy jig.

Great work as usual, CJ. \o/
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Trent R

Quote from: Pumaman on Thu 13/11/2008 00:47:07
Quote from: Lt. Smashthats... interesting. I would suggest a help file site for all shortcuts?
Well, this is displayed on the Edit menu, so it's not exactly a hidden shortcut.
But what about the Tab-switching shortcut you just taught me? Although not on a visible menu, I didn't know about it. I would welcome a manual entry (or equivalent) of editor shortcuts.

~Trent
To give back to the AGS community, I can get you free, full versions of commercial software. Recently, Paint Shop Pro X, and eXPert PDF Pro 6. Please PM me for details.


Current Project: The Wanderer
On Hold: Hero of the Rune

mikosworld

Some suggestions:
> Support Mouse over, Mouse out, left Click, Middle & Right Click functions on objects and hotspots ...
> Improved display of antialisaing Fonts ...
> Supports Draw oultine on sprites

Ghost

Quote from: mikosworld on Thu 13/11/2008 14:25:45
Some suggestions:
> Support Mouse over, Mouse out, left Click, Middle & Right Click functions on objects and hotspots ...

Left and right clicks on ANYTHING are already available, and mouseover/mouseleave are not too hard to script.

A thing I'd like to see, though, would be the renumbering/resorting feature of rooms to be extended, at least to views, but characters are also a sensible suggestion I think. Call me spoiled, but I think it's useful to resort these "building blocks" in any way I like, so I'd really appreciate that.

Trent R

Quote from: Ghost on Thu 13/11/2008 22:33:59
A thing I'd like to see, though, would be the renumbering/resorting feature of rooms to be extended, at least to views, but characters are also a sensible suggestion I think. Call me spoiled, but I think it's useful to resort these "building blocks" in any way I like, so I'd really appreciate that.
Seconded, especially inventories. I want to be able to use UpdateInventory to re-sort my items (in my RPG, weapons are kept together, etc) but they're not all in the order I want them in the editor. I'd be willing to go through and switch them, but I also have 3 properties on each, which would make switching even more of a pain.

~Trent
To give back to the AGS community, I can get you free, full versions of commercial software. Recently, Paint Shop Pro X, and eXPert PDF Pro 6. Please PM me for details.


Current Project: The Wanderer
On Hold: Hero of the Rune

SMF spam blocked by CleanTalk