Maximize this now. If it still looks strange, increase your resolution or decrease the font size (if you are in wordpad, select all and decrease font size to 8 or something) #******************************************************************************************** # Intro #******************************************************************************************** *Included files: scripts.txt (this file = the dictionary) scripts.!hs (uncompiles scripts) scripts.hs (compiles scripts) *What this file is: If you are reading this and have no idea what the ohrrpgce is, leave now, it's complete gibberish unless you know what it is. Go to http://www.HamsterRepublic.com if you really want to know. This is the dictionary of all the scripts, by category, that are included in scripts.hs/.!hs and examples of how to use them. This is intended mainly for people who have no idea how to use plotscripting, and just want to use the scripts directly in thier games from NPCs or textboxes or something. Also for people with some experience plotscripting but no knowledge about how to use things like alter npc, etc., and also for those who just want to save time and use my scripts. Sorry for the text-only format, I'll update to html soon. *Format: TagOn (28) # This sets tag [28] to on. Exactly like Set Tag (npc, 1), but less arguments to remember. *Contact info If there is anything you don't understand, email me. I'm Paul Eres of Eressoft, my email is eres@eden.rutgers.edu and/or eressoft@cs.com. This file is available at http://www.HamsterRepublic.com and http://members.xoom.com/Paul_Eres/index.html Okay, then let's begin! #******************************************************************************************** # GENERAL TEXTBOX AND COUNTER PLOTSCRIPTS #******************************************************************************************** TagOn (28) # This sets tag [28] to on. Exactly like Set Tag (npc, 1), but less arguments to remember. TagOff (12) # This sets tag [12] to off. Exactly like Set Tag (npc, 0), but less agruments to remember, so # you can call it from an npc (although why you would want to is beyond me, since you can set # tags from npcs too, I meant it to be an easy way to use Set Tag (npc, 0) Fight (5) # Now this is useful. Use it from an npc to immediatly fight any battle formation you want. Very # useful if you want Earthbound/Lunar type enemies and don't want them to have to say something # each time, but just enter a battle without any textboxes. This example in particular fights # enemy formation number [5]. #******************************************************************************************** # GENERAL TEXTBOX AND COUNTER PLOTSCRIPTS #******************************************************************************************** Hasty Box (63) # This makes box 63 appear for 6 seconds, if you don't press anything the box dissappears. What # is it used for? Use it w/ a choice-enabled text box to force the player to make a quick # decision. This one shows text box [63]. Hasty Sneaky Box (63) # Exactly the same as above, but it doesn't show the counter counting down. Use it when you # want to be sneaky, or to confuse the player. # There are also these versions of Hasty Box, I'll just give short descriptions of each: HastyBox Slow(63) #shows box[63] for 9 seconds HastySneakyBox Slow (63) #same, but don't show the countdown HastyBox Fast (63) #shows box[63] for 3 seconds HastySneakyBox Fast (63) #same, but don't show the countdown HastyBox Faster (63) #shows box[63] for 1 second HastyBox Fastest (63) #shows box[63] for a really short time, no time to choose) Hide Counter # Hides the numeric counter, useful when a number is still there and you want to remove it. I really # don't have a use for it right now, I just have it there 'just in case'. CountDown (10, 4, 3) # Counts down for [10] seconds untill tag[3] is on, if it doesn't turn on during that time, tag[4] is # turned on. It's not implemented yet, but will be in the next update. # Ignore the following they will be implemented soon but not just yet. #CountUp(10, 4, 3) #counting up version #CountDownH(10, 4, 3) #counting down, but hidden #CountUpH(10, 4, 3) #counting up, but hidden #CountDownTicks(10, 4, 3) #counts up, but counts 15x faster #CountUpTicks(10, 4, 3) #counting down, 15x faster #CountDownTicksH(10, 4, 3) #fast count down, but hidden #CountUpTicksH(10, 4, 3) #fast count up, but hidden #********************************************************************************************** # STAT ALTERING #********************************************************************************************** # The following are brief descriptions. The first argument is the hero's position, and the # second argument is the amount the heal/hurt/increment/decrement. Fuller descriptions forthcoming # but they aren't that hard to figure out. If you want to hurt the leader of the party 10 HP, for example, # you use: Hurt HP (0,10) # If you want to increase the accuracy of your second character by 101, use: Increment Accuracy (1, 101) # notice that first character = 0, second is 1, third is 2, and last is 3. I don't know if it # works up the the 8th character or not, but it should work up to the fourth. Heal HP(0, 0) #heals HP of a hero by an amount Hurt HP(0, 0) #hurts the HP of a hero by an amount Heal MP(0, 0) #heals HP of a hero by an amount Hurt MP(0, 0) #hurts the MP of a hero by an amount Increment MaxHP(0, 0) #raises max HP of a hero by an amount Decrement MaxHP(0, 0) #lowers max HP of a hero by an amount Increment MaxMP(0, 0) #raises max MP of a hero by an amount Decrement MaxMP(0, 0) #lowers max MP of a hero by an amount Increment Attack(0, 0) #raises str of a hero by an amount Decrement Attack(0, 0) #lowers str of a hero by an amount Increment Accuracy(0, 0) #raises acc of a hero by an amount Decrement Accuracy(0, 0) #lowers acc of a hero by an amount Increment Defence(0, 0) #raises def of a hero by an amount Decrement Defence(0, 0) #lowers def of a hero by an amount Increment Evade(0, 0) #raises eva of a hero by an amount Decrement Evade(0, 0) #lowers eva of a hero by an amount Increment Magic(0, 0) #raises mag of a hero by an amount Decrement Magic(0, 0) #lowers mag of a hero by an amount Increment Magic Defence(0, 0) #raises mdef of a hero by an amount Decrement Magic Defence(0, 0) #lowers mdef of a hero by an amount Increment Speed(0, 0) #raises speed of a hero by an amount Decrement Speed(0, 0) #lowers speed of a hero by an amount Increment Hits(0, 0) #raises hits of a hero by an amount Decrement Hits(0, 0) #lowers hits of a hero by an amount Increment Tilde MP(0, 0) #raises ~MP of a hero by an amount Decrement Tilde MP(0, 0) #lowers ~MP of a hero by an amount Increment Counter(0, 0) #raises cntr of a hero by an amount Decrement Counter(0, 0) #lowers cntr of a hero by an amount # The following are useful from an NPC, as they only require one argument. They too # should be self explanitory. If you want to heal your fourth character 3 MP (if # he steps on a flower or something) then use: Heal MP Fourth (3) # from the NPC. The script is Heal MP Fourth, the argument is 3, in case # you don't know that. Hurt HP First(0) #hurts the HP of a hero 0 by an amount Heal MP First(0) #heals MP of a hero 0 by an amount Hurt MP First(0) #hurts the MP of a hero 0 by an amount Heal HP Second(0) #heals HP of a hero 1 by an amount Hurt HP Second(0) #hurts the HP of a hero 1 by an amount Heal MP Second(0) #heals MP of a hero 1 by an amount Hurt MP Second(0) #hurts the MP of a hero 1 by an amount Heal HP Third(0) #heals HP of a hero 2 by an amount Hurt HP Third(0) #hurts the HP of a hero 2 by an amount Heal MP Third(0) #heals MP of a hero 2 by an amount Hurt MP Third(0) #hurts the MP of a hero 2 by an amount Heal HP Fourth(0) #heals HP of a hero 3 by an amount Hurt HP Fourth(0) #hurts the HP of a hero 3 by an amount Heal MP Fourth(0) #heals MP of a hero 3 by an amount Hurt MP Fourth(0) #hurts the MP of a hero 3 by an amount # Not implimented yet, but will be soon. #Heal HP All #heals everyone's HP to full #Heal MP All #heals everyone's MP to full #Heal HP/MP All #all HP/MP to full for everyone #********************************************************************************************** # GENERAL NPC/HERO MOVEMENT AND ANIMATION #********************************************************************************************** # the following four commands turn an NPC, in this case NPC [1], a certain direction. It just # looks in that direction, it doesn't walk or anything. TurnNpcL(0) #turns npc[0] left TurnNpcR(0) #turns npc[0] right TurnNpcU(0) #turns npc[0] up TurnNpcD(0) #turns npc[0] down # the following four commands turn a Player, in this case the leader, a certain direction. He/She just # looks in that direction, he/she doesn't walk or anything. FaceL(0) #faces player left FaceR(0) #faces player right FaceU(0) #faces player up FaceD(0) #faces player down # the following are not implemented yet, but should be soon #Spin Player(0) #spins any player around thru all frames #Spin NPC(0) #spins any npc around thru all frames #Animate NPC(0, 0, 0) #animates all frames of any npc at x,y, useful for explosions, etc. Wait and Resume # Waits for all, resumes player/npcs, not really useful to you, but used in my game alot so I'll include it # here just in case you need it. # The following walk an npc (any npc you want) a certain number of steps in a certain direction at # a certain speed. Read on for details. WalkL___ is left, WalkR___ is right, WalkU___ is up # and WalkD___ is down, the speed of the npc fills the black. WalkLSlowest(0) #makes any npc walk [0] steps left very slow WalkRSlowest(0) WalkUSlowest(0) WalkDSlowest(0) WalkLSlow(0) #makes any npc walk [0] steps left slowly WalkRSlow(0) WalkUSlow(0) WalkDSlow(0) WalkLMedium(0) #makes any npc walk [0] steps left WalkRMedium(0) WalkUMedium(0) WalkDMedium(0) WalkLNormal(0) #makes any npc walk [0] steps left WalkRNormal(0) WalkUNormal(0) WalkDNormal(0) WalkLFast(0) #makes any npc walk [0] steps left quickly WalkRFast(0) WalkUFast(0) WalkDFast(0) WalkLFaster(0) #makes any npc walk [0] steps left fast WalkRFaster(0) WalkUFaster(0) WalkDFaster(0) WalkLSonic(0) #makes any npc walk [0] steps left swiftly, doesn't seem to work WalkRSonic(0) WalkUSonic(0) WalkDSonic(0) # Okay, the next group of scripts are hard to understand. No time to explain them right now, # I'll give a more complete description next update, but here's the Japanese number system # for those of you who don't know it: Ichi = 1 Ni = 2 San = 3 Shi = 4 Roku = 6 Hachi = 8 Juu = 10 JuuNi = 12 (sometimes I misspelled this NiJuu, ignore) JuuRoku = 16 NiJuuYon = 24 WalkNpcLIchi(0) #these are all in Japanese to prevent WalkNpcRIchi(0) # defined constant conflicts. sorry. WalkUIchi(0) # what they do is walk a specific WalkDIchi(0) # [npc] in a certain direction a WalkNpcLNi(0) # certain number of steps, they're useful WalkNpcRNi(0) # for calling directly from NPCs to WalkUNi(0) # make them walk away from you or in WalkDNi(0) # in a certain direction when activated WalkNpcLSan(0) WalkNpcRSan(0) WalkUSan(0) WalkDSan(0) WalkNpcLShi(0) WalkNpcRShi(0) WalkUShi(0) WalkDShi(0) WalkNpcLRoku(0) WalkNpcRRoku(0) WalkURoku(0) WalkDRoku(0) WalkNpcLHachi(0) WalkNpcRHachi(0) WalkUHachi(0) WalkDHachi(0) WalkNpcLJuu(0) WalkNpcRJuu(0) WalkUJuu(0) WalkDJuu(0) WalkNpcLJuuNi(0) WalkNpcRJuuNi(0) WalkUNiJuu(0) WalkDNiJuu(0) WalkNpcLJuuRoku(0) WalkNpcRJuuRoku(0) WalkUJuuRoku(0) WalkDJuuRoku(0) WalkNpcLNiJuuYon(0) WalkNpcRNiJuuYon(0) WalkUNiJuuYon(0) WalkDNiJuuYon(0) #********************************************************************************************** # CAMERA MANAGEMENT #********************************************************************************************** SetPStep(5) # Sets the pixelstep to [5]. The pixelstep determines how fast the camera moves. If you want it # to move faster, choose a higher number. Unless you set the pixelstep to some value ahead # of time, it will freeze your game if you use any other camera management script. So set # pixelstep in your first script thay your game runs, you can always change it later. And # whatever you do, don't set it equal to a negative number, that's just insane. That also goes # for most scripts, never set anything to a negative number unless you have very good reason # to. Cam Normal # Sets the Cam back to following the hero. Useful after any of the following commands, otherwise # the camera will not scroll and your player will be stuck and you'll get a buggy game, as well # as a bad review of your game by me. PanL(8) PanR(8) PanU(8) PanD(8) #pans [8] tiles left or right or up or down. FollowHero(0) #Cam Follows Hero[0]. If you set it to hero 3 you get a weird effect, if you have 4 characters on your #team, as the camera follows them. FollowNpc(0) #Cam Follows an Npc, in this case NPC[0] Shaking Pan(0, 10) # Pans Cam while shaking in direction. This really doesn't work right now, but it's just in # in it's testing phase, beware of camera crashes with this one. Rand Direction # returns a Rand Direction, really it returns a number between 0 and 3, but # it can be used like a random direction or a random hero (provided you have # four heroes). Use it only from other scripts, as it doesn't actually do # anything. Rand Cam Pan(2) #rand cam pan for [2] steps, pretty useful. Rand Cam Shake(2) #shakes the Cam in a random direction for [2] steps, even more useful. Shake Cam Least(4) # Shakes the camera slightly for t seconds, it works, but badly. Keep pixelstep on very high and # stay tuned for updates of this and different version of it. #******************************************************************************************** # GENERAL ALTER NPC/HERO [8xx] # these are used to change the attribute of a specific [npc] to whatever that # script changes it to; for example if you put NPCPace(1), then NPC 1 will be # set to pace. Useful if you don't know how to use Alter NPC, or can't # be bothered remembering all the stat values in the .hsd file #******************************************************************************************** # The following adjust the player's speed. I've found them very useful. Who wants # to go the same speed all the time? SpeedSlowest #set player's speed to slowest (1 pixel) SpeedSlow #set player's speed to slow (2 pixels) SpeedMedium #set player's speed to medium (4 pixels) SpeedNormal #set player's speed to normal (5 pixels) SpeedFast #set player's speed to fast (10 pixels) SpeedFaster #set player's speed to faster (20 pixels) SpeedSonic #set player's speed to sonic (40 pixels) SpeedN(5) #set player's speed to a custom amount [5] # The following adjust an NPC's speed. Some of these aren't tested. In fact, # Only two of these have been tested, but they should all work. Well, maybe # Sonic/Faster and Speed N won't work, but the rest will. NpcSpeedSlowest(0) #set npc's speed to slowest (1) NpcSpeedSlow(0) #set npc's speed to slow (2) NpcSpeedMedium(0) #set npc's speed to medium (3) NpcSpeedNormal(0) #set npc's speed to normal (5) NpcSpeedFast(0) #set npc's speed to fast (10) NpcSpeedFaster(0) #set npc's speed to faster (20) NpcSpeedSonic(0) #set npc's speed to sonic (40) NpcSpeedN(0, 5) #set npc's speed to a custom amount # The following adjust an NPC's attributes. These are very useful, use them # alot and you're game will look like it uses advanced plotscripting. Just # replace 0 with the number of the NPC you wish to change. The Picture Set # and Palette Set ones require a second argument, the number of the # Palette or Walkabout Picture set you wish to change them to. NpcPictureSet(0, 0) #set npc's picture set NpcPaletteSet(0, 0) #set npc's palette set NpcStandStill(0) #set npc to standstill NpcWander(0) #set npc to wander NpcPace(0) #set npc to pace NpcRightTurns(0) #set npc to right turns NpcLeftTurns(0) #set npc to left turns NpcRandomTurns(0) #set npc to random turns NpcChase(0) #set npc to chase NpcAvoid(0) #set npc to avoid NpcUse(0) #set npc to use NpcTouch(0) #set npc to touch NpcStepOn(0) #set npc to step-on NpcPushOff(0) #set npc to non-push NpcPushFull(0) #set npc to push full NpcPushH(0) #set npc to push horizontal NpcPushV(0) #set npc to push vertical NpcPushU(0) #set npc to push up NpcPushR(0) #set npc to push right NpcPushD(0) #set npc to push down NpcPushL(0) #set npc to push left