Sign in to follow this  
EmptyMinion

Best // Easiest way to make a text game editor // maker

Recommended Posts

Hi! I was just wondering, what would be the best // easiest language (free) way to make a program that allows people to easily create text games. my friend keeps begging me to make one so im givin in. help plz ^_^

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Uhhh, if you have to ask that question I'm not sure you're ready to make what you're talking about.

Share this post


Link to post
Share on other sites
no.. i just wanna know would it be worth me workin my ass off with c++ or just sail through with a basic language.. because its a text game, would there be a major difference?

Share this post


Link to post
Share on other sites
If you already know a BASIC language, and you don't want to spend time learning a more sophisticated language, then skip C++ and do your game in QBasic, or VB. Bad coding habits aside, a BASIC language will allow you to crank out a text game in no time flat, even with little knowledge of the syntax. C++, on the other hand, might take a little more time to produce the same game if you've never used it, but if you're looking to become a better programmer, then that is the road to take, imo.

Whatever you decide, just stick with it and post some screenshots when you're done!

Share this post


Link to post
Share on other sites
Heck, if you know what you "need to do" to get this type of program done, you should consider using C# to get it done. True it's a new language and you might not know anything about it, but you can easily learn as you go (if you are that type of person of course, practice makes perfect) and you can end up with a great product with not so much effort. You can easily make a GUI based program that creates text games that way with Windows.Forms (GUI component of C#). You can get Visual C# here. Just one idea.

Share this post


Link to post
Share on other sites
c# ... harder or easier than c++.. and will it help me in the future to make games... lol
-*edit* - by making games i mean making game creaters... i.e a rpg maker program later on (very later on).

Share this post


Link to post
Share on other sites
Quote:
Original post by EmptyMinion
c# ... harder or easier than c++.. and will it help me in the future to make games... lol
-*edit* - by making games i mean making game creaters... i.e a rpg maker program later on (very later on).


C# will definitly help you in the future to continuing making game tools. I think hands down, C# is one of the best languages avaliable to make quick and easy, yet powerful tools for the Win32 platform, not only just for games (The same goes for VB.Net, but I'm on the C/C++/C# side of the language tree. [wink])

The whole idea behind C# is similar to Java, provide the user with a large and powerful toolset to get stuff done. It is very heavy in the OOP design though - but does not restrict you to use that form - I mean you can make a C# program look like a C++ program, but all the stuff will be in a class rather than freely floating around.

As for harder or easier, it depends on you. When I tried C#, I had one task on hand I wanted to accompish - a program to save all the threads of a topic on GameDev to one page. Without knowing anything about C#, I was able to have a fully working functional program done in a matter of hours. I just searched around using Google for examples of what I was after. Then I just modified and threw it all together to make it do what I needed it to.

So if you are willing to read tutorials about C# as well as content specific for the methods of what you are wanting to do, then I'd say it shouldn't be too hard, but no guarantees! If you are making a console based program, then there's not much advantage of using C# over C++ *for the most part*. However, if you plan to make it a GUI interface, then I'd say C# has a great advantage pver C++ (although a GUI based version of what you are wanting to do would not be advisiable right off the bat due to complexity).

There are just the opinions of a Software Engineer. I've never really programmed in anything proficiently outside of C/C++/C# and VisualBasic, so this is all from a viewport where no Python, COBOL, etc... was used. Something to keep in mind if this sounds a little biased.

Now, as for what you want to do, a text based game is not something that is fairly trivial, I think it is quite challenging! So what you do is to start by making a small text based game. Something really simple, and make an editor that can emulate making that game. Then you want to start adding to the game, and adding to the editor.

What I mean is this, let's say you start with a very simple game that first just draw's the title screen and that's it. The first thing that you should be thinking about is how to do that. Of course the title screen is fairly easy, you just get the text that will be used and display it. The tricky part comes with how you want to do that. What I would do is something along the lines of giving the user an template that they could fill in, and have the game display that for the title screen. So for the template, it would be a box that is the size of the console output window with #'s on the end. The user could just fill that in.

#
#
___ | |---- #
| . + | |____ #
| | | | | #
| | | | |----- #
#
#
___ #
| |---- |---- #
|__ |____ |____ |\ | #
| |-- |- | | | \ | #
__| |__ | |---- |---- | \| #
#
#
#
#
#
#
#######################################



Now as the code for that will go, it's just simply:

#include <fstream>
#include <iostream>
#include <string>

int main( int argc, char* argv[] )
{
// Temp string to be used
std::string temp = "";

// Open the title screen file
std::ifstream IF("title.txt");

// Get the screen, which is ended with # signs
for( int x = 0; x < 19; x++ )
{
std::getline( IF, temp, '#');
std::cout << temp;
}

IF.close();

return 0;
}



And viola, you now I have means of making dynamic title screens. Now that's pretty simple with lots to improve upon. You would have to figure out a way to set colors, perhaps to text animations, etc...

That's just to show one way of doing things to get you thinking about it. There are lots of other ways as well that you should just experiment with to get a good idea of what will work best. It's no simple task, so good luck! I am out of tine for now.

Share this post


Link to post
Share on other sites
My project is currently on hold, but I've been working on an MUD kit. It's a C++ server that uses gamemonkey(An easy to learn scripting language) for scripting.

The server would basicly load up main.gm, which would link to other files and start executing the server. Most of the server code runs in script, even the update loop.

I should finish the Tiny XML bindings one day, and then release the server, or perhaps release the kit as a paid product for a small fee($5 or $10). I need to merge some old code one of these days, and write a bunch of test scripts(Or perhaps, a small set of scripts and have a community expand it).

You could do a similar thing, using gamemonkey as scripting language. But then again, yuo could learn him Python aswell and let him write his own.

Toolmaker

Share this post


Link to post
Share on other sites
yah, i plan on making a mud oneday... but id probally just code a way to edit the mud from within itself.. like while playing i can add new items, areas ect...
----------Edit
using fstream;
using iostream;
using string;--------------------------Error
int main( int argc, char* argv[ ] )--------------2 Errors
{
std::string temp="";
std::ifstream if("title.txt");
for (int x = 0; x <19; x++)
{
std::getline(if,temp, '#');
std::cout<<temp;
}
if.close();
return0;
}Error 1 Identifier expected, 'string' is a keyword
}Error 2 Identifier expected
}Error 3 Expected class

[Edited by - EmptyMinion on September 7, 2005 5:45:16 PM]

Share this post


Link to post
Share on other sites
Try this and see if it works:
// must include the namespace that this name is part of
using std::fstream; // using fstream;
using std::iostream; // using iostream;
using std::string; // using string;
using std::getline;
using std::cout;

// using namespace std; // <- additionally, you can just do this to include all names

int main( int argc, char* argv[ ] ) {
string temp="";
ifstream file( "title.txt" );
for( int x=0; x<19; x++) {
getline( file, temp, '#' );
cout << temp;
}

file.close();
return 0;
}



article about namespaces

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this