So You Want to be a Multiplayer Web Games Developer?

In my first article “So You want to be a Games Developer?” (http://ezinearticles.com/?So-You-Want-to-be-a-Games-Developer&id=70920), I discussed various games genres, including Web/Email games. This is one of the easiest ways to start developing games- you aren’t restricted to one language or platform and the costs are pretty low. In this article, I’ll look at the various technologies that you can use, and give you an idea of what its possible to do and how you get started.

Web games fall into various sub categories- email games, browser games, and multi player games. Email games are by far the simplest- technically they aren’t web games and you don’t even need a computer to moderate them, just to send and receive. Browser games can be implemented in Flash, JavaScript (dhtml), Java and even ActiveX/COM. I’d guess that most single player games are implemented in Flash but I’ll save that for a future article. To start with, though I’ll take you through what is involved in developing Multiplayer Web Games.

Before you start, go and take a look again at the Multi Player Online Games Directory- http://www.mpogd.com. Its an excellent resource and gives you an idea of the type of games out there ranging from small free games to the massive games like Sony’s Everquest.

The big multiplayer games aren’t web based but they do work across the Internet. They tend to have their own custom written clients, with encrypted protocols, fast 3d graphics and large teams of customer support staff. I recommend http://terranova.blogs.com/ as an excellent blog on this- you’ll find articles and quotes from luminaries such as Richard Bartle who produced the first Mud (its short for Multi User Dungeon), and Professor Edward Castranova; an expert on virtual world economics. Muds also tend to use their own clients, usually based on Telnet. Although these are not web games, I recommend you widen your experience as much as possible. Muds in particular although not the most popular genre still do exist and provide a good model for interactive games.

Breaking into computer game design and programming is as easy as becoming a fulltime commercial game programmer- i.e. its not! But there is nothing to stop you developing your own web game, and MPOGD will be happy I’m sure to list it in their directory. If its Open Source you can set it up and find other developers on Soiurceforge.net.

There are two categories of web game: real-time and turn based, and this dictates the type of technology that drives it. Real-time is more complicated- the server has to support multiple connections at the same time and care has to be taken to synchronise actions between clients. If you attack someone and they’ve already moved but your client isn’t keeping up then your game is not going to be popular.

A crossover between multiplayer web games and custom client games is possible with Macromedia’s Flash. It is likely that multiplayer action games based on Flash will become more prolific- there are quite a few around now. Sadly sourceforge has many such ideas that have not got past the planning stage. Also what does exist may not be open source as creating such games takes a lot of work. Googling for flash, multiplayer game returns a couple of million results but add open source and it drops to a few hundred thousand.

Unless you are an excellent Flash developer and can write good server code as well, I suggest you stick to turn based games. The good news is that web based is an area where open source development is prolific. A search on sourceforge.net for ‘game servers’ returned several projects that are mature or beta. Fancy developing an RPG in Java? Use Arianne. Or if C# is more your style, have a look at Ovorp. The most popular languages are C++ and Java (for the server) but C# projects have now started appearing and you’ll find C, Perl, and Python as well. But don’t limit your searches to sourceforge- there are many projects elsewhere as well. An excellent resource for finding games is dmoz.org-= the Open directory Project. Have a look at http://dmoz.org/Computers/Open_Source/Software/Games/ and http://dmoz.org/Games/Video_Games/Roleplaying/Massive_Multiplayer_Online/Independent_Developers/

E.g. Black nova Traders, which is located on sourceforge at http://sourceforge.net/projects/blacknova and has its own url http://www.blacknova.net/ BlackNova Traders is a web-based, multi-player space exploration game inspired by the popular BBS game of TradeWars. It is classified as a turn based mud. It is coded using PHP, SQL, and Javascript. BNT is officially at Beta but is a pretty complete game that is just not finished. In fact it may never be as long as developers keep tweaking it!

If you are going to develop a web game you need a server. Yes you could do it online but thats slow. Best to setup your own server.

A good starting point with the most popular technology is the Open Source L.A.M.P. family. That is Linux, Apache, MySql and Php. If you are replacing your windows pc with a new pc, wipe the hard disk on the old pc and install a Linux distribution and hook the two up with a crossover network cable. What was a relatively sluggish Windows PC is now a good development server running Apache, Php and Mysql. Linux Guis are pretty friendly these days but if you are unsure of administering Linux, download webmin from webmin.com and install it. It makes all the Linux administration stuff like configuring Samba (if you want to share drives), adding virtual sites to Apache etc very easy. Or easier still is the W.A.M.P route with everything installed on your Windows box. For pros and cons of this have a look here. http://ezinearticles.com/?Windows-vs-Linux–Hosting&id=21972

One word of caution. You might consider exposing your web server to the internet down your dsl connection. Nothing wrong with that though it limits you to having two or three users at once. If you have a static IP its pretty easy to map a domain to it. It can also be done with a dynamic Ip connection as well. Search for dynamic dns to find out how to make that work. Be sure in either case that you have enough firewall protection. An unprotected Windows pc will likely be taken over in under 15 minutes. I strongly recommend that you buy a firewall router or invest in a professional software firewall at the least.

In future articles I’ll discuss the nuts and bolts of game software development and start developing an open source game.

PHP: Best Scripting Languages for Excellent Development

Before we proceed to the main topic, added in the PHP development, let’s discuss what exactly is PHP? In general, words, PHP is one of the finest scripting languages that designed for creating an eye-catching website for web development. This scripting language is embedded into an HTML source document and further a Web server interprets it with a PHP processor module for developing web pages. Additionally, this scripting language includes a command-line interface capability that used in standalone graphical applications for free of cost. Previously, PHP was contender of Active Server Pages (ASP) server-side script engine of Microsoft and other languages, but as time passes it is greatly accepted by the millions of web servers and web sites. Joomla, WordPress, Drupal and MediaWiki are some the well-known software uses PHP.

Framework in PHP:
Framework in PHP plays an important role to support the development of Web applications, Web services and Websites. Mostly, developers are using such framework to avoid unnecessary coding. It also helpful for developing safe and steady application and promoting RAD that helps to minimize the amount of monotonous coding. Framework is used by developers for reducing the amount of development. In addition to, it also helps to write less code as a result development can be speedily done.

Types of PHP Framework:

  • CakePHP
  • Symfony
  • Qcodo
  • Zend
  • Akelos
  • AjaxAC
  • Kohana
  • php.MVC
  • Stratos and many more

Essential Components & Tutorials of PHP

Combining the neat functionality of PHP using JavaScript, developers can easily create exceptional outcomes in the development. Here, you will find some important methods that help you to take subsequently move in your development projects. Below you will find some of the necessary and well-popular components and tutorials that help to develop easy to configure website.

  • PHP components: Auto suggest: With auto suggest, developers can easily implement a search form by using MySQL and PHP.
  • Create Password Strength Meter: Looking the popularity of web services, webmasters like add ‘Password strength meters’ in their website, which looks like Google using when creating a new account.
  • Animated Ajax Record Deletion Using MooTools: Using MooTools JavaScript functionality, developers can easily create ‘delete’ option. If webmaster doesn’t like an item, s/he can delete it from the list. While deleting an item becomes red and disappears from the list.
  • Charts: pChart is one type of PHP class oriented framework that designed to develop aliased charts. For creating charts, data can be collected from CSV files, SQL queries or provided manually by developers. This component is greatly accepted by the developers due to candy graphics and aliased algorithm.

Apart from above given, remaining the most important components and tutorials are create first simple CMS, Develop a Login System for a Simple Website, Directory trees with PHP and jquery, Easy Pagination with PHP and Mootools and many more.

Security Concern:
Whether you are writing any application or web page on the actual platform and operating system, security must concern on the primary basis. While writing any PHP applications, it is advisable to consider certain points like insert validate input, confirm form posts, guard your session data, file system, database, Cross-Site Request Forgeries, Cross-Site Scripting vulnerabilities, etc.

All Grown Up – Why Your Small Business Needs A Web Solution, Not A Website

Raise your hand if you have a website for your small business. Now keep it raised if it is generating a significant volume of prospects or sales. Not holding your hand up anymore? You are not alone.

Just a few years ago, small companies flocked to the web in droves, rushing to post their first website, anxious at the prospect of low-cost instant exposure. The web was going to be the great equalizer, putting small business on par with the big brand names, dangling the promise of visitors flocking to a company’s site to purchase its wares or partake in its services. Sound familiar? Unfortunately, for most small businesses and organizations, the promise fell short and company sales did not skyrocket from an unending march of site visitors.

So, what happened? For one, the web quickly became ultra competitive. Millions of sites sprang up in every business category making it virtually impossible to be found in the search engines. What little bit of traffic the businesses may have enjoyed when the site was first launched began to dry up. Also, as the web evolved to become a more interactive user experience, it became more technologically complex and many small business websites did not keep up. The other part of the problem was in the approach; not understanding that just putting together a website, even a pretty one, and finding some faceless company offering cheap web hosting services is not likely to make you the next great success story. A large hurdle that many small business owners and managers face is the tendency to compartmentalize the web into a few oversimplified tasks: grab a cheap domain name, find a budget small business website design and development person, look for some impossibly low-priced website hosting, and then expect their website to magically appear on page one of Google. Unfortunately, this ends up being a waste of time and money.

A Solutions-Based Approach with Professional Guidance

To create an effective web presence requires a solutions-based approach with clear ideas about what you want to accomplish and who the audience is you are targeting. The right elements have to be present; a well orchestrated website design with cohesive branding, solid technical acumen, clearly defined objectives for the organization, reliable small business web hosting services and some method of marketing your site and tracking the results. The web is constantly evolving and search engine competition is fierce. Being successful on the web requires consistently evaluating the site’s effectiveness based on your objectives, understanding the latest technologies and trends, having a dynamic website marketing plan and constantly fine tuning.

While you don’t have to spend a fortune to create real value on the web, you should also be realistic. Understand that being successful will require an investment that you should plan for and a clear vision of how your website fits into the goals and objectives of the organization. If you don’t have the experience and technical resources in-house, working with a professional web solutions provider, preferably one specializing in small business web design and development can provide great benefits. A good starting point in the process is to have an understanding of the core elements that are part of a successful website strategy and how they fit together.

The Elements of a Web Solution

1) Domain names – Choosing the right domain name is an important branding decision which impacts how your organization is perceived and also how it is found in the search engines. Purchasing from a cheap bulk registrar or choosing can spell trouble.

2) Website Design & Development Services – Find a provider that specializes in small business web design and development. An organization that offers a solutions-based approach can assist your company in doing thorough needs analysis and in designing all of the elements to work well together. First impressions count!

3) E-mail Management – E-mail is a key communication tool for your business. The right system will help you maximize communications within the company, on the road and with your customers.

4) Social Media – Social media such as blogging, Podcasting and other web 2.0 tools can greatly enhance customer communications. Your web services company should be able to help you evaluate how social media tools can best benefit your web presence and business objects.

5) Small Business Website Hosting Services – All web hosting is NOT created equal. There are many nuances and technical consideration involved with hosting solutions. It is best to stay away from budget hosting companies. Look for a managed hosting provider who can help you select the right plan for your web solution goals, get your website up and running and support you as it grows and evolves.

6) Website Maintenance – How will your site be maintained and updated? Having both small business web development and managed web site hosting as a package is immensely helpful for maximizing web server resources, identifying problems and keeping the site maintained and updated.

7) E-Commerce – Will you be actually selling on your site or using it for lead generation or information dissemination? If you are selling products, who will create and maintain your product database. How will transactions be handled? What about web server requirements? Working with a professional can help ensure you make the right choices for your e-commerce site.

8) Business Process Interaction (database development, customer relationship management, integration with your business management systems) – A website needs to be more than just an ad on the Internet to be effective as a business tool. There are many ways the web can be used to improve your business processes and integrate with your existing systems such as accounting or contact management.

9) Website Marketing – How will people find you on the web? Will you optimize your site for organic search or employ paid marketing techniques or a combination? What directories should you list your site in? Search engine marketing has evolved to be a complex specialty. It’s critical that you understand the tools available for driving traffic to your site and if needed, know how to evaluate and engage a web marketing specialist.

10) Website Analytics and Conversion – Having a great site isn’t enough if your visitors aren’t doing what you intended; buying something, contacting your company or using your site for an information source. Does your site have usability issues? What kind of reporting will you use to track site visitors? What do you need to know and do to convert your visitors into action-takers?

It’s a Process and a Work in Progress

While there is certainly a lot to think about, creating the best possible website solution for your business doesn’t have to be overwhelming. Your website can and should be a work in progress, evolving as your business grows. Because most small businesses do not have an internal IT staff to handle the technical elements of web development and planning, working with a web solutions provider that specializes in small business website hosting services and small business web design and development is a good start. Such an organization can help you identify your goals, manage the technical aspects of your site and guide you in your marketing efforts. They can also help you work within your budget to develop a plan that combines all the elements into a cohesive whole for creating and maintaining a successful web presence.

Conclusion

The web has grown up to be a terrific marketing medium for small businesses and organizations. Done right, it can be the most cost effective and powerful marketing and communication tool in your arsenal. The promise is still there. However, to truly leverage the power of the web, it is important to take a good, hard look at the website you currently have or the one you are thinking about creating. The elements of a successful web presence: small business web hosting, website design and development and web marketing are only the framework for a well thought-out web solution designed to reach your customers and truly benefit your business.