Connor Ashcroft


Who?


A 24 year-old polymath from Eugene, OR in the US who enjoys learning about and creating things. I'm very fond of programming, graphics design, and music. My roughly 15 years of programming experience started in Roblox in 2009 as I made random things I thought were cool. Nowadays, I use my experience with C#, Lua, Python, and C/C++ to keep on making neat stuff. I've picked up music and graphics/technical design in the past few years as well.

Projects

Flight Simulator Avionics Panels



Fusion, Arduino, Inkscape
(Solid modelling, 3d printing, prototyping, wiring)
Homemade avionics for use within a flight simulator running on my PC.

Aviation has been an interest of mine for as long as I can remember! I've gotten back into it in the past couple of years and started playing flight simulator like crazy, and even got into VATSIM, an online network for air traffic control within sims. It started to get cumbersome as I found myself getting into a point-and-click adventure localized entirely within the cockpit, so I looked into using my 3D printer to make physical panels that connect to the simulator. This involved lots of prototyping, soldering, and patience. I ended up making a landing gear panel as a proof of concept, as well as an autopilot panel for use in the Citation CJ4 (simulator). Huge thanks to the MobiFlight community for providing free resources and guides that made this happen!

Download models

miniMIA


Fusion, Raspberry Pi, Ubuntu, Arch Linux, Python
(Solid modelling, 3d printing, networking, Linux)
A portable device that plugs into your home network and bridges traffic to a device on another network.

My friend set up a server at his home to learn about Linux and to have it function as a game server for our friends. It had some other functionality as well. We ran into a problem where we wanted to access his server on devices other than a PC without installing the VPN software, Tailscale. So, miniMIA was born (he named his server "Mia"), and we made a few of these to essentially bring his server wherever it was connected. I collaborated with my friend to make a toolchain that made it easy to produce these--I made the network "tunnel" software and 3D models, and Justin made the tools to install everything on a SD card for a Raspberry Pi. This was a very fun homelab project and I can't wait for the next one!

Tunneler GitHub - miniMIA Installer GitHub (by Justin O'Reilly) - Instruction Booklet (for fun)

Technical Drawings


Fusion, CorelDRAW
(Parametric 3D modelling, drawing creation and design)
A few pages of a pole sign I designed in Fusion as well as a drive-thru sign from CorelDRAW

While working at a sign fabrication company, I was always fascinated by the idea of communicating design and construction intent with drawings and design. I believed the drawings we were providing the fabricators at the time could be greatly improved and made clearer, so I took it upon myself to spend my free time learning how to do them on my own, outside of work. I started learning Fusion, and spent my breaks on the production floor asking questions about the fabricators' processes and decisions. Within a couple of months, I made drawings for a mock-up sign, a few pages of which are shown above. I had a lot of fun putting these together, though nothing has come of it.

BRIX: Stack to the Death


Garry's Mod
(Lua programming, graphics design, sound design)
Fit with a menu system, tutorial, spectator mode, and keyboard + controller support.
First working prototype for scaleable multiplayer using a custom protocol.

A last man standing brick stacking game programmed with Lua entirely within Garry's Mod using the Starfall addon. I've spent over a year, on and off, making this from the ground up. There are certainly other games like it, but I've learned so much more about the structure of games, both on the back end and front end. This project also taught me how to optimize processing power, especially with graphics.

BRIX is planned to be refactored to become a standalone game to be released on Itch.io, but is currently on hold.

GitHub - More Demo Videos

Tetris 99 Keyboard Controller


Microcontroller
(C programming, PCB design, assembly)

It's no secret I love Tetris and similar games. I became obsessed with getting a win in Tetris 99 when it came out! Playing on a keyboard fared better for me, but I couldn't afford a fancy keyboard controller for the Switch. So, I made my own and got my first win. Very fun!

PCB Gerber File - Source code (download)

GMod Tower


Garry's Mod
(Lua programming, team environment, some design)

A massive multiplayer hangout server on Garry's Mod, and now standalone video game Tower Unite. This was where I learned to work with a team of other developers! I added video poker and Texas Hold 'Em to the casino in 2014. I also did a New Year's countdown clock for 2015 and a bunch of teaser events hyping up the release of the new lobby map. PixelTail took me on for a few months for Tower Unite in 2016, but I was too swamped with high school and had to depart the team.

PixelTail Games

Metaconstruct


Garry's Mod
(Lua programming, team environment, some design)
I made this glowing core effect

A Garry's Mod community sandbox server on which I'm a developer. We have a custom map for wandering around and building contraptions. I hop on this server every now and then when I feel like making cool things, like that cool core visual effect above. I also made an adaptation of the American show Deal or No Deal for players to win lots of the in-game currency!

Keep Talking and Nobody Explodes


Garry's Mod
(Modular Lua programming, design)
My friend's first time playing (he's the defuser)

I loved playing Keep Talking with my buddies back when it was blowing up. So much, that I tried to put it into Garry's Mod! This was pretty much finished with easy and medium-difficulty modules in 2015, and I learned how to make my programming more modular. It also involved dynamic music which was real satisfying when it fell into place in the video.

GitHub - More Demo Videos

Keep Talking and Nobody Explodes (Custom Module)

Unity
(C# programming, 3D modelling, technical writing)

Part of my Unity experience comes from my work on the difficult Number Pad module that I uploaded to the Steam Workshop later in 2016. Its complicated defusal manual page, that I wrote, got some interesting feedback, though it was a fun challenge making the code work consistently. This was my first step into Unity which was very easy to pick up.

GitHub (forked from mine)

Links + Contact


GitHub YouTube


You can reach me at my professional email: [email protected], or my personal email if you have it.
Emails to my professional email containing "unsubscribe" are automatically moved to my junk folder