Deprecated: Return type of WP_Theme::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-theme.php on line 554

Deprecated: Return type of WP_Theme::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-theme.php on line 595

Deprecated: Return type of WP_Theme::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-theme.php on line 535

Deprecated: Return type of WP_Theme::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-theme.php on line 544

Deprecated: Return type of WP_REST_Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/rest-api/class-wp-rest-request.php on line 952

Deprecated: Return type of WP_REST_Request::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/rest-api/class-wp-rest-request.php on line 972

Deprecated: Return type of WP_REST_Request::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/rest-api/class-wp-rest-request.php on line 984

Deprecated: Return type of WP_REST_Request::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/rest-api/class-wp-rest-request.php on line 995

Deprecated: Return type of WP_Block_List::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 151

Deprecated: Return type of WP_Block_List::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 175

Deprecated: Return type of WP_Block_List::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 164

Deprecated: Return type of WP_Block_List::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 186

Deprecated: Return type of WP_Block_List::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 138

Deprecated: Return type of WP_Block_List::offsetExists($index) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 75

Deprecated: Return type of WP_Block_List::offsetGet($index) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 89

Deprecated: Return type of WP_Block_List::offsetSet($index, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 110

Deprecated: Return type of WP_Block_List::offsetUnset($index) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 127

Deprecated: Return type of WP_Block_List::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/class-wp-block-list.php on line 199

Deprecated: version_compare(): Passing null to parameter #2 ($version2) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/plugins/optimole-wp/vendor/codeinwp/themeisle-sdk/load.php on line 31

Deprecated: version_compare(): Passing null to parameter #2 ($version2) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/plugins/optimole-wp/vendor/codeinwp/themeisle-sdk/load.php on line 36

Deprecated: Optional parameter $key declared before required parameter $value is implicitly treated as a required parameter in /home/brandonabley/public_html/wp/wp-content/plugins/themify-updater/includes/class.cache.php on line 62

Deprecated: Optional parameter $image declared before required parameter $height is implicitly treated as a required parameter in /home/brandonabley/public_html/wp/wp-content/plugins/themify-shortcodes/includes/functions.php on line 95

Deprecated: Return type of Requests_Cookie_Jar::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Cookie/Jar.php on line 63

Deprecated: Return type of Requests_Cookie_Jar::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Cookie/Jar.php on line 73

Deprecated: Return type of Requests_Cookie_Jar::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Cookie/Jar.php on line 89

Deprecated: Return type of Requests_Cookie_Jar::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Cookie/Jar.php on line 102

Deprecated: Return type of Requests_Cookie_Jar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Cookie/Jar.php on line 111

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 40

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 51

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 68

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 82

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/brandonabley/public_html/wp/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 91
Brandon Abley
Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/themes/themify-ultra/themify/themify-utils.php on line 619

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/themes/themify-ultra/themify/themify-utils.php on line 619

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/themes/themify-ultra/themify/themify-utils.php on line 619

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/themes/themify-ultra/themify/themify-utils.php on line 619

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/themes/themify-ultra/themify/themify-utils.php on line 619

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/themes/themify-ultra/themify/themify-utils.php on line 619

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-content/themes/themify-ultra/themify/themify-utils.php on line 619

Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /home/brandonabley/public_html/wp/wp-includes/formatting.php on line 4230

Deprecated: parse_str(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-includes/formatting.php on line 4974

Deprecated: parse_str(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-includes/formatting.php on line 4974

BRANDON ABLEY

I am Brandon Abley, a video game developer and composer.

I have an unrelated day job and I blog occasionally.

MUSIC

I compose soundtracks for video games and film. My styles include classical, electronic, and American folk music.

I am available for commissions.

Find me on Soundcloud

My entire portfolio is available for streaming and free download on Soundcloud, including complete soundtracks, solo piano improvisation, folk music and more.

Find me on Spotify

Full releases are available for streaming via Spotify.

GAME

I am a video game developer.

I use the Unity game engine, primarily in 3D.

WtHLogo

Wilfred the Hero

I have been working on this video game for 15 years. I ostensibly plan to finish it someday.

examante1

Ex Amante

I created Ex Amante, a game about letting go.

You can download and play it for free at examante.com.

TRAVEL

I like to travel.

When I do, I take photos and write about what I have learned.

My most recent adventures are previewed below.


Deprecated: parse_str(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-includes/formatting.php on line 4974

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/brandonabley/public_html/wp/wp-includes/wp-db.php on line 3031

More

The above are only the most recent adventures. Click the button below to see the full list.

ME

I live in Washington DC.

My favorite things are fresh oysters and karaoke.

My day job involves making tools that help heroes save lives.