Page 1 of 1

New Games Language!!

Posted: Fri Jun 26, 2015 8:31 pm
by Steve Elliott2
ok, before you guys flip, it's a subset of Pure BASIC...So you will still need to buy the amazing Pure BASIC! :D

It's just that it's more game oriented, uses Modules with Procedures written with games in mind, and smaller procedure names to enable quicker production of those games.

I feel it will appeal to some people that have over-looked Pure BASIC in the past...And maybe some people here who might give it a shot for Game Programming.

Ignore the marketing speak lol, it's due to Fred that this is possible - and they still need to buy Pure BASIC!

I've finished the core of my Game Language, Which I'm calling Jet.

Features include:

Runs on Windows, Mac and Linux.

32 and 64-bit versions available.

DirectX 9 - and 11 support. As well as OpenGL.

Very fast.

Compiles to a small exe size.

Small keywords = fast typing! And therefore quick production of games.

Very easy to use.

OOP Programming using Classes (Modules in Jet). With public and private variable/procedures to organise your code.

2D Alpha Sprites - Which are called Img2d's (2d images) in jet. Loaded as PNG's.

Sound support for WAV and OGG.

Frames per second code and output to Sprite built-in(render tweening procedures will follow).

Game related procedures will be added to make game production even easier.

3D and physics to follow.

Well you might be wondering how Steve wrote this in a week...This is because it's based on a well established (and under-rated language) called PureBASIC. So you will need to pay the (very reasonably priced) one-off fee and purchase a copy :)

As well as being able to produce GUI applications(very easily) Pure BASIC can produce 2D, 3D (using Ogre) and physics - plus direct OpenGL integration and Assembly Language. Jet will bring it all together in one language.

Jet will use 'abbreviated' versions of Pure BASIC commands. So instead of Procedure / EndProcedure, in Jet that will become Pro / ePro...e for end :)

The Jet Module will include routines for games that will make things very much more compact. So instead of:

Code: Select all

If InitSprite() And InitKeyboard() And UseOGGSoundDecoder() And InitSound() And OpenScreen( ResX, ResY, 32, Name.s, Sync.i )
Which to be fair to Pure BASIC, it is designed for many applications (hence the optional loads).

In Jet, this will become:

Code: Select all

Win( 1920, 1080, "Gridfire", 0 )
A game-in-progress written in Jet (magnify, then click on the percentage to get a 100% view).

Linkage

The code for loading graphics, sounds (including a looping music track) reporting the FPS and a moving player character within a solid Modular OOP Framework is as follows...

There is only one class for the game (module) in this code - because there is just the player to move so far. When the game is finished other modules will be added. The second module is the Jet Module itself.

Code: Select all

Code updated below.

Re: New Games Language!!

Posted: Sat Jun 27, 2015 10:43 am
by Steve Elliott2
Renamed to Types - and now created 2 separate Types for the game. Notice how modular the system is, and variables are kept safely internal to their Type..

Re: New Games Language!!

Posted: Sat Jun 27, 2015 11:07 am
by falsam
Hello Steve. Difficult to test without includes :)

Re: New Games Language!!

Posted: Sat Jun 27, 2015 11:59 am
by Steve Elliott2
Hello Steve. Difficult to test without includes :)
Or graphics, or sounds! Haha :D

Hi falsam, all is work in progress and therefore subject to change at this moment. :)

Re: New Games Language!!

Posted: Sat Jun 27, 2015 12:16 pm
by IdeasVacuum
Small keywords = fast typing!
Some of PB's Function names, constants etc could do with shortening :)

Re: New Games Language!!

Posted: Sat Jun 27, 2015 2:20 pm
by Steve Elliott2
lol...Updated Jet and game code. :)

Re: New Games Language!!

Posted: Sat Jun 27, 2015 4:39 pm
by kvitaliy
Where module JetModule.pb?

Re: New Games Language!!

Posted: Sat Jun 27, 2015 5:00 pm
by Steve Elliott2
Where module JetModule.pb?
On my hard drive :D

But guys, this isn't finished yet. I just wanted to mention what I was working on for the pb community.

What I plan to do is:

1) Complete the game using Jet to see if I need to bring in any changes. <Game Image>

2) Possibly release then...Or see 3 :wink:

3) Look to bring in 3D and physics to the Jet routines - to make it as easy as possible for people to write 3D physics based games, as well as 2D Games :)