well from the original one you showed me I cleaned it up a lot because it was very messy and hard to read.
In the first one you posted it appeared you were making the bullet objects within your main loop and not prior to it.
the scaling of the objects appears to be very large as well.
Here is what i did to the original snippet to make it easier to manage.
I cleaned it up a lot so you can see how the structure should be.
remove any components that you may not require.
REM ***************************************************************
REM ***************************************************************
REM ***************************************************************
REM ***************************************************************
REM Hovercraft X36 USB
REM Author :Ian George aka Vampyre
REM ****************************************************************
REM ****************************************************************
REM ****************************************************************
REM ****************************************************************
REM ----------------------------------------------------------------
REM INIT GAME
REM ----------------------------------------------------------------
autocam off : hide mouse : sync rate 60 : sync on
REM ----------------------------------------------------------------
REM SET TEXT
REM ----------------------------------------------------------------
set text font "Westminister" : set text size 15
ink rgb(200,255,0),1
REM ----------------------------------------------------------------
REM INIT VARIABLES
REM ----------------------------------------------------------------
rem Aircraft POSITION = AIRC_Dimension
AIRC_X = 0
AIRC_Y = 150
AIRC_Z = 0
REM Some variables in your code
cammode = 0
bullet=5
missile=6
REM MATRIX LOCATION
MX# = -5000
MY# = 0
MZ# = -5000
REM ----------------------------------------------------------------
REM MAKE MATRIX 1
REM ----------------------------------------------------------------
Make matrix 1,10000,10000,20,20
REM POSITION THE MATRIX AT THE POINT YOU WANT
position matrix 1,MX#,MY#,MZ#
Rem texture matrix
Load image "grass09.bmp",1
Prepare matrix texture 1,1,1,1
Fill matrix 1,0,1
rem Randomize the matrix
randomize matrix 1,125
update matrix 1
REM ----------------------------------------------------------------
REM DRONE SETUP 3
REM ----------------------------------------------------------------
rem Make drone to mark a back position
make object sphere 3,10
hide object 3
REM ----------------------------------------------------------------
REM LOAD THE AIRCRAFT
REM ----------------------------------------------------------------
rem Aircraft Object
load object "Chovert1.x",2
rem Rotate and fix data so character faces right way
xrotate object 2,0
yrotate object 2,180
zrotate object 2,0
fix object pivot 2
position object 2,AIRC_X,AIRC_Y,AIRC_Z
rem scaling to 10%
scale object 2,5000,5000,5000
REM ----------------------------------------------------------------
REM PLAYER TANK BULLETS 5
REM ----------------------------------------------------------------
REM Load Bullets for player tank
make object sphere 5,100
hide object 5
rem scaling
scale object 5,2000,2000,2000
REM ----------------------------------------------------------------
REM PLAYER TANK BULLETS 6
REM ----------------------------------------------------------------
REM Load Guided missile for player
make object cone 6,300
hide object 6
rem scaling
scale object 6,4000,4000,4000
REM ----------------------------------------------------------------
REM PRE MAIN GAME LOOP
REM ----------------------------------------------------------------
REM SETUP THE INITAL CAMERA LOCATION
position camera 0,350,-500
point camera 0,0,0
REM ----------------------------------------------------------------
REM MAIN LOOP
REM ----------------------------------------------------------------
REM INSTEAD OF A DO / LOOP
disable escapekey : while escapekey()=0
REM ----------------------------------------------------------------
REM MANAGE PLAYER CONTROLS
REM ----------------------------------------------------------------
If InKey$() = "1" Then cammode = 1 : ` third person
If InKey$() = "2" Then cammode = 0 : ` first person
rem movement
mmy=mousemovey()
mmx=mousemovex()
if mmy>0 then pitch object up 2,0.002
if mmy<0 then pitch object down 2,0.002
if mmx<0 then turn object left 2,5
if mmx>0 then turn object right 2,5
if upkey()=1 then move object 2,140
if downkey()=1 then move object 2,-140
if scancode()=17 then move object 2,140
if scancode()=32 then move object 2,-140
if joystick up()=1 then pitch object up 2,0.0002
if joystick down()=1 then pitch object down 2,0.0002
if joystick left()=1 then turn object left 2,5
if joystick right()=1 then turn object right 2,5
if joystick z()=-1000 then move object 2,140
if joystick z()=1000 then move object 2,-140
REM Straffe Left
if joystick twist z()=-1000
turn object left 2,90 : move object 2,20 : turn object right 2,90
endif
REM Straffe Right
if joystick twist z()=1000
turn object right 2,90 : move object 2,20 : turn object left 2,90
endif
REM Straffe Left
if scancode()=30
turn object left 2,90 : move object 2,20 : turn object right 2,90
endif
REM Straffe Right
if scancode()=32
turn object right 2,90 : move object 2,20 : turn object left 2,90
endif
REM Straffe Left
if leftkey()=1
turn object left 2,90 : move object 2,20 : turn object right 2,90
endif
REM Straffe Right
if rightkey()=1
turn object right 2,90 : move object 2,20 : turn object left 2,90
endif
REM Hovercaft Jump
if jumpb=1
height#=height#-.7
endif
if joystick fire x(4) or spacekey()=1 and ajump=1
jumpb=1
height#=20
endif
if height#<-13 then height#=-13
if object position y(2)>100 then ajump=0 else ajump=1
if object position y(2)<100
jumpb=0
height#=0
endif
Rem Shoot bullet
if joystick Fire a()=1
Position object 5,X#,Y#+43,Z#
Set object to object orientation 2,5
BulletLife =25
show object 5
Endif
If BulletLife > 0
Dec BulletLife
Move object 5,70
if BulletLife = 0 then Hide object 5
Endif
if mouseclick()=1
Position object 5,X#,Y#+43,Z#
Set object to object orientation 2,5
BulletLife =25
show object 5
Endif
If BulletLife > 0
Dec BulletLife
Move object 5,70
if BulletLife = 0 then Hide object 5
Endif
Rem Shoot bullet
if joystick Fire B()=1
Position object 6,X#,Y#+10,Z+20#
Set object to camera orientation 5
MissileLife =40
show object 6
Endif
If MissileLife > 0
Dec MissileLife
Move object 6,50
if MissileLife = 0 then Hide object 6
Endif
if mouseclick()=2
Position object 6,X#,Y#+10,Z+20#
Set object to camera orientation 5
MissileLife =40
show object 6
Endif
If MissileLife > 0
Dec MissileLife
Move object 6,50
if MissileLife = 0 then Hide object 6
Endif
rem HAT control
jhat=joystick hat angle(0)
rem Set the hat look flags to nothing
lookUp = 0: lookLeft = 0: lookRight = 0: lookBack = 0
if jhat = 0 then lookUp = 1
if jhat=9000 or jhat=4500 or jhat=13500 then lookRight = 1
if jhat=31500 or jhat=27000 or jhat=22500 then lookLeft = 1
if jhat = 18000 then lookBack = 1
If cammode = 0
rem Place camera and set orientation to object for FPS
position camera object position x(2),object position y(2),object position z(2)
set camera to object orientation 2
if lookRight = 1 then turn camera right 90.0
if lookLeft = 1 then turn camera left 90.0
if lookUp = 1 then pitch camera up 45.0
if lookBack = 1 then turn camera right 180.0
else
rem Place as over head for 3rd person
move object 2,-150
position object 3,object position x(2),object position y(2),object position z(2)
move object 2,150
rem Place camera and set orientation to object
position camera object position x(3),object position y(3),object position z(3)
set camera to object orientation 2
Endif
REM UPDATE THE OBJECT 2
position object 2,object position x(2),object position y(2)+height#,object position z(2)
REM ----------------------------------------------------------------
REM OUTPUT VARIABLES IN MAIN LOOP
REM ----------------------------------------------------------------
print westminster
text 10,10,"HAT signal: "+str$(jhat)
text 10,20,"Joystick: "+str$(jx)+"/"+str$(jy)
text 10,30,"Slider: "+str$(joystick slider a())
text 10,40,"FPS: "+str$(screen fps())
text 320,400,"Speed: "+str$(intspeed)+"MPH"
REM ----------------------------------------------------------------
REM END MAIN LOOP
REM ----------------------------------------------------------------
sync
endwhile
REM ----------------------------------------------------------------
REM CLEAN UP 3d MEDIA BEFORE ENDING PROGRAM
REM ----------------------------------------------------------------
for i = 1 to 100
if object exist(i)=1
delete object i
endif
next i
REM END PROGRAM
END
if DBC does not like multiple commands on the one line
just remove the : symbols and drop it down to another line.
Its been a while since Ive used DBC but it should be ok.
that should make it a lot easier to see the problems at hand.