Selling your game source code - experience, ideas, and advice?

So, with my current project, I’m beyond the point that I can safely say with confidence, “I have enough stuff done to be able to release a game.” Further, some of what I’ve been working on even addresses some questions that have been asked here in General!

One thing I was considering was, after release and stabilizing my game for the masses, selling my game’s source here through the Asset Store. I’ve noticed a few full projects that have been submitted there, so it’s obviously not out of the question.

For those who have sold a full projects’ source code, especially on the Unity Asset Store, do you have any experiences worth conveying to a newcomer like myself? For everyone, what advice and ideas would you have for someone - like me - who is considering selling their games’ source?

I’m not a game-sourcecode-seller but I’ll give you my opinion. If you put the sourcecode up, I presume it will be complete with all the assets and so someone could build the whole game and sell it? Based on their license freedom I presume that means they can sell your exact game in the same channels you sell it? So it would not be very wise business sense IF you plan to continue making money from the game itself to allow others to basically take it and sell it as their own. But I guess it depends if your game is doing well. If it’s doing well, it’s a game worth having the sourcecode to, but then you are inviting disaster. If it’s not doing well, it’s not worth having the sourcecode for. So I don’t see a good reason to do it? Unless you feel it won’t impact your game sales negatively somehow.

1 Like

You want to make it more generic so instead of selling lets say a complete turret defense game, you make a turret defense kit generic enough that anyone who wanted to make a TD could use it for there purposes and the higher quality the better.

Yeah, I think a kit would be better. Not only would it prevent people from reselling your exact game, but it would also be more organized. I can just imagine if I tried to sell the spaghetti that is my game (then again, I may not be the best example).

And you are going to sell more units, because the more niche it the less people that will want it. I was talking about a roguelike kit earlier today,instead selling a binding of issac kit(top down shooter) you would want to make it generic so that someone who wanted to make delvers drop (action rpg) or Paranautical Activity(FPS) could use it. You would then use your kit to make a game to showcase what it could do to try and help sales.

There’s reasons to release a game and not a kit.

  1. If you already have the game then its a lot less work to provide some doco and additional comments vs making it a generic kit.

  2. I’m pretty confident there is a market for games as opposed to kits. People want to see how things are done in the real world. Kits rarely have the level of polish of a released game and they don’t need to address all those “little things” that take a game from 95% to 100%.

  3. Less support. Although you can help people modify if you choose, your obligations are reduced.

I’m planning on pushing out a few of my games that have stopped selling (or never sold) as asset store games. I haven’t done it yet (actually I submitted one a few weeks ago, but it had issues in 4.x that need to be fixed … was created in 3.5) but here is what I plan to do:

  1. Clean up some spagehetti code, but only the worst of it.

  2. Add comments to a reasonable level.

  3. Simple getting started doco.

  4. Make it very clear in the description that this is a GAME and not a KIT.

I think if unity actually had a sub-category in the “complete projects” category called complete projects had some moderation where didnt allow kits in the sub-categor. Or if they had broke complete projects into 2 categories starter kits and complete projects then not only would complete projects sell better, there would probably be more of them.

Sell it as a kit that comes with a working demo. I’m not interested in purchasing someone else’s game, cart-blanche (however that’s spelt).

Gigi.

But using a complete game as a kit, saves a lot more time, because you already have the stages, just change textures, characters, sounds, or add new functionality or whatever.
Basically you already have a nice view of what you can achieve, instead of a kit where enemies are cubes, no animations, sound effects or anything.

Another idea is to make a tutorial out of it, but that’s probably a large project in itself. Like burgzerg hacknslash or something. But you could do a-z building of “typeofgame” and draw from a larger group. Maybe charge $20 for the game source or they follow along in videos and write it piece by piece.

Source code is not profitable or sustaining endeavor. It seems like one of the things you’d do because you like to share code.

I’ve ran into problems with poorly commented code, code stolen from free tutorials, (L)GPL’d code, randomly commented out code, and in some cases, I’ve had to re-do the developers’ code to get it to run algother. I suspect much of it was a scam to get ongoing support and updates.

Before buying any source code, one should ask to see a code snippet, to see their commenting style, naming conventions, etc. And also ask them if they are using any code from open source projects.

Unless people are planning to make a direct clone, the full game is less useful than the kit. That’s because full games, that aren’t based on kits, tend to be rather locked into the way they do things. If the buyer wants to change something, it could be a ton of work. And they don’t have any clue what the code looks like beforehand, so they have to assume it’s messy.

A kit, on the other hand, should abstract away things for the buyer/user and make it easy for them to integrate into their own code, and with other kits. Any kit that fails to do this will get reviews stating as such, so you can be fairly confident you’re getting good code that way.

If you are selling the sources, do consider going to market and make a commercial game.

Usually if you want to get employed in a game studio they would like to see evidences of a shipped game you made, or works you did/done. This would be a good idea if you polish-up your game to acceptable level that people can play and enjoy.

Practically, in packaging and creating your game you can’t use any other paid or free assets out of the Unity Asset Store. Once you do that I don’t see why you’d care if others publish your game. I take it for your interest in selling your game as an asset rather than publishing as a game you don’t think even if you enjoy thoroughly playing it yourself that you feel it has much chance to be noticed in the sales channels. The biggest interest will be whether the art assets are good enough to create interest because most of the rest of the game logic is COTS unless you have a original take with I haven’t seen yet.

I think people might be interested in buying your game, take temple run for example, you make a cheap and timely release it will simply make money – pump and dump, or a slender game when it was hot. Clone a game when its “hot” and you can practically print money.

There are only a few kits in the store that are currently able to do that, you take a little bit of capital reinvest in some new art and throw it out into the wild, but there is quick and easy way to make a few grand. The more time they have to spend developing it or spending on art the more risky it becomes, its kind of like buying a lottery ticket – I thought there would be more of a gold rush thing – especially in this economy. But I guess it costs money to make money.

From my experience and past history with other developers and studios, don’t ever do it. Your source code is very important in its raw form, especially if you have developed something that is very unique or efficient or effective.

The only time “source code” is sold is usually in regards to a license deal, where a studio B wants to use a game engine written by studio A, but needs to be able to alter the underlining engine code for their purposes.

When studios DO release their source code they usually do not charge for it, but also do not include ANY assets with it. It will compile and create an .exe that will run but will crash as soon as it tries to load assets that do not exist UNLESS you actually do own the game. This is how some people have been able to mod existing games in the past.

A relatively big studio just released the source code to a AAA game just last month too, can’t remember it though. Its a good way to look at AAA code and get ideas and see how they set stuff up too for amateurs to intermediates.

I believe that before you can put your asset onto the unity store, it has to require no assets for sale on the store, except for obvious addons for one product like RetinaPro for NGUI. I’m not positive that’s true, but I believe it is. That could be a problem for you.

You also might consider just pulling out the parts that you are particularly proud of and publishing them separately instead.

Aside from that, I’d say unless your game is wildly successful, go for it. You might have a license that requires that they acknowledge that it’s based partly on your work in the credits and that at least 20% of the assets need to be different or something like that just to prevent someone releasing the same game again. Worst case you might get a little cash and be able to point at the credits in some other games when you go job-hunting.

I’ve now bought 2 complete games, not because I was going to use them verbatim (one isn’t even the same genre that I’m working on), but I wanted to see how they were doing one or two things so I could steal code snippets.

Indeed, because I’m using some trees bought for $5, and the Tidy Tile Pack #1 ($25, and well worth it). For building a Sidescrolling Swordfighter Starter Kit - I’m reading that as the best option from the responses so far - I’ll be building my own 3D tiles. When I get to that point, that is; I have to actually ship my project first.

Good discussion, please, keep it going :slight_smile: