Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (517)
Games in Android Showcase (123)
games submitted by our members
Games in WIP (577)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1] 2
  ignore  |  Print  
  Can you just sit down and make a game?  (Read 3362 times)
0 Members and 1 Guest are viewing this topic.
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Posted 2013-11-28 02:56:37 »

I've only been programming for ~3 years now in various languages (Java for two years!) and I've been learning OpenGL for one year now. So, I'm still kind of a newbie when it comes to programming. I've always envied the developers who seem to be able to just sit down and code without worrying about the actual technicalities of it all. Some people just seem to know so much that they can pretty much make a game in a few days! Now, it won't be a great game, but I'm still over here with not a single game finished. Probably because I'm lazy, but also because I just don't think I know enough yet. So, how long did it take you to get to the point where you could sit down and make a good game in a week and not have to spend a quarter of the time researching about functions? And I don't mean making a pong clone, I mean a full on game.

I recently stalked Notch's profile on here, and it seems like he can just make amazing games forJava4k without seemingly running into major issues with his code. I really just wondered if and when other people have reached this point? I want to learn all the math and OpenGL and networking and different algorithms so I can just make games. I want to get to the point where staying focused on a project and creating new ideas is the hardest part. Is this possible? Or am I hoping for something that will never happen? Either way, coding is still absolutely amazing and it gave me a completely different perspective on life, and I owe a decent amount of that success to this forum! So thank you everyone! Smiley

Offline wessles

JGO Wizard


Medals: 67
Projects: 4
Exp: 3 years


Profile picture isn't relevant.


« Reply #1 - Posted 2013-11-28 04:14:45 »

Wow... I had no idea that such coders that never run into problems existed!

Offline tyeeeee1
« Reply #2 - Posted 2013-11-28 04:17:15 »

Yep. I just sat down one day in class and ended up making a space invaders clone in ~2 hours. All of the time after that was just me screwing around with adding in powerups and other things. The base game and all of the systems were done in that short period of time though. Within 3 hours after those two hours of class I had multiple power-up attacks, a GUI, basic sound working and a few other things. It suprised me how fast I created the game, but it was really fun to make so quickly.

As long as you can easily work out how the game will work then it's almost no problem whatsoever to program IMO.

~Coding in Java for about a year or so.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #3 - Posted 2013-11-28 04:23:51 »

I guess my main issue is that I always try to learn new stuff right after I finished learning something else, so I'm always frustrated. For instance, I created a program that generates a heightmap using the diamond square algorithm, and then displays it. I reveled in my successes for about an hour, and then suddenly I had the urge to learn how to do face picking to make 3D games more interactive. Now I've spent the last week trying to figure it out, and I've come up with nothing. I think my problem is that I never just sit down and make a game that doesn't require me to learn new concepts. I guess I'm more interested in the technology than the actual game Sad

@wessles I shouldn't have said no problems, I meant very few. And when I say make a game, I mean like how Notch can just code for hours and not run into any issues that seem to take him more than 20 minutes to solve. His twitch account is my new favorite thing to watch while I code, he has some pretty amazing videos of him coding on there!

Offline wessles

JGO Wizard


Medals: 67
Projects: 4
Exp: 3 years


Profile picture isn't relevant.


« Reply #4 - Posted 2013-11-28 04:44:16 »

I've never gotten that... How do you watch someone code?!
Go! Go! Go! Go!
Dude, he is using a double for positioning?! Is he mad?!
I think he needs more precision for this task
You all are idiots. Don't you know that doubles are easier to use with java API's in general?!

Offline CodeHead

JGO Knight


Medals: 41


From rags to riches...to rags.


« Reply #5 - Posted 2013-11-28 04:48:44 »

I think my problem is that I never just sit down and make a game that doesn't require me to learn new concepts. I guess I'm more interested in the technology than the actual game Sad

Welcome to the club. Wink Building the internal systems is always more fun then figuring out how to unify them into a "fun" game. I'm the same way with non-game projects as well; although, I do actually finish projects when they're for work. "Widget" development always felt more satisfying than development of entire applications to me.

Don't worry about not being Notch. LOL On top of being a highly intelligent individual, he's had a lot more experience at this than you have. It's only natural that he's going to be more proficient. With practice you can get to that level as well, but it takes most people longer than 3 years. I've been coding for ~30 years and still stumble across problems that can take weeks to unravel sometimes. That's half the fun of programming though. Grin Side note: Long before I ever heard the name Notch, I used to sit and marvel at the fact that Chris Sawyer wrote Roller Coaster Tycoon in ASM. It's always good to have lofty goals.

@Wessles: You'd be surprised the amount of things you can learn by watching someone work through a problem. Even if it's not a problem you think you'll ever encounter, there's just something about watching a fellow programmer overcome an obstacle that's inherently satisfying (at least for me). Cool

Arthur: Are all men from the future loud-mouthed braggarts?
Ash: Nope. Just me baby...Just me.
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #6 - Posted 2013-11-28 04:48:59 »

Well, I have no idea why you were talking about doubles, but I do prefer floats for all my positions. And I like watching others code because I find it very cool to see a game go from nothing to something while my game goes from nothing to hopefully something also. Its just calming I guess to me!

Offline nerb
« Reply #7 - Posted 2013-11-28 04:49:25 »

I think my problem is that I never just sit down and make a game that doesn't require me to learn new concepts. I guess I'm more interested in the technology than the actual game Sad

Perhaps it's just a function of experience? I feel the same way most of the time. I set out to make a game, but spend more time working out particular concepts and how to do certain things. As a result, my games rarely see completion. I guess those more expereinced programmers don't need to do that, so can actually focus on belting out a game? ...Wish I could do that... Patience, patience...
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #8 - Posted 2013-11-28 04:59:26 »

Oh I realize that 3 years isnt enough time at all, its just right now I really am wondering what I'll be like in ten years in terms of coding, you know? I guess I look up to Notch because he seems to be very intelligent and he's a cool uber nerd. (and he made Minecraft, which got me into coding. But never mind that!) Honestly, having his job would be amazing, but more than anything I want his knowledge. I want to know lots so that I can be that person on a forum that can spiel out long paragraphs of techy words, and be correct about it all. And then I also want to be able to work out solutions to all the problems I encounter in my code without resorting to Google, which I frequently do still. Sure, I'm spending less and less time doing it, but I'd estimate that 10 - 15% of my time is spent googling and looking through code to answer a seemingly trivial question, like face picking or collision detection or why the hell my server is opening thousands of sockets for the second client that connects but not the first or third. That one really pissed me off!

And yeah, I would much rather create a program that teaches me something cool like pixel perfect lighting or scissoring a viewport in OpenGL or loading models etc... Its just more appealing to me than making a game, so I never have the chance to have that feeling of success when you finish a game.

Online HeroesGraveDev

JGO Kernel


Medals: 269
Projects: 11
Exp: 2 years


┬─┬ノ(ಠ_ಠノ)(╯°□°)╯︵ ┻━┻


« Reply #9 - Posted 2013-11-28 05:17:19 »

(Background: I've been programming games for a little short of 2 years)

Every now and then I code something somewhat complex with absolutely no trouble whatsoever (Not even a stray NullPointerException).
However, such incidents are rare.

I believe that after a while, your debugging skills and program design ability will be good enough to avoid most bugs and quickly clean up the others.

Of course, you will still hit some that can't be squashed so easily, but that's programming for you.

A good thing is to practice visualising larger systems in your head in order to help your brain notice interactions between various components of your program. The larger and more complex the systems, the better.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #10 - Posted 2013-11-28 08:18:11 »

I think your last suggestion is very helpful, and its what I use almost everyday when coding! Just code a little, stop and run it. See if there are any errors in the last 20 lines of code, if not, move on and do it all again.

Now, you don't need to do this for all the code all the time, but its handy for high risk cases!

About making no mistakes, I could see myself in another year being like you! I just need to stick to it and keep having fun Smiley And work out how freaking block face picking works :/

Offline StumpyStrust
« Reply #11 - Posted 2013-11-28 08:20:39 »

I have been coding for about 2-3 years now exclusively in java. I rarely make games as I focus on the eye candy more then anything else. I thought I was horrid when it came to making games until I took a game programing class this semester. It really did not teach me anything (all about physics) but I got a chance to make a game and call it school. The Cube project I posted in my random projects took 3 days. Taking out the head ache of doing deferred rendering in GL11, Blitz took about a week maybe. I never knew I could produce stuff that fast.

Also remember that you have no idea how much time Notch or others put into games. If you stalk him more on here and read his posts, you will find that he talks about issue that he ran into. Also, he had been a game dev for a while before he started all the stuff here if I remember correctly. It is all about experience. What do you call coding for X years? Only doing your day job if you have one? Every now and then opening up an IDE? Spending every given moment coding? Guess what I am saying is don't put yourself down.

Here. After you read this post (and if you have the time) write a pong game. Then, add some of your own flare to it and post it here. Next, write a break out game and then a top down shooter.  Nothing fancy, just a few levels. With a clear goal in mind, you would not believe how quickly you can write something. Problems show up when you don't quite know what you want.

Online trollwarrior1
« Reply #12 - Posted 2013-11-28 08:20:55 »

Notch said something like this:
"The best tip for making games is just to make games"
Notch didn't get to this level of game development by studying stuff. He made a lot of games. The reason he seems to know so much, is because he made a lot of games, and he has fixed the issues with code long ago.
Offline Varkas
« Reply #13 - Posted 2013-11-28 13:38:23 »

I want to get to the point where staying focused on a project and creating new ideas is the hardest part. Is this possible?

Some amount of thinking and planning is always involved. With some years of game development expierence on your back you'll be able to solve many "problems" just by drawing from your experience with former, similar problems.

I've got 15 years of professional coding experience, and from the programming point I surely can site down and produce fairly well code without too much planning in advance. But besides the coding, you also need skills in game design, and this is my problem - I can make demos and engines, but no games.

But I guess if you gave some education with actual game design, and experience as well, you can also sit down and design games right away.

if (error) throw new Brick(); // Blog (german): http://gedankenweber.wordpress.com
Offline SHC
« Reply #14 - Posted 2013-11-28 13:47:09 »

I can make a Breakout game in ten minutes! Go GAME MAKER!!!!

Offline ctomni231

JGO Wizard


Medals: 99
Projects: 1
Exp: 7 years


Not a glitch. Just have a lil' pixelexia...


« Reply #15 - Posted 2013-11-28 14:13:50 »

I've only been programming for ~3 years now in various languages (Java for two years!) and I've been learning OpenGL for one year now. So, I'm still kind of a newbie when it comes to programming. I've always envied the developers who seem to be able to just sit down and code without worrying about the actual technicalities of it all. Some people just seem to know so much that they can pretty much make a game in a few days! Now, it won't be a great game, but I'm still over here with not a single game finished. Probably because I'm lazy, but also because I just don't think I know enough yet. So, how long did it take you to get to the point where you could sit down and make a good game in a week and not have to spend a quarter of the time researching about functions? And I don't mean making a pong clone, I mean a full on game.

I recently stalked Notch's profile on here, and it seems like he can just make amazing games forJava4k without seemingly running into major issues with his code. I really just wondered if and when other people have reached this point? I want to learn all the math and OpenGL and networking and different algorithms so I can just make games. I want to get to the point where staying focused on a project and creating new ideas is the hardest part. Is this possible? Or am I hoping for something that will never happen? Either way, coding is still absolutely amazing and it gave me a completely different perspective on life, and I owe a decent amount of that success to this forum! So thank you everyone! Smiley

The first game I made was in high school using a ti-83 calculator. I didn't actually intend to make a game per say. It was more akin to putting a tool set together. As I built my tools for this cave game replica, I just made each part of what I needed and glued it together. The game was rough, but you could play it. I guess the advice would be to give your tools purpose. Then a game will evolve from it. Always think about what tools you need to make your objects work.

Getting to a point where creating is harder than technical is the real hell of programming, but it is also the most rewarding. We are spoiled today because we can find the answer to almost any problem by just searching Google. When you have to solve these problems without support it really forces you to use your skill set creatively. I have to do this all the time as an artist. Sometimes you have to wing it in order to get a better result. It is something from art that I applied to programming, but it is highly discouraged among programmers.

Can you hit a zen moment of focus and ideas. Yeah! It is possible for anyone to do this. First you want to have a goal and use your tools to reach it. Then, when you can't, make or upgrade your old tools until you can. After a while, if your goal is interesting enough, you will get to that point. Just don't burn out by overdoing it. Work, and when you feel tired take breaks. Writing a game can be a great way to expand your tool set and make a good interactive experience to boot!

Offline Troubleshoots

JGO Knight


Medals: 36
Exp: 7-9 months


Damn maths.


« Reply #16 - Posted 2013-11-28 14:17:14 »

I've been coding in Java now for ~5 months. I started making games about 3 months ago in Java2D but I had very little knowledge of concepts like inheritance, collections and generics.

The problem I keep facing is wanting more and more knowledge. I envy the people on this forum that have a lot of programming experience. I feel that without deep understanding of how to use something/how it works, I need to learn it, which can be a seemingly long process. I also feel that if something isn't perfect, I have to improve and redo it. The hardest part I find is that of searching for information that is understandable to someone who has little understanding of how something works. Articles and books, on for example OpenGL, are mostly written without an or with a hard to understand explanation of the terms used. It's a challenge to actually understand the meaning of the text.

Anyway, to get to the point, learning takes time, effort and dedication. You need to learn one thing to learn another which you need to learn to learn another thing. It's like a vast circle where you need to find a tiny gap to break into. I'm at the point of starting to learn OpenGL now, but the topic is so broad that I'm finding it hard to find a starting point. Anyway, I guess some day we'll both come to a point where we decide the moment is right to complete a project. Good luck on your journey.

Why are all OpenGL tutorials written in Brainf**k?
Offline Varkas
« Reply #17 - Posted 2013-11-28 14:35:46 »

I also feel that if something isn't perfect, I have to improve and redo it.

This is a personality trait which is very good for a number of professions, but in game development usually a "good enough" approach is better - a solution  must be good enough to achieve the required result, but spending more time is futile.

Very seldom game code becomes reused, so unless you work on a library, or a game engine (instead of a concrete game), such striving for perfection will not help you.



if (error) throw new Brick(); // Blog (german): http://gedankenweber.wordpress.com
Offline CodeHead

JGO Knight


Medals: 41


From rags to riches...to rags.


« Reply #18 - Posted 2013-11-28 14:36:43 »

I can make a Breakout game in ten minutes! Go GAME MAKER!!!!

Speaking of which: GameMaker Studio (standard edition) is currently free in case you know of someone who may be interested in a gentle intro to making games. Sorry for the OT. Wink

Arthur: Are all men from the future loud-mouthed braggarts?
Ash: Nope. Just me baby...Just me.
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #19 - Posted 2013-11-28 14:39:56 »

Thanks, you too!

I have to tell you, OpenGL gets far easier to learn and use after you know the basics. I think what screwed me up at first were all the different buffer objects, and the fact that its a state based machine. I just didn't understand that for a while! But now, after a year, I don't know everything about OpenGL by a long shot, but its very easy to go look a function up on the docs and just implement it. It gets easier very soon as long as you dedicate time to it every day!

I think I will start off just making small games for a while and slowly make them harder and harder to create. To be honest, I think its hard to finish games for me because I only really use OpenGL for my rendering, and setting up the framework for the game usually takes a few days, and by that time I get bored. But, I've been working on a utility library that will sort of take all that away and just let me set up a game's rendering framework very easily. Its coming along well, and I've already used it in my last few projects, even with my YouTube series I started.

I guess I'm just wondering what it will be like in 10 years. Right now its all about learning, and I want to learn as much as I can, but I think in 10 years it'll be more about making and doing. I'm very excited for my honors computer science class next semester in school because its all about application of code and making programs, which I think will do me good!

Offline Oskuro

JGO Knight


Medals: 40
Exp: 6 years


Coding in Style


« Reply #20 - Posted 2013-11-28 15:59:11 »

Think of it like this: For a person just starting to learn the English language, that anyone could sit down and in a few minutes create a long post, barely making mistakes, would seem as amazing as what you're mentioning.

In the end, programming is a skill, and as you practice, you learn techniques that become second nature. So these "amazing" programmers are not so good because they are some kind of geniuses, but because they've practised so much that much of the process just comes to mind effortlessly.

Another example: Ask someone who has always driven an automatic car to give you its thoughts on manual gear shifting.

As for where you'll be in 10 years? Hopefully, still learning. You never really stop learning, which is kind of awesome. There's always some new trick or technique to try! Some new technology to integrate! New tools to play with! Smiley

Offline 65K
« Reply #21 - Posted 2013-11-28 17:58:25 »

I want to learn all the math and OpenGL and networking and different algorithms so I can just make games.
There is the culprit.
You just can't know everything and - here comes the good part - you don't have to.
I have no clue about OpenGL and have no intention to learn it unless I have to and still is my developed game driven by OpenGL.

Decide what you want. If you want to make games, take a ready-to-use matured higher level library/engine and go.
It is daily business to use other people's libraries in professional development.

For beginners, no home brewed game engine monsters please, no multiplayer games, no RPG, no fancy threading, no entity-component-stuff. Grab some good books to learn the basics about programming (OOP, architecture, structuring, clean code, patterns, etc.)
Don't waste your time hanging out in internet forums too long...

Keep going and accept that it takes years (means working in full time) to become a (good) programmer. Always stay open to new and different ideas, never get dogmatic about technologies, approaches, etc., learn to live with 2nd best solutions.

 Wink


Offline ags1

JGO Wizard


Medals: 67
Projects: 3
Exp: 5 years


Make code not war!


« Reply #22 - Posted 2013-11-28 18:58:46 »

The only game I've finished was a chess game, which I wrote in my lunch hours at work. It took about twenty lunch hours, and it all seemed to go like a dream. Not typical for me, sadly.

Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #23 - Posted 2013-11-28 19:15:26 »

Oh, I know Java pretty well, that's not a problem. Its the things like all the algorithms that I don't know yet! It frustrates me when I ask a question and ten minutes later someone answers with some long spiel of numbers and equations and I'm just like... Well how do you know that? I guess my lack of experience is probably my biggest problem, I just haven't made games for long enough to know the stuff I need to know. But it'll get better! I've been figuring out more and more, and I'm starting to notice I can answer more technical questions, and it just feels so nice.

Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #24 - Posted 2013-11-28 19:16:31 »

Its just I know all the concepts behind most of the code I want to implement, its just sometimes I have a hard time turning ideas into real results or code.

Offline Kyperbelt

Junior Duke


Medals: 1



« Reply #25 - Posted 2013-11-28 19:36:39 »

nope, cus when i do ... nothing but spaghetti code comes out. if the project is big enough i have to plan it out and then code it, then take a break, see how i can make it better, then go back and refactor most of the code hahaha   . This especially when working with new things ive never touched before.
Offline gimbal

JGO Knight


Medals: 25



« Reply #26 - Posted 2013-11-29 10:01:51 »

I want to learn all the math and OpenGL and networking and different algorithms so I can just make games.
There is the culprit.
You just can't know everything and - here comes the good part - you don't have to.
I have no clue about OpenGL and have no intention to learn it unless I have to and still is my developed game driven by OpenGL.

Decide what you want. If you want to make games, take a ready-to-use matured higher level library/engine and go.
It is daily business to use other people's libraries in professional development.

For beginners, no home brewed game engine monsters please, no multiplayer games, no RPG, no fancy threading, no entity-component-stuff. Grab some good books to learn the basics about programming (OOP, architecture, structuring, clean code, patterns, etc.)
Don't waste your time hanging out in internet forums too long...

Keep going and accept that it takes years (means working in full time) to become a (good) programmer. Always stay open to new and different ideas, never get dogmatic about technologies, approaches, etc., learn to live with 2nd best solutions.

 Wink


Couldn't agree more. Although I would replace "2nd best solutions" with "solutions that work", no grading is needed. The only thing that novices tend to do wrong there is to want to have or create the BEST solution, which doesn't exist.
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #27 - Posted 2013-11-30 02:14:08 »

Well, I started a challenge for myself where I'm going to make a few games in the next couple of weeks ranging from really easy to intermediately hard. And I've got to say, I used a lot of the advice from this thread and it worked out well. First off, I didn't try to future proof anything. In lots of my other projects I try to code for all the possibilities in the future because I don't like refactoring code, but I decided to not do that this time, and I made a game in just an hour and a half. Second, I went with the second best solutions. For a lot of my math and algorithms I coded them in a way that looked visually appealing and so they are good enough, but I didn't over complicate things.

I have to say, its really nice not having to spend hours on a single algorithm because I'm trying to perfect it. As long as it works and its sufficient for you, then don't worry about it! Thanks guys!

Also, this is my 1000th post!! Awww yeah!! Wink

Offline lcass
« Reply #28 - Posted 2013-11-30 18:42:05 »

For me when I produce a game I usually have multiple days of thought , mainly during dull subjects or ones im finished in before anyone else has started (Computer science). I think about possible features and sketch them down some of these never make it into the game others are fundamental. The only time I have sat down and directly produced a game was when I did ludum dare. Without planning the game turns into a mess of incomplete features and bugs.
Offline ags1

JGO Wizard


Medals: 67
Projects: 3
Exp: 5 years


Make code not war!


« Reply #29 - Posted 2013-11-30 19:28:04 »

I find I make more progress if I don't plan. When I plan I get oversophisticated, while when I just code I am much more pragmatic. As long as I work in small chunks and refactor continuously, it works quite well for me.

Pages: [1] 2
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

TehJavaDev (38 views)
2014-10-27 03:28:38

TehJavaDev (29 views)
2014-10-27 03:27:51

DarkCart (43 views)
2014-10-26 19:37:11

Luminem (24 views)
2014-10-26 10:17:50

Luminem (29 views)
2014-10-26 10:14:04

theagentd (35 views)
2014-10-25 15:46:29

Longarmx (63 views)
2014-10-17 03:59:02

Norakomi (61 views)
2014-10-16 15:22:06

Norakomi (50 views)
2014-10-16 15:20:20

lcass (46 views)
2014-10-15 16:18:58
Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!