Jump to content

  • Log In with Google      Sign In   
  • Create Account


programming game levels


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
7 replies to this topic

#1 psiiiboy   Members   -  Reputation: 189

Like
1Likes
Like

Posted 13 March 2013 - 09:18 AM

hi guys ,

I am programming a 2-d game in c++ using opengl gfx . the game I am developing will contain a lot levels to be precise maps . can anyone advise me some nice way of creating them ? One thing I thought was to put all the levels information in one class (i.e. where to put walls or doors) then pass it to class where the evironment will be created  . or can we use Blender to create the maps ? I would love to hear your thoughts ....

 

thank you.



Sponsor:

#2 warnexus   Prime Members   -  Reputation: 1409

Like
0Likes
Like

Posted 13 March 2013 - 10:45 AM

Break up your game into multiple classes

 

Door Class

Wall Class

Environment Class

Game Class

 

The reason why this would work is because it is a good object oriented principle to know and it will save you a lot of headaches.

You can easily remove and add object of a particular class much more easily making your game more flexible.

 

This principle will also applied to any other game object of your game like graphical effects.


Edited by warnexus, 13 March 2013 - 10:46 AM.


#3 blueshogun96   Crossbones+   -  Reputation: 875

Like
3Likes
Like

Posted 13 March 2013 - 08:33 PM

I don't know what type of 2D game you're creating, but for level design, I'd recommend creating a level editor, if you haven't already.  First you need a clear definition and a list of what your game's levels will contain, then create your tool to save level data defining where walls, doors, enemy respawn points, whatever, into a scripting file like .xml or a custom format.  Using your own level editor would make your life much easier.  This way, you can put the relevant data in the right places upon load time. smile.png

 

Shogun


Follow Shogun3D on the official website: http://shogun3d.net

 

blogger.png twitter.png tumblr_32.png facebook.png


#4 BGB   Crossbones+   -  Reputation: 1554

Like
1Likes
Like

Posted 13 March 2013 - 08:59 PM

I don't know what type of 2D game you're creating, but for level design, I'd recommend creating a level editor, if you haven't already.  First you need a clear definition and a list of what your game's levels will contain, then create your tool to save level data defining where walls, doors, enemy respawn points, whatever, into a scripting file like .xml or a custom format.  Using your own level editor would make your life much easier.  This way, you can put the relevant data in the right places upon load time. smile.png
 
Shogun

agreed. also, potentially, for a 2D game, creating a level editor might be a learning experience or help give ideas for how to structure the game proper.

a few questions to try to answer in advance:
does it use tiles or polygons? what sorts of things can go on in the world? will it be side-view, top-down, or isometric? how will things like enemies spawn? ...

Edited by cr88192, 13 March 2013 - 09:04 PM.


#5 blueshogun96   Crossbones+   -  Reputation: 875

Like
0Likes
Like

Posted 13 March 2013 - 11:01 PM

I don't know what type of 2D game you're creating, but for level design, I'd recommend creating a level editor, if you haven't already.  First you need a clear definition and a list of what your game's levels will contain, then create your tool to save level data defining where walls, doors, enemy respawn points, whatever, into a scripting file like .xml or a custom format.  Using your own level editor would make your life much easier.  This way, you can put the relevant data in the right places upon load time. smile.png
 
Shogun

agreed. also, potentially, for a 2D game, creating a level editor might be a learning experience or help give ideas for how to structure the game proper.

 

Indeed.  Writing a level editor is great for having a sandbox to build your engine.  I wish I would have learned to do this BEFORE writing my game's engine to use in the actual game.  This way, your draw, sound and event handling code can be figured out before adding it to the game.  My primary game project suffers from much bad programming practice because I didn't apply this beforehand.

 

OP: If you do create a level editor, I recommend letting it share code from your game engine instead of writing totally separate code just for it.  

 

Shogun


Follow Shogun3D on the official website: http://shogun3d.net

 

blogger.png twitter.png tumblr_32.png facebook.png


#6 lawnjelly   Members   -  Reputation: 429

Like
0Likes
Like

Posted 14 March 2013 - 02:08 AM

P: If you do create a level editor, I recommend letting it share code from your game engine instead of writing totally separate code just for it.

 

Agreed, shared code is a very good idea.

 

You can also sometimes even build the editor as part of the game (lots of shared code!), depending on the project. However it takes a bit of discipline / modularization to stop the editor code interfering / complicating the game code, which is the trade off against the ease of 'getting something working'.

 

In my current 2d project I just change a #define and rebuild and it builds as the editor - switches off the game logic, adds menus and functionality for moving objects around on maps / changing terrain, loading / saving maps etc.

 

This isn't always feasible though. 3d levels in particular are often made poly by poly, rather than by just moving pre-built assets around. This is a much more complex editing task - and for this kind of thing level builders are more likely to use 3rd party software, like 3d studio max, maya, brush-based world editors etc, perhaps with plugins / conventions for adding game specific stuff. They may also do things like import the 3d levels into another editor (for adding more gameplay elements, pre-processing etc) prior to use in the game.

 

But when it comes down to it, the level itself is data, rather than 'part of the program', so it's usually (99.9% of the time) best to load it from a separate file rather than try and hard code it into the program itself.



#7 psiiiboy   Members   -  Reputation: 189

Like
0Likes
Like

Posted 14 March 2013 - 01:58 PM

thanks guys for your suggestion .. 

Break up your game into multiple classes

 

Door Class

Wall Class

Environment Class

Game Class

 

The reason why this would work is because it is a good object oriented principle to know and it will save you a lot of headaches.

You can easily remove and add object of a particular class much more easily making your game more flexible.

 

This principle will also applied to any other game object of your game like graphical effects.

 

I am creating this using OOP approach ... my main concern was how to create and handle multiple maps

 

 

I don't know what type of 2D game you're creating, but for level design, I'd recommend creating a level editor, if you haven't already.  First you need a clear definition and a list of what your game's levels will contain, then create your tool to save level data defining where walls, doors, enemy respawn points, whatever, into a scripting file like .xml or a custom format.  Using your own level editor would make your life much easier.  This way, you can put the relevant data in the right places upon load time. smile.png

 

Shogun

 

 

I don't know what type of 2D game you're creating, but for level design, I'd recommend creating a level editor, if you haven't already.  First you need a clear definition and a list of what your game's levels will contain, then create your tool to save level data defining where walls, doors, enemy respawn points, whatever, into a scripting file like .xml or a custom format.  Using your own level editor would make your life much easier.  This way, you can put the relevant data in the right places upon load time. smile.png
 
Shogun

agreed. also, potentially, for a 2D game, creating a level editor might be a learning experience or help give ideas for how to structure the game proper.

a few questions to try to answer in advance:
does it use tiles or polygons? what sorts of things can go on in the world? will it be side-view, top-down, or isometric? how will things like enemies spawn? ...

 

 

blueshogun96 , I really liked your idea of creating a level editor but could everything be done within 2 months .

well the game will contain 3d objects viewed from top and have orthographic projection  and the movement will be in 2d smile.png sorry , my mind gets mess up when I think whether i call it 3d or 2d game  . it  but yeah that's the type of game i am creating ryt know .

 

 

 


Edited by psiiiboy, 14 March 2013 - 01:59 PM.


#8 blueshogun96   Crossbones+   -  Reputation: 875

Like
0Likes
Like

Posted 14 March 2013 - 02:31 PM

Well, if you're using "3D in 2D", a level editor wouldn't hurt either, but it's up to you.  I just like the idea of being able to fully design and layout my maps instead of hard coding things.  smile.png

 

You can go ahead and use blender if you are comfortable with it.  I recommend it and have been learning to use it myself.

 

Shogun


Follow Shogun3D on the official website: http://shogun3d.net

 

blogger.png twitter.png tumblr_32.png facebook.png





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS