Starvard University · School of Technology

Your First Game

Most people who want to make a game stall on the blank page. This course skips the blank page. You start from one of three finished little games, play it, change it one piece at a time with an AI helper, and publish the result as your own. The starters are free to copy, change, and publish, even commercially, with no credit needed: that is the deal. The same three starters also live on the Your First Game playground at E2, where you can play and copy them in one click, and most people finish their first game in a weekend.

Starvard University
Starvard University
Your First Game · Starvard University
Your First Game course cover: a golden coin and a smiling player inside the Coin Dash arena

The whole course in brief

  1. You start from a finished game, not a blank page. Three starters, all playable in Lesson 1, all free to copy and publish. Pick the one that makes you smile.
  2. One change at a time is the whole craft. AI is wonderful at small, clear asks and shaky at giant ones. Change one thing, play it, then change the next thing.
  3. The CONFIG block is your control panel. Names, colors, speeds, timers, and coin counts sit at the top of every starter file, written to be read by humans.
  4. Pro art and sound are free. Kenney, Quaternius, and OpenGameArt hold shelves of game-ready art and audio that anyone may use.
  5. Publishing is one file. Save your game as index.html, put it on your free E2 site, and share the link. A game with a link is a real game.

Six short lessons. You need a browser and any AI chat you like: Claude, ChatGPT, or Grok will all do the job.

Lessons

1. Play and pick your starter

Before any building, play. Each starter below runs right here on this page, and each one is a complete game: it starts, it keeps score, it ends. Your only job in this lesson is to spend a couple of minutes inside each world and notice which one you keep coming back to. That pull is information. It is the game you will still care about at step forty.

🌍 Little World · 3D · Walk aroundOpen full screenDownload the file
Little World. A tiny 3D world with trees, houses, and hidden gold coins. Click the game, walk with WASD or the arrow keys, look with the mouse, hold Shift to run, and press Space to jump. Collect every coin. This is the starter for people who see a place in their head: a village, a forest, an island of their own.
🪙 Coin Dash · 2D · Quick and friendlyOpen full screenDownload the file
Coin Dash. The friendliest first game there is. Run around the arena with the arrow keys or WASD and grab as many coins as you can before the clock runs out. Simple rules, instant fun, and the easiest code of the three to change.
🚀 Star Guard · 2D · Space shooterOpen full screenDownload the file
Star Guard. Fly your ship, blast the falling asteroids, and protect the sky. Arrow keys or A and D to fly, Space to shoot, and do not let the rocks touch you. This is the starter for people who like action and a score that begs for one more try.

How to choose, if you are torn:

There is no wrong pick. The skills transfer completely: whatever you learn remixing one starter works on the other two, and on every browser game you will ever meet.

Try this first. Play each starter for two honest minutes before you choose. The right question is not which game is best. It is which game you are still thinking about in the shower.

2. Make it yours: names, colors, and characters

Now take your starter home. Use the Download the file button above its window in Lesson 1, and save the file somewhere you can find it. That single file is the whole game: open it in your browser and it plays, exactly like it did here. Games made of one file are easy to keep, easy to send, and easy for an AI to help you change.

Open the file in any text editor and scroll to the top of the script. You will find a block marked CONFIG. This is the control panel the starter's author left for you. Here is Coin Dash's, word for word:

const CONFIG = { playerColor: "#F8D65B", // your character playerSpeed: 3.4, // how fast you move coinColor: "#ffc93c", // the coins gameSeconds: 60, // how long a round lasts arenaColor: "#123c69" // the floor };

Every line is a knob. Change playerColor and your character changes color. Raise playerSpeed and the game gets frantic. Set gameSeconds to 30 and every round turns urgent. Save the file, refresh the browser, and your change is live. Little World's CONFIG is even friendlier: it starts with the world's name, so your very first edit can be renaming the world after yourself:

const CONFIG = { worldName: "Little World", skyColor: 0x87bfe8, // the sky groundColor: 0x58a34c, // the grass treeColor: 0x2e7d32, // the tree tops houseColors: [0xff8a65, 0x4fc3f7, 0xba68c8, 0xffd54f, 0x81c784], walkSpeed: 10, // how fast you walk runSpeed: 18, // how fast you run (Shift) coinCount: 12, // coins to collect worldSize: 90 // how big the ground is };

Make three changes by hand first, so the knobs feel real. Then bring in your AI. The method that works, every time:

  1. Paste the whole file into Claude, ChatGPT, or Grok, and say what you want in one sentence.
  2. Ask for one change only. "Make the player a little red car." "Turn the asteroids into pirate ships." "Change space to underwater, the ship to a submarine, and the rocks to jellyfish" is three changes wearing a trenchcoat: split it up.
  3. Save what it gives back as your file (keep the old version too, with a name like mygame-v1.html), open it, and play.
  4. Repeat. One change, one playtest. That loop is the entire craft of game making, compressed.

Character changes are the same trick. The smiley in Coin Dash, the ship in Star Guard, and the trees in Little World are all drawn by a few lines of code your AI can redraw: "Draw my player as a tiny dragon." "Make the trees pine trees with snow." "Add a friendly robot who follows me around." Ask, play, adjust.

The secret. "Add a jump button" works. "Make it like Mario" does not. Small, clear asks are not a beginner limitation; they are how professionals steer AI too. One change at a time, and your game never breaks in ways you cannot undo.

3. Add a goal: scores, timers, and winning

A toy becomes a game when it has a goal, a little pressure, and an ending. Your starters already carry simple versions of all three (collect the coins, beat the clock, survive the rocks), and this lesson sharpens them into goals that feel like yours.

Scores. A score is a promise that doing well is noticed. Tune what things are worth. Coin Dash's author left the door wide open: ask your AI, "Make gold coins worth 5 and silver coins worth 1," and suddenly every round has decisions in it. In Star Guard, points per rock change what risks feel worth taking. In Little World, the goal is a count: the coinCount knob in its CONFIG decides whether the hunt is a stroll or an expedition.

Timers and lives. Pressure comes from a clock or a heartbeat. gameSeconds in Coin Dash's CONFIG is the whole dial: 60 is friendly, 30 is spicy, 15 is a party game. Star Guard tracks lives instead, and its control panel tunes the ship itself:

const CONFIG = { shipColor: "#F8D65B", // your ship laserColor: "#5df2ff", // your shots rockColor: "#9aa7b8", // the asteroids shipSpeed: 4.2, // how fast you fly rockSpeed: 1.6, // how fast rocks fall (raise for hard mode) startLives: 3 };

Winning, and what happens after. Decide what victory looks like and say it plainly: a banner with your name on it, a fanfare, a harder next round. Two prompts that earn their keep in almost any remix: "Give my game a title screen with my name on it" and "Make the game a little harder every 30 seconds." Endings matter because they are what players screenshot and share.

Playtest honestly. After every goal change, play a full round yourself. Too easy is boring, too hard is a door closing, and the fun lives in a narrow band between them. Adjust one number, play again. Designers call this tuning, and it is most of the job.

4. Add art and sound from the free shelves

Sooner or later you will want your dragon to look like a dragon, and your coin to chime. You do not need to draw or compose any of it. Three shelves hold more free, game-ready art and sound than any one person could use in a lifetime:

Getting a shelf item into a one-file game is a two-step dance. Download the image or sound file, keep it in the same folder as your game file, and ask your AI to wire it in as one change: "Use the file dragon.png as my player instead of the circle. Keep everything else the same." If you later publish, publish the folder's files together (Lesson 5), and the art travels with the game. Sound works the same way: one short file, one clear ask ("Play coin.mp3 when I grab a coin").

A word on manners. Most of these shelves legally require nothing, not even credit. Credit the artists anyway, in a corner of your title screen or a line under the game. It costs nothing, it is true, and it is how the shelves stay full.

Free does not mean ownerless. Before you use any asset, read its license line. Kenney and Quaternius make it effortless (use for anything). On OpenGameArt, the note is part of the download. Thirty seconds of reading is the whole price.

5. Publish your game for the world

A game on your own hard drive is a diary. Publishing takes five minutes and turns it into a place other people can visit.

  1. Save the final file as index.html. Whatever your AI gave back, that exact name. If your game uses art or sound files from Lesson 4, keep them in the same folder; index.html expects to find them beside it.
  2. Put it on your free E2 site. Every E2 member gets a free website, and your game can live on it. Start at the Your First Game playground at E2 and claim yours, then upload your folder. Any static host works the same way (GitHub Pages and Netlify Drop are the usual free standbys).
  3. Open your link on your phone. If it plays there, it plays everywhere. Check the controls make sense on a small screen; the starters are keyboard-first, so tell phone visitors honestly, or ask your AI for touch buttons as your next remix.
  4. Copy the link. That link is your game, as far as the world is concerned. Guard it like a release date.
Publish the rough one. Every finished, imperfect game teaches you more than a perfect game that never ships, and it can be updated at the same link forever. Version one is not the exam. It is the doorway.

6. Share it, get feedback, and remix again

Publishing is the middle, not the end. Games get good in public, where real players bump into the walls you stopped seeing.

Share it where builders gather. Post your link in the Starvard Discord and in the E2 community, through the Your First Game playground and its Discord and Live Feed. Say what the game is in one line, what you changed from the starter, and what feedback you want most. Specific asks get specific answers.

Give feedback the way you want to receive it. Play two other people's games for every one you post. Say one thing you genuinely loved first, then one bug or wish, kindly and precisely. Communities run on this exchange, and the people who give the best feedback get the best feedback.

Then remix again. Every note you received is a Lesson 2 loop waiting to happen: one change, one playtest, republish at the same link. Add the boss. Add the lake you cannot walk through. Add the title screen with your name on it. The starters were never the destination; they were the running start. When you are ready to go further, Starvard's shelves hold the next steps: the First Game course builds a game from scratch with an AI partner, and Vibe Coding Video Games goes deeper into steering AI builders.

Your game, assigned. This week: pick your starter, make three changes of your own, publish it, and post the link in the Starvard Discord with one line about what you changed. Then play two classmates' games and tell them what you loved. That is a game developer's week, and it is now yours.

Sources

The shelves and libraries behind this course

The starters and this course's method rest on open tools and free shelves that welcome reuse. The three starter games are Starvard's own copies of the E2 Your First Game starters, which are free to copy, change, and publish, even commercially.

Help build Starvard, and get $10

Starvard is a free university being built right now by kind, hard-working people. Do a first small task with us, like checking a course, adding a book to the library, or testing pages on your phone, and get $10 for it.

Get $10: help us build →