2017-07-19 21:58:10

Hi, I probably overlooked it, but isn't it possible to access databases with BGT, specifically SQL lite?

Thanks,

TJ Breitenfeldt

2017-07-19 23:58:57

Hi,
nope, it isn't, at least not by default. That's one of the limitations BGT has to offer, even it's shared library communication interface is rather limited, which makes it quite hard to develop an interface to a shared library (dll) which supports SQLite or most other stuff. That's one of the reasons BGT is only usable for the really simple Audio Games possible, using it for projects like the Magic The Gathering Engine or something else would be much to inefficient. If you really need to use databases, you can try and look if you can find a dll which matches the criteria (e.g. doesn't need any function pointers to work properly) and implement an API in BGT yourself, or you switch to another language.
If it's just for the purpose of trying out BGT, just forget about using databases, lol.
BGT has an alternative, dictionaries, which can be serialized. They aren't comparable to databases regarding speed, but that is one of the only options you got. You can also implement some simple interface to ini files using the Windows API, but that's almost everything you can get using BGT.
Best Regards.
Hijacker

2017-07-20 16:24:58

hi
or, you can make a php script that could send to the bgt the data base stuff

2017-07-20 18:26:36

Try using the sqlite DLL.  Heard it works but haven't had the chance to try it out myself

2017-07-20 22:34:00

hello,
sqlite dll uses function pointers which bgt doesnt support in its limited library stuff

2017-07-21 08:20:28

Oh well, thank you for the replies. I think I figured out a solution to my problem. I was going to use java, but I was trying to find an accessible output library, finally found one for java that supports jaws, NVDA, and other windows screen readers. BGT was just the fallback if I couldn't find the libraries I needed, but looks like I found what I needed. It would be nice to have voice over support, but I will worry about that later.

Just so people know, there is a library called tolk, that seems to work pretty well so far, that has support for a number of different languages.

Back on topic, java should be able to give me everything I need now.

2017-07-22 17:27:25

@visualstudio
There's actually a hidden function (string string_create_from_pointer(uint, uint size=0)) that might help.

2017-07-22 23:28:00

I find it very amusing that people are still trying to do things in BGT that we all know it can't do. Like accessing SQL databases, for instance. What are we going to try next -- creating full-fledged web servers and programming languages? Come on, guys -- if you want to make something that uses databases and other things like that, don't go for BGT first -- it's not going to get you very far, if it all. I'd recommend you break away from BGT altogether, but many people have tried before me and you all still use it. Let's just hope this doesn't turn into a religion of sorts. Oh well, I'm not trying to be a priest with this, but it's starting to get very irritating. big_smile

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.
My Github

2017-07-23 04:02:58 (edited by visualstudio 2017-07-23 04:03:35)

@cartertem, it again doesnt work, because how can you get the size of pointer? bgt doesnt have sizeof(), or eaven some pointers are dynamicly allocated!, and, you should be aible to pass callback from bgt to the function that you are calling!

2017-07-23 04:06:21 (edited by cartertemm 2017-07-23 04:07:14)

@ethin
Yes, BGT is outdated. Yes, there are some things BGT can't do. Yes, BGT was created as a (gaming toolkit), hints the name. But some people, including me, enjoy the challenge of doing stuff, just like this. The moment someone tells me something *can't* be done, its time to get coding and see what I can pull off. Its hacking, and you'd be surprised what can be done. Its a mindSet. I know some people might not agree with me here, and prefer a more streight and upfront way of completeing an objective, but trust me, its not just here. Have you seen game console hacks? They're performed with rufly the same idea in mind.

2017-07-24 00:58:35

@cartertemm, I get that, but we're talking about things that are definitely within the realm of impossibility when trying to do advanced things the toolkit is not equipped to do. In order to access an SQL database, you'd literally have to write your own DLL from scratch as a wrapper around sqlite3.dll, which requires you to write in a language other than BGT. I get that hacking is a mindset, and that's fine. But things like console hacking are done in languages that are far more equipped for things like this, not languages that are only meant for, and only have the ability to, make games.

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.
My Github

2017-07-24 03:52:36

@visualstudio
BGT will get the size if you pass 0.
@ethin
Lol, I know it works, so I guess its a matter of examining, and possibly redefining your view into the realm of possibility.