MOODUL 15 · TASE 5 — SPETSIALIST

🚀 Mängu Publitseerimine ja Turundus

itch.io, Steam, Electron/Tauri, turundus, monetiseerimine, portfoolio — vii oma mäng maailma!

⏱️ ~8-10 tundi 📝 7 harjutust 🟣 Spetsialist

🎮 Samm 1 — itch.io Avaldamine

💡 Miks alustada itch.io-ga?

Tasuta, lihtne, indie-sõbralik. Toetab HTML5 mänge otse brauseris. Ideaalne esimene platvorm!

itch.io samm-sammult
# 1. LOO KONTO: https://itch.io/register

# 2. LOO PROJEKT: Dashboard → Create new project
#    - Title: Sinu mängu nimi
#    - Project URL: sinu-mang
#    - Kind of project: HTML
#    - Pricing: Free / Donation / Paid
#    - Uploads: .zip fail (index.html peab olema juurkaustas!)

# 3. BUILD MÄNG (Vite):
npm run build  # → dist/ kausta

# 4. ZIP mängu failid:
#    Windowsis: Vali kõik dist/ sees → Parem klikk → "Send to → Compressed"
#    Terminalis:
cd dist
Compress-Archive -Path * -DestinationPath ../game.zip

# 5. LAADI ÜLES itch.io-sse:
#    - Upload: game.zip
#    - ✅ "This file will be played in the browser"
#    - Viewport: 800x600 (või sinu mängu suurus)
#    - ✅ SharedArrayBuffer support (kui kasutad Workers)
#    - ✅ Fullscreen button

# 6. LEHT:
#    - Cover image: 630x500px (mängu screenshot)
#    - Screenshots: min 3 ekraanipilti
#    - Description: Markdown kirjeldus
#    - Tags: html5, javascript, 2d, platformer jne
butler — itch.io CLI tööriist
# Butler automatiseerib itch.io üleslaadimist
# Install: https://itch.io/docs/butler/installing.html

# Login:
butler login

# Push (automaatne versioonihaldus!):
butler push dist/ kaspar/minu-mang:html5

# Versioonid:
butler status kaspar/minu-mang

# CI/CD-s (GitHub Actions):
# - name: Deploy to itch.io
#   uses: manleydev/butler-publish-itchio-action@master
#   env:
#     BUTLER_CREDENTIALS: ${{ secrets.BUTLER_CREDENTIALS }}
#     CHANNEL: html5
#     ITCH_GAME: kaspar/minu-mang
#     PACKAGE: dist/

🖥️ Samm 2 — Desktop Mäng (Electron / Tauri)

Tauri — Kerge desktop wrapper
# Tauri on ~10x väiksem kui Electron (kasutab OS WebView'd)
# Install:
npm create tauri-app@latest my-game -- --template vanilla-ts

# Struktuur:
# my-game/
#   src/          ← Sinu mängu kood (HTML/JS/CSS)
#   src-tauri/    ← Rust backend
#     tauri.conf.json  ← Seaded

# tauri.conf.json olulised seaded:
{
  "productName": "Minu Mäng",
  "version": "1.0.0",
  "build": {
    "distDir": "../dist"
  },
  "app": {
    "windows": [{
      "title": "Minu Mäng",
      "width": 1280,
      "height": 720,
      "resizable": true,
      "fullscreen": false
    }]
  },
  "bundle": {
    "active": true,
    "targets": ["msi", "nsis", "deb", "appimage"],
    "icon": ["icons/icon.png"]
  }
}

# Dev:
npm run tauri dev

# Build (Windows .msi + .exe):
npm run tauri build
# → src-tauri/target/release/bundle/

🏪 Samm 3 — Steam Avaldamine

Steam samm-sammult
# STEAM AVALDAMISE TEEKOND:

# 1. ETTEVALMISTUS
#    - Steami arendajakonto: $100 ühekordne tasu
#    - https://partner.steamgames.com/
#    - Loo "App" → sead nime, kirjelduse, pildi

# 2. NÕUDED
#    - Store page: min 5 screenshots (1920x1080)
#    - Capsule art: 460x215, 231x87, 616x353
#    - Trailer: 1080p video (Steam valmistab ka thumbnail)
#    - Kirjeldus: lühike + pikk + süsteeminõuded
#    - GDPR/CCPA nõuetele vastav privaatsuspoliitika

# 3. STEAMWORKS SDK (valikuline HTML5 mängudel)
#    - Saavutused (Achievements)
#    - Leaderboard'id
#    - Cloud saves
#    - Workshop (modid)

# 4. EHITAMINE STEAMI JAOKS
#    Tauri/Electron → .exe → Steam depot upload
#    Steamworks CLI: steamcmd
#    
#    Depotid:
#    - Windows: game_win_x64 → .exe
#    - Mac: game_mac → .app  
#    - Linux: game_linux → AppImage

# 5. HIND JA LAUNCH
#    - Hinnasoovitus sõltub sisuklähalt
#    - Coming Soon leht → wishlists koguvad
#    - Launch: vali reede-kolmapäev (mitte nädalavahetust!)
#    - Esimene nädal on kriitiline (Steam algoritm)

📢 Samm 4 — Turundus ja Kogukond

Turundusplaan
# INDIE MÄNGU TURUNDUSPLAAN

# ===== ENNE LAUNCHI (3-6 kuud) =====
# 1. Landing page / Coming Soon
#    - Emaili kogumisleht (Mailchimp / ConvertKit)
#    - "Wishlist on Steam" nupp
#
# 2. Sotsiaalmeedia
#    - Twitter/X: #screenshotsaturday, #indiedev, #gamedev
#    - Reddit: r/indiegaming, r/gamedev, r/playmygame
#    - TikTok: lühikesed devlog videod
#    - YouTube: devlog sari
#
# 3. Demo / Playtesting
#    - Steam Next Fest (demo festival)
#    - itch.io demo
#    - Beta-testijate grupp (Discord)
#
# 4. Presskit
#    - https://dopresskit.com/
#    - Screenshots, logo, trailer, kirjeldus, kontakt
#    - Saada emailiteavitus YouTuberitele ja ajakirjanikele

# ===== LAUNCH DAY =====
# - Postita kõigile platvormidele
# - Reddit: r/gaming, r/indiegaming
# - Hacker News: Show HN
# - Product Hunt
# - Discord serverid
# - Saada press release

# ===== PÄRAST LAUNCHI =====
# - Vasta kõigile kommentaaridele / arvustustele
# - Bugifixid esimesel nädalal!
# - Content update'id iga 2-4 nädalat
# - Sooduspakkumised Steam müügipäevadel

💼 Samm 5 — Arendaja Portfoolio

portfolio.md — Portfoolio struktuur
# MÄNGUARENDAJA PORTFOOLIO:

# 1. GITHUB PROFIIL (README.md)
#    - Bio: "Game developer | TypeScript | Three.js"
#    - Pinned repos: parimad mänguprojektid
#    - Contribution graph (roheline!)
#    - README.md koos piltide ja linkidega

# 2. PORTFOOLIO VEEBILEHT
#    - Hero: nimi + amet + lühikirjeldus
#    - Projektid: iga mäng eraldi kaardil
#      → Screenshot/GIF
#      → Tehnoloogiad (badges)
#      → Live demo link
#      → GitHub link
#      → Mida õppisin
#    - Oskused: progress bar'id (JS, TS, Three.js, Phaser)
#    - Kontakt: email, LinkedIn, itch.io, GitHub

# 3. IGA PROJEKTI JUURES:
#    - README.md koos GIF-iga (gameplay)
#    - Live demo (GitHub Pages)
#    - Tehniline kirjeldus: arhitektuur, mustrid, väljakutsed
#    - Koodikvaliteet: testid, CI/CD, linting

# 4. LINKEDIN
#    - "Game Developer" headline
#    - Projektid Featured sektsionis
#    - Oskused: JavaScript, TypeScript, WebGL, Game Development

# NÄPUNÄITEID:
# ✅ Kvaliteet > kvantiteet (3 head mängu > 20 poolikut)
# ✅ GIF/video > screenshot (näita gameplay'd!)
# ✅ Kirjelda probleeme ja lahendusi
# ✅ Näita koodi, mitte ainult tulemust
# ✅ Hoia GitHub aktiivne (commit'id)

📝 Harjutused

  • itch.io avaldamine

    Avalda oma mäng itch.io-s: build → zip → upload. Lisa cover image, 3 screenshoti, kirjeldus. Jaga linki ja kogu tagasiside.

  • butler CI/CD

    Seadista GitHub Actions: iga push main → automaatne build → butler push itch.io-sse. Lisa versiooninumber package.json-ist.

  • Desktop build Tauriga

    Paki oma HTML5 mäng Tauri-ga: Windows .exe + installer. Lisa ikoon, splash screen, window settings. Testi eri resolutsioonidel.

  • Landing page

    Loo mängu turundusleht: hero video/GIF, features, screenshots, "Wishlist/Download" CTA, press kit link. Responsive. Deploy GitHub Pages.

  • Presskit

    Loo presskit (dopresskit.com): mäng, arendaja, faktileht, allalaaditavad pildid, trailer link, kontaktandmed. Saada 5 YouTuberile.

  • Arendaja portfoolio

    Loo isiklik portfoolio: min 3 mänguprojekti GIF-idega. Oskused, lühielulugu, lingid. Deploy ja lisa GitHub profiili README-sse.

  • Game Jam osalemine

    Osale Game Jam-il (Ludum Dare, GMTK, itch.io jam): 48-72h jooksul valmis mäng. Postita: devlog + postmortem (mis läks hästi/halvasti).

← Moodul 14b 🏠 Tagasi Avalehele