commercial distribution; c or max?

vynl's icon

i have a simple program i'd like to take to a commercially distributable form; i have it thoroughly prototyped out in max, i was planning on moving to c++ for the final compile to .exe but i've heard about companies like kenaxis and livid using max in their final distros....

1. are they (or anyone else) really doing it entirely outta max?

2. would it be better to do it out of one or the other?
(i know that's a question with a thousand variables; i've spent a couple years in both c++ and max/MSP, and it's a project that's some very simple DSP and JavaScript UserInterface stuff

any help, pointers, etc. in this ballpark would be appreciated at this point; i've spent significant amounts of time looking into this recently and right now every avenue seems daunting

Dan Nigrin's icon

All of the following are mine, and are just Max:

As you have found, Max is wonderful for rapid prototyping, but if you want a polished final app, that does not easily show its Max underpinnings, there is definitely work involved. Part of the answer to your 2nd question depends on the application, its complexity, your copy protection desires (or not), as well as your C coding skills. For me, this last aspect trumps everything, as my coding skills are not up to snuff for making a complex app in any reasonable timeframe. So I use Max, and spend the time to "polish" the app as best as I can.

vynl's icon

awesome. :)
i want to pick your brain now, but i'll keep it brief -
any preference for one version of Max over the other?
what do you use to bundle the final product into a single executable file with the install wizzard?

Peter Nyboer's icon

Yeah, I (livid) do it all in max, with a couple of small externals. I'm sure performance suffers, but I wouldn't be able to do it all in C.
I use the build standalone feature to make .app and .exe files, in conjunction with some automator and .bat files to help gather all the necessary parts.
If you have the time and capability, it would probably be better to make your application with lower level tools, but it is possible to proceed in Max if you don't!

Dan Nigrin's icon

Re: version of Max, considering I started well before Max 5 -- Max 5 gives way more user interface options and with "presentation" mode, takes a lot of the pain away that existed in older versions with respect to user interface. It's the only way to go now.

For installers - it's easier on the Mac, as you just bundle it all into an .app file that can be dragged to the Applications folder from a .dmg file.

For Windows, I use "NSIS", or Nullsuft Scriptable Install System. Powerful, configurable, and free:

Definitely a learning curve, but worth it.

vynl's icon

awesome; i'm stoked to hear it's possible outta max, that should save me a lot of time. i'll look into the automator and .bat stuff, as well as the NSIS. thanks guys

vynl's icon

progress!

i have a simple working beta version out of max5, it's run on every winXP machine i've tried it on so far with no problems so i'm pumped about the portability; thanks for the recommendations.

next question; is it possible to encrypt/protect my code? it looks like the mxf file is just sitting there for all to see. not an issue yet, but if i'm distributing something i've put effort into i'd like to make it a little harder than that for people to dig through my code.

or is that something NSIS would help with?

Dan Nigrin's icon

Take a look at this thread:

Bottom line - there is no "out of the box" solution to protect your code. There's a variety of ways that you can protect your app, but none is foolproof, and in some cases, not cheap either.

And to my knowledge, NSIS won't help with protecting your code - it's just for app installation.

vynl's icon

thanks again guys; i have a very simple version of it up and running. if anybody wants to try the beta, it's here:

(it's just a metronome that speeds up and slows down).