How to Create a Text Based World With Batch Script

You may have ever wanted to make a game, or at least know how. Text based worlds, large games with all words and ASCII art for pictures were the first games ever, then came the harder to make Massively Multi-Player Online Role-Playing...
Method 1 of 14:

Game Art

  1. Have a gallery for the things.
    1. You don't even need art, but if you want an audience you do.
    2. Let's say the thing the person is looking at is the description of a sword, make a sword, or a troll ,put a troll. but if it a poisoned troll, put a troll with maybe X's on its eyes or something, or if its burnt, put a few spots of black
  2. Also, make sure the artist has access to the programming. You can't make them and then upload them. You have to put them directly after the echo commands.
  3. Make sure that there is not a screen without art.
Method 2 of 14:

Music

  1. Try going into the music files of other games and finding a program to edit them. Also, if you have a flute, guitar, drum or any other instrument you could probably get the feel.
  2. Also, remember that when you hit something, it won't make a sound, this is just music that you play repeatedly, or maybe for different areas (like maybe 20 screens you change the music, then 20 more and you change). It's to add a little bit more of a game feel to it.
Method 3 of 14:

The Programming

  1. First, make your templates, for items, weapons, monsters, npcs, shops and things like that (a template is like the programming, then you fill it out).
    1. (This is a command line language, so when you press enter it makes a new line on the screen too).
    2. Note: if you are already a programmer in batch script, and know the @echo off, : , ping localhost, if %input%== and echo commands then you can go ahead and skip to the next note. If you do not know all of those commands try to learn them from every batch article on Wikihow (ping localhost may not be on here, but it is for testing the connection of the network. It should only be used once, that's on the loading screen.)
      1. :LOAD
      2. @echo off
      3. echo
        1. This is the loading screen. Type in PLAY and press ENTER to go to the main screen. If any problem occurs with this, please try an errorlevel program, or check for anything wrong with your computer (wireless connection effects this).
      4. ping localhost
      5. set /p input=COMMAND?
      6. if %input%==PLAY goto :MAIN
        1. You may look at this and be confused. just copy and paste it, or edit if you want to. It's just a loading screen.
  2. If you don't know how to program batch and want to learn it from this guide, read on:
  3. there are things called labels, like on the loading screen, the ':LOAD' (without the quotation marks). The name is always 1, 2, 3 or 4 letters long, in capital letters and has the colon behind it (the two little dots).
  4. The '@echo off' (without the quotation marks) command is one that is almost required. It makes sure that they don't see the coding, but only the echo things. The '@echo off' command is required for making a game though. If you switch the off to on, the player will see all of the programming too.
  5. The 'echo' (without the quotation marks) command is so that the words after the echo command would be displayed on screen (echo Hello World would make: Hello World).
  6. The 'ping local host' command (yet again, without the quotation marks) is for testing if the computer is connected to a wireless network. This is only needed on the loading screen. Try not to put this anywhere else.
  7. the 'set /p input= ?' (without the quotes) command is where you put something in that space in-between the input= and the question mark, and then the input (stuff the player types) is going to be there. This is one of the few changeable commands in the way of you putting the words in it. After they type their input (that of which has to be in capital letters) they press enter and it's in.
  8. The 'if %input%== goto' is another interchangeable command. You put what they have to type in and then press enter for (so maybe if %input%==FIGHT)
  9. I have found that some of the lag causers may be used in ASCII, either use the 'type filename.txt' (filename is replaceable, but it has to be a text document, and also without the quotation marks) to type an external document on screen with no echo before it.
  10. Also, try making a diversion, like a cool ASCII picture on the loading screen to keep the player interested for the few seconds it takes to load. Maybe the game logo in ASCII.
  11. You always have to remember, batch isn't a flexible language, and programming the classes for example, has to be loaded into the templates. The templates are things that you copy, fill out and paste into the coding to end up with a monster or other thing.
  12. You have to remember, let's say that you poisoned a troll, you would have to make a whole new screen for that, and maybe it lost 45 hp, another screen. That's why I make templates for it. One monster can be up to 5 PAGES LONG (if it has more than 25 hp (that's STRONG))
Method 4 of 14:

The Other Stuff

  1. Make sure that you change the background and text color (do that by under the '@echo off' (without the quotation marks) you would put color and then putting a letter then a number. Here is the table:
    1. = Black 8 = Gray
    2. = Blue 9 = Light Blue
    3. = Green A = Light Green
    4. = Aqua B = Light Aqua
    5. = Red C = Light Red
    6. = Purple D = Light Purple
    7. = Yellow E = Light Yellow
    8. = White F = Bright White
  2. Make sure that there isn't a page without ASCII art.
  3. Have some blank CD's, a back ground story, a plot, a title and a crew to make the game.
    1. You don't =need an engine or a compiler for batch.
    2. The database is so that when someone wants to find out about a weapon, monster or other thing they can go put it in the database which is a separate batch program with all of the information inside of it. This can also be merged with the game. The database is very important, as it is also the coding of the game.
  4. Also, keep a separate reference about everything in the game, as well as a map (maybe if you go north from deep forest, you get to the deep forest one, then east and deep forest 7, it's the navigation of the game)
Method 5 of 14:

Monsters

  1. Monsters would be what the players character fights to advance, so there needs to be a lot of them. Try to think of a list of about 10 for your testing part, like maybe troll, dragon, goblin, orc archer, orc soldier, orc wizard, ogre and other things like that.
  2. Monsters need stats, but you can't program them, so type them out. Maybe an ogre attacks for 3, so put down on its description 'Damage:3' (without the quotation marks), and do that for all of the stats that you can come up with (most likely attack, defense, effects, and other things like that, or just all of the stats that the player will have)
  3. Monsters should also have what they drop in their description, as well as XP gain, things like that.
  4. Monsters need to have some abilities, so give them some. Maybe fireball, bite, throw weapon or some other abilities.
  5. Monsters can be some of the hardest things to make, so make them good. The more skills and hp they have, the harder they are to make.
Method 6 of 14:

Quests

  1. Quests are just as important as monsters, and they can be extremely hard to do. These are yet another way to allow the players to advance their characters. Maybe one needs somebody to kill a dragon, so they go kill it and then put in a quest code that they were given up to the dead monster, and they get another code they enter back in the quest NPC's screen.
  2. Quests should be in the database, with the title and description, steps, rewards and requirements.
  3. Quests might have requirements, just make sure you let the player know.
  4. Quests always have to have rewards, like a weapon, money, experience, other item or something else like that.
  5. Don't forget quest chains (where one leads to another, and another, and it goes on like that until the last, hard one with an amazing reward)
Method 7 of 14:

Movement/Navigation

  1. This is called a text based world, not a text based game because of how you always can move north, south, east or west. Make a map in real life that you follow.
  2. An ASCII map on the game also helps.
  3. There should be a thing that always tells you where you are.
  4. Maps are extremely important in a text based world.
  5. Another thing I have found important is something called a compass. That is either a program or a map used to find your place, destination, different paths from longest to shortest, safest to most dangerous, things like that.
Method 8 of 14:

Accounts

  1. I used to do the login as when someone emails you for an account, you store it in the weekly update ( Hacking would be resolved by me tracking the hacker around the globe, emailing him, deleting his account and anything from his IP address would be disapproved). Another way is to simply not have accounts, like just let them start.
  2. Accounts may also be hard to maintain, so keep them on multiple, safe computers and always have backup.
  3. Billing is pretty useless, as you may not even have more than a single customer. If you don't want to set up the billing, just sell the expansions, and maybe the updates or something like that.
  4. Accounts aren't needed, but make the game more realistic, and a whole lot more cool, though harder to maintain.
  5. NEVER, EVER let anyone who you don't know see them.
  6. Check you E-mail as much as possible to check for new account requests.
Method 9 of 14:

Strategy Guides and Wikis

  1. Use your database and try to make a strategy guide for once the game gets big enough (over 25,000 active players). Wiki's are always needed, even for the smallest of game (use the database for making that too)
  2. Make sure the maps are in the guides too.
  3. Also, put some upcoming things in the strategy guides, and tips, guides, maps, posters, cheat codes and other things.
  4. Don't forget to make updates, as well as newsletters.
  5. Wiki's should be monitored and updated.
Method 10 of 14:

Items

  1. Items can be equipped, used, or they can be etc. (useless) items.
  2. Items can be obtained by drop, event, cheat code, quest or other event of the such.
  3. Items have effects, like adding to stats, sellback prices, they can be dropped or destroyed and other things, like +hp or +mp or something of the such.
  4. Items should always come from something, no matter what it is.
  5. Items should never be without a picture, description, effects and a source
Method 11 of 14:

Characters

  1. Character classes and races should be in the game.
  2. Professions are optional, but not recommended.
  3. Stats are required (mostly) for all characters and there should be STR, INT, WIS, DEX, VIT, LUK and is you want to, CHA or STA.
  4. Characters should have health (hp, mana (mp) and xp (experience points), as well as their stats as listed above. Also, slots for equipment.
  5. Character interaction is not available in batch, use C++ instead.
Method 12 of 14:

Lag Causes

  1. There aren't a lot of lag causes except slashes, line breaks and things like that, but only if that's all in it. The 'type filename.txt' (filename interchangeable, must be text file, without quotation marks).
  2. A single syntax error can cause the whole game to crash, so be careful.
  3. Lagging can also be caused by the computer itself.
  4. Lags can be extremely hard to find and fix. Copy into a text document (out of notepad) and then use spell-check, then find the wrong and correct it (may not always work).
  5. Lags can also be caused by compatibility or something else, mess around with the options (right click the bar at the top of the batch thing, select options and tinker).
Method 13 of 14:

The Crew

  1. The Artist= The ASCII artist. Creates ASCII art then gives to programmer for embedding into the game
  2. The Programmer= The batch programmer.
  3. The Designer= The person who thinks up all of the ideas.
  4. The Customer Service= The customer service dude.
  5. The Webmaster/Foreign Programmer= The programmer who does batch and other languages as well, such as web languages, C++, Java, CMD and other things like that.
Method 14 of 14:

The Players

  1. Players should always be honest, so if a quest needs them to kill 10 orcs, they need to kill 10 orcs. If they don't, go on their account and maybe delete it for a few days, then bring it back.
  2. Players view on the game and rating depends on how many people play your game.
  3. Get some advertisements out there, they REALLY help.
  4. Make sure there is a site, wiki, game and database as well as printed aids.
  5. Billing (if any) should not be too high.
  6. Recommend Articles:
  7. some of the most useful articles I have found would be:
    1. How to Make A Simple Computer Game With Batch Script
    2. How to Make a Video Game with CMD
    3. How to Add Cheat Codes to Batch Script
  8. Some goals for the day would be for the designer to get up at least 10 ideas, for the artist to get at least 5 pictures, for the programmer to get 50+ lines of coding and for the other people to set goals resembling that (it all counts for work days, not days off)
  9. Host events too.
  10. Get EVERYTHING you make a copyright
  11. Always, always have a backup for all servers.
  12. Everything should be in the database.
  13. There should be a test server too.
  14. Also, a last note: Always update.
4.2 ★ | 9 Vote