Throw away your Xbox

The future of games

is written in JS

 

@OpherV

 

TEQNation 2023

May 23

Don't

 

Throw away

your xbox

 

Can we do better?

Web Games are amazing!


I'm Opher

Senior Developer

Hi!

Playing video games for way longer

Programming for 23+ years

Playing guitar for 20+ years

I DId all of this because I was 

 

LAZY

@opherv

"Some day I'll make my own game."

- YOU,

 

Random person in the audience

Make Web
GAMES

*

TODAY!

The web wasn't made for

GAMES

...but neither was it made for

  • email

  • social networks

  • video

  • banking

  • CAT VIDEOS

  • RICKROLLING

  • CHATGPT ABUSE and more!

Title Text

ESPORTS

GAMES ARE

BIG

What are web games?

 

1998:

  • New medium for self expression
  • Bypass established publishing process
  • Expose your work to millions
  • Neatly packaged tech

The golden age of flash games

2007: iPhone 

RIP FLASH

2005  -  Canvas

2010  -  Web Workers

2011  -  WebGL

2012  -  Web Audio

2013  -  Gamepad API

2023  -  WebGPU

web games:

 

PLAYABLE IN THE BROWSER

IMPLEMENTED WITH STANDARDISED WEB TECH

Novel InteractiVITY

Why web games:

Google Racer

Tech

Canvas

Paper.JS

Web Audio API

Google Cloud Platform

Websockets

Rapid

PROTOTYPING

Why web games:

Summer Afternoon / Vicente Lucendo

Slow Roads / Anslo

EASIER TO MAKE

ACCESSIBLE

Why web games:

  • Semantic DOM
  • Alternative input methods
  • Assistive tech

The web Supports A11y:

If you follow a11y best practices, by default you're on your way to make your game accessible

It has "web"

In the name

Why web games:

JS runtime

TAB SPACE

Browser

OS

HARDWARE

Js is not

the obvious choice

  • SCRIPTING LANGUAGE uncompiled

  • Single Threaded

  • No direct MEMOry Access

  • NO HW/OS accesS

  • Browser implementation dependent

they run #!@$^

everywhere

Why web games?

Released 1989 for the Apple II

The Modern BROWSER is X271 more powerful and capabale than the APPLE II

Prince.JS / Ultrabolido & Oliver Klemenz

Ninja vs Evilcorp / Rémi Vansteelandt

Q13J / Dominic Szablewski

HEXGL / Thibaut Despoulain

PERFORMANCE

Web Workers

Networking

Sockets / WebRTC / ~WebTransport

RENDERING

Canvas / WebGL / WebGPU

PERSISTENCY

Web Storage API / IndexedDB

Input

Gamepad API

Offline

Service Workers

"You can use a lot of different technologies to create something that doesn't really have a lot of value"

- Shigeru Miyamoto,

  producer, "1080° Snowboarding"

What's a game?

"A game is a series of interesting choices"

- Sid Meier

  Designer, Floyd of the Jungle

Input

Game Loop

OUtput

(Keyboard, mouse, gamepad, motion)

(Video / Audio)

Renderers

Rendering Engines

HTML + CSS

Candy Box 2/ Andrei Kvapil

Pure CSS Stack / Bence Szabo

The Mine / Jamie Coulter

Lighthouse / Ben Evans

2D Rendering Engines

3D Rendering Engines

THREEJS

ThREE-js-FIBER

THRELTE

Framework Bindings

Input

Game Loop

OUtput

(Video / Audio)

Game Engine

Game EnGINes

WEB Game Engines

Phaser demo: Evolb / Opher Vishnia

Vampire Survivors / Luca Galante

WEB Game Engines

Issue #1

Technology

  • Performance
  • Rendering
  • Networking

Are these web games? 🤔

 

Now what?

I made a web game!

Issue #2 Distribution

but...

Can I make money with my game?

option 1:

Ads

option 2:

Donations

option 3:

Micropayments

Where TO

START?

webgamedev.com

webgamedev.com

"You might not think that programmers are artists, but programming is an extremely creative profession"

- John Romero , programmer

   HOW TO WEIGH AN ELEPHANT

START WITH 2D

NOT 3d

 

MY TIP:

Web Games are amazing!

GO MAKE THEM

Thanks!

@OpherV

 

The future of games is written in JS

By Opher Vishnia

The future of games is written in JS

  • 202