Gaming and the web is a hugely popular activity. One sees games all over the place and there are ample opportunities to play them, both free and paid. In this article, we look at gaming and the various programming tools involved, including HMTL5, html-color-codes.info and others.
Here's what you can expect for the gaming platform, according to Mozilla.
Not only that, there are multiple platforms one can use. Here are a couple of listings of the various tools available.
Gaming Best Practices
When designing a game, here are some best practices to observe:
- Use a framework. If you use a framework like ImpactJS, this is good for most of the game development. A framework like EaseJS is mostly for the graphics side. Which platform you use depends on your comfort level and while that might seem obvious, each platform will have its own style of programming so you will need to take that into consideration.
- Be aware of the touch screen sizes on various devices. These can vary a great deal between device size, screen resolution and aspect ratio. To deal with the issue, it would be wise to create multiple resolution options within your code. Another, important aspect are the buttons. These need to be big enough to be touched easily and to have enough space between them so you don't accidentally trigger other buttons because they are too close.
- Make sure to save a player's progress on a regular basis. Make it automatic to do so and when a player returns to a game, allow them to resume playing where they left off, or with a web page they've closed.
- Use a Profiler. This comes into play because the challenge is to maintain high frame rates as you add features to a game. The up side is browsers are faster than their earlier counterparts and games running at 60 fps are a reality. For simple games, this shouldn't be an issue, but if you're developing high-end games, the performance might not be as good as you'd like. To resolve the problem, you would make use of profilers in the browser. You can find a more complete explanation in this article.
- Be Aware of Performance Killers. When running a game, keep your open windows to a minimum AND optimize your system. As an example, running YouTube videos while playing a game will slow it down. Another issue is if you have software running in the background. Programs can use up precious resources, quickly. If there are too many running, these can slow game performance to a crawl. Another issue is using a browser which cannot keep pace with the rate of play in a game.
- Incorporate Social Features: This means easy access to Twitter or Facebook, so users can easily post their scores to share with other players.
- Design your game to make people interact with each other, exchange gifts, and even make friends with others. Part of a game's success is the social element.
Internet Speed to Play Online Games
These requirements vary from game to game, but one thing to be aware if is that games are resource intensive and requirements are all over the map. In general, going with a faster Internet plan, at least 20 Mbps or higher. At minimum, 12 Mbps and in terms of upload, a minimum of 1 Mbps. The thing you want to avoid is lag and if a 1 Mbps upload isn't fast enough, you will need to upgrade your hosting plan
As you can imagine, there are many options for hardware Many games use between 1 - 4 cores, so a quad-core processor with a high-clock speed is a good choice. Here are some specifications: Core i5 4690 @ 3.5GHz, 16GB RAM, Samsung 850 EVO Series SSD (120GB to 1TB), 1920 x 1080 @ 60Hz (or lower) with a GeForce GTX 960 2GB. Here is an extensive list of options.
Game Development Resources
- Making Your Website Fun with Games
- The Complete Guide to Building html5 Games with Canvas & SVG
- html5 Gaming: How to Animate Sprites in Canvas With EaselJS
- The Ultimate List of html5 eLearning Authoring Tools (2017 Update)
- The Best Gaming Desktops of 2017
- The Best Gaming Laptops of 2017
- Gaming PC Hardware Recommendations – Spring 2015
- Introduction to Core html5 2D Game Programming
About the Author
Nathan Segal has been working as a freelance writer for 18 years. In that time he has published more than 1,000 articles and has written 9 books. You can learn more about him at http://NathanSegal.org.