Jump to content
  • Advertisement
Sign in to follow this  
  • entry
  • comments
  • views

Open Source, Licensing, or In-House?

Sign in to follow this  


[size=7]What's the deal?

We've put a lot of work into the OPifex Engine over the last couple of years. It's a platform that we'll be continuing with for a long time.

Lately though we've gotten interest from others to use our engine. We've kept it in-house for now, but suggestions have been made to go open source or even to license it. What's the right direction to go with it?

(optional) More information on what the OPifex Engine consists of: http://teamopifex.com/opifex-engine-part-1/

[size=7]Why go Open Source?

We've poured hundreds of hours into this project... why give it away for free?

There are a lot of advantages for open source:

  • Code Quality

  • Community

  • Time

  • Bug Fixing / Catching

    There's a potential for thousands of like-minded developers to pour their time and expertise into the project. It could create a very solid solution with fewer bugs than we could ever hope to achieve with our small team.

    However, with so many developers sticking their hands into the pot, how do you steer the project in the correct direction while still being involved with the community around it? It would require careful monitoring of pull requests and code quality. Without careful planning, someone could easily steer the bus off the cliff.



    [size=7]License it!

    Another option would be to sell it off. If someone wants to use the engine, they simply pay a licensing fee. It would help us keep the lights on.


    How do you argue with making a little money on something you've put so much effort into?

    The biggest issue we would have is support. Managing a solution of this size with all of the bugs that could pop up for a larger client would take a lot of time and effort.

    Furthermore, would we even be a game studio anymore? We would end up spending more time supporting and improving the engine to compete against the competition than we would working on our own games. Is that really what we want to do? It's not the path we intended to take when we started.


    [size=7]The Hybrid Approach

    Why not do both? This is the approach a lot of software solutions have been taking lately.

    A hybrid approach would mean open sourcing the project but making money by alternative means. This could be through donation requests (like Ubuntu does) or through support licensing (like Umbraco). Even more business-like, we could take the approach where games that have a revenue over $100,000 have to pay a licensing fee.

    It's a "have your cake and eat it too" solution... though I feel like it can ride the line of exploiting the hard work of the community around the project.



    The final approach we could choose is to continue what we're doing. Keep it to ourselves. Spend our time making our own games with our own engine.

    The engine would only have the code we want in it, but development would continue at its current pace. Every new feature would add more potential bugs, giving us less time to work on our actual games... but the engine would grow with us instead of surpassing what we need.

    A lot of Indie Games.

    [size=7]What do you think?

    I'm looking for feedback before making a decision. It's a complicated process no matter which direction it's taken.

    Have any of you gone through this before? Did you have any luck with the path you took?


Sign in to follow this  


Recommended Comments

The "have your cake and eat it" approach is pure sleaze. Offhand I'd say keep it in-house. Less headaches for you, less cookie-cutter games for players. Maybe share a few little tools or modules...

Share this comment

Link to comment

I agree, of all of the options, the Hybrid approach is my least favorite. Lots of issues with legality, morality, financial, etc.



I like the idea of sharing tools / modules but I'm not sure how effective and/or helpful they would be. A majority of them are fairly directed at the engine itself. Though with some effort they could be generalized. Did you have any tools or modules in mind? Maybe tools like our exporter scripts for Blender / Gimp that could more easily be used elsewhere?

Share this comment

Link to comment

Yeah, Blender/Gimp scripts could be worth sharing, even just as an example.


Let's see what I have on github... heh, just this: https://github.com/tnovelli/imgpack

I wrote that 2-3 years ago, almost forgot about it.. a few people (including me) are finally using it.


Oh, and this web-based sound-fx generator that needs finishing. There are better ones but they require Flash.



Here's some great stuff (not mine) for C/C++ https://github.com/nothings/stb

Share this comment

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!