Cooking with Linux - The Virtual Streets of $HOME
Note:
If you find yourself missing the lightcycles, check out Marcel's “Battles Inside the Computer” on our Web site at /article/6638.
BZFlag is a multiplayer 3-D tank battle game you can play with others across the Internet (Tim Riker is the current maintainer of BZFlag, but the original author is Chris Schoeneman). The name, BZFlag, actually stands for Battle Zone capture Flag. It is, in essence, a capture-the-flag game. To get in on the action, look no further than your distribution's CDs for starters. BZFlag's popularity means it is often included with distros. Should you want to run the latest and greatest version, however, visit the BZFlag site (see Resources). You'll find binaries, source and even packages for other operating systems. That way, you can get everyone in on the action.
Unless you specify otherwise, BZFlag starts in full-screen mode, but you can override this by starting the program with the -window option. The game begins at the Join Game screen. Before finding a server (the first option on the screen), you may want to change your Callsign (or nickname). We'll look at some of these other options after we've selected a server. For now, move your cursor to the Find Server label and press Enter.
You won't have any trouble finding people to play with—you'll get a list of dozens of servers currently hosting games (Figure 2). Scroll down the list of names to find one that suits you. Your criteria might be the number of players, how busy a server is or how many teams are involved. When you look at the server list, make sure you pay attention to the type of game being hosted on the server. Some have team-oriented capture-the-flag play, and others host free-style action. You also may be limited by the number of shots at your disposal, so aim carefully.

Figure 2. At any given time, dozens of BZFlag servers are running worldwide and hundreds of people are playing.
When you have made your choice, press Enter, and you'll find yourself back at the Join screen (Figure 3) with a server selected. You could simply start the game, but you may want to fine-tune a few more things before you start up your tank. Cursor down to the Team label, and press your left or right arrow keys. By default, you will be assigned to a team automatically, but you can change that here if you prefer. One of the roles you can play instead of joining a team is that of Observer. This is not a bad idea if you are new to the game, because it lets you watch how others are handling themselves.
The Join screen also lets you enter the name of a server manually, rather than search for it. This is useful for hosting private games on a local LAN. Speaking of hosting games, I'm sure you noticed the Start Server option at the bottom of that list. Let's go ahead and join the game. Scroll back up to Connect and press Enter.
I hope you are ready, mes amis, because the action starts immediately, and some of these players are, well, seasoned. Move your tank using your mouse, and fire by clicking with the left-mouse button. These tanks are highly maneuverable and even can jump in some games (you do this by pressing the Tab key). To learn all the keystrokes, by the way, press Esc at any time, and select Help. During play, BZFlag provides an extensive heads-up display with stats on players, kills, personal scores, team scores and more (Figure 4). Keep an eye on the map to your lower left, as it can alert you to enemy tanks. If you can drive, fire and type at the same time, press N to send a chat message to the group, or M to send one only to your teammates. If you see the boss coming, press F12 to exit the game in a hurry. Just a little joke, mes amis. I would never suggest that you play this at work.

Figure 4. The action is fast and tense, with tanks blowing up everywhere you turn. Be careful not to be one of them.
The hour is getting late, mes amis, but I don't want to leave you with the impression that all the virtual worlds that may exist in our systems are built entirely on destruction and mayhem. You can, in fact, build an entire civilization, including a city, its farms, factories, markets and every other trapping of modern (or premodern) civilization. Download Lincity (or check your distribution CDs) and start building. The idea of this highly addictive and time-consuming game is for you to build a city, and in the process, feed and clothe your people, and create jobs so you can build and sustain an economy. Invest in renewable energy as you strive to build a civic Utopia (Figure 5).

Figure 5. Lincity is a computerized city simulation that makes you wonder why creating a Utopia is so darn difficult.
As things get better and better, you can save your game and get back to creating this ideal world of yours. Okay, you're right, it's not as easy at it sounds. The clock is ticking, and the months go by fast. Without careful attention, your world may wither away in its own poisons. I should warn you that starting from scratch may be a bit of a confidence destroyer. Why not start when things are good? When the game begins, click the Menu button in the upper left. The main window then provides you with some choices, including one to Load a saved game. The game comes with two: one is called Good Times and the other (you guessed it), Bad Times. I recommend Good Times to get your virtual flippers wet. When you get so good at this that you feel you can fix anything, go for the Bad Times, and see if you can pull your city back from being $25 million in debt.
The clock, mes amis, it is telling us that closing time is upon us. With all these sounds of artillery and explosions coming from your workstations, it seems obvious that we will have to stay open just a little longer. François will happily refill your glasses one final time before we say, “Au revoir”. The games may be all virtual, but the wine is real. It's a good thing too, but I'd hate to have it spilled every time someone fired a shot. On that note, please raise your glasses, mes amis, and let us all drink to one another's health. A votre santé Bon appétit!
Resources for this article: /article/8882.
Marcel Gagné is an award-winning writer living in Mississauga, Ontario. He is the author of the all-new Moving to Ubuntu Linux, his fifth book from Addison-Wesley. He also makes regular television appearances as Call for Help's Linux guy. Marcel is also a pilot, a past Top-40 disc jockey, writes science fiction and fantasy, and folds a mean Origami T-Rex. He can be reached via e-mail at mggagne@salmar.com. You can discover lots of other things (including great Wine links) from his Web site at www.marcelgagne.com.
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.
Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.
Sponsored by ActiveState
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?
| Non-Linux FOSS: libnotify, OS X Style | Jun 18, 2013 |
| Containers—Not Virtual Machines—Are the Future Cloud | Jun 17, 2013 |
| Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer | Jun 12, 2013 |
| Weechat, Irssi's Little Brother | Jun 11, 2013 |
| One Tail Just Isn't Enough | Jun 07, 2013 |
| Introduction to MapReduce with Hadoop on Linux | Jun 05, 2013 |
- Containers—Not Virtual Machines—Are the Future Cloud
- Non-Linux FOSS: libnotify, OS X Style
- Linux Systems Administrator
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Validate an E-Mail Address with PHP, the Right Way
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Introduction to MapReduce with Hadoop on Linux
- RSS Feeds
- user namespaces
1 hour 11 min ago - yea
1 hour 37 min ago - One advantage with VMs
4 hours 6 min ago - about info
4 hours 39 min ago - info
4 hours 40 min ago - info
4 hours 41 min ago - info
4 hours 43 min ago - info
4 hours 44 min ago - abut info
4 hours 46 min ago - info
4 hours 47 min ago





Comments
/dev/sdaX
You see, what you may not know is that your system keeps track of the contents of those virtual consoles (1-6) in a special device file, /dev/sdaX
Just a little slip but /dev/sdaX refers to a scsi drive not the virtual console /dev/vcs1 mentioned previously in the article.
/dev/sdaX
Hello Luke,
Well, Sacré Bleu! I knew what I was typing before hand but another device file snuck in there accidentally. You are absolutely correct to point it out. That should have been /dev/vcsX for the virtual console device. And I thought it was such a cool trick, too . . . [ insert appropriate smiley here ].
Thanks again, and take care out there.
-- Marcel
Marcel (Writer and Free Thinker at Large) Gagné
http://www.marcelgagne.com AND www.cookingwithlinux.com