• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.

Josh Sanders

  • Content count

  • Joined

  • Last visited

Community Reputation

107 Neutral

About Josh Sanders

  • Rank
  1. Thanks for the feedback about copyright! I've updated my post to remove that because its not really relevant to the goal of this post. This is more of a personal project than anything else. I'm really not worried about copyright, as Heroes of Might and Magic III open source remake on github is a thing. But regardless, copyright issues are not the things I want to talk about, I really just want feedback on any other thing I've mentiioned.   As for why the post is in the lounge, to me the motivation was, "Hey, I've been thinking about doing this thing for a while, I wonder what people think about it". And I felt like general discussion was a good place for something like that. I'll move it to wherever it needs to be. Thanks for the responses so far!
  2. OpenGL

    [quote]As for your last question, are WhitePiece and BlackPiece really fundamentally different from eachother? Or is it just some of the behaviour that needs to change? Also, dont worry about object count, as long as you're not making any mistakes resulting in constant copy-ing of objects, you can use many thousands of objects.[/quote] Well, I thought about that, and I think the reason I came up with to make them two seperate classes, is that it might make it easier in the long run to program which moves a piece like say, the bishop is allowed to move. So Maybe I could say in psuedocode, if bishop is on black space, he can only move along other black pieces. But it seems like an enum would be better than making an entire class and object based on color. I was just thinking of the "is a" relationship, and a "has a" relationship. So the board HAS spaces, which ARE colors. So Board class is by himself. Space class is by itself with it's color that it IS rather than has. But I may be stretching that too far.. But holy crap rongshuxiacy I actually have that book right here and I've never looked into it!! I bought this book like.. 6 years ago and never thought to open it now because I was sure that all of the info and methods would be outdated and depricated. But I guess the main reason I didn't look is because I wanted to try and solve these issues without actually seeing a coded solution. I mean what use am I as a programmer if I can't even do something like this... I guess I would feel like I was cheating. And as for the UML, I will have a look at that. I remember doing a UML back in my freshman classes. It certainly might make it easier for me to convey my code logic. And thanks for saying I'm at least on the right path
  3. OpenGL

    Okay, first of all, thank you very much for the response! So it seems clear to me that I should write the game first, making everything modular, and then worry about openGL. So, if you would, please allow me to document my thought process here, maybe I will make this thread my diary, with you as my guidance . So, I sat down in Visual Studio 2012, and I made all of my classes. And Then I thought, it would be better if I created the classes as I needed them. So, I started with my ChessGame class. Then my thoughts are, I should create a GameBoard right? So I made a GameBoard class, and tried to develop an algorithm that would create the board: Problem: I need to create an 8X8 array that will serve as my chessboard. Each spot in the array will be white or black, and empty or containing a piece. Solution 1: Make an 8X8 int array. If it was an int array, I could specify if it were white and black by filling the array with 1's and 0's! However, then I thought, how would I tell the program that there is a piece in that spot? And more importantly, what piece is in that spot? Solution 2: Make a class called Spaces and fill the array with Spaces that have a white parameter, a black parameter, and a pointer to the piece that lies on it, if any. But would this make sense? Should i have a Space class with WhiteSpace and BlackSpace subclasses? But I think this could impose another problem. First of all, each space would be a new object which.. sounds a little extreme. And secondly, Each space would have a unique name, although I suppose I could name them as coordinates. Maybe I could use structs instead? Which brings me to the structure of my pieces. Should I have WhitePiece and BlackPiece classes? Could both of these problems be solved with an enum?
  4. So, I'm a student at UHV and I'm taking a class called Computer Graphics Applications, as is required for my degree in Computer Science - Digital Gaming and Simulation. We were assigned a final project, and I want to start working on that project now so that I can refine it until it is perfect by the end of the semester. I chose a chess game, rendered with OpenGL. This would do three things for me: (1) Help to make me more fluent in C++. (2) Help solidify OOP concepts I've been learning. (3) Give me a head start into Game AI before I take the AI class next semester So, I'm not sure if i will get much help on here, but any would be much appreciated. I'm not looking for somebody to tell me all of the answers, I would like to figure the code out on my own, but pointing me to the right concepts is what I really need. At this point, I'm not sure where to start.. Here is what I have: Classes: RED SubClasses: GREEN Data Members: BLUE Functions: PURPLE enum TurnState playerOneTurn,playerTwoTurn,Stopped enum GameState playerOneCheck playerTwoCheck playerOnecCheckMate PlayerTwoCheckMate InitializingGame Tie NormalPlay - [color=#ff0000]Player(abstract class)[/color] - [color=#008000]Computer(inherits from Player)[/color] - [color=#ff0000]ChessGame[/color] - [color=#0000ff]Player p1, p2[/color] -[color=#0000ff]TurnState turnState[/color] - [color=#0000ff]GameState gamState[/color] - [color=#ff0000]Move[/color] - [color=#0000ff]*Piece[/color] - [color=#0000ff]Location origin[/color] - [color=#0000ff]Location destination[/color] - [color=#ff0000]Location[/color] - r[color=#0000ff]ow[/color] - [color=#0000ff]col[/color] - [color=#0000ff]*ChessBoard[/color] - [color=#ff0000]ChessBoard[/color] -[color=#800080]isValid(move) //checks if the move is valid[/color] - [color=#ff0000]ChessPiece[/color](abstract class) - [color=#800080]GetValue() //returns an int value of the peice(for scoring)[/color] - [color=#800080]GetPosition() //returns the current position of a piece[/color] - [color=#800080]getIsSelected() //returns a boolean, true if selected, fale if unselected[/color] - [color=#800080]move() // moves the piece in a way dependent upon what piece[/color] - [color=#008000]Pawn[/color] - [color=#008000]Rook[/color] - [color=#008000]Queen[/color] - [color=#008000]King[/color] - [color=#008000]Knight[/color] So this is what I have so far. All of the pieces will inherit methods from Piece and be able to override those methods. But I have several questions: Where and how do I tie OpenGL into this? What classes should have openGL code in them? Should I make seperate classes for openGL?? Do I still make a 2d array in memory to store the position of the pieces? Or is eveyrthing done on screen? For example, would I say, " rook location is [1][3]" or would I tell openGL "When I click on this part of the screen, select the rook", or both? Are there classes I should add? What other functions will I need? How do i get started?