I'M Lost?

Started by
9 comments, last by Stugger 13 years, 4 months ago
Hello, I'm new here, but it seems like it would be a great place for help on gamedevelopment :P anyway, I've always have the dream of becoming a game developer and developing games for not only a profession, but as a hobby aswell, but I have no idea where to start? for my first game I wanted to make something like Mario written in Java (Which I by the way have no experience in) to sort of get the idea of game development to prepare myself for the bigger harder stuff, I have a friend willing to help me and he is very basic in Java and Visual Basic, but he's lost in game development aswell.

Some questions.

1. What is required in game making (2D and 3D) obviously some sort of programming language is required in this case it's Java, but what else?

2. I have my idea all planned out from time I am willing to work on the game to what kind of game it is and how it will be layed out, but where do I start? what do I do first?

3. The game (Mario Remake) will be in 2d for now so modeling wouldn't be a problem, but how would I make the Mario character and the background...etc? Paint? Photoshop?

if you can help, it'd be much appreciated.
Advertisement
Hello and welcome to GameDev!

To answer your question, the best way to start is to break down your problem into tiny steps and then work towards solving each of those steps individually. Eventually by combining these little pieces together, you will arrive at a game. A game is basically taking user input, processing that input to modify a game state, and then displaying that game state to the screen.

There are a lot of things that you need to know how to do to make your game and here is just a brief example:

1. How do you draw sprites and images to the screen in Java? Are the drawing routines fast enough to handle screen updates, or is something more game friendly needed such as: LWJGL (Lightweight Java Game Library)

2. How should you represent your level files? Do you use a text based file format, hard code the data in an array, or do you use a tile based map editor such as Mappy?

3. How do you move a character around the screen and react to user input? Do you use a mouse, keyboard, or joystick to move? How do you change the position of a sprite?

4. How do you scroll the screen?


As you can see these questions could go on all day. Search around, potentially try to create simpler games such as pong (get a ball to bounce around the screen, make a paddle react to user input and move, and get the ball and paddle to collide/the ball to bounce).

I prefer GIMP for creating sprites but your mileage may vary.

I hope this gets you started!

Hello and welcome to GameDev!

To answer your question, the best way to start is to break down your problem into tiny steps and then work towards solving each of those steps individually. Eventually by combining these little pieces together, you will arrive at a game. A game is basically taking user input, processing that input to modify a game state, and then displaying that game state to the screen.

There are a lot of things that you need to know how to do to make your game and here is just a brief example:

1. How do you draw sprites and images to the screen in Java? Are the drawing routines fast enough to handle screen updates, or is something more game friendly needed such as: LWJGL (Lightweight Java Game Library)

2. How should you represent your level files? Do you use a text based file format, hard code the data in an array, or do you use a tile based map editor such as Mappy?

3. How do you move a character around the screen and react to user input? Do you use a mouse, keyboard, or joystick to move? How do you change the position of a sprite?

4. How do you scroll the screen?


As you can see these questions could go on all day. Search around, potentially try to create simpler games such as pong (get a ball to bounce around the screen, make a paddle react to user input and move, and get the ball and paddle to collide/the ball to bounce).

I prefer GIMP for creating sprites but your mileage may vary.

I hope this gets you started!



Thank you so much for this, I find it very helpful, and I like your idea on the pong game, it'd be much simpler to start out with.

One more thing though; I'm afraid I don't fully understand example 2?

Hello, I'm new here, but it seems like it would be a great place for help on gamedevelopment :P anyway, I've always have the dream of becoming a game developer and developing games for not only a profession, but as a hobby aswell, but I have no idea where to start? for my first game I wanted to make something like Mario written in Java (Which I by the way have no experience in) to sort of get the idea of game development to prepare myself for the bigger harder stuff, I have a friend willing to help me and he is very basic in Java and Visual Basic, but he's lost in game development aswell.

Welcome!
For starters, you mention you have no experience in Java (or programming at all?). This is going to be your first big step if you go the route of a game programmer. Learn to think like a programmer, break things down logically, and write programs for it. Getting to your first graphical game could take a while. Tic-Tac-Toe, hangman, zork, and the like are where you will likely be starting out.

If programming isn't your thing, maybe you should look into Unity or GameMaker to take care of most the heavy lifting for you.


Some questions.

1. What is required in game making (2D and 3D) obviously some sort of programming language is required in this case it's Java, but what else?

2. I have my idea all planned out from time I am willing to work on the game to what kind of game it is and how it will be layed out, but where do I start? what do I do first?

3. The game (Mario Remake) will be in 2d for now so modeling wouldn't be a problem, but how would I make the Mario character and the background...etc? Paint? Photoshop?

if you can help, it'd be much appreciated.

1) Lots of stuff. Libraries for graphics, physics, and whatever else you may not want to program yourself. You'll need images of some kind. Development tools ( Java IDE like NetBeans ), etc. For 3D games, a Linear Algebra background is good for knowing how to move things around in 3d space.
2) Break it down into parts. Get images showing on screen. Get user input to move a box around. Figure out your dynamics for the player. Figure out collision, and how you are going to represent your map. Get your side-scrolling working. Get a level completed. Add enemies. Sorry if it seems very general, but you need to take each item in stride as a really small piece, and work it till you have something, then build up from there.
3) Photoshop. PNG or TGA format images to get transparency. Make a unified image set, so you can treat everything the same (ie all 64x64 tiles). Learn about Texture Atlases to speed up your drawing of the level tiles. They could also then be used for animating your characters (one atlast could contain different animations vertically with the frames of each animation horizontally). Focus on getting a bunch of colored squares up first, then worry about animating them and tiling them into something that looks interesting. Its much faster to iterate on your graphics once you have a game that properly displays them, than it is to make something really cool and struggle to get it to show up on screen properly.

Welcome!
For starters, you mention you have no experience in Java (or programming at all?). This is going to be your first big step if you go the route of a game programmer. Learn to think like a programmer, break things down logically, and write programs for it. Getting to your first graphical game could take a while. Tic-Tac-Toe, hangman, zork, and the like are where you will likely be starting out.

If programming isn't your thing, maybe you should look into Unity or GameMaker to take care of most the heavy lifting for you.


1) Lots of stuff. Libraries for graphics, physics, and whatever else you may not want to program yourself. You'll need images of some kind. Development tools ( Java IDE like NetBeans ), etc. For 3D games, a Linear Algebra background is good for knowing how to move things around in 3d space.
2) Break it down into parts. Get images showing on screen. Get user input to move a box around. Figure out your dynamics for the player. Figure out collision, and how you are going to represent your map. Get your side-scrolling working. Get a level completed. Add enemies. Sorry if it seems very general, but you need to take each item in stride as a really small piece, and work it till you have something, then build up from there.
3) Photoshop. PNG or TGA format images to get transparency. Make a unified image set, so you can treat everything the same (ie all 64x64 tiles). Learn about Texture Atlases to speed up your drawing of the level tiles. They could also then be used for animating your characters (one atlast could contain different animations vertically with the frames of each animation horizontally). Focus on getting a bunch of colored squares up first, then worry about animating them and tiling them into something that looks interesting. Its much faster to iterate on your graphics once you have a game that properly displays them, than it is to make something really cool and struggle to get it to show up on screen properly.



I have no programming experience at all, but I plan on learning Java, and hopefully C++ Down the road. I'm not too fond of using game making programs, as I want to learn to make a game from scratch. Thanks for the help too, I really appreciate it and it is quite helpful, the fog to learning game development is beginning to clear, but is still quite heavy.

I plan on taking a few Java and Game Development classes which should help alot, but I'd rather try and learn by myself first, and you guys are really helping me, thank you.
Try using the Java console to start out with. Make a TicTacToe game.

Don't worry excessively about graphics in your first stages.

Main thing is you're going to have a hurdle learning the language in the beginning, then you can start using more complex features of the language.

Try using the Java console to start out with. Make a TicTacToe game.

Don't worry excessively about graphics in your first stages.

Main thing is you're going to have a hurdle learning the language in the beginning, then you can start using more complex features of the language.



Sorry, noob here; Jave Console? Heh.

Sorry, noob here; Jave Console? Heh.


It is using text based output instead of visual output. When you create a java file you can execute it using a command line..

Using the console would be like:


public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, World!");
}
}


You can save this as a .java file, use javac to compile the java file to a .class file, and then run it under a command prompt using java myprogramhere.

Clever use of the console could allow you to create a game (all you have to do is output the game state to the screen) without the need to worry about graphics right now... just use text characters.

It might be a good idea if you are not familar with the Java language, but otherwise just start small with your graphics (such as pong) and you should be fine.

It is using text based output instead of visual output. When you create a java file you can execute it using a command line..

Using the console would be like:


public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, World!");
}
}


You can save this as a .java file, use javac to compile the java file to a .class file, and then run it under a command prompt using java myprogramhere.

Clever use of the console could allow you to create a game (all you have to do is output the game state to the screen) without the need to worry about graphics right now... just use text characters.

It might be a good idea if you are not familar with the Java language, but otherwise just start small with your graphics (such as pong) and you should be fine.



Thank you so much, you've been very helpful.

Do you have a download link to the Javac? and possibly for any other programs I might need? :)

Thank you so much, you've been very helpful.

Do you have a download link to the Javac? and possibly for any other programs I might need? :)

The javac comes with the JDK(Java Development Kit) which can be found from Oracles web site: http://www.oracle.com/technetwork/java/javase/downloads/index.html
I suggest you download the bundle that includes Netbeans so you get a friendly Java editor that helps you with writing and running your programs.

This topic is closed to new replies.

Advertisement