First: There are cryptos with small transaction fees and the ability to store data in the chain itself easily, such as Bitcoin Cash. You can store some user activity of the game on the blockchain, the technical possibility is there - you CAN, but this doesn't means you should HAVE to. It makes no sense to spam the blockchain with random game variables. It makes sense to use it as a payment system in the game, to control item purchaches and such.
Second: html games making far more sense than these wasd flyby techdemo ,,games'' made in unity and in other similar joke environments. Modern browsers can load and handle the assets easily, making a game engine should be straightforward and easy even for beginners.
Optimization: I dont think there will be any optimization issues, starting from 2012 to 2018 i have measured multiple emulator cores in browser vs C code (the code was the same, just the syntax was changed to compile it under both environment). Html was only about 50-60% slower, so nothing deadly slow. Instead of optimization, you might get compatibility issues instead, like webgl will maybe not work, or will be slow on certain systems. If you want to focus on optimization, just ensure not to use too much polygons and textures, be logical and think on people who have like 32 kbyte/sec download on a cellphone, and trying to run your game like that. This is where the optimization begins, with the sober mind and realistic design, and not with localstorages and not random pre-alpha-technologies.