PASTE NAVIGATION MENU CODE

Thursday 31 May 2012

Phase 12: Future Work

| | with 0 comments |
The system created is a showcase of the possibilities of HTML5, CSS3, Javascript and jQuery. It is a satisfaction to create a system such as this without the use of browser plug-ins and using only standard technologies. It is also refreshing to see the standards being supported coherently across platforms and browsers.
Nevertheless, there are several improvements which could make this game that much better.

Pokes

The pokes system would allow users to poke each other. This functionality has already been planned for. The DIV tags inside the design are present and the database has relations which are ready to accept pokes. However, the code to actually implement this functionality is not available. This is mostly due to time constraints.

Pokes would be displayed in the user profile

Image Enhancements

As has been pointed out in a previous post, the image upload has some limitations regarding images with the same name. This can be fixed by saving each image with the id of the user as a filename. Some minor changes to the PHP code handling image uploads would have to be implemented to allow any number of images with the same name.

Similarly, a script bug in the image uploading scripts prevents the size checking system from working, meaning a user attempting to upload a very large image will be able to do so, only to then receive a PHP file size error. This could instead be displayed as a pop-up error informing the user of the maximum file size.

Using tools such as ImageMagick (http://www.imagemagick.org/script/index.php) the display picture of a user can be scaled down to fit inside the image box. This reduces loading time and makes pictures look better. The image uploaded would be passed to an ImageMagick script which would carry out the appropriate scaling and optimisations.

Rank

The rank system is not included in the database. Current ranks are calculated by checking the position of the user's score when the scores in the database are sorted in ascending order. This should instead be a separate relation within the database which will allow it to be stored without having to carry out a query with several records. The current system also means that ranks cannot be displayed throughout the application; a problem which would be solved with a 'rank' relationship.

Facebook Integration

The original game design allowed for Facebook integration. When registering an account, the user could opt to instead log-in with Facebook. Hence, the user's display picture and username would automatically be retrieved from the Facebook servers and stored in the game database.

Integration with Facebook could also mean that comments and pokes would be displayed on the user's timeline, further promoting the game with the user's Facebook friends. It would also be easy to add a feature whereby users could invite their Facebook friends to play the game and provide a sense of competition.

Further still, a system of 'achievements' could be created, which are added to the user profile and also advertised on Facebook. This would create a truly social game.

As it is, the game can also be added as a Facebook page, allowing users to play the game from inside Facebook itself.

Push Notifications

Many social applications display badges - notifications of unread/unchecked things to do within the apps. In this game, a user could get badges showing the number of unread comments and unchecked pokes. This could be made similar to notifications on applications on mobile platforms.

Figure - Push Notifications
Mobile support

Since it uses standard technologies, the system also works well on mobile platforms such as iPhone and Android.

Figure - The Ball Game running on iPhone


Figure - The Ball Game running on Android Phone
Despite being compatible, the game is not optimised for mobile devices. For example, simple CSS tags can be added to make the game appear in full screen (i.e. scroll down to below the address bar). Code can also be added to allow users to add the application to their home screen, complete with a high resolution icon.
Conclusion

Many hurdles had to be overcome to complete this game. Using CSS3, PHP, HTML5 and Javascript together with jQuery and jQuery UI is a challenge. Sometimes even the sheer number of files required can be confusing. However, the result is very satisfying - a game built using 100% open standards.

Post a Comment

Please enter your comments here..

0 comments: