GPWiki.org
GPWiki.org
It is currently Mon May 20, 2013 4:33 pm

All times are UTC




Post new topic Reply to topic  [ 10 posts ] 
Author Message
 Post subject: New user here.
PostPosted: Tue Jul 31, 2012 9:45 pm 
Novice

Joined: Tue Jul 31, 2012 9:38 pm
Posts: 7
Hello, I'm a 13 year old programmer, been learning C++ for a while, was considering OS development, but realized it's not a way to make money. I looked into game development, and really like it. I know C++ pretty well, and am going to learn SFML to make a 2D zombie game, sort of like a 2D version of CoD's Zombies(even though I hate CoD). I want to sell it on Steam when I finish it.

Can someone help me get started?


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Wed Aug 01, 2012 10:05 am 
Shake'n'Baker

Joined: Sun May 27, 2012 6:01 pm
Posts: 62
Im a big fan of formalisation. From my personal experience, too much time can be wasted without doing this valuable step.

So id recommend defining Roles within your development cycles. Make them small and clearly state the responsibilites they have. This will help you understand what has to be done when you (or someone else ) takes on that role.

Roles apply to yours tools you will use too. Understand about the compiler, and the linker. (and make files) (Debugging is also a role) etc.. Choose the software/tools/people that fulfils these responsibilities.

Design your game - There is a wiki table i shell try and find that shows the 'cost of a change', against which stage. It is very cheap to change your game at the design stage, and very expensive at the implementation stage. Design as much as you possibly can to make most of the changes in the design stage.

With a good understanding of who does what in the development, and with a good design, implementation is trivial.

Good luck!
Mikey

P.s. C is a high-level assembly language (It requires/uses hardware specific details).. C++ is "C with classes". The result is while your code is in C++, it does not mean its "Object Oriented", check out the OO wikipedia page, Eiffel and Smalltalk.


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Wed Aug 01, 2012 12:44 pm 
Harmlessness does no harm
User avatar

Joined: Tue Sep 14, 2004 8:37 pm
Posts: 3807
Location: Ferriday, LA, US
cxzuk wrote:
P.s. C is a high-level assembly language (It requires/uses hardware specific details).. C++ is "C with classes". The result is while your code is in C++, it does not mean its "Object Oriented", check out the OO wikipedia page, Eiffel and Smalltalk.

Sorry for nitpicking, but C is not an assembly language. It is compiled into machine language, and you can inline assembly code within a C program, but an assembly language it is not.

Also, saying C++ is C with classes is a common (yet rather egregious) misconception. They are two almost entirely separate languages, just with differing-but-compatible libraries and similar syntax. There is a LOT more to the differences between the two than just classes and the object-oriented paradigm.

But meh, that's just the bug up my rear end talking. ;)

_________________
What most people don't understand about "enlightenment" is that it is not an end-goal; but where you find yourself just before taking a new "first step."


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Wed Aug 01, 2012 2:28 pm 
Shake'n'Baker

Joined: Sun May 27, 2012 6:01 pm
Posts: 62
Mugai wrote:
cxzuk wrote:
P.s. C is a high-level assembly language (It requires/uses hardware specific details).. C++ is "C with classes". The result is while your code is in C++, it does not mean its "Object Oriented", check out the OO wikipedia page, Eiffel and Smalltalk.

Sorry for nitpicking, but C is not an assembly language. It is compiled into machine language, and you can inline assembly code within a C program, but an assembly language it is not.

Also, saying C++ is C with classes is a common (yet rather egregious) misconception. They are two almost entirely separate languages, just with differing-but-compatible libraries and similar syntax. There is a LOT more to the differences between the two than just classes and the object-oriented paradigm.

But meh, that's just the bug up my rear end talking. ;)


C does not allow inline (at&t/intel) assembly, It is a compiler extension if you are able to.

A high level language is a language with "strong abstraction from the details of the computer". C can not be considered high level; I call it a highlevel assembly language, but the key point is its not a high level language.

C++ is an extension of C (a superset; e.g. Any C program is a valid C++ program), and its original name was "C with classes".

C++ has had many changes but still has the dependency of being a superset of C. Which means you are able to do things which may not be acceptable by the OO definition.

Mikey


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Wed Aug 01, 2012 5:43 pm 
Bytewise

Joined: Sun Oct 16, 2011 3:09 pm
Posts: 277
Location: Here (where else?)
@cxzuk: Well, you can program Java without doing proper OO as well, what's your point other than you seem to dislike C/C++ ?
If you hate it so much, just refrain from posting here?

@Anonymous: Start by designing your game from the player point of view; how does he see and feel the world? What kind of person is he in the game, what can he do or not do, what other characters does he/she encounter, what is his/her goal, etc etc.
It often helps to write things down, as it forces you to think about it in clear terms. After writing, leave it alone for some time, and then read it again asif it is from someone else. Does it still make sense, does it need changing/improving?
Writing things down also helps in finding things back later.

Then go to more technical details, maps of the world, actual screen layout, etc.
Slowly you move to code; what parts of code exist, what does each part do, how does it interact with each other.

Finally, you can start coding "for real". The more clearly you have your goals defined, the more focused you are while coding it.
Start with a small set and gradually expand functionality; it is often easier to attach stuff to something that already works (not always, you may find that some extension breaks your already working part; then you have to either change the new feature, or rip your existing stuff into pieces and rebuild it).

_________________
My project: Messing about in FreeRCT, dev blog, and IRC #freerct at oftc.net


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Thu Aug 02, 2012 12:01 am 
Novice

Joined: Tue Jul 31, 2012 9:38 pm
Posts: 7
It's not character oriented, it's just a fun addicting 2D zombie game(wave based). I will post a project on Greenlight when it comes out. Also, what should I do for sprites if I want to sell it?


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Thu Aug 02, 2012 2:04 am 
Harmlessness does no harm
User avatar

Joined: Tue Sep 14, 2004 8:37 pm
Posts: 3807
Location: Ferriday, LA, US
cxzuk wrote:
C does not allow inline (at&t/intel) assembly, It is a compiler extension if you are able to.

True, very much a compiler feature. Still, that doesn't change the fact that C and assembly are two separate languages (each with many, many dialects).

cxzuk wrote:
A high level language is a language with "strong abstraction from the details of the computer". C can not be considered high level; I call it a highlevel assembly language, but the key point is its not a high level language.

C *is* a high-level language, as it abstracts the hardware architecture from the coder. It is perfectly feasible to write a C program, and then compile it for x86, x86-64, and then again as ARM, and a whole array of other architectures without changing your C code much (if at all), whereas any assembly code would need a complete rewrite due to the differing machine codes across architectures. That is how C is high-level -- it can be abstracted from the details of the architecture (machine code).

cxzuk wrote:
C++ is an extension of C (a superset; e.g. Any C program is a valid C++ program), and its original name was "C with classes".

C++ has had many changes but still has the dependency of being a superset of C. Which means you are able to do things which may not be acceptable by the OO definition.


C++ originated as a superset of C, but it has considerably scaled up since then. The "C with classes" paradigm has been left in the dust, probably over a decade ago.

That, and *any* language can be written in improper/unintended ways. That is not wrong language features, that is poor coding.

_________________
What most people don't understand about "enlightenment" is that it is not an end-goal; but where you find yourself just before taking a new "first step."


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Thu Aug 02, 2012 2:05 am 
Harmlessness does no harm
User avatar

Joined: Tue Sep 14, 2004 8:37 pm
Posts: 3807
Location: Ferriday, LA, US
Anonymouse wrote:
Also, what should I do for sprites if I want to sell it?

What do you mean, exactly? Are you asking where to get sprites, or how to bundle them, or how to protect them from theft, or...?

_________________
What most people don't understand about "enlightenment" is that it is not an end-goal; but where you find yourself just before taking a new "first step."


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Thu Aug 02, 2012 3:41 am 
Novice

Joined: Tue Jul 31, 2012 9:38 pm
Posts: 7
Can't you get in trouble for distributing a game with sprites someone else made?


Top
 Profile  
 
 Post subject: Re: New user here.
PostPosted: Thu Aug 02, 2012 4:35 am 
Harmlessness does no harm
User avatar

Joined: Tue Sep 14, 2004 8:37 pm
Posts: 3807
Location: Ferriday, LA, US
Anonymouse wrote:
Can't you get in trouble for distributing a game with sprites someone else made?

It depends on a few things.

If you rip tiles from another game and use those, then yes, you can very well get in trouble.

If you hire someone to make sprites for you, then as long as you make sure there's an agreement to your use of those sprites, then you are in the clear.

If you use royalty-free/public domain sprites in your game, then you're okay.

If you use sprites that are under a particular license, then as long as you abide by the license terms, you are fine.

If you find sprites and cannot determine their license status, do not assume it is all right to use them -- it can come back and bite you later on.

Just make sure that if you plan to use sprites/graphics someone else made, that you have their permission, and that you follow the licensing conditions. If you do not have permission, or cannot determine the use terms, then it is best to stay away. Above all -- do NOT make assumptions about whether it is okay to use something someone else created.

_________________
What most people don't understand about "enlightenment" is that it is not an end-goal; but where you find yourself just before taking a new "first step."


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC


Who is online

Users browsing this forum: Majestic-12 [Bot] and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group