Search the Community
Showing results for tags 'eventing'.
Found 123 results
-
Goal: Whack a Rat minigame. So, an area with rats, no cheap corners (where you could lure rat into and whack it without it being able to run away), NPC and rewards. Switches: GameOn - To see whether game is in progress. GameEnded - To see whether game has ended and we should collect the rewards. Variables: RatsWhacked - To keep track of how many rats player whacked. --- Step 1: Decide on an area and map it. In my case - top area will be the whacking area and lower part is the entrance: Step 2: Set up the NPC. First we want him to introduce himself and what is he doing here and then show options to either Play the game or to ask for more Information about it. If player agrees to play and he can afford it, we move the player into the whacking area and charge the player. Then we start the game by switching "GameOn" switch to ON and starting the timer. Make sure he doesn't say all that stuff when game is in progress. Make another Event Page that is active while game is in progress. And we want to make sure that he lets us out from the whacking area and gives us rewards after the game has ended. That means we need a third Event Page - this time we check whether the switch "GameEnded" is ON. We want rewards based on how many rats we whacked. That means setting up Conditional Branches, from highest reward to lowest. Next we need the NPC to let us out and turn off the switches because game is not in progress anymore. Also let's reset our "WhackedRats" variable to 0 so we can start another game. Step 3: Now we need to set up another event in such way, that it ends the game once timer hits 0:00. Let's do that by creating a new empty event and setting it to "Parallel Process" which will be processed only when "GameOn" switch is ON. Once timer hits 0:00, we need to stop the timer and let NPC call us out and tell us to talk to him to collect our rewards. Step 4: All that remains are rats themselves. So let's set them up. Let's set up in such a way that rats will be shown and processed only when "GameOn" switch is on. When player interacts with a rat, increase the "RatsWhacked" variable by one. Next let's make it so rat runs away from the player after being interacted upon. (Note: Make sure to set 'Skip If Cannot Move' when rat is running away, otherwise it will get stuck trying to run where it can't) Step 5: Copy that NPC event, place them around the area, maybe set different moving speeds. And go whack the rats!
-
Healing Pad (Mini-Tutorial) I couldn't find this (If it does exist it's either not on this forum or I didn't see it) so I thought I'd post a small tutorial up for anyone looking to create an event which heals over time when standing on it, one of the simplest things you can do with events. This tutorial has two sections called Text Section and Pictures Section. What you need: 1 Switch 3 Variables 1 Region Text Section: Healing Pad Activation Event (The event you stand on) 1. First you create an event, in its commands list add two Control Variables commands from Tab 1. 2. Next you set these two variables to the Player's Map X and Map Y which are under Game Data > Character. 3. Create a common event in the Database called Healing Pad (or whatever) and then go back to the event from earlier, call the common event you just created at the end of this commands list. 4. Set a Region on the tile this event is on, set a graphic such as a hexagram for the event. Healing Pad Common Event (The event which actually heals) 1. Go back to the common event you created and add the Get Location Info command from Tab 3. 2. Set the variable for a variable called Region ID then set the Info Type to Region ID. 3. Under Location set the two variables to the Map X and Map Y variables from the Activation Event. 4. Now create a Conditional Branch which checks to see if the Region ID variable is equal to the region you are using. 5. In this branch add a Control Switches command and name the switch you are using to Heal Pad (or whatever) and set it to ON. 6. Add a Change HP command after this and set the amount to whatever you want, set the actor being healed or just leave it as entire party if want it to heal all members. 7. Add a Wait command for 90 frames to the end of this commands list. 8. In the Else section of the branch set the switch from earlier to OFF. 9. Set this common event to Parallel Process and assign the Condition Switch as the switch you are using. Pictures Section: Healing Pad Activation Event Healing Pad Common Event EDIT Possible Problem The healing common event may not be working as intended. Problem Fix 1. Create another common event called Location Tracker (or whatever), put the two Control Variables commands for Map X and Map Y here. 2. Put the Get Location Info command from the other common event after these variables. 3. Set the Condition Switch and then put this common event on Parallel Process, set the condition switch to ON at the start of the game.
-
Introduction: So i was doing this dungeon part in my game and realized that putting plain obscurity would be bad. Then i decided to search for a quick lantern tutorial as i didn't wanted to use scripts and didn't wanted to make my own system because i'm lazy as hell. My surprise was that the systems were truly BAD, impractical, brute and limitated (your map had to be at least 12 from the edges in order to work). Obviously i was like "seriously..." and ended up makin mine. In like 2 minutes. Ten thousand times more simple and effective. Process: Alright, pay attention. 1) First of all, you gonna need to make an image in Photoshop with your screen size (i'm using 640x480 right now but default is 544x416), grab the gradient tool, choose the radial gradient and check 'reverse' This will make the borders black but the center transparent, and this is what we want to do. Done? Alright, now go to canvas size and you have to double the normal screen size. That means, multiply it by 2. Because i'm a good person, i'll let you here the valors 1088x832 (544x416 normal size) and 1280x960 (640x480 normal size). Fill the transparent space with black and save that image (If you're bad at Photoshop or GIMP or whatever, i'll let you the images at the end of the post, don't worry~) 2) Go to the map you want to be the system, it doesn't cares if it is 600x600 or 24x15, this system will work everywhere. Now you gotta make three events (i make three for order purposes and because that is my way, you can do it in your own way) in one we will set the trigger to parallel process, in the command box we're going to use "Show Picture" in order to... show... the picture (i'm smart ) that we made, but be careful, in the X and Y boxes you gotta put the X and Y valor of the screen and you gotta check the "Center" checkbox instead of "Upper left". Remember, default is 544x416 and XP is 640x480 (did i mention that this works in every single RPG Maker? ) so we're going to put those valors in the boxes. To finish, put the "Erase event" at the end. By the way, you can put those valors for a 'transition' or you simply can create two variables (explained in the third step) and put them in the X and Y valors, just check the "Variable" checkbox instead of "Constant". Both ways will work perfectly. Explaining image: Make another event, this one will be in parallel process but do not put the Erase Event. Choose the "Move Picture" command, you gotta put the picture ID. This is where everything gets beautiful (i love variables <3). In the X and Y we're going to choose variables instead of constants (X and Y) so you gotta create two variables, i'll call them "Player Screen X" and "Player Screen Y". Put them in their respective positions. Do not forget that check "Center" instead of "Upper Left" and finally (this is all your please) put the frames delay ~~ the less the quicker the more the smoother, i chose 40 because that's enough smooth. Explaining image: In the third and final event all you gotta do is to create two variables (the variables we will use for the X and Y positions of the picture) and give them these valors: Explaining image: Conclusion: That's all. You got an awesome, quick, flexible, practical and... and practical system. Bonus: Here, grab some images:
-
eventing [REQUEST] Add Different Character Faces in Text Box for Same Actor
ihartrpgs posted a topic in Developing Tools
Add Different Character Faces in Text Box for Same Actor Requested by Juztsacki This one was a bit hard for me to title, but hopefully it makes sense in the long run. The first thing you need to do is make your character creation map. Now, make our first character option, which I chose Ralph. You want to create a variable called CHARACTER. When you select Ralph, that variable is going to be equal to 1. You will do this for all your other selections, changing the variable number each time. Now, you want to make your second map where you start after picking your character. Create your NPC and select the face set. Type in the message for that NPC. Now, create a conditional branch under that and when the CHARACTER is equal to 1, make it so that Ralph's face and message shows up. You will do this for all the characters. It should look similar to this: And that is how you make it so you do not have to pick different actors in the database. -
Speed Date System This was requested by Wren. The first thing you need to do is create a map for the speed date area and, if you want, a map for the date location. For the location, I'm just using a simple beach. This tutorial is going to use two switches and one variable. Switches Date Cut Scene Speed Date Variables Bachelor The first thing you need to do is create the host. For my speed date, I am going to give 30 seconds to talk to each date. Then, I am going to turn the speed date switch on. Make a second page where when the speed date switch is on, the host will say something like, "have fun". Now, make your first bachelor. The first page will just have if you were talking to him outside of the speed date. The second page is if you have the speed date switch on. You can have him talk about his interests, and you can set it up where you two talk back and forth. You can do that with choice options. For this tutorial, he will just say one thing. On page three, we are going to use the variable Bachelor and change it to 1 or above. The graphic will be empty because it means we picked him for our date. On the last page, we are going to have it that we picked someone else. This will have the bachelor variable be 2 or above. You will do the same thing for the other bachelors. Bachelor 2 Bachelor 3 Now that we got the bachelors done, it's time to move onto what happens once the timer runs out. In a new event, make it a parallel process and have the condition where the speed date switch is on. Make a conditional branch where the timer is 0 seconds or less and inside that, put stop timer. For this, I have it where this is when you pick the bachelors based on a choice menu. Whichever you pick you will change the bachelor variable accordingly. You can also have the other bachelors bicker with one another after the choice is made. The next event is really simple. You make an event that is player touch and set the condition to where the variable is Bachelor is equal to 1 or above. Then you will transition the player to the date location with the cut scene switch turned on. This will act like the door to the date location. We are now done with the speed date area! It's time to work on the date location. On the date location, make an event. You can label it DATE, but do not do anything else with it. Next, make another event and set it to autorun. Turn on the date cutscene switch in the conditions tab. Now you will make a conditional branch for each bachelor. Set up how you want each cutscene to be for each bachelor and then turn the cutscene switch off. You will also put the bachelor variable back to 0. The final event will make is the transition back to the speed date area. Make sure you turn the speed date off and take the date party member out of your party if you added it. And that is how you make a speed date system. Once you return from your date, you can continue going on dates and picking whatever bachelors you'd like.
-
- 2
-
-
- eventing
- intermediate
-
(and 6 more)
Tagged with:
-
Creating a Trail Of Breadcrumbs This was requested by _Aqua_ in this thread here. First, I'd like to say that I used Unpropro's buying and placing items eventing tutorial as a base to set this up. If you want to add an animation of the character placing the bread, check out _Aqua _'s post here. The first thing you need to do is set up your map. I use the premade lost forest map for this tutorial. This event requires quite a bit of switches and variables, so let's get those out of the way first. Items you need to create: Bread Switches you need to create: Bread crumb 1 Bread crumb 2 Bread crumb 3 Bread crumb 4 Bread crumb 5 (Make as many switches you need for the bread. I'm just using five for the tutorial.) Variables you need to create: Player X Player Y Bread 1 X Bread 1 Y Bread 2 X Bread 2 Y Bread 3 X Bread 3 Y Bread 4 X Bread 4 Y Bread 5 X Bread 5 Y Bread Amount Now, make an event and call it Bread 1. In the conditions switch, have the Bread crumb 1 switch on. Do this for all the bread crumbs and make sure the switches are changed accordingly. After you finished making your breadcrumbs, create another event and set it to parallel process. Go to Set Event Location and for the first bread crumb event you made, click designation with variables and put in Bread 1 X for map X and Bread 1 Y for map y. Do this for all your bread crumbs. (Note that all those that say Bread Crumb are all different events. I forgot to label them Bread Crumb 1, Bread Crumb 2, etc when I created the events.) Now we need to have it so we can erase, or collect all the bread if the player messes up on the puzzle. To do this, I'm going to use the Q button as a way to set up the erase feature. Make a conditional branch for if we press the L button. Make a choice option (just in case the player accidently presses it) where it says "collect all bread" or cancel. In the collect all bread, turn all the bread crumb switches off. Under all those, click change items, then click on the variable option and choose the Bread Amount variable. Under that, click control variables and put the Bread Amount to 0. Now, create a common event and label it Bread. Go to your item and connect the Bread common event to your item. Go back to your common event and set the Variables Player X to map X and Player Y to the player's map Y. Then set the variable Bread Amount to add 1. Now, create a conditional branch to where if the bread amount is equal to 1. Inside that, turn the Bread crumb 1 switch on. Next, set the event location of the Bread crumb 1 event and set it to the variables of Player X and Player Y. Under that, you will have Bread 1 X equal to Player's map X and Bread 1 Y equal to Player's map Y. Do that for all the breadcrumbs. This is what your common event should look like when you are finished: Now, just make sure you give the player the bread items so they can use it. And that is how you create a bread crumb trail.
-
I made this tutorial a while back, but never posted it in the tutorial section because I wanted to get Nong97's permission before I did so. She just gave me the okay to post this, and I would highly recommend that you look at her game on the VX Community site if you like games such as Harvest Moon and Dating Sims in general. STEP 1: The Screen For this, you just need a basic program like GIMP or Photoshop. I'm sure you can make a prettier system than me, but it should help with how she did it. Open up that program and make the canvas the default map size ( Width - 544; Height - 416) 1. The first thing I did was make the box where the food title and the "what you will need" part is. Once I did that, I added the little boxes that show where the icons are. Here is a picture of what I came up with: Use the text box in order to type "What You Need:" in the left corner of the bottom long rectangular box. Now, you will add the squares where you will be placing the ingredients like this: (Note: I used 8 light blue squares. You can add as many as you want.) 2. Now the fun part. We are going to add the recipes in each square. I'm just doing four recipes in my tutorial, but you can add as many as you want. I have decided that mine will be Sushi, Stew, Cake, and Fried Fish. In your game, extract the icon set and then open it up with GIMP/Photoshop. I also got the Harvest Moon Iconset by decadence, I believe. I cannot find the icons at the moment, but I'm assuming you have your own icons you're using anyway. 3. Now, I am going to do the Sushi first. The ingredients will be like the one in the video where you need Rice, Two Fish, and Sea Weed. I go to the icon set and look for anything resembling those ingredients. I also look for something that can look like a sushi recipe. Going back to my template, I add the icons to the appropriate spots. The sushi icon goes in the top small box and then the ingredients go in the bottom light blue boxes. 3.1 Since this is the active picture, we need to make it look like the sushi icon is highlighted. What I did was make a light blue box and placed it behind the sushi icon. This is what mine looks like: I save this in the Graphics - Pictures folder as Cooking_Sushi.png. 4. I will do the stew as well to show you the box switching. With this one, the ingredients are: Fish, Water, Mushroom, and Meat. I repeat the same exact prossess that I did with step 3 and add the icons in the correct spots. After I get it set up to how I want, I move the highlight box that was on the sushi over to the stew icon. This is the finished look: I save this in the Graphics - Pictures folder as Cooking_Stew.png. I repeat the same exact steps for the cake and fried fish. I save them as Cooking_Cake.png and Cooking_FriedFish.png. Now we are done with our pictures! STEP 2: Setting up Now we need to make the variables and items in order to get this working. The good news is that we just need one variable labeled COOKING. Look through the ingredients and recipes you have in your pictures. My recipes are Sushi, Stew, Cake, and Fried Fish. For the tutorial, I labeled these in all caps so I know that they are recipes. You can add prices to yours and I made mine consumable. The ingredients I have are: Egg, Flour, Milk, Chocolate, Fish, Bread, Mushroom, Water, Meat, Sea Weed, and Rice. With all these ingredients, I put non consumable, but feel free to change that if you'd like. It will not affect the event system at all. STEP 3: Making It Work The next task is getting the event to work. First, click on the oven or cooking space you have created and make an event that is same as characters. The first page is the easiest. We are just going to make it an action button that leads to self switch A and has the menu disabled: Page 2 is going to be a lot more challenging, but hopefully I can explain it well. 1. Create a conditional branch and on tab 4, either click on button - RIGHT or in the script box use: Input.trigger?(:RIGHT) Unclick the set handling conditions. 1.1 Inside that conditional branch, make another conditional branch and click on the variable panel and get your COOKING variable that you created. Count the number of recipes you have. For me, I just have four recipes, so I will have the COOKING variable less than 3. Unclick the set handling conditions. 1.2 Inside that conditional branch, make the variable COOKING as add + 1. If you want a cursor sound effect when you go through the recipes, then add that inside the conditional branch as well. You should have something like this: 2. Create another conditional branch and on tab 4, either click on button - LEFT or in the script box use: Input.trigger?(:LEFT) Unclick the set handling conditions. 2.1 Inside that conditional branch, make another conditional branch and click on the variable panel and get your COOKING variable that you created. Make the COOKING variable greater than 0. Unclick the set handling conditions. 2.2 Inside that conditional branch, make the variable COOKING as subtract - 1. If you want a cursor sound effect when you go through the recipes, then add that inside the conditional branch as well. You should have something like this: 3. Now, we need to make it so that clicking the right and left button actually does something. We are going to make as many conditional branches as there are recipes. I have four recipes, so I will be making four conditional branches. 3.1 The first conditional branch is my sushi recipe. Make the conditional branch the COOKING variable that we made. make the COOKING variable equal to 0. Unclick the set handling conditions. 3.1.1. Inside that conditional branch, click Display Picture and pick your first recipe picture. Mine is the sushi one, so that is the one I pick. 3.2. The second conditional branch is my stew recipe. Make the conditional branch the COOKING variable that we made. make the COOKING variable equal to 1. Unclick the set handling conditions. 3.2.1. Inside that conditional branch, click Display Picture and pick your second recipe picture. Keep doing this until you have all your recipe pictures. Here is an example of what mine looks like: 4. We need to do something about what happens when we cancel out of the cooking screen. Since we disabled the menu access on page 1, we can now use the escape button to exit out of the cooking screen. Here is how we do that: 4.1 Go to the conditional branch on tab 4 and click button - B. Unclick the set handling conditions. 4.2. Inside that conditional branch, add clear picture (mine was picture 1, so that is the number I picked). Then, click menu access enable and self switch A = off. This is what it should look like: 5. We need to make it so when we press enter, we can actually cook something! This part is rather long since this is where we add the ingredients. 5.1 Make a conditional branch and have it to where we click on button C. Unclick the set handling conditions. If you want to have a confirmation sound after you click enter, then add it here. 5.2. We are going to repeat a little bit of step 3. We are going to make as many conditional branches as there are recipes again. Since I have four recipes, I will be making four conditional branches again. Place this inside the C button Conditional Branch. 5.2.1 Make the first conditional branch COOKING = 0.Unclick the set handling conditions. Inside that, we are going to add the conditional branch of each ingredient and keep the set handling conditions on. This is long, so I will add a screenshot of what the inside looks like: Do this for every recipe. After you get them all done, go to the trigger button and make sure it is on Autorun. Here is what page 2 looks like completed: And that is how you make the cooking system similar to the game, My Lazy Afternoon. Thank you so much, Nong97 for giving me the permission to post this.
-
- 1
-
-
- cooking
- lazy afternoon
-
(and 3 more)
Tagged with:
-
This is a request made by Vicious in this thread. To make this really easy, I am going to keep the event on the map instead of on a common event. If you want this in a common event, just make sure you add a switch and have the common event set to a parallel process to it. The first thing you want to do is go into the system database and make sure that the airship music is off. Next, make an event and set it to parallel process. Then, make a conditional branch to if the airship is driven. In the else statement, make sure that you stop the music. Click inside the conditional branch and create a new variable called Airship. Create a conditional branch where if the airship is equal to 1. Place the music you want the first airship to have. In the else statement of the airship conditional branch, make another one where if the airship is equal to 2. Place the music you want the second airship to have. The last thing you need to do is make another event. Set the first page to parallel process and the second page to action button. On the second page, make sure the self switch A button is on. On the first page, select the Airship variable and set it to which airship music you want. Then under that, put Self Switch A = ON. And that is how you make it so the airship can change music!
-
Evented Mutliplayer System Thank you so much, merdouille44 for helping me with getting this system working. You can see the help thread here. I got this inspiration for this system from Brothers: A Tale of Two Sons. I thought the idea of one player controlling two characters at the same time was interesting, but I also thought it might make a neat multiplayer system too. The first thing you want to do is make your second character. Create an event and label it Player 2 or, in my case, Brother. Pick the graphic you'd like. Make sure that the event number is the same on every map. I highly recommend you have Event 1 be the second player for every map you make. Next thing you want to do is create a common event. Set it to a parallel process and label the switch Player 2 or Brother. Now, we need to make our little brother move. To make it easier, I am keeping the default player with the default arrow keys. This means that we will use the WASD keys to have player 2 move around. However, we also need him to sprint as well. Since we have a bit of a limited keyboard (this can be fixed by using the gamepad extender ), I am just using the SHIFT button to have both characters run. First, make a conditional branch and if we press the A button. Place a wait 5 frames. This just makes it look smoother, but not needed. Then set a conditional branch to the R Button. This will be the W button in gameplay. Next, set move route where second player moves up. Since we're in the shift button, change the speed to 5. You will do the same set up for the rest of the buttons. It will look like this when you're done: Note that the words that were cropped above were just comments for me for what controls I will be using. In the else statement, it will look exactly the same, but the speed will be 4. Now we are done with our common event! Your second player should now be able to move around the map along with the first player. This is the part where I got stumped on. First, create an event and label it NPC (it can be anything you want to interact with. I'm just using an NPC as an easy example). You are going to make the npc exactly like you normally would. This is just when your first player interacts with the NPC. Now, create another event and set it to parallel process. The first thing you want to do is create two variables. Second Player x and second player Y. Then set it up to where they are equal to the first event's map X and Y. You want to do the same exact thing for the NPC. Create a conditional branch to where second player x is equal to NPC x. Under that, you will have another conditional branch to where the second player is facing down. Inside that conditional branch, you will create another conditional branch and have it when the second player presses the L button. This will be the Q button in gameplay. Next, have the variable of second player y and add 1. This is to "trick" the event into thinking that the second player is the same as the NPC's position. Now have another conditional branch to where second player y is equal to NPC y. Inside that, you finally put your text or interaction. You will do the same thing for the facing up position, but change the variable of second player y to subtract 1. You will do the same exact thing for the right and left position, but invert the second player x and y. In order to exit the second player's message window, you have to press the 0 key on the num pad or the Z key. Now you have your own multiplayer system! Or it can be a system for puzzles. The system can be turned off and on easily as well by turning off the switch we linked to our common event. NOTE If you want to have the NPC face the second player, just put in a move route where the NPC turns.
-
eventing [REQUEST] Zelda-Like Item System from Ocarina Of Time
ihartrpgs posted a topic in Developing Tools
Zelda-Like Item System from Ocarina Of Time This is a tutorial that I made for merdouille44 on this thread. I wasn't sure if this would be beginner or intermediate. It requires a little bit of knowledge on how to set up the system, but it is not too difficult overall. The Graphics The first thing you need to do is make the HUD Interface. For me, I just tried to mimic the Ocarina interface. You can use mine if you'd like, but I'm not the best when it comes to making graphics. To make this simple, I am using the Q, W, and A buttons to use each item. Next, we need to have the items. I just exported the ACE icon set and then grabbed what items I will have for my game. For this tutorial, I'm just using two items, but you can add as many as you'd like. I chose the letter and the potion. Now, import all these graphics into your pictures folder. Getting the HUD Working Now we are ready to get the HUD working in game. First, go to the common events tab and make a new common event. Set the trigger to parallel process and then create a switch and call it Zelda_HUD. Now, the first thing you do in this common event is make a conditional branch. If the Zelda HUD is on, we are going to have the hud graphic show up. Else erase the picture. I set this up so you can turn on the HUD easily during cut scenes or if you want to have the player press a button to turn off the system at will. This is what your common event should look like so far: Next, we need to have the items show up. You are going to make a variable for each item. For mine, they will be called Zelda_Potion and Zelda_Letter. Each variable is going to be linked to the Q, W, and A button. This is how I am setting mine up: 1 = Q 2 = W 3 = A Make a conditional branch and have it set if Zelda_Potion = 1. In the else statement, you will have if Zelda_Potion = 2, and in that else statement, make it so it is Zelda_Potion = 3. The last one will be Zelda_Potion = 0. In that one, you do not need to check the else statement, and you will put Erase Picture. This is how yours should look: Now, we need to make sure that when we have one item set, for example, to Q that another item cannot be used in the Q slot. To do this, we need to make another conditional branch and have it as Zelda_Letter = 1. In the else statement, you put the image of the potion. Do this for all the branches we just made except for the Zelda_Potion = 0. Here is how it should look: Now you need to do the same thing for the letter. Now the images will not overlap one another. If you have more than two items, just follow the same layout as above. You will have to do this for every item you want to use. Now we are done with the hud! Making the System Work Now it's onto the last part. We need to make the system actually do something. Since I am using the Q, W, and A buttons in game, I will be focusing on the L, R, and X buttons in the interface. Q = L W = R X = A Now, make a conditional branch to where if the L button is pressed. You do not click the Else statement. Inside that, you make it that if Zelda_Potion is = 1, then you drink the potion. For me, I just added a text saying I drank the potion and then erasing the icon from the HUD, leaving the Q button empty again. You can replace it with an empty bottle and have it do whatever effect you would like. In that else statement, you will have it so if Zelda_Letter = 1, then it will do that interaction. For me, I just put a text saying that this is Zelda's letter. You will do this for all the buttons. Just remember to change the variables accordingly. Here is how mine looks: And that is everything! You have now created a 100% item system just like the one in Legend of Zelda, Ocarina of Time. -
This is a very long overdue tutorial for my Baby System Tutorial. Since that thread is really old, I wasn't sure if I should add this to that tutorial or if I should just make a new one. This is a suggestion that was made a while back ago. In order to understand this, please follow my Baby System tutorial first. I will show you two ways to have your child take over. Firstborn Takes Over In this, it's very simple. Make a conditional branch under the Baby System one. Next, change the trigger to parallel process and make a switch called Death. Now, you will make a conditional branch and put Baby 1 ID = 3 and inside the else statement put Baby 1 ID = 4. Then in that else statement you will put Game Over. What this does is check to see if you have a child. The Baby 1 = 3, if you remember, is the boy. The baby 1 = 4 just means that the baby is female. This also makes sure that if the baby is 1 or 2, that you will get a game over since the child is still too young. You can change this by just putting Baby 1 greater than or equal to 1. Doing so will make it so that the child will take over even if he/she is still a baby. Next, we need to have it so the child is linked to an actor. This is so that the child will actually take over if you die. To do this, make a new Actor and make a blank space for the child. Now we need to make the child grow up once you die. To do this, go back to your common event tab and inside the conditional branch for Baby 1 ID = 3, remove Ralph and then change actor graphic to what you'd like. Then add the new actor you created. After that, set the Baby 1 ID to 0 and turn the Death switch off. You will do the same thing for the female. This is how it should look so far: That is it for making the first born take over. However, what if you have twins and you don't want the first born to take over? Or you want to have a will that decides it for you? Taking Over Via Will This will be exactly like the first born, but we will have a new variable. This will be called Will. You will make a conditional branch in the common events and if the Will is equal to 0, then the first born will automatically take over. If the Will is set to 1, then the first born was chosen to take over. If the Will is set to 2, then the twin will take over. This is how I set mine up: And that is how you make it so you can choose which child will take over once you die. Other Tips Now that you have both the Baby 1 and Twin in your actor database, you can actually prepare your child for becoming an adult. You can also name your child as well. One option you can do is teach your child skills, and add the skills to the Actor as you would if it were a party member. Once your child takes over, he/she will have the skills taught. You can also create a school to send your child off to in order to learn certain skills as well.
-
Housing and Retail Tutorial First thing you need to do is to layout the map. For me, I am just using various sized houses for this tutorial. This is what the outside map looks like on mine: For my map, I made some really quick houses. For your homes, you can furnish the outside as much as you'd like. The next part is to create the inside homes. If you want to buy your own furniture, there is a great video tutorial on how to do so. If you want to decorate the home, then feel free to map the inside as much as you'd like. Buying a House I consider this part the easier part. There are two ways to do this. You can use either switches or variables. For me, I am going to use variables. For this variable, I am going to call it HOUSE UPGRADE. For my house, the variables will go like this: Wood hut - HOUSE UPGRADE = 1 Wooden shack - HOUSE UPGRADE = 2 Large home - HOUSE UPGRADE = 3 Mansion - HOUSE UPGRADE = 4 The first thing we need to do is make sure that the player cannot enter the home unless they bought it (Unless you want to create an open house type of thing). To do this, we will set a conditional branch and have HOUSE UPGRADE = x. Within the house upgrade part, we will put the typical transfer event in it. In the else statement, you can put a message saying that the player needs to buy the house first. Example: You will do this with all the doors. Next, I am going to add sign posts to all the homes. This is optional, just something to add to your system. This is really simple to make, it uses variable tag under the conditions area. Here is my example of it: Note: In this first page, the variable should be set to HOUSE UPGRADE is 0 or above. Buying From the Retail Office Now we have the outside done! Time to work on the retail office. First, build the office and create an NPC to talk to. With the NPC, you can have it greet the player and ask if you'd like to buy a house. For mine, I set my choices to: Wood Hut - 10G Wooden Shack - 100G Large House - 1000G Mansion - 10000G Nothing today I also created a label in front of the choices so that the NPC will loop back to them if you do not have enough money for a certain house. This is what my NPC event looks like: Selling Our House So now we are done with buying a house! But now we need to sell our house if we want to upgrade, or downgrade to save some gold. To make things easier, let's make another NPC next to the guy we've created. This is how I set up the NPC. Now you have your own housing and retail system for your game! Here are some other system tutorials that you might also like to add to your game: Buying and placing furniture Fishing and Crafting System Cooking System (Part 2)
-
- 1
-
-
- retail
- intermediate
- (and 4 more)
-
eventing Possession; can it be done through events?
Allusion posted a topic in Theory and Development
Hey, everyone! I know the title sounds like an obvious 'yes', but I'm looking for some specific things for the possession to work the way I'd like~ I'd actually found a script that did most of these things, but I can't find it anymore, and I don't remember if it was for VX or ACE. Anyway, here is my idea; When a specific actor is in the party, the 'W' button, when pressed, tints the screen a little and makes the player invisible to guards/chaser events. Being in this mode nips at the MP little by little. While in this 'shadow state', when the player walks up to interact with flagged events, they would instead possess them; walk around in that event's character sheet. Said event would obviously have to disappear from the map. While being that NPC, the shadow tint goes away and other guard/chasers will recognize the player as one of their own. Dialogue would be triggered normally. The possession ends either by the player pressing 'W' again, or the MP gauge reaching 0. The player's location should now be wherever on the map the possession ended. That's the basic gist of what I'm considering. For extras, I'd like the possessed NPC to be knocked out or otherwise unable to alert once you're done possessing them. I was also thinking of making it where you had to have a minimum MP cost to do this; maybe around the 50% mark. My other issue is lag; if I event all this, would that, on top of all the other events on any given map, cause the game to lag too much? (I imagine parallel processing would have to come into account at some point, which is a huge lag trap.) Would this be better to request as a script, or not? Any thoughts are appreciated! -
I love dungeon puzzles. They really bring a place to life and give character to an otherwise empty shell. One puzzle element which is fairly simple to implement and can be used in loads of ways a switch (ie. a big red button. I'm not talking about switches and variables just yet). But what if you fancy being cruel and throwing in a few traps and tricks? Easily done, and I'll show you how. This is an area of a dungeon in my game. You can see I have three 'switch' events (the graphic of the little lever with the red handle) in the middle of the room. One of them unlocks the door between the two pillars, one does nothing, and the one on the right is a trap that will trigger spikes to come up from the floor under the player's feet. Depending on how confident you are with events, you can create a whole range of traps and effects from very simple to rather complex. So let's start from the very beginning and look at a basic switch event. I've asked the player if they want to pull the switch, and if they say 'yes', the 'move route' is just the handle on the switch being moved. You'll then want to turn on an actual conditional switch. It's also important to have 'direction fix on' for this. If you look at the sprite, rather than it changing directions like a normal sprite would, it instead shows different positions of the lever, which is what the move route in this event actually moves. So, do this, then create a blank event page with the condition of this switch being 'on'. Congrats - this is a basic switch. But it doesn't do anything yet... Let's say we want to have a door that only opens if the correct switch is pulled. On my door event in this cave, I have this... It checks if the left switch has been activated, and if so, automatically opens the door. After the door is opened, I used a self switch, which just leads to an event page where the door is open that acts just like a regular transfer event. So far so good, right? How about we mix it up a bit and try to trick the player. Let's make one of our switches activate a trap when it's pulled. This is similar to the door event, though it is located next to the switch, so that the player is standing on it. It autoruns when the appropriate switch is activated, runs through a sequence of events and then uses a self switch at the end. In this case, it's hard to see the graphic but it's of spikes coming from the floor. The move route makes the spikes appear, and I have the player lose some HP and show an animation. So these are some basic things you can do. But there's no limit, really. You can make all sorts of traps and events happen by having your character pull a switch. You could try making a trap that makes a monster appear and attack the player. You might want to have a switch that makes a cool item or a chest appear in the room, for example. However, if you do want to use traps, it's probably best to give the player some sort of warning or hint - because it's frustrating to be attacked without any warning.
-
While I was making a game with RMVXAce I have noticed a lot of new things about it, here are some of them! I will update this thread as I get more, but feel free to add more stuff if you wish! You can find more over here. 1.) My Parallel Process Event won't run whenever I'm talking to somebody! Why? The reason why this happen is because of how RMVXAce handles event processing. This is due to Fiber.yield. It's going to be a long explanation and the only way to "Fix" this is to rewrite the game interpreter or the message system. But fret not, there's a way to fix this! Why should I be concerned? If you like making animated events through parallel processes, they would stop whenever a message box is visible! How to fix? Just put the commands of the parallel process event inside a loop or use labels. It will run normally~ 2.) Shift Mapping destroys auto-tile passability! Why? This is intentional and only works with ceilings but not on walls. Unconfirmed, but it might only be A4 wall tops. Someone check this out? Why should I be concerned? You can walk through autotiles for ceilings. How to fix? Use a spare empty upper tile set the passability to x and lay it along the edges. 3.) My Sound Effect won't play fully! Why? I noticed this while working on events, and it's usually when there's a show message AFTER. Why should I be concerned? What's stated above. How to fix? Just add a more wait frames after the sound effect. 15-60 seems to do the trick. 3.) My Picture won't dispose even when I already added a clear picture! Why? I still haven't pinpointed this, but I noticed this happens when there's a show message after it. Why should I be concerned? What's stated above. How to fix? Just like sound effect, add more wait frames or add a clear everything after the event is done. 4.) How do I change TP? How? I noticed that this has been asked way too many times on different forums, so here's how for reference: Game_Battler, line 730: self.tp = rand * 25 Change to self.tp = any number you want 5.) A picture of mine appears above a picture that is higher than it's number! Help! Why? I couldn't reproduce it since it's something so random. But I noticed that it makes an extra copy of the picture. Why should I be concerned? What's stated above. How to fix? Erase all the pictures and just set them again. 6.) There is this annoying bug in RPG Maker VXAce! Why? Languages. How to fix? Go to Game_System lines 38 - 40: def japanese? $data_system.japanese end change that to this: def japanese? return false end After that, add these for extra measure. Lonewolf’s Custom Font Junk Symbol Fix Mezzolan’s Arrow Fix(Put this below Victory Aftermath if you’re using that.) 7.) Star Passability Issue Why? By default, VXAce has star flags ignore arrow passabilities. Why should I be concerned? Refer to picture. How to fix? Here's a snippet by NeonBlack Here is the solution. It checks if the tile is a star before checking passability. If the tile is a star and it is passable, it then checks the tile UNDER it. If not, it returns false as always. This prevents everything that is a star tile from being passable. class Game_Map def check_passage(x, y, bit) all_tiles(x, y).each do |tile_id| flag = tileset.flags[tile_id] if flag & 0x10 != 0 # [☆]: No effect on passage next if flag & bit == 0 # [○] : Passable but star return false if flag & bit == bit # [×] : Impassable else return true if flag & bit == 0 # [○] : Passable return false if flag & bit == bit # [×] : Impassable end end return false # Impassable end end 8.) Frozen Graphic Transfer Bug Why? The bug is mostly with frozen graphics from the previous map. Parallel process from the previous map have the particularity they start before everything else. Now this is normal and all, but if you use a Transfer with no Fade In, it also freezes every PP in the next map and the only one would load is an Autorun. The PPs will only run once the map is refreshed. Why should I be concerned? Let's say for example you have a picture from the previous map and you used a Transfer event to none because you want that picture to stay until the next map clears it off. The problem is, if the next map's event that clears the picture is a Parallel Process, it won't run at all until refreshed. How to fix? Here's a snippet by Kread-Ex to fix this bug! This snippet adds in a fake fadein or known as 1 frame of refreshing if you prefer. class Scene_Map < Scene_Base #-------------------------------------------------------------------------- def post_transfer case $game_temp.fade_type when 0 Graphics.wait(fadein_speed / 2) fadein(fadein_speed) when 1 Graphics.wait(fadein_speed / 2) white_fadein(fadein_speed) when 2 fadein(1) end @map_name_window.open end end 9.) Custom Movement Event Update Why? Basically, when an event that uses custom move route is off screen, VXAce stops updating that event as one of the ways to prevent lag. Why should I be concerned? This video will show you. Pay close attention to the waterfalls until the end: How to fix? Kread is awesome to provide us with a very simple fix :> # Put [update] in the event's name and the move route will always update. # # ~Kread class Game_Event < Game_Character #-------------------------------------------------------------------------- # * Determine if Near Visible Area of Screen #-------------------------------------------------------------------------- alias_method(:krx_alfix_ge_nts?, :near_the_screen?) def near_the_screen?(dx = 12, dy = 8) # YEA compatibility if $imported && $imported["YEA-CoreEngine"] dx = dy = nil end # YEA compatibility return true if @event.name.include?('[update]') return krx_alfix_ge_nts?(dx, dy) end end
-
Alright, I made a Status about this earlier, which I am now converting to topic form. I'm trying to make a guild entirely through a system of events, and it is not easy, not at all. anyone have any tips for doing this sort of thing? it's name is the adventurer's guild (creative I know) it has a ranking system, but because different party members are at different ranks, at least at the beginning of the game, it doesn't play to much of, if any of, a role in how I want it to work. I may add a feature that would allow you to have party members (rank up), but again, I'm not entirely sure how I want it to work. currently playing with the idea of each character having a "badge" that acts as a mark of their rank. anyways, the purpose of this guild is to provide side quests for the player to complete, with the usual varying degrees of difficulty, from delivering mail, to destroying giant monsters. I plan on having a bunch of notices posted throughout the guild hall that would allow the player to take these side quests, usually after certain conditions have been met. Rewards for these side quests would vary from items and equipment, to summons and summon upgrades, to party members that wouldn't be obtainable any other way. So, we get to my problem. what is the best way to go about doing something like this? I know to be careful about my usage of variables and switches, but is there anything else I should watch out for?
-
Evented Enemy Scan System By Sgt.Twilight Hey guys, I was asked to be a member of the tutorial staff, so this is my first tutorial (in awhile at least). --------------------------------------------------------------------------------------------------------------------------------------What Engine does this tutorial use? It was made in VXA, but should work in VX and XP, but I am not positive. What would I need to make this tutorial work? Just a decent knowledge of Eventing, Variables and Patience..lots of patience. What will this tutorial look like in the end? Pros- Can look very nice. Can add an extra layer of lore. Does help the player get a better understanding Cons- Time consuming. Can lead to some inconsistencies. NOTES If their's (there's?) any part I glanced over or didn't explain very well, I will try my best to re-write it, I ambit I did get kind of tired of writing this after awhile. If anyone has questions about adding on to this tutorial, feel free to ask and I will try to add it in. Also should be noted that a Demo version and Video will be coming later today or tomorrow. Note: Those Screenshots were taken from my project, the rest will be made in a fresh project! STEP 1-Setting up the Skill/Skills. This part is pretty self explanatory, simply make a skill, lets make ours just called Study, but you can call yours what ever you want. Ok now make it call a "Common event", press the "effects" tab on the skills to open up a menu, then click on the tab "other" and locate Common event on the bottom. Select the Common event you made, or making your scan event in. Also make sure to set your skills scope to be "None". This is what it should look like if done right (Most stuff can vary however). STEP 2-Setting up the Events. This is where it gets tricky, so pay attention! In the common event you picked, create a switch. We're gonna call this Switch STUDY, but you can call yours what ever you want, but try to make it memorable and have a name you can recognize. In the event we're gonna set the switch STUDY to ON, then we're going to make a Variable, lets name it SCAN NUMBER. Now that we got our switch and Variable ready, lets make a Conditional branch, the Conditional branch is located on the first page of the Event page. When setting it up, you wanna set it to "Equal to" the variable you chose for it and set it to "constant", and just click OK. If you did everything right, it should look something like this. We're gonna revisit this in a bit, but first.. STEP 3-Setting up the Troop events. Alright, we're almost there, as this is a pretty short step! First go into your Troops section in your database and find your first troop. For my fresh project, it's the classic 2 slime's that haunt every RPG maker game. Make a new troop event run on Turn.no 0 and make its span "Battle". I haven't tried it on Turn, but Battle seems to work fine. Then in the event window, make "Control Variables" (which is located on the first section of the event page) and use the Variable you were using and set it to 0 (NOTE: I am using an early English patch, I heard it was called Variable Operation in the main one, I will make a screenshot at the bottom proving I own the program in case anyone would ask.). If its all done right it should look like this. STEP 4-Finishing the Events. Alright so we finished the troops, now we have to go make in the Common Events and finish this up! Remember when we made the Conditional ranch that equaled 0? We're gonna add to it now! Under the "SCAN NUMBER =0" there should be a @>, click the @> so that an event page will come up. From here we can make few different modifications, and this is where your creative parts can flow in making unique looking scans, but I'm just gonna use the one I already made. But first off make it a "Show choices command" and name the choices after the enemies in the troop. Like this. Now for actually writing the scan info! You can do it in any style you want, but I'm going to use the style I used for the "What does it look like", but I encourage you to experiment on it! The "code" I use for the bio is something among the lines of this. [Ruby] NAME:Giant bee LV.\i[125]\i[126]\i[126]\i[126]\i[126]\i[126]\i[126]\i[126]\i[126]\i[126] (1/10) (Troop) RACE:Insect | LOYALTY:Berserk | KARMA \c[28]â–²1\c[0] MORPH %NULL | SUMMON% 0/5 | RECRUIT% 0/5. Now anything from RACE to the RECRUIT part won't make since in every project, so just keep it from NAME to the LV. part, but this is only the over-view part. Under that we're going to make a status menu, now you can use the enemies actual stats, but I use the stars I used to show the enemies LV, the "code" I used for that is [ruby] HP \i[125]\i[126]\i[126]\i[126]\i[126] (1/5) | MP \i[125]\i[126]\i[126]\i[126]\i[126] (1/5) POWER \i[125]\i[126]\i[126]\i[126]\i[126] (1/5) | ARMOR \i[125]\i[126]\i[126]\i[126]\i[126] (1/5) MAGIC \i[125]\i[125]\i[126]\i[126]\i[126] (2/5) | SOUL \i[125]\i[126]\i[126]\i[126]\i[126] (1/5) SPEED \i[125]\i[125]\i[126]\i[126]\i[126] (2/5) | VALOR \i[125]\i[126]\i[126]\i[126]\i[126] (1/5) If you're wondering what they look like, just re-look at the first two images of thus tutorial. Also its optional to make a "bio" section, which contains a few sentences about the monster, it's pretty self-explanatory to make, but if anyone ask I will add it to this tutorial. Just close it off with the switch and it should look like this. And that's it for the most part! Now we just got to repeat this for every troop, I'll show you what it looks like to make multiple. Notice were it says "else"? Click the @> under it and copy and paste all the info we used for the first troop, which can be easily done by clicking on the "Show choices" tab and pressing CTRL+V and CTRL+C to paste it. Change the choices to reflect the new troops, if you have a re-used enemy that you made the info for, and don't want to clog up space, we're going to get into that a bit later so stay tuned. Make the new enemy scan and it should look like this. Notice the "Jump to Label: SLIME"? If you're re-using a enemy, put a "Label" on them and when you're making a call to them, use "Jump to Label". Label is found near the bottom on the first section of the Event page. And voila! Just rinse and repeat for all troops! EXTRAS I will be updating this as time goes on (if I can remember too). SCRIPTS THAT GO WELL WITH THIS Yanfly message script: Can remove the "NAME:" line and add it above the text box. ----- I'll try to continue to experiment with this as I go along and try to add to it, sorry but I'm rather tired now and have a small cold.
- 2 replies
-
- 2
-
-
- multi-engine
- vxa
-
(and 1 more)
Tagged with:
-
UPDATE LOG: v 1.1 = Fixed an issue regarding the player being transferred to the left side of the map when recalling a mark. v 1.0 = Initial Release Demo: For a complete demo, click here! I have recently read a very interesting help topic that requested the knowledge of how to set up a teleportation system in which the player can mark a specific spot and return to it later via an item. Since I thought that this was an interesting topic, I thought I'd share my discovery on how to do this. A couple of side notes: “Mark†means recording the area and map that the player shall return to when the “Recall†event is called. I will be putting up screenshots eventually, so please hang tight on those! General Overview: Allow me to discuss here what the general overview of this tutorial looks like. We're going to be setting variables equal to script calls, implementing those variables to transfer and mark the player's location at any given time, and also learning how to use actor names to our advantage here. Getting Started: 1) First things first. You'll need to either: 1) Open up a new project or 2) Open up your current project **For the sake of this tutorial, I will be starting with a new project. 2) Create 3 separate, but different maps for your testing environment. How can we possibly test if this thing works across multiple maps if we only have one map? 3) Create simple events that'll transport your actor to the above mentioned maps. 4) Create three new/unused actors in the database and remove every trait they have (class, skills, graphics, etc.) 5) Rename those same actors as the following: Mark 1, Mark 2, Mark 3 (I’ll explain why in a little bit) Creating the “Mark†Common Event: In order to teleport a player, the engine needs three different values. The player’s x position, the player’s y position, and the map ID. We will be allowing the player to create and overwrite three different “marks.†1) Open up the Common Events tab in the database and create a new common event. Label this as “Markâ€. 2) In the event, go to Control Variables. Create the following variables: Mark 1 Player X Mark 1 Player Y Mark 1 Map ID Mark 1 Name Mark 2 Player X Mark 2 Player Y Mark 2 Map ID Mark 2 Name Mark 3 Player X Mark 3 Player Y Mark 3 Map ID Mark 3 Name One of the abilities that we’ll be creating here is the ability to rename each mark to whatever the player wants to rename it to. Whenever the player activates the “Mark†common event, we want these to be updated immediately. 4) Using Control Variables, set the “Mark 1 Name†and select “script.†Then put in that field, $game_actors[2].name This is basically saying to get that actor’s name (in this case actor 2) and store it as a value in the variable named “Mark 1 Name.†You may change the number 2 to any number that suits you and your game. 5) Do the same thing for “Mark 2 Name†and “Mark 3 Name†6) Next, put in a simple text that asks the question “Which Mark do you want to overwrite?†***Note that step 6 is optional. 7) Using the “Show Choices†command, we’re going to provide the player with the names of those marks. By default, the game will use Mark 1, Mark 2, and Mark 3, since those are the default names we set in the actor database. However, we need to enter in a couple of commands in the choices field to allow the player’s custom names to appear because if we simply put “Mark 1, 2, and 3†into those fields, then those same names will appear every single time and we don’t want that. 8) In the Choice 1 field, put the following: \V[10] ***Change 10 to whatever variable number is labeled as Mark 1 Name 9) In the Choice 2 field, put in: \V[11] ***Change 11 to whatever variable number is labeled as Mark 2 Name 10) In the Choice 3 field, put in: \V[12] ***Change 12 to whatever variable number is labeled as Mark 3 Name The rest of this section may get a little tricky because I may or may not have the same variable and actor numbers as you do, so pay attention! 11) Insert a “Name Input Processing†command under the first choice. Select the actor named “Mark 1†and set the max number of characters to however many you want. 12) Use Control Variables and set the variable labeled “Mark 1 Player X†and select script. Then, input the following: $game_player.x 13) Use Control Variables and set the variable labeled “Mark 1 Player Y†and select script. Then, input the following: $game_player.y 14) Use Control Variables (again) and set the variable labeled “Mark 1 Map ID†and select script. Then, input the following: $game_map.map_id 15) Using Control Switches, create the following three switches: Mark 1 Set Mark 2 Set Mark 3 Set I’ll explain why we need those in a little bit. 16) Using Control Switches, set Mark 1 Set to ON 17) Repeat steps 11-16 for the second choice, this time using the variables and switches containing Mark 2 in them. 18) Repeat steps 11-16 for the third choice, this time using the variables and switches containing Mark 3 in them. Creating the Recall Event: 1) Create a new Common Event and call it “Recall†2) Remember those Control Variables we towards the beginning of the above section? (Hint: They’re the first three commands listed in the Mark event) We need to copy those three and paste them as the first three in this event as well. 3) Using the Show Text command, write “Recall which Mark? ***Step 3 is completely optional 4) Using the Show Choices command, in the Choice 1 field, put the following: \V[10] ***Change 10 to whatever variable number is labeled as Mark 1 Name 5) Using the Show Choices command, in the Choice 2 field, put the following: \V[11] ***Change 11 to whatever variable number is labeled as Mark 2 Name 6)Using the Show Choices command, in the Choice 3 field, put the following: \V[12] ***Change 12 to whatever variable number is labeled as Mark 3 Name ***You may wish to use the Show Text command under the first choice that says “Recall \V[*insert variable number here*] 7) Under the first choice, use the Show Choices command again and use the default “Yes†and “No†choices. 8) Under “When [Yes],†set a conditional branch that checks if “Switch Mark 1 = ON†***Keep the bottom checkmark box checked. 9) Above “Else,†use the “Transfer Player†command and select “Designation with variables.†10) For Map ID, select the variable that corresponds with Mark 1 Map ID 11) For Map X, select the variable that corresponds with Mark 1 Player X 12) For Map Y, select the variable that corresponds with Mark 1 Player Y ***You may choose the direction and/or fade of your liking. 13) Under “Else,†use the Show Text command and say something along the lines of “Mark not set†14) Now use the “Exit Event Processing†command (NOT the Erase Event command!) 15) Under “When [NO],†use another “Exit Event Processing†command. What did we just do here? It may seem a little complicated at first, but it’s really quite simple. All we’ve done so far is display a list of Marks for the player to choose from. These Marks have custom names that the player has set by themselves. When the player selects a Mark, they have the option to confirm or not confirm. If they confirm, the game will check to make sure that a Mark has actually been set. If it isn’t, then the game displays a message saying that it hasn’t been set and nothing else happens. If the Mark has been set, the player get transferred to the area we designated with the variables. If the player has chosen not to confirm their choice, the menus disappear and nothing else happens. However, we’ve only created that for the first Mark. Now we need to do the other two. 16) Highlight everything that’s under the first choice and copy it. Paste it under the second choice. 17) Using the spacebar, edit the conditional branch so that it checks if “Mark 2 Set = ON†18) Using the spacebar, edit the Transfer Player command and set the following: Map ID = Mark 2 Map ID Map X = Mark 2 Player X Map Y = Mark 2 Player Y 19) Again, copy everything and put it under the third choice. 20) Using the spacebar, edit the conditional branch so that it checks if “Mark 3 Set = ON†21) Using the spacebar, edit the Transfer Player command and set the following: Map ID = Mark 3 Map ID Map X = Mark 3 Player X Map Y = Mark 3 Player Y Creating the Mark/Recall Option Common Event: Stay with me here! You may be thinking, “Not another common event.†Don’t worry! This one’s really simple! When the player uses the Mark/Recall Item, we want them to choose between being able to Mark and Recall. That’s all this event is doing. 1) Create a third Common Event and label it “Mark/Recall Option†2) Using the Show Text command, write “Mark or Recall†3) Using the Show Choices command, write the choices “Mark,†“Recall,†and “Exit†4) On the right, under “When Cancel,†select Choice 3 5) Under “When [Mark],†use the Call Common Event command and select “Mark†6) Under “When [Recall],†use the Call Common Event command and select “Recall†7) Under “When [Exit],†use the Exit Event Processing Command Creating the Mark/Recall Item: 1) In the Database, go to the Items tab. 2) Create an Item and remove all of its traits. 3) Name it whatever you like. 4) Set Item type to whatever you like. 5) Set the Item Icon to whatever you like. 6) Set Consume = No 7) Set Occasion = Only from the menu 8) Double-click a blank space under “Effects†9) Go to the tab labeled “Other†and select Common Event and then select “Mark/Recall†10) If you are in a new game, you’ll need to create an event on the map that is set to autorun. 11) Use the Change Item command and give the player 1 of the item we just created. 12) Use the Erase Event command ***If you already have a game created, note that the last three steps will most likely not suit you unless you want the player to receive an additional Mark/Recall every time they enter the map. While this won’t affect the game, it can be a nuisance to see those additional items. ***Also, you may want to look into a script that’ll hide those numbers. You can use this script, but you’ll have to change the Item Type to Key Item
-
Fast Version of Guide: New "Timer" State to make end on a given amount of steps Have the game give the hero that state upon entering When the state ends the step amount time is up and you teleport back Begin Guide Step 1. Getting Where we need Open Database (F9) Go to States Tab Step 2. Make a new State, name it "Timer" A. Enable - Remove by Walking to 100 Steps B. Add - Message when the State Removes "Times Up!" Step 3. Set Up A. Make the Npc or Transfer event give the hero the "Timer" state. B. Turn on a switch "Timer Start" (this is for the next step) Step 4. Completion Make a parallel event go on only if the switch "Timer Start" is on. -Conditional branch -If Eric is Inflicted with state "Timer" -nothing happens -else -Transfer the player back to the entrance (this is when the timer ends) END Suggestions: ***Make the state have a low priority so it shows last next to all other states, and make the icon invisible. **Use music during to remind the player they are on a step timer. *Use for anything like looking for an item, rescuing an NPC, procrastinating in a room, robbing a place.
-
Random Occurrence System (R.O.S.) Introduction My apologies. This was meant for Halloween but I got caught up in uploading the tutorial. I've been playing a lot of horror games lately; mostly Dead Space. I got to a point in the game where there was a door that was chained and kept shaking, like something wanted to get out. I walked in front of the door and thought, "What if something actually popped out of that door?" That's when I got the idea for R.O.S. I figured that the reason some RM games don't scare players is because the player already knows what's coming. What people are afraid of is the unknown. I desperately wanted to make this system for RPG Maker but never found the time. But this October, I found the time to really devote myself to RPG Maker. Enjoy the system! About the System This system requires some heavy eventing and editing. The level of difficulty is from moderate to high so have patience with the system. Available in the Demo: Enemies Regular (Set up by you. ABS compatible) Self Checking (Runs on Parallel Process to check their own X and Y values. ABS compatible) Traps Active Trap (Triggered by Player Touch and runs once. Player must step on trap again to re-activate) Active Persistent Trap (Runs on Parallel Process and triggered by player or other conditions) Passive Persistent Trap (Runs on Parallel Process and is independent. Processes as soon as player enters the map) Ventilation System (Requires Self Checking enemies) Exits (For enemies to exit the vent system and surprise the player) Entrances (For enemies to re-enter the vent system to hide from or chase the player) A more detailed explanation is found in the demo. It explains all the tips you need to get this system functional. Screenshots It's hard to understand the system just from pictures but here you go. A monster who has popped out of the wall Common Events The Dead Space-inspired Ventilation System The Ventilation System's Region IDs (For numbering Exits and Entrances into the Ventilation System) Terrain Tags (For Exits and Entrances into the Ventilation System) The Random Occurrence System (R.O.S.) was deisgned and created by RGangsta at gdunlimited.net (RM Unlimited) for RPG Maker VX ACE October 28, 2013 Click to Download! (Redirects to gdunlimited.net) **This system is ONLY available at gdunlimited.net (RM Unlimited)! If you would like to post this system somewhere else, please redirect to gdunlimited.net. Credit is not necessary but is appreciated.
-
- 1
-
-
- vxa
- intermediate
-
(and 1 more)
Tagged with:
-
eventing Tharis' Guide to using some animated Graphics (Basic Eventing)
Tharis posted a topic in Developing Tools
The engine comes with a check box for "Stepping animation" in each event, turn that on. Done! Tutorial over... Ok, so not really. There are some animations that work by doing nothing more than clicking that one single box, and letting it go from there. But if you have a graphic that is set up to run an animation that does not run using that method, it gets a little more complicated. Now this tutorial is for beginners, after a few months playing with events, the contents of this thread will be almost second nature. However, since everyone needs to start somewhere, might as well start here. First off we have the initial graphic. Lets choose some random NPC. She'll do just fine. So let's say that someone has gone to the effort to make a graphic for this character beyond just the normal walk (down, left, right, up) animation and it isn't a Kaduki character. Well how would you go about making that character model use that graphic? Well there are a couple of ways and that depends on what kind of way you want this displayed. Let's start by saying we want Tutorial Girl here to constantly display her animation, without input from the player to make her do so, and not part of a scene so much as just background motion. So we need to create an event for her to display that animation. When we get into the event window we would want to select her reading animation as the graphic (In this case it will be a separate file) and start with a neutral position (most animations will have a somewhat neutral position to start with, and if not, just whichever one looks best to you works fine.) in this case because we want her to look like she is reading and not just flipping through pages constantly it will require some more finesse. Here is the animation we want. We want to start by making her animation work free of input from the player, and we want her to do it without being told to by another event. so we access the "Move Route" display by changing her "Autonomous Movment" Type, to "Custom". Like so. This accesses a pretty large set of direction buttons that are fairly well organized. It can be a little daunting to someone who has never used them before, but nothing we can't tackle here. So, as you can see I already have her reading animation set up as the "graphic" to be used. Note really quickly, that I have her "Direction Fix" checked, this would normally prevent any type of turning the character may need to do, which could potentially create a problem for our reading animation. But let's jump into it and see how this can be of great benefit to our animation. In her animation section we are going to do a few things. First we want to make sure to turn off the "direction fix" this will allow the editor to display the animation as intended. Now, Direction fix as a whole is not needed in animating a sprite and can be a big hindrance if you forget to turn it off, and in some cases you would actually never want to mess with direction fix unless you intend for something never to move. The reason you would want to do so with this animation is, when the player activates the event it will cause the event to turn the graphic toward the player. Normally that wouldn't be such a bad thing, but because our event uses the different directions as part of the overall animation, "turning" the graphic will put it in some weird spot in it's animation that will immediately be noticed by the player. But since the direction fix is turned off for the animation it won't effect how it displays. Now if your player happens to activate the event while the animation is playing and currently set to "Direction Fix: OFF" then yes they will see the animation position of the direction they accessed the event from. But it's only a short window they will have so it won't be much of a worry. Take a second and look over the boxes I have highlighted if you have not already. Notice that I have a "Wait" at the top of the list. This will prevent the animation from just cycling itself over and over again immediately because the "Repeat Action" is checked. Giving a "Wait" is a nice way to break up the turning pages. The next thing to notice is that the graphic is being to told to "turn left" In this animation's set up the "Left" position is actually the first frame of animation and the "Down" position is Neutral. So our animation goes like this: "Turn Left, Turn Right, Turn Up, Turn Down". Because "Down" is the neutral position and the position we want to return to it will be the last one that we activate before reactivating "Direction Fix". As a quick side note, remember to use the "Turn" and not the "Move" buttons I myself have on occasion thrown off an animation due to it dancing around the screen unintentionally. As an added bit of immersion I add in a lot of sound effects to my animations which you can choose to do or, not to depending on how you want to set it up. I'll go over the other displays of animations (those accessed by the player, and those activated as part of a scene) in a more advanced eventing tutorial. As for now this is how you would use some more simple animations in the world of RPG maker. -
eventing how to make Jump maze/puzzle without scripting Tutorial
Matte12 posted a topic in Developing Tools
Jump maze/puzzle Tutorial In this Tutorial i will show you how to make a jumping event and how to implement it into a map with drop holes. I will start with explanation and then show a picture on how it will look, and then i will show you an example picture of a map with gaps where you can fall down. Positive: No scripts Few events Very Versatile Simple eventing Negative: limits it to player jump (follower probably won't follow) [tbh haven't tested yet] wall jump possible (check solution at the end) Short about the main functions of this "event jump system": First the common event in this tutorial will make it possible to jump on any map you create an event and use "Call common event: [Jump]" with a "parallel process" trigger on. Then by making a second event with "parallel process" trigger on we make use of three variables to check where we as the player is all the time and then wether we stand on region ID 1 or not, if not we get transfered to the start and that way we have to start over and try again. This tutorial contain: -Map with region id 1 (painted where you will be able to walk) -Variables: 3 -Common events: 1 8 Conditional branchs 4 Set move routes This doesn't need very much beyond these few things written above. The things written above is the things that will make it work, and then there is other things that make use of them but i will explain and show you an example, so don't worry and if you have a question even after reading it all put up a comment and i will answer as soon as i can. Okay here we go! Start of tutorial: Step 1 create 3 variables - 1 called "player x" and then - 1 called "player y", - 1 called "Region ID 1" or just "Region ID" (but if you want more information on which variable it is then write in the nr. 1) (the variable won't be used in common event but create all varibale now so we have them when we need them) Now when we made all variables we can start with the common event. Go to "Database" and then "Common events" tab and then start with naming the common event "Jump","Jumping" or "Jump event" whatever you find fitting (i would choose jump). Then create in the named common event(set triggers to "none") four conditional branches with "else" option marked. (CB=conditional branch) 1 CB should check "player is facing down" 2 CB should check "player is facing left" 3 CB should check "player is facing right" 4 CB should check "player is facing up" Then when that is done you create four more wich check if button "X" is pressed(with else option) and then place one in each and every of the first four you made(make sure nothing is in the else portion). When that is done you create four "set move route". 1 set move route:(skip, wait) Jump +0,+2 (facing down) 2 set move route:(skip, wait) Jump -2,+0 (facing left) 3 set move route:(skip, wait) Jump +2,+0 (facing right) 4 set move route:(skip, wait) Jump +0,-2 (facing up) When the set move routes is made, make sure they are placed inside the correct Conditional branch. Make sure once again that there isn't anything inside the else portion. Here is an example of how it should look when done:(open spoiler to see pictures) Now we have made the common event and now to use it in a map then all you have to do is to make an event on the map you want to enable jumping, use "Call common event:[Jump]" and then set the event trigger to "parallel process" and that's it if you have made it all correct then you will jump over 1 tile. So with that done now comes the complicated things(it is simple if you understand how it works, but if you don't understand then it is hard). Step 2 We will now use the three variables you made in step 1. Let's start with the 2 variables "player x" and "player y" now we need to create a new event with parallel process and then create a control variable for "player x" and then make sure it is marked on "set" and then go down to the "Game data" and then you get a new window where you want to find character and set that to "player's map X" Now do it all over but make sure you use the Y instead of the X. If you haven't made anything wrong you will now see two control variables that look like this: Control Variable: [0001:player x] = Player's Map X Control Variable: [0002:player y] = Player's Map Y Now we create one more control variable, where we use the third variable "Region ID 1" and then mark it as "set" and then "constant 1" so now it should look like this: Control Variable: [0001:player x] = Player's Map X Control Variable: [0002:player y] = Player's Map Y Control Variable: [0003:Region ID 1] = 1 Now we need to make a "Get location info" (you can find it in upper left corner on tab 3 in event commands) and in this "Get location info" we use the "Region ID 1" variable and then set "info type" to "region id" and then use "designation with variables" where we use the "player x" and "player y" variables, so now it should look like this: Control Variable: [0001:player x] = Player's Map X Control Variable: [0002:player y] = Player's Map Y Control Variable: [0003:Region ID 1] = 1 Get location info:[0003], Region ID, Variable [0001][0002] Now we make a conditional branch below this lot as it is shown above, the branch should then check the variable "Region ID 1" is equel to constant 1 with else option marked. Then you make in the else portion of the conditional branch, a wait command for 15 frames and then a player transfer. The transfer will have to be tweaked depending on how your map looks and where you want the player to round up if he falls down. So now it should looks like this: Control Variable: [0001:player x] = Player's Map X Control Variable: [0002:player y] = Player's Map Y Control Variable: [0003:Region ID 1] = 1 Get location info:[0003], Region ID, Variable [0001][0002] Conditional Branch: Variable [0003:Region ID 1] == 1 > else Wait: 15 frame(s) Transfer Player:[Map-Name](Map-cords)down (set the way you face to something else than retain, if you do it will look bad) > branch end Here is a picure on how it will look:(open spoiler to see picture) [!!ignore the comments in the picture!!, since they are more or less only some ideas on how to use it futher] Here is a map example on a maze and how it will be when you have painted all walkable places with region id 1, if you follow and use this tutorial you won't need to use a ton of events and you won't need to use any other region id's than region ID 1. Last but not least you will not need a script to do the same thing. (open spoiler to see picture) (if you look closely on this picture you can see that i have painted a small area with region id 2 just to test that it only works with region id 1, and yes if you follow this tutorial and paint a region in any region ID other than region ID 1 you will be transfered as if you fell down in the gap) I want to credit user: Reat ...for planting the idea for this tutorial with his tutorial on "Using Terrain Tags" which can be found here: http://www.rpgmakervxace.net/topic/2194-using-terrain-tags/ If you don't get it to work make sure you go over the tutorial 1-2 more times and check the list below before you comment or message me that you canot get it to work. Possible things that can be wrong: (these things can be easily corrected by double checking with the tutorial) Wrong setting on triggers - (make sure you tripple check the triggers on everything)-[very easy to miss if wrong] Wrong setting on a variable - (make sure that they look the same as i have shown) Missed creating "get location info" or wrong setting for the "get location info" - (might be easy to miss if wrong) Conditional branch is missing or has wrong setting - (make sure to double check this) If your problem do not have to do with these things i show above then make sure you gather as much info/pic as you can, so i can help you easier, hopefully there won't be any problems. Possible additions in the future: (ideas on how to use this idea further) - the usage of more than one region id so you can make save points, so you do not have to start over all the time. - the usage of different region id to send you to the floor below or into a dungeon/cave. - use region id 1 as monster free area and region id 2 or higher as random monster encounter area(within a jump maze map). So far that is all i have thought of, but im not sure if i will make a tutorial on how to do them. But anyone who want to, can do so without asking as long as you link to this tutorial. Wall Jump Solution: (Open spoiler to see solution) I hope this have been a helpful tutorial, i also hope you all have fun!-
- 1
-
-
- maze
- intermediate
-
(and 6 more)
Tagged with:
-
Okay! As requested, I'm writing up the first lesson on events, this is a simple event for jumping down ledges in a pokemon style. You will need to make a common event, so as to not need to repeat this event again and again. Within that common event you will make a simple set of events. You will need a conditional branch to make sure the player is pressing down, so they don't jump off the ledge just by approaching. Next you will do a move event: Within that you will do a series of options. Turn Down, Lock Direction, Turn off Movement Animation. (These steps are just for aesthetics, but are just as important.) Then Wait 5 frames, so the aesthetics go into play, (The most important part goes here) Add an appropriate SE so that it isn't boring! Then Jump Y +2, then turn off Direction Fix, Turn on Movement Animation, Wait 5 frames. Pretty simple, you can also choose to follow that with 'gather followers' but it will cause a slight lag while they join you, otherwise just moving gathers them. Keep in mind that the event I made was based off a cliff that was one wall height, so you jump from the spot you are standing on, passed the wall segment and onto ground you can move on, if your cliffs are larger and you want to jump down, just increase the number on the Y axis as needed. Now the final part, sadly this will require as many events as you need spaces to jump down and every time you jump, so it can get event heavy. Within those events, simply put them on event touch and below player, then just have them call the common event. Will work wonders. Now this should be pretty obvious, but you can use this for any direction, not just for down, to include all sorts of jump events in your games, simply change the X or Y axis appropriately (+Y is down -Y is up, +X is right, -X is left) and the conditional branch to be pushing the right direction button. If you want to have all the options in your game, be sure to put them all in different common events and have the events on the ledges call the right one, this will prevent you from doing silly things like jumping to the right or left when walking along a down ledge, or getting stuck in places you shouldn't be. (Trust me, it isn't pretty) Also, I do realize that you can do this with the 'player is facing' conditional branch too, the reason I do it this way is to have the player consciously jump when they jump, so they have to have an interaction and don't fall without meaning too, or needing to push the action button, they just have to push the direction they need to go. Screen shot for your convenience! So now I ask, what tutorial shall I create next? I have a few suggestions and I am looking into those, but I would love more suggestions! Edit: Tigerbite has shown me another way to do this using a couple of variables and region IDs instead of so many events. Now to do this, you will need some sort of switch that you turn on early game, so that you can run the common event in parallel process, so it is always checking. Next you will simply need to make two variables, to constantly check the players X and player Y map position. Then place a get location info for region ID based on players X and Y variables, Next you will need to make an additional conditional branch to check if the variable you set up for location info matches the terrain tag you placed there, in my case '4'. Then you only need the one constantly running common event, or if you make multiple direction jumps, the up to four constantly running common events. You then just need to place the terrain tag of the appropriate number at the ledge you want to be able to jump down.


