MichaelSinsbeck / platformer

A ninja platformer written in LÖVE
7 stars 0 forks source link

Userlevels download menu #192

Closed Germanunkol closed 9 years ago

Germanunkol commented 10 years ago

We've touched on the topic in another issue, but I think it's better to make a seperate one for it.

Here's an idea of what the download menu could look like: userlevels1

And here's a version with more explanation: userlevels1_description

I think a "delete local content" button which deletes the level file locally would be nice as well. Am I missing any other functions? And what do you think of the layout?

Scrolling will need to be very quick, so a "hold down button to scroll" function will need to be implemented (but we need this for the world selection map anyway).

Germanunkol commented 10 years ago

Could you give me a quick reply whether I'm on the right track here or not? I don't want to start programming this if it's not how you imagined it. And I'm open for suggestions - I haven't done any of this, so we can still change it all.

michalove commented 10 years ago

Sorry for the late response. Here are my thoughts for the menu: In my opinion the list of levels should look more like a table. That will break the bamboo-cloth-style a bit, but will hopefully make the level selection easier and more intuitive. In this table we should put the name of the level, name of the author, difficulty and fun-factor and an indicator that tells you if it is downloaded already. For me it is important that the user can immediately see the difficulty and fun-factor for all levels, not only for the selected one. That makes it easier to find good levels. To separate each row in the table, I would not use the bamboo. Instead the background for every second row should be a bit darker. And then I'd put everything on one very large bamboo frame.

Should I make a mock-up picture or is it clear what I mean?

It would be a nice feature if the user could filter the levels. I haven't come up with a nice solution, that works well with gamepad yet. It should be possible to filter levels by difficulty and it should be possible to only show downloaded levels and to show the last levels that the user has played.

Germanunkol commented 10 years ago

Thanks, I understand what you mean, I believe. More like a server-list in other games. You're right, it makes a lot of sense to display the starts for every level.

As for filtering: If there's only these "modes" which you mention (filter by difficulty, by download etc.), then we could simply have one button that cycles through the filter modes. When starting the menu, it says: (A) Filter: None and then when you press the A-Button it will filter and display: (A) Filter: Only showing downloaded levels etc. Instead of "None" it could also say "Authorized only" at startup. Or would this not do what you meant?

michalove commented 10 years ago

Yes, server-list is a good comparison.

For the filtering we should go for one of these options: (1) All filters are mutually exclusive. Then your solution is the way to go. That means the user can select one filter from a list. (2) All filters are independent and each one can be turned on or off. For example if you want to find all levels that are authorized and have a difficulty of three stars, then you would have to combine two filters. This would mean that we have a number of check-boxes, one for each filter and the user can combine them at will.

Which one does make more sense to you?

Germanunkol commented 10 years ago

I added a simple level list. Is this more like what you're looking for? 2014-06-28-165532_1536x960_scrot

michalove commented 10 years ago

First of all, looks great. It is easy to read and you can immediately find what you are looking for.

For the headers: Have you tried just writing them in the first row in a different color (black?). Otherwise, I like the idea of different colored background for the first row.

For the "downloading"-image. I think yes, it should be there. Even if it is almost not visible. When the user presses download, he should be able to see, that something happened.

For the description: Hm, that is tough. Maybe we can make the main table a bit smaller (=flatter) and have a box on the bottom, that shows the details for the current selection. That means, it is easy to find levels by names, but it is not easy to find levels by the description, because you would have to look through all of them.

Germanunkol commented 10 years ago

Thanks for the feedback! I like the idea with the extra box for the description, because otherwise it would probably be way too much text on the screen. It will be wasting quite some space, but we can still make the lists a bit shorter.

For the "downloading" image: Yes, I agree that it should stay there (it is visible for a short period, after all), but I was wondering about whether a (moving) animation (rotating clock, for example) would be worth it. But I'll leave it as it is for now, it can easily be changed later.

Germanunkol commented 10 years ago

Here are two tests. Do you like dark or bright writing more? 2014-06-29-133249_1536x960_scrot 2014-06-29-133228_1536x960_scrot

michalove commented 10 years ago

The white one is better!

Germanunkol commented 10 years ago

I'm thinking of putting filters and maybe sorting scheme onto a different, pop-up panel which will show when pressing a button (button will be displayed on the list, of course).

List of filters:

Sort by:

Anything else we need?

michalove commented 10 years ago

If it is not too much work, we could add a free-text filter. There the user can input text and the list is filtered for those maps that have this text as author or title.

And in my opinion, we do not need the "Rating added together" sorting. For the fun rating is clearly ordered: The higher the rating, the better the map. That means that it makes sense to sort by it. The difficulty rating is not clearly ordered. Some people might be actively looking for easy levels. It makes more sense to have it as a filter, I think.

Germanunkol commented 10 years ago

The free text filter you mention sounds easy enough to do. The only problem I see there is accessing it (how to begin and end typing), but it should be easy enough apart from that - we already have text entry fields for the editor.

As for the other filters/sorting: I just think it won't harm if we let the user sort by as many things as possible (same goes for filtering). I don't see why we should remove any of them, as long as it doesn't get too crowded on the filtering screen. So please, let me try adding them all and then we can still remove them. I agree that rating added together might not be useful though, I'll scratch that.

michalove commented 10 years ago

Yes, of course. Go ahead and implement it the way you think is best. We can discuss it later and it will probably not be too much work.

For the navigation - Right now we have a mouse-less navigation. Do we want to stick to that? If yes, then pressing the arrow keys will move to the various filters and when the cursor is on the text field, you can start typing. If no, and we allow a mouse, then it would be easiest implemented with a text field and with checkboxes.

Germanunkol commented 10 years ago

I would definitely stick to a no-mouse approach.

I currently allow both cursor keys and WASD to navigate the menu (I read somewhere that there should always be a backup key layout in games - in case a keyboard button is broken, for example). So maybe we should add an additional "enter" to start and end entering the text. I will try both and see what feels right.

Germanunkol commented 10 years ago

I added two filters and sorting schemes. I think this might actually be enough, when we add the search bar as well...

Germanunkol commented 10 years ago

So, I added the search bar as well and it seems to work fine.

Besides some way of showing the level description, are you still missing any features? And do you have an idea, where we could place the description? I think it should be visible here somewhere, but it's difficult...

michalove commented 10 years ago

On my computer all the hotkey-images are gone. I guess this is work in progress?

Besides that: The filtering works fine. Only when I open the filter-dialog again, then the old filter text should be still there (at the moment, the text field is empty)

Germanunkol commented 10 years ago

The empty-ing of the text field is intended, but I can change that if you want the text to stay, should not be hard.

The missing hotkey images is a bug - they work for me. I'll look into it tomorrow. Just to make sure: You mean the background images behind the keys as the bottom (for choose and back etc.)?

michalove commented 10 years ago

Not only the background images, also the keys themselves. Here is a screenshot. (Maybe forgot to divide by the Camera.scale) bandana_mapselection

Germanunkol commented 10 years ago

Huh, this is really weird. Are they there in the other menus? Because I display them exactly the same. But maybe it's the camera.scale, yes...

michalove commented 10 years ago

ok, for some reason the buttons magically reappeared. So everything is fine. If this happens again, I will report it here, otherwise, forget about this for now.