STARDOCK LOCO SCRIPT FILE CREATOR VERSION .01 -------------------------------------------------------------------------- What you need: sdcreat1.exe A good imagination Knowledge of a the simple commands Paper and Pencil Why the paper and pencil? Well, you should outline what it is you're going to do before you start writing your program. It'll make the game easier to create in the long run. Note: I do all the memory allocation, player updates, and all the serial port bbs nonsense. You do the writing! It's easy! -------------------------------------------------------------------------- EDITOR FORMAT: Most of your game will just be filling in text! -------------------------------------------------------------------------- Command: ________ <-defaults to TEXT command (Data/Text area) _______________________________________________________ Line number: _____ <-defaults to current line number -------------------------------------------------------------------------- COMMANDS: (Easy to use!!! See the quick reference that follows) -------------------------------------------------------------------------- New Commands: PAUSE, HEAL Fixed Commands: Bunch of 'em... Input and output: SIZE, TEXT, GETKEY, YES/NO, IF KEYx, GOTO, WAIT, ANSI, END REM, CLRSCR, VIEW Player goodies: ADD LP, ADD CR, ADD DR, ADD AR, SUB LP, SUB CR, SUB AR Built in battles with aliens: FITE1, FITE2, FITE3, FITE4, FITE5, FITE? 4 Switches you can set for on and off and check them. A, B, C, D And more....But you don't need 'em all. NOTE: Anything with an "<---" is a note in the sample programs. But don't try to use them in the editor! -------------------------------------------------------------------------- The following are the simple commands used in the sdcreat1.exe editor. SIZE ****Must**** be the first line of the program. (Line 0) This tells Stardock Loco how many lines you have for memory allocation. (I do all that for you.) In the editor: Command: SIZE (Text/data area) 196___________________________________________________ All you need to do is put the number of lines in your program in the text/data area. TEXT A line of text. Fill the data area with what you want the user to see. To put colors into the data line, use the following: `red` `blue` `white` All of these can be brightened by `green` doing the following `bright white` `yellow` `cyan` (Data/Text area) Example: `cyan`My name is `bright red`Bob. `cyan` Hello! This will make Bob red, and the rest of the line cyan, as well as the following lines cyan until you change the color again. NOTE: HEAL and PAUSE will not show up in your editor as valid commands, but they work on line. I have lost the code for the sdcreat1.exe, and am working on a new version. HEAL Heals the player completely. PAUSE In the editor: Command: PAUSE (Text/data area) 50___________________________________________________ This will cause the screen to pause for an amount of time. This runs in clock cycles of the computer that runs it. You will have to figure out what a good amount of time is. GOTO This causes the game to go to the line specified. (Bad for real programming, good for this simple script creator.) ***NOTE: It goes to the line specified, but skips that line!! to go to line 1, you would specify line 0. Usage: Command: GOTO (Text/data area) 9_____________________________________________________ ^these are just blanks This will cause the program you created to go to just after line # 9 and start processing at line 10. YES/NO Prompts the user for an answer: Enter [Y/N]: This prompt is created by me. If it is a Y (upper or lower), it will do the next line of your program. If it is a N, it will skip that line and continue. Example program: (Line #) (Command) (Data/text area) 0 SIZE 11 1 TEXT I am the king!!! Agree? 2 YES/NO <---if it's yes, it will go to 10 3 GOTO 9 <--starts doing what's at line 10 4 TEXT Awww, what do you know anyway? 5 END . . 10 TEXT Good answer!! You get `red`30`cyan` lifepoints! 11 END This display the "I am the king!!! Agree?" to the user. Then it prompts "Enter [Y/N]: " if they answer Y they get 30 lifepoints. If not, the program ends. END Stops your script from running. No matter where you are in it. I will display the following before it quits: Returning to Stardock Loco. Enter to continue... They hit enter, they go Loco. GETKEY Gets a key from the user. You have exactly 5 choices for this. 1,2,3,4,5. You have to tell them which ones to use. Example program: (Line #) (Command) (Data/text area) 0 SIZE 60 1 TEXT -=* The Plains of G'ar *=- 2 TEXT <1> North 3 TEXT <2> South 4 TEXT Enter your choice: 5 GETKEY <---will accept 1-5, so be careful! 6 IF KEY1 7 GOTO 29 <--starts at line 30! 8 IF KEY2 9 GOTO 49 . . 30 TEXT You are at the north entrance of the G'ar stronghold... 31 TEXT Do you want to enter? 32 YES/NO . . . 50 TEXT You have come across a G'ar Chieftan!!! 51 FITE1 <----more on this little baby later. Get the idea? It's very easy. For those of you that are programmers, you may cringe... WAIT This simply stops the display until the user hits the enter key. It prompts them with the "Enter to Continue: " CLRSCR Clears the screen. -------------------------------------------------------------------------- Adding and subtracting items from a player -------------------------------------------------------------------------- With all of these commands, you just put the command into the editors command box, and the amount into the text/data area. Example: Command: ADD CR (text/data area) 1000______________________________________ ^this would add 1000 credits to the player. They are as follows: ADD CR Add credits ADD LP lifepoints ADD DR droids ADD AR armor ADD EN energy packs ADD PC passcards ***This will show on the players monitor: You receive 10 lifepoints! SUB CR Subtract credits SUB LP lifepoints SUB DR droids SUB AR armor SUB EN energy packs SUB PC passcards ***This will show on the players monitor: You lose 20 droids! (if it is greater than what they have, it will show the amount they have or 0) I do all the checking and writing of the player files. IF CR: (credits) IF EN: (energy packs) IF DR: (droids) IF PC: (passcards) This example would check to see if the player had 1000 credits. If they do, it will do the next line. If they don't, it will tell them that they do not have enough credit/droids/energy packs. Then it would skip the next line. This is good if you are selling something to them. Command: IF CR (data/text area) 1000_______________________________________ 10 TEXT Buy the droid for $1,000,000? 11 YES/NO 12 GOTO 13 13 END That GOTO 13 goes to here!--> 14 IF CR 1000000 <--if they don't have it 15 GOTO 16 16 END <--it will tell them not enough $, then end. That GOTO 16 goes to here!--> 17 TEXT You've bought yourself a droid! 18 ADD DR 1 19 SUB CR 1000000 ------------------------------------------------------------------------- Using the switches: ------------------------------------------------------------------------- These are for specialized programs. You may find them handy. I would die without a good switch/flag. They start as OFF. (FALSE or 0 to you programmers, wanna talk boolean? ) You have 4 switches: A B C D To turn it on: A ON B ON etc.... To turn it off: A OFF C OFF etc.... To turn all off: ALL OFF To use one: IF A ON <---will go to next line if ON GOTO 20 <---if it is OFF it will skip. Once again, similar to the YES/NO it will do the next line if the A is set to ON. Otherwise it will skip the next line. NOTE: (IF A ON, IF B ON, etc) RAND This creates a random number for the flags. It will turn off all the flags automatically, then do the random number for a flag Command: RAND (data/text area) ___________________________________________ It would randomly turn ON one of the A,B,C,D flags. This could be used to create a random mission on a wasteland... Each player would have a somewhat different mission. Example: 5 TEXT Do you wish to continue? 6 YES/NO 7 GOTO 19 <---yes goes to 20 8 END . . 20 RAND <--turns 'em off then randomly turns 1 on 21 IF A ON 22 GOTO 49 23 IF B ON 24 GOTO 99 . . 100 TEXT Do this Do that.... 101 TEXT Something else.... 102 GOTO 4 <---go back to the beginning. ANSI Displays and ANSI, AVATAR, ASCII, or RIP file. Must be in the current directory. Valid types( .asc, .ans, .avi, .rip) Example: Command: ANSI (data/text area) monster.ans__________________________________ I didn't use any Ansi pictures in SD since I hated seeing the suckers slowly float across the screen on my 28.8 modem when I played other games. Use your discretion, use a million. Heck I don't care! It's your script! Hopefully they will be pretty.... But you could use The Draw to create your cool menus and such. That would work. Example: 1 SIZE 10 2 ANSI mymenu.ans <--has your menu choices 3 GETKEY 4 IF KEY1 5 GOTO 50 6 IF.....blah blah blah..! ------------------------------------------------------------------------- Using the built in Battles ------------------------------------------------------------------------- FITE1 a level 1 bad guy FITE3 3 <---note, no level 2 FITE4 4 FITE5 5 FITE6 6 FITE? a random bad guy from the above list IF !RAN This is on if they didn't run from the fight. See example. If you use one of these, I will fight them to the death of either the player or the alien. If they die, they leave your script, and leave Stardock. If the player lives or runs, they continue on in your script. Example: 20 FITE? <---a random bad guy battle 30 IF !RAN <---always reset before a battle. 40 GOTO 69 <---if they won. 50 TEXT Blah blah blah . . . 60 ANSI victory.ans 70 TEXT `red`You won!! `white` 80 ADD CR 1000 90 ADD AR 50 100 GOTO 12 REM Well, thank dos, you can leave a comment in your file! Will skip over whatever is in that data/text line. Just don't put it in line 0. or your program is history! STATS Shows the player his statistics. Just like in Loco, without the ship statistics. It will clear the screen, display the stats, then wait for an enter key before continuing. Example: 9 ANSI mymenu.ans 10 GETKEY 11 IF KEY1 12 GOTO 99 13 IF KEY2 14 GOTO 149 . . 100 STATS <---clears screen, shows stats, waits 101 GOTO 8 <--then goes back to menu That's it! Since this thing is run from an expansion module in Stardock Loco, expect an enhanced version with more commands in the future. (And your old ones will still run) For those of you that wish to write in pure C or another language other than my LocoScript, check out the file SD_DVLP.TXT. Then you can create complete add-ons like my expansion modules, and also create registration versions that you can sell. I suppose you could use this and try to have people register them, but I know how that goes...Forvala.