AGS 3.2 Final 5 - Recession-busting edition

Started by Pumaman, Sun 03/05/2009 15:34:47

Previous topic - Next topic

Divon

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

monkey0506

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

Matti

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.

Divon

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.

Pumaman

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.

abstauber

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 :)

Pumaman

Thanks for uploading, it seems to happen if you save while the music is crossfading. I'll get it fixed.

abstauber

Wow, that's what I call fast :D Thanks!

frogking

#288
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.

Crimson Wizard

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.

Pumaman

#290
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...

Crimson Wizard

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?

Sadistyk

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

GarageGothic

#293
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:

Code: ags
while (IsSoundPlaying() != 0) Wait(1);


and see if that works better. If sound/music is disabled it should always return 0.

Ryan Timothy B

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.

Crimson Wizard

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.

GarageGothic

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)

monkey0506

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?

Sadistyk

I tried the Display function thing, and yes, it loops there.

Crimson Wizard

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

Code: ags

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*.

SMF spam blocked by CleanTalk