Okay, I am not using any 3rd party libs in my game, I was gonna use the coldet but went with blitz collisions instead, and for some reason when I exit the game compiled exe file on another machine instead of the credits I am getting userlib not found error message, and then exits to windows. On my machine it is displaying the credits, then exiting on keypress. Is this because blitz3d uses a userlib that I must include with my standalone exe file when I distribute it to other user machines ?
Someone help me out with this if you can, as I am at a loss...
Presumably you are in fact using a 3rd party lib. Try removing everything from your userlibs directory and compiling; if you then get the userlib not found error on your machine you know that you are using one of the libs you removed.
You get that error when you are using a function declared in a decls file in which the last part (DLL function name) does not exist in the specified DLL.
In other words
.lib "library.dll" <-------------\
Func():"Function" \
\_______/ \
| \
| \
this does not exist in here (or the DLL doesn't exist)
That always occurs when the .dll is missing.
Copy the actual userlibs themselfs(I.e .dlls) into the same folder your source/app is located, or copy them into the system32 folder.
blitz does *not* look for the userlibs in the userlib folder, it only looks for .decls files there.
If you are using DLL functions in your game, then you are using 3rd party code as part of your game. If it is a DLL
associated with windows, accompanying applications, or otherwise common to all PCs running the game, then you do not have a problem. However, if your game requires a DLL that is not universal between the PCs, then either you have to tell the user where to get the missing DLL and install it (for which he/she may have to pay a charge or royalty), or you will have to acquire the rights to distribute the needed DLL as part of your game (again, a charge or royalty may be involved).
It makes sence to consider the matter of ownership and distribution when you select DLLs for use in building your games and other applications.