• Welcome to Jose's Read Only Forum 2023.

Asking questions?

Started by Kent Sarikaya, July 27, 2007, 02:57:40 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Kent Sarikaya

Guys as you know I am new to powerBasic. I can see reading the posts here that the main powerBasic forums have lost meaning for a lot of you or the community there has sort of faded away and now in this nice forum you are gathering again. I don't want to do anything that doesn't fit into this forum and its goals. But being so new to powerBasic I do and will have many questions. My focus will be in the area of games and graphics mainly as I want to use powerBasic to write some tools for game development and general 3d development and play.

Anyways is it preferred that I ask questions here or should I ask them at the powerBasic forums, until I become a lot more familiar with powerBasic and move into a hard core user status?

José Roca

Well, nobody forbids you to ask questions in both forums, although PB has never attracted game programmers, I assume that because of the lack of examples and ready to use graphic libraries. The compiler is more powerful than most if not all the other BASIC compilers, but has mainly attracted programmers that write business applications.

I'm doing an effort posting translated headers and examples, as well as the recent wrappers for DirectX, to see if I can help to change the situation, and also to learn something in the process, because I know nothing about graphics programming.

I have written an email to Vladimir Shukalov, that is a great programmer and an expert in DirectX. He has replied that he will join this forum but later, because he first has to finish two projects.

This forum is still very young and has few active posters. I guess that many PBers are lurking and waiting to see what happens.

Eros Olmi


as José suggested, no one can stop you to make posts here and in PB forum. You are PB customer now so you are entitled (following PB policy) to ask whatever PB related in PB forum. More, someone talking about creating games using PB I think it is a good things. And a little link to José forum would be not bad too :)
Games are programs and in many cases much more complex and challenge than many "serious" ones.

As you can see here, José has made a BIG BIG job and has produced so much source code than any other PB user. And all FOR FREE. I really hope many PB users will come here to talk about programming and not about ... religion or politics like recently has happened in PB forum.

It is also my feeling that PowerBasic compiler is one of the best Basic compiler around. It has elegant syntax, it is really rock stable, it is fast and produce fast and quite optimized executables. The dark side of PowerBasic is that you need to know a lot on computer programming and OS inside to be able to get the best from it but, ... is that a cons?

thinBasic Script Interpreter - www.thinbasic.com | www.thinbasic.com/community
Win7Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

Kent Sarikaya

Thanks guys hope to have some contributions in the coming months. Still got lots to learn.

Donald Darden

The thing about forums in general is that they are there to benefit everyone.  It's like gathering with a bunch of guys that like to talk about what interests them, and they have the most fun when that get together with people that share the same interests.  We are here because we like the neat things that computers can be made to do, and sometimes to show off our work.

You can program games in PowerBasic, but it is not the compiler of choice for that purpose.  That is because languages that are designed for gaming already include elements that you need for handling tasks automatically.  For instance, you can describe something by giving it attributes, and a game compiler will automatically manage not only that item, but what happens when it collides or meets up with other items.  In PowerBasic, you have to design and manage all that with your own code.

There is increased emphasis on game engines that handle the details for you, doing all the hard work, and letting you essentially script the elements of each new game.  Iy's a different art form.  I've seen efforts to use PowerBasic as the front end, to program the scripting process on the fly.  I could not get it in my head how that might be better or worse than just sticking with the scripting process.

There are multiple game models that you can consider and use.  There are games that are purely random in nature. like throwing dice.  There are games that involve strategy, such as Chess.  There are multiplayer games, some where each player has a specific time to act within (such as players taking turns), and others where each player plays at their own speed, and having a faster computer and internet connection might give you an edge.

If you have an idea of the type of style of game you want to develop, you might look for game engines that are used to produce similar games, and then do some research into them.  There are many web sites and languages that are focused on game programming, and I'm sure some of those will prove helpful.

There are many facets of PowerBasic that really make it really best suited to communications, commercial, data and financial applications.  Efforts by a number of people here are showing that with a bit of effort, it can be the heart of great graphics and audio applications as well, and that even Microsoft's boring windows and dialogs can be made lively and attractive,  But game programming is rather a specialized area, and to be frank, few followers in that group think that PowerBasic would be their choice for game development.

Take a look at PureBasic as a language that fits somewhere in between.  Look at the commands that support the keyboard as an example.  In PowerBasic, you see the keyboard as buffered input that you can process with several functions, either a character at a time, or as a line of input text.  Text correction is allowed before you commit to a line with the Enter key.  A couple of timers are used to determine if a key is entered repeatedly, and at what rate.  Dialogs are a way that you receive input when in Windows mode. 

PureBasic, on the other hand, allows you to see each key as an independent button, so that you could emulate a joystick, flight console, or other device by pressing and releasing keys independently of each other.  To try and do the same thing with PowerBasic requires a considerable effort and a lot of trial and error to get the timing and code down right.  .

Kent Sarikaya

Thanks for your nice reply Donald. Right now I have settled into using thinBasic for game development. Petr is doing some really great things with tbgl and Eros is always updating thinBasic with whatever we need. Soon there will be evidence of what can be done in thinBasic that is pretty amazing.

I will use or try to use powerBasic for developing tools to aid in making games. I enjoy making tools as much as working on a game. With all the recent additions that Jose has done I will give them all a shot to see how far I can go. But for the foreseeable future I will give thinBasic/powerBasic a workout. I figure in 2 years or so, almost everyone I know will have .net on their computers that I know. If powerBasic is not updated then I might look at moving on to something with Object Oriented Programming, like C# or maybe F# with XNA. Free Pascal also looks really interesting as it is available on so many platforms.

One thing is for sure, it is a great time to be into programming. There are so many interesting languages.

José Roca

Quite sure that PowerBASIC will be updated. A company needs to earn money to survive. Its just that instead of releasing 24 betas in 2 years, they release a thoroughly tested version.

Kent Sarikaya

The next release will be my first experience in the types of movement they do with updates. It will be interesting to see which direction they go. I can imagine it is tough to decide as all users have something else they are interested in and want. So what might be a feature for me is a turn off for someone else. Not the type of decisions I would like to make.

With all the stuff you are doing and the other's are showing here on the forums,  it puts a fresh face on what otherwise looks outdated and overpriced when you first get it and use it compared to the development alternatives out there. It didn't even come in a nice cd case, for a pretty expensive program, no manual and no useful form designer, I know all superficial, but it gives a bad user experience the first time you get and try to use it. If Eros didn't tell me about your site, I probably would have not used it and just put it aside as a bad purchase.

This site is like the best marketing, education and showcase for what can be done with PowerBasic!!

Donald Darden

I understand where you are coming from.  I've used PowerBasic for many projects and prefer it for many reasons.  I'm glad that this site is giving you cause to stay with it and see what it can do for you.

Games are about action and dramatic effects.  The difference between a daytime soap and something like StarTrek is the setting and premise for the dialogue.  What I am saying is, that strip away the storyline and consider the guts of the game, and one shoot-em-up is pretty much like another.  It's the surreal elements that make them unique.

The thing is, PowerBasic is a really sound compiler that does exactly what you ask it to do.  But the hooks for realtime game play are not exactly in place, simply because that has not been the company's target.  That doesn;t mean it can't be done, just that it becomes more of a challenge to your skills.  And as Jose points out, there are expectations that PowerBasic will continue to grow
and morph in response to requests and suggestions.  But Bob Zale keeps a tight lid on his plans and development, so we just have to wait and see.

Yes, I agree that ThinBasic is rapidly becoming a really powerful and flexible
prodict in its own right.  You might say that it his is proof that PowerBasic is a fine launchpad for something that can go way beyond that which was ever envisioned for the parent.  It really surpasses what most users might expect from their product. 

Charles Pegge

In the software ecosystem, Powerbasic comes fairly low down, a sort of C with built in dynamic strings. Not very flexible but small and highly efficient, it can support a wide range of higher level software including ThinBasic. XML languages come near the top of the ecosystem.

I think many of us here grew up with BASIC from era of the home computer, before the PC came along, which itself had a very feeble implementation of BASIC. Microsift could have chosen to enhance its mBASIC compiler and base Windows on that rather than adopt C++. Our software habitat would have taken on a very different flavour - with a more accessible infrastructure, and far less battling with strings and memory management.

Perhaps it was that famous comment by Djikstra which decided it:
It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.

Which of course cannot be said of contemporary BASICs or indeed of any language which supports block structures.

José Roca


There are CDs and printed manuals available.

I could be using whatever language I would like, but I don't like "drag and drop" style programming. I prefer to do research and I mostly use the console compiler, excepting when I need a GUI.

To me, to start learning programming with a very high level language is like if in the school they will say: You don't need to learn how to add, subtract, multiply or divide, just learn how to use a calculator.

If you have high level languages it is because low level programmers make them. VB was a success thanks to C programmers that made ActiveX controls for it. Too high level languages don't make good programmers, just code hunters surfing the web in search of a piece of code that they can cut and paste in their application.

Theo Gottwald

Thats a wise word, Jose.
I can recommend anyone who has children, to let them learn the Trachtenberg Speed-Math System.
If you still need a calculator to get a Squareroot, this is your way to go.

I have selected some books on this subject, here:
Theo's selected Books

While you can see some of the Basic principles here:
Trachtenberg Speed-Math

People beeing trained in this system can calculate nearly anything in their head, faster then you can type it in a calculator. And of course such abilities have a very good influence on the later life of children, trained in speed-math.

Kent Sarikaya

Very wise words all and true I am seeing. I guess my wanderings have brought me to the point where I like and respect the benefits of both ways, low level and high level.

Petr and Mike are already doing this and I hope too soon, that is develop our tools in powerBasic to bring higher level elements to thinBasic for game/2D/3D development.

What would the world have been like if Basic back then was where it is today and if Microsoft had used it? That is really interesting Charles. I also like your description of powerBasic, it sure seems like a perfect description.

Thanks for the links Theo.

Donald, you are right about games, but in a sense life is like that. All of our lives have the same basic elements like a game, but with the things that make up the details our lives are quite different. And so games are like that too. That is what is so appealing about them, playing and making.

I don't know if any of you had the pleasure of trying out Virtual Simulators, that is total submersion with gloves and helmet displays, but I have had the chance twice. The first with vector graphics, just wireframe 3D world, but it was really cool. Even with very low level primitive graphics the experience of being totally surrounded in this virtual space was indescribable. Then a couple of years later I got to try a multi-person Doom level graphics type Virtual Simulator, four of you fight giant spiders in a 3d world. It was just incredible. I was just walking around in a daze at how cool it was-- getting killed left and right, and by the time I got a sense of the wonder of the space and was ready to get into the game to fight the spiders the simulator time had ended.

If you research on the web, those systems are still being developed, but laying very low. I think they are waiting to get the technology to a really consumer level pricing and then bring a new wave of excitement to the consumer world. I for one can't wait.

The future is drag and drop and tweaking for such development. I already mod maps in some of my favorite games and even with the power of their level editors of drag and drop, it is very time consuming work, making the new models, textures, sounds, music, and then laying out triggers.

Nice that with powerBasic and thinBasic we will be able to do both.

It would be great if some of you guys would join us in development at thinBasic with your powerBasic skills. There is lots to develop and it is fun stuff to work on!!

Donald Darden

It's an interesting question, about the increasing blur between our physical lives and virtual experiences.  Even the government recognizes that there may be value, taxable value at that, in virtual space.  I wouldn't mind paying my taxes in virtual dollars, but I don't think it will ever go that far.

Still, we can see signs of people everywhere trying to escape the mundane and the unpleasant aspects of their lives, either by drug-enduced altered states, or through contact with visual, audio, and tactical stimulations given us by various technological deployments.  People who now stay tuned in incessantly to their favorate music, or constantly in touch via cell phone, or always playing some game via a gameboy, phone, or PC.  The rapid advances in what can be done with technology increasingly makes some people techno junkies - before they can completely tire of one technology, another is there to capture their interest and money.

As we increasingly learn of how the mind ticks and how to interface with it, we will see exploits of that knowledge.  Already we see where people are learning to adjust their brain patterns, without really knowing if this is beneficial or not, and to control devices that are linked to us and which can monitor our mind, nerve pulses, or muscle contractions.

While some of this holds promise for those that are somehow disabled and need help, there seems to always be a dark side to how technology is deployed.  The original vision of television is that it could be used for the public benefit, but the real driving force turned out to be in using it to promote and sell products, and the bait was in its entertainment value.  Unfortunately, what entertains most is that which tends to horrify of fascinate us, or appeal to our baser nature.

In a way, it seems like reality is slipping, or losing its grip in the face of this virtual onslaught.  Perhaps our goal is to enter a perpetual dream state, where we have it all, and avoid ever having to deal with the unpleasant things of life.
Perhaps we will turn to virtual relationships in place of real ones, and we pursue (or are pursued) by the icons of beauty and attractiveness that exist in our culture.  Already we see some people so caught up in one form of virtual reality or another to the point where they cease to go to classes or to work, live on junk food, hardly sleep, and withdraw from the real world as much as possible.

I've wondered how much I want to be a part of that.  I play a lot of Free Cell when idle, a way of marking time I guess, and it frees my mind from constant boredom, but I sometimes wake up in the morning with the cards being played out in my head.  At least it is better than the days when I played Doom II, and woke up with gory images in my head in sort of a flashback.  I became aware that the mind cannot readily distinguish between what is real and what isn't, and the residue mental effect from a real or virtual experience can be pretty much the same.  The military uses this effect to accustom soldiers to the idea of killing, by various forms of simulators that are increasingly realistic in nature.

It's the same effect that takes place in our children when we constantly expose them to violence in movies, on tv, and to video games.  It is a very real effect, and obviously it is capable of having a lasting effect on them, and on society as a whole.

So I decided I was not interested in pushing that technology myself, and this taint is possibly my reason for not really going the gaming route or getting into computer graphics very much.

Frederick J. Harris

Too high level languages don't make good programmers, just code hunters surfing the web in search of a piece of code that they can cut and paste in their application.

That's exactly why I didn't get too far into the .NET thing.  When that first came out I bought several books (Petzold, Belana, etc) and studied up on it for several months.  Then I started to try to apply it to simple projects.  I never feel like I've mastered a programming language until I've spent about a year with it 'in the bits' on a major project.  What I found I was doing with it was spending countless hours searching help forums for ways to do various things, or searching hundreds of megabytes of MS documentation on a particular class.  Then a couple of things 'dawned' on me. 

First, I wasn't writting any code.  And that's what I like to do.  I was spending all my time connecting dots...

Second, and even potentially more serious, I realized that before I really mastered that huge mass of material and documentation, it would be 'depricated', and most of what I had put a couple years into learning would be close to useless.  I find this latter issue really scary, and havn't really come to terms with it.

Where I work nobody really cares what tools I use to do what I do, so I decided to use the tools that make me happy, ie., give me satisfaction.  So since I like low level stuff where I'm in total control of everything, I use PB or C.

Your comments about virtual reality and online community are interesting Donald.  I'm still trying to figure that out myself.