Universal Remote Control: Search, Retrieve, Control *Assassin's Creed Guard AI Demo Added* 09/25

dahlys

Meatbun
Veteran
Joined
Aug 28, 2017
Messages
95
Reaction score
99
First Language
English
Primarily Uses
RMMV
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
 
Last edited:

cunningorb

Veteran
Veteran
Joined
Jun 27, 2017
Messages
34
Reaction score
14
First Language
English
Primarily Uses
RMMV
Kudos for a unique plugin that many will find useful. Great video too. Can't wait to see how people use this
 

dahlys

Meatbun
Veteran
Joined
Aug 28, 2017
Messages
95
Reaction score
99
First Language
English
Primarily Uses
RMMV
I understand it's hard to see what URC is capable of. Thus, a demo has been added. Going through the mass of functions is boring, so I present you Assassin's Creed style Guard AI Detection.
 
Last edited:

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

Latest Threads

Latest Posts

Latest Profile Posts

Would be nice to pick color code that is not exclusively for message event
The Ace attorney series are so great games... But at the same time such a travesty.
Made a video showcasing a plugin (by Lanza) that adds 5 more weather effects to our MV games. :LZYsmile: Namely:
Ash-dust,
bloodrain,
Cherry Blossom Petals,
Hail,
and bubbles.

Forum statistics

Threads
103,239
Messages
998,301
Members
134,729
Latest member
Takufy
Top