Posted: Wed Apr 19, 2006 10:12 pm
Now lets take an RPG Maker example. Say you wanted to make a 2D RPG maker.
You would have to write it from scratch as there is no "make game" function in PureBasic. You would have to write the code for loading levels, you would have to write the tile system, you would have to write the inventory system, spell system, dialog system, you would have to write the AI to handle what the NPCs do, you would have to write the interface to handle input and control from the user. You would have to write the particle system, system for displaying and scrolling maps.
You would have to write the editor so people could customize the game and and save their customizations, which would run off of the engine you create.
Here is an example of a scripting system done in PB:
http://www.purebasic.fr/english/viewtopic.php?t=20312
Here is a RPG Game Engine (written in PB) that uses that scripting system:
http://www.purebasic.fr/english/viewtop ... ht=#137304
The above is basicly a scriptable RPG Maker.
This is not in violation of the PB license and is not illegal. You are not bypassing anything or providing PB functions to unlicensed users.
PB has sprite commands, but they are useless unless you write the code that says where to display the sprite, where to move the sprite, what to do if a sprite collides with another sprite, etc.
If you made something like this, you could allow users to customize it, etc via a point and click editor like RPG Maker or via a scriptable system like this guy does.
What would BE in violation of the PB license, is if basically used PBs commands to write a DLL based 2D engine for other programming languages that would just open a DX window, and use PB functions to load and display the sprite and play sounds etc. This would be a simple wrap of PB's 2D functions. Now you could use that simple DLL wrap of the 2D functions for your own stuff using another language, but you could not make that simple DLL available to other programmers.
In the RPG Maker example I described and in the example I linked to, you are not just wrapping a couple of PB functions, you are writing an entire game engine, and this is allowed.
Any program of any type you make in PB will be using PB's functions. That is how programming languages work. Fred wants you to use the functions in the program you write, he just doesn't want you to do like in the 2D engine DLL example above and make a simple wrapper so other people can use PB's 2D functions in another programming language.
You would have to write it from scratch as there is no "make game" function in PureBasic. You would have to write the code for loading levels, you would have to write the tile system, you would have to write the inventory system, spell system, dialog system, you would have to write the AI to handle what the NPCs do, you would have to write the interface to handle input and control from the user. You would have to write the particle system, system for displaying and scrolling maps.
You would have to write the editor so people could customize the game and and save their customizations, which would run off of the engine you create.
Here is an example of a scripting system done in PB:
http://www.purebasic.fr/english/viewtopic.php?t=20312
Here is a RPG Game Engine (written in PB) that uses that scripting system:
http://www.purebasic.fr/english/viewtop ... ht=#137304
The above is basicly a scriptable RPG Maker.
This is not in violation of the PB license and is not illegal. You are not bypassing anything or providing PB functions to unlicensed users.
PB has sprite commands, but they are useless unless you write the code that says where to display the sprite, where to move the sprite, what to do if a sprite collides with another sprite, etc.
If you made something like this, you could allow users to customize it, etc via a point and click editor like RPG Maker or via a scriptable system like this guy does.
What would BE in violation of the PB license, is if basically used PBs commands to write a DLL based 2D engine for other programming languages that would just open a DX window, and use PB functions to load and display the sprite and play sounds etc. This would be a simple wrap of PB's 2D functions. Now you could use that simple DLL wrap of the 2D functions for your own stuff using another language, but you could not make that simple DLL available to other programmers.
In the RPG Maker example I described and in the example I linked to, you are not just wrapping a couple of PB functions, you are writing an entire game engine, and this is allowed.
Any program of any type you make in PB will be using PB's functions. That is how programming languages work. Fred wants you to use the functions in the program you write, he just doesn't want you to do like in the 2D engine DLL example above and make a simple wrapper so other people can use PB's 2D functions in another programming language.