Share this project


Share this project

CodeSpells: Express Yourself With Magic's video poster

Become the most powerful wizard the world has ever seen by crafting magical spells in code. Read more

pledged of $50,000 goal
seconds to go


This project was successfully funded on October 4.

Become the most powerful wizard the world has ever seen by crafting magical spells in code.

Project by


First created  |  0 backed

See full bio Contact me

About this project

When we were young, wizards like Gandalf and Dumbledore struck a chord in our minds.  We spent hours pretending to be wizards and casting epic imaginary spells.

Now, we want to bring that kind of creative freedom to video games.  Instead of giving the player pre-packaged spells, CodeSpells allows you to craft your own magical spells.  It's the ultimate spellcrafting sandbox.

What makes it all possible is code.  The game provides a coding interface where you can specify exactly what your spells will do. This interface is intuitive enough for individuals (young and old) who have never coded before.  But skilled coders will also enjoy using their coding skills in new and creative ways!  Even children can use this interface to make mountains out of the terrain, make an impenetrable force field around yourself, or even make a golem creature out of the surrounding rocks. The sky is the limit!

Spell-crafting sandbox: Craft and test your spells on the surrounding landscape - lift rocks, whip a river up into a tornado, anything!  The spells are cooler spells than in any video game to date -- because you and the rest of the CodeSpells community have complete control over them.  If you'd rather use "boxed" spells (maybe for inspiration before designing your own spells) these will be available too!

Unlimited creative expression: With 4 different elements (earth, fire, water, air) and the ability to combine those elements in complex ways, the number of spells you can create is literally infinite.

Learn some coding: If you already know coding, great! If not, CodeSpells uses an intuitive drag-and-drop language that even children can use.  As they become more proficient, they can code in typed Javascript!  It's the coolest way to learn one of the world's most valuable skills. 

Share spells with friends: As soon as you create a new spell, send it over to your friends for them to try out! CodeSpells will have community forums where users can show off their favorite spells with other wizards or work collaboratively on spell projects.

Play Online: Create new game modes to play with and against your friends. We'll give you the tools to make anything from a survival game to a new magic-based sport!

For the CodeSpells world we will be creating procedurally generated levels that change over time as you affect the elements and their distributions throughout the map. We've come up with a system for simulating the effects of elements in the world that will dynamically change as the environment changes. An area in shadow will be less hot than an area in direct sunlight. Altitude will change the weather. Land close to a water source will be humid, so more vegetation will grow there. Hot and dry areas will be more prone to catching fire. We'll be able to simulate fire spreading, water flowing through new areas, and constantly changing biomes. The world will feel truly dynamic and alive.

For the sandbox version of CodeSpells you'll be able to freely use any spells you create to affect these environments and understand the way the systems work together. You'll be able to redirect rivers and play with the environment as a living system.

You will be able to level up from experience gained through gameplay. Each element will be bound to a different mana bar that can be increased so that your character can be customized.  Specialize in one element, or learn them all.

We are developing several game modes that make full use of the generated areas of CodeSpells, but we'll also be opening up the ability to make new game modes to you. If you want to make a game about surviving in the wilderness, you'll have all the tools to do that. If you want to create a game mode that's purely about balancing an eco-system, you'll also be able to do that. You can even create a new multiplayer magic-based sport to play with your friends. You'll be able to share these and discover game modes that other people have create around the world. At the core, CodeSpells is about creative expression. We want you to be able to customize the experience and give you the power to use your magic in the worlds you create.

The statistics about coding education are alarming: 

Part of the reason kids choose not to pursue coding is because it doesn't sound "fun": working in a basement, dealing with syntax errors... We hope to make an impact in the world by showing kids (and adults) that coding can be a tool for creative expression.

Students can learn to code, syntax-error free using a Blockly spell-crafting interface that has all the tools available in Javascript. When they've learned all the programming concepts from Blockly, students can move on to typing Javascript code.

The wizards of CodeSpells will be able to master each of the 5 elements. As you grow more powerful, elemental magic can be combined into even stronger spells.


Earth is aligned with geological forces and a deep understanding of the physical world. Earth magic users understand the geological timescale. These wizards are both powerful builders, building castles and deforming terrain, but also powerful foes, with the ability to hurl boulders and create secret pitfalls.

Earth orbs use the physical forces of the world to attract and repel objects away from each. They can apply directional forces or torques to objects they touch. With Earth magic you could create a rock fortress that only you know the secret way into or you could create a Rock Golem to defend you as you explore the world.


Fire is the spark that started the universe. While fire users appreciate a fire's simple light and warmth, they can also unlock its more destructive potential -- burning forests and melting glaciers.

A fire orb has the ability to burn things in its path, but it also has the ability to reconstruct things from ashes at a high mana cost. A player could teleport themselves by turning themselves into ash, having the orb fly through an un-walkable area, and reconstructing themselves on the other side.


Water is an ever-changing substance, and water wizards are aware of water in all its forms: water, ice, and vapor.

Water orbs are primarily about interacting with the flow of the environment. You can redirect rivers or put out fires. You can affect the world in a sustained way to flood an area or to create new forests.


Air ties everything together and is combined with the other elements to amplify their precision. Because of its broad area, air is often used as a defensive art.

Air orbs are about sensing the world. They have a wide radius and have a more defined understanding of what they touch. As a wizard you can capture sounds from one area and alter the way they manifest themselves. If you wanted to be stealthy, you could use an air orb to suppress your footstep sounds or emit them elsewhere to confuse creatures or other players.

Life (The 5th Element) 

Life is the most powerful element, and therefore the most difficult to master (See stretch goals). Life magic can be used to grow forests and affect creatures.

Life orbs represent a deeper understanding of programming and being able to deconstruct prebuilt code. Creatures will have code that through observation and Life orbs you'll be able to open up and explore. With that, you can alter their behavior and tame them. If you see a creature defending its home, you can cast a Life orb to study the creature and expose the concept of 'defending a target'. You then have access to the defend function for a creature and can redirect it to defend you.

Adrian Lopez-Mobilia, Lead Video Game Developer - Adrian has been developing video games for several years. He was the Lead Programmer for the indie game God of Blades and has done robotics research.

Jason Rosenstock, Lead Video Game Artist - Jason has been an Illustrator & Environment Artist for 15 years with a specialty in Fantasy Art. Jason has worked previously on projects such as Star Wars: The Old Republic, God of Blades, and several television and book series.

Stephen Foster, Kickstarter Project Lead - Stephen is the CEO of ThoughtSTEM. Completing his PhD from UC San Diego in Computer Science with a focus on Computer Science Education and HCI.

Lindsey Handley, Business & Marketing Lead - Lindsey is the COO of ThoughtSTEM. Completing her PhD from UC San Diego in Biochemistry.

Dr. Sarah Esper, Lead of Curriculum & Education - Sarah is the CTO of ThoughtSTEM. She recently completed her PhD from UC San Diego in Computer Science with a focus on Computer Science Education and HCI.

We chose Kickstarter because we want to involve you in the development process! We need your feedback, comments, and criticism to help us create the best possible spell-crafting world.

We want to create a world that is not only fun to play in, but also fun to build new content in. With Kickstarter, we feel like we can connect with you and get feedback immediately from people truly interested in seeing CodeSpells succeed.

Current Status

We have a system for crafting spells in a drag-and-drop language. We have an early version of gameplay for earth magic completed, and we've started prototyping the other elements, but we still have plenty more to develop.

Post-Kickstarter Timeline

This Kickstarter will fund the development of three more elements (Fire, Air, and Water) and the polishing of the final game over the course of 1 year. We want CodeSpells to be an experience with AAA game quality.

December 2014: The Alpha of CodeSpells will be released to our "$80 & up" backers on Christmas Day of 2014.

June 2015: The Beta of CodeSpells will be released to our "$30 & up" backers. We look forward to using the feedback from our Alpha & Beta Kickstarter backers while we improve the gameplay. 

September 2015: All Kickstarter backers will receive a copy of the Creative Mode of CodeSpells.

If we get funded beyond:

Early 2016: We'll polish and release the multiplayer game creation tools so you can create your own new multiplayer games within CodeSpells.

Summer 2016: First release of Life as an element in the game. There will be creatures, plants, and NPCs to interact with in the world.

Holidays 2016: We'll give you the tools for a new Artificial Intelligence system for the NPCs that populate the world along with a dialog system so you can create new story based adventures within CodeSpells.

Early 2017: Create your own new species and custom characters with new tools and an in-game character creator.

We want CodeSpells to be a game with AAA quality but that requires time and money. We need to purchase licenses and be able to pay developers. Each new feature in CodeSpells needs to work not only as a clearly defined system, but also one that's fun to play with. Making a world where you have infinite freedom to bend the rules requires attention to details that you could usually cheat or mask in the development of other games.

We also need to be able to pay people for new sounds, music, animations, and all of the things you'd expect from a fully realized game!

After we release CodeSpells to Kickstarter backers in September 2015, we plan to sell copies of this version of CodeSpells. This revenue will be used to make further enhancements to the game. (See our stretch goals below.) We want to keep adding these new features to the game to enable you even more creativity. We would like for CodeSpells to continue to evolve and grow as we get more feedback and people playing it.

Additional Backer Rewards:

Stephen & Sarah, researchers at UC San Diego, knew they wanted to create a video game that taught young students how to code. They knew that coding should be completely immersed in the gameplay, but how? They decided to use a metaphor for coding in the game: magic. They decided students will play the role of a wizard, and they will craft magical spells in Java code.

While developing this first iteration of CodeSpells for their research at UC San Diego, Sarah & Stephen published several academic papers about the educational aspects of CodeSpells:

Word soon got out about this game that attempted to teach young students how to program. CodeSpells was featured in Wired, RockPaperShotgun, and UC San Diego news, after which it was picked up by bloggers across the internet. KPBS even filmed some local San Diego students trying out the game

Amidst all this, Sarah & Stephen teamed up with Lindsey to co-found a company (ThoughtSTEM) to educate local San Diego kids in coding through after-school programs, summer camps, and more. ThoughtSTEM soon expanded across San Diego into other cities in California and is now branching out into other states.

The ThoughtSTEM team always had bigger dreams for CodeSpells though. For this game to educate the most people possible, they knew CodeSpells needed a makeover. Everything from the look & feel, gameplay, and even the coding interface left something to be desired. They had a great concept, but they needed expert Game Designers & Coders to make the dream a reality.

That's where Adrian & Jason came in. Having worked in the game development industry for several years, they brought new vision & inspiration to the CodeSpells project. We're excited to turn this vision into a reality with your help!


Risks and challenges

The risks inherent in a video game development project are self evident, but ThoughtSTEM has a history of following through on successful projects (including LearnToMod, a software that teaches kids to code in Minecraft), and we plan to do the same with CodeSpells. With Backer funding, we have an excellent team with the skills necessary to create a fun & exciting video game. In addition, ThoughtSTEM has been previously funded by the National Science Foundation (NSF), and we plan to apply for NSF grant funding again to further improve CodeSpells as a coding educational product. Therefore, CodeSpells development will not suddenly stop when development for the Kickstarter is completed. We'll be actively seeking NSF funding for our stretch goals which will extend CodeSpells gameplay for our Backers further.

Learn about accountability on Kickstarter


  • CodeSpells gives players two options for writing code in-game: 1) A visual programming language called Blockly, and 2) the popular programming language of JavaScript.

    Two questions we get asked ALL the time are: 1) "Why a visual programming language?" and 2) "Why JavaScript?"

    The first question is easy to answer. It's about accessibility. Not everyone knows (or wants to learn) the syntax of a text-based programming language. We wanted CodeSpells to be a game that's fun and playable whether or not you care about learning to program.

    The second question is impossible to answer. That is, it's impossible to answer in a way that makes everyone happy. Many programmers have a pet language that is self-evidently superior to all other languages. Rest assured, though, that we didn't choose JavaScript because we believe it's "the best language" or even that it's better than [insert your favorite programming language here]. We know that your favorite language (Lisp/Python/Java/Ruby/C) COULD be more accessible/simple/elegant/robust/faster than JavaScript.

    Rather, we picked JavaScript by asking ourselves the following questions:

    What are the top 10 most popular programming languages today? (See
    Which of these languages does our team have the most experience with?
    Which of these languages can we integrate into CodeSpells with ease?

    The clear winner for our team was JavaScript.

    As it turns out, JavaScript also has a several qualities that make our choice a good one.

    1) JavaScript is extremely popular and widely used.
    2) Front-end web programming is a marketable skill. Server-side JavaScript is becoming quite popular too.
    3) There are tons of pre-existing learning resources for JavaScript ( and
    4) A JavaScript coding environment is already installed on any computer with a browser and a text editor. This makes it convenient for players to branch out into traditional JavaScript development after using CodeSpells to learn the syntax, semantics, and coding concepts.

    Learning any one programming language enables students to pick up other languages more easily. Javascript happens to be a marketable skill in today's world that was simplest for us to execute first. There may be room in CodeSpells for more than one programming language & we are considering potentially taking Backer feedback to choose other languages to extend CodeSpells gameplay with.

    Last updated:
  • We can't offer any more than 5 copies of CodeSpells to any one backer.

    If you'd like to be rewarded with multiple copies of CodeSpells, and we still have $10 copies of CodeSpells left, pledge $10*X, and choose the $10 tier. That way we know to give you X copies of the game. For example, if you pledge $40, choose the $10 tier and we'll send you 4 copies of CodeSpells.

    If we are out of $10 copies of CodeSpells, you can pledge $15*X, and choose the $15 tier. We'll send you X copies of the game.

    Last updated:
  • We've been noticing the word "MMO" getting used a lot lately on message boards discussing CodeSpells, and we wanted to clarify our vision, because we think "MMO" (massively multiplayer online) isn't the right term. Our team, is envisioning a multiplayer experience akin to Minecraft - where people can host their own servers for their friends and/or a community of users. While our team may grow in the future & a more "massive" multiplayer experience may be possible, we're currently aiming for a more Minecraft-sized multiplayer experience.

    If we can reach our $100K stretch goal we will fully support playing online with your friends or competitively on other player hosted servers. What we're still working on is figuring out technically how many people will be able to be on a single server at a given time. We want to simulate lots of different aspects of the environment, making the game very dynamic. What we definitely will not be able to do is have several thousand people on a single server playing in the same game instance, which is what's generally associated with an MMO.

    Last updated:


  • You selected
    Pledge $10 or more

    2,000 backers All gone!

    PRIMORDIAL WIZARD: A limited number of $10 copies of CodeSpells are available to the very first Kickstarter backers who support us. Thanks for your help!

    Estimated delivery:
  • You selected
    Pledge $15 or more

    2,014 backers

    WIZARD: Get a copy of CodeSpells! Don't forget: we'll be selling Codespells for $30 after the September 2015 release.

    Estimated delivery:
  • You selected
    Pledge $30 or more

    583 backers

    BETA WIZARD: Get access to the Beta of CodeSpells being released in June 2015. Plus, all previous Backer rewards.

    Estimated delivery:
  • You selected
    Pledge $50 or more

    217 backers

    BETA WIZARD PLUS: You'll receive an Invitation to the first CodeSpells online tournament being held in November 2015! You'll also receive a bonus Spellbook of secret spells the developers created while developing the game. Plus, all previous Backer rewards.

    Estimated delivery:
  • You selected
    Pledge $80 or more

    283 backers Limited (367 left of 650)

    ALPHA WIZARD: A limited number of Backers will get access to the Alpha of CodeSpells starting Christmas 2014. Be the first to provide feedback to the developers! Plus, you get all previous Backer rewards.

    Estimated delivery:
  • You selected
    Pledge $100 or more

    314 backers Limited (336 left of 650)

    ALPHA WIZARD PLUS: Get access to the Alpha of CodeSpells starting Christmas 2014, along with the CodeSpells digital artbook, and a digital copy of the CodeSpells soundtrack. Plus, you get all previous Backer rewards.

    Estimated delivery:
  • You selected
    Pledge $250 or more

    6 backers Limited (94 left of 100)

    ALPHA WIZARD SUPER PLUS: A limited edition 18" x 24" wall poster. These posters will be the first item shipped to backers in October 2014! Plus, all previous Backer rewards.

    Estimated delivery:
    Ships anywhere in the world
  • You selected
    Pledge $500 or more

    4 backers Limited (21 left of 25)

    POTIONS CLASS: Get CodeSpells for every student in a class of your choosing. We'll give a computational thinking course to the class' teacher so that they can teach coding to students using CodeSpells. Each student in the class will receive a license for the game. Plus, you get all previous Backer rewards.

    Estimated delivery:
  • You selected
    Pledge $1,000 or more

    7 backers Limited (8 left of 15)

    WIZARDING SCHOOL: Get CodeSpells for an entire school of your choosing. We'll give a computational thinking course to three teachers at the school so that they can teach students how to code using CodeSpells. The school will have a school-wide license for the game. Plus, you get all Backer rewards up to ALPHA WIZARD PLUS.

    Estimated delivery:
  • You selected
    Pledge $2,000 or more

    2 backers Limited (3 left of 5)

    THE SORCERER'S APPRENTICE: Coding Internship for a student of your choosing. Weekly online Skype mentorship for the intern, or weekly face-to-face meetings if in they reside in the Austin area. Plus, you get all Backer rewards up to ALPHA WIZARD PLUS.

    Estimated delivery:
  • You selected
    Pledge $5,000 or more

    1 backer Limited (4 left of 5)

    THE HEAD WIZARD: Get CodeSpells for an entire school district of your choosing. We'll give a computational thinking course to a teacher at each school so they can teach students how to code using CodeSpells. Each school will have a school-wide license for the game. Plus, you get all Backer rewards up to ALPHA WIZARD PLUS.

    Estimated delivery:

Funding period

- (32 days)