dopan

Veteran
Veteran
Joined
Mar 27, 2020
Messages
1,330
Reaction score
713
First Language
German
Primarily Uses
RMMV
@Bolonskiy pls avoid double posting (forum rules), use the edit function instead. thx

and if you dont have JS knowledge you should use any demo as base for your project, because these have proper plugin orders ect
(some of the srpg plugins you use are outdated and the plugin order in general looks not very good)
In general ,i recommend to put all yep plugins first, then all the srpg plugins that you use, than all other plugins..
---
@Aurawhisperer
about max range no idea i never tried.
about the villager, if its an event you can delete/erase it , chests are events aswell..
If the villager is not an event than pls explain what it is
(i am 99% sure it must be an event, because i have no clue how else you could add a villager..of curse you could also make it a weak "auto actorUnit" with movement restrictions, but than you could aswell delete its event & add the deathState)
 
Last edited:

Aurawhisperer

Veteran
Veteran
Joined
Jun 10, 2015
Messages
505
Reaction score
31
First Language
English
Primarily Uses
RMMZ
Can't you just erase the NPC? $gameMap.event(X).erase();
Or set opacity to 0? $gameMap.event(X).setOpacity(0);
Or set to null (risky)? $gameMap._events[X] = null;
Or set a selfSwitch on? $gameSelfSwitches.setValue([$gameMap.mapId(), 'A', X] true);
Hmmm I can try. Just need to figure out how to trigger that between the multiple enemies and villagers.

Also, need to figure out the freeze issue I am having with srpgRange.

@dopan The villagers are events. I just don't like calling them actors because they're not part of the party. They're bystanders is all that the player would want to protect.
 

boomy

Veteran
Veteran
Joined
Jan 6, 2013
Messages
226
Reaction score
217
First Language
English
Primarily Uses
RMMV
Just need to figure out how to trigger that between the multiple enemies and villagers.
I'm guessing your issue is getting the NPC to disappear when an enemy unit lands on a specific time? You could make an event with the afterAction type (I think the tag is <type:afterAction>) which runs after every action. Then see if an enemy is on a particular square:

$gameMap.eventsXy(X,y).forEach( function (a) {
If(a._srpgType== 'enemy') {
//Erase NPC using what ever method you like
}
} );

You could also add a wait command as well as move the player to set square to move the camera to the action
 

dopan

Veteran
Veteran
Joined
Mar 27, 2020
Messages
1,330
Reaction score
713
First Language
German
Primarily Uses
RMMV
@ Aurawhisperer

there is a script to calculate the distance betwen events, you can google it or search in this thread.. its not "srpg related" , its a "rpg maker mv related" script
(sry for not posting that script, i am tired of explaining the same stuff over and over)

you will also need the script that can check if an event is an enemy type, which can also be found in this thread
(basicly boomy just showed one option for this,one post above this post)

than you can use that script as trigger on the after action phase for the timing
(like boomy recommended)


so that if the distance between "villager event" and "enemy type event" is 1 (or whatever you choose), the trigger will execute the deleting of the villager event..
and that will happen after the enemy action , more detailed the system will check the distance ect in every after action phase

you could aswell use the "end of turn" as timing trigger, that happens before the next player turn starts..
(thats what other known mainstream srpg games do, probably to avoid fps drops caused by to much unnecessary system checks)

2023-03-31 07_36_51-ID_004 - Ereignis-Editor.png
----
@ all
In generell i want to recommend for every srpg user, to learn enough JS which is rpg maker related in order to be able to solve your wishes..
The rpg maker is not made for srpg by default, thats why its more complicated to build srpg games with the rpg maker compared to "normal" rpg-maker-games, and knowledge of JS is required sooner or later anyway.
If anybody is not ready to learn JavasScript, than learn to have wishes which are easier to solve
 
Last edited:

Aurawhisperer

Veteran
Veteran
Joined
Jun 10, 2015
Messages
505
Reaction score
31
First Language
English
Primarily Uses
RMMZ
I see. Thanks for both of your inputs. It's just challenging when using a game engine to execute this vs writing the code from scratch and testing it within the program itself.

Edit: Tested the srpgRange. Seems like the plugin counts all the squares around its range to determine whether there's a target or not, which is why it causes the freezes if the number is high... gamebreaker for me on this. Need to figure out what to do next...
 
Last edited:

TheLastYuriSamurai

TheLastYuriSamurai
Veteran
Joined
Dec 26, 2013
Messages
162
Reaction score
232
First Language
English
Primarily Uses
RMMV
-------- @ ALL
for Option 2:
i just showed the needed script ,but it was in my 2nd edit so most people could have missed it #1,855
(checks all units for that poison state and use gain -hp on affected units)
JavaScript:
for (var i = 1; i <= $gameMap.events().length; i++) {
     var battleunit = $gameSystem.EventToUnit([i]);
     var eventunit = $gameMap.event([i]);
     if (battleunit && eventunit && (battleunit[0] === 'actor' || battleunit[0] === 'enemy') && (!battleunit[1].isDead())) {
         if (battleunit[1].isStateAffected(checkId)) {
             battleunit[1].gainHp(addId);battleunit[1].startDamagePopup();
         }
    }  
};


// this will check all units for a state and add hp gain to them if affetected

// you must insert the STATE ID to "(checkID)" and the gain HP number to "(addID)"

// gain hp number can be - value aswell

//example :state 4 , -20 hp gain
for (var i = 1; i <= $gameMap.events().length; i++) {
     var battleunit = $gameSystem.EventToUnit([i]);
     var eventunit = $gameMap.event([i]);
     if (battleunit && eventunit && (battleunit[0] === 'actor' || battleunit[0] === 'enemy') && (!battleunit[1].isDead())) {
         if (battleunit[1].isStateAffected(4)) {
             battleunit[1].gainHp(-20);battleunit[1].startDamagePopup();
         }
    }  
};
the only difference to boomys explanation is, that it doesnt call a common event.
The script checks the state and uses "hp gain" on states affected Units. This script can be triggered in the <turnEnd> event.
Or with a Common event that is triggered by Switches in the <turnEnd> event.
(however it fits better in your project)
--------
@moldy

the autolife plugin wasnt made by me i just edited it for srpg compatiblety, but here it is.
(attached to the posting)
-> my edit mostly just added srpgs style of calling animations depending on what was needed ..
with if conditions depending on SV or mapBattle Mode.


about ActorUnit plugin Issue:
did you use the plugin scriptcalls that are used to check IDs of all Units and stores them?

edit info screenshot:
View attachment 205000
Explanation:
why do i trigger this one time at "battle start" and one time at "post action"??

-> because units can be summoned, get killed/revived or whatever ..so i will need the post action anyway^^

-------- @ ALL
About "performCollapse()" if SRPG Units die without the battleAction that does all the scriptcode work..
they will need the "performCollapse();" -function, same goes with the "startDamagePopup();" -function when they get dmg..

example code:
JavaScript:
$gameSystem.EventToUnit(EventID)[1].startDamagePopup();
// shows dmg popup if the timing is correct
$gameSystem.EventToUnit(EventID)[1].performCollapse();
// performs the unit Death if hp is 0 and no battleaction could trigger it

//$gameSystem.EventToUnit(EventID)[1]
// this scriptcall gives us access to the BattlerUnit,it is used very often..
// while "$gameMap.event(EventID)" only represents the Event of that Unit
Is this plugin still needed to make a poison state kill a unit properly (where the unit then disappears and counts as "defeated")? Apologies Boomy I searched through the forum and the plugin can't be opened on my laptop.
 

dopan

Veteran
Veteran
Joined
Mar 27, 2020
Messages
1,330
Reaction score
713
First Language
German
Primarily Uses
RMMV
Is this plugin still needed to make a poison state kill a unit properly (where the unit then disappears and counts as "defeated")? Apologies Boomy I searched through the forum and the plugin can't be opened on my laptop.
like i sayed in the post above, my edited srpg-core fixed that issue, other srpg core doesnt..
( i cant change that most fixes which we did in this forum where not implemented by the original srpg_dev, .. )
 

TheLastYuriSamurai

TheLastYuriSamurai
Veteran
Joined
Dec 26, 2013
Messages
162
Reaction score
232
First Language
English
Primarily Uses
RMMV
like i sayed in the post above, my edited srpg-core fixed that issue, other srpg core doesnt..
( i cant change that most fixes which we did in this forum where not implemented by the original srpg_dev, .. )
Thank you! And I can imagine how annoying that is! You have my appreciation!
 

dopan

Veteran
Veteran
Joined
Mar 27, 2020
Messages
1,330
Reaction score
713
First Language
German
Primarily Uses
RMMV
Of course its annoying, but just to make that clear i dont blame, the jap dev or anyone else for this problem,,,
We speak different languages, everybody has its own stuff to do and we dont use the same forum ect..
We can be happy, that these plugins were translated and that we get the chance to use them and work on them (making edtis/fixes/upgrades ect)..
And even if we all would speak and use the same language it would still be a lot of work to check all new plugins, make compatibility edits and implement all fixes ect

..and lets not forget that the SRPG Plugin Terms are really friendly (most are MIT or something similar) and dont have paywalls ..

edit.
However what i am trying to say, is that depending on what game anybody wants to build it will sooner or later require JavaScript knowledge anyway, in order to solve the individual wishes(like i mentioned a few posts above).. its not so hard to learn, i started srpg with zero JS knowledge, and i guess thats the same for most of us .. and i am sorry that we cant make everything perfect for new srpg users/devs ,but thats how it is.
 
Last edited:

xabileug

Veteran
Veteran
Joined
Jul 1, 2014
Messages
602
Reaction score
210
how to make breakable tiles? like walls, trees, brush that can be cleared for path? then should not be enemy units.
 

TheLastYuriSamurai

TheLastYuriSamurai
Veteran
Joined
Dec 26, 2013
Messages
162
Reaction score
232
First Language
English
Primarily Uses
RMMV
how to make breakable tiles? like walls, trees, brush that can be cleared for path? then should not be enemy units.
I imagine you could make enemies that are set to not move and with suuuuper low hp?
 

dopan

Veteran
Veteran
Joined
Mar 27, 2020
Messages
1,330
Reaction score
713
First Language
German
Primarily Uses
RMMV
they should be event tiles, not enemies. enemies have HP, and will trigger the status window. and be part of the waiting list.
i think you cant by default,..
but you could build events and a special skill, which has a common event added..
That common event can be used to delete events that have a certain condition..
(like event name, or event note.. and a certain distance to the skill user or cursor/gamePlayer)..

i guess that would be the best solution to avoid having auto units or any units that mess around with the "enemy alive -list" or "actor alive list" ect


In the past i made "tree" units which were neutral auto actors team, and when they got the state "burning" , they would attack all units which are close, with fire.. also other trees or enemy/actor-Units..
That way the fire takes over to other trees.. and after some rounds burning they dissapeared..
But that solution had the problem that these units had turns & messed around with unit lists ect
I think manipulating events with special "if conditions" would be the better solution
Or you could make something similar like an empty treasure chest, that disappears when moving on it ..(like a trap, which is left when that event is gone)
 
Last edited:

Devildimos

I ruin memes for a living
Veteran
Joined
Jul 11, 2014
Messages
113
Reaction score
182
First Language
Eglish
Primarily Uses
RMVXA
Is there a way to lock the screen from moving to the enemy during the enemy turn?
Either disable is completely or use a switch.
If not, could someone help me find out how to disable it.
Thank you.
 

komodoturtle

Warper
Member
Joined
Dec 21, 2015
Messages
1
Reaction score
0
Primarily Uses
Is there anyway to change an actor sprite during battle?
Seems if you change the sprite set using "change actor images" it will only update after the battle.
Thanks
 

dopan

Veteran
Veteran
Joined
Mar 27, 2020
Messages
1,330
Reaction score
713
First Language
German
Primarily Uses
RMMV
Is there anyway to change an actor sprite during battle?
Seems if you change the sprite set using "change actor images" it will only update after the battle.
Thanks
yes you need to change the img of the EventUnit which is used in battle..
(by default this event gets its img from the actor data at battlestart)

there are several ways to do that, ..
-you can use different eventpages
-you can use script to change event img
..probably there even more ways which i dont think of at the moment--
-----
@Devildimos
you could try a cam control plugin, or script to fix the gameplayer position,(which is the cursor in battle)
but the cursor movement is also handled in the srpg core aswell, some other srpg plugin do also have influence.. In order to edit it in the srpg core , you would need to change the scripts in scene map update..
(that means its possible but JS knowledge required)

Or a easier way would be to make the Gameplayer not visible during enemy phase (or whenever you want it)..that way the cursor would still use its normal movement but without beeing visible.
- this can be archieved with changing opacity,..or changing gameplayer img to empty img,, or other ways which i dont think of at the moment
 
Last edited:

Devildimos

I ruin memes for a living
Veteran
Joined
Jul 11, 2014
Messages
113
Reaction score
182
First Language
Eglish
Primarily Uses
RMVXA
yes you need to change the img of the EventUnit which is used in battle..
(by default this event gets its img from the actor data at battlestart)

there are several ways to do that, ..
-you can use different eventpages
-you can use script to change event img
..probably there even more ways which i dont think of at the moment--
-----
@Devildimos
you could try a cam control plugin, or script to fix the gameplayer position,(which is the cursor in battle)
but the cursor movement is also handled in the srpg core aswell, some other srpg plugin do also have influence.. In order to edit it in the srpg core , you would need to change the scripts in scene map update..
(that means its possible but JS knowledge required)

Or a easier way would be to make the Gameplayer not visible during enemy phase (or whenever you want it)..that way the cursor would still use its normal movement but without beeing visible.
- this can be archieved with changing opacity,..or changing gameplayer img to empty img,, or other ways which i dont think of at the moment
thank you dopan.
I will try using yanfly stop movement plugin and see if that works out.
 

dopan

Veteran
Veteran
Joined
Mar 27, 2020
Messages
1,330
Reaction score
713
First Language
German
Primarily Uses
RMMV
thank you dopan.
I will try using yanfly stop movement plugin and see if that works out.
i am pretty sure that "galvs cam control" will work, in order to fix the screen itself..

but dont forget the cursor in battle is the"$gameplayer", so you need to fix this to a certain position, or make it Non-Visible..

yanfly stop movement plugin
-> i never used this yep plugin ,which you mentioned , so i dont know if that solves it..
If it doesnt because you put it on top of the srpg plugins , where yep plugins should be..
you could also try to put it below srpg plugins in the plugin manager..

(because it could be that the srpg core will overwrite the changes.. the system reads plugins by its order in the plugin manager, and if they use similar functions, the last one which was read will overwrite the others)
 
Last edited:

Devildimos

I ruin memes for a living
Veteran
Joined
Jul 11, 2014
Messages
113
Reaction score
182
First Language
Eglish
Primarily Uses
RMVXA
i am pretty sure that "galvs cam control" will work, in order to fix the screen itself..

but dont forget the cursor in battle is the"$gameplayer", so you need to fix this to a certain position, or make it Non-Visible..


-> i never used this yep plugin ,which you mentioned , so i dont know if that solves it..
If it doesnt because you put it on top of the srpg plugins , where yep plugins should be..
you could also try to put it below srpg plugins in the plugin manager..

(because it could be that the srpg core will overwrite the changes.. the system reads plugins by its order in the plugin manager, and if they use similar functions, the last one which was read will overwrite the others)
Thank you.
Yanfly stop movement sadly did not stop the player's movement, no matter the plugin's position.

Glav Cam Control sort of works though not what I was hoping for.
I wanted to still be able to move the screen around using the mouse during the enemy's turn without the screen sliding to each enemy.

This might be an additional plugin made for srpg. But when I put the mouse (cursor not "$gameplayer") near to the edge of the screen, the screen will slide that way.

Although I could work this Glav Cam Control. For now.
thank you again.
 

Latest Threads

Latest Posts

Latest Profile Posts

Feeling a tad frustrated designing one map of my project... MC is supposed to grab a key from inside a kofun to escape a certain area. Unfortunately, kofuns are cramped, dark and claustrophobic: not exactly many places to run and hide in horror games. :ysad:
When ya accidentally delete a whole map and saved before you realized.

We really need a recycle bin
How the fusion of Batman+Spider-Man would be? Be creative on your replies.
Farm is all but done!

Map007.png


FarmerYard.png

Might add a wagon or something towards the bottom but I think we're good to go. ^_^

Forum statistics

Threads
131,720
Messages
1,222,621
Members
173,465
Latest member
joshywa
Top