Blender and 'Steam!'

hey guys i was wondering is it possible to publish a game im making totally in the blender game engine into steam and sell it i was wondering if ther is special code i have to implement or anything?

Looked around, but I couldn’t find any particular information on how to publish for them. I don’t know - I would assume that they have a code scripting framework available to publishers for things like achievements and such. They could have these frameworks in multiple languages (like Python, for the BGE), but I doubt it. Even if they only have them in C++, I think there’s a way to pass info between the two languages (via a C++ wrapper or something like that). Anyway, I wouldn’t worry about it until your game’s absolutely finished, and if it’s pretty high quality.

I use Steam a lot (as gamer not developer) and wondered this myself. You would without doubt need to have a knowledge of C/C++ in order to support Steam features. As said by SolarLune, it might be possible to wrap the required Steam code in Python or create a Python interface to the C/C++ libraries.

I’m not sure how Valve would respond to this though. They might welcome a Python wrapper/interface, but they will most likely demand professional standards. You’d really have to ask their technical support to find out your options. Such Python support may well be available already, they seem to be pretty forward-thinking.

It’s a big plus that Python plays very well with C/C++. :smiley:

It is, indeed, good that Python goes with C well - otherwise, we’d have a pretty closed game engine on our hands. Being able to mess with the source in C or plug in external Python or even C code modules helps to give the BGE some capabilities to work with.

ok i think ill just publish it my self, i just thought it would be good because so many people use steam and its a great way to get your game out ther and it allready has a platform to sell it but i guess minecraft did pretty good by self publishing it i think ill just stick with that and besides i have no clue how to program c++ and python thats way i use blender. “Logic Bricks!” thanks guys for the help

Maybe you can make an executable that runs the blenderplayer+your blend. And into this exe you can build the steam things.
It is easy to make a protection in your .blend, so the player can’t run it only via your exe. (For example: you exe creates a file and you check this file in your blend.)

Don’t mind the crackers. Crackers crack everything, steam things too.

abc makes a good point. People are very up-in-arms about security, but no matter how many protections, passwords, and locks you put on your games, they will be pirated. That’s just the way it is - I’m positive that the most expensive piece of commercial software out there like 3DS Max gets put up on FrostWire or some other P2P software before it’s even released, CD Key and all. What can they do about it? They try to lock down software more and more, requiring you to be connected to the Internet to register your software or things like that, but the hackers will find a way around it.

EDIT: So don’t be too worried about security when you publish your game - just make it worth purchasing, and some people will. Of course, if you make it free, then nobody would pirate your software.

SolarLune yes. There is many AAA games that have no content protection. For example the big Gears of War is a good example: you can load the levels into the inculded Unreal Editor (pc version). Or the Crysis: editor is included, you can modify the levels. :slight_smile: This is very good way to learn too.

Crackers and Steam: after the publishing day you can find everything on the net, cracked…

Unfortunately, you can also find cracked versions before the release date too. Amnesia: The Dark Descent by Frictional Games got uploaded before release due to a corrupt reviewer and this reduced their initial sales figures. They thought they would have to quit games development and get “real jobs”.

Fortunately for Frictional, they have a unique and excellent game. They are doing well with post-release sales and have made enough money from Amnesia to take their developments forward, expand their creativity and make the next game that they have planned. :slight_smile:

Frictional Games blog for the full story and future developments. Also some really good posts about gaming philosophy and the nature of “fun” in a “good” game versus giving the player an immersive and rewarding experience.

Or just make a console-only release, that forces everyone to buy it.

I don’t think console releases are possible with the BGE, but that would work… Kind of. One can, actually, make illegal (or legal) dumps of even modern games (XBOX 360, Wii, PS3) with the proper equipment and distribute them on the Internet. This is basically the equivalent for consoles of cracking the download or disc PC release.

You simply rip the image. You can’t use a copied disk with the system but you can run it through an emulator (but not well). I found a job post for “Steam release engineer” http://bit7.org/quake/mirrors/valve/job-steamreleaseengineer.html “Required Qualifications 3+ years experience in build or test management for large software projects Working knowledge and experience in software development and related technologies (e.g. C++/Python/SQL) required” Python… sounds good

Yeah, that’s what I was saying - actually, it is possible to use copied disks with the system, if you do it right (at least, with Wii). I’m sure that it’s probably possible with the other major platforms as well - it’s been possible with the DS for quite some time now. I think that it would be best to just not worry too much about pirated software…

Here you can find some info on publishing through steam http://www.steampowered.com/steamworks/FAQ.php

ya i read that but i dont know if any of its possible threw blender.

Nothing on that page sounded game engine specific, so it should be able to make the leap to Steam efficiently and without pain. It seems like Steam’s pretty easy-going, except that Valve doesn’t appear to tell you what language the SDK is available in.

I can only hazard a guess and my guess would be that it is possible but not necessarily easy especially for C++ challenged folks like myself.

The best way to find out is to make a quality game(I won’t hold my breath) and submit it to steam then if they accept see how it all works.

Here is some more technical info on steam and its SDK https://partner.steamgames.com/

“4. What language is the Steamworks API available in? The Steamworks API is written in C++.”

Ah, ok. It shouldn’t be a problem to implement it with a BGE game. Now the only issue is making a high-enough quality game…