Main > Free Download Search >

Free space shooter tutorial software for linux

space shooter tutorial

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 1383
Open Space Shooter prototype

Open Space Shooter prototype


Open Space Shooter is a simple 2D space shooter like asteorids. more>>
Open Space Shooter is a simple 2D space shooter like asteorids.

Just a small spaceship, some Asteorids and some enemies. You got lasers and rockets and try to fight the enemy ships, not more.

It is simple but funny.

All is just a prototyp of a game I want to write later. But I have no time at the moment...

<<less
Download (1.2MB)
Added: 2006-06-25 License: Other/Proprietary License Price:
1223 downloads
Apache::PAR::tutorial 0.30

Apache::PAR::tutorial 0.30


Apache::PAR::tutorial is a Perl module with information on getting Apache::PAR up and running. more>>
Apache::PAR::tutorial is a Perl module with information on getting Apache::PAR up and running.

Apache::PAR is a framework for including Perl ARchive files in a mod_perl (1.x or 2.x) environment. It allows an author to package up a web application, including configuration, static files, Perl modules, and Registry and PerlRun scripts to include in a single file. This archive can then be moved to other locations on the same system or distributed and loaded with a single set of configuration options in the Apache configuration.

These modules are based on PAR.pm by Autrijus Tang and Archive::Zip by Ned Konz as well as the mod_perl modules. They extend the concept of PAR files to mod_perl, similar to how WAR archives work for Java. An archive (which is really a zip file), contains one or more elements which can be served to clients making requests to an Apache web server. Scripts, modules, and static content should then be able to be served from within the .par archive without modifications.

For the package developer

For the package developer, Apache::PAR allows for easy package management, which frees the author from the task of creating a full Perl package. Apache::PAR allows the package developer to set the required Apache configuration directly in a package which greatly simplifies the install process for the end user and gives the the developer the ability to assign URLs which remain the same on all systems that the package is installed on. It is possible to decompress the contents of the PAR file during startup, which allows the use of code which relies on outside content (templating systems, etc)

For the package user

Once Apache::PAR is installed, it can be configured in an Apache configuration file with as little as two lines. Once setup, to add a new .par package to the system a user only has to place the package in the directory specified in the Apache configuration and restart Apache. All other configuration needs are provided by the module itself.

<<less
Download (0.025MB)
Added: 2006-10-12 License: Perl Artistic License Price:
1107 downloads
Sub::Exporter::Tutorial 0.970

Sub::Exporter::Tutorial 0.970


Sub::Exporter::Tutorial is a friendly guide to exporting with Sub::Exporter. more>>
Sub::Exporter::Tutorial is a friendly guide to exporting with Sub::Exporter.

Whats an Exporter?

When you use a module, first it is required, then its import method is called. The Perl documentation tells us that the following two lines are equivalent:

use Module LIST;

BEGIN { require Module; Module->import(LIST); }

The import method is the modules exporter.

The Basics of Sub::Exporter

Sub::Exporter builds a custom exporter which can then be installed into your module. It builds this method based on configuration passed to its setup_exporter method.

A very basic use case might look like this:

package Addition;
use Sub::Exporter;
Sub::Exporter::setup_exporter({ exports => [ qw(plus) ]});

sub plus { my ($x, $y) = @_; return $x + $y; }

This would mean that when someone used your Addition module, they could have its plus routine imported into their package:

use Addition qw(plus);

my $z = plus(2, 2); # this works, because now plus is in the main package

That syntax to set up the exporter, above, is a little verbose, so for the simple case of just naming some exports, you can write this:

use Sub::Exporter -setup => { exports => [ qw(plus) ] };
...which is the same as the original example -- except that now the exporter is built and installed at compile time. Well, that and you typed less.

Using Export Groups

You can specify whole groups of things that should be exportable together. These are called groups. Exporter calls these tags. To specify groups, you just pass a groups key in your exporter configuration:

package Food;
use Sub::Exporter -setup => {
exports => [ qw(apple banana beef fluff lox rabbit) ],
groups => {
fauna => [ qw(beef lox rabbit) ],
flora => [ qw(apple banana) ],
}
};

Now, to import all that delicious foreign meat, your consumer needs only to write:

use Food qw(:fauna);
use Food qw(-fauna);

Either one of the above is acceptable. A colon is more traditional, but barewords with a leading colon cant be enquoted by a fat arrow. Well see why that matters later on.

Groups can contain other groups. If you include a group name (with the leading dash or colon) in a group definition, it will be expanded recursively when the exporter is called. The exporter will not recurse into the same group twice while expanding groups.

There are two special groups: all and default. The all group is defined by default, and contains all exportable subs. You can redefine it, if you want to export only a subset when all exports are requested. The default group is the set of routines to export when nothing specific is requested. By default, there is no default group.

<<less
Download (0.034MB)
Added: 2006-10-16 License: Perl Artistic License Price:
1104 downloads
PAR::Tutorial 0.941

PAR::Tutorial 0.941


PAR::Tutorial is a cross-platform Packaging and Deployment with PAR. more>>
PAR::Tutorial is a cross-platform Packaging and Deployment with PAR.

SYNOPSIS

This is a tutorial on PAR, first appeared at the 7th Perl Conference. The HTML version of this tutorial is available online as http://aut.dyndns.org/par-tutorial/.

On Deploying Perl Applications

% sshnuke.pl 10.2.2.2 -rootpw="Z1ON0101"
Perl v5.6.1 required--this is only v5.6.0, stopped at sshnuke.pl line 1.
BEGIN failed--compilation aborted at sshnuke.pl line 1.

Q: "Help! I cant run your program!"
A1: Install Perl & perl -MCPAN -einstall(...)
How do we know which modules are needed?
New versions of CPAN modules may break sshnuke.pl
A2: Install Perl & tar zxf my_perllib.tgz
Possibly overwriting existing modules; not cross-platform at all
A3: Use the executable generated by perlcc sshnuke.pl
Impossible to debug; perlcc usually does not work anyway

<<less
Download (0.19MB)
Added: 2006-07-20 License: Perl Artistic License Price:
1194 downloads
Imager::Tutorial 0.54

Imager::Tutorial 0.54


Imager::Tutorial is an introduction to Imager. more>>
Imager::Tutorial is an introduction to Imager.

Before you start

If you have the necessary knowledge, install the image format libraries you want Imager image file support for, and Imager itself, otherwise arrange to have it done.
You will also want some sort of image viewer tool, whether an image editor like Photoshop or the GIMP, or a web browser.

Hello Boxes! - A Simple Start

As with any perl program its useful to start with a #! line, and to enable strict mode:

#!/usr/bin/perl -w
# you might to use warnings; instead of the -w above
use strict;

These lines will be omitted in further examples.

As with any module, you need to load it:

use Imager;

Now create a image to draw on:

my $image = Imager->new(xsize => 100, ysize => 100);

and draw a couple of filled rectangles on it:

$image->box(xmin => 0, ymin => 0, xmax => 99, ymax => 99,
filled => 1, color => blue);
$image->box(xmin => 20, ymin => 20, xmax => 79, ymax => 79,
filled => 1, color => green);

Since the first box fills the whole image, it can be simplified to:

$image->box(filled => 1, color => blue);

and save it to a file:

$image->write(file=>tutorial1.ppm)
or die Cannot save tutorial1.ppm: , $image->errstr;

So our completed program is:

use Imager;

my $image = Imager->new(xsize => 100, ysize => 100);

$image->box(filled => 1, color => blue);
$image->box(xmin => 20, ymin => 20, xmax => 79, ymax => 79,
filled => 1, color => green);

$image->write(file=>tutorial1.ppm)
or die Cannot save tutorial1.ppm: , $image->errstr;

<<less
Download (0.83MB)
Added: 2006-10-27 License: Perl Artistic License Price:
1094 downloads
KDE Simple Programming Tutorial 1.2

KDE Simple Programming Tutorial 1.2


KDE Simple Programming Tutorial is a tutorial for developing a KDE application. more>>
KDE Simple Programming Tutorial is a tutorial for developing a KDE application.

With the only requirement of a little C++ knowledge, and using the latest KDE snapshots, the reader will learn how to build his/her first KDE application from a simple "Hello world" button to a Web browser with a DCOP interface that communicates with a bookmark application running in a separate process.

Theres also a spanish and a romanian version of the documentation.
<<less
Download (MB)
Added: 2006-10-04 License: GPL (GNU General Public License) Price:
1121 downloads
Alpha Shooter 0.0.3

Alpha Shooter 0.0.3


Alpha Shooter is a 3D OpenGL first-person shooter game with a sci-fi setting. more>>
Alpha Shooter is a 3D OpenGL first-person shooter game with a sci-fi setting.
Alpha Shooter was born as a project for the Computer Graphics course at the University of Bologna.
The main objective was to develop a very simple 3D game using the OpenGL, GLU and GLUT libraries only (and some creativity). Emphasis was not placed on the game itself, rather on learning how to use the libraries to produce a 3D environment and interact with it; it was thus required to build a suitable scenery using polygonal meshes and quadric surfaces, appropriate textures and materials, lights, and effects.
According to my personal taste I chose a sci-fi setting, trying to reproduce an environment that could remind players of a warehouse or loading area located inside a space ship or space station, like those often seen in movies or commercial videogames (of course I was aware of the limits of my implementation). I focused development on a single room, with an outside view, for ease of development (it was my very first attempt at graphics programming) and because it was enough to make use of a wide set of elements of OpenGL, consistently with the project requirements.
The game I wrote was inspired to the First Person Shooter genre, in which the player can move around in a 3D environment, looking around freely through the eyes of the played character, interacting (in very limited ways) with some of the objects present, shooting crates and barrels and some holographic targets.
I had a lot of fun creating that simple game, so after I got my Masters Degree I decided it would be a waste to just leave it hidden in some obscure directory at home; it is now here, released as Free Software, so that I can keep working on it and improving it, with help from whoever will be interested, in the hope that it will be useful as an example on how to get started in computer graphics and games development.
Enhancements:
- Binary packages were created for all supported operating systems, including a Windows installer, an i386 Debian Linux package, and a PowerPC Mac OS X DMG disk image.
- Additionally, the improved persistent mouse movement mode uses a dynamic mouse cursor that shows direction and speed of rotation, making that movement mode more intuitive and useful.
- Several minor bugs have also been fixed.
<<less
Download (0.77MB)
Added: 2007-08-09 License: GPL v3 Price:
813 downloads
IPTables-tutorial 1.2.2

IPTables-tutorial 1.2.2


IPTables-tutorials aim is to explain iptables in a complete and simple way. more>>
IPTables-tutorials aim is to explain iptables in a complete and simple way. The iptables-tutorial is currently rather stable, and contains information on all the currently available matches and targets (in kernel), as well as a couple of complete example scripts and explanations. It contains a complete section on iptables syntax, as well as other interesting commands such as iptables-save and iptables-restore.

The tutorial has recently been under heavy scrutiny and updating, as can be seen in this, the latest version of the tutorial. It is now also available in bookform from Lulu.com. If you feel like contributing or donating to the author of this tutorial, please do buy the book! Thank you!

If you need help, you are better off by asking the netfilter mailing list which you can reach at netfilter at lists.netfilter.org. For more information on this, visit the netfilter mailinglist page. You may also contact the linuxsecurity mailing list at security-discuss AT linuxsecurity dotcom. Both are fairly large, and should be able to help you much much better than I can.

<<less
Download (9.0MB)
Added: 2006-11-22 License: (FDL) GNU Free Documentation License Price:
669 downloads
Games::ScottAdams::Tutorial 0.04

Games::ScottAdams::Tutorial 0.04


Games::ScottAdams::Tutorial is a Perl module with the Scott Adams Adventure Compiler Tutorial. more>>
Games::ScottAdams::Tutorial is a Perl module with the Scott Adams Adventure Compiler Tutorial.

INTRODUCTION

This document walks you through the process of creating a small but complete and playable game with six rooms, seven items including a single treasure, and a couple of puzzles.

It makes no attempt to be complete: you need the reference manual for that. But by the time youve worked your way through this tutorial you should be familiar with rooms, items, actions and occurrences, and youll be ready to start writing your own games.

<<less
Download (0.048MB)
Added: 2007-01-04 License: Perl Artistic License Price:
1028 downloads
Prima::tutorial 1.20

Prima::tutorial 1.20


Prima::tutorial is an introductory tutorial. more>>
Prima::tutorial is an introductory tutorial.

Programming graphic interfaces is often considered somewhat boring, and not without a cause. It is a small pride in knowing that your buttons and scrollbars work exactly as millions of others buttons and scrollbars do, so whichever GUI toolkit is chosen, it is usually regarded as a tool of small importance, and the less obtrusive, the better.

Given that, and trying to live up to the famous Perl making easy things easy and hard things possible mantra, this manual page is an introductory tutorial meant to show how to write easy things easy. The hard things are explained in the other Prima manual pages ( see Prima ).

<<less
Download (1.4MB)
Added: 2006-08-24 License: Perl Artistic License Price:
1162 downloads
Test::LectroTest::Tutorial 0.3500

Test::LectroTest::Tutorial 0.3500


Test::LectroTest::Tutorial is a Perl module that contains documentation on how to use LectroTest to test your software. more>>
Test::LectroTest::Tutorial is a Perl module that contains documentation on how to use LectroTest to test your software.

SYNOPSIS

LectroTest is an automated, specification-based testing system. To use it, declare properties that specify the expected behavior of your software. Then invoke LectroTest to test whether those properties hold.

LectroTest does this by running repeated random trials against your software. If LectroTest finds that a property doesnt hold, it emits the counterexample that "broke" your software. You can then plug the counterexample into your software to debug the problem. (Its also a good idea to add the counterexample to your list of regression tests.)

Think of your softwares behavior as a haystack that youre searching for needles. Each error is a needle. You want to find the needles and remove of them. LectroTest will search the haystack for you -- its nice that way -- but first you must tell it about the shape of the haystack and how to recognize a needle when it sees one.

The Haystack

The shape of the haystack is defined by a set of "generator bindings," in which variables are bound to the output of value generators:

x = 0;

The above asserts for each point in the haystack that the output of the function the_thing_we_are_testing must be non-negative.

Put them together to make a Property

The generator bindings and needle recognizer are combined to make a property:

Property {
##[ x = 0;
}, name => "the_thing_we_are_testing(...) is non-negative";

Youll note that we also added a meaningful name. Although not strictly required, its an excellent practice that makes life easier. (Youll also note that we placed the generator bindings inside of the magic delimiters ##[ ]##. This tells Perl that our bindings are bindings and not regular Perl code.)

We can read the above property like so: "For all integers x and all characters c in the range A through Z, we assert that the_thing_we_are_testing is non-negative."

Testing whether your Properties hold

After you define properties for your software, just add them to a small Perl program that uses the Test::LectroTest module:

# MyProperties.l.t

use MyModule; # provides the_thing_we_are_testing
use Test::LectroTest;

Property {
##[ x = 0;
}, name => "the_thing_we_are_testing(...) is non-negative";

Then you can test your properties simply by running the program:

$ perl MyProperties.l.t

If your properties check out, youll see something like this:

1..1
ok 1 - the_thing_we_are_testing(...) is non-negative (1000 attempts)

If something goes wrong, however, LectroTest will tell you where it happened:

1..1
not ok 1 - the_thing_we_are_testing(...) is non-negative
falsified in 23 attempts
# Counterexample:
# $x = 4
# $c = "R"

What this says is that at the point (x=4, c="R") in the haystack, there is a needle (i.e., your property doesnt hold). With this information, you can examine your code to determine the cause of the error.

<<less
Download (0.053MB)
Added: 2007-01-09 License: Perl Artistic License Price:
1018 downloads
Chatbot::Alpha::Tutorial 2.04

Chatbot::Alpha::Tutorial 2.04


Chatbot::Alpha::Tutorial is a beginners guide to Chatbot::Alpha 2.x. more>>
Chatbot::Alpha::Tutorial is a beginners guide to Chatbot::Alpha 2.x.

INTRODUCTION

What is Chatbot::Alpha?

Chatbot::Alpha is a Perl module for reading and processing Alpha code. Alpha code is a command-driven response language, primarily used for chatterbots.

The language format is quite simple: its a line-by-line language. The first character is the command, followed by the commands data. The simplest of all Alpha replies is the standard one-way question and answer:

+ hello bot
- Hello human.

Alpha Commands Overview

Here are all the commands supported by Chatbot::Alpha:
+ (Plus)

The + symbol is the basis of all your replies. Its the trigger--that is, what the user says to activate that reply. In most cases this command comes first in a reply, followed by supporting commands that tell the bot what to do next.

- (Minus)

The - command has many purposes. In the example above, a single +TRIGGER and a single -REPLY will give you a one-way question-answer case. If you use multiple -REPLYs under one +TRIGGER, then they will become random responses. On *CONDITIONS, the -REPLYs will be called when no condition returns true. On &HOLDERS, the -REPLY is the first thing the bot sends. And the list goes on... well get into the many uses for -REPLY later.

% (Percent)

The % command is for "that" emulation. If youve worked with AIML youll know what that refers to. Its there to help take the A.D.D. syndrome out of your bots. You can make specific replies based on what the bot last said. Like if the bot asks "Do you have any pets?" and the user says "yes", the bot can ask "What kind of pets?" instead of a generic reply to "yes". Youll learn all about this in the tutorial later.

^ (Carat)

The ^ command is to continue from your last -REPLY. For example, if your reply is very long and you want to break it down a few lines in the reply file (as not to have a horizontal scrollbar and be hard to read), this is the command to use. The ^CONTINUE command will adds its data to the last -REPLY you used under the +TRIGGER.

@ (At)

The @ command is for a redirection. Alpha triggers are "dead-on", meaning "hello|hey" is literally "hello|hey", not "hello OR hey". So when you want one to point to the other, use the @REDIRECT command.

* (Star)

The * is for conditionals. Youll learn about these later as well.

& (Amperstand)

This is for simple conversation holders. Emphasis is on the word "simple." They dont always work, so youd use %THAT if it was really important. The &HOLDER command is slowly becoming deprecated.

# (Pound)

The # command is for executing Perl codes within your reply set. Sometimes Alpha just cant handle the complex tasks you have in mind, and this can fill in all the blanks (assuming youre fluent with Perl anyway).

/ (Slash)

This is comment data, not processed within Chatbot::Alpha.
LessThan and GreaterThan

The > and < are labels. Right now theyre used only for topics.

<<less
Download (0.030MB)
Added: 2007-04-02 License: Perl Artistic License Price:
938 downloads
Space Racer 0.2.4

Space Racer 0.2.4


Space Racer project is a OpenGL Car Game in a galactic environment. more>>
Space Racer project is a OpenGL Car Game in a galactic environment.

It aims to be a clone of the well known Stunt Car Racer developed by Geff Crammond, author of Grand Prix I and II.

To play a 3dfx is recommanded. But TNT and Matrox Cards should now work.

If you have a 3dfx, you can take advantage of OpenGL 1.1 in adding this line in config.h:

#define SP_OPENGL_1_1

<<less
Download (0.96MB)
Added: 2006-11-15 License: GPL (GNU General Public License) Price:
1079 downloads
XML::Smart::Tutorial 1.6.9

XML::Smart::Tutorial 1.6.9


XML::Smart::Tutorial is a Perl module with tutorials and examples for XML::Smart. more>>
XML::Smart::Tutorial is a Perl module with tutorials and examples for XML::Smart.

SYNOPSIS

This document is a tutorial for XML::Smart and shows some examples of usual things.

<<less
Download (0.049MB)
Added: 2006-09-12 License: GPL (GNU General Public License) Price:
1144 downloads
Array::Each::Tutorial 0.02

Array::Each::Tutorial 0.02


Array::Each::Tutorial - POD giving various examples how to use Array::Each. more>>
Array::Each::Tutorial - POD giving various examples how to use Array::Each.

SYNOPSIS

man Array::Each
man Array::Each::Tutorial

or

perldoc Array::Each
perldoc Array::Each::Tutorial

Overview

This tutorial contains only POD, so dont do this:

use Array::Each::Tutorial; # dont do this

Rather, simply read the POD (as you are doing). But first, please read the docs for Array::Each, because the whole scoop is there.

This tutorial is intended to augment those docs with examples showing situations where you might want to use Array::Each instead of other techniques.

EXAMPLES

Parallel Arrays vs. Using a Hash

First of all, use a hash. Its almost always the best solution if you want to associate a "key" with a "value". And there are modules available that will let you do wonderful things with hashes, like keeping the keys sorted or keeping them in the order they were added.

So given a hash, you might at some point want to do this:

my %h = ( a=>1, b=>2, c=>3, d=>4, e=>5 );
while( my( $k, $v ) = each %h ) {
# ... do something with $k and $v ...
}

On the other hand, if parallel arrays better implement your algorithm, then you may find you want to do something like this:

my @k = qw( a b c d e );
my @v = qw( 1 2 3 4 5 );
for my $i ( 0 .. $#k ) {
my( $k, $v ) = ( $k[$i], $v[$i] );
# ... do something with $k and $v (and maybe $i) ...
}

Using Array::Each, you could do the same thing this way:

use Array::Each;
my @k = qw( a b c d e );
my @v = qw( 1 2 3 4 5 );
my $obj = Array::Each->new( @k, @v );
while( my( $k, $v, $i ) = $obj->each ) {
# ... do something with $k and $v (and maybe $i) ...
}

If you dont need $i at all, you can leave it out, e.g.,

while( my( $k, $v ) = $obj->each ) {
# ... do something with $k and $v ...
}

If you have more than two parallel arrays, include them all in the call to new() and add as many "capture" variables as you need, e.g.,

my @k = qw( a b c d e );
my @v = qw( 1 2 3 4 5 );
my @p = qw( - + ~ = : );
my $obj = Array::Each->new( @k, @v, @p );
while( my( $k, $v, $p, $i ) = $obj->each ) {
# ... do something with $k, $v, and $p (and maybe $i) ...
}

<<less
Download (0.020MB)
Added: 2007-07-14 License: Perl Artistic License Price:
832 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5