[SUGGESTION] New Editor Project and Room Explorers

Started by Crimson Wizard, Sat 28/07/2012 21:17:49

Previous topic - Next topic

Crimson Wizard

Following is my idea on how the Editor interface could be improved accompanied by few mockup screenshots.
I don't like writing long explanations, let's just say those suggestions are based on my own experience working with AGS Editor and also looking and reading on how others work with it (something I mentioned here for instance: http://www.adventuregamestudio.co.uk/yabb/index.php?topic=45623.msg624000#msg624000).

Oh, and important note. That is not in my plans to work on this right away. To be honest I'd wish someone else did this :D. I do not have much free time, I am not as proficient in C# as in C++, and there are people who know Editor source quite well already. That is - if they like the concept of course.


Let's look on new Project Explorer first:


It consists of three panels:
1. Project item type selection. Those are moved out from the project tree where were represented by root nodes, and now are represented by bitmap buttons.
The upper part has buttons that open new editor panes in the main workspace: General Settings, Colors, Sprites, Text Parser, Lip Sync, Global Variables.
The lower part has buttons that will change the project tree contents: GUI, Inventory items, Dialogs, Views, Characters, Mouse Cursors, Fonts, Audio, Scripts, Plugins, Rooms, Translations.
2. The Search/Filter. Input box is for entering a search line. Buttons have following meanings:
- clear input box;
- filter out on/off (when enabled the tree will hide all the non-matching elements);
- case (in)sensitivty on/off;
- match full name on/off;
- colour picker to mark out matching items.
3. The well known project tree. Now it shows only items of the type which is selected on head panel.


Let's move to the Room editor pane:

As you may notice I've changed the look of background-related buttons, they are:
- Change selected background;
- Import new background; there should not be such item in the combo-box now;
- Delete background;
- Export background.
The "Show this room's" combo-box is replaced with a set of bitmap buttons:
- Nothing (pure background);
- Edges;
- Characters;
- Objects;
- Hotspots;
- Walkable areas;
- Walk-behinds;
- Regions;


Finally a totally new Room Explorer pane. Since of 3.2.2 we have docking panels it will be easy to put it in the position you find appropriate.


As you should notice it's the same gui class as Project Explorer. The upper panel lets you select a content type. The buttons are the same as on Room editor pane with an exception for Edges (since they are not room elements on their own).
By selecting items in the tree you will open corresponding properties. There may be an option to either switch Room view to the element type when one is selected or not.


What do you think of this?

Joseph DiPerla

Me likey. There is only one thing I would add to your modification and one thing I would change. The thing I would add is descriptions when you mouse over the icon so you know which is which. The thing I would change are the icons themselves and make the image be a bit more modern and eye-catching so as to make the engine look less like an 90's software tool and more like a.. now.. tool. Thats my gripe with a lot of editors, not just yours CW. Its just something I notice. AGS currently has those icons I do not much like either.

Otherwise, great idea's. Keep them coming.
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

Crimson Wizard

Quote from: Joseph DiPerla on Sat 28/07/2012 22:24:13
The thing I would change are the icons themselves and make the image be a bit more modern and eye-catching so as to make the engine look less like an 90's software tool and more like a.. now.. tool.
Heh, that's a mockup. I just ripped those from current AGS editor, some from Paint.NET and others are quick-drawn by hand :)

tzachs

First of all, I really liked the mockup screens, makes it really easy to understand your suggestions and discuss.
My thoughts:

1. I see that you really like icons. I'm more of a "text" person myself, I find that not all commands have intuitive symbols that can be associated with them (though I have no problems with globally understood icons). A lot of applications have both representations, both tool strip icons, and also textual menu items to cater for both audiences.
So if we have both, I can get on board.

2. I like the search bar, would be valuable.

3. I see why in some scenarios you'd like to filter out to a specific part of the tree, but also I can see myself wanting to see several parts of the tree at once. So I suggest that the buttons on the top pane would be check buttons (i.e buttons with a state of checked and not checked), and that several buttons could be checked at once, so that you'd be able to see more than one part of the tree if you'd like.

4. For the room editor pane, the "Show this room's" buttons list can also be made to be a check buttons list (along with an additional view of a checked combo-box so that I would have my beloved text).
This would allow you to have layers and see more than one kind of item. You'd be able, for example, to see walkable areas with objects which is something I've been missing forever...

5. I'm on the fence regarding the room contents pane. On the one hand, it would be useful and cool to be able to organize your objects and hotspots etc in folders. On the other hand it is an additional window which would overcrowd the already crowded layout, making it less friendly.
I just thought of an alternative solution: What about integrating the room contents tree with the main tree
(make each room to be expandable and have the room contents tree as a sub-tree)?

Joseph DiPerla

QuoteI just thought of an alternative solution: What about integrating the room contents tree with the main tree
(make each room to be expandable and have the room contents tree as a sub-tree)?

Actually, I like that idea myself. I do disagree with you on the textual part. I am more of an icons kinda guy. I just want the icons to be pretty. :P

Tzachs, do you have an official repository somewhere?
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

Crimson Wizard

I don't have much argument against text except for maybe that text takes more space.
If I remember correctly C# allows to change the style of button from text to bitmap during runtime? I thought it may be possible to add an option and let the user decide what is displayed on tool buttons?

Quote from: tzachs on Sat 28/07/2012 23:45:11
5. I'm on the fence regarding the room contents pane. On the one hand, it would be useful and cool to be able to organize your objects and hotspots etc in folders. On the other hand it is an additional window which would overcrowd the already crowded layout, making it less friendly.
I just thought of an alternative solution: What about integrating the room contents tree with the main tree
(make each room to be expandable and have the room contents tree as a sub-tree)?
That's an interesting question and I can't say I have the answer at this moment.
I suggested Room Contents pane rather because it is sometimes tiresome to select objects/areas from combo-box for editing.
I understand your considerations on overcrowding. But I guess it is possible to find a place for botth explorers with the use of docking panels similar to how different explorers can be arranged in Visual Studio (Solution, Resources etc). This is still a question though would it be easy for newbies to navigate through them.
What bothers me is that I don't think that adding room contents to the main tree will lessen overcrowding; I am afraid it will make the project tree look more cumbersome.

RickJ

There was a nice discussion about similar things in this thread awhile back ...
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=45165.40

where I posted this pdf with nice pictures. 
http://img28.imageshack.us/img28/9957/entityconcept.pdf

IMHO, I don't see the point of just shuffling things around a bit without remedying any of the current editor's short comings such as the difficulties that occur when there are multiple game developers, inability to easily import/export all game entities, inability to support episodic games where subsequent episodes are developed and released are able to be integrated with the original game as they are released. 



Crimson Wizard

Quote from: RickJ on Sun 29/07/2012 01:17:58
There was a nice discussion about similar things in this thread awhile back ...
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=45165.40
That's very interesting (really!)and I am certainly going to study your pdf, but I do not see how it's related. What I suggested here is just a change in how Editor Gui represent current project structure.

RickJ

Quote... What I suggested here is just a change in how Editor Gui represent current project structure.
The PDF also shows an alternative project structure but but it also implies a somewhat different project structure from the current one.   So my point is that if we are going to go through all the trouble we may as well think it through and try to eliminate a few problems along the way.   The PDF outlines a different, more object oriented, structure than the current one and would no doubt take a tremendous amount of work. However there may be some good ideas that are worth pursuing and are more easily implemented.  I thought it was enough related to what you are thinking about the project explorer that you would be interested in seeing it.

Crimson Wizard

Quote from: RickJ on Sun 29/07/2012 04:18:04
Quote... What I suggested here is just a change in how Editor Gui represent current project structure.
The PDF also shows an alternative project structure but but it also implies a somewhat different project structure from the current one.   So my point is that if we are going to go through all the trouble we may as well think it through and try to eliminate a few problems along the way.   The PDF outlines a different, more object oriented, structure than the current one and would no doubt take a tremendous amount of work. However there may be some good ideas that are worth pursuing and are more easily implemented.  I thought it was enough related to what you are thinking about the project explorer that you would be interested in seeing it.
Yes, sorry, I was wrong, perhaps confused by the topic you gave a link to. Now when I read pdf I see what you mean. And it is true that my hypothetical GUI will not fit your project structure similarly as it does fit current one.

RickJ

From what I think I understand of your proposal, you would give users the ability to organize their projects in an arbitrary structure of their own devise.  Presumably, people would eventually settle on some sort of hierarchical structure resembling an OO paradigm. Inevitably features suggested by such organizations will be requested.  Implementation of such features can be easy or difficult depending on how the underlying data structures are defined.

Crimson Wizard

Quote from: RickJ on Sun 29/07/2012 20:52:16
From what I think I understand of your proposal, you would give users the ability to organize their projects in an arbitrary structure of their own devise.  Presumably, people would eventually settle on some sort of hierarchical structure resembling an OO paradigm. Inevitably features suggested by such organizations will be requested.  Implementation of such features can be easy or difficult depending on how the underlying data structures are defined.
Erm, what? No :).
I proposed simply one thing: instead of having item types as root nodes in the TreeView control, have them as buttons on the panel. Hence faster search through project, since you don't have to, for example, scroll to collapse the parent node, you may just click button and change to different item type.

tzachs

Quote from: Joseph DiPerla on Sun 29/07/2012 00:19:23
I do disagree with you on the textual part. I am more of an icons kinda guy. I just want the icons to be pretty.
Quote from: Crimson Wizard on Sun 29/07/2012 00:37:48
I don't have much argument against text except for maybe that text takes more space.
If I remember correctly C# allows to change the style of button from text to bitmap during runtime? I thought it may be possible to add an option and let the user decide what is displayed on tool buttons?
I might have miscommunicated my intentions. I didn't want to get rid of the icons, I wanted to have both icons (that give you more space) and text using a drop down non-intrusive menu.
Here's a very ugly screenshot just to illustrate:

The ugly black arrow on the left is supposed to be a button that shows the drop down menu, all the items are shown with their icons and can be checked/unchecked. As you can see the original tool strip icons are still there exactly like in your original screenshot, it's just an alternative view to the same thing.

Quote from: Joseph DiPerla on Sun 29/07/2012 00:19:23
Tzachs, do you have an official repository somewhere?
All of my changes have now been committed to the 3.2.2 development branch.

Quote from: RickJ on Sun 29/07/2012 01:17:58
There was a nice discussion about similar things in this thread awhile back ...
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=45165.40

where I posted this pdf with nice pictures. 
http://img28.imageshack.us/img28/9957/entityconcept.pdf

IMHO, I don't see the point of just shuffling things around a bit without remedying any of the current editor's short comings such as the difficulties that occur when there are multiple game developers, inability to easily import/export all game entities, inability to support episodic games where subsequent episodes are developed and released are able to be integrated with the original game as they are released. 
I've read your document, I liked the ideas presented there a lot.
However, like you wrote there yourself, this is something to write from scratch, if somebody starts to work on it now, we might see it working in AGS 6.0 two years from now...
So I definitely see a point in trying to improve the current AGS, I believe that it will stay with us for a while.

Icey

I must say this looks really good and I would give it a try one day if you release something of it.

RickJ

Quote from: Crimson Wizard on Sun 29/07/2012 21:09:03
Quote from: RickJ on Sun 29/07/2012 20:52:16
From what I think I understand of your proposal, you would give users the ability to organize their projects in an arbitrary structure of their own devise.  Presumably, people would eventually settle on some sort of hierarchical structure resembling an OO paradigm. Inevitably features suggested by such organizations will be requested.  Implementation of such features can be easy or difficult depending on how the underlying data structures are defined.
Erm, what? No :).
I proposed simply one thing: instead of having item types as root nodes in the TreeView control, have them as buttons on the panel. Hence faster search through project, since you don't have to, for example, scroll to collapse the parent node, you may just click button and change to different item type.
Hehe, I totally misunderstood and read way more into the original post than you intended.  Your suggestion is perfectly reasonable in terms of both effort and results. 

The Icons seem to take up a lot of horizontal space; more than the tree elements themselves. I have been using and loving Tzachs new editor version.  It's docking ability allows me to view multiple scripts and editor panels simultaneously.  It's a huge benefit to be able to see the script and it's header ()or another script) side by side.    But this all makes horizontal space a premium.

Perhaps if the icons occupied two rows instead of one or if the wrapped around to two rows when the panel was resized narrower this wouldn't be a problem.  I like Tzachs idea and it would also be a good idea to have an option to use the old panel as well.

SMF spam blocked by CleanTalk