Advice sought for first project.

Durandal
Unregistered
 
Post: #1
Hey everyone - I've been wanting to dip my foot in the river of game design for awhile, and I have a fairly good idea about what I want to accomplish. That said, with virtually no experience in game design or programming whatsoever, I've come for some advice if any of you wizened programmers would be gracious enough.

I'm not a fool - I don't intend to have my first project be a complex 3d masterpiece with cutting edge physics, etc. What I want to create is a text adventure game. I've investigated various pre-made text-adventure engines, but the problem I've encountered is those engines tend to be incredibly simple and limited. That said, I *do* want this project to be simple per se, but it's my goal to include at least a few RPG elements, such as attributes/statistics (that can be modified/improved/affected), and random number generation. Additionally, it'd be nice to be able to have certain events happen at certain times, etc.

This has sort of left me in a bind, as the engines that I've found have been far too simplistic to pull this off, and yet my aims seem simple enough that I'm intimidated by actually trying to write an engine myself, mainly because I have no idea where to begin. I haven't found much information on text-based adventure/RPG creation.

I've thought about potentially using Python as it seems one of the least scary of languages (if I'm forced to write my own engine), but again, I have no experience.

Any advice? Thoughts? Rude remarks? Smile

Oh, and if it matters, I'm running the latest version of OS X.

Much thanks!


-D
Quote this message in a reply
Moderator
Posts: 1,560
Joined: 2003.10
Post: #2
If Python looks good to you, you might also want to take a look at Ruby, if you haven't already.

As for getting your feet wet, don't be afraid to experiment. If you haven't done any programming at all, you might not want to start on the actual game right away - building a few test programs solely for the purpose of learning your language and environment would be advisable.

A text-based RPG should be a relatively easy first project, because it's almost pure game logic. Once you have the experience of that under your belt, you should be more ready to jump into something more graphical if you wish.

Good luck, and don't be afraid to ask questions! We were all beginners once.
Quote this message in a reply
Durandal
Unregistered
 
Post: #3
I'm not very familiar with Ruby - I'll investigate it a little more. And you're right, even this text RPG project may be a little too ambitious for someone with zero skills, but I'm not sure where the truth lies between that project and making a terminal say "hello world" when it comes to learning.
Quote this message in a reply
Sage
Posts: 1,482
Joined: 2002.09
Post: #4
Python and Ruby come with OS X, so both are a good choice.

If you want to know more about Ruby, head to http://www.rubycentral.com/book/ If you find that useful, you can also buy the second version. I would highly recommend it, It's practically the end all Ruby book.

Scott Lembcke - Howling Moon Software
Author of Chipmunk Physics - A fast and simple rigid body physics library in C.
Quote this message in a reply
Durandal
Unregistered
 
Post: #5
One thing I'm curious about - is there a clear preference toward Ruby over Python? I've heard good things about Python, but I'm not sure about the differences between Python and Ruby as far as learning curve, speed, etc. The one thing I do like about Python is that the commands and just the way it looks actually seem friendly and logical to me. A friend of mine works with Perl, and oh my god, what an ugly language!

However, that said, I have little experience with Python, and if Ruby is better for X, Y and Z, just say the word Wink
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #6
If you're new to programming, I'd recommend Python -- it's a very simple language. If you're not, Ruby tends to be easier to get stuff done in, but at the expense of a lot of language complexity.
Quote this message in a reply
Moderator
Posts: 529
Joined: 2003.03
Post: #7
If you want something free specifically tailored to games:

PlayKode
TNTBasic

"Yes, well, that's the sort of blinkered, Philistine pig-ignorance I've come to expect from you non-creative garbage."
Quote this message in a reply
Sage
Posts: 1,482
Joined: 2002.09
Post: #8
Leisure Suit Lurie Wrote:If you want something free specifically tailored to games:

PlayKode
TNTBasic

Not to pick that apart to much, but PlayCode is just Lua with useful modules for writing games. It's not like Lua was designed for video games. Same with TNTBasic, It's just another BASIC-like language. Saying that either are "made for games" is a bit of a misnomer. You can find game libraries for just about any programming language, and any general purpose language will work just as well as another.

Scott Lembcke - Howling Moon Software
Author of Chipmunk Physics - A fast and simple rigid body physics library in C.
Quote this message in a reply
Member
Posts: 168
Joined: 2004.10
Post: #9
Actually, the whole purpose of PlayKode is to make games, and as the author chose Lua, it uses that as a library.

The author of TNTBasic authored that version of Basic to make games, using basic as it's an easy language, I believe.

Not to mention both have their own types of IDE which is geared for game development...

By the way, PlayKode is going to be shareware, so saying it's free might be wrong.
Quote this message in a reply
Member
Posts: 204
Joined: 2002.09
Post: #10
Please try to not let this discussion drop to an argument over language/IDE preference. The bottom line is that the problems and obstacles he will have to overcome to write a text-based RPG are present in all of the languages.

My advice: pick the language/IDE that interests you and go for it. Every one mentioned so far will get the job done.

Once you start learning the language, to actually write the text RPG you'll need to look into the following (not complete, off the top of my head list):

1) simple text input/output (user can send commands, you can display results).
2) random number generation
3) file I/O (to save the user's game, also later on to read in level/monster files)
4) a bi-directional graph data structure (simplest way to provide your "world"... assuming you world consists of connected "rooms")


If I were doing this for the first time, I'd start by doing some simple emot-like commands. For example:

>smile
You smile graciously.
>frown
You frown menacingly.


Brainstorm and make a plan of where you are, where you want to go, and the "common sense" steps you'll need to take to get there. Then just start doing it.
Quote this message in a reply
Durandal
Unregistered
 
Post: #11
I appreciate the advice - makes a lot of sense. I guess it boils down to doing a little more research on the various languages availible. One other question, though - obviously other people have done projects like this before, and I'm wondering if anyone knows of any good, or even basic tutorials on such a project.

Thanks so much,


-D
Quote this message in a reply
Post Reply