Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Ali

Pages: [1]
1
General UO Chat / Re: Secret way to detect hidden players?
« on: April 20, 2023, 12:59:49 PM »
Thanks Crisis! :)

Eyyy, I can see you now :)

2
General UO Chat / Re: Secret way to detect hidden players?
« on: April 17, 2023, 07:06:53 PM »
Very strange! Tried on multiple browsers and computers. Nada.

4
General UO Chat / Re: Secret way to detect hidden players?
« on: April 13, 2023, 05:59:00 PM »
Okay, bit silly but I figured it out. It turns out that the maximum range you can see other peoples' overhead text is 9 tiles, which is much shorter than I thought, and they're actually just spamming guards constantly. This makes it appear as if they just started talking when you get in range -_- Terrible quality video to illustrate lol: https://i.imgur.com/tgjaOEd.mp4

5
General UO Chat / Re: Secret way to detect hidden players?
« on: April 12, 2023, 09:03:09 PM »
Clarifying that I tried monster form and animal form and they were still calling guards immediately. It didn't change their behavior.

Tracking has a 10 second cooldown and monsters, animals, and players are three separate checks and it's not 100% detection rate. Sure they could be tracking at all times and then using the distance of the arrow from their characters to enact a detection radius, but I would think they would need a ridiculous amount of accounts to have tracking coverage of all three forms at the rate they were displaying. Another detail is that each character had separate zones of detection, i.e., i could trigger one character and the others would stay silent. Still doable with information sharing between clients, but just makes it even more of a stretch as all of this requires so much effort for a guards script that can be done much more simply (and much less obviously) just by using journal scan. I don't get it.

I vaguely recall methods of inference using Crystal Ball of Knowledge and Detect Hidden skill to glean nearby characters by the difficulty message (I might be conflating this with something else), but they did not have anything like that in their packs. Maybe there's a similar method? In their packs they had runebooks, atlases, house placing tools, interior decorator tool, mastery book, ethies, luck statues, a couple of them had pirating tools (torch, ramrod, swab), green thorns for the event, and a trapbox that they were putting eggs and loot into. Their suits were standard luck suits, only item with any sort of potential interaction was spell focusing sash which they were all wearing. All three were tamers with 2 cus and a fire steed.

This has intrigued me so much I even double checked to make sure clients don't receive packets from the server with information about nearby stealthers and I can confirm they do not. At least passively, I dunno if there is a call and response packet interaction possible and I'm not educated enough on UO packet encryption to make much headway on that theory.

Anyway, next time I see 'em, I'll bring my own tracker to check for additional characters and also try running straight at them from off screen as I might've been giving them enough time to catch me on tracking.

6
General UO Chat / Secret way to detect hidden players?
« on: April 12, 2023, 02:31:57 PM »
I was stealthing around Fel Delucia to check on people farming eggs and I came across a group that is obviously scripting, but what threw me for a loop is they instantly start spamming guards when I get within a certain range and stop the moment I step away despite being in stealth the whole time... Is there some clever way to detect stealthed people that isn't tracking? It's too instant to be that and I tried polymorphing to a monster and didn't make a difference.

Editing to add: There doesn't seem to be anything out of the ordinary in their backpacks. They're putting their loot inside a trapbox and i notice they are periodically setting the trapbox off for some reason. Also, tried hiring an NPC and walking it near them and that does not trigger the behavior. Range of detection is 9 tiles.

7
Orion UO Scripts / Combine All Refinements
« on: January 16, 2023, 11:01:56 AM »
I had a bunch of refinements packed away taking up house storage slots so I wrote this.

Put an empty Refinement Amalgamator in your backpack and target a container (that isn't your backpack) full of loose refinements. This script will combine whatever it can to the highest level possible.

Some of the lower level refinements are desirable for PvP gear so set any aside that you don't want to be used!

8
General UO Chat / Re: Information on AFK Time Out?
« on: December 18, 2022, 11:54:12 AM »
Yeah, salute is great as long as you're not mounted or in animal form.

In Orion, you can use Timer or I usually just use Orion.Now() + 300000 and then check it against Orion.Now()

Code: [Select]
var endTime = Orion.Now() + 300000;
while(true)
    {
    if(Orion.Now() > endTime)
        {
        Orion.EmoteAction('Salute');
        endTime = Orion.Now() + 300000;
        }
    Orion.Wait(100);
    }

9
General UO Chat / Information on AFK Time Out?
« on: December 18, 2022, 01:15:50 AM »
Does anyone have some insight on what exactly prevents the AFK timeout on OSI? I can't seem to find good info on this. Opening backpack periodically seems to prevent it, as does moving. Using bow or salute emote works as long as you're not mounted.

Standing at Luna bank prevents timeout, is it the other players nearby that does it? NPCs? Updating journal? I've been disconnected with recent 'You see' messages in my journal, so I'm not sure what the deal is with that.

I usually use the opening backpack method to prevent timeout, but I'm interested in learning of other ways that don't use the item cooldown timer and don't interfere with targeting cursors.

10
Orion UO Client / Re: Help! Casting string array elements to integers
« on: October 31, 2022, 05:49:03 PM »
Necroing a thread a bit, but figure I'd throw in a solution for this for anyone looking. In JavaScript there's a few options for changing a string to an integer. Number('1') and +'1' both work pretty much identically.

As for actually grabbing the durability values, RegEx is the way to go.

Code: [Select]
function DurabilityTest()
    {
    Orion.WaitForAddObject('myTarget');
    Orion.Print(GetDurability('myTarget'));
    }

function GetDurability(objSerial)
    {
    var obj = Orion.FindObject(objSerial);
    var durabilityArr = obj.Properties().match(/Durability (\d+) \/ (\d+)/) //evaluates to e.g., ['Durability 250 / 255', '250', '255'] OR null if match isn't found
    if(!durabilityArr) //if a match isn't found returns false
        return false;
    var minDurability = +durabilityArr[1]; //convert string to int
    var maxDurability = Number(durabilityArr[2]); //convert string to int
    return [minDurability, maxDurability]; //e.g. [250, 255]
    }

11
Orion UO Scripts / Combine and Commodify
« on: October 31, 2022, 11:26:35 AM »
Combine and Commodify Resources

Commodifier Call Variants:
    Commodifier(stackSize);
    Commodifier(stackSize, useCommodityDeeds);
    Commodifier(stackSize, useCommodityDeeds, useSpecificArray);
Arguments:
    stackSize: integer. Size of stacks to create.
    useCommodityDeeds: boolean. Use commodity deed on complete stacks. Default value: true.
    useSpecificArray: array [[graphicId, colorId]]. If this is specified, only items included in the array will be combined. Default: false. Everything is combined

Commodifier will first Combine everything to the stackSize you set and then use a commodity deed on any stacks that meet the stackSize.
You must have commodity deeds in either your bank or the commodity deed box you target if useCommodityDeeds is true.

Has been pretty thoroughly tested, but I'd not be surprised at all if someone is able to break it! Please let me know specific details if you find any bugs!

12
Orion UO Scripts / Teleport Ring Charges Counter
« on: October 31, 2022, 10:01:27 AM »
Here's a little snippet I put together to verify the total amount of teleport charges in a bag full of teleport rings. Can be used in the trade window!

Code: [Select]
function TeleportChargeCounter()
    {
    Orion.CharPrint(self,1159,'Target container full of rings')
    Orion.WaitForAddObject('myTarget');
    var container = Orion.GetSerial('myTarget');
    while(!Orion.GumpExists('container', container))
        {
        Orion.UseObject(container);
        Orion.Wait(1300);
        }
    var rings = Orion.FindTypeEx(any,any,container).filter(function(ring)
        {
        return Orion.Contains(ring.Properties(), 'Ring') && Orion.Contains(ring.Properties(), 'Teleport Charges:')
        });
    var charges = rings.reduce(function(sum, current)
        {
        var currentCharges = +((current.Properties().match(/Teleport Charges: (\d+)/) || [])[1] || 0);
        return sum + currentCharges;
        }, 0);
    Orion.Print('Total charges: ' + charges);
    Orion.Print('Average charges per ring: ' + (charges/rings.length));
    }

13
I was a bit surprised to find that this bug actually does still work, although with a minor tweak on the last step.

Follow the steps described, but instead of dropping the full bag in the bag on the beetle, drop the full bag on the same tile your character is standing on. It's an invalid spot to drop something, so the bag will instead go to where it originally was, inside the first bag.

Neat!

14
New member introductions / Hello ScriptUO!
« on: October 30, 2022, 05:34:21 PM »
Well met, I go by Ali. I've played UO off and on since I was about 8 years old when my older brother allowed me to make a character on his account in '99. I created my own account shortly after AoS released. My brother stopped playing at that time and gave me his account and both of these accounts are my mains to this day! If only I had kept their subscriptions active the entire time, I'd have some shard shields lol

I played pretty heavily from 2002-2009 on Sonoma and Pacific. I was living at home with my parents and used dial-up internet most of the time, but occasionally I'd visit a relative or a friend with broadband and it was like a super power! I took a fairly long break after I graduated high school all the way up until 2020 during the pandemic; I logged into my main account on OSI as Endless Journey just to poke around and relive some nostalgia and someone approached me purely by chance at Luna bank and said they liked my name and invited me to their guild. I was inducted in and have met plenty of awesome friends who have kept me engaged with the game! I honestly didn't expect I'd still be playing UO now nearly 3 years after coming back, but as they say, you never really quit UO, huh?

As for my interest in ScriptUO and scripting UO in general, I'm no stranger to automating things in the game, it's probably 80% of my enjoyment of the game at this point lol. My main focus has always been focusing on QoL scripts and automating various resource gathering. I also love PvP, but it's one of the few aspects of the game that I refrain from automating, preferring to actually press buttons to smack people around :). I used EUO primarily back in the day (I see some familiar names around these forums, though I'm not sure what username I went by on the EUO site back then), but have gotten into Orion primarily which finally gave me some motivation to become competent with JavaScript. I had a lot of free time these past couple years and it was a lot of fun teaching myself how to use Orion's scripting engine and solving the unique problems that arise in this game.

I'm active in the Orion Discord with the same username and love to help people however I can. The Discord format isn't the greatest as a script repository, so I sought out an active forum and landed here! I hope to make some helpful contributions to ScriptUO's Orion script library! Thank you for having me!

Pages: [1]