QPlugins - Latest: QABS

Vetmora

Villager
Member
Joined
Aug 15, 2017
Messages
17
Reaction score
2
First Language
English
Primarily Uses
RMMV
Yes direction fix would be a great addition.

Also is there any plans for adding a flash enemy to the skill settings? Similar to what is currently available in the animations section where you can make the default enemy sprites flash.
 

Xalezar

Villager
Member
Joined
Dec 2, 2017
Messages
8
Reaction score
0
First Language
English
Primarily Uses
RMMV
Yes direction fix would be a great addition.

Also is there any plans for adding a flash enemy to the skill settings? Similar to what is currently available in the animations section where you can make the default enemy sprites flash.
Coincidentally, I've thrown together a really hacky target flash custom function. It's not the best way probably, but it seems to get the job done for now.

Step 1 The following code goes into my personal master plugin JavaScript file that I use to override other plugins or write my custom functions. It goes at the bottom of all my plugins to ensure it will be the last to run.

Code:
    Skill_Sequencer.prototype.targetFlash = function(action, targets) {
        if ( targets.length ) {
            // TODO: find more efficient way to make sprite blink
            targets[0].setOpacity(0);
            setTimeout( function(){ targets[0].setOpacity(0); } , 100 );
            setTimeout( function(){ targets[0].setOpacity(255); } , 150 );
            setTimeout( function(){ targets[0].setOpacity(0); } , 200 );
            setTimeout( function(){ targets[0].setOpacity(255); }, 250 );
            setTimeout( function(){ targets[0].setOpacity(0); } , 300 );
            setTimeout( function(){ targets[0].setOpacity(255); } , 350 );
            setTimeout( function(){ targets[0].setOpacity(0); } , 400 );
            setTimeout( function(){ targets[0].setOpacity(255); } , 450 );
        }
    }
I used targets[0] temporarily to just target the first enemy in the array of possible enemies within attack range. To target all enemies in range, you can use a loop iterating on variable i, and replace targets[0] with targets[i ]

Then I aliased the "startOnDamageTargetAction" function to add this extra switch case:

Code:
    var _Skill_Sequencer_startOnDamageTargetAction = Skill_Sequencer.prototype.startOnDamageTargetAction;
    Skill_Sequencer.prototype.startOnDamageTargetAction = function(action, targets) {
        var cmd = action[0].toLowerCase();
        if ( cmd === 'flash' ) {
            return this.targetFlash(action, targets);
        }
        _Skill_Sequencer_startOnDamageTargetAction.call(this, action, targets);
    };
Edited again to prevent action.shift() from happening twice. It seems if I use action[0] to reference the first action item but not remove it from the array, then action.shift() from the original plugin function can still run without error. Otherwise, action.shift() will return null, and toLowerCase() cannot be used on a null object, which throws an error. Oddly, the call() function at the end of this example runs even though there's a return statement above. Does anyone know why?

Please let me know if there's a better way to go about this anyone. Thanks.

Step 2

For the skill where you want this animation to happen, place somewhere between the <absOnDamage> note tag

Code:
target flash
 
Last edited:

Quxios

Veteran
Veteran
Joined
Jan 8, 2014
Messages
1,055
Reaction score
783
First Language
English
Primarily Uses
RMMV
@Arise what I was trying to get to is that you don't need to go to the Game_Interpreter, just call the function from the class. Seems like what you're doing in some cases is:
Game_CharacterBase > Game_Interpreter > Game_CharacterBase > QPathfind
There's no need for those 1st 2 steps since you can go from the Game_CharacterBase to QPathfind. So if 'this' returns the Game_CharacterBase, call the w.e. pathfind func u need from it, like 'this.chase(parameter)' and not create an interpreter to run a plugin command. If 'this' is the Game_Interpreter then use the .character(0) to grab the character and call it's pathfind func or run the plugincommand func and pass the args so it runs the qpathfind command

@Shiko it worked fine for me. Make sure you set the x and y or a bindTo

@melonkoi Atm no, you would need to create an addon. I have it this way so you can use those single frame enemies that are direction fixed but can still fire their skills in any direction

@Xalezar You'll need to find a better event spawning plugin, one that clones an event off a different map preferably .

@Suv It's intentional. That skill bar is more of a basic hud. It's not something I recommend anyone to actually use but to build off / make their own hud from.

@Vetmora Not without creating an addon @Xalezar's post is pretty much how it'd be done, though you didn't use the alias which I suggest you do.
Code:
   var _Skill_Sequencer_startOnDamageTargetAction = Skill_Sequencer.prototype.startOnDamageTargetAction;
   Skill_Sequencer.prototype.startOnDamageTargetAction = function(action, targets) {
       var cmd = action.shift().toLowerCase();
       if (cmd === 'flash') {
         return this.targetFlash(action, targets);
       }
      _Skill_Sequencer_startOnDamageTargetAction.call(this, actions, targets);
   };
 

HasdrubalBarca

Veteran
Veteran
Joined
Feb 4, 2015
Messages
161
Reaction score
56
First Language
English
Primarily Uses
Hey Quxios, I have a question. How do you set up region events on QEvents? I know on QuasiEvents you only needed to set up the comment <region:x> after you set up an event but this doesn't seem to be the case with the new QEvents.
 

Arise

Veteran
Veteran
Joined
Aug 31, 2016
Messages
132
Reaction score
19
Primarily Uses
@Quxios: I did some testing and it looks like the pathfinding has some issues when it has to run in diagonal. Like running between some diagonal tunnel. If the tunnel is oriented from left to right or top down all looks fine with pathfinding, but if the tunnel is rotated 45 degrees (isometric actually) the pathfinding seems to have issues as the character starts walking, walks a bit, then stops for 1 second (probably to recalculate the pathfind) then walks again and so on.
 

Vetmora

Villager
Member
Joined
Aug 15, 2017
Messages
17
Reaction score
2
First Language
English
Primarily Uses
RMMV
@Xalezar @Quxios Thanks for the help guys, much appreciated. However not exactly sure where to put the code in the QABS file?
 

jayray

Jay Ray Games and Art Design- Oklahoma City, OK
Veteran
Joined
Oct 13, 2013
Messages
136
Reaction score
97
First Language
English
Primarily Uses
RMMV
I have a question about your QMAP Editor - actually, a function request. I know a lot of people enjoy this editor because of the freeform tile-less ability to add items...

BUT, what about a snap-to-grid idea? where a map object can be forced to start at a grid point?

Just a thought, as I'm trying to create "super-Tiles of 10x10 as little mini-parallaxes and foregrounds and think this would be awesome to have.
 

Etori

Villager
Member
Joined
Jan 16, 2018
Messages
5
Reaction score
0
First Language
English
Primarily Uses
RMMV
Anyone know of a way of making specific events unable to move diagonally? I know that you can change the parameter to turn off diagonal movement altogether, but that doesn't really help here.

Also, is there anyway of making specific events restricted to grid movement?

Edit:

Another question - is there a way of detecting player/event pixel position? For example, for standard grid-movement, player/event position can be acquired through Control Variables (Map X/Y of Event/Player). However, I can't seem to find a way to find the X and Y *pixel* coordinates of events and players, which can be troublesome for eventing.
 
Last edited:

Suv

The average user
Veteran
Joined
Mar 2, 2016
Messages
97
Reaction score
53
First Language
Polish
Primarily Uses
There may be a problem with the collision detection for QMovement since last patch. It's suddenly possible to pass through some of the colliders I set up in MapEditor. I think it may be due to intersecting with other collision/interaction areas but I can't pinpoint the exact cause myself.

I'd post a screenshot but all those red layers make it unreadable.
 
Joined
Feb 18, 2015
Messages
515
Reaction score
256
First Language
English
Primarily Uses
RMMV
@Suv I have the same issue on one of my maps. They're both behind other QMap objects, but I have plenty of other maps where a QMap object behind another object still acts as expected.
I'm not sure if this is related to the issue @Suv mentioned, but the last time I checked one of my maps had a bizarre spot where it acted like it had a collider in a spot where there wasn't one (no events, no QMap objects, and the collider image didn't have anything there either).
 

Quxios

Veteran
Veteran
Joined
Jan 8, 2014
Messages
1,055
Reaction score
783
First Language
English
Primarily Uses
RMMV
QMap 2.0.1
  • Fixed issue with Map objects meta not being created. Should fix all issues with the map objects notes being ignored
Also forgot to mention here. But I'm slowly stopping support with my MV plugins. You can read more here.

@HasdrubalBarca I left region events out of QEvents. Was going to readd but ended up forgetting. Not sure if I will add back in though

@Arise It might depend on how wide that angled path is. Because it's still calculating by grid spaces, so if there's not enough room it can fail even though the character should fix ideally. Ex: if I made a character with a collider 48x48 and had a path that was 48 pixels tall but had that path offset a bit, the pathfind can fail.

@Vetmora You can put it inside it's own file (open any txt, paste it in and set the ex as .js, or if you saved it as a .txt just rename it to .js) and load it to the plugin manager. Or paste it at the very bottom of QABS, though note you'd have to paste it every time there's an update

@jayray It originally had grid snapping but it didn't work too well. I do plan on readding it though

@Etori You'd have to make changes to the plugin to enable/disable options for specific events.
To get pixel coordinates you can use the .px / .px values. So like:
$gamePlayer.px

@Suv Should be fixed in 2.0.1

@GameFire are you still able to find that spot / can it be reproduced?
 
Joined
Feb 18, 2015
Messages
515
Reaction score
256
First Language
English
Primarily Uses
RMMV
Well, that's interesting. Looks like QUpdate isn't working for me anymore. So I'm having to go through the github repo and manually find all the plugins that I need to update. Will update my post once all the plugins are updated, since with just updating to QMap 2.0.1 my game is stuck on loading after selecting "new game".
Edit: Okay, I think I updated them all. QUpdate still doesn't work, though. I can hit f9 on the title screen and it pulls up a window. The window's just empty. And still, selecting "new game" just leads to the game being stuck on loading.
 
Last edited:

Arise

Veteran
Veteran
Joined
Aug 31, 2016
Messages
132
Reaction score
19
Primarily Uses
Yes, I think is something fishy with qupdate under nwjs. It seems the ssl cert has some issues and as a result it refuse to load it.

Failed to load resource: net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH

GET https://quxios.github.io/data/pluginsMin.json net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH
QUpdate.js:111 QUpdate.getRepoPlugins
QUpdate.js:243 (anonymous function)
QUpdate.js:257 (anonymous function)
 
Last edited:

Suv

The average user
Veteran
Joined
Mar 2, 2016
Messages
97
Reaction score
53
First Language
Polish
Primarily Uses
Didn't help unfortunately. I think my problem shows up only when an event overlaps a map object placed by your map editor.
 
Joined
Feb 18, 2015
Messages
515
Reaction score
256
First Language
English
Primarily Uses
RMMV
Turned off QMap, now the game doesn't get stuck loading after selecting "new game". But turning QMap back on makes the game go back to being stuck.
 

blakebishop1989

Villager
Member
Joined
Jun 26, 2014
Messages
27
Reaction score
4
First Language
english
Primarily Uses
Are there any plugin commands to make Qsprite render images? Maybe im missing something here.
 

BraveGhost

Villager
Member
Joined
Feb 8, 2018
Messages
8
Reaction score
0
First Language
English
Primarily Uses
RMMV
Ive encountered a strange problem, my part members are frozen in place when I start a playtest, the only plugins I have installed for this test are Qplus, Qmovement and Qabs
 

Suv

The average user
Veteran
Joined
Mar 2, 2016
Messages
97
Reaction score
53
First Language
Polish
Primarily Uses
I think I've read somewhere that the party members that follow the leader just don't work well with Qmovement (might have been other plugin though).
 
Joined
Feb 18, 2015
Messages
515
Reaction score
256
First Language
English
Primarily Uses
RMMV
Also, with the latest version of the QMap Editor (4.0.0), it seems I'm no longer able to type a . directly into the anchor point boxes. I can type it into something else and paste it into the box, at least.
 

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

Latest Threads

Latest Posts

Latest Profile Posts

Thanks to a post in a forum thread we can better create MV/MZ plugins in Haxe.
Latest video of my adventures in Kingdom Hearts 3~
Imagine every unfunny joke gets a laugh track, and it doesn't top until you genuinely laugh at that unfunny joke.
I miss lockdown already. Since the pubs reopened, there's been nothing but loudmouthed drunks wandering about my neighbourhood.
Twitter is making me embarrassed to be a Persona 5 fan rn
I don't wanna be called out when I say P5R is my favorite game :kaoswt2:

Forum statistics

Threads
99,557
Messages
966,707
Members
131,194
Latest member
keikoumonk
Top