Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 16 Jun 2005
Offline Last Active Oct 23 2016 02:10 PM

#5316295 Complete Noob Trying to take a shot at game dev

Posted by on 23 October 2016 - 01:10 AM

I have used Pluralsight extensively and I like the courses that they have on there. Right now for Unity I like the content on CG Cookie as well.


It sounds like you are trying to go in a million directions at once. My recommendation would be to try to make a really small and simple game in whatever target technology that you choose. Build something basic and then tackle a slightly more complicated project. Keep expanding your skills gradually but don't try to bite off more than you can chew.


The important thing is to pick a direction and set about creating something. I find the best way to retain knowledge is to apply it. There are times that I have gone through a course on a technology and didn't really learn much until I set about using that technology on an actual project. Seeing people walk through things is often far easier than doing it yourself.

#5315447 Some questions for unity+C#

Posted by on 16 October 2016 - 12:32 PM

Your code has a bug in it:

void Update () {
        if (Input.GetMouseButtonDown(0)) ;
        Debug.Log("Pressed left mouse.");

The if statement here does not work because if statements never have semi-colons after them. So Debug.Log is getting called on every update.
If you removed the semi-colon then you could fix the issue. Even if it is a single line I always put brackets around the if statements.
void Update ()
    if (Input.GetMouseButtonDown(0))
        Debug.Log("Pressed left mouse.");

In Unity : https://docs.unity3d.com/ScriptReference/Input.GetMouseButtonDown.html


The documentation says:


"You need to call this function from the Update function, since the state gets reset each frame. It will not return true until the user has released the mouse button and pressed it again. button values are 0 for left button, 1 for right button, 2 for the middle button."


Here is a tutorial from Unity on persistent data and serialization: https://unity3d.com/learn/tutorials/topics/scripting/persistence-saving-and-loading-data


PlayerPrefs is an option as was mentioned. The documentation is here: https://docs.unity3d.com/ScriptReference/PlayerPrefs.html . This is simpler, but I am not crazy about the:


"On Windows, PlayerPrefs are stored in the registry under HKCU\Software\[company name]\[product name] key, where company and product names are the names set up in Project Settings."


I personally don't really like games that have to mess around with my registry. Also I might be wrong, but it seems like player prefs if they are being stored in the registry with just a project name key are not going to be able to support multiple save files or the ability to migrate/back up the save files easily.


Personally I would probably be more inclined to use JSON serialization: https://docs.unity3d.com/Manual/JSONSerialization.html  Although binary serialization can have a smaller file size at the expense of human readability (which for a save file you might not want it to be human readable anyway).

#5314368 Need programmer for a ball game

Posted by on 08 October 2016 - 05:19 PM

Hello Stucker,


I think you would get more feedback and offers if you provided some mockups of the concept up front. You could take some time to create graphics for the game and lay them out in Unity and then take some screenshots to help illustrate the game mechanics.


I am a bit confused about the comparison to Angry Birds but the fact that it is top down. One of the main mechanics of Angry Birds is the trajectory which is viewed from the side perspective. In a top down perspective how are you going to see the angle that you are shooting the ball? Or is it not involving a trajectory at all? If so I am really struggling to understand the game mechanics of your idea.

#5314299 what's up?

Posted by on 07 October 2016 - 07:38 PM



Do you mean this post: http://www.gamedev.net/topic/682685-card-game-needs-programmer/#entry5312764 ?


It looks like it posted fine to me. If this is not the topic you started then it does not show up in your history.

#5313159 How do desginer design their game to be fun?

Posted by on 28 September 2016 - 08:57 PM

This is a subjective topic and varies from person to person. I think that this is a skill that must be developed over time and some people are better at it than others... but largely I can tell you the following:


1. Remove the unfun parts of the game. A lot of times what makes a game not fun is if there are boring/frustrating/annoying aspects to the game that take away from the enjoyment. For example having to switch control schemes, overly complicated control schemes, buggy game mechanics, sloppy collision detection, annoying sound effects... Imagine if your platform game has a platform that requires you to jump "perfectly" to land on it... and it takes lots of attempts which makes the game very difficult for no reason... this would make the game less fun.


2. Get other people to play test the game. Often people are good at telling you what they don't like. You need to find people who are willing to be honest with you and let you know what they think. You don't want the play testers to feel like they can't let you know what they honestly think even if it is very negative.


3. Remove repetition and add detail. If your game has the same elements that repeat over and over then this will get boring. You also want to add variety to your levels. In a lot of games you want your levels to tell a story... you want each level to advance the plot/progression of the player and for the level itself to be unified. For example if you have a game set in a jungle then you would want the elements of the level to convey this setting. If you are fighting giant spiders in the jungle then you would want the spiders to emerge from a logical place in the level and you would want a way to avoid/hide from the spiders to be built into the level. If a giant invincible spider was to spawn from no where and kill you in one hit with you unable to avoid the spider, then that would be frustrating and not fun.


4. You need to playtest the game and balance the game elements. There are many parameters you need to tweak when developing a game. You need to adjust speeds, gravity, hit points, etc so that everything is well balanced.


Essentially your game will likely not start off fun. Fun emerges when you remove the boring/annoying/repetitive parts and add mechanics that balance well with each other.


I hope this didn't ramble too much :).

#5312592 HDRI Editor for blender

Posted by on 25 September 2016 - 08:09 PM

It looks pretty good. You might have better exposure if you put it on the blender marketplace: https://cgcookiemarkets.com/

#5311529 Why do most people recommend Python

Posted by on 19 September 2016 - 08:41 PM

Personally I love Python. I use it at work all of the time to develop scripts to make my life easier. One of the things I really like about it is that it is a batteries included language. If I need to do something there is a good chance that there are modules that make it simple to do it. For instance there are built in modules for parsing command line options, built in XML parsing, built in json parsing, built in sockets, built in regular expressions.. I can quickly put things together and accomplish results.


I have created Python scripts that parse monitor EDID information, scripts that handle tape drive swapping, scripts that work with data in spreadsheets, scripts that handle complex build tasks, scripts that help find patterns in log files, and tons more.


That being said use what you feel comfortable using. If Python is not your thing then learn something else. The key is to pick something and practice. You learn programming and get better at programming through writing lots and lots of programs. As you write programs you will run into situations where you ask yourself if there is a better way to do something and then you will learn new techniques.


I like trying to find the shortest and simplest ways to accomplish my goals as a programmer. The programming language I use does not matter to me. What matters to me is the task that I have in front of me to solve and for that I want the language that provides the most productivity per character.

#5309567 How long would it take to get good at game art?

Posted by on 05 September 2016 - 05:16 PM

I am not really an artist, but to get good at anything you must practice. I am a professional Software Engineer but when I first started programming (over 16 years ago) I was not very good at it. I have improved considerably in programming from when I started, but I still learn new things about programming on a regular basis!


Your current drawing abilities do not seem that bad as a starting point. If you put in the time and practice your drawing you will improve.


I really like the site http://cgcookie.com/ for learning about game art. They have courses on Blender, Unity, traditional drawing, etc.


Also modeling and animation are really different skills from drawing. Having the ability to draw helps, but there are a wide variety of skills involved with creating 3d graphics. Generally concept arts create artwork that is passed off to the modelers, and then the modelers create models that are passed on to the people doing the rigs/animations. Some people have multiple roles and sometimes they are broken up into specializations.

#5304116 Looking For Book To Learn The Basics

Posted by on 04 August 2016 - 10:43 PM

Perhaps this list:




Beyond books I really like the C++ content at pluralsight: https://www.pluralsight.com/


I also like the book "Game Programming Patterns" http://gameprogrammingpatterns.com/ . I know you don't want something specific to Game Programming but I still find this to be a good book.

#5303924 Python-Get String Between Two Characters

Posted by on 03 August 2016 - 11:42 PM

I would do it something like this personally:


I would start off by replacing the '~' characters in the string since they do not seem to add anything. You could replace these with an empty string. Then use re.split with either the '^' or '>' characters. You have to escape '^' because it has special meaning to a regular expression. Using the pipe character creates an or condition in a regular expression.


Then that would give me results but they would have a lot of whitespace, so I would use a list comprehension to get rid of the extra whitespace and to omit any blank entries from the list.


Below is the code:

#!/usr/bin/env python

import re

def main():
    target = ' ~~~~ ABC ^ DEF ^ HGK > LMN ^ '
    target = target.replace('~', '')
    target_list = re.split('\^|>', target)
    target_list = [entry.strip() for entry in target_list if len(entry.strip()) > 0]

if __name__ == '__main__':

That gives me:

['ABC', 'DEF', 'HGK', 'LMN']

#5286336 C# and Java interop

Posted by on 11 April 2016 - 12:04 PM

Perhaps something like: http://www.prodigyproductionsllc.com/articles/programming/decompile-java-using-c/


or https://msdn.microsoft.com/en-us/library/y9teabc2%28VS.80%29.aspx


Maybe one of those potential ideas will help you.


Also if I remember correctly jar files are really just zip files. You can "extract" the jar file and look at the class files inside of it... I don't know if you will be able to do much with the class files but if you extract the jar file to a temp directory and then iterate through the files you should be able to determine the names of things potentially.

#5258987 Formations in RTS (A* pathfinding)

Posted by on 25 October 2015 - 12:32 PM

I think a lot of games likely determine the position of the troops when you click to move them. Some games even have a little graphic to show where each of the units will be standing after you move them like:








If you know the start and end positions then you can have each unit do their pathfinding individually and use steering behaviors to keep units from running into each other.

#5254629 Help with debugging lua through luabind from C++

Posted by on 29 September 2015 - 11:18 AM

You might find this helpful:




The idea is to add an error handler and then through that you can add additional information about what exactly happened.


If you need to debug Lua code in general then here are some options:




Maybe you could use something like: http://studio.zerobrane.com/

#5250925 Generating and initializing content for a text RPG

Posted by on 06 September 2015 - 07:20 PM

Have you seen this?:




Every programmer has to fight syntax and "flounder around" at some points. It is part of it. Whenever you don't really understand the way something works it is going to be hard to work with. You may want to consider switching json parsers or perhaps switching languages. C++ is a notoriously difficult language to use/learn especially for people just starting out.

#5250783 Generating and initializing content for a text RPG

Posted by on 05 September 2015 - 09:49 PM

I personally would use JSON for this if I were implementing it today (In the past I might have used XML). You might want to learn about XML and JSON before looking at DB based solutions (which might be overkill for your application).




The key thing here is that your rooms would have some sort of identifier (ID) that you could use to jump between them.


For example if you had a room called "Castle" and one called "Moat" then you could have an entry "South" that told the game engine to go to the "Moat" room.


There are a number of libraries available for C++: http://www.json.org/