RPG Maker Forums

Universal Remote Control
by Dahlys

Search Engine, Mass Data Retrieval, Mass Self Switch/Variable Setting


a.k.a Remote Event Counting and Control by Name v2.0, but literally already a completely different beast​

Introduction and Features
"Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk, agh burzum-ishi krimpatul" - J.R.R Tolkien
Live Search Engine: Search In-game for Groups of Event IDs by setting conditions, using their names, notes and even self-switches! Do searches even in conditional branches!

Mass Data Retrieval: Get custom self switch values quickly and use them in conditional branches. Get the values of multiple self switches/variables and store them in a variable. Quickly obtain a namelist/notelist of all events on the map, or a subset defined by a source array.

Remote Control: Remotely change the values of self switches/variables en masse and set conditions for the change. No more need for eventIds, use their Names and Notes.

Search, Get and Manipulate: Yanfly's self switches and self variables en masse. Hime's self variables en masse.

How to Use

Download the .js file at Github

Put it in your plugin folder and activate it in your game. There is no help file in the plugin, because it would be an insurmountable wall of text with 40+ different functions, each with script calls, plugin commands, and different parameters.

Use the following page instead for a plugin guide: https://dahlys.000webhostapp.com/dahlysRemoteControl.html

The guide is currently a massive wall of text but I will add pictures gradually. There are too many things in there to do it all at once.

Demo - Assassin's Creed Style Guard AI Detection using URC

Download Demo Here

3 Switches, 5 Variables, and 6 Common Events. That's all it takes to pull off Assassin's Creed style Guard AI Detection. Guards get suspicious when you loiter around them, culminating in an all-out chase unless you go away. Murder someone in public? The witnesses running away/chasing you will report you to the guards. Trying to walk into a bank? Get accosted at the door. Need to escape? Go to a hiding place for 10 seconds. A warning though, you will be found if guards are near your hiding place. No one saw you murdering somebody? Muhahahaha yaaaaay.

◆Comment:Mysteriously fails without Wait
◆Wait:10 frames
◆Comment:Group Events by their Identity
◆Control Variables:#0001 All Living NPC = this.SearchNotes('NPC', 0, 0, '!this.get(\"Dead\", eventId)');
◆Control Variables:#0002 All Guards = this.SearchNotes('Guard', 0, 0, 'S1')
◆Control Variables:#0003 Normal Guards = this.SearchNotes('Normal Guard', 0, 0, 'S2')
◆Control Variables:#0004 Bank Guards = this.SearchNotes('Bank Guard', 0, 0, 'S2')
◆Comment:Check if Hostile Guards Mode
◆If:Guards Guards! is ON
◆If:Hiding is ON
◆Comment:Player is hiding, low detection range
◆Comment:Guards, not chasing, show balloon before they start
◆Control Variables:#0005 Temporary = this.SearchCondition('!this.get(\"Chase\", eventId) && Galv.DETECT.event(eventId,3,false)', 0, 0, 'S2')
◆Script:var angrybirds = $gameVariables.value(5);
: :if ( angrybirds.length > 0 ) {
: : for ( i = 0; i < angrybirds.length; i++ ) {
: : $gameMap.event(angrybirds).requestBalloon(5);
: : }
: :}
◆Comment:If not chasing, start chasing player when player gets close
◆Script:this.SetSSw('Alert', false, 'S2', 'thisM', 'this.get(\'Alert\',eventId) && Galv.DETECT.event(eventId,3,false)')
: :this.SetSSw('Chase', true, 'S2', 'thisM', '!this.get(\'Chase\',eventId) && Galv.DETECT.event(eventId,3,false)')

:Else
◆Comment:Player in full sight, high detection range
◆Comment:Guards, not chasing, show balloon before they start
◆Control Variables:#0005 Temporary = this.SearchCondition('!this.get(\"Chase\", eventId) && Galv.DETECT.event(eventId,5,false)', 0, 0, 'S2')
◆Script:var angrybirds = $gameVariables.value(5);
: :if ( angrybirds.length > 0 ) {
: : for ( i = 0; i < angrybirds.length; i++ ) {
: : $gameMap.event(angrybirds).requestBalloon(5);
: : }
: :}
◆Comment:If not chasing, start chasing player when player gets close
◆Script:this.SetSSw('Alert', false, 'S2', 'thisM', 'this.get(\'Alert\',eventId) && Galv.DETECT.event(eventId,5,false)')
: :this.SetSSw('Chase', true, 'S2', 'thisM', '!this.get(\'Chase\',eventId) && Galv.DETECT.event(eventId,5,false)')

:End

:Else
◆Comment:Normal Guards AI
◆Comment:Get suspicious when player is too close
◆Script:this.SetSSw('Alert', true, 'S3', 'thisM', '!this.get(\'Alert\',eventId) && Galv.DETECT.event(eventId,3,false)')
◆Comment:Stop being suspicious if player goes away
◆Script:this.SetSSw('Alert', false, 'S3', 'thisM', 'this.get(\'Alert\',eventId) && !Galv.DETECT.event(eventId,4,false)')
◆Comment:All Guards AI
◆Comment:Attack when player next to guard
◆Script:this.SetSSw('Chase', true, 'S2', 'thisM', '!this.get(\'Chase\',eventId) && Galv.DETECT.event(eventId,1,false)')

:End

This isn't a plugin that works great on its own. The demo comes with:
  • Galv's event detector, move route extras, timed message popup
  • Yanfly's event encounter aid, force advantage, event mini label, and gab window
  • Hime's custom page conditions, self variables
Thanks to them all too! Please contact me if you're interested in using the demo's mechanics. Hopefully this demo will show you the potential of URC.

FAQ

Constant bug-fixing is happening on Github. Go download the latest er... beta.

Terms of Use

Credit Dahlys for the plugin. It is free to use for commercial and non-commercial games. I'd like you to send me your games but that is entirely optional. I thank Yanfly and Hime for their useful self variable plugins that made this degree of control over rmmv possible. I also thank Soulpour777 for his plugin writing tutorials. Last but not least, Enterbrain for RMMV.
Knowledge is power and it can command obedience. A man of knowledge during his lifetime can make people obey and follow him and he is praised and venerated after his death. Remember that knowledge is a ruler and wealth is its subject.
— Imam Ali
Important

I need someone with some coding knowledge to help me write a more readable help file.

p.s. no copyright infringement from random references intended. video music was recorded from my piano

Latest Threads

Latest Posts

Latest Profile Posts

Our latest feature is an interview with... me?!

People4_2 (Capelet off and on) added!

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!
one bad plugin combo later and one of my followers is moonwalking off the screen on his own... I didn't even more yet on the new map lol.

Forum statistics

Threads
106,035
Messages
1,018,450
Members
137,820
Latest member
georg09byron
Top