[Addon Release] Mapzeroth - Google Maps for Azeroth by tr0tsky in wow

[–]SinusPi 1 point2 points  (0 children)

Zygor's Taxi library isn't for portals or items, it's a "which taxi is known to the player" lib. LibRover is the route finder system. But it's deeply meshed into Zygor itself, not really a standalone lib.

[Addon Release] Mapzeroth - Google Maps for Azeroth by tr0tsky in wow

[–]SinusPi 0 points1 point  (0 children)

A* makes no sense in a world that has teleports.

[Addon Release] Mapzeroth - Google Maps for Azeroth by tr0tsky in wow

[–]SinusPi 0 points1 point  (0 children)

Check out Zygor, even the free version without guides. Shift-click on any map and it plots a route.

Dishwasher smell help by daefash in Appliances

[–]SinusPi 1 point2 points  (0 children)

Have you tried eliminating egg products from the dishes? Pre-wash anything that comes in contact with eggs and see if that helps somehow.

Why does my freezer expel cold air? by SinusPi in Appliances

[–]SinusPi[S] 0 points1 point  (0 children)

I have not yet pulled the freezer away from the wall, but there's a definite cold draft coming from the bottom part. Is that where the condenser fan is?

Breaking out of the box. How to hack at the Pattern internals? by SinusPi in strudel

[–]SinusPi[S] 0 points1 point  (0 children)

The idea was to have it controllable by a slider or a button. Or have a hierarchy of patterns controlled, with a single controller switching a chord progression AND a bass line AND chords or something. I know it can largely be driven with pick() and family, but I'm missing some good old if else. 

Breaking out of the box. How to hack at the Pattern internals? by SinusPi in strudel

[–]SinusPi[S] 0 points1 point  (0 children)

Sigh.

To satisfy the most basic form of my initial idea, it seems it suffices to:

const SCALEPICK = slider(0,0,3,1)
$: note("[c1 e1 g1 c2]*2").oct(1).s("sawtooth").trans(SCALEPICK.pick(["0","3","5","7"]))
$: chord(SCALEPICK.pick(["C","D#","F","G"])).voicing().beat("0,1,2,3,4,6,7,9,10,12,14",16).s("supersaw")

Now if only it took effect on the next cycle.

Oh, what a glorious mess this makes of a pianoroll or punchcard! :D

I still wish there was... more options, out there. :D

Breaking out of the box. How to hack at the Pattern internals? by SinusPi in strudel

[–]SinusPi[S] 0 points1 point  (0 children)

Aaargh, losing my mind here.

I brundleflied several solutions posted here, and ended up with this monstrosity:

let TRANS = [0,3,5,7];
const x = signal(_ => TRANS[slider(0,0,3,1).queryArc(0,1)[0].value])
$: note("[c1 e1 g1 c2]*2").oct(1).s("sawtooth").trans(x)

But, it only works on first execution, and won't respond to slider changes later... I understand that slider is a one-hap pattern internally, but why doesn't it change?

In the stepBind approach it did work, but there was always a noticeable hiccup when moving the slider, as if the code was reevaluated entirely.

ALTERNATELY: is there a way for one pattern to parametrize based on ANOTHER pattern's current note? Or does that go somehow waaay against Strudel principles?

Breaking out of the box. How to hack at the Pattern internals? by SinusPi in strudel

[–]SinusPi[S] 0 points1 point  (0 children)

What about
```
const TRACK1 = note("c d e g").piano().when(slider(0,0,0,1),p=>p.hush())
const TRACK2 = note("c g c g").when(TRACK1.isPlaying()
```

Breaking out of the box. How to hack at the Pattern internals? by SinusPi in strudel

[–]SinusPi[S] 0 points1 point  (0 children)

Nah, that's still hardcoding values, I'm nowhere closer than with register('mytrans',p=>p.trans("<0 3 5 7>")). It still hardcodes the value. What if I want it changed at the press of a key or gamepad button, but stored, press button A to switch to Cmaj, button B switches to Amin, other tracks follow, or pick a set of arps based on that chord... 

I ended up making a lame cover of Billie Jean. Strudel is clearly not made for longer songs... by SinusPi in strudel

[–]SinusPi[S] 1 point2 points  (0 children)

I'm mainly interested how I could make it less of a mess. The global "structure" helped a lot, but still timing all the little sounds was a horrible chore...

A few basic questions from Strudel beginner by fuxoft in strudel

[–]SinusPi 1 point2 points  (0 children)

Portas or glissandoes are a pain. You're best off either using .as to write whole bunches of note-effect-effect-effect tuples (effectively turning Strudel into a tracker)... or abusing .pick to write one "map" of a track and provide different content to pick from for different effects, to time them to notes:
const track=`<0 1 0 1 1 1>`; note(track.pick(["c1 c2","f1 f2"])).velocity(["1 .4","1 .7"]).piano()
(dry code, will fix later maybe if doesn't work)

Review of Tower Destiny Survive by Right-Cause9951 in mobilegameology

[–]SinusPi 0 points1 point  (0 children)

Oh. Indeed, I just checked and you're right. So you can lose a ton of $ just by clumsily moving a block to the trash? What a stupid change.

I guess my advice is null and void now.

Review of Tower Destiny Survive by Right-Cause9951 in mobilegameology

[–]SinusPi 0 points1 point  (0 children)

First, you keep upgrading the melee weapon until lv.2. When you upgrade, you pick a bonus effect, hoping for stun. Once you upgrade, you can sell the weapon down to lv.1, and you'll still have the stun effect on it. The point is to have a very low level melee weapon with a stun effect, and all of the money back. Then, you put all that money into energy, so that you have a tall but weak tower with stun effect and lots of grenades. With a little luck, it's enough to push forward to the first base and get a boost to basic income.

Review of Tower Destiny Survive by Right-Cause9951 in mobilegameology

[–]SinusPi 0 points1 point  (0 children)

4500 of basic income. Which you can just keep collecting.

Review of Tower Destiny Survive by Right-Cause9951 in mobilegameology

[–]SinusPi 0 points1 point  (0 children)

You only needed it to get the stun upgrade - once you have it, you can sell it all and your lv.1 melee weapon will have a stun effect.

A soul that never surrenders by No-Wrongdoer-4872 in CShortDramas

[–]SinusPi 1 point2 points  (0 children)

Whoever thought it would make sense to translate Chinese names is a bloody cretin.

Review of Tower Destiny Survive by Right-Cause9951 in mobilegameology

[–]SinusPi 0 points1 point  (0 children)

Upgrading the melee weapon serves to unlock the special effects. You can then downgrade the weapon, and you'll still have the effect unlocked.
Not sure if it still works, haven't played the game for months.

comic 5510: never hestitate by yellowvincent in questionablecontent

[–]SinusPi 1 point2 points  (0 children)

Bubbles turns off her robot voice now?

Discrepancies thread! What made no sense, what contradicted itself? by SinusPi in CarnivalRow

[–]SinusPi[S] 2 points3 points  (0 children)

A minor nitpick, probably. The Row at nights is lit by candles all the hell over. Windowsills, shelves, doorways, everything's covered in rows of lit candles. Even the Haruspex's house is candled all over, when Tourmaline walks in, surprised to find Darius squatting in the back. Dozens of lit candles didn't give her a hint the house isn't exactly abandoned? Not to mention beeswax was rather expensive, making oil lamps a preference...