5 ms·
Yes, thank you. He is NOT using QBasic, it's QB64. He gets instant access to some pretty sweet functionality that was never in QBasic. Transparent PNG suppor
by dpcan 14y ago
Yes, thank you.
He is NOT using QBasic, it's QB64. He gets instant access to some pretty sweet functionality that was never in QBasic. Transparent PNG support, resolutions with more than 16 colors above 320x200, double buffering, TCP/IP, and the list goes on.
Regardless, this guy is getting some awesome press with the QBasic thing. If you want to make money with games, it's all about the marketing.
I'll give him a little more credit if he used that tiny dos-box blue editor that comes with QB64 to code the entire game tho :)
- fyi80 14y agoHe is running on a much stronger system (with respect to syscalls and hardware support), but it's basically the same language.
- zapdrive 14y agoYes, comparing it with the IBM's Guerillas game is like comparing apples to oranges.
- klipt 14y agoQB64 also has multidimensional arrays, functions, while loops, "user defined types" (structs) ... apart from the lack of pointers, it's not all that far from C or Pascal once you ignore the syntactic sugar. (Or as pg calls it, "Algol with a funny hat".) Not to downplay his achievement - I'm sure making the game was a lot of work either way ... but implementing it in Basic doesn't seem especially praiseworthy.
- shrughes 14y ago"Real" QBASIC has structs, maybe some of the other things.
- wvenable 14y agoYeah QBASIC has multidimensional arrays, functions, while loops, structs. But I agree with your point, QBASIC is pretty much like C or Pascal without pointers.
- doktrin 14y agoQBASIC allows for functions (as well as subroutines), looping (while, for, do-while), structs (type) as well as multidimensional arrays. That said, all I really remember from my QBASIC days is abusing the crap out of GOTO. Apparently QB64 can directly access C header files as well as Windows DLLs [1], although I don't think the author used any external modules. The source is described as being a solid monolithic block of 12k lines worth of BASIC, which in and of itself is fairly throwback-worthy. [1] http://en.wikipedia.org/wiki/QB64 http://en.wikipedia.org/wiki/QB64 edit : checked an old QBASIC manual to confirm whether or not multidimensional arrays (2+) were supported DIM cube(3,5,4)
- manfightdragon 14y agoHeya, yeah I don't use 3rd party libraries but the compiler hooks SDL to do the screen init work. If I get on Steam, I'll be able to use the DLL features to implement SteamWorks API
- manfightdragon 14y agoHey, guys! I'm the guy making this game! :D Yeah, I compile it in QB64 and use the SDL hooks in it to actually make it run on windows/mac/linux. But yeah, QBASIC has all those things you mentioned already. Also, yeah, I use the big ugly eye-burning white-on-blue screen. You can see a photo of the development box here: https://twitter.com/manfightdragon/status/319786194395357185 https://twitter.com/manfightdragon/status/319786194395357185
- kevingadd 14y agoI'm a little offended that you call this building a game in QBASIC when it clearly would not actually run in QBASIC. I built games in QBASIC growing up, and definitely didn't have access to the stuff you have in QB64. I was excited to hear about someone building such an impressive game using that toolchain, so it's a letdown to find out that it was a lie. It's cool that you put constraints on yourself by using the BASIC syntax, but it's really dishonest to pretend this is being built in classic QBASIC and leverage it for press without making any distinction between the tools you're using and the tools people actually had available to them in QBASIC. Quote from the PC World article, that is supposedly from you: "It would show that even old, abandoned tools and the most basic pieces of software can still be put in the hands of someone who wants to create their dream and result in beautiful things happening." This to me suggests that your goal is to show that actual QBASIC, the abandoned programming tool from the DOS era, can be used to build cool games. A noble goal. Using QB64 and SDL and a bunch of modern tools, however, does very little to achieve that goal. Maybe this is just nit-picking, but QBASIC is a very specific name - the name of a particular BASIC interpreter that came with versions of DOS. You could have easily been more general and said you were building the game in BASIC, and been completely accurate, but then I suppose that wouldn't have gotten you an article on PC World. And to give some context, I have in the past encountered people who were ACTUALLY building cool modern games in QBASIC. They did this by writing commands out to disk from their QBASIC game and then running windows apps to do the work of talking to libraries in order to do MIDI playback or read from game controllers. This, at least, counted as using QBASIC, and was quite a feat of engineering - even if those games weren't pure QBASIC. The game looks cool, though!
- 14y ago
- DanBC 14y ago> used that tiny dos-box blue editor that comes with QB64 to code the entire game tho :) And had a screen at an EGA text resolution of 80 x 25 chars with each character being in a box of 9x14 pixels. (With pixels means 'dots on the screen'.) And saved the result on 5 1⁄4-inch or 3 1⁄2-inch discs. And fiddled about with FOSSIL drivers and kermit or Xmodem or Ymodem and ProcommPlus to upload the game to a BBS. At 9600 baud. (I'm not taking anything away from the game! )