Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

2D All the way! / [STICKY] Tutorial On 2D Final Fantasy Game

Author
Message
Reaperman
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: Kent, England
Posted: 24th Apr 2004 23:44 Edited at: 16th Nov 2005 19:18
TOWER OF THE LOST


Welcome to our new tutorial for Dark Basic.

This tutorial is aimed at newcomers to the language and deals with 2D aspects.

For all those who have ever wanted to program a “Final Fantasy� type game, this is the tutorial for you. As you can see by the above screen grab, the game is very similar to early versions of FF and as I have done before, you will find that the code is simple, uncompressed and easy to understand.

I am a little limited on time tonight, so I will be posting links and tutorial text tomorrow, but for now, here is the storyline.

Story Line

You play the character of Hannanoia, a simple farm worker, who lives in the land of Trefoba. One day while you were in your field, you unearth an ancient artefact which, unfortunately, activates and causes a rift to open between your world and a demonic one.
Thankfully, you are a strong, and a bright, farm worker, and it does not take you long to realise what is going on and you smash the artefact thereby closing the rift.

That would have been the end of it, but evil does not need much time...And in the few minuets the rift was open, an evil spirit escapes from the rift and drifts through the land changing and influencing the minds and characters of the inhabitants.

Soon, within a matter of a few weeks, the kingdom was in turmoil.

The king was usurped by his General of the guard, who had become possessed by the escaped spirit.
Your whole world was turned upside down, as without warning, the army, which was also influenced by the evil presence, came and burnt your homestead and your town.

You lost many friends in that day, and you vowed to hunt down the evil and destroy it if you could.

You travel the land meeting others who may, or may not, join you in your quest, and the fate of your kingdom lays squarely in your hands.

Good luck.
soapyfish
21
Years of Service
User Offline
Joined: 24th Oct 2003
Location: Yorkshire, England
Posted: 25th Apr 2004 02:24
They just get better and better. I might aswell say it now, Thakyou so, so much for devoting your time to helping newbies and even, dare I say it, some of the more experienced coders out there.

code2kill

HEY, YOU THERE, THE ONE READING THIS, WHY NOT VISIT OUR TEAM SITE.
Zero Blitzt
20
Years of Service
User Offline
Joined: 18th Jan 2004
Location: Different Stages
Posted: 25th Apr 2004 03:42
Reaper, this is great. Your tutorials always seem to be... awesome!

Not to hijack the topic or anything, but I definitely need a tutorial on how to make a game multiplayer. This would definitely help me with my one game, and plus it allow you to make your tutorial games available to play with multiplayer capabilities. Just a thought.

Anyway, nice, I can't wait.


GameXaero forums - www.t4e0.4cybiko.com
LordDario
21
Years of Service
User Offline
Joined: 26th Apr 2003
Location:
Posted: 25th Apr 2004 07:12
this is going to be awesome it will help me so much, and heres my wishlist for things i hope will be covered lol,

Battle Engine Coding
Menu's
designing maps with tiles
map movement
sprite collision
npc/object placement

How great would it be if the tutorials had all of these lol. I really look forward to the tutorials, and no matter what is included in them, im sure it will be great
Angel Boy
20
Years of Service
User Offline
Joined: 27th Apr 2004
Location:
Posted: 27th Apr 2004 15:41
U can make 2D Gamez in Rpg Maker
It is very Simple

*********** AN.GE.L ************
Reaperman
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: Kent, England
Posted: 27th Apr 2004 18:06
Sorry for the delay in posting here, but as you know, I have just had to get a brand new computer and it has been having “teething problems�, which really means, “It wont work�.

Now I have it under control, I can post again and get access to the tutorial, so its all go today.

My thanks to all of you who have waited patiently, and before I post the tutorial (which is in 3 parts as the program is quite large) I will answer the above posts.

Zero Blitzt: I definitely need a tutorial on how to make a game multiplayer.

Well, I do know that there have been tutorials on multiplayer before, but I was going to include a short tutorial on that subject...So your in luck.

LordDario: heres my wishlist for things i hope will be covered:
Battle Engine Coding
Menu's
designing maps with tiles
map movement
sprite collision
npc/object placement


Again, your in luck too. However, it is beyond the scope of this tutorial to delve in to every aspect of the above wish list. There are many many many ways to write a Final Fantasy type game, and, for example, our tutorial does not have a “moving� player icon on the world map, but opts for a static icon with a clickable destination.

Angel Boy: U can make 2D Gamez in Rpg Maker, It is very Simple

Yes you can, along with about 100 other “game makers� . However, this tutorial is for Dark Basic, on a Dark Basic web forum, for Dark Basic users...So I don’t understand why you mention Rpg Maker...Unless you have shares in it!
Lascerus
20
Years of Service
User Offline
Joined: 14th Feb 2004
Location: spaced out
Posted: 29th Apr 2004 03:44
Yay!!!

Stiyyiille
A concept of greatness
LordDario
21
Years of Service
User Offline
Joined: 26th Apr 2003
Location:
Posted: 29th Apr 2004 04:47
its not up right yet? or if it is where can i download it lol
Tapewormz
22
Years of Service
User Offline
Joined: 15th Sep 2002
Location: Winnipeg, Mantoba, Canada
Posted: 30th Apr 2004 03:49 Edited at: 30th Apr 2004 03:53
Quote: "So I don’t understand why you mention Rpg Maker"


I think he was being smarmy.

I haven't run either of your tutorials as of yet, but I have looked at the source and do understand what it's doing and when. I just like to look at how other people execute their ideas. If I see a better way of doing something or optimised code, then I've learned something.

Keep up the tutorials. Can't wait to see this one.

Quote: " Timesoft - Your wife is death. How? NO idea.
But it is murder. REVENGE!!!!!!!!!"

Hands down the funniest synopsis for a game ever. All your base are belong to us!
soapyfish
21
Years of Service
User Offline
Joined: 24th Oct 2003
Location: Yorkshire, England
Posted: 1st May 2004 20:14
Who said 2d was dead this is gonna rock.

code2kill

HEY, YOU THERE, THE ONE READING THIS, WHY NOT VISIT OUR TEAM SITE.
Iceman
21
Years of Service
User Offline
Joined: 10th Jan 2003
Location:
Posted: 2nd May 2004 23:55
This looks great!
I think this should be made a sticky and put in the tutorials and code area.

Kudos to ya Reaper.
Reaperman
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: Kent, England
Posted: 6th May 2004 00:19 Edited at: 16th Nov 2005 19:22
Well, now I have sorted all the bugs out of the new computer and am fully in control of it (famous last words) here is the first part of the tutorial.

Before we continue, just to recap for everyone:

The first part of the Final Fantasy game is all about the introduction and setting up the game ready to play.
The second part of the tutorial will deal with map movement and interaction within towns.
The third and last tutorial will deal with the battle screen and menu system.

Also note that even tho the game is complete in its sections, and you can certainly use any of it to make your own game, I will be adding a few little things to the final listing to improve the overall feel and quality of the program, but please don’t wait for me to do that, just dive right in and start playing about with the code.

The obvious thing with using just 2D is that unlike 3D you have to put in a LOT of hours in designing graphics and animations etc, so always bair this in mind when changing anything within this program.

Now... To begin.

PART 1. The Game set-up




As we always do, the first thing is to set up the computer, so:

sync on
sync rate 12
color backdrop 0
hide mouse

The above lines do the following :

sync on....Set the redraw to manual. This means that YOU are responsible to refresh the screen within your program using the SYNC command.

sync rate 12....This sets the redraw rate of the machine to 12 frames per second (FPS)

color backdrop 0.....Colours the background to black.

hide mouse....Hides the mouse from view.

Ok after that, we need to start to load in the media that will be used for the game. I start with the music and sound effects first.

LOAD MUSIC "intro.mid",1
LOAD MUSIC "ff1world.mid",2
LOAD SOUND "close.wav",1
SET SOUND VOLUME 1,100
PLAY MUSIC 1

The music is loaded into a “bank�. In this case we are using Midi music because:

1. Most people have very good music cards nowadays and the Midi normally will sound just fine.
2. It is a LOT smaller than Mp3/Wav/Mod etc files, and this is a downloadable tutorial which needs to be smallish in size.
3. The Midi tends to invoke a certain atmosphere of nostalgia. Which is just right for our FF game style.

After we have loaded the music in, we do the same for the sound effect. Note that the sound bank is 1 and the “intro.mid� is also 1. Don’t worry tho, as the banks are different and are assigned to either MUSIC or to SOUND...so bank 1 of the music will not overwrite bank 1 of the sound or visa versa.

We next set the volume of the sound effect to its loudest, which is 100. This means that you should be able to hear it over the music playing. Finally, we just play the music in bank 1.

Ok...so far so good. Now we load in the credits/title screens.

There are many ways to do this, but in programming there really is no right way to do anything. Whatever you want to do...provided it works, is acceptable. So we will just use the default screen to display the screens as I merely wanted to show a picture..pause..show another picture..etc.

Here is the routine to do it:

load bitmap "dsp2rpg.bmp",0
wait 6000
load bitmap "dblogo.bmp",0
wait 6000

Note that both screens are the same size... 640 by 480.
This is important if you are doing the above as if you load in a big screen and then load in a smaller screen you will still be able to see the outer edge of the first screen underneath the second one. Try it and you will see what I mean.

load bitmap "tl.bmp",0
load bitmap "textintro2.bmp",1
suspend for mouse
wait 1

After the 6 second pause we load in the simple title screen, with a bit of writing on it from me, and then we load in another screen...but this one is not to the default screen (which is screen 0) it is to a “hidden� screen...in this case screen 1.

Whats on it???? Well the hidden screen is being loaded with a screen full of text that we will use later on in the program.
One of the things I see on the forum is newcomers always asking how to put text on top of a sprite...you cant do that as such, but you can grab printed text as a sprite. This is what we are going to do later with the hidden text.

Anyway... We then wait for a mouse button to be clicked and... Yes, you guessed it...We load in the working background for the introduction.

This is a nice water/sky picture:

load bitmap "waterback.bmp",0

However, I want to use the picture not just for background, but to control how the text I am going to scroll will appear/disappear. So I grab a section of the picture (from the top to about half-way) using this command:

GET IMAGE 2,0,0,640,255

That will store the sky part of the picture in an image bank (just like the sound and music banks). The image bank is 2. The 0,0 means the top left co-ords of the screen and the 640,255 is the far bottom right corner co-ords.

Moving ever onwards, we load in all the rest of the graphics:

load image "parchmentfin.bmp",96
load image "alltext1.bmp",97
load image "mouse.bmp",100
load image "hannanoia.bmp",103
load image "garanak.bmp",104
load image "kyacca.bmp",105
load image "marinda.bmp",106
load image "toceda.bmp",107
load image "lishom.bmp",108
load image "xmark.bmp",109
load image "g1.bmp",110

I am not going to explain every single one to you..you have to learn by doing you know, ..but suffice to say that the pictures are loaded in to their own banks..96 to 110.

spx=700:y=500:wo=103:wi=108:six=-200:noc=0:click=0

We now set up a few variables. These are used in the program to control aspects of it, such as picking your team members etc.

sprite 101,0,0,101

See if you can figure out what I’m doing here. Ok...maybe not..

If you look at the sprite command you will see I am placing a sprite (101) on the screen but it does not have a picture/image assigned to it. Its using an EMPTY bank. Why would I want to do that?
Well Dark basic is a great language, but it does have some annoying quirks. One of them is that it has no sprite priority (it does in Dark basic Pro..but not in Classic) so for your mouse sprite to always be ON TOP of all the other sprites you MUST put the sprites on the screen (or off the screen) IN THE ORDER you want them to be displayed.

Sprite 101 is used further down the program as you icon on the world map, but if I just introduced it later on, then the mouse would be underneath it, so this is one way to stop that from happening by using no picture and putting it on screen now.

sprite 97,0,500,97
sprite 1000,0,0,2

These two sprites put (in order):
The scroll text.
The grabbed sky.
On to the screen ready for the next routine.

repeat
sprite 97,30,y,97
dec y
sync
until y<80

This is a repeat/until loop. You could have used a for/next loop (or anything really) but I wanted to use a repeat/until one..So there!

What it does it to move sprite 97 UPWARDS by taking 1 away from the Y variable. This simply scrolls the text upwards but here’s the fun thing..As the text reaches the horizon on the sky it fades (as the horizon is white and so is the text) and then disappears underneath the other sprite. It looks much better than having the text scroll all the way from top to bottom.

delete sprite 97
delete sprite 1000
sync rate 30

When Y is less than 80 the loop ends and we delete both of the sprites.

We also reset the refresh rate to 30 to speed up the game.
I used a low rate at the start so that I did not have to put a delay into the scroll loop. There are problems with using sync rates to control sprite speed, but in this instance for its purpose, it works. I would NOT recommend you do that tho, its better to use a delay in a loop.

y=-480
for t=1 to 60
SPRITE 96,0,y,96
inc y,8
sync
next t
play sound 1

Ok...now we bring the nice scroll down on to the screen which will let you pick your team members.

The same trick of movement is used as I did with the text..but this is from the top of the screen towards the bottom as we add 1 to Y 8 times (Inc=ADD Y,8= add 8 to Y).

repeat
mx=MOUSEX()
my=MOUSEY()
if my>240 then my=240
if mx>600 then mx=600
SPRITE 1,mx,my,100
ucm=MOUSECLICK()
if ucm=1 then gosub clickingon
if lis=1 then gosub lisinfo
if toc=1 then gosub tocinfo
if mar=1 then gosub marinfo
if kya=1 then gosub kyainfo
if gar=1 then gosub garinfo
sync
until noc=2

This little lot is the main loop. Its another repeat/until loop which will terminate when NOC=2 (NOC=Number Of Characters).

So whats it do?

First we make MX and MY = to wherever the mouse pointer is. Even tho the mouse is hidden it still can be tracked. We also make sure that IF the mouse pointer is going to go off the edge of the area I want it to be on, then it cannot. That’s what these two lines mean:
if my>240 then my=240
if mx>600 then mx=600

SPRITE 1,mx,my,100....We put a sprite with a NEW pointer over the top of the hidden pointer.
ucm=MOUSECLICK()....UCM (User Clicking Mouse) is assigned to your mouse buttons.

if ucm=1 then gosub clickingon....If you click the mouse button JUMP to a section of code under a label called “Clickingon�. This is a bit like using old fashioned line numbers, if you remember them?

if lis=1 then gosub lisinfo....If you have clicked on Lishoms icon then the variable LIS will be a 1, so the program jumps to another section called lisinfo.

if toc=1 then gosub tocinfo
if mar=1 then gosub marinfo
if kya=1 then gosub kyainfo
if gar=1 then gosub garinfo

The rest does the same thing as the lis one does.

Sync

Ah...the most important command in Dark basic: SYNC. This will redraw everything on the screen so that you can see things happen. You normally put this at the end of a loop.

Right then, what happens if NOC does equal 2?

The loop ends and you fall through to these routines:

y=-200
for drop=1 to 40
sprite 115,165,y,110
inc y,8
sync
next drop

Go on now..I KNOW you can do this. Guess what this routine does. A clue...think of the text and map routine.

wait 5000
goto maingame

Ok..we now just pause for 5 seconds and then, using a GOTO command (yes there still is a place for a goto you know) we jump to the main game routine, which strangely enough is under a label called “Maingame�

The next things you find heading down the listing are the routines for displaying the hidden text.

We will look at just one of them, as they are all copy’s of the first one.

lisinfo:
SET CURRENT BITMAP 1
GET IMAGE 98,0,0,535,175
sprite 10000,60,240,98
lis=0
return

We set the drawing actions to the hidden screen using the SET CURRENT BITMAP command. This just tells Dark basic that what your going to do next is NOT with the default screen but with the hidden screen 1.

We want to grab some text from it, so we use “GET IMAGE 98,0,0,535,175�, which grabs an area starting from 0,0 to 535,175 and stores it in bank number 98.

We then issue a command to put it on the screen using “sprite 10000,60,240,98�.
We then change lis from a 1 to a 0 using “lis=0� and we return (or jump back) to where we gosubed from using “return�.

And that’s all there is to it folks.

We will be using the hidden screen routine to generate all the text in the adventure game, and while there are other ways to do it, this is one of the easiest ways..IMHO.

The clicking on routine is a little more complex, but not much.

clickingon:
if mx>=107 and mx<=157 and my>=170 and my<=220 and lishom<>2
lis=1:lishom=1:click=1
endif

It looks to see if your mouse co-ords of MX and MY are within a boundary (or zone as its sometimes called) and if it is..AND if you have not already chosen the character for your team (lisom NOT EQUAL TO 2) then it runs the rest of the code within the IF ENDIF statement.

The code just sets up variables to do things with. Lis (if you remember) is used to jump to the description of the character. Lishom is used later in the game to make sure you have the right character with your group and click is used to make sure that you have/have not already picked the character and they are in the group and you cannot re-pick them/re-print info.

If your not clicking on a character icon, but on the select button, then the routine just checks to make sure that you have picked them and that you have not tried to pick them twice... that’s what the “if click=1 and lishom=1� command does.

if mx>=482 and mx<=541 and my>=113 and my<=147
if click=1 and lishom=1

The program then puts a nice “X� across the icon to denote you have picked it, and it also adds 1 (inc noc) to the noc variable. Your only allowed 2 characters to join you, but changing that is easy just by changing the noc value in the first main "repeat/until noc=2" loop.

sprite 110,94,160,109
inc noc

It also changed lissom to 2 to stop you picking him again.

lishom=2
endif

endif
Return

You have to close the first IF statement and then you return to where you gosubed from.

Now there are other ways to pick a group I know, and I will be altering this routine later on when the tutorial is finished, but for now just accept it as it is.

Last but not least is the main game loop.
We start off by just clearing up any sprites and images we have stored. I used the “lazy� way, by setting up a loop and then checking if the image/sprite exists and if it did, then we delete it.

The better way is to run through the things you know you did and remove them...but it was late and I wanted it easy!

maingame:
for t=1 to 115
s=SPRITE EXIST(t)
i=IMAGE EXIST(t)
if s=1 then DELETE SPRITE t
if i=1 then DELETE IMAGE t
next t
delete sprite 10000

Next we stop the first music and start the second music up.

STOP MUSIC 1
PLAY MUSIC 2

Ok.... now lets reset everything back up again for this part of the program.
Don’t be afraid to load and unload graphics etc into a program at opportune times. Its not wrong or “bad programming� to do it..you just have to be careful to do it where it will not effect the running of the game.

load image "mouse.bmp",100
load image "spriteicon.bmp",101
load image "mapmarker.bmp",102
load image "hannanoia.bmp",103
load image "garanak.bmp",104
load image "kyacca.bmp",105
load image "marinda.bmp",106
load image "toceda.bmp",107
load image "lishom.bmp",108
load bitmap "islandmap2.bmp",0

And we now just put our mouse on screen and go in to a simple do/loop.

sprite 101,120,280,101
do
mx=MOUSEX()
my=MOUSEY()
SPRITE 1,mx,my,100
sync
Loop


Fine, so that’s it today. You will be able to download all the graphics used from this link:
http://myweb.tiscali.co.uk/freelance/rpg.exe
Feel free to change then so you can see what happens.

You can download the program exe from this link:
http://myweb.tiscali.co.uk/freelance/MangaRPG1.zip
Stay tuned for the second part of this tutorial...which hopefully will not take forever to put up..lol..
(I promise to put it up for no later than next Friday).
Peter H
20
Years of Service
User Offline
Joined: 20th Feb 2004
Location: Witness Protection Program
Posted: 6th May 2004 00:37
Yay! finally!..i was begining to think you had died


Formerly known as "DarkWing Duck"
Reaperman
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: Kent, England
Posted: 6th May 2004 01:13
LOL...no not quite dead yet!
Tho I feel like it sometimes.
LordDario
21
Years of Service
User Offline
Joined: 26th Apr 2003
Location:
Posted: 6th May 2004 05:50
let me tell you, i have seen many tutorials before, but so far this is by far the most impressive dark basic tutorial i have seen, and its only the begining keep up the Great work Reaperman
Iceman
21
Years of Service
User Offline
Joined: 10th Jan 2003
Location:
Posted: 6th May 2004 20:50
Quote: "i have seen many tutorials before, but so far this is by far the most impressive dark basic tutorial i have seen"


Yep I agree. This is great work
Roll on friday!
soapyfish
21
Years of Service
User Offline
Joined: 24th Oct 2003
Location: Yorkshire, England
Posted: 8th May 2004 03:00
What can I say, THANKS


PREVIOUSLY codemonkey 0gamemad0
LordDario
21
Years of Service
User Offline
Joined: 26th Apr 2003
Location:
Posted: 8th May 2004 05:58
I have a question, the code i understand very well and all, but is anyone else having problems running the sample. Its gets passed all the screens then when it says to click mouse to continue, i do so and it gets to the next screen with the sea picture and then the program just closes and returns me to windows. Any Ideas?
Reaperman
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: Kent, England
Posted: 8th May 2004 14:59 Edited at: 8th May 2004 15:01
Quote: "I have a question, the code i understand very well and all, but is anyone else having problems running the sample. Its gets passed all the screens then when it says to click mouse to continue, I do so and it gets to the next screen with the sea picture and then the program just closes and returns me to windows. Any Ideas?"


No...no idea at all.

The code works...there is nothing that could halt it. Have you tried to use the gfx and the posted code to see if you have the same problem as your getting with the exe file?
If you still get it, then does it give you any error message when it exits?

The only thing I can think of is either:
1. You were low on RAM and that caused the crash.
2. You need to re-download the exe as it may be corrupt.

But these seem to be unlikely...Let me know.
Lascerus
20
Years of Service
User Offline
Joined: 14th Feb 2004
Location: spaced out
Posted: 8th May 2004 15:09
thank you kindly.

Stiyyiille
Celeron 2.0 Ghz, p4 titan mboard, Geforce fx 5200 128mb, 768mb ram
LordDario
21
Years of Service
User Offline
Joined: 26th Apr 2003
Location:
Posted: 8th May 2004 17:05
nope neither of the above i have a gig of ram so im never low on it. Hmm this program is for darkbasic classic right?
Reaperman
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: Kent, England
Posted: 8th May 2004 21:23
Quote: "this program is for darkbasic classic right?"


Yes it is.

Mmmmm You have me thinking now too.

Give me a few and I will get back to you on this.
Code Ninja
20
Years of Service
User Offline
Joined: 17th Dec 2003
Location: AZ, U.S.
Posted: 8th May 2004 22:21
Will this be available in a download, like a .doc or .pdf file?

Dragael Software
Current Project: None
Iceman
21
Years of Service
User Offline
Joined: 10th Jan 2003
Location:
Posted: 10th May 2004 02:31
I dont think it will be Ninja. I think its just for this forum, but it would be a great idea.
LordDario
21
Years of Service
User Offline
Joined: 26th Apr 2003
Location:
Posted: 11th May 2004 02:57 Edited at: 11th May 2004 03:02
sigh , im starting to get a bit frustrated, for some reason i get to the part in the code where the water bmps appears then about 2 1/2 seconds later my dark basic closes for no reason, and im using db 1.13 with the enhancement so im not sure whats the problem.

edit... i figured out something interesting the get image commands seem to be effecting the problem. I removed the first get image command just to see what would happen and to code went forward without the game closing out, so its something to do with that.
LordAnki
20
Years of Service
User Offline
Joined: 22nd Apr 2004
Location:
Posted: 11th May 2004 03:06
you can actually turn this into a pdf with CutePDF PDF Writer. Its free and its good. It turns itself into a virtual printer and when you go File>Print and select CutePDF it will create it into a pdf file. Works iwht any program that can print. (word, excel, IE, Mozilla, etc.)
Code Ninja
20
Years of Service
User Offline
Joined: 17th Dec 2003
Location: AZ, U.S.
Posted: 11th May 2004 03:52
@Iceman & LordAnki : Thanx, much appreciated

Dragael Software
Current Project: None
Tapewormz
22
Years of Service
User Offline
Joined: 15th Sep 2002
Location: Winnipeg, Mantoba, Canada
Posted: 11th May 2004 06:34
Quote: ""I have a question, the code i understand very well and all, but is anyone else having problems running the sample. Its gets passed all the screens then when it says to click mouse to continue, I do so and it gets to the next screen with the sea picture and then the program just closes and returns me to windows. Any Ideas?""


I've found that DarkBASIC Professional does this when you create a new blank project and save the source in a directory other than your projects directory. It should work if you close the IDE and then load your .dba file...

Quote: " Timesoft - Your wife is death. How? NO idea.
But it is murder. REVENGE!!!!!!!!!"

Hands down the funniest synopsis for a game ever. All your base are belong to us!
Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 13th May 2004 21:53
huh, this command does not exist in my dark basic, IMAGE EXIST

Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 13th May 2004 21:55 Edited at: 13th May 2004 22:06
duplicate, sorry

Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 14th May 2004 19:05
anyone????

Pincho Paxton
21
Years of Service
User Offline
Joined: 8th Dec 2002
Location:
Posted: 14th May 2004 19:41
Maybe you forgot to put the brackets.

Image Exist()

Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 15th May 2004 01:55
still dont work

Blue Shadow
20
Years of Service
User Offline
Joined: 6th Feb 2004
Location:
Posted: 15th May 2004 02:14
You need to put the image number inside the brackets. So you would have Image Exist(image wteva).

Hope that helped,

Michael


Visit the Code Monkey's website at http://www.codemonkeystudios.tk
Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 15th May 2004 12:46
my code is this: i=image exist(t)but it doesnt work

Peter H
20
Years of Service
User Offline
Joined: 20th Feb 2004
Location: Witness Protection Program
Posted: 15th May 2004 17:09
Quote: "i=image exist(t)but it doesnt work"

show us all of your code and we may be able to help...


Formerly known as "DarkWing Duck"
Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 16th May 2004 11:55
my code is here:



Peter H
20
Years of Service
User Offline
Joined: 20th Feb 2004
Location: Witness Protection Program
Posted: 16th May 2004 23:06
is that in DBC?


Formerly known as "DarkWing Duck"
Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 17th May 2004 01:36
yea, im using darkedit aswell

Peter H
20
Years of Service
User Offline
Joined: 20th Feb 2004
Location: Witness Protection Program
Posted: 17th May 2004 21:44
i use DBPro with the original "IDE" so i can't help much....

just one question
Quote: "load bitmap "dsp2rpg.bmp",0
wait 2000
load bitmap "dblogo.bmp", 0
wait 2000
load bitmap "myscreen.bmp",0
wait 2000
"

this looks like you are pasting a image to the screen and then waiting awhile before pasting another...so does that mean that in DBC(with DarkEdit) when you load a image it automaticly pastes it to the screen? becuase in DBPro you manually paste images to the screen(they do not automaticly paste when loaded)

(sorry for the un-helpfull post )


Formerly known as "DarkWing Duck"
Twisted Demon
20
Years of Service
User Offline
Joined: 4th Apr 2004
Location:
Posted: 18th May 2004 00:17
lol, i don't have a clue!

Talon100
20
Years of Service
User Offline
Joined: 19th May 2004
Location:
Posted: 19th May 2004 18:55
i'm well into rpg's but i can't get perspective of in houses and out

dragon
C l a r k
20
Years of Service
User Offline
Joined: 18th Apr 2004
Location: Rhode Island...State motto: Who Cares?
Posted: 23rd May 2004 00:22
Posted on May 5th:
Quote: "I promise to put it up for no later than next Friday."


XD

Concept Software: http://concept.dbspot.com

"Hey! HEY! Sir you can't park your car on the - oh...wait...it's not a van, it's just a fat kid!"
Niall777
21
Years of Service
User Offline
Joined: 28th Jul 2003
Location: United Kingdom
Posted: 24th May 2004 20:12
Erm...Is it possible you could maybe do a tutorial for a platform game in the future..

Niall
Endante Spellogist
20
Years of Service
User Offline
Joined: 28th Apr 2004
Location: eugene. OR USA
Posted: 25th May 2004 23:48 Edited at: 26th May 2004 00:03
Reaperman and Lord Dario,

I to am experiencing the same issue with the executable crashing after a couple of seconds on the big island overview map. I will try the idea that Lord Dario found fixed his problem here. has anyone else had this or does anyone have an ide of what is the issue?

-edit-

re ran the exe downloaded and also tried running it from the dba code downloaded. My issue is actiually bit different. it gets to the island overview, and does nothing. I hear the music, and can move the cursor, but that is all. the box to the lower right of the screen has nothing in it at all (not sure if it is supposed to) and clicking on the character, island, water, box, or buildings have no effect whatsoever. <bummed>

Root of rose, ash of vampire, essence of dragon flame and ..&*^&*(%^& OUCH! ok less dragon flame essence next time
SandraD
20
Years of Service
User Offline
Joined: 30th May 2004
Location: Down on the corner, out in the street.
Posted: 31st May 2004 02:16
Reaperman;

Just a thanks for such a complex and detailed tutorial example here, it has been interesting while I ponder about why my code does not function. (I'm trying to build dynamically created sprites, but the compiler is fighting me.)

Anyway, I expect to be returning here in a very short order, when I grow out of basic shapes stuff and into the more vesitile images and designs.

Love your storyline, the basic feel you're shooting for, etc. Look forward to seeing the rest as it comes.

S.

Any truly great code should be indisguishable from magic.
Dragon3
20
Years of Service
User Offline
Joined: 4th Feb 2004
Location:
Posted: 2nd Jun 2004 01:26
Hi all ^_^

My Dad has been a bit unwell, AND he has been getting ready to get married!

So he sends his apologies, and says he will be posting soon and answering all your posts.

CU

Dragon3

FF4EVA
C l a r k
20
Years of Service
User Offline
Joined: 18th Apr 2004
Location: Rhode Island...State motto: Who Cares?
Posted: 3rd Jun 2004 02:02
happpy day!



Concept Software: http://concept.dbspot.com

Cian Rice
20
Years of Service
User Offline
Joined: 8th Jun 2004
Location:
Posted: 12th Jun 2004 02:50
What's with the RM2K3 sprites??

Got anime?
I do.
Jake Blues
20
Years of Service
User Offline
Joined: 19th Jun 2004
Location: United States
Posted: 19th Jun 2004 19:22 Edited at: 19th Jun 2004 19:23
RM2k3 sprites look good to me, and fit for this game.
It's probely easier than making your own.

But sweet game Reaperman.

Don't let life get you down, it will only get better.

Login to post a reply

Server time is: 2024-11-17 22:29:54
Your offset time is: 2024-11-17 22:29:54