Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2 3

Author Topic: So, I'm in completely over my head here...  (Read 4088 times)

MaximumZero

  • Bay Watcher
  • Stare into the abyss.
    • View Profile
So, I'm in completely over my head here...
« on: December 13, 2014, 01:16:49 am »

Bay12, as some of you well know, I've been writing a P&P RPG engine for...well, forever. Here's the deal, I'll lay it out in nice, simple terms. I want to make a computer game based off of it. Now, that said, as some of you also well know, I'm not a programmer. I can make stuff appear in the command prompt window if I'm having a good day, and make the computer do a little math, and that's about it. The "Game Design" course I took in Community College was an absolute joke, and didn't do anything but discourage me from learning programming, but I'd like to get back on the horse.

Here's the biggest dilemma: I have no fucking clue where to get started making a real game. I have a little bit of very basic knowledge in C++, JAVA, and Visual Basic, but not enough to do anything (again, on a good day,) beyond "make a black box, have the user input something, spit out some numbers, and done." I don't know how to do mouse input, how to make any graphics of any kind appear on the screen, how to do any kind of usable keyboard input, et al. I'm very frustrated. A lot of tutorials go from "1+1=2" to "vf=vi+ve log(mi/mf)" with no steps in between. For some reason, I get lost.

The worst part about the whole dilemma is that I know exactly how I want things in the game, and it doesn't seem like a super complex set of ideas, but I have no way to translate them into playable form. Also, I've got the idea in my head that working on a computer game would force me to put my mechanics for my P&P together because people would be alpha-testing the computer game when they really can't with the P&P. Which, in turn, lets me a) play my own game, and b) gets me closer to publishing and retiring. (Ha!)

I know that "ideas guys" are a dime a dozen, so where do I start really learning real game making skills, B12?
Logged
  
Holy crap, why did I not start watching One Punch Man earlier? This is the best thing.
probably figured an autobiography wouldn't be interesting

WillowLuman

  • Bay Watcher
  • They/Them Life is weird
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #1 on: December 13, 2014, 01:57:18 am »

Well, first question is what engine do you have in mind, if any? Judging by how fast the people on my team with no experience whatsoever picked it up, Unity and java seem pretty easy to learn. Though I'm not sure how suited Unity is for an RPG. Can we get some more details about your game? Were you thinking of adapting it into a CRPG? JRPG? Action RPG?

Also, full disclosure, I go to a large uni that has a club for this, so some of these teammates of mine had the advantage of club-hosted workshops. But regardless, I've heard good things about java. And python. And, full disclosure, you know more coding that I do. I only got my team by striking lucky as an idea guy.
Logged
Dwarf Souls: Prepare to Mine
Keep Me Safe - A Girl and Her Computer (Illustrated Game)
Darkest Garden - Illustrated game. - What mysteries lie in the abandoned dark?

Ogdibus

  • Bay Watcher
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #2 on: December 13, 2014, 03:53:16 am »

Edit:  I wrote this thinking that you wanted people to collaborate with, so that you can start within a month or two, rather than just advice.  After rereading, I'm not sure if that's what you wanted.  If you want to build skills, modding is a good way to start, because it produces outcomes more quickly, and shows you how the code actually looks when it's applied to a game.  It's easier to motivate yourself when you study something that you see a direct application for.  Once you have familiarity with coding, the tutorials will make much more sense, and you will eventually find yourself choosing optimal solutions for your own designs.

---

It's probably a good idea to decide your premise and core mechanics before picking or making an engine and dev team.  If you can get a rudimentary design document together, that's even better.  It will help potential team members determine whether they have the necessary skills and interest or not.  You also need to see what they can do, if they offer.

It's also necessary to know if this is a job, and if the game will be sold.  Will there be a budget?  Will any assets be bought, rather than developed? Sound and music are often purchased, even by AAA developers.  Doing your own sound engineering can be very expensive, and requires highly developed skills if you want any degree of realism.
« Last Edit: December 13, 2014, 08:34:27 pm by Ogdibus »
Logged

Moghjubar

  • Bay Watcher
  • Science gets you to space.
    • View Profile
    • Demon Legend
Re: So, I'm in completely over my head here...
« Reply #3 on: December 13, 2014, 04:02:11 am »

How in deep do you want to go?

Do you want to just make a simple game thats single player and uses some of your ideas in order to be an intro to your gameworld? RPGMaker

Do you want to do something with more interaction (but also complexity) and with potential for some multiplayer? Gamemaker, maybe Construct 2

Do you want 3d stuff without getting too nuts into having to do everyting yourself? Unity

Do you want full control? Insert Programming language with select libraries

Do you want full control AND want to make it super efficient with crazy graphics / custom shaders / lots of nutty stuff? C/C++ with hookups for OpenGL / DirectX and lots of time in the rabbit hole
Logged
Steam ID
Making things in Unity
Current Project: Demon Legend
Also working on THIS! Farworld Pioneers
Mastodon

Orange Wizard

  • Bay Watcher
  • mou ii yo
    • View Profile
    • S M U G
Re: So, I'm in completely over my head here...
« Reply #4 on: December 13, 2014, 04:24:00 am »

I've heard good things about java
Liar.

...

Anyway, I would recommend for a first game to start small, and work from there. Don't worry about assets/selling/whatever; that stuff is a long road off.
If you don't know much about programming, you have a couple of options.
You can learn. In which case C++ is a fairly bad idea. Java's notably better, and has the bonus of being cross-platform. I would recommend C# with Unity.
Alternatively, you can find someone to do it for you (or with you). Bay12 is full of semi-competent programmers, and there's bound to be someone who's interested in joining the project. Hell, even I'd stick my hand up, but I seem to put more emphasis on the semi than the competent.
Logged
Please don't shitpost, it lowers the quality of discourse
Hard science is like a sword, and soft science is like fear. You can use both to equally powerful results, but even if your opponent disbelieve your stabs, they will still die.

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: So, I'm in completely over my head here...
« Reply #5 on: December 13, 2014, 04:58:24 am »

For starters--Java and C++ are both pretty bad languages to start with... Python and C# are gud.

You need to figure out what you want to make. Is it some sort of roguelike that uses your combat mechanics and other mechanics for, say, loot?
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

dorf

  • Bay Watcher
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #6 on: December 13, 2014, 07:04:51 am »

Depending on what's your end-goal, these links should be relevant:
http://www.sloperama.com/advice/idea.htm
http://www.sloperama.com/advice/lesson29.htm
http://www.sloperama.com/advice/lesson16.htm

On a more practical/programming side I like Moghjubar's answer the most.
The good news is that once you learn one language, you can quickly pickup on other languages.
The bad news is that you'll have to learn one first. And know it well.

If you're having troubles learning because you either find programming an utterly boring affair, or aren't capable of logical and iterative thinking, you should look into game project management. If you just haven't had a proper introduction to programming, start with the basics:
  • absolute beginner's tutorial to a language of your choice (C++ is hard, Java and Visual Basic are easier)
  • learning about object-oriented programming will be helpful as well
  • make a few really simple games (ASCII gfx are just fine)
  • make a pong clone, tetris clone, etc. (ASCII gfx are still fine)
  • find a popular, well-documented 2D rendering library, game engine library, RPG engine library, or even P&P RPG engine with an active community
  • make a few simple games or interactive programs with the chosen library
  • start making prototype(s) of your game

Note that somewhere in the 4th or 5th step, you will need to learn the concept of the "game loop". This will change how you think about things. Before that point you'll probably update/render the game objects on the screen on user input (keyboard, mouse). But in a game loop, game objects will be rendered anew all the time. Even if the user isn't pressing anything.
Logged

Clownmite

  • Bay Watcher
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #7 on: December 13, 2014, 06:10:31 pm »

I was pretty much like you, and then I read the wonderful roguelike tutorial with Libtcod/ Python.

Even if you don't plan on making a roguelike, the tutorial is a great foundation for how to actually make a game. I do also recommend libtcod though, because you get a bunch of cool roguelike-related functions built in to the library. I think it will seriously help you get an understanding of things if you go through the tutorial and then make some minor modifications of your own.

I'd also recommend Python as a first language, because it's easy to read and newcomer-friendly.


The biggest thing that surprised me in programming is that you don't do everything yourself. Chances are you're going to be using libraries that someone else has written for a lot of things. So, you shouldn't be writing the low-level code that can get mouse input or draw graphics. Also, chances are that any particular problem that you're getting hung up on has been encountered (and solved) before, so you can find answers easily using Google or Stackoverflow.

The final thing I'd say is that you're going to encounter tons of stupid, frustrating errors when you first start off. At first you'll have to sink a bit of time into understanding everything, and this can really turn beginners off from programming if they can't get past this first wall.
« Last Edit: December 13, 2014, 08:14:54 pm by Clownmite »
Logged

Bauglir

  • Bay Watcher
  • Let us make Good
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #8 on: December 13, 2014, 06:21:37 pm »

I've had some good experience with this. However, that's with Python, and jumping into another language might not be what you want to do (it also means you may have portability problems since you'll either need to delve into shenanigans to make a standalone executable so that people can play it without having python themselves, and you'll have to flub around with the Python 2/Python 3 dichotomy - all solvable, near as I can tell, but they can be headaches). Also, don't bother with Python if you want 3D stuff - it can be done, but my research suggests it's more trouble than it's worth.

Finally, one word of warning is that the tutorial doesn't follow all the best practices you might want to - for instance, the "from foo import *" line is generally a bad idea because you can't tell where some functions came from, and that can make debugging a nightmare (people do it anyway because it saves them typing for reasons that aren't worth bothering you with in this post).

So that's why you might not want to use PyGame. The reason you might want to use it anyway is that Python is a very straightforward language to use and comes with lots of nice things for people who don't want to muck around with the details of things like iterating through a list, so you can relatively quickly get down to putting your ideas into place. Any time you don't spend on hacking your syntax into conformity with the rules is time you can spend being legitimately productive.

If you're interested in taking another stab at getting into programming in general, here's a course that was pretty helpful for me. The actual page, in case you're interested in more than lectures. Since you've already looked at some languages, a lot of this might feel redundant; most programming languages work with very similar paradigms. On the other hand, this one is rooted in Python and it takes a very well-structured approach to it, if memory serves.

Also, I echo the "You're going to run into frustrating shit constantly" sentiment. That's okay - it's gonna suck, but it'll make it all the sweeter to conquer those stupid fucking bugs. If I had a nickel for every time I forgot how indices work, I'd be a wealthy man. Just be prepared to feel dumb frequently, and remember that the fact that you feel that way means you probably aren't.
Logged
In the days when Sussman was a novice, Minsky once came to him as he sat hacking at the PDP-6.
“What are you doing?”, asked Minsky. “I am training a randomly wired neural net to play Tic-Tac-Toe” Sussman replied. “Why is the net wired randomly?”, asked Minsky. “I do not want it to have any preconceptions of how to play”, Sussman said.
Minsky then shut his eyes. “Why do you close your eyes?”, Sussman asked his teacher.
“So that the room will be empty.”
At that moment, Sussman was enlightened.

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: So, I'm in completely over my head here...
« Reply #9 on: December 13, 2014, 10:15:27 pm »

I still think that before learning a language, Zero should figure out what kind of game he wants :P
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

MaximumZero

  • Bay Watcher
  • Stare into the abyss.
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #10 on: December 13, 2014, 10:55:17 pm »

Oh, but I do know what I want. I want an isometric RPG, not quite a roguelike, but more like a psuedo-roguelike. Think Azure Dreams with less focus on monsters and dating sim elements and more on exploration of a much bigger tower and building a town/tourist trap. I want to strike a balance between Harvest Moon, Sim City, and Dungeon Crawl, and I know it's entirely insane of me to want to make this game with zero appreciable skills, but it's going to drive me mad until I do. Most nights, I dream about it (although I am a mostly lucid dreamer, so take that as you will,) and I spend a lot of time at work thinking about it.

Top 5 items I want:

1) Dungeon/tower with procedural floors, that you can leave if you find exits (or walk back to floor 1, which would always be the same,) and much like games of this nature, there would be passable checkpoints and blocks of themed floors.
2) Build a town outside the tower, as you pay for buildings, you unlock features (blacksmith lets you make custom weapons and armor, et al,)
3) Overland travel, allowing you to travel to nearby towns to buy supplies or sell things if you haven't built a general store in your town yet
4) Procedural inhabitants of your town, assign people to buildings, and match their skills and wants to their occupations (kind of like Spacebase DF-9). Possibly befriend and court them? Haven't decided on this yet.
5) A time system like Recettear (cut into 3 blocks per day, morning, midday, and evening,) that allows you to work, make items, work on and in buildings, go to the tower, travel overland, et al.

I know, I know, it's way too much to hope to accomplish a) by myself, and b) without training. From what I gather, this is doable in Game Maker, but I have a lot to learn before I even get started.
Logged
  
Holy crap, why did I not start watching One Punch Man earlier? This is the best thing.
probably figured an autobiography wouldn't be interesting

Bauglir

  • Bay Watcher
  • Let us make Good
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #11 on: December 13, 2014, 11:19:07 pm »

Quite frankly that's entirely possible to do by yourself, because in the act of so doing you'll learn the skills you need. The art and music, I'm not so sure about - but that's a different thing. Don't get me wrong, it'll be hard as hell and you'll be spending an agonizing amount of time on practice before you actually write anything that goes in the game proper, but as long as you aren't particular about a time frame this is something you can aim for.
Logged
In the days when Sussman was a novice, Minsky once came to him as he sat hacking at the PDP-6.
“What are you doing?”, asked Minsky. “I am training a randomly wired neural net to play Tic-Tac-Toe” Sussman replied. “Why is the net wired randomly?”, asked Minsky. “I do not want it to have any preconceptions of how to play”, Sussman said.
Minsky then shut his eyes. “Why do you close your eyes?”, Sussman asked his teacher.
“So that the room will be empty.”
At that moment, Sussman was enlightened.

MaximumZero

  • Bay Watcher
  • Stare into the abyss.
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #12 on: December 13, 2014, 11:58:21 pm »

Speaking of art and music, I can photoshop and illustrator and guitar, but how do I turn that into usable assets?
Logged
  
Holy crap, why did I not start watching One Punch Man earlier? This is the best thing.
probably figured an autobiography wouldn't be interesting

Ogdibus

  • Bay Watcher
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #13 on: December 14, 2014, 12:10:52 am »

Make a file in a format that your engine or libraries can use.  Recording music might require renting a studio.  It might be cheaper to synthesize it with software.
Logged

MaximumZero

  • Bay Watcher
  • Stare into the abyss.
    • View Profile
Re: So, I'm in completely over my head here...
« Reply #14 on: December 14, 2014, 12:13:57 am »

Yeah, I can do basic stuff, but nothing amazing.
Logged
  
Holy crap, why did I not start watching One Punch Man earlier? This is the best thing.
probably figured an autobiography wouldn't be interesting
Pages: [1] 2 3