Skip to content

Instantly share code, notes, and snippets.


Blair Wilcox reccanti

View GitHub Profile
reccanti / log
Created Nov 28, 2020
OBS 26.0.2 Crash Log
View log
Process: obs [4998]
Path: /Applications/
Identifier: com.obsproject.obs-studio
Version: 26.0.2 (26.0.2)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: obs [4998]
User ID: 501
Date/Time: 2020-11-28 15:35:34.570 -0500
reccanti /
Last active Nov 16, 2020
Notes – Kingdom Hearts II Final Mix – Beginner – Any%

reccanti's Kingdom Hearts II Final Mix Speedrunning Notes

Howdy folks! If you're not me (reccanti), then welcome to my speedrunning notes! For the most part, I've been following along with this guide InsertLogic (give it a watch!). Most things will be related to what he said, though I'll bring up places where I deviate from that or replace his strategy with something a little easier:

InsertLogic's Guide



reccanti /
Created Apr 23, 2020
A script I use to convert .mov files generated by the MacOS cmd+shift+5 Screen Record tool into gifs. Based on this article from the Giphy Engineering Blog:
ffmpeg -i -filter_complex "[0:v] fps=30,scale=720:-1,split [a][b];[a] palettegen [p];[b][p] paletteuse" BackToTopDemo.gif
reccanti / test.js
Created Feb 17, 2020
A small, copy-pastable, unit testing framework for Node JS.
View test.js
// Lightweight testing framework
// Runs through a nested JS Object until it
// finds an entry with a function value.
// Otherwise, recursively cycle through the list, adding
// descriptive tags along the way
function run(tests) {
const greenText = text => `\x1b[32m${text}`;
const redText = text => `\x1b[31m${text}`;
const resetText = text => `\x1b[0m${text}`;
reccanti / CCMagentaCyanTunnel.swift
Created Jan 11, 2020
A swift playground that modifies the black and white demo to be more flexible and maintainable
View CCMagentaCyanTunnel.swift
import SpriteKit
import PlaygroundSupport
// Variables to manipulate the demo
let COLORS: [UIColor] = [.white, .cyan, .white, .magenta]
let NUM_SHAPES = 6 // The number of shapes that will appear onscreen
let SPEED = 0.5 // the speed at whic the demo will move
reccanti / CCBlackAndWhiteTunnels.swift
Created Jan 11, 2020
A swift playground that uses scaling squares to give the appearance of moving through a tunnel
View CCBlackAndWhiteTunnels.swift
import SpriteKit
import PlaygroundSupport
// Variables to manipulate the demo
let NUM_SHAPES = 8 // The number of shapes that will appear onscreen
let SPEED = 1 // the speed at whic the demo will move
func getScaleFactor(numShapes: Int, index: Int) -> Double {
return 100.0 / Double(numShapes) * Double(index)
reccanti / CCRotatingSquares.swift
Created Jan 11, 2020
A swift playground with rotating, translucent squares
View CCRotatingSquares.swift
import SpriteKit
import PlaygroundSupport
let view = SKView()
let scene = SKScene(size: CGSize(width: 100, height: 100))
scene.backgroundColor = #colorLiteral(red: 1.0, green: 1.0, blue: 1.0, alpha: 1.0)
scene.scaleMode = .aspectFit
for i in 1 ... 7 {
let rect = SKShapeNode(rect: CGRect(x: -25, y: -25, width: 50, height: 50))
View main.html
<!DOCTYPE html>
<html lang="en">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>WebGL Source</title>
html {
height: 100%;
reccanti / stateGuessingGame.hs
Last active Feb 1, 2019
This is an example of how to use the State Monad in haskell
View stateGuessingGame.hs
-- A game where the user tries to guess a random number
-- It initializes the game with a random number and an
-- empty array of guesses, and prompts the user to guess
-- numbers until they arrive at the correct one.
-- The state consists of a GameState and a Bool. The
-- GameState stores the random correct number and the
-- numbers the user has guessed. The Bool is used to
-- represent whether or not the user has guessed the
-- correct number
reccanti / randomNumber.hs
Last active Jan 29, 2019
Get a random number between 1 and 100 in Haskell
View randomNumber.hs
import System.Random
main = do
x <- randomRIO (1,100) :: IO Int
putStrLn $ show x
You can’t perform that action at this time.