Question About Game Development

GameDevMich

Honored Hero
Since I can't get other developers to jump in this thread, I'm bringing their stories to you. This awesome blog was just posted by our CEO: What I believe about GarageGames. There are several stories detailing how people got into game development. Some with a lot more experience than myself.
 

GameDevMich

Honored Hero
Hmm, thread seems to have DIED down. With that in mind, here is a video of a mini-game I worked on in the past few weeks. Hopefully this gives you something tangible to ask questions about. While not a full game, it is like a vertical slice of a full version. AAA zombie models and weapons. Also, this engine is a relative to the one Legions was built on.

Enjoy in HD and ask questions!

 

Dacil

Member
Hmm, thread seems to have DIED down. With that in mind, here is a video of a mini-game I worked on in the past few weeks. Hopefully this gives you something tangible to ask questions about. While not a full game, it is like a vertical slice of a full version. AAA zombie models and weapons. Also, this engine is a relative to the one Legions was built on.

Enjoy in HD and ask questions!

its like killing floor!!! my ultimate favorite game, cause it never gets old for some reason....I had a random question about level design...it is possible to be a combo concept artist and level designer as a full time job? Or are the art people usually restricted to only artwork, 3D stuff, texturing, etc.
 

WildFire

Warrior of Linux
Hey Mich, I have recently started my AS Computing course and am so far loving it. We've been doing visual basic and even what I learned very basically in python is helping me. However, one problem that everyone in my class seems to be suffering from is understanding loops and how they work. This is a much general question, but generally in the programs we've been looking at, I can't find many examples of loops anywhere. There are three types, For, While and Do, but which one applies where and if so could you please use examples to explain it to me? Thanks.
 

Shisk

Member
...I can't find many examples of loops anywhere...

There are tons of tutorials / informations about them in the web because they occur in each halfway modern programming language

Another thing, if you ever pass over the goto statement, just try to avoid it as its a old relict from the time without structured programming

goto.png
 

Immanent

Member
There are three types, For, While and Do, but which one applies where and if so could you please use examples to explain it to me? Thanks.

Did and about to complete Computer Studies at GCSE, but as far as I know, while is used for a number of repetitions/duration that is unknown (say you don't know how many times the letter "a" appears for example, or for how long an integer appears on a screen)

For is used for a known number of repetitions/duration.

Not sure about do.

Maybe I just confused myself even further, who knows?
 

Triad

Legions Developer
Hey Mich, I have recently started my AS Computing course and am so far loving it. We've been doing visual basic and even what I learned very basically in python is helping me. However, one problem that everyone in my class seems to be suffering from is understanding loops and how they work. This is a much general question, but generally in the programs we've been looking at, I can't find many examples of loops anywhere. There are three types, For, While and Do, but which one applies where and if so could you please use examples to explain it to me? Thanks.

For loops are probably the most commonly used loops since you can declare your local variables that you need to use, specify all your conditions for looping, and specify all the updating code that should be executed after each iteration of the loop in one line of code. If you are new to programming, you may have recently learned about arrays which are commonly looped through with for loops. The examples below are valid for languages such as C++, Java, C#, Javascript etc. (those with a C based syntax).

// We declare our local variable "start" that we are going to use as a counter
// While start's value is less than 10, execute whatever is inside the loop
// After the code nested in the loop has been executed, execute the code "start++"
// which increments the value of "start" by 1.
for(int start = 0; start < 10; start++) { // This would make "start" iterate from 0 to 9 which is 10 iterations
// code​
}

// We can also do more complex loops. This example isn't very useful, but it shows
// you how you can declare multiple values, specify multiple conditions, and specify
// multiple update commands.
for(int a = 0, b = 100; a < 10 && b > 90; a++, b=b-2) {
// code​
}

// If you wanted to loop through an array backwards you would do something like this.
for(int a = array.length; a > -1; a--) {
// code​
}

As you can see, for loops are typically used with integers, but this is not always the case. You don't have to use integers in any of the loops.

While loops only provide a place for you to specify the conditions of your loop. The first for loop shown above would look like this if you used a while loop. You have to declare your counter variable ahead of time, and manually increment your variable inside of the loop. This can be useful if you don't always want to increment your variable at the end of the current iteration.

int start = 0;
while(start < 10) {
// code​
start++;​
}

While loops are used a lot when you need something to continue "while this is true". You could do something like while(aBoolean == false) or while(player.isNotDead()). While loops are also useful for infinite loops (although the other loops can do the same), such as while(true) or while(1). These types of loop will execute forever unless you break them. You have many infinite loops running on your computer right now, such as a loop that is constantly checking for keyboard input or mouse movement.

Do while loops aren't used as much as the others, but they are useful when you want the loop to execute at least once. Even if the condition is false, the loop will still execute the first time since the condition is at the bottom of the loop. The example below uses a do while because we definitely want to print out to the screen before we test the value of the "answer" variable.

int answer;
do {
cout << "Do you wish to quit or continue?" << endl;​
cout << "1 = Continue, 0 = Quit" << endl;​
cin >> answer;​
} while(answer);
 

GameDevMich

Honored Hero
Hey Mich, I have recently started my AS Computing course and am so far loving it. We've been doing visual basic and even what I learned very basically in python is helping me. However, one problem that everyone in my class seems to be suffering from is understanding loops and how they work. This is a much general question, but generally in the programs we've been looking at, I can't find many examples of loops anywhere. There are three types, For, While and Do, but which one applies where and if so could you please use examples to explain it to me? Thanks.
I think Triad explained it very well. The following additional information is purely based on my own programming habits, so do not take this as gospel.

The only thing I can add is that I tend to avoid while loops for any kind of iteration based on a value, unless it is some kind of main loop. For example, I would not use a while loop for something like this:

Code:
// Current game's player count
int playerCount = 0;

// Keep looping until at least three players have joined
while ( playerCount < 4 )
{
      // Check to see if the server recorded a player joining recently
      if ( playerJoinedRecently() )
      {
            playerCount++;
      }
}

That is probably a bad example since there are some missing elements, but hopefully you see what I mean about iterating based on value changing (playerCount). I tend to use a while loop when I'm iterating through objects, looking for a null pointer of some kind. A classic example is a linked list. Here is some pseudo code that demonstrates the approach, which should be applicable to several langauges:

Code:
// Set the currentNode to the beginning (head) of the list
MyNode currentNode = list.head;

// Loop through the linked list until we find the tail
while(currentNode)
{
  // If ->next is NULL, then the currentNode is the last in the list
  // If it is not NULL, go to the next node
  if ( currentNode->next != NULL )
  {
      // Move on to the next
      currentNode = currentNode->next;
  }
}

This really just repeats the core point Triad made. A while loop is best used for iterating without a known end. If you are still a little confused, we can break it down further for you, but I think Triad's post was spot on.
 

GameDevMich

Honored Hero
its like killing floor!!! my ultimate favorite game, cause it never gets old for some reason....I had a random question about level design...it is possible to be a combo concept artist and level designer as a full time job? Or are the art people usually restricted to only artwork, 3D stuff, texturing, etc.
I LOVED Killing Floor =)

It can't hurt to be skilled in both, especially when you were in smaller teams. As I mentioned in a previous post, our art team at GarageGames consists of specialists:

1 mesh artists
1 2D artist (textures and UI)
1 rigger/animator
1 technical artists
1 art director

All of them had a hand in creating the zombies you see in that video. Even with the game play, there were at least three people:

1 scripter
1 source programmer
1 asset developer

This is more traditional for bigger or professional companies. Indie and hobbyist teams tend to be smaller, so you see many hats being worn by the same person. However, with style, you have presented a scenario that is common between all: level designer and concept artist. Before we develop any levels, we concept them out on a white board. You'll see those concepts get drafted into thumbnails. Then those thumbnails are used to build the actual level.

If it were my team, I would have the person who made the concept art get their hands dirty with the actual level design and level building. That person had the vision, so they should be involved in some of the implementation work (booting up the level editor, placing objects, painting roads, etc).
 

curser656

Member
I've got a question mitch. I need the models for the outrider, sentinal and raider from legions, I'm assuming that the originals before being exported to the torque engine were fully rigged, does garage games have those saved somewhere and if they do what do I need to do to get them, I'm on the team that's working on the legions trailer.
 

GameDevMich

Honored Hero
I've got a question mitch. I need the models for the outrider, sentinal and raider from legions, I'm assuming that the originals before being exported to the torque engine were fully rigged, does garage games have those saved somewhere and if they do what do I need to do to get them, I'm on the team that's working on the legions trailer.

PM incoming.
 

GameDevMich

Honored Hero
If you do not have anything going on tonight, GarageGames is running a special event. We are going to broadcast a video stream of our 24 hour zombie game jam! In addition to streaming the video through our Ustream.tv account, we are going to be interacting with people tuning in. We'll be answering questions, explaining what we are doing, venting our dev frustrations, etc. From 9:00pm tonight until 9:00pm tomorrow, we are going to take our zombie demo and make it more of a game.

Full details can be found in this blog: http://www.garagegames.com/community/blogs/view/21324

What: Live video stream of a 24 hour zombie game dev jam. Watch some GG devs and designers work on a "vertical slice" of a game
When: 9:00pm (PST) 10/28/2011 - 9:00pm (PST) 10/29/2011
Video Stream: GarageGames Live Chat
Chat: You can interact with us via our IRC channel:

Server: irc.maxgaming.net
Port: 6667
Channel: #GarageGames

The Ustream.tv channel also has a basic IRC client, but you need a Ustream account to talk there. We'll probably take a break later in the evening, get some sleep (sleep off the alcohol) and get started again early in the morning. Should be a blast. If you show up in one of the channels, use your forum handle so I can recognize you.
 

SeymourGore

Flatulent Cherub
If it's any motivation to come out and watch the feed, Mich's boss was without pants for quite some time. I don't believe he realized this until somebody on IRC pointed it out.

Such dedication at GarageGames!
 

GameDevMich

Honored Hero
Working on a Torque-based project? Would you like me and five other GarageGames employees (coders, artists, managers) to work on your game? Here's your chance: *Be My Boss

*Any requests for me to remove articles of clothing will be denied
 
Top