• Advertisement

Recommended Posts

I am starting my first serious game in a LONG time and would like help in remembering and setting up my workflow.  I have an outline of my idea and have chosen two engines to test for best function.  I am refreshing my programming skills.  What I need now is some help deciding what to do first, then next, etc.  Initially it will be a two person work group with my wife as the resident artist (although I think I will be buying sprites and world art to speed things up).  I will be doing the heavy lifting as programmer and project manager.  HELP!!! and thank you in advance.

Share this post


Link to post
Share on other sites
Advertisement

I understood workflow in game design to be different then other programming tasks.  If not appropriate here then where?  Also I apologize.  I did not know I was in Business>Production and Management but now that I do work flow seems to me to be appropriate to the forum. Please enlighten me.

Edited by MagicMike
I found more information

Share this post


Link to post
Share on other sites

Actually I did a lot of research on "Where to start" a while ago, it's a common question. The info was gathered by chatting with developers and looking and postmortems of games.

Starting at the start:

Spoiler

 

This way the developer starts from the start menu of the game. Working the way up as the player would play the game.

+ It is ordered and smooth going. Things are planned as needed and the game can be tested as it is made. Recommended for new developers.

- Your code needs to be near perfect or you can't add to it later. Many developers complain that it is often easier to just add new things like tutorials as complete separate parts instead of merging it with the game.

 

 

Star by designing the level structure:

Spoiler

 

This is something that a lot of casual game developers use. Because small games have to be smooth and don't need to stream data all the time, there developers often use a lot simpler level systems.

You start by designing the "Scene" or "Level" class.

+ Starting with the level design allows for custom levels that is easy to make. This workflow is recommended for people who want 50 or more levels.

Difficulty curves are very easy to design this way.

- Very inflexible system, so everything should have been planned before production.

 

 

Start by prototype:

Spoiler

 

Most of the time the developer starts with a mechanic they feel is important to the game, makes a prototype and merges it with the main game.

This appears to be the most used.

+ Because each part is designed on it's own and well tested you get very high quality. The system is very flexible with mechanics added and removed as needed.

Very little planing is needed to get started.

- Slow production time. If something goes wrong with the main loops you have to rework a lot. Disjointed workflow that often has developers forgetting what each part does.

 

 

Start by problem solving:

Spoiler

 

The developer looks at the game as a problem, with a end goal in mind, then starts making the parts needed to reach the end goal.

This is what most experience developers use, they are so use to making games that they know exactly what is needed where. Like building a puzzle with the final image in hand.

+ Problems stand out as they are things the developer is inexperienced with. Fast development time with a good quality. Often the developer can make lists of things to do, allowing clear goals for each day.

- Takes years of experience.

 

 

I couldn't do each topic justice in a small post, I hope this is clear.

 

The truth is there is no real way to start a game. Every developer does there own thing and often starts different games different. Games is too complex to have a by the book way of starting them.

Often the best is just to start and don't think about it, let you instincts guide you.

 

A design document allows you to keep things ordered.

Share this post


Link to post
Share on other sites

Thank you Scouting Ninja. That is the kind of help I needed.  To be truthful this is my first attempt at a complete project as I only did my little section (except for a user interface job) of the programming.  Now I have to plan the work so I can work the plan.  I will be looking at all your references and many more as this is not the only forum I am joining.  I don't know if you can see the post from Tom, our moderator, But it seemed odd and not helpful.  Thanks again.

Share this post


Link to post
Share on other sites
3 hours ago, MagicMike said:

I understood workflow in game design to be different then other programming tasks.  If not appropriate here then where?  Also I apologize.  I did not know I was in Business>Production and Management but now that I do work flow seems to me to be appropriate to the forum. Please enlighten me.

I think you're unfamiliar with what we mean by "game design." Game design is a subset of game development. Programming is a subset of game development. Programming is not a subset of game design. 

Share this post


Link to post
Share on other sites
2 hours ago, MagicMike said:

the post from Tom, our moderator, But it seemed odd and not helpful.

It isn't that the moderator is unfriendly, the exact opposite in fact.:) The moderators give that message to show that the post has moved, it isn't part of the topic. It is only so you know why and that it did move. There is no penalty for it.

It's also not uncommon for moderators to not answer these questions that get asked hundreds of times. However from personal experience I know they answer topics that have been left unanswered for a few hours.

They also answer the difficult topics, leaving these smaller open discussion topics for the community.

4 hours ago, MagicMike said:

If not appropriate here then where? 

The rule of thumb for the game design forum is that if you use the word "design" it probably belongs there. For example: "I was working on this level design..."

Some of the topics are difficult to place, so they get moved around a bit.

 

The reason it works like this is because people browse topics they like and can help with. For example I am a artist, so I check the art forum each day. I don't check the Business forum because I have little advice to give there.

Your topic gets moved to the people who can best answer it. The people who post are in fact trying to help you.

 

The beginners forum also has a unspoken rule to be extra friendly to the poster, so if you have a difficult topic that you fear you know nothing about, that is a safe place to post it.

The Critique and Feedback forum is about honesty above all else; or at least it should be.

 

2 hours ago, MagicMike said:

To be truthful this is my first attempt at a complete project as I only did my little section (except for a user interface job) of the programming.

It's good that your working to finish a project, it's something all developers should aim to do first.

Once you make that first game from start to end, everything starts to go easier. Making a small puzzle game is often the easiest or a remake of a retro game.

2 hours ago, MagicMike said:

I will be looking at all your references and many more

There is lots of developers who posts postmortems on there games in the blogs, they make for great reads and they can be goldmines of information.

 

Welcome to the community, this is a place for sharing knowledge so don't be afraid to respond to posts.:D

Share this post


Link to post
Share on other sites

I understand why we have moderators, and I did have a different more encompassing meaning for game design.  My complaint was because I was given notice of the move with scant reason and no indication of where it was moved.  When people ask for help of course we do not know what we should.  Please educate us first and scold us second.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Advertisement
  • Advertisement
  • Popular Tags

  • Advertisement
  • Popular Now

  • Similar Content

    • By Swift Katana Studios
      Do YOU play Horror Games; if so WHAT is your favourite and WHY?
      Hello! I want to develop a Horror Game for PC and Consoles, however, I need to understand WHY people enjoy playing Horror Games. 
      Here's a list of Questions:
      What's your favourite Horror Game and Why? What environment scares YOU the most? What Creature/ Enemy scares YOU the most? Do YOU like Maze's/ Labyrinths?  Do you enjoy Puzzles/ Riddles? Thanks for taking the time out of your day to read this topic, I appreciate it!
       
    • By cesarpachon
      hello, I am trying to implement a realistic simulation of a roulette wheel. it is not clear for me what is the proper way to simulate the initial status of the ball, when it spins against the edge of the wheel until it loss energy and start falling towards the centre.
      I modelled the conic table as a height map, as I assume that would provide the smoother surface. but I see anyway there is rough squared corners everywhere, so really I don't have a smooth inner wall to slide against.
      I wonder if I should ignore the wall and simulate the sliding by code. i.e: apply force (or impulse?) each frame to keep the ball at a fixed radius and somehow force it to follow a desired angular speed..  later, when I want to execute the falling behaviour, just stop applying that forces and let the simulator and the gravity do their work.. makes sense?
      any advice is highly appreciated!
       
    • By getoutofmycar
      I'm having some difficulty understanding how data would flow or get inserted into a multi-threaded opengl renderer where there is a thread pool and a render thread and an update thread (possibly main). My understanding is that the threadpool will continually execute jobs, assemble these and when done send them off to be rendered where I can further sort these and achieve some cheap form of statelessness. I don't want anything overly complicated or too fine grained,  fibers,  job stealing etc. My end goal is to simply have my renderer isolated in its own thread and only concerned with drawing and swapping buffers. 
      My questions are:
      1. At what point in this pipeline are resources created?
      Say I have a
      class CCommandList { void SetVertexBuffer(...); void SetIndexBuffer(...); void SetVertexShader(...); void SetPixelShader(...); } borrowed from an existing post here. I would need to generate a VAO at some point and call glGenBuffers etc especially if I start with an empty scene. If my context lives on another thread, how do I call these commands if the command list is only supposed to be a collection of state and what command to use. I don't think that the render thread should do this and somehow add a task to the queue or am I wrong?
      Or could I do some variation where I do the loading in a thread with shared context and from there generate a command that has the handle to the resources needed.
       
      2. How do I know all my jobs are done.
      I'm working with C++, is this as simple as knowing how many objects there are in the scene, for every task that gets added increment a counter and when it matches aforementioned count I signal the renderer that the command list is ready? I was thinking a condition_variable or something would suffice to alert the renderthread that work is ready.
       
      3. Does all work come from a singular queue that the thread pool constantly cycles over?
      With the notion of jobs, we are basically sending the same work repeatedly right? Do all jobs need to be added to a single persistent queue to be submitted over and over again?
       
      4. Are resources destroyed with commands?
      Likewise with initializing and assuming #3 is correct, removing an item from the scene would mean removing it from the job queue, no? Would I need to send a onetime command to the renderer to cleanup?
    • By RJSkywalker
      Hello, I'm trying to design a maze using a mix of procedural and manual generation. I have the maze already generated and would like to place other objects in the maze. The issue is the maze object is created on BeginPlay and so I'm unable to view it in the Editor itself while dragging the object to the Outliner. Any suggestions?
      I'm thinking of doing something in the Construction Script or the object Constructor but not not sure if that would be the way to go.
      I'm still getting familiar with the Engine code base and only have a little experience in Maya or Blender since I'm a programmer.
    • By devbyskc
      Hi Everyone,
      Like most here, I'm a newbie but have been dabbling with game development for a few years. I am currently working full-time overseas and learning the craft in my spare time. It's been a long but highly rewarding adventure. Much of my time has been spent working through tutorials. In all of them, as well as my own attempts at development, I used the audio files supplied by the tutorial author, or obtained from one of the numerous sites online. I am working solo, and will be for a while, so I don't want to get too wrapped up with any one skill set. Regarding audio, the files I've found and used are good for what I was doing at the time. However I would now like to try my hand at customizing the audio more. My game engine of choice is Unity and it has an audio mixer built in that I have experimented with following their tutorials. I have obtained a great book called Game Audio Development with Unity 5.x that I am working through. Half way through the book it introduces using FMOD to supplement the Unity Audio Mixer. Later in the book, the author introduces Reaper (a very popular DAW) as an external program to compose and mix music to be integrated with Unity. I did some research on DAWs and quickly became overwhelmed. Much of what I found was geared toward professional sound engineers and sound designers. I am in no way trying or even thinking about getting to that level. All I want to be able to do is take a music file, and tweak it some to get the sound I want for my game. I've played with Audacity as well, but it didn't seem to fit the bill. So that is why I am looking at a better quality DAW. Since being solo, I am also under a budget contraint. So of all the DAW software out there, I am considering Reaper or Presonus Studio One due to their pricing. My question is, is investing the time to learn about using a DAW to tweak a sound file worth it? Are there any solo developers currently using a DAW as part of their overall workflow? If so, which one? I've also come across Fabric which is a Unity plug-in that enhances the built-in audio mixer. Would that be a better alternative?
      I know this is long, and maybe I haven't communicated well in trying to be brief. But any advice from the gurus/vets would be greatly appreciated. I've leaned so much and had a lot of fun in the process. BTW, I am also a senior citizen (I cut my programming teeth back using punch cards and Structured Basic when it first came out). If anyone needs more clarification of what I am trying to accomplish please let me know.  Thanks in advance for any assistance/advice.
  • Advertisement