Leaving Yoga, Learning to Code, and Building Explore the Universe

A visual journey from yoga and landscaping to programming, simulation and game development

This blog article is more of a personal, journal type of update. I like to use this website as a kind of storage and memory device so its been really nice to have this as I’ve progressed through teaching yoga, going to India, and becoming a landscaper. Most Recently, I have worked hard to up my education level to be able to write and produce high quality software. Parkers Physics, Explore the Universe 2175, this website (elliottelford.com)’s new design, Telfordlandscaping.com and Telford Projects are all a result of this endeavoring to become a computer scientist. I’d say its going well so far!

Leaving Yoga as a Profession

One of the bigger decisions I’ve had to make recently was quitting yoga. Honestly, the studio I worked at, East Wind, made it really easy to quit. And to be honest, I’ll never go back to that studio, I felt like the quality of the yoga really went down hill over the past decade while I worked there, so I was kinda happy to call it.

The Intellectual Pursuit of the Art of Yoga

Yoga for me was always a pursuit of knowledge; learning about the inner world, learning to meditate, finding mental clarity and stillness and purpose was always more important than feeling like a leader. Although I found my teaching time to be fun and interesting, there was always a lack of fulfillment within it. I think this happened because many of the great yogis are self-driven and they don’t really want or need a studio, or community to practice with. And those things can get in the way when one has a deep practice.

Going Back to School Without Going Back to School

In early 2022 I decided to get a job at Dave Bushnell’s nursery in Granite Bay, I had been working as a landscaper for about 10 years and was ready to start a legitimate business; however, I did not have the necessary qualifications to apply for a contractors license in the state of California.

Bushnell’s Transition

Now this is all in hindsight, but it hit me pretty hard when I had to become a manual laborer for someone else. It felt really unfair. But I ate the bullet and spent the early mornings re-educating myself with all kinds of things to take my mind off of the manual labor tasks that I had each day. I’d come home exhausted most days. But in the morning, I’d be studying starting at 4am most days. It started with a really high quality computation neuroscience class on cousera that was just generally really fun for me, even though at the time I didn’t really understand the content (I understood the neuroscience from Gonzaga, but the computation/python side of things was a mystery). Now, that is a different story.

Chat GPT and Coursera

In late 2022, Chat GPT came out and we all remember how fast that hit. In addition to my studying courses on coursera, this was another tool that was fantastic for learning. My favorite class was Introduction to Calculus, but I also took: Astronomy, Linear Algebra, Deep Learning, and a bunch of other classes. I also did a whole python and HTML programming course with IBM, it was pretty good.

Wanting more than yoga

All of this education work reminded me of why I loved yoga so much to begin with; it was a form of unstructured learning. For someone with ADD, that is pretty close to heaven. So I spent the mornings wandering around the history of intellectual growth in physics, which is where I ended up with all of the classes and where Parkers Physics starts. Teaching yoga was never much of an intellectual pursuit; however, I did love the public speaking and getting to know everyone and their stories. I just feel like I am not meant to be a yoga teacher in the end.

Books are just the Best

One of the things that I made a concerted effort to get back into was reading; as a kid I always read a lot, it was part of how I learned about science fiction and fantasy, though I still haven’t read Lord of the Rings. It’ll happen when the time is right. During the time at Bushnell’s I got through a few different books, my favorite of them all was the Realm of the Nebulae by Edwin Hubble which is a fascinating look at very distant galaxies and by so doing, understanding our own in a bit more detail. Einstein’s book of relativity was the hardest read, but rewarding, and Stephen Hawking’s book was also pretty awesome, A Brief History of Time. It was pretty fun to grind on Einstein’s and Hawking’s books, but I’ll warn you right now they are pretty boring and Einstein’s specifically is a difficult read.

Landscaping, 4 AM, and Learning Python

I guess I chose to get back into computers instead of teaching yoga. And that meant becoming a developer. Product management is fine, but I think its better to be able to directly contribute code to a company, especially once you start getting into more advanced technologies. So I got started learning Python, there are a bunch of Coursera courses on it and I just eventually started working on my own projects. My github is chock full of stuff that I started and some stuff that I considered finished. And this eventually is how I got started on Explore the Universe 2175.

RUST, ECS systems, Collisions, and Physics systems in games

So I began to work on the game every day, including weekends. I haven’t really stopped working on Explore the Universe for 2 and a half years now. I really do have a big vision to bring to life! And for a solo-developer to make a game engine, I think is pretty ambitious. But it seems like this is really the way to do it, just devote all of your time and energy to this one thing that much of the time is a blank screen for the first year. That was a rough year.

3D Visuals and Simulation Research with Claude & Codex

Work on Explore the Universe and research happened early in the mornings, it became pretty fun to work on things that I had been studying, like simulating black holes and trying to recreate their gravity effects. It turns out that Black holes are definitely possible to simulate, but you have to create approximations to assist the simulations in being physically realistic. For some of my visual simulations, I’ve experimented with artificial boundary conditions—a kind of outer halo that redirects escaping particles—to keep the accretion structure visually stable. It’s not literal black-hole physics, but an approximation that lets me explore the behavior without running a full relativistic simulation.

Codex and Cursor Driving Explore the Universe Development

The past two years have been all about learning new tools (which is actually very similar to landscaping). So Github has become a fluency this year, but before that I was working mostly out of Cursor using Codex to do bug fixes before that. I am also a huge fan of text edit, but I don’t really use them too much at the moment. Before I was using Cursor for most things, but I just switched.

Moving the Explore the Universe database to GitHub

Just recently I’ve started using Github for everything, Parkers Physics, Telfordlandscaping.com, and the Explore the Universe database is on there as well. Its pretty easy once you get used to it, but there was a pretty big learning curve at the beginning. Start small.

Music, Simulation, and Building a World

One of the funner aspects of the game is that I have also been making music for the last decade. The sound effects for the station, the intro track, and the laser sounds are all totally custom. Its been fun to switch gears from trying to make bass sounds to actually working on sound effects. There’s a lot of this to do for the game, Considering that I have 5 working races now, its time to start making signature elements and building themes around them. I have a bunch of stories building up that I am going to release as the demo comes out and develops this fall. Make sure you check out Explore the Universe2175.com! I am working hard on the leaderboard and there is a cool 3D mini-game where you destroy fake cities as Megabot, the Evil Robot Boss from Explore the Universe 2175.

Digi-Doom – Making the Music for MegaBot

Each faction has a boss and the most powerful and the main villain from the game is called MegaBot. The idea is that an ultra intelligent and gigantic machine gains sentience and through the trauma of his creation comes to despise humanity. I’ve been trying to write a lot of evil robot music to accompany this theme, its been pretty fun and challenging at the same time to be theme oriented in such a way. I hope the music shows some of the thought process that went into it!

Digi-Doom is what will play when a user encounters Megabot in the game.

Asteroid, My Favorite Glitch Track Yet, and trying to make home screen music for the game

Recently a lot of new music has been happening for me, which honestly is a very flow oriented thing. A lot of the time, I don’t necessarily love the music I am producing, but I am always working on sound design so that’s a little bit to be expected I think.

Noer the Boy’s new album release, Precipice

Noer put out a new album, make sure you check it out! Some of the best music I’ve ever heard <3

The Fantasy of Explore the Universe: Megabot, Cyl, and a unique adventure

Getting into Explore the Universe, the ship and Cyl have been developing nicely. There are several aspects of the game that I am really excited to exploit as the engine develops further. The Worldmap is huge, the game is fast, and each race seems to be developing a unique personality. I am limiting myself to a hard 5 before launch, but I will have characters from other races and also will plan to expand them out more next year. MegaBot is already a real threat for the player, he’s going to be an interesting boss to beat. I am still fleshing out the machine learning side of his personality, but my goal is to give the players 3-4 encounters with different difficulty levels and abilities.

The End of Planet Earth

The game exploits a fantasy that I’m sure many of us have thought about; the end of the planet! It is a very sad thought and something we should avoid at all costs! But the idea of the fantasy is similar to that of Terminator. An evil robot gains sentience and decides to wipe out humanity. Megabot does this by assembling himself over time in space, he accumulates satellites, robots, and all kinds of machinery to create his avatar.

A Friend Who Exists Outside of Time – Cyl!

But there is hope! Somehow, an intelligent entity named Cyl finds her way to you and she can guide you through the cosmos. She has a long history of fighting against Megabot, most of which happened after the destruction of planet Earth. Megabot continued his rampage to the Lumari homeworld, Cyl’s old planet and destroyed it. He literally split the planet in two and devoured the core as a self sustaining energy source.

5 Races in Strategy mode

Survivors – Terran

The humans are still a bit basic, I’ve just recently implemented them this week. They have 5 base units and a raider so far, I’m thinking of what kind of capital ship to add to them. Still working on the AIs also, but I think that a resource collection algorithm is imminent.


Crystal Masons aka Space Dwarves

The Space Dwarves are a fun race to implement, and specifically these dwarves are following the crystal Lumari’s path and the greedy little dwarves are trying to get their hands on as many of the crystals as possible; seeking after the technological grandeur of the Lumari; and also their wealth, now forgotten.


Evil Robots aka Megas and Mechas

The evil robots spread without mercy, rhyme or reason; simply by the power of exponential automation. Their nanobots swarm and create easy expansion for the rest of the mecha units to expand into the cosmos, creating a web of intelligence that expands exponentially. They are all linked as one to their master, Megabot the leader and hive mind orchestrator of the robots expansion. Beware of his generals, or of megabot suddenly appearing to destroy a planet or a star.


Mycelari – Sentient Fungus

The Mycelari are a heroic bunch; constantly self-sacrificing and evolving for the greater good of the species. Their strength comes from steadily increasing numbers, organic and nearly unstoppable spore growth creates abundances of the units across worlds; they are the primary ally against the expansion of the evil robots in Explore the Universe 2175.


Wild Race

The wild race is a more abstract and fun species of being that are themed around species of animals and simulating behaviors that might be familiar in the animal kingdom, but adapted to space. The Boss, and leader, Ursos is a half bear half mech, half of his body was destroyed in a fierce battle with Megabot. Find them in the Wild zone to unlock them in the strategy mode, so you can take on Megabot with allies.


Lumari

Crystal beings (consciousnesses contained in crystals) that went extinct with the death of the Lumari homeworld, as they were embedded into it. Cyl is a crystal inside of a drone body that the Lumari constructed when they learned of Megabot. Their remnants are scattered throughout the galaxy ready to teach a lesson, grant special powers or knowledge, or provide a challenge for the pilot to prove their skill!

More coming soon including the rogue AI race and the Magmen, and the other 10 races that will be part of the strategy mode of the game. There are also many NPCs, like Cyl, that you will get to interact with in the game through the dialogue system and also the trading and inventory system. There is also a crafting system in the works but it is still very basic. More on that soon, and make sure that if you are interested in the game, you wishlist it and sign-up @ exploretheuniverse2175.com. I will be ironing out the last bugs with the site this week, I hope! and then…


Rogue AI Race

What is an AI oriented game without multiple competing AIs that are vying for dominance? The rogue AI race is a species of robots that have been ousted and banished by Megabot; expect them to show up when you least expect it.

Explore the Universe 2175 Demo Soon!

I am getting pretty close to releasing a demo and doing the first real playtest. I still have a bit of work to do on the core loop in the strategy mode, and I want to finish that before the demo. Soon after, I will have co-op available; I am hoping that the steam integration does not take too much time. But the idea is that within the month, I will have a demo release up and we will be testing it.

Utilizing AI for Writing Computer Code and Developing Software

I hope it is obvious now, but it surely will be when the game is live, that I have used a bunch of AI generated code to create the game. I don’t think I could realistically build a game and engine with this scope as a solo developer on this timeline without automated coding tools, but I did design every aspect of the game. I love the idea of survival strategy in an emergent galaxy/world with characters that are emergent and not necessarily scripted; relying upon user/player interaction to drive the story. There are a lot of moving parts in Explore the Universe, so the player gets to decide where they want to spend their time.

Read only with Chat GPT

One of the best uses of the modern AI tools that I have found is long document search and summaries. In code bases, this is extremely helpful, as you can explore the code without necessarily even testing, or running it. A lot of my coding sessions end with more planning, which Chat GPT is a very useful part of.

Trade Vibe Coding for automated back-end engineering and testing.

I don’t really think that no-code will be a viable solution to actually understanding how software works. Instead, I think its going to be important to be able to read code quickly and understand logic. I am often fixing bugs the AI can’t find, because I created the architecture for my game and for my website. It’s also why ParkersPhysics.com is a mess right now; I need to spend time re-creating the mental model for what the website is, as it continued to evolve. Make sure you check out the new AQI features, I’ve been working on them for fire season in Northern California.

As always, thanks for reading! I’m looking forward to releasing the demo for Explore the Universe!

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.