I’ve noticed that most of the slow down that I have experienced is due to the calculation of the energy of the structure after i place a new nucleotide. A nice feature would be to pause the calcuations so that expecially at the beginning of the game, a player could place a bunch of nts fast, then have the resulting energy calculated all at once.
A very visible notification that the calculations were paused would obviously be necessary.
Actually it’s the calculation of “Native shape” that takes up the time. Since the whole point of puzzles are to get RNA’s native shape to fold into target shape, the calculation should always happen whenever you make a change.
We are looking for ways to improve the computer algorithm to speed up the process. We’ll keep this post updated!
Ok, I understand.
A question about your algorithm:
When you are in target structure mode, is it doing the shape change calculation every time in the background? Because if so, I think that is the thing that /might/ be “unnecessary”. Meaning it could be toggled so you can quickly get a bunch of nts placed in the beginning. I think that after the very first stage of each puzzle, it is not very useful, but I would find it useful in the beginning.
Also, for other ways to speed things up: be able to toggle the random nt movement what you see when zoomed in (cool effect, but my computer can’t seem to handle it). Also the bubbles in the background (also very cool, and must have taken a while to code, especially the push-away effect at level completion).
The shape change calculation is done only when you make change to sequences = when you paint something. That’s same in both native mode and target mode.
The dev team once talked about not doing shape change calculation in target mode since as RNA shape is fixed in target shape anyway. But since we have to calculate native shape to update “puzzle constraints” on whether they are satisfied, people had to change back and forth between native & target mode to check which constraints were satisfied.
As for the random nt movement, yes we could add a toggle option. In fact, we could implement a “low-performance mode” where we only display nts as simple spheres (without random movements, shiny triangles rotating around) and get rid of bubbles.
What do you think?
I like the optimizing idea… my laptop also lags, specially in huge puzzles…
But a Program to download and run with GPU capabilities would be better…
Something like foldit. using 3d graphic card… and noti software renderization like flash.
also … there should be a sound effect to when the bound is less free energy you would see a pitched sound… and when you lose score comparing to the previous one, you ear a lower tone.
also the hints thaat appear on the screen in case of a great pairing… when on high number … thats chaotic and slows down the game too…
I like the Matts’ idea. I thought about “no recalc” switch activated by some key shortcut, by experienced players.
I always set it to low performance mode, no music (as it cuts down lag on my machine) and always have it show free energy as that’s useful unless I’ve got a huge puzzle and I’ve really zoomed out.
I sometimes use the base numbers - but that’s mostly to describe something to someone else on chat.
I don’t need the wobblign or any fancy animations - or the ‘nice pairs’ popup (it’s particularly useless when it’s telling you about how well you have mispaired something).
plain coloured circles and so forth would suit me nicely as ‘low performance mode’
also I’d get rid of any animation on the scoreboard if you’re in that setting - just give the new score
Old ideas, but still valid in my opinion.
I don’t see the difficulty in providing a “base-filling” mode switch button somewhere. Default inactive. When activated, MFE calculations are disabled and graphically, it should effect that the Natural Mode button gets disabled (greyed-out or with an interdiction sign overlayed), and that the minipic gets greyed-out and overlayed with a question mark (for instance). Simple.
As for the low performance mode, I would find it logical that the random shaking of unpaired bases be disabled as well, and also logical that bubbles are removed from the lab results view as well.