So many questions about Galv's Map Projectiles

JayIsrael

Veteran
Veteran
Joined
May 16, 2019
Messages
102
Reaction score
28
First Language
English
Primarily Uses
RMMV
Hey guys,
Working on a game which I think will be awesome - in no small part thanks to the Galv's Map Projectiles plugin, which has allowed my character to fire a laser gun (a dream had by many).

If you aren't familiar with the plugin, you can find it here:
https://galvs-scripts.com/2016/09/13/mv-map-projectiles/

Here's my issue - and perhaps I am uniquely dense, but I have found this plugin incredibly difficult to understand.

Would be awesome if there existed a video tutorial. I told myself that if I ever fully understood this plugin I would take the time to create a tutorial, because I feel one should exist.

I have now set up a working laser gun for my character by clicking "enter." I was having trouble figuring out how to allow the character to read signs or talk to strangers, etc., without accidentally shooting them, as the "enter" key is also how one interacts with the world, so I created a conditional branch that would turn on and off the laser gun feature with a switch, which I could activate using a common button command (thanks to Yanfly's Button Common Events plugin).

I felt very smart.

But i got to thinking, "hey - if I can switch it on and off, then shouldn't I be able to use a button command to make it so that I can shoot different kinds of projectiles? Like, if I hit "H," then I will switch to being able to throw a hatchet when I hit 'enter,' or when I hit "F," I can switch my gun to flamethrower mode?"


But I can't seem to figure out how to make a second kind of projectile, or how to tell the game I want "this projectile not that one." They have premade IDs, which from what I can tell is the number beside the premade code you put in. For the one I tried to make, it was on slot 4 of the premades, so I put in the corner event:
If
Input.isTriggered('ok') && !$gameMap.isEventRunning()

Script: Galv.PROJ.quickDir(4);

But nothing happened.


I have soo many more questions.

I set a laser sound effect to go off when I fire the gun - but I have no idea where the sound effect for hitting the target or hitting a wall is coming from. There is no sound in the demo. I would like to be able to change the sound it makes when it hits a target but I have no idea how to.

Now, obviously I could copy the laser for the "mouse" attack from the demo, and use that as my alternative laser, but I would like to be able to learn how to make new projectiles that I can switch between, that will be activated using the same button. I now know how to switch my lasers off and on, using Button Common Events , I'd just like to be able to switch from "rapid fire," to "shotgun," to "beam," etc.

This is a long and rambling post -- and given as my last attempt to post a question on this board was deleted without a reason given by a moderator, I don't know that this one will be seen either.

I have attached a photo of my premade projectile, as well as the event command on the map that I thought -should- activate it.
 

Attachments

bazrat

Pixel Game Maker MV
Veteran
Joined
Oct 15, 2018
Messages
240
Reaction score
168
First Language
English
Primarily Uses
Other
The help file is your friend with this plugin. Galv did a pretty good job laying out each argument and gave multiple examples with explanations. Take a week to really learn this plugins in and outs (lots of trail and error).

Your hit sound is coming from animation 1 which you have in the setup. The “1” after the ‘bullet0(8,5)’ is what animation plays when the projectile hits something.
 

JayIsrael

Veteran
Veteran
Joined
May 16, 2019
Messages
102
Reaction score
28
First Language
English
Primarily Uses
RMMV
The help file is your friend with this plugin. Galv did a pretty good job laying out each argument and gave multiple examples with explanations. Take a week to really learn this plugins in and outs (lots of trail and error).

Your hit sound is coming from animation 1 which you have in the setup. The “1” after the ‘bullet0(8,5)’ is what animation plays when the projectile hits something.
Thank you for this!

I have read that help file over and over again and while it has been very helpful, it is also written in such a manner as to be very hard to follow.
What you just explained regarding the meaning of "1" when after an image is in there, but it isn't in the initial explanation of the code, and when it does finally get stated it is "it will play animation 1 on contact," without explaining that animation 1 is one of the pre-made animations in set up, after already having established earlier in the file that the bullet itself is animated which is why it has the (8,5) after it. It goes from saying on animated images earlier in the help file, "The graphic can have parenthesis that contains frames and speed.

imageName(frames,speed)... eg: bullet(8,5)," to then introducing a mention of an animation that comes on the line immediately after the bullet(8,5) animation, that is simply referred to as "1."

I am either very dense, or this terrific app has an unusually hard to follow help file.

And yes - after looking at the file once again, I am still not seeing how I identify to the game, that I am wanting to use a different projectile. The help file states that the second to last number is a Pid or projectile identifier, but when using that Pid (in this case 4) in the
Galv.PROJ.quickDir(4); script call, it doesn't seem to have any impact.

Now the mouse parameter ends with
-1,'m',8,6,'phaserblast',1,'|c(1),e,S(1:on)',[2],null,null,666

According to the help file, the second to last number should be the PID, but it is left "null" here, and the last number should be the size, but I do not think the size of this projectile is 666, and from other context clues, I determined that 666 must be this premade's pid (the script call to block this attack has a 666 as the pid, so) however, the script call to make this pre-made active is
Galv.PROJ.quickTar(3);
not
Galv.PROJ.quickTar(666);

Now 3 is the number it is on the list of premades, and it seems to be the only number that connects Galv.PROJ.quickTar(3) with that pre-made parameter, so I assumed that this must be how I tell the game which premade to use, but that isn't working either.

It seems like it is inconsistent whether the last number is the size, or the second to last number is the PID, etc.
 

bazrat

Pixel Game Maker MV
Veteran
Joined
Oct 15, 2018
Messages
240
Reaction score
168
First Language
English
Primarily Uses
Other
Help file:
Code:
pid = an identifier number id for the projectile. Left blank it will default to 1. This is used for events to determine if the projectile will go through or contact them (more below)
PID is used to determine what projectiles hit events and which dont. Inside events you can have comment like:
Code:
<projBlock:3>
that means that any projectile with a PID of 3 will pass through the event. This is really the only thing that confused me at first because projBlock sounds like it should be blocking it, but its just allowing the projectile to pass through the event and not effect it.

The rest of your post was really hard to understand, sorry.
 

JayIsrael

Veteran
Veteran
Joined
May 16, 2019
Messages
102
Reaction score
28
First Language
English
Primarily Uses
RMMV
Well yeah, I'm trying to explain an issue I don't understand, so everything I say is going to sound like gobbly gook to someone who actually knows what they are talking about (that being you,).
Thank you for your help. Your patience and even attempting to help me understand this, is saintly.
So PID refers to what projectiles hit / don't hit, not the projectile itself.
TID refers to who is shooting the projectile, I think?
Galv.PROJ.quickTar(x); is supposed to be in the corner of the map, as a script, and the X should tell the game that you want the player to be where this projectile is coming from.
I am trying to find out how I can tell the game, "I don't want to use this pre-made projectile to fire on my enemy, I want to use this other one I made."
Am I still saying gobbly gook?
I do not understand how the game differentiates between one projectile and another.
 

bazrat

Pixel Game Maker MV
Veteran
Joined
Oct 15, 2018
Messages
240
Reaction score
168
First Language
English
Primarily Uses
Other
Ok, now I think I'm understanding you more. So in your example
Code:
Galv.PROJ.quickTar(x);
x is referring to the premade number that you set up in the plugin parameters. So if you setup the projectile under premade 1 in the plugin parameters then you would put a 1 where x is. So like this
Code:
Galv.PROJ.quickTar(1);
, that will shoot projectile made in premade 1.

And incase I really didn't understand you lol, you place a 0 in the TID portion of the script and that means the projectile comes from whatever event is calling this script.
 

JayIsrael

Veteran
Veteran
Joined
May 16, 2019
Messages
102
Reaction score
28
First Language
English
Primarily Uses
RMMV
Okay - that was my initial thought. However - when I have that on, for pre-made 4, nothing happens.

I have attached an image of the script call on the map - and an image of the premade 4. Can you see my error? Screen Shot 2019-05-20 at 4.30.17 PM.png Screen Shot 2019-05-20 at 4.26.59 PM.png Screen Shot 2019-05-20 at 4.30.17 PM.png
 
  • Like
Reactions: J-G

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

SOC
If the VisuStella videos are using the MZ RTP tilesets... I'm really disappointed. MV's look so much better. I hope it's easy to convert MV tiles to MZ.
If this thing end to be good enough, I'll be pleased to release it there for free (looong to be completed...).
And back. Trying to work online with no internet for 1.5 days was...interesting. I felt like a character in a old Sierra game trying to find internet due to all the hoops I had to jump through just to get online for work.
grief... if MV didn't have certain plugins already, I think I'd upgrade to MZ. seeing like 10 MV plugins in 1 MZ one is hilariously convenient lol.
Have you already checkes out my mapping tutorial on the blog? I would love to hear your feedback and things you'd like to see in the future!

Forum statistics

Threads
100,740
Messages
979,006
Members
132,364
Latest member
skyfix333
Top