Bay 12 Games Forum

Please login or register.

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

Author Topic: How and where to begin?  (Read 3452 times)

ThirdProphecy

  • Bay Watcher
    • View Profile
How and where to begin?
« on: September 05, 2010, 11:28:59 pm »

For the longest time I've wanted to make games, but it wasn't until playing dwarf fortress that I was truly inspired and motivated to begin somewhere. DF showed me its possible to make a great game without having to work on graphics!

So I've purchased a book or two on C++, as the general opinion is that C++ is the best for games...

My question is, where and how do I begin to make my own ASCII based game? Most roguelikes are constricting to one controllable character, (though DF is completely different, its not open source so I cant peek at the code) and I'm wanting something with multiple controllable units on the screen (selecting multiple RTS style or squad based commands like in DF).

Where do I begin? There aren't any "Build an ASCII game" books out there, and everyone that I know that develops games has no idea because they don't use ASCII :P

Where should I go? What should I learn? If anyone has any advice at all it would be much appreciated!
Logged

jocan2003

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #1 on: September 05, 2010, 11:35:39 pm »

I know very little about programming but maybe you could start by taking a few open source game Roguelike with ansi to get a *working* engine displaying ASCII character and so on. By the time you get a squeleton game going you will have learned a lot, and from there simply add in some *feature* surely you wont make an awesome game the first try, but after a few project you will feel more and more confident and what are the possiblities.

After that well i cant help you.
Logged
Quote from: LoSboccacc
that was a luky dwarf. I had one dabbling surgeon fail so spectacularly that the patient skull flew a tile away from the table.
Quote from: NW_Kohaku
DF doesn't mold players into its image - DF merely selects those who were always ready for DF.
Quote from: Girlinhat
Minecraft UI is very simple. There's only so many ways you can implement "simple" without copying something. We also gonna complain that it uses WASD?

ThirdProphecy

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #2 on: September 05, 2010, 11:48:57 pm »

Thats a good idea, I'll do that. I read theres a difference between actual ascii, and pseudo ascii.. I wonder what DF uses? Pseudo ascii is like opengl or directx or something that uses text, and ascii is just text. Theres advantages/disadvantages to each but I'm wondering which DF uses?

Logged

3

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #3 on: September 05, 2010, 11:58:44 pm »

DF uses the latter. That said, recent versions include a pure text output mode.

You would probably be better off moving this to Creative Projects.
Logged

ThirdProphecy

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #4 on: September 06, 2010, 11:04:22 am »

Moved.

If DF uses a pseudo ascii interface then I should learn probably some directx or opengl? I wish I had thousands of dollars and just go to college for it :( It sucks when you have the motivation but not the means. Anyone know any good places to start bookwise?
Logged

Virex

  • Bay Watcher
  • Subjects interest attracted. Annalyses pending...
    • View Profile
Re: How and where to begin?
« Reply #5 on: September 06, 2010, 12:35:20 pm »

I had a large post written up, and then I ran into this
I think that tells you more then I ever could.
Logged

ILikePie

  • Bay Watcher
  • Call me Ron
    • View Profile
Re: How and where to begin?
« Reply #6 on: September 06, 2010, 01:22:41 pm »

Moved.

If DF uses a pseudo ascii interface then I should learn probably some directx or opengl? I wish I had thousands of dollars and just go to college for it :( It sucks when you have the motivation but not the means. Anyone know any good places to start bookwise?
You don't need to go to college to learn programming. Nethack was programmed in C using ncurses to draw the characters. This is more or less what you're looking for. But, C is a very complex language, I suggest starting with a simpler language like python. Once you grasp the basics, mess around with C. These languages look more or less the same, so moving from one to the other shouldn't be an issue.

e-  I guess python for dummies is a good place to start, never read through it though. Once you've got the basics and feel like moving over to C, "The C Programming Language" documents everything quite nicely (I happen to own this one, it's not a good place to start, but is it a great reference).
« Last Edit: September 06, 2010, 01:30:56 pm by ILikePie »
Logged

ed boy

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #7 on: September 06, 2010, 06:29:44 pm »

I would reccomend starting small. Try making a tic tac toe program, for example. If you try to start with something big, then it'll all go horribly wrong.

I would also reccomend planning everything out. In enormous detail. In your first post, I get the impression that there are elements that you want to implement, but it takes a lot more planning than that. The closest metaphor that I can think of is this: Imagine your computer is someone with extreme mental deficiencies. The precise nature of these mental difficulties varies (different programming languages), but they are always extreme. Your job is to teach this mentally deficient person all the mechanics behind your program, so they can go through it without any additional input from yourself.

I would also echo people's statements that unless you are familiar with programming in other languages, C is not something to start from.

Finally, remember that programming anything significant is bloody hard work. If it were easy, then everybody would do it. People who do not know much about programming can easily find themselves under the illusion that things are simple, because it can be expressed in their minds and to other people in a few words. The reality is often very different.
« Last Edit: September 06, 2010, 06:33:24 pm by ed boy »
Logged

ThirdProphecy

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #8 on: September 07, 2010, 01:31:37 pm »

I hate when people say not to learn C or C++, most programmers I know started with those languages, and I'm not logically challenged. I've read a couple starter books for C++, including "Beginning C++ Through Game Design v2" In which I learned to make a tic tac toe program already, etc. I'll check out that link that was posted and see where it takes me! :)

Btw, not saying that python isn't worth learning, just saying I'm fully capable of learning C++ :) I also should have mentioned that I have a background in web design; I'm familiar with code/coding and syntax, structures, etc.

Yeah, I've learned about pseudo code and have used similar methods in web development. I know I'll have to plan everything out, but I'm not going to put my whole design document on this post because the main question is where I can go to learn how to make games (not just how to program, theres books for that :D). Thanks for the input guys I might be back with more questions (more like probably :D)
« Last Edit: September 07, 2010, 01:35:34 pm by ThirdProphecy »
Logged

ThirdProphecy

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #9 on: September 07, 2010, 01:39:09 pm »

Eek, I just read that wiki link you posted. Yeah, I've seen that already, but like I said in the original post I'm not necessarily looking to make a roguelike. DF is less roguelike than others in that it's real-time with multiple controllable units. Like an RTS in ASCII. I want to know how to make ASCII output similar to DF (even if thats using pseudo ASCII) so that I can have multiple controllable units in stop-time (realtime with pause feature). I know theres someone out there with an algorithm or experience making something similar that can throw an example or a good resource link my way! :)
Logged

ILikePie

  • Bay Watcher
  • Call me Ron
    • View Profile
Re: How and where to begin?
« Reply #10 on: September 07, 2010, 01:52:49 pm »

If you really insist on learning C++ or C, take a look at the K&R C book I posted earlier.
Logged

Virex

  • Bay Watcher
  • Subjects interest attracted. Annalyses pending...
    • View Profile
Re: How and where to begin?
« Reply #11 on: September 07, 2010, 02:02:33 pm »

You're looking for a site like this, perhaps?
Logged

ThirdProphecy

  • Bay Watcher
    • View Profile
Re: How and where to begin?
« Reply #12 on: September 07, 2010, 02:17:59 pm »

Thanks virex that looks like a great place to start! I guess my next mission is Tetris... then Breakout!... Whatever it takes folks :D
Logged

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: How and where to begin?
« Reply #13 on: September 07, 2010, 02:25:33 pm »

There is absolutely no reason to use C or C++ for this. It'll only lead to grief.

Seriously. The only reason that C++ is commonly used for games is to push more performance from your processor, but.. you don't need that, and it takes quite literally two to ten times more effort than doing the same thing in, say, Python.

I'd recommend Haskell, but that's probably too much for most people. So I think I'd rather ask you to switch to Python. You'll learn much faster.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

ILikePie

  • Bay Watcher
  • Call me Ron
    • View Profile
Re: How and where to begin?
« Reply #14 on: September 07, 2010, 02:52:13 pm »

I'd recommend Haskell, but that's probably too much for most people.
You keep suggesting this all the time, and I see it in so many places, but I don't get it. The closest I've ever gotten to understanding Haskell is when some explained a "granddad" application.

Granddad is dad's dad
Tim is Larry's dad
Larry is John's dad
Who is John's granddad?
> Tim

Or something like that. The guy was describing LISP, but the two languages look pretty close.
Logged
Pages: [1] 2