Steamworks and Max

Miscellaneous Forums/General Discussion/Steamworks and Max

Hi all,

I want to add achievements to Bullet Candy, as every other new game released on Steam seems to have them, and it gives me an excuse to relaunch the game and continue to be able to eat etc.

the thing is that the api is in C++, and while i have a basic knowledge of the language, i have no idea how to get the two languages to operate. There's a DLL, a lib file and a .h file that i assume i will have to 'wrap', but i haven't the slightest idea how.

so, is there anyone who has already done this for blitzmax? How would i wrap it? the docs don't seem to cover this

Cheers
Charlie

Well, you can call C, C++, Objective C, and assembler in BlitzMax. Look in the docs under Advanced Topics. Obviously you can use .dll's as well. Have a look here:

http://www.blitzmax.com/Community/posts.php?topic=75763

jkrankie

Simon Armstrong may be able to help you here - he recently wrapped the Steam api for Blitz3d (for Tank Universal).

If you talk nicely to him, he may give you some pointers.

(Congrats on getting BC on Steam by the way)

Ok, so i include the dll with LoadLibrarya (which seems to be undocumented), so what do the .h and .lib files do? they apparently need to be there going by what the api docs say.

Cheers
Charlie

Mad Jack ,i sent you an email.

Cheers
Charlie

Ok, so i include the dll with LoadLibrarya (which seems to be undocumented)
It *is* documented, but it's a Windows API call, not a BMax function so you have to look in the correct place...

http://msdn.microsoft.com/en-us/library/ms684175.aspx

;op


There are quite a few threads concerning wrapping DLLs (and maybe the odd tutorial?) on the forums, do a search.

there are a few threads on the subject, but none seem to be in a 'for dummies' style, and i still can't figure out what's going on.

Cheers
Charlie

I may have some free time this week if you need someone to take a look at it for you. I wrapped TrueVision3D and HGE, so if the API is reasonably straightforward, I might be some help. Send me an email if you're interested. At the very least I should be able to get you started by wrapping a few functions as examples.