Skip to content

Instantly share code, notes, and snippets.


Will Hutcheson whutch

View GitHub Profile
whutch /
Last active Feb 12, 2018
Hide/find messages hidden in text indentation.
#!/usr/bin/env python
"""Hide/find messages hidden in text indentation."""
import argparse
from collections import deque
import os
from os.path import exists
# Command line parsing stuff.
PARSER = argparse.ArgumentParser(description="Hide/find messages hidden in text indentation.")
sudo pip install praw
git clone
cd roll_one_for_me
Example usage:
whutch /
Created Mar 18, 2016
Game module for Clockwork that demonstrates terminal manipulation possibilities.
# -*- coding: utf-8 -*-
"""Weather monitor; example of client terminal manipulation."""
# Part of Clockwork MUD Server (
# :copyright: (c) 2008 - 2016 Will Hutcheson
# :license: MIT (
from ... import settings
from import WeatherPattern
from ...contrib.worldgen.maps import _render_map_data, render_map_from_layers
from import EVENTS
whutch /
Last active Feb 15, 2016
Atria weather system test script
from time import sleep, time
from subprocess import call
from import WeatherPattern
from atria.contrib.worldgen.maps import (_render_map_data,
from atria.contrib.worldgen.terrain import _parse_terrain_grid
from atria.libs.miniboa import colorize
whutch /
Last active Mar 15, 2016
Example contrib modules for Clockwork
from functools import partial
from cwmud.contrib.crafting import Material
from cwmud.contrib.gathering import GatheringNode
from cwmud.core.characters import CharacterShell
from cwmud.core.commands import COMMANDS
from cwmud.core.items import Item, ITEMS, Trash
from cwmud.core.skills import AbilityCommand, Skill, SKILLS
whutch /
Created Jan 26, 2016
Test game module for Atria
# -*- coding: utf-8 -*-
"""A test game for prototyping."""
# Part of Atria MUD Server (
# :copyright: (c) 2008 - 2016 Will Hutcheson
# :license: MIT (
import re
from .. import settings
from ..core.accounts import Account, AccountMenu, AccountName
whutch / mapgen.patch
Created Jan 14, 2016
Patch for Atria to turn it into a map generation server
View mapgen.patch
diff --git a/atria/core/ b/atria/core/
index f85c091..0c180b2 100644
--- a/atria/core/
+++ b/atria/core/
@@ -23,6 +23,7 @@ from .storage import STORES
from .timing import TIMERS
from .utils.exceptions import ServerReboot, ServerReload, ServerShutdown
from .utils.funcs import joins
+from .world import MapShell
whutch / mineavoider.js
Last active Dec 9, 2015
A Bot Land mine avoider
View mineavoider.js
init = function () {
started = false;
count = 0;
update = function () {
if (!started && (x != 0 || y != 0))
started = true;
whutch / cheatsheet.js
Last active Dec 9, 2015
Bot Land JS Cheat Sheet
View cheatsheet.js
life // bot's current life (out of 1000?)
x // bot's current x coordinate
y // bot's current y coordinate
whutch /
Last active Dec 27, 2015
Dota 2 replay analysis stuff
import tarrasque
# Mapping of hero dt_key values to their keys in the CombatLogNames string table
hero_clnames = {
# This list is incomplete! I add to it whenever I hit a new hero parsing
"DT_DOTA_Unit_Hero_Abaddon": "npc_dota_hero_abaddon",
"DT_DOTA_Unit_Hero_Alchemist": "npc_dota_hero_alchemist",
"DT_DOTA_Unit_Hero_AncientApparition": "npc_dota_hero_ancient_apparition",
"DT_DOTA_Unit_Hero_Axe": "npc_dota_hero_axe",
"DT_DOTA_Unit_Hero_Bane": "npc_dota_hero_bane",
You can’t perform that action at this time.