Skip to content

Instantly share code, notes, and snippets.

@LenweSaralonde
LenweSaralonde / top-5-video-techniques-in-wow.md
Created January 9, 2026 11:33
Top 5 techniques for making videos in World of Warcraft

Top 5 techniques for making videos in World of Warcraft

Here are 5 essential techniques to make stunning videos in World of Warcraft. These can be used independently but they are even better when combined together!

1. Use saved views

Saved views place the camera at a fixed position relatively to your character. These can be used to:

  • record your character from the exact same angle at different locations.
@LenweSaralonde
LenweSaralonde / pwm-fan.ino
Created December 10, 2025 09:01
Simple PWM fan controller for Arduino Nano
#include <EEPROM.h>
// 25 kHz PWM Fan Controller with Button Speed Steps
// Arduino Nano (ATmega328P)
// PWM on D9 (OC1A), Button on D2
// Onboard LED (D13) pulses reflect fan duty
// Last setting is stored in EEPROM
const byte PIN_BUTTON = 2;
const byte PIN_LED = 13; // Onboard LED
@LenweSaralonde
LenweSaralonde / sakura-cherry-blossom-argb-effect.ino
Last active December 15, 2025 19:47
Sakura cherry blossom ARGB effect for Arduino board
// Sakura cherry blossom ARGB effect
// Requires the FastLED library
// Connect digital pin 2 to your ARGB controller with a 470 Ohm resistor in series.
// Connect PC case LED button to digital pin 3 to control brightness ofer 5 levels (saved after power down).
#include <FastLED.h>
#include <EEPROM.h>
#define NUM_LEDS 8
#define DATA_PIN 2
@LenweSaralonde
LenweSaralonde / Fix-synology-heic-hvec-thumbnails.md
Last active January 22, 2026 02:31
Fix thumbnail generation on Synology DSM and File Station for HEIC photos and HVEC videos

Fix thumbnail generation on Synology DSM and File Station for HEIC photos and HVEC videos

Synology DiskStation DSM update 7.2.2 broke support for HEIC and video thumbnails such as HVEC.

This guide will help you setting up a scheduled task using filebot to generate the missing thumbnails in the background for File Station for the web and DS File on mobile.

Install packages

Log into DSM.

@LenweSaralonde
LenweSaralonde / resolve.js
Created December 5, 2024 12:44
Bruteforce vigenère cracking Node.js script
// Usage: node resolve.js
// You can change the parameters below
const puzzle = 'JYPFFQVY';
const errorThreshold = 1;
const dictionaryFile = 'All-English-and-WoW-words.txt'; // Get this file at https://gist.github.com/LenweSaralonde/4f9a98c6d7d2569cff881ad8a13a7c4a
/// ///////////////////////////////////
@LenweSaralonde
LenweSaralonde / All-English-and-WoW-words.txt
Last active December 5, 2024 12:43
Dictionary of all English words + WoW NPC names (from WoWHead) + WoW area names (from DBC) + WoW item names (from DBC) + WoW spell names (from DBC)
This file has been truncated, but you can view the full file.
2
1080
&c
10-point
10th
11-point
12-point
16-point
18-point
1st
@LenweSaralonde
LenweSaralonde / areas.txt
Created December 2, 2024 00:27
All known NPCs, areas, items and spell names from World of Warcraft (patch 11.0.5)
$n's Fort
$n's Garrison
$n's Level 4 Alliance Garrison
$n's Level 4 Horde Garrison
$n's Outpost
- QA and DVD GLOBAL -
10 Canyon
10 Highlands
10.0 Hackathon: Living World
10.2 Devland
@LenweSaralonde
LenweSaralonde / npc-scraper.js
Last active December 2, 2024 00:27
List of World of Warcraft NPC IDs and english names scraped from WoWHead
// Install : npm i axios
// Run : node npc-scraper.js
const axios = require('axios');
const fs = require('fs');
const baseUrl = "https://www.wowhead.com/npc=";
const minID = 1;
const maxID = 300000;
const outputFile = "npcs.txt"; // File to save the results
3 X=0:I=RND (9)*4+4:H=0:A=0
10 K=PEEK (-16384)-176: POKE -16368,0
20 GOTO 270
30 X=X+3: IF X>38 THEN 100
40 I=I+ RND (3)*4-4: IF I<4 THEN I=4: IF I>36 THEN I=36: GR: COLOR=9 : VLIN I-1,I+1 AT X: PLOT X+1,I
50 IF K<1 OR K>9 THEN 10
60 A=A+1: IF A>30 THEN 100
70 COLOR =3+A MOD 2: HLIN 0,39 AT K*4
80 IF K*4_I THEN 90: PRINT"BLEEPER DESTROYED.": PRINT:S=S+1: PRINT "SCORE SO FAR",S: PRINT
85 X=0
@LenweSaralonde
LenweSaralonde / pause-mouse-buttons-toggle.ahk
Created July 10, 2024 17:17
Toggle both mouse buttons using the PAUSE keyboard key. Requires AutoHotKey v1
pause::Send % ( GetKeyState("LButton") ? "{lbutton up}{rbutton up}" : "{lbutton down}{rbutton down}" )