Selling Modules: Is there any point?

BlitzMax Forums/BlitzMax Programming/Selling Modules: Is there any point?

Oddball(Posted 2006) [#1]
I've written a simple 2D physics module for use in my own projects. It's very stable, and adaptable to many uses. My question is though would it be worth my while releasing the module as a stand alone product itself? From what I can tell most people who have tried selling modules have found it far from profitable and even a lot of the free mods aren't very popular. Any thoughts would be welcome.


Grey Alien(Posted 2006) [#2]
I originally thought the same (and it may well still be true for most modules). But my BlitzMax Game Framework (not actually compiled as a module, it's just source code) has proven very popular and thus was worth me putting in the hours to write docs, package it, advertise it (on the forums) and answer support queries. But if you don't see yourself selling many then all that work would be a pain in the arse. Why don't you do some market research i.e. find out who would be interested by listing its features and showing a demo off?


Armitage 1982(Posted 2006) [#3]
Have you ever think about releasing your 2D physics module openly with a particular type of licence. Free to try / Fee for commercial use ?
I really enjoy when you can try stuff and often donate when there is support. An open source system which protect your work and still let the community tweak and update your work is more valuable than a finished product !
It's all depends on quality. Any demos or features list ?


AlexO(Posted 2006) [#4]
I'd like to see a demo or feature list, as its something I'm interested in :o. Wrote a couple physics modules/engines myself (one for bmax) but its not completely stable and a few quirks in it. But if someone came along and released a well-designed (and documented), efficient, and stable physics module I'd definitely look into it as I'm sure others would too as physics is one of the more difficult parts of game development.


The Caffeine Kid(Posted 2006) [#5]
Perhaps it would be better to have a number of different licences for it such as freeware, shareware, commercial.

People could then play with it for free but if they wanted support or to use it in a shareware/commercial title then would have to upgrade to a different licence.

You could get it out there to the people, and anyone who needed it for their work or had problems would come to you with their money. ;)


Oddball(Posted 2006) [#6]
The module is still a work in progress so there are no wow factor demos and I'm reluctant to release anything until it's done. The feature list is far from complete. Currently though it's a verlet integration based fixed time step physics simulator with soft and rigid bodies and full friction simulation.


Oddball(Posted 2006) [#7]
Here's a little example knocked up from some test code I'm currently using. It far from shows the engines full potential though. Example01.exe


Winni(Posted 2006) [#8]
Hi Oddball,

Is there a chance to get a Mac version of it? To be honest, I don't care for Windows at all and bought BlitzMax because it is a nice programming language for the Mac.

Or, to put it in other words: If you want to sell a BlitzMax module, make sure it runs on all three supported platforms, not just on one of them. BlitzMax is about platform independency, it's not just another Basic compiler for Windows.

Geet, I'm tired and grumpy. Time to get out of this office. :-o
Ciao,
El Winni


Oddball(Posted 2006) [#9]
If you want to sell a BlitzMax module, make sure it runs on all three supported platforms
There's no reason I can see why it wouldn't be compilable on a mac, or linux for that matter. It's all Blitz Max code. Unfortunately though I don't have a mac so couldn't do it myself. If I did decide to sell it though there'd definately be a mac and linux version.


popcade(Posted 2006) [#10]
I like Grey Alien's way of framework, you can plug in and start immediately.

Include is a better way for native codes, I don't mind modules, but I've got many broken modules when the author stopped developing it.


Oddball(Posted 2006) [#11]
Include is a better way for native codes, I don't mind modules, but I've got many broken modules when the author stopped developing it.
It's a good point. Maybe two versions one with just the precompiled mod and the other includes the source?


popcade(Posted 2006) [#12]
Lite version contains no source, and cheaper, or for evaluation.
You can pay more and get the Pro Version with source.

That's what the TV3D module does, those who need source should be willing to purchase.


smilertoo(Posted 2006) [#13]
I'd pay a reasonable price for a good bmax collision system.


H&K(Posted 2006) [#14]
There is no point giving any licence other than one identical to the Bmax one. Cos it will just get ignored anyway.


Torrente(Posted 2006) [#15]
I liked that demo, can we see how much code it took to produce that?


Oddball(Posted 2006) [#16]
I'd pay a reasonable price for a good bmax collision system.
My physics lib actually uses an optimized version of my collision code in the archive.

I liked that demo, can we see how much code it took to produce that?
As mentioned above it was just some test code so it's probably not the best showcase for the syntax.



JoshK(Posted 2006) [#17]
I think until BlitzMax becomes more widely known, most of its users will be tinkerers, and there won't be much of a market for third-party libraries.


Oddball(Posted 2006) [#18]
I think until BlitzMax becomes more widely known, most of its users will be tinkerers, and there won't be much of a market for third-party libraries
This was my initial thought. Without the wide spread user base like Blitz3D or Dark Basic then potential custom will be limited from the start. Grey Alien's comments are encouraging but a physics mod may be too niche in an already small market.

Thanks for everyones comments so far. Keep 'em coming.


cloned(Posted 2006) [#19]
you should release a free version that is limited to freeware apps and games and no access to support forums or anything

the version for pay should give the users the right to use it as they please except reselling it and the source

so they can modify it if they please


Torrente(Posted 2006) [#20]
That's not too much code for a demo like that, very impressive indeed. Just one more question: What parameters do you pass into the Physics() function?


skn3(Posted 2006) [#21]
Well is it ready to role now.. this physics module ?

If so, and you dont want to sell it.. Id suggest releasing it open source / public domain.

It would benifit the community whichever you decide to do. at a cost, or for free.

What method are you using for physics ?


popcade(Posted 2006) [#22]
Sswift is also selling his sprite module, also pretty good, I think you can take reference on his method and price range.


Russell(Posted 2006) [#23]
Nice demo, Oddball! If the feature list is reasonable, I'd be willing to pay around $25US for this, as long as it has excellent docs, support (don't let it die a quick death...) and plenty of example code.

I've like SSwift's sprite lib, too, but it runs too slowly on my gfx system (probably my gfx card). Your example, on the other hand, runs perfectly!

Anyway, let us know what you figure out.

Russell

p.s. SSwift, no offense to your lib, it's my gfx card, I'm sure. I really like what it does. Can it be tweaked somehow to speed it up?


Jake L.(Posted 2006) [#24]
I would pay for this. How much depends on the package and it's features. Will we get a Shape-editor? How much additional coding is required to achieve effects I want? Will we get the sources?

E.g. I bought ParticleCandy ages ago. It worked perfectly but I ran into many situations where I needed to check the source and change something. And it was great to have the opportunity to do so. Without sources you're always forced to use it the way the author wanted.
So getting the source is a major argument to buy something (at least for me) and I would pay twice as much as for a package without source. Another benefit of this: if for some reason the author stops support, I can add features/solve bugs by myself.

Jake


Grey Alien(Posted 2006) [#25]
Include is a better way for native codes

Yeah I prefer seeing and tinkering with the code than with precompiled modules also, which is why I released the framework like it. Anyway glad you like it.


Oddball(Posted 2006) [#26]
What parameters do you pass into the Physics() function?
The first two are the size of the simulation area(800,800), the next is gravity(0.1), and the final one is the number of relaxation iterations(2).

What method are you using for physics
It's based on fixed time step verlet integration. It's not a strict verlet integration but it does retain all it's speed.

I've like SSwift's sprite lib, too, but it runs too slowly on my gfx system (probably my gfx card). Your example, on the other hand, runs perfectly!
And it's still got a lot more speed in it. It's still a work in progress so there are plenty of improvements to make.

Will we get a Shape-editor?
There isn't one yet but that's the plan. It'll probably be the last thing added though.

How much additional coding is required to achieve effects I want?
That's a little hard to answer. The mod has all the basic building blocks. How much additional is code needed depends on the complexity of the simulation. A simulation with ropes, pivots and moving parts takes more work than one without.


dmaz(Posted 2006) [#27]
I like modules... I don't understand why someone would choose a standard include or import over a module? Is it because people either don't know how or are afraid of installing them? I can't see a single downside of a module but 2 very nice upsides

-full intergration into help (if the author bbdocs his code)as in your press F1 and you get the function params. Press it again and you get the full web page

-it's own namespace

Anyway, I am looking for a good physics module ;) so if the price was right, I'd buy


Regular K(Posted 2006) [#28]
I'd be interested in purchasing a physics module, but it matters on how you sell it, since I lack the ability to purchase it with a credit card.


Gabriel(Posted 2006) [#29]
Include is a better way for native codes, I don't mind modules, but I've got many broken modules when the author stopped developing it.

I fail to see how this makes any difference. Modules can be supplied as source code, just the same as includes, and then get the benefits that dmaz mentions above as well.


Jake L.(Posted 2006) [#30]
That's a little hard to answer. The mod has all the basic building blocks. How much additional is code needed depends on the complexity of the simulation. A simulation with ropes, pivots and moving parts takes more work than one without.


Sure. What I wanted to say: sometimes (well, most times) I have to tweak or encapsulate code to make it work "naturally" (in my eyes). E.g. I dislike the way MaxGUI is intended to be used, so I wrapped it with some OOP code. This is just one reason why buying source is so valuable. That's a major bonus of BMax and it could be a major feature of your module.

Jake


popcade(Posted 2006) [#31]
For modules, it's inconvenient even you have source... you have to rebuild it when changed.... that's annoying.

And with every upgrade, many modules got borken.

Unless the module involves 3rd part C/C++ compiler, I can't see the need for mod.


Dreamora(Posted 2006) [#32]
Most modules aren't broken.

There are only 2 reasons for it: made before 1.18 (which module format is incompatible) or author is an ***** and put it into BRL or PUB modserver which are both for official mods only and not 3rd party mods.


Brucey(Posted 2006) [#33]
A niche-type module might make some money, but I wouldn't rely on it for stable income :-)

I just make modules cuz I find them useful myself (like giving up on trying to use FLTK on linux), but with the stuff I've been wrapping, it's not really something I imagine anyone would want to pay for anyways ;-)

And I try to make sure that any modules I make are WELL documented and have some tutorials or plenty of examples.

If you are going to release a module for public consumption, please document it... please...
Trying to use a module that has NO documentation other than the authors statement of "if you want to learn how to use it, look at the source code", is just a waste of time, generally, especially if you had to pay for it!

But I have had one donation so far, which is nice (and gives one a warm, fuzzy appreciated feeling inside) - considering it's all free, documented and supported ;-)

Although I have to admit that the fuzziest feeling came when BRL offered to host the modules on their mods server :-D


Diablo(Posted 2006) [#34]
Ya for modules.

But I have had one donation so far, which is nice (and gives one a warm, fuzzy appreciated feeling inside) - considering it's all free, documented and supported ;-)

Same here. If you give it for free and people like it then most good hearted people will donate.


Brucey(Posted 2006) [#35]
or author is an ***** and put it into BRL or PUB

Yeah, I don't know why people do that?

Surely it can't be that difficult to think up a "namespace" for your modules ? ;-)


Jake L.(Posted 2006) [#36]
For modules, it's inconvenient even you have source... you have to rebuild it when changed.... that's annoying.

Use an IDE that's worth its name, e.g. Blide. Doing so I see no difference in changing a plain bmx to changing a mod-bmx. I press F5 and everything (that need to) got compiled. It even speeds up compiling, cause a module got only compiled if something changed. It's a big speed hit to compile just a single file and skip most of the code by outsourcing them into modules. And this is just one advantage of modules...


Oddball(Posted 2006) [#37]
There seems to be a lot of conflicting opinions on the favoured method of intergrating an engine into a game. At the moment I use it as an include but I've made modules before and don't really mind which it finishes up as.

Still not convinced though that documenting, selling, and supporting a module would be worth my while. I have limited time to spare as it is, and sales and support take a considerable amount of time.


dmaz(Posted 2006) [#38]
if you want people to use it... documentation is key. It doesn’t have to be elaborate, just describe what the function is for and how it’s used. Also, maybe a couple of very simple examples… I try to do this even if I don’t plan on having other people look at the source since it’s reminds me how use it too.


Brendane(Posted 2006) [#39]
" or author is an ***** and put it into BRL or PUB"

"Yeah, I don't know why people do that?"

- PUB is short for public. What makes someone an ***** for putting modules in there? The name suggests that is where they are meant to go.


Dreamora(Posted 2006) [#40]
No its exactly not (although the original idea might have been something like this)

PUB is the namespace for the official modules that BRL did not write themself but which are still officially maintained and supported.
For this reason, already LUA was moved out as it is not officially supported through BRL.

Reason is quite simple, why not put it there: All modules within BRL and PUB are automatically imported unless framework is used. This behavior was added with 1.16 or 1.18 so at least from that point on, all 3rd party modules should NOT have been within PUB any further!

I've moved all modules out there from 3rd party (even precompiled, as anyone can change their modserver by simple find-replace on the .i files) as Eliza and others, which depend on DLL caused many errors with "reference not found" and the like.

So please people, get used to NOT put your 3rd party into PUB any further.
I would vote for a 3rd semi official modserver like private (thats what I've called my regular 3rd party modserver) or something similar.


errno!(Posted 2006) [#41]
Dude if I can make half a grand, just think what someone who is popular can make.

In short, yes it's worth it. Even if your products shit like Aurora :)