Adventure Game Studio

AGS Support => Advanced Technical Forum => Topic started by: Pumaman on Sun 03/05/2009 15:34:47

Title: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Sun 03/05/2009 15:34:47
With the world mired in recession, the only way out must surely be to make games!

Changes in 3.2 Final 5:
* Fixed memory leak with sound playing
* Fixed editor crash XmlException: An error occurred while parsing EntityName.
* Fixed GUI anti-aliasing not working if it had no background color or image


Changes in 3.2 Final 4:

* Added $APPDATADIR$ support to File.Open to allow you to write files to an accessible folder that is not the Save Games folder
* Fixed AudioClip.Play crash if No Digital Sound was selected
* Fixed Game.StopAudio() crashing
* Fixed DX5 driver not always clearing side borders correctly when returning from alt+tab
* Fixed legacy SetSoundVolume command not affecting viewframe-linked sounds or score sound
* Fixed GUI button clicks not working until you move the mouse if a GUI appeared just under the mouse and there was a Wait() just before the code that made the GUI visible
* Fixed editor crash if you set an object's image to -1

Changes in 3.2 Final 3:

* Fixed legacy SetSoundVolume command changing the music as well as the sound volume
* Fixed anti-aliased TTF rendering giving pink edges in 16-bit games (though it is recommended that you only use anti-aliased TTFs in 32-bit games, they don't look very good in 16-bit).

Changes in 3.2 Final 2:

* Added support for anti-aliased TTF fonts in all situations where they weren't previously supported.
* Updated 9-verb template from Abstauber
* Improved widescreen side border detection with 320x200 games
* Legacy compatibility: updated SetGameOption(OPT_CROSSFADE) to also update the new-style Music audio clip crossfade setting
* Fixed mouse not detecting GUI controls if one became visible just under where the mouse was
* Fixed Game.StopAudio stopping rather than fading out track if crossfade was enabled for one of the playing audio clips

Changes in 3.2 Final:

* Added Game.SetAudioTypeSpeechVolumeDrop to provide a new-style equivalent to game.speech_music_drop
* Improved editor robustness to recover if the Game.agf.user file was corrupt
* "Export all sprites in folder" command now exports 32-bit sprites as PNGs to prevent losing alpha channel
* Updated to latest 9-verb template (thanks Abstauber!)
* Fixed GUI controls not updating properly if the control moved under the mouse, but the mouse didn't move
* Fixed problem restoring a game if the music was crossfading when the game was saved
* Fixed offset of currently playing audio not always being restored correctly when restoring a game with OGG audio clips
* Fixed "Close all other tabs" crashing if a room editor with unsaved changes was one of the other tabs
* Fixed the editor Preferences window only allowing you to type 5 characters in if you wanted to manually enter a path for the New Game Directory or Import Directory
* Fixed changing a walk-behind baseline not marking the room as modified
* Fixed compilation errors if you named a character with only numeric digits, eg "c500"


Changes in 3.2 RC 3:

* Added Game.SetAudioTypeVolume command
* When upgrading a game from a previous version, fixed a problem if sound/music files had upper case letters in their file names (eg. MUSIC5.OGG)
* Mouse.IsButtonDown now works with eMouseMiddle
* Importing a 2.72 game now sets Enforce New Audio Scripting to false by default
* Fixed crash with AudioClip.Play if the AUDIO.VOX file was missing
* Fixed crash restoring a game if you saved the game while music was crossfading
* Fixed SetSoundVolume not affecting frame-linked or score sound
* Fixed IsSoundPlaying not working properly if sound was disabled in setup
* Fixed issues with audio when skipping a cutscene
* Fixed music position not being restored properly when you restored a save game
* Fixed problem with characters getting stuck when colliding, introduced by RC2
* Fixed widescreen borders not working with 800x600 games
* Fixed old-style SetFrameSound command not working properly
* Fixed Character.PlaceOnWalkableArea crash if called from game_start


Changes in 3.2 RC 2:

* Updated 9-verb template to include the documentation PDF file (thanks abstauber!)
* Added manual page describing rep_exec and rep_exec_always, since these were not really properly documented
* Moved "Developer Name" into the main top section of General Settings now that it is displayed on the game exe
* Global Variables editor now allows you to create AudioChannel* variables
* Changed D3D LightLevel rendering to properly match DX5
* Fixed D3D Tint with luminance of 0 rendering as luminance of 100%
* Fixed bug with script dirty flags not being updated properly, introduced in RC1
* Fixed some compatibility issues with old-style PlayMusic/GetCurrentMusic and save games
* Fixed score sound and frame-linked sounds sometimes playing instead of the sound you wanted, when using old-style PlaySound command
* Fixed screenshots not working properly if widescreen side borders were enabled
* Fixed IsKeyPressed not working with the following keys: [ ]  ; ' , . /
* Fixed character gliding if he bumped into another solid character and MovementLinkedToAnimation was false
* Fixed script editor crash if you saved the script while the final function was missing its closing brace
* Fixed editor crash creating new game if the template was from a previous version with Sound/Music folders
* Fixed editor crash if you tried to preview an audio clip but had deleted the file
* Fixed GUI label text not being anti-aliased if there was a background image but the BGColor was set to 0
* Fixed old-style ViewFrame.Sound property throwing error if you tried to set it to 0

Changes in 3.2 RC 1:

* Added abstauber's LEC-style template
* Updated demo game to use new audio commands
* Added plugin API event IRoomController.PreSaveRoom; events AGSE_PRESAVEGAME and AGSE_POSTRESTOREGAME
* Wrote the "Upgrading to AGS 3.2" page in the manual. Please let me know if this answers initial questions about the new audio system, or if there's anything else it should cover
* The Restart Point save file (AGSSAVE.999) is no longer deleted when you quit the game, to fix a problem where RestartGame didn't work if you started the game by double-clicking an Enhanced Save Game file in explorer
* Winsetup now displays the game name in the title bar instead of "Adventure Game Studio"
* Fixed character/object tints in D3D not matching DX5
* Fixed TintScreen in D3D so that it looks the same as DX5
* Fixed GUI AdditiveOpacity mode not working properly if you tried to have a non-alpha sprite on an alpha GUI (eg. a save game screenshot)
* Fixed SetBackgroundFrame in Player Enters Screen event causing old frame to flash up briefly with D3D driver

Changes in 3.2 beta 5:

* AudioClip.Play now removes any queued audio clips of that type, like PlayMusic used to do
* Added editor plugin API method IGUIController.ActivePane
* Fixed beta 4 crash the second time you compiled the game
* Fixed DynamicSprite.Rotate cropping 1 pixel off the left side when rotating an image with an odd width/height
* Fixed Game.SpriteWidth/SpriteHeight returning the size of the blue cup instead of 0 if you supplied an invalid sprite number
* Fixed script editor issue if you typed some text, switched to another tab, then came back and did Undo
* Fixed crossfade problem with old-style PlayMusic commands, introduced by beta 3
* Fixed editor crash if you tried to use a non-icon file as TEMPLATE.ICO
* Fixed mouse cursor being drawn in dialog options in DX5 mode even when Mouse.Visible was set to false
* Fixed IsMusicVoxAvailable always returning 0 with 3.2 betas

Changes in 3.2 beta 4:

* Added option to automatically add side borders when running 4:3 games on widescreen monitors
* The generated EXE version information is now set to your Game Name and Developer Name instead of "Adventure Game Studio" and "Chris Jones"
* Improved graphics mode detection so that the screen doesn't keep flickering when trying to start up a low-res game full screen
* Changed the pathfinder so that the character cannot get stuck if he ends up outside one of the room edges
* Improved error handling if you passed an int to a string argument in String.Format
* Fixed light levels >100% not working with Direct3D driver
* Fixed theora video being permanently muted after you played one video with muted audio
* Fixed Object.MergeIntoBackground not working with Direct3D driver
* Fixed String.Format to give error instead of crash if you try to format a string longer than 3000 chars
* Fixed Room.GetDrawingSurfaceForBackground to give error instead of crash if you call it from game_Start

Changes in 3.2 beta 3:

* Added crossfading support to new audio system.
* Added eMouseMiddleInv support to on_mouse_click
* Editor now automatically converts any old Play Music On Room Load setting into a line of script in the room's Player Enters Screen event
* Editor property grid now displays a drop-down list instead of a text box when selecting a font or room
* Removed limit on number of text parser words
* Updated Default Game template to use new audio system
* New menu option to remove old Global Messages from the game, to stop them coming out in translation sources
* Disallowed accented characters like é in script names in the editor, because they wouldn't compile
* Fixed Seek for OGG audio clips to have the same accuracy as PlayFrom
* Fixed error running game and problems with save games if there were unicode characters in the folder path
* Fixed error compiling the game if the game had no Music folder
* Fixed ShakeScreenBackground not clearing letterbox borders properly if you switched from a large to a small shake
* Fixed "Internal compiler error: table overflow" if there were a lot of imported functions/variables
* Fixed compiler crash if a dialog script just had a @ on a line on its own
* Fixed autocomplete editor crash if there was a line break inside an array indexer
* Fixed sprite import window crash if you right-clicked in the second stage of tiled import


Changes in 3.2 beta 2:

* Implemented Audio Types editor
* Score Sound and ViewFrame-linked sound updated to work with Audio Clips; script ViewFrame.Sound property replaced with new ViewFrame.LinkedAudio property
* Added AudioChannel.SetRoomLocation function to emulate the facility provided by directional ambient sounds
* Added AudioChannel.LengthMs property
* Implemented the speech volume drop setting for Audio Types
* Improved accuracy of Position property with OGG audio
* Removed room properties Play Music On Load, Music Volume and Save/Load Enabled since they are now obsolete
* Dynamic sprite deletion warning is now only displayed on exit if Debug Mode is turned on
* Changes to improve music glitching when changing rooms in D3D mode
* Fixed editor crash if you tried to delete an audio clip when a preview of it was playing
* Fixed Sierra-style speech box moving if the room was scrolled around while it was displayed
* Fixed Dynamic Sprites causing memory corruption if a mouse cursor was set to sprite 0
* Fixed Make Default Language command crashing if two different source lines mapped to the same translated line
* Fixed crash importing old game if there was no Sound or Music folder
* Fixed intermittent crash when playing WAV/MOD in beta 1
* Fixed keypresses and mouse clicks being ignored after restoring a save game in beta 1

Changes in 3.2 beta 1:

* Rewrote audio system. The old number-based sound and music are gone, replaced with new named audio clips. Added AudioClip.*, AudioChannel.*, Game.IsAudioPlaying, Game.StopAudio, System.AudioChannels, System.AudioChannelCount, System.Volume script commands.
* Added Game.IgnoreUserInputAfterTextTimeoutMs, Maths.Exp, Maths.Log, Maths.Log10, Maths.Cosh, Maths.Sinh, Maths.Tanh
* Added Applies To feature to custom properties, so that you can have properties that only apply to Rooms or Characters, for example
* Improved colour quality of mini-sprites displayed in sprite manager
* Improved the user-friendliness of some error messages, thanks to Error Reporting
* Disabled editor option to save changes whilst the game was running, since doing so could cause sprite file corruption
* Renamed the "handle inventory clicks in script" general setting to better reflect what it does
* Fixed sprite entry getting duplicated if you dragged a sprite to the end of the list
* Fixed crash with Hq2x and Hq3x graphics filters (3.1.2 regression)
* Fixed Compress Sprites setting not taking effect until you next edited some sprites
* Fixed struct member functions with more than 9 parameters giving run-time error
* Fixed File commands looking in the wrong directory if you launched the game by double-clicking a save game in explorer
* Fixed run-time error if you returned a string from a function that was a member of a local dynamic array
* Fixed sprite cache corruption if you had a single sprite larger than 20 MB
* Fixed editor crash creating new game if your Windows username had unicode characters in it
* Fixed Views tree collapsing after renaming or drag-dropping a view
* Fixed editor crash on startup if you made the editor window very small before closing it down last time
* Fixed when importing an 8-bit image, if there was another palette slot in the image with the same colour as the transparent slot it got changed to black
* Fixed no line number provided when DynamicSprite.CreateFromDrawingSurface threw an error

New Audio System

The main change in this release is the re-written audio system.

It is still a bit rough round the edges and is not claiming to be complete, but I thought it was a good time to get some feedback on it from you guys.

When you load (A BACKUP COPY!!!!) of your game into this beta editor, you'll notice that you now see all the sound and music imported into the project tree. They will initially be given names like aMusic50 and aSound16. If you want the old commands like PlaySound and PlayMusic to continue working, you must leave them with these names.

To play an audio clip, just do:
aAudioName.Play();

If you want to be able to fiddle with the audio once it is playing, you can do this:
AudioChannel *channel = aAudioName.Play();
and then later:
channel.Volume = 60;  (for example)

The new audio system has a concept called audio types, which are the way that sound and music are split up.

The only difference between them is that the Music audio type is limited to 1 audio channel, whereas the Sound audio type is unlimited (within the overall 8 channels that is). This is for ease-of-use, so that when you play a new Music it will automatically stop any existing one that is playing; whereas this won't be the case with sounds.


http://www.adventuregamestudio.co.uk/AGS-3.2-Final5.exe
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GarageGothic on Sun 03/05/2009 16:07:56
Sweet. I don't have many sounds in my game yet, but I'll definitely take the new audio functions for a spin.

Quote* Added Applies To feature to custom properties, so that you can have properties that only apply to Rooms or Characters, for example

Sounds very practical, I was actually thinking about the problem with the properties window becoming cluttered just the other day.

Quote* Fixed no line number provided when DynamicSprite.CreateFromDrawingSurface threw an error

Thanks, now I can start troubleshooting that code.

Great work as always, CJ!

Edit: Perhaps this has been reported before, but if you try to "Open" the game you're currently editing (a save/reload is apparently necessary for changes to the "applies to" value of custom property to register in the editor), you get the message "Cannot load the game, because it is already open in another copy of the AGS Editor".

Edit 2: Fixed the scripting problem that I couldn't locate in previous version because DynamicSprite.CreateFromDrawingSurface didn't return a line number. Good thing I waited, because it turned out it was somewhere else entirely than I suspected. Many thanks!
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: xenogia on Sun 03/05/2009 22:33:07
Amazing I look forward to trying it out.

EDIT:
I thought I would just bring up two different bugs.

1. Light levels between DD5 and DX9 where light tinting doesn't work correctly when using DX9 mode.  The thread is here: http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37672.0 (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37672.0)

2. The issue when playing OGG Theora video files where if you play a video with audio bypassed then play a video with audio it won't play the audio of video file that is required.  Thread is here: http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37610.0 (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37610.0)
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GrogGames on Mon 04/05/2009 03:34:50
WOW, GREAT!!!

NowI'm doing and testing a IMuse module

I'll informate any bug  I find



EDIT:
the simultaneous reproduction works fine with ogg, but its not suported by midi, will you implement this feature in some future releases?




thanks
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Gilbert on Mon 04/05/2009 06:15:31
I think simultaneous playing of MIDI is very difficult (if it is ever possible at all) to do. To reliably implement it you must make sure that the side playing the musics has two MIDI playback devices (which theoretically shouldn't be hard as modern systems usually only use soft-synths as oppose to hardware, but unfortunately AFAIK few soft-synth drivers would emulate two devices at the same time).
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Mon 04/05/2009 15:58:36
QuoteEdit: Perhaps this has been reported before, but if you try to "Open" the game you're currently editing you get the message "Cannot load the game, because it is already open in another copy of the AGS Editor".

Well, you should never need to Open the game that is already open...

Quote(a save/reload is apparently necessary for changes to the "applies to" value of custom property to register in the editor)

I can't replicate this, can you provide step-by-step instructions for how to see this problem?

Quote1. Light levels between DD5 and DX9 where light tinting doesn't work correctly when using DX9 mode.  The thread is here: http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37672.0

2. The issue when playing OGG Theora video files where if you play a video with audio bypassed then play a video with audio it won't play the audio of video file that is required.  Thread is here: http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37610.0

Ok thanks, I will look into these once I have finished with the audio system changes.

Quotethe simultaneous reproduction works fine with ogg, but its not suported by midi, will you implement this feature in some future releases?

The audio library that AGS uses only supports one MIDI at a time, and due to the fact that most people have moved away from MIDI and into digital music nowadays I don't think I can justify investing the large amount of time that would be necessary to get multiple playback working.

I will however update the manual page to clarify this limitation.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GarageGothic on Mon 04/05/2009 16:41:11
Quote from: Pumaman on Mon 04/05/2009 15:58:36
Quote(a save/reload is apparently necessary for changes to the "applies to" value of custom property to register in the editor)

I can't replicate this, can you provide step-by-step instructions for how to see this problem?

Never mind, I can't replicate it either. I could swear that this happened when I imported my game into 3.2 BETA 1, but doing it again everything seems to work fine. Must have confused some similarly named properties. Sorry 'bout that.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Dualnames on Tue 05/05/2009 11:28:58
Woot, downloading and will test my game.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: subspark on Wed 06/05/2009 06:56:06
QuoteEdit: Perhaps this has been reported before, but if you try to "Open" the game you're currently editing you get the message "Cannot load the game, because it is already open in another copy of the AGS Editor".

Well, you should never need to Open the game that is already open...

I think he means that the error message is counter-intuitive, Chris. I don't think any of us are THAT stupid lol. :P
Nice work with the new version too! Great to see new systems coming into AGS mate. Well done!

Cheers,
Sparky.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Ishmael on Thu 07/05/2009 13:36:40
Quote from: Pumaman on Sun 03/05/2009 15:34:47
* Added Applies To feature to custom properties, so that you can have properties that only apply to Rooms or Characters, for example

Finally, thank you! :) I've been waiting for this since the dawn of properties or so.

And the new audio system seems very spiffy. A thought that crossed my mind on handling places that want a number, score sound etc.: Have a pre-set audio file name that you set the desired audio file to, and it's automatically used? Like you set aScoreSound on some clip and you're all set. Ofcource this wouldn't work just like that for everything, but I don't see why it wouldn't work. But it might need a good reference on the manual, unless the editor provides one on the fly for the more complex currently number-based sound bits.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Joe on Thu 07/05/2009 19:05:06
My compiled game crashed and it generated a "CrashInfo.3.20.1080.dmp" file but i don't know how to open it. I don't think is't because of scripting since It never happened to me when I compile the same version of my game using the previous version of AGS.

How do I open the "CrashInfo.3.20.1080.dmp" file?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Trent R on Thu 07/05/2009 19:28:45
This looks great! DLing right now, and I'll toss my projects into it tonight.

Quote from: Joe Carl on Thu 07/05/2009 19:05:06
How do I open the "CrashInfo.3.20.1080.dmp" file?
You don't. Upload it to a space and send it to CJ.


~Trent
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GrogGames on Thu 07/05/2009 19:45:36
We are trying to make an imuse system where the instruments load in different ogg files (with the same length) and reproduce at the same time, so when you move from one region of the room to another some instruments will start playing while other may stop or the other way around. What should happen is that the new sounds should start looping following the reproduction time of the ones that are already playing while that isn't what's happening. Instead of that , they start with a little random lag, for example:
We have 2 oggs with 30 sec duration, battery and guitar. In region 1, battery is playing and in region 2 while battery is still playing the guitar starts playing too. Lets say that on sec 17 i move from region 1 to 2. What should happen is that the guitar file should start playing its 17th sec and on, but what actually happens is that it may start between sec 17-19 randomly thus changing the global rythm of the music.

This is the code where I add the differents instruments:


//Im combining a struct with array to store the imuse instruments
#define MAXINSTR 10

struct type_instrument{
  AudioClip* Clip;
  AudioChannel* Channel;
  bool waittoplay;
};

type_instrument instrument[MAXINSTR];

//To add and instrument, i change waittoplay to true (and change other less important stuff too), then i do this in repeatedly execute:
function repeatedly_execute()
{
  int NewClip = 0;
  while(NewClip  < MAXINSTR){
    if(instrument[NewClip].waittoplay){
      //search a Clip Playing and store the position
      int position = 0;
      int counter = 0;     
      int clipplaying = 0;
      while(counter < MAXINSTR){
        if(instrument[counter].Channel)
          clipplaying =  counter;
        counter++;}
        position = instrument[clipplaying].Canal.Position;
      //then, play the clip in that position
      instrument[NewClip].Channel= instrument[NewClip].Clip.PlayFrom(position, eAudioPriorityNormal, eRepeat);


Here is a sample, using the same instrument 2 times:
http://www.mediafire.com/?lzimgw33ozw
(In this demo i use position-300 in playfrom,  for a minor lag time)

Try walking to the green region, that lag is not always equal.


Thanks for your time
Nahuel36
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Thu 07/05/2009 20:16:38
QuoteA thought that crossed my mind on handling places that want a number, score sound etc.: Have a pre-set audio file name that you set the desired audio file to, and it's automatically used? Like you set aScoreSound on some clip and you're all set

Yes, this is one of the things I still need to sort out. I'm currently thinking about different ways to do this.

QuoteMy compiled game crashed and it generated a "CrashInfo.3.20.1080.dmp" file but i don't know how to open it. I don't think is't because of scripting since It never happened to me when I compile the same version of my game using the previous version of AGS.

How do I open the "CrashInfo.3.20.1080.dmp" file?

As Trent says, you don't open it. It contains information for me that will help me track down what caused the crash, so if you could upload it and post the link to the file for me to investigate, that would be great.

QuoteWhat should happen is that the new sounds should start looping following the reproduction time of the ones that are already playing while that isn't what's happening. Instead of that , they start with a little random lag, for example:

The OGG decoder does some buffering which means it decodes the audio in blocks; the Position is only accurate to the nearest block (however it should be the same as what GetMP3PosMillis used to return). I did some investigation about this a while back, I'll look into it further as it might be easy to fix.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Joe on Thu 07/05/2009 20:45:21
Ok here you are: http://joecarlhr.googlepages.com/CrashInfo.3.20.1080.dmp
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Dualnames on Sun 10/05/2009 13:50:38
CJ, I found a glitch but not 100% sure it's with AGS 3.2.1 bu I managed to reproduce it twice on it.

Well, to start things properly, I loaded my game from 3.1.2 to 3.2.1 everything seemed fine, so I started testing the game to see if indeed it is. At some point I saved the game, and when I loaded it mouse clicks and keypresses didn't work, when however the game changed room everything was cool, and mouse clicks worked properly and keypresses too. I tried to reproduce it on 3.1.2 but didn't,but I could easily reproduce it with 3.2.1, probably this doesn;t help at all.. but there's something having to do when loading a game. For when I save it everything works fine. I've been trying to reproduce it on 3.1.2 till last night, but I've yet to manage. Does anything have to do with savegames appearing on the savelist gui from two different interpeters?

EDIT: Oh, and with the new system and all, what's the equivalent of PlayAmbientSound?, I know its aSoundClip42.Play, but is there a way to create the same effect that ambient sound did with the new system? Perhaps panning?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GarageGothic on Sun 10/05/2009 15:19:22
Thanks for pointing out the Panning property, Dualnames, I had missed that - excellent addition CJ, many thanks! I look forward to playing around with that for my footstep sounds script.

I love the new audio system, seems to work great. But would it be possible to add an AudioClip.Length property? Perhaps it makes more sense with an AudioChannel.Length (since all the get/set position functions are called on channels), but I would find it quite practical to be able to retrieve the length of each clip without actually playing them.

Edit: Also, are there any plans for allowing us to play back Speech audio through regular AudioClip functions -  something like aSpeechEgo1.Play()? Currently there seems to be no way of accessing those lines short of the normal Dialog/Say functions.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Sun 10/05/2009 23:03:08
QuoteOk here you are: http://joecarlhr.googlepages.com/CrashInfo.3.20.1080.dmp

Thanks. Did you notice if the game was playing or was about to play any sound/music when the crash happened?

Is the game small enough to be uploaded for me to investigate?

QuoteAt some point I saved the game, and when I loaded it mouse clicks and keypresses didn't work

Thanks for this, I think there's a problem related to the new Game.IgnoreUserInputAfterTextTimeoutMs property and loading save games; I'll look into it.

QuoteOh, and with the new system and all, what's the equivalent of PlayAmbientSound?, I know its aSoundClip42.Play, but is there a way to create the same effect that ambient sound did with the new system? Perhaps panning?

If you're referring to the (X,Y) location that you used to be able to pass to PlayAmbientSound, then that is no longer supported. I wasn't sure whether anybody was actually using it; if so, it can make a comeback.

QuoteBut would it be possible to add an AudioClip.Length property? Perhaps it makes more sense with an AudioChannel.Length (since all the get/set position functions are called on channels), but I would find it quite practical to be able to retrieve the length of each clip without actually playing them.

I'll see if it's possible to add this for the various audio types.

QuoteEdit: Also, are there any plans for allowing us to play back Speech audio through regular AudioClip functions -  something like aSpeechEgo1.Play()? Currently there seems to be no way of accessing those lines short of the normal Dialog/Say functions.

Speech has deliberately been kept separate from these audio changes, however some sort of PlaySpeech command may well be added later.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Joe on Sun 10/05/2009 23:17:55
Quote from: Pumaman on Sun 10/05/2009 23:03:08
QuoteOk here you are: http://joecarlhr.googlepages.com/CrashInfo.3.20.1080.dmp

Thanks. Did you notice if the game was playing or was about to play any sound/music when the crash happened?

Is the game small enough to be uploaded for me to investigate?

Yes it should play a sound just when the game crashes. And compiled the game without modifiyng the code I used in AGS 3.1.2

Hmm the game source is 14mb and I don't know where to upload that size since google pages just let me uploading files smaller than 10mb
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Shane 'ProgZmax' Stevens on Mon 11/05/2009 00:02:09
I'm sure lots of people use fixed locations for sound playback; I know I do.  Also, I was wondering if there's a flag in the audio settings to enable/disable looping so you can easily have a sound or music file repeat (I can't seem to find any info on it)?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Trent R on Mon 11/05/2009 01:00:17
@Joe Carl http://www.wikisend.com/
Temporary upload space (up to 90 days) for up to 100 MB.


~Trent
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Dualnames on Mon 11/05/2009 13:51:30
Quote from: Pumaman on Sun 10/05/2009 23:03:08
If you're referring to the (X,Y) location that you used to be able to pass to PlayAmbientSound, then that is no longer supported. I wasn't sure whether anybody was actually using it; if so, it can make a comeback.


Please, do. I'm using a lot of ambient sounds with that, of course we can still use the old style speech for it. I'm not sure but perhaps a workaround with panning and volume might do it?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: ThreeOhFour on Mon 11/05/2009 15:16:47
Quote from: Dualnames on Mon 11/05/2009 13:51:30
Quote from: Pumaman on Sun 10/05/2009 23:03:08
If you're referring to the (X,Y) location that you used to be able to pass to PlayAmbientSound, then that is no longer supported. I wasn't sure whether anybody was actually using it; if so, it can make a comeback.


Please, do. I'm using a lot of ambient sounds with that, of course we can still use the old style speech for it. I'm not sure but perhaps a workaround with panning and volume might do it?

I'd like to see the (X,Y) location for ambient sounds supported too if it's not too much trouble :).
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GarageGothic on Mon 11/05/2009 15:56:21
Quote from: Pumaman on Sun 10/05/2009 23:03:08
QuoteEdit: Also, are there any plans for allowing us to play back Speech audio through regular AudioClip functions -  something like aSpeechEgo1.Play()? Currently there seems to be no way of accessing those lines short of the normal Dialog/Say functions.

Speech has deliberately been kept separate from these audio changes, however some sort of PlaySpeech command may well be added later.

I'm crossing my fingers that this will be implemented eventually. It would be super neat to use the Panning feature to distinguish speaking characters by their position in the room, and direct access to voice files (instead of workarounds like temporarily moving the character to the current room and turning him invisible) would make it much cleaner to script for instance a dictaphone interface like the one in GK1. Not to mention that it would allow us to script background speech with voice without having to store the voice audio as sound effects.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Joe on Mon 11/05/2009 16:13:41
Here is the link: DOWNLOAD (http://wikisend.com/download/518068/KillJD%20BAK.rar)

Thanks Trent.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Mon 11/05/2009 18:05:21
QuoteYes it should play a sound just when the game crashes. And compiled the game without modifiyng the code I used in AGS 3.1.2

Hmm interesting, maybe you could just upload the sound file that it was about to play? Is it just using a PlaySound command?

QuoteI'm sure lots of people use fixed locations for sound playback; I know I do.

Hmm ok, in that case it can make a comeback. Not sure why I'd got the idea that nobody was using it.

QuoteAlso, I was wondering if there's a flag in the audio settings to enable/disable looping so you can easily have a sound or music file repeat (I can't seem to find any info on it)?

Well, you can set the Repeat property on the audio clip in the editor, or specify it as one of the parameters to the Play command in the script. I'm not sure what else you might have in mind?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GarageGothic on Mon 11/05/2009 18:52:16
CJ, could you please explain how the new AudioCache folder works? It seems that it stores all imported audio files so that the Sound and Music folders are obsolete once the game has been converted to 3.2? If this is the case, perhaps some kind of "Update from source" feature would be appreciated since the internal naming convention is far from transparent (e.g. au00000B.ogg).
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Joe on Mon 11/05/2009 19:12:52
Quote from: Pumaman on Mon 11/05/2009 18:05:21
QuoteYes it should play a sound just when the game crashes. And compiled the game without modifiyng the code I used in AGS 3.1.2

Hmm interesting, maybe you could just upload the sound file that it was about to play? Is it just using a PlaySound command?


Never mind, I EDITED my last post and uploaded the full game source. And I dont know exactly which sound should be played when the game crashes since It should play more than one sound.

EDIT: Yes, I used PlaySound command, but now I've just realized the game crashes only some times, other times it does play the sound.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Mon 11/05/2009 23:18:22
QuoteCJ, could you please explain how the new AudioCache folder works? It seems that it stores all imported audio files so that the Sound and Music folders are obsolete once the game has been converted to 3.2? If this is the case, perhaps some kind of "Update from source" feature would be appreciated since the internal naming convention is far from transparent (e.g. au00000B.ogg).

When you add audio files, AGS makes a copy of them into the AudioCache folder. This is so that if you delete or move the originals, they will still be available in the game.

When you compile the game, AGS should automatically check the source audio files, and if they have changed it will automatically copy the new version into the AudioCache folder. So you should just be able to update your source sound files and they should automatically get pulled in next time you Run the game.

QuoteNever mind, I EDITED my last post and uploaded the full game source. And I dont know exactly which sound should be played when the game crashes since It should play more than one sound.

Thanks. What point in the game is it where it crashes? Is there any particular sequence of steps that I should take to reproduce the crash?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GarageGothic on Mon 11/05/2009 23:40:21
Oh, excellent. I hadn't tried compiling, I just noticed that changed source files weren't updated in the cache after closing/restarting the editor. Thanks for the explanation.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Joe on Mon 11/05/2009 23:44:16
QuoteThanks. What point in the game is it where it crashes? Is there any particular sequence of steps that I should take to reproduce the crash?

New game and start shooting faces, It should crash soon.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Shane 'ProgZmax' Stevens on Tue 12/05/2009 00:55:42
QuoteWell, you can set the Repeat property on the audio clip in the editor, or specify it as one of the parameters to the Play command in the script. I'm not sure what else you might have in mind?

A setting in the Play command works for me, I just couldn't find any reference to looping in the list of changes and haven't had time to download it yet :).
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Tue 12/05/2009 23:22:07
Quote from: Joe Carl on Mon 11/05/2009 23:44:16
New game and start shooting faces, It should crash soon.

Ok thanks, I think I know what might be causing this, I'll fix it for the next beta.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Joe on Wed 13/05/2009 12:22:39
Perfect! Good luck ;)
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Dualnames on Wed 13/05/2009 22:00:18
Btw, I have this issue, that keeps bugging me, without having any speech files, a speech vox (1kb) is created and thus game considers speech is available. Is there a way to get rid of it from appearing every time I compile the game?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Trent R on Wed 13/05/2009 23:40:49
I threw one of my projects in there and it compiled and played fine. But since I don't have any speech or sound files, I couldn't exactly play with the new functionality. Though I did read the manual entries on AudioClip and AudioChannel and I am excited. (those were the only new additions to the manual, right?)


~Trent
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Yeppoh on Thu 14/05/2009 17:57:26
Quote* handle other places that expect a sound number, eg. Score Sound, View Frame Sound

I met this situation. Indeed. I have assigned step sound on walk animations in the editor and the game crashes at that point. So I can't test the engine further for the moment. =P

I found two non-critical little bugs (and I noticed they were in the previous version of AGS too) :

Custom Proprieties Stop Character Editor Bug:
I created a Custom Propriety (for a Character) and the title string (called for Character.GetPropriety()) was too long. It was notified when compiling. Due to a stupid reflex I double-clicked on the error line to get automatically at the faulty line in the script. Of course there's isn't one, since it's in the editor API, thus nothing happened, visually. But... I couldn't open the Character Editor anymore to correct it in the Custom Propriety window.
I needed to re-start the AGS editor.

The Undo Bug:
In the GlobalScript, I wrote a null global String variable (let's call it 'htspt' - and without 'export' yet) outside any function; that is called/written in the on_mouse_click() and called/read in a function below. Compiled, tested. It was fine.
Then I considered it was maybe better to put that global String in another Script Module (let's call it sGamePlay) that was before the GlobalScript. So I cut (with Ctrl+X) the line containing the global String 'String htspt;' and pasted (Ctrl+V) into sGamePlay.
Then I reconsidered that it was maybe not a good idea and it was better leaving it in the GlobalScript; until that thought, I didn't do anything yet: no saving, no compiling, no adding 'export', no typing - excepting the Ctrl+V.
So instead of cut and pasting back again, I just undid (Ctrl+Z) what I did in both Scripts so that they were like they were before the change; the '*' disappeared in the tab. And I just pressed F5 to check.
The compiler returned me the error that the String 'htspt' token wasn't defined, although it was.
I needed to retype the line - not necessary the whole line, just partially; I had, for instance, to erase a character like the ';' and put it back. Then it worked fine.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Trent R on Fri 15/05/2009 01:49:58
QuoteOf course there's isn't one, since it's in the editor API, thus nothing happened, visually.
IIRC, this should jump to other areas in the editor too, not just script lines. But of course, your case is an apparent bug, probably due to the fact that custom Properties pop up in an extra window.


~Trent
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Mon 18/05/2009 20:02:27
QuoteBtw, I have this issue, that keeps bugging me, without having any speech files, a speech vox (1kb) is created and thus game considers speech is available. Is there a way to get rid of it from appearing every time I compile the game?

You might have a .PAM file, or a syncdata.dat file in the game folder. If so, delete them and it should stop generating the VOX

QuoteI created a Custom Propriety (for a Character) and the title string (called for Character.GetPropriety()) was too long. It was notified when compiling. Due to a stupid reflex I double-clicked on the error line to get automatically at the faulty line in the script. Of course there's isn't one, since it's in the editor API, thus nothing happened, visually. But... I couldn't open the Character Editor anymore to correct it in the Custom Propriety window.

Hmm I couldn't replicate this problem. I created a custom property with a long name, got the error when compiling, double-clicked it and nothing happened. But then I could still carry on and open the Character Editor as normal...

QuoteThe Undo Bug:

Thanks for reporting this, I can replicate this and will look into it.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: abstauber on Tue 19/05/2009 12:17:47
There's bug with line numbering (which is present in 3.1.2 as well).

When using line-numbering in a custom dialog gui, the line numbers a being rendered as well.

When processing strings with
DialogToRender.GetOptionText();
it doesn't return line numbers (which is good), but
Surface.DrawStringWrapped()
displays the line number.


There's another one (or is it a feature request ;) )

The surface in a custom dialog doesn't support partial transparency.
So using the transparency parameter in Surface.DrawImage results in a partially pink surface.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Tue 19/05/2009 19:18:19
Quote from: abstauber on Tue 19/05/2009 12:17:47
When using line-numbering in a custom dialog gui, the line numbers a being rendered as well.

When processing strings with
DialogToRender.GetOptionText();
it doesn't return line numbers (which is good), but
Surface.DrawStringWrapped()
displays the line number.

I don't really understand what you mean here. Are you using custom dialog options scripting, eg. dialog_options_render? Are you saying that Surface.DrawStringWrapped is adding a number to the text it is writing? Can you post an example?

QuoteThe surface in a custom dialog doesn't support partial transparency.
So using the transparency parameter in Surface.DrawImage results in a partially pink surface.

Yes, this has already been mentioned. It'll get done at some point!
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: GarageGothic on Wed 20/05/2009 02:12:43
A non-critical editor bug: If you try to import an old game that doesn't have a Music folder, you'll get an elaborate System.IO error message. The editor doesn't crash but the game cannot be imported until you create the folder.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: abstauber on Wed 20/05/2009 08:59:47
Quote from: Pumaman on Tue 19/05/2009 19:18:19

I don't really understand what you mean here. Are you using custom dialog options scripting, eg. dialog_options_render? Are you saying that Surface.DrawStringWrapped is adding a number to the text it is writing? Can you post an example?


Sorry if I expressed myself unclear. Yes I use custom dialog rendering and when there's line numbering in the option text, it's getting displayed.
Here's an example for the option text in the dialog editor

&1 How are you ?

Quote from: Pumaman on Tue 19/05/2009 19:18:19
Yes, this has already been mentioned. It'll get done at some point!

I though you've meant images with semi-transparent pixels there, sorry for double reporting then :)
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Thu 21/05/2009 22:43:42
Quote from: GarageGothic on Wed 20/05/2009 02:12:43
A non-critical editor bug: If you try to import an old game that doesn't have a Music folder, you'll get an elaborate System.IO error message. The editor doesn't crash but the game cannot be imported until you create the folder.

Interesting, I'll look into it.

QuoteSorry if I expressed myself unclear. Yes I use custom dialog rendering and when there's line numbering in the option text, it's getting displayed.
Here's an example for the option text in the dialog editor

&1 How are you ?

Oh I see, I thought you meant Auto-Number Dialog Options, not voice speech numbering :)

Hmm, I'm not sure how to tackle this. In some situations you might want GetOptionText to retain the &1-style numbers, so that should probably stay ... but would it be safe for Surface.DrawString to always strip them out? I'll have a think about it.

QuoteI though you've meant images with semi-transparent pixels there, sorry for double reporting then

Oh sorry, maybe I've misunderstood. Well, if you have a transparent surface and you semi-transparently draw onto it, then it will have nothing to draw against except the transparent background, so you'll get a pink effect. You would need an opaque image to already be on the surface in order to DrawImage semi-transparently onto it.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: monkey0506 on Fri 22/05/2009 05:54:45
Quote from: Pumaman on Thu 21/05/2009 22:43:42Hmm, I'm not sure how to tackle this.

Perhaps the best method would be an optional bool for Dialog.GetOptionText (default true) to includeSpeechNumber?

It seems better IMO than an arbitrary decision regarding the DrawingSurface functions...
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: abstauber on Fri 22/05/2009 16:13:30
Oh I see... well if it's not a bug, I guess, I could filter them out myself ;)

Btw. why should I want them to be displayed? For the ease of translation?
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: freshpaint on Mon 25/05/2009 16:00:06
Finally trying to get caught up with the latest -- yes, please do put the playambientsound with  locations back!  I just spent a whole bunch of time modifying a room to use this feature (kind of like an audio maze).

Assuming the weather doesn't turn lovely again, will try to test Pig Flu with my neverending Darkdevil game this week.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Yeppoh on Wed 03/06/2009 10:02:31
Quote from: Pumaman on Mon 18/05/2009 20:02:27
QuoteI created a Custom Propriety (for a Character) and the title string (called for Character.GetPropriety()) was too long. It was notified when compiling. Due to a stupid reflex I double-clicked on the error line to get automatically at the faulty line in the script. Of course there's isn't one, since it's in the editor API, thus nothing happened, visually. But... I couldn't open the Character Editor anymore to correct it in the Custom Propriety window.

Hmm I couldn't replicate this problem. I created a custom property with a long name, got the error when compiling, double-clicked it and nothing happened. But then I could still carry on and open the Character Editor as normal...

For some unknown reasons I can't replicate it either. I can't remember if there might have been something I missed.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: abstauber on Sun 07/06/2009 10:35:48
I finally found some time to play with AGS 3.2 some more.

Here are some things I've been stumbling upon.

No. 1
This is more odd behaviour, than a bug ;)

My computer is a little slow and when I launch AGS games, it gets some kind of hiccup. The game window freezes for a split seconds while the audio hangs.
Sound comes out of the speaker, it repeats the last fraction of what should have been played... e.g. if a word like "Jones" is played, I get Jo.o.o.o.o.o.o.o.nes.
This happens randomly after starting the game and I think it even isn't AGS' fault.

But when I play two sound files simultaneously like this

     
cSong       = aSongTrack.Play(eAudioPriorityVeryHigh);
cInstrument = aInstrument.Play(eAudioPriorityVeryHigh);


They are totally out of sync after my hiccup.

No. 2
Is it possible to add the audioclip pointer to the manual and the auto-complete?

Except this isn't valid code (it compiles fine though)


AudioClip *aSongTrack;
AudioClip *aInstrument;

aSongTrack = aBangSong;
aInstrument = aBangInstr;



No. 3
An unhandled error occurs when you try to remove an audio file which on 'pause' in the audio-tab.


Error: Unable to delete the file 'D:\Eigene Dateien\RythmGame\AudioCache\au00000B.ogg'.
Der Prozess kann nicht auf die Datei "D:\Eigene Dateien\RythmGame\AudioCache\au00000B.ogg" zugreifen,
da sie von einem anderen Prozess verwendet wird.
Version: AGS 3.2.0.86

AGS.Types.CannotDeleteFileException: Unable to delete the file 'D:\Eigene Dateien\RythmGame\AudioCache\au00000B.ogg'.
Der Prozess kann nicht auf die Datei "D:\Eigene Dateien\RythmGame\AudioCache\au00000B.ogg" zugreifen,
da sie von einem anderen Prozess verwendet wird. ---> System.IO.IOException:
Der Prozess kann nicht auf die Datei "D:\Eigene Dateien\RythmGame\AudioCache\au00000B.ogg"
zugreifen, da sie von einem anderen Prozess verwendet wird.
   bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   bei System.IO.File.Delete(String path)
   bei AGS.Editor.AGSEditor.AttemptToDeleteFileFromDisk(String fileName)
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei AGS.Editor.AGSEditor.AttemptToDeleteFileFromDisk(String fileName)
   bei AGS.Editor.AGSEditor.DeleteFileOnDiskAndSourceControl(String[] fileNames)
   bei AGS.Editor.Components.AudioComponent.DeleteResourcesForAudioClips(IList`1 clipsToDelete)
   bei AGS.Editor.Components.AudioComponent.DeleteResourcesForAudioClip(AudioClip clipToDelete)
   bei AGS.Editor.Components.AudioComponent.ItemCommandClick(String controlID)
   bei AGS.Editor.Components.BaseComponentWithFolders`2.CommandClick(String controlID)
   bei AGS.Editor.GUIController._mainForm_OnMenuClick(String menuItemID)
   bei AGS.Editor.ProjectTree.ContextMenuEventHandler(Object sender, EventArgs e)
   bei System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   bei System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   bei System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   bei System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   bei System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   bei System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   bei System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   bei System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   bei System.Windows.Forms.Control.WndProc(Message& m)
   bei System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   bei System.Windows.Forms.ToolStrip.WndProc(Message& m)
   bei System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)



If you then stop the audio-clip and try to remove it again, the following happens:

(I guess it means, that a object pointer does not point to an instance  ??? )

Error: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
Version: AGS 3.2.0.86

System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
   bei AGS.Editor.Components.AudioComponent.ItemCommandClick(String controlID)
   bei AGS.Editor.Components.BaseComponentWithFolders`2.CommandClick(String controlID)
   bei AGS.Editor.GUIController._mainForm_OnMenuClick(String menuItemID)
   bei AGS.Editor.ProjectTree.ContextMenuEventHandler(Object sender, EventArgs e)
   bei System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   bei System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   bei System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   bei System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   bei System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   bei System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   bei System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   bei System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   bei System.Windows.Forms.Control.WndProc(Message& m)
   bei System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   bei System.Windows.Forms.ToolStrip.WndProc(Message& m)
   bei System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


After I restart AGS, the music files are gone.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: Pumaman on Sun 07/06/2009 17:49:28
Quote from: abstauber on Sun 07/06/2009 10:35:48
My computer is a little slow and when I launch AGS games, it gets some kind of hiccup. The game window freezes for a split seconds while the audio hangs.

Hmm, does anyone else get this problem? Does it happen only full-screen or windowed, or both?

QuoteIs it possible to add the audioclip pointer to the manual and the auto-complete?

Except this isn't valid code (it compiles fine though)


AudioClip *aSongTrack;
AudioClip *aInstrument;

aSongTrack = aBangSong;
aInstrument = aBangInstr;


I'm not sure what you mean by this, the autocomplete and manual do include the AudioClip commands?

QuoteAn unhandled error occurs when you try to remove an audio file which on 'pause' in the audio-tab.

Thanks for spotting this, I'll get it fixed.
Title: Re: AGS 3.2 beta 1 - Pig Flu Edition
Post by: abstauber on Mon 08/06/2009 08:08:52
Quote
AudioClip *aSongTrack;
AudioClip *aInstrument;

aSongTrack = aBangSong;
aInstrument = aBangInstr;

I'm not sure what you mean by this, the autocomplete and manual do include the AudioClip commands?

Oh, sorry... I should have waited a little more to post this..
I somehow was expecting an example like
AudioClip *aSongTrack = aBangSong.Create(); ... which is bogus of course ;)
Also after a restart of AGS, the autocomplete now shows me those pointers, it just wasn't shown after I declared them. 


About my computer's hiccup:
I usually play games in windowed mode, direct 5 and 3x filter - but I haven't tested fullscreen yet. But it also happens with other games, so I guess this is only my machine or some evil process in the background which pushs the CPU load to 100% for short while.

But there's also another strange behaviour on those hiccups: the gameloops seem to stop, but the audioposition moves on.

Here's my test setting.
In the room load, I add:
AudioChannel *channel = aSong.Play();

And in the repeatly_execute I also start a timer.
timer += 25;

(the gamespeed is set to 40, which should mean: about 1 loop per 25 msec.)

When I now start the testgame, this timer and the result of aSong.PositionMs are in the same region. Of course the timer only "jumps" into 25 msec steps.
But after the hiccup, there's a huge gap. So I assume, the engine paused, while the sound kept on going somehow. Is that possible?
(and sorry for this extensive post ;) )
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Mon 08/06/2009 23:49:29
QuoteAlso after a restart of AGS, the autocomplete now shows me those pointers, it just wasn't shown after I declared them.

Ah ok, it could just be that the autocomplete needs to update more often, I'll take a look.

QuoteWhen I now start the testgame, this timer and the result of aSong.PositionMs are in the same region. Of course the timer only "jumps" into 25 msec steps.
But after the hiccup, there's a huge gap. So I assume, the engine paused, while the sound kept on going somehow. Is that possible?

Yeah, because the audio is sent into a buffer on your sound card, it will continue to play even when the CPU is locked up with other things. When that buffer runs out and is not filled with new data by the CPU, it just plays the contents of the buffer over again, which is why you get the stuttering effect.



Anyway, Beta 2 is now up. You cannot load in games from Beta 1 -- any test games you made with beta 1 need to be thrown away. However, from this point on, games saved with Beta 2 will be supported by future versions.

This basically completes the new audio system now. There are a couple of remaining missing bits listed in the first post -- crossfading being the main one. Your feedback is welcome.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Dualnames on Mon 08/06/2009 23:53:34
Woohoo you fixed the translation thingy. Downloading..
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: xenogia on Tue 09/06/2009 04:26:17
Will you be making it so that when the final version is released it will automatically convert the obselete lines of code in the audio system to the new.  This would make life a lot easier.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Shane 'ProgZmax' Stevens on Tue 09/06/2009 04:39:46
I agree that some conversions/tweaks would help, even if it means checking to see if the room has a music file set to play on load and changes that out for an audio call to the music file in the room load script.  It would streamline the importing of old games greatly.  It's looking good, in any event!
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: abstauber on Tue 09/06/2009 07:40:33
Quote
Yeah, because the audio is sent into a buffer on your sound card, it will continue to play even when the CPU is locked up with other things. When that buffer runs out and is not filled with new data by the CPU, it just plays the contents of the buffer over again, which is why you get the stuttering effect.

Oh I see, thanks for this info. Then I'd better play a silent ogg and use it as a timer :)

And yay... curry ;D
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Leon on Tue 09/06/2009 08:35:15
Quote from: Dualnames on Mon 08/06/2009 23:53:34
Woohoo you fixed the translation thingy. Downloading..


Does that mean that I can stop digging for this bizarre bug?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: DavidCB on Tue 09/06/2009 09:10:09
   
Oh, what a mistake!  :o I saved my piece of  adv. in the version 3.2 beta 1 with no copies and now I won't open in the 3.2 beta 2.  :P
Is there any way back?  :'(

Thank you

Excuse my English
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Adamski on Tue 09/06/2009 09:20:52
Does Beta 2 remove the 1 music channel limit from Beta 1? Lots of music channels would be extremely useful!
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Shane 'ProgZmax' Stevens on Tue 09/06/2009 10:13:26
When switching quickly through different ogg music tunes in the properties pane AGS crashed.  I was basically playing one and then switching to the next on the list, etc.  It might have something to do with trying to play one music track over the other.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Dualnames on Tue 09/06/2009 11:08:46
Quote from: Leon on Tue 09/06/2009 08:35:15
Quote from: Dualnames on Mon 08/06/2009 23:53:34
Woohoo you fixed the translation thingy. Downloading..


Does that mean that I can stop digging for this bizarre bug?

Yep. For now. I'll test and tell ya.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Adamski on Tue 09/06/2009 13:18:31
I've been playing around with the new audio functions in my lunchbreak and the possibilities are very exciting. I'll have a play around further in the evening but I think it'll be possible to have transition cues and crossfading that's synced to the tempo of your music, so you could actually do something as complex as Woodtick from Monkey Island 2 but with streamed audio!

One question though Ceej, how large is the buffer in samples for music and streamed audio? There's going to be some lag compensation necessary I think on the scripting side, and if the time it takes to buffer music tracks is known then it'll make this a lot easier!

Cheers,
Adam
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Trent R on Tue 09/06/2009 17:28:10
Quote from: DavidCB on Tue 09/06/2009 09:10:09Oh, what a mistake!  :o I saved my piece of  adv. in the version 3.2 beta 1 with no copies and now I won't open in the 3.2 beta 2.  :P
Is there any way back?  :'(
Well David, your best bet is to export things that can be (Guis, Chars, Sprites, etc) and copy-pasting scripts. Note also that you directly import the rooms from the old game (just find the .crm files)

Another way, would possibly be to text-edit the .agf file, but this could turn out buggy so I'd suggest just building it up like above.


~Trent
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Tue 09/06/2009 19:11:00
QuoteWill you be making it so that when the final version is released it will automatically convert the obselete lines of code in the audio system to the new.  This would make life a lot easier.

This isn't something I had planned on doing. The old lines of code like PlaySound should still continue to work as long as you leave the sound and music audio clips with their default names like "aMusic1" and "aSound5", and don't change the configuration of the Audio Types.

Quoteeven if it means checking to see if the room has a music file set to play on load and changes that out for an audio call to the music file in the room load script

This is probably worth doing, especially as the Play Music On Load number is no longer visible -- it should at least pop up a warning and tell you.

QuoteOh I see, thanks for this info. Then I'd better play a silent ogg and use it as a timer

Well, if you have this problem when the game starts up maybe you could just use a Wait(100) at the start of the game before playing any audio, to let your PC catch up with whatever it's doing?

QuoteOh, what a mistake!   I saved my piece of  adv. in the version 3.2 beta 1 with no copies and now I won't open in the 3.2 beta 2.  
Is there any way back?

It is possible for me to revert this, if you upload the Game.agf file and send me a link to it I can repair it for you.

Or if you want to try and fix it yourself, MAKE A BACKUP COPY OF IT, then open the Game.agf in Notepad and:
Find the <AudioClips> section and delete everything between <AudioClips> and </AudioClips> including those two lines themselves.
Then, go back to the top of the file, find this: VersionIndex="5" and change the 5 to 4.
Be very careful if you do that though, you can easily accidentally corrupt your game by editing the file manually.

QuoteDoes Beta 2 remove the 1 music channel limit from Beta 1? Lots of music channels would be extremely useful!

Yes, the limit is now configurable in the Audio Types section. It is still 1 for Music by default, because most people will expect a PlayMusic command to change the playing music rather than starting a second simultaneous one.

QuoteWhen switching quickly through different ogg music tunes in the properties pane AGS crashed.  I was basically playing one and then switching to the next on the list, etc.  It might have something to do with trying to play one music track over the other.

What was the error message? Did you Send Error Report? The server isn't showing any error reports submitted with this beta...

QuoteOne question though Ceej, how large is the buffer in samples for music and streamed audio? There's going to be some lag compensation necessary I think on the scripting side, and if the time it takes to buffer music tracks is known then it'll make this a lot easier!

The buffer size depends on the audio type (I think it's 16 KB for OGG, for example) so it depends on the frequency of the audio file as to how many milliseconds of sound is buffered. For beta 2, I updated the PositionMs property on OGG audio to interrogate the buffer and return a more accurate position, whereas in beta 1 it was returning a position rounded to the nearest buffer size.



Now, one thing I'm not sure how to implement with the new audio system is crossfading. In previous versions of AGS, there was a special hidden audio channel (channel -1) that was used to play the track that was fading out. However, with the new multi-channel system you might have any number of audio clips crossfading across each other (which you could of course now implement manually) so I need to think further about how to provide an easy-to-use default implementation like the one in previous versions.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Shane 'ProgZmax' Stevens on Wed 10/06/2009 00:27:05
AGS just stopped responding or I would have given you an error message.  I had to end the process because it stalled.

Something else:  I can't seem to figure this out, but all my old songs that were set to play in specific rooms still play but there is no script in the room file (whatever.Play) and of course the room music setting is now gone.  Even more interesting, when I try playing a new song with MaxChannels set to 1 it plays over the existing room music rather than stopping it, so I'm guessing there's some Legacy PlayMusic code still running?

To fix this I might just recopy the game again, go through the rooms and set the music property in each one to 0 before importing, but I thought it was worth mentioning.


Edit:  There's a small issue with the Speech/Audio/Sound folder file numbering.  Instead of going from 1-10 and up it goes 0,1,10-19,2,20-29,3 and so on.  Not a big deal, really.

Edit2:  I think the problem with the music playing wasn't a result of the room music setting but the PlayMusic funtion.  It seems to play on a separate channel from the new music.Play command so all my old calls to it still work (but playing a new tune just plays over the old).  Perhaps you could do a a quick code update for the PlayMusic(x) calls to amusicx.Play() (as well as room music calls)?

Edit3:  When you do implement crossfading, could it be a a pull-down property option under the Music/Sound setting and each individual music/sound file?  That would allow people to quickly set crossfade for all music as well as tweak individual tunes that they might not want handled in that way or at a certain crossfade speed.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Adamski on Wed 10/06/2009 00:56:14
QuoteThe buffer size depends on the audio type (I think it's 16 KB for OGG, for example) so it depends on the frequency of the audio file as to how many milliseconds of sound is buffered. For beta 2, I updated the PositionMs property on OGG audio to interrogate the buffer and return a more accurate position, whereas in beta 1 it was returning a position rounded to the nearest buffer size.

Aha, this would explain a lot!

There still seems to be a large amount of inaccuracy when seeking in a streaming channel that's currently playing. If I do the following:

track1 = aMusic1.Play();

...and then any time later in the script/game:

track2 = aMusic2.PlayFrom(track1.PositionMs);

...then track2 will sync to track1's position exactly (which is what we want!). However if do the following.

track1 = aMusic1.Play();
track2 = aMusic2.Play();

...and then any time later in the script/game:

track2.Seek(track1.PositionMs)

...track2 is out of sync with track 1 by a very large number of milliseconds (250 at the very least!).

I'm not sure if this is a bug or something else, but it's not a HUGE problem as I think that every case where I'll need to sync tracks together I'll always use the PlayFrom command... but it's there for your information anyway :)

Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: monkey0506 on Wed 10/06/2009 04:10:29
Here's a minor one. Just downloaded 3.2 for the first time since I don't really have any projects going on with the audio functions right now, so I started up a new project. On compilation I got an error that:

Quote from: The error messageUnexpected error: Could not find a part of the path 'F:\AGS\Projects\AudioTest\Music'.

I actually had to create this folder manually in Windows to compile my new project (Default Template). If the folder doesn't exist...wouldn't it be more logical just to create it? Especially considering this is a new project! 8)

Other than that, took a look through the manual at the new audio script functions. Looks good so far...

Edit: Also, forgive me if I'm being daft here but where is System.AudioChannelCount set at? I double checked and it's not in the System Limits page so I assume it's set somewhere in the editor? But I can't seem to find it....

I do now see that each of the audio types has a MaxChannels setting in their respective properties pane, so would System.AudioChannelCount be the summation of those? How then would it total "unlimited" channels? Further, is there a way to check the maximum channels available to a specific audio type?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: DavidCB on Wed 10/06/2009 07:41:02
Thank you very much, Trent R
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: abstauber on Wed 10/06/2009 07:50:18
QuoteOh I see, thanks for this info. Then I'd better play a silent ogg and use it as a timer

Well, if you have this problem when the game starts up maybe you could just use a Wait(100) at the start of the game before playing any audio, to let your PC catch up with whatever it's doing?

I'm afraid, my cheesy celeron does its workout (or whatever) on an irregular base.
But my main issue is, that during the stuttering, my manual counter of msecs stops, whereas audioChannel.PositionMs advances.

Here's apost, where I've tried to describe my problem:
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37985.msg499409#msg499409
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Dualnames on Wed 10/06/2009 09:28:11
First of all with the translation all done and set. Thanks a lot :D

Secondly a small problem..:
I don't really mind about it, (meaning its not vital), but well, there's a 1kb speech vox file being created every time I compile the game.

1. I have no files in my speech folder
2. I used auto-remove all number lines from speech lines. But the 1kb vox was still there.
3. I'm using the latest STABLE AGS Version (3.1.2)
4. I created a translation so I could search what lines have '&' to them.
And those are:



&5 Sorry, not now.

&6 Restore

&7 Cancel

&8 Select a game to restore:

&9 Save

&10 Type a name to save as:

&11 Replace

&12 The save directory is full. You must replace an existing game:

&13 Replace:

&14 With:

&15 Quit

&16 Play

&17 Are you sure you want to quit?

&18 You are carrying nothing.

&19 Talking to yourself is a sign of madness!

&20 You rub your hands up and down your clothes.

&21 Damn, I'm looking good!



Those lines are AGS default things..So I can't edit them.


Sorry if I'm being too picky about this..
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: JpSoft on Wed 10/06/2009 15:32:44
You have the solution here
(http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37868.0)
I had this same trouble and i solved it.

Jp
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Trent R on Wed 10/06/2009 18:58:30
@Jp: Hahaha, you linked a thread where I quoted Dualnames from this very thread!

@CJ: Woohoo-Curry! DLing now.

@Dave: Glad to help, but did you see Pumaman's reply to your question? It's smack in the middle of his big post above.


~Trent
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Wed 10/06/2009 19:04:29
QuoteAGS just stopped responding or I would have given you an error message.  I had to end the process because it stalled.

Hmm, that's a bit worrying. Let me know if it happens again.

QuoteI can't seem to figure this out, but all my old songs that were set to play in specific rooms still play but there is no script in the room file (whatever.Play) and of course the room music setting is now gone.  Even more interesting, when I try playing a new song with MaxChannels set to 1 it plays over the existing room music rather than stopping it, so I'm guessing there's some Legacy PlayMusic code still running?

Yes, the old "Play Music On Room Load" setting is still there, it's just hidden. This is why I was saying I really need to add something to the editor to automatically convert this into a script line when you load the room.

QuoteThere's a small issue with the Speech/Audio/Sound folder file numbering.  Instead of going from 1-10 and up it goes 0,1,10-19,2,20-29,3 and so on.  Not a big deal, really.

Well, these are only default names for the files that have been imported from the old version. Ideally you'll rename them to have proper names like "aExplosion" so there won't be a huge list of numbered names.

QuoteEdit2:  I think the problem with the music playing wasn't a result of the room music setting but the PlayMusic funtion.  It seems to play on a separate channel from the new music.Play command so all my old calls to it still work (but playing a new tune just plays over the old).  Perhaps you could do a a quick code update for the PlayMusic(x) calls to amusicx.Play() (as well as room music calls)?

Are you saying that a tune played with aMusic5.Play() plays simultaneously with a PlayMusic(5) command? Have you changed any of the default Audio Types?

QuoteEdit3:  When you do implement crossfading, could it be a a pull-down property option under the Music/Sound setting and each individual music/sound file?  That would allow people to quickly set crossfade for all music as well as tweak individual tunes that they might not want handled in that way or at a certain crossfade speed.

Well the problem is that cross-fading requires an extra audio channel (since it is basically just playing two sounds at the same time), so if cross-fading was allowed for everything, it would mean you could only have 4 audio channels since the other 4 might be needed to crossfade them ... this is where the difficulty lies.

Quote
track2 = aMusic2.PlayFrom(track1.PositionMs);

...then track2 will sync to track1's position exactly (which is what we want!). However if do the following.

track2.Seek(track1.PositionMs)

...track2 is out of sync with track 1 by a very large number of milliseconds (250 at the very least!).

Interesting thanks, I'll look into it. It's probably finishing playing the current buffered data before seeking to the new position, I'll see if I can fix it.

QuoteOn compilation I got an error that:
Unexpected error: Could not find a part of the path 'F:\AGS\Projects\AudioTest\Music'.

Thanks for reporting this. You shouldn't need to have a Music folder any more, so I'll get that fixed.

QuoteEdit: Also, forgive me if I'm being daft here but where is System.AudioChannelCount set at?

Currently it is always 8. The "unlimited" channels with the audio types simply means that there is no specific limit on the number of channels that audio type can use, and it can use any remaining ones available within the overall 8.

QuoteFurther, is there a way to check the maximum channels available to a specific audio type?

In the editor, this is set on the Audio Type. There's currently no script method to access the setting, if that's what you mean?

QuoteI'm afraid, my cheesy celeron does its workout (or whatever) on an irregular base.
But my main issue is, that during the stuttering, my manual counter of msecs stops, whereas audioChannel.PositionMs advances.

Yes, as I said, this is to be expected because the sound card has its own buffer which will continue to play if your CPU is locked up. Unfortunately there's not much that can be done about it (other than figuring out why your PC keeps locking up!)

QuoteSecondly a small problem..:
I don't really mind about it, (meaning its not vital), but well, there's a 1kb speech vox file being created every time I compile the game.

Are you sure you don't have a syncdata.dat file lying around in the game folder?

QuoteThose lines are AGS default things..So I can't edit them.

Yeah those are the old Global Messages from 2.72. I need to add an option to get rid of them to a future version.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: monkey0506 on Wed 10/06/2009 19:37:20
Quote from: Pumaman on Wed 10/06/2009 19:04:29
QuoteAlso, forgive me if I'm being daft here but where is System.AudioChannelCount set at?

Currently it is always 8. The "unlimited" channels with the audio types simply means that there is no specific limit on the number of channels that audio type can use, and it can use any remaining ones available within the overall 8.

Okay thanks! That was driving me batty trying to find that...is it in the manual somewhere? And is this a limit that you are planning on changing? I was just wondering why it's a property instead of, for example, a macro (like all the AGS_MAX_* ones).

Quote from: Pumaman on Wed 10/06/2009 19:04:29
QuoteFurther, is there a way to check the maximum channels available to a specific audio type?

In the editor, this is set on the Audio Type. There's currently no script method to access the setting, if that's what you mean?

That's precisely what I was asking. Would it be difficult to have a something like System.AudioChannelLimitForType(AudioType)? I can't think of any specific examples, but I think that if it's something that can be set in the editor, it might be reasonable to want this information in the script at some point.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Shane 'ProgZmax' Stevens on Wed 10/06/2009 21:18:19
QuoteAre you saying that a tune played with aMusic5.Play() plays simultaneously with a PlayMusic(5) command?

I tried a different song from the one playing, but that shouldn't make any difference with 1 music channel, right?  Other than that, yeah, I get two songs playing simultaneously.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: GarageGothic on Fri 12/06/2009 03:42:28
Quote from: Pumaman on Sun 03/05/2009 15:34:47* Added AudioChannel.LengthMs property

Brilliant! Thank you very much!
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Dualnames on Fri 12/06/2009 10:33:28
Okay removed the syncdata thingy and that speech vox file went on holidays!! Ty CJ. AGAIN. ;)
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Sun 14/06/2009 23:11:15
Quoteis it in the manual somewhere? And is this a limit that you are planning on changing? I was just wondering why it's a property instead of, for example, a macro (like all the AGS_MAX_* ones).

Good point, I'll add it to the manual for the next beta.

It's not an AGS_MAX_* constant because if it changes you don't need to rebuild your game. It's a limitation of the currently running AGS Engine and not a limitation of the game file format like the Max Inv Items is.

QuoteWould it be difficult to have a something like System.AudioChannelLimitForType(AudioType)? I can't think of any specific examples, but I think that if it's something that can be set in the editor, it might be reasonable to want this information in the script at some point.

If there is a scenario where this would be useful I can look into adding it. However at the moment there's a lot of other stuff I need to sort out so without a good reason to do this I'm not planning on it.

QuoteI tried a different song from the one playing, but that shouldn't make any difference with 1 music channel, right?  Other than that, yeah, I get two songs playing simultaneously.

Ok thanks, I'll look into it.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Mon 15/06/2009 20:51:54
Quote from: ProgZmax on Wed 10/06/2009 21:18:19
I tried a different song from the one playing, but that shouldn't make any difference with 1 music channel, right?  Other than that, yeah, I get two songs playing simultaneously.

I can't replicate this. Have you got crossfading enabled (if so does turning it off stop the problem?) and have you changed any of the default Audio Types in any way?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Shane 'ProgZmax' Stevens on Tue 16/06/2009 02:47:24
I had crossfading on from before I imported it, yes.  I changed none of the default settings; all I did was do aMusic2.Play() in the room's load script and it played over a PlayMusic call from before.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Tue 16/06/2009 19:46:40
Can you upload something that demonstrates this problem, because I still can't replicate it myself?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Shane 'ProgZmax' Stevens on Wed 17/06/2009 05:29:35
Sorry, but after I went through and removed all the PlayMusic calls in the game it stopped happening and I can't seem to get it to happen by adding new ones, now.  It might just have been a glitch with the intial importing of the game.  Also, so far I have not been able to make AGS stop responding again by switching songs quickly in the editor, so maybe that was tied to the same problem (songs playing over each other) and saving and re-opening the game fixed it?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: GrogGames on Thu 02/07/2009 23:15:48
Well, i've been testing my Imuse sistem. This time, to improve the  synchronization i tried putting all instruments from the beginning and leaving a high volume only to the ones that have to be played.

However, with both methods (this one and the last one) the synchronization of the instruments has improved with the new beta, but it still needs to improve a bit more.

I ran the demo on a pentium 4 of 3.3 ghz and about 90% of the times they were synchronized but i also ran it on a pentium 4 of 1.8 ghz and the result is different. In this case, in most of the times they weren't synchronized.

I'm sending you this game as a demonstration, I used the new sistem I told you about on it. Because of being only 2 instruments there shouldn't be any problem. Just like the last time I repeated the same instrument to notice if they are synchronized. If you press F9 you'll notice that sometimes it loads more synchronized and other times less.

Demo:
http://www.mediafire.com/file/zmjwm2jmrg2/imuse bug new.rar

Well, I hope you can fix it, greetings and thank you very much.
Nahuel 36
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: abstauber on Fri 03/07/2009 08:29:48
I have exactly the same problem. I thought it was because of my crappy
Celeron-M 1000 MHz :)

So yes, nearly every 5th time, my two soundfiles start out of sync.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: GarageGothic on Sat 04/07/2009 23:20:16
I DO know this thread isn't for feature requests, and that audio is your main concern for the current beta version. But now that the "additive opacity" render mode was introduced for GUIs in version 3.1.2 (and GUIs afaik use temporary DynamicSprites for rendering) I was wondering if there's even a tiny little chance that this functionality might be extended to ordinary DrawingSurface functions?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: monkey0506 on Sat 04/07/2009 23:44:26
For the record I would still find it useful for something like this (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37447.msg492361#msg492361) to be implemented. As has been noted this version is leaning more toward revamping the audio system (which is great) of course a gentle reminder of "CJ we'd reaaawwy reaawwy reaawwy wike to see this....pweeease?" can't do too much harm... ::)
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Shane 'ProgZmax' Stevens on Mon 06/07/2009 00:02:49
Hell, I'd rather have dynamic sprites support a z-order option so they can draw behind characters/objects instead of always being drawn last (on top of everything else).  To me that would be far more useful at the moment.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: GarageGothic on Mon 06/07/2009 00:51:23
Not sure what you mean, ProgZ. Can't you just assign your DynamicSprite to the Graphic/ViewFrame of an Object or Character positioned behind the others, or even draw it straight to the background? Are you talking about z-order for Overlays?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Gilbert on Mon 06/07/2009 01:48:54
As GG mentioned, there should not be z-order associated with any sprites. Their priorities depends on how you use them, be they images for GUI buttons, overlays, characters, objects or drawn onto background. For them to be placed more freely you may just assign dynamic sprites to objects or characters and mess with their baselines appropriately.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Sun 26/07/2009 16:09:05
Quote from: GrogGames on Thu 02/07/2009 23:15:48
I ran the demo on a pentium 4 of 3.3 ghz and about 90% of the times they were synchronized but i also ran it on a pentium 4 of 1.8 ghz and the result is different. In this case, in most of the times they weren't synchronized.

I'm sending you this game as a demonstration, I used the new sistem I told you about on it. Because of being only 2 instruments there shouldn't be any problem. Just like the last time I repeated the same instrument to notice if they are synchronized. If you press F9 you'll notice that sometimes it loads more synchronized and other times less.

I downloaded and ran your demo but I'm not really sure what the problem is.

Can you post what lines of script you're using, and what you're trying to accomplish? As it is I'm not really sure what I'm supposed to be listening out for.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: abstauber on Mon 27/07/2009 20:58:47
*cough* as I might have the same problem, you could also take a look at my sources :D

I also try to play 2 OGGs simultaneously - if you comment out the Wait(1) in line 183 (room1 script), the chances are high, that they start to play out off sync.
It's also possible that they loose sync during the game.


(I've send you a PM with the url)

Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Mon 27/07/2009 21:47:13
The Play() command has to load the audio file from the disk and then start playing it, which takes a bit of time.

Have you tried Seeking both the tracks to 0 after loading them, eg:

chanSync1 = aSynctrack1.Play();
chanSync2 = aSynctrack2.Play();
chanSync1.Seek(0);
chanSync2.Seek(0);

that should ensure that the first track gets rewound to start again once the second track has loaded.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: abstauber on Tue 28/07/2009 07:54:47
Well, I've tried after I've read it :)
Unfortunately Wait(1) after the play commands is still much more    reliable.

If you've downloaded my code, there's also an autoplay option so it's easier for you to see the problem.
It's in line 102 in the roomscript. You just have to set it to true.

Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Tue 28/07/2009 19:25:07
Hmm, I still don't see the problem. I put in two Seek calls after the two Play lines and the tracks seemed to be synced fine... with autoplay enabled it sounded fine to me.

Can you describe exactly what the problem is?
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: abstauber on Tue 28/07/2009 19:40:23
It does  :o ?
Wow.. you own a well configured computer ;)  Kaputtnik's, Ben's and my own machine had syncing troubles nearly every second game start. The only thing that helped so far, is the Wait(1).
Have you tried it a couple of times? E.g please try Song 4 on the hardest level and test it 4 times. And maybe you could keep some programs open in the background. If you don't lose the sync then... well, then this problem stays mysterious :)

btw. thanks for downloading and crawling through my code ;)
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Pumaman on Wed 29/07/2009 20:15:08
Ahh, I think I might know why I wasn't seeing the problem.

I wasn't actually testing against Beta 2, I was testing with my latest work-in-progress build which already includes some fixes to the Seek command.

Here's the latest version of the engine (let's call it Beta 2.5!), try this out and see if it helps:
http://www.adventuregamestudio.co.uk/acwin.zip
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: abstauber on Thu 30/07/2009 14:01:33
Hey... .seek is suddently accurate as hell :) Overall it seems like there've been some improvements on the sound part, since the OGGs doesn't seem to loose sync anymore at all.

Thanks a lot :D
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: subspark on Fri 31/07/2009 06:20:24
Marvelous work CJ. You impress us with just 1% of your new WIP.  ;D

Sparky.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Dualnames on Sat 01/08/2009 15:14:12
Haven't checked the new version but the old if you use Run-AGS Game command and have a loading pcx and have a video playing on game start it won't show.

http://ledzepforever.googlepages.com/SecureFileTestV1_2.rar

Download this and use serial 4556-5555-6666-6666 to see what I'm talking about. Execute SecureFile and not copy of HHGTG. If you hear a sound while you see the loading  screen it means that an .ogv intro movie is playing whilst the loading screen appears.

This only happens via the RunAGSGame command.
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: subspark on Sun 02/08/2009 00:40:19
Okay how on earth did you create a secure AGS environment? I've thought about copy protection, but this is elaborate!

Just one question, wouldn't all this be feasible in the game exe? And if not, how did you get AGS to read/write to those three strange files?
In any case, I've never been this impressed with an AGS game before and I haven't even played the damn thing!

Bravo. :D
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: Gilbert on Sun 02/08/2009 09:01:45
For that, talk about it in the appropriate thread (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=38367.0). :P
Title: Re: AGS 3.2 beta 2 - Curry Edition
Post by: subspark on Sun 02/08/2009 09:28:27
Thanks Gilbet. I never realized there was a thread for this! Fantastic!

Big Cheers,
Sparky.
Title: Re: AGS 3.2 beta 3 - Michael Jackson Edition
Post by: Pumaman on Mon 03/08/2009 22:59:33
Quote from: abstauber on Thu 30/07/2009 14:01:33
Hey... .seek is suddently accurate as hell :) Overall it seems like there've been some improvements on the sound part, since the OGGs doesn't seem to loose sync anymore at all.

Thanks a lot :D

Glad to hear it, that is now included in beta 3.

QuoteHaven't checked the new version but the old if you use Run-AGS Game command and have a loading pcx and have a video playing on game start it won't show.

I'll look into this.


Anyway, beta 3 is now up. With this release, I now declare the new audio system complete (save for a few icons in the audio preview pane), so please do try it out and give me your feedback.

Also, this release includes a fix for the Unicode paths problem some people were having with Russian versions of Windows. Can somebody who had that problem please try out this version and see if it fixes the issue?
Title: Re: AGS 3.2 beta 3 - Michael Jackson Edition
Post by: subspark on Tue 04/08/2009 00:44:58
Hmm, after copying the new files accross to my installation directory, I get the following error:
(http://www.shuugouteki.net/paul/Images/AGS_3.2.3_error.gif)

The windows event view threw this at me:
QuoteActivation context generation failed for "C:\Program Files (x86)\Adventure Game Studio\AGS.Native.dll".Error in manifest or policy file "" on line . A component version required by the application conflicts with another component version already active. Conflicting components are:. Component 1: C:\Windows\WinSxS\manifests\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.1_none_e163563597edeada.manifest. Component 2: C:\Program Files (x86)\Adventure Game Studio\Microsoft.VC90.CRT.MANIFEST.

Cheers,
Sparky.
Title: Re: AGS 3.2 beta 3 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Tue 04/08/2009 07:14:31
* Editor now automatically converts any old Play Music On Room Load setting into a line of script in the room's Player Enters Screen event


Bill and Ted: TOTALLY AWESOME!!


Also, I get the very same error as subspark and I placed this build in its own folder, so no threat of file contamination.  This was with XP.
Title: Re: AGS 3.2 beta 3 - Michael Jackson Edition
Post by: abstauber on Tue 04/08/2009 07:58:28
I can't launch it too :(

(http://www.2dadventure.com/ags/ags_error.png)
Title: Re: AGS 3.2 beta 3 - Michael Jackson Edition
Post by: subspark on Tue 04/08/2009 12:09:42
Same error as us it seems, abstauber.

Its probably just a file CJ forgot to check in the last minutes of his compile. Hey, it happens!! :P

Sparky.
Title: Re: AGS 3.2 beta 3 - Michael Jackson Edition
Post by: abstauber on Tue 04/08/2009 15:22:40
but but but.... I'm on XP, not on Vista ;D
... oh well - yeah sorry for double posting. I still second the crash :)
Title: Re: AGS 3.2 beta 3 - Michael Jackson Edition
Post by: subspark on Tue 04/08/2009 16:24:13
Yeah same bug on both OS's. Man this is odd.

Nice interface btw, abstauber!

Sparky.
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: Pumaman on Tue 04/08/2009 18:42:31
Oh great, looks like Windows Update has installed a newer version of the Visual Studio files on my PC, so the DLL's I was including don't work any more.

Ok, I've uploaded a beta 3a which is rebuilt and should now work. Please let me know if this isn't the case (since it all works anyway on my machine!!).
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: monkey0506 on Wed 05/08/2009 23:56:08
One thing that really stands out to me about the new audio stuff going on in the editor is that you can only ever have one "Audio" tab open and it updates to show the last selected type or folder. This is completely opposite to everything else (GUIs, Characters, Scripts, etc.) which opens in its own tab.

Perhaps the audio doesn't have as much to be modified in the editor, but it did strike me as unusual that the audio system is the only thing that takes this approach on the tabs.
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: DoorKnobHandle on Fri 07/08/2009 19:09:42
I just noticed that when you select the D3D9 graphic drivers and also set the runtime from retail to debug in your directx9 control panel (also select the most debug info you can get, ie. slider all the way to the right), AGS always crashes with this error:


---------------------------
Adventure Game Studio
---------------------------
An internal error has occurred. Please note down the following information.
If the problem persists, post the details on the AGS Technical Forum.
(ACI version 3.20.1083)

Error: Unable to lock texture

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


This should definitely be fixed, I think!
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: (deleted) on Fri 07/08/2009 20:20:22
Please permit this particularly gratitudinal post, which is especially praisetacular for the following update:

Quote from: Pumaman on Sun 03/05/2009 15:34:47
* Fixed "Internal compiler error: table overflow" if there were a lot of imported functions/variables

What speed! What precise efficiency! CJ, you're such a giver. You have my profound and numerous  thanks - this little hiccup was ruining my life. (Also, my GF says thanks, because I was being a furious grouch while dealing with tabular overflowery).

Dang, some real fine games will be made with this thing. Ain't nothing can stop us, now!
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: monkey0506 on Fri 07/08/2009 20:42:44
I'm not sure if it's specifically related, but I was using this beta when it happened so I'll post here.

I was taking a look at implementing some functions into my Stack module (perhaps a separate module) for supporting multidimensional array functionality. I now am getting the following run-time crash:

Quote---------------------------
Illegal exception
---------------------------
An exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x0048FA91 ; program pointer is -42, ACI version 3.20.1085, gtags (2039,18)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.

in "Stack.asc", line 263
from "Array.asc", line 27
from "Array.asc", line 67


Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.

An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)
---------------------------
OK   
---------------------------

The CrashInfo file can be found here (http://monkey.05.06.googlepages.com/CrashInfo.3.20.1085.rar).

The line specifically it references as causing the crash is this:

return StackData.Format("%s%s%d,%d,%s%s", type, stamp, this.ItemCount, this.PopType, data, stamp);

StackData is #define-d as String. If needed I can post the full function(s).
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: Pumaman on Sat 08/08/2009 11:59:43
Quote from: monkey_05_06 on Wed 05/08/2009 23:56:08
One thing that really stands out to me about the new audio stuff going on in the editor is that you can only ever have one "Audio" tab open and it updates to show the last selected type or folder. This is completely opposite to everything else (GUIs, Characters, Scripts, etc.) which opens in its own tab.

Yeah, originally I had it opening new tabs but during my testing I was getting annoyed with all the tabs all over the place, and I thought you guys would probably get annoyed with it too. This new behaviour of the audio pane is something that has been requested for Views and Dialogs in the past, so maybe this should become a Preferences option...

QuoteI just noticed that when you select the D3D9 graphic drivers and also set the runtime from retail to debug in your directx9 control panel (also select the most debug info you can get, ie. slider all the way to the right), AGS always crashes with this error:
Error: Unable to lock texture
This should definitely be fixed, I think!

That error happens if AGS can't lock one of the textures. It can't really be "fixed" in AGS since AGS needs to lock the texture in order to work. Therefore, this looks like a D3D problem if you change those settings. Do you also get errors in other D3D games if you change those settings?

QuoteWhat speed! What precise efficiency! CJ, you're such a giver. You have my profound and numerous  thanks - this little hiccup was ruining my life. (Also, my GF says thanks, because I was being a furious grouch while dealing with tabular overflowery).

Hehe, enjoy!

QuoteAn exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x0048FA91 ; program pointer is -42, ACI version 3.20.1085, gtags (2039,18)
return StackData.Format("%s%s%d,%d,%s%s", type, stamp, this.ItemCount, this.PopType, data, stamp);

Are you sure that "type", "stamp" and "data" are all String variables?
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: monkey0506 on Sat 08/08/2009 16:54:46
Yes I'm sure:

  StackData type = StackData.Format(StackDataFormat, eStackDataStack);
  StackData key = this.BuildKey();
  StackData stamp = StackData.Format(StackDataCopyFormat, key);
  StackData data = this.Data;
  if (data == null) data = "";


As I mentioned StackData is String (#defined). StackDataCopyFormat is a String, Stack.BuildKey returns StackData. And no, there's no real reason why internally I'm typing StackData as opposed to just typing String.

Stack.ItemCount is an int, Stack.PopType is an enum, and Stack.Data is StackData (String).

The thing that's bothering me about it is the fact that I'm calling Stack::Copy (the function it's crashing in) several times before it crashes there. I did realize that I am being a bit daft in the way I'm initializing the arrays.

If you haven't looked at the module (I'll assume you haven't) then I'm just storing all the data in a single String (for the vectorization capabilities). I also allow for entire Stack objects to be converted to StackData so it can be pushed onto another Stack (that's what Stack::Copy is for). To try and make sure I preserve the integrity of the data when you have multiple stacks pushed into a single object I assign them a key. That's what Stack.BuildKey does, it returns a 128-bit randomized key.

The point at which I'm being daft initializing the (multidimensional) arrays is that I'm copying these "unique" keys multiple times into the same Stack...which could potentially cause issues trying to recover the data.

However I don't see how it would be related to this crash as Stack::Copy doesn't attempt to do anything with the existing data except pre-pend some markers to the front of it.
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: Pumaman on Sat 08/08/2009 18:33:57
Ok, well from the crash dump I can see where it crashed but not why, so would you be able to upload a game that demonstrates the problem?
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: monkey0506 on Sat 08/08/2009 19:17:37
Sure thing Chris...and here it is (http://monkey.05.06.googlepages.com/Stack_CRASH.rar).

All you need to do to get the crash is run it.

This was still in very preliminary stages so there was a lot of conceptual things and debugging going on. I'm doing a lot of things the wrong way (as far as the way the module stores the data) as I noticed, but I can't see how it would cause the error that it is.

Thanks for looking into it Chris.

One last thing that might be related, in trying to verify the structure of the data I exported a raw file which shows that the length of the String would have been 3092 bytes prior to calling Stack::Copy.

Given these definitions:

StackDataFormat = "**STACKDATA:%c**";
StackDataCopyFormat = "**STACKDATA STACK:%s**";


StackDataFormat results in a 15 byte String. The "%s" is replaced by Stack.BuildKey (128-bit = 16 bytes) so that's an additional 36 bytes (twice). At the time of crash this.ItemCount is 3 and this.PopType is 0. That's gives a total 91 bytes in addition to the existing 3092 for a resulting formatted String length (where it crashes at) of 3183 bytes. If that's relevant.
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: Pumaman on Sat 08/08/2009 20:54:04
Ah ... while Strings themselves have no length limit, various internal AGS functions assume a maximum length of 2500 chars, and String.Format is one of them.

I'll see if I can improve this, but in the meantime the best thing to do is use String.Append when you're creating very long strings like this, which doesn't have any length limits.
Title: Re: AGS 3.2 beta 3a - Michael Jackson Edition
Post by: monkey0506 on Sat 08/08/2009 21:47:49
Interesting...so it would be safe to use String.Format to create the flags with the variable values, but then I should use String.Append to put it all together...got it!

Thanks for the info Chris.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sun 09/08/2009 00:24:53
Ok, beta 4 is now up. This includes a couple of things that people have been asking for for a while, so I'd appreciate any feedback on whether everything works as expected.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: monkey0506 on Sun 09/08/2009 01:45:25
Quote from: Pumaman on Sun 03/05/2009 15:34:47* The generated EXE version information is now set to your Game Name and Developer Name instead of "Adventure Game Studio" and "Chris Jones"

But Chris...wasn't this the only indication (unless the author discloses the information) that the game was made with AGS? :o

Quote from: Pumaman on Sun 03/05/2009 15:34:47* Improved graphics mode detection so that the screen doesn't keep flickering when trying to start up a low-res game full screen

Cool beans. Never bothered me too much but still cool that you "fixed" it.

Quote from: Pumaman on Sun 03/05/2009 15:34:47* Fixed String.Format to give error instead of crash if you try to format a string longer than 3000 chars

Does this mean the limit was increased to 3000 characters for String.Format? Either way I understand that to build it longer I can use String.Append, just want to clarify has that internal limit been moved up?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: on Sun 09/08/2009 01:49:28
I sat out on the beta until now... and now I see you're using IrrKlang! There's now offically GERMAN stuff in AGS- and everyone knows that this makes it immune to gremlin attacks!
;D

[edit]
Imported two WIPs without anything really going wrong. I've yet to try out the whole audio system advantages though.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sun 09/08/2009 12:24:24
Quote from: monkey_05_06 on Sun 09/08/2009 01:45:25
But Chris...wasn't this the only indication (unless the author discloses the information) that the game was made with AGS? :o

Not really -- if you right-click on the EXE and do Properties, you'll still find a couple of things telling you it was made with AGS.
Originally when AGS was written, Windows 98 and 2000 didn't display the version info in the main explorer window so it was fine, but since XP came along and started showing the Company Name and Program Name in explorer, it has looked a bit silly having all AGS games claim to be made by me.

I've been meaning to fix it for a long time but only now finally had some time to do it.

QuoteDoes this mean the limit was increased to 3000 characters for String.Format? Either way I understand that to build it longer I can use String.Append, just want to clarify has that internal limit been moved up?

Correct, I also used this opportunity to increase it to 3000. The only time you'll ever get near that will be if you're using Strings for something non-standard such as data storage, like you're doing :)

QuoteI sat out on the beta until now... and now I see you're using IrrKlang! There's now offically GERMAN stuff in AGS- and everyone knows that this makes it immune to gremlin attacks!

I'm sure that German efficiency will make AGS run twice as fast!!
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Joe on Mon 10/08/2009 08:52:03
It would be very nice the possibility of changing Objects/Hotspots name at run-time. :)
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Mon 10/08/2009 11:10:42
I'm sorry to say but the music playback in both of the latest betas is seriously messed up.  I imported one of my games from 3.2 beta 2 and the audio playback starts looping constantly at the beginning of songs.  I also tried importing the game from 3.1.2 sp 2 into the latest beta and it was even worse -- constant audio looping, songs that would start playing when performing routine actions in the game and fade out again.  I'm going to upload the pre-audio revamp copy of my game and send you a link so you can see for yourself.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Mon 10/08/2009 21:20:12
Thanks for uploading. I imported your game into Beta 4 and ran it, and it seemed fine. The intro played through and then the game started and I didn't hear anything strange.

Can you be more specific about exactly when the problem happens?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Mon 10/08/2009 21:31:15
Play it until you get the bottle from underneath his bunk (turn on the nightlight first).  The music will start looping at the beginning erratically and will turn off and on when you perform actions like turning on/off the light.  It's really weird and has only been introduced in the last 2 betas and occurs when songs switch.  Also, it might not be obvious to you if you haven't heard the music before that it's repeating, but take my word for it that it is repeating after about 5 seconds of playback.  I suppose it's possible that it may not happen every time, but it's happened every time I've run it.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Mon 10/08/2009 22:11:15
Ah ok, yes I think I hear it now. I'll look into it.

If you disable crossfading (which is now in the Music Audio Type properties) does the problem go away?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Tue 11/08/2009 18:50:46
Nope :(.  The first tune kept repeating over and over during the initial blocking dialog and then kept coming on briefly whenever I performed an action/dialog.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Tue 11/08/2009 20:52:58
Ah ok, I think I see what has happened. There's a bug with the support for crossfading with old-style PlayMusic commands -- and as the crossfading was updated to the new audio system in beta 3, that explains why it broke at that point.

Please try this engine:
http://www.adventuregamestudio.co.uk/acwin.zip
and let me know if it fixes the problem.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Wed 12/08/2009 10:12:42
So far that seems to have done the trick!
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Midian Design on Thu 13/08/2009 02:02:26
I tried two times, and for two times it crashed, in two different ways, this is the second one:

Quote
Error: *Tentativo di lettura o scrittura della memoria protetta. Spesso questa condizione indica che altre parti della memoria sono danneggiate.
*Attempt of reading or writing of the protected memory. Often this condition indicates that other parts of the memory are damaged.

Version: AGS 3.2.0.93

System.AccessViolationException: **Tentativo di lettura o scrittura della memoria protetta. Spesso questa condizione indica che altre parti della memoria sono danneggiate.
**Attempt of reading or writing of the protected memory. Often this condition indicates that other parts of the memory are damaged.

   in cmpString(Void* a1, Void* a2)
   in qsort(Void* , UInt32 , UInt32 , IntPtr )
   in WordList.InList(WordList* , SByte* s)
   in ?A0x4d1fa0f1.ColouriseCppDoc(UInt32 startPos, Int32 length, Int32 initStyle, WordList** keywordlists, Accessor* styler, Boolean caseSensitive)
   in ?A0x4d1fa0f1.ColouriseCppDocSensitive(UInt32 startPos, Int32 length, Int32 initStyle, WordList** keywordlists, Accessor* styler)
   in LexerModule.Lex(LexerModule* , UInt32 startPos, Int32 lengthDoc, Int32 initStyle, WordList** keywordlists, Accessor* styler)
   in ScintillaBase.Colourise(ScintillaBase* , Int32 start, Int32 end)
   in ScintillaBase.NotifyStyleToNeeded(ScintillaBase* , Int32 endStyleNeeded)
   in Editor.NotifyStyleNeeded(Editor* , Document* doc, Void* userData, Int32 endPos)
   in Document.EnsureStyledTo(Document* , Int32 pos)
   in Editor.Paint(Editor* , Surface* surfaceWindow, PRectangle rcArea)
   in ScintillaWin.WndPaint(ScintillaWin* , UInt32 wParam)
   in ScintillaWin.WndProc(ScintillaWin* , UInt32 iMessage, UInt32 wParam, Int32 lParam)
   in ScintillaWin.SWndProc(HWND__* hWnd, UInt32 iMessage, UInt32 wParam, Int32 lParam)
   in System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   in System.Windows.Forms.NativeWindow.DefWndProc(Message& m)
   in System.Windows.Forms.Control.DefWndProc(Message& m)
   in System.Windows.Forms.Control.WndProc(Message& m)
   in Scintilla.ScintillaControl.WndProc(Message& m)
   in System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   in System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   in System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


I'm on Vista, game in 32bit color, 1024x768, I imported only 1 BG and 1 OGG, the first time it crashed running the game, I edited everything again from THE start, deleting everything, and it crashed while I was editing a simple Wait (100);  :D
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: hedgefield on Fri 14/08/2009 23:17:51
Quote from: Pumaman on Sun 03/05/2009 15:34:47
* Fixed light levels >100% not working with Direct3D driver

SWEET thanks Ceej, you're the best. :D
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sat 15/08/2009 14:24:58
Quote from: MD on Thu 13/08/2009 02:02:26
I tried two times, and for two times it crashed, in two different ways, this is the second one:

*Attempt of reading or writing of the protected memory. Often this condition indicates that other parts of the memory are damaged.
Version: AGS 3.2.0.93

I'm on Vista, game in 32bit color, 1024x768, I imported only 1 BG and 1 OGG, the first time it crashed running the game, I edited everything again from THE start, deleting everything, and it crashed while I was editing a simple Wait (100);  :D

Do you also get these problems with 3.1.2 SP1 or is it only the latest beta that does it? That's a crash in the script editor which I haven't changed in 3.2, so there's no reason why there should be any new bugs there.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Midian Design on Sat 15/08/2009 22:38:15
Quote from: Pumaman on Sat 15/08/2009 14:24:58
Quote from: MD on Thu 13/08/2009 02:02:26
I tried two times, and for two times it crashed, in two different ways, this is the second one:

*Attempt of reading or writing of the protected memory. Often this condition indicates that other parts of the memory are damaged.
Version: AGS 3.2.0.93

I'm on Vista, game in 32bit color, 1024x768, I imported only 1 BG and 1 OGG, the first time it crashed running the game, I edited everything again from THE start, deleting everything, and it crashed while I was editing a simple Wait (100);  :D

Do you also get these problems with 3.1.2 SP1 or is it only the latest beta that does it? That's a crash in the script editor which I haven't changed in 3.2, so there's no reason why there should be any new bugs there.


I made a game with the 3.1.2 without problems. The differences are in the first game [jpg & mp3 16bit color] in this last [tif and ogg 32 bit color].. I added only 1 tif and 1 ogg and everytime something went wrong.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sun 16/08/2009 19:34:24
Has anyone else had any crashes like this with the beta?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: OneDollar on Wed 19/08/2009 20:41:51
I've not tried the new beta yet, but I think I've got a bug with 3.1.2 and it seems rather small to make a new thread for.

If you try and assign too long a string to a button's text property AGS will crash with "SetButtonText: Text too long, button has 50 chars max" error. However it looks like the actual limit is 49 characters.

Example:
MoneyLbl.Text = "1234567890123456789012345678901234567890123456789";
works, but
MoneyLbl.Text = "12345678901234567890123456789012345678901234567890";
does not.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: monkey0506 on Thu 20/08/2009 06:09:32
Just found out AGS has (to some extent at least) error reporting. Nice job at that. You'll get something about me trying to use a renamed file in place of a valid icon. ::)

I know you've said before it has to be an actual icon but I was being lazy. Anyway, if you create a template with an invalid ICO file the editor crashes (at least when you try to load it directly, i.e. for testing the template). Probably not something you'd have to worry about too much...most people could probably figure out what was going on. :D
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Dualnames on Wed 26/08/2009 09:41:17
I consider the version to be perfect, but there's one problem. My game is on 640x480 resolution, and if I want to change the background, I can't do it properly without the following steps and all the hotspots/walkable areas/regions get delete anyway.

It says it requires a 640x400 bg, but even if I import a 640x400 it says it's not 640x400.

Now most importantly to import a background so it CAN work and not show weird, I have to change the resolution to 640x400, not resize the guis, import bg, revert to 640x480, not resize the guis again, and tada, no walkable areas, no hotspots.

The only other way, is to use draw surface, but how can I see where I'm supposed to draw the walkable areas.
I have a version indicating this problem, so contact me via pm if you need it. This happens in 3.1.2 and on this beta too. I came to notice it now though.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Joe on Wed 26/08/2009 12:45:06
I found a 'bug' in AGS 3.1.2

When I tried to make a voice acting script I got a blank txt file, well, not totally blank, it had one line, this one:

"*** All text lines, in order of appearance in the scripts ***"

And my game has many dialogs and text...
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Dualnames on Wed 26/08/2009 12:47:38
You need to number the lines first.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Wed 26/08/2009 20:24:08
To be more precise, there's a menu option in ags to auto-number speech lines for you, Joe.  I will warn you to wait as long as possible before doing it because it does not work well with numbering lines then adding/subtracting lines and re-numbering.  Try to get the game as finished as possible first.  If the auto-numbering system always continued from the last speech number it wouldn't be an issue, but since it starts from the beginning each time you can have some issues.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Joe on Wed 26/08/2009 21:37:51
Ok thanks very much Dualnames and ProgZmax
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: TerranRich on Thu 27/08/2009 03:05:17
Joe Carl: Also, don't be afraid if you happen to use custom "Say" functions; auto-numbering works properly on those, too.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Mon 31/08/2009 19:30:42
QuoteIf you try and assign too long a string to a button's text property AGS will crash with "SetButtonText: Text too long, button has 50 chars max" error. However it looks like the actual limit is 49 characters.

Hehe well spotted, I might fix this one :D

QuoteYou'll get something about me trying to use a renamed file in place of a valid icon.

I know you've said before it has to be an actual icon but I was being lazy. Anyway, if you create a template with an invalid ICO file the editor crashes (at least when you try to load it directly, i.e. for testing the template).

Interesting point, I suppose that is something that people might do so it probably should handle it better.

QuoteMy game is on 640x480 resolution, and if I want to change the background, I can't do it properly without the following steps and all the hotspots/walkable areas/regions get delete anyway.

What do you mean exactly? Is your game set to 640x480 in General Settings but you can't import a 640x480 background?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Knox on Tue 01/09/2009 01:41:18
QuoteChanges in 3.2 beta 4:

* Added option to automatically add side borders when running 4:3 games on widescreen monitors

Great news...might not seem like a big thing to some, but to me this is good good news! :)
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Matti on Tue 01/09/2009 01:49:56
Quote from: general_knox on Tue 01/09/2009 01:41:18
QuoteChanges in 3.2 beta 4:

* Added option to automatically add side borders when running 4:3 games on widescreen monitors

Great news...might not seem like a big thing to some, but to me this is good good news! :)

These are definitely great news. I hate how everything's stretched on the laptop.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Knox on Tue 01/09/2009 15:22:23
QuoteThese are definitely great news. I hate how everything's stretched on the laptop.

Yeah, totally agree...Man I love AGS...Tried Wintermute and Visionnaire...this is the best! Plus, people are really nice here :)
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Dualnames on Tue 01/09/2009 15:38:04
Quote from: Pumaman on Mon 31/08/2009 19:30:42

What do you mean exactly? Is your game set to 640x480 in General Settings but you can't import a 640x480 background?

Exactly..
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Tue 01/09/2009 17:40:38
I've found a rather odd bug in 3.1.2 that appears to exist in the latest beta as well.  If you set the baseline of a character all seems to work fine in DDraw, but in D3D mode it appears to ignore custom character baselines altogether.  I tested this rather quickly by placing a character above the player and setting the character's baseline to 2.  In DDraw mode he appeared correctly behind the player, in D3D he appears in front every time.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: abstauber on Thu 03/09/2009 13:56:59
QuoteHas anyone else had any crashes like this with the beta?

I do: AGS 3.2 beta 4. No probs in 3.1 SP2 so far.


Error: Es wurde versucht,I'm geschützten Speicher zu lesen oder zu schreiben.
Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.
Version: AGS 3.2.0.93

System.AccessViolationException: Es wurde versucht,I'm geschützten Speicher zu lesen oder zu schreiben.
Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist. ---> System.AccessViolationException:
Es wurde versucht,I'm geschützten Speicher zu lesen oder zu schreiben.
Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.
   bei ccCompileText(SByte* , SByte* )
   bei AGS.Native.NativeMethods.CompileScript(Script script, String[] preProcessedScripts, Game game, Boolean isRoomScript)
   bei AGS.Editor.NativeProxy.CompileScript(Script script, String[] preProcessedData, Game game, Boolean isRoomScript)
   bei AGS.Editor.AGSEditor.CompileScript(Script script, List`1 headers, CompileMessages errors, Boolean isRoomScript)
   bei AGS.Editor.AGSEditor.CompileScripts(Object parameter)
   bei AGS.Editor.BusyDialog.RunHandlerOnThread()
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei AGS.Editor.BusyDialog.Show(String message, ProcessingHandler handler, Object parameter)
   bei AGS.Editor.AGSEditor.CompileGame(Boolean forceRebuild, Boolean createMiniExeForDebug)
   bei AGS.Editor.Components.BuildCommandsComponent.CompileGame(Boolean forceRebuild)
   bei AGS.Editor.Components.BuildCommandsComponent.CommandClick(String controlID)
   bei AGS.Editor.ToolBarManager.ToolbarEventHandler(Object sender, EventArgs e)
   bei System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   bei System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)
   bei System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   bei System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   bei System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   bei System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   bei System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   bei System.Windows.Forms.Control.WndProc(Message& m)
   bei System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   bei System.Windows.Forms.ToolStrip.WndProc(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


edit:
I also get this error in the Output Window of the editor:

Unexpected error: Der Prozess kann nicht auf die Datei "D:\Eigene Dateien\AGS\shatten\game28.dta" zugreifen,
da sie von einem anderen Prozess verwendet wird.


Roughly translated: The process can't access the file, because it's in use by another process.

When I try to quit after that error, I get:


Error: Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben.
Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.
Version: AGS 3.2.0.93

System.AccessViolationException: Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben.
Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.
   bei ccFreeScript(ccScript* )
   bei AGS.Native.CompiledScript.!CompiledScript()
   bei AGS.Native.CompiledScript.Dispose(Boolean )
   bei AGS.Native.CompiledScript.Finalize()
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: AGD2 on Thu 03/09/2009 15:05:03
Speaking of baselines, I recently noticed that the following code doesn't seem to work:

cCharA.Baseline=cCharB.Baseline+1;


Additionally, if you call the -registergame parameter on your game's .exe file in order to make double-click loading of save-games possible, there seems to be a crash when restarting the game.

For example, load the game's .exe, save a game, and then quit. Go to the game directory and double-click on the recent save-game file to quickload it (this seems to bypass the creation of the restart point save-game file--especially if you placed SetRestartPoint in the game_start function or in your title screen).  

Click your game's "restart" button, or trigger any other place where RestartGame(); is called, and the game will crash out with:

QuoteError: unable to restart game (error:File not found)

These likely aren't exclusive to 3.2 and probably existed in previous versions of AGS too.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: GarageGothic on Thu 03/09/2009 16:21:16
Quote from: AGD2 on Thu 03/09/2009 15:05:03
Speaking of baselines, I recently noticed that the following code doesn't seem to work:

cCharA.Baseline=cCharB.Baseline+1;

Isn't it because you actually want to set

cCharA.Baseline=cCharB.y+1;

?

Unless you've specifically have set CharB's baseline, his Baseline property will be 0.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: AGD2 on Thu 03/09/2009 17:41:28
I was just wondering if the character Baseline property was working as intended. If a character's baseline is 0 (which doesn't actually represent 0 in this case, but the character's current y-pos instead), would it make sense to set the baseline relative to that character's y-pos instead?

But yes, as you mentioned, manually setting a baseline relative to that character's y-pos also has the same result. So, either way, it's no big deal.

--EDIT--

Something else I noticed is that if you put code in the game_start function like:

if(IsSpeechVoxAvailable()==false) QuitGame();
if(IsMusicVoxAvailable()==false) QuitGame();


... and then use the test game feature, the game will quit because it doesn't find the .vox files in the "_Debug" folder. At present you need to copy them across manually for the test game feature to work.

Any chance that the test game feature could automatically check inside the "Compiled" folder for the existence of said files first, rather than the "_Debug" folder?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: OneDollar on Sun 06/09/2009 16:23:39
Spotted another tiny inconsistency, again with AGS 3.1.2 SP1 (I can't see any record of it in the change log for 3.2). The Speech style section of the Game Options manual entry references "QFG4-style speech", but this has been renamed to WholeScreen in the General Settings.

I'm sure you want to know :=.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sun 06/09/2009 22:30:15
QuoteIs your game set to 640x480 in General Settings but you can't import a 640x480 background?

Exactly..

Can you upload an example of the problem? I can't reproduce any problems with this.

Quote
I've found a rather odd bug in 3.1.2 that appears to exist in the latest beta as well.  If you set the baseline of a character all seems to work fine in DDraw, but in D3D mode it appears to ignore custom character baselines altogether.  I tested this rather quickly by placing a character above the player and setting the character's baseline to 2.  In DDraw mode he appeared correctly behind the player, in D3D he appears in front every time.

I just tried this and the problem only seems to happen if the character has IgnoreWalkbehinds set. I'll look into it.

QuoteI do: AGS 3.2 beta 4
System.AccessViolationException: Es wurde versucht,I'm geschützten Speicher zu lesen oder zu schreiben.
Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist

Did you just get this error once, or have you had it multiple times? Had you made any changes to the script just before it happened?

Guys, if you have any crashes PLEASE use the Send Error Report button. I haven't received any error reports from the beta in the last 3 weeks so I was assuming that nobody had had any problems with it.

QuoteSpeaking of baselines, I recently noticed that the following code doesn't seem to work:
cCharA.Baseline=cCharB.Baseline+1;

As GarageGothic says, this is correct if CharB has no explicit baseline set. Perhaps the Baseline property should return the Y co-ordinate if it is working with automatic baselines, but since the manual states that it will return 0 in this case, I think it should continue to do so.

QuoteAdditionally, if you call the -registergame parameter on your game's .exe file in order to make double-click loading of save-games possible, there seems to be a crash when restarting the game.

Hmm, well spotted. The quick-restore feature does bypass the game startup, so the restart point is never created. I'm not sure how to fix this, I'll have a think.

Quoteif(IsMusicVoxAvailable()==false) QuitGame();

... and then use the test game feature, the game will quit because it doesn't find the .vox files in the "_Debug" folder. At present you need to copy them across manually for the test game feature to work.

Thanks, i'll look into this.

QuoteSpotted another tiny inconsistency, again with AGS 3.1.2 SP1 (I can't see any record of it in the change log for 3.2). The Speech style section of the Game Options manual entry references "QFG4-style speech", but this has been renamed to WholeScreen in the General Settings.

Hehe well spotted, i'll correct that.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Mon 07/09/2009 04:51:30
QuoteI just tried this and the problem only seems to happen if the character has IgnoreWalkbehinds set. I'll look into it.


Really?  Well spotted, old bean!  I should have tried turning that off to further narrow down the problem but to be quite honest I didn't even remember I'd set Ignorewalkbehinds on the character (probably because it doesn't show up in the properties list).  Well, I'm glad you found the problem, at least.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: abstauber on Mon 07/09/2009 08:08:37
Quote

Did you just get this error once, or have you had it multiple times? Had you made any changes to the script just before it happened?
It happens all the time - it's hardly possible to work with Beta4 at all.
And it's also not easy to tell, when this happens. It definately happens, after I've changed a header and AGS wants to compile all the files again (16 script pairs so far).

It also happens a lot after I change a room script without opening the room - but in the end, opening the room and editing the script later hasn't helped either.

Saving for example works all the time, but after hitting compile often makes the editor crash. When I then restart AGS, compiling works fine again.

Quote
Guys, if you have any crashes PLEASE use the Send Error Report button. I haven't received any error reports from the beta in the last 3 weeks so I was assuming that nobody had had any problems with it.

'will do in the future :)
Or better: I start up beta4 and crash it some more times  :D

Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Dualnames on Mon 07/09/2009 08:09:39
CJ I've taken the liberty to send you a pm, due to I' rather not have anyone to claim a copy of HHGTG( ;D).
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: abstauber on Mon 07/09/2009 08:57:46
hmm... send error doesn't seem to work either...

(http://shatten.sonores.de/wp-content/uploads/2009/09/send_error_crash.png)

maybe that's an explaination why you haven't received any error reports lately ;)

Or it simply doesn't work with proxies...  ::)

Anyway: Here's what I did to make it crash.

Opening 4 script files + headers. Compiled -> success
Leaving the editor alone for some minutes and used photoshop
coming back added a blank line to a header file. Compiled -> crash
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Tue 08/09/2009 18:42:20
QuoteIt happens all the time - it's hardly possible to work with Beta4 at all.
And it's also not easy to tell, when this happens. It definately happens, after I've changed a header and AGS wants to compile all the files again (16 script pairs so far).

Ok thanks; I've been able to replicate it now so I'll get it fixed.

Quotehmm... send error doesn't seem to work either...

What happens when you try?

QuoteCJ I've taken the liberty to send you a pm, due to I' rather not have anyone to claim a copy of HHGTG

It seems like your game is set to 640x480, but most of your room backgrounds are 640x400.

Why isn't your game resolution set to 640x400 to match the size of the backgrounds?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: abstauber on Tue 08/09/2009 20:16:23
QuoteWhat happens when you try?

Nothing :)
The window hangs (that's why it say "Keine Rückmeldung" in the screenshot) and I've to quit AGS via taskmanager.
Maybe I'm not patient enough to wait for a timeout, since I'm behind a proxy.


QuoteOk thanks; I've been able to replicate it now so I'll get it fixed.
Yay! Thanks  ;D
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Wed 09/09/2009 01:02:17
I haven't had enough animations going to notice this before, but I'm getting strange behavior with a running dialog and 'run game loops while dialog options are displayed' set to true.  For some reason, certain characters and objects animating will stop while others will continue, and it appears to be totally random.  I'll point out that these objects and characters are responding to a set of randomly generated numbers to dictate their behavior, and the action takes place in the room's RepExec function.  I have a bunch of objects (people) on animated barstools, and when a dialog starts some (or all) of these just stop animating.  Is it possible that RepExec is not working well with dialogs and the run game loops setting?  

Even if true, since the animations are non-block and repeat I'm confused as to why they stop completely!

If you still have the build of the game I sent you not long ago, you should be able to see this by pressing F1 and getting close and talking to the big green guy behind the bar repeatedly.  Like I said, it affects random animations each time the dialog starts, so sometimes they all work, sometimes they don't.  If not I can re-upload it.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Wed 09/09/2009 20:37:31
Quote from: ProgZmax on Wed 09/09/2009 01:02:17
I haven't had enough animations going to notice this before, but I'm getting strange behavior with a running dialog and 'run game loops while dialog options are displayed' set to true.  For some reason, certain characters and objects animating will stop while others will continue, and it appears to be totally random.  I'll point out that these objects and characters are responding to a set of randomly generated numbers to dictate their behavior, and the action takes place in the room's RepExec function.  I have a bunch of objects (people) on animated barstools, and when a dialog starts some (or all) of these just stop animating.  Is it possible that RepExec is not working well with dialogs and the run game loops setting? 

RepExec doesn't run in this situation, only repeatedly_Execute_always runs while the dialog options are displayed.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Thu 10/09/2009 04:46:16
How come some of the repeating animations play and others stop when all of the animations in question are keyed to run from RepExec?  Also, is there any reason why you can't have RepExec loops running with 'run game loops while dialog options are displayed'?  Otherwise, the setting isn't really working as advertised if certain game loops are shut off and others are allowed to run ;\.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sat 12/09/2009 12:07:14
Looking at your room script, the RepExec function generates a random number and then plays the object animations with either the eOnce or eRepeat setting. Therefore if the animation happens to be running with eRepeat (which most of them are) when the dialog starts, it will continue animating through the dialog.
If the animation was started with eOnce it will complete while the dialog options are displayed, but then the RepExec code will not run to start it going again.

Quoteso, is there any reason why you can't have RepExec loops running with 'run game loops while dialog options are displayed'?

Well, this is standard AGS behaviour that RepExec doesn't run while the game is blocked (which it is while dialog options are displayed); just like while a blocking Walk or blocking Animate are in progress.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sat 12/09/2009 17:01:39
Quote from: ProgZmax on Mon 07/09/2009 04:51:30
I should have tried turning that off to further narrow down the problem but to be quite honest I didn't even remember I'd set Ignorewalkbehinds on the character (probably because it doesn't show up in the properties list).  Well, I'm glad you found the problem, at least.

I've looked into this further, and I'm not sure it's actually going to be possible to fix this situation in the D3D renderer. If you have Character 1 standing behind Character 2, and they are both behind a walk-behind; if Character 1 has Ignore Walkbehinds set, but Character 2 doesn't, it's not possible for the D3D renderer to draw Character 1 in front of the walkbehind but behind Character 2... because Character 1 needs to be drawn before Character 2,  the walk-behind is then drawn after Character 2, so it will get drawn on top of Character 1. Hmm...
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sat 12/09/2009 17:27:30
Quote from: AGD2 on Thu 03/09/2009 17:41:28
Something else I noticed is that if you put code in the game_start function like:

if(IsSpeechVoxAvailable()==false) QuitGame();
if(IsMusicVoxAvailable()==false) QuitGame();


... and then use the test game feature, the game will quit because it doesn't find the .vox files in the "_Debug" folder. At present you need to copy them across manually for the test game feature to work.

The cause of this is probably that IsMusicVoxAvailable always returns 0 in AGS 3.2, because the MUSIC.VOX is no longer generated. For backwards compatibility, I'll change it to check for the new AUDIO.VOX instead.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Sat 12/09/2009 18:12:12
QuoteLooking at your room script, the RepExec function generates a random number and then plays the object animations with either the eOnce or eRepeat setting. Therefore if the animation happens to be running with eRepeat (which most of them are) when the dialog starts, it will continue animating through the dialog.

That would do it.

QuoteWell, this is standard AGS behaviour that RepExec doesn't run while the game is blocked (which it is while dialog options are displayed); just like while a blocking Walk or blocking Animate are in progress.

I understand what you're saying but it doesn't make sense to me to allow repeatedly_execute_always to run but not, say, RepExec when I could (with a lot of effort) dump all my code from all my RepExecs into repeatedly_execute_always and split them up by player.Room.  I mean, the room's repeating function is a pretty integral part of most peoples' rooms if they have animations and such going on.  Not allowing it to run during dialogs (when you have allow game loops on) just feels a bit self-defeating to me since one of the arguments that got the setting implemented was people wanting background animations running during dialogs (the second argument being people wanted weather effects to keep playing).  I'm not trying to be annoying about this, it just seems a bit odd?

QuoteI've looked into this further, and I'm not sure it's actually going to be possible to fix this situation in the D3D renderer.

That is strange, but I can't even remember why I set that character to ignore walkbehinds anyway, and disabling it doesn't seem to negatively impact anything so I'll just go that route!
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: NsMn on Sat 12/09/2009 18:46:40
Quote from: ProgZmax on Sat 12/09/2009 18:12:12
...RepExec when I could (with a lot of effort) dump all my code from all my RepExecs into repeatedly_execute_always and split them up by player.Room.

Why? You can declare repeatedly_execute_always in the room script, so you don't have to put it all into the global function.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Pumaman on Sat 12/09/2009 19:22:07
Yes, you can create a repeatedly_execute_always function in room scripts, you don't have to put it all in the global script.

The reason for this restriction is the same as for blocking walks, blocking animations, etc -- ie. that it's not possible to get into a state of nested blocking calls. Because blocking calls are banned from rep_exec_always, it prevents you from calling a blocking Walk inside a blocking Walk inside a blocking Walk, because doing so could end up with some very obscure and hard to track down bugs.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Shane 'ProgZmax' Stevens on Mon 14/09/2009 00:13:19
I wasn't aware that room scripts would actually handle a repeatedly_execute_always function.  That resolves the problem nicely!  If I'd known about this earlier it would have saved a lot of wasted comments :).  Perhaps you could add a Repeatedly_Execute_Always event to the room event list so everyone else knows it, too?
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Dualnames on Mon 14/09/2009 07:25:14
Even if I set the resolution to 640x400 , i still can't import a background.
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Crimson Wizard on Wed 16/09/2009 16:59:39
I have this question, is it possible to make AGS script allow hexadecimal constants? Maybe I am wrong, but current AGS version I am using (v3.1.2 SP1) does not understand them. It may be more convenient to write
value1 = value2 & 0xFFFF
and not
value1 = value2 & 0x65535
Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Gord10 on Wed 16/09/2009 19:22:18
I guess you meant

value1 = value2 & 65535

in the second code?


I have come up with the solution of creating an in-game function that reads our hexadecimal string and returns the integer value.

Like

value1 = value2 & func("FFFF")

Title: Re: AGS 3.2 beta 4 - Michael Jackson Edition
Post by: Crimson Wizard on Wed 16/09/2009 19:44:46
Quote from: Gord10 on Wed 16/09/2009 19:22:18
I guess you meant

value1 = value2 & 65535

in the second code?
Right. Silly typo.


Quote from: Gord10 on Wed 16/09/2009 19:22:18
I have come up with the solution of creating an in-game function that reads our hexadecimal string and returns the integer value.

Like

value1 = value2 & func("FFFF")

uuuhhh... I'm afraid that's too... evil  :). I mean, there wouldn't be much sense in this. It may be useful for parsing purposes, but not in the case I mentioned.
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Pumaman on Wed 16/09/2009 21:10:05
QuotePerhaps you could add a Repeatedly_Execute_Always event to the room event list so everyone else knows it, too?

Yeah, I appreciate that this is a bit obscurely documented. I'll have a think about how to improve it.

QuoteEven if I set the resolution to 640x400 , i still can't import a background.

Taking another look at your game, it looks like a lot of the backgrounds were imported with your game resolution set to 320x200, therefore they have been imported as large 640x400-sized scrolling backgrounds for a 320x200 game, rather than 640x400-sized backgrounds for a 640x400 game.

If this is somehow working at run-time, and you want to replace one of these backgrounds without losing the room areas, temporarily change your game resolution back to 320x200 and you should be able to do so. Going forward make sure the game resolution is correctly set!

QuoteI have this question, is it possible to make AGS script allow hexadecimal constants? Maybe I am wrong, but current AGS version I am using (v3.1.2 SP1) does not understand them.

That's certainly a possibility for a future verison, but it's relatively obscure for AGS scripting so it won't be a priority I'm afraid :)



Anyway, beta 5 is now up. It's quite a minor release but due to beta 4 having some instability problems, it seemed like a good idea to get a more stable beta released.
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Crimson Wizard on Wed 16/09/2009 21:30:19
QuoteFirst Michael Jackson, now Patrick Swayze... who will it be next?!?
Die now and get next AGS 3.2 beta named in your memory  
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: TerranRich on Thu 17/09/2009 05:26:46
I predict AGS 5.0 Beta will be the "TerranRich" Edition.

That sounded more morbid than I intended. :P
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Dualnames on Thu 17/09/2009 07:49:52
Quote from: TerranRich on Thu 17/09/2009 05:26:46
I predict AGS 5.0 Beta will be the "TerranRich" Edition.

That sounded more morbid than I intended. :P

It's morbid enough. Thanks for the insight Pumaman!(CJ)
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: monkey0506 on Fri 18/09/2009 20:06:26
Quote from: Pumaman on Sun 03/05/2009 15:34:47* Fixed Game.SpriteWidth/SpriteHeight returning the size of the blue cup instead of 0 if you supplied an invalid sprite number
* Fixed editor crash if you tried to use a non-icon file as TEMPLATE.ICO

Excellent. Glad to see my concerns were swiftly dealt with. :)
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Joe on Tue 22/09/2009 11:55:00
This might sound like a whim. But it would be nice if you had an option to compile the sprite file out of the game exe in order not to create big-size exe files. And another option in general settings to set the savegame directory in the game folder.
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Pumaman on Wed 23/09/2009 18:08:21
Enable the "split resource files" option in General SEttings, and the sprite file will not be compiled into the EXE.

I will not be adding an option to set a save game folder inside the game folder because of issues with permissions on Vista if you do this -- this has been discussed at length here before.
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Joe on Wed 23/09/2009 18:52:56
I see. But why when I use the SetSaveGameDirectory("Save") function my game still creates the 'My saved game folder'?
At first it really bothered me, anyway I'm getting used to it... so never mind.
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: monkey0506 on Wed 23/09/2009 20:09:38
It does that for the same reason CJ said. Vista permission issues. However (as has been discussed before) you can use the directory path such as Game.SetSaveGameDirectory("./Saves"); which will create the Saves folder within the game directory. Note that if you do this then any user on Vista must install the game itself to a writable directory such as "Documents".
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Joe on Wed 23/09/2009 20:17:54
Yeah I knew about this: Game.SetSaveGameDirectory("./Saves");
But never mind I'll make my game to create the folder in My docs
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Joe on Wed 23/09/2009 22:58:52
Talking about the Vista permissions. If I create a FILE in the game folder usign a File* pointer would Vista player have any problem?
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: monkey0506 on Wed 23/09/2009 23:02:12
Unless I'm mistaken File functions always work on the save directory. So as long as the save directory is properly set then there shouldn't be any issues.

Actually I think you might have to use the $SAVEGAMEDIR$ tag. That is:

File *f = File.Open("$SAVEGAMEDIR$/temp.tmp", eFileWrite);

I think. Checking on it.

P.S. Double post??
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Joe on Fri 25/09/2009 19:31:14
But I can perfectly use the File functions creating them in the game folder in win xp. So... would vista users have any problems with it?

P.S.
QuoteP.S. Double post??
Why are you asking? It's obvious. Sorry for that
Title: Re: AGS 3.2 beta 5 - Patrick Swayze Edition
Post by: Pumaman on Sat 26/09/2009 17:57:01
Quote from: Joe Carl on Wed 23/09/2009 22:58:52
Talking about the Vista permissions. If I create a FILE in the game folder usign a File* pointer would Vista player have any problem?

If they installed your game to Program Files, then that would fail and your File.Open call would return null.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Sun 04/10/2009 16:32:53
Quote from: ProgZmax on Tue 01/09/2009 17:40:38
I've found a rather odd bug in 3.1.2 that appears to exist in the latest beta as well.  If you set the baseline of a character all seems to work fine in DDraw, but in D3D mode it appears to ignore custom character baselines altogether.  I tested this rather quickly by placing a character above the player and setting the character's baseline to 2.  In DDraw mode he appeared correctly behind the player, in D3D he appears in front every time.

This problem with walk-behinds in D3D when "Ignore walkbehinds" is set on the character is proving to be much more difficult to resolve than I thought. I don't really want to release 3.2 until it is fixed, but it's looking less and less likely that I'll be able to find a fix for it, unfortunately...


Anyway, RC 1 is now up. This is as an installer because it includes an updated Demo GAme and a new Template (thanks abstauber!!) If you guys could give it a quick test and make sure everything is working properly, that would be great.

Also, as 3.2 is now getting closer to release time, I'd appreciate any feedback anyone might have on the new audio system, and whether there's anything in it that doesn't work or that is difficult to understand or use.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: abstauber on Sun 04/10/2009 17:16:40
Quote... and a new Template (thanks abstauber!!)
Yay ;D Thanks for adding!

As for the audiosystem:
I'd love to see a parameter to define the AudioChannel in Audioclip.Play and .PlayQueue. That way PlayQueued also would make a lot more sense to me :)

And I'd like to have an option to change the default volume for audio types by script. Right now, it's a little tricky to do this (like making a slider for music and sound).

But all in all it's great to have the new audio system. Writing audio code and raw drawing code is almost the same and makes a lot more sense. The concepts of the old audio system hasn't been changed since I've been around for the first time ;)
So yes, the new system is way more modern.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: subspark on Mon 05/10/2009 10:24:50
I've been meaning to ask this for a while, CJ, and since you just updated winsetup I'll ask it now:
Please can "winsetup.exe" be compiled as "Setup.exe". "winsetup" is so 90's and call me particular but I really grow tired of renaming it manually every few compiles or so.  Setup.exe is much more generic.

Even the old Mac OSX Version of AGS compiles as winsetup. Mismatch much? :P

Cheers,
Sparky.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Gilbert on Mon 05/10/2009 10:31:35
Not if the DOS engine somehow manages to come back. :=

This is really minor though, as you really shouldn't be renaming the file a thousand times. You only need this when the game is ready to go and is packaged for distribution. :P

I think a more important (but not urgent) feature is to able to have the name of the game's executable set in the editor, so it does not need to be identical to the folder's name. Since winsetup.exe won't work when you rename the game's .exe manually, this eliminates the troubles that at least 30% (according to non-exhausive, unconvincing research) of the games would come with a non-working version of the set-up launcher.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Crimson Wizard on Mon 05/10/2009 13:27:59
Quote from: Gilbet V7000a on Mon 05/10/2009 10:31:35
I think a more important (but not urgent) feature is to able to have the name of the game's executable set in the editor, so it does not need to be identical to the folder's name.
I second that, only should add "and can be changed in any time" ;D
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: subspark on Mon 05/10/2009 17:03:37
It certainly would be ideal to be able to set names for both the game and setup exe from game settings in the editor itself. So i am inclined to agree.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: monkey0506 on Mon 05/10/2009 17:06:04
I think that the main reason behind this behavior was probably due to the days of the DOS engine in which the file names had length restrictions. Although it's not high priority I can see how the request to set the EXE name independently of the project folder name could be useful.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Mon 05/10/2009 18:54:15
QuoteI'd love to see a parameter to define the AudioChannel in Audioclip.Play and .PlayQueue. That way PlayQueued also would make a lot more sense to me

Fair point. PlayQueued is currently based on audio types and so is only really useful with clips that have an audio type that allows 1 simultaneous channel.

QuoteAnd I'd like to have an option to change the default volume for audio types by script. Right now, it's a little tricky to do this (like making a slider for music and sound).

Ah yes, I remember you mentioning this before. I'll look into it.

QuotePlease can "winsetup.exe" be compiled as "Setup.exe". "winsetup" is so 90's and call me particular but I really grow tired of renaming it manually every few compiles or so.  Setup.exe is much more generic.

It was originally called "setup.exe", but people got confused and thought that it was an installer program -- hence the "winsetup.exe" name to distinguish it as Not An Installer.

However, there's no reason why this and the game EXE name shouldn't be customizable in the editor settings -- it's something I need to add at some point.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: subspark on Tue 06/10/2009 08:14:30
Most appreciated Chris. I'll probably name mine "Config.exe" as opposed to anything else. :)

Cheers,
Sparky.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Midian Design on Tue 06/10/2009 11:05:58
I was working on objects (Hitler version - Windows Vista, .tif img) and happened this:


Error: Tentativo di lettura o scrittura della memoria protetta. Spesso questa condizione indica che altre parti della memoria sono danneggiate.
Version: AGS 3.2.0.95

System.AccessViolationException: Tentativo di lettura o scrittura della memoria protetta. Spesso questa condizione indica che altre parti della memoria sono danneggiate.
   in load_room_file(SByte* )
   in load_crm_file(UnloadedRoom roomToLoad)
   in AGS.Native.NativeMethods.LoadRoomFile(UnloadedRoom roomToLoad)
   in AGS.Editor.Components.RoomsComponent.LoadNewRoomIntoMemory(UnloadedRoom newRoom, CompileMessages errors)
   in AGS.Editor.Components.RoomsComponent.RecompileAnyRoomsWhereTheScriptHasChanged(CompileMessages errors, Boolean rebuildAll)
   in AGS.Editor.Components.RoomsComponent.AGSEditor_PreCompileGame(PreCompileGameEventArgs evArgs)
   in AGS.Editor.AGSEditor.PreCompileGameHandler.Invoke(PreCompileGameEventArgs evArgs)
   in AGS.Editor.AGSEditor.CompileGame(Boolean forceRebuild, Boolean createMiniExeForDebug)
   in AGS.Editor.Components.BuildCommandsComponent.TestGame(Boolean withDebugger)
   in AGS.Editor.Components.BuildCommandsComponent.CommandClick(String controlID)
   in AGS.Editor.ToolBarManager.ToolbarEventHandler(Object sender, EventArgs e)
   in System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   in System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)
   in System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   in System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   in System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   in System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   in System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   in System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   in System.Windows.Forms.Control.WndProc(Message& m)
   in System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   in System.Windows.Forms.ToolStrip.WndProc(Message& m)
   in System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   in System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   in System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Kweepa on Tue 06/10/2009 13:43:52
Quote from: Pumaman on Sun 03/05/2009 15:34:47
Now that it turns out that Hitler's skull wasn't actually his (http://news.bbc.co.uk/1/hi/8281839.stm)
They didn't even consider the obvious... Hitler was female :o

[EDIT] Errr, hooray for release candidates!
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Duzz on Tue 06/10/2009 14:22:20
There seems to be a bug in the new sound logic somewhere.  It was happening in the most recent beta, and it's happening in RC1 as well. 

When I play the same sound repeatedly, very fast, the sound is replaced by sounds that were previously playing. 

An example: I have a caption that types itself on the bottom of the screen when you enter some rooms.  It plays a beep sound every time a letter is printed.  In 3.2, when I enter a room, it seems to repeatedly play the player's footstep sound as well as the beeps.

It works fine in 3.1.  I'm using the old PlaySound(...) functions.  I can upload a build if you need it.

The new sound system is really great btw.  Don't need my dodgy prioritised sound functions anymore.  I wish I hadn't just finished all the sound work for my game though :)
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Tue 06/10/2009 19:29:19
Quote from: MD on Tue 06/10/2009 11:05:58
I was working on objects (Hitler version - Windows Vista, .tif img) and happened this:

Do you remember exactly what you did just before this happened? If you load the same room again, does the problem happen again?

QuoteThere seems to be a bug in the new sound logic somewhere.  It was happening in the most recent beta, and it's happening in RC1 as well. 

When I play the same sound repeatedly, very fast, the sound is replaced by sounds that were previously playing. 

If you could upload a build, that would be helpful please -- it's probably a combination of factors that might be hard to replicate separately.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Midian Design on Tue 06/10/2009 20:12:54
Quote from: Pumaman on Tue 06/10/2009 19:29:19
Quote from: MD on Tue 06/10/2009 11:05:58
I was working on objects (Hitler version - Windows Vista, .tif img) and happened this:

Do you remember exactly what you did just before this happened? If you load the same room again, does the problem happen again?


I added an object, pressed play. AGS started to save the room and then the crash :)
Fortunately nothing happened to my files.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Duzz on Wed 07/10/2009 01:45:29
Ok, I've PM'd you the link
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Dualnames on Thu 08/10/2009 08:33:10
Sorry to go and spoil it all, but..eh..found a bug, and it seems it goes a long way.

We all know that to have a character's talking view portrait appear on SierraWithBackground, the character must be in the same room, otherwise only the text window will appear. Now if you use DisplayTopBar function and then use a Character.Say for the first Character.Say played after DisplayTopBar it will have the TopBar in it, the second will have no problem, I found a workaround but still the bug remains and it should if possible be fixed.

Do this:


SetSpeechStyle(eSierraWithBackground);
//make sure char ego is in the player;ers room. And that he has a talking view.
DisplayTopBar(....);
cEgo.Say("Hey");
cEgo.Say("Hey2");//this line will appear normally.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: mikosworld on Sat 10/10/2009 00:23:44
Great !!! "Abstauber's LEC-style" template
It will be possible to make another templates as Runaway, Sam & Max, LOOM and Monkey Island 3 ?

Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: ThreeOhFour on Sun 11/10/2009 13:52:17
Quote from: mikosworld on Sat 10/10/2009 00:23:44Monkey Island 3 ?

The default Verb Coin template is pretty much what you're looking for here :)
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: mikosworld on Wed 14/10/2009 00:55:55
I don't like "The default Verb Coin template" :(
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: ThreeOhFour on Wed 14/10/2009 01:26:11
Functionally, it is identical to the 'Monkey Island 3' (Curse of Monkey Island) verb coin.

You can change the graphics yourself if you wish.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Misj' on Wed 14/10/2009 08:30:14
Quote from: Ben304 on Wed 14/10/2009 01:26:11You can change the graphics yourself if you wish.
Not to mention that it is highly encouraged to change the graphics to fit the style and theme of your own game. The original graphics are 'merely' intended as place-holders to help developers test the template in their game before they personalize it.

Plus, by not using the original Monkey Island 3 graphics, neither Electroshokker nor Chris are likely to be send a nice letter from LucasArts's lawyers telling them to stop copyright infringement; and the current graphics are free to use.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Wed 14/10/2009 22:15:52
QuoteI added an object, pressed play. AGS started to save the room and then the crash
Fortunately nothing happened to my files.

Hmm, strange. Let me know if it happens again.

QuoteOk, I've PM'd you the link

Thanks, I'll look into it.

QuoteWe all know that to have a character's talking view portrait appear on SierraWithBackground, the character must be in the same room, otherwise only the text window will appear. Now if you use DisplayTopBar function and then use a Character.Say for the first Character.Say played after DisplayTopBar it will have the TopBar in it, the second will have no problem, I found a workaround but still the bug remains and it should if possible be fixed.

Strange, I'll see if I can reproduce this.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: mikosworld on Thu 15/10/2009 15:09:06
Pumaman, it'll be possible in "Inventory Items", to add "Mouse Over image" feature in "Apparence" section.
Because, I've create 2 states icons for my inventory items (normal image icon and over image icon with light red outline).
I would like this feature, to show my mouse over item when I'm overlapping it with hotspot/regions ...
Thanks
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Thu 15/10/2009 20:35:05
QuoteWhen I play the same sound repeatedly, very fast, the sound is replaced by sounds that were previously playing. 

An example: I have a caption that types itself on the bottom of the screen when you enter some rooms.  It plays a beep sound every time a letter is printed.  In 3.2, when I enter a room, it seems to repeatedly play the player's footstep sound as well as the beeps.

Thanks for posting your game. I tried it out, but when entering the room to the south I only heard the typing-beeps and not any footstep sounds. Does the problem happen regularly for you?

Quote from: Dualnames on Thu 08/10/2009 08:33:10
We all know that to have a character's talking view portrait appear on SierraWithBackground, the character must be in the same room, otherwise only the text window will appear. Now if you use DisplayTopBar function and then use a Character.Say for the first Character.Say played after DisplayTopBar it will have the TopBar in it, the second will have no problem, I found a workaround but still the bug remains and it should if possible be fixed.

SetSpeechStyle(eSierraWithBackground);
//make sure char ego is in the player;ers room. And that he has a talking view.
DisplayTopBar(....);
cEgo.Say("Hey");
cEgo.Say("Hey2");//this line will appear normally.

I can't reproduce this, it seems to work fine for me. Can you post an example of the problem?

QuotePumaman, it'll be possible in "Inventory Items", to add "Mouse Over image" feature in "Apparence" section.
Because, I've create 2 states icons for my inventory items (normal image icon and over image icon with light red outline).

This thread is not the right place for feature requests, please post them in the Wishlist thread. It is of course possible to work around this with scripting.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Dualnames on Fri 16/10/2009 16:51:17
Quote from: Dualnames on Thu 08/10/2009 08:33:10
We all know that to have a character's talking view portrait appear on SierraWithBackground, the character must be in the same room, otherwise only the text window will appear. Now if you use DisplayTopBar function and then use a Character.Say for the first Character.Say played after DisplayTopBar it will have the TopBar in it, the second will have no problem, I found a workaround but still the bug remains and it should if possible be fixed.

SetSpeechStyle(eSierraWithBackground);
//make sure char ego is in the player;ers room. And that he has a talking view.
DisplayTopBar(....);
cEgo.Say("Hey");
cEgo.Say("Hey2");//this line will appear normally.

I've given you the files of the game before, if you have them,you can test it there. Just place the code above when pressing Space for example. Forgot to say the Speech when the game starts (on the general settings pnae)is LucasArts. And ego here shouldn't be the playable character but instead an NPC.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Sat 17/10/2009 21:19:43
Quote from: Dualnames on Fri 16/10/2009 16:51:17
I've given you the files of the game before, if you have them,you can test it there. Just place the code above when pressing Space for example. Forgot to say the Speech when the game starts (on the general settings pnae)is LucasArts. And ego here shouldn't be the playable character but instead an NPC.

I tried pasting that code into HHGTG and it worked fine. Are you sure that's the exact script code that you're using?
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Rulaman on Sun 18/10/2009 13:49:06
Hi,

I had problems opening a template created with 3.0.2 SP1 with the new BETA (3.2 RC1)
The templates delivered with this Version seems to work.

The error is:


---------------------------
Adventure Game Studio
---------------------------
There was an error creating your game. The error was: Unable to extract template files.



Error details: AGS.Types.AGSEditorException: Unable to extract template files.

   at AGS.Native.NativeMethods.ExtractTemplateFiles(String templateFileName)

   at AGS.Editor.Tasks.CreateNewGameFromTemplate(String templateFileName, String newGameDirectory)

   at AGS.Editor.GUIController.CreateNewGame(String newGameDirectory, String newGameName, GameTemplate createFromTemplate)
---------------------------
OK 
---------------------------


Is this a problem with the templates or with the RC1?
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Sun 18/10/2009 15:14:11
Well spotted, thanks, that seems to happen if the template is from a previous version and has Sound or Music files. I'll get it fixed.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Dualnames on Mon 19/10/2009 07:31:24
Quote from: Pumaman on Sat 17/10/2009 21:19:43
Quote from: Dualnames on Fri 16/10/2009 16:51:17
I've given you the files of the game before, if you have them,you can test it there. Just place the code above when pressing Space for example. Forgot to say the Speech when the game starts (on the general settings pnae)is LucasArts. And ego here shouldn't be the playable character but instead an NPC.

I tried pasting that code into HHGTG and it worked fine. Are you sure that's the exact script code that you're using?


I'll send you the files with the problem as soon as possible..
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Fedx on Mon 19/10/2009 18:53:11
You might wanna check this, but I don't know if it's my computer or the instalation file

(http://www.2dadventure.com/ags/Virus.PNG)

EDIT: It might be my computer, because I don't have the instalation file in my desk  :(
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Mon 19/10/2009 20:53:44
There was another anti-virus app that reported AGS as a trojan a while back, I think they fixed their definitions shortly afterwards.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: jkohen on Mon 19/10/2009 22:37:22
Quote from: Pumaman on Sun 03/05/2009 15:34:47
* Added option to automatically add side borders when running 4:3 games on widescreen monitors

Hi Chris,

Have you tested this on a properly set-up widescreen monitor? I can play 4:3 games on my widescreen monitors without any funny stretching, and it would be a pity if that no longer were the case because of a new feature. Any decent set of drivers and monitor allows to set up stretch-to-fit so it doesn't change the ratio.

Sorry if this has been asked before, but I cannot find a way to search within a thread.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Wed 21/10/2009 21:29:46
QuoteHave you tested this on a properly set-up widescreen monitor? I can play 4:3 games on my widescreen monitors without any funny stretching, and it would be a pity if that no longer were the case because of a new feature. Any decent set of drivers and monitor allows to set up stretch-to-fit so it doesn't change the ratio.

The new option is configurable in the setup program so you can turn it off if you've set up your graphics card drivers to do the work instead.




Now, I'd like to move 3.2 on to the final release stage, but there are two outstanding bug reports that I haven't been able to reproduce:
QuoteThere seems to be a bug in the new sound logic somewhere.  It was happening in the most recent beta, and it's happening in RC1 as well.  

When I play the same sound repeatedly, very fast, the sound is replaced by sounds that were previously playing
QuoteWe all know that to have a character's talking view portrait appear on SierraWithBackground, the character must be in the same room, otherwise only the text window will appear. Now if you use DisplayTopBar function and then use a Character.Say for the first Character.Say played after DisplayTopBar it will have the TopBar in it, the second will have no problem.

Has anyone else had any problems like this?

If anyone is reading this and hasn't yet tried out upgrading their game to 3.2 RC1, please do so now (after making a backup copy, obviously) so that any issues can be fixed before the final release.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Alan v.Drake on Thu 22/10/2009 21:07:10
Hello,
I was wondering... since you've enabled audio panning, then it would make sense to add a property to characters to have the audio linked in their views be panned relatively to their position to the viewport, could it be done ? (if it's not too late)
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: subspark on Sat 31/10/2009 01:20:06
Thats actually a fantastic idea. To be able to control the amount of panning going on with character coords would be good too.

Cheers,
Sparky.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: monkey0506 on Sun 01/11/2009 05:23:09
There seems to be a random non-fatal bug that I've noticed in these betas that I don't recall having encountered previously. I'm not sure what the exact circumstances of it are, and there's a possibility it may just be my system.

I'm experiencing (at random times) issues with open script(s) not having the "dirty" (changed) state of the file updated properly by compiling or even by saving the file directly. I know the files are in fact being saved as testing shows the changes are implemented, but when this happens I can only get the dirty state cleared for that file by selecting to close it, after which I am prompted whether I want to save the changes to the file. I've been telling it yes and there haven't appeared to be any major issues arising from it as I've said.

It is something I would say is "reproducible" in that I've encountered it several times, though what's bringing it about I'm not sure, and obviously since the files are in fact being properly saved there's no real way to track it down from a project upload or anything like that (presumably). Anyway, I've figured out how to deal with it, and as I said it might just be my system, but I don't recall having any issues with prior versions.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: Pumaman on Wed 04/11/2009 21:37:53
Quote from: Haloa on Thu 22/10/2009 21:07:10
I was wondering... since you've enabled audio panning, then it would make sense to add a property to characters to have the audio linked in their views be panned relatively to their position to the viewport, could it be done ? (if it's not too late)

That's a good idea, thanks. It's too late for 3.2 now, but it's a good idea for a future version of AGS.

Quote
I'm experiencing (at random times) issues with open script(s) not having the "dirty" (changed) state of the file updated properly by compiling or even by saving the file directly. I know the files are in fact being saved as testing shows the changes are implemented, but when this happens I can only get the dirty state cleared for that file by selecting to close it, after which I am prompted whether I want to save the changes to the file. I've been telling it yes and there haven't appeared to be any major issues arising from it as I've said.

Well spotted, thanks -- I think this bug has been introduced as a result of a fix that I did in RC1.
The bug seems to happen if a script file is already open, then you go into an Events pane and add an event.

I'll get it fixed.
Title: Re: AGS 3.2 RC 1 - Hitler's Brain Edition
Post by: monkey0506 on Thu 05/11/2009 04:49:41
Quote from: Pumaman on Wed 04/11/2009 21:37:53The bug seems to happen if a script file is already open, then you go into an Events pane and add an event.

I'll get it fixed.

Interesting...during the course of a normal...wait...I don't have a normal work flow, what am I saying? During the course of a spontaneous divulging into tricking AGS into allowing me to use polymorphism simply coz I think it's funny (amongst other things, I have a life...somewhere ::)) I doubt I ever would have produced the exact circumstances. Glad to hear you got it from my description. ;D
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Thu 05/11/2009 22:04:00
Ok, RC 2 is now up. This fixes various issues (including that one!), and although there are a couple more things I need to address it seemed like a good time to get the latest release out there.


Again, if anyone hasn't tried their game with 3.2 yet, please do so now, so that we can find any bugs before it becomes a final official release!
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Thu 05/11/2009 22:41:53
Quote from: Pumaman on Thu 05/11/2009 22:04:00
Again, if anyone hasn't tried their game with 3.2 yet, please do so now, so that we can find any bugs before it becomes a final official release!
Since I finally got a completed game, I will do this now.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: RickJ on Fri 06/11/2009 07:58:57
I may have found a compiler/runtime bug.   I have created a module.  An object with properties and methods resides in the module.  I have a public method that originally had 11 optional parameters defined.  In the global script I create an instance of this object and call this method from game_start() and pass 3 of the 11 optional parameters. 

When testing the game I get a runtime error indicating that a script link has failed and the following text: 'BluBox::Init^11'.   BluBox is the object and Init is the method being called when this error occurs.

A close inspection of the module header and module script reveals that the prototype matches the actual function definition (except of course for the default values and the ';' vs '{' ending).  The object instantiation and method call in the global script also appear to be correct.

So to investigate further the cause of this error the Init method was deconstructed by removing all the parameters from the prototype, definition, and call of the method.  This eliminated the error.   So then the method was reconstructed one parameter at a time with an intervening test.  No errors were encountered until the 11th parameter was added and then the error reappeared.

Now here is the strange part, the 11th parameter was eliminated and I expected to get the same results as before - no errors with 10 parameters.  But to my surprise the same error persisted, this time supplying this text in the error message: 'BluBox::Init^10'. 

Now I backup to 9 parameters and everything seems to be OK.    I thought this was a strange behavior and thought I'd report it.  The only other factors  I can think of that may be orworth mentioning is the fact that both prototype and function definition spanned multiple lines and so multiple space and tab characters occurred between parameters  for aesthetic reasons.  Also the optional parameters are GUIControl pointers set to default value of zero.  I am also using previous AGS release (AGS Editor .NET (Build 3.1.2.82) v3.1.2 SP1, February 2009).
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Fri 06/11/2009 10:52:11
Here's an issue, but I don't know what is the right behavior here.
Closing "Music" folder by clicking on Expand/Collapse box on the project tree removes Audio Clip from the Audio page, if one was opened before, and opens what looks like general Music properties on Properties Table.
This ONLY happen if Audio tab is active. If any other tab is active (Room, Script, Dialog, etc) this does not happen.
If you switch to different tab, close "Music" folder, then return to Audio tab, then you may open and close "Music" folder as much as you want and Audio Clip is not removed, and general Music properties are not shown,
unless you explicitly click on "Music" folder name (as opposed to Expand/Collapse box).
If you open another audio clip (or same once more), all start to happen again as did previously.


Also, I have a suggestion to add a way (a button perhaps ;)) to toggle repeatitive audio playback on/off.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Fri 06/11/2009 18:16:46
Quote from: RickJ on Fri 06/11/2009 07:58:57
Now here is the strange part, the 11th parameter was eliminated and I expected to get the same results as before - no errors with 10 parameters.  But to my surprise the same error persisted, this time supplying this text in the error message: 'BluBox::Init^10'.
I am also using previous AGS release (AGS Editor .NET (Build 3.1.2.82) v3.1.2 SP1, February 2009).

This was a bug in AGS 3.1.x but should already be fixed in the latest 3.2 RC 2. Could you try it out and confirm that this fixes the problem for you?

QuoteHere's an issue, but I don't know what is the right behavior here.
Closing "Music" folder by clicking on Expand/Collapse box on the project tree removes Audio Clip from the Audio page, if one was opened before, and opens what looks like general Music properties on Properties Table.
This ONLY happen if Audio tab is active. If any other tab is active (Room, Script, Dialog, etc) this does not happen.

This is actually the correct behaviour, but I can see how it could seem like a bug. The problem is that because the audio folders (like "Music") have properties themselves, there needs to be a way to edit them -- and this is how you do it.
Because there is a single Audio pane that changes its view as you select different audio items in the tree, this is the result you get.

The other option would be to make audio work like Views/Dialogs where each one opens a separate tab, but then you start drowning in open tabs, I might make it a preferences option in a future version.

QuoteAlso, I have a suggestion to add a way (a button perhaps ) to toggle repeatitive audio playback on/off

Do you mean the in-editor audio preview? Having some sort of Loop option wouldn't be a bad idea, however this probably won't make it into 3.2 at this stage.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: subspark on Sun 08/11/2009 19:02:59
BUG: AGS compiles and runs fine with errors in the script such as naming a View that doesnt exist but later on (and seemingly at random) picks them up and then wont run the game until the code is fixed.
This late detection is rather unusual.

Also, I can't seem to open more than one room at once. I can't remember if this was normal or not. It would be good to be able to edit more than one room for corrospondance between interactions/coordinates/etc.

SUGGESTION (Aesthetic): Switch Character.ChangeView(VIEW) to Character.SetView(VIEW) to stay consistant with objects.

Edit: Is there any reason why repetedly_execute in room scripts are named inconsistantly with the global script? It may sound ridiculous but I actually prefer the slightly longer name for aesthetics and clarity sake. ;)

Cheers,
Sparky.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Sun 08/11/2009 22:12:07
Quote from: subspark on Sun 08/11/2009 19:02:59
BUG: AGS compiles and runs fine with errors in the script such as naming a View that doesnt exist but later on (and seemingly at random) picks them up and then wont run the game until the code is fixed.
This late detection is rather unusual.

Was this an error in a room script? If so then it could just be that AGS doesn't rebuild all the rooms when you rename a view, so whenever you next try and save the room it will detect the error.

QuoteAlso, I can't seem to open more than one room at once. I can't remember if this was normal or not. It would be good to be able to edit more than one room for corrospondance between interactions/coordinates/etc.

This has always been the case. You can open multiple room scripts but not rooms themselves.

Quote
SUGGESTION (Aesthetic): Switch Character.ChangeView(VIEW) to Character.SetView(VIEW) to stay consistant with objects.

These are different because a character *always* has to have a View, whereas an object does not necessary have a view assigned at all -- it's a fundamentally different mechanism from characters with Change, Lock and Unlock -- hence why the name is different.

QuoteEdit: Is there any reason why repetedly_execute in room scripts are named inconsistantly with the global script? It may sound ridiculous but I actually prefer the slightly longer name for aesthetics and clarity sake. ;)

You can name it repeatedly_execute in the Room Events panel if you want... of course there is the wider issue of whether Rep EXec should be a room event or whether it should just be a specific named script function, but this is down to legacy reasons.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: subspark on Sun 08/11/2009 23:36:20
Most appreciated for yours answers Chris! And yeah that was a room script quirk and is completely normal as I understand it now.

Cheers,
Sparky.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Mon 09/11/2009 15:34:36
I have this small suggestion - to completely pause the game when Pause/Break is pressed (and unpause by any other key).
Reason is quite uncommon: this will make it easier to do proofreading when testing a game, because you won't worry of speech text dissapear too early  ;)
Well, maybe there could be other usage for this, like simply pausing game if you need to take a break and there's some action episode goes on which involves timing...

Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: TerranRich on Mon 09/11/2009 22:48:40
Ah, so like an instant pause button. This should be script controlled (i.e. if user pressed "Pause/Break", then InstantPause() or something), because some people might have timed puzzles and that would essentially be a cheat.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: GarageGothic on Mon 09/11/2009 23:05:45
Crimson Wizard, you can check for IsKeyPressed(393) in repeatedly_execute_always (for some reason the pause/break button doesn't have an eKey code assigned). Something like this:

bool pausekeypressed;

function repeatedly_execute_always() {
 if ((IsKeyPressed(eKeyF1)) && (!pausekeypressed)) {
   if (!IsGamePaused()) PauseGame();
   else UnPauseGame();
   pausekeypressed = true;
   }
 else if ((pausekeypressed) && (!IsKeyPressed(eKeyF1))) pausekeypressed = false;
 }


(I didn't use keycode 393 in this test because it messes with the AGS debugger and doesn't work well when testing in debug mode. I think the keycode should work in a compiled game though)

Of course you would have to change speech skip to mouseclick or timer only (or using game.skip_speech_specific_key ) so the keypress wouldn't automatically cause the text to disappear.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: subspark on Tue 10/11/2009 01:07:54
QuoteOf course you would have to change speech skip to mouseclick or timer only (or using game.skip_speech_specific_key ) so the keypress wouldn't automatically cause the text to disappear.
Or you could manually set up all your skip speech keys in code to get around this. Adding a couple of variables would allow you to toggle different functions for any given key. That might see this part done!

Cheers,
Sparky.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Wed 11/11/2009 00:04:57
Well, TerranRich's note about timed puzzles were enough to show me that my idea was wrong.

I must excuse for repeatedly suggesting things that are either possible mess-makers or can be implemented by other means. Looks like I am too fast to make conclusions  :-X
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: GarageGothic on Wed 11/11/2009 00:40:28
Thanks for updating your post to actually let me understand it, subspark. Apart from using game.skip_speech_specific_key I don't see how you would do that though, since there's no SkipSpeech() function to call when catching the keypress.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: subspark on Wed 11/11/2009 00:53:16
Ahh too right you are! We'll thats me for ideas. :)

Sparky.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Wed 11/11/2009 19:28:40
Quote from: Crimson Wizard on Mon 09/11/2009 15:34:36
I have this small suggestion - to completely pause the game when Pause/Break is pressed (and unpause by any other key).
Reason is quite uncommon: this will make it easier to do proofreading when testing a game, because you won't worry of speech text dissapear too early  ;)

The easiest way to do this is to run the game in a window, and then simply press Alt+Tab or click outside the window when you want to pause the game -- that way the game window will still be visible but will be paused.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Wed 11/11/2009 22:19:06
Quote from: Pumaman on Wed 11/11/2009 19:28:40
Quote from: Crimson Wizard on Mon 09/11/2009 15:34:36
I have this small suggestion - to completely pause the game when Pause/Break is pressed (and unpause by any other key).
Reason is quite uncommon: this will make it easier to do proofreading when testing a game, because you won't worry of speech text dissapear too early  ;)

The easiest way to do this is to run the game in a window, and then simply press Alt+Tab or click outside the window when you want to pause the game -- that way the game window will still be visible but will be paused.

Heh, yeah, but in this case I wont see the text I am going to proofread  :D
EDIT: oh, wait. Perhaps I can switch focus to some other window, but leave game not minimized.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: subspark on Wed 11/11/2009 23:22:54
Is it possible to execute code just before the window loses focus? Like having a sprite display on-screen indicating the game is paused as soon as you click outside the window and vice-versa?

Sparky.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: TerranRich on Thu 12/11/2009 01:58:24
Quote from: subspark on Wed 11/11/2009 23:22:54
Is it possible to execute code just before the window loses focus? Like having a sprite display on-screen indicating the game is paused as soon as you click outside the window and vice-versa?

Sparky.
This would prevent the aforementioned cheating.

There should be a Window object for the sole purpose of window events like minimizing, focus/blur, etc. Dunno how feasible that is.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Thu 12/11/2009 18:18:02
I've just discovered that the engine crashes if you try to call Character.PlaceOnWalkableArea from game_start. Makes sense seeing as no room is loaded yet, but the error message isn't very friendly. :=
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: RickJ on Sat 14/11/2009 02:12:51
Quote from: Pumaman on Fri 06/11/2009 18:16:46
Quote from: RickJ on Fri 06/11/2009 07:58:57
Now here is the strange part, the 11th parameter was eliminated and I expected to get the same results as before - no errors with 10 parameters.  But to my surprise the same error persisted, this time supplying this text in the error message: 'BluBox::Init^10'.
I am also using previous AGS release (AGS Editor .NET (Build 3.1.2.82) v3.1.2 SP1, February 2009).
This was a bug in AGS 3.1.x but should already be fixed in the latest 3.2 RC 2. Could you try it out and confirm that this fixes the problem for you?
Verified.  Upgraded to  latest RC and error no longer appears..  Thanks!

Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Mon 16/11/2009 22:37:34
QuoteHeh, yeah, but in this case I wont see the text I am going to proofread 
EDIT: oh, wait. Perhaps I can switch focus to some other window, but leave game not minimized.

Clicking on an empty bit of the Windows taskbar is the easiest thing to do -- since it's always there and activating it won't put any windows on top of the game window.

QuoteI've just discovered that the engine crashes if you try to call Character.PlaceOnWalkableArea from game_start. Makes sense seeing as no room is loaded yet, but the error message isn't very friendly

Heh, I'll take a look at it. There are various ways of crashing AGS by doing room-specific stuff in game_start, I'll continue to address them one by one as they come up  ;)

QuoteVerified.  Upgraded to  latest RC and error no longer appears..  Thanks!

Glad to hear it!
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Tue 17/11/2009 06:21:05
Quote from: Pumaman on Mon 16/11/2009 22:37:34Heh, I'll take a look at it. There are various ways of crashing AGS by doing room-specific stuff in game_start, I'll continue to address them one by one as they come up  ;)

Yeah, I just forget sometimes that what I'm doing is room-specific and there's no rooms loaded yet in game_start. ;) Thanks Chris.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Ryan Timothy B on Wed 18/11/2009 18:16:23
I have a question to whomever can answer this.
When you declare a new variable/function/etc, is there a quick key to add any script adjustment to the typing assistant? 

One way I know, is to click on another opened document within AGS (a script, or the sprite manager, etc), and go back to the script you were working on.  Is there a quick key to do this (semicolon would be the most logical)?
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: TerranRich on Wed 18/11/2009 19:25:54
Do you mean adding the variable/function to the list that comes up when you start typing? For functions, I believe it's when you import it into the global header, but for variables, it should be whenever you declare it. That's been my experience anyway.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Ryan Timothy B on Wed 18/11/2009 19:40:11
Nope.  It doesn't add itself to the quick-list the moment you declare it.  Give it a shot.
The only way I know, is to do what I said above. 
It doesn't even add it to the quick-list if you run the game.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Wed 18/11/2009 20:08:36
AFAIK the autocomplete cache should be updated any time you switch tabs, compile, or run the game. I could be wrong though.

Making it update when typing a semi-colon could maybe be useful, but might be impacting to the editor's performance.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: TerranRich on Wed 18/11/2009 21:42:07
Quote from: Ryan Timothy on Wed 18/11/2009 19:40:11
Nope.  It doesn't add itself to the quick-list the moment you declare it.  Give it a shot.
The only way I know, is to do what I said above. 
It doesn't even add it to the quick-list if you run the game.

Something's wrong then, because I just tried it and it worked right after declaring it.

I typed in "int iJokerBlah = 1;", hit enter, and typed in "ijo", and there was my variable.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Ryan Timothy B on Wed 18/11/2009 21:59:54
Are you using AGS 3.2 (or even this RC 2 beta, like I am)?
Because no matter what I do for declaring a variable, it doesn't update the autocomplete list without switching tabs.  Curious, why would it work for you and not I?
I even tried it in a room script, and it still doesn't work without switching tabs.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Khris on Wed 18/11/2009 22:17:48
Same here. IIRC, updating the auto-complete list after a tab switch was introduced only quite recently.
For me, not even saving the game does it, much less typing enter.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: TerranRich on Wed 18/11/2009 22:56:32
Whoops, I'm using 3.1. I forgot I installed 3.2 separately and ran the wrong one.  :-[

Checking now...

It still works as I specified above. So yes, in 3.2 RC 2, I can declare a variable on one line and it's in the auto-complete on the next line. Dunno if it matters, but I'm doing it from within a function. I can confirm that this doesn't work outside of functions.

What I had to do was declare it at the top of the global script, save. Import it at the bottom of the script header, save. Then it was accessible from the global script again.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Ryan Timothy B on Wed 18/11/2009 23:54:32
If you declare a variable at the top of the global script, it's accessible throughout the entire global script.  I'm not sure why you import it in the script header.

BUT.. from what you just said there, you're switching tabs (going from the script to the header), therefor, it doesn't add to the autocomplete without switching tabs.  Unless I understand you incorrectly.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: TerranRich on Thu 19/11/2009 00:45:27
Heh, well I don't use global variables other than those you can define in the editor (at least not yet), so I'm not surprised I did it wrong.

To answer your question, simply saving the script, closing the tab, and re-opening the tab are enough. Simple hanging tabs (e.g. opening the header, then going back to the global script) also refreshes the list.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Thu 19/11/2009 01:08:17
Quote from: TerranRich on Thu 19/11/2009 00:45:27
Heh, well I don't use global variables other than those you can define in the editor (at least not yet), so I'm not surprised I did it wrong.

To answer your question, simply saving the script, closing the tab, and re-opening the tab are enough. Simple hanging tabs (e.g. opening the header, then going back to the global script) also refreshes the list.

Yes, we already know that...

Quote from: monkey_05_06 on Wed 18/11/2009 20:08:36
AFAIK the autocomplete cache should be updated any time you switch tabs, compile, or run the game. I could be wrong though.

Making it update when typing a semi-colon could maybe be useful, but might be impacting to the editor's performance.

;)

The question was why it doesn't update more often.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: TerranRich on Fri 20/11/2009 04:13:20
I forgot what issue I was addressing then, if at all. Man, I must be losing it.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Khris on Tue 24/11/2009 15:38:28
I've encountered some erroneous behaviour with tooltips and optional parameters:

// import line in header:

import void ShowBox(String message, int width = 256, int x = 160, int y = 200, bool stay);


// declaration line in script body

void ShowBox(String message, int width, int x, int y, bool stay) {


I tried to call the function using:
ShowBox("Hello, this is a first test of the message box function!", true);
I got the "not enough parameters in call to function" error.

Edit: I moved the bool param after the string param and it works now. Maybe the manual should mention that optional parameters have to be declared last.

The other thing is minor: the string contains a comma and thus the tooltip is showing the wrong parameter in red and the true/false auto-complete window for the bool appears one param too early.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Tue 24/11/2009 17:24:29
Quote from: Khris on Tue 24/11/2009 15:38:28The other thing is minor: the string contains a comma and thus the tooltip is showing the wrong parameter in red and the true/false auto-complete window for the bool appears one param too early.

It's done that for quite some time. And regarding optional parameters the idea is that you can't pass "nothing" as a parameter so if you have an optional parameter followed by a required parameter then how can you get to the required parameter without being forced to pass something for the optional parameters as well?

I believe AGS will allow the import to compile that way, but it logically doesn't make any sense. From a logical standpoint you should put all of your required parameters first, optional parameters last. That way anything that is optional can be optional.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: abstauber on Tue 24/11/2009 20:10:51
Hi,

I somehow create currupted save games.

Whenever I try to restore, this is the error I get.

---------------------------
Illegal exception
---------------------------
An exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x0043AD2A ; program pointer is +25, ACI version 3.20.1099, gtags (8,0)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.



Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.

An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)
---------------------------
OK   
---------------------------


Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Tue 24/11/2009 22:24:41
Not sure if it's a bug, but I guess it may cause some irritation.
It is about using ALT-drag selection in script editor. Apparently, selection box is being limited by the shortest string in the selected lines range.

For example, if you have some code like:


import function AVeryLongFunctionNameHere();
import function AFunctionName();

If you try to select everything except "import" keywords using ALT-drag here, on the 1st line only a part of function name will be selected.

Detected this in AGS 3.1.*, still present in RC2.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: abstauber on Wed 25/11/2009 13:30:12
Quote from: abstauber on Tue 24/11/2009 20:10:51
Hi,
I somehow create currupted save games.

The bug has been isolated :)

In room_load, do the following:

[...]
SaveGameSlot(1, "QuickSave");
aSomeMusic.Play();
[...]


Try to load that game and BAM ;D
At least that happens in AGS 3.2 RC2 on my machine.

Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: RickJ on Thu 26/11/2009 03:42:10
It appears that extender functions share the global namespace rather than the Object's namespace.  In the example below I had expected that the name of extender function would be seen by the compiler as "String.Token" rather than "Token".   Not sure if this is a bug or a feature ;) so I thought I'd mention it.   It's easy enough to avoid by just using another  name.


*** Global Script ***

String IndexOf;   // Does not conflict with String.IndexOf(..)

String Token;       // Name conflict with extender function String.Token(..)

// String extender function
String Token(this String*);  // Causes an error "Token is already defined"
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Thu 26/11/2009 04:06:34
There actually is a way around that Rick. Once an extender method has been declared, AGS accepts it as part of the struct and you can use the normal namespace resolution to resolve the collision. That is:

// script header
import String Token(this String*); // some extender function declaration
import String Token; // global string, this import must come after the extender to prevent collision

// script file
String Token;
export Token;

String String::Token() { // once it's declared by the import you can use normal namespace resolution
  // blah
}


This also works even if the function isn't global. You can define a localized extender with the same name as a local variable like this:

// script file

import String Token(this String*); // import just like you would in a header file, but in the main script
// this declares the extender to AGS

String Token; // local variable

String String::Token() { // again, using normal namespace resolution
}


;)
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: RickJ on Thu 26/11/2009 04:28:14
Quote
This also works even if the function isn't global. You can define a localized extender with the same name as a local variable like this:
Ah!  Yes, I am using local extenders within a module script that are not to be exposed outside the module.   Thanks for the info; it's very useful.   

[edit]
Tried your second example and got the following error ... I'll just use fdifferent names.
Quote
Modoc.asc(241): Error (line 241): extender functions cannot be part of a struct
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Thu 26/11/2009 05:13:25
I tried the second example and it worked fine. The only condition in which you would get that error would be something like:

struct MyStruct {
 import function Extender(this String*); // wait, what? it's in the MyStruct type but it's a String extender???
};


Extender methods obviously can't be within a struct coz they don't make any sense there. And that is exactly what the error message says.

Edit: (eatingmywordssomewhat) Or if you're using the normal namespace resolution and defining it as an extender at the same time:

String String::Token(this String*) {
}


See my next post after this. :P
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: RickJ on Thu 26/11/2009 06:16:38
No! it's not in a struct.  The error ocured with the declaration

String String::Token(..)

If it's working for you then and not for me then I must have mistyped something somewhere or had gotten something out of order?
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Thu 26/11/2009 15:16:26
You didn't per chance put:

String String::Token(this String*)

Did you? Coz you're already resolving that it's a String function with the String namespace and it doesn't need to be defined as an extender.

I have this exact code snippet in game and it works fine:

import String Token(this String*);

String Token; // local variable

String String::Token() { // again, using normal namespace resolution
}

function some_func() {
  String s = "";
  s = s.Token();
}


Trying to put the "this String*" part inside the function definition gave the same error though. :P So yeah, that's what you did.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Fri 27/11/2009 14:49:05
I have this question: when I create a new room for 320x200 or 640x400 resolution game, default black background matches the resolution. However, if resolution is set to 320x240 or 640x480, default background does not match the correct height, it is either 200 or 400. Why is it so?
(One may need black rooms for displayng credits for example, or some other purposes, and with this behavior user must create a black image to manually set it as a background)
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Sat 28/11/2009 21:02:14
I just found that it is possible to assign dynamic array of invalid type to a pointer, without getting any compiler error or warning, causing problems in future usage (as well as hard time debugging). For example:


int MyArray[];


function MyFunc()
{
  MyArray = new short[100];
}


Well, I know that plain C/C++ does not treat this as something incorrect, but since AGS scripting language is considered to be memory safe, I thought that something should be done here like warning user.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Sat 28/11/2009 23:52:11
Quote from: Crimson Wizard on Sat 28/11/2009 21:02:14I just found that it is possible to assign dynamic array of invalid type to a pointer, without getting any compiler error or warning, causing problems in future usage (as well as hard time debugging).

I believe this is due to the fact that this is one of the instances where AGS has an implicit type conversion defined. For example:

short s = 10;
int i = s + 2;


Works without any problem (as you would logically expect). From a logical standpoint however I'm not sure what type the array would actually use so it is confusing (i.e., what would be the size limits of each member of the resulting array; based on int as declared or short as defined?).

You can't however perform an implicit conversion doing this that AGS wouldn't normally allow with regular variables. For example:

int arr[] = new GUI[5];

Fails in error.

The current behaviour wouldn't bother me at all so long as I knew definitively which type the array was acutally using.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Sun 29/11/2009 02:10:25
Anyway, here's another bug.

I have a custom struct, and another one, extended from that first. For simplicity, they are T1 and T2.

T2 extends T1

I have extender functions made as "members" of T1 and those that are "members" of T2, like

function T1Func(this T1*, ...);
function T2Func(this T2*, ...);

So, problem is that if I have an object of type T2, let's say

T2 ObjectT2;

when I type "ObjectT2." and a list of members appear for quick selection, there are no functions that were declared for type T1. There are only variables of that type.
These T1 type extender functions work, however, as expected (i.e. I can type ObjectT2.T1Func(...)), they just are not listed in this hint box (or whatever this is called), and also if I click "Go to definition of T1Func" it does nothing.

Not a big deal, perhaps, but can be confusing.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Sun 29/11/2009 04:35:11
I pointed this one out before. (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=38627.0) ;)

As I said in that thread the only way I've found of getting these inherited extenders to autocomplete is actually defining an explicit overload for the child class(es). I also found that the overloaded version is being called, that is, AGS supports polymorphism! := Chris, if you fix the autocomplete issue, please don't fix the polymorphism. I like it. :D

It does work though, as you said, so it's possible to just use the functions without the autocomplete.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Divon on Tue 01/12/2009 14:47:20
a couple weeks ago I saw a post from CJ saying he wanted make this release official soon.

I'm curious of the ETA on the official release, anyone have any insight?  Obviously it won't be released till its 'ready', I'm just trying to get a rough idea  :P
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Tue 01/12/2009 14:51:58
Hi Divon,

I definitely understand your anticipation about this upcoming version of AGS. As for a "rough idea" I would say probably sometime in the next 7-8 years we can probably expect to see a new version of AGS released (or if CJ is really ambitious, maybe even MOAR!).

CJ said in a recent interview that he's been busy with his real life and real job as of late and hasn't had much time to devote to working on AGS. It happens. And at the sake of not being slapped silly with a moistened trout we all accept this and wait patiently. Otherwise we just do silly things to try and break the thing so we can tell CJ about it and seem cool for discovering a "huge" flaw. :=


-monkey
inb4slap
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Matti on Tue 01/12/2009 14:54:15
Quote from: manual
If you ask when the next version is coming out, you will be slapped silly with a moist trout.

Quote from: CJ-interview
At the moment for example, I'm very busy with my real life and haven't had a chance to do any work on AGS for a few weeks now. So bugs get reported and start stacking up but I don't have time to fix them. And then of course the list of things to fix is quite daunting when I finally do have some spare time!

Edit: Damn you, monkey.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Divon on Tue 01/12/2009 15:04:07
yeah, I figure its probably a pretty impossible question to answer.  I wouldnt have even asked, but I'm 95% certain I wasnt imagining seeing a post from him talking about how he wanted to release it soon. 

Theres always the possibility that I wanted this to come out so badly that I just made it up completely in my head and convinced myself that it was true.  Then theres the possibility that I could just do a forum search for the post...but then if I did find it, I could no longer live in a state of confusion as to whether or not I am going insane or not...which coincidentally leads to better game development (insanity breeds new ideas, and such...)

I hope no one actually read that last paragraph.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Wed 02/12/2009 20:20:29
QuoteNot sure if it's a bug, but I guess it may cause some irritation.
It is about using ALT-drag selection in script editor. Apparently, selection box is being limited by the shortest string in the selected lines range.

I didn't even know the script editor had an ALT-drag feature! I think that is by design though, it's how the feature is supposed to work.

QuoteIn room_load, do the following:

SaveGameSlot(1, "QuickSave");
aSomeMusic.Play();

Try to load that game and BAM 

I tried that but it worked fine. What type of music are you using? (MP3/OGG/?)
Does it happen for you every time? If so could you upload a game that demonstrates the problem?

QuoteI have this question: when I create a new room for 320x200 or 640x400 resolution game, default black background matches the resolution. However, if resolution is set to 320x240 or 640x480, default background does not match the correct height, it is either 200 or 400. Why is it so?

When you create a new room, it is created from a template room (which is a 320x200 room). You can fix this by making your own black room at the correct resolution, then creating a room template from that which you use in future when making new rooms.

QuoteI just found that it is possible to assign dynamic array of invalid type to a pointer, without getting any compiler error or warning, causing problems in future usage (as well as hard time debugging).

Well spotted thanks, yes that could cause a buffer overrun if you did that. I'll look into it.

Quoteproblem is that if I have an object of type T2, let's say

T2 ObjectT2;

when I type "ObjectT2." and a list of members appear for quick selection, there are no functions that were declared for type T1. There are only variables of that type.

Thanks; as monkey says, this is something that has already been reported and I will look into it.

Quoteyeah, I figure its probably a pretty impossible question to answer.  I wouldnt have even asked, but I'm 95% certain I wasnt imagining seeing a post from him talking about how he wanted to release it soon. 

I do want to release it soon. That means I won't be adding any more new features to 3.2 and the only thing I'll be doing now is bug fixes. It also depends on when I have an opportunity to do those fixes and how many other issues get reported.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: abstauber on Wed 02/12/2009 20:45:10
Quote from: Pumaman on Wed 02/12/2009 20:20:29

I tried that but it worked fine. What type of music are you using? (MP3/OGG/?)
Does it happen for you every time? If so could you upload a game that demonstrates the problem?

Yep, the save file is guaranteed to make the engine crash.
Uploaded and PM sent :)
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Wed 02/12/2009 20:55:55
Thanks for uploading, it seems to happen if you save while the music is crossfading. I'll get it fixed.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: abstauber on Wed 02/12/2009 21:03:43
Wow, that's what I call fast :D Thanks!
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: frogking on Fri 04/12/2009 10:57:09
I just had a quick look at RC 2, in particular to check out widescreen and audio.

1. The widescreen mode seemed to work fine in the sense that it still works on my 1024x600 netbook even if the option is activated (I was worried it would interfere with properly set up systems which do not squish 4:3 resolutions anyway).

2. Audio files with names instead of numbers both in file names and script: great!

3. Earlier in this thread it was mentioned that the audio files in the cache are automatically updated on compiling. I'm not sure I like this idea. Adding data to a game should have a consistent feel: If I import a sprite, it's data is added to the game, but not automatically updated when the source changes ... hmm, at least I thought so ... actually I didn't try if that happened later during compilation (in fact, I recently suggested to have an explicit reimport sprite(s) command, and an explicit reimport audio file(s) would also be nice). For historical reasons, the behavior could also be such that source files which reside under Sound and Music (or any?) subfolders within the game folder are updated automatically (after all, copying them there already had the semantics of "adding" them to the game). But it would feel strange for sounds which I added from an arbitrary location. Also, the property SourceFileName should be SourceFile to be consistent with the corresponding sprite property.

4. Others have commented on the inconsistency of having only one tab for audio. I think the strangeness comes from having each individual data item as a member in the tree. If it were more like the sprite editor you would just select audio in the tree and have a listing of all audio data in the tab, maybe with convenient play button next to each and the possibility to select multiple items, e.g. for deletion - or reimport ;) But such a GUI can always be added at a later date, in addition to having items in the tree. Even sprites could someday be listed in the tree, then.

5. Not related to anything new in 3.2 but noticed while playing around with tree and audio: Currently, opening an item as a "document" (tab) is on the same level with making its properties available in the property window (need to double-click on item). It would feel more natural if the properties were already displayed when selecting the item in the tree. So you could, e.g., quickly change the volume of a sound without needing to open the tab at all.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Thu 10/12/2009 01:50:02
Attention please!

3.1.2 -> 3.2 RC2 update bug.

Music files are named using capital letters, like: MUSIC1.
When project is updated, audio entries are named properly, in capital letters, like: aMUSIC1.
However, in script commands for music played on room load they are written incorrently with small letters, like: aMusic1.Play();

This causes errors during compilation.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Mon 14/12/2009 23:04:21
Thanks for your feedback.

Quote3. Earlier in this thread it was mentioned that the audio files in the cache are automatically updated on compiling. I'm not sure I like this idea.

It is an interesting point, that this is inconsistent behaviour with the rest of the editor. The sheer number of sprites in a game makes automatically checking all the source files for updates unfeasible, whereas with sound files it is possible. However, perhaps a Preferences option should control this.

Quote4. Others have commented on the inconsistency of having only one tab for audio.

Yes, with hindsight it probably wasn't the best way to implement it. But yes, the GUI can always be updated in a future version to improve this.

Quote5. Not related to anything new in 3.2 but noticed while playing around with tree and audio: Currently, opening an item as a "document" (tab) is on the same level with making its properties available in the property window (need to double-click on item). It would feel more natural if the properties were already displayed when selecting the item in the tree. So you could, e.g., quickly change the volume of a sound without needing to open the tab at all.

Yeah, and that would be more consistent with things like Visual Studio. At the moment the editor doesn't have the concept of the Project Tree having focus rather than a Tab Window, which it would need to do to make this work.

QuoteMusic files are named using capital letters, like: MUSIC1.
When project is updated, audio entries are named properly, in capital letters, like: aMUSIC1.
However, in script commands for music played on room load they are written incorrently with small letters, like: aMusic1.Play();

Well spotted, thanks ... I'll look into it.


Sorry I still haven't managed to get RC3 out, I'm in the middle of moving house amongst other things and I'm just not getting any time to get it done; it's frustrating because it shouldn't actually take that long to fix the outstanding issues. Hopefully I'll be able to get something released before Christmas...
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Tue 22/12/2009 23:02:13
I found another strange situation rlated to moving from 3.1.2 to 3.2 RC.
I had a room with very thin walkable area (couple of pixels in height) and some object, that stood right "on top" of that area, it's Y coordinate equal to Y of highest walkable line of pixels. There were characters, that had same Y coordinate.
Object's basline was NOT overriden.

So, in 3.1.2 these characters were drawn over the object.
In 3.2 RC2 object is drawn over them.

looks like now baseline is 1 pixel lower. :-\ Was it a bug in 3.1.2 that is now fixed or new bug in 3.2?
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Sadistyk on Thu 24/12/2009 17:42:43
Hi. I've found something strange. I have a room script with these lines among others:

function room_AfterFadeIn()
{
  ...
  PlaySound(6);
  while (IsSoundPlaying()) Wait(1);
  ...
}

The thing is that if I disable the music and the sounds from the game setup, the game hungs up. It just stays there, animating things in the background.

Using AGS 3.2 RC 2
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: GarageGothic on Thu 24/12/2009 21:05:53
Have you tried using the new IsAudioPlaying() function instead?

Edit: Actually, the IsSoundPlaying function returns an int, not a bool, as far as I remember, so try:

while (IsSoundPlaying() != 0) Wait(1);

and see if that works better. If sound/music is disabled it should always return 0.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Ryan Timothy B on Thu 24/12/2009 21:43:44
One could say this is a stupid question, isn't False considered 0 and True is 1?  Cause I could have sworn I was using true/false boolean expressions whenever an int was required, and had no issues... I think.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Thu 24/12/2009 22:00:54
Quote from: Ryan Timothy on Thu 24/12/2009 21:43:44
One could say this is a stupid question, isn't False considered 0 and True is 1? 
But of course.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: GarageGothic on Thu 24/12/2009 23:09:17
What, not even on Christmas Eve one can escape people pointing out one's mistakes? You're making Baby Jesus cry, Ryan.

(actually what I had originally written before the edit was much more stupid, glad nobody caught that)
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: monkey0506 on Thu 24/12/2009 23:13:45
For boolean expressions AGS evaluates 0 as false and non-zero as true. So actually even negative values would evaluate as true.

So if IsSoundPlaying returns zero for false then "if (IsSoundPlaying())" should be considered safe as far as evaluations go. To clarify though, even with sounds disabled via setup the function is definitely still returning true (non-zero)? Maybe just to verify that could you try putting a Display statement along with the wait to make sure?
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Sadistyk on Fri 25/12/2009 04:00:26
I tried the Display function thing, and yes, it loops there.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Sat 26/12/2009 01:10:06
I noticed, there's is a mistake in code tips that show function prototype. When return value is of managed type, it shows no pointer sign (*), like


Character Character.GetAtScreenXY(int x, int y)


I guess this may confuse "newbie" users.
Also I actually made a mistake in code because of that when first used Game.GetViewFrame function. It showed ViewFrame return value, instead of ViewFrame*.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: JD on Tue 29/12/2009 16:30:02
Helloes!

I'm experiencing some StartCutscene/EndCutscene problems. I have a small script with a door opening, a character walking in, two characters having a conversation, and the door closing again. At the start I've put a StartCutscene(eSkipESCOnly); and at the end there's an EndCutscene(); And it works fine. The only problem is that when I skip the cutscene it skips to the end but it plays all the sound effects I've used in the cutscene (someone knocking on a door, the door opening, and the door closing) at the same time. It skips all the conversation etc. but it still plays the sound effects. I only have this problem in the 3.2 RC2 edition. I quickly recreated a similar scene in 3.1.2 SP1 and it works fine. So perhaps it's something with the new audio system?
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Electroshokker on Thu 31/12/2009 10:16:28
Hmm... finally decided to give this one a go. (Finally got some time :=)

I'm experiencing the following: when playing a sound clip through the editor, and then whilest playing double-clicking on another sound clip 'hangs' the editor.

I had to kill the process and restart. This doesn't occur every time though.

-----------

As a sidenote, I mostly like the new audio system, except... why only have a master volume setting?

I would like the player to be able to change the volume of ALL music, or sound clips, or speech (the last thankfully still being possible) separately.

What if the player doesn't hear the voice over the music playing in the background so he/she only wants to tune down the music but wants to hear the special sound effects crystal sharp?

Just one of the possible examples, but my point is:

I would like a System.MusicVolume, System.SoundVolume and a System.AmbientSound setting, in addition to the general System.Volume

I don't want to deprive any player (hard-hearing or not, full-sound spectrum hearing or not) of the possibility to tweak these to his/her liking.

Considering you can set the default volume of a clip, I would be happier if I would at least be able to change this default volume in code, as I could then build a workaround for not having the multiple system volume settings

----

Just my 2 cents.

----

EDIT:

PlayAmbientSound, PlayMusic, PlaySound are not marked as old style.

I set the general setting to 'Enforce new-style audio scripting' and those commands were still considered valid. (Even though the help says they're obsolete)
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Shane 'ProgZmax' Stevens on Fri 01/01/2010 07:21:37
I can partially confirm Def's problem.  It seems the latest ags plays a single sound from each cutscene when skipped.  I tested this with having only one sound in the entire cutscene which plays once every time I skip it and a scene full of sounds and it played the second to last sound when skipped.  Again, I want to add that it does not play all of the sounds for me but it does play one from each cutscene.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Tue 05/01/2010 22:48:45
QuoteI had a room with very thin walkable area (couple of pixels in height) and some object, that stood right "on top" of that area, it's Y coordinate equal to Y of highest walkable line of pixels. There were characters, that had same Y coordinate.
Object's basline was NOT overriden.

Do any of the objects/characters have the Ignore Walkbehinds property set? Does the problem happen with both DX5 and D3D drivers?

Quotewhile (IsSoundPlaying()) Wait(1);

The thing is that if I disable the music and the sounds from the game setup, the game hungs up. It just stays there, animating things in the background.

Interesting thanks, I'll look into it.

QuoteI noticed, there's is a mistake in code tips that show function prototype. When return value is of managed type, it shows no pointer sign (*), like

Ok thanks, I'll bear this in mind. I don't think I've got time to change this for 3.2 though.

QuoteI'm experiencing some StartCutscene/EndCutscene problems. I have a small script with a door opening, a character walking in, two characters having a conversation, and the door closing again. At the start I've put a StartCutscene(eSkipESCOnly); and at the end there's an EndCutscene(); And it works fine. The only problem is that when I skip the cutscene it skips to the end but it plays all the sound effects I've used in the cutscene (someone knocking on a door, the door opening, and the door closing) at the same time. It skips all the conversation etc. but it still plays the sound effects. I only have this problem in the 3.2 RC2 edition. I quickly recreated a similar scene in 3.1.2 SP1 and it works fine. So perhaps it's something with the new audio system?

Thanks, I'll look into it.

QuoteI would like a System.MusicVolume, System.SoundVolume and a System.AmbientSound setting, in addition to the general System.Volume

AGS no longer has a concept of "sound", "music" or "ambient sounds" -- these are just some default Audio Types but you don't have to keep them.

However, I do plan to address this volume issue by adding a SetAudioTypeVolume command that will allow you to adjust the volume of all audio clips of a particular type. This has already been requested and I would say it is essential to be added before 3.2 can be released.

QuotePlayAmbientSound, PlayMusic, PlaySound are not marked as old style.

I set the general setting to 'Enforce new-style audio scripting' and those commands were still considered valid. (Even though the help says they're obsolete)

Thanks, I'll check this.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Sat 09/01/2010 17:28:01
Quote from: Pumaman on Tue 05/01/2010 22:48:45
QuoteI had a room with very thin walkable area (couple of pixels in height) and some object, that stood right "on top" of that area, it's Y coordinate equal to Y of highest walkable line of pixels. There were characters, that had same Y coordinate.
Object's basline was NOT overriden.

Do any of the objects/characters have the Ignore Walkbehinds property set? Does the problem happen with both DX5 and D3D drivers?

1. No
2. It happens only when using DX5.
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Pumaman on Sat 09/01/2010 17:38:29
Quote from: Crimson Wizard on Sat 09/01/2010 17:28:01
1. No
2. It happens only when using DX5.

If you have multiple characters/objects with the same Y co-ordinate, AGS does not make any promises about which one is drawn in front. If you are relying on one being in front of the other, can you not change its Y co-ordinate?
Title: Re: AGS 3.2 RC 2 - Guy Fawkes Edition
Post by: Crimson Wizard on Sat 09/01/2010 17:44:53
Quote from: Pumaman on Sat 09/01/2010 17:38:29
Quote from: Crimson Wizard on Sat 09/01/2010 17:28:01
1. No
2. It happens only when using DX5.

If you have multiple characters/objects with the same Y co-ordinate, AGS does not make any promises about which one is drawn in front. If you are relying on one being in front of the other, can you not change its Y co-ordinate?

Well, there's some sly scene where characters are shown at a large distance in pefect side-view, and they should go before the large car; so character's Y and car's Y should actually match.
(And the car has to be an object, not background, well, that's long story)

Anyway, I solved the problem by overriding baseline for the object. It isn't a big trouble for me at all, I was just wondering if it is some kind of bug or not.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Pumaman on Sun 10/01/2010 21:14:39
Quote from: Electroshokker on Thu 31/12/2009 10:16:28
PlayAmbientSound, PlayMusic, PlaySound are not marked as old style.

I set the general setting to 'Enforce new-style audio scripting' and those commands were still considered valid. (Even though the help says they're obsolete)

Are you sure about this? I just tried it and PlaySound/PlayMusic didn't work when New Stlye Audio Scripting was turned on.

QuoteAnyway, I solved the problem by overriding baseline for the object. It isn't a big trouble for me at all, I was just wondering if it is some kind of bug or not.

I don't think it's really a bug, since AGS doesn't claim to sort things in any particular order if they have the same baseline. Glad you sorted it out.


Anyway, RC 3 is finally up! This fixes various reported issues. Please try it out and let me know of any issues.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: on Mon 11/01/2010 02:01:40
I don't know if this is a thing that can be asked for during RCs, but I'd like to have the 'exact colour import' option when importing a background back.

It seems crucial for 8-bit palette effects, otherwise they screw up. More info on this post (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=39825.msg524306#msg524306).
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Pumaman on Mon 11/01/2010 22:31:21
Quote from: bicilotti on Mon 11/01/2010 02:01:40
I don't know if this is a thing that can be asked for during RCs, but I'd like to have the 'exact colour import' option when importing a background back.

This option is already present, in the Preferences screen (not an ideal place for it, but 8-bit games are so rare now that it was just the easiest place to put the option).
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: on Tue 12/01/2010 04:49:24
Quote from: Pumaman on Mon 11/01/2010 22:31:21
Quote from: bicilotti on Mon 11/01/2010 02:01:40
I don't know if this is a thing that can be asked for during RCs, but I'd like to have the 'exact colour import' option when importing a background back.

This option is already present, in the Preferences screen (not an ideal place for it, but 8-bit games are so rare now that it was just the easiest place to put the option).


Silly me, thanks.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Shane 'ProgZmax' Stevens on Wed 13/01/2010 12:38:27
Rooms create at the resolution of whatever the default setting was, which I consider a bug.  I have the settings at 320x240 and it is consistently creating 320x200 rooms which I must then load a background into to adjust to the proper resolution.  Normally I wouldn't have noticed but I was testing a gui in the empty room and since 40 pixels were missing I couldn't see it and spent 20 minutes wondering why. ;D

I'm not sure if I'm right or not but gui's seem to be ignoring transparency adjustments of 1 entirely.  I have a function that fades in a gui and when I set it to decrement the transparency by 1 nothing happens; when I up it to 2 it suddenly works.  Again, there could be some kind of flaw somewhere in my function but I haven't found anything that is incrementing it by 1 or in someway obstructing it.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Gilbert on Wed 13/01/2010 13:00:18
Quote from: ProgZmax on Wed 13/01/2010 12:38:27
Rooms create at the resolution of whatever the default setting was, which I consider a bug.
I think you can change that just by replacing the default room file with whatever you want. I forget the name of the actual file and I'm too lazy to check it ATM.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: monkey0506 on Wed 13/01/2010 14:07:15
Prog, are you directly modifying the GUI.Transparency variable? Coz, per the manual:

Quote from: The Manual > Scripting > GUI functions and properties > GUI.TransparencySome rounding is done internally when the transparency is stored -- therefore, if you get the transparency after setting it, the value you get back might be one out. Therefore, using a loop with gInventory.Transparency++; is not recommended as it will probably end too quickly.

If you're not already, see if doing this:

int trans = gThegui.Transparency + 1;
gThegui.Transparency = trans;


...makes a difference. Obviously it might not (for a change by 1 since it's doing the same thing), but that's the recommended route for modifying the transparency.

The default room file is called _blank.crm. If your game has one of those it will use that as a template when creating a new room. Try deleting/replacing it and see if that helps. ;)
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Shane 'ProgZmax' Stevens on Wed 13/01/2010 21:09:54
Hmm, could've sworn I never had the rounding thing come up before.  I guess I didn't pay much attention because I wasn't as concerned about the speed of the transition.  Thanks guys, though I think that deleting the default room shouldn't be necessary!

Edit: Also, deletion didn't fix it ;(.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: monkey0506 on Wed 13/01/2010 23:10:43
I think it might have the same template built-in. Have you tried replacing it?
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Pumaman on Sun 24/01/2010 18:58:15
Quote from: ProgZmax on Wed 13/01/2010 12:38:27
Rooms create at the resolution of whatever the default setting was, which I consider a bug.  I have the settings at 320x240 and it is consistently creating 320x200 rooms which I must then load a background into to adjust to the proper resolution.  Normally I wouldn't have noticed but I was testing a gui in the empty room and since 40 pixels were missing I couldn't see it and spent 20 minutes wondering why. ;D

This is because the default room template is a 320x200 room. You're right that it's counter-intuitive but you can easily fix it by creating your own New Room Template at the right resolution, and then using that for your new rooms. I need to consider how to improve this.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Shane 'ProgZmax' Stevens on Sun 24/01/2010 22:57:46
This build seems to have the potential for breaking as far as room creation and transitions go.

I've sent you a build that illustrates the issue with switching rooms and having completely new rooms remain entirely black in spite of having backgrounds.  I tried deleting and re-creating every room but aside from objects the rooms stay completely black.  Some kind of bug got triggered somewhere because the problem carries on to every room beyond the first.  

In the meantime I've gone back to 3.1, converted everything I had over to it and am having none of these problems.

Edit:  I may have fixed this by making a new room and saving it as a template.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Crimson Wizard on Mon 25/01/2010 18:57:47
I noticed this bug occasionally.

On the AGS Preferences window there's a New Game Directory option. When typing in custom folder, I found it only allows to manually type in 5 characters...

Same with "Import directory".
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Pumaman on Sun 31/01/2010 16:28:04
Quote from: ProgZmax on Sun 24/01/2010 22:57:46
This build seems to have the potential for breaking as far as room creation and transitions go.

I've sent you a build that illustrates the issue with switching rooms and having completely new rooms remain entirely black in spite of having backgrounds.  I tried deleting and re-creating every room but aside from objects the rooms stay completely black.  Some kind of bug got triggered somewhere because the problem carries on to every room beyond the first. 

I tried out the game you sent, the problem seems to be caused in your Rain.asc module, it's probably something to do with the DrawingSurface routines in there. If I remove the Rain module, room 2 fades in fine.

QuoteOn the AGS Preferences window there's a New Game Directory option. When typing in custom folder, I found it only allows to manually type in 5 characters...

Same with "Import directory".

Well spotted thanks, I'll fix this.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Shane 'ProgZmax' Stevens on Sun 31/01/2010 21:48:45
The rain module worked in 3.1 without any modifications so I'm not sure why it displays a large black area like that since it's just drawing lines onto the background, but yeah, removing it (and fixing some of the wonky rooms I was importing) took care of the black screen problem!
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Kweepa on Tue 02/02/2010 03:08:13
I'm not sure when this changed but in the current version, if you set the Room.BackgroundAnimationDelay to 0 it's equivalent to setting it to 1. Previously setting it to 0 would halt the animation. Some versions of my modules rely on the old behaviour.

(And setting it to -1 appears to be the same as setting to a large number - the background flips after about 10 seconds. Also, I don't see any way of setting the current background frame.)
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: GarageGothic on Tue 02/02/2010 06:34:59
Quote from: SteveMcCrea on Tue 02/02/2010 03:08:13Also, I don't see any way of setting the current background frame.

SetBackgroundFrame(int frame)?
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Gilbert on Tue 02/02/2010 06:57:01
In fact, I've never heard of Room.BackgroundAnimationDelay until now, and it's not mentioned in the manual either (except the room's own option that you set in the editor). Is this really accessible in-game for reading or writing?
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Kweepa on Thu 04/02/2010 02:30:15
Quote from: Gilbet V7000a on Tue 02/02/2010 06:57:01
In fact, I've never heard of Room.BackgroundAnimationDelay until now, and it's not mentioned in the manual either (except the room's own option that you set in the editor). Is this really accessible in-game for reading or writing?

No, I was referring to the setting in the editor.

GG, oh. For some reason I was looking for a Room. function :)
That would probably fix it, if it resets the background animation countdown.

Cheers!
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Crimson Wizard on Thu 04/02/2010 17:38:55
I am studying 9-verbs template and noticed some of the properties description in the properties schema are written in German. With all due respect to Deutch language, I guess it will be more convenient for international users to have them in English  ;)
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: NsMn on Thu 04/02/2010 17:41:54
Maybe it was just a German module, template or just the word "null"?
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: abstauber on Thu 04/02/2010 17:58:30
Quote from: Crimson Wizard on Thu 04/02/2010 17:38:55
I am studying 9-verbs template and noticed some of the properties description in the properties schema are written in German. With all due respect to Deutch language, I guess it will be more convenient for international users to have them in English  ;)

Really... well, then I'd better work those parts over ;D
Btw. the international crowd might also appreciate a proof read manual...  ::)


----edit:
Alright, found it. Well, all those custom properties are not in use - it's save to delete them.
Thanks for the heads up!

For more template discussion, please have a look here ;)
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=38874.0
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Crimson Wizard on Sat 06/02/2010 23:43:06
Well, I just hope there will be updated version of this template in final AGS 3.2 release.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Pumaman on Sun 21/02/2010 17:28:11
Quote from: SteveMcCrea on Tue 02/02/2010 03:08:13
I'm not sure when this changed but in the current version, if you set the Room.BackgroundAnimationDelay to 0 it's equivalent to setting it to 1. Previously setting it to 0 would halt the animation. Some versions of my modules rely on the old behaviour.

I don't think this behaviour has changed, but yes there should be an option in the editor to disable the background animating.

QuoteWell, I just hope there will be updated version of this template in final AGS 3.2 release.

Thanks for the reminder, I'll make sure to include the latest version of the template in the 3.2 final.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Crimson Wizard on Thu 25/02/2010 02:20:58
Bug:

When renaming Global Variable, list is not automatically sorted.

to reproduce:

1. Create couple of GVs; notice they are sorted in alphabetical order.
2. Create a new GV with name alphabetically preceding existing variables.
3. Double-click on last variable and change its name to something alphabetically posterior. Click OK. Notice that list is not sorted.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Yeppoh on Mon 01/03/2010 15:44:09
I have quite an issue with the Tint() function in this version of the engine.

Until now I scripted my game on the 3.1.2 SP1 release - using DirectX 9 - and there's a critical gameplay element involving colors. A set of characters whose colors change depending of a binary word value. There can be 4bit colors, 5bit, 8bit, 16bit or 24bit as examples from all the ones.
How the Tint() function worked in 3.1.2 was intuitive and fine tuned for this kind of work, since I only had to convert a byte word into simple RGB channels. And after some work the result turned out fine as showed for this character - who uses only one 8bit channel in this case:

(http://yeppoh.stage-select.com/www/misc/Color312_DX9.jpg)

But upon switching to 3.2, it doesn't work anymore :

(http://yeppoh.stage-select.com/www/misc/Color320_DX9DD5.jpg)

I noticed that the Luminance value seemed to have a different behavior than previously, so I set it to 100, but didn't give the same result either :

(http://yeppoh.stage-select.com/www/misc/Color320_DX9DD5100.jpg)

After many testing I've also discovered that my trick doesn't work in DirectDraw mode - neither in 3.2 nor in 3.1.2. Giving the same results as the last two above.

I don't know how I could go around that while being sure that the result will be as correct as in the previous release of the AGS engine, since I don't know how the Tint() system has changed or if it's a bug.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Pumaman on Mon 01/03/2010 23:16:42
Quote from: Crimson Wizard on Thu 25/02/2010 02:20:58
When renaming Global Variable, list is not automatically sorted.

Thanks for the report, I'll look into it.

QuoteI have quite an issue with the Tint() function in this version of the engine.

This is because the Tint function in 3.2 has been fixed to be the same in Direct3D as it always has been in DirectDraw. AGS 3.1.x had a bug where Direct3D tinting gave a different result (as you've discovered).

However, some people preferred the "buggy" D3D method of tinting, so for a future version I'm planning to add an option to select between the two, if I can get DirectDraw to correctly mimic this type of D3D tint.
Title: Re: AGS 3.2 RC 3 - New Decade Edition
Post by: Yeppoh on Tue 02/03/2010 09:40:08
OK thanks for clearing that out.

Meanwhile, after I ran some tests to understand the difference with the actual Tint(), I can use a RGB to HSV conversion using the "hexcone" model. The color values won't be exactly the same since I have to sample a 255 scale down to a 100 one for the luminance, but it'll be visually close enough to do the trick if nobody is so obsessive to check if the pixels match the shown numbers.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Pumaman on Mon 22/03/2010 23:35:53
Ok, well I was hoping to get more fixes into the Final release, but I've had so little time to work on it that I thought it was better to just get something released; I don't think there are any bugs now that are regressions from 3.1.2 so it should be safe to go ahead with this release.

So, please download the Final and try it out. Assuming no big problems are found, I'll make it the Official release on the website in a week or so.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Dualnames on Tue 23/03/2010 00:12:23
Great, backing up and testing!
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: subspark on Tue 23/03/2010 03:59:18
Thanks CJ. Even if the alpha fix didnt make this revision.
Tops!  :D

Sparky.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: GarageGothic on Tue 23/03/2010 04:48:08
Quote from: Pumaman on Sun 03/05/2009 15:34:47* "Export all sprites in folder" command now exports 32-bit sprites as PNGs to prevent losing alpha channel

Brilliant, this should be very useful! Any chance for PNG support for DynamicSprite.CreateFromFile and DynamicSprite.SaveToFile (the latter I guess is not that important until DrawingSurface fully supports functions can create a new alpha channel or merge two or more existing alpha channels)?

Looking forward to try the new build. Thanks CJ!
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: monkey0506 on Tue 23/03/2010 11:55:33
Quote from: GarageGothic on Tue 23/03/2010 04:48:08(the latter I guess is not that important until DrawingSurface fully supports alpha channels)

Urk.. :-\

If I've said it once, I've said it a thousand times. DynamicSprites and DrawingSurfaces do support alpha channels in every single sense that AGS supports alpha channels. The only thing you can't do is use the DrawingSurface functions to merge two or more alpha channels together or create a new alpha channel. The most you can preserve when using the DrawingSurface functions is a single pre-existing alpha channel.

..just saying.

Glad to see this is nearly ready to be unleashed upon the public. :)
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: GarageGothic on Tue 23/03/2010 12:14:38
Ah, monkey, I knew you would drop by to point this out which was exactly why I put the modifier "fully" in the sentence. Can we please agree that "the only thing you can't do" is also a frequently requested feature?

No need to point out every bloody time that you know better, I think it's an established fact that you do ;)
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Ryan Timothy B on Tue 23/03/2010 16:12:04
I must agree, 'complete' alpha channel support on everything from dynamicsprites to GUI's, and I'd have really no other greater request.
I would feel complete.  :D
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Calin Leafshade on Tue 23/03/2010 16:18:09
Quote from: Ryan Timothy on Tue 23/03/2010 16:12:04
I would feel complete.  :D

When that addition arrives CJ can call it the Nirvana Edition  ;D
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Matti on Tue 23/03/2010 19:46:11
I just tested the new version but the sideborders for widescreen monitors don't appear for me. The game is 800x600 and my laptop's resolution is 1280x800.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: monkey0506 on Wed 24/03/2010 00:28:34
Quote from: GarageGothic on Tue 23/03/2010 12:14:38
Ah, monkey, I knew you would drop by to point this out which was exactly why I put the modifier "fully" in the sentence. Can we please agree that "the only thing you can't do" is also a frequently requested feature?

No need to point out every bloody time that you know better, I think it's an established fact that you do ;)

I know that as well as you know that I know that you know that I know. But still you insist on wording your suggestion incorrectly which breeds misinformation and confusion. As I said, in every single sense the AGS supports alpha channels, the DrawingSurface functions support them as well. It may not be logical to expect anything other than the DrawingSurface functions to be able to create a new alpha channel or merge two or more existing channels. However, it is a completely new functionality and so I find it important to point this out. The DrawingSurface functions are not any more limited than other parts of AGS in this respect, and do "fully" support alpha channels in as much as every other bit of AGS does.

::)

Besides, if I wasn't around to be analytical about things like this, who would be? :=
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Chrille on Wed 24/03/2010 17:04:51
I have the same problem as Mr.Matti. There are no sideborders showing up for me in fullscreen. I'm on a widescreen laptop at a 1440x900 resolution.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: GarageGothic on Wed 24/03/2010 18:02:32
Quote from: monkey_05_06 on Wed 24/03/2010 00:28:34The DrawingSurface functions are not any more limited than other parts of AGS in this respect, and do "fully" support alpha channels in as much as every other bit of AGS does.

Well, GUIs now DO support additive opacity, but anyhow:

Quote from: GarageGothic on Tue 23/03/2010 04:48:08(the latter I guess is not that important until DrawingSurface fully supports functions can create a new alpha channel or merge two or more existing alpha channels)

Happy?
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: monkey0506 on Thu 25/03/2010 00:06:14
Quote from: GarageGothic on Wed 24/03/2010 18:02:32
Quote from: GarageGothic on Tue 23/03/2010 04:48:08(the latter I guess is not that important until DrawingSurface fully supports functions can create a new alpha channel or merge two or more existing alpha channels)

Happy?

;D
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: abstauber on Thu 25/03/2010 11:25:17
Argh! I'm terribly sorry: there were still some minor bugs (mostly high-res related) in the template you've included.

To be honest I've already fixed them last week, but I haven't expected that the final version is already on its way. Would it be a big issue to update the 9-verb template once more?


On the other hand: wohoo for the finishing line in sight :D
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Pumaman on Thu 25/03/2010 21:39:09
QuoteI just tested the new version but the sideborders for widescreen monitors don't appear for me. The game is 800x600 and my laptop's resolution is 1280x800.
QuoteI have the same problem as Mr.Matti. There are no sideborders showing up for me in fullscreen. I'm on a widescreen laptop at a 1440x900 resolution.

Is this the first time you guys have tried 3.2, or were the borders working for you in previous beta releases?

If you're not getting the borders, could you download DebugView from here:
http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx
run the DbgView.exe from that download, and then run your AGS game. When the game has loaded, just quit again.

Then, have a look in DebugView and you should see a log of the game loading, which should explain why the borders are not there -- could you post the relevant bit of the log here?

QuoteArgh! I'm terribly sorry: there were still some minor bugs (mostly high-res related) in the template you've included.
To be honest I've already fixed them last week, but I haven't expected that the final version is already on its way. Would it be a big issue to update the 9-verb template once more?

Yeah, it's been spotted that the splash screen says "beta release" on it so I'll probably have to do another release anyway. Let me know when the fixed version of the template is available.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Kweepa on Fri 26/03/2010 00:17:08
I've been having problems with widescreen borders.
DebugView shows this:

00000032   46.08158112   [5684] AGS: Widescreen side borders: disabled
 (not necessary, game 320 x 200 and screen 1920 x 1200 aspect ratios match)   
00000033   46.11190414   [5684] AGS: Attempt to switch gfx mode to 320 x 200 (32-bit)   
00000034   46.12469101   [5684] AGS: Attempt to switch gfx mode to 320 x 240 (32-bit)   
00000035   46.12474442   [5684] AGS: Attempt to switch gfx mode to 320 x 200 (24-bit)   
00000036   46.12478638   [5684] AGS: Attempt to switch gfx mode to 320 x 240 (24-bit)   
00000037   46.12492752   [5684] AGS: 320x200 not supported, trying with 2x filter   
00000038   46.12496948   [5684] AGS: Widescreen side borders: disabled
 (not necessary, game 320 x 200 and screen 1920 x 1200 aspect ratios match)   
00000039   46.14693832   [5684] AGS: Attempt to switch gfx mode to 320 x 200 (32-bit)   
00000040   46.18787766   [5684] AGS: Attempt to switch gfx mode to 320 x 240 (32-bit)   
00000041   46.47136688   [5684] AGS: Preparing graphics mode screen   
00000042   46.47145844   [5684] AGS: Screen resolution: 320 x 240; game resolution 320 x 200   

So I get borders all round, and a squashed game.
The solution is obvious :D
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Matti on Fri 26/03/2010 13:32:42
DebugView gave me this:

...
00000027   9.45556450   [2232] AGS: Initializing screen settings   
00000028   9.45561695   [2232] AGS: Init gfx filters   
00000029   9.45567417   [2232] AGS: Init gfx driver   
00000030   9.45571423   [2232] AGS: Switching to graphics mode   
00000031   9.48756790   [2232] AGS: Widescreen side borders: gfx card does not support suitable resolution. will attempt 960 x 600 anyway   
00000032   9.48767948   [2232] AGS: Attempt to switch gfx mode to 960 x 600 (32-bit)   
00000033   9.48789978   [2232] AGS: Attempt to switch gfx mode to 800 x 600 (32-bit)   
00000034   10.03549480   [2232] AGS -- InitializeD3DState()   
00000035   10.03589439   [2232] AGS: Preparing graphics mode screen   
00000036   10.03591347   [2232] AGS: Initializing colour conversion   
00000037   10.03600216   [2232] AGS: Check for preload image   
00000038   10.03614521   [2232] AGS: Initialize sprites   
00000039   10.03656387   [2232] AGS: Set up screen   
...


EDIT: Yes, it was the first time I used 3.2, I didn't test any beta version.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Chrille on Sun 28/03/2010 21:35:44
From DebugView:

Quote[3148] AGS: Initializing screen settings
[3148] AGS: Init gfx filters
[3148] AGS: Init gfx driver
[3148] AGS: Switching to graphics mode
[3148] AGS: Widescreen side borders: gfx card does not support suitable resolution. will attempt 384 x 240 anyway
[3148] AGS: Attempt to switch gfx mode to 384 x 240 (32-bit)
[3148] AGS: Attempt to switch gfx mode to 320 x 240 (32-bit)
[3148] AGS: Attempt to switch gfx mode to 320 x 240 (24-bit)
[3148] AGS: 320x200 not supported, trying with 2x filter
[3148] AGS: Widescreen side borders: gfx card does not support suitable resolution. will attempt 384 x 240 anyway
[3148] AGS: Attempt to switch gfx mode to 384 x 240 (32-bit)
[3148] AGS: Attempt to switch gfx mode to 320 x 240 (32-bit)
[3148] AGS -- InitializeD3DState()
[3148] AGS: Preparing graphics mode screen
[3148] AGS: Screen resolution: 320 x 240; game resolution 320 x 200

I upgraded to 3.2 just before you released the final version, it hasn't worked in either.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Alan v.Drake on Wed 31/03/2010 20:31:48
Just so you know,
some video drivers change the aspect ratio of 320x200 and 640x400 resolutions to 4:3 for legacy purposes,
and not less important, if the game is trying to run at a uncommon/unsupported resolution, you're supposed to add it manually to the video drivers.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Stupot on Thu 01/04/2010 01:41:46
If this is the final release, the badge on the splash screen still says "3.2 Beta Release".
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: Gilbert on Thu 01/04/2010 02:01:49
Well...
Quote from: Pumaman on Thu 25/03/2010 21:39:09
Yeah, it's been spotted that the splash screen says "beta release" on it so I'll probably have to do another release anyway. Let me know when the fixed version of the template is available.
Title: Re: AGS 3.2 Final - Recession-busting edition
Post by: subspark on Fri 02/04/2010 09:08:59
I still hate the fact AGS runs 16:10 aspects fine under Vista/Win7 ONLY if the resolution is set above 640x400.

Im guessing thats exactly what Alan v. Drake was talking about. A minor hindrance but it would be nice not to have to run our game at 4x nearest neighbor every time we want to test it.

Cheers,
Sparky.
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: Pumaman on Sat 03/04/2010 15:20:25
Thanks for getting DebugView and testing it, guys!

QuoteI've been having problems with widescreen borders.
DebugView shows this:
So I get borders all round, and a squashed game.
The solution is obvious

Thanks, that's now fixed.

QuoteDebugView gave me this

In this case, your graphics card doesn't support the 960x600 resolution which would be necessary to run the game with side borders. There's nothing AGS can do about this, though you may be able to somehow enable the resolution in your graphics card control panel.

QuoteI upgraded to 3.2 just before you released the final version, it hasn't worked in either.

This might be fixed by the new version, can you let me know if it works.

QuoteI still hate the fact AGS runs 16:10 aspects fine under Vista/Win7 ONLY if the resolution is set above 640x400.

I'm not really sure what you mean. In what way does it not work? Any problems with 320x200/320x240 games are probably just caused by your graphics card drivers not supporting those resolutions.


Anyway, yes Final 2 is now up. This fixes a few issues, but as there are some relatively important changes, I'd like to treat it more like an RC release and give it more time before declaring it completed.
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: xenogia on Sun 04/04/2010 08:48:20
Anti-aliased true type fonts always :)  I could kiss you :D
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: LimpingFish on Tue 06/04/2010 22:23:43
Anti-aliasing fontage! WHOOOOOOOOoooooo.........ooooooOOOOOOOOO! \o/
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: Chrille on Wed 07/04/2010 15:40:57
Quote from: Pumaman on Sat 03/04/2010 15:20:25
This might be fixed by the new version, can you let me know if it works.

It still doesn't work. Lousy laptop!
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: Pumaman on Tue 20/04/2010 22:54:50
Quote from: Chrille on Wed 07/04/2010 15:40:57
It still doesn't work. Lousy laptop!

Pity ... looks like your laptop doesn't support any suitable resolutions. You could try turning on the 3x filter in Setup and see if that works.
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: GarageGothic on Wed 21/04/2010 02:34:12
CJ, I'm wondering - would it be possible to add a function to the plugin API to override AGS' viewport initialization so that the plugin could take care of all rendering while AGS runs in the background handling the game logic? Seems like that could solve a lot of issues people are having with resolutions and also allow for aspect-ratio independent games.

Also, many thanks for the improved anti-aliased font support!
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: Electroshokker on Sun 25/04/2010 12:15:28
I seem to be having a problem with the Object.Move command in a room_RepExec() function.

Bottom line: it doesn't work. Whenever I perform an action on something in the room, however, the move gets executed.

AGS 3.2 Final 2
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: monkey0506 on Sun 25/04/2010 13:58:36
If the move is non-blocking are you certain that you are providing adequate conditionals to prevent the Object.Move from being called every game loop? Coz if you keep calling it over and over then clearly it won't work.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Pumaman on Sun 25/04/2010 17:49:31
QuoteCJ, I'm wondering - would it be possible to add a function to the plugin API to override AGS' viewport initialization so that the plugin could take care of all rendering while AGS runs in the background handling the game logic? Seems like that could solve a lot of issues people are having with resolutions and also allow for aspect-ratio independent games.

Possibly, though that could get quite complicated. It's something to think about for future versions.

QuoteI seem to be having a problem with the Object.Move command in a room_RepExec() function.

Bottom line: it doesn't work. Whenever I perform an action on something in the room, however, the move gets executed.

As monkey_05_06 says, you are probably calling Object.Move every game cycle, which means it is continually restarting its move. You need to consider when exactly you want the move to start.


Anyway, Final 3 is now up with a couple of fixes for reported issues. This time I really am planning to make this the official release version, because 3.2 has been in beta for a year now! So if no other issues are found in the next week, this is becoming official :)
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Calin Leafshade on Mon 26/04/2010 01:04:00
Although this is not technically a bug it is certainly an annoying quirk of the editor.

If a GUI is very tall (for example if you want to scroll it) the entire gui obviously wont be shown in the editor but there are no scroll bars or anything..

So guis either need to have a maximum height or it needs scroll bars.
Title: Re: AGS 3.2 Final 2 - Recession-busting edition
Post by: Electroshokker on Mon 26/04/2010 13:18:29
Quote from: monkey_05_06 on Sun 25/04/2010 13:58:36
If the move is non-blocking are you certain that you are providing adequate conditionals to prevent the Object.Move from being called every game loop? Coz if you keep calling it over and over then clearly it won't work.

Actually, I'm using a timer so it gets called only every 3 seconds or so.

Like I said, the funny thing is that the move does get executed AFTER I click on something, rather then all the time. I'll dig into this some further, though. Maybe there's some other script blocking it.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: xenogia on Mon 26/04/2010 13:56:11
Thanks CJ for that.  Hopefully you can release it as is and you can worry about people's nitpicks and bugfixes for the next release.  Or even another service pack down the track.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Ryan Timothy B on Mon 26/04/2010 19:20:01
There is a teeny tiny glitch that happens to me at least once a day and I imagine it happens to a lot of other people as well.  I finally figured out yesterday how to recreate the issue each time, flawlessly.

When you hover your mouse over something (before or after the info box pops up) like so:
(http://www.bryvis.com/entertainment/other/agsf/box_glitch1.png)

Then if you move your mouse to the top bar and click on a tab, this happens:
(http://www.bryvis.com/entertainment/other/agsf/box_glitch2.png)

It will cover that area and won't let you click through it.  If you aren't quick enough, the box will appear where it's supposed to but still cover everything when you switch tabs.

The thing is, the damn box is not only opaque, it also steals clicks.  The only way to remove the info box is to unmaximize the application.  Minimizing it will actually have it be there still and it'll cover every other application, until you unminimize it.  Or you can click back onto the original script IF the hover box isn't covering it completely - which will also remove it.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Calin Leafshade on Mon 26/04/2010 22:20:35
yep ive encountered that several times too.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Shane 'ProgZmax' Stevens on Tue 27/04/2010 10:48:20
Yeah, the persistent tooltip thing happens often.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: GarageGothic on Tue 27/04/2010 11:00:21
I think I came across the same issue, or something very similar, but couldn't figure out how to reproduce it - did you guys also have the tooltip appearing as its own entry in the windows task bar?
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Alan v.Drake on Tue 27/04/2010 12:18:40
With the latest version of ags, trying to run a .Play() command (I haven't tried the old way) with "No digital sounds" as audio device, causes an Illegal exception.

Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Sslaxx on Tue 27/04/2010 13:51:04
Quote from: Alan v.Drake on Tue 27/04/2010 12:18:40
With the latest version of ags, trying to run a .Play() command (I haven't tried the old way) with "No digital sounds" as audio device, causes an Illegal exception.
Got myself a reproducible error message. The game crashes with a fatal exception every time at this point.

This might be related to Alan v.Drake's sound problems.

Quote from: Illegal ExceptionAn exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x0043ACAA ; program pointer is +6, ACI version 3.20.1106, gtags (0,40)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.

in "room2.asc", line 36

Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.

An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)

Line 36 reads "Game.StopAudio ();". From my understanding of the situation, this should stop all audio playing if passed with no parameters, yes?

Just to see if one of the Game.StopAudio parameters was the problem, I tried:  Game.StopAudio (eAudioTypeMusic);
  Game.StopAudio (eAudioTypeAmbientSound);
  Game.StopAudio (eAudioTypeSound);
But this ran as expected.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Dualnames on Tue 27/04/2010 13:53:03
Great changes in the changelog, I'm porting HHGTG to new version, backing up and the rest, since I've just made it more stable that's all!

EDIT: Great idea of the audio cache folder!!

EDIT2:

Quote
Unable to find aMusic25 which was set as this room's start music

I'm getting this error.(warning in fact). But it doesn't allow the game to compile, nor does it tell me where the error is, nor there is PlayMusic(25); in any room. I think you've removed the PlayMusic room property thing on the interaction thingy. And perhaps it's set there, and doesn't allow game to compile, and I can't access it to fix it.

EDIT3: However adding a music file named 'aMusic25' fixes everything and the game compiles okay.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Sslaxx on Tue 27/04/2010 16:15:33
Quote from: Dualnames on Tue 27/04/2010 13:53:03
Quote
Unable to find aMusic25 which was set as this room's start music

I'm getting this error.(warning in fact). But it doesn't allow the game to compile, nor does it tell me where the error is, nor there is PlayMusic(25); in any room. I think you've removed the PlayMusic room property thing on the interaction thingy. And perhaps it's set there, and doesn't allow game to compile, and I can't access it to fix it.

EDIT3: However adding a music file named 'aMusic25' fixes everything and the game compiles okay.
Does this music file play anywhere when you compile and run the game?
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Dualnames on Tue 27/04/2010 16:54:17
Quote from: Sslaxx on Tue 27/04/2010 16:15:33
Quote from: Dualnames on Tue 27/04/2010 13:53:03
Quote
Unable to find aMusic25 which was set as this room's start music

I'm getting this error.(warning in fact). But it doesn't allow the game to compile, nor does it tell me where the error is, nor there is PlayMusic(25); in any room. I think you've removed the PlayMusic room property thing on the interaction thingy. And perhaps it's set there, and doesn't allow game to compile, and I can't access it to fix it.

EDIT3: However adding a music file named 'aMusic25' fixes everything and the game compiles okay.
Does this music file play anywhere when you compile and run the game?

Not in script. It probably got stuck on PlayMusicOnLoad property that is now removed.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Ryan Timothy B on Fri 30/04/2010 20:57:06
There's a bad error report when you miss the double equals sign with Random, like so:

if (Random(3)=1) {
}


It results in the error message:
Quoteexpected semicolon after ')'

Definitely not a horrible issue, just figured I'd mention it.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Creator on Sat 01/05/2010 05:02:33
Quote from: Ryan Timothy on Fri 30/04/2010 20:57:06
There's a bad error report when you miss the double equals sign with Random, like so:

if (Random(3)=1) {
}


It results in the error message:
Quoteexpected semicolon after ')'


I'm pretty sure you can only use random with a variable.
EG.


int ran1 = Random(3);

if (ran1 == 1)
{
}



May be wrong, so if I am disregard my message.


Never mind. Misread your post.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Dualnames on Sat 01/05/2010 05:28:55
I was porting this game today from 2.72 to 3.1.2, and well all the variables were ported perfectly, however variables used this way in 2.72:

SetGraphicalVariable("NAME");

or GetGraphicalVariable("NAME");

Weren't ported correctly, and I had to go alll the way and replace them, not much of a job, but totally boring and tedious.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: arj0n on Sat 01/05/2010 14:50:31
CJ, will this be fixed in the new version?:
"Need to move mouse before button functions properly". (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=40776.msg539033#msg539033)
I'm currently using v3.1.2 SP1, February 2009.

Thanx.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Pumaman on Sun 02/05/2010 16:41:44
QuoteAlthough this is not technically a bug it is certainly an annoying quirk of the editor.
If a GUI is very tall (for example if you want to scroll it) the entire gui obviously wont be shown in the editor but there are no scroll bars or anything..
So guis either need to have a maximum height or it needs scroll bars.
QuoteThere is a teeny tiny glitch that happens to me at least once a day and I imagine it happens to a lot of other people as well.  I finally figured out yesterday how to recreate the issue each time, flawlessly.

Thanks for these, however please can you post things like this in a seperate thread.
I'd like to keep this 3.2 release thread for ONLY problems which are specific to AGS 3.2 and that don't affect previous versions.

QuoteWith the latest version of ags, trying to run a .Play() command (I haven't tried the old way) with "No digital sounds" as audio device, causes an Illegal exception.

Thanks for reporting this, I have reproduced it and will fix it.

QuoteThe game crashes with a fatal exception every time at this point.
Line 36 reads "Game.StopAudio ();". From my understanding of the situation, this should stop all audio playing if passed with no parameters, yes?

Thanks, I'll fix this too.

QuoteI'm getting this error.(warning in fact). But it doesn't allow the game to compile, nor does it tell me where the error is, nor there is PlayMusic(25); in any room. I think you've removed the PlayMusic room property thing on the interaction thingy. And perhaps it's set there, and doesn't allow game to compile, and I can't access it to fix it.

Ah, is the message not telling you which room it applies to? I'll fix that.

When AGS 3.2 compiles the game, it goes through all the rooms and if they have a "Play music on room load" set, it tries to convert that by adding a line of script to the Player Enters Room event. So if you had set the room's on-load music to Music 25, but you didn't have a MUSIC25.OGG file in the music folder, you will get this warning.

However, this is only a warning, not an error, and should not stop your game from running.

QuoteThere's a bad error report when you miss the double equals sign with Random, like so:

Hmm, that's not specific to Random, it happens with any function call if you do that. I appreciate it's not a perfect error message, but it's probably not something I'll spend any time changing.

QuoteI was porting this game today from 2.72 to 3.1.2, and well all the variables were ported perfectly, however variables used this way in 2.72:
SetGraphicalVariable("NAME");
or GetGraphicalVariable("NAME");
Weren't ported correctly, and I had to go alll the way and replace them, not much of a job, but totally boring and tedious.

What exactly was the problem? Graphical Variables are such an old concept from AGS 2.x that there probably isn't an easy way of porting them.

QuoteCJ, will this be fixed in the new version?:
"Need to move mouse before button functions properly".
I'm currently using v3.1.2 SP1, February 2009.

That should already be fixed in 3.2.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: arj0n on Sun 02/05/2010 17:55:01
Quote from: Pumaman on Sun 02/05/2010 16:41:44
QuoteCJ, will this be fixed in the new version?:
"Need to move mouse before button functions properly".
I'm currently using v3.1.2 SP1, February 2009.

That should already be fixed in 3.2.
I checked v3.2.0 Final 3 and it seems it is not fixed although the Final 2 change list does mention it should be fixed...
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Pumaman on Sun 02/05/2010 20:15:32
Quote from: [ Arj0n ] on Sun 02/05/2010 17:55:01
I checked v3.2.0 Final 3 and it seems it is not fixed although the Final 2 change list does mention it should be fixed...

Ah, thanks -- it was still broken if you had a Wait() just before setting the Visible=true. This is now fixed.

So, Final 4 is now up, which fixes the reported crashes and a few other issues. Please let me know if you have any problems with this -- as I've said far too many times now, this will become the official 3.2 release if no issues are found over the next week.
Title: Re: AGS 3.2 Final 3 - Recession-busting edition
Post by: Dualnames on Sun 02/05/2010 21:13:55
Quote from: Pumaman on Sun 02/05/2010 16:41:44
QuoteI was porting this game today from 2.72 to 3.1.2, and well all the variables were ported perfectly, however variables used this way in 2.72:
SetGraphicalVariable("NAME");
or GetGraphicalVariable("NAME");
Weren't ported correctly, and I had to go alll the way and replace them, not much of a job, but totally boring and tedious.

What exactly was the problem? Graphical Variables are such an old concept from AGS 2.x that there probably isn't an easy way of porting them.

I know Graphical Variables are an old concept. However when compiling a game from 2.72 to 3.xx, AGS manages to convert all of them into IntVar_ecc.

Which is great, except for those

SetGraphicalVariable("NAME");
or GetGraphicalVariable("NAME");

Used with those functions. From what I get AGS succesfully converts Graphical Variables into Global variables, placing the import and export thing to the header and global script.

For a reason, some leftovers where there, I've managed to successfully port the game, so no worries, I just thought it'd be nice to mention. That's all.

I know it's an procedure that we are warned that not all will go well, so it's really clear. But in case you feel like fixing this. I know you're a busy man, and this is probably a waste of time.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: arj0n on Sun 02/05/2010 22:11:26
Quote from: Pumaman on Sun 02/05/2010 20:15:32
Quote from: [ Arj0n ] on Sun 02/05/2010 17:55:01
I checked v3.2.0 Final 3 and it seems it is not fixed although the Final 2 change list does mention it should be fixed...
Ah, thanks -- it was still broken if you had a Wait() just before setting the Visible=true. This is now fixed.

So, Final 4 is now up, which fixes the reported crashes and a few other issues. Please let me know if you have any problems with this -- as I've said far too many times now, this will become the official 3.2 release if no issues are found over the next week.
Yep, I'm using a Wait() before the Visible=True indeed.
Checked the Final 4 version and the problem is fixed.
Thanx :D
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: magintz on Mon 03/05/2010 14:22:34
Not sure exactly if this is a bug but I seem to have difficulties using the on_event function to callback an event on game restore. I'm simply trying to output a display message to say the game has been restored but the screen seems to be stuck on black (no fade in after restore).

See here (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=40774.0)
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: monkey0506 on Tue 04/05/2010 01:04:42
The eEventRestoreGame event gets fired before the room in question is actually loaded into memory (and is therefore called even before eEventEnterRoomBeforeFadein). So, no, it's not a bug. It's by design. To display a message to the user you will have to track yourself whether the eEventRestoreGame event has been fired, and display the message from another function (room_AfterFadein, room_RepExec, repeatedly_execute (from a non-room script), etc.).
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: MurrayL on Tue 11/05/2010 15:17:12
Hey; I don't know if you are still accepting bug reports for 3.2f4 or anything, but I wanted to let you know while I remembered.

Sometimes when switching around tabs (I usually use ctrl+(shift+)tab) if the mouse is hovering over something when I switch, a tooltip will persist onscreen (usually telling me what a function does). When this occurs, I can sometimes get rid of it by switching back to the script the tooltip is from, but the other day I had one that refused to go away even once I closed every tab - I had to quit AGS and load it back up again to get rid of it.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Sslaxx on Tue 11/05/2010 15:22:28
Quote from: MurrayL on Tue 11/05/2010 15:17:12
Hey; I don't know if you are still accepting bug reports for 3.2f4 or anything, but I wanted to let you know while I remembered.

Sometimes when switching around tabs (I usually use ctrl+(shift+)tab) if the mouse is hovering over something when I switch, a tooltip will persist onscreen (usually telling me what a function does). When this occurs, I can sometimes get rid of it by switching back to the script the tooltip is from, but the other day I had one that refused to go away even once I closed every tab - I had to quit AGS and load it back up again to get rid of it.
Reported already. http://www.adventuregamestudio.co.uk/yabb/index.php?topic=37668.msg538358#msg538358
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: MurrayL on Tue 11/05/2010 15:28:31
Oh, my bad! That'll teach me not to look properly.   :-X
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: subspark on Wed 12/05/2010 12:08:03
BUG: Alpha still doesn't work on GUIs. For example alpha blended inventory items.

Cheers,
Sparky.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: xenogia on Wed 12/05/2010 13:34:23
Quote from: subspark on Wed 12/05/2010 12:08:03
BUG: Alpha still doesn't work on GUIs. For example alpha blended inventory items.

Cheers,
Sparky.

Don't think it's been implemented yet, probably not for this thread.

EDIT: On a serious note, just release as is.  And work on all the next bugs and features for the next release IMO.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: subspark on Fri 14/05/2010 11:36:01
Thanks Xenogia, that makes a bit more sense.

Cheers,
Sparky
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Pumaman on Mon 31/05/2010 18:55:09
QuoteI know Graphical Variables are an old concept. However when compiling a game from 2.72 to 3.xx, AGS manages to convert all of them into IntVar_ecc. Which is great, except for those

SetGraphicalVariable("NAME");
or GetGraphicalVariable("NAME");

Ah ok. Yeah, it would be nice for that to happen automatically, but there are so few 2.x games that use GRaphical Variables at this point that it's probably not worth the hassle now.

QuoteOn a serious note, just release as is.  And work on all the next bugs and features for the next release IMO.

Yes, this is my plan. However, there's still an issue with backwards compatiblity with the audio system that I need to investigate; I don't want to release a Final version that has a regression and breaks old games that are still using the old audio commands.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Sslaxx on Mon 31/05/2010 19:06:54
Quote from: Pumaman on Mon 31/05/2010 18:55:09
QuoteI know Graphical Variables are an old concept. However when compiling a game from 2.72 to 3.xx, AGS manages to convert all of them into IntVar_ecc. Which is great, except for those

SetGraphicalVariable("NAME");
or GetGraphicalVariable("NAME");

Ah ok. Yeah, it would be nice for that to happen automatically, but there are so few 2.x games that use GRaphical Variables at this point that it's probably not worth the hassle now.

QuoteOn a serious note, just release as is.  And work on all the next bugs and features for the next release IMO.

Yes, this is my plan. However, there's still an issue with backwards compatiblity with the audio system that I need to investigate; I don't want to release a Final version that has a regression and breaks old games that are still using the old audio commands.
Any ETA on how long it'll take you to stamp out the regression?
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Alan v.Drake on Mon 31/05/2010 19:26:05
Cut down the compatibility (the sooner the better). You've made too many changes to the engine and having to carry on that carrion is forcing you to make bad compromises and working more than necessary.
AGS is finally starting to get good, it would be a real shame having its progress dampened for the sake of compatibility.

- Alan
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Calin Leafshade on Mon 31/05/2010 19:36:00
I agree with Alan.. although I phrase my agreement in a less aggressive fashion.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Dave Gilbert on Thu 03/06/2010 22:33:06
Quick question and apologies if it was mentioned before in this thread.   I couldn't look through all 20 pages!

Is it me, or are the automatic font outlines less thick than they used to be in previous?  I'm making a 640 x 480 game and the outline is only one pixel thick, which is barely noticeable at all.  Is this a new feature or was it like this all the time and I never noticed? 
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Sslaxx on Thu 03/06/2010 23:57:35
Quote from: Calin Leafshade on Mon 31/05/2010 19:36:00
I agree with Alan.. although I phrase my agreement in a less aggressive fashion.
Have either of you thought there might be other (possibly commercial-related) reasons to retain compatibility?
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: subspark on Fri 04/06/2010 12:21:03
QuoteI agree with Alan.. although I phrase my agreement in a less aggressive fashion.
Well, aggressive phrase or not, I agree with this idea. The sooner AGS 3x can stand on its own 'blue saucer' the better.

QuoteHave either of you thought there might be other (possibly commercial-related) reasons to retain compatibility?
I have actually yes. And I think that it is most important that there be a regular link to previous AGS releases on the main website. It was nearly impossible to find 2.6 and I didn't find it here.

To be fair to all, when a commercial production starts here at my studio, like many others, we commit to a version of UE3/AGS/Unity and stick with it so that we avoid having to re-write or re-work anything significant. The same commercial practices would or really should apply with other commercial studios.

To get back on point (A), I'll be completely honest with you guys, AGS deserves a spring clean. And if I were a betting man, which I am, I'd say Chris grows lethargic of supporting a near-giant backlog of features and perhaps hopes that the majority of us can support the idea of a lighter, clutter-free AGS soon.

Of course, the downside here is that it may be a fair slog to pull out obsolete 2x features and still keep 3x features working, but really in the long run, the benefits are there staring us in the face.

I assure you I certainly don't expect this to be an easy topic for everybody reach a consensus on, but the topic does deserve the opportunity for us to discuss our honest views about it. Perhaps there should be an open, 'reasonable' discussion on what 2x features the community believes belong under the 3x title and what 2x features need to be recorded in the history books.

In any case... this effort and its outcomes is entirely up to your discretion CJ, but I hope you do see where Calin, Alan and I are coming from.

Cheers,
Sparky. :)
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Calin Leafshade on Fri 04/06/2010 22:32:37
Quote from: subspark on Fri 04/06/2010 12:21:03can support the idea of a lighter, clutter-free AGS soon.

This from someone who regularly suggests adding easily scriptable features?
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: subspark on Sat 05/06/2010 15:53:24
Lol. ;) Well to clarify, by clutter free, I mean obsolete 2x features. The suggestions I make every now and then are just basic ideas I have that I expect have no higher priority than anyone else's.

Anyway, I'm with you here. I feel that this is a necessary change. Does anyone else agree or feel the same way about CJ perhaps eventually removing backwards compatibility from AGS 3x ?

Cheers,
Sparky.

BTW Calin, how come you look ten in your avatar. ;D You remind me of the young Angel from X-Men III.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Dualnames on Sat 05/06/2010 16:26:11
I think AGS 3.0 is totally different to AGS 2.72, I think it'd be a good point to sacrifice some backwards compatibility and advance the engine. If there are things that hold the engine back, just for the sake of people being able to take their game and advance it to newest AGS. I may sound like a dick, so please spare me.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Misj' on Sun 06/06/2010 10:50:22
Quote from: subspark on Fri 04/06/2010 12:21:03Of course, the downside here is that it may be a fair slog to pull out obsolete 2x features and still keep 3x features working, but really in the long run, the benefits are there staring us in the face.

...
...

Perhaps there should be an open, 'reasonable' discussion on what 2x features the community believes belong under the 3x title and what 2x features need to be recorded in the history books.
Quote from: Pumaman on Mon 31/05/2010 18:55:09However, there's still an issue with backwards compatiblity with the audio system that I need to investigate; I don't want to release a Final version that has a regression and breaks old games that are still using the old audio commands.

I'm sorry, but I'm a little lost here. Are you guys talking about 'features' (things AGS 2/3 can do) or 'syntax' (the way the user makes AGS 2/3 do something)? - From CJ's post I assumed it was syntax...but I'm not sure based on the other posts.

If it's about features that AGS 3 inherited from AGS 2 then these features have to be defined and the discussion has to be made on an individual basis. I'd be a little hesitant to reducing the features of AGS though; even if I wouldn't use them all myself.

On the other hand, if it's about syntax, and if the new syntax is well documented, and if it's clearly stated that the old syntax won't work anymore, and considering that the player doesn't need a general engine/interpreter to play the games (like PHP or JavaScript), and if an archive of older key-versions is available (for reasons mentioned by Sub), then I say: the best way to ensure that AGS won't become a Frankenstein's Monster is to enforce the newer (hopefully better) syntax, and get rid of the older (worse?) syntax. And I'd support that direction.

So, ehhh, well...could someone please tell me whether I support Alan, Calin, Sub and Dual? ;)
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: subspark on Sun 06/06/2010 14:01:12
Your between two topics Miez buddy.

Basically Calin, Alan, Dualnames and myself agree that AGS 2x should stand on its own allowing for AGS 3x to be swept of features that relate to 2x backwards compatibility (being able to use AGS 3 to import older games).
Basically, right now there's a huge bunch of 'engine' code (not to be confused with syntax) that tells AGS 3x how to import a 2x game. We're opting for AGS 3x to have this unnecessary feature removed. It doesn't really make sense anymore. Most of us now have a clear handle on the aging differences 2x has from the newer 3x version. If there are still users wanting to convert their 2x project to the new 3x format, then ultimately AGS 3.2 could be the last version able to do this and it could be hosted among the version numbers (with notes) on the main website as suggested before.

I hope that makes more sense.

Cheers,
Sparky.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Misj' on Sun 06/06/2010 20:29:53
Quote from: subspark on Sun 06/06/2010 14:01:12Your between two topics Miez buddy.
Miez is that other Dutch guy who shares some freakish similarities to me (as I once explained in this (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=34542.msg464673#msg464673) post). I know...it confuses me too sometimes. :D

QuoteBasically Calin, Alan, Dualnames and myself agree that AGS 2x should stand on its own allowing for AGS 3x to be swept of features that relate to 2x backwards compatibility (being able to use AGS 3 to import older games).
Basically, right now there's a huge bunch of 'engine' code (not to be confused with syntax) that tells AGS 3x how to import a 2x game.
But for the end-user (not CJ, but me) does this all come back to me being able to use old syntax and the engine understanding it (I know there's more to it from the point of Chris, because it would also include being able to read the original input-files etc, but I'm focussing on the end-user here because...well...frankly I don't care 'how' Chris does it ;) )? - Or are there features (from a user's point of view) in 3x that are obsolete and only exist because 2x had them, and they still have to be in there (for backwards compatibility reasons)  even though the only way they are used is through 'outdated' code?

And of course the simple question than arises: would it be possible then to write a 2x-compatibility plug-in that contains the 3x interpretation of 2x data and syntax to use as a buffer/transition-scheme; without it being directly within the 3x source. While this would result in backwards compatibility always lagging behind the release of the final product, it would also force a separation and therefore 2x wouldn't hamper 3x development, and make the 3x engine cleaner.

Just some thoughts...
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: xenogia on Sun 06/06/2010 20:45:05
Realistically we shouldn't demand anything from Chris.  Overall it his choice and guess what guys.. it is a FREE program that Chris puts his spare time into.  Why do people think that he owes them something with AGS?
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: Calin Leafshade on Sun 06/06/2010 21:11:36
^^^^^ agreed. Nothing should be 'demanded' or 'opted for'.

just suggested.
Title: Re: AGS 3.2 Final 4 - Recession-busting edition
Post by: subspark on Mon 07/06/2010 01:26:27
Absolutely. These are all just suggestions here. Nobody's making any demands or decisions for Chris.
'Opting' for the idea was just another way of saying "I stand by Alan's original suggestion", Calin. My choice for words is sometimes a bit mixed up. Sorry for the confusion chief.

Edit: Producing a 3rd party plug-in to allow backwards compatibility to me sounds like a better way of carrying the current official support across into future versions.

Sparky.

Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Tue 08/06/2010 22:13:59
QuoteAny ETA on how long it'll take you to stamp out the regression?

After further testing I've confirmed that the problem was already fixed by Final 4.

QuoteCut down the compatibility (the sooner the better). You've made too many changes to the engine and having to carry on that carrion is forcing you to make bad compromises and working more than necessary
QuoteI agree with Alan.. although I phrase my agreement in a less aggressive fashion.

It would have been much easier to develop the new audio system if I had just removed all the old commands like PlayMusic and PlaySound, and said "tough, change all your scripts to use the new commands".

But I can't do that. Put yourself in the position of someone like Dave Gilbert or AGDI who have very large, released games to support. For example, if Dave needs to upgrade to 3.2 to get an unrelated fix, it's not reasonable to expect him to re-code his entire game in the process.
One of the reasons people use AGS is that it has always had good backwards compatibility support, and as much as I'd love to just ditch all the old commands, nobody would ever upgrade to new versions if I did that.

QuoteIs it me, or are the automatic font outlines less thick than they used to be in previous?  I'm making a 640 x 480 game and the outline is only one pixel thick, which is barely noticeable at all.  Is this a new feature or was it like this all the time and I never noticed? 

This hasn't changed, though there might be some difference due to improved TTF anti-aliasing support. Do you have Before and After screenshots?


Anyway, I have uploaded a Final 5, which is important as it fixes a memory leak. I know I've been saying this a lot, but I really do plan to release this if no issues are found in the next couple of weeks.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Dualnames on Tue 08/06/2010 23:30:38
I truly support any direction the AGS goes. We can't expect a rad version like 3.0 every day! It'd be too much to ask for. We should all lay down with the suggestions and just let it flow. Chris has been doing this forever. He knows best. ;)

Ditching Win98 was a good move. I think AGS is moving into a great direction, and I'm kind of left behind in 3.1.2, I promise I will check up the new audio system. What I said is that for example supporting obsolete thingies like win98 is a good reason to advance the engine.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Tue 08/06/2010 23:33:28
my actual opinion is that AGS is pretty much *complete*

It does everything it set out to do in a very sensible, logical way.

There are a few loose ends to tie up (alpha channels, damn it) but other than that it is a pretty perfect, low res, 2d adventure game engine.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: GarageGothic on Wed 09/06/2010 00:45:21
I agree with you Calin, AGS in its current shape is stable and does exactly what it was intended to do. The majority of the pending feature suggestions (that cannot be solved through scripting) come from users who try to make AGS do things it was never designed for, myself included.

Not to say that there aren't still some valid feature requests still unfulfilled - the lack of widescreen support for higher resolutions being one example. But personally, and without knowing CJ's plans for the engine's future, I would be perfectly happy with a feature lockdown if it was accompanied with greater engine extendability, so we could solve whatever limitations we see and issues we have with the engine ourselves.

My impression - and I have no idea if this is correct - is that CJ, like most of us who started using AGS during our teens or early twenties, has gotten caught up in real world obligations that take a priority over hobby programming (as they should). I totally respect that, and it's one of the main reasons that I've pretty much stopped making feature suggestions and instead try to come up with workarounds in module- and recently plug-in form.

The plugin API is pretty damn powerful but does still has a few limitations in hardware control, the main one I'm struggling with right now being viewport initialization control. And of course there's the Mac/Linux compatibility issue which someone always brings up when I mention that I'm writing a plugin to add some long-requested features. To me it's not a big deal, though it would be a shame if people are hesitant to take advantage of the plugin functions because of this.
I admit I have no idea how dynamically linked libraries are implemented on non-Windows platforms (seeing as all the libraries I'm calling from the plugin are platform agnostic, I don't think it would impossible - though I guess it would mean compiling a version of the plugin for each platform), or how much work it would take for the maintainers of the mac/linux ports of the engine to add hooks to them, which I suppose is a bigger issue.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: subspark on Wed 09/06/2010 03:05:51
Well put Garage.
My gut feeling is that AGS will continue to grow in the areas we're all hoping for. Chris is just magic like that. :=

Sparks.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Alan v.Drake on Wed 09/06/2010 19:44:08
Quote from: Pumaman on Tue 08/06/2010 22:13:59
[..]
But I can't do that. Put yourself in the position of someone like Dave Gilbert or AGDI who have very large, released games to support. For example, if Dave needs to upgrade to 3.2 to get an unrelated fix, it's not reasonable to expect him to re-code his entire game in the process.
One of the reasons people use AGS is that it has always had good backwards compatibility support, and as much as I'd love to just ditch all the old commands, nobody would ever upgrade to new versions if I did that.
[..]

Neither can they expect you to support their old stuff forever.

If 2.7 worshippers want to use the old scriptings, well they can keep up using the old versions, from what I've seen, aside a couple of fix for newer OSes, do they really need more ? I may be wrong, but I seriously doubt it.

I keep pushing only because I think you feel the same. If you want me to stop insisting, well, I'll keep my mouth shut then.


P.S: I, for one, would gladly upgrade to newer versions.


- Alan
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: subspark on Thu 10/06/2010 03:43:01
Yeah like I said before it's a sticky area. I upgraded to the newer AGS 2.8 as soon as my 2.72 project completed. Problem solved.
It may not be the same for everyone but I do believe that if your developing a project, it's more than practical to stick with the one engine generation you chose to start with.
But alas... Life isn't fair. SO, we'll have to see. 8)

Sparky.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Shane 'ProgZmax' Stevens on Thu 10/06/2010 05:39:52
I usually upgrade through the first stable version available during a game's development cycle unless CJ happens to add one or two features I've really been looking forward to, then I chance on a beta and fiddle with it until I'm satisfied it won't break anything.  Also, I don't really see a strong argument against backwards compatibility; from a performance standpoint there's likely no hit with allegro (depending on how cj's approaching it, I've had good results on some of my projects) so it comes down to the effort of making each upgraded component backwards compatible, which yeah, does prolong the development cycle.  The one really good thing about backwards compatibility that some people don't understand is that people who mastered ags at an earlier stage, say 2.72, can continue to script in the way they understand in 3.1 with only a few changes instead of having to start over and relearn new-style strings, object-based scripting, and so forth.  I am not one of these people since I've been programming for years, but I know people who are in this boat and are very grateful that they can continue merrily along with the function calls and such they learned years ago without having to completely start over.

Anyway, I'll likely give this a try even though I didn't have any issues with the previous build that I can remember.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Vince Twelve on Thu 10/06/2010 16:21:42
I understand exactly why the backwards compatibility is being enforced.  I would hate to have to go back and recode a bunch of old stuff (there are some old-style things still in Resonance). Unfortunately, the one "feature" that has (to my knowledge) ever been removed from AGS is the one that keeps Resonance back on 3.0.2. :(  Ok, so it was an exploit, not a feature...

Running my 320x240 game in 640x480 mode to get high res ttf fonts on a low res game is something I'm not willing to give up.  But I really want those new audio features.   :'(
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Shane 'ProgZmax' Stevens on Thu 10/06/2010 21:42:37
Yeah, it's a shame that went away.  It's also the reason why Dave Gilbert hasn't (and probably won't) upgrade to a new version.  I'm not sure exactly why it should be viewed as broken behavior rather than a bonus (and quite useful) feature that could just be toggled on/off in the editor (via a font property so you could potentially have low and hi res fonts), but oh well.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Vince Twelve on Thu 10/06/2010 21:46:30
I think it's because the game is no longer running in 640x480 mode, but in 320x240 with a x2 filter.  I could be wrong.  If there was a way to turn on double resolution fonts in newer versions of the editor, I'd do a back flip or something else equally impressive.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Dualnames on Thu 10/06/2010 21:50:59
See? Now we made Vince sad! And that made me sad too. Well, I moved HHGTG from 2.72 to 3.1.2 on a timespan of 2 years and it carried and created some AGS engine bugs, that went fixed. I also carried Downfall from 2.72 to 3.1.2 and apart from some minor annoyances I was really glad this was still possible. My vote goes to keep backwards compatibility always up.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: AdamM on Fri 11/06/2010 04:25:37
Jesus Christ, why is there no Undo button in the Dialog editor? I had to restart the editor to correct my horrific mistake, and if I'd saved at any point it would have all gone permanently.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Fri 11/06/2010 04:26:12
since it's a text editor, ctrl z should work just fine.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: SSH on Fri 11/06/2010 05:45:01
Any serious projets should use AGS's revision control integration.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: AdamM on Fri 11/06/2010 06:43:43
Quote from: SSH on Fri 11/06/2010 05:45:01
Any serious projets should use AGS's revision control integration.
I can't tell if you're joking or not.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Snarky on Fri 11/06/2010 07:28:02
Any serious programming project should use revision control. Obviously.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: SSH on Fri 11/06/2010 08:57:31
As I've never done any serious projects (with AGS or even Windows) ;) I've not actually got any experience of setting up the revision control, though. If anyone has done this, it might be useful to give a HOWTO for setting up CVS or Subversion or something for AGS use, from scratch.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: lawon on Sat 12/06/2010 00:04:23
I cant be arsed to read through 22 pages right now, so im sorry if this was already pointed out, but i was told to report here about the "IgnoreUserInputAfterTextTimeoutMs" feature, that it should make the timeout at the beginning of the text being displayed , and not after it, cos otherwise it would come after the last line of text also, so there would be a delay in returning the control back to the player. Thanks, ill go back to my beer now if you dont mind.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Sat 12/06/2010 00:16:23
I would also very much like a revision control HOWTO
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: subspark on Sun 13/06/2010 06:10:49
We use SVN on our two projects.
http://tortoisesvn.tigris.org/ (http://tortoisesvn.tigris.org/)

Sparky.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: ShiverMeSideways on Sun 13/06/2010 09:40:50
Hey, guys, I dunno if this is still an issue or if it's been mentioned or not. I'm using AGS 3.1 and it seems that whenever I use the mouse wheel (more by accident), the cursor disappears!

Any way to fix this? Maybe people who've never played an AGS game don't know about its lack of mouse wheel in-game integration and won't know to not use it...

Just sayin'.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Gilbert on Sun 13/06/2010 14:19:51
I've not checked yet, but I think there are some codes in handling the mouse wheel in the default Global Script, in which it is used to cycle through the mouse modes. You may try to disable that part of the codes if they're not welcomed.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Sun 13/06/2010 23:06:40
QuoteMy impression - and I have no idea if this is correct - is that CJ, like most of us who started using AGS during our teens or early twenties, has gotten caught up in real world obligations that take a priority over hobby programming (as they should).

This is pretty much spot on, yes. But circumstances can change, and there are some periods when I have more time for AGS than others.

QuoteIf 2.7 worshippers want to use the old scriptings, well they can keep up using the old versions, from what I've seen, aside a couple of fix for newer OSes, do they really need more ? I may be wrong, but I seriously doubt it.

We're not just talking old 2.7 games though, in the case of the audio system it is maintaining compatibility with the last official version (3.1.2) that is a lot of work.

QuoteI'm not sure exactly why it should be viewed as broken behavior rather than a bonus (and quite useful) feature that could just be toggled on/off in the editor (via a font property so you could potentially have low and hi res fonts), but oh well.

As Vince says, it's simply not technically possible, since the game is all running at 320x240. At the very last minute, it is then hardware-scaled up to 640x480 via a 2x filter; it's not possible to then go back and render the text at 640x480-resolution after this.

The quirk was only available in older versions of AGS because the game itself ran at 640x480 and AGS did its own custom software-mode scaling to scale all the sprites by 2x; this ability had to be removed to support hi-res co-ordinates in 3.1.

QuoteJesus Christ, why is there no Undo button in the Dialog editor? I had to restart the editor to correct my horrific mistake, and if I'd saved at any point it would have all gone permanently.

Are you talking a scripting mistake or creating/deleting the dialog itself? As Calin says, Ctrl+Z should work to Undo text in the dialog editor.

QuoteI cant be arsed to read through 22 pages right now, soI'm sorry if this was already pointed out, but i was told to report here about the "IgnoreUserInputAfterTextTimeoutMs" feature, that it should make the timeout at the beginning of the text being displayed , and not after it, cos otherwise it would come after the last line of text also, so there would be a delay in returning the control back to the player

This is not a bug, I have replied in your other thread.

QuoteHey, guys, I dunno if this is still an issue or if it's been mentioned or not. I'm using AGS 3.1 and it seems that whenever I use the mouse wheel (more by accident), the cursor disappears!

Any way to fix this? Maybe people who've never played an AGS game don't know about its lack of mouse wheel in-game integration and won't know to not use it...

As Gilbet says, there is some script in the on_mouse_Click function in the global script to handle the mouse wheel, you should check this and make sure it's doing what you want it to do.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: monkey0506 on Sun 13/06/2010 23:39:02
The fact that there have been five attempts at a Final version and still no end in sight for AGS 3.2 is wonderful. Furthermore, lol. That is all. :=
(I'm allowed to do this ("troll") since I'm never around anymore)
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: subspark on Mon 14/06/2010 01:27:18
Hehehe. :D
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: xenogia on Mon 14/06/2010 21:59:17
Realistically someone should lock this thread monkey_05_06.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Crimson Wizard on Mon 14/06/2010 23:08:48
There's some sort of mistake in the script editor related to error message.

If you type something like

int [] myarray;


It will display "  '[' is already defined  ", which is a bit confusing in current context.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Dave Gilbert on Tue 15/06/2010 15:33:52
Quote from: ProgZmax on Thu 10/06/2010 21:42:37
Yeah, it's a shame that went away.  It's also the reason why Dave Gilbert hasn't (and probably won't) upgrade to a new version.  I'm not sure exactly why it should be viewed as broken behavior rather than a bonus (and quite useful) feature that could just be toggled on/off in the editor (via a font property so you could potentially have low and hi res fonts), but oh well.

I actually have upgraded!  I'm still using 320 x 240 sized graphics, but I'm blowing them up to 640 x 480 before importing them into AGS.  It's a bit overkill, true, but I like having a low-res game with high-res fonts.  I didn't bother upgrading while making Blackwell Convergence because it would have involved a ton of reprogramming.  But for a totally new game?  Call me a convert.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: subspark on Tue 15/06/2010 15:43:40
Nice one Dave!!

How cool is AGS 3x! 8)

Sparky.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Wed 16/06/2010 18:17:17
Although gui alpha channels work properly now with no gui background they don't seem to work correctly WITH a gui background.

I have a button which has an image with and alpha channel ontop of a gui background which has an alpha channel and the transparency on the button doesnt seem to work anymore.. i'm pretty sure it used to.

EDIT:Same is true of slider handles
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Knox on Wed 16/06/2010 21:16:33
I cant seem to get transparency with a png alpha working correctly on a slider handle's graphic aswell...Ggrrr!!
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: subspark on Thu 17/06/2010 05:35:05
Yep. Same here. Very frustrating. :'(
Is this issue we're having also related to the fact that alpha-blended inventory icons don't work over a GUI with a background? The alpha channel, it seems, is completely discarded.

We're using PNGs too.

Sparky.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Shane 'ProgZmax' Stevens on Thu 17/06/2010 06:31:36
I found some weird behavior with resizing guis.  In particular, if you change to a room with a room size larger than the default game dimensions and try to resize the gui to fit that room size you'll get an error.  Now, while I understand it's going by the game resolution only for gui size limits I see this as rather strange behavior.  Why shouldn't we be able to make guis larger than the game resolution and have them off the limits of the screen?  It certainly wouldn't break anything by default.  I bring this up because, if you make one or two guis larger than the primary resolution of your game by default you get constant warnings that it may cause errors (which it doesn't) and since it doesn't actually break anything I'd rather either the warning was removed or the limitation of resizing guis beyond the game set resolution removed, that way I could avoid the warning by resizing the gui when you entered the larger room and changing it back when you leave.  If it's a matter of creating some maximum size limit to prevent memory waste then by all means impose a maximum gui size, but I'd really like to be able to make guis that fit the rooms in my game even if they are larger than the default resolution.  Thanks.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: ShiverMeSideways on Thu 17/06/2010 09:41:05
Thank you, Dave and CJ, for helping me out with my mouse wheel problem! Indeed, the problem was that any other mouse input aside from the left button click cycled through the mouse modes, and I only have the pointer defined. That's why it disappeared.

Cheers! :)

PS: AGS 3.x and how awesome it is got me back into game-making so major-major thanks, CJ!
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Sslaxx on Thu 17/06/2010 16:41:41
You know, just calling them "RC" instead of "Final" sounds better.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Ryan Timothy B on Thu 17/06/2010 20:48:11
Since Progz was mentioning issues with GUI's.  Why is it that when you change the X and Y coords of the GUI it causes an error if the GUI is off the room background?  Very frustrating.  I'm always having to check the X or Y coords plus width and height of GUI to find out if it's off the screen before changing it's position.  So instead of changing it's X and Y if it'll be off screen, I just change it's visiblity to false until it comes back on screen.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Crimson Wizard on Sun 20/06/2010 08:20:08
I noticed there are no help topics which sould cover "advanced" script keywords like "protected", "writeprotected" (I knew that one exists only after getting monkey_05_06's Stack module), "managed" etc. Maybe some other things are missing in the manual too. It would be nice if they are added there.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Fri 25/06/2010 14:09:16
QuoteAlthough gui alpha channels work properly now with no gui background they don't seem to work correctly WITH a gui background.

I have a button which has an image with and alpha channel ontop of a gui background which has an alpha channel and the transparency on the button doesnt seem to work anymore.. i'm pretty sure it used to.

EDIT:Same is true of slider handles

Are you using Classic or AdditiveOpacity GUI alpha style?
HAs this problem just started happening with Final 5?

Quotefound some weird behavior with resizing guis.  In particular, if you change to a room with a room size larger than the default game dimensions and try to resize the gui to fit that room size you'll get an error.  Now, while I understand it's going by the game resolution only for gui size limits I see this as rather strange behavior.  Why shouldn't we be able to make guis larger than the game resolution and have them off the limits of the screen?  It certainly wouldn't break anything by default.  I bring this up because, if you make one or two guis larger than the primary resolution of your game by default you get constant warnings that it may cause errors (which it doesn't) and since it doesn't actually break anything I'd rather either the warning was removed or the limitation of resizing guis beyond the game set resolution removed, that way I could avoid the warning by resizing the gui when you entered the larger room and changing it back when you leave.

Reasonable point, please could you post this in a separate thread as it's not related to the 3.2 release.

QuoteYou know, just calling them "RC" instead of "Final" sounds better.

We've gone through the RC releases, the problem is that most people won't use a new release until it becomes Final, so unfortunately it's only when the Final is released that most people start testing it and the bugs are found.

QuoteI noticed there are no help topics which sould cover "advanced" script keywords like "protected", "writeprotected" (I knew that one exists only after getting monkey_05_06's Stack module), "managed" etc. Maybe some other things are missing in the manual too. It would be nice if they are added there.

Yeah, this is because the custom-struct support is still sort of half-finished, and I was planning to wait until everything was fully supported before documenting it. But realistically that's not going to happen for a while so probably documenting the existing keywords would be a good idea.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Fri 25/06/2010 16:50:51
Yes, I'm confident this is a new issue with Final 5

And i'm using AdditiveOpacity
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: subspark on Fri 25/06/2010 17:17:42
As am I, CJ.

With respect, I've tried everything to get Alpha working properly in the case described.

Sparky.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Ryan Timothy B on Fri 25/06/2010 17:25:17
I'm also confident it's a new issue, because I've had no problems doing this with previous versions.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Ali on Wed 30/06/2010 20:56:28
When I try to install the latest version (On Windows 7 64 bit) it seems to crash my virus scanner (Kaspersky).

---------------------------
avp.exe - Application Error
---------------------------
The instruction at 0x6ddeba67 referenced memory at 0xfa61e8d2. The memory could not be written.

Normally Kaspersky would scan a new program before running it, so I guess this is what's failing. It's probably  Kaspersky's fault, but I thought I'd make it known.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Mon 12/07/2010 21:48:31
Quote from: Calin Leafshade on Fri 25/06/2010 16:50:51
Yes, I'm confident this is a new issue with Final 5

And i'm using AdditiveOpacity

Can one of you upload a Before and After screenshot of a GUI with this problem in Final 5, and what it looked like with Final 4? I've tried to reproduce the problem but my test alpha GUIs look the same in both Final 4 and Final 5.
And as I asked, can you all please say if you're using Classic or AdditiveOpacity?

QuoteWhen I try to install the latest version (On Windows 7 64 bit) it seems to crash my virus scanner (Kaspersky).

Heh, probably not much I can do about that!
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: frogfrost on Tue 13/07/2010 00:11:38
Hey - so great that 3.2 supports black bars on widescreen resolutions - one thing I've noticed, at least on my monitor, is that the bars are uneven at 800x600 - AND, that if I auto-adjust my monitor (you know the auto button that all monitors have now) - boom. It shuffles the image to the left and then all the black is on the right.

Bizarre because I've played lots of games at non-widescreen resolutions that have those bars and not had that problem.

Desktop resolution is 1440x900 for the monitor. Any ideas why it only seems to be AGS stuff that does this?
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Crimson Wizard on Wed 14/07/2010 19:14:40
I have a question, is this intended that those functions without any explicit return type can actually return integer?

Like

function f()
{
  return 1;
}

function ff()
{
   int a = f();
}


Is this bug or normal behavior?
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: GarageGothic on Wed 14/07/2010 19:26:38
"function" is just a fancy word for "int" (or rather it's internally defined as int), so yes that's as designed. I'm sure someone else can explain it in more technically correct terms.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Tue 20/07/2010 22:27:42
QuoteHey - so great that 3.2 supports black bars on widescreen resolutions - one thing I've noticed, at least on my monitor, is that the bars are uneven at 800x600 - AND, that if I auto-adjust my monitor (you know the auto button that all monitors have now) - boom. It shuffles the image to the left and then all the black is on the right.

My monitor does this too. I'm not sure why it would only affect AGS games, perhaps the black borders need to be not actually black, but slightly grey in order for the monitor to recognise them as part of the screen. I'll do some investigation around this.

QuoteI have a question, is this intended that those functions without any explicit return type can actually return integer?

Yes, this is for legacy reasons because in the old days the script compiler didn't do any type checking and assumed that all functions returned an int.

QuoteCan one of you upload a Before and After screenshot of a GUI with this problem in Final 5, and what it looked like with Final 4? I've tried to reproduce the problem but my test alpha GUIs look the same in both Final 4 and Final 5.
And as I asked, can you all please say if you're using Classic or AdditiveOpacity?

Just to reiterate this point -- I really want to release this Final 5 version as the 3.2 Official Release, but I don't want to do this while there is a potentially serious GUI alpha problem outstanding. Can anyone provide an example of the problem?
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: frogfrost on Wed 21/07/2010 00:47:23
You know what, to sanity check I just ran Plants vs. Zombies (which is 800x600) and it did it on that too, so it's not just AGS, so don't burn any energy on that one. The bars did look uneven when I booted it in 800x600 on AGS but it honestly could just be my monitor.

Thanks for at least considering it though!
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Stacy Davidson on Mon 26/07/2010 06:59:15
Quote from: Dave Gilbert on Tue 15/06/2010 15:33:52
I actually have upgraded!  I'm still using 320 x 240 sized graphics, but I'm blowing them up to 640 x 480 before importing them into AGS.  It's a bit overkill, true, but I like having a low-res game with high-res

That's funny, I was just thinking "why not just blow up the graphics?"  I sure as hell would not want to do that with an existing game (especially one the size of Resonance), but for a fresh game, sounds like a good call.  Not really an issue for me, Han Solo needs to be low-res all the way for the retro factor and Jack Houston is all high-res, but there are a lot of designers like you guys straddling the line between retro coolness and modern convenience.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: TM on Sat 31/07/2010 11:46:19
Here's what I get when two GUI Buttons with an alpha-channel image overlap as opposed to how it should look in a Photoshop mock-up:

(http://www.pressurecookergames.info/agsUIWeirdness.jpg)
The overlapping area is drawn much too dark. This is in Final 5 with AdditiveOpacity.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Shane 'ProgZmax' Stevens on Sat 31/07/2010 12:14:42
Interesting how it isn't just darker but actually makes the white line underneath it almost black.  If you look at the area inside the holes of the skull eyes you can see that it's almost universally darkening everything underneath it, even items that shouldn't be blended at all.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: TM on Sat 31/07/2010 21:22:16
Well, there is this slight black smoke-like shade underneath the skull that's supposed to be very subtle. On the left, you can see the sharp edge where the pixels begin to have some opacity.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: edmundito on Sat 31/07/2010 23:28:48
I found that game.speech_music_drop disappeared from the 3.2 "game variables" manual mage even if it's supported by the "old style scripting". By the way, what is the new equivalent for adjusting that?
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Sat 31/07/2010 23:35:47
theres an option in the Audio section of the editor which is on a per-file basis

I dunno if its availble at runtime
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: GarageGothic on Sat 31/07/2010 23:36:49
Quote from: Edmundito on Sat 31/07/2010 23:28:48By the way, what is the new equivalent for adjusting that?

Game.SetAudioTypeSpeechVolumeDrop
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Ryan Timothy B on Sat 31/07/2010 23:58:38
Alright. Perhaps the GUI alpha issues isn't a new issue. I tried it both with 3.2 and then the most recent release. Not sure why I remember it working properly in the first place when clearly it doesn't and didn't. Obviously using AdditiveOppacity.

This is what it looks like with an alpha channel background image on the GUI, and two overlapping alpha channel buttons:
(http://www.bryvis.com/entertainment/other/agsf/gui-bad-alpha-layering.png)

The GUI background image: http://www.bryvis.com/entertainment/other/agsf/transparent_piece.png
And the image for the 2 buttons: http://www.bryvis.com/entertainment/other/agsf/transparent_piece_shad.png

Edit: The only solution is to literally make those buttons their own GUI. And that can suck.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Tue 10/08/2010 17:24:14
Ok, so are you saying that the alpha behaviour doesn't the work the way you'd like it to -- but it does work the same way as in previous versions of AGS?

If that is the case, then 3.2 Final 5 hasn't broken anything that used to work, and I can go ahead and release it. The AGS GUI alpha behaviour can always be improved in a later version.

If you switch round which GUI button is on top (by using the Send To Back / Bring To Front options in the editor) does that affect the result?
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Ryan Timothy B on Tue 10/08/2010 19:37:41
Quote from: Pumaman on Tue 10/08/2010 17:24:14
Ok, so are you saying that the alpha behaviour doesn't the work the way you'd like it to -- but it does work the same way as in previous versions of AGS?
Yes. Sorry for being confused earlier. Maybe Calin also remembered it working properly before too? Unless he actually knows of a new issue. His post did sound quite confident.

QuoteIf you switch round which GUI button is on top (by using the Send To Back / Bring To Front options in the editor) does that affect the result?
Yeah it pretty much overlaps in the same manner as what I posted above.

It would be super cool if the alpha channel worked just like layers in Photoshop. I'm not sure which request for me is most important.
Alpha channels that work as expected on a GUI, or DrawingSurfaces fully supporting alpha channels.
Argh. Tough choice.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Tue 10/08/2010 19:40:49
RT, did you notice i provided a solution to the drawing surfaces thing?

Its a little inelegant but:

http://www.adventuregamestudio.co.uk/yabb/index.php?topic=41524.0
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Ryan Timothy B on Tue 10/08/2010 20:10:11
Yeah I did. I didn't check it out until now, though. It's actually quite impressive what can be done through a plugin, I hadn't realized.

I would still prefer it to be done through AGS. It's one of those features that I think should work out of the box. It's already half coded, it just needs that final addition.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Sadistyk on Wed 11/08/2010 06:56:44
Hi. I don't know if this is a bug, but when a character is performing a blocking walk (with the method Walk), he seems to ignore the regions (the region walk-onto event).
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Wed 11/08/2010 16:46:53
I double checked the original bug I mentioned. i.e 8bit alphas not working on buttons and it seems I was wrong.

They work when the background is transparent (i.e colour = 0)
but they dont work on a coloured background or a background image.

I think i got confused because it was essentially the opposite for font anti aliasing which worked on coloured backgrounds but not on transparent ones.
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Sun 15/08/2010 14:50:40
QuoteHi. I don't know if this is a bug, but when a character is performing a blocking walk (with the method Walk), he seems to ignore the regions (the region walk-onto event).

This is due to the way the script blocking works, it has always been this way and isn't an issue specific to the 3.2 release.

QuoteI double checked the original bug I mentioned. i.e 8bit alphas not working on buttons and it seems I was wrong.

They work when the background is transparent (i.e colour = 0)
but they dont work on a coloured background or a background image.

But can you please clarify if this used to work in previous versions and is now broken in 3.2 Final 5, or if it has never worked in AGS?

The recent fixes related to GUI alpha have been related to if you have an alpha-transparent background image on the GUI -- however if you have an opaque background and draw an alpha-transparent button on top of it then the alpha channel will be lost with both Classic and AdditiveOpacity, as far as I know AGS has always done this.
This is definitely an area for improvement but I don't think it's anything that used to work and is now broken?
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Calin Leafshade on Sun 15/08/2010 22:51:12
Sorry I wasnt clear enough.

I was wrong about it working in previous versions (I tested it again in 3.1.2). It has never worked in those circumstances
Title: Re: AGS 3.2 Final 5 - Recession-busting edition
Post by: Pumaman on Sun 15/08/2010 23:38:58
Ok, thanks.

So does anyone actually have any problems with 3.2 Final 5, with things that used to work ok in 3.1.2?

If not, I think this finally ready to be an official release!