Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 12 Mar 2005
Offline Last Active Today, 12:08 AM

#5308390 Why can't I print out my std::string vector?

Posted by on 28 August 2016 - 03:17 PM

Access violation reading location 0x00000018.

Looks like you are calling a member function on a null object.
Such as:
myThing = null;
Look on your stack trace, go back out on the stack to the outermost function that you wrote, and look for a null pointer on any object.

For example, maybe a null pointer value for the string you are trying to print.

Forgot to mention that the error leads me to line 512 in the file xstring.

You're looking in the wrong spot.  While it is remotely possible that you found a bug in the standard library, consider that the libraries are used by millions of programmers around the globe every day.  The odds that it works correctly for everybody else but is broken for you is astonishingly small.  
Always assume the error is in your code, not in the standard library. 

  for (int i = 0; i < map.size(); i++)

Following a hunch, it could be that map[i] doesn't exist, or that it doesn't contain a string (it is empty).

#5308309 2D Card Game

Posted by on 28 August 2016 - 12:32 AM

There are many game engines out there especially built for card games.   Have you done any web searching for those, or tried any already?

#5308308 What can we sell a game as without incorperating?

Posted by on 28 August 2016 - 12:27 AM

There are several things. Assuming the US:


No, you cannot just make up a name and start using it in commerce.  


One step you've got to do is create a legal entity for a fictitious name.  That can be as simple as filing paperwork with the government for "Doing Business As", or it can mean incorporating.  Two of the more popular are LLC and S-Corp. Any format can work, you'll need to do some homework about each.  The rules vary by state, as do the way taxes work.  There is also likely a Small Business Administration office near you (wherever you are in the US) and people at the office can help you figure out the government regulation side of things. You may also want to visit with a business lawyer for getting the paperwork in order.  The fee varies by state, often in the $50 range but a few states are quite expensive.


Another thing you've got to do is ensure the rights are consolidated.  This can be through a collaboration agreement, rights assignment, employment agreement, or other means. Otherwise you need to have unanimous approval for anyone to do anything with the product.  Without it, any disagreement and the project is legally tainted.  If anyone leaves the group (perhaps by moving, or maybe from a fight or even death) it can mean you project is permanently messed up from a legal perspective unless and until the rights are consolidated.   If you've created a business entity like an LLC you would assign the rights to the entity. Otherwise you would assign the rights to the lead individual.


Once a single person or legal entity has the rights to the game, and the person or entity has a legal fictitious name, then you can use that fictitious name in commerce for distributing your game.



There will be several other things you should work through a lawyer. You will need to work over your product licenses, EULA, website terms of service, COPPA agreements, and possibly more. That is in addition to the legal documents in creating the entity's articles of incorporation and assigning rights of the people working on it, either as a collaboration agreement or other method.  Some people balk at the cost of a lawyer. It is an absolutely necessary part of doing business. Shop around, the cost isn't as much as criminal defense lawyers and similar, often around $150-$200 per hour or so, and if you've done your homework and filled out as much as you can yourself, you can get most of it done in an hour or two where you're just looking for them to help you decide on filling blanks on standard forms they've already got in their drawer.

#5308287 Masters Degree in Video game design

Posted by on 27 August 2016 - 06:12 PM


  1. Ok, can somebody answer to the last question of mine? :)



Which last question?  The last item I see on there is "is it worth it?" so I'll assume that's the one you mean.


Value is a highly personal question, what is worth it to one person is not worth it to another.  Each person has their own unique values and goals.  Each person has their unique life choices and experiences.  The experience may be amazing to one person, so-so to another, and terrible for a third.



I have known many people who returned to school, or went for the first time, while they were already mid-career.  Often they are going for an MBA or similar degree to augment their existing career paths and open new doors.




You have a marketing degree.  You can probably use your knowledge and skills to enter a marketing role, or even better if your goal is to be a designer someday, enter as an associate or assistant producer by touting the benefits you can offer them with your marketing background. Producers generally work to link people together and make sure schedules are hit; often this includes communicating and marketing both internally and externally. Associate and assistant producers often work with external marketing companies and social media as part of their job, and a marketing degree could be helpful there. Producers work very closely with various design aspects of games, and as you gain experience you could likely transition to doing more design than production.  At smaller studios it is somewhat common for someone to wear hats of both production and design. 

#5308172 Transitioning from game development to business development with C#

Posted by on 26 August 2016 - 11:45 PM

If you only know C# then you aren't very diverse as a programmer, nor as a game programmer.

C# is used in some business environments.  Java is much more common.


Transitioning from C# to Java is not particularly difficult, in many features C# is considered as 'Java done right'. 


I'd suggest learning more languages than just C#.  Not just as an exit strategy, but to make you more versatile as a developer.  These days my recommendation for core languages are C++, C#, Java, JavaScript, PHP, and Python. Learn them all.

#5308059 Masters Degree in Video game design

Posted by on 26 August 2016 - 11:06 AM

Many "video game design" courses have little to do with game design, instead they are programming courses with a bit of level design or character design thrown in, or they are art, modeling, or animation courses with some design pieces thrown in.  Sometimes they are focused on game design from the perspective of a game designer, but they overlook the fact that "game designer" is not an entry level role.



As Hodgman asked, there are many roles available.  Saying you want to be the Game Designer is somewhat akin to saying you want to be a CEO.


For an aspiring CEO they might get an MBA degree, but that won't grant them the job at the top.  The degree can help give some educational background and training, and will help at job interviews, but that's about it.  Similarly a program teaching only the factors of game design won't make you a game designer, but can give you some education background and training to help follow in that direction.




Many people think of Game Designer as the idea guy, the one who comes up with the awesome idea, pitches it, and works with everyone to make the vision a reality. There is a position of game designer and that does some of the things people think of, but it is a management position and a senior development role. The person is directing many tens of millions of dollars of the project, and consequently the position requires years of experience. It is not an entry level job.  


There are some entry level jobs working with world design, character design, level design, and similar, but usually they are coupled with programming as script writers for levels, or coupled with art as modeling prototypical worlds.  If you start in that track than maybe six or ten years later you can get the Game Designer job title, but be prepared to work for many years on a much less prestigious job description.


All the game designers I know started out in other fields, and demonstrated competence both in game development generally and in their field. As they demonstrated increasing knowledge of design they were slowly given more responsibility for design; helping design small objects, helping build levels, helping balance systems. Over time it expands to owning small object design, owning level design, and gradually after many years transitioning into a designer role.

#5307875 Enums and their extendability via mods

Posted by on 25 August 2016 - 12:38 PM

One alternative that may work for you is assignable values.


You tell the system that you are registering an action with a string.  You may be registering the action "jump" or "order_pizza" or whatever.


If the string exists it returns the existing ID.  If it doesn't exist it gets added to the list and the ID is returned.  Now anywhere you need the action you reuse the action ID that you registered earlier.


Biggest drawback is that the values are in flux based on registration order. It can break systems that persist between runs, such as game replays and possibly some logging, reporting, or telemetry systems.




Another option is to use an expected-unique ID, such as the hash of the action name. There is still room for collision so you could still require them to all register their hash as they are loaded to check for uniqueness.  


A hash will work with replay and persistence. It may also have trouble with logging, but if you require registration of the hash's 'friendly name' for logging purposes and perhaps assert when an unregistered value, it could work out.




Another option is a bigger external registration system, it is still an enum but you maintain a list for mod developers to get appended to. In a larger system you could do some validation, perhaps give the developer a key associated with their work that requires registration or the action's broadcast will fail; that could be checked at load time.


This would maintain control over your system, lets you keep them as known enumerated values, and help external developers to be coordinated, but has a cost that end users must frequently check for and install updates.  Since many online games already do this, the burden may be acceptable.

#5307771 So, I want to become a game devolper...

Posted by on 24 August 2016 - 10:55 PM

Trying again with that updated information.

Visual Studio is an IDE, a text editor, debugger, project builder, and several other things bundled together. Visual Studio can work with many different tools to help you build software. Xamarin's offerings are one of many smaller libraries that you can use to help you build software You may use Visual Studio with different tools. You may use Visual Studio to develop web sites using various tools, or to develop SQL queries using various tools, or to develop Windows applications using various tools, or to develop XBox games using various tools, or to develop Windows Phone programs using various tools. Xamarin's tools are one of many different tools available. Visual Studio serves as a convenient text editor, debugger, project builder, that you use it with.

You could use whatever you want instead, maybe use Notepad for your text editor, WinDebug as your debugger, and a bunch of batch files and downloaded programs for your project builder. You can use something different like Eclipse or IntelliJ or NetBeans or MonoDevelop or others. Many people would rather use an IDE, and since Microsoft purchased Xamarin, they bundle the tool as one of many tools that works with Visual Studio.

Regarding the two big engines, they have many differences. Already mentioned, Unity uses C# for scripting, Unreal Engine uses C++. Their pricing models are different. Under the hood Unreal Engine is focused primarily on first person shooters and networked games. Based on the age comment at the top, you are likely too young to know when Unreal wasn't a game engine, but instead Unreal was a first person shooter with network play, competing with Quake Arena and a few other titles. Even though it has been through some iterations Unreal Engine is still best at games in that genre; high production value first person shooters with a networking component. Unity was built with a different motive in mind, to be a generalist engine, that shows a clearly different focus toward smaller-scale development. Unity focuses more on physics-based actions. If you are looking for different game engines with a different focus there are many out there. Game engines focused on 2D worlds and 3D worlds, game engines focused on building card games, game engines focused on JRPG games, game engines focused on platformer games (like Mario style), and more. Both Unity and Unreal Engine are free to try and free for limited use, so get both and check them out. While you are at it, try some 2D tools like GameMaker Studio or if on Apple's devices, consider GameSalad, both are free to try. Consider evaluating other tools and engines if you like, these days most are free for evaluation at least, and many have moved to a model of being free for certain small product releases.

Regarding a choice of IDE, there are many out there. NetBeans, IntelliJ, and Eclipse are good general purpose systems that tend to focus on Java development but work just fine with C++ and C#. CodeBlocks is a smaller system that tends to focus on c++ development. Emacs tries to be everything and some people love it. There are many more. All of them are different, all of them are better for various situations. As for what is best for various circumstances, that is up to the individuals. Many people have their preferred environments, and their own reason for wanting to do things. For many years Visual Studio was the very best IDE by nearly any objective measure. Over the past six years or so it has lost much of that standing partly to their own decisions that made the product less responsive for developer's needs, and partly because the competition has dramatically improved. All of the ones mentioned have free versions, try them all and see what you like.

#5307754 So, I want to become a game devolper...

Posted by on 24 August 2016 - 08:32 PM

I heared c++ is a pretty great choice


In the long run C++ is a language you will probably be expected to know as a professional game developer, although many of the rising generation are less familiar with it.  You'll need to know a language for systems-level work, and these days C++ is the main language for that.


C++ is not a good choice for a first programming language.  It is has a harsh learning curve, it is easy to do things wrong, and the language assumes the programmer knows exactly what they are doing (which for beginners is usually false).  


If you're already familiar with programming and know basically what you are doing it may be time to learn it.


what even is xamrin doing in visual studio? Last time I installed visual studio it says I need Xamrin to program for mobile platforms, Xamrin says just that + windows, then whats the point of visual studio?


Visual studio is an IDE, or Integrated Development Environment.  That's a text editor, debugger, development tool, and a bunch of other stuff all bundled together. 


Xamarin is a set of software libraries that can help you build software on some environments, but it isn't required. 


what is the point of all the other game programing apps if they are no match for unity3D, what about the henerchy project by Havok?


Analogy:   What is the point of all the other car makers, nobody is a match for Ford Motor Company?


There are many programs and libraries and systems because there are many different needs and preferences.



You mentioned C#, and Unity uses that for development.  If you were focused on C++ then Unreal may have been the more natural suggestion.

#5307753 What to consider for an RPG damage formula?

Posted by on 24 August 2016 - 08:30 PM

What you've got there seems functional.  You'll need to beware the division by zero points, but otherwise it can work.


Sigmoids that are similar to that are one of the go-to curves in game development statistics, so you might consider going that route, just make a reusable sigmoid function.

#5307748 Visual Studio Hardware Requirements Seem Lower

Posted by on 24 August 2016 - 08:11 PM

What is the best edition of Win10 for me?


If you have to ask, then the one that comes pre-installed on the computer you buy will be adequate.

#5307738 Visual Studio Hardware Requirements Seem Lower

Posted by on 24 August 2016 - 06:15 PM

I want something pretty quick and I just can't believe that a 1.6 GHz processor is going to do what I need.


As above the minimum specs are minimum.   However, look at those specs for real.


I had machines back in 2003 that exceeded those specs.  


This is 2016.  Even cheap cell phones have better processors than that.  


That's a single core 1.6 GHz processor they're talking about, so anything beyond a Pentium 4 era (2002 or so) has you covered.  I don't think you can even buy 1GB memory sticks any more, looking around online the cheapest sticks I can find ($14.99) are 4GB. Having a 5GB hard drive is nothing, even disposable USB thumb drives are bigger. DX9 graphics card is probably the biggest thing on the list, but again that is technology from twelve years ago.


Any reasonably modern PC -- basically anything built in the last decade -- can meet those specs.


Thinking on it, it would actually be an expensive trip to museum-type stores specializing in old hardware in order to build something that DIDN'T meet those specs.  Any cheap walmart special could meet them.




Look at the product you are building on the computer and use that as your guide.  

#5307596 optimising costs when deploying mobile game+web platform

Posted by on 24 August 2016 - 06:52 AM

1) since this is a server-client based game, to optimise costs, should I build the game server side backend together with the Django backend? Or should I have a different backend for the effect? 
2) I would profit from something like Google App Engine to host all of this, so what do you think would be easier/cheaper to deploy?

1. Generally the best way to keep costs low for development it isn't really to think about costs, more about leveraging the tools you know to get the job done.  If you are most comfortable with those tools and they get the job done, use them. If you are more comfortable with other tools and those get the job done, use them instead.
2. I don't really see you giving an option for that, as you've only listed one provider.  You'll need someone or something to host your machines, and there are plenty of ISPs and Cloud providers out there.  What works better for you is up to you. Bigger, more complicated systems tend to cost more (both more time and more money) but they can scale well. Assuming you need minimal power, you don't need all the fancy stuff of scaling infrastructure and automated build and deployment and a single virtual server, you can find hosting with database and other server access for $5-$10 per month.

#5307418 if party strength changes, quest encounters can become imbalanced.

Posted by on 23 August 2016 - 09:44 AM

Why not reset the monsters to the level of the players? Many games I've played use dynamic monster levels.  When you start out you're fighting wolves with 50 to 100 hit points.  As the game progresses you're much higher level but the wolves you fight may have 300 or 400 hit points, still easy to kill but they are different than one ones you began with.  


Another option may be to not have stats change very much. In systems like D&D there is an initial spread of 3D6 (3-18) for the base with a cap of +5 bonus maximum. While they may get better equipment over time, and gain a handful of hit points or abilities with each new level, having a freshly rerolled character after another has died will have some impact with a party, but generally not so much that the game is destabilized.




Consider it in both directions.  It isn't that fun to have leveled up and suddenly have the old monsters fall down dead at the sight of you. It also isn't that fun to have someone leave and suddenly the world is destabilized because your party is too weak.


I know many games love to make leveling up and adding stats into an enormous event: increase the stats by 20%, 40%, or even more!  If adding 6 hitponits per level is good, then adding 60 hitponits should be better, right? The problem is you develop god-like characters far too quickly. While it can serve as a gate and encourage level-grinding, it doesn't really serve stories and narratives well.

#5307316 Errors that effect a computer's system.

Posted by on 22 August 2016 - 09:16 PM

It can still happen, primarily as damage to graphics cards or CPUs that have had safeguards removed. 



There are a small number of games that disable several good features on graphics cards (notably vsync and rate limiting) on top of the player manually overclocking and overvolting their graphics cards.  The game does a ton of heavy processing work for an extended time and with the safeguards removed, it overheats and takes damage.


Similarly there are games that heavily tax the CPU. While fewer people do it today, extreme overclocking was more popular than today. Games that were already known to severely tax a CPU, coupled with someone who intentionally disables the safeguards and increases CPU temperature, can overheat and damage their processor.




As a beginner you should't worry about it.


Even as a professional it is something you shouldn't worry about, unless perhaps you are developing the graphics code; then you can implement a hard limit of something like 300 FPS as a rate limiter, just in case someone manually overrides vsync settings and you are on your menu screens that run at an unlimited framerate.


And even then, it would be mostly the consumer's fault for disabling the safeguards on the system.