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.

DarkBASIC Professional Discussion / Community Projects

Author
Message
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 12th Jan 2007 21:02 Edited at: 12th Jan 2007 21:02
Vertical scroller sounds fine. Here is a quick ship, I can add some animation frames if it looks ok to you guys.



Attachments

Login to view attachments
Aaron Miller
19
Years of Service
User Offline
Joined: 25th Feb 2006
Playing: osu!
Posted: 13th Jan 2007 02:28
Id like to contibute too.

However, I was thinking of a game by Namco. It was made into a classic for the gameboy.

-db

GameDeveloper, make your own games with a drag-and-drop interface. Basically t3dgm+fpsc editor combined.
http://forum.thegamecreators.com/?m=forum_view&t=86045&b=8&p=2
RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 13th Jan 2007 08:48 Edited at: 13th Jan 2007 15:52
Two Week Challenge: A Vertical Scroller shoot-em-up!
Deadline = Saturday, January 27th.

GDD:

Notes: The use of the "names" of the enemies is to help give an idea of the AI strategies the units will use. The graphics do not have to look like the objects described by the name (although they could).

Notes: This is a start for the GDD so folks have an idea of what to work on. Suggestions are welcome and encouraged. This is a community project. I will be happy to add onto the GDD or edit it as needed. I am totally in favor of letting this go where folks want it to go, so this is not written in stone by any means.

Hey, let's get this one done and maybe into the January NewsLetter!


Open MMORPG: It's your game!
Aaron Miller
19
Years of Service
User Offline
Joined: 25th Feb 2006
Playing: osu!
Posted: 13th Jan 2007 09:59
You mean february newletter?

I will do my best on this project.

Which reminds me, I made some joystick functions a while back, they were really only for help on the names (For a playstation 2 controller, styled names), and helped me a little bit for not having to remember everything like what number the PAUSE button was, and what number the "L2" button was, etc. If I find them, I will contribute those.

-db

GameDeveloper, make your own games with a drag-and-drop interface. Basically t3dgm+fpsc editor combined.
http://forum.thegamecreators.com/?m=forum_view&t=86045&b=8&p=2
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 13th Jan 2007 12:25 Edited at: 13th Jan 2007 12:25
Ok here is a sheet for the player's ship. top 4 images are for normal animation. bottom left is a semi transparent shadow for the ship to place on the ground. the last 3 are a "power up" animation, protected mode whatever. Its a transparent png. I will get to work on some of the other sprites.



Attachments

Login to view attachments
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 13th Jan 2007 12:52 Edited at: 13th Jan 2007 12:52
Here are the players missiles (2 forms) the bomb and their shadows. Please if anyone thinks my work stinks let me know



Attachments

Login to view attachments
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 13th Jan 2007 13:28 Edited at: 13th Jan 2007 13:28
And here is a simple bunker with rotation and death sequence.



Attachments

Login to view attachments
Blobby 101
19
Years of Service
User Offline
Joined: 17th Jun 2006
Location: England, UK
Posted: 13th Jan 2007 13:38
I'd like to contribute.
i could make that sidebar if you like, just tell me the screen size we'll use and i can get started.


perfection is not achived, it is earned.
RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 13th Jan 2007 15:46 Edited at: 13th Jan 2007 15:56
Nice work Hobgoblin Lord!

Let's do this up as a retro style game, so maybe 800x600?

Quote: "You mean February newsletter?"

I do mean the newsletter that is published at the beginning of February, but is for events that occurred in January.


Open MMORPG: It's your game!
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 13th Jan 2007 16:09
OK here is some rough code with the ship going and a temp background. arrow keys control of course, but i thought how about adding in W and S for ship height as well (the shadow reflects this) I changed the image to a bmp because chopping up a png was getting rid of the transparency. Give it a try let me know what you guys think.



Attachments

Login to view attachments
Nicholas Thompson
20
Years of Service
User Offline
Joined: 6th Sep 2004
Location: Bognor Regis, UK
Posted: 13th Jan 2007 17:31
May I suggest that deadlines don't exist in this thread? It seems a little silly to have a thread full of incomplete projects (because, lets face it, deadlines only work on challenges/competitions where there is something to be won - ie an incentive).

From what I've seen of this so far it looks damn good. I've no time to contribute - but I'd like to see it get finished! Maybe someone could write it up as a nice tutorial? Maybe it could get included with DBP as a full project people can dismantle to learn DBP? Its got HUGE potential to help!

[center]
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 13th Jan 2007 17:50
I believe the deadline is to be an incentive to get the thing finished and to bring an end to a dead project. 2 weeks seems resonable, it can always be extended if needed and there is genuine intereset in the current project.

Now. attached is a zip with some updated code including firing. I will get around to commenting it at somepoint, but I tried to leave things pretty darn easy to understand.

Attachments

Login to view attachments
Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 13th Jan 2007 19:06
This is looking good already - nice work HL. I hope to get onboard with this one.

Shall we agree that ground based tiles are all 32x32 pixels? I'm thinking that if we all stick to the same size, our scrolling map can be created within the game source, or a text editor, using identifiers for the type of tile and data statements to position them. Along the lines of this:

TT=tile
BU=bunker
ML=launcher

data TT,TT,TT,TT,TT,TT,TT,TT
data TT,BU,TT,TT,TT,TT,BU,TT
data TT,TT,TT,TT,TT,TT,TT,TT
data TT,TT,ML,TT,TT,ML,TT,TT
data TT,TT,TT,TT,TT,TT,TT,TT

and so on. Using double letters as identifiers gives 26x26=676 different possible identifiers (not including non letter characters. Larger sprites could be created by joining 32x32 tiles together.

This way, creating new levels will be a doddle.

If anyone agrees this would be a good system, then I'll go ahead and get it implemented.

Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 13th Jan 2007 19:30 Edited at: 13th Jan 2007 19:36
sounds good Ric, I was gonna pop an editor together but that will be just fine. 32x32 sounds perfect. it gives us 25 across exactly and just over 18 down (thats why the placeholder UI bar i put in is a little over 64 high to hide the tiles scrolling off smoothly.)


EDIT
A quick example of why I set up the add_missile routine the way I did. replace line 107 with



to see double fire action

Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 13th Jan 2007 21:51
Ok - I'll work on that then. I'll work off text files that can be read in, rather than data statements, to keep the source code from bloating needlessly. Of course, it doesn't preclude creating a level editor which creates/edits the text files if they get overly complex at a later stage.

Hopefully find some time tomorrow morning for this before she who must be obeyed wakes up - I've been banned from any more all night coding sessions!

David Gervais
Retired Moderator
19
Years of Service
User Offline
Joined: 28th Sep 2005
Location: Montreal, Canada
Posted: 14th Jan 2007 00:05 Edited at: 14th Jan 2007 00:10
I vote for a breakout game,.. my contribution is the code to make the brick sprites...





I'd also be willing to make some custom sprites and a nice GUI to wrap it all up. Perhaps get this community game into the showcase if it's good enough.

My 2 cents, Cheers!

LoL, I'm bad. I thought there was a vote, but didn't realize I was only on page 1 of this thread and that the decision had already been made. Oh well, perhaps the next one.
Peter H
21
Years of Service
User Offline
Joined: 20th Feb 2004
Location: Witness Protection Program
Posted: 14th Jan 2007 01:24
David Gervais- do you mind if i use that code in my Nvidia game? (for a health bar, or background for in-game help)

there aren't any credits in the game, but i could put you in the ReadMe

One man, one lawnmower, plenty of angry groundhogs.
RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 14th Jan 2007 10:33 Edited at: 14th Jan 2007 10:35
I don't know if this will work with Ric's tile plan or not. If not, we can always go back the previous version. I added some background graphics.

Edit: I think if David is offering graphics for a project, that project is likely to get a lot of votes, I would think. Our next project might just be a breakout then. Btw - nice code there David.


Open MMORPG: It's your game!

Attachments

Login to view attachments
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 14th Jan 2007 11:10
hehe, that is partially why I said breakout, i remeber that he had posted that code and thought it would be good. This project is sure one we could use Dave's help on Hint Hint..

Nice job on the background Ridii. I updated the code to give the clouds some depth so you can be over or under them





Kieran
18
Years of Service
User Offline
Joined: 6th Aug 2006
Location: Hamilton, New Zealand
Posted: 14th Jan 2007 11:18 Edited at: 14th Jan 2007 11:19
looking awesome wish i could contribute but im only good with 3d modelling and all you guys are better at coding than me

if theres any 3d graphics that need doing for a cutscene or just a 3d image just ask ill do my best

David Gervais
Retired Moderator
19
Years of Service
User Offline
Joined: 28th Sep 2005
Location: Montreal, Canada
Posted: 14th Jan 2007 11:45
Peter H. I don't mind at all, if I didn't want to share it I would not have posted it. Enjoy!

Cheers!
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 14th Jan 2007 12:00 Edited at: 14th Jan 2007 13:10
Put together an enemy plane, I will make out it's weapons next



EDIT:

I changed the code a bit. I have added a function called Test_features, this is just a place to lump code/controls whatever, while they are still at a test stage. example I put in a few key presses to toggle number of missiles and the power up flashing animation for the ship since there is no permanent place for them in the code yet.





Attachments

Login to view attachments
Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 14th Jan 2007 13:17 Edited at: 14th Jan 2007 13:21
Oh dear - I've run onto problems. I've incorporated the level creator, and it 'works', except for the fact that it kills the fps stone dead.

Here it is anyway if anyone wants to take a look, but either there's something stupid I done wrong, or perhaps we need a different strategy altogether.

Basically, the text file has a one line header which contains all the image types used in the level. It then loads just those images needed. THen, it scans the rest of the text file creating the sprites with the appropriate position and image. Have to go out now, so I'll have another crack at it tomorrow morning if noone has already sorted it before then.

Haven't written the scrolling function yet, btw - it's just static.

Attachments

Login to view attachments
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 14th Jan 2007 13:39
hmm, I tried shutting off the backsave on the tiles but only raised my fps about 3. How about a strategy like this.

1) set up a background image for each level, like the one we already have.

2) set up a distance travelled variable

3) set objects that can be shot, collided with etc as sprites, others as pasted images or pasted sprite from offscreen.

4) give the objects an x value and a y value (y being it's distance from start) so a y of 1300 would not appear until the distance travelled reached 1300 then kill it when it goes off the screen. This will reduce the number of sprites we have on the screen at a time, and should actually make our level files smaller and kill the need to add redundant tiles.

Just a thought

Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 14th Jan 2007 14:22
OK here is a quick implementation of what I was saying, the downside of course is since we are using floats and we cant position at .x pixel we get a little bumbpy action but I chalk that up to turbulence .

add_doodad adds a new scrolling object to the que. once it should be on screen it is transferred to a "permanent object" and deleted from the initial list so we don't waste time cycling through objects that have already passed. once the permanent object passes off the bottom of the screen it to is then deleted. I tossed a couple of add_doodad calls at the beginning bu those can be scrapped later. Attaching a file of the building piece I used.





Attachments

Login to view attachments
RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 14th Jan 2007 20:37
Some great work going on. I am trying to figure out Ric's FPS issue. I am playing with the idea of combining Hobgoblin Lord's doodads to load the level rows and scroll them on down... something along those lines. I am at work until much later, so I might have something by tomorrow morning.


Open MMORPG: It's your game!
Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 14th Jan 2007 21:15
I've taken a critical look at my code again, and I think the only really 'stupid' thing in it was I was actually creating a sprite for the blank spaces with a blank image. However, taking those out still only increases the fps by 2. The simple fact seems to be that filling the screen like that with tiles requires 25*18=450 sprites on the screen at once, which, with the background and other stuff too, is just too much for at least my pc.

Makes me wonder how on Earth the Bitmap Brothers managed it on the Atari ST in Xenon.

Before abandoning the tile idea altogether, though, I'll just see what happens if I make the tiles bigger, so we need less ......

HL's method works mainly, I think, because he has far less sprites. Not drawing the sprites which are not on the screen is a good idea to cut down on the amount of processing, although I'm not sure it would make a huge improvement on the fps I get if integrated with my code, as sprites off the screen shouldn't be drawn anyway and so shouldn't cost much.

Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 14th Jan 2007 22:11 Edited at: 14th Jan 2007 23:05
Ok - I've got it working with tiles of 64x64 quite nicely - will upload in a few mins.

<edit>

here it is. It gives a 'just acceptable' 25ish fps on my antique pc with the test level. Making the level bigger does reduce the fps, so HL's idea may need to be incorporated if the levels get too big - ie. load a level in parts.

In the text file, 't0' represents an empty tile - the more of these, the better the fps. Large sections full of tiles kill the fps obviously.

@HL: sorry - I was working on the version previous to your last update. I have included your enemy planes image, but not the code you added. I guessed it would be easier for you to know what you added and where, and add it to this, rather than me trying to pick out what you added and miss something - hope you don't mind too much!

Attachments

Login to view attachments
RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 15th Jan 2007 08:24
I think I was able to add everything HL had in there to what you did Ric. I was also tweaking some of the code here and there:
-Played with the up/down size/shadow of the player ship
-Added some more to the terrain images
-Updated the building to include a nice little shadow

I also played with your code a bit Ric. I was trying to speed it up. One thing that was bothering me was those large arrays with Strings. This may or may not be a problem, but taking them out did not really improve performance on my machine. I also thought about an idea to change the multitude of sprites into a few sprites (the two you have) and paste them appropriately. It works fine, but did not seem to impact the FrameRate either way. I think we should stick with that since we now have a lot of sprites left over for other things.

HL, I cannot seem to get the doodads to work. Maybe you can take a look at it?


Open MMORPG: It's your game!
Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 15th Jan 2007 08:34
Thanks Rii - although did you forget to insert the updated code?

RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 15th Jan 2007 11:49
Ooops. Yep.


Open MMORPG: It's your game!

Attachments

Login to view attachments
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 15th Jan 2007 12:06
Riidii good job.

changing the code to this



will spawn the doodads. The add doodad function works in direct relation to the distance travelled variable, the items in that array do not exist until distance of X has been reached then it transfers them into Perm_doodads via the make_new_object function. Of course adding them randomly like this means they can overlap, but that can be cleaned up pretty easy.

I like the up/down motion of the fighter, the only concern I have is testing for pixel perfect collision with a scaled sprite. If we run into problems I can scale them manually and update the .bmp.

Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 15th Jan 2007 13:09 Edited at: 15th Jan 2007 13:09
Added in a function to call an explosion effect, right now it is implemented in the test_features function by pressing "=". I had an easy 300 explosions on the screen and still getting 57 FPS. attached is the explosion graphic that Dave Gervais made.





Attachments

Login to view attachments
RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 15th Jan 2007 16:25
Great! I am out for the day and probably wont be on again until tomorrow.


Open MMORPG: It's your game!
indi
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: Earth, Brisbane, Australia
Posted: 16th Jan 2007 00:03
looks good guys.

Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 16th Jan 2007 13:12
Added misile collision with the doodads, right now height does not matter but that can be fixed later. Also added in a cool tune I found on new grounds that can be downloaded.



Attachments

Login to view attachments
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 16th Jan 2007 20:46
Ok, the player now collides with the doodads. player death will reset the player's position and give them momentary invulenranilty (flashing ship). Height matters, I added a height variable to the doodads so missiles fired over their height will pass by and if the player is higher then the object they can fly over it. Need to come up with a good visual cue as to how tall objects are.



RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 17th Jan 2007 04:12
Fantastic work HL!
Some building shadows and a first attempt at building heights.




Open MMORPG: It's your game!
Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 17th Jan 2007 08:43
Great stuff - it's almost a game!

Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 17th Jan 2007 14:15
Just not a game till the player can score some points.



Attachments

Login to view attachments
Aaron Miller
19
Years of Service
User Offline
Joined: 25th Feb 2006
Playing: osu!
Posted: 17th Jan 2007 23:52
Im away for 2 days and I miss so much..

I want to contibute something, but not sure what...

-db


Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 18th Jan 2007 00:19 Edited at: 18th Jan 2007 00:20
work on the AI, that has still not been developed.

I am trying to hold back a little on the coding to give some others a chance

Aaron Miller
19
Years of Service
User Offline
Joined: 25th Feb 2006
Playing: osu!
Posted: 18th Jan 2007 01:44
(Childishly) Yay! I know what to work on now.

I will work on that then.

-db


Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 18th Jan 2007 17:02
Updated code to stop an error when scores of 1 million or more happen, also made some changes to the UI bar, can dowload from this post.



Attachments

Login to view attachments
RiiDii
20
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Inatincan
Posted: 18th Jan 2007 18:51 Edited at: 18th Jan 2007 18:51
Here's an enemy ship with a short destruction sequence (couldn't think of anything better to fill the space with).




Open MMORPG: It's your game!

Attachments

Login to view attachments
Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 19th Jan 2007 10:08 Edited at: 19th Jan 2007 10:14
I've integrated HL's Doodad code (query: what the hell is a Doodad?) with my level code so they now work together. Doodads' positions are set in the level.txt file, and are denoted by any two characters that start with 'd' - I've added the current red Doodad as 'd1' which potentially gives us 9 more types to play with. As before, they are only drawn just before they come onto the screen to maintain the frame rate.

Heights are still random - but I was wondering if it might be better to have just two heights - high and low, rather than any random height within the range, as it seems quite difficult to gauge how high an object is from a top down perspective like this??

I've reverted back to having the tiles and Doodads scrolling slightly faster than the background, which gives a parallax effect, making it look like the level is floating slightly higher than the ground - I think it looks good anyway!

Also wondered if, given the amount of enemy fire that might be coming from all those doodads, perhaps we should increase the firing rate of the ship to allow for more destruction??

Downloads:

One tile to download - this is the 'd1' tile which acts as the 'Doodad holder'.

New level, which needs to be pasted over the text in level.txt:



New source code:


Attachments

Login to view attachments
Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 19th Jan 2007 13:36 Edited at: 19th Jan 2007 14:20
Quote: "doo·dad (dōō'dād') Pronunciation Key
n. Informal
An unnamed or nameless gadget or trinket. "



Good Job Ric. as for the player shot spped thats super easy to adjust, perhaps I will work on adding a power up or two.

Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 19th Jan 2007 14:21 Edited at: 19th Jan 2007 14:22
Ah - I was thinkning this sort of thing:

Quote: "doo·dad (dōō'dād') Pronunciation Key
n. Informal
useage: the man howled when he got kicked in the doodads .....
"


Or is that doodahs? Zippedy doodah ... ouch!

Hobgoblin Lord
19
Years of Service
User Offline
Joined: 29th Oct 2005
Location: Fall River, MA USA
Posted: 19th Jan 2007 23:43 Edited at: 19th Jan 2007 23:44
Here is my attempt at the battlemech. I will work on it's weapons a little later.



Attachments

Login to view attachments
Ric
20
Years of Service
User Offline
Joined: 11th Jul 2004
Location: object position x
Posted: 20th Jan 2007 22:29
Looks good!

Incorporated some bullet code into the game.
Doodahs now fire spongey yellow balls (sorry ... deadly explosive torpedos) in random directions:



Bullets are only fired by active doodahs, obviously, and bullets die once off the screen. Haven't added collision with player yet. There is some slow down (at least on my pc) towards the end of the level where there are lots of doodahs firing lots of bullets - we'll probably need to put a timer loop in to keep the speed up.

Attachments

Login to view attachments

Login to post a reply

Server time is: 2025-06-18 19:52:50
Your offset time is: 2025-06-18 19:52:50