RevisionHistory:Patch270-279

From ISXOgre
Revision as of 20:37, 26 November 2015 by Kannkor (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Patch Version 273

Versions: ISXOgre-2015.09.05, Patch Version-273, OgreBot-17.065, OgreCraft-1.037

  • OgreConsole
    • Various files
    • Minor changes to add support for Everquest1
  • Ogrebot
    • Tells are now relayed to all instead of to ogre_everquest2.
      • Making this change so tells can be picked up in any game. For example, if you had EQ1 and EQ2 loaded, you should be able to see tells from either game, in either game.
  • Ogrebot
    • -Poison_AutoConsume
      • Now actually accepts a 3rd parameter of Poison name.
        • Note: They will only autoconsume something if they are currently NOT auto consuming. If you wish to change poisons, you need to stop your current auto consume first (always been this way).
  • ISXOgre
    • Rewrote all of OgreConsole/OgreIRC that is inside of the extension. It is now a simple #include, which will allow it to be completely portable for other extensions, such as ISXOgreEQ1.
      • Any existing code that was using this will get an error into the console with how you can fix it.
        • Note: All existing "oc" and "irc" commands will function exactly like they were before. This is only for things that had to access the extension. Calls inside of OgreConsole core itself. Highly unlikely anyone other than me used these calls, but just incase I am adding it here for reference. In a few weeks, I'll remove this code, along with the error message from the extension.
      • Anyone running OgreIRC should 'ogre end irc' and 'ogre irc' (or restart innerspace) so it loads the new OgreConsoleIRC. This ONLY applies to OgreIRC users.
    • Updated some auth/patching routines. This should help prevent people having incorrect versions and needed to reinstall. The unfortunate downside to this, some folks will be required to redownload ISXOgre.dll. You will only need to do this if you get an error stating so. A link to the New User walkthrough is provided with the error.

Patch Version 272

Versions: ISXOgre-2015.08.31, Patch Version-272, OgreBot-17.064, OgreCraft-1.037

  • OgreBot
    • When you have 'confirm notrade and heirloom' items checked, it will actually accept the no trade items now. For real.
    • Raid code that previously existed for 'Sleeper's Tomb: Unearthed [Raid]' has returned. (There is nothing new to these, they just weren't linked up anymore).
    • Raid code that previously existed for 'The Dreadcutter: The Pirate Kings [Raid]' has returned. (There is nothing new to these, they just weren't linked up anymore).
    • Raid code that previously existed for 'Harrow's End [Raid]' has returned. (There is nothing new to these, they just weren't linked up anymore).
    • OgreConsole
      • Added an option [x] Never auto open.
        • This option should make it so OgreBot never automatically opens the console. This would include if you got a tell from a GM, for example. Use at your own risk!
    • Fixed a bug (that probably existed since CastStack was released) related to (grumble grumble) pets breaking the entire function even if you weren't using a pet, for "Items" that Healed or power healed.
    • Added a secret feature request... Will see how long it takes for someone to notice... :)
    • Ability exports are now loaded from the following locations:
      • Stormhold -> EQ2OgreBot/Ability_Information/Stormhold/
      • Deathtoll -> EQ2OgreBot/Ability_Information/Deathtoll/
      • All other servers -> EQ2OgreBot/Ability_Information/
        • Note: This didn't change.
      • This means ALL TLE players will need to run a new export.
  • Ogre Export
    • Ability exports are now loaded from the following locations:
      • Stormhold -> EQ2OgreBot/Ability_Information/Stormhold/
      • Deathtoll -> EQ2OgreBot/Ability_Information/Deathtoll/
      • All other servers -> EQ2OgreBot/Ability_Information/
        • Note: This didn't change.
  • ISXOgre
    • When ISXOgre is unloaded for any reason, it will now 'ISXOgre unloaded." into the console.
    • Updated a support dll that is included (repacked) inside of ISXOgre, which caused the file size to grow by 1.5mb... Will see if I can get it back down... no promises...
  • MCP
    • -AutoRun (and crouch, and jump) now support spaces. (So for anyone using default key maps, this fixes the AutoRun key).
    • -UOS now actually passes the silent parameter along.
  • OgreCraft
    • Added support for 'wholesaler'. This should fix the problem in Neriak with not being able to find the fuel merchant.
    • Now supports 'instant' crafts.
      • For example, if you are wanting to level tinkering via quality 1, previously it would 'craft' the item in a single "tick", and OgreCraft would not realize it because the craft started and ended at the exact same time. It now understands this is okay.
  • Various (OgreConsole, OgreIRC, ISXOgre, OgreBot)
    • Added support for brackets ( [ ] ). They should now work from typing in the in-game interface, from doing a /irc and /oc.
      • This was a pretty major change. If any MCP buttons or commands quit working please report them.
    • Cleaned up a bunch of debug info from these also.

Patch Version 271

Versions: ISXOgre-2015.07.20, Patch Version-271, OgreBot-17.063, OgreCraft-1.037

  • ISXOgre
    • When loading an extension that is not compatible, it gives you a message and unloads.
  • Campspot
    • NULL is in first person view. Campspot probably will not work properly. Scroll out to 3rd person view!
      • Will now actually tell you who it is.
  • OgreBot
    • When Ogrebot detects a mob that has died but is still standing up, it will attempt to loot it. Added a debug message in that says it attempted to do it to help see if it's firing and/or working.
    • When a message that is sent to OgreConsole has a noise associated with it, it will open OgreConsole. If you want the noise to play, you have to have checked '[X] Play annoying noise..' etc on the Setup tab.
      • I plan to redo all of these checkboxes to make more sense since everything has changed with OgreConsole.
    • if [X] Enable MCP checked, it will load OgreMCP (as it currently does). If OgreMCP is already open, it will make sure the window is not hidden (you can hide it again with alt+~).
    • if [X] Enable MCP is NOT checked, it will now HIDE OgreMCP instead of close it. You can unhide it again with alt+~)
  • OgreBotAPI
    • Added: AutoHunt_ScanRadius[ForWho,Value]
      • Those who were using: UIElement[${OBUI_textentry_autohunt_scanradius}]:SetText[Value] were ONLY changing the UI. It was not changing the actual value Ogrebot uses. You shouldn't ever try to modify the UI itself in Ogrebot, because most of it will only change the UI which does nothing.
  • OgreConsole
    • 'Setup' Screen
      • Moved all "IRC" options down with a text telling people to STOP CHECKING THESE IF YOU ARE NOT USING OGREIRC!
  • OgreMCP
    • When you hit the [X] in the top right corner, it now hides the window instead of closing it. You can unhide it using alt+~.
    • Note: If you ogre mcp in the console, it will close it and reopen it, the same as it currently does.

Versions: ISXOgre-2015.07.20, Patch Version-271, OgreBot-17.062, OgreCraft-1.037

  • Minor tweaks for OgreConsole to pass data.

Patch Version 270

Versions: ISXOgre-2015.07.16, Patch Version-270, OgreBot-17.062, OgreCraft-1.037

  • OgreConsole
    • Primalz was concerned about how his nick looked in the console window and asked for a space after it.
      • IRC messages now have a space after the Nick:
        • Previously: Kannkor_IRC:!c -stuff
        • Now: Kannkor_IRC: !c -stuff
  • EQ2 Command Parser
    • Fixed ZoneReset not working if you had a space in your install path.
  • (Various)
    • Removed much of the console debug spam. Will re-enable if issues with it.
    • added -resetzoneall (to match ZoneResetAll)
  • MCP
    • Fixed a missing quote on AssistUP (when the assist box would pop up and you'd type in a name)
    • Fixed 'Hail'
    • Changed OFol-Dft default back to 8 meters, instead of 2. If you want this changed, add a parameter to your button now :)
    • Added button: ToggleConsoleWindow_OgreBot
      • Takes 2 parameters:
        • ForWho = All
        • Value = Toggle
  • OgreBot
    • OgreConsoleTab
      • When 'Save OgreIRC Information' is pressed, it will do a relay all local to ogreconsole and relay uplink to ogreconsole to update it's values. This should prevent having to reload OgreConsole/OgreIRC when changes are made (generally speaking on initial set up).
  • OgreConsole
    • Added -OgreBotToggleConsoleWindow[ForWho,Value]
      • Acceptable values are: Toggle, TRUE, or FALSE. (Any other value will count as FALSE)
      • Note: This requires Ogrebot to be running.
  • OgreConsoleIRC
    • (This runs in the uplink)
    • When it exits, it will kill OgreConsole running in the uplink also.
    • This way if you need to restart OgreConsole in the uplink, you can use ogre end irc, and ogre irc, and it will restart them both (OgreConsoleIRC will load OgreConsole if it's not loaded).
  • Ogre Zone Resetter
    • Using the Reset via IRC button should once again work.

Versions: ISXOgre-2015.07.16, Patch Version-270, OgreBot-17.061, OgreCraft-1.037

  • Note: Some of these notes, and the notes from above (early development section) are all part of the same project. However various pieces may appear in the UI so I can test it before they are actually available for use.
  • GLOBALLY
    • When this patch goes live, there will be a LOT of spam going to the console (the regular one, not the OgreConsole). This is intended for now, to help with any issues anyone has. This debugging information will make fixing the bugs much, much easier.
  • OgreBotUI
    • Added new tab 'OgreConsole'
      • This will provide options for the new OgreConsole.
      • OgreConsole X Coord: Sets the X coord of the new window.
      • OgreConsole Y Coord: Sets the Y coord of the new window.
      • OgreConsole Width: Sets the Width of the new window.
      • OgreConsole Height: Sets the Height of the new window.
      • Added a new button: Use current window position
        • This means you can place and size the window exactly where you want it, press this button and it will put all the coordinates into the correct boxes. If you want it to save, make sure you save your profile!
      • Added checkbox to hide OgreConsole on profile load.
      • Ogreconsole is no longer moved if the entered coordinate or size is 0. (This includes if it's blank, it won't move to the top left corner).
      • Added OgreIRC to this tab.
        • Note: OgreIRC is basically a "port" from OgreIRC. It is a VERY advanced feature that VERY few people will ever need to use.
        • Uplink name
          • This is the name of the uplink the bots will use as the IRC bridge. Someone should make a good write up and link it here....
          • Super top secret note: If you leave this blank then hit save, it will use the name of uplink you're currently on now.
          • Super top secret tip: If for some reason you want it to be generic, using "uplink" will always refer to the uplink you're on. I'm not sure this is wise.. but worth mentioning.
        • Server
          • The server you wish to connect too. For example: irc.lavishsoft.com
        • User
          • The IRC username you want to use. Generally speaking I just add _IRC to the end of my name. For example: Kannkor_IRC
        • Channel
          • The IRC channel you want to join. Remember to include the #! You should make your own channel first. For example: #KannkorPrivateRaids
          • Using either a private network, or securing the channel by using a real IRC client and registering the channel and locking it down is recommended. You can google for these things.
        • Channel password
          • The password (otherwise known as a key) for the IRC channel.
        • [X] Connect to IRC
          • Tells Ogrebot to use the information below to connect to OgreIRC.
    • Load Tab
      • Removed the 3 OgreIRC options, as this is no longer supported. Please use OgreConsole tab for OgreIRC now.
  • OgreConsole UI
    • Made the entire window fully resizable.
    • Auto-displays when a noise is sent. IE: You get a tell from an unauth'd person, or the bot "dings" you.
      • I plan to make something that works smoother than 'when it makes a noise'... But that'll be down the road.
    • Added a 'Setup' button to the title bar.
      • Opens a new window with the following options.
      • [X] Typed text is sent to IRC
        • Instead of having the text you type into the OgreConsole being sent to your OgreConsole, it is sent to IRC.
        • Note: If you are NOT connected to IRC, this will probably eat any commands typed. Each session does not "know" if the uplink is connected to IRC.
      • [X] Make any OgreConsole command invisible.
        • This makes basically any command/text entered into OgreConsole invisible (doesn't show, but still does it's thing). This does NOT include IRC commands/buttons.
      • [X] Send all OgreConsole commands to IRC.
        • Converts any OC command/MCP button to IRC instead.
      • [X] Sends all IRC commands to OgreConsole.
        • Converts any IRC command to send to OgreConsole instead.
      • Note: All the above commands only work on their native setting. This means if you selected both Send OC to IRC and IRC to OC, it would NOT create a loop. It would send all IRC to OC, and all OC to IRC.
  • ISXOgre
    • command: "oc" now actually works using the OgreConsole. (Will do nothing unless you actually have OgreConsole running).
    • Tweaked things for OgreConsole.
    • Made some slight changes to authentication. While this likely won't be noticeable by anyone, some parts of auth should happen quicker, while some parts may happen slower. However the total time it takes to auth should be the same. Shifted some of the processing around. I'll keep an eye on it.
    • Added command: ogre end bot
      • This will close "OgreBot" (any variation of it, be live, dev, or internal).
    • command: "irc" now uses the new OgreConsoleIRC instead of the old OgreIRC.
    • "ogre irc" and "ogre end irc" now relate to OgreConsoleIRC instead.
  • OgreBotAPI
    • Many of these are being added for the new OgreConsole. However, feel free to use them in scripts.
    • Added the following methods (These are all accessed via: OgreBotAPI:___[parameters]. For example: OgreBotAPI:Letsgo[all]
    • Note: All parameters below can be omitted if you want to just use the default. Generally speaking, ForWho=all.
      • LetsGo[ForWho]
      • HoldUp[ForWho]
      • ZoneResetAll[ForWho]
      • Pause[ForWho]
      • Resume[ForWho]
      • JoustIn[ForWho]
      • JoustOut[ForWho]
      • JoustOn[ForWho]
      • JoustOff[ForWho]
      • ForceFollow[ForWho]
        • This just turns on in-game EQ2 follow based on the Setup tab. Seems worthless now because of OgreFollow... but I'm sure some people still use it, so it still exists.
      • PetOff[ForWho]
      • PetAttack[ForWho]
      • Evac[ForWho]
      • ImmRes[# of dead people]
        • Cleric's immaculate res
      • Revive[ForWho]
      • NoTarget[ForWho]
      • NoMove[ForWho]
      • RepairGear[ForWho]
      • GetFlag[ForWho]
      • UseFlag[ForWho]
      • CallGH[ForWho]
      • CloseWindow[ForWho]
      • Mount[ForWho]
      • Zone[ForWho]
      • ZoneDoor[# Door Option]
      • Special[ForWho]
      • SpecialZoneSpecific[ForWho]
      • RunWalk[ForWho]
      • AcceptReward[ForWho]
      • ToggleMainWindow[ForWho]
      • ResStone[ForWho]
      • Jump[ForWho]
        • This now uses the Keybind Jump instead of the hardcoded "space" hooray!
      • Crouch[ForWho]
      • Disband[ForWho]
      • AutoRun[ForWho]
      • CampToDesktop[ForWho]
      • FlyUp[ForWho]
      • FlyDown[ForWho]
      • FlyStop[ForWho]
      • CancelMaintained[AbilityName]
      • DungeonMakerCancel[ForWho]
      • CheckGear[ForWho]
      • CheckMemberLevel[TRUE/FALSE]
        • Parameter TRUE only shows if you are a member. FALSE (default) shows everyones member level.
      • Unmentor[ForWho]
      • Mentor[WhoToMentor]
      • Rebuff[ForWho]
      • DisplayAvailableSetups
        • (This one has existed for quite some time)
      • ApplyVerb[ActorName,Verb]
      • ConversationBubble[ForWho,# conversation]
      • InjectChat[ForWho,Chat]
        • Equal to if you typed it into group chat (doesn't display in game, but the bot reads it as if it was)
      • SetUpFor[ForWho,Chat]
      • OFolIncDistance[ForWho]
      • OFolDecDistance[ForWho]
      • Come2Me[MoveToWho,ForWho,Precision]
      • Move2Area[XPos,ZPos,ForWho,Precision]
      • ChangeCampSpot[x,y,z]
      • ChangeCampSpotWho[ForWho,x,y,z]
      • UplinkOptionChange[ForWho,NameOfObject,Value]
      • ChangeCastStackListBoxItem[ForWho,Abilityname,Value,SilentMode]
      • PortalToGuildHall[ForWho]
      • LootWindowLootAll[ForWho]
        • If a loot window is open, this will press "Loot All" on everyone. Useful when everyone gets a box. (Note: This is NOT for quest rewards. Use Acceptreward for that).
      • Invite[ForWho,WhoToInvite,RaidInvite]
        • RaidInvite can be omitted to group invite. Or pass TRUE for it to be a raid invite instead.
  • MCP
    • Following buttons are no longer available to be selected, this is because they are no longer needed. Since pause can be used without a parameter, or with one. Existing buttons will continue to work.
      • Pause_ForWho
      • Resume_ForWho
      • Jst-Off-Who
      • Jst-On-Who
      • Jst-In-Who
      • Jst-Out-Who
      • Use_Flag_ForWho
      • SpecialForWho
      • AReward (Replaced it with "AcceptReward").
    • Removed 'Test'... considering it ran a local test script of mine that did nothing for anyone else.. :)
    • Jump
      • Now uses the keybind jump, instead of the hardcoded "space".
    • Crouch
      • Now uses the keybind crouch, instead of the hardcoded "z".
      • Fixed the description... Can't believe no one reported this!
    • DM_Cancel
      • Renamed it to DungeonMaker_Cancel to be more clear. Existing buttons will continue to function.
    • Many MCP buttons that had a limit on parameters has been removed. While in 99.9% of cases, no one ever hit the limit, there is already code in place to handle "infinite" parameters, so making use of it.
    • "OgreIRC" buttons now reference the new IRC calling code.
      • In my 30 seconds of testing, every button continued to work exactly as it did prior.
    • Added key bind 'Alt+~' to toggle visibility of OgreMCP.
  • OgreBot
    • Now loads OgreConsole on load.
    • When you issue a campspot, it now checks to see if you're in 1st person view. If you are, it gives you a message. (It still does the command, merely notifies you).
    • Cancel cast has needed to be rewritten for a long time. Over the last year or so I've converted most things that used 'cancel_cast" to simply use "cast" instead, since the cancel aspect was causing more issues than not. Until the rewrite on cancel_cast happens, I believe all "cancel_cast" and anything related to this, have been (behind the scences) converted to use cast. Once this rewrite happens, anything that is marked as cancel_cast will use the new code (no eta for this. Quite a low priority). Just thought I'd mention it.
    • Fixed some abilities not working when Ogrebot called them directly (Raid/Grind Options)
      • I believe this never made it live and only in my development build so wouldn't have effected anyone other than me.
    • Removed (old) OgreIRC/OgreIRCSession/OgreIRC Interface from loading.
  • OgreConsoleIRC
    • Completely rewritten OgreIRC built for OgreConsole.. Hence the name OgreConsoleIRC :)
    • The idea here was to keep the same interaction, but "upgrade" it to use OgreConsole. Because of the way OgreConsole works (relays the message, not each individual command), a lot of internal changes to how OgreIRC works have changed. Having said that, the concept of it (so far) is identical.
    • It still uses ! followed with parameters. However, because OgreConsole and OgreConsoleIRC are no longer only for EQ2, you will have to specify which game it is for. To make life easy, it will be !eq1 and !eq2. And !nextgamenamehere if another game comes up.
      • Don't worry, every single one of my current IRC buttons has !c in it, and because the only game that uses OgreIRC right now is EQ2, I've made !c the same as !eq2.
    • It's possible some old IRC commands will need to be slightly changed. I am omitting some commands that I don't think *anyone* has ever used. If someone is using them, and there is no alternative (for example, there is no reason for -campspot-opt anymore, since -campspot has all the options, I am omitting it. If anyone was using it, then can just remove the -opt from -campspot and it should work identical.
    • Clearly no one used this command... but fixed -LoadProfileForWho to accept a second parameter of 'ForWho'.
      • Note: -LoadProfile will actually accept a second parameter also that does the same thing.
    • -LoadExt has been removed. It just doesn't make any sense to be here. Because OgreConsole requires ISXOgre.dll to function, therefore you couldn't issue a command via IRC to load it.
      • Note: MCP Load_Ext works fine. This does so because it's not being passed from the uplink to a console. It's doing a local command only. (I doubt anyone was using this command. It was probably just added when I ported over all MCP -> OgreIRC years ago).
    • -Connect / -Disconnect have been removed also. These are fine to exist, but not exactly how they are implemented. Will revisit this at a later time.
      • Again, these STILL exist and function exactly the same as they have in MCP. Just not in OgreConsoleIRC.
    • -UplinkOption now supports a 4th parameter of "Silent". It is defaulted to FALSE. This means whatever it changes WILL be shown to you in the console. (This is how it is now).
    • -UplinkOptionSilent now supports a 4th parameter of "Silent". It is defaulted to TRUE. This means whatever it changes will NOT be shown in the console.
    • Removed -RaidDebuff
      • This was used for DoV mobs that had the class specific raid debuffs...
    • IRC messages are sent twice for now...
      • When an IRC message comes in, it is parsed in the uplink (checking for -auth messages, and checking to see if it's a message that it has to handle (from an auth'd source) or simply a message it has to display. Once it determines if it has to be parsed or only display, it then does it. The problem with this, when it was an -auth message, it would actually show the auth message THEN the actual command to auth them. To fix it for now... it always passes the message as display only (don't dataparse it), THEN it reads the message in the uplink, then passes it invisibly if it has to be parsed.
        • This makes it so the message is always displayed first, then the commands are handled. This will all happen in the same frame, but worth mentioning why it's done this way incase it creates any issues.
    • Square brackets in a prefix breaks everything... I suspect using square brackets in a lot of places will...
      • Need to look into fixing this... ... later...
    • Omitting the 'ForWho' after the !c or !eq2 will be equal to "all".
      • For example: !c all -Letsgo
      • Is equal to: !c -Letsgo
  • Development of 'OgreConsole'
    • In short, this will replace the 'Tell Window' (also known as Mini) AND OgreIRC window. This window will look much like the OgreIRC window, and I plan to implement all of OgreIRC into this window. This way whether people use IRC or not, they will have the more advanced/featured window. It should also allow for an easy checkbox to enable/disable output to IRC for those that use it.
    • Very early development.
    • Will be used for EQ1 also (may go there first, then convert it to EQ2 as I get time, since that will be a much bigger task)
    • Comma's are currently not permitted, and are converted to periods for now. I may fix this at a later date.
    • When text is entered, it is sent to ISXOgre (the extension) where it is relayed (to.. relay group?). Each client that gets the command, will then parse it locally.
      • This changes how things currently work. Previously it would parse it once locally, then relay the command to execute to each session.
    • ISXOgre:OgreConsole
      • This will more than likely only be used for scripts/advanced script writers. I plan to use /oc as a basic method for outputting text to this window (much like /irc now).
      • Accepts key/value pairs from Object_OgreConsoleMessage. (Which is automatically done in a script at the moment).
      • Optionally accepts -rg as the FIRST parameter, with the second parameter being it's value. Otherwise ${OgreRelayGroup} is used if it exists, if not "all" is used.
    • OgreConsole (which is game generic) will load a game-specific parser that it passes all messages through. For EQ2.. It's called: Everquest2CommandParser. (Not that this really matters..). The framework of the parser will probably be generic for all games, then have a list of things it does specifically. More on this later...
    • Everquest2CommandParser
      • This is all subject to change.. of course.
      • Able to tell the difference between commands ( - ) and parameters. However... this means that parameters can NOT start with "-".
        • This will mean commands can have defaults and NOT require all fields to be filled in. For example.. Previously (OgreIRC)'s letsgo command required the ForWho parameter, so it looked like this: !c -letsgo all. OgreConsole's does not require the parameter, since "all" is the default. This means: !c -letsgo, is perfectly valid.
        • This also means commands can be created which may never have a defined amount of parameters... say for example: (doesn't exist at the time of writing this): !c -runscript all parameter1 parameter2 (etc etc).
        • All parameters for each command are discarded once the command has finished, regardless if they were used or not. For example. If you typed: "!c -letsgo all why am I typing more here -test". The command -letsgo only reads the first parameter because that is all it cares about, the next 6 parameters (why am I typing more here) are discarded, and it moves onto the next command, -test.
      • Will spew any commands ( -____ ) that aren't in the available list.
        • Note: At this time it WILL throw a warning (console message) for generic commands. You can safely ignore these until I deal with them. For example: OgreConsoleIRC -auth messages. This is because they are generic, and not specific to the EQ2CommandParser.
    • New extension: ISXOgreConsoleUplink
      • Very basic extension that exists solely to help relay information to sessions properly escaped. Created a new extension instead of loading isxogre into the uplink, to not cause issues with patching isxogre.dll.
      • Note: At this very moment, this is only required for OgreConsoleIRC plugin, and will only be loaded in the uplink when required.