Does it make any sense to develop AGS further?

Started by Crimson Wizard, Thu 13/04/2017 19:10:09

Previous topic - Next topic

Crimson Wizard

Seriously, does it? It will soon be FIVE years as I work on it, and haven't yet reach much of the goals we set up when we started. It is still old tech, still mostly software drawing, still no unicode support, and so on and so on.
And project is practically dead. with nearly zero organization, no planning, and no one willing to contribute.

Am I using my time for good purpose, or just wasting it? The efficiency of my work here is incredibly low. People are leaving for other better engines all the time.

For example, there is this Adventure Creator for Unity. I think it was made by people who once worked on AGS games:
https://www.youtube.com/watch?v=HcvbProVHEg
https://www.youtube.com/watch?v=1_CLWnDNNZA

It already has much much more than AGS.

And what I do seem to be simply stupid.

Yes, maybe I can try to force some more stuff in AGS, but what's the point? I will never be able to do anything even closely as good.


I think, the only reason why I am still here was that always felt the urge to prove that I can do something good. Since I was failing to reach the defined goals, it kept backfiring. In the end, I feel like I gained nothing from this work, except for endless frustration and despair.

I need to find some other work to put my efforts to, where I would be more productive.

Slasher

Crimson,

everybody here admires your efforts to make improvements.. no mean feat i'm sure..

Sometimes we just don't realise the beast we take on. We just need a really stable version and no more...after that you should retire for you own sanity...It's not like you have a very reliable team to work with... so don't feel obligated... If we can get to a very stable 3.4/5 version then stop there and jump the cart....you will have truly done your bit...

Do what is best for YOU...

slasher


abstauber

Strange... every time I decide I stay with AGS (after having evaluated other engines), you post a statement like this.

Let me tell you, why I always come back.

Common awesomeness:
- AGS compiles results, which are very easy to distribute
- Comes with a IDE/Editor which includes syntax highlighting and breakpoints
- Editor is completely portable.
- Although in small steps, it is getting better and better (VSync, OpenGL, Linux Compiler etc.)


Compared to PyGame:
- Functionality for non adventure games almost equal equal since we have can have full access on surfaces and controls
- No nice and free IDE (apart from Eclipse)

Compared to Unity:
- Size: A simply AGS game can be 2 MB, a simple Unity game at least 30 MB
- Learning curve: Unity can do it all. But you have to learn a lot of new concepts. Dealbreaker: No integrated IDE as I can't install VS on my machine.
- No offline installer
- In the rare case of my game succeeding, Unity wants a fee (although the pricing feels fair)

Compared to GameMaker:
- ridiculous pricing model for mobile platforms
- also some contains dated elements like AGS

Compared to Godot:
- Script compatibility seems to break for each major release
- Documentation is average at most

Compared to Unreal Engine:
- mainly, see Unity. I can't even install this behind a corporate proxy

Scirra Construct:
- Yearly fee (100$) for the editor with the beginning of version 3.0
- HTML5 output (v2) So offline distribution would need something like Nodejs.

So far, these are all the things I tried or evaluated, but AGS is still the best in class for my needs.

Of course it's selfish: you (Gurok etc) have all the work, and I'm having the fun without ever paying anyone back. All I have is my gratitude that you didn't leave this dying five years ago (nod)

[delete}

It has been a great time ever since. Thank you!

Crimson Wizard

#4
What I mean, maybe there are better ways to continue from this point?

I've mentioned some possibilities before. Write a completely new barebones engine that would try to load and simulate game made in AGS as close as it can. Or help creating a free adventure framework in Unity (although I guess Unity has mentioned drawbacks)...

I was just thinking, maybe I could do more if I helped other people with the adventure engines they were creating to substitute AGS.
Of course, if they are still doing that.

Mandle

Quote from: Crimson Wizard on Thu 13/04/2017 19:10:09
People are leaving for other better engines all the time.

And new faces are also joining all the time.

MiteWiseacreLives!

If there were some epic AGS ++ rewrite that had backwards compatibility, the power/portability of modern engines, the nice scripting and the editor of AGS 3.4 (and the support of the community..) I would be all over it.
Is this even reasonable  ??? I don't know.
CW, what you've spearheaded with AGS the past few years has been terrific.
What AGS has, besides a great little engine, is the community. I think perhaps coding the backbone is your passion, but I can't help but think that you would be an incredible asset to a team building the next great AGS adventure. Maybe seeing a game through to finish, along with a team, would give you the sense of accomplishment your craving?

Radiant

Quote from: Crimson Wizard on Thu 13/04/2017 19:10:09Seriously, does it? It will soon be FIVE years as I work on it, and haven't yet reach much of the goals we set up when we started

In the past five years, your work has enabled people to release at least 577 AGS games. That's how much of your goal you've reached; do not underestimate it.

Crimson Wizard

#8
Quote from: Radiant on Fri 14/04/2017 08:15:50
In the past five years, your work has enabled people to release at least 577 AGS games.

That's not necessarily related to what I did, they released them using editor that already existed.

Besides, that's not the point... I cannot get over the time I wasted doing things that could be done much easier. And lots of things that had to be done, but never completed.

Slasher

Seriously Crimson,

trouble is is that you keep releasing unstable versions and have to make patches to fix issues found. All new beta versions should be strictly beta tested privately by a group of competent testers only.. Only with their full seal of approval should it be released. Until then keep it under wraps and let people only download the last stable version.

At least that way you are not put under as much pressure as people can continue to download last stable version and you can manage your time more manageably. That is until a new version has been approved and released. In which case you can step down knowing that the last version is stable or very close... Who cares if the next stable version takes 2 years?

But I can imagine how you feel...


Radiant

Quote from: Crimson Wizard on Fri 14/04/2017 09:06:43
That's not necessarily related to what I did, they released them using editor that already existed.
Yes, that is the point. The fact that you've been supporting this relates to having substantially more games released.

Blondbraid

I think AGS is a great engine for amateurs and beginners such as myself, I've tried doing a few things with Game Maker and Unity
but the number of options did feel a bit overwhelming at times, and to this date, the games I've made in AGS are the ones I actually
completed. AGS is easy to learn and most of all, it has a great community around it as well.


Danvzare

Quote from: MiteWiseacreLives! on Fri 14/04/2017 05:59:25
If there were some epic AGS ++ rewrite that had backwards compatibility, the power/portability of modern engines, the nice scripting and the editor of AGS 3.4 (and the support of the community..) I would be all over it.
Is this even reasonable  ??? I don't know.
An engine like that would be possible... but it most certainly would not be free.

Quote from: Radiant on Fri 14/04/2017 10:47:00
Quote from: Crimson Wizard on Fri 14/04/2017 09:06:43
That's not necessarily related to what I did, they released them using editor that already existed.
Yes, that is the point. The fact that you've been supporting this relates to having substantially more games released.
Exactly. Had it not been for you, this editor would probably be practically dead by now, as everyone would have had to move onto other engines for compatibility reasons.

Now to answer your question as to whether it still makes sense to develop AGS further.
My answer is yes. People still use it, and it's currently still the easiest and most accessible way for a beginner to make an adventure game.
Not only that, but people still use it to make commercial adventure games. Maybe in about ten years, AGS will become too old to be a viable choice to make a commercial adventure game, and when that day comes I doubt it will make sense to develop AGS further. But as of right now, AGS is still alive and kicking.

Whether or not you want to continue working on it, is your choice though.

Mehrdad

Hey CW

Frankly I use Clickteam Fusion  for my games at the moment . But in other side I work with AGS too . My AGS game process is slow because I have unicode font problem for my native language and more important for export to other platforms .

I promise give up other engines and stick to AGS and even with any pay if it support Android, iOS , Mac from editor or easily method not by GitHub . I'm not good programmer but I'm good designer and developer .

Please think for make AGS as commerical engine . It's will be good encourage for your developers . Start it for 100 $ to up ... AGS is lovely and worth it .
My official site: http://www.pershaland.com/

m0ds

#14
You've been working on CJ's engine for years now. As you know, a lot of people support a re-write from the ground up, effectively - AGS - but made your way, with your ideas and structuring. AGS is very much still "the little engine that could", it'd be nice for it to grow up and become professional. You know, so we can all be the proud parent...! (even CJ if he hasn't been stomped by a kangaroo yet). This also includes some of the community side of things, let's just say some folks would need to get on board with positive change, and leave this "CJ doesn't want any money for it" approach abandoned to the 2001 era it originated from, and if they can't support it, step down and let others who can see that AGS progresses rather than fizzles away. Outside of AGS, AGS games have likely grossed several million dollars. Has the community or engine developers seen any of this, have they f***! The engine and the community need an overhaul, not just one or the other. And no-one ever took a risk without accepting it could fail or falter, but often get the impression round here that people prefer a 'development safe space' that the pre-existing engine has provided you and us for 5 or 6 years. One day AGS and community will need to step out of its comfort zone, or the net will be left with an unsupported engine, and an AGS homepage that was designed 30 years ago... ;)

dactylopus

#15
I'd fully support a complete rewrite to bring AGS into the modern era.  That said, I would hope that it would work essentially as it does now.  What I mean is that the editor and language would carry over largely untouched so that the process of making a game changes very little.  A few tweaks, and maybe even incorporating some modules into native code, would be more than welcome.  Allowing to publish to modern devices (iOS, Android, XBOX One, PS4, Nintendo 3DS / Switch) would be a real feat.

I think that the lack of financial risk is a huge reason that so many people continue to pick up and use AGS.  The other reason is that it's fairly easy to use and learn.  I believe that anyone willing to do the work to bring such an engine to life is deserving of compensation.  Still, a new, modern AGS should strive to maintain the principles that brought us a free engine.  Everyone is used to a free download.  I don't think it should stay free, but it should remain a budget friendly option.  $100 would be too high, and price many people out of a download.  $10 is quite affordable, but doesn't really generate substantial revenue.  I'm sure there's a reasonable middle ground pricing structure.  Maybe even charging a small fee (like $1) to place your game into the database could help.

Either way, there's nothing to be ashamed of.  The work done on this engine over the past few years has been great, and I thank everyone involved for their efforts.

LimpingFish

Quote from: Screen 7 on Fri 14/04/2017 16:18:50
This also includes some of the community side of things, let's just say some folks would need to get on board with positive change, and leave this "CJ doesn't want any money for it" approach abandoned to the 2001 era it originated from, and if they can't support it, step down and let others who can see that AGS progresses rather than fizzles away. Outside of AGS, AGS games have likely grossed several million dollars. Has the community or engine developers seen any of this, have they f***! The engine and the community need an overhaul, not just one or the other. And no-one ever took a risk without accepting it could fail or falter, but often get the impression round here that people prefer a 'development safe space' that the pre-existing engine has provided you and us for 5 or 6 years. One day AGS and community will need to step out of its comfort zone, or the net will be left with an unsupported engine, and an AGS homepage that was designed 30 years ago... ;)

No sugar-coating there, m0ds! :=

Maybe the attraction of AGS is its no-barrier entry point and its free-wheeling community.

Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Snarky

You ask for opinions, you get a dozen different answers, many of them contradictory. :-\

You've been around these parts for quite a few years. You know the engine, you know the community. You're as well placed to answer your own question as any of us. Better placed, even, for the part about whether it makes sense for you.

m0ds

#18
QuoteMaybe the attraction of AGS is its no-barrier entry point and its free-wheeling community.

It is indeed attractive that you, I and everyone else don't have to do anything, and just leave all the work to CW. You're right! ;) Attractive, but not very fair...?

Heh, no sugar coating. But this is what, the 3rd, 4th or maybe 5th time CW has raised these concerns? I wonder how many times a concern has to be raised before people start to listen. Like, how many times does your kid need to tell you they're being bullied before you do something about it? That kind of thing (obviously not quite the same scale, but certainly the same principle). Clearly, telling CW he's doing a great job every time he raises this concern isn't actually cutting it in terms of a solution.

It's devs that unlock AGS' potential. It's high time it started to unlock some of its own. But then, I've been for the commercialization of AGS (in some respect, I still want to be able to use it for free!) since 2001. Like dactopolys says, there are things that can be offered aside the engine to help stimulate some kind of AGS economy. And plenty of other people have been on board with that sort of thing for just as many years. I just find it shocking that it doesn't do anything for itself. For the people who work on the engine. They get gratitude, we get hard cash. I know how I'd feel about that if I was CW, lol... When was the last time this community raised funds for anything, charity or servers? 5 years ago wasn't it? I'm really not sure how posting opinions on a forum and doing zero actionable things makes a community "great". But that's just me, all out of sugar ;) I suppose it is fine as it is, currently, but it could be that one day, it isn't, because people left it heading down the wrong direction, one that ends with an engine no-one is working on or rather, willing to, because AGS "the institution" doesn't do enough for itself or for others.

Joseph DiPerla

I've been in this community for years. Last few years I just been mostly an observer. I have been mostly looking into Unity for it's portability to multiple OS. I think that is my only gripe with ags currently. What if we started from scratch and made a free Unity toolkit, 2D and 2.5d support only, with the ability to import and convert ags projects as well as a backwards compatible VM and save system. Instead of charging, maybe we can do an indie gogo or Kickstarter campaign. Either way, CW, you did tremendous work.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

dactylopus

It's been talked about before, but a crowdfunding campaign to raise funds for a new, updated AGS is actually a really good idea.  I'd be more than willing to throw some cash at a new product that was up-to-date and competitive in terms of features, and I know I'm not the only one.  And the people working on AGS deserve compensation, especially if they are willing to devote the time and resources to spearhead the development of an up-to-date version of the engine.

The biggest point against AGS is the lack of export features.  These days there are so many ways to distribute games, from handheld devices, consoles, different PC platforms, and the web.  That AGS is not able to export to these various platforms means that developers are likely to leave and pay money to develop their game on a competing engine.  People have gone out of their way to develop module and plugin assets for GameMaker, Unity, or other engines that replicate what we can already do natively in AGS.  Aside from that, there are some things that AGS does not do natively that other engines can do.  Parallax Scrolling is one example from the video linked above about the Adventure Creator, and even that does not provide a Dialogue System.  There is money in these assets, so there is obviously a market for an updated AGS engine.  And yes, it costs money to create a new version with these export functions and modules as native capabilities.

A Kickstarter or Indiegogo campaign, maybe even a supporting Patreon afterwards, would go a long way towards helping to fund a "Next-Gen" version of AGS.  Additional monetization features could include things like the aforementioned $1 charge to upload to the database.  It is conceivable that a future AGS website could actually host game files, maybe even create a marketplace in which AGS games could be sold.  Having said all of that, remember to keep everything competitive.  As I said before, AGS has traditionally been a free platform for development.  If you can offer the base engine with Windows and Mac exports for something like $50, that would be reasonable and competitive considering the market.  Add exports for around $10 a piece, or a version that contains all exports for about $100.  I'm kind of spitballing here, but I don't think that these prices are unreasonable to pay, nor do I think they are too small to make it worthwhile.  I think it's a great compromise model that would prevent Adventure Game developers from going to alternative engines like GameMaker or Unity.

I admit that I'm looking at this from the point of view of a consumer, and someone who has only completed one small AGS project, but I'll also bet that many who chose AGS as their engine did so from a similar perspective.  If not that, then the nostalgia of Adventure Games or the community drew people to the engine.  All of these things could still be huge factors in an evolved AGS, in my opinion.

Snarky

#21
Quote from: Screen 7 on Sat 15/04/2017 01:39:50
Heh, no sugar coating. But this is what, the 3rd, 4th or maybe 5th time CW has raised these concerns? I wonder how many times a concern has to be raised before people start to listen. Like, how many times does your kid need to tell you they're being bullied before you do something about it? That kind of thing (obviously not quite the same scale, but certainly the same principle). Clearly, telling CW he's doing a great job every time he raises this concern isn't actually cutting it in terms of a solution.

Right, people don't listen. Like how he has also repeatedly stated that he's not interested in getting paid and don't see it as a solution, but somehow every time this topic comes up that's what some people keep harping on.

For example:

Quote from: Crimson Wizard on Mon 01/02/2016 12:06:49
You bring everything to payment. I find this terribly annoying. This never had anything to do with payment.
It could have if I knew that I was doing things right. But I didn't. So this is not an issue.

dactylopus

Quote from: Snarky on Sat 15/04/2017 07:00:30
Quote from: Screen 7 on Sat 15/04/2017 01:39:50
Heh, no sugar coating. But this is what, the 3rd, 4th or maybe 5th time CW has raised these concerns? I wonder how many times a concern has to be raised before people start to listen. Like, how many times does your kid need to tell you they're being bullied before you do something about it? That kind of thing (obviously not quite the same scale, but certainly the same principle). Clearly, telling CW he's doing a great job every time he raises this concern isn't actually cutting it in terms of a solution.

Right, people don't listen. Like how he has also repeatedly stated that he's not interested in getting paid and don't see it as a solution, but somehow every time this topic comes up that's what some people keep harping on.

For example:

Quote from: Crimson Wizard on Mon 01/02/2016 12:06:49
You bring everything to payment. I find this terribly annoying. This never had anything to do with payment.
It could have if I knew that I was doing things right. But I didn't. So this is not an issue.

In that case, then I would say that CW may in fact be wasting time continuing his attempts to develop AGS.  There's really nothing more that can be done with the current engine (outside of creating a stable version of what we have, if possible) as long as the following is true:

Quote from: Crimson Wizard on Thu 13/04/2017 19:10:09
It will soon be FIVE years as I work on it, and haven't yet reach much of the goals we set up when we started. It is still old tech, still mostly software drawing, still no unicode support, and so on and so on.
And project is practically dead. with nearly zero organization, no planning, and no one willing to contribute.

Am I using my time for good purpose, or just wasting it? The efficiency of my work here is incredibly low. People are leaving for other better engines all the time.

So then there's this portion of the post:

Quote from: Crimson Wizard on Thu 13/04/2017 19:10:09
Yes, maybe I can try to force some more stuff in AGS, but what's the point? I will never be able to do anything even closely as good.


I think, the only reason why I am still here was that always felt the urge to prove that I can do something good. Since I was failing to reach the defined goals, it kept backfiring. In the end, I feel like I gained nothing from this work, except for endless frustration and despair.

I need to find some other work to put my efforts to, where I would be more productive.

If that's truly what it feels like to continue to work on the current engine, then please quit.  You've done a great job, despite what you may feel about those heights you were unable to reach.  I would also prefer that you found something better suited to your talents.  If that's not going to be building a new version of AGS, that's OK, I hope that you find some work that is satisfying to you.  I'd love to recruit you to work on some of the overly ambitious ideas I have, but I'm nowhere near far enough along to initiate that and I'm sure there are more capable and rewarding options out there for you.

If I'm off the mark, then maybe I just don't understand this post.  It poses a question, but seems to be more of a statement saying that CW has done as much as he can with this engine and that there are currently better options available.


Joseph DiPerla

Snarky, this line here from what you posted, unless I am misreading it:

"It could have if I knew that I was doing things right. But I didn't. So this is not an issue."

Seems to tell me that if he felt he had a superior product he was working on that  he would then feel comfortable being paid for AGS. If it's not that, then scrap it. No need for a kickstarter, no need to pay anyone. But at the same time, CW requests help, assistance and a team. Perhaps "They" would like to be compensated for their work and that makes sense. So for me, in order to keep that in line with what CJ originally intended for AGS: To keep it free to use as we pleased, maybe crowdfunding is the way to go with this to hire assistance.

Honestly, I see AGS as a complete engine now as far as features go with the exception of very few things. For example, we need a stable bug free version which can be developed in time. People seem to want a multi-platform Editor. There are lot's of ways to go with this, such as a web based editor made of HTML, Javascript and CSS. Or we can use Wine to emulate the software. A big hick up is the fact that the engine is not easily created to export your games to other OS. I haven't paid to close attention, but it seems that the Mac port is having some issues. PSP has since been abandoned. iOS and Android seem to be somewhat working, but no easy way to export the games to those OS, particularly when it comes to Expansion files. And there are other marketable OS that are still nowhere near being ported to. Had these issues however been taken care of, a lot more users would be using AGS and quite frankly, would make this a modern engine for a good 5 to 7 years. But CW seems to be unsatisfied personally with the coding conventions and such in the backbone of AGS.

With that being the case, I personally feel that we would need to embrace the future: a)Either give up AGS entirely - which would be sad as I believe the best game developers here are AGS Developers and love playing these adventures more than the ones made on other engines. b)Rewrite AGS from scratch. c)Move to a more popular platform such as Unity.

The way I see it, Unity will always be free to use and sell games up to $100K. They will always keep updating the core parts and pieces of the engine so the developers wouldn't have to. They can support cloud building and porting to all the needed OS. And there are a lot of plugins and services that a user can allow to be used with AGS for Unity. My concept would be to create an editor that looks and works very much like AGS does now, allows importing projects from 2.7 and above and keeps all the features already there as well as expand and add new ones. At the same time, a VM can be built into it to play all versions of AGS so that we can still use PlayAGSGame function within a game for use of mini games. Unity uses it's own proprietary scripting engine as well as Javascript and C#. And quite frankly, I can see it being too difficult to port AGS Script as an internal scripting language anyway. This would mean that AGS could have more powerful scripting, no limitations and higher/easier portability. Not to mention that Unity has an editor available for Mac as well and the fact that Unity is not going anywhere. Exposing AGS to the Unity community as an open source project would also mean that you are opening yourself up to a whole new world of developers that can help with development.

To me, option B or C or what I prefer. C mostly. But if we go with A, who am I to stand in the way.

And yes, we say CW did a great job because, well: HE DID. So great job again CW and thank you for all your help. I do hope you reconsider, but you also have to be happy. In the meantime, I do believe there are others who can still step in for a little until a decision is made or the project is scrapped, like Monkey or Gurok.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Snarky

We have this discussion every 6 months, so instead of delving into old arguments again I'll try to be short:


  • Crimson Wizard, if working on the existing AGS codebase makes you so frustrated and depressed, for God's sake stop!
  • If you do want to build a new engine from scratch, either as a standalone or on top of Unity (or some other framework), you can count on our moral support.
  • If financial support would help, there are a number of us who are willing to chip in.
  • However, I wouldn't realistically expect that starting over would somehow fix the problem with lack of concrete developer contributions: it would probably still fall mostly on you and a couple of others from time to time.
  • ... that also applies to the design of the architecture/API/editor â€" any attempt to crowdsource what a new engine should be like will inevitably devolve into a hundred incompatible opinions with no overall vision.
  • I also think that making AGS no longer free would be a major mistake, and perhaps the one thing the engine/community might not survive.

Mehrdad

AGS only want exporter to Mac,Android,iOS from editor .That's all. No need to write from scratch and so on. It's individually quite and great tool with high fps.
CW, Gurok ,Monkey , Nick,Janet...Please open a plan for AGS to commercial.

100$ is really great for the best adventure game engine with 4 main platform exporter . Please see other engines with their huge prices .

Problem Solved.
My official site: http://www.pershaland.com/

Crimson Wizard

I am sorry, it looks like I cannot hold myself at times, and this leads to those repetitive threads. I guess I am desperately looking for a help, or advice, but then not able to get ones that would suit me. Or is it because in the end I am always working on my own...

So, yes, I guess I will just stop here and work on something else.

m0ds

#28
Hold up. No need to quit the conversation just because it bothers Snarky. He may not want to discuss it more than once, but some of us are happy to.

If you could perhaps list the things that you enjoy about working on AGS and the things you do not enjoy, we could understand a little clearer your outlook on AGS as a project and look into the problem areas and their solutions, before resorting to things like commercialization, yadda yadda. You mention a lack of help perhaps? That's something for the not enjoy list...?

There is absolutely no harm in this conversation (or you registering your concern) once, twice, a hundred times. This community revolves around the work you do on the engine, don't let anyone convince you of it being any other way, or that your desire to find something that keeps you attracted to the work, as a "lesser" discussion here. And that goes to you too Snarky - stop shutting people's opinions and discussions down, you are predictably good at it.

CW, you mentioned people abandoning AGS for other engines. I saw this picture on twitter, and it reminded me that choice is an excellent thing, hopefully as applicable to you with your work on the engine as it is for me and my work on a game.


Snarky

How am I shutting down the discussion? I just explained why I don't want to get involved in a long back and forth over the merits of various proposals. I've said my piece, and everyone is free to talk to their heart's content.

Adeel

Quote from: abstauber on Thu 13/04/2017 20:17:37
Compared to PyGame:
- Functionality for non adventure games almost equal equal since we have can have full access on surfaces and controls
- No nice and free IDE (apart from Eclipse)

What about Spyder?

Joseph DiPerla

First off, Snarky, I wanted to say that I just saw your description under your avatar: "Private Insultant". AWESOME!

Back on track. It sounds like there is a reasonable amount of developers available to work with AGS. What I do notice too is that there are some games being developed that obviously come from customized versions of AGS(Wadjet Eye Games). Others seem to create their own versions of AGS rather than contributing to the main engine(Draconian). Maybe I am wrong about that? I know that in the past CW tried to incorporate Draconian features into AGS and at some point Janet released or gave us some idea of what they did with their ports. And it seems these changes are privately made due to rushing their projects along quicker than the official development team can and that is understandable.

But I think it would be more productive that if those who worked on their own versions of AGS would instead contribute to the official development. CW, if you do change your mind, you asked for advice. So here is my advice: You have AGS 3.4.1 released. Stabilize it and get rid of as many bugs as you can satisfy. Once done, pick ONE goal you want to achieve next with the engine. Don't add features. Did you want to change it over to SDL or Allegro 5? Make that the goal and specifically handle that until it is completed. Do you want to port to other OS? Then focus on that. The feature list of AGS is still advanced enough that it does not require so many little additions to be added. So stop working on that and focus on ONE big goal and get everyone involved to help you achieve it. I think you mentioned that you hoped that the ports were working properly before continuing on anything else. If I can ask, how difficult would it be to move the project to Allegro 5? It seems to have an updated core system and can be ported to various OS with less effort than it would to do it with 4.2. Looking at it's feature set, you might be able to add new features far quicker than before. I am not a C++ programmer and honestly, at the moment I am working on my Star Wars RPG and a couple of text adventures and apps. But I would love to know that if I decide to ever actually make an adventure game, AGS will still be here.

I have used Visionaire, Adventure Creator, Wintermute, Sludge... All great in their own way(Yum Cake as was mentioned above). Adventure creator best of that pack. Superb engine. But it is $70 and even though it has a "no programming necessary" approach, AGS is still easier to use believe it or not. And AGS 2D Features for a 2d Point and Click game are amazing and more advanced in my opinion.

Just my thoughts.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Andail

We (read Joel) use Ags and since Joel is a real game programmer who used to work with big game companies I can only assume that Ags is useful in ways other engines/studios aren't.
I know that CW repeatedly claims money isn't issue, but mayne a yearly or biannual thread of appreciation and recognition is enough, because if the question is simply "do people use it?" then the answer is clearly yes. So maybe getting pro developers to pay money is an idea that at least hasn't been tested. I'd be up for it. Those interested in maintaining and working with the engine for money could then do so.

Crimson Wizard

Quote from: Joseph DiPerla on Sat 15/04/2017 17:29:58What I do notice too is that there are some games being developed that obviously come from customized versions of AGS(Wadjet Eye Games).

As far as I know, Wadjet Eye's version is only different in the sense that they have an OSX/iOS ports being continiously updated and fixed in their branch. Other than that, they are using the official engine core, and keep merging with latest versions. Even when I was speaking with Janet about some of her requests, she said that her wish it to have these developed inside official version; and ones that were completed actually ended up there.

Hobo

Quote from: Crimson Wizard on Thu 13/04/2017 19:10:09
Does it make any sense to develop AGS further? It will soon be FIVE years as I work on it...
Lots of things don't really make any sense when you think about them too hard, yet people still do these things and even keep fighting for them.
But has supporting and developing the engine during these 5 years been useful and beneficial? Absolutely. I think it's one of the reasons this community is still active and still attracting new people. Personally, I would not make a commercial game with AGS 3.2.1, but thanks to all the added features and little adjustments, the latest AGS versions feel like legitimate options. Obviously it would be helpful (at least for me) is this sort of development continued, but no one should feel or be obligated to do so, especially for free or alone.

I feel very unsure about a paid version of the engine itself as some people are suggesting, but I'm all for crowdfunding, donations, patreon or a licencing fee for commercial products if there's a reason for it and the money is used purposefully.

LimpingFish

Quote from: Snarky on Sat 15/04/2017 15:07:05

  • Crimson Wizard, if working on the existing AGS codebase makes you so frustrated and depressed, for God's sake stop!
  • If you do want to build a new engine from scratch, either as a standalone or on top of Unity (or some other framework), you can count on our moral support.
  • If financial support would help, there are a number of us who are willing to chip in.
  • However, I wouldn't realistically expect that starting over would somehow fix the problem with lack of concrete developer contributions: it would probably still fall mostly on you and a couple of others from time to time.
  • ... that also applies to the design of the architecture/API/editor â€" any attempt to crowdsource what a new engine should be like will inevitably devolve into a hundred incompatible opinions with no overall vision.
  • I also think that making AGS no longer free would be a major mistake, and perhaps the one thing the engine/community might not survive.

This.

I think it's a fallacy to equate a renewed AGS with a renewed community or a sudden influx of developer interest.

To be honest, I don't get you're being so tough on the current state of AGS, engine and community, m0ds. As far as I know, there was never a proposed road map to take AGS from a hobbyist platform to some form of commercial development "brand", like Unreal or Unity. I get that you'd like to see such a change, but that doesn't mean that it's automatically right or logically inevitable. Just because some people who developed freeware adventures in the past now produce commercial products, shouldn't mean that the whole community should aspire to do so, or that not doing so makes them short-sighted procrastinators who are holding everyone else, and the engine, back. It's also doesn't mean that those with commercial aspirations should be bound to using AGS, when they might find other, more suitable engines elsewhere. If their project outgrows AGS, then it would make more sense to find a new engine, rather than demand AGS wrap itself in knots to try and accommodate them. Some may see this as a negative attitude, or a lack of vision, but...hey.

AGS is open-source, and has been for some time now, so there's no stopping people from developing their own branches with features that interest them. If we are to continue an "official" build of the engine, we'd probably do well to strip out all the suggested features and improvements that haven't been given at least cursory implementation, and steamline the development process to something achievable.

I think Crimson Wizard, if he is to stay, would also do well to set some form of finish line for the 3.x build.
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Calin Leafshade

I know I haven't been around for a while but the main reason I come back to AGS every so often is simply the speed I can get results.

Adventure Creator has the same problems every other unity frankenstein has: butchered concepts to fit a use case.
Scripting in adventure game engines is always hard because you essentially have two threads of execution, the game logic and the engine logic.
AGS's solution to this is just so damn easy to work with.

You want that in Love2D? you need coroutines.
Want that in Unity? Coroutines or threads.

In AGS you just chain your commands and you're golden. If you want some concurrency you can use rep_ex_always. It's just so fucking easy.

There are people who have made good games with AGS who don't know their arse from their elbow when it comes to programming and there is just no other engine in which that is possible.

The strength of AGS doesn't lie in its antique codebase, it lies in the fundamental design choices.

What you need is AGS4. (4GS?)

Danvzare

I keep hearing people harping on about wanting a rewrite of the AGS engine. A commercial one, which costs money and so on.
And all that keeps coming to mind is that there already is one. It's called Visionaire Studio. Has everyone forgotten that, or is there something wrong with that engine?

Joseph DiPerla

It's not as good. And it's licensing scheme is absolutely ridiculous.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Problem

#39
Let's assume for a moment that money is an issue - Crimson Wizard says it isn't, but let's pretend for a moment that it is. People asking to sell AGS don't seem to know how this open source thing works. A commercial version of AGS would pretty much split the community. The current version of AGS is open source and free, and that can't be undone. Not sure about the licensing details, but there are many contributors, so selling anything that's based on the old code would be making money from other people's work. Okay, so it would have to be complete rewrite then. But then the old version wouldn't disappear. Maybe some commercial developers would buy this rewrite, but most hobbyists would just continue using the old version, because it still does the job well and it's free - so why would they buy a new version? Maybe some people would even keep maintaining the open source version. The end result would be two different AGS branches with two different user bases - do we really want that? And I'm pretty sure the commercial version wouldn't sell very well in this situation.

So if money is an issue (again: Crimson Wizard says it isn't), then donations, Patreon, Kickstarter etc. would be the only options that make sense to me - collecting funds for a new open source version. Not sure if this would be enough. But in my opinion selling AGS itself would do more harm to the community than it would help.

I have no idea if anyone would be interested and willing to start a new (free) AGS from scratch. But let's face it, the developer(s) are struggling, because the AGS code base seems to have reached its limits. That's not a bad thing, because for most non-commercial developers AGS still works very well, and that won't change any time soon, so there's no need to panic. Maybe starting from scratch is only way out of this situation. But in my opinion, for reasons mentioned above, a commercial version is not the way to go.

Clarvalon

I don't have much to add other than to empathise with CW's position - it's difficult to maintain a constant level of motivation while sinking years of effort into a long term project.  The difference here is that CW also has the added weight of expectation from an active community.

While it's fair to say that my own engine has converged with AGS further, especially in the last twelve months, it still only supports a subset of functionality and almost certainly will never be a full reimplementation.  There's lots to do and never enough time!
XAGE - Cross-Platform Adventure Game Engine (alpha)

Retro Wolf

I'm not familiar with the inner workings of AGS so forgive me if I misstep.
I don't think AGS really needs any new features, consider just fixing the odd bug that pops up and keep it compatible whenever Microsoft releases a new OS (not forgetting Linux).
If in the future someone else comes along wanting to take over the engine, they want to add new features that's fine.

The most important thing about AGS is its community, why not make it more engine neutral? If somebody has created a Unity/Game Maker/Monogame plugin for making adventure games, why not allow them a sub forum?

m0ds

Someone needs to be. AGS needs its critics. But I'm not slapping price tags on things, I'm pointing out that commercialization in some form could be the answer to some elements of the, as you say "lack of vision". Your comment about the roadmap for CW is probably the most pertinent response in this thread yet relating directly to his question. But yes I think your "lack of vision" comment also sums up why I get worked up about this. Because it's true, though I'd personally call it a TOTAL lack of vision. We know what the original vision was of CJ, to make an engine that makes point & click adventures. He achieved that, we reaped the benefits of it. What is CW's vision, or the current vision by whomever, community or individuals? To maintain an engine? To maintain an engine for the rest of eternity? Is that really it? I have no problem with that being the sum-total of expectation from many people, but you can't expect everyone to settle just for that.

And underneath what Crimson Wizard says, I believe lies a desire for there to be some kind of new or brighter vision to warrant continuing to work on it. Because as he says, AGS works, it does plenty. And Unity exists. So AGS, not necessarily the engine, needs something else, new, fresh... Sense of purpose is a key theme, whether he explicitly stated it or not. And CW is the only one of us that has to wake up worrying about what people need, expect or are having problems with, with the engine. That burden isn't on anyone else. So the least we can do (aside from shoving a bullet point list of 'choice' envelopes back in his direction) is actually try and alleviate the problem with our own new, up to date ideas and visions, not necessarily to replace any currently standing, but to complement them. However, these things usually end up getting shut down or brushed aside. And if you don't see that happening then you're blind (or not paying attention, especially behind the scenes, ergo, this doesn't apply to everyone). This happens because some people are settling for what exists and seem reluctant to allow new visions to shine through. And yes, that does piss me off, as someone who has done a number of things to try and "give something back" over the years.

Innovation at AGS is someone adding a feature to a point & click adventure that's slightly different to a previous mechanic. It's not finding ways to raise money for charity. It's not finding ways to dish out grants to AGS developers who are struggling, let alone those who are working on the engine. It's not keeping the website up to date, nor making it a hub for game developers or players. As I said it's not even raising some funds for servers, nigh-on 5 years ago now since that last happened. So it's no wonder CW (and maybe others) are left wondering "where is this heading, and for what purpose?". This "every 6 months" discussion should be a red flag that this question is getting harder and harder to answer, that perhaps therefore, something isn't working. That there really is such a lack of vision, it's not even worth it. Some problems are deep rooted and can't be solved by a simple discussion, they require actual action.

Rant aside, if I were to actually point out some nuts and bolts, look at it like this. A bunch of us, maybe counted on both hands, use AGS daily, it is our living. We, if anyone, are probably the people who should be paying to use AGS in some respect. In my mind, it would be those folks who pay for the multi-platform support version, and the language version, etc. Because generally, everyone doing this for a hobby doesn't really need those options (and as the multi-platform support has never really existed, people can't demand it to be free to honour a condition it already was [as it has never been so]). In terms of the engine, I see something that works with 'add-ons'. You get AGS as it is today for free, you can build your Windows point and clicks, that is what you can do with AGS on 16 April 2017, why shouldn't it remain that way forever. If you want the multi-platform exporting option then you pay $1 a month for it. Same for language support (which could be much improved), another dollar. So people like me, dave, andail, joel "the commercial bunch" etc probably have an AGS subscription for $3 a month. Someone like cat, Snarky or the "freeware bunch", probably don't, because they don't really require the extras to be able to continue to use it in hobby fashion. I absolutely do not know the ins-and-outs of what I've just said so I write that as merely a concept. A concept where the heaviest users give something back, and the lighter users generally see no change.

Now you have some initial income coming in. AGS servers can be paid for, some of it can be put aside to create developer grants, and another amount for charity. CW and other contributors get paid for their work. Suddenly, AGS is a lot more than it currently is. Suddenly it seems to be doing enough for other people that it makes sense to invest your life working on it. Then when publications talk about AGS, they won't just be talking about it being used by Wadjet Eye Games, they'll actually have something to say about AGS itself. "The AGS Community raised 10,000 for charity". Or, "The AGS Engine gives its developers grants". Or, "People still work on AGS engine because it stands for something more."

As I say, if you, we, as a community, want to settle for less, that is fine. I know the face of the matter written by CW does not go quite so deep as that. But I am certain there are bigger goals that could be achieved, or at least attempted, to re-invigorate a sense of purpose not just for CW, but for everyone here. AGS needs to grow up and get itself an economy, if not for itself, then for others, in selfless manner that I know a lot of people here are capable of. Kickstarter will not achieve that, it will simply solve a problem temporarily and ultimately, creates an end-goal in a point of time in the future rather than an on-going sense of purpose.

Another key word is philanthropy. You don't need 3000 community members to be that, but you also don't want to block the 5 people that are from being so. No-one wins under those circumstances. And I think AGS could produce some of the better philanthropists of the video-game world, but it doesn't, because of the lack of vision here. And that's that really, as it ever has been. If CJ was even part philantropist, things would probably be somewhat different around here... Maybe we're lucky for it, maybe we're unlucky. But 18 years on, and there's still no sign that anyone has those kind of intentions, and I stick by my guns that this community doesn't reach its full potential because of it. On the flip-side, I would of course, be dismayed by a pure income based, ad-covered experience here, that's horrible. But we're not even attempting to meet halfway yet, so there's progress to be made. I personally feel some forward motion on this, a side of things that is perhaps somewhat "indirect action" compared to CW's initial post and worries, could incentivise things for CW and others, and also bring AGS into the realm of a key player in the industry, regardless of it's being used for hobby or work.

Peder 🚀

Quote from: Screen 7 on Sat 15/04/2017 01:39:50
When was the last time this community raised funds for anything, charity or servers? 5 years ago wasn't it?

2014 - http://bluecupbakesale.com/

LimpingFish

I don't inherently disagree with anything you've put forward, m0ds. I think we differ in our expectations of the future of AGS and the community, though both outlooks aren't necessarily incompatible. I just don't think we have a solid base to work from at the moment. Two points:

1. The open-source dream has fizzled out. Instead of strengthening the core code base, it has splintered it, leaving the "offical" version, more or less, a one-man show.

2. The amount of work needed to produce an AGS 4.0, for want of a better term, suitable for today's developer, and built from the ground up, is a colossal undertaking. It also raises the question of what will happen to the legacy version, should people want to continue using it. Would development on both versions run concurrently, until the new version is ready to roll out? Surely not, as it's hard enough to find people to contribute code to one version, let alone two. Or would we just put a nail in the coffin of the old version, and suffer through the  inevitable years of alphas, betas and workarounds while we wait for a stable version of the new editor and engine?

Call me short-sighted (not that you have :)) or eager to settle, but I'd much prefer to see healthy development of what we currently have. If, as you say, CW doesn't want to continue work on an engine he doesn't see a future for, or one that can compete with other engines, then maybe he should call it a day.

But let's not forget: AGS, as it is, does what it's supposed to, and does it very well. It's creates 2D point-and-click adventures, freeware and commercial quality, for Windows. Out of the box, it can be used by just about anyone with any level of talent or experience. It has no barrier to entry, monetary or otherwise. It has a active community, and one that produces content on a regular basis. Can't say that about Wintermute. Or any of the other engines that have come and gone in AGS's lifetime. You may see that as something that demands to be taken to the next level, which is fine, but not following this path doesn't necessarily mean AGS will wither and die.

At the end of the day, if people want a "modern" engine, one that supports Android, etc, then...just pay the $49/$79/$125/$500 and license Visionaire Studio. It seems to do everything people are complaining AGS doesn't do. But if they just want a usable adventure game engine, AGS is more than adequate. Commercial developers may want more from the editor and engine, but there might be a good reason for that...

If I may be allowed to be a little snippy, it's no coincidence that AGS comes with zero ties to any messy license fees or restrictions. This is very attractive to people looking to make money from their games. It also has a small army of people willing to offer snippets of help on engine limitations, coding errors and bugs. The community is AGS's strongest asset, and one that comes free of charge. It's no wonder people don't want to stop using AGS.
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Crimson Wizard

#45
Quote from: LimpingFish on Sun 16/04/2017 23:30:59The open-source dream has fizzled out. Instead of strengthening the core code base, it has splintered it, leaving the "offical" version, more or less, a one-man show.

It is hard for me to compare open source development with closed source one performed by Chris Jones, but to some degree the situation got better and to some worse.

It is better in the sense that project's source is seen by more people, which may add a thing or two, or fix something overlooked by the "core team".

It seem to become worse in the sense that... having an open source adds to the pressure developer have. When Chris Jones was working solely by himself, he could speed things up by not worrying about such things as bad code style and ugly structure.

I think the main reason we did not have many collaborators is the state of the code. It's not ultimately bad, but it's just entangled so much, and has lots of surprising ties and restrictions.

On several occasions a person wanted to add something in the engine, not realizing that they are breaking other things. When this problem was pointed out, not everyone was ready to spend additional effort on reworking their additions.

In other case, person wanted to quickly add something small, that in reality would require doing restructuring in the code. Even if such restructuring was completed later, contributor often was not interested anymore (or just dissapeared to never come back).

Danvzare

Quote from: LimpingFish on Sun 16/04/2017 23:30:59
At the end of the day, if people want a "modern" engine, one that supports Android, etc, then...just pay the $49/$79/$125/$500 and license Visionaire Studio. It seems to do everything people are complaining AGS doesn't do. But if they just want a usable adventure game engine, AGS is more than adequate. Commercial developers may want more from the editor and engine, but there might be a good reason for that...
+1 to that. (nod)

Darth Mandarb

I think the thing that's being overlooked here is that people want to stick with AGS. They just want it to be more capable/modern. I have an adventure game project I'm working on (with my wife) and we've jumped ship to Unity because, while it's crazy expensive, it's WAY more capable for what we want to accomplish with the project. I feel terrible about not using AGS but AGS cannot do what I want so I have no real option in that regard.

For whatever it's worth I think AGS4 should be a total rewrite to encompass modern technology.

Android/iOS. Windows/Linux/Mac.

It should, essentially, work the same way it does now (to keep it familiar to the loyal community that's been here all along) but brought into the 21st century a bit more.

I don't think AGS (as it stands today) is in any real "danger" but it is definitely stagnating (in my opinion) due to falling WAY behind in terms of how people are consuming games today. I have always felt that AGS was a system designed to keep adventure games from going extinct. It does this very well in a retro sense. I would rather keep adventure games evolving and keeping up with modern tech. AGS does not do that very well. But it could...

The current version of AGS should be renamed AGS Classic and maintained but not improved. It is for creating classic/retro adventure games which is does, and does very well. Leave it alone.

AGS4 should have two versions:

AGS4 and AGS4 Premium (or Pro, or Plus, something like that).

Both are full-featured versions of the engine. The only difference between AGS4 and AGS4 Premium are:

1) AGS4 Premium is not free but a very affordable price (like $49.99)
2) AGS4 Premium has no "watermark" where AGS4 would have a water-marked "Made in Adventure Game Studio" splash screen

There is ZERO licensing nonsense that is so prevalent in (and ruining) the games industry. You pay the initial fee for the premium version and you can release as many games you want.

I was thinking something along the lines of the purchase (for AGS4 Premium) would be $49.99 and then when AGS5 is released it would be $49.99 but to upgrade from AGS4 Premium would be like $19.99 (again keeping it very affordable) or if/when they purchase AGS4 Premium they can do a $129.99 version that grants them free upgrades for life.

I think this model is sooooo much better than the way Unity and others and all their convoluted licensing nonsense. This is just my opinion. I feel that the lower price would mean more sales.

I think the way to fund the development of AGS4 is a kickstarter.

- find a developer(s) willing to commit to the project
- find out what the developer(s) want as far as salary
- set a campaign fund-raising goal (meticulously calculated, let those in the community that have KS experience give advice)
- put together a kickstarter campaign (let the community work together to create the campaign/pitch video - could be fun)
- start an LLC, or equivalent in the country that does the founding, (using the funds from the kickstarter if successful -if AGS4 has a paid version, a "company" is necessary to handle the revenue)
- sign a contract w/ the developer(s) and start cuttin' them paychecks as they develop
- the project will need a project manager/coordinator to create goals/deadlines/etc to keep everything streamlined and on target.

I think this is all very possible and doable if people commit to it. I am fairly certain there are developers here that, if compensated accordingly, would devote to it as a full-time job! Could even work out some kind of partnership with the company where they get a percentage of the revenue.

Maybe I'm just too optimistic but I think we have it in us to pull this off. (nod)

Alan v.Drake

As discussed before, AGS is a pain in the ass to code for, there's much legacy stuff lying around that becomes a hindrance to refactoring attempts. It doesn't look like much at first, but trust me, there are so many little things and they all pile up. Which leads to discouragement.
IMHO that is the main reason there are so few active developers. Only people with a vested interest on AGS can have the proper motivation to try. Or madmen.

I was suggesting to split AGS into a legacy player branch (maybe AGS classic as Darth suggests) that only receives small fixes, and let the main development utterly disregard retrocompatibility, so new developers can actually develop instead of getting deadlocked into a code nightmare.

You don't need retrocompatibility when you make new games.
New source developers don't give a damn about retrocompatibility.
No one wants do deal with retrocompatibility.
Everybody but the users hate retrocompatibility.
New coders just want a good game engine that can be easily customized.

Last year I worked on a few new features, and I suffered way more than necessary, a dozen files just for a single feature, time lost because of gotchas and surprises. And I had prior experiences in messing with the sources.
Imagine what a new developer dabbling with AGS source code has to go through: he wants to change a function, so he changes the code where he would expect it to be changed, only to find out nothing changes, because that part of the code is actually legacy code and the actual one has a different name, he fixes it but something else breaks. No wonder he gives up and looks elsewhere!

Writing a new AGS from scratch is too big an undertaking, it will never happen. The only chance for things to get better is to start cutting away the dead weight.
8/16bit color support ? Rest in peace. Left-to right operator precedence ? Shouldn't even be a question. Old audio system ? Nope. And so on...

There's plenty of this stuff that makes it impossible to even imagine how to rewrite, because it's all intertwined. The knowledge required to change things without causing a nuclear meltdown is no laughing matter.

I had to refeer to CW's knowledge multiple times to properly wrap up most of my features, or I would have broken compatibility several times, I pretty much went forth blind with pure brute force, with little to no clue about what the heck I was doing.


As things stands, I feel too overwhelmed to touch the code, at least until I realize I really *really* need a new feature.

That said, I gotta thank you CW, you've improved the state of the code a lot, I probably wouldn't have even tried to code on AGS again if it weren't for that. But the legacy stuff has to go, only you know enough to make sense of it, I don't think anyone else can without going mad.


Quote from: Joseph DiPerla on Sat 15/04/2017 17:29:58
Others seem to create their own versions of AGS rather than contributing to the main engine(Draconian). Maybe I am wrong about that?
You're mistaken, the Draconian edition may be tailored for my purposes, but most of the feature branches have made their way to the main engine. Except few small things and the new blend modes feature which is kinda lost in limbo, I'm not too happy the way I coded it but I can't get myself to suffer more on it (it works good enough, but the code is not good enough. Stalemate).

- Alan

Dave Gilbert

#49
I am confused as to why backwards compatibility is so important. Surely it's up to the developer to update their game to the latest version of AGS if they want to get it running on newer computers? I know when I updated Blackwell Legacy and Gemini Rue, there were several out-of-date functions and script commands that I had to redo entirely from scratch. For some other games, we had to find new fonts because they didn't display properly. So from where I am standing, there's no 100% backwards compatibility anyway. Unless I am completely misunderstanding the term?

As for why I keep using AGS? It knows EXACTLY what I'm trying to make. Studying Unity (or adventure creator) is like learning how paint is created in order to draw a picture. There's just TOO MUCH too learn, and so much of it unnecessary. I'd rather just jump in and paint. AGS lets me do that. I'm making a traditional point-and-click, AGS is set up to do exactly that. It has its quirks and issues, yes, but I know how to work around them. Switching to another engine would just mean dealing with a whole new slew of quirrks and issues that I DON'T know how to deal with. So I stick with the devil I know. Out of the 100 things I need from an adventure game creation tool, AGS does 95 of them perfectly.

I admit to not knowing much about the engine and how it works (I know a lot about scripting within it, but the engine itself is a mystery), which is why I typically stay out of discussions like this. But as others have said, you really underestimate the value of your work CW. Your work recent work on the engine has allowed AGS games to be played on a MUCH wider variety of computers and monitors, something that was a major issue for us in the past. Our technical support emails regarding weird monitor resolutions have all but disappeared. So if you are not feeling like you are making a difference, you most definitely are.

-Dave

Crimson Wizard

#50
Quote from: Dave Gilbert on Tue 18/04/2017 20:28:09
I am confused as to why backwards compatibility is so important.

Short answer: because I am an idiot who listened to couple of people who told me to keep it. Or maybe I imagined that happened? I cannot even remember for sure. Wasted months and months because of that. And did not feel confident enough to change the plans and drop it, because I persuaded myself that if I do, people will start complaining.

I always refused to ask for an advice until I got completely desperate, because I thought no one will care to give a good one to me. And even when people suggested, I did not listen, because I thought they are telling their own opinion, and not opinion of most of users.

I remember that at the very start of my work I proposed to form a "comitee" which would define the development plans for AGS. Unfortunately, that never seem to interest people here. So I continued to follow my own bad decisions.

In retrospect, I am not the smart person at all... most of the stupidest things I did while working on AGS was because someone else proposed something and I took that for a rule, then followed that rule for months if not years, even though I realized that what I am doing seemed wrong, but probably was not confident enough again to change it, until it drove me crazy.

Dave Gilbert

Quote from: Crimson Wizard on Tue 18/04/2017 20:40:50
I remember that at the very start of my work I proposed to form a "comitee" which would define the development plans for AGS. Unfortunately, that never seem to interest people here. So I continued to follow my own bad decisions.

If there was a call to form a committee, I never saw it. Ironically, the folks who use AGS the most are probably the ones least likely to visit the forum on a regular basis. I know I am one of them. (heck, it took me several days to see this thread!) I'd be happy to be part of that committee, if there's still a desire to create one.

Crimson Wizard

#52
Quote from: Dave Gilbert on Tue 18/04/2017 20:54:00
If there was a call to form a committee, I never saw it. Ironically, the folks who use AGS the most are probably the ones least likely to visit the forum on a regular basis. I know I am one of them. (heck, it took me several days to see this thread!) I'd be happy to be part of that committee, if there's still a desire to create one.

I thought this is simply most reasonable idea to get experienced users and long standing members of community to define a future path, since you knew better what is needed to be fixed, added or changed. I was very much surprised this was never done, not even a single attempt made to organize such thing, and people just let me, who was practically the newcomer at that point, to do all the job as I see fit.

About making one now... How do I know... who need to have a desire to create one if not you and other users?

I may be mistaken, because I do not see what is going on around the community, but it was my major feeling all those years, that no ones actually wants this, or cares about any planning. At least I don't remember anyone ever talked to me about it.

Snarky

I'm pretty sure you were nominated to lead the committee back in the day, Dave! :P We took a straw poll and everything...

What I always saw as the problem with a committee was this:

Quote from: Crimson Wizard on Tue 18/04/2017 20:40:50
most of the stupidest things I did while working on AGS was because someone else proposed something and I took that for a rule, then followed that rule for months if not years, even though I realized that what I am doing seemed wrong

As in: if the committee doesn't consist of people who know the engine from the inside, what if they propose something that doesn't make sense? To me it seems like the decisions ultimately have to be made by the developers.

But I suppose it will at least lead to a defined, manageable and hopefully more engaged group of people the devs can discuss things with, to avoid this problem:

Quote from: Crimson Wizard on Tue 18/04/2017 20:40:50
I always refused to ask for an advice until I got completely desperate, because I thought no one will care to give a good one to me. And even when people suggested, I did not listen, because I thought they are telling their own opinion, and not opinion of most of users.

Anyway, I know I've told you this before, Crimson Wizard, but even if you have made mistakes, you shouldn't beat yourself up about it. Making mistakes is a direct consequence of doing something difficult: really, it's something you should be proud about. In addition to the direct value your work has provided (which is much greater than you seem to realize), all that pain and all those regrets are a learning experience. If you do decide to start afresh, you'll know a lot about the different challenges faced when building an engine, you'll know what solutions work and which ones don't, and you'll know a thousand things not to do.

Dave Gilbert

#54
For a long time we were used to the way CJ did things, where one guy made all the decisions and everyone generally deferred to him. You (CW) inadvertently stepped into that role, so we all reverted to habit. At least, that's the way I see it. And that's kind of what you are? You have the most intimate knowledge of AGS than anyone right now (as far as I can tell), and have taken the initiative in making the next official version. Nobody else has done that, because nobody wanted to step on anyone's toes. You took the bull by the horns and it's much appreciated!

I learned awhile ago not to butt into discussions about the future of the engine because I approached it from an entirely different place. Most of the devs here were looking to improve the way they MADE games, while I was more interested in improving how they were played. Most of my concerns (like save game compatibility between versions, the monitor resolution issues, steam overlay problems) were met with confusion when I raised them, or shrugged off as low priority. So eventually I just shut up and dealt with it. (which is why I am so happy by 3.4 - it fixes a whole chunk of the issues I was having). I suppose this is less of an issue now that more commercial games are being released and more devs are on the same page as me. CW, I know that you expressed frustration in the past that devs like me don't voice their concerns as often. I'm trying to change that!


Quote from: Snarky on Tue 18/04/2017 21:32:33
I'm pretty sure you were nominated to lead the committee back in the day, Dave! :P We took a straw poll and everything...

Yep! And when I tried to get things started, the replies I got were akin to "What's the rush?" Nobody wanted to do anything and there seemed to be some resentment about it. So I backed off. But to be fair, I don't think anybody really knew what was needed. CJ had just left and there was no organization at all. It's been 6 years since then. CW pretty much has the reigns of the engine. He knows what's possible and what's not. So if we're going to have ANY kind of committee, it probably should center around him? What sort of group would be useful for you? A group to discuss the current issues with AGS and what should be fixed? WOULD any other AGSers be willing to be part of such a thing? I know I would.

Crimson Wizard

#55
Making a person to lead a project simply because he knows insides of the code is really a bad approach. The problem is that I do not make games. My perspective is completely different, and it is not the best to make strategic plans from. I mean, it is suitable to plan on implementation specifics, but not on design roadmap. I had a lot of ideas that later proved to be plain confusing to people, and I did not see a lot of usability problems until getting repeating complains, and forced to checking that out myself from users perspective.

Every time I try to make something in the editor it reveals a problem that I did not realize before, and that makes me doubt my priorities.

Dave Gilbert

Well not lead per se, but it will have to seriously involve you in some way. We literally can't do it without you. Obviously you'd work together with a developer. I'm happy to be involved, whether it's just me or a group.

LameNick

I lurk around these boards ever since I found out about AGS but I always refrained from these discussions because I feel like an outsider who hasn't really created anything with it yet and there is no reason for anyone to give a flying schmuck about what I have to say, but since it looks like AGS might be approaching crossroads, I guess I should either rant now or hold my peas forever.

I feel quite uncomfortable about the notion of the mainstream “official” version going commercial. I'm no legal expert but if I'm not wrong, some person(s) gonna have to assume private ownership along with full control over this commercial release of AGS. (if the current CJ's license allows that at all)
I very much appreciate the transparent and carrying approach of CW and other developers not excluding the community in their decisions about the future of AGS. I like the idea of being able to financially support AGS, but I see no reason to leave it at the mercy of the whims of private ownership. Never knowing, if the “business” will be sold, what the price will be, will they start to charge by subscription, ask for percentage of profits, impose some opaque private data extraction etc…

And if financing future development is an issue, I don't understand how that solves anything. Developers would have to work now for free in the hopes for some profits.Maybe I'm just terribly stupid, but it doesn't seem to me like selling AGS would have in reality significant advantage for development purposes over voluntary donations for an open source release. I would be happy to donate to the development given it would stay free.


When I look at the community support and variety of features provided in modules I believe that if only AGS got rid of it's legacy limitations and fixed some of it's features, it would have bigger potential than Visionaire, while staying much, much more user friendly than any Unity addon.

Also I don't know if its possible but I think it would be a good idea if there was a place where members can post their feature suggestions that could be voted up or down just to show the popularity of features to the developers and the newly appointed committee led by Dave Gilbert, that I hereby personally fully endorse.:-D




How much wood would a wood chuck chuck if a wood chuck could chuck wood?

Danvzare

Quote from: Dave Gilbert on Tue 18/04/2017 22:33:50
Well not lead per se, but it will have to seriously involve you in some way. We literally can't do it without you. Obviously you'd work together with a developer. I'm happy to be involved, whether it's just me or a group.
I think CW could be best for bringing any ideas down to reality. Since he knows the insides of the engine like the back of his hand, he'll have the best viewpoints when it comes down to how plausible or implausible something is. So while everyone else in the committee would be coming up with ideas, and choosing the best ones for implementation, CW could be there advising everyone about how realistic these ideas are. Which of course could affect the committee's decision as to whether or not development time would be better suited elsewhere.

If anyone is going to lead the committee (and have the final say in matters), I think it should be someone who has released the most commercial games using AGS. Since they will know the most about what the engine needs.

Snarky

Quote from: Crimson Wizard on Tue 18/04/2017 22:06:26
Making a person to lead a project simply because he knows insides of the code is really a bad approach. The problem is that I do not make games. My perspective is completely different, and it is not the best to make strategic plans from. I mean, it is suitable to plan on implementation specifics, but not on design roadmap.

OK, it definitely makes sense that you need input from the people who know AGS from the user side. To tweak what I'm saying a little, though, the decisions of any committee are useless without someone who's willing and able to carry them out. If that's primarily going to be you, Crimson Wizard (and I know there are a few others who're contributing to the engine development as well, but it does seem like you're the one doing the most), the most important part is that we find a committee you're happy with, and whose vision for AGS is something you're excited to be working on â€" whether that's in terms of code maintenance, overall architecture, or licensing/funding model (though for anything that moves away from the free/open source model, you're not just going to need a developer to carry it out, but people to handle a lot of other functions as well).

Quote from: Dave Gilbert on Tue 18/04/2017 22:33:50
I'm happy to be involved, whether it's just me or a group.

Well, if you're both amenable to that arrangement, I suggest you just... go off and do it. Invite whoever else you want to be part of a committee (I would suggest AGA since he manages the forum and website, and someone to represent non-commercial AGS users, but that's just my 2¢; there are a lot of people who might be good to have on there). If you want, I'm sure we could set you up with a private board like the ones for the mods and for the ratings committee.

Peder 🚀

#60
I'm also not sure making AGS commercial is the solution or even a good choice, there are many other ways of raising funds if it were needed for further development of AGS.
There could be "sponsors", that donate a set amount of money per month for having their logo placed on the website and so on.

I'd love to see AGS grow and become better and more modern without loosing it's "ease of developing adventure games", but whatever its fate, I'll be here archiving whatever games are made with it as long as I'm capable of typing and paying my server bills :=

Dave Gilbert

From what I can see, money was never the issue. We've offered to pay folks before to improve AGS, and the answer has always been no. It's a hobby for most people here. So there's no reason to make AGS a commercial engine.

RickJ

There seems to be two main developer pain points, neither of which would be alleviated with funding.

Legacy Code - Working on legacy code really sucks and there is no amount of money that can make it un-suck.  I've been there before.  Working on someone else's code is the most joyless experience anyone could ever have, especially code that has a long development history.  Having a root canal is a more pleasant activity.

Leadership - As mentioned earlier in the thread CW has inadvertently assumed CJ's role as our fearless leader.  CW believes he lacks knowledge and authority to make certain kinds of decisions and so is uncomfortable in that role. This is exasperated by the difficulties associated with the legacy code base. The irony here is that the community has great confidence in CW's leadership abilities and whole heatedly support his decisions (even the wrong ones ;) )

The solution has already been mentioned previously in this thread.  The current AGS version becomes Classic AGS with no future development except for bug fixes. We then begin an AGS 4.0 project from the ground up.  I can't think of anything that would do more to re-energize the community than engagement in the process of creating a brand new AGS.  The current AGS version could be used as a guide but we wouldn't have to lock ourselves into anything.

So to answer CW's original question ... NO it doesn't make sense to continue developing the legacy code base.  There are too many limitations and it's too difficult to make progress.  If there is a desire to start with a clean slate then we should go for it.  I think it's something everybody would willing to support and contribute to.

Mehrdad

Quote from: Dave Gilbert on Wed 19/04/2017 16:24:42
From what I can see, money was never the issue. We've offered to pay folks before to improve AGS, and the answer has always been no. It's a hobby for most people here. So there's no reason to make AGS a commercial engine.


Dave, Your wife help you for export to other platforms . Some people like me haven't  programming experience so we need to publish game on mobile and other platforms.Hire master programmers want much money and All of them not familiar with AGS too.
Commercial version at least is great idea for export to other platforms. 
My official site: http://www.pershaland.com/

Dave Gilbert

Quote from: Mehrdad on Wed 19/04/2017 16:53:19
Quote from: Dave Gilbert on Wed 19/04/2017 16:24:42
From what I can see, money was never the issue. We've offered to pay folks before to improve AGS, and the answer has always been no. It's a hobby for most people here. So there's no reason to make AGS a commercial engine.
Dave, Your wife help you for export to other platforms . Some people like me haven't  programming experience so we need to publish game on mobile and other platforms.Hire master programmers want much money and All of them not familiar with AGS too.
Commercial version at least is great idea for export to other platforms. 

Maybe I'm misunderstanding the discussion, but it seemed that the point of making AGS commercial was to further fund the creation of AGS? I.e., pay a developer like CW to do more work on it? That's not going to work if nobody actually wants to take the money.

Mehrdad

Quote from: Dave Gilbert on Wed 19/04/2017 17:57:04

Maybe I'm misunderstanding the discussion, but it seemed that the point of making AGS commercial was to further fund the creation of AGS? I.e., pay a developer like CW to do more work on it? That's not going to work if nobody actually wants to take the money.


I'm sure there is many people ready for pay to CW ,Gurok , ...for get best result from AGS as encourage and appreciate  .Because all versions after CJ was really great. But seems they don't want money .
CW want more colleague for investigate to engine.

Anyway my mean of pay was output to MAC,Android,iOS  not by CWa and his team.
My official site: http://www.pershaland.com/

CaesarCub

[Insert small introduction about how new I am to the forums and how I hesitate to contribute on this topic because I don't have knowledge/time to work on the AGS engine myself].

I like the idea of a committee, one that should be formed by people that has worked on the engine and people that has used the engine a lot.
Crimson is the one with the most engine knowledge, so even if he doesn't lead the committee he should definitely be the one that can estimate how costly any change is.
But that raises a different question, which is, what role he wants to be in.

A lot of people in this topic (including me) have showed no interest on keeping compatibility with previous versions.
CW: Would not having to care about compatibility with previous versions give you more room to breathe and make working on the engine something that wouldn't stress you as much as it is now? Or would it be the same?

I'm guessing that creating an AGS4 from scratch would be a huge task. How much of the AGS3.x code could be reused without falling into the issues AGS has in terms of intricate code?
CW: Would working on something like this still be a painful experience for you?


RickJ

QuoteHire master programmers want much money and All of them not familiar with AGS too
The going rate for contract programmers is about $10K per month, which, I imagine, is out of reach for most game projects and our little community.

QuoteI like the idea of a committee
Committees usually suck at whatever their mission is ;)

QuoteCrimson is the one with the most engine knowledge, so even if he doesn't lead the committee he should definitely be the one that can estimate how costly any change is.
Good point, Getting a handle on the amount of effort and time required is essential before undertaking such a project. There needs to be certainty about the amount of resources required and and the amount of committed resources available.



CaesarCub

Quote from: RickJ on Thu 20/04/2017 16:40:39
QuoteI like the idea of a committee
Committees usually suck at whatever their mission is ;)

Well, the idea is mostly to have a group of people decide which features make sense to push and which ones are really not that important and can wait.

Quote from: RickJ on Thu 20/04/2017 16:40:39
QuoteCrimson is the one with the most engine knowledge, so even if he doesn't lead the committee he should definitely be the one that can estimate how costly any change is.
Good point, Getting a handle on the amount of effort and time required is essential before undertaking such a project. There needs to be certainty about the amount of resources required and and the amount of committed resources available.

I'm not only talking about big changes, but even for new features. Some stuff can look easy but be impossible once you look under the hood.

Crimson Wizard

#69
The mentioning of this comittee idea was a part of retrospection. I was not planning to participate in one now, neither I have any wish to keep working on the engine even if its compatibility ties are broken. This is simply too late for me to do this.

Surely such move would make change easier. But in my opinion, the changes that AGS needs may only be solved by rewriting very large parts of it, which is comparable to writing an engine anew. Of course, that's just me, because other people seem to think that AGS is pretty good as it is now.

Dave Gilbert

#70
AGS is VERY good as it is now. Making games is a pleasure. That's the bit that everyone wants to keep.

The main issue with AGS is that the games are getting more and more difficult to run as computers change. On some computers, only Direct3D mode will work. On some others, only DirectDraw. There doesn't seem to be any rhyme or reason for this that I can see (especially since DirectDraw is so old it's not even supported anymore). That is the main issue that I am concerned with - enabling the end user to easily PLAY the games. Everything else is pure window dressing. As a commercial developer, this is the highest priority for me. I don't know how everyone else feels.

Crimson Wizard

Quote from: Dave Gilbert on Thu 20/04/2017 17:24:34
The main issue with AGS is that the games are getting more and more difficult to run as computers change.

In such case you just need a rewrite of the drawing and audio implementation, which, I believe, is practically done by Nick Sonneveld, who rewrote them to SDL (probably even years ago, but he was restoring it now).

Definitely you do not need me for this.

Atavismus

Quote from: Dave Gilbert on Thu 20/04/2017 17:24:34
AGS is VERY good as it is now. Making games is a pleasure. That's the bit that everyone wants to keep.
Exactly (and still the best engine I tested for 2D games, especially - ofc - for point'n'click).
An export button for mac/android/ios would be needed imo to be "modern" (yes I know it's a big one).
And maybe an improved save system (to avoid corruption between version).

LimpingFish

Quote from: Crimson Wizard
But in my opinion, the changes that AGS needs may only be solved by rewriting very large parts of it, which is comparable to writing an engine anew. Of course, that's just me, because other people seem to think that AGS is pretty good as it is now.

I think this is the crux of the situation. There are those who think AGS is fine as it is, and, like Dave Gilbert says, what we should be concerned about is ensuring that the games we produce with it continue to function on current, and future, systems. It just so happens that I agree, and that this is how I would like to see us proceed.

As mentioned, I think backwards-compatibility, support for older OS, and multi-platform support should be wound down, if it helps lighten the maintenance of the core code-base. Instead of far-reaching dreams of AGS evolving into something entirely new and all-encompassing, we should be simplifying what we have, and lightening the load on whoever decides to continue with development, be it one person or a team. The less the engine has to juggle, the less that can go wrong. This isn't to say that innovation will die, or that no new features will ever be added to future versions of AGS (like I said earlier, the code is open-source, so people are free to experiment on their own time), it just means that we shouldn't rely solely on those innovations to come from the "official" build.

Things we need to stop doing:

1. Talking about native iOS/Android/Mac/etc port support in the 3.x builds. It's not going to happen. The best you can hope for is third-party ports of the engine, such as the Android and PSP ports currently available. If you want an engine that does all that, switch to a different engine, or code your own. If you can't code your own...too bad.

2. Talking about bringing in professional programmers. Just...stop.

3. Making this all about money. It's not. And attempting to pay someone to do something they have clearly lost interest in doing isn't going to help matters.

Things we need to do:

1. Invite people who have used AGS to it fullest to informally discuss it's future, away from prying eyes. I would include anybody who has released commercial AGS games (Dave Gilbert, Grundislav, etc.) and those who have maintained or contributed, or are interested in doing so, to the development of the engine and editor (Crimson Wizard, Alan V. Drake, etc.), and from there...

2. ...plan out a road-map for future development of AGS. I can't stress enough how important it is that we have some sort of ground plan in place before making any drastic decisions.

3. ????...seriously, I don't know what comes next. Which is why steps one and two are so damn important! >:(
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Peder 🚀

I think keeping multi-platform in mind when doing a new version (4?) would be smart even if initially there would be no plans to support it (when choosing 3rd-party libraries etc).
Though I pretty much agree with all your points LimpingFish.

Crimson Wizard

Quote from: LimpingFish on Fri 21/04/2017 00:07:43
Talking about native iOS/Android/Mac/etc port support in the 3.x builds. It's not going to happen. The best you can hope for is third-party ports of the engine, such as the Android and PSP ports currently available.

I am not following this, tbh, what is a difference between "native support" and "third-party ports of the engine"?

There are iOS and Mac ports used by Wadjet Eye, its just that you need a technical specialist to integrate your game with them (Janet Gilbert does that for WE games).

LimpingFish

Quote from: Crimson Wizard on Fri 21/04/2017 00:39:22
I am not following this, tbh, what is a difference between "native support" and "third-party ports of the engine"?

Well, what I mean is that we won't get a version of AGS that has a "Export to..." option for iOS/Android/etc that presents you with a ready to publish file for the App Store or Google Play.

A lot of people seem to want that one-click option, along the lines of what Game Maker does. My argument is that this expectation is too much, for the situation we find ourselves in, and that, unless we're talking about a mythical rewrite of a mythical AGS 4.0, we would be better suited putting a pin in that particular line of thinking. Instead of wringing our hands over what AGS can't do, we should be ensuring that what it can do remains supported.

But let me clarify, because I'm starting to confuse myself. How I see it is, and correct me if I'm wrong, AGS 3.40 by Crimson Wizard is the official version of AGS, as opposed to, for instance, the Draconian build of Alan V. Drake. As it stands, projects created with AGS 3.40 can be run on other platforms through the use of a third-party ScummVM-like wrapper (Android, PSP, etc) or through a combination of the existing Mac port and some extra technical wizardry involving other coders (iOS/Mac). Without a rewrite of AGS from the ground up, it's highly unlikely that these methods will be supplanted any time soon.

If we want to keep that official AGS 3.4x build going, I feel we desperately need to pare back people's expectations, and jettison everything that isn't integral to achieving the best possible version of that official build that we can, so that future maintenance will be focused, concentrated, and kept to a minimum of fuss. If this means no ground-breaking new features, or losing backwards-compatibility and old OS support, so be it. This also means that multi-platform support should remain the domain of those willing to put the work in, and not something that should fall on the shoulders of the person in charge of overseeing continued development of the offical build. This isn't to say that this person can't be mindful of these other coders work, though.

If there comes a point in the future were somebody wants to attempt a rewrite of AGS, be it you or somebody else, that's great. All the things 3.4x can't do and all the features it lacks can be tackled then, and everybody's wishes and dreams can be fulfilled.

We keep hearing about how the old code is a mess, and how it holds back what can be achieved, creates bottlenecks, etc. That may be, but, though it might be ugly, it works. We're playing games, free and commercial, that exist because AGS 3.40 does what it's supposed to do.

For that reason alone, it must be supported.
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

scotch

#77
Hey guys. I've mentioned this on Discord a bit before, and AGA pointed out this discussion. I haven't read it all yet but I will! Just thought I'd update people on what I'm doing if they don't know.

Years ago I was reimplementing the run time engine so that I could make web games. This was back when Flash was the only practical option. I recently salvaged that work and ported it to modern JS/WebGL because I'm trying to get more open source code out lately. I hope it'll be up on Github over the summer (but I'm currently moving continents and have to work to support that). IMO it's the best bet we have for new engine work. I will of course be looking for contributors so look out for it if you like that sort of thing.

I won't get into why I think it's important to do when people are making nice games in more complex tools like Unity. Just to say I obviously do think there's some value in it. Also I also don't think new features should be done on the C++ engine because it's too hard to build let alone refactor. If I do get this project moving properly I would suggest a freeze, and then 4.0 to be on the new code after community discussion on what features are in demand.

Rough status:


  • Compiled game asset/module recompiler works for most historical games, but code needs refactoring, and ancient dialog scripts need converting.
  • AGS Script VM feels reliable. Relatively fast and debuggable. Plays nice with JS objects so you can implement modules in JS or AGS script - whichever is more appropriate.
  • AGS API is only 25% implemented. This is where all the drugery is. Each of the 1000+ API items in https://dai.io/jagse/misc/agsapi_definition.js must have an implementation, but I'm getting down the list. Boring but also relaxing. It's decoupled so that the legacy stuff is emulated in the API layer and the core engine remains clean.
  • Rendering is WebGL/ES only and is fast and supports effects shaders.
  • Game logic, character animation, pathfinder stuff still has its quirks but it's getting fixed as the API gets testted.
  • Cross-platform font rendering needs some consideration.
  • Async asset loading needs some work.
  • Save states aren't implemented at all
  • Need to make a lot more test games so I can iron out differences between AGS event loop and mine.
  • Desktop/mobile builds needs to be done. Platform stuff is abstracted so it's easy but I'm leaving it until the engine functions properly.
  • Integration with the editor will be started at that point. At the least I'd hope for an Export to {Platform} feature.

I'll update you when I get enough working that it's worth opening up for contributions.

Edit: I should note this is a fresh implementation using the very good API reference as the standard. I'm using the C++ source as a reference but there's no transpiling involved, so it likely never will operate *precisely* like the original engine. My hope is that most old games will be completable after conversion. Maybe a some games will break but that's the cost of going unicode-only, hardware accelerated only and gaining a maintainable codebase.

Snarky

#78
That sounds like a really interesting project, scotch.

But if we're moving to a fresh codebase, wouldn't it be a great time to rethink a few of the basic AGS design decisions, rather than rebuild it to be "exactly" the same with many of the same problems?

Things like...
  • Unicode supported from the start in all String handling
  • Remove all the hardcoded Sierra stuff (the UI, cursor modes, Sierra-style speech, points, etc.) which is only in the way whenever you're making a game with a different UI (which is most of the time) â€" this should be a module or template instead.
  • Get rid of the ridiculous AGS remapping of certain colors and make everything 32-bit.
  • Allow 256 levels of transparency (since you have 8 bits of alpha), rotation by floating point instead of just by integer degrees, etc.
  • Rethink addressing of resources (essentially the name/array index thing we've been discussing for sprites and audio clips).
  • Possibly allow sub-pixel positioning? Maybe make all coordinates floating point?
  • Implement hotspots so a script can easily find their on-screen position, to support hotspot highlighting.
  • Rethink loops, views and walkcycles. Perhaps instead of hardcoding a set of view angles and a set of defined character views (normal view, speech view, thinking view, idle view), make this something you can define per game/template.
  • Possibly rethink how to do non-blocking background events (since all the stuff with timers, repeatedly_execute() and splitting scripts across different functions is one of the main problems newbies have). OTOH, Calin argues that the AGS solution to concurrency is easier than how other engines do it.
  • Better support for script organization, moving handlers for character and GUI events out of GlobalScript.
Maybe you've already fixed some of these things, and maybe it's better to leave some as-is. (And some might be more on the editor side than the engine side.) I'm not saying we should redesign AGS completely (if we were making a new engine from scratch, one thing I would do would be to find other names for "Character" and "Object" to avoid confusion with the programming terms: probably "Actor" and "Prop"), just fix a few legacy issues that really don't make sense in this day and age.

Crimson Wizard

#79
I wonder how many people are secretly making an AGS remake on their own without knowing about each other?
I am aware of at least one more, which I was interested to participate in.

This is both encouraging and worrying. On one hand there may be several remakes emerging in the following years. On the other hand, everyone is working alone, using their favourite technology.

But I guess, this is just how things are.

And, I am kind of glad scotch is making what he described, because that means that I won't have to worry about rewriting engine renderer to modern library, which was bugging me.

Calin Leafshade

If we're sharing adventure game engines:

Adore is at a stage now where it is "usable" with caveats.

It's not a direct reimplmentation of AGS like Scotch's but it shares lots of similarity with the AGS design.

- Lua based scripting
- No IDE, all edited with text files and folder structures which, instinctively, seems faster than using AGS
- Build script based so I provide things like raw Photoshop files and a script extracts hotspots and stuff from it. Why reinvent the bitmap editor when better tools exist?
- Live reload of assets by pressing a key. One of AGS's bottlenecks is the slow compile speed and getting back into the game to test. In adore you can just press F9 and it reloads all the animations, rooms, script code and so on while keeping the game state ocnstant
- Resolution independent rendering. This allows you to render all your "game" stuff at the game res but UI/text at native resolution. This is becoming more acceptable as low res becomes as aesthetic choice rather than a limitation (like The Last Door)
- Two parallel threads similar to AGS's rendering/scripting dichotomy. Mine uses Lua coroutines to accomplish it.
- Animations are spritesheet based with some configuration. I rarely found that I reused sprites in lots of different views so it seemed like a complication.
- Pixel shader support with some effects built in (Black and white, bloom, saturation boost etc)

Some code to show how coding generally looks in Adore:

Code: lua

-- A room
local room = adore.scenes.new("maintenance")
room.ambientLight = {110,110,130}
room.bloom = true
room.scaling = {0.45,0.6}

function room:afterFadeIn() -- Room events
	
	aKass:say("I'm in! Man this place reeks of smoke. Someone's been taking breaks in here.")
	aRepro:infolink("This room's not supposed to be in use, Kass. Be careful.")
	aKass:say("When am I not?")
	aRepro:infolink("Well...")
	aKass:walk(1496, 930, true):face("right")
	aKass:say("Damn it. The door's locked.")
	aRepro:infolink("Turn back now! The virus will keep.")
	aKass:say("No, I said I'd do it today, I even brought this sweet card reader.")
	aRepro:infolink("That's not going to help you in here, is it? You were gonna steal a pass from someone in the lobby. Turn back.")
	aKass:say("No, if I wuss out I'll never impress anyone. If you're not going to help, stop blabbering so I can max my bandwidth. I'm sure there's something in here I can use.")
	
end

room.hAccessPanel = room:newHotspot({ -- Room hotspots
	name = "Access Panel",
	clickable = true,
	interact = function()
		if not room.openPanel.visible then
			aKass:walk(1670, 940, true):face("right")
			adore.wait(20)
			room.openPanel.visible = true
			aKass:say("Just pops right off!")
		else
			aKass:face("right")
			aKass:say("The security circuitry for the door. I need to overload it somehow.")
		end
	end,
	useInv = {
		cigfoil = function() -- When the "cigfoil" inventory item is used on the hotspot
			if not room.openPanel.visible then
				aKass:say("I need to take the casing off first.")
			else
				aKass:walk(1670, 940, true):face("right")
				aKass:say("I should be able to override the door's security circuitry by connecting these two terminals. Thankfully this little bit of foil should work...")
				Latency.activeInventory = nil -- Custom inventory implementation
				aKass.inventory:removeItem(iCigFoil)
				TODO("Animation of kass shorting the panel")
				TODO("Sound indicating door has unlocked")
				room.hDoor.unlocked = true -- Custom local state
				aKass:say("...and there we go!")
			end
		end
	},
	wiki = { -- Custom data for a hotspot
		source = "Free//Net Security News",
		text = "After getting locked in the university copy room with his co-worker Dr John Foster, Dr Kevin Schriebmen (UCL) demonstrated it was possible to bypass the S37 electronic lock by bridging two connections in the security panel."
	}
})


Code: lua

--A module script

adore.event("on_mouse_press", function(x,y,b) -- Event based
		local scene = adore.scenes.getCurrent()
		local sx,sy = adore.camera.toRoom(x,y) -- Dynamic camera rather than viewport, can be rotated, zoomed, translated
		if scene:onClick(sx,sy,b) then -- Allows a scene to "catch" a click
			return
		end
		local hit = scene:query(sx,sy) -- Query a scene at a location to get all the stuff there
		if b == "l" then
			if Latency.activeInventory then
				if hit and hit.clickable then
					if hit.useInv then
						local fn = hit.useInv[Latency.activeInventory.uniqueName]
						if type(fn) == "function" then
							fn(hit, Latency.activeInventory)
						elseif type(fn) == "table" then
							for i,v in ipairs(fn) do
								aKass:say(v)
							end
						elseif fn then
							aKass:say(fn)
						else
							aKass:faceMouse()
							aKass:say("That won't work")
							Latency.activeInventory = nil
						end
					end
				end
			elseif not hit then
				aKass:walk(sx,sy)
			elseif hit.clickable then
				sayOrDo(hit, "interact")
			end
		elseif b == "r" then
			if Latency.activeInventory then
				Latency.activeInventory = nil
			elseif hit then
				Latency.wiki.show(hit,x,y) -- Custom functionality
			end
		end
	end)

tzachs

I might as well come forward too...
I'm also "secretly" working on a rewrite, my secret project is actually out in the open for a long time, and I've recently asked CW to join me (and if any other developer wants to join, yes! Please let me know).
You can see my progress on Github.

My approach is similar to Snarky's suggestion, it's a complete redesign (I'm ticking almost all of the boxes in his list, and planned to tick them all before first release).

The engine is written with c#, the scripting language is also c#, and the editor (there is no editor currently, but there will be) will also be in c#, so hopefully having one language to rule them all will make it easier for developers to contribute.
Regarding the API: I tried to keep some level of familiarity with AGS's API and workflow (so I still have Object, Character and Room) but did change stuff where I saw an opportunity for better concepts (Views are out, Outfits are in, so this is more in line with Visionaire).

Currently the engine is working on Windows, Mac and Android, I'm working on the IOS port and will move on to Linux next, and after that will start working on the editor.

For the engine I'm using an entity-component based system, similar to unity, and I have Object, Character and various GUIs as pre-set entities with all the components you'd expect, so you would normally not need to touch the components (so the workflow will be similar to AGS), but you'd be able to add/remove components if you want specific behaviors. So for example, if you decide mid-game that you want your object to talk, you don't need to replace it with a character (or add a dummy character), you can just add a "talk" component to your object and you're good to go. And as GUIs are also entities with components just like objects, you can even turn your character to a button mid-game if you have some crazy mini-game idea.

Another highlight of the engine is it's built to be customizable from the bottom up. There's a hooking system which you can use to replace even the most basic systems (you don't like the built-in path finding? No problem, code your own and switch).

Also, The API is built heavily on c# async/await, which should make it easier to program actions happening in parallel.
Here's an example from the demo:
When you look at the window, the camera will zoom in, rotate and move (all with asynchronous tweens), at the same time, followed by the character saying "there's nobody home", and then the camera will tween back to its original position:

Code: ags

private async Task lookOnWindow(object sender, AGSEventArgs args)
{
	_room.Viewport.Camera.Enabled = false;

	float scaleX = _room.Viewport.ScaleX;
	float scaleY = _room.Viewport.ScaleY;
	float angle = _room.Viewport.Angle;
	float x = _room.Viewport.X;
	float y = _room.Viewport.Y;

	Tween zoomX = _room.Viewport.TweenScaleX(4f, 2f);
	Tween zoomY = _room.Viewport.TweenScaleY(4f, 2f);
	Task rotate = _room.Viewport.TweenAngle(0.1f, 1f, Ease.QuadOut).Task.
		ContinueWith(t => _room.Viewport.TweenAngle(angle, 1f, Ease.QuadIn).Task);
	Tween translateX = _room.Viewport.TweenX(240f, 2f);
	Tween translateY = _room.Viewport.TweenY(100f, 2f);

	await Task.WhenAll(zoomX.Task, zoomY.Task, rotate, translateX.Task, translateY.Task);
	await Task.Delay(100);
	await _player.SayAsync("Hmmm, nobody seems to be home...");
	await Task.Delay(100);

	zoomX = _room.Viewport.TweenScaleX(scaleX, 2f);
	zoomY = _room.Viewport.TweenScaleY(scaleY, 2f);
	rotate = _room.Viewport.TweenAngle(0.1f, 1f, Ease.QuadIn).Task.
		ContinueWith(t => _room.Viewport.TweenAngle(angle, 1f, Ease.QuadOut).Task);
	translateX = _room.Viewport.TweenX(x, 2f);
	translateY = _room.Viewport.TweenY(y, 2f);

	await Task.WhenAll(zoomX.Task, zoomY.Task, rotate, translateX.Task, translateY.Task);
	_room.Viewport.Camera.Enabled = true;
}


On top of that, the engine supports custom shaders, object compositions, independent resolution, parallax and more.

Dave Gilbert

#82
This kind of thing is a BIT out of my wheelhouse, so please correct me if I'm wrong. It seem like the engine is being fragmented and evolving in completely different ways by different people, which means we will have several different versions of the engine that all individually do awesome things but are impossible to merge together cohesively. Again, this kind of thing is WAY above my head, but my first impression is that this is exactly what we should NOT be doing? That this will inevitably lead to big problems? Again, beyond my experience, but my first reaction is to go "Eeek!"

As I said before, getting new development features is less of a priority for me then aiding ease-of-use for players. 90% of my tech support questions are caused because winsetup is arcane and clunky, and if the wrong options are chosen the game just refuses to play instead of giving useful feedback. For example:

The eternal struggle between DirectDraw and Direct3D. In many cases, one of the drivers will work but not the other. If the wrong driver is chosen by default, the game just will not start. It would be nice if the game could detect which one your computer will run, and just switch over to it. 

Also, the options for fullscreen mode are confusing. Currently there are three:

-Max round multiplier
-Stretch to fit screen
-Stretch to fit screen (preserve aspect ratio)

The average user will not know what "max round multiplier" means. *I* don't even know what it means, nor can I find an explanation anywhere on this forum or in the manual. And I don't understand why anyone would want to "Stretch to fit screen" and NOT preserve the aspect ratio. If there's a reason for including that option, I am unaware of it.

OK this has gone slightly off-topic. I'm aware that these are issues/questinos that I should have brought up before, but never did because I didn't think they were a priority for people. I've been encouraged to be more vocal so this is what you get. :)


Calin Leafshade

Well I mean, to be clear, none of my work is dependent on AGS in any way. It's an entirely new engine that borrows some of AGSs concepts because they are good.

This is really how software gets developed. I try something with a unique perspective, so does Tzachs, so does scotch and then the best one "wins" so to speak. My "no-editor" approach is faster and easier for power users but less friendly for newbies and that's ok. The people who don't want the complexities of an editor can use Adore and the people who think the editor provides a good point of reference can use Tzachs'.

I'm certainly not forking AGS in any sense and AGS developed games would not work in Adore.

Snarky

Quote from: Dave Gilbert on Fri 21/04/2017 15:50:58
As I said before, getting new development features is less of a priority for me then aiding ease-of-use for players. 90% of my tech support questions are caused because winsetup is arcane and clunky, and if the wrong options are chosen the game just refuses to play instead of giving useful feedback. For example:

The eternal struggle between DirectDraw and Direct3D. In many cases, one of the drivers will work but not the other. If the wrong driver is chosen by default, the game just will not start. It would be nice if the game could detect which one your computer will run, and just switch over to it. 

Also, the options for fullscreen mode are confusing. Currently there are three:

-Max round multiplier
-Stretch to fit screen
-Stretch to fit screen (preserve aspect ratio)

The average user will not know what "max round multiplier" means. *I* don't even know what it means, nor can I find an explanation anywhere on this forum or in the manual. And I don't understand why anyone would want to "Stretch to fit screen" and NOT preserve the aspect ratio. If there's a reason for including that option, I can't think of one.

("Max round multiplier" means that you multiply up the game resolution to the biggest integer number that will fit on the screen, thus ensuring sharp pixels. So a 640x480 game on a 1920x1080 screen will be running in x2 = 1280x960, because x3 = 1920x1440, which doesn't fit. This setting is usually the best option for windowed mode.)

Writing an alternative to Winsetup really is easy, though (it's just windows app with dropdowns/check boxes to make selections, and then read/write the configuration to/from a text file). If your players don't find it usable, create your own setup program! Stuff with Direct3D/DirectDraw or the game failing to run is harder to fix, but is the sort of thing that is built deeply into AGS â€" one of those arguments for a comprehensive rewrite / starting over.

Crimson Wizard

#85
Oh great. So now the options in winsetup are confusing. And this is a great moment to tell this. Not the moment when I was asking advice on forums to how organize it, and name those options. But almost a year after it was made.

I am done. And out of here.


QuoteWriting an alternative to Winsetup really is easy

Of course it is. Certainly more easy than fixing savegames or exporting game to iOS. There are millions of coders around the world who could do that, but it's just that everyone prefer to whine about winsetup is confusing and asking me to revamp it, choosing time when I cannot do that.

Dave Gilbert

This was not my intention and I apologize. This thread seemed to indicate that a "developer perspective" was wanted, so I gave it. I understand that not everything can be done at once. I am sure there are reasons why things are set up the way they are. Reasons that I am not aware of.

As I said, I am just a user of AGS. I don't understand how the engine actually works, so I am inevitably going to make a request or make a comment that is "wrong" And I don't want you to quit in frustration because of it. My comments are obviously making things worse, so I'll back off for now. But please reconsider.

JanetC

Quote from: Dave Gilbert on Fri 21/04/2017 15:50:58
This kind of thing is a BIT out of my wheelhouse, so please correct me if I'm wrong. It seem like the engine is being fragmented and evolving in completely different ways by different people, which means we will have several different versions of the engine that all individually do awesome things but are impossible to merge together cohesively. Again, this kind of thing is WAY above my head, but my first impression is that this is exactly what we should NOT be doing? That this will inevitably lead to big problems? Again, beyond my experience, but my first reaction is to go "Eeek!"

Our fault too! We currently have a mutant version of AGS that works great for iOS but isn't integrated with the main branch.

m0ds

#88
Quote2. Talking about bringing in professional programmers. Just...stop.

Sure, let's have all the local, capable programmers splinter off and create their own adventure game engines instead, as this thread seems to  indicate is happening. Is there a reason why these people have decided to make their own rather than contribute to AGS? You tell me.

Quote3. Making this all about money. It's not. And attempting to pay someone to do something they have clearly lost interest in doing isn't going to help matters.

So you don't understand the philanthropic aspect, and how just because one person doesn't want to be imbursed somehow can only mean no-one does, nor should be. Granted, making it all about money is not a good thing, but don't get narrow minded and make this all about "money + CW". There's a lot more to it than that, ie a community thriving from funds. Someone who doesn't want to be paid can still quite easily accept that cash and pass it onto someone they feel is more deserving, or charity. There's occasions where it's kind to refuse money, but there are those where it's just being a stubborn dick about it, dragging everyone elses potential earnings down with you.

I said it to Snarky and I'll say it to you - stop shutting or trying to shut down lines of opinion. You're better than that. And the buck of the discussion of money does not stop with you, it really doesn't.

Alongside people who've never earned from AGS telling us not to involve money, whilst we're at it, let's definitely also have more people who've barely touched/used AGS in 10 years lead our topics of conversation about the engine. It makes total sense ;)

CW, it might actually be worth stepping back, down, or away. It would force the AGS community to rethink or restructure the way it procures its development and that seems a pretty relevant thing to do at the moment.

ps. Hi scotch!

Calin Leafshade

We could start an indiegogo and then never deliver a product, eh m0ds?

The point is that you couldn't pay me enough money to put up with supporting that code base.
It has to be a labour of love or you just won't get the commitment you need.

Professional programmers just don't go into open source projects to get rich.. there are better ways of doing that.

m0ds

#90
Not even relevant. We're discussing AGS and its potential/future, not my personal projects ya smarmy git.

Perfect example though of someone that can only equate money to themselves, and not others, nor any consideration on how to pass it on. It's not necessarily even your fault, as you're in the majority, it's more of a society controlled perspective.

But, who said anything about getting rich?

I don't know the technical ins-and-outs of AGS, and would admit I don't really have a clue on what's best for the technical team. The things I'm talking about here, are things that I feel from some of my personal experiences and strengths, of for whatever reason sticking around here for 15+ years, granted that doesn't include releasing own point & click adventures, but I know how to make money here, I'd like to learn how to do it for the benefit of others stronger than I do currently, and I know how to get people together when it's needed or is innovative (ish). You can choose to make use of this or sweep it aside, it doesn't bother me either way, but that's why I think such things could be important here, because they have been a positive benefit to me, and I'd rather pass that on that "stick with the norm" of everything being the way it has been for 20 odd years. You'll have to pardon me if that, admittedly, impatience, rubs off as being a dick :=

Now my slightly OT but important Q, to Dave, is would you be the official 'treasurer' of AGS? I think everyone here could agree it's okay if all of AGS's potential earnings went through you, be they small or not small. Without forcing on you the burden of book-keeping for it, I'm just curious, is it something you'd do, or consider? Not suggesting some kind of crazy monetization, nor saying AGA is incapable (being the person any funds go to right now) but the notion - if the community needed a standing point on who and what represented any of its finances - would you do it?

Snarky

Quote from: Screen 7 on Fri 21/04/2017 19:41:40
Not even relevant. We're discussing AGS and its potential/future, not my personal projects ya smarmy git.

When you're saying that your opinion on making the engine commercial is more worth listening to because of your experience making money with AGS, and that your perspective on money is more enlightened than what the rest of us can grasp, it's a bit relevant...

Quote from: Screen 7 on Fri 21/04/2017 19:06:14
Alongside people who've never earned from AGS telling us not to involve money, whilst we're at it, let's definitely also have more people who've barely touched/used AGS in 10 years lead our topics of conversation about the engine. It makes total sense ;)

QuotePerfect example though of someone that can only equate money to themselves, and not others, nor any consideration on how to pass it on. It's not necessarily even your fault, as you're in the majority, it's more of a society controlled perspective.

SilverSpook

#92
Haven't had time to read this entire thread, but I'm interested in the Patreon or other on-going funding mechanism to help the the AGS developers out.  Especially if it could lead to better user experiences and Mac / iOS compatibility.

I'm also with Wadjet Eye in that I came from alternate engines, Unity in particular, because AGS was just way, way easier to make adventure games in.  And I'm saying that having been lead programmer on 3D Unity games and Half Life and Unreal mods over decades -- AGS just has the least overhead to think about, the least fixer-upperness to fixer-up, and is the most robust in the adventure scene.

m0ds

#93
QuoteWhen you're saying that your opinion on making the engine commercial is more worth listening to because of your experience making money with AGS, and that your perspective on money is more enlightened than what the rest of us can grasp, it's a bit relevant...

No sir, it's not. I'm clearly not talking about any experience from a game that's WIP, am I. And yes, considering I pay 7 community members, I probably am more enlightened on such topics. Not so much as Dave though, that's other level shit, $trillions ;) But "engine commercial" was merely one line of discussion, I was actually talking about the whole lot, an AGS economy, even if it's a small one, for the benefit of all, and if not for our benefits, then for others. All the other ships have their nets in the water, catching this never ending source, but we just paddle along with our pride. But it's cool... I know money discussion and AGS go together like chalk and cheese. And that's not a problem. Just a bit tough to work with, when you're in my position. See my previous post, this is why I ask Dave such a Q. I'm all for the idea of a little profiteering, and I'm not ashamed of it. The same way a growing number of us round here aren't ashamed of profiteering from AGS itself. If it can be done in an agreeable way around here, it should be done, to quote charles cecil, "simply no two ways about it". Until AGS is raising money for charity or struggling devs on a regular basis, which it could do quite easily, you can consider my experience here "incomplete". I apologize for being blunt and a dick, but I'm not sorry for my strong view point on this, no matter how awfully I put it across :=

That brings me back round to one of my earlier posts about a sense or purpose, which IMO is more important than any cash, which could be argued may also 'erode' a sense or purpose, but I honestly feel it could help this community, and the hearts of its visionary designers and players, etc etc, to feel it's giving back more than it ever intended. Handled correctly, cash is no less a useful tool as AGS, notepad or a spanner. For some reason, we keep it actively and persistently out of our toolkit.

Calin Leafshade

The money issue has kinda already been answered.

Dave Gilbert tried to pay several people to work on AGS, including myself. All refused.
CW himself said that he doesn't want money.

I mean, show me *anyone* who would work on AGS for a reasonable sum who has the skills to do so.

m0ds

#95
Dave and CW are 2 people. This is a community of several thousand. Can you, with certainty, apply the same answer to monkey05_06, alan v drake, rickj (not sure if he does AGS stuff)? And people who have experience but have never come forward to this point in time, either because such a paid opportunity has never existed or because there's been not so much call for it with CW doing a good job of it in the meantime and CJ for love of labour before that?

There's never been a concerted effort to call for programmers. And like any audition process, you never know what you're gonna get.

People refuse the cash because they don't want to be obligated to the project. That's understandable. But someone will be. There's something for everyone, or rather, someone for everything. Don't get me wrong, if someone like CW wants to carry on, unpaid, etc etc, that's no problem to me personally. But it might have more (worse) ramifications than someone being obligated and paid (depending on how important/drastic the possible ramifications are for you). It kind of does for me, and it sounds like it kind of does for Dave. But it's true, that's seemingly only relevant to a particular side of the usage of AGS (commercial games).

When it comes to the big questions here at AGS, we usually put it to vote. If this question is "already answered" then way too much is getting "answered" simply because of a forum post by one or two members, which doesn't seem a very fair or democratic way to come to that conclusion. I realize, it hasn't come to that lately. But it looks like voting on something is going to be necessary at some point...to help find support for CW, to stabalize AGS' future, something.

AGA

Out of interest, do you know what contracting developers charge, Mark?  And I'm not even talking particularly good ones here.

RickJ

AGA, I believe the going rate for contract developers is in the neighborhood of $10000 per month. I recently saw an ad for a full time lead developer that offered $110k to $140k per year.

LimpingFish

#98
So a handful of people depend on AGS to make a living. So what? They outlaid no money for the program, and pay no licensing fees to use it in a commercial capacity. If I had a commercial AGS game in the works (and who says I don't?), I wouldn't automatically assume that I could then demand the whole AGS project lean into my way of thinking because I have a couple of quid riding on it. Like I said earlier, if AGS doesn't meet their need, and they have the money to pay for a commercial engine (which, let's be honest, would cost a fraction of the amount required to pay a programmer to develop AGS for an indefinite period) then pay for one! I'm not saying it's current AGS or nothing, but can we at least stop decrying a future in which we don't monetize the community?

Instead of this 1% demanding how we should decide our future, and dictating who has a right to talk about it (the cheek! :=) based on the fact that commercial endeavors are something they need to think about, how about we get our shit in order (I mean, secret rewrites of the engine going on, while the person in the driving seat of development has a public existential crisis about the validity of the current engine?! Way to go guys. FFS!) and secure the immediate future of the program.

Crimson Wizard is out, it seems. That sucks, but he owes us nothing, and has given us more than we had any right to expect. So many thanks to him, and I wish him all the best.

Now, what do we do next? Any of you secret-Santas interested in a spot of philanthropy?

...

I am angry and annoyed with how this is playing out.
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Grundislav

Maybe I'm chiming in a bit too late in all this, but as another commercial AGS developer, here are my thoughts:

AGS is and always has been great and easy to use. I appreciate the fact that people went ahead and continued to develop the engine and add new features after it went open source. Personally, I can count the number of times I've thought "man, I wish AGS could do this" on one hand. Then again, my projects have never really been ambitious to the point of requiring the engine to do anything crazy.

As it stands right now, I'm fine with the current version of AGS. If development on it is abandoned, that's fine with me. I'd much rather it stay as is than have Crimson Wizard or anyone else who decides to take on the responsibility suffer any sort of emotional breakdown over it. That's just not worth it.

Does AGS need anything more? Maybe? But I can't really think of anything that it absolutely NEEDS for my purposes.
Is this opinion completely egocentric? Absolutely, but again it's my opinion, and I'm presenting it from the point of view of my needs, which are probably similar to a lot of other devs.

It seems that the community at large is pretty happy with most of the things AGS can do currently. Those who can accept what it does do well with it. Those who want other things go on and use other engines. That's just how it goes.

I don't think AGS should have a Premium Edition or be monetized in any way, because quite frankly, the demand for AGS point and click adventures isn't high enough. You're not going to get thousands of developers flocking to buy this new and improved licensed version of AGS. You might get twenty, if you're lucky. So it would effectively be a waste.

Anyway, that's all I've got to say on the matter!

Andail

Before I read this thread, I was sure there existed sums between zero and 10k dollars a month.

Snarkiness aside, raising money to get someone to look after the maintainance and development of AGS is at least something we haven't tried. What we've tried so far has led to CW feeling downtrodden and depressed, to the point that he's about to leave the community, and a half dozen people making their own branches or in some cases entire programs with not much coordination.

Just sayin'.

AGA

Quote from: RickJ on Sat 22/04/2017 00:48:16
AGA, I believe the going rate for contract developers is in the neighborhood of $10000 per month. I recently saw an ad for a full time lead developer that offered $110k to $140k per year.

Oh yeah, I know.  I'm an IT contractor myself (testing).  It just doesn't seem that Mods realises the costs involved.  AGS couldn't afford *my* rate, and developers get paid far more than I do here.

RickJ

AGA then you know how much it sucks to work on other peoples code. ;)

m0ds

I don't Berian, but can a 9-5, 50 weeks a year job wage really be applied to what we'd be asking of someone? Maybe 4-8 hours a week, but not 50. There's always room for negotiation, and the AGS side of the table probably has more sway than the other.

Crimson Wizard

#104
Quote from: Andail on Sat 22/04/2017 09:38:54
Before I read this thread, I was sure there existed sums between zero and 10k dollars a month.

IDK if people here keep this in mind, but if salaries are measured in $ they vary from country to country.

When you say $10.000 a month I am like o_0 because in my country that's what I get in 10 months.


Quote from: Andail on Sat 22/04/2017 09:38:54What we've tried so far has led to CW feeling downtrodden and depressed, to the point that he's about to leave the community

No, it was not that.
I was feeling so terrible earlier this day that I wanted to write another big stupid and stresful post, but now I feel rather numb.

The truth, that I has finally realized, or rather forced myself to admit, is that I am coward. The simple and terrible thing was that I was not brave enough to try something like, for example, scotch is working on right now. Even though I was supposed to, believed I should, and even was making plans about that.

Had I find bravery to do that, we could have a replacement engine for AGS years ago.

What was the result of my cowardice is 5 lost years, a wasted time and opportunities, both mine and yours. I feel like a greatest liar now, an impostor, who pretended that he is doing something good. Your community deserved better than that.

I cannot forgive myself for this, even when people tell me that I did well, that does not persuade me even a single bit, because in my heart I know that's not true.

Andail

#105
Yeah, like I said there seems to be a concensus that this has to be done for either $0 or $10000 a month, which strikes me as odd.

I was inclined to advocate raising money for this, but I'll respectfully leave this debate and hope that you can come up with a solution. Me and Joel will manage anyhow...

I forgot to say hi to Scotch by the way. Hi!

Edit:
Quote
No, it was not that.
I was feeling so terrible earlier this day that I wanted to write another big stupid and stresful post, but now I feel rather numb.

The truth, that I has finally realized, or rather forced myself to admit, is that I am coward. The simple and terrible thing was that I was not brave enough to try something like, for example, scotch is working on right now. Even though I was supposed to, believed I should, and even was making plans about that.

Had I find bravery to do that, we could have a replacement engine for AGS years ago.

What was the result of my cowardice is 5 lost years, a wasted time and opportunities, both mine and yours. I feel like a greatest liar now, an impostor, who pretended that he is doing something good. Your community deserved better than that.

I cannot forgive myself for this, even when people tell me that I did well, that does not persuade me even a single bit, because in my heart I know that's not true

Ok, that sucks, mate. I'd tell you that we're all greatly indebted to you, and this community is eternally grateful, but that has already been said, so I don't reckon it helps.

Maybe you should go see someone professional and talk about your self-criticism, because it seems like you're having a bit of an issue there. I mean that in the most friendly, non-patronizing way possible; we're not psychologists (well, most of us aren't) here so we don't know how best to encourage you, or prevent you from criticizing yourself so badly.

Or do you reckon there's a way for you to work with AGS and still feel good about yourself and what you're doing? Otherwise maybe take a little break, get some distance between yourself and AGS, maybe as I said speak to someone or just pursue other avenues in life, for however long.

[delete}

#106
confirmed


AGA

Quote from: Andail on Sat 22/04/2017 16:05:55
Yeah, like I said there seems to be a concensus that this has to be done for either $0 or $10000 a month, which strikes me as odd.

The people who do it for love don't seem to want to be paid.  If not that, then we'd need a professional.  In western Europe the going rate for a professional would be â,¬50+ an hour, although yes of course that differs around the world.  It might not be a 40 hour a week job, but it's about the total hours spent - 100 hours is still â,¬5000, whether it's spread across 2.5 weeks or a year.  And a professional is far more likely to want to commit themselves to one project, get it done, then disappear, so a lot of money would need to be laid out in a short period of time.  Also there is of course the fact that anyone being paid who isn't on a legally enforceable contract could be scammer and end up stealing thousands of dollars.  That would only really work if the quoted a price up front, did the work, then invoiced us for work done.

Joseph DiPerla

I thought occurred to me. What if we use someone to be the gatekeeper of funds. The community as a whole can recommend a feature, bug fix, core upgrade or port. The community votes on the most important of all of these needed. Or the main developers or administrators can decide which are the most important. We can then decide how much to pay for each feature to be developed. The community will then contribute to whichever ones they feel they want to contribute to. When the next goal hits 100% funded, it will be listed as a job that is available to be taken on.

We now advertise what we are trying to do with AGS next. A developer, whether in the community outside, will need to implement said suggestion/feature/bug fix to satisfaction. Once a developer does so, the allocated funds would be given to him upon completion. 3D rad had done this many years back. Had a much smaller community than this. But the developer was given thousands of dollars in donations and a lot user favorite features were implemented. This allows development to continue with those who want to work for free and motivate others who want to be compensated for their time. The product remains free and noone needs to purchase or donate if they don't want to and the money wont go to anyone unless there is someone deserving of it. And if noone claims the feature, then the donations for that feature, after a year of no bites, will go towards server costs or agsarchives or something.

Does this make sense? If anyone has used 3D Rad, you will know what I am talking about. Only difference this wont go to one developer, but will sort of work as headhunting.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Lord Vetinari

#109
Regarding money-for-engine/editor development, what about a Patreon? I know that a lot of people are turning to it and many fails, but given the size of this community I think it could work. And the beauty of Patreon is that if it succeeds it can raise a substantial amount of money wile leaving the patrons free to choose how much they feel like contributing.

I mean, AGS is doing huge things for me. I'm mostly a self taught programmer, I actually don't know anything, I come up with solutions that I think are smart and then turn out to be 30 years old outdated practices that are now shun upon by real programmers, etc. I'm also not making a penny from my project, not because they are that bad, but because I don't feel like asking money for them (yet? who knows). I don't want to sound ungrateful, and being a freelancer artist as my daytime job I know well that people should earn money for their work, but this being my usage of AGS, I don't know if I'd buy AGS to basically toy around a bit with it. I know about Unity's Adventure Creator and, beyon Unity not being as user friendly as AGS, I know that 70$ is a bit too much for what I'll be doing with it in the foreseable future (which basically means forever, because if there isn't something that lets me monkey around with coding untill I become a bit less crap, I'll never think that paying for a development tool will be a wise move for me).
I'd gladly put a few bucks on it's Pateron page, though.

m0ds

#110
My Lord, though I have some very minor reservations about Patreon, I think that could work well as an initial micro-economy for AGS (the community and the engine). It's more manageable than some of my site-wide suggestions, and it's not as "temporary" a solution as a Kickstarter. It can also alleviate "forcing" money on someone or some particular aspect, by creating "side pots" as it were, that go towards various areas, ie the engine, ie community funds. It also means "no change" to the status of the engine itself, no charges etc. It can keep people we already have in temptation rather than having to secure new, ultra-expensive Berian programmers ;)

A patreon, or even a kickstarter, is going to require someone to run it, and to deliver the perks and stuff. And as I asked Dave earlier, someone to be a trusted treasurer of such a thing. I think I could probably commit to a 6-12 month patreon stint myself, to get it off the ground. I'd probably opt for a monthly micro-payment selection over the "per project" setting, because that could become too stagnant IMO. We can incorporate a raffle for free games and even cash lottery and make it a real buzz to be a part of this. In an effort to not be entirely self serving, also attract people who don't even use this place or engine, by not giving it a narrow focus like "developer payment". And if you don't want to participate in it like that, there is no obligation to do so. As Andail hints, we do not know where the roof is on this yet, and that shouldn't be disconcerting, it should be exciting!

But I still think a straw poll of some of the bigger "questions" in this thread should be conducted first, kickstarter/patreon, does it make sense to develop ags further, and a few others - to get an idea of the right direction and the choices/options people are happy with (including those that don't post, which is fine, but our voices are not the only voices here, I'm sure). And for CW, it is important to do your own projects and not other peoples for your own sense of purpose and sake of wellbeing, so definitely follow that niggling desire. But here's hoping you will not completely abandon AGS!

blur

Will the person creating the Patreon account not be liable to pay income tax?
Wouldn't it be advisable to create a a tax-exempt public trust to avoid that first?


Ali

I'd like to repeat how grateful I am towards Crimson Wizard for his improvements to AGS. I'm sorry this has got so stressful for you. You've really helped me out.

BUT, I think this thread (and the others like it) demonstrate that a community-run, vote-for-the-feature you want system is unlikely to work.

I'm all for raising funds to support AGS, but without leadership and a plan for the future, how will that work? How much money will people be prepared to give with no understanding of what it will be spent on? Why should the entire community get to vote, when a smaller proportion is providing the funds? What if the most popular features are the least affordable? What if we can't agree what to do? Bad feeling and anger would build up quickly - even more quickly than they have in this discussion.

As I'm sure I said last time this came up, I don't think it helps for us to argue over our vision of AGS in the future, or who we think ought to take charge. I think it would make more sense for us to offer to help support AGS in whatever way we can.

When (and if) the time comes, I would be glad to help with raising funds and PR/copywriting in support of the project.

Joseph DiPerla

I've never written anything useful in C++ and no matter how hard I try, I just can't work with C#. I am mostly a VB/VB.net, B4A/B4J, Javascript/CSS/HTML/PHP/mySQL developer. What I propose, I do not suggest without the consideration that a lot of work may go into this. But perhaps, this may reinvigorate the current development team to want to develop AGS further. Now, this is no easy task and it may very well years to get to a point that you can show the public anything promising... But maybe with a development team(CW, Gurok, Janet, Dave, Monkey,Alan, annd others), prior source from the AGS Source code to learn from as well as some other engines(Sludge, Wintermute) and a community eagerly awaiting for something new... The team can begin work on AGS 4.0 - a completely redeveloped AGS.

Daunting, no doubt. Hard to achieve, of course. But possible and very much worth it. This doesn't mean that AGS 3.4 needs to stop being developed on. Perhaps, in their spare time, the dev team or whoever else, can fix the remaining bugs. And in their spare spare spare time, the team can work on supporting even older games. But AGS 4.0 will be something fresh and new, yet familiar and useful. What I propose is to plan your goals, decide what stays, what changes and what has to be new. Get input from the community, see what features they would like, what annoyed them about the previous versions of AGS. Find a way to import and convert projects from 2.72 up to 3.4 into AGS 4.0 so that teams working on games are not left in the lurch. Figure out you target Audience: Newbies or experienced developers or a little of both. How should scripting be handled? Should it continue to use it's own scripting language? Or should we move to LUA, C++, C#, Javascript, etc..? Maybe support more than one, like Unity does. Could open AGS to more interested developers. What are the target platforms you want to support: Windows, Linux, Mac, ChromeOS, Android, iOS, Blackberry, WebOS 3.0, tvOS, Android TV, Amazon Fire, Tizen, Windows phone, Roku, Browsers, Consoles(PS4, X-Box One, PSP Vita, Wii U, Nintendo Switch), etc... Once figured out, research and decide the best way to implement said goals.

I can tell you what needs to go: Supporting backwards compatibility. This may mean that abandoning runAGSgame may need to be deprecated too. I like the idea that someone would use that feature for a game, but I have no idea how many have actually done so.

What I would keep: The text parser. AGS may very well be one of the best tools and to create a text adventure or visual novel game. I don't want to lose that.

How I would develop it: I would go with web technologies such as Javascript, CSS, HTML, JSON and utilize AJAX/JQuery. Almost all systems support this technology and their are tools to create native apps(Cordova, PhoneGap, etc..) Javascript can be obfuscated. HTML has great Canvas controls and Javascript is very capable of creating adventure games(http://jsgam.sourceforge.net/).

If instead you wish to stick with C++, perhaps we can use Emscripten(http://kripken.github.io/emscripten-site/) to run it as a Javascript web app so it can be ported to other OS. I would switch from Allegro 4.2 to SDL 2.05 or at the very least Allegro 5.

I would definitely target Windows, Mac, Linux OS as well as Android, iOS, tvOS and AndroidTV, Tizen and WebOS 3.0(I have an LG TV with that installed and it is awesome and very capable of running great games!). Secondary systems to target would be the consoles. Lastly would be systems that will disappear such as Amazon Fire(Did I say that out loud???? I hate Amazon), Blackberry, Amiga, etc...

As far as the editor goes... I would develop it using the B4X Technologies or continue with C# or convert it to C++. The editor would need to be working on at least a Mac and Windows OS. However, I can already see people griping about wanting it on Linux and some day on the mobile OS. That is why I recommend(and have recommended before) that B4X software be used. I know it is not free, but it is not costly either and B4J is completely free. A feature I think would be beneficial for the editor are team tools(EG: Incorporating GitHub, team communication, source control, etc..). I would also recommend bring back the animation editor and the interaction editor. Visionaire's and Adventure Creators biggest selling points are it's lack of coding required. Even one of Unity's biggest selling apps is PlayMaker(Which adds an interaction editor into Unity). As far as an animation editor, Mechanim is a big advantage for Unity.

Now I know I probably opened up a can of works here, but it seems there is not much else to go to in this thread. After six pages it seems that half the community doesn't want to pay while the other half does and they cant decide how to incorporate payments. CW still hasn't given us the exact answer he needs to hear to make this worth it for him. Perhaps he is not sure himself, which is understandable. The thread seems to be going in circles and I see some snarky remarks(No pun intended for Snarky) from one user to another, albeit slightly and not too terrible. I think too it is fair to say that a few people are drifting away from AGS to other engines because of interaction editors or because of portability or even the pure fact that some engine is charging money. I call that the Starbucks/Panera Bread effect... People think that because something is packaged in a fancy way and is expensive, that clearly this is the better product. (I hate both establishments, btw).

Sooo.. Then... AGS 4?
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Alan v.Drake

There are already some attempts in the work: Scotch is working on a Javascript AGS version, Tzachs is working on a C# redesign and Calin has made an adventure engine with LUA.

On my part I'm planning to strip AGS from all the backwards stuff, doesn't matter which engine will end up winning the throne, this has been postponed far too long (I blame all the backwards evangelists from AGS forums) and will help make things clearer improving also manteinance a little.

And who knows... perhaps others will join if the code looks less aggravating, after all AGS already got all the features and IDE ready.


- Alan

Crimson Wizard

#115
Quote from: Alan v.Drake on Mon 24/04/2017 07:15:44I blame all the backwards evangelists from AGS forums

Not sure whom you are talking about, but I do not remember any "backwards evangelists" on those forums. Most of the stuff that people asked to keep over those years, like 8-bit palette mode, does not need to be kept in "backwards" way, but could be reimplemented in the modern way, like using shaders.

As I said above, the only person to blame is me, because I was not brave enough to get rid of old code and start writing new one.  And looking at my work, potential collaborators simply did not participate.

I do not know if you realize, but I did as much wrong to this project as good (in the best case). Practically deviated development from the way it should have went.


---------------------------------------------------------
@Joseph DiPerla, I do not mean to be rude here, but I find the posts like that hard to comprehend. You throw lots of ideas and themes in one page: technology, design, features... some of them sound completely random.

Quote from: Joseph DiPerla on Mon 24/04/2017 02:17:43The editor would need to be working on at least a Mac and Windows OS. However, I can already see people griping about wanting it on Linux and some day on the mobile OS. That is why I recommend(and have recommended before) that B4X software be used. I know it is not free, but it is not costly either and B4J is completely free.

You keep mentioning this Visual Basic platform, but how many people around here know it and can (want to?) program in?
With Microsoft opening .NET Framework sources, and Mono already supporting .NET 4.5 (or so I heard), running the Editor on Linux seems just a matter of time and some fixes in code. In fact, one of the contributors is already planning such fixes in our repository.

Alan v.Drake

Quote from: Crimson Wizard on Mon 24/04/2017 09:05:46
I do not know if you realize, but I did more wrong to this project than good. Practically deviated development from the way it should have went.

The only wrong thing was keeping the compat.
You did reorganize the code better and made a player for older content. That's ok too I guess.

My memory is completely unreliable, but I think you got peer pressured by the community into keeping the backwards compat. You do have a weak spot when it comes to ags, probably because you've been in here forever, how many times did the agsers use that to exploit you? :-D

As I see it there's no great damage, it's still better than the original code. To me the day the code was opensourced feels like just 2 years ago.



- Alan

Joseph DiPerla

Hey CW,

You didn't sound rude tome to be honest. My apologies... Sometimes you get a thought in your head and your hands type it out before you can write out a reasonable post and then you end up getting carried away with a bunch of ramblings...

But honestly, all I was doing was suggesting an attack plan to go forward with, eg: Planning what is needed, what is not needed, who will work on it and how it will be worked on, etc... Then it got into what I personally think would be a good strategy. Not that what I personally think really matters. It is merely a suggestion.

In fact, most of what was written was just spit-balling. One of our project management classes at work trained us to think up as many ideas as we can, even things outside the box. Then put it on a sticky and stick it on a board. Basically that is what I do out of habit.

But going back to your Visual Basic Comment... I am just throwing that out there as a solution. People keep wanting a multi-platform editor. And that is fine, especially since Mac is gaining a little traction in recent years. I hear C# is portable to other OS, but I haven't seen much on this or even a lot of successful ports. Maybe I am not looking hard enough. An editor in C++ seems ideal, but maybe not. I hear GUI related projects are very difficult with C++ or maybe just tedious. Again, I do not do C# or C++ so I can be wrong about that. The B4X software suite reaches all major platforms with minimum effort to port between the different systems and has a lot of community and developer support. Keep in mind that when I came into this community back in 98/99, VB was what a lot of developers were using for Windows Based Apps. In fact, a lot of folks in our community were using it too. So I do not believe it is accurate to say that this is an unfamiliar system. Then again, the community has changed a lot over the years and the new folks may not know VB or .NET language at all. Or maybe they do know it, but it just is not an ideal or preferred system, and that is understandable.

I just think that for AGS to move forward, we need to think modern and outside the box. So that means that nothing should be off the table when it comes to just what the considerations are. If we say "This is no good" or "We will never use this" without learning more about it or about what the community can do, then we are limiting our potential. And I say that for all things. Maybe B4X is not a great idea. Maybe we should stick with C#. Maybe we should convert to C++ or Javascript. Maybe AGS should be a Unity plugin... All I am saying is that we need to consider all options.

Please forgive me, English is not my primary language, so some of my posts might not make as much sense as someone else's and my grammar might be backwards.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

RickJ

Quote from: Alan v.Drake on Mon 24/04/2017 09:59:59
Quote from: Crimson Wizard on Mon 24/04/2017 09:05:46
I do not know if you realize, but I did more wrong to this project than good. Practically deviated development from the way it should have went.

The only wrong thing was keeping the compat.
You did reorganize the code better and made a player for older content. That's ok too I guess.

My memory is completely unreliable, but I think you got peer pressured by the community into keeping the backwards compat. You do have a weak spot when it comes to ags, probably because you've been in here forever, how many times did the agsers use that to exploit you? :-D
...
Undoubtedly there is enough blame to go around and we are all culpable. 

Its that the same old story about 4 people named Somebody, Everybody, Anybody, and Nobody ... :-D
QuoteThere was an important job to be done.
Anybody could have done it.
It was Everybody's responsibility and
Somebody should have done it. 
The boss got angry because Nobody did it.

CW makes a good case that the AGS runtime (i.e. the engine part) has reached a point where further development is becoming impractical.  Others have pointed out the advantages AGS (i.e. mostly the IDE part) has over alternatives.  I have no reason to disagree with these assessments. Further, we have at last three new runtime projects, based on lua, C#, and WebGL, currently under development that do not have the same limitations as the current AGS runtime but lack and IDE.

So, we have a great IDE integrated with a runtime that is difficult to improve and becoming obsolete.  We have three newer runtimes under development without the current runtime's limitations.  One can only wonder if it would make sense to move current AGS development towards the possibility of the IDE targeting multiple runtimes?   
 

homelightgames

It may or may not be helpful to know that feeling like an imposter is actually pretty common in game development. So common, there is something called Imposter Syndrome. There's a Polygon article about it, and some GDC videos on Youtube too. Like I said, it may or may not help to know that many people feel like they've only made terrible mistakes and are a fraud every time someone expresses thanks.

I think the money thing keeps on coming up because it's how different people are motivated. Some people are motivated by money. Some people aren't motivated by money at all. For some, money is even corrupting. I think that's why it's hard to address because people are so different that it makes it impossible to make any sort of blanket yes/no.
I also think it's because money is also an obligator, and even if someone spends 80 hours a week developing something, they do so by their own choice and the idea of being obligated is off-putting.

At the end of the day, and from my own personal experience, any sort of (game) developing is hard because so many decisions you can't know what's right and wrong until after the fact, which is why making and learning from mistakes is so valuable. It's also hard when you don't think anyone gives a crap about what your doing (which is probably more relevant for me).
And while I think it's fun to dream up the possibilities of redoing everything, more often then not, and for better or worse, the thing that usually happens is when you sit down at the computer you continue doing what you've already started because (a) you don't want to personally feel like a quitter and consequentially a failure (regardless of whether or not people are externally putting that pressure on you) (b) it's easier to continue doing something familiar than to do something new and unfamiliar.

Perhaps the only thing I can say that could help is for your own sanity, decide when to stop/be done. Or at least when to take an extended break. I think that's necessary to keep anyone sane.

Good luck.

visionmind

RickJ

Quote...it may or may not help to know that many people feel like they've only made terrible mistakes and are a fraud every time someone expresses thanks.
I don't know about that but top engineers/programmers are never really satisfied with their work. They are in a constant state of learning by doing, the more they do the more they learn.  When you know more you are less satisfied with the work you did when you knew less.

Quote
I think the money thing keeps on coming up because it's how different people are motivated. ...
Everybody is motivated by money, the only question is how much.  The other motivation is self satisfaction which is, of course, priceless.


tzachs

Quote from: RickJ on Mon 24/04/2017 21:14:02
CW makes a good case that the AGS runtime (i.e. the engine part) has reached a point where further development is becoming impractical.  Others have pointed out the advantages AGS (i.e. mostly the IDE part) has over alternatives.  I have no reason to disagree with these assessments. Further, we have at last three new runtime projects, based on lua, C#, and WebGL, currently under development that do not have the same limitations as the current AGS runtime but lack and IDE.

So, we have a great IDE integrated with a runtime that is difficult to improve and becoming obsolete.  We have three newer runtimes under development without the current runtime's limitations.  One can only wonder if it would make sense to move current AGS development towards the possibility of the IDE targeting multiple runtimes?   

If one thinks the editor is good enough, then I agree, a focus can be made just on the engine while sticking with the existing editor. This is exactly what Scotch is doing, I believe, he mimics the engine's API precisely so you wouldn't have to change much in the editor to support it.

Personally, I don't think the editor is good enough. I agree that it has advantages over other IDEs (mainly it's focus on a single productive workflow), but in other ways I find it lacking: poor code editing capabilities, almost no debugging capabilities, no portability and also I think that pretty much all of it's UI designers can be improved as well (not to mention that the editor will need a lot of improvements to support the new engine features),
which is why I opted for re-designing everything and not just the engine.

RickJ

#122
tzachs, I went back and read your post and I find many of your editor ideas very attractive.  In my previous post I was just summarizing what I understood the consensus of this thread to be that AGS is easy to learn and a pleasure to use. 

I got the impression that you were doing the engine first and the editor later but perhaps I misunderstood you post or conflated it with others.   How far along is your editor?  How portable is C# with respect to Linux, Mac, mobile and web?

I was thinking in terms of an intermediate compiler output (similar to compiler producing .obj) that could be targeted to multiple runtimes (similar to traditional linker).  If we could define a standard api, intermediate language or whatever term is appropriate then everyone could design to that standard.  We could choose a common file format such as YAML, JSON, or XML and allow for both compressed and human readable forms.  This doesn't mean that development necessarily has to have an extra step between iterations.  A default or development engine could be defined in a configuration and the link or targeting process could be done automatically. Alternatively the editor could have an integrated engine and export to the intermediate form on demand if that would make development iterations were more speedy or efficient. I don't mean to minimize the required effort as there would surely be issues to resolve but in the long run it may result in saved effort.  It's a way of having a degree of independence between IDE and runtime.  It would make it easier to support future, not yet invented, platforms.  It would also be a way for you, scotch, colin, and the rest to collaborate and benefit from each others' effort.

Perhaps it would make more sense to apply such an effort to the editor you or scotch are planning than to the current  AGS editor.  The import thing I guess would be to capture the essence of "easy to learn, pleasure to use".  Btw, that could be a cool marketing slogan.  Just food for thought.

Crimson Wizard

#123
Quote from: RickJ on Tue 25/04/2017 05:19:05
I was thinking in terms of an intermediate compiler output (similar to compiler producing .obj) that could be targeted to multiple runtimes (similar to traditional linker).  If we could define a standard api, intermediate language or whatever term is appropriate then everyone could design to that standard.

This makes me recall an old qptain Nemo's idea about "Adventure game language", kind of "api" used to describe adventure game, which may then be interpreted by various engines as they see fit.

I would also like to add a note, that even if a global api does not exist, there is a still a chance to create converters from one data to another. Even AGS does that now to some extent, converting certain old game data into new supported form.

Peder 🚀

Quote from: RickJ on Tue 25/04/2017 05:19:05
"easy to learn, pleasure to use".  Btw, that could be a cool marketing slogan.

I like it!

tzachs

Quote from: RickJ on Tue 25/04/2017 05:19:05
I got the impression that you were doing the engine first and the editor later but perhaps I misunderstood you post or conflated it with others.   How far along is your editor?  How portable is C# with respect to Linux, Mac, mobile and web?
Your impression is correct, I have not started working on the editor (unless you count design), I'm concentrating on having an MVP engine first (and also working on documentation currently). Then I'll start working on the editor. C# is perfectly portable to Mac, Linux and Mobile. The engine already works on Mac (in fact, I do most of my development on a Mac currently) and Android, and I'm currently working on IOS, and then I'll work on Linux.
The web is another issue, unfortunately, and currently not easy for porting. The Mono team is working on supporting web assembly, though (http://forums.dotnetfoundation.org/t/wasm-asm-js-plans-projects/1947/2), so hopefully once that's released it will be possible to support web.

Quote from: RickJ on Tue 25/04/2017 05:19:05
I was thinking in terms of an intermediate compiler output (similar to compiler producing .obj) that could be targeted to multiple runtimes (similar to traditional linker).  If we could define a standard api, intermediate language or whatever term is appropriate then everyone could design to that standard.  We could choose a common file format such as YAML, JSON, or XML and allow for both compressed and human readable forms.  This doesn't mean that development necessarily has to have an extra step between iterations.  A default or development engine could be defined in a configuration and the link or targeting process could be done automatically. Alternatively the editor could have an integrated engine and export to the intermediate form on demand if that would make development iterations were more speedy or efficient. I don't mean to minimize the required effort as there would surely be issues to resolve but in the long run it may result in saved effort.  It's a way of having a degree of independence between IDE and runtime.  It would make it easier to support future, not yet invented, platforms.  It would also be a way for you, scotch, colin, and the rest to collaborate and benefit from each others' effort.
The alternative suggestion sounds much more viable, though it too will have a lot of limitations. Importing/exporting scripts between languages is not going to happen, for example. Also engine features will not map 1-to-1 so you will definitely lose information during the conversion. I'm not opposed of doing something like that in theory, but it's definitely a very low priority for me currently, top priority is build an MVP, release, get feedback and stabilize.

Quote from: Crimson Wizard on Tue 25/04/2017 09:47:28
I would also like to add a note, that even if a global api does not exist, there is a still a chance to create converters from one data to another. Even AGS does that now to some extent, converting certain old game data into new supported form.
Right, I already planned on my editor to spit up both code and json/yaml file. The code so that the user will be able to detach from the editor whenever she/he wants, the json/yaml for the actual UI designer. So using that json/yaml somebody would be able to convert to other formats (with the same limitations I already mentioned).

RickJ

tzachs, I had a look at the web assembly stuff and it looks promising.  Which GUI toolkit are you using?  Please let us know when/if the project progress past it's "secret" phase as some of would surely be interested in following along. 


JanetC

Quote from: Crimson Wizard on Sat 22/04/2017 15:46:10
The truth, that I has finally realized, or rather forced myself to admit, is that I am coward. The simple and terrible thing was that I was not brave enough to try something like, for example, scotch is working on right now. Even though I was supposed to, believed I should, and even was making plans about that.

Had I find bravery to do that, we could have a replacement engine for AGS years ago.

What was the result of my cowardice is 5 lost years, a wasted time and opportunities, both mine and yours. I feel like a greatest liar now, an impostor, who pretended that he is doing something good. Your community deserved better than that.

I cannot forgive myself for this, even when people tell me that I did well, that does not persuade me even a single bit, because in my heart I know that's not true.

Many have started new adventure game engines, few have finished. So maintaining a finished engine that people use every day and enjoy is very worthwhile. It's just as challenging as starting from scratch, because you must understand the code of others.

Plus, don't dismiss the "hive mind" of people who already know how to use an engine. If a person is just starting out writing games, AGS is well documented has a large and thriving community who can advise them. This is very important to new developers. It's lonely to use an engine that almost no-one else uses.

You mention feeling like an imposter - I do think that you should google "imposter syndrome" - this is very much a common affliction among coders.

tzachs

Quote from: RickJ on Wed 26/04/2017 14:44:10
Which GUI toolkit are you using?   
I wrote a little bit about my plan here:
https://github.com/tzachshabtay/MonoAGS/issues/137

The tldr; version: I plan on having the engine itself as my GUI toolkit for the editor (but it's not definite yet, I plan on trying it out and then evaluate how crazy it really is).   

Quote
Please let us know when/if the project progress past it's "secret" phase as some of would surely be interested in following along.
Well, technically the project has been available on Github from Sep 2015, so you can start following now :)
I plan on releasing documentation for the engine by end of next week which would hopefully help to understand how things work a bit better.

RickJ

tzachs, Perfect timing.  I'm about to embark on some C# stuff for my day job so it'll be like  killing two irds with one stone.

selmiak

#130
I stopped reading at the point where it said throw out all the tangled legacy code and start having fun ;-D
edit:
no wait, it said throw out backwards compatibility.

SMF spam blocked by CleanTalk