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.

DLL Talk / TGC 2D Pack Ideas

Author
Message
XeloStarWind
20
Years of Service
User Offline
Joined: 6th Jan 2004
Location: Hhhehhe eeeee riiiighhhht
Posted: 29th Aug 2004 12:22
Hi , God this is great I was just about to post for a help on the existing, map - Generator and the great Administrators post really facinated me. Has my jorney really come to an end.

First of all I would like to thanks the administrator, for making such a post adout creating build in Application/Commands to make it allot easer on people like me. So far I hear nothing abaut Tile-Forge and the erge to create a 2-D game that would support not only regular load of tile based maps in depth, and charecters, but also multiplayer based maps.

I would like to bring your attenting to Sony Infatry Online game, for only one spesific reason, as you can see their based charecters revolve in a very superb manner to the normall tile based enviernemnts.

Simply to say a single charecter "Infiltrator, Hevy Wepons, Infatry" Can rotate itself in a sircular motion. Prior to that it can be animated to Walk/Run and strafe while showing diffrent animation seqenses of thier body running walking for every degree, in 360 degree Full rotation. That meant if a charecter is turned left it will run left with difrent animation. That is not excluding strafes top 15 degrees, 25 degrees, 35 degrees ext... cahrecters can also moove in such direction with no strafing.

Would it be possible in Command/Aplication usage of this software.

Yes Im a proud owner of Darck Basic/Darck Basic Pro, best regards to all die hard programmers.

Special thanks to Administrator for posting such a great Advantage in the 2-D field Programming. Best Regards Paris.

In The Name Of Honor, My Knowlege is my Power!
Kevin37uk
20
Years of Service
User Offline
Joined: 30th Aug 2004
Location: Kent
Posted: 30th Aug 2004 08:53
How about a map system that uses hexagonal tiles as opposed to the square variets. This would be excellent for turn based games.
X_MEN
21
Years of Service
User Offline
Joined: 14th Sep 2003
Location:
Posted: 30th Aug 2004 10:28
A sprite editor where you can edit the hot spot of each sprite and change the background transparent color

You can do it if you try
Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 30th Aug 2004 10:38
@1tg46: Mentor had it right, sprite visible only tells you if the sprite has been hidden by the hide sprite commands, or at least, thats what happening on my machines using nvidia cards.

@mentor: I guess I should clarify and say, I'd like the IsSpriteOnScreen function to tell me if the whole sprite (regardless of size or rotation) is on the screen or not. Yeah, it might be simple, but why not make it a command instead of us coding it over and over.

Also,

Is it possible to treat the sprite array like a linked list? That could help reduce the sprite index management on larger games.

How about a NextSpriteIndex function, that returns the next empty sprite in the list.
Dot Merix
21
Years of Service
User Offline
Joined: 15th Oct 2003
Location: Canada
Posted: 30th Aug 2004 11:21
Out of curiosity, do you guys have the date set for the pixel perfect collision detection upgrade for darkbasic pro?

Thanks

- Merix

- Merix

Athlon xp 2400+, 1.0GB Ram, Radeon 9800PRO 128mb
Richard Davey
Retired Moderator
22
Years of Service
User Offline
Joined: 30th Apr 2002
Location: On the Jupiter Probe
Posted: 30th Aug 2004 21:58
Quote: "Out of curiosity, do you guys have the date set for the pixel perfect collision detection upgrade for darkbasic pro?"


No, please keep this on-topic.

"I am not young enough to know everything."
- Oscar Wilde
Angel Lazerus
20
Years of Service
User Offline
Joined: 8th Feb 2004
Location:
Posted: 30th Aug 2004 23:41
Perhaps a function/command to turn a normal tile/image into an isometric tile. Maybe have its own setups like image and sprite.
e.g.
load isoimage filename$,num

filename$ - image source to make int an isometric tile.
num - its number.

paste isoimage num,x,y,transparent,ghost
num - image number.
x,y - location on screen.
transparent - like the transparent option on paste image.
ghost - makes it translucent like ghosting on a 3D object.

isogrid num1,num2,num3,distance between tilesX,distance between tilesY.
Makes a symple isometric map based on the tiles available. A bit like making a matrix. (0 is a blank)
num1 - number of the grid.
num2 - number of tiles x.
num3 - number of tiles y.
distance between tilesX/Y - spreads the tiles out evenly so they display in the right place and not on top of eachother.

Make Isogrid Window num,sizeX,sizeY,X,Y,clipping on/off
Makes a clipped or unclipped window to display the isogrid.
Num - the isogrid to display.
sizeX/Y - size of window.
X,Y - place on screen.
clipping on/off - weather you want the window to display all the grid or just an area.

move isogrid num,X,Y - moves the isogrid window to X,Y.

Show isogrid window num
Shows the isogrid when you want it to. You may have several layers of grids with characters,NPCs, etc moving in between so youll need to show the isogrid windows when you want them. EG
ground layer, walls and characters, roof layer, weather effects.
num - window/isogrid to show.

Thats just the starters and Im sure if it was mixed with normal 2D tiling commands it would be a cool addition.

Angel.
Sir Spaghetti Code
20
Years of Service
User Offline
Joined: 12th Jul 2004
Location: Just left of Hell
Posted: 31st Aug 2004 02:44
I would like to see adjustable sprite collision coordinates. So I could code for my sprite to register damage when only hit on the upper left hand corner. There may be a way to that now, but this would make it much easier!

ThomasFN
20
Years of Service
User Offline
Joined: 26th Aug 2004
Location:
Posted: 31st Aug 2004 03:15
I would love that in 2D AND 3D, very useful for people walking on objects and not terrains, correct me if you can already do this.

Thomas Smith
3ddd
20
Years of Service
User Offline
Joined: 14th Apr 2004
Location: Orlando, FL
Posted: 31st Aug 2004 10:49
Collision with "terrain" is perhaps the biggest hurdle I face with my 2D platform jumping game. If I get a sprite falling at, say 5 pixels per cycle, it may end up 3 or 4 pixels in the ground. There are plenty of ways to solve this problem with code, but none seem to be very easy or flexible.

I would love a command/function that calculates the coordinate value (i.e., screen pixel location) of the edge where the collision happened, along the path you had the sprite moving. For example, it could scan, one pixel at a time, in a given direction (or vector or whatever) until it gets a collision hit, and return that coordinate value. Maybe it could be as simple as providing two sets of coordinates (starting x,y and ending x,y coords) and having the function return the point of collision along that line.

This may be too high-level or specific to be included as a built-in command, but it would be nice.


He's evil, but, he'll die. I like it.
Emperor Baal
20
Years of Service
User Offline
Joined: 1st Dec 2003
Location: The Netherlands - Oudenbosch
Posted: 31st Aug 2004 11:14
3ddd,

Its probably because, after terrain collision, you dont let the sprite fall anymore.
Place him on the terrain first (sprite y(terrain/tile)+sprite height(object)). After that, he'll not jitter or stand in the ground.

For the 2D newbies here, I'll release the source-code of MegaMan Redemption after the Retro Remakes competition. (if you can understand my code ). Most of the ideas (tiles, multiple layers, animated stuff) are already coded in my game, with ease.

DrakeX
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location:
Posted: 31st Aug 2004 12:01
"Create blank images, and treat them as if they were bitmaps (for lines, text etc) (SET IMAGE AS CURRENT BITMAP? a bit long?)"

DRAW TO IMAGE would be equally descriptive, i would think.

3ddd - this kind of collision is exactly what would be possible with a vector collision library of commands. vector collision = 3d collision, but in 2d. technically you can even do it in 2d by wrapping up NGC commands in fact that would be a fun project for when i have time.

OK enough of that damn DBP fanboy banner. i'm NOT a DBP fanboy in any way. i haven't used DBP in over a year, and i don't really plan on using it again.
Ratty Rat
22
Years of Service
User Offline
Joined: 24th Sep 2002
Location:
Posted: 31st Aug 2004 18:25
Animated Sprites: Once created your a bit stuck with these, it would be nice if you could copy single frames in/out of an animated sprite and add extra frames from a second image/file.

Joined sprites: IE you define the join offset and then setting one sprites position moves the other as well.

Sprite Alpha Mask: Rather than just setting a colour to be the transparent part of a sprite why not be able to set it as a 2 colour image, the same mask could then be used for multiple sprite images.

RR

"Don`t try to engage my enthusiasm, I don`t have one"
IanM
Retired Moderator
22
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 31st Aug 2004 21:39
Quote: "DRAW TO IMAGE would be equally descriptive, i would think"


Absolutely - it was quite late when I posted that

Final suggestions from me -

I would like to be able to have a sprite assigned to a collision group, so I could run a fast collision test of one sprite to a group of sprites. Currently you can have one-to-one and one-to-all. I'd like one-to-many.

Pixel-perfect collision should have a new set of commands/functions. Sometimes you don't need collision to be pixel-perfect, so you shouldn't have to pay the price unless you need to.

*** Coming soon - Network Plug-in - Check my site for info ***
For free Plug-ins, source and the Interface library for Visual C++ 6, .NET and now for Dev-C++ http://www.matrix1.demon.co.uk
Duffer
21
Years of Service
User Offline
Joined: 9th Feb 2003
Location: chair
Posted: 1st Sep 2004 04:39
1)Howz about a command which combined multiple dbpro images (or .jpg?) to create an animation (ie. mpeg or avi). Now that would be snazzy for creating game intros or perhaps recoding the action in the 3d viewport ie. grabbing the image from the camera and then combining images to make an animation -.... would be useful for both 2d image stuff and 3d stuff...

2) someone will now tell me how to do this - but is there a simple way to extract the red, green and blue byte values separately from a colour? ie. values for each between 0-255?

3) command to combine 2 or mayble even 3 images describing % dominance of each image...?

4) make rotation calcs for images faster ie. fast enough to do live in a game...

5) a simple single command to 'explode' or perhaps also to 'burn' an image as an animated sprite - perhaps to create an animated sprite from an image as an 'explode' or a 'burn'?

6) perhaps some simple texturiser commands adding basic types of texture to an image?
ThomasFN
20
Years of Service
User Offline
Joined: 26th Aug 2004
Location:
Posted: 1st Sep 2004 05:26
The main problem with creating a 3D game is the mouse. I have got code which does a 3D mouse, but not very well. I need a command that will convert 2D mouse co-ordinates to 3D co-ordinates relative to the angle of the camera. This may seem complicated, but when you get your head around it, it is SO simple. Then, you could have the same command inverted. This may seem hard, but I'm sure that if Dark Basic Pro could do all it can now, it must be powerful enough to do this. Now I might be expecting alot now, but Dark Basic was designed to simplify creating a graphics engine, and 2D to 3D is a vital part in game programming, email me and I'll give you PLENTY of examples. Thanks for reading this (if you have)

Thomas Smith
XpMe
20
Years of Service
User Offline
Joined: 8th Jul 2004
Location: Dallas Texas
Posted: 1st Sep 2004 08:24
Pixel perfect sprite collisions
Should include these collisions also...

sprite to image (for those who mix images and sprites)
image to image (for those who are not using sprites)
sprite to all screen edges
image to all screen edges (for those who are not using sprites)

<MOVE SPRITE Sprite Number, Velocity >
plus include these also...
(Without having to rotate the sprite)
angle, up, dn, left, right, AND
current x/y to screen location x/y(maybe have it zig zag or slightly drift
(like the curve in outside telephone lines) but end up at
location x/y in the end. And while you are at it, add to the
MUSIC command set. This would also help improve a game.
spooky
22
Years of Service
User Offline
Joined: 30th Aug 2002
Location: United Kingdom
Posted: 2nd Sep 2004 04:45
@ThomasFN - there is already a 2D to 3D command called PICK SCREEN - try this code. Will place a sphere 10 units in fron of camera wherever mouse is:




Boo!
Dot Merix
21
Years of Service
User Offline
Joined: 15th Oct 2003
Location: Canada
Posted: 2nd Sep 2004 08:36
I know there is a move sprite command

But i think this should be modified to all four directions

MOVE SPRITE UP sprite number, velocity
MOVE SPRITE LEFT sprite number, velocity
MOVE SPRITE DOWN sprite number, velocity
MOVE SPRITE RIGHT sprite number, velocity

Shouldnt have to turn the sprite to move it in another direction.

- Merix

Athlon xp 2400+, 1.0GB Ram, Radeon 9800PRO 128mb
Angel Lazerus
20
Years of Service
User Offline
Joined: 8th Feb 2004
Location:
Posted: 3rd Sep 2004 00:01
How about some timers like in the Amstrad 6128s Locomotive Basic 1.1?

One of the commands I remember from it was EVERY.
EVERY 60 gosub SUBsubroutine.

I know its not quite 2D but neather was my Amstrad. LOL

We could have something like :

TIMER(num,time,label)

num - the specific timer.
time - amount of time between sub calls.
label - label of the sub you want to use.

You could have TIMERSUB or TIMERFUNCTION for both types respectively.
You could use this for animating your sprites/images/characters (which is quite easy to do and someones got a tutorial on it somewhere but I cant remember where. LOL. )
DrakeX
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location:
Posted: 3rd Sep 2004 06:57
"2) someone will now tell me how to do this - but is there a simple way to extract the red, green and blue byte values separately from a colour? ie. values for each between 0-255?"

RGBR(), RGBG(), and RGBB().

OK enough of that damn DBP fanboy banner. i'm NOT a DBP fanboy in any way. i haven't used DBP in over a year, and i don't really plan on using it again.
Emperor Baal
20
Years of Service
User Offline
Joined: 1st Dec 2003
Location: The Netherlands - Oudenbosch
Posted: 3rd Sep 2004 19:36 Edited at: 3rd Sep 2004 19:36
Ok, after reading all posts 2 times, I've put all possible and useful ideas in this list:



OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 3rd Sep 2004 19:43
Quote: "someone will now tell me how to do this - but is there a simple way to extract the red, green and blue byte values separately from a colour? ie. values for each between 0-255"

You can also do it like this :

colour - RGB colour
red=colour && 255
green=(colour>>8) && 255
blue=(colour>>16) && 255


Come to the UK Convention on the 23rd & 24th of October
CloseToPerfect
21
Years of Service
User Offline
Joined: 20th Dec 2002
Location: United States
Posted: 4th Sep 2004 13:41
A command I have made and use alot is a pixel particale generator.
particale( number_of_patrs, radius, velocity, direction, loop, gravity, rgb_value)

number_of_parts is how many pixels to use- for denisity
radius - how far out from center they go
velocity - is how fast they expand out
direction - 0 for even circle, or a value up to 360 to aim it
loop to repeat it over and over or only do it once.
gravity - 0 would be no gravity effect, any other value would be a increasing fast falling effect
rgb_value - color value

RGT may be gone but the best DBP forum is still alive and kicking, check it out.
http://www.dannywartnaby.co.uk/rgt/
ThomasFN
20
Years of Service
User Offline
Joined: 26th Aug 2004
Location:
Posted: 6th Sep 2004 03:12
That would be useful, how about a 2D light? It effects all the sprites and brightens them according to distance

Thomas Smith
Duffer
21
Years of Service
User Offline
Joined: 9th Feb 2003
Location: chair
Posted: 6th Sep 2004 04:44
As well as rotating a 2D Image it would be damn handy being able to rotate it about a 'notional' 3d x,y and z axis - that would allow for far easier creation of isometric 3d (2d) games...
Sir Spaghetti Code
20
Years of Service
User Offline
Joined: 12th Jul 2004
Location: Just left of Hell
Posted: 6th Sep 2004 13:02 Edited at: 6th Sep 2004 13:02
What about a command to easily create game message boxes. Say for example:

CREATE GAME MESSAGE "bitmap.bmp",x#,y#,msgstring$,1

Whereas the "bitmap.bmp" is the image used for the background of the dialogue box, of course x# and y# are the location on the screen, the message is in the msgstring$ string, and 1 is the message box number (which keeps track of the message boxes, just like an object number).

So you could have, for example:

welcome$ = "Welcome to my village. I am the town drunk."
create game message "wordbubble.bmp",240,130,welcome$,2

This could be very handy for dialogue heavy games, such as RPG or adventure (like Zelda). You could have a function that is called each time you need a dialogue box, and just define the variables each time before you call it.

I know this is done in other ways as well, but I think this would be pretty handy.


"What is a game if not illusions stacked upon illusions?"
DrakeX
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location:
Posted: 11th Sep 2004 06:35
spaghetti code, no offense, but .... come on. after all it's so much work to make a sprite and write some text over it

OK enough of that damn DBP fanboy banner. i'm NOT a DBP fanboy in any way. i haven't used DBP in over a year, and i don't really plan on using it again.
Tapewormz
22
Years of Service
User Offline
Joined: 15th Sep 2002
Location: Winnipeg, Mantoba, Canada
Posted: 12th Sep 2004 10:17 Edited at: 12th Sep 2004 10:18
Quote: "Street Fighter style scanline floor routine"

Use a 3D plane that's textured for the floor. It's much faster. You don't need a specific 2D command for this.

LordAnki
20
Years of Service
User Offline
Joined: 22nd Apr 2004
Location:
Posted: 12th Sep 2004 10:52
why not also make this available for DBC users too. Not just DBPro. Some of us are to poor to afford DBPro.

Also hmm pixel perfect collision would be awesome as well as like a level designer thing that allows for easy level design for sidescrollers like Zelda 2 (The Gold cartridge NES one), as well as RPG's like FF3j (6 here) and stuff.
3ddd
20
Years of Service
User Offline
Joined: 14th Apr 2004
Location: Orlando, FL
Posted: 12th Sep 2004 12:14
I suggest expanding the image commands. Images are often used in 2D games, for example, when drawing tile maps.

* Obtain the width and height of an image
* Rotate an image
* Scale an image
* Skew an image
* Detect when an image overlaps with another (collision)
* Offset an image (as in Offset Sprite)

This thread discusses how to enable the "hidden" Image Width and Image Height commands in DBpro: http://forum.thegamecreators.com/?m=forum_view&t=38952&b=4


He's evil, but, he'll die. I like it.
CosMind
20
Years of Service
User Offline
Joined: 13th Apr 2004
Location: Earth
Posted: 14th Sep 2004 01:31
apologies for any repeats, but i don't really have much time to read through every post to see what's already been requested:


-pixel-perfect collision
-custom bounding boxes (define top/left/bottom/right for collision bounds)
-draw sprite bounding box
-custom origin (define the sprite's xy coordinate origin - i know that offset sprite can be used for a similar effect, but it is a bit too cumbersome and impractical)
-draw sprite origin
-bounding box update on sprite rotation (i.e. the bounds rotate along with the sprite)
-move sprite to a point (define destination coordinate and speed - sprite moves closer to destination coordinate each frame according to given speed)
-animated sprites should work exactly like single image sprites do (outside of the fact that they animate, of course)
-get animation function would be amazing; similar to get image, but requires a definition of inidvidual image size and number of images to grab from a defined number of rows/columns; the assigned "animation number" could then be called just as an image number
-mirror sprite once; currently calling mirror sprite is useless without extra code to ensure it only occurs the frame that it is called, since it will just keep flipping it back and forth otherwise (this function would execute once, and then be blocked until it is explicitly called again)


Quote: "How about... 2d lighting? Think Diablo II... create 2d light, change radius, color, hide or show; it'd only effect sprites, perhaps. Currently that kind of smooth lighting is, I think, only possible through serious memblock editing of images which is rather slow."

this would also be quite sick. an innovative 2d game titled gish (www.) has some wicked 2d lighting and shadowing that should be checked out
Riddick
20
Years of Service
User Offline
Joined: 7th Jul 2004
Location: Monkey Island!!!
Posted: 15th Sep 2004 01:47
I asked for it a while back, but now I will ask because of the prospect of a 2D pack.

Can we have a command that makes the Program use the DirectDraw files instead of Direct3D for 2D only apps?

Thanks
CosMind
20
Years of Service
User Offline
Joined: 13th Apr 2004
Location: Earth
Posted: 16th Sep 2004 09:47
this isn't only related to 2d, but since i'm working in 2d, this is the best time to request it:

how about command/function calls for keyboard and gamepad press and release actions (rather than the current hold detection)...

would be a dream to not have to create my own events for each
Dot Merix
21
Years of Service
User Offline
Joined: 15th Oct 2003
Location: Canada
Posted: 16th Sep 2004 14:35
What's the difference in between

if leftkey_pressed()

then if leftkey()

Either way, they both return if if the key is being pressed or not, do they not?

- Merix
IanM
Retired Moderator
22
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 24th Sep 2004 22:57 Edited at: 24th Sep 2004 23:02
One more ... The ability to load both standard and animated gifs. Loading an animated gif would be treated in the same way as CREATE ANIMATED SPRITE, except that you already know the number of images available.

[EDIT]F.Y.I, the patents on GIF have expired, making GIF legal to use without having to license the technology : http://cloanto.com/users/mcb/19950127giflzw.html[/EDIT]

*** Coming soon - Network Plug-in - Check my site for info ***
For free Plug-ins, source and the Interface library for Visual C++ 6, .NET and now for Dev-C++ http://www.matrix1.demon.co.uk
Neophyte
21
Years of Service
User Offline
Joined: 23rd Feb 2003
Location: United States
Posted: 13th Oct 2004 20:59
I know this is kind of late, but I've been busy so...

@Richard Davey

A very good 2D map editor that builds a map landscape up, any dimensions X or Y, using any building blocks that do NOT all have to be the same shape! It then exports in a format you can load directly into DBPro.

I can not express how much I'm 100% behind this idea! Content creation is a big hurdle when it comes to making your own game and I've been dreading having to write my own utilities. A map editor as powerful as the one that you describe with some kind of open format would be absolutely beautiful and merit a expansion pack all of its own.

The only thing I would like to add to that idea is the ablity to add annotations to the map file. By annotations I mean like internal comments or chunks of data. How this would work is that the map format should be tagged. The first 4 bytes are an identifier for the chunk in the map and the next 4 bytes are how big that chunk is. If the first 4 bytes are not a recognized identifier then the map loader will simply read the next 4 bytes to know how many bytes to skip ahead. This way it's possible to add your own special information to the file without the loader choking on it. You could get those chunks of memory by calling one of the following commands after the map has been loaded.

Return Integer = GET CHUNK BY VALUE TagId, MemblockNum
Return Integer = GET CHUNK BY NAME Name$, MemblockNum

TagId is an integer that the loader will use to find the desired chunk. If the TagID is identical to the first 4 bytes of one of the chunks then a memblock numbered with the MemblockNum parameter will be created to store the chunk. The returned integer will hold a pointer to the memblock.

GET CHUNK BY NAME is very similar to GET CHUNK BY VALUE except a string is used to identify the desired chunk. How this works is that a special identifier that the loader recognizes will be given to the first 4 bytes. After the next 4 bytes, which contain the size of the chunk will be a string that will be used to check against the string given in GET CHUNK BY NAME.

Also, being able to view the maps in iso or hex format would be nice as well.

@Everyone else

A lot of people have suggested multiple graphical effects ranging from motion blur to lighting(!). I think the solution to these problems is not individual commands but a few broad commands which can apply both to 2d images and as a side effect, 3d as well.

What I'm talking about is letting shaders be applied to images only. Currently, DBPro can not use shaders that use texture shaders(aka procedural textures) because they don't recognize them. Although I'm sure it will be remedied in the future, what I propose is that we have greater control over how procedural textures are generated. If we can assign an image number to procedural textures it is possible that we could apply these images to sprites.

Return Integer = RUN TEXTURE SHADER EffectNumber, ShaderName$, ImgNum, [[, Width, Height],Target$]

EffectNumber is the number of the effect which contains the procedural texture function. ShaderName$ is the string that contains the name of the procedural texture function. ImgNum is the image number that will be assigned to the new image created for the texture shader. Alternatively it could be the image that the procedural texture modifies. If the texture image is to be created then Width and Height are the width and height of the image respectively. Target$ is a string that contains the target profile for the shader. If it isn't provided the default will be "tx_1_0". The returned integer would basically tell you whether you succeded or not.

Effect constants for the texture shader could be set through the normal set effect constant commands using the same effect that the texture shader would use.

The above function would allow for motion blurring and lighting, however there is one major limitation. It can only operate on 1 image at time. It can't take in multiple images as arguments like a normal shader could via the texture object command. This somewhat limits the usefullness of the command though if it were added we would see some impressive effects being done to sprites.

There are only a few more commands that I can think of that are absolutely vital to this expansion pack. Chief amoung them is someway to position a sprite without using the sprite command.

The reason I ask for this is that When you create an animated sprite the only way for you to move it would be to use the move sprite command. However, if you are making an isometric game like me than using the move sprite command is just plain out of the question. And since animated sprite takes in a file instead of an image as a source for the animated sprite you can't just use the sprite command than switch back to an animated sprite. This is a seriously annoying problem that could very easily be fixed. I'll propose two commands that would fix this:

POSITION SPRITE SpriteNumber, X, Y

CREATE ANIMATED SPRITE SpriteNumber, Across, Down, ImageNumber

The parameters for position sprite are so straight foward they need no explaination. The only difference between my create animated sprite and the existing one is that it omits the filename parameter that would normally come after spritenumber and instead uses the existing image.

I'm proposing both commands instead of just the position sprite command because it's quite possible that I'll be compressing all of my images into a single archived file. This would make loading in an animated sprite from file impossible, but a simple compressed image to memblock-image from memblock combo would still allow me to use the create animated sprite command.

Finally, there should probably be some tutorials included with the 2d game pack that explain how to create various styles of 2D game. I could write a tutorial on isometeric games as that is what I'm currently creating. I think zircher said he was writting or has written a hex-based game(?). You could ask him for a tutorial on hex-based games. I'd be more than willing to lend whatever help I could to the expansion pack as I would imagine several others are. A series of tutorials with the expansion pack would definately boost its value. There really aren't many tutorials out for DBPro currently so the addition of a few would be a nice change.
dj chainz
20
Years of Service
User Offline
Joined: 25th Sep 2004
Location: England
Posted: 13th Oct 2004 23:04
What about photoshop-like blend modes - multiply, overlay, screen, luminosity and colour could be infintely useful to create new FX in 2D games. They run in realtime in most gfx packages - why not in a game? And maybe a few filters - like a gaussian blur and a sharpen?

And pixel perfect sprite collision is an absolute must! Also: loading a seperate image into the alpha channel of a sprite would be useful!

visit http://dbgame.blogspot.com on how to make a commercial-level game engine
1tg46
20
Years of Service
User Offline
Joined: 1st Feb 2004
Location: I dont know!
Posted: 15th Oct 2004 09:53 Edited at: 15th Oct 2004 09:57
Sorry to get a bit off topic, but is this thread for another enhancement pack that we will have to pay for, even though we should already have them in DBP without paying for them.


Join the group
Neophyte
21
Years of Service
User Offline
Joined: 23rd Feb 2003
Location: United States
Posted: 15th Oct 2004 10:14
@1tg46

Actually, I think the pack is going to be free.

From Newsletter 20:
Quote: "We are keen to get your feedback and, more importantly, your suggestions about the following. If TGC were to create a 2D Enhancement Pack (and utilities) what would you like to see it capable of doing? For a start we will implement much needed fixes such as pixel perfect collision on all forms of 2D as part of a free Upgrade, but beyond that what commands would you find useful?"


@Everyone

For a kicka$$ example of what shaders applied to a 2D game would look like check out this:
[href]http://www.facewound.com/img/pixelshaders.avi [/href](~8.0MB)

For more info on above game:
http://www.flipcode.org/cgi-bin/fcarticles.cgi?show=3&id=64217

I definately want to see DBPro become capable of doing something like this.
Skeletor
20
Years of Service
User Offline
Joined: 21st Jun 2004
Location: florida
Posted: 18th Oct 2004 10:20
I have not read through most of these post but I think a good command would be

set collision color rgb

This will make the color value mentioned above transparent and work with the point(x,y) command.

Okay well I hope this 2d pack comes out and has a lot of neat features, heck ill get it no matter what.


http://www.angelfire.com/games5/db_games/
Kentaree
22
Years of Service
User Offline
Joined: 5th Oct 2002
Location: Clonmel, Ireland
Posted: 28th Oct 2004 02:36
I'd like to see something like

sprite text spriteNo, string$, [font], [colour]

So you can just pass in some text, and its turned into a sprite for you, without the need of get image or having your own sprite font set up.

AMD Athlon XP2800+
GeForce FX5200 128MB
1.25GB DDR 333MHz RAM
Chris K
21
Years of Service
User Offline
Joined: 7th Oct 2003
Location: Lake Hylia
Posted: 29th Oct 2004 07:23
There should be an option to make colours closer to the transparency colour gradually more transparent.

So if had a red circle that faded to white around the edges it would be a red circle that faded out arounf the edges.

1tg46
20
Years of Service
User Offline
Joined: 1st Feb 2004
Location: I dont know!
Posted: 30th Oct 2004 05:26
Do you have any idea when these 2D pack ideas will be put into an upgrade[pack]?


Click the sig
Ilya
21
Years of Service
User Offline
Joined: 10th Aug 2003
Location:
Posted: 30th Oct 2004 07:41
Quote: " There should be an option to make colours closer to the transparency colour gradually more transparent.

So if had a red circle that faded to white around the edges it would be a red circle that faded out arounf the edges."


That's alpha mapping and it's already in DBP. Except in alpha mapping, you define how transparent areas are.

Quote: "I've seen the word programming and I'm not sure what it means. Anybody please explain?"


Quote: "We shouldn't sacrifice the truth to preserve "balance"."
Gervais
20
Years of Service
User Offline
Joined: 11th Mar 2004
Location: Canada
Posted: 7th Nov 2004 00:06
Adding the following command:

Get Next Free Image (This should return the next available image number so that we do not have to do a loop to verify which slot are available to use and it should use deleted slot)

Text to image (Super fast text command that could generate an image base on a maximum width and height. and that could recognize CRLF code to split lines)
Gunner
20
Years of Service
User Offline
Joined: 9th Apr 2004
Location:
Posted: 14th Nov 2004 21:21 Edited at: 14th Nov 2004 21:28
I'm really really, did i mention really already?
Looking forward to the 2D enh pack!

Definitly 2D shaders support for special effects

Also a --simple-- command to translate your mouse coords between 2d-3d and vice versa!

Most of the people here have already mentioned the rest of what i'd like to have in it soo keep up the good work!

Sash
Chris K
21
Years of Service
User Offline
Joined: 7th Oct 2003
Location: Lake Hylia
Posted: 14th Nov 2004 22:21
you mean pick screen?
Pincho Paxton
21
Years of Service
User Offline
Joined: 8th Dec 2002
Location:
Posted: 27th Nov 2004 02:34
Ok so when's it going to be ready?

Just waiting for pixel collision.

re faze
20
Years of Service
User Offline
Joined: 24th Sep 2004
Location: The shores of hell.
Posted: 28th Nov 2004 14:37
wow! dont ask them to write the game for you too!
however i would like to see an official tile format seeing as how they came up with the ingenious dbo format.

i made one up and it loads rather quickly watch below:

Note: if each layer has a max of 255 tiles, you could make a map and store it as a .bmp with an alpha channel (quite rare to see these days)


the same goes for a heightmap - you can combine an alpha channel with the image and when you make a memblock from the image from lets say gs3d you use the alpha channel data for the terrain and use the other data for the texture.

Login to post a reply

Server time is: 2024-11-22 17:53:22
Your offset time is: 2024-11-22 17:53:22