Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Marker playlist #55

Open
jsilvestre opened this issue Jul 28, 2012 · 14 comments
Open

Marker playlist #55

jsilvestre opened this issue Jul 28, 2012 · 14 comments

Comments

@jsilvestre
Copy link
Contributor

Hey,

Here is the idea I mentioned yesterday.

I think the tool is currently missing is a way to browse markers. Let make me be clear: currently I can choose to show or hide certain types of markers, let's say Arctodus (ranger pets). But I have no way to center the map on an Arctodus' marker.
My idea would be to have a list of markers we could browse. Like a music playlist, the marker playlist would allow the user to focus on a marker (center the map on the marker), go to the next marker, go back to the next marker.

We could make the list with several markers from different categories and a whole marker category (type or group) could be added to the list.
Obviously, lists could be exported in the form of a link to make the sharing easy.
This would make GW2C powerful as hell since people like the guy from GW Atlas could just put the link of the playlist with all the "guided tour" markers. A fansite that makes a guide on ranger pets can just put the link of the list, etc.
We could also propose users (via gw2c-backend) a list of popular or interesting lists like "hearts of queensdale" or whatever.
This is actually an enhancement of the toggling system.

The following parts are trying to present the concept and how I would see its implementation with all the details I could think of.

Adding a marker to the list

Added marker are automatically shown on the map when added.

  • from a marker on the map
    We would add a new button in the marker's info window, next to the permalink one.
  • from the marker group list
    A drag'n'drop from the marker group label to the playlist widget would add ALL the markers of ALL the marker group's marker types
  • from the marker type list
    A drag'n'drop from the marker type label to the playlist widget would add ALL the markers of the marker type

We can argue that adding a single marker is not done by the same interaction by the fact is that drag'n'drop is already used for the marker to move them (even if a special mode must be enabled).

The playlist widget

I am thinking about doing the same thing I did for the change list in the crowdsourcing tool: a first positioned drop-down menu that will hold the markers. The label would be the drop zone for add markers.
The style would be changed a little so the users can't get confused with marker groups. I haven't think more deeply about it. That style change is also implied by the need of a too list for the widget : previous button, next button, trash icon, sharing button (see below "The playlist features").

The playlist features

  • Browsing the list
    The user can browse the list thanks to a previous and a next button. Also, the keys "<-" and "->" would act in the same way.
    When the user clicks on a marker, the map centers on the marker.
    The widget shows which marker is currently focused.
    The list would be something like:
    -[icon] title marker1
    -[icon] title marker2

If the title is too long, we truncate it. ("Help farmer Diah" => "Help farmer Di....")

  • Sorting the list
    The list can be sorted (simple jquery-ui sortable component ?)
  • Removing marker from the list
    The playlist markers can be dragged an dropped from the list into a trash in the playlist tools list.
    When the user processes that action, it removes the selected marker from the list (nb: obviously a confirmation message will be shown).
  • Sharing the list
    The user can set a title and a description to the list.
    The user is given a link that will open the map with his list already loaded in the widget.
    When gw2c is opened with the list URL, only the markers from the list are shown (so we can zoom the map in enough to see the markers) and the map centers on the first marker of the list.

Possible technical issue: if we make a link like http://gw2cartographers.com?plname=blablabla&pldesc=blablaplcontent=idmarker1;idmarker2;idmarker3;idmarker4;idmarker5 we could reach the maximum URL length.
This will not likely be the case but there is still a little chance (http://www.boutell.com/newfaq/misc/urllength.html; IE limitation is ~2000 characters).

I think we can "risk" it since IE is the only one that has that low limitation (and our app is already HTML5 etc. :D). Also, 2000/3 is still ~660 markers^â

  • Exporting the list
    Same as sharing except that this would send a request to the crowdsourcing tool.

[This part will be copy to a new GW2CBackend issue if the idea please]
The crowdsourcing tool will show a new section with last submitted list and most popular list.
I don't think validation before publication would be relevant, just for edge cases (empty list...). However a "report" button would allow users to tell admins there is something wrong (ie duplicate list) with a list.

This requires more thinkings since we can't edit a list (and if we let anybody edit any list, this could lead to griefing) and re-submit it. So I don't know, maybe we are going to need to ask for an email/password for those...(to have an actual owner that can modify the list). This should be addressed later anyway.

Edge cases

  • What if a marker is being deleted and a playlist still refers to it?
    Two solutions came to my mind. The first one is that we just don't show the marker into the widget.
    The second one is that we load the whole list and if a marker does not exist we let the user know (like putting the marker in red or something like that).

The project is actually not that big since I have already detailed a lots of things (well, all I wrote is obviously ready to evolve with your ideas, critics and various proposals). I mean if you like the idea and when we agree on the features, coding will be relatively fast (except for the exporting part, but we can do it later).

I hope you get what was my point here (I'll explain what you have not understood) and that you like the idea. I have tried to be accurate in the details and coherent in the whole proposition (interactions, UI).
I can't wait to get your feedback!

@jsilvestre
Copy link
Contributor Author

Addition to "Sorting the list".

I think it'd be nice to have two sorting presets: one by marker type and one by area.
The list would look like something like this:

Preset "by area":
-Queensdale
----[icon] title
----[icon] title
---- .....

Preset by marker type:
-[icon]Waypoints
---- title
----- title

When the user sort manually the marker, the preset "custom" is selected.
Preset "custom":
-[icon] title marker1
-[icon] title marker2

Also I think the preset should be added to the sharing link.

@lpdumas
Copy link
Owner

lpdumas commented Jul 29, 2012

I really love the idea! Theirs thing like the drag' n drop that I'm not sure of ( I don't want this to be sluggish ), but overall it's pretty sick ^^. We'll need to find a way to implement this the more user friendly as possible. I also thought that we could implement a search engine. Like if i search «brown bear», only those will be visible / navigable on the map. Maybe we could use this playlist has a class and reuse it for the search result, like if their is 36 brown bear on the map, The markers resulting the search query will be auto added into a search playlist so that people will be able to navigate through it. something like that.

We also need to decide what we are doing with dynamics events and undergournd map.

@jsilvestre
Copy link
Contributor Author

I like the search bar idea. We could add the search bar into the "adding a marker to the list section": as you said, sarch results could fill the list, replacing its content if there is already something in it with a confirmation message on the search button.
However, your example is already taken into account thanks to the drag'n'drop from the marker type label to the playlist widget.
Anyway searching for "blood" would add hearts (whose title and/or desc contains "blood"), crafting materials, etc. What do you think ?
Also for the search bar placement, top right (before export/destroy icons) would be nice I guess.

About the drag'n'drop interaction, since we already have clicks used for toogle, I thought drag'n'drop would be the best interaction (rather than having another button "add to playlist"). Also this interaction would be reserved for adding marker types/groups' markers to the list so there is consistency.
But suggestions are still opened! As long as we provide a consistent way of doing thing, the users won't be lost :)

Concerning DE and underground map, let's open another issue to discuss it (I haven't really thought about it yet).

Can you make a branch feature_playlist or something so I can start pushing stuff to it ? (probably next week).

@lpdumas
Copy link
Owner

lpdumas commented Jul 30, 2012

I guess we will have to test the drag n drop to see how wel it is working. I still have my doubt though.
As for the search term (searching for blood sort everything that has blood in it), yes I think that's the way we should do it. For search result, i think the best would be to make ajax call to the back to output the right markers .. what do you think?

@jsilvestre
Copy link
Contributor Author

Why requesting the backend ? Just make the calculation client-side.

Anyway we could test both to see what the best solution is.

@lpdumas
Copy link
Owner

lpdumas commented Jul 30, 2012

Scalability, if someday we want to tag certain term to a marker, like searching for some kind of loot. For example, if i search for : Freaking Axe of DEATH, and the result output will be possible marker that offer this loot. Well «Freaking Axe of DEATH» could be tagged to certain marker, without polluting their description. Again, I'm not saying that what's gonna happen, but it's a possibility. Wouldn't be nice to be able to search for loot, and to see where i can find this loot? Huge work i know but, maybe someday..

On 2012-07-30, at 10:37 AM, Joseph Silvestre wrote:

Why requesting the backend ? Just make the calculation client-side.

Anyway we could test both to see what the best solution is.


Reply to this email directly or view it on GitHub:
#55 (comment)

@jsilvestre
Copy link
Contributor Author

I am not sure to fully understand you (we can do everything you mentioned client-side I guess)...could you explain your point of view again ?

@lpdumas
Copy link
Owner

lpdumas commented Jul 30, 2012

Maybe this was a bad exemple, the only thing i wanted to point out is that i don't want to have a freaking huge config file client side, thereby the idea of backend processing. Also, linking something like rare loot to markers ( or to coordinate because it could be in a chest or something like that) could be easier in a database than in a javascript object. Retrieving them could also be easier ;)

@jsilvestre
Copy link
Contributor Author

Let's make scalability another issue (I mostly agree with you on the problem, we must discuss the solution now^^).

Also, I have started to implement the playlist, I keep you up to date when something functional is ready.

@CrankyOldMen
Copy link

Why are we not using a database driven backend again? It seems like it would make things like this much easier to implement. It would also allow us to call up the markers from certain areas. Right now the mark load seems to be pushing the bounds of what can be displayed smoothly and we are missing half the map still. Is there some way to address that?

@lpdumas
Copy link
Owner

lpdumas commented Aug 1, 2012

@CrankyOldMen
Copy link

@lpdumas So does that mean we can fine tune the flood of markers? I will look at the stuff you are using, but if it extends past HTML and CSS it is out of my depth. Haha.

@jsilvestre
Copy link
Contributor Author

No this just mean we have set up a way to merge the contribution efficiently. We should open an issue for the scalability issue since the discussion should be focus on the playlist component ;-)

All ideas are welcome though.

@CrankyOldMen
Copy link

Hey man, quick question. What did you use to cut your maps tiles for
http://gw2cartographers.com/?

On Wed, Aug 1, 2012 at 11:51 AM, Joseph Silvestre <
reply@reply.github.com

wrote:

No this just mean we have set up a way to merge the contribution
efficiently. We should open an issue for the scalability issue since the
discussion should be focus on the playlist component ;-)

All ideas are welcome though.


Reply to this email directly or view it on GitHub:
#55 (comment)

Best Regards,

Jacob

Find Me At: *
*www.CrankyOldMen.com

YouTube.com/CrankyOldMen
*Cranky Old Men On Google
Plushttps://plus.google.com/u/0/b/105170200010354663600/105170200010354663600/posts

*

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants