What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

Unified Trinity Community Edition

Status
Not open for further replies.
Technically, internal or internal protected on an enum does not change the problem,protected is for derived sub-class.
In addition, if we have a real problem of visibility for a class / enum, the result will be a compiler error and not a functional error.

I advice:
- Review your configuration
- Pay to receive more than 5 notifications per days

You obviously did not read any of my posts. I have the paid version of Prowl as well as a paid account with Notify my Android. So I am able to receive way more then 5 notifications a day. In fact I am receiving about 30-40 from my servers and various other programs I am running. None of my programs missed a beat while Trinity wasn't notifying me. I use both as I carry around an iPad and if that isn't in arms reach my phone is in my pocket at all times. I also stated I checked my configuration multiple times as well as tested the issue. I provided my testing method as well.

Also technically in C# the ONLY valid access level is public for an enum. Internal/private are used for structs and classes.

Accessibility Levels (C#)

-edit-
Also on another note bad code compiles all the time. Hence these things called bugs.
 
Last edited:
You obviously did not read any of my posts. I have the paid version of Prowl as well as a paid account with Notify my Android. So I am able to receive way more then 5 notifications a day. In fact I am receiving about 30-40 from my servers and various other programs I am running. None of my programs missed a beat while Trinity wasn't notifying me. I use both as I carry around an iPad and if that isn't in arms reach my phone is in my pocket at all times. I also stated I checked my configuration multiple times as well as tested the issue. I provided my testing method as well.

Also technically in C# the ONLY valid access level is public for an enum. Internal/private are used for structs and classes.

Accessibility Levels (C#)

-edit-
Also on another note bad code compiles all the time. Hence these things called bugs.

Yup... fixed in the next release, currently undergoing testing (1 more last bug to fix).
 
hi, amigos!
May be sombody had done it yet?

UTCE 1.7.1.4.
I run DB by a task in Task Scheduler on Win7. When i check option "Trinity Scoring Only" and start DB, i get the error: "...file \Plugins\GilesTrinity\ItemRules\config.dis not found".
To fixed it, i edited some files. And i do default "Log" subdir to most of log files.
My idea is to use always global variables from Plugins\GilesTrinity\Variables.cs file.

Plugins\GilesTrinity\Variables.cs
Code:
	Line 380:         public static string sTrinityPluginPath = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Plugins\GilesTrinity\";
	Line 381:         public static string sTrinityPluginPathLog = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Plugins\GilesTrinity\Log\";
        Line 382:         private static string sTrinityConfigFile = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Settings\GilesTrinity.cfg";
        Line 383:         private static string sTrinityEmailConfigFile = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Settings\" + ZetaDia.Service.CurrentHero.BattleTagName + @"-Email.cfg";
Plugins\GilesTrinity\Configuration.cs
Code:
	Line 29:                 return UILoader.GetDisplayWindow(Path.Combine(GilesTrinity.sTrinityPluginPath, "UI"));
Plugins\GilesTrinity\DbProvider\GilesPlayerMover.cs
Code:
	Line 155:                     FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - Stucks - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 499:                             FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - LongPaths - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
Plugins\GilesTrinity\Interpreter.cs
Code:
	Line 74:                 customPath = GilesTrinity.sTrinityPluginPath + @"\ItemRules\";
	Line 75:                 logPath = GilesTrinity.sTrinityPluginPathLog;
Plugins\GilesTrinity\ItemHandling.cs
Code:
	Line 958:             FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + sLogFileName, FileMode.Create, FileAccess.Write, FileShare.Read);
Plugins\GilesTrinity\Plugin.cs
Code:
            //// string sDemonBuddyPath = Assembly.GetEntryAssembly().Location;
           //// sTrinityPluginPath = Path.GetDirectoryName(sDemonBuddyPath) + @"\Plugins\GilesTrinity\";
           //// sTrinityConfigFile = Path.GetDirectoryName(sDemonBuddyPath) + @"\Settings\GilesTrinity.cfg";
           //// sTrinityEmailConfigFile = Path.GetDirectoryName(sDemonBuddyPath) + @"\Settings\" + battleTagName + @"-Email.cfg";
       
	Line 102:             if (!Directory.Exists(GilesTrinity.sTrinityPluginPath))
	Line 104:                 DbHelper.Log(TrinityLogLevel.Normal, LogCategory.UserInformation, "Fatal Error - cannot enable plugin. Invalid path: {0}", GilesTrinity.sTrinityPluginPath);
Plugins\GilesTrinity\RefreshDiaObject.cs
Code:
	Line 935:                         //    FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + "_BalanceData_" + ZetaDia.Service.CurrentHero.BattleTagName + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
Plugins\GilesTrinity\StashSellSalvage.cs
Code:
	Line 293:                     LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - StashLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 790:                     LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - JunkLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 1122:                     LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - JunkLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 1181:                 LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - StashLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 1253:                 LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - JunkLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);

If it is actual, fix it in a release, please.
 
Last edited:
@vasistep

Can you zip and attach your log file, so instead of you coming up with a crazy solution going backwards in time with static variables to a problem only you're having, I would like to diagnose the root cause of whatever error you got? I can only do that though, if you zip and attach your log file.

Thanks!
 
hi, amigos!
May be sombody had done it yet?

UTCE 1.7.1.4.
I run DB by a task in Task Scheduler on Win7. When i check option "Trinity Scoring Only" and start DB, i get the error: "...file \Plugins\GilesTrinity\ItemRules\config.dis not found".
To fixed it, i edited some files. And i do default "Log" subdir to most of log files.
My idea is to use always global variables from Plugins\GilesTrinity\Variables.cs file.

Plugins\GilesTrinity\Variables.cs
Code:
	Line 380:         public static string sTrinityPluginPath = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Plugins\GilesTrinity\";
	Line 381:         public static string sTrinityPluginPathLog = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Plugins\GilesTrinity\Log\";
        Line 382:         private static string sTrinityConfigFile = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Settings\GilesTrinity.cfg";
        Line 383:         private static string sTrinityEmailConfigFile = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Settings\" + ZetaDia.Service.CurrentHero.BattleTagName + @"-Email.cfg";
Plugins\GilesTrinity\Configuration.cs
Code:
	Line 29:                 return UILoader.GetDisplayWindow(Path.Combine(GilesTrinity.sTrinityPluginPath, "UI"));
Plugins\GilesTrinity\DbProvider\GilesPlayerMover.cs
Code:
	Line 155:                     FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - Stucks - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 499:                             FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - LongPaths - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
Plugins\GilesTrinity\Interpreter.cs
Code:
	Line 74:                 customPath = GilesTrinity.sTrinityPluginPath + @"\ItemRules\";
	Line 75:                 logPath = GilesTrinity.sTrinityPluginPathLog;
Plugins\GilesTrinity\ItemHandling.cs
Code:
	Line 958:             FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + sLogFileName, FileMode.Create, FileAccess.Write, FileShare.Read);
Plugins\GilesTrinity\Plugin.cs
Code:
            //// string sDemonBuddyPath = Assembly.GetEntryAssembly().Location;
           //// sTrinityPluginPath = Path.GetDirectoryName(sDemonBuddyPath) + @"\Plugins\GilesTrinity\";
           //// sTrinityConfigFile = Path.GetDirectoryName(sDemonBuddyPath) + @"\Settings\GilesTrinity.cfg";
           //// sTrinityEmailConfigFile = Path.GetDirectoryName(sDemonBuddyPath) + @"\Settings\" + battleTagName + @"-Email.cfg";
       
	Line 102:             if (!Directory.Exists(GilesTrinity.sTrinityPluginPath))
	Line 104:                 DbHelper.Log(TrinityLogLevel.Normal, LogCategory.UserInformation, "Fatal Error - cannot enable plugin. Invalid path: {0}", GilesTrinity.sTrinityPluginPath);
Plugins\GilesTrinity\RefreshDiaObject.cs
Code:
	Line 935:                         //    FileStream LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + "_BalanceData_" + ZetaDia.Service.CurrentHero.BattleTagName + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
Plugins\GilesTrinity\StashSellSalvage.cs
Code:
	Line 293:                     LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - StashLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 790:                     LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - JunkLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 1122:                     LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - JunkLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 1181:                 LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - StashLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);
	Line 1253:                 LogStream = File.Open(GilesTrinity.sTrinityPluginPathLog + ZetaDia.Service.CurrentHero.BattleTagName + " - JunkLog - " + ZetaDia.Actors.Me.ActorClass.ToString() + ".log", FileMode.Append, FileAccess.Write, FileShare.Read);

If it is actual, fix it in a release, please.

In next release, all folders are manage by 1 class (FileManager) execpt for item rules where I don't have time to change new system from darkFriend but, I will do that before release
 
@vasistep

Can you zip and attach your log file, so instead of you coming up with a crazy solution going backwards in time with static variables to a problem only you're having, I would like to diagnose the root cause of whatever error you got? I can only do that though, if you zip and attach your log file.

Thanks!

rrrix, thx.
But global variables is make to easy edit them instead searching crazy number line in anything files.
I'am fixed my problem. This problem was generated a programmer of Interpreter.cs in that fault lines:
Code:
                customPath = @"Plugins\GilesTrinity\ItemRules\";
                logPath = @"Plugins\GilesTrinity\Log\";
Which path will be given when you request it from Task Scheduler process? It will be %Systemroot%\System32\Plugins\GilesTrinity\ItemRules\ .

In file Plugin.cs other programmer resolved problem with paths:
Code:
            string sDemonBuddyPath = Assembly.GetEntryAssembly().Location;
            sTrinityPluginPath = Path.GetDirectoryName(sDemonBuddyPath) + @"\Plugins\GilesTrinity\";
            sTrinityConfigFile = Path.GetDirectoryName(sDemonBuddyPath) + @"\Settings\GilesTrinity.cfg";
            sTrinityEmailConfigFile = Path.GetDirectoryName(sDemonBuddyPath) + @"\Settings\" + battleTagName + @"-Email.cfg"; [CODE]

But why do it in EVERY modules? We can once define sTrinityPluginPath in Variables.cs
[CODE]
        public static string sTrinityPluginPath = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + @"\Plugins\GilesTrinity\";
and use it through GilesTrinity class : GilesTrinity.sTrinityPluginPath .

In some files was used that method. I see, the project have not a standard of define and use variables.

About Log directory - same type optimization. It is useful to put all .log files in same directory Log.
 
Last edited:
I suggest looking at the DeveloperOnly branch. We're way, way way past all that old code you're looking at ...
 
rrrix, i see it newly DeveloperOnly Interpreter.cs
Code:
       readonly string version = "2.0.0.6";
       readonly string customPath = [COLOR="#FF0000"]@"Plugins\GilesTrinity\ItemRules\Rules\"[/COLOR];
        readonly string logPath = [COLOR="#FF0000"]@"Plugins\GilesTrinity\ItemRules\Log\";
[/COLOR]
 
Doesn't look like this would be too hard to do truthfully. Just took a peak at their site since I haven't used a Mac in ages. There are already a few examples out there to do it as well. Would just need to convert it into a class for Trinity.

Sending Growl Notifications From CSharp*|*Michael E. Chancey Jr.

Yeah that's what I was telling rrrix, but I'm sure he's got bigger fish to fry right now. Include a couple library files, setting up a Growl Connector and then registering the app to send notifications to it. You'd simply need to tie it into the item system then and you have another cool api hook into moarrrrrrrr notifications!
 
getting this error over and over again..... but the bot keeps running.

here is the log.



[21:05:12.726 Q] [Trinity][CacheManagement]System.AccessViolationException: Could not read bytes from 00000008 [299]!
bij Zeta.MemoryManagement.ExternalProcessReader.ReadBytes(IntPtr address, Int32 count, Boolean isRelative)
bij Zeta.MemoryManagement.ExternalProcessReader.Read[T](IntPtr address, Boolean isRelative)
bij Zeta.Internals.Actors.ACD.[](ACD , Int32 )
bij Zeta.Internals.Actors.ACD.GetAttribute[T](Int32 attribute)
bij Zeta.Internals.Actors.ACD.GetAttribute[T](ActorAttributeType attributeType)
bij Zeta.Internals.Actors.DiaUnit.get_IsNPC()
bij GilesTrinity.GilesTrinity.RefreshGilesUnit(Boolean AddToCache)
bij GilesTrinity.GilesTrinity.RefreshStepMainObjectType(Boolean& AddToCache)
bij GilesTrinity.GilesTrinity.CacheDiaObject(DiaObject freshObject)
bij GilesTrinity.GilesTrinity.RefreshCacheMainLoop()
 
getting this error over and over again..... but the bot keeps running.

here is the log.



[21:05:12.726 Q] [Trinity][CacheManagement]System.AccessViolationException: Could not read bytes from 00000008 [299]!
bij Zeta.MemoryManagement.ExternalProcessReader.ReadBytes(IntPtr address, Int32 count, Boolean isRelative)
bij Zeta.MemoryManagement.ExternalProcessReader.Read[T](IntPtr address, Boolean isRelative)
bij Zeta.Internals.Actors.ACD.[](ACD , Int32 )
bij Zeta.Internals.Actors.ACD.GetAttribute[T](Int32 attribute)
bij Zeta.Internals.Actors.ACD.GetAttribute[T](ActorAttributeType attributeType)
bij Zeta.Internals.Actors.DiaUnit.get_IsNPC()
bij GilesTrinity.GilesTrinity.RefreshGilesUnit(Boolean AddToCache)
bij GilesTrinity.GilesTrinity.RefreshStepMainObjectType(Boolean& AddToCache)
bij GilesTrinity.GilesTrinity.CacheDiaObject(DiaObject freshObject)
bij GilesTrinity.GilesTrinity.RefreshCacheMainLoop()
This has been said 100 times, it has no impact on performance, just ignore it.
 
Depending on your build, if you have the inna's set you often have more spirit than you can spend. I use mantra of conviction as a healing spell since I have around 73.5 life/spirit spent (3,675-4,200 heals)

How would I incorporate this into the giles combat file, for when he drops below 30% and my heal/serenity is on cooldown?

Is there anyone that could add this please? Much appreciated.

TL;DR Code to cast Mantra of Conviction when player drops below 40% and Breath of Heaven + Serenity is on cooldown? Can anyone do this please?
 
Combat Looting Delays

I've subbed a fix for the combat looting delays to the Developers but if you'd like a quick fix then edit the file RefreshDiaObjects.cs, find the line
Code:
// See if we should wait for [playersetting] milliseconds for possible loot drops before continuing run
on the line below about 1/2 way along replace the && with ||

i.e. this bit in the middle
Code:
Settings.Combat.Misc.DelayAfterKill) && (DateTime.Now.Subtract(lastHadEliteUnitInSights).TotalMilliseconds
becomes this
Code:
Settings.Combat.Misc.DelayAfterKill) || (DateTime.Now.Subtract(lastHadEliteUnitInSights).TotalMilliseconds

Fix hopefully coming in a future Trinity build
 
Closing thread. Feel free to create a new thread on your own with your personal feedback on 1.7.1.5
 
Last edited:
Status
Not open for further replies.
Back
Top