View Full Version : Advice sought for first project.
Durandal
2006.05.23, 03:24 PM
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? :)
Oh, and if it matters, I'm running the latest version of OS X.
Much thanks!
-D
ThemsAllTook
2006.05.23, 04:53 PM
If Python looks good to you, you might also want to take a look at Ruby (http://www.rubycentral.com/book/), 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.
Durandal
2006.05.23, 06:04 PM
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.
Skorche
2006.05.23, 06:45 PM
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.
Durandal
2006.05.23, 06:50 PM
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 ;)
OneSadCookie
2006.05.23, 06:57 PM
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.
Leisure Suit Lurie
2006.05.23, 08:46 PM
If you want something free specifically tailored to games:
PlayKode (http://www.idevgames.com/forum/showthread.php?t=10268)
TNTBasic (http://www.tntbasic.com)
Skorche
2006.05.23, 09:08 PM
If you want something free specifically tailored to games:
PlayKode (http://www.idevgames.com/forum/showthread.php?t=10268)
TNTBasic (http://www.tntbasic.com)
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.
socksy
2006.05.24, 03:00 PM
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.
KittyMac
2006.05.24, 04:56 PM
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.
Durandal
2006.05.24, 09:51 PM
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
vBulletin® v3.6.8, Copyright ©2000-2008, Jelsoft Enterprises Ltd.