AGS: Let's start over?

Started by Calin Leafshade, Thu 27/02/2014 09:32:17

Previous topic - Next topic

AGD2

I'm in full agreement with what Snarky and Stacy are saying. Building an entirely new AGS4 and discarding all of the coding tweaks and iterations that have been tried-and-tested over the past decade seems like an overly ambitious task which risks running out of steam before all those little touches could be fully tested and re-implemented. Even if an exact facsimile engine was created, it'd likely be many years before it saw full completion, by which time, the most ardent/serious AGS developers will already have moved onto Unity or other feature-complete engines. Additionally, for developers who have large, existing projects, a brand new AGS4 would pretty much put them dead in the water - being forever stuck in 3.3, unable to be updated and take advantage of the newer engine's technology/features. This would have a pretty severe impact on commercial AGS games that are already available on services like Steam, as outdated AGS titles could no longer be updated and will only grow increasingly incompatible over time; to the point where they'd eventually need to be removed from the sale on the service.

About backwards compatibility being broken: as someone who has several large AGS projects dating back to 2000, which use a crapload of legacy code, I can say that yes, it would be a pain in the ass to update huge amounts of it to new code that does the same thing in an enhanced engine. For example the day-night fading cycle in our Quest for Glory 2 remake relies on numerous legacy RawDraw functions that could introduce bugs all over the place if updated. However, even though this is the case, 100% backwards compatibility still isn't overly important to me. Any developer who has an affected AGS game, which they need to keep up-to-date, is going to ensure that their project is using the latest functions and update accordingly if they get compile errors. It'd take me what - maybe a few days at most to update all those legacy code instances to the new code and then maybe a week to test it all thoroughly. In my view, refactoring 3.3 and breaking backwards-compatibility for the sake of maintaining the sanity of those working on the code is preferable to having a brand new engine that I can't even update the game to at all. Besides, there will always be the 3.3 engine if people want to play ancient AGS games. It just doesn't seem to make much sense to make backwards-compatibility with "Larry Vales" take preference over the modern needs of the engine and its userbase, giving the programmers aneurysms in the process.

The problem seems to be information overload. Some people have suggested that AGS should be a fully-integrated development system that can handle all types of games if it is to have any future. But I'd argue that this makes it just another cookie cutter engine that robs it of CJ's vision and goes against what so many current developers rely on it to do well. Of the handful of devs who create serious games with AGS, is this really worth the time investment? And what of AGS's legacy - ostracizing existing AGS developers at the expense of attracting larger crowds doesn't seem like a good way to go and makes even less sense when there's no financial motivation to do so. Now, that's not to say AGS shouldn't eventually be capable of creating other types of games... just that this shouldn't be considered as a crucial priority until the source is in a more stable state. Lofty visions divert attention and misdirect focus. AGS shouldn't try to be too much too soon. There are other engines that cater to developing all sorts of games, but AGS is, and always has been, an adventure game tool - keep it focused.

My 2 satang: If I were approaching this the same way I usually approach working on a mammoth game project, I'd identify the biggest hurdle first, regardless of how mundane it is, and work through it to make a stable foundation for building other additions/improvements. And I would not stop until that's done. With AGS3.3, the current hurdle seems to be the daunting task of refactoring of the messy code. I know that's not a fun task, and seems like a lot of time-consuming work for little reward, but at the end of the process, wouldn't the result essentially be that we'd end up with a clean, enhanced version of 3.3 with all the same flexibility and functionality of the clean AGS4 that's being proposed? If refactoring the current code is being considered, then the focus should probably remain on achieving that goal without adding any new engine features until it's done. I think we could all agree to make that sacrifice if it meant this issue becomes a thing of the past.

Regarding crowdfunding and paying a programmer to refactor the source code, I think that could be a good idea. I know CW said that, as a community member, he's personally not comfy with the idea of having an obligation, and I understand where he's coming from. But on the other hand, with a programmer hired from Elance.com, where I have had some good experience, or a similar site (preferably where you can rate their performance and value for money) the "obligation for payment" aspect may be precisely what's needed in order to have this task taken seriously, and see the work get done in a reasonable timeframe. Most people here understandably can't invest huge amounts of time to AGS development because they work other jobs and treat this as a hobby. Whereas hiring an experienced programmer who would make this their day job for a few months would ensure that the job gets taken seriously. Of course, there would first need to be a decision made about the direction for the engine to go in so that a hired programmer could be given a definitive roadmap to follow.

miguel

QuoteRegarding crowdfunding and paying a programmer to refactor the source code, I think that could be a good idea. I know CW said that, as a community member, he's personally not comfy with the idea of having an obligation, and I understand where he's coming from. But on the other hand, with a programmer hired from Elance.com, where I have had some good experience, or a similar site (preferably where you can rate their performance and value for money) the "obligation for payment" aspect may be precisely what's needed in order to have this task taken seriously, and see the work get done in a reasonable timeframe. Most people here understandably can't invest huge amounts of time to AGS development because they work other jobs and treat this as a hobby. Whereas hiring an experienced programmer who would make this their day job for a few months would ensure that the job gets taken seriously. Of course, there would first need to be a decision made about the direction for the engine to go in so that a hired programmer could be given a definitive roadmap to follow.
+1

Count me in.
Working on a RON game!!!!!

Gurok

[img]http://7d4iqnx.gif;rWRLUuw.gi

Radiant

I don't get why people suggest that a new application is needed to support non-adventure games. AGS already supports non-adventure games; there is even a yearly AGS award for "best non-adventure game". I've seen platform games, RPGs, shoot-em-ups, puzzle games, and board games all made in AGS. So I'm really not seeing the issue here.

Knox

Quote from: Gurok on Sat 22/03/2014 16:34:31
Quote from: miguel on Sat 22/03/2014 16:30:41
+1

Count me in.

And my axe! (Or $100)

I'd be in too, and get people I know to contribute as well. Good idea!
--All that is necessary for evil to triumph is for good men to do nothing.

Atavismus

GD2, Miguel, Gurok, Knox, thank you: I feel less alone with the crowdfunding idea. :)
(As a french, I'm discussing on the french AGS forum if people would be ok with this idea.)

abstauber

But what motivates an unpaid dev, if everyone else gets a paycheck?

How about the bounty idea? Some people (or an indie studio *cough*) offer a bounty for a certain feature and freelance-devs can claim it by implementing the feature. In the meantime, the regular development continues as it currently does. Maybe with a bit less energy-drain from CW ;)

miguel

abstauber, I was thinking that maybe one or two paid devs should be enough to accomplish our goals. Not everyone. We would be paying for dedicated time into a project and it could be someone from the community, of course.
This is just my opinion, but unpaid devs motivation would be exactly the same.

Working on a RON game!!!!!

Snarky

#108
I also worry that paying for devs would demotivate open-source contributors, though that would be more of a concern if we had more active contributors. The bounty might be a better idea if we conceive it as an ongoing thing, but if the big problem is just "we need to refactor the code properly before moving forward, but refactoring is a ton of tedious work", that could potentially be a job we hire someone for. (Though of course we'd still need someone to actually look over the changes, probably even work out the desired code architecture before the hired hand could proceed.)

If this happens I would certainly be happy to chip in.

Crimson Wizard

#109
Post deleted.
Sorry, nevermind.

frenzykitty

Quote from: miguel on Sat 08/03/2014 11:56:29

I say that only a small percentage of (ANY engine, unity, game maker, etc) users are capable of releasing good games. And add to that saying that IT IS NOT the engine that makes good games but the people and their work.


PREACH BROTHER MIGUEL! (nod)

miguel

Working on a RON game!!!!!

SMF spam blocked by CleanTalk