AGS 3.2 Final 5 - Recession-busting edition

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

Previous topic - Next topic

subspark

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

Calin Leafshade

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?

subspark

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.

Dualnames

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.
Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

Misj'

#404
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? ;)

subspark

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.

Misj'

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

xenogia

#407
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?

Calin Leafshade

^^^^^ agreed. Nothing should be 'demanded' or 'opted for'.

just suggested.

subspark

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


Pumaman

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.

Dualnames

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.
Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

Calin Leafshade

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.

GarageGothic

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.

subspark

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.

Alan v.Drake

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

subspark

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.

Shane 'ProgZmax' Stevens

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.

Vince Twelve

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.   :'(

Shane 'ProgZmax' Stevens

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

SMF spam blocked by CleanTalk