Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Development

Reply
 
Thread Tools Display Modes
Old December 23, 2011, 16:01   #1
nppangband
NPPAngband Maintainer
 
Join Date: Dec 2008
Location: Stat Gain, Angband
Posts: 926
nppangband is on a distinguished road
Angband 80x24 sereen display - a modest proposal

As a follow up to the discussions in the ASCII dreams thread, I wanted to start a thread strictly about the Angband screen interface and how it can be improved. I warn you all right now, I am going to be a little preachy and opinionated, but 1) I am a variant maintaner who is willing to contribute towards making the improvements I am ranting about. So I sincerely hope the devteam and other variant maintainers know I am not telling them what *THEY* should be working on, but rather what *I* want to work on for NPP, and seeing if there is interest in concentrating on this area, brainstorming together, and coordinating our efforts to create a better UI for all of Angband and the variants.

That being said, let the rant begin:

After looking at the screenshots of the most popular roguelikes in that poll (TOME, Dungeon Crawl Stone Soup, Brogue, etc), I came to the conclusion that Angband's screen layout, while great for a 1980s game, is sad, pathetic and antiquated. I believe it is probably the single biggest reason why so many other roguelikes have a much bigger audience than Angband these days. If I were just starting to play roguelikes, I can see 10 other roguelikes out there I would play ahead of Angband, just based on first impressions. Shockbolts gave us a gift in his tileset. They are an amazing improvement and gives us a screen display as nice as any roguelike has, but now we need a better layout to take full advantage of them.

Angband is still based on the Moria screen, which was 80x24 because that's what the size of monitors were in the 80s. There is one line at the top, and one line at the bottom for presenting information to the players, and 20 ( I think) spaces on each line on the left of the screen to present all relevant information. Why has this not changed?????? Why have we stuck with with this antiquated format all these years? Options for additional windows have been added for people who want to see more information, and that is a great workaround, but it doesn't address the issue. The displays of the main window have to be flexible.

Why can't Angband let the player choose as to what shows up onscreen, and/or have it pop up temporarily (for those playing on smaller screens, such as Ipads, or nintendo DSs), or display permanently (for those playing on much larger monitors).

Why can't the inventory, floor items under the player, and equipment all have their own "toolbar" on the screen (see Crawl Stone Soup), with ASCII or tile representations of each item onscreen, so if the player wants to interact with that item, they can just click on the item, and get a menu of commands?

Why can't we display up to 5-10 lines of messages instead of just one (assuming they are recent, if they are more than 5 turns old, they should dissappear and the dungeon displayed in that space instead)?

Why can't, wherever the mouse is at that current moment, a space on-screen be dedicated to telling the player what terrain is at that space, the monster at that space, and any objects that may be at that space as well.

Why can't a list of possible commands be on-screen for the player to click if they want? Why do we make players learn 50+ keyboard commands to play the game?

Without my realizing it, a couple of months ago, the mission statement for NPP changed. I like the old Angband (from the 2.8x-2.9.x era), and I want to preserve it. I think it is a near-perfect game and in NPP I have always tried to add to it without taking anything away from it. I wish the devteam all the success in the world for all of the changes they want to make to Angband gameplay, but frankly, I don't think the roguelike community is going to care or take notice unless a better UI is developed first. Most of my time is going to be dedicated to UI improvements these days, that hopefully Angband and all of the variants can take advantage of.

I even want to do a moria module for NPP, and someday that will happen too.
__________________
NPPAngband current home page: http://nppangband.bitshepherd.net/
Source code repository:
https://github.com/nppangband/NPPAngband_QT
Downloads:
https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57
nppangband is offline   Reply With Quote
Old December 23, 2011, 16:31   #2
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 7,842
Derakon is on a distinguished road
I wish you all the best of luck.

Personally, though, I'm not so interested in new uses for the mouse. I only have two hands, and they're engaged full-time in playing the game as it is. I don't want to be required to use a mouse too. So as long as the mouse is optional, I'll be fine.
Derakon is offline   Reply With Quote
Old December 23, 2011, 18:18   #3
fph
Knight
 
Join Date: Apr 2009
Location: Berlin / Italy
Posts: 536
fph is on a distinguished road
With the current trends in computing, it has come a time in which many people have to rethink interfaces. Tablets and touch-screen phones are becoming more and more common, and they are something completely different from the 2000x1500 monitor of our desktop (assuming you still have only one of them in your desktop...).

It's not an Angband problem, but everyone's problem nowadays. The goal of optimizing for a tablet or small touchscreen device seems to be incompatible with the one of optimizing for a "normal" computer. Laptop are somehow inbetween, but the fact that you can't seem to find a new laptop with a larger resolution than 1366x768 suggests that they'll soon end up in the first category.

So, to end my rant, I think that we have three choices:
1- we keep Angband desktop-only, and forget about touchscreens and "small" interfaces. A game like Angband cannot be played on a tablet, full stop. Exactly like a FPS cannot be played on a tablet.
2- we deeply change Angband so that it is playable on both devices. This will require lots of rethinking and rebalancing. It is an open problem for today's UI design to find something that suits both a computer and a tablet well --- ask the Unity developers.
3- we fork Angband: one for PCs, one for tablets, mantaining no more than a pale resemblance of the same game.

These were just my 2 cents, sorry if that sounded pompous.
__________________
Dive fast, die young, leave a high-CHA corpse.
--
You read a scroll labeled 'lol gtfo' of Teleport Level.
fph is offline   Reply With Quote
Old December 23, 2011, 19:01   #4
takkaria
Veteran
 
takkaria's Avatar
 
Join Date: Apr 2007
Posts: 1,820
Donated: $40
takkaria is on a distinguished road
I think you are right on with what needs to change and I've been half-arsedly laying the groundwork for the past five years. It's gone slowly because I've been trying to make the design as flexible as possible, which is something I really should have the "no more options" maxim to.

In retrospect, I can see that it could have gone a lot faster if I'd have made different decisions.

1. Do you want to retain a text-only mode? I decided I did, which meant designing a system that would work with either text or graphics, which is a hell of a lot of work and requires a fundamental rewriting of the game internals in a way that choosing one display mode and going with it doesn't. If you just go with graphics, then you can hardwire them in, and not worry about piffling things like abstracting the game core from the UI before you can even get started.

A lot of the command & event systems that came in over the past few years is there to allow a separation between the core and the UI, where the core sends events to indicate to the UI it needs to update something and the UI sends commands to the core to tell it to do stuff. It's a sensible design but it's difficult to implement across the entire codebase. The big problem with this is that the UI is always going to have to be modified depending on the behaviour of the game anyway, and its internal data structures. Choosing graphics and running with it would make life a lot easier.

2. Do you want to allow different platforms to differ in their functionality? I decided to design things so that this would be possible - so OS X has different conventions to Windows, which has different conventions to GTK and then again to terminal emulators. You might want the UI to pan out quite differently depending on platform. I think now it would be better just to treat these desktop platforms the same. I always wanted the game to integrate with the OS well, like a normal application, but it seems pretty obvious to me now that it was misguided and unnecessarily complicated.

I don't know how this works out with handheld ports - Android and iPod and DS will all want different treatment in terms of UI and input. I think having one codepath that tries to handle all desktop and handheld display and input will probably end up very difficult to modify and/or covered in hacks. I'm not sure what to suggest, except that if you drop text mode and term windows and stick to rendering everything on one graphics canvas as a baseline, it'll probably be a lot easier to cook up individual handheld ports.

I hope this helpful in informing your thinking.
__________________
"Physician, heal thyself."
takkaria is offline   Reply With Quote
Old December 23, 2011, 19:11   #5
nppangband
NPPAngband Maintainer
 
Join Date: Dec 2008
Location: Stat Gain, Angband
Posts: 926
nppangband is on a distinguished road
Quote:
Originally Posted by Derakon View Post
I wish you all the best of luck.

Personally, though, I'm not so interested in new uses for the mouse. I only have two hands, and they're engaged full-time in playing the game as it is. I don't want to be required to use a mouse too. So as long as the mouse is optional, I'll be fine.
After 20+ years using a keyboard, I don't think I could ever use the mouse either. It would be too slow. The one exception for me is targeting or "looking" around the dungeon.

But 90% of what I am interested in what our eyes are looking at, rather than what our hands are doing.
__________________
NPPAngband current home page: http://nppangband.bitshepherd.net/
Source code repository:
https://github.com/nppangband/NPPAngband_QT
Downloads:
https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57
nppangband is offline   Reply With Quote
Old December 23, 2011, 19:19   #6
nppangband
NPPAngband Maintainer
 
Join Date: Dec 2008
Location: Stat Gain, Angband
Posts: 926
nppangband is on a distinguished road
Quote:
Originally Posted by fph View Post
With the current trends in computing, it has come a time in which many people have to rethink interfaces. Tablets and touch-screen phones are becoming more and more common, and they are something completely different from the 2000x1500 monitor of our desktop (assuming you still have only one of them in your desktop...).

It's not an Angband problem, but everyone's problem nowadays. The goal of optimizing for a tablet or small touchscreen device seems to be incompatible with the one of optimizing for a "normal" computer. Laptop are somehow inbetween, but the fact that you can't seem to find a new laptop with a larger resolution than 1366x768 suggests that they'll soon end up in the first category.

So, to end my rant, I think that we have three choices:
1- we keep Angband desktop-only, and forget about touchscreens and "small" interfaces. A game like Angband cannot be played on a tablet, full stop. Exactly like a FPS cannot be played on a tablet.
2- we deeply change Angband so that it is playable on both devices. This will require lots of rethinking and rebalancing. It is an open problem for today's UI design to find something that suits both a computer and a tablet well --- ask the Unity developers.
3- we fork Angband: one for PCs, one for tablets, mantaining no more than a pale resemblance of the same game.

These were just my 2 cents, sorry if that sounded pompous.
Actually I am personally far more interested in improving the game for big screens rather than small ones. I use a 16' laptop attached to a 24' monitor, using both screens. So when I play Angband unless I wizard light the dungeon most of it goes unused. It just seems like so much wasted space. My main point is that almost nobody is limited to 80x24, and there is no reason for us to be bound to that display size any more. Even if the standard minimum window size was 100x40 we could automatically give so much more information to the player .
__________________
NPPAngband current home page: http://nppangband.bitshepherd.net/
Source code repository:
https://github.com/nppangband/NPPAngband_QT
Downloads:
https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57
nppangband is offline   Reply With Quote
Old December 23, 2011, 20:54   #7
Jungle_Boy
Swordsman
 
Join Date: Nov 2008
Posts: 434
Jungle_Boy is on a distinguished road
One of the things I like about Angband is the simple UI, this is probably at least in part simply because I am familiar with it after playing for a couple decades. If you go adding a bunch of information to the screen at least make your system so that it is not in the way or reducing the size of the dungeon screen or make it flexible enough so users can remove things they do not want or feel are not necessary.

I did download and try Brogue after reading comments here and while the monster info on mouseover was pretty cool the first time I saw a new monster after about the 4-5 time I don't need to see that info anymore and it got annoying so too much info can be as big a problem as too little.
__________________
My first winner: http://angband.oook.cz/ladder-show.php?id=10138
Jungle_Boy is offline   Reply With Quote
Old December 23, 2011, 23:33   #8
Magnate
Angband Devteam member
 
Join Date: May 2007
Location: London, UK
Posts: 5,054
Magnate is on a distinguished road
Send a message via MSN to Magnate Send a message via Yahoo to Magnate Send a message via Skype™ to Magnate
Hello Jeff, and thanks for starting this thread. Like Derakon, I wish you the very best of luck with this and I look forward to testing stuff as it develops. I am no expert in UI design or coding, but FWIW my 2p'orth (based on takkaria's) is:

1. Splitting the game logic (core) from the UI would be the right design choice for all sorts of reasons about maintainability, portability, flexibility etc. etc. It's also more work, and as the person leading the work it's entirely up to you (unless someone else helpfully shouts "I'll do that bit"). I think lots of us would be sad to see the ascii mode disappear, but if you choose to take the easier path and hardcode graphics, I think modernising the UI would still be an awesome achievement. [Also, Nick has talked about splitting both core game logic and UI from the low-level z-* functions, which could form a library. I'll leave the preaching on this to him, but IMO it's a good idea.]

2. I feel strongly that mandating the same behaviour on all platforms would be a bad move. This is a fuzzy feeling - I don't know what difference it would make to the amount of coding work involved, and what impact the first decision would have on this one. But I cannot imagine, as fph noted, that a good UI on a tablet or smartphone would be the same as a good UI on a big desktop monitor - and if you're going to put all this effort into the game, I can't imagine you'd want it to be unplayable on the next generation of devices.

3. I don't know how familiar you are with Sangband 1.x, but Leon achieved quite a significant improvement to the UI without either splitting it from the core game logic *or* dropping ascii mode. The game uses the whole screen, and tries to arrange its seamless subwindows intelligently, and although the end user's ability to change the config is arcane, it's there. It doesn't address even half of your points (in particular it has minimal mouse support), but it would be much quicker to implement (even if only as a stepping stone / learning experience).
__________________
"3.4 is much better than 3.1, 3.2 or 3.3. It still is easier than 3.0.9, but it is more convenient to play without being ridiculously easy, so it is my new favorite of the versions." - Timo Pietila
Magnate is offline   Reply With Quote
Old December 23, 2011, 23:36   #9
nppangband
NPPAngband Maintainer
 
Join Date: Dec 2008
Location: Stat Gain, Angband
Posts: 926
nppangband is on a distinguished road
Quote:
Originally Posted by Jungle_Boy View Post
One of the things I like about Angband is the simple UI, this is probably at least in part simply because I am familiar with it after playing for a couple decades. If you go adding a bunch of information to the screen at least make your system so that it is not in the way or reducing the size of the dungeon screen or make it flexible enough so users can remove things they do not want or feel are not necessary.
Yes, it should all be an option, much like the windows are now. I do not want to take away or alter one bit of the current UI or the ability to play that way. I just want to give the player more flexibility. You should be able to turn on additional message lines, a section for inventory, equipment, etc.... on the main screen, and the ability to interact more with a mouse.


@Takarria - One question: Why does anything need to be done to have both text and graphics? Text already displays when the player is in tile mode. I agree with you that ASCII/text should always be an option.
__________________
NPPAngband current home page: http://nppangband.bitshepherd.net/
Source code repository:
https://github.com/nppangband/NPPAngband_QT
Downloads:
https://app.box.com/s/1x7k65ghsmc31usmj329pb8415n1ux57
nppangband is offline   Reply With Quote
Old December 23, 2011, 23:48   #10
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 7,842
Derakon is on a distinguished road
Personally, and I recognize I may be in the minority here, I don't really like the SDL mode. My Angband layout tends to fit together puzzle-like with my other windows, split across multiple windows, which doesn't work so well when the entire game is just one window.
Derakon is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
display problem or not dos350 Vanilla 6 January 4, 2011 18:11
A proposal... (python) Sirridan Development 81 October 24, 2010 05:49
New ego-weapon/armour proposal: (Light) Nightmarjoo Vanilla 24 May 20, 2010 22:08
speed display fizzix Vanilla 29 December 10, 2009 00:05
What are your Angband 3.0.9 display settings? Berserker Vanilla 3 February 26, 2008 21:37


All times are GMT +1. The time now is 18:22.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, vBulletin Solutions, Inc.