Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD General Discussion
ekhart
Novice


Joined: 28 Aug 2008
Posts: 31

PostPosted: Sun Oct 02, 2022 5:27 am   

Rotating multi-row trigger possible?
 
See paste below:
The row at the bottom of the image with the Re In St We No and Fl is always there. The 2 letter symbols rotate. So In can be the first, second, etc symbol, but one of these symbols will be in one of these slots every time, same columns I guess it a better way to put it.

The rows above these rotate every few 'ticks' in the game, shifting to the left until hitting the end and then around to the far right side again to repeat.

The question I have is, would it be possible to make a trigger that could look for when this shifting graph on top has the part with the most columns of *'s above the In symbol and trigger (send 'y' to the game) (as shown below as well).


Code:

                                                                               
                    *                                                         
                   **                                                         
                   **                                                         
                   ***                                                         
                   ***                                                         
                  ****                                                         
                  ****                                                         
                  ****                                                         
                  ****                                                         
                  *****                                                       
                  *****                                                       
                  *****                                                       
                  *****                                                       
                 ******                                                       
                 ******                                                       
                 ******                                                       
                 *******                                                       
                 *******                                                       
                 *******                                                       
             *   *******  *                                                   
             ** ********  **                                                   
         *  *** ******** ***   *                                               
    **  *** *** ******** ***  **   *                                           
** *** **** ********************* ***  **  ***  **   *                         
-------------------------------------------------------------------------------
     |            |             |             |             |             |   
    Fl           In            Re            No            St            We
Reply with quote
chris123zugg
Apprentice


Joined: 23 Aug 2013
Posts: 175

PostPosted: Tue Oct 04, 2022 9:31 pm   
 
look up %pos
Reply with quote
ekhart
Novice


Joined: 28 Aug 2008
Posts: 31

PostPosted: Wed Oct 05, 2022 1:51 pm   
 
Ty. I was able to find the pos on this when testing, however I don't know how to make it only look at that row. Since it sends all 20 rows or so at a time with the graph and the line with the In, Re, etc on it it is running this for every one. Can I specify which row to have this look at?
Reply with quote
mikeC130
Apprentice


Joined: 03 Jul 2006
Posts: 110

PostPosted: Wed Oct 05, 2022 7:22 pm   
 
If you are searching for the peak, it only needs to look at the first row that holds any asterisks (unless you have very broad and slowly rising/falling peaks). Once you've captured that, you ignore the rest of the lines with asterisks and capture the bottom row of text (most likely using a multi-stage trigger) and do your processing of the symbols from there.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4692
Location: Pensacola, FL, USA

PostPosted: Thu Oct 06, 2022 3:03 pm   
 
Code:
#TR {(~*)} {#ADDKEY trends peak %pos(%1, %line)}
#COND {-------------------------------------------------------------------------------} {} {within|param=30}
#COND {^    (%w)           (%w)            (%w)            (%w)            (%w)            (%w)$} {
  #SWITCH (%1)
    ("Fl") {#ADDKEY trends Fl %pos(%1, %line)}
    ("In") {#ADDKEY trends In %pos(%1, %line)}
    ("Re") {#ADDKEY trends Re %pos(%1, %line)}
    ("No") {#ADDKEY trends No %pos(%1, %line)}
    ("St") {#ADDKEY trends St %pos(%1, %line)}
    ("We") {#ADDKEY trends We %pos(%1, %line)}
//Repeat this #SWITCH for %2, %3, and so on
  } {within|param=2}


Something like that should at least capture all the data into a DBvar

#SHOWDB @trends

Will display the data to the screen to see if it works, and then you can use those values comparatively to know what is currently on top. and see if we need to tweak any values by one to account for where the | on the line above is relevant to where the shortname starts.
_________________
Discord: Shalimarwildcat
Reply with quote
wilsonwisk
Newbie


Joined: 14 Mar 2023
Posts: 1

PostPosted: Tue Mar 14, 2023 10:15 am   
 
shalimar wrote:
Code:
#TR {(~*)} {#ADDKEY trends peak %pos(%1, %line)}
#COND {-------------------------------------------------------------------------------} {} {within|param=30}
#COND {^    (%w)           (%w)            (%w)            (%w)            (%w)            (%w)$} {
  #SWITCH (%1)
    ("Fl") {#ADDKEY trends Fl %pos(%1, %line)}
    ("In") {#ADDKEY trends In %pos(%1, %line)}
    ("Re") {#ADDKEY trends Re %pos(%1, %line)}
    ("No") {#ADDKEY trends No %pos(%1, %line)}
    ("St") {#ADDKEY trends St %pos(%1, %line)}
    ("We") {#ADDKEY trends We %pos(%1, %line)}
//Repeat this #SWITCH for %2, %3, and so on
  } {within|param=2}


Something like that should at least capture all the data into a DBvar

#SHOWDB @trends

Will display the data to the screen to see if it works, and then you can use those values comparatively to know what is currently on top. and see if we need to tweak any values by one to account for where the | on the line above is relevant to where the shortname starts.




thank you so much for info i think it will be work it also helpful for me i also will try it...
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD General Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net