Editorial - June 2009

Issue 77 cover

The majority of readers of this newsletter signed up with the desire to make an idea become reality, or at the very least converted their passing interest into ideas once they arrived. There are a few more ingredients to make that idea a success, the first one being the tools to make it happen. There are of course a vast array of those tools, many of which feature in this publication, and those that don't are on the site with all of the details needed to decide which is right for you. For anyone that is looking to make the first step you will be interested in the FPS Creator Bonanza featured this month, an incredible starter bundle at an incredible price.

Another requirement is the knowledge to turn your idea into something playable. The FPSC bonanza includes a full set of DVD tutorials to get you started. If coding games from scratch is your aspiration then DarkGDK may be the tool of choice. For you, we have a review of a comprehensive new book dedicated to learning C++ using DarkGDK.

Finally, the last addition is a small amount of motivation. If the prospect of bringing your idea to fruition still isn't enough, a competition or two tends to get your creativity flowing. The results of the first Community Competition are in and the winners revealed, as well as news on the 3D modeling awards and a new challenge with a very different prize on offer.

Intertwined with the aforementioned features we have the usual offerings including product news and updates, Lee's Tip of the Month, videos and more.

Until next time,

Steve Vink

contents

(1) Competition (2) DarkBASIC Pro (3) FPSC News (4) FPSC Updates (5) TGC Store (6) BOTB (7) 3D Compo (8) Summer Contest (9) GDK.net (10) Review (11) Textures (12) Tip Of The Month (13) SFX Engine OFFER (14) Videos (15) From the Forums (17) PlayBasic (18) Winner (19) Outro

Community Competition Winners

We can finally announce the winners of the first Community Competition. Daniel, Jeku and KeithC have worked through all of the games in order to judge them. The number of entries was magnificent, making the competition fierce and the judging tough. We thank all of you for entering, and also for supporting the entrants. We cannot possibly feature every game entered, but we have Download the Gamesa small review of all of the games that made it to the first round and beyond. You'll also find the collection of prizes each one gathered along the way. You can download all 10 games in one package, and experience them for yourself.

Competition Winner - LabyrinthFirst Place - Labyrinth

by Jeffhuys

Labyrinth is a compelling ball and maze puzzle game with a twist. Using special squares on the map, you can change your rolling ball to stone or paper material types. Use stone to roll large objects out of the way. Paper allows you to race over gaps or shoot upwards using fans, defying gravity each time. The well designed levels are both challenging and thought provoking. Combined with great looking graphics, the game is a pleasure to play.

Entry Award Round 1 Award Round 2 Award First Prize - 4000 Store Points First Prize - $100 Voucher

 

Competition 2nd place - World Championship DartsSecond Place - World Championship Darts

by dvader

World Championship Darts is a classic dart board simulation. You start with 301 points and aim to work down to zero. To finish each set you must hit either a double or the bullseye. With great, simple, clean graphics and a good attention to detail, the game throws a few curves at the player making game play challenging and worthwhile. Throwing the dart at the wire will see it bounce off, and with a drifting hand the player has to constantly compensate when throwing. The A.I. feels like you're playing another imperfect player, without being so dumbed down it's not a challenge. This is a well designed dartboard simulation.

Entry Award Round 1 Award Round 2 Award Second Prize - 2000 Store Points Second Prize - $50 Voucher

 

Competition 3rd place - RetroidsThird Place - Retroids

by Dragon Knight

Retroids is a classic retro remake in the style of Asteroids. This colourful, fast paced game makes for quick and exciting game play. It is exactly what you want from a mini-game, squeezed into your precious lunch break. With a number of power ups, colourful sparks and graphics, the game is both attractive and well made.

Entry Award Round 1 Award Round 2 Award Third Prize - 1000 Store Points Third Prize - $30 Voucher

 

Here are the remaining games that made it into the top ten, in no particular order:

Mechaniser by DiggseyMechaniser

by Diggsey

Mechaniser is a first rate physics-based puzzle game. Using an innovative interface and game play design, the aim is to roll the bowling ball into the safe zone. Using pipe-style scaffolding, wedges and other tools, assemble your structure. Press start and watch as you attempt to roll the ball into the target. With great game play and puzzles that challenge, this game is a welcome addition to the competition, and one I'll likely be playing even after the competition is over.

Entry Award Round 1 Award Round 2 Award 

Evo War by Dark CoderEvo.war

by Dark Coder

Evo.war is another fine entry from Darkcoder. The attention to visual detail and innovative game play sets it aside from other entries. The principle behind the game is to take a standard side scrolling shooter in the R-Type style, and collect DNA as you work through the levels. You can then "evolve" your ship using collected DNA creating different designs. Starting as a humble egg-shaped craft, progress through the levels with varying weapon configurations. The game play can be very intense at times, almost frustrating; however the ability to adapt your ship to your preferred playing style is a great advantage.

Entry Award Round 1 Award Round 2 Award 

Squares by JuneySquares

by Juney

While not the most graphically advanced of entries, Squares is a relatively simple puzzle game, that challenges. The player is presented with a grid of coloured squares; the goal is to remove all of the squares from the screen by sliding a small 2x2 grid of the same colours in the center of the screen. By selecting the arrows at the end of each row, you can move any line only two spaces at first, as you remove squares from the screen your freedom becomes greater, but without diminishing the challenge. The gameplay is easy to understand and pick up, yet challenging and an ideal brain teaser.

Entry Award Round 1 Award

Evom by MadrManEvom

by MadrMan 

Evom is amongst the most unique game entries I've ever had the pleasure to judge in any competition. The graphics - while simple - are a fascinating mix of 3D and 2D technology. With an innovative control system it may take a little getting used to, but for anyone looking for something different it's well worth the little extra effort. The game as far as I can tell runs along an evolution theme. You control a single cell, with the ability to jump short distances, stick to walls and DNA balls. If you cling to a DNA ball long enough it vanishes granting you a DNA bonus. You must of course do combat with or evade other cells, making a simple game to play quite complex and involved. The game was a pleasure to play, and one I look forward to revisiting.

Entry Award Round 1 Award

Meteor Swarm by Super NovaMeteor Swarm

by Super Nova

Meteor Swarm is a 2D game based on the well known Asteroids theme. However, rather than sticking to the old formula with updated graphics, the author has crossed it with a mouse aim system, keyboard movement controls, and side screen menu options allowing you to select power ups when needed. The power ups come in two flavours; the primary weapon, which shoots small yellow bullets in a number of different patterns. As your primary weapon gauge increases, it allows you to use a number of other firing patterns including sprays and craft-surrounding attacks.There are a number of other special secondary weapons including black hole, shield and laser beams.

Entry Award Round 1 Award

Nebula by BMacZeroNebula

by BMacZero

Nebula is a puzzle mini-game set in space. Your job is to target the enemy base with a mine launcher. Sounds straight forward? Well, there's a twist; various obstacles such as deflector beams, destruction beams and even planets lay between you and the target. The aim is to destroy the base using as few mines as possible. Using blue deflectors to bounce the mines, avoiding the orange lines that will vaporise them, and finally using gravitational fields around planets to slingshot them across space. While the initial levels are a little easy they do get harder and more complicated. The addition of a level editor allows you to expand the game further.

Entry Award Round 1 Award

Lightspeed by Josh MooneyLightspeed

by Josh Mooney 

Lightspeed is a worm game where the player collects small power ups that lengthen your vapour trail. The aim of the game is either to shoot the AI player, or have it crash into your tail. If either happens then you win. You get a number of powers you can collect as the game progresses.

It's a simple game you can just pick up and put down without making any kind of commitment to it - ideal for players who just want to fit quick games inbetween phone calls, school work or any other responsibilities. Simple, sleek, good looking, easy to pick up and put down. A very good minigame for this competition.

Entry Award Round 1 Award

DarkBASIC Professional Updates Continue

DarkBASIC Professional

For those in the know you will have already enjoyed the upgrade release of U73 which included lots of tweaks and a few new features to keep you going. You will also have happened upon the U74 beta versions which charged in straight after U73 was released, including the most anticipated of all features, the release of the FPS Creator V115 game engine source code. This allows you to change and add your own code into the FPS Creator game and create mods of the official engine.

Already in the beta version in addition to some compatibility fixes, you may be pleased to see the expanded functionality of the SET BLEND MAPPING command which now gives you incredible power over the DirectX fixed function pipeline. Implementing pretty much any multi-texturing trick you can think of is now a possibility. An example has been written to show how to use these new parameters and can be found in the SNIPPETS folder. Also in the snippets you will find new examples to show you how to texture your backbuffer with a single command and how to use the ZBIAS commands. Of course there are the usual slew of help page updates as you would expect from an upgrade.

U74 Beta DiscussionWe are working with a mystery coder who may have some nice surprises for you in a forthcoming beta version, but more on that when the time is right. For now, enjoy the new upgrade and remember to check out the beta thread if you want to keep up to date with the very latest changes to the language.
  

Cloth & Particles Demos and Help Files

With release U73 of DarkBASIC Professional came the inclusion of the Cloth & Particles pack as part of Cloth & Particles additional materialthe standard product. To help you embrace the features of this command set, you can download the original example source code, and a comprehensive help file outlining the full set of commands. The files have been posted on the forums, allowing you to feed back and discuss the great ways we imagine you will find of using the effects available to you.

Stunt Gunner


Stunt Gunner

This game is not so much a flight simulator but rather a shoot-em-up style game with lots of targets and plenty of excitment. The strategy of the game is easy; locate and destroy as many targets as possible. The main obstacle is your fuel level and the enemy SAM missiles which are designed to seek and destroy. You will need to out-manouevre the SAMs with skill and speed. There are five aircraft to choose from, each with different speeds and firing ranges. Each aircraft handles differently and changing the nine different camera views gives an individual feel for the pilot you want to be!

 

Cisko Games WebsiteFull details of the game including downloadable demo and screenshots can be found at http://www.ciskogames.com/.

Free Products from The Game Creators
FPS Creator   -   DarkBASIC   -   2000 Store Points

 

FPS Creator Bonanza

FPS Creator News

Special Offer while Stocks Last - $22.99, Save Over $150.00!

Take advantage of this whopping special offer! Get FPS Creator, FPS Creator Tutorial Course and 8 Model Packs for an incredibly low price of $29.99 USD (€22.00 EUR, £19.99 GBP). This deal includes:

 

FPS Creator

FPS Creator sets a new benchmark in the game creation market by providing an easy-to-use yet highly flexible editing environment. As its name implies this is a tool for creating action-packed FPS games with no programming or 3D modelling knowledge required. Using an intuitive and visual Windows interface you literally paint your game world into the scene.

FPS Creator is available to be purchased separately for $49.99 / €31.99 / £25.99
Click here to purchase the Bonanza pack, including FPS Creator
for just $29.99 / €22.00 / £19.99

FPS Creator Tutorial Course

Learn how to get the best from FPS Creator with in depth videos covering characters, segments, lights, way points and much more besides. This 2 DVD disc set contains a large collection of videos that are ideal for new and advanced users of FPS Creator.

The DVDs cover topics such as the basics, doors, zones, lights, lifts, waypoints, teleports, anti-gravity platforms, effects and the build game process.

FPS Creator Tutorial Course is available to be purchased separately for $16.99 / €12.99 / £9.99
Click here to purchase the Bonanza pack, including FPS Creator Tutorials
for just $29.99 / €22.00 / £19.99

Model Pack 1

Model Pack 1 injects a bunch of new 'Modern Day' style objects and characters into FPS Creator. Here are some of the items included:

Model Pack 1 is available to be purchased separately for $19.99 / €12.99 / £10.99
Click here to purchase the Bonanza pack, including Model Pack 1
for just $29.99 / €22.00 / £19.99

Model Pack 1

Model Pack 3

This pack follows a theme based around modern day styled warehouses. Containing over 340 segments and 183 entities, this pack is sure to add versatility to any FPS Creator game. Contents include:

There are also 183 new entities including cardboard boxes, wooden boxes and crates, heavy duty containers, doors, gates, lights, barrels, power boxes, pipes, planks, shelves and windows.

Model Pack 3 is available to be purchased separately for $19.99 / €12.99 / £10.99
Click here to purchase the Bonanza pack, including Model Pack 3
for just $29.99 / €22.00 / £19.99

Model Pack 3

Model Pack 7

Expand the default sci-fi and world war II libraries with this segment pack. After installation you have extra mesh segments available that provide exciting new possibilities. Create broken walkways, curved ledges, varying angled ramps - your level designs expand with this new set of building blocks. Model Pack 7 contains 109 new segment pieces.

The new segments are all available in "concrete", "Hollow", "Ice", "Iron", "Metal", "Moon Floor", "Carpet", "Grass", "Lava", "Marble", "Stone" and "Wood" designs.

Angled walls can also be created using the new "Diagonal" wall overlays, available in all the standard default room styles. "Sloped" walls give you more options in your level design.

Model Pack 7 is available to be purchased separately for $9.99 / €6.99 / £5.99
Click here to purchase the Bonanza pack, including Model Pack 7
for just $29.99 / €22.00 / £19.99

Model Pack 11

Suitable for outdoor levels. This pack includes a variety of rock formations, fences and stone walls.

Model Pack 11 is available to be purchased separately for $10.99 / €6.99 / £5.99
Click here to purchase the Bonanza pack, including Model Pack 11
for just $29.99 / €22.00 / £19.99 

Model Pack 11

Model Pack 12

The sci fi pack is the ultimate pack to help you make atmospheric looking sci fi themed scenes. The pack includes tech pieces that you can use as props in your sci fi coridors, including computer stations, controls panels etc. What's more, we provide you with 5 texture variations so you can alternate the look of your game levels. Contents include 45 room segments, 6 character models and 80 styled entities.

Model Pack 12 is available to be purchased separately for $19.99 / €12.99 / £10.99
Click here to purchase the Bonanza pack, including Model Pack 12
for just $29.99 / €22.00 / £19.99 

Model Pack 12

Model Pack 13

The village pack is perfect for all your fantasy based fps games. It's also a great option if you need rural type European medieval structures for your WW2 games. The pack contains faithful re-creations of buildings from this medieval period, and they will be sure to bring atmosphere to your game level. Contents include:

Model Pack 13 is available to be purchased separately for $10.99 / €6.99 / £5.99
Click here to purchase the Bonanza pack, including Model Pack 13
for just $29.99 / €22.00 / £19.99 

Model Pack 14

The wild west pack contains 8 buildings to recreate a wild west FPS game. Included are 8 buildings, including a barn, weather vane plus other additional wild west buildings all sourced from authentic buildings from this era.

Model Pack 14 is available to be purchased separately for $10.99 / €6.99 / £5.99
Click here to purchase the Bonanza pack, including Model Pack 14
for just $29.99 / €22.00 / £19.99 

Model Pack 14

Model Pack 15

The ruins pack contains 17 worn and broken down building models. These can be used to recreate a WW2 scene, or additionally any such scene where your game requires a village setting perhaps whereby you want to create a sense of abandonment. Included in the pack are abbey remains, church remains plus lots of other broken buildings.

Model Pack 15 is available to be purchased separately for $10.99 / €6.99 / £5.99
Click here to purchase the Bonanza pack, including Model Pack 15
for just $29.99 / €22.00 / £19.99 

Model Pack 15

 

Model Pack 27 - Ancient Rome

Model Pack 27  

Roman style model pack for FPS Creator!

Portray the beauty of ancient Rome, with this content kit. Within it you will find majestic buildings including a Temple and Pantheon. The pack also contains an authentic Roman shopping centre, with room for market stalls. With the included stall props, such as fruit, bread and pottery accessories you can soon bring life to your Roman scene. Make your own ROME!

The pack also contains a large assortment of beautifully detailed segment pieces for creating ornate floor sections to further enhance the visualisation.

To round things off there's also 5 Roman soldiers included to populate your levels.

This pack contains:

Videos

Two videos are available. The first is a level walkthrough showcasing the content included in this pack. The second is a tutorial on using some of the entities. To download these videos select the links below:

 

FPS Creator X9 Media and Source Code

FPSCWork continues in the background this month in support of the Game Creator store. Not only are we supervising the addition of third party assets and helping artists upload their material but we are also uploading items from our own model pack collections. if you have found an item in the packs you like the look of but don't want to invest in the entire pack, you will soon be able to find that item in the store as an individual entity. Ideally, you can now buy just the content you want making it a very affordable way to source art and media for your latest game.

As mentioned in the DarkBASIC Professional update, the FPS Creator V115 source code is now available, which means you can mod the very latest version of the engine for free. Download the latest DBP upgrade (U74 beta) and check out the Extras download for all the files and information you need to get started. We are pleased and excited to see what the mod community makes of the new source code and don't be afraid to show off the cool things you can make the FPS Creator engine do!

FPS Creator X10 V109 Released

FPSC X10You can now find the latest update to FPS Creator X10 through your auto update feature by going to the Help menu and selecting Check for updates. This is a huge update and bears testimony to the support and feedback from the X10 community. The update work started in January and has taken four months to get it to where we all wanted. The list of fixes and features are exhaustive, but here are a few highlights:

And that's not all. We are currently working in the background on integrating the Game Creator Store so you can gain access to over 2000 items to further enhance your levels. We are also making sure that all future model packs are X10 compatible so you won't have to worry about buying a pack from now on. There are a few remaining issues, as you would expect from such a large update as V109, and so a special thread has been left open called X10 V109 BUG REPORTS which you can use to post a detailed bug report of anything you find amiss. Thanks again to the community for providing the original bug list and helping ensure the beta versions were subjected to thorough testing, I think we all did a great job. Watch this space for news on the V110 update.

The Game Creator Store - New Additions

The Game Creator Store 

Upload Your Assets to The Game Creator Store

Did you know you can sell your models, segments, music and sky boxes in the Game Creator Store? We already have dozens of artists selling their media, and we welcome anyone with the talent to provide our community with quality assets to do the same. If you are interested in becoming a store seller, please contact Janet, our Store Administrator directly.

New Store Additions

Animated Clock 3D ModelAnimated Clock

An antique style pendulum clock. The accompanying script animates the pendulum, along with the authentic sound of the clock tick.

This is an ideal prop to furnish an old house, or add an eerie ambience to an otherwise quiet and desolate building.

 

Wall Bomb FPS Creator Prop

Wall Bomb

This wall bomb can be activated ingame by pressing Enter. Once active, holding or pressing Y will detonate the bomb. To detonate the bomb you must have FPS Creator V113 or later. The bomb sticks to walls in the editor.

This is a great advantage in your weaponry, allowing you to lure your enemy into a trap, primed for devastation. 

 

Picture Low Poly 3D ModelWall Pictures

As simple as a wall hanging may be, it is a very quick, low-poly and cheap way to fill your location with incidental scenery. Bare walls are often left undecorated, yet breaking them up with pictures can make a big difference to the final look and feel.

This picture is one of many you will find in the store, covering many themes.

 

Military Style Bunk Beds at the Game Creator StoreBunk Beds

Army style bunk beds are an essential feature of any military base setting. FPSExtreme has created these nicely detailed beds, perfectly made up for inspection.

The beds would also be well situated in a small, cramped prison cell.

 

Towel Holder 3D Game accessoryPaper Towel Holder

This is a paper towel holder or dispenser that would be found in an industrial evironment. As with many resources for FPS Creator, it will automatically snap to the wall at the right height for you to deploy quickly.

All of the above models are available to purchase and download through the inbuilt Game Creator Store in FPS Creator, and also using the standalone store for other game-making tools.

John Fletcher takes on Dominance War

If you are a regular FPSC user, it's quite likely you have a number of assets created by John Fletcher. This year he has taken on the Dominace War IV art challenge, a huge annual game art competition unlike any other. Once a year, for three months, artists from all over the world come together to take part in a friendly 3D and 2D war between communities. Artists must choose and represent a community involved in the war. When the war is over, the community with the best 3d game art or best concept game art, wins each unique event. This year, 12 different art communities in 7 different languages will compete for World Champion standings in the largest event in the series - Dominance War IV!

Forum linkJohn's piece is entitled V'HULCREM-KR, and here is the beautifully rendered final submission of the 3D creation. Take a look at the full story on the forums.

V'HULCREM-KR

Best Of The Best - The Warehouse

FPS Creator - Best of the Best 

The Warehouse

by Puppy of Kosh

Your name is Eric Springfield. You had a relatively normal life until one day you saw tanks rolling down towards the hospital. Soldiers got out, went inside the hospital, and ten minutes later came out. They began firing at the hospital with the tank, destroying it and killing everyone inside. In the hospital were victims of a disease that several people contracted while working in a nearby weapons testing facility. Nobody lived long enough to see the effects of the disease; however people all around started mutating, and becoming violent savage creatures. Soon the "disease" spread throughout the world. The government took everything - money, even food. They sent out the military to end the epidemic. Not long after it started, those in the military began firing on civilians. They didn't care, all they wanted was to end the epidemic.

You are in a warehouse trying to survive. Make your way to the nuclear power plant nearby, and activate it. As soon as you do, it will detonate, the explosion will kill all of the zombies nearby.

Best Of The Best FPSC game

Download this gameThis game can be downloaded here. The forum thread can be found here, we encourage you to feedback on games and show your appreciation.

 

 

FPS Creator for Free

3D Modeling Competition - Good Vs Evil

Good vs Evil

By BiggAdd and MikeS

Forum ThreadThanks to all of those who participated in the latest alter ego 3D modeling competition. The final entries can be found on the forums in this thread. The winners will be announced shortly, and be awarded a shiny trophy alongside their avatar for their efforts.

The next 3D competition will start on June 3rd, so look out for it in the 3D forum. This next competition will be great for those new to modeling, and create new challenges for those experienced modelers. 

How the 3D Modeling Competitions Work 

Competition EntryThe accolades for the winners are retained until the next competition winners, and are as follows:

3D Champion3DMaster - Champion awarded to the overall winner in the competition, an entry which displays both modeling and texturing excellence.

3D Best Model3DMaster - Best Model awarded to the runner up who demonstrates the finest modeling skills in the competition.

3D Best Texture3DMaster - Best Texture awarded to the runner up who demonstrates texturing wizardry in the competition.

The awards will cling to your Avatar until the results of the following competition are announced. So to keep your award, you must defend your honour in battle once again!

The Extreme Graphics Makeover Contest

David E. Gervais is sponsoring a summer contest to help all the talented programmers that hang out at the TGC Forums.

Regardless of your choice of programming tools - DB Classic, DB Professional, Dark GDK or even Play Basic - you are invited to enter this contest and have fun making a new and innovative game. Don't worry about it looking pretty, after all, what would be the point of winning a graphics makeover if your game already looked great? 
Extreme Makever Contest

Contest Date
From June 1st 2009 up to and including August 15th 2009

Contest Rules
1) The Contest is open to all registered users of the TGC Forums.
2) Programmers can use DBC, DBPro, Dark GDK, or Play Basic to make their game entry.
3) The Game Category is 'Any'. However, the nature of the contest leads itself towards Puzzle games, Games of luck, Memory games, and 'Thinking/Logic' games.
4) Gameplay is top priority, followed by innovation. (remakes are allowed but a reworking of a game idea would be better)
5) Keep it simple, the phrase "A Minute to learn, a lifetime to master" is a good thing to keep in mind.
6) ALL Entries must use 'Placeholder' graphics. (this will allow for a much quicker upgrade if you are one of the lucky winners. Not to mention make it easier for David to make the new graphics fit.)
7) Have fun and enjoy the contest.

Makeover CompetitionYou will find the full details of the contest and be able to take part in the discussions on the forums.

DarkGDK.net Updated

DarkGDK.net

Discover DarkGDK.netOwners of DarkGDK.net will now find an update in their order history. Budding developers looking to add the product to their toolbox can find the full details on the product page.

DarkGDK.net v1.2 brings the following updates and changes:

 

Starting Out With Games & Graphics in C++

Tony Gaddis is the author of many technical titles, spanning various languages including Visual Basic, Java and C++. Alongside the array of languages are a wealth of topics from the languages themselves to their implementation, application design and programming techniques. His latest title takes an innovative approach to learning C++, by using the DarkGDK library from the outset.

The first question anyone reading this review will ask is whether this book is pitched at their level and requirements. Primarily aimed at students looking to achieve CS1 foundation level (US academic grade), the book is suited to all students in the field of programming in C++. Additionally, anyone looking to start programming as a hobby will find this book comprehensive, with all of the necessary materials available to take the content through to completion. The third audience that will appreciate the course laid out across the well defined chapters consists of anyone looking to get started with DarkGDK, whether they be proficient in C++ or not.

Starting Out With Games & Graphics in C++
Buy the book at Amazon

There are many ways to learn new skills, and the approach taken here is to start small and build up the full skillset over the course of the book. As the author puts it, start by getting your feet wet rather than diving straight in and hoping you swim rather than sink. It is this approach which makes it easy to pick up the book and start at your current level of experience.

With so many books on the market teaching the language, a unique approach is required to stand out from the rest. In this case, it is the ability to learn C++, Dark GDK, programming techniques and design approaches all side-by-side. Being game and graphics oriented, it's a more informal and fun way to get started with what can be an otherwise arduous task.

I am a programmer and consultant by profession and although I use several languages, C++ has never been one of them. DarkBASIC Professional is one of my favourite toys, letting me unleash my creative side with very little effort, and a great distraction from the daily toils of performance-tuning servers and searching for elusive bugs in invoicing routines. This book has certainly whet my appetite for C++ and DarkGDK as the next step in the progression of my hobby, and made the learning curve seem somewhat easier. I look forward to using the book to finally unwrap my virtual copy of DarkGDK and put it to good use.

Leadwerks Engine 2.23

leadwerks Engine 

Leadwerks Engine 2.23 is now available, with an improved terrain and vegetation system for faster performance and better visuals.  The ocean shader has also been improved, as seen in this video. Watch out for further news on the release of this update.

Paperworld using LeadWerks Engine

Paperworld in Leadwerks EnginePaperWorld is a feelgood simulation game where you create and maintain a world made only of paper. The simulation is focused on the people living in the towns and the integration of colors among them, rather than the maintainance of the city. It is a friendly game where you can play around, experiment with social experiments or try to reach the top of the highscore table by producing the largest population.

 

Paperworld, Game Concept Challenge 09PaperWorld is a single player experience prototype developed for Game Concept Challenge 09. GCC is a competition that lasts for 7 weeks in which teams come up with a concept and develop the prototype. The judging panel was comprised of representatives from major players, including Microsoft, Sony Entertainment Europe and Team 17.

 

 

Lee's Tip of the Month - Machine Independent Randomness

More tips from Lee Bamber...or to state the title another way, how to code the same number of random triggers in your game no matter what the frame rate is on the target machine.

This question was one that I recently had to answer when faced with fixing a long-term bug in the FPS Creator engine that allowed enemy characters to constantly fire at the player if the game was run on a really fast machine. There is a setting that allows the frequency of fire to be set using a standard random value, but as the machine got faster there where more opportunities for the correct randomly generated value to be created, and thus, the enemies had a field day on a quad core system!

In order to tame our overeager bad guys, I had to come up with something that would generate the same number of random possibilities at 30fps and at 300fps. My solution is by no means the best way to do it, and I am sure there are more mathematically elegant solutions that can be done in one line, but Lee is old school, which means he sticks to what worked 20 years ago, for better or for worse. If you have a nicer solution, email it to me at lee@thegamecreators.com and I will be happy to share it in next month's tip!

The basis of my solution is to provide the same number of RND() calls, no matter how many times the game loop cycles, so the best way I know to have a constant factor involved is to use a timer. There are a few DBP timer commands but the one that makes most sense to humans is the TIMER() call which returns the number of milliseconds that have passed since the machine was switched on. To demonstrate the command, let us read a program that is designed to quit after 5 seconds:

STARTTIMER=timer()
while timer()-STARTTIMER<5000
endwhile
end

Above we have a variable called STARTTIMER which will store whatever the TIMER() is currently holding (some ridiculously large value). We then use a loop to monitor the difference between the present time and the time we started the loop. A value of 5000 represents milliseconds, which to you and me is 5 seconds. After the condition is met, the program will end.

Now let's look at our problem. A typical game loop using the RND() command would appear like this:

count=0 
sync on : sync rate 60
begin=timer()
while timer()-begin<5000
inc count
if rnd(10)=1 then inc event1
cls : print "60 FPS : ";event1;" out of ";count
sync
endwhile

As you can see the loop will run at 60fps making the final value of COUNT predictable and likewise the number of RND() calls made. this is great if you keep your game loop at 60fps but what if you want to offer your users machine independent frame rates? Check out the code below:

count=0 
sync on : sync rate 0
begin=timer()
while timer()-begin<5000
inc count
if rnd(10)=1 then inc event2 cls : print "MAXIMUM : ";event2;" out of ";count
sync
endwhile

All we really did was set SYNC RATE to zero which instructs the code to run as fast as possible within the loop. Now based on your system, the frame rate could be upwards of 4000fps. Imagine how big the COUNT value must be for the same 5 seconds of loop!

Now I am going to use this timer command to regulate the number of times a specific piece of code is called, which in our case is the RND() call which increments the event variable:

count=0 
sync on : sync rate 60
begin=timer()
while timer()-begin<5000
if timer()>stamp stamp=timer()+(1000.0/60.0)
inc count
if rnd(10)=1 then inc event3
endif
cls : print "TECHNIQUE : ";event3;" out of ";count
sync
endwhile

Notice the inclusion of this logic:

if timer()>stamp 
stamp=timer()+(1000.0/60.0)
endif

Essentially the first time this code is called, the stamp variable is zero which means any timer value is going to be higher and thus the condition is true. The stamp value is then set to the current timer plus a small number of milliseconds. In this case we want our logic to fire to simulate something similar to what a 60fps game loop might produce. As the stamp variable is an integer the accuracy of the result is not perfect but the result is the same. A consistent triggering of logic no matter how many times your game loop cycles, meaning your game can run at 5000fps and will still only fire the RND() call 60 times every second.

In this case we are using the RND() command but it could be anything in your game logic from monitoring the state of game characters to handling a background task. You can also set up different stamp variables so for example your character AI could trigger 60 times a second but you might want to set your in-game traps to detect their prey only twice a second. Such tricks as these are the bedrock of making your games faster as you are spreading out the work a single cycle of your game must endure.

There are other techniques for machine independence, and many alternatives more suited to movement and continually operating tasks, but for one-off code triggers there is nothing more dependable than using timers and with the performance boost they bring your end users will thank you for using them!

Here is a full test program, designed to show how the technique works to successfully keep random events under control.

Rem Project: MachineIndependentRandomness

rem Init app
sync on

rem typical random events at 60fps
count=0
sync rate 60
begin=timer()
while timer()-begin<5000
 inc count
 if rnd(10)=1 then inc event1
 cls : print "60 FPS : ";event1;" out of ";count
 sync
endwhile

rem typical random events at maximum fps
count=0
sync rate 0
begin=timer()
while timer()-begin<5000
 inc count
 if rnd(10)=1 then inc event2
 cls : print "MAXIMUM : ";event2;" out of ";count
 sync
endwhile

rem typical random events using technique
count=0
sync rate 0
begin=timer()
while timer()-begin<5000
 if timer()>stamp
  stamp=timer()+(1000.0/60.0)
  inc count
  if rnd(10)=1 then inc event3
 endif
 cls : print "TECHNIQUE : ";event3;" out of ";count
 sync
endwhile

rem Wait for user input
cls
print "Over Five Seconds"
print "Number of random events at 60fps = ";event1
print "Number of random events at maximum fps = ";event2
print "Number of random events using technique = ";event3
wait key : end

SFX Engine now comes with all sound packs

The sound effects creation program SFX Engine now comes with all 8 sound packs as part of the normal cost of the tool. This offer is running over the summer period and ends August 31st.

You can use SFX Engine to quickly and easily create any sound or add new audio effects to existing sounds.

Visit the SFX Engine web site here.

Video Gallery

TGC Video Gallery

PaperWorld

As highlighted earlier in the Leadwerks Engine article, this prototype game was created for Game Concept Challenge 09. The idea revolves around a place made entirely of paper, and is innovative and eyecatching.  

  

SketchUp for FPS Creator

Learn how to make FPS Creator entities in Google SketchUp. This is a preview of a full video tutorial on getting to grips with SketchUp and creating models that are compatible with FPS Creator (X10 in this demo). You can find out about the full tutorial in the Forum thread.


 

From the Forums

Valued MemberThis month sees the elevation of another forum member, to the status of Valued Member. Cloggy earns his badge for his work on the D3D plugin, used by many appreciative developers. D3D adds enhanced functionality to DarkBASIC Professional, with faster 2D and font commands, as well as 3D fonts and 2D shape commands in 3D space.

Shooting Engine

Simply make a gun, position and rotate it and tell it to shoot using 'SE_FireGun(gunnumber)' and everything will be done for you. You can also use the new Projectiles system to make new types of projectile like rockets or grenades.

Hyperspherical Universe

Fly straight in any direction, and you wind up where you started. It's like a 2d world on the surface of a sphere, but in 3d. It's quite hard to get your head around; when things get halfway to the other side of the "world" from you, they start looking bigger.

.

Exploding Sphere

This thread outlines a great effect, disintegrating a sphere into it's individual polygons and spraying them across the landscape. As the thread progresses, so too does the code used to achieve the effect.

Grass

Another thread focusing on a specific technique, and progressing swiftly throughout. In this case it's a 2D grass effect, with wind movement thrown in. No media is required to create the effect.

.

PlayBasic Monthly News Round-up

Playbasic News  

by Kevin Picone  

The past couple of months have been all about optimization of the Playbasic V1.64 graphics engine. That no doubt sounds about as interesting as counting rain drops, but I actually enjoy this type of programming most. Why? Well it means reverting back to my favorite language, Assembly. Writing Assembly rendering routines taps back into that 6502 programming kid back in the early 80s. I was reminiscing the other night about just how enjoyable that time was. You'd sit there, with either a monitor or assembler if you were lucky and poke opcodes / graphics data into memory and strangely enjoy it. If it didn't work, you kept trying. You had no option really, you couldn't just Google it in those days, it didn't exist.

PlayBasicThose who remember 8-bit programming, in particular on systems like the C64, would have gotten well accustomed to their copy of the C64 hardware reference manual. You had no choice, the only way to do anything interesting was in machine code (Assembly) and hitting the hardware. Raster interrupt programming on the C64 should have been an Olympic sport. 20 years on and the obsession to write the perfect sprite multiplexer still consumes people to this day. And we're not talking about this hardware accelerated nonsense we have today, but good old fashioned real hardware sprites. But those days are long gone now.

All nostalgia aside, the objective of this optimization pass is to streamline all the generic functionality as much as possible and look for ways to shortcut some 'common' render modes. These include realtime bilinear filtering effects and various combination modes, such as filtering combined Anti-aliasing and tinting effects. There'll probably be a few new commands, but nothing too major. 

PlayBasicWhile the work has been painful at times, it's certainly starting to bear fruit. Sprite/texture filtering modes now support all pixel formats (15, 16, 24 & 32-bit) both with and without texel compression. The fastest versions are the 32-bit modes, but the gains have been pretty consistent across the board. With virtually all fillers seeing a 25% (and up to 50% in some cases) improvement. For example, you can now bilinear filter a 15-bit image, with 32-bit pixel format conversion at over 60fps. Let's not get too excited though, filtering is still and always will be computationally expensive. So moderation is still the best way to get a good result. Think first, then act!

Beyond the sprite engine there are a few other little jobs that need tweaking, such as the new BlitImage mode for doing the Blur-O-Vision effects as well as a revamp of the DLL binding commands. While PlayBasic has supported DLL binding for years now, there's always been a little too much fat on the bones of the runtime instruction set in this regard, slowing the calls down somewhat. While this was no big deal if you're only calling a function a few times, it soon adds up if you're calling these functions constantly. Thankfully with a little redesigning the call process has been dramatically accelerated.

To give you an idea of what this means in terms of performance, the calling mechanism in PlayBasic V1.64j is now about 3 - 4 times the speed of older editions. This will make a huge difference in those programs that are heavily externally dependant. This is good news for the PlayBasic platform (VM1) I guess, but VM2 is another 3.8 - 4 times quicker again then the Vm1 used in 1.64j. The new revision of PlayBasic V1.64j should be released by the time you read this.

PlayBasic on Twitter

For those Twitter addicts, feel free to follow PlayBasic and get all the latest chit chat.  Now with 20% more techno jargon - http://twitter.com/playbasic

Load Runner AI Challenge

In keeping with our recent Retro Game influenced challenges, this time around we'll up the ante and tackle the AI mechanics of a classic retro platform game called Lode Runner. The focus here is not to build a remake of the game (there's dozens of those already), but derive an approach for making the opponent characters (we'll call them Bad Guys) chase after the Player.

http://www.underwaredesign.com/forums/index.php?topic=2999.0

2009 PlayBasic (game programming) Competition Survey

Yes it's that time of year again, time to crown the next king of 2D gaming. Will it be you?  We don't know, but we're looking for expression of the interest from the PlayBasic community.  So Have your Say!

This month's Winner

Each month we pluck one lucky subscriber from the newsletter mailing list and award them a free copy of DarkBASIC Professional and 1,000 Game Creator Store points. The email address of this month's winner is: la*ry@th**apti*t*am*ly.com We have emailed the lucky winner, congratulations!

Outro

Share your news with over 20,000 active games developers!

If you have something you'd like featured in a future issue then please get in touch and include as much information as possible (including where applicable: screen shots, URLs and zip files).
Issue 78 deadline - June 26th 2009.

Creativity can solve almost any problem, The creative act, the defeat of habit by originality, overcomes everything. George Lois