"Editor Strikes Back" - A GUI editor for DSB

This forum is for the Lua scriptable clone of DM/CSB called Dungeon Strikes Back by Sophia. Use DSB to build your own highly customised games.

Moderator: Sophia

Forum rules
Please read the Forum rules and policies before posting.
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Gambit37 wrote:It's a user experience and a productivity issue.
Well, yes. I think opinions can vary, though. To me it was a better user experience and more productive to greatly reduce the number of mouse clicks needed to carry out an operation.

Ultimately, because ESB is a modal editor and RTCed is a modeless editor, the two programs are going to carry out their functions rather differently. In RTCed, you first have to specify where you want to do something, and then, because there is no mode, you have to specify what you want to do at that location. In ESB, the mode has already specified what you want to do, so the only thing left is to specify where you want to do it at.

Of course, the debate between these two philosophies is old. It reminds me of one of the oldest conflicts in computing: the "editor war" between the text editors vi and Emacs. Emacs is modeless, larger, more comprehensive, generally slower, much more visual, and generally friendlier for new users; vi is modal, small, streamlined, fast, rather hacker-oriented, and has something of a steep learning curve. I'll let you draw further analogies. ;)

(... and yes, I use vi and have for nearly 10 years)
Gambit37 wrote:floating popups would help
I agree. You will be able to move around separate tool windows in the version of ESB that I'll include with DSB 0.47.
Gambit37 wrote:Didn't you ever scroll down the item list in RTC and identify what you wanted by looking out for its picture?
It's been so long since I've done any serious amount of RTC editing that I'm really not sure how I went about it, any more. I will say that in dungeons like SS and DP I used a lot of custom objects and never bothered to create icons for them, so the visual information was less useful to me, but the very fact I did that shows I'm someone who didn't care about the icons that much to begin with-- so maybe I'm the wrong person to ask.
Mon Ful Ir
Adept
Posts: 221
Joined: Sat Jan 07, 2006 1:54 am
Location: Britain

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Mon Ful Ir »

There's a part of me that would love it if ESB was more like the RTC editor, because the RTC editor is intuitive, newbie-friendly and would simplify things for me personally. But there's another part of me that accepts that the DSB way of doing things is different--if you want all the features that DSB lets you have (and I'm definitely a convert!), part of the price for that is learning to do things the DSB way. Which is streamlined and rigorous. You've got to know what you want to do, then think through how to do it, and then do it.

I tried some RTC yesterday and I'm already finding it frustratingly limiting--I can't write a decent new monster in RTC. I mean, I can make it look right and move quick and hit hard, but when I've done that it'll still be a RTC monster. It moves and acts in a predictable way. DSB lets me micro-manage its behaviour and turn it into an interesting, challenging and unique fight. (Try fighting a RTC dragon and then a DSB dragon. It's like night and day.)

I think the biggest problem with ESB is the way it doesn't handle custom graphics or new objects, and those features would be top of my personal wish list for ESB.
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Mon Ful Ir wrote:I think the biggest problem with ESB is the way it doesn't handle custom graphics or new objects, and those features would be top of my personal wish list for ESB.
Hmm, what do you mean by "handle," exactly?

ESB can include any new objects you add, of course. All you have to do is press Ctrl+R or go to the menu and select "Reload Archs." If you mean the capability of editing objects within ESB, this would be a bit harder. Given the sort of open-ended way that object properties are defined, I wonder if there is any way of doing this that isn't completely ridiculous.

The same problem goes for working with graphics. The way that DSB currently requires you to write code to load custom graphics is far from ideal. However, RTC Editor's interface for loading custom graphics is also quite far from ideal. There would be no point in providing a GUI interface if it's not a very good one. :(
User avatar
Gambit37
Should eat more pies
Posts: 13714
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Gambit37 »

Sophia wrote:To me it was a better user experience and more productive to greatly reduce the number of mouse clicks needed to carry out an operation.
Right, this is where my verbosity clouded my argument! Less clicks are always good, but less mouse travel is actually better.

The two main points summarised
1) The more you can do from the current cursor position, the better
2) Looking away from the dungeon map to a menu on the side can break "flow".
Sophia wrote:In RTCed, you first specify where you want to do something, and then you have to specify what you want to do at that location. In ESB, the mode has already specified what you want to do, so the only thing left is to specify where you want to do it at.
Visual designers don't think in those ESB terms. They look at a dungeon tile and want to click on it to do stuff to it. I can't prove this to you without actually testing it and giving you the results, but I'm very confident of my views here based on past experience building stuff for visual people.
Sophia wrote:Of course, the debate between these two philosophies is old. It reminds me of one of the oldest conflicts in computing..... I'll let you draw further analogies. ;)
Makes sense and I totally understand that you have a coder mindset and why you approached it the way you did :)
Sophia wrote:You will be able to move around separate tool windows in the version of ESB that I'll include with DSB 0.47.
Awesome! Many thanks :-)
Sophia wrote:I will say that in dungeons like SS and DP I used a lot of custom objects and never bothered to create icons for them, so the visual information was less useful to me
No, you misunderstand. Not the icons, the *front bitmap* of your items. Thats' what displayed by RTCed when you scroll through item lists. I think this is easier to understand than having to read a name with no visual feedback.
Mon Ful Ir wrote:if you want all the features that DSB lets you have, part of the price for that is learning to do things the DSB way. Which is streamlined and rigorous. You've got to know what you want to do, then think through how to do it, and then do it.
I think you're mixing two different issues. Learning DSB is one thing. Having an efficient, usable, intuitive interface for the editor is something completely different. Tools work best when people don't have to think too hard about how to use them. For me, a tool has failed in its most basic design if I have to learn some mechanics of a hidden underlying system to make it work.

Extremely well paid HCI and UX designers struggle to make intuitive, simple interfaces because it's actually *very hard* to do so. The balance to find is to give enough power and control to the user, without them having to read a manual first or mind read the program designer.
Mon Ful Ir wrote:(RTC monsters) move and act in a predictable way. DSB lets me micro-manage its behaviour and turn it into an interesting, challenging and unique fight. (Try fighting a RTC dragon and then a DSB dragon. It's like night and day.)
Yes, I totally agree with this. DSB AI is superb :) Far better than RTC and a very compelling reason to switch. Probably a discussion for a different thread though ;)
Sophia wrote:The way that DSB currently requires you to write code to load custom graphics is far from ideal. However, RTC Editor's interface for loading custom graphics is also quite far from ideal. There would be no point in providing a GUI interface if it's not a very good one. :(
Totally agree with this. My comments about ESB so far are specifically about issues with moving the mouse too much and not having right click menus for adding items. The issue of managing visual assets is probably something for another specific thread?
Mon Ful Ir
Adept
Posts: 221
Joined: Sat Jan 07, 2006 1:54 am
Location: Britain

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Mon Ful Ir »

Sophia wrote:Hmm, what do you mean by "handle," exactly?

ESB can include any new objects you add, of course. All you have to do is press Ctrl+R or go to the menu and select "Reload Archs." If you mean the capability of editing objects within ESB, this would be a bit harder. Given the sort of open-ended way that object properties are defined, I wonder if there is any way of doing this that isn't completely ridiculous.

The same problem goes for working with graphics. The way that DSB currently requires you to write code to load custom graphics is far from ideal. However, RTC Editor's interface for loading custom graphics is also quite far from ideal. There would be no point in providing a GUI interface if it's not a very good one. :(
Well, Amber, I'm very conscious that asking you to write a GUI interface for graphics is like asking you to eat an elephant. I won't say any more about it unless it's a problem for several other users. :)
Gambit37 wrote:DSB AI is superb.
Yup. An apt superlative. We all need to make more of a song and dance about DSB's AI.
User avatar
Gambit37
Should eat more pies
Posts: 13714
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Gambit37 »

Here's something that I think illustrates my point about keeping menus near the mouse pointer. A quick & dirty mockup, needs refinement and I've missed some functionality out, but hopefully you get the idea:

Placing an item on an empty tile:
You right click a tile and get this popup. Navigate down the tree to the item you want to place; when found, double click it to place on the tile. The menu should remember its state for subsequent invokes.
Image

Editing items already placed / placing new items:
Right click, select an item from the list shown to edit. Can also add a new item as above, or Cut/Copy/Delete tile contents. If clipboad buffer contains relevant tile data copied from another tile, also allow that be Pasted:
Image

This is actually an improved version of the way RTC does it, but instead of requiring two clicks to select an item for adding, you can do it straightaway with the item tree. It also avoids the problem of intermediate popups currently created by ESB when you want to edit a tile with more than one item on it.

Obviously the list of possible items to add is huge, and the list of items on a tile could be big as well. So both these areas would need scroll bars. Probably the whole thing would be a floating window that pops up next to the mouse cursor.
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Hey, that's not bad, Gambit.
I'm not sure if the Windows API is too friendly about putting tree views in a popup menus. However, I think that's rather cosmetic.

Actually, what might very well work (and be less of a headache for me) is to adapt that intermediate popup into the kind of thing you want. It can appear closer to the mouse cursor, and feature the tree view easily, since it's a normal dialog box and not a popup menu. This is actually back to being closer to the way RTC does it, but it still avoids some clicks. :P

By the way, thank you both for the nice comments about the DSB AI. I worked hard on it and it makes me feel good to know that it's appreciated. :)
User avatar
Bit
Arch Master
Posts: 1064
Joined: Mon Mar 03, 2008 10:53 am
Location: Nuts trees

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Bit »

Just because you spoke about the WinAPI. The editor's gui looks like it is not made with Allegro - but if, I'll be interested how you realized it. And if not, ...even more ;) (just because it looks pretty professional but I can't see any resource file).
But that's not for now, still busy with other things, and glad that the left hand can type again.
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Bit wrote:The editor's gui looks like it is not made with Allegro - but if, I'll be interested how you realized it. And if not, ...even more ;) (just because it looks pretty professional but I can't see any resource file)
The GUI is standard Windows API. There is no resource file because it's compiled directly into the program-- if you had the source code then you'd have the resource file. I still do use Allegro though. The dungeon map itself is rendered with Allegro, and then the resultant bitmap is just drawn into the Windows-created window.
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Sophia wrote:
Gambit37 wrote:Can the location picker window be made stretchable?
Not easily, unfortunately.
It turns out it was easy as long as you don't mind it looking like crap. It flickers horribly while resizing, but I don't think that matters too much, because at least you can now do it. :D
User avatar
Gambit37
Should eat more pies
Posts: 13714
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Gambit37 »

I'm curious: did any of these interface improvements make it into ESB? :)
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Yes. The interface elements from the right can now be floated and resized. The picker windows can be resized now as well. All this is in the currently available version.
User avatar
Gambit37
Should eat more pies
Posts: 13714
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Gambit37 »

Weird, I must have missed a version download! Thanks, will check it out :)
User avatar
Gambit37
Should eat more pies
Posts: 13714
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Gambit37 »

I'm still struggling with ESB to be honest. I'm finding quite a few areas where the interface isn't very intuitive and could be improved. Typing things into fields is my biggest problem as it assumes I already know what to type here, when I don't. Need pre-populated lists to select from...
Would you like me to offer specific feedback on the other issues I'm having?
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Gambit37 wrote:Would you like me to offer specific feedback on the other issues I'm having?
Go ahead, as long as-- if you don't mind me being blunt-- it isn't something you've told me a hundred times already. Like I said in the WYSIWYG editing thread, there are some issues that I'm well aware of but would simply be too time-consuming and/or annoying for me to fix at this point.

I freely admit I don't really enjoy programming GUI stuff, and ESB is probably a reflection of me trying to do as little as possible.
User avatar
Gambit37
Should eat more pies
Posts: 13714
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Gambit37 »

I can't seem to find a copy and paste feature in ESB? Is there one?

BTW, the sequencer object is brilliant! :-)
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

Gambit37 wrote:I can't seem to find a copy and paste feature in ESB? Is there one?
No, that's something I keep putting off. 8) :oops:
User avatar
Gambit37
Should eat more pies
Posts: 13714
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Gambit37 »

I imagine it's non-trivial; understandable to put it off ;-) It would be awesome if you could consider it though -- would save a lot of time when building complex repeated structures.
User avatar
Zyx
DSA Master
Posts: 2592
Joined: Mon Jun 05, 2000 1:53 pm
Location: in the mind
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Zyx »

If it could be implemented by holding a control key while clicking on the map, it would turn certain long and tedious sessions into an almost instant designer's superpower.
The skinmap editon in CSBuild is already implemented in a similar way (get current skin under cursor on mode pickup, add and remove skin with mouse buttons on mode write. It's incredibly efficient - and if you add an area-selector, with remove/add into selection control keys, one could terraform terrain very quick and it would unlock the huge maps design possibility!
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

I've got a simple single-square cut/copy/paste working.
So far it hasn't crashed the program, but, just like the cut/paste in previous versions of RTC editor, it might be a good idea to double-check that nothing got messed up just after a copy.
User avatar
Lord_BoNes
Jack of all trades
Posts: 1064
Joined: Mon Dec 01, 2008 12:36 pm
Location: Ararat, Australia.

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Lord_BoNes »

I've noticed that this thread hasn't been updated since December 4th 2011...

Thought I'd make some requests of my own. I've noticed that ESB does use certain icons for the "dungeon-view". Is it at all possible to have these icons next to the object in the object-list? Or have the icon show up in the top-right, where the grid co-ords are displayed, while hovering over the object in question (or even while it's currently selected)?
This couldn't apply to THING/WALLITEM class objects (as they all have the same dungeon-view icon), but most of the other classes would fall nicely into this, and it'd be a cheap way of giving some objects icons.
It'd be good if something else could be devised for the THING/WALLITEM objects... but it'd need to load and parse all the LUA files (including the lua_manifest), followed by loading all the icons used, followed by linking the loaded bitmap with the archetype and determining at run-time which one to use... this seems to be the only way I can think of that'd get THAT done, and it seems pretty damn long-winded for such a small outcome :(

Although, it would be great to have every object with an icon, I can understand why it hasn't been done.
 
Image

1 death is a tragedy,
10,000,000 deaths is a statistic.
- Joseph Stalin

Check out my Return to Chaos dungeon launcher
And my Dungeon Master Clone
User avatar
Lord_BoNes
Jack of all trades
Posts: 1064
Joined: Mon Dec 01, 2008 12:36 pm
Location: Ararat, Australia.

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Lord_BoNes »

Here's a couple of suggestions that should be very easy to implement, and it'll improve the "user friendliness" of ESB:

While in cut and paste mode, could the standard keyboard shortcuts be used to control cut/copy/paste... control-x (cut), control-c (copy) & control-v (paste)? So you could go X + control-x to select cut and paste mode, and then apply cut on the currently selected tile... then it's as simple as hitting control-v to paste it wherever.

Could you purhaps introduce a small icon (EG: in the top-left, above the overhead dungeon view... little tiny icon... or a line of text even) that displays what mode ESB is currently using Dungeon Draw/Add Object/Wall Graphics/Set Party Start/Cut and Paste? It'd improve the usability of ESB quite a bit to be able to see which mode you're using at a glance.
 
Image

1 death is a tragedy,
10,000,000 deaths is a statistic.
- Joseph Stalin

Check out my Return to Chaos dungeon launcher
And my Dungeon Master Clone
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

I'll add cut/copy/paste shortcuts.

The current mode is shown in the lower right. Since you didn't notice this, maybe it's not clear enough, though.
User avatar
Lord_BoNes
Jack of all trades
Posts: 1064
Joined: Mon Dec 01, 2008 12:36 pm
Location: Ararat, Australia.

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Lord_BoNes »

Holy crap! <facepalm> I can't believe I missed it... but, yeah, I'm guessing it's not obvious enough then :P

EDIT: w00t! 1000 posts! Now I'm a "Jack of all trades" :P
 
Image

1 death is a tragedy,
10,000,000 deaths is a statistic.
- Joseph Stalin

Check out my Return to Chaos dungeon launcher
And my Dungeon Master Clone
User avatar
ian_scho
High Lord
Posts: 2806
Joined: Fri Apr 07, 2006 8:30 am
Location: Zaragoza, Spain

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by ian_scho »

lol Beo or someone really did change your tag to Jack of all trades
User avatar
Lord_BoNes
Jack of all trades
Posts: 1064
Joined: Mon Dec 01, 2008 12:36 pm
Location: Ararat, Australia.

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Lord_BoNes »

I asked Gambit to set it to that. I honestly find it fairly fitting :P
 
Image

1 death is a tragedy,
10,000,000 deaths is a statistic.
- Joseph Stalin

Check out my Return to Chaos dungeon launcher
And my Dungeon Master Clone
User avatar
beowuuf
Archmastiff
Posts: 20687
Joined: Sat Sep 16, 2000 2:00 pm
Location: Basingstoke, UK

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by beowuuf »

Congrats. Of course, you jumped the normal 'wait until archmaster' by fifty posts* :p


Never wanted your own one Ian? I seem to recall you were waitng for inspiration to strike, weren't you? :)



*There is no normal procedure with these :)
User avatar
ian_scho
High Lord
Posts: 2806
Joined: Fri Apr 07, 2006 8:30 am
Location: Zaragoza, Spain

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by ian_scho »

I would only ever allow myself to set that tag if I ever released a dungeon... Think of it as an incentive :P

.... I assumed the copy/paste functionality must be quite complex.
User avatar
Sophia
Concise and Honest
Posts: 4239
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Sophia »

The functionality is fairly complex, but it's nicely packed up in a function. There's no reason it can't be assigned a keyboard shortcut, too. :)
User avatar
Lord_BoNes
Jack of all trades
Posts: 1064
Joined: Mon Dec 01, 2008 12:36 pm
Location: Ararat, Australia.

Re: "Editor Strikes Back" - A GUI editor for DSB

Post by Lord_BoNes »

Sophia wrote:The functionality is fairly complex, but it's nicely packed up in a function. There's no reason it can't be assigned a keyboard shortcut, too. :)
Gathered that it'd be something like that. Not difficult to do.
Sophia wrote:The current mode is shown in the lower right. Since you didn't notice this, maybe it's not clear enough, though.
If you were wanting to make this more obvious, I'd suggest that you move the text to just above the overhead dungeon view, and make it bright white text... ain't nobody gonna miss it!
 
Image

1 death is a tragedy,
10,000,000 deaths is a statistic.
- Joseph Stalin

Check out my Return to Chaos dungeon launcher
And my Dungeon Master Clone
Post Reply