Welcome to this humble tutorial. The ultimate goal of these chapters will be to create a fully working arcade game emulation coded entirely in Blitzmax. It’s not written as a BlitzBasic → BlitzMax tutorial. My aim is to give anyone the opportunity to get a good start in learning the fantastic BlitzMax. This is the start of a fairly ambitious series of tutorials on how to write 2D games using BlitzMax. The first part is a Getting Started part where I’ll be introducing.

Author: Nagore Tetaur
Country: Sao Tome and Principe
Language: English (Spanish)
Genre: Finance
Published (Last): 19 January 2013
Pages: 124
PDF File Size: 18.99 Mb
ePub File Size: 16.88 Mb
ISBN: 167-4-63773-144-9
Downloads: 30370
Price: Free* [*Free Regsitration Required]
Uploader: Samudal

The updated main file ComeGetMe.

Top down shooter tutorial with BlitzMax

For this tutorial we will use the fixed rate logic plus tweening approach – mainly just because I want to give it a try: What is your GameDev Story? I don’t really like the C-syntax, so I’ll be better quiet.

Introducing tuhorial Enemy Posted May 08 Part 4: I’ll buy it if you do: Now let’s move on to the next class. He has an extremely useful website covering all aspects of emulating Space Invaders: So what does that code do? Original post tutoriaal Skizi I’ve downloaded Blitz3D and picked up a book. And I haven’t seen C yet, I’ll google it right now Er, Python’s got some of the most extensive collection of good documentation and guides around.


They keep their values for one second and then they are overwritten by the new values of updateCount and renderCount.

That means we need to implement the Update and Render methods later on in our type. Then we meet something new: Have fun with it: So instead of having a different value each call in the update routine as in the delta timing approach we now have a different value in the drawing routines.

A new revised Game Framework.

Learning 2D Game Programming With BlitzMax

Home Activity Home Forum Resources. The second class could be called TGameElement and contains old and new TCoordinate s and directions and will have all methods that are shared between all different TGameElement s. Bitzmax, and before I forget: Ok, create an empty directory for your project on your hard disk and fire up your preferred BlitzMax IDE.

The method returns a float value, the delta and the method takes no parameters. I hope you keep your motivation since this seems to be exactly what BlitzMax needs.

Top down shooter tutorial with BlitzMax

We store the last angle in oldAngle and calculate the new angle by using the TCoordinate method getAngle between the turret’s position and the mouse pointer position. Any of these will do. You should go through them and see what they said.


Already the first refactoring! It will be properly written over the next few weeks or months. And that was about it. A new empty TPlayer instance is created and it’s fields pos and oldPos inherited from TGameElement are initialized with the parameter position.

BlitzMax IDE(BASIC) Vs. C , which is better for beginners? – Forum –

So I just had to refactor the class. And if you have two or more objects of type TXYZ all of those objects have their unique values inside the fields, just like you can have a red car with three doors and a blue car with five doors.

Let’s finish the first part of the tutorial by introducing the TPlayer type, updating the main class Bltizmax and have the first rotating turret on screen. We then fill the three fields with the parameter values and return the properly initialized instance by returning coord. If the image is loaded the global playerImg is “pointing” to an image and thus no longer Null.

Part 7 – Adding Explosion.