How to get from A to Z (or my first dev blog)

Discussion in 'Indie Basics' started by Neoflash, Sep 25, 2016.

  1. Neoflash

    Neoflash New Member

    Joined:
    Sep 25, 2016
    Messages:
    1
    Likes Received:
    1
    3 months ago, at age 36, I decided I wanted to create something... anything. A book, a movie, a painting, a chair, a human being (wife said no)... I ended up choosing a video game. Trouble is, although I have had PCs and have been playing video games, since 1988, until 3 months ago, I had 0 knowledge of programming computer graphics design and animation. So I started on a long journey to acquire the knowledge and skills necessary to design and build a video game.

    I've been reading books, research papers, articles and tutorials on game design, programming, procedural content generation etc. I downloaded, installed and started fooling around with, notepad++, NetBeans, Construct 2, Unity 5, Unreal Engine, Inkscape, GIMP, Blender and more. So, on my journey to get from A to Z I'm now at A and half; I have a working knowledge of Javascript, can make a ball rolling "game" in Unity and know just about enough to open a new project in all the aforementioned programs.

    For fun, and to learn, I have designed and programmed a simple demographic simulation with javascript but it only outputs strings to the console. No graphics at all. I now have just enough knowledge to know that I don't even have near enough knowledge to get started on my game. I want to build a 3D simulation / strategy / management game.

    I'm getting a bit tired of doing random tutorials. Most of them are geared towards side-scrollers, shooters and RPGs. I find it very difficult to find beginner tutorials for sim games. For instance I have been reading some interesting stuff on procedurally generated cities but they all assume a working knowledge of concepts I do not yet understand or don't give quite enough details on the mechanics. I always find myself thinking "Wow this L-System stuff to generate a network of roads is really cool but how does the computer generate and store the road data so that it can actually be used by other game objects and not simply be a nice graphic representation of a road network" or "This way of generating buildings is really cool but how does the computer know to place it there and not on top of a road and is the building now an entity (object) that can be interacted with in the game world or is it just there for the looks?"

    I'm starting to realize that in order to keep it fun and interesting, I need to focus my efforts and actually start and complete intermediate projects before I gain enough knowledge to get started on my grand game idea. Ideally, I would like these projects to help me build skills and knowledge that will be relevant to my final project. I might be wrong but the set of skills, techniques and knowledge necessary to build a game like Civilization VI is probably quite different than what is required for Super Meat Boy, Battlefield or Dragon Age. So, here is where I'm hoping some of you can help me. What projects should I work on next? What should I learn in the process? In what order? What would be the logical progression to get from A (and half) to Z? I'm open to any ideas and suggestions, as long as it helps me build skills relevant to my ultimate game project.
     
    AigoiA likes this.
  2. Topemu

    Topemu New Member

    Joined:
    Sep 29, 2016
    Messages:
    32
    Likes Received:
    3
    awesome! thanks for the insight
     
  3. Frank Cortez

    Frank Cortez New Member

    Joined:
    Mar 4, 2017
    Messages:
    4
    Likes Received:
    0
    Thats really awesome.
     
  4. kevintrepanier

    Original Member Indie Author

    Joined:
    Feb 14, 2006
    Messages:
    350
    Likes Received:
    54
    For system design : you might want to start by designing some maths simple enough to be handled in a paper prototype (kind of a board game maybe?). This will force you to ask yourself many questions like how to represent population, paths and resources, how to have them interact together meaningfully and how to balance their interactions in a way that the player can progress toward a goal but have some challenge in doing so.

    For programming : definitely learn object oriented concepts. No matter what tool you end up using, this will help you organize your stuff. Reading your post, I'm getting that you're more interested by the system design than by programming or art creation. Get a simple art style that will do the job of representing your idea, be it 3D or 2D, it doesn't matter but I wouldn't stress too much about that. As long as things are easily recognizable, this can get you a long way and you can improve it later, when the design is fun and interesting.

    Reduce the scope of what you want to do to something manageable (don't try to do Civ VI, you'll go insane). The paper prototyping will help you with that since there is only so much you can handle on a tabletop. And it will give you a clearer vision of how to implement it in code later. Even if it ends up being only a short 5 minutes game, no problem. If there is depth and various possible paths to take, you already have something interesting for a first game.

    Always try to balance strategic thinking (think decisions that involve trade-offs) with a decent amount of randomness (dice rolls, cards, hidden tokens, etc..). This helps make the game exciting and refresh the experience with every play.

    Hope this helps. Good luck.
     
    Austyn R. and AigoiA like this.
  5. AigoiA

    AigoiA New Member

    Joined:
    Mar 21, 2017
    Messages:
    1
    Likes Received:
    0
    I want to make a game like Civ VI also... and I saw the same problem... It is very difficult to find beginner tutorials for this games... So I try to make a simple 2D board game... like reversi using a game engine as a first step... Because Civ series is based board game... GitHub helps me to make it...
     
    #5 AigoiA, Mar 21, 2017
    Last edited: Mar 21, 2017
  6. Nomosoro

    Nomosoro New Member

    Joined:
    Mar 22, 2017
    Messages:
    1
    Likes Received:
    1
    Highly agree with suggestions from @kevintrepanier.

    I am a on-road programmer for about 3 years and a fresh to visual art and system design, so considered that I am only a bit ahead of your progress, I think I can share some useful tips:
    • Aim high but start low. Every project, especially as complicated as an software application, involves hundreds and hundreds hours to learn and implement. And nearly every big scale project was built from prototype, then got all its juicy features added and polished. In your case, you can start to build a turn-based prototype project, maybe as simple as just build a chosen tile random building at each turn, that's already something in fact.
    • Step by step. Let's continue my suggestion, say if you are now building a turn-based prototype project, you can split them into multiple sub-project: 1.design a map. 2. build something on some point. 3 click a map tile then build there. You can see that each sub-project is specialized and kind of independent to the other, so you can focus on develop a single step at a time rather than consider all the things in a whole which will drive you mad in later point. It is way more interesting and way less frustrating as well, no one likes to develop a thing for a whole week with nothing meaningful done. Sub-projects would accelerate the speed to gain positive feedback and will make your even more efficient and consistent on your work.
    • Separate art and logic/system. A game can always be abstracted without a stunning visual art, and this is one of the principles in the game industry that the development of art and system are supposed to be separated, paralleled rather than affecting each other all along the process. If you are good at art, you can do couple of buildings/characters first then try to install them into the system, or if you are good at system design and coding, do them first with dummy cubes or spheres as testing objects, implement a playable system first and then switch to art decoration.
    Those are my experience and I hope they can help.
     
    AigoiA likes this.

Share This Page

  • About Indie Gamer

    When the original Dexterity Forums closed in 2004, Indie Gamer was born and a diverse community has grown out of a passion for creating great games. Here you will find over 10 years of in-depth discussion on game design, the business of game development, and marketing/sales. Indie Gamer also provides a friendly place to meet up with other Developers, Artists, Composers and Writers.
  • Buy us a beer!

    Indie Gamer is delicately held together by a single poor bastard who thankfully gets help from various community volunteers. If you frequent this site or have found value in something you've learned here, help keep the site running by donating a few dollars (for beer of course)!

    Sure, I'll Buy You a Beer