|
Post by christi on Jan 29, 2005 10:37:36 GMT -5
I have a suggestion, just make a variable that saves each party members location via "x,y" with their each unique variable. Then on the sphere grid map for the enter script have it match the xy of where they last were. It'll be a similiar script to my co-op mode if you try it out. You could have each character on their own grid, or have one big grid in which all characters would be on. Once again, in reference to my custom levelling system... "Reawakening: Game Info and Progress" on the "Our Created Games" board if you've not read the thread. (Just crossreferencing to avoid confusion.) I'm wanting to implement the above quoted idea to keep track of where three unique characters are in a dungeon. For example, when they teleport out of the dungeon, and then later return, I'd like them to be in the same place that they teleported from, to prevent them from having to start at the beginning of the maze and have to pay for levels they've bypassed again. Now, I'd thought about using the "Set Escape" command here, too, but I don't think that'll work because there's already an escape set for them to get OUT of the dungeon. That's why I'm wanting to use the Party Member Location variable idea - but, since I'm not all that experienced with more advanced commands, I need a little bit of help with this one: 1.) Will this command be able to keep track of all three individual member's locations? (I'm guessing yes, with the help of flags or a variable, but just want to make sure...) 2.) When making a variable that saves each member's party location via X and Y, I'm assuming this would be a NEW variable, correct? So, would it be, like, "Variable 205 = Party X + Party Y?" 3.) When placing this into the "Enter Map," slot what exactly would the scripted event consist of? As in, how exactly would I write it out? It sounds like what I need, but I'm just having a bit of trouble knowing exactly what to plug in where. If you could give me just a few more details, I'd really appreciate it.
|
|
|
Post by NASH7777 on Jan 29, 2005 11:03:45 GMT -5
Now this is possible but a bit tricky so bear with me :-)
See this would work with you leveling spherelike grid map because It's a single map so it would be easy. For the sphere-one all you would have to do is have each character their unique variable x y (yes you make these and you shouldn't need a z unless your grid has mutliple elevations levels). Now when you enter the map the enter script should work like this: There should have already been placed a event representing each party member. So this script will have the screen masked, it will put each event where their xy corresponds to. I have a script for this. Basically you'll have them bypass all objects, loop to keep moving them north/south until their y matches and then with their x. So you run that script with each controlled enemy with a current xy, so you can cycle that script over. Then after all those are placed. Change the party display to a single character, or (just show leader). Then move the party to the player one's spot there should be an event there (invisible), make all the other events change to their corresponding character graphics, and there ya go. Now have Indirect Effect that, with every step will bring the event with you (OR) you could have it that after your turn it moves that event to where you are currently, you won't need an indirect effect for this (but I failed to note this whern I first was making my co-op mode). Then with square have it make your party invisible and the current event representing that character visible. Then move the party to the next characters location and continue.
Of course you could bypass a lot of this if you don't need your other characters visible on the map. Then you can just have the other members xy with variables saved and when you press square it will change the current visible leader to the next member and adjust your location with bypass objects on, and when you get there turn it off.
Now with that, you want to do it it with many characters on many maps throughout your game? Well you would have to have a variable then for each member's current map. Then when you change party members have it flip a flag, teleport you to the current map, and with an enter event of that map, adjust your location if the flag is on to the correct spot.
Hope this helps, it may seem a little confusing at first but if you have any q's I'm here.
|
|
|
Post by christi on Jan 29, 2005 11:46:33 GMT -5
Hm... I guess I do have a question first:
Now, I only need one party member visible at a time, so I should be able to go the slightly easier route.
Let's say the player is upgrading Virk. They're on the Upgrade Board, and decide to teleport back to the main map. I've got a variable right before the escape command that says "Virk's Location = X+Y." Am I on the right track so far?
Now, let's say the player teleports back to the Upgrade Board, once again to upgrade Virk. I have an Enter Script that masks the screen, but I'm not exactly understanding how to move him to the location where he was before he teleported away the first time, where his Y matches his X. Where do I load the Variable that contains this information?
|
|
|
Post by NASH7777 on Jan 29, 2005 11:58:22 GMT -5
Well, you missed one key point. Virk's Location shouldn't be a variable. However Virk's X, and Virk's Y should be two SEPERATE variables. Then to get it to match these variables you have a script, well I'll just use an example: current grid character = CGC(current grid charcter)+1 if cgc>#of characters in your game then cgc=0+0 (this is so after you've controlled the last member it will then switch back to the first) OR: You may have a multiple choice or whatever to cucle through your characters Either way it continues: If CGC=1 ~Make gridx=Virk's x ~Make gridy=Virk's y ~Call script [set grid local] end if If CGC=2 ~Make gridx=Blah's x ~Make gridy=Blah's y ~Call script [set grid local] end if etc... get the picture?
Okay now for the [set grid local], I'll do this in my next post as soon as I post this one.
|
|
|
Post by NASH7777 on Jan 29, 2005 12:08:06 GMT -5
Okay now for the [set grid local]
Game Info Load (now I just call a find distance script but I doubt you have one so I'll write it all in :-) ) Distx=gridx-party x Disty=gridy-party y flag south=on (these flags must be made) flag east=on
Script Branch distx<0 ~ Flag east=off ~ distx=distx*-1 Script Branch End
Script Branch disty<0 ~ Flag south=off ~ disty=disty*-1 Script Branch End
(okay now we have the distance for x, and y and if we should move the members north/south or east/west for x and y. Now we must match your party with these coordinates. Which I'll do in another post in a second for you to catch up. It will just be a contiunation of this post)
|
|
|
Post by NASH7777 on Jan 29, 2005 12:18:00 GMT -5
(btw, I just noticed I have a problem with saying "okay now" :-) ) Okay now we match your party pos with the one we want. When ever i have move party in this coming script you'll be wanting them moving at 8x, the fastest they can go.
Party Bypass objects=on Script Branch flag east=on ~distx=distx-1 ~Script Branch distx< 0 ~~To end ~script branch end ~move party east 1 Script Branch End
Script Branch flag east=off ~distx=distx-1 ~Script Branch distx< 0 ~~To end ~script branch end ~move party west 1 Script Branch End
Script Branch flag south=on ~disty=disty-1 ~Script Branch disty< 0 ~~To end ~script branch end ~move party south 1 Script Branch End
Script Branch flag south=off ~disty=disty-1 ~Script Branch disty< 0 ~~To end ~script branch end ~move party north 1 Script Branch End Party Bypass objects=off
Well i think that should do it. I hope I didn't make any errors in what I gave you. Any more Q's, well I'm here :-) Good Luck
|
|
|
Post by christi on Jan 29, 2005 12:34:10 GMT -5
Wow, thanks for taking the time to write all that out. I'll see what I can do with it!
|
|
|
Post by vespuleth on Jan 29, 2005 12:57:24 GMT -5
i probably wont be able to post here until later, but nash is telling you the hard way to do it. ill be back later.
|
|
|
Post by NASH7777 on Jan 29, 2005 13:14:01 GMT -5
Christi~ If you wish not to show the other party members, Ves explains that you can just set up teleports for each location. I think this should work. But If you wish to show the other party members on the grid you'll need to use the moving script I gave you with the events instead of the party, you may also want to set the other members as bypass party, so they don't get in the way on the grid.
|
|
|
Post by christi on Jan 29, 2005 13:21:42 GMT -5
I'd played around with setting teleports as well... and at first, I thought it was going to work. I set up a teleport for each character when they exited the upgrade board, and when they returned, they teleported to the spot they'd exited at. I was pretty happy, until I realized that if, say, I'd just returned Virk from the board, and sent Amaelia, it teleported her to Virk's last location, instead of her last location. I guess the only thing I can't figure out is a way around this. Any ideas, anyone? Nash - your movement script is pretty cool, and I've been over at the PS2 coding it out for awhile. I'd like to give it a shot and see how it works, but I guess if I can do it with teleports, that might be easier. I'm keeping my options open at the moment.
|
|
|
Post by NASH7777 on Jan 29, 2005 13:29:17 GMT -5
why don't you just give each character their own teleport spot on the grid? If that doesn't work, yup go my way. Have you played the co-op mode on my Zelda Game?
|
|
|
Post by christi on Jan 29, 2005 13:39:44 GMT -5
I set a teleport spot for each member, and that worked fine. However, once you actually go to teleport the member, (the only option is "teleport..." it doesn't say to which spot) it takes them back to the last teleport spot set, which isn't necessarily theirs.
In the start button help menu, it says something along the lines of "If you'd like a menu listing teleport locations, you can get it in "Direct Effects," or something like that. I don't want to give the player the OPTION of which spot to teleport to, though; as they could potentially "cheat" and go to someone else's spot that's further along. That's the only thing I can't figure out how to code around; I know how to set a teleport for each member, which works fine, but when they teleport back, I need them to go to THEIR last teleport spot, not whichever one was last used. Ergh.
Edit: I did play in the co-op mode for awhile. It's pretty cool; are you using a variation of the movement script to do that?
|
|
Deleted
Deleted Member
Posts: 0
|
Post by Deleted on Jan 29, 2005 20:11:06 GMT -5
Are you using "Teleport" or "Escape"? If I'm not mistaken the Teleport you pick off of a list of places (character names) that the creator's "Set" (when certain party members join) and warp to them, so the locations could be set then. This'd only work if there's a Remove Teleport command to remove one teleport (so you remove Virk's old location and add his new, then next time use the old one as the new one and the new one as the old one, again). I'm not sure if this'd work, anyone?
|
|
|
Post by christi on Jan 29, 2005 20:42:32 GMT -5
I'm using "Escape" to get from the Upgrade Board to the main map, and I'm trying to use Teleport to get from the main map to the Upgrade Board, so that it doesn't erase the "Escape" location. I believe there's an option in Teleport that allows you to pick from a list of characters (but you have to do something with direct effects) but that wouldn't really work, because by this point in the script, the player has already picked out which party member they want to upgrade. So, say they've picked Virk, and the Teleport command comes up, and they pick Amaelia's location. That wouldn't work. And if I don't use this, the party member simply teleports back to the last location ANYONE was at on the Upgrade Board, which isn't necessarily the correct one. I'm getting a Custom Levelling Script-Sized headache just thinking about this one.
|
|
|
Post by NASH7777 on Jan 30, 2005 12:03:48 GMT -5
Yeah I'm thinking my way would work best, since I don't think the teleports are going to work. Yes this is sorta how I did the co-op mode in my game. Except mine was longer, and it was hard trying to get the z axis to work properly. Which is why I suggest in your grid that you don't use multiple levels. You can have different heights just so long as it's a single location of z where a party can stand for that xy coordinate.
|
|
|
Post by christi on Jan 30, 2005 21:34:54 GMT -5
Yeah, I'm thinking the teleports aren't going to work due to the multiple characters. I'll give your script a try the next time I get a chance to work on my game. (I was actually able to do a lot of the coding for it yesterday; I just need finish it up and plug it all into the right places.) One question - does all of the scripting you gave me go in the Enter Map slot for the Upgrade Board (except for the called script, Grid Local)?
Once again - I appreciate you taking the time to write that out for me; here's to hoping I can get it up and running pretty soon!
|
|
|
Post by NASH7777 on Jan 30, 2005 21:42:56 GMT -5
Okay, yeah when you enter the the map, have it mask the screen (color it or whatever). Then start from where I gave you by loading the grid xy based off what character's spot your going to. And then run the match location script. then unmask the screen and there ya go. You should also have a flag or something flipped telling you that your on the grid and in the square script, if this is on it will have the option to leave the grid (make sure you mark the New Coordinates of that member in the proper variable) or choose new character in which you can mark the xy of current character and change the grid character t whoever. Then either mask the screen and run the location fix all over or have them just teleport to the grid map even though there on it.
|
|
|
Post by vespuleth on Jan 30, 2005 23:24:28 GMT -5
i promise the teleports will work. i actually made a file just to test this today, and it works beautifully. i will try to upload it in the next few days, so you can check it out, as well as write for you specifically what ive done. im just a little busy right now.
|
|
|
Post by christi on Jan 31, 2005 6:32:15 GMT -5
Ves - I'd definitely appreciate that. The teleports seem like the easiest way to go on this; I've just been turning this problem over and over in my head and haven't been able to come up with a way for it to keep track of multiple locations. I'm intrigued as to how this is done, so, yeah... whenever it's convenient for you, I'd love to see what you've come up with. Nash - I'm really impressed by your scriptwork as well. I would have never thought of going about it the way you've set it up... I could imagine it took a LOT of time and effort for you initially design this and get it to work the way you wanted it to. Very cool. Even if the teleport system Ves is talking about ends up working better for my levelling system, (I'd like to keep it as simple as possible - my scripts for this have gotten ridiculously complicated over the weekend; it's all script branch conditions and variable sorting... I need to go back and make notes) I'll still have learned a lot from your script and will hopefully be able to implement that knowledge in my own script writing. Anyway, I do sincerely want to thank everyone for taking time out to help my little cause... I hope the results are worthwhile once I'm able to implement this levelling system into my game!
|
|
|
Post by doyleman on Feb 6, 2005 17:39:44 GMT -5
heh, hey ves, you never told me when i was giving you my idea on aim that it was basically like nash's.... (*new to this topic)
|
|
|
Post by vespuleth on Feb 6, 2005 17:45:20 GMT -5
i dont guess i noticed...
in any case, the problem is solved. unofortunately, im at work right now, and unable to upload it.
|
|
|
Post by christi on Feb 13, 2005 12:59:53 GMT -5
Just a quick (I hope) question on this...
In your test file, Ves, are you using the Teleport Menu (the one that can only be accessed through Direct Effects) to manually select which party member to teleport?
The reason I asked is that I've been playing around with a CMS today (solely to prevent players from using options in the DMS that would mess up my scripts). I think I might actually be able to apply the CMS to my game, but as you said in another post, you can't use the direct effects database if you're simulating items; therefore, I wouldn't be able to access the Teleport Menu, which would kind of mess up the whole Levelling System idea.
I don't need the actual script right now, all I really wanted to know is if it utilizes the Teleport Menu, because that's going to be the deciding factor in whether or not I carry out the whole CMS idea.
Everything's gotten a lot more complicated since I've gotten into actual game mechanics... hopefully it's all worth it when my game's done.
|
|
|
Post by vespuleth on Feb 13, 2005 13:18:12 GMT -5
yes, it was using the teleport menu. however... doyle, a few nights ago, gave me a better way to do this (i bet your wondering why you havent seen that file yet? ). essentially, it frees up the teleport menu, as well as allowing you to use it in a cms. this works like the following: have a variable (i am going to use normalvariabl0, because it is in every party members database) and have a script that sorts that variable, and warps to different locations. in your cms, make something that says 'upgrade' or what not, and then makes them choose the character. when they choose the character, fade to black, make that character lead character, and disable the rest of the party (show leader only). then, load member info, call the script that sorts normalvariable0, which will warp them to wherever it is on the map. so how do you set normalvariable0, right? well, start by setting their start position in the (i think) advanced tab of the member database. now, each time they go to a node, load party info, multiply party x times 100, and set normal variable 0 to x + y (this will give you a four digit number xxyy) now, when you do your warps, when your sort your normalvariable0, sort it only to locations where the nodes are. ie, if you put node 1 at 0204, warp your character to 'upgrade map' x =02 y = 04. i know thats a bit ecclectic, but i havent had time to work on it on rpgm2. ill do my best.
|
|
|
Post by christi on Feb 13, 2005 13:35:03 GMT -5
Hmm... that sounds like it could be pretty promising, especially being able to use it in a CMS, as well.
I'll work on it, too, and I'm sure I'll have questions as I go... I imagine Doyleman and others will probably be able to help answer, too.
One thing right off the bat, though... seems like I read something once about NormalVariable0 being reset to 0 in battles, if you're using Party Member 0? Is that right? If so, I'll have to switch Virk out of the Party Member 0 spot, as that's where he is. Unfortunately, I was dumb and copied my other characters from Virk's model. I guess my question now is, if I move Virk to a different spot, will the glitch still be a problem since he was originally in that spot, or will it fix it since he's not there any more? (Does that make sense?)
Okay, at any rate, I'll see what I can do with that script... thanks for getting back to me so quick... it's good to know that I'll more than likely be able to teleport my party members onto the grid, AND use a CMS.
|
|
|
Post by Dungeon Warden on Feb 13, 2005 13:57:24 GMT -5
It's not Virk, but Database 0, that is the problem. Because everything begins at 0, the system has problems using zero as a database set. Since normal and battle variables are not used in the presets, they may not have been fully tested. The other variables and databases seem to work fine.
Just set character database zero to a nil character and you should be all right.
|
|