Free & Modern BASIC dialect with DirectX 9.0c ?

Community Forums/General Help/Free & Modern BASIC dialect with DirectX 9.0c ?

Vampire(Posted 2013) [#1]
The 'topic title' is character-limited so my question opened is: "Which BASIC dialect is free and most modern for game programming with at least DirectX 9.0c support?"


Captain Wicker (crazy hillbilly)(Posted 2013) [#2]
Dark Basic Professional (free edition)
http://www.thegamecreators.com/?m=view_product&id=2000


Matty(Posted 2013) [#3]
Visual Studio Express? I've not used it but it allows you to program in VB.NET, is free, and modern?


Vampire(Posted 2013) [#4]
@ Captain Wicker Soft

Months ago I installed Dark Basic Professional free edition and uninstalled it and then installed it and uninstalled it again because:
- Its documentation contains obsolete commands (why would you still list commands which don't have any use in 21st century?)
- Its graphics are blurry and don't seem pixel-perfect.
- Its demos are far from being inspiring.

But I can give it a third try if there is a good 2D physics wrapper for it and for the sake.

@ Matty

By 'BASIC dialect' I mean not only including the word "Basic" in its name but also a so high-level language that getting into the graphics mode is as easy as:

SCREEN 13

and you don't bother with window handling and don't hear things like "hwnd". And for example if you want a random number, the following command must give you one:

RND

and it mustn't necessarily have to end with (). It should be general-purpose (e.g. return a Double number between 0 and 1) and so there should be one and only one command that returns a random number, not many alternatives as in BlitzBasic family of languages.

By 'modern' I mean 'technologically modern' not 'modern in terms of programming paradigms'. That means for example: procedural programming in, OOP out.


GfK(Posted 2013) [#5]
and you don't bother with window handling and don't hear things like "hwnd". And for example if you want a random number, the following command must give you one:

RND

and it mustn't necessarily have to end with (). It should be general-purpose (e.g. return a Double number between 0 and 1) and so there should be one and only one command that returns a random number, not many alternatives as in BlitzBasic family of languages.
are you actually serious?

Blitz has two - Rnd() for floats, and Rand() for ints. Rnd() works exactly as you are demanding. If you don't want to use Rand(), then don't.

By 'modern' I mean 'technologically modern' not 'modern in terms of programming paradigms'. That means for example: procedural programming in, OOP out
you think procedural programming is the modern approach??

I'm sorry, but your criteria for choosing a programming language are just stupid. You want all the latest features, you don't want to have to do much work AND you want all of this for free.

Good luck with that.


Vampire(Posted 2013) [#6]
@ GfK

I don't want to use those random-number-generating commands since they all end with ().

And I don't think procedural programming is the modern approach. I am just looking for a technologically modern BASIC dialect which is procedural, but OOP doesn't hurt me and I can tolerate it.

And I seriously think procedural programming doesn't contrast with contemporary technological advances.

I am looking for "the modern QBasic" but the language I am talking about must be especially for game programming.


GfK(Posted 2013) [#7]
[edit] Double post

Last edited 2013


GfK(Posted 2013) [#8]
I don't want to use those random-number-generating commands since they all end with ().
So to summarise:

1. It must have a Rnd function, but NO Rand function.
2. It must not - I repeat NOT - dare to use parentheses.
3. It must be procedural, not object-oriented.
4. It must support features of DX9.0+.
5. It must be modern.
6. It must be specifically for making games with.
7. It must be free.

I say again.... good luck with that.

[edit] Actually, why are you here? Blitzplus free version, perchance?


Vampire(Posted 2013) [#9]
So to respond @ GfK:

1. String & Math functions must be 3 letters long.
2. Yes, it must not use parentheses (except indexing).
3. Yes, preferably.
4. Not DX9.0, but DX9.0c. They are different.
5. Yes, it must be currently developed (If Brutus2D were such, I would choose Brutus2D; it must not be dead as Brutus2D). And built-in 2D physics is a must to be modern nowadays.
6. Yes, I hate non-game-programming topics.
7. Yes, but not so important.

BlitzPlus doesn't use 3D hardware AFAIK and it doesn't have 2D physics so it is eliminated from the start.


Steve Elliott(Posted 2013) [#10]

I say again.... good luck with that.



lol write your own language then, it seems you're being far too fussy - and want it free too. I always find it puzzling when people want everything free when they themselves would certainly not work for free. Microsoft has plenty of free compilers - but they just deal with logic (no graphics, sound or anything else). So you then have to find a free engine to go with it. Judging by your requests I don't think this cobbled-together approach would suit you.


Vampire(Posted 2013) [#11]
@ Elliott

I don't have time to write my own language and since writing a language is a non-game-programming topic, it contradicts with #6. Actually I work for free because I am an amateur/hobbyist game programmer. QuickBasic is one of those free Microsoft compilers and it has graphics and sounds. But unluckily it is not for today's computers. 'Finding a free engine' approach is OK and I can expand my topic title question to include them also.

So folks, if you know an engine that is capable of 2D physics, feel free to recommend them too.


GfK(Posted 2013) [#12]
So folks, if you know an engine that is capable of 2D physics
Any language is capable of "2D physics", since it's all just maths... or did you want it to do all of that for you as well?

I'm actually puzzled as to why you would come here and start a thread like this. Also, your ridiculous requirements remind of Mr Mann off of Little Britain.

[edit] Mr Mann.

Last edited 2013


GaryV(Posted 2013) [#13]
I don't want to use those random-number-generating commands since they all end with ().

They end with () because they are functions, not commands.


BlitzPlus doesn't use 3D hardware AFAIK
The OpenGL driver for Blitz Plus uses 3d hardware.


GfK(Posted 2013) [#14]
The OpenGL driver for Blitz Plus uses 3d hardware.
He can't use BlitzPlus, because its creator Mark Sibly, does not have a pet gerbil called Harold.


Vampire(Posted 2013) [#15]
@ GaryV

QBasic's TIMER is also a function but it doesn't end with (). It returns the number of seconds elapsed since midnight.

I want to use DirectX 9.0c, not OpenGL.


GaryV(Posted 2013) [#16]
QBasic's TIMER is also a function but it doesn't end with ().
And QBASIC is almost as dead as Lindsay Lohan's career. What is your point? Blitz Plus is not QBASIC and it is asinine to compare the two.


I want to use DirectX 9.0c, not OpenGL.

I do not care what you want to use, you made a misstatement about the product and I politely corrected you so you would not make the mistake again. On some boards, when you make misstatements about a product, you can be banned.


Steve Elliott(Posted 2013) [#17]

I don't have time to write my own language



Really? That was a tongue in cheek comment I made lol. :) But if your list of requirements is a lack of parentheses, my second comment was you're being far too fussy unless you are prepared too do it yourself. I'm very fussy too ;)


Vampire(Posted 2013) [#18]
@ GaryV

Pardon me please...

@ Steve Elliott

It's time to roll up sleeves and write a new language called GangnamBASIC :)


Steve Elliott(Posted 2013) [#19]

It's time to roll up sleeves and write a new language called GangnamBASIC :)



Not GangnamBASIC() then? :D


Captain Wicker (crazy hillbilly)(Posted 2013) [#20]
@Vampire: Have you considered FreeBASIC + Irrlicht Wrapper?
I think BlitzPlus is still free. Give it a try! :P

EDIT:
I agree with GfK. You are on the Blitz forums. If you aren't into Blitz, WHY ARE YOU HERE?!?!?!

Last edited 2013

Last edited 2013


Yue(Posted 2013) [#21]
DirecttX 7 Blitz3D.!!



Last edited 2013


Captain Wicker (crazy hillbilly)(Posted 2013) [#22]
@Yue:
Vampire is looking for something free. Blitz3D is NOT free. I also recall him specifying in his first post that he is looking for something that supports DirectX 9.0c or above, NOT DirectX 7.


Vampire(Posted 2013) [#23]
@ Captain Wicker Soft

FreeBASIC is DOSish and I am looking for a 2D physics solution. And I am well into Blitz :)

@ Yue

I would prefer to use BlitzMax + 3Impact combo.


Yue(Posted 2013) [#24]
mmmmmmmmmm, i ould prefer to Dev C++ + 3impact . =)



Last edited 2013


Yue(Posted 2013) [#25]
I definitely loved Dev c + + / 3Impact.

Thank vampire, I have no choice Blitz3D and my beloved is also free: D so when Blitz3D not meet my expectations, the best option is safe 3impact.




Matty(Posted 2013) [#26]
There's nothing wrong with having a wish list...but I doubt this wish will be fulfilled..


Yue(Posted 2013) [#27]
I have a serious problem with the google translator sometimes mistranslated think what I mean and other special occasions in text me in the head, for example "Receiver", I translated Rueda.

What I want is that Blitz3D decier meets my expectations, but I love Dev + 3impact because it uses C + +.


*(Posted 2013) [#28]
@Vampire: In all honesty if ya want a language that does 'exactly' that I would write ya own, as your requirements are VERY specific its your only bet.

QBasic's dialect is dead I have used it many years ago when it was packaged with MS-DOS 6 (yes its that old) times have moved on and to be honest with ya its time to give up your wish list and move with the times to pastures new.

To everything into perspective I know ZX81 basic, GWBasic (the one that boots with the IBM XT), COBOL, Fortran, DBase III, Commodore Basic, now these all might sounds great they probably were back in the day but now they are DEAD languages. I have had to relearn some things over the years and if I was you I would do the same. For me I learned C and then C++ after taking a look at Turbo Pascal, and C++ is where I prefer to write everything but for rapid development I use the tool required atm im looking at Unity, Purebasic and monkey.


GaryV(Posted 2013) [#29]
Purebasic


Stability doesn't scare you away for this one?


Yue(Posted 2013) [#30]
The problem is this: it is that we do not talk in terms of programmers, (note that I am not a programmer) Simpelemente I get the impression that things look easy to do, and many disease is able to click and have a system of shadows Luebo advanced and fool ourselves by saying that we are programmers.

Now, I speak for myself, I have 34 years and all I know is Blitz3D, if someone sends me to study C + +, for me it will be a waste of time, but if you are a young man who thinks getting into college, you do not have to lose time with high level languages??, if not rather focus on learning languages ??mid-level and low-level, with the passing of the years it ends up working in a company or simply will create sites like these video offering a new game engine.

Many hate the ones behind directX Blitz3D, however what they really want is to be as easy as possible to create especials effects and stuff, sure if Mark had taken the time to create prefabricated functions for advanced stuff, many would happy about it.

Last edited 2013


Steve Elliott(Posted 2013) [#31]
...

Last edited 2013


Vampire(Posted 2013) [#32]
Actually I don't have a wish list. That I have a wish list is just a commentary. Please subsequent repliers, don't consider me having a wish list!


*(Posted 2013) [#33]

Stability doesn't scare you away for this one?


No more so than BlitzMax's stability


Vampire(Posted 2013) [#34]
CONCLUSION: Even not containing BASIC in its name, BlitzMax is the best game programming BASIC language even in 2013 and I shall stick to it for many years to come.


Yasha(Posted 2013) [#35]
Rather late to this party, but why does the name matter?


My slapdash attempt at actually answering your original question would be to learn the difference between a programming language and a programming environment. Languages don't "support DirectX"; a graphics layer is not a linguistic property.

Since most of the free tools are big-boy ones, they expect you to understand this distinction and plug things together to build a language+API environment yourself. When you pay for a tool like Blitz, you pay to have this done for you. There are exceptions but they are few and far between.

"FreeBasic is DOSish" betrays a fundamental misunderstanding of this entire concept. FreeBasic is not tied to any particular presentation format. In this respect it is in fact almost identical to BlitzMax.


You also have the problem that the BASIC family has a "commercial culture" to it: languages have cultures, and the culture of free stuff seems to have attached itself to other family trees. Decent free BASIC tools just aren't a thing that really exist, simply because the people who work with BASICs and the people who make free tools are largely separate groups.


Vampire(Posted 2013) [#36]
No comment! I don't wanna make polemic, with all respect to the majestic history of BASIC. My epilog:

Everybody runs on their own lane...

Kind Regards,

:)