• Visit Rebornbuddy
  • Trinity v1.6 - New Profile XML Tags

    Discussion in 'Trinity' started by GilesSmith, Oct 4, 2012.

    1. supermofo

      supermofo New Member

      Joined:
      Sep 14, 2012
      Messages:
      178
      Likes Received:
      0
      Trophy Points:
      0
      Why would you put an "optional" profile in a main profile :D

      The best way to deal with random stuff is to skip it.

      Chuck Norris Jr.
       
    2. GilesSmith

      GilesSmith New Member

      Joined:
      Jun 2, 2012
      Messages:
      1,564
      Likes Received:
      34
      Trophy Points:
      0
      If I didn't mis-understand you, I think you can achieve what you want with TrinityRandom with a range of 1 (to force it to a specific value, as a way to "set a variable"?)

      Code:
      <!-- Beginig of the profile -->
      <TrinityRandomRoll id="5555" min="5" max="5" />
      <TrinityRandomRoll id="6666" min="5" max="5" />
      
      <!-- Awful lot of code -->
      
      <TrinityIfRandom id="5555" result="5">
           <!-- Azmodan code-->
      </TrinityIfRandom>
      <TrinityIfRandom id="6666" result="5">
           <!-- KeepsLvl3code-->
      </TrinityIfRandom>
      
       
    3. Pkt

      Pkt New Member

      Joined:
      Oct 1, 2012
      Messages:
      37
      Likes Received:
      0
      Trophy Points:
      0
      Yep, I thought of that, and it would work. But in my experience some people have problems dealing with
      Code:
      <!--Continue profile="BigRed_CoreOnly.xml"/-->
      <Continue profile="BigRed_CoreAzmodan.xml"/>
      
      Imagine trying to make them understand that they have to change the min/max values of a random roll in the START_HERE in order to control an optional zone...
       
    4. AzureusPT

      AzureusPT New Member

      Joined:
      Sep 25, 2012
      Messages:
      439
      Likes Received:
      1
      Trophy Points:
      0
      I have a problem with the new XML tags. I'm running a profile than runs through Old Tristram Road and checks the possible Cellars. If one its found, it will go in, clear it and continue. For example I have the following for Damp Cellar:
      PHP:
      <!-- Check Damp Cellar -->
      <
      TrinityIfSNOInRange snoid="176007" range="40">
          <
      TrinityUseOnce id="333">
              <
      TrinityLog questId="1" output="Found Damp Cellar!" />
              <
      TrinityMoveToSNO questId="1" snoid="176007" pathPrecision="4" />
              <While 
      questId="1" condition="Zeta.ZetaDia.CurrentWorldId==71150">
                  <
      TrinityInteract questId="1" snoid="176007" />
                  <
      WaitTimer questId="1" WaitTime="2000" />
              </While>
              <
      TrinityMoveTo questId="1" x="109.04" y="130.4184" z="0.1000015" />
              <
      TrinityMoveTo questId="1" x="155.7926" y="131.6428" z="0.1000012" />
              <
      TrinityMoveTo questId="1" x="47.92988" y="131.4628" z="0.1000038" />
              <While 
      questId="1" condition="Zeta.ZetaDia.CurrentWorldId==106752">
                  <
      TrinityInteract questId="1" snoid="175467" />
                  <
      WaitTimer questId="1" WaitTime="2000" />
              </While>
              <
      TrinityMoveTo questId="1" x="2315.098" y="2562.739" z="27.1" />
          </
      TrinityUseOnce>
      </
      TrinityIfSNOInRange>
      The bot runs the profile with no problem, checks the Cellars and if found it prints the "Cellar found!" message in DB, enters it, clears it, exits it but once exited it prints againt the message and stops. The bot doesn't continue its path and DB reports as bot stopped. The rest of the path from Tristram to Old Ruins runs without any problem, so I'm guessing the problem might be inside the TrinityIfSNOInRange... Any clue what would be wrong in the TrinityIfSNOInRange tag?
       
    5. GilesSmith

      GilesSmith New Member

      Joined:
      Jun 2, 2012
      Messages:
      1,564
      Likes Received:
      34
      Trophy Points:
      0
      Not off-hand but I would say make sure you add "questID="1"" to *EVBRY* XML tag (except closing tags) - so <While questID="1" condition="... <TrinityIfSNOInRange questId="1" snoid.... <TrinityUseOnce questId="1"... etc. (but *NOT* in closing tags - so you still have "</TrinityIfSNOInRange>").

      Is the useonce ID (333) being used anywhere else?

      Try adding a TrinityLog between the closing tags of UseOnce and IfSNOInRange, and another after the whole thing, to see if it's reaching those points, eg;
      Code:
              <While questId="1" condition="Zeta.ZetaDia.CurrentWorldId==106752">
                  <TrinityInteract questId="1" snoid="175467" />
                  <WaitTimer questId="1" WaitTime="2000" />
              </While>
              <TrinityMoveTo questId="1" x="2315.098" y="2562.739" z="27.1" />
              <TrinityLog questId="1" output="Should now be successfully outside the cellar after clearing!" /> 
          </TrinityUseOnce>
          <TrinityLog questId="1" output="Outside the UseOnce tag for ID 333!" /> 
      </TrinityIfSNOInRange> 
      <TrinityLog questId="1" output="Outside the main If check for cellar in range!" /> 
      
      Just to help determine at exactly which point things break down.
       
    6. AzureusPT

      AzureusPT New Member

      Joined:
      Sep 25, 2012
      Messages:
      439
      Likes Received:
      1
      Trophy Points:
      0
      Thanks, I will try to test it that way to see if it works or where is it failing.

      Also another thing, since I'm using TrinityMoveTo and sometimes I've found the bot jumps one point since it just passed through while fighting mobs, is there a way to force the bot to obey an specific TrinityMoveTo despite having passed nearby?
       
    7. GilesSmith

      GilesSmith New Member

      Joined:
      Jun 2, 2012
      Messages:
      1,564
      Likes Received:
      34
      Trophy Points:
      0
      I will add a noskip optional parameter for TrinityMoveTo next version.
       
    8. bodosko

      bodosko New Member

      Joined:
      Sep 18, 2012
      Messages:
      173
      Likes Received:
      1
      Trophy Points:
      0
    9. Qone

      Qone New Member

      Joined:
      Jan 15, 2010
      Messages:
      59
      Likes Received:
      0
      Trophy Points:
      0
      there is 2 things i noticed 1st is that it keeps spamming sprint when TP to town and 2 there is something wrong with fury management it takes more time for it to start using ww. i know maype its for slower cpus but can u add option so it starts using ww when fury is like 40%
       
    10. AzureusPT

      AzureusPT New Member

      Joined:
      Sep 25, 2012
      Messages:
      439
      Likes Received:
      1
      Trophy Points:
      0
      Weird behaviour... With this code:
      PHP:
      01    <!-- Musty Cellar -->
      02    <TrinityIfSNOInRange questId="1" snoid="176007" range="50">
      03        <TrinityUseOnce questId="1" id="111">
      04            <TrinityLog questId="1" output="Found Musty Cellar!" />
      05            <TrinityMoveToSNO questId="1" snoid="176007" pathPrecision="4" />
      06            <While questId="1" condition="Zeta.ZetaDia.CurrentWorldId==71150">
      07                <TrinityInteract questId="1" snoid="176007" />
      08                <
      WaitTimer questId="1" WaitTime="2000" />
      09            </While>
      10            <TrinityMoveTo questId="1" x="101.7225" y="119.4111" z="0.1000005" name="Musty Cellar #1" />
      11            <TrinityMoveTo questId="1" x="155.6693" y="60.14513" z="0.1000001" name="Musty Cellar #2" />
      12            <TrinityMoveTo questId="1" x="110.495" y="61.63305" z="0.1000003" name="Musty Cellar #3" />
      13            <TrinityMoveTo questId="1" x="101.7225" y="119.4111" z="0.1000005" name="Musty Cellar #4" />
      14            <TrinityMoveTo questId="1" x="31.35483" y="120.6416" z="0.3730062" name="Musty Cellar #5" />
      15            <While questId="1" condition="Zeta.ZetaDia.CurrentWorldId==80730">
      16                <TrinityInteract questId="1" snoid="175467" />
      17                <WaitTimer questId="1" WaitTime="2000" />
      18            </While>
      19            <TrinityMoveTo questId="1" x="2397.397" y="2795.226" z="27.1" name="Return to road #1" />
      20            <TrinityLog questId="1" output="Outside Cellar" />
      21        </TrinityUseOnce>
      22        <TrinityLog questId="1" output="Outside UseOnce for ID=111" />
      23    </TrinityIfSNOInRange>
      24    <TrinityLog questId="1" output="Outside TrinityIf for ID=111" />
      The bot goes in, out and gets stuck in the TrinityUseOnce. This is the output on DB:
      Code:
      [22:31:36.536 N] Found Musty Cellar!
      [22:31:39.006 N] ========== Grid segmentation resetting!!! ============
      [22:32:03.776 N] ========== Grid segmentation resetting!!! ============
      [22:32:05.656 N] Outside Cellar
      [22:32:05.726 N] Found Musty Cellar!
      Any idea why does the bot jump from line 20 to 04? DB reports TrinityUseOnceTag ID: 111 IsDone: False.

      If I remove the TrinityIfSNOInRange and I run again the bot, the behaviour is more or less the same. It goes in, cleans, goes out and stays there waiting for a miracle or something...
      Code:
      [22:40:43.972 N] Found Musty Cellar!
      [22:40:46.272 N] ========== Grid segmentation resetting!!! ============
      [22:41:01.212 N] ========== Grid segmentation resetting!!! ============
      [22:41:03.122 N] Outside Cellar
      [22:41:03.172 N] Found Musty Cellar!
      It hungs in IfSNOInRange tag.
       
    11. bodosko

      bodosko New Member

      Joined:
      Sep 18, 2012
      Messages:
      173
      Likes Received:
      1
      Trophy Points:
      0
      Hey Giles, any plans to implement Stuck Handling tags, like death handling?
       
    12. GilesSmith

      GilesSmith New Member

      Joined:
      Jun 2, 2012
      Messages:
      1,564
      Likes Received:
      34
      Trophy Points:
      0
      Hmmm, how would they work, compared to the useonce stuff etc.?
       
    13. bodosko

      bodosko New Member

      Joined:
      Sep 18, 2012
      Messages:
      173
      Likes Received:
      1
      Trophy Points:
      0
      I mean, right now, when running a profile and bot dies, Trinity Death Handling click revive and reload the profile for you, thus we can use TrinityRunOnce for handling where the bot would go now.
      But if bot get stuck for too much time, Trinity just leaves the game and start all over again, losing nefalem, time, etc...

      If we had some tag to config how Trinity handle stucks, it would just reload the profile, so we could use UseOnce again for better handling.
      For example
      Code:
      <TrinityHandleStuck maxtries="8" />
      So if reachs 8 tries of unstucking, Profile is reloaded, without resetting Trinity IDs (just like TrinityHandleDeath).

      Another way would be checking stuck just inside a tag, but I don't know if its possible, and it could be easily done with fore mentioned <TrinityHandleStuck maxtries="8" /> with some TrinityUseOnce. But seems nice :p
      Checking stuck just inside a tag eample:
      Code:
      <TrinityIfStuck maxtries="8">
         <!-- moveto some coords -->
         <!-- ExploreArea a dungeon -->
      </TrinityIfStuck>
      So if bot gets stuck inside that tag for 8 tries, it just skips to next part.
       
    14. A_dude

      A_dude New Member

      Joined:
      Oct 2, 2012
      Messages:
      26
      Likes Received:
      0
      Trophy Points:
      0
      Hey Giles, Im trying to use some of your new XML tags and running into a problem. Hoping you can offer some insight if you have a moment to take a look. With newest DB supposedly being able to explore random dungeons I figured I'd give Vault Of Assassin a try being its so elite rich. I can't get it to find VOA though.
      It runs good until I try to use the trinitymovetosnoid tag where it just stops and stands there. I also tried it using trinityif and the explore area tag with the same outcome. Im new at this and trying to figure out if DB is acting up, the tags aren't working properly, or if I'm just an idiot and I'm not using them correctly.
      Any other ways to make this work im not thinking of?
       

      Attached Files:

      • VOA.xml
        File size:
        4.2 KB
        Views:
        84
      • VOA.xml
        File size:
        1.5 KB
        Views:
        76
      Last edited: Oct 20, 2012
    15. supermofo

      supermofo New Member

      Joined:
      Sep 14, 2012
      Messages:
      178
      Likes Received:
      0
      Trophy Points:
      0
      edit
       
      Last edited: Oct 21, 2012
    16. bodosko

      bodosko New Member

      Joined:
      Sep 18, 2012
      Messages:
      173
      Likes Received:
      1
      Trophy Points:
      0
      I don't know if your understood what exactly I want. But if Trinity can call a profile reload upon player death and can call Recreate game upon unstuck failed, why it's not possible to "merge them"?
      It would call profile reload upon unstuck fail.
       
    17. supermofo

      supermofo New Member

      Joined:
      Sep 14, 2012
      Messages:
      178
      Likes Received:
      0
      Trophy Points:
      0
      edit reason = bad advice
       
      Last edited: Oct 21, 2012
    18. ElPaintero

      ElPaintero New Member

      Joined:
      Aug 19, 2012
      Messages:
      205
      Likes Received:
      1
      Trophy Points:
      0
      Profile

      I took the "TrinityIf" tag and ran with it! The moveto coordinates are lifted entirely from A3 Champ Hunting BigRed. It runs Core, then Fields of Slaughter, then Stonefort. Copied/pasted, find/replace If with TrinityIf, changed death count to 10 - has been going strong for 5 hours; 20 million exp./hour, 500k gold/hour, 0 death/hour. Difficulty is MP1, which is the best for gold/exp.

      Plugins: Trinity 1.6.3.4
      Settings: Avoid AOE: Off. Minimum gold pile pickup: 400. All other: Default.


      View attachment A3 maxgoldexp.txt
       
    19. AzureusPT

      AzureusPT New Member

      Joined:
      Sep 25, 2012
      Messages:
      439
      Likes Received:
      1
      Trophy Points:
      0
      Quick question, if I have the following code:
      PHP:
      <TrinityUseOnce id="1" max="5">
          <!-- Do 
      stuff -->
          <
      TrinityUseOnce id="11" max="2">
              <!-- 
      Check someplace -->
          </
      TrinityUseOnce>
          <!-- Do 
      more stuff 1 -->
          <
      TrinityUseOnce id="12" max="2" disableprevious="true">
              <!-- 
      Check someplace else -->
          </
      TrinityUseOnce>
          <!-- Do 
      more stuff 2-->
      </
      TrinityUseOnce>
      Will disableprevious="true" disable the UseOnce id="1" as well?
       
    20. mridontevenknowu

      mridontevenknowu New Member

      Joined:
      Jun 13, 2012
      Messages:
      229
      Likes Received:
      0
      Trophy Points:
      0
      Bump to front for easier reference.
       

    Share This Page