ID:152737
 
While chatting in Evi of au's Chat ( hub://Eviofau.Chat ), we had a little conversation about learning DM. I think it would benefit many people to read it, so I'm posting it here. You can discuss the contents or add your own thoughts on getting started with DM. Enjoy!

Deathmonk: hey guys
AZ0123: Hi
Deathmonk: so whatcha talkin bout
AZ0123: Fint's game idea
Deathmonk: oh i was thinking of makin a text game also
Deathmonk: i need a coder though
Deathmonk: i suck at coding
Artemio: If someone programs a game for you, it's pretty much their game.
Deathmonk: really
Deathmonk: but if its my idea its my game
AZ0123: you can't own ideas
AZ0123: only the source
AZ0123: and if someone else made the source, it's not really yours
Artemio: Programmers do the bulk of the work.
Deathmonk: okay so if i want to develop a game and i get a coder then i cant do anything to help
AZ0123: We're not saying you can't do anything, but if the programmer wanted to take the source and make their own game with it, there's not much you can do if they're the ones who coded it.
Deathmonk: oh i get it now
Artemio: Custom icons are not NECESSARY for a game.
Artemio: Ideas and coding IS.
Fint: Gamplay makes the game
AZ0123: which is done with code
AZ0123: And all you have are ideas, which isn't much without the ability to turn those ideas into gameplay.
Artemio: Well, you don't actually need ideas for a game, anyways. There are millions of ideas.
Deathmonk: i want to make a text rpg
Deathmonk: its my first time makin a game so
AZ0123: start small
AZ0123: a text RPG is a good small start
Fint: Yeah, and dont copy, learn for urself
Deathmonk: im thinkin of starting a chat game first
Artemio: Make chat programs or little utilities using the byond functions that aren't normally used.
Branks: Chat programs wont help you learn much..
Deathmonk: im gonna start on my chat idea
AZ0123: Chat games aren't hard either, but they won't teach you some of the things you need to know for rpg game making
Fint: Does teach you about the basic way to handle verbs, proc and vars
Artemio: A good thing for a newbie to a language to do is first learn the basic syntax and such, then learn all not-so-obscure functions because you will know those later, and the obscure functions can be easily found and learned.
Artemio: And they're used more commonly than the obscure functions so it'd be much easier to learn them and know how to use them.
Deathmonk: yea but i only know how to code how to say "say"
Fint: Personally i think practice makes perfect
Deathmonk: i have tried for 8 days straight wit out help
AZ0123: It will take a lot longer than a week to learn DM
AZ0123: Some people never stop learning.
Deathmonk: i know>_<
Fint: I've started a million projects and never finished one, it did teach me how to code well, what to think about, and how to keep a code simple
AZ0123: That's why it's best to start small and not get burned out trying to learn everything and make a huge game at the same time.
AZ0123: That's how most people fail
AZ0123: They try to do something huge without knowing how to do something small first
Deathmonk: good idea'
Fint: Its not bad to fail though, as long as you look at WHY you failed
AZ0123: But if you're working on 3 or 4 different systems, and it all fails, you probably won't learn much at all, except that you failed.
AZ0123: I think that is half of Developous' problem. He gets these ideas a for a game and starts coding without having a good working knowledge of DM. Then when it fails, he doesn't know what exactly went wrong and gives up.
Deathmonk: thanks for the encouragement T_T
AZ0123: We're not trying to discourage you from making a game, we're just saying it might work out better if you started small, and learned the basics before moving on to harder things
Deathmonk: i know i was kiddin about that
Deathmonk: how can u make fight monster on a text game?
Deathmonk: is it msg ?
AZ0123: See, you're trying to get information about the coding process and you don't even know the right questions to ask.
AZ0123: This tells me you're not ready to build a combat system.
AZ0123: Let alone work with logins or savefiles or monster AI
AZ0123: which can really be a pain
Deathmonk: what are the right questions then
AZ0123: The right questions shouldn't be how to make a thing attack something
Deathmonk: i know what ur sayin
Deathmonk: but im gonna try small
Branks: Make Tic-Tac-Toe
AZ0123: Tic-Tac-Toe is actually a good one to try out
Deathmonk: tic tac toe?
AZ0123: it's simple and uses quite a few aspects of DM that are common to all programs. Get a Tic-Tac-Toe game working, and you'll have learned quite a lot
AZ0123: Look at how simple and fun The Sky Is Falling turned out to be. It probably was easy to code, and alot of people liked it.
Deathmonk: true
AZ0123: You don't have to code Tic-Tac-Toe, but something simple that just has a basic gameplay is where you should start
Deathmonk: im gonna try that
Deathmonk: it sounds like a good idea
AZ0123: Think of something simple, like whack-a-mole, or freeze tag. They all have one rule that makes the game, and if that's all you have to worry about coding, it will focus you on the task and you'll see progress.
AZ0123: you'll learn more that way
Deathmonk: thats a good idea or i can make hangman
AZ0123: Not to mention simple games can be made quicker, they're more fun and you'll soon have a large collection of published games to show people you really do know what you're doing.
AZ0123: Not a half-finished RPG that no one plays and people will accuse you of ripping
AZ0123: I can garuntee no one will accuse you of ripping Tic-Tac-Toe
Deathmonk: but lets say i make all the right things how can i make myself a gm
AZ0123: See, the wrong question again.
AZ0123: It depends on what a GM is in your game
AZ0123: GMs are just players with more freedom to do things, sometimes things that are against the rules for normal players.
Deathmonk: okay lets say a gm can ban players
AZ0123: Ok, banning is closer to a right question
AZ0123: The basic idea behind programming is taking your idea and breaking it down into the smallest possible chunks. The computer won't know what you mean by a GM unless you tell it exactly what a GM is, what it does and how it does it.
AZ0123: I think what I'm trying to say is, it's easier to break a simple game like Tic-Tac-Toe down into it's smallest chunks than it would be to break an RPG down.
Deathmonk: yea yur right
AZ0123: When you have all the little chunks figured out, then you will start to ask the right questions
AZ0123: and I don't mean figured out in code, just concepts and ideas
AZ0123: what we call pseudo-code. It's like a recipe for a game in plain english
AZ0123: Like, imagine trying to explain to someone how to make a sandwhich. Someone who doesn't even know what bread or a knife are.
AZ0123: you'd have to explain everything, even how to open the bag of bread, how many slices to take out, how to lay them down on a plate, how to use the knife to spread the peanut better and jelly, how to open and close the jars, where to find everything and how to put it back
AZ0123: Heck, you'd have to tell them which way to turn the lid to open it, which way to close it, how to hold the knife. I mean, it can be broken down into a lot of very small chunks
AZ0123: the smaller the chunks you have, the closer you get to actual code
AZ0123: it will make it alot easier then to go from idea to actual code, becuase you'll have the whole recipe laid out in very specific steps and chuncks
AZ0123: which is what the computer needs to know what to do
Deathmonk: thats a good example
Deathmonk: im hungry
AZ0123: heh