Can I tell blitz3d to compile an external bb file?

Blitz3D Forums/Blitz3D Programming/Can I tell blitz3d to compile an external bb file?

dogzer(Posted 2009) [#1]
Can I make blitz3D run or compile .exe & run an external .bb file?


Rroff(Posted 2009) [#2]
You can use include "filename.bb" to add more than one source file to your project - but I'm not sure if thats what your asking.

If your wanting an already compiled project to then execute another .bb file at runtime then the short answer is no... the long answer would be you could write your own code processor but the user license for b3d forbids you just creating a wrapper for b3d code.


dogzer(Posted 2009) [#3]
what?? so i can't make a game maker with blitz3d? that's really bad!


Guy Fawkes(Posted 2009) [#4]
no. u cant. u would be required to know ASM if u want to make a game maker.


dogzer(Posted 2009) [#5]
*doublepost*


dogzer(Posted 2009) [#6]
damn ASM... always one step ahead of me

I wanted to create some sort of click'n'drag game maker, in wich you didn't have to type any code, but i could just run the code, i would never be able to compile it! :/


Rroff(Posted 2009) [#7]
You can't distribute a standalone project thats basically a wrapper for b3d.

You can create a point and click tool that people who already own b3d can use in conjunction with b3d to create game projects.

You could make your own game creation toolkit with its own scripting language aslong as its not just a wrapper for b3d functions.


Gabriel(Posted 2009) [#8]
no. u cant. u would be required to know ASM if u want to make a game maker.

Rubbish. You could make a game maker in just about any language, and ASM is one of the least likely languages to write it in. In fact, I can't think of a single game maker that *was* written in ASM.

You can't distribute a standalone project thats basically a wrapper for b3d.

Well actually, I guess you can, because someone already did. You can't do the same for BlitzMax though because the license was rewritten to prevent it.

Can I make blitz3D run or compile .exe & run an external .bb file?

More or less, yes. BriskVM does this.

http://www.koriolis-fx.com/


Rroff(Posted 2009) [#9]
I thought someone made a stand alone wrapper and were trying to sell it and were asked to cease and desist? or was that just a forum rumor?


Warner(Posted 2009) [#10]
Try using GameScript:
http://www.blitzbasic.com/Community/posts.php?topic=69531


Gabriel(Posted 2009) [#11]
I thought someone made a stand alone wrapper and were trying to sell it and were asked to cease and desist?

They made it, and they were selling it, but I'm not aware of them ever being asked to cease and desist. They're not still using B3D because they moved to something which uses DX9, but I was under the impression that they could not be stopped due to the license not expressly forbidding their use of B3D. This was around the time when BMax was launched and BlitzMax came with a different license which did expressly forbid it. I think the product in question was CoolBasic?


Ross C(Posted 2009) [#12]
Was that the guy that wrapped nearly every blitz3d command, using a scripting language, then sold the whole thing as a game maker? I'm sure someone did that, and the blitz3D people weren't too happy about it :)


dogzer(Posted 2009) [#13]
well, my idea wasn't grabbing blitz3d commands and wrapping them into an exact copy of blitz3d.. that'd be just wrong.. it was more like.. grabbing blitz3d commands.. and making a click'n'drag thing, you'd grab if statements, and connect it to conditions, y'know, using little arrow things, and you'd connect the result of that to some action.. it'd be a lot of fun! but i guess blitz3d people wouldn't like that, so that's how my project ends *cries*


Yasha(Posted 2009) [#14]
Don't give up so easily!

Many people have developed scripting languages, that let you write code in someone else's way to use with a Blitz3D engine. Now it'd be horrifically poor taste to build the scripting language around Blitz3D so that it simply mirrors it (as well as, from the perspective of an honest person who doesn't intend to pass Blitz3D off as their own work, completely pointless). However, if:

1) your scripting language is designed to help with a particular problem, rather than competing with Blitz3D directly (eg. GameScript, which you could use to tweak NPC AI or set up quests, but doesn't explicitly contain any 3D elements) this is considered perfectly OK and normal.

2) your program doesn't output complete EXE files that include the Blitz3D engine, but rather .bb source (that people must compile with their own copy) or its own special notation, it isn't actually distributing Blitz3D, and therefore there's nothing wrong with that - as long as you don't supply the program to run such generic scripts and let users buy Blitz3D and compile it themselves.

One thing that would probably not be a problem would be to create your click'n'drag program as an editor only, and distribute that - but have it output .bb files (or a .bb framework that reads its own output format) that compile and run on the end user's Blitz3D installation. There are plenty of level- and world-editor programs available on this very site, so clearly people don't mind that.

I mention scripting languages because that's what it sounds to me like you're describing; a scripting language with a very visual kind of source. It sounds like a fun idea, and it would be a pity to give up on it just because one of the many possible ways of doing this would be illegal/immoral. If it takes off or demonstrates its popularity, you could always come up with another solution to allow users to create games with it directly at a later date (eg. building a more complicated backend in C++) - but it's always better to prove the concept first and worry about commercial issues later.


Gabriel(Posted 2009) [#15]
but i guess blitz3d people wouldn't like that, so that's how my project ends *cries*

If you mean the Blitz3D developers, then they would have no cause for complaint with what you propose. If you mean Blitz3D users, perhaps they wouldn't be interested in a click and drag game tool but plenty of other people would be. Quest3D works this way. VirTools (used for so-called AAA games) works this way. Unity and Shiva share some similarities too. So plenty of people do like these kinds of tools, and will surely be interested in yours.