Если ты имеешь ввиду 2D игры вроде марио, flappybird или какой-то залипалки, типа как мини приложения вконтакте, то хватит чистого JS. Если что-то покруче, то есть 3D, то юзай библиотеку Three js. Но если есть знания в С# или Java, то на них тоже пишут).
Пару слов о том, что выше писали про HTML и CSS. Я хз чего там они в них пишут, но максимум, что мне нужно от HTML - минимальный шаблон и тег canvas внутри body. А в CSS обнулить отступы и явно задать ширину и высоту 100% у документа)). Смотри рисунок.
О самом canvas. Можно его тег не добавлять в body, а создать через createElement в самом скрипте, узнать ширину и высоту экрана и присвоить эти значения канвасу. Затем через appendChild добавить в body. Мне нравится, когда всё делает скрипт.
Ну а PHP и MySQL тебе понадобятся, если ты будешь использовать какую-то авторизацию или хранение каких-то данных (типа сохранений) игры для каждого пользователя. Вместо такой связки можно использовать Node.js - Типа PHP и JS в одном флаконе. Но Node.js больше подходит для создания мультиплеера.