Skip to content

Instantly share code, notes, and snippets.

View Riizade's full-sized avatar

Adam James-Liebau Johnson Riizade

  • San Francisco, CA
View GitHub Profile
{
"characters": [
{
"ascendancy": 5,
"hardcore": false,
"items": [
{
"corrupted": false,
"mods": [
{
@Riizade
Riizade / DoomBunnies.json
Created June 10, 2017 03:15
The output of exilescraper on my own Path of Exile account ("DoomBunnies")
{
"challenges": {
"league_challenges": {
"challenges": [
{
"complete": false,
"goal": 188,
"progress": 164,
"text": "Kill Rare Monsters"
},

Rogue

Level 1

Attributes

Strength: 2D
Dexterity: 4D
Intelligence: 3D
Charisma: 3D

@Riizade
Riizade / rules.md
Created August 25, 2018 02:53
Homebrew Garbage Ruleset

Homebrew Garbage

A rules-light tabletop RPG designed to be fast to play and incredibly easy to expand upon.

Based on the d20 ruleset.

Philosophy

Flexibility

@Riizade
Riizade / appendices.md
Created August 25, 2018 02:55
The combined appendices for Homebrew Garbage

Abilities

Abilities have two parts: a cost and an effect. The cost represents the cost in ability points the character must expend to use the ability, and the effect is a description of what happens when the skill is used.

Many abilities have a section listed "Alternate Flavors". This section is used to list names of similar abilities that will help better align the ability's effects with the fantasy of a particular character, or give a player or GM ideas for slight variations on the ability that they can use instead.

Rip Space

Cost: 2 ability points

@Riizade
Riizade / style.css
Created September 30, 2018 20:06
Fixing Sarah's css
html {
font-family: helvetica, arial, sans-serif;
font-size: 22px;
color: seashell;
background-color: black;
opacity: 0.9;
}
header {
position: fixed;
@Riizade
Riizade / survey_analysis.py
Created February 29, 2020 09:19
Does some basic analysis of an r/socialism survey on reddit
from pathlib import Path
from typing import Dict, Iterable, List, Tuple
import csv
def rows_from_csv(filename: Path) -> Iterable[Dict[str, str]]:
rows = []
with open(filename, newline='') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
@Riizade
Riizade / friend_body.json
Created March 17, 2020 20:11
body of request from Duolingo desktop when viewing a friend
{
"users": [
{
"joinedClassroomIds": [],
"streak": 5,
"motivation": "none",
"picture": "//duolingo-images.s3.amazonaws.com/avatars/1421889/rB1lIOc7RU",
"learningLanguage": "zh",
"hasFacebookId": true,
"liveOpsFeatures": [],
@Riizade
Riizade / duolingo_body.json
Last active March 17, 2020 20:19
The body of the main page of Duolingo desktop when logged in
{
"practiceReminderSettings": {
"ja": {
"timeInMinutes": 1200,
"pushEnabled": true,
"emailEnabled": true
},
"it": {
"timeInMinutes": 1200,
"pushEnabled": true,
@Riizade
Riizade / duolingo_data_model.md
Last active March 18, 2020 00:16
Document describing the datamodel of a Duolingo account

Information

Timestamps

Fields like "timestamp" on xp events and "creation_date" on accounts are stored as unix time. That means "seconds since the Unix epoch".

It's accurate down to the second, and they're all in the same "timezone" which is UTC (like GMT but doesn't change for daylight savings or anything).

You can combine this with an account's (or a browser's) timezone and/or timezone_offset value to display the time in their local timezone.