new Pins feature not as expected

Case number:954892-2005040
Topic:Developer Preview
Opened by:Susume
Status:Open
Type:Suggestion
Opened on:Thursday, April 12, 2018 - 01:35
Last modified:Wednesday, May 29, 2019 - 11:03

On 1507b Malaria, reset the puzzle, turn on pins in the view menu, then just try tugging on either movable chain. If you tug a point nearer the pin, the pinned end moves and the unpinned end stays still. If you tug a point nearer to the unpinned end, the opposite happens.

Same is true on 1506 Revisit.

(Thu, 04/12/2018 - 01:35  |  13 comments)


Susume's picture
User offline. Last seen 2 weeks 2 hours ago. Offline
Joined: 10/02/2011

Even if you move the pin to the middle of the chain, whichever end you tug on moves while the other end stays still - the pin has no effect.

jflat06's picture
User offline. Last seen 3 hours 9 min ago. Offline
Joined: 09/29/2010
Groups: Window Group

There is a bit more subtlety to how the tool works that might need some explaining.

Most tools in the game actually set up their own custom pins - the pull tool being one of them. Many of these need the pins set up in a particular way in order for the tool to function, so the user-chosen pins won't have any effect here (tweak, remix, others).

That said, I can see the case for pull being pin-aware.

Right now, I believe the list of pin-aware tools is:

Global Wiggle
Idealize
Idealize SS
Rama map actions

If you see any other tools that you believe should be able to work with pins, let us know.

LociOiling's picture
User offline. Last seen 3 hours 47 min ago. Offline
Joined: 12/27/2012
Groups: Beta Folders
Type: Bug » Suggestion

Making this a suggestion, since it seems to be working as designed.

Along those lines, it would be nice to have functions to work with pins.

First cut:

move, unmove = pin.GetCount - return the number of moveable and unmovable pins

pin.Lock ( pindx ) - lock specified pin
pin.Unlock ( pindx ) - unlock specified pin
pin.LockAll - lock all pins
pin.UnlockAll - unlock all pins
seg = pin.GetSeg ( pindx ) - return current segment position of specified pin
success = pin.SetSeg ( pindx, seg ) - move specified pin to specified segment, returns true if OK, false otherwise

jflat06's picture
User offline. Last seen 3 hours 9 min ago. Offline
Joined: 09/29/2010
Groups: Window Group

Thanks for the suggestions!

We typically wait for a while after a new feature has been released to implement lua functions, so that we ensure the underlying tool isn't going to change and invalidate whatever script hooks we create.

That said, these look pretty good.

Joined: 09/21/2011
Groups: Void Crushers

Something for me to do probably.

jeff101's picture
User offline. Last seen 2 hours 34 min ago. Offline
Joined: 04/20/2012
Groups: Go Science

I like Loci's suggestions for LUA commands for pins.
I am finding that certain recipes behave differently
depending on where the pins are located and whether
their narrowest parts point to the right (is this
unlocked?) or down (is this locked?). Being able to
move the pins and lock/unlock them from within
recipes could help some recipes that seem stuck
at a certain score on a particular structure become
unstuck so they can gain points again.

Joined: 05/19/2017
Groups: None

While we're on the subject I was actually expecting the pin tool to be not dependent on cut, with the feature to plonk down multiple pins anywhere in the backbone. When I watched the video demonstrating it, having it be stuck in the crowded view menu doesn't look like it'd lend itself well to frequent usage. I was thinking I could use it to global wiggle folds without shifting my frozen secondary structures around or having to zero length band them. I do get that this is really under the hood to begin with, but I could see a couple situations where it'd come in handy in eliminating time spent clunking around in the newbie unfriendly selection interface.

jflat06's picture
User offline. Last seen 3 hours 9 min ago. Offline
Joined: 09/29/2010
Groups: Window Group

Having multiple pins on the backbone doesn't really mesh with the underlying concept of what a pin is (just an expression of the underlying kinematic tree). You could imagine a tool that had multiple pins, but it would be a different tool at that point.

As far as the placement in the view menu - I put it there because the idea is that these are actually there all along, you're just choosing to see them or not. I do agree that our view menu is a bit bloated. We are actually working on updating it to make it more usable.

"I was thinking I could use it to global wiggle folds without shifting my frozen secondary structures around or having to zero length band them." - You should be able to use it for exactly this. Are you saying that it is just difficult to access?

"eliminating time spent clunking around in the newbie unfriendly selection interface." - The tool should function identically in both the selection and classic interfaces. Are you having issues in the classic interface?

Joined: 05/19/2017
Groups: None

1. This part makes sense, I can understand the rationale.

2. Glad to hear UI's being refined and I'm all for it. With this reasoning I can understand it being stashed away, but I do think some more commonly used elements from the view menu can be made more readily accessible than this "tier" of underlying tools.

3. I could use it for exactly this, but if I'm understanding it correctly I'd need to use the cut tool instead, which is not a process I could see someone figuring out by themselves. Admittedly this is a technique that I wouldn't consider super important or useful to most players, but enabling players to more easily carry out their intent in the game's environment is a big burden of controls and UI.

4. No issues in the classic interface per se. The notion I had going on with that sentence was: The first way I could think of to "wiggle all loops between secondary structures while holding all secondary structures in rigid stasis" would be to enter selection interface and go about highlighting all the loops, then wiggling while secondary structures are frozen. Now, I'm sure if there's a more efficient way of doing this (outside of recipes) I probably have an explanatory post hurtling my way from someone more competent than I am. Also, like I said in 3 above, I'm reasonably sure this is me nitpicking situational gripes with this particular example.

I probably should explain this too: The reasoning I'd have to even use this technique in the first place would be to stabilize the loops between the secondary structures I've aligned first before unlocking the secondary structures to wiggle further. This would place an implicit bias towards keeping the secondary structures (and beta sheet H-bonds) I've arranged by hand in the current positions they are in. Stabilizing the loops in between would send them further down the folding funnel before freeing up more of the protein's degrees of freedom. Often I'd try the tried and true wiggling at low CI with zero length bands, but I'd still end up with some H-bonds coming out in the wash from my crudely (yet still rationally) arranged secondary structures.

jflat06's picture
User offline. Last seen 3 hours 9 min ago. Offline
Joined: 09/29/2010
Groups: Window Group

3. Yeah, the pin tool relies on cuts to perform more complex operations like that.

4. If I'm understanding this correctly, this isn't so much to do with the pin tool as it is a problem with the classic interface not having that functionality?

What you could probably do in the classic interface is cut the C-term of all loops, freeze all the SS, place the pin for each section inside the frozen SS, lock all the pins, then wiggle all. This should have the effect you want.

Joined: 05/19/2017
Groups: None

That's exactly what I'd have to do, yeah.
In my mind what I'd rather be doing is Freeze all SS > Pin all SS > Wiggle All. Lots of bypassed steps.

jflat06's picture
User offline. Last seen 3 hours 9 min ago. Offline
Joined: 09/29/2010
Groups: Window Group

I guess once a lua interface is added for Pins, someone could make a script for this. It should be relatively easy to code.

That said, I could see a dedicated "Wiggle Loops" button maybe being useful that would do all that (and also keep the SS's pinned/locked).

jeff101's picture
User offline. Last seen 2 hours 34 min ago. Offline
Joined: 04/20/2012
Groups: Go Science

The video below shows many things you can do with pins:
https://www.youtube.com/watch?v=ziWutHZHT2k

Sitemap

Developed by: UW Center for Game Science, UW Institute for Protein Design, Northeastern University, Vanderbilt University Meiler Lab, UC Davis
Supported by: DARPA, NSF, NIH, HHMI, Amazon, Microsoft, Adobe, RosettaCommons