Game Development
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
User Name:
Password:
Remember me
Go Back   Dev Shed ForumsProgramming LanguagesGame Development

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Rate Thread Display Modes
 
Unread Dev Shed Forums Sponsor:
AT&T devCentral & BlackBerry(r) Webcast Series: BlackBerry and GPS -Build Location Awareness into your BlackBerry Applications, July 10th-1:00PM EST. Register Today!
  #1  
Old August 17th, 2007, 12:07 AM
CircuitBoard CircuitBoard is offline
Registered User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Aug 2007
Posts: 6 CircuitBoard User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 3 h 1 m 27 sec
Reputation Power: 0
Send a message via MSN to CircuitBoard
Text-RPG maker

Hey, I've started an open source Project, called RPGwriter.
rpgwriter.sourceforge.net
It's a program that lets a user put together a text-based RPG without writing code. (Think of RPG maker without the graphics)

The only problem is, I'm not sure how exactly to set everything up. I'm used to C++ programming, but Windows programming is new to me. Does anyone know a good place to start?

I'm willing to work on smaller projects to learn while still slowly progressing on RPGwriter, I just want to eventually put the whole thing together.

Any ideas?

Thanks in advance.

-Rick

Reply With Quote
  #2  
Old August 17th, 2007, 12:21 PM
gimp's Avatar
gimp gimp is offline
<?PHP user_title("gimp"); ?>
Click here for more information.
 
Join Date: Jan 2005
Location: Internet
Posts: 5,791 gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)  Folding Points: 1555 Folding Title: Novice Folder
Time spent in forums: 2 Months 2 Weeks 4 Days 57 m 25 sec
Reputation Power: 1469
Send a message via AIM to gimp
Oh boy. Oh boy oh boy. This is a big one.

What you're making is a program that generates code based on user's selected choices.

There are a few things you must realize. I won't mention all of them because I don't know all of them.
1) You're going to need a lot a lot a lot of graphics to give the user an adequate selection. I mean sprites for everything, tiles (if you're making this tile-based, that is, as opposed to something 3d, which is a whole different story, and way beyond your means). You're going to need to create menus, then you're going to need to create something to dynamically create menus. You're going to need to draw tons and tons of different tiles, then you're going to need to create something to color them on the fly as you're placing them into maps (so that you don't have to create different tiles for the same thing, except one thing is brownish and the other is grayish, or something). You're going to need to create building sprites, weapon sprites, character/NPC sprites, etc. Long story short: Tons of images and image manipulation.
2) You're going to have to give the user many many many choices, otherwise it's just a very limited deal. This means the user will be able to create and edit dialogs, npc, items, etc etc etc. You might want to let the user create his own tiles and sprites and graphics of all sorts - and then you'll need the program to be able to manipulate his images, not just yours. With so much freedom, there'll undoubtedly be many things that will be done that shouldn't be done, so you'll need to have lots of checks to make sure the user isn't doing things that he's not supposed to do (or supposed to be able to do).
3) If you want to keep doing this after initial releases, that'll mean even more work, and initial releases will take up a lot of time too. This means you'll need to sink hours into this. I hope it's worth it.


Then, some more advice:
Before trying to create an rpg-generating tool, you will want to make an actual rpg or three of the type the tool should generate. This will help you get the pattern. Also, play some yourself. See what people like.
And, of course, anybody that makes games with your tool will probably be a kid, because nobody else has time to waste on generating themselves an rpg from a game. Keep that in mind. Target audience.

And have fun.


Edit: Didn't read that this is supposed to be a text-based rpg generator. Not too much point in that... to be honest, not many people will want to use the tool to make a (probably) half-arsed game that three people will play.
__________________
A work in progress: Card Game Platform (Status: On Hold) | Joke Thread
“Rational thinkers deplore the excesses of democracy; it abuses the individual and elevates the mob. The death of Socrates was
its finest fruit.”

Reply With Quote
  #3  
Old August 17th, 2007, 01:16 PM
Yahweh Yahweh is offline
Vegan
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Jun 2007
Posts: 213 Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level)Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level)Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level)Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level)Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level)Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level)Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level)Yahweh User rank is First Lieutenant (10000 - 20000 Reputation Level) 
Time spent in forums: 2 Days 20 h 22 m 20 sec
Reputation Power: 105
Quote:
Originally Posted by CircuitBoard
The only problem is, I'm not sure how exactly to set everything up. I'm used to C++ programming, but Windows programming is new to me. Does anyone know a good place to start?

I'm not exactly sure what you mean by making a distinction between C++ programming and Windows programming, but I wrote an RPG maker once and it worked fairly well. A basic starting point is figuring out where your worlds are stored:
- store data in a database? In a bunch of files? In a single file?

It'll be easy to retrieve your worlds, but what format will they be in?
- Are they in XML format? Stored in an array? An array of XML documents?




Here is basically my experience when I wrote my RPG maker. I decided to mix all three methods:
- Everything was stored in a database. I had an "Environment" table which held the worlds.

- My Environment table had three fields: X, Y, and Level. This basically served the purpose of a multidimensional array. I wanted to define each level as 2-D grid, and I wanted to have muliple levels / maps.

My method was fairly convenient, because it meant I could have a house or some other object occupy a single space on my grid (perhaps X=1, Y=4, Level=0). When a character enters the house, it would enter a new level (the interior of the house) which could be as big as I wanted. The house might occupy a 20x20 unit space that the character could explore, and I didn't have to adjust the space or positions of objects on my main map.

- Each grid location contained an XML document which did the bulk of work: the XML document looked something like this:
Code:
<level>
    <message id="1">
        A neophyte like you should build up some
        experience before moving on.
    </message>
    <message id="2">
        Go to the castle for some reason.
    </message>
    <message id="3">
        You're in a dungeon. You spot a sword and shield 
        laying on the floor.
    </message>
    <if istrue="userstatus > 5">
        <if action="get">
            <add inventory="sword" />
            <add inventory="shield" />
            <add experience="100" />
            <set objective="1" value="complete" />
            <outputmsg>
                You found a sword and shield! +100 experience.
                Mission 1 completed.
            </outputmsg>
            <display msg="2" />
        </else>
            <display msg="3" />
        </if>
    <else>
        <display msg="1">
    </if>
</level>

I wrote all of the XML pages by hand at first, just to have some test data. Then I create a simple user-interface that would allow users to set up their worlds without having worry about XML or a database.

Behind the scenes, I used hashtables for storing inventory, objectives, and user status.

I later extended my RPG maker to allow users to embed images to be displayed on each grid cell. This would allow users to create old-school Mist-like games.

The hardest part, for me at least, was writing something to interpret user input. I like the old Zork games that could understand entire sentences like "pick up the key and unlock the door", but I wasn't able to write a very sophisticated user-input interpreter. I could understand only the simplest commands, and only one command at a time. "Go left." "Move right." "Fight grue." "Get Key." etc.

So, I essentially had three intepreters:
- One for interpreting levels / maps.
- Another for interpreting commands and actions defined in the maps.
- And one more for interpreting user input.


You're free to use my ideas and expand on them if you want, or start from scratch with your own ideas.

Reply With Quote
  #4  
Old August 17th, 2007, 07:08 PM
CircuitBoard CircuitBoard is offline
Registered User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Aug 2007
Posts: 6 CircuitBoard User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 3 h 1 m 27 sec
Reputation Power: 0
Send a message via MSN to CircuitBoard
Thanks Very Much

Yahweh, that was exactly the kind of reply I wanted, thank you so very much. However, I respect the opinion of everyone here very much, and if you don't think this program will have much of an impact, I'm not sure that I should continue development. I was hoping very much to work on some kind of RPG related project before school began, however, so I was wondering, Does anyone still play MUDS? Most of the code I have already written for this program can be used in that kind of situation, and I would like to be able to run one. I have the necessary hardware, but I don't know if there is still enough interest to warrant such an undertaking.

Any thoughts?

Cheers

Reply With Quote
  #5  
Old August 17th, 2007, 07:33 PM
gimp's Avatar
gimp gimp is offline
<?PHP user_title("gimp"); ?>
Click here for more information.
 
Join Date: Jan 2005
Location: Internet
Posts: 5,791 gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)  Folding Points: 1555 Folding Title: Novice Folder
Time spent in forums: 2 Months 2 Weeks 4 Days 57 m 25 sec
Reputation Power: 1469
Send a message via AIM to gimp
The truth is that MUDs are mostly out. The only ones left make up for text-based-ness (lack of graphics) with an amazing plot and extreme complexity. These kinds of things you probably won't be able to work out very quickly (if ever - it's a form of inventiveness that not too many people have).

With shiny new flat-screen monitors being the standard, there's not much appeal in playing games lacking graphics, you know?

I don't want to be the person that says it like it is and makes you give up development, but though the job may be hard, truth is spoken.


Now, if you're developing this purely for yourself (learning, fun) then you have no reason to stop. If you're developing this in the hopes of gaining a following, the chances are very small that you will succeed.

Reply With Quote
  #6  
Old August 17th, 2007, 09:54 PM
CircuitBoard CircuitBoard is offline
Registered User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Aug 2007
Posts: 6 CircuitBoard User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 3 h 1 m 27 sec
Reputation Power: 0
Send a message via MSN to CircuitBoard
Ok, I understand.

Is there anything you can think of that I could develop, even if it takes a long time, that would be fun and that I would be able to share with others?

The reason I enjoy developing is because I can help others have a good time. Is there a genre that a single person can program for, which multiple others will also enjoy?

Thanks,
Rick

Reply With Quote
  #7  
Old August 24th, 2007, 12:09 PM
zynder's Avatar
zynder zynder is offline
Not much of a contributor
Dev Shed Novice (500 - 999 posts)
 
Join Date: Aug 2006
Location: Hidden
Posts: 791 zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)zynder User rank is Brigadier General (60000 - 70000 Reputation Level)  Folding Points: 137791 Folding Title: Super Ultimate Folder - Level 1Folding Points: 137791 Folding Title: Super Ultimate Folder - Level 1Folding Points: 137791 Folding Title: Super Ultimate Folder - Level 1Folding Points: 137791 Folding Title: Super Ultimate Folder - Level 1Folding Points: 137791 Folding Title: Super Ultimate Folder - Level 1Folding Points: 137791 Folding Title: Super Ultimate Folder - Level 1
Time spent in forums: 1 Week 2 Days 20 h 46 m 54 sec
Reputation Power: 637
Send a message via Yahoo to zynder
You should catch up with times. Add graphics even if it's not 3D. 2Ds are fine as long as the gameplay rocks.

You have a background in C++, which is a superb language in creating games. Polish your C++ and search for 2D games tuts. You might want to search a tutorial for using OpenGL.

Reply With Quote
  #8  
Old August 24th, 2007, 06:46 PM
gimp's Avatar
gimp gimp is offline
<?PHP user_title("gimp"); ?>
Click here for more information.
 
Join Date: Jan 2005
Location: Internet
Posts: 5,791 gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)gimp User rank is General 7th Grade (Above 100000 Reputation Level)  Folding Points: 1555 Folding Title: Novice Folder
Time spent in forums: 2 Months 2 Weeks 4 Days 57 m 25 sec
Reputation Power: 1469
Send a message via AIM to gimp
s/may want/almost must

Reply With Quote
  #9  
Old October 4th, 2007, 06:47 PM
0CIRCLE0 0CIRCLE0 is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Oct 2007
Posts: 59 0CIRCLE0 User rank is Second Lieutenant (5000 - 10000 Reputation Level)0CIRCLE0 User rank is Second Lieutenant (5000 - 10000 Reputation Level)0CIRCLE0 User rank is Second Lieutenant (5000 - 10000 Reputation Level)0CIRCLE0 User rank is Second Lieutenant (5000 - 10000 Reputation Level)0CIRCLE0 User rank is Second Lieutenant (5000 - 10000 Reputation Level)0CIRCLE0 User rank is Second Lieutenant (5000 - 10000 Reputation Level)0CIRCLE0 User rank is Second Lieutenant (5000 - 10000 Reputation Level) 
Time spent in forums: 18 h 48 m 59 sec
Reputation Power: 84
If you like C/C++ you may want to check out

Allegro.cc

It is a game programming library for c/c++. You can even look into OpenGL or even AllegroGL. Allegro aswell is a multi platform gaming library works on Linux Windows FreeBSD well you get the point. Check it out. I use it and have a lot of fun with it.

Reply With Quote
  #10  
Old October 9th, 2007, 04:25 AM
MarbleHost.com MarbleHost.com is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Sep 2007
Posts: 32 MarbleHost.com User rank is Sergeant (500 - 2000 Reputation Level)MarbleHost.com User rank is Sergeant (500 - 2000 Reputation Level)MarbleHost.com User rank is Sergeant (500 - 2000 Reputation Level)MarbleHost.com User rank is Sergeant (500 - 2000 Reputation Level)MarbleHost.com User rank is Sergeant (500 - 2000 Reputation Level) 
Time spent in forums: 6 h 43 m 16 sec
Reputation Power: 14
I've got a little bit to add here, and I mean no disrespect to any vets here who have already expressed their opinions of the success rate of the original concept.

Rick,

I have a question to ask.

If you had to choose one answer, were you wanting to look into a text-based RPG maker more out of reverant nostalgia, or more because it seemed easier to make?

If the latter, this post has no relevance, don't waste your time reading it.

If the former, then I have some suggestions to actually pull this project into something feasible.

These are all essentially based on the concept of you taking the open source project to your own website to run as a sort of central headquarters and main gaming site.

1). If it were web-based, each user could store their "world" online for others to play, you could offer to host them all and allow users to go from one world to another either freely or with special items that allow them to travel to "other realities". The rest of the suggestions involve the game being web-based.

2). This is a hybrid suggestion that kind of touches base on Yahweh's embedded image suggestion. If you were to allow each user who creates their own world to add their own images for their monsters and the such with an easy user-friendly interface, then you would be approaching being on par with standard free strategy games while exceeding such in allowing the users who create and play instead of just play to help customize the game for other users.

3). If you took a preset percentage of ad revenue and put it into a contest pool, you could offer prizes for things such as "best new monster", "best storyline of the month", "best new world", and so on, as well as interactive contests for all users such as "pan-dimensional" treasure hunts for cash and sponsored prizes.

4). You could add the possibility of incorporating flash movies for sequences, even if just strictly site-controlled at first for things such as leveling up.

5). You could incorporate things such as flash games that people can go to taverns to play to win gold in the game.

6). You could heavily integrate the project's message board into the game to make sure that you get and keep the right target audience. Old school texters are still out there, but you'll have to work extra hard to get the same results that a flashier, graphic-heavy site would procure.

7). If you stick to a MUD setting, it will probably be easier because you can stick to basic commands and have a compiled list of commands and how to use them. "n" for walk north, etcetera.

8). You could work out deals with the owners of other small free game sites (such as the rehashes of Lemonade Stand) where their users can win prizes for making RPG versions of the other games on your site in an effort to cross-promote both sites.

9). You could set aside a portion of any prize pool to save up to have a flash version of a grand prize winner's text RPG made by someone good from Newgrounds. Eventually, enough flash games would be built up of games with really great storylines that the main focus would be the flash games and everyone trying to make such a good game that it gets semi-immortalized with partial credit given to them.

10). You could get into viral marketing on YouTube or similar making fun of the cheese factor of the whole text RPG thing while advertising for the site at the same time, such as people acting out a scene live-action dressed in medieval garb with purposefully choppy stop-motion video and keyboards for belt buckles, where they type before they move and act.

I mean, honestly, that's all just a random string of possibilities that I came up with 5 minutes after reading your post. Some feasible, some less feasible, but all possible to yield benefit and fun along the way with enough effort.

I'm sure you know your goals better and could really sit down for a while and come up with even better approaches than I, there's a plethora of potential if it's something you really want to do.

You just have to keep in mind with a thing like this how you are going to approach reaching your goals while making it something that someone else would want to interact with. Lots of someone elses, in fact.

Its possible.

And if its something that you are passionate about, go for it.

What's the old paraphrased quote, again?

Any veteran scientist that claims something is possible is probably correct, but any veteran scientist that claims something is impossible is probably incorrect?

Something like that.

If you want to do it, you can do it, and I have full faith that you will.

Don't second guess it.

Just be smart about going after it.

Hope this helped.

Reply With Quote
Reply

Viewing: Dev Shed ForumsProgramming LanguagesGame Development > Text-RPG maker


Thread Tools  Search this Thread 
Search this Thread:

Advanced Search
Display Modes  Rate This Thread 
Rate This Thread:


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
View Your Warnings | New Posts | Latest News | Latest Threads | Shoutbox
Forum Jump