View Full Version : Bored...anyone need a script written?
Tgo01
08-10-2013, 10:45 PM
Anyone out there need help writing a script or anything?
Ardwen
08-10-2013, 10:51 PM
Yes, could ya write a good script for Battlefield Earth? Anything has to be beter then the one they made!
stormcrow
08-10-2013, 10:57 PM
I need a script that will get rid of these "RTFC Ticketing Fiasco Story - My Side" updates. Someone please put a bullet in this horse's head.
Tgo01
08-10-2013, 10:58 PM
Yes, could ya write a good script for Battlefield Earth? Anything has to be beter then the one they made!
Damn right! I'll have it done by the morning.
I need a script that will get rid of these "RTFC Ticketing Fiasco Story - My Side" updates. Someone please put a bullet in this horse's head.
You could always subscribe to the thread.
Rethius
08-10-2013, 11:17 PM
I need a script that will get rid of these "RTFC Ticketing Fiasco Story - My Side" updates.
And the Washington redskins thread too.
I need a script for buying tickets to Simu's next paid event. Not a bot, mind you, but a script which will do something for a human at a more than human speed. Definitely not a bot. Write me this script.
Latrinsorm
08-10-2013, 11:22 PM
I need all the scripts Dex wrote, including the naughty ones. I suppose technically this is more of a read/c/p than write request, but DO IT.
tyrant-201
08-10-2013, 11:36 PM
I need a script for buying tickets to Simu's next paid event. Not a bot, mind you, but a script which will do something for a human at a more than human speed. Definitely not a bot. Write me this script.
Looking to scalp some tickets?
Tgo01
08-11-2013, 03:47 AM
I just uploaded zestme to the repo, this was a script someone requested.
It will perform all zest verbs on an item and after it has gone through each verb it will list the verbs it found that it thinks are zests. It will then perform just those zests again so you can double check.
If the script doesn't find any zests it will also inform you that it found nothing.
Tgo01
08-11-2013, 03:56 AM
Oh yeah, since shaking something that has no zests gives no feedback at all I had to leave that out of the script, so you might want to shake the item yourself to check for that.
ROTOR
08-11-2013, 07:53 AM
Wouldn't mind help doing more of the rogue guild tasks. I added a bit for stunman shield and dodging arrows, but I'm sure it'll get more complicated when I get more tasks. Also need to try editing and adding your critter sweep reps to other tasks like subdue and cheapshots.
Slamy
08-11-2013, 09:31 AM
Tgo .. nothing too complicated but what line do I need to take out of herbheal to keep it from closing my container after the script finishes. I have to reopen it after it's done so when I find herbs along my hunt it can add it to my herb container.
have::
a wizard doing alchemy that sucks at foraging and hunting
a ranger great at hunting/skinning and foraging but has no alchemy to do
need:
a script that sends my wizard to my ranger and tells him what herbs / hides he needs for current project, then sets my ranger out to procure said needed items and returns them to my wizard so he can continue with said project.
:)
Ltlprprincess
08-11-2013, 09:59 AM
Speaking of herbheal... any way to update that so it's not buying a shit ton of FWI elixirs because it thinks it only has one sip per? Kinda defeats the convenience purpose of it when your container gets full because it's too stupid to realize you're still holding a 3-sip elixir.
Xaerve
08-11-2013, 10:15 AM
Does anyone know where I can find Healblown2? Heals a bard when singing a gem and it shatters automatically.
Aluvius
08-11-2013, 12:00 PM
A script that alternates cman surge and cman burst would be awesome for my little monk! Meaning put up surge, then when it drops put up burst, then when it drops surge again, etc. :)
Tgo01
08-11-2013, 01:03 PM
Wouldn't mind help doing more of the rogue guild tasks. I added a bit for stunman shield and dodging arrows, but I'm sure it'll get more complicated when I get more tasks. Also need to try editing and adding your critter sweep reps to other tasks like subdue and cheapshots.
Sure, just let me know what you're needing help with.
Tgo .. nothing too complicated but what line do I need to take out of herbheal to keep it from closing my container after the script finishes. I have to reopen it after it's done so when I find herbs along my hunt it can add it to my herb container.
It looks like the script only closes the herbsack if it was closed when the script started.
If it's closing it anyways the line you need to remove is towards the bottom:
if $close_herbsack = true
fput "close my #{Lich.herbsack}"
end
have::
a wizard doing alchemy that sucks at foraging and hunting
a ranger great at hunting/skinning and foraging but has no alchemy to do
need:
a script that sends my wizard to my ranger and tells him what herbs / hides he needs for current project, then sets my ranger out to procure said needed items and returns them to my wizard so he can continue with said project.
:)
Sorry, writing this whole thing from scratch sounds a bit too ambitious for me :p
If you need help along the way though I can do that.
Speaking of herbheal... any way to update that so it's not buying a shit ton of FWI elixirs because it thinks it only has one sip per? Kinda defeats the convenience purpose of it when your container gets full because it's too stupid to realize you're still holding a 3-sip elixir.
As far as I can tell herbheal uses useherbs for the actual consuming of herbs portion of the script. I'm not going to be modifying a script by Tillmen, he'll hurt me :(
A script that alternates cman surge and cman burst would be awesome for my little monk! Meaning put up surge, then when it drops put up burst, then when it drops surge again, etc. :)
Can you tell me the lich spell ids for these two cmans? If they have spell ids that is.
Whirlin
08-11-2013, 01:19 PM
Target Armor calculator.
Determines the weapon type from the attack, checks the AvD of the target, and determines targets (potential) ASG.
Jace Solo
08-11-2013, 01:30 PM
Target Armor calculator.
Determines the weapon type from the attack, checks the AvD of the target, and determines targets (potential) ASG.
That's a good one, gives you an echo line after the attack that tells you what you're swinging at...very nice
Whirlin
08-11-2013, 01:40 PM
It would greatly assist in my dex testing and such if you could come up with it... Although I know a couple AvDs are the same but different subgroups.
Tillmen
08-11-2013, 02:33 PM
As far as I can tell herbheal uses useherbs for the actual consuming of herbs portion of the script. I'm not going to be modifying a script by Tillmen, he'll hurt me :(
herbheal doesn't use useherbs at all. It checks that you have useherbs, and refuses to run if useherbs isn't there, but it still doesn't use useherbs in any way.
If useherbs buys too much of something, let me know and I'll fix it.
Tgo01
08-11-2013, 02:39 PM
herbheal doesn't use useherbs at all. It checks that you have useherbs, and refuses to run if useherbs isn't there, but it still doesn't use useherbs in any way.
If useherbs buys too much of something, let me know and I'll fix it.
My bad, I saw this code in there and assumed it was using useherbs to do the healing.
# Lets be cheap and use up the herbs on the benches, lol, then use what we currently have in our herbsack.
if $bench_flag == true
start_script 'useherb' , [ $herb_container ]
wait_while{running?('useherb')}
end
if [Wounds.head, Wounds.neck, Wounds.torso, Wounds.limbs, Wounds.nerves, Scars.head, Scars.neck, Scars.torso, Scars.limbs, Scars.nerves].max > 0 or ((checkhealth + 7) < maxhealth)
start_script 'useherb'
wait_while{running?('useherb')}
end
Tgo01
08-11-2013, 02:40 PM
It would greatly assist in my dex testing and such if you could come up with it... Although I know a couple AvDs are the same but different subgroups.
This is all off the top off of my head but it worked when using a pick:
weapon_avd_numbers = nil
dagger_avd_numbers = [ '25', '23', '22', '21', '20', '15', '13', '11', '9', '10', '6', '2', '-2',
'0', '-6', '-12', '18' ]
asg_numbers = [ '1', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18',
'19', '20' ]
asg_names = [ "cloth", "light leather", "full leather", "reinforced leather", "double leather",
"leather breasteplate", "curiboulil leather", "studded leather", "brigandine armor", "chain mail",
"double chain", "augmented chain", "chain
hauberk", "metal breastplate", "augmented plate", "half plate", "full plate" ]
while line = get
number = 0
if line =~ /You (make a precise )?(attempt to punch|attempt to jab|attempt to grapple|attempt
to kick|swing|thrust|throw|hurl|channel|gesture|fire| punch|mentally attempt to locate|maintain a.*?
connection|weave another verse into your harmony) .* (.*) at/
weapon = $3
if weapon =~ /(pick|dagger)/i
weapon_avd_numbers = dagger_avd_numbers
end
end
if line =~ /with AvD\: \+(\d+)/
avd = $1
weapon_avd_numbers.each{ |i|
if i == avd
echo "ASG is #{asg_numbers.at(number)} #{asg_names.at(number)}"
else
number = number + 1
end
}
end
end
Now we just need to gather all possible ways to swing a weapon (thrust, swing, chop, whatever) and all possible names for every possible weapon and we're in business :p
ETA: Okay so I stole some code from crit_type_checker that should cover all possible ways to attack a critter. Just need the names of all weapons and to add the avd values of all weapons.
Tillmen
08-11-2013, 02:58 PM
My bad, I saw this code in there and assumed it was using useherbs to do the healing.
Weird.. yeah.. that version uses useherbs. The version I'm looking at does not.
Anyway, getting rid of herbheal and doing ;useherbs buy=on is probably the way to go.
Tgo01
08-11-2013, 03:00 PM
Anyway, getting rid of herbheal and doing ;useherbs buy=on is probably the way to go.
Tillmen speaks the truth!
If you're still bored Tgo, could you take a look the Pure script and Combo script?
For Pure script right now when it gets the following message it treats the gem as a orb/pure gem and puts in the specific container which it should not. Basically the sorting of the kind of different kind of gems need to be looked at i think.
You sing a melody, directing the sound of your voice at an uncut diamond.
As the gem vibrates slightly in your hand, you sense that it cannot be purified any further.
Sing Roundtime 3 Seconds.
s>
You sing:
"Diamond, I ask this favor of you
Show the purpose laying beneath your hue"
Roundtime: 10 sec.
As you sing, you feel a faint resonating vibration from the uncut diamond in your hand, and you learn something about it...
From the pitch of the vibration you determine that the purpose of the diamond is as a gem of some kind.
As for the script Combo could you add a check to make sure it's always fighting in offensive stance? every now and then due to lag the offensive stance command doesnt get processed and it just keeps on swinging in defense or what ever the current stance was.
Thanks ahead.
Tgo01
08-11-2013, 07:11 PM
Target Armor calculator.
Determines the weapon type from the attack, checks the AvD of the target, and determines targets (potential) ASG.
Alright so I uploaded what I have so far to the repo as target-armor. Currently it only has edged weapons with the exception of katanas and bastard swords, I'll figure out later how to deal with the fact that their avds change based on one handed or two handed use. If the same avd number for your weapon is used against more than one type of armor the script will list all of the armors with the same number.
If anyone wants to see this script finished faster you can help!
Just go over to Krakkipedia and find a weapon type and list all of the avds of the weapon in order from left to right, that is starting with cloth armor and finishing with full plate.
Please format it as in the following example:
[ '25', '23', '22', '21', '20', '15', '13', '11', '9', '10', '6', '2', '-2', '0', '-6', '-12', '18' ]
Or you can select a weapon type and list the name of the weapon and all alternative names for that same weapon.
Please format it as in the following example:
rapier|bilbo|epee|foil|tock|tocke|tuck|colichemard e|fleuret|schlager|tizona|verdun
Tgo01
08-11-2013, 08:03 PM
For Pure script right now when it gets the following message it treats the gem as a orb/pure gem and puts in the specific container which it should not. Basically the sorting of the kind of different kind of gems need to be looked at i think.
I think this is the part you would need to change:
wait_until('Waiting on mana...') { mana(4) }
fput("loresing " + gstore + loresong) if mana(4)
result = waitfor("pulse", "pulses", "draw power", "gem of some kind")
if result =~ /pulse/
echo("*** THIS GEM IS MAGE RECHARGABLE ***")
exit
end
waitrt?
fput "put my #{gem} in my #{orbsack}"
I haven't tested it but this should make it so only orb/mage rechargeable gems are put into your orb gem sack after the loresong bit and other gems are put into your gem sack:
wait_until('Waiting on mana...') { mana(4) }
fput("loresing " + gstore + loresong) if mana(4)
result = waitfor("pulse", "pulses", "draw power", "gem of some kind")
if result =~ /pulse|pulses|draw power/
echo("*** THIS GEM IS MAGE RECHARGABLE ***") if result =~ /pulse|pulses/
fput "put my #{gem} in my #{orbsack}"
elsif result =~ /gem of some kind/
fput("put my #{gem} in my #{gemsack}")
end
waitrt?
As for the script Combo could you add a check to make sure it's always fighting in offensive stance? every now and then due to lag the offensive stance command doesnt get processed and it just keeps on swinging in defense or what ever the current stance was.
There are two places where it tries to put you into stance offensive, you could add a waitrt? command before each instance and also change the put to an fput. That might solve the problem.
senorgordoburro
08-11-2013, 08:06 PM
One that looks at other character's classes in the game and highlights them based on class.
nm find the extra line I forgot to delete, all good now. thanks again Tgo
Tgo01
08-12-2013, 05:01 AM
Just uploaded loreme to the repo, another script someone requested. This is still a work in progress but I think it's near being complete. What the script will do is sing to an item and after it's done singing it will list all of the important information so you don't have to sift through a lot of loresinging messages to pick out the important stuff.
Here's an example:
--- Lich: loreme active.
[loreme]>loresing sword that I hold;let your value now be told
You sing:
"Sword that I hold
Let your value now be told"
Roundtime: 6 sec.
Roundtime changed to 3 seconds.
As you sing, you feel a faint resonating vibration from the rhimar short sword in your hand, and you learn something about it...
The first thing that strikes you about the sword is the weight, which is about 4 pounds. In your best estimation, it's worth about 1,000,000 silvers. You can also tell that there is some type of metal in the structure of the rhimar short sword.
[loreme]>loresing sword that I hold;let your purpose now be told
You sing:
"Sword that I hold
Let your purpose now be told"
Roundtime: 6 sec.
Roundtime changed to 3 seconds.
As you sing, you feel a faint resonating vibration from the rhimar short sword in your hand, and you learn something about it...
You sense a faint aura of magic around the rhimar short sword. From the pitch of the vibration you determine that the purpose of the sword is as some type of weapon. Also, it seems to have some sort of enhancive properties.
[loreme]>loresing sword that I hold;let your magic now be told
You sing:
"Sword that I hold
Let your magic now be told"
Roundtime: 6 sec.
Roundtime changed to 3 seconds.
As you sing, you feel a faint resonating vibration from the rhimar short sword in your hand...
It has a bonus of +5 from a normal sword, and the way it vibrates in tune with your voice tells you that it requires skill in edged weapons to use effectively. It also has some type of special ability, but you can't tell what yet.
The sword resonates with your voice, indicating that it enhances its owner in the following ways:
It provides a bonus to Agility.
This enhancement may not be used by adventurers who have not trained 13 times.
It provides a bonus to Elemental Lore - Air Ranks.
This enhancement may not be used by adventurers who have not trained 34 times.
It provides a bonus to Max Mana.
This enhancement may not be used by adventurers who have not trained 6 times.
You think that you could probably find out something more about the sword's enhancive properties if you tried.
[loreme]>loresing sword that I hold;let your special ability now be told
You sing:
"Sword that I hold
Let your special ability now be told"
Roundtime: 7 sec.
Roundtime changed to 4 seconds.
As you sing, you feel a faint resonating vibration from the rhimar short sword in your hand...
The harmonics generated tell you that the sword has been infused with the power of an ice elemental.
The sword resonates with your voice, indicating that it enhances its owner in the following ways:
It provides a bonus of 6 to Agility.
This enhancement may not be used by adventurers who have not trained 13 times.
It provides a bonus of 4 to Elemental Lore - Air Ranks.
This enhancement may not be used by adventurers who have not trained 34 times.
It provides a bonus of 4 to Max Mana.
This enhancement may not be used by adventurers who have not trained 6 times.
The sword looks to have a lot of charges remaining.
You sense that the rhimar short sword will persist after its last enhancive charge has been expended.
The script picked out the following important information and listed it after all of that:
Weight: 4 pounds
Value: 1,000,000
Purpose: weapon
Bonus: +5
Flares: ice
Enhancive bonus: 6 to Agility
Enhancive bonus: 4 to Elemental Lore - Air Ranks
Enhancive bonus: 4 to Max Mana
Charges remaining: a lot
Persists on enhancive: Yes
I borrowed the words to the loresongs from Ising.
ETA: I'll be updating the script periodically as I find more item properties the script doesn't recognize. Feel free to send me any logs of your loresinging that the script didn't pick up so I can add it to the script. If the script hangs it means it came across something that it doesn't recognize and you'll have to kill the script.
Methais
08-12-2013, 10:41 AM
Can you write me a script that will e-masturbate? Like a really hot one that I could post on pornhub.
I WANT IT TO BE CONVINCING!
Aluvius
08-12-2013, 11:52 AM
Oooh, loreme is neat! Hmm, as for the lich id's of burst and surge:
9605 Surge of Strength (cman surge)
9606 Surge of Strength Cooldown
9625 Burst of Swiftness (cman burst)
9051 Burst of Swiftness Cooldown
I'd like something like ;surge on the repo where it puts up cman Surge first, then when it drops it puts up cman Burst, then when the Surge Cooldown drops it puts up cman Surge again, then when the Burst Cooldown drops it puts up Burst again, etc. Basically so you could hunt with one of the two up most of the time. Huh, I guess I could tinker around with ;burst and copy/paste some, but you could probably do something more elegant.
Anyway, thanks again even if you don't get around to it .. the ones you already put up are neat, too!
Tgo01
08-12-2013, 02:13 PM
Can you write me a script that will e-masturbate? Like a really hot one that I could post on pornhub.
I WANT IT TO BE CONVINCING!
Oh, it needs to be convincing? :(
9605 Surge of Strength (cman surge)
9605 Surge of Strength Cooldown
9625 Burst of Swiftness (cman burst)
9051 Burst of Swiftness Cooldown
You sure those numbers are right? The surge script says 9606 is to cast surge of strength, is 9605 the cooldown? :P
I'm just assuming 9605 is the surge cooldown and 9606 is to cast the spell, you'll have to tweak the following if that's not correct.
loop{
Spell[9606].cast if !Spell[9606].active? and Spell[9606].affordable? and !Spell[9605].active? and !Spell[9625].active?
Spell[9625].cast if !Spell[9625].active? and Spell[9625].affordable? and !Spell[9051].active? and !Spell[9606].active?
sleep 1
}
That should do what you're asking for but I have no way of testing it so I can't say for sure. Give it a try and let me know.
ETA: That's assuming you only want one of the two active at once, which is sort of what it sounds like you're saying. If I'm mistaken about that let me know.
leifastagsweed
08-12-2013, 03:18 PM
Can you write me a script that will e-masturbate? Like a really hot one that I could post on pornhub.
I WANT IT TO BE CONVINCING!
I was pretty convinced you'd done that already.
doughal
08-12-2013, 03:19 PM
If you are bored, I've got a request.
I find myself out of date on scripts as they get updated on the Repo. I would also like to maintain a copy of everything out there at any given time to comb through for code examples as well so that I don't miss anything cool that might get posted that I don't know about.
So I what I was hoping to create (and failing at), was a script to list everything on the repo then download whatever I don't have an up-to-date version of. Maybe have it run periodically, say once a day, or once a week. And what I was hoping for if I managed to get really fancy would be to have it somehow notify me of whatever new scripts have been downloaded. (I would of course keep a backup copy of my scripts directory since I wouldn't want to blow away great script that might have bugs in a new version.)
I've tried a bit to poke around at this and managed to get it to list what's out on the repo, but that's about as far as I got. That something you'd be interested in?
Tgo01
08-12-2013, 05:58 PM
I've deleted zestme and loreme from the repo and uploaded testme, which combines the two scripts.
Usage:
;testme will inspect/analyze/zest test item in your right hand.
;testme <item name> will inspect/analyze/zest test item you specified.
;testme <item name> <anything> will inspect/analyze/zest test/loresing item you specified.
Example of a short sword that has been testified:
*************************
Loresong information
Weight: 4 pounds
Value: 1,000,000
Purpose: weapon
Bonus: +5
Flares: ice
Enhancive bonus: 6 to Agility
Enhancive bonus: 4 to Elemental Lore - Air Ranks
Enhancive bonus: 4 to Max Mana
Charges remaining: a lot
Persists on enhancive: Yes
*************************
Inspect/Analyze Information
Alteration restrictions: None
Can be lightened: Yes
*************************
*************************
I didn't find any zests.
*************************
Example of a gem that has been testified:
*************************
Loresong information
Weight: under a pound
Value: 800
Purpose: gem
Quality: below average
*************************
Inspect/Analyze Information
Alteration restrictions: None
Can be lightened: Unknown
*************************
*************************
I didn't find any zests.
*************************
Example of a ring that has been testified:
*************************
Loresong information
Weight: under a pound
Value: 700
Purpose: jewelry
*************************
Inspect/Analyze Information
Alteration restrictions: None
Max lightened: Yes
Wearable location: finger
*************************
*************************
I didn't find any zests.
*************************
Pin:
*************************
Loresong information
Weight: under a pound
Value: 300
Purpose: magical
Crumbly: After last magical charge
Blank imbeddable: holds small amount of mana
*************************
Inspect/Analyze Information
Alteration restrictions: None
Can be lightened: Unknown
Wearable location: anywhere
*************************
*************************
I didn't find any zests.
*************************
Aluvius
08-12-2013, 06:18 PM
You sure those numbers are right? The surge script says 9606 is to cast surge of strength, is 9605 the cooldown? :P
I'm just assuming 9605 is the surge cooldown and 9606 is to cast the spell, you'll have to tweak the following if that's not correct.
That should do what you're asking for but I have no way of testing it so I can't say for sure. Give it a try and let me know.
ETA: That's assuming you only want one of the two active at once, which is sort of what it sounds like you're saying. If I'm mistaken about that let me know.
Oh shoot, yeah sorry for the typo. I think the surge script is looking for the cooldown 9606 and is using cman surge to actually activate it instead of 9605. Then again, I'm just activating them and using ;magic to see the id's, I hope that's correct. And yes, just looking to keep one active at a time as I'm more interested in mitigating any rt I might get from encumbrance, the other effects are just nice to have. My dwarf is in CoL so I can pretty much keep these up constantly throughout a hunt. :)
Surge - 9605
Surge Cooldown - 9606
Edited to add: I swapped the 9505/9606 numbers in the script and it works great! I also added a pause in between the lines since the first time it was so quick it didn't pick up that 9605 was active and fired off 9625 right away.
Thanks man!
Merala
08-12-2013, 06:27 PM
Apparently I send out so much rep, I still cannot rep you for that awesome zestme script even though the last time I repped you was in February. I need to rep more.
Any one know a work around for this useherb bug? I set the herb container to my leather survival Kit (from EG I believe) but useherb always looks inside my Toolkit (for lockpicking items) instead. Thanks ahead
Tgo01
08-14-2013, 03:12 PM
Any one know a work around for this useherb bug? I set the herb container to my leather survival Kit (from EG I believe) but useherb always looks inside my Toolkit (for lockpicking items) instead. Thanks ahead
Did you set your herbsack to leather kit/survival kit (whichever one works) or just kit?
Tgo01
08-14-2013, 03:25 PM
Try setting it to leather kit/survival kit, whichever one would indicate your kit. Pretty sure it's leather kit.
Danical
08-14-2013, 03:28 PM
As an aside, you can reduce the RT on loresongs to 5. You only need two lines and there's a character threshold (you can use blank spaces) for each line or the aggregate of both, I can't remember but I think it's the former. As long as it parses the item in your hand and the appropriate word per the verse, you're good to go.
>loresong sword I eat; cocks . . . . . . . .
If you were looking to maximize the experience you get from loresinging (up to 1k per 24 hour period; this used to be totally unlimited wherein you could sit fried on a node and loresing 24 hours a day), each successive verse gives an escalating amount of exp and the exp within the verse is determined simply by the number of lines while the RT for the loresong is determined by the number of characters in the entire verse. I think the min lines within verse to maximize your exp is 4 or 6 or 23490238. So, you could do something like this:
>loresong sword, I eat;lots of cocks;they are tasty;love dem cocks;prophesy2012;cokephone
I'd have to dig out my loresinging scripts to make sure, but you can validate it pretty easily.
yeh will do, make you wonder why it would go for toolkit since Kit isn't even the word for it.
Tgo01
08-14-2013, 03:46 PM
stuff
Interesting, I'll have to play around with that. Thank ya.
yeh will do, make you wonder why it would go for toolkit since Kit isn't even the word for it.
Oops, I had assumed it was a tool kit and you just didn't put the space there. Not sure then.
Tgo01
08-14-2013, 03:57 PM
Stuff
Looks like the magic number is 40.
Whirlin
08-14-2013, 04:04 PM
>loresong sword, I eat;lots of cocks;they are tasty;love dem cocks;prophesy2012;cokephone
I'd have to dig out my loresinging scripts to make sure, but you can validate it pretty easily.
I can see Danical singing this in TSC
Tgo01
08-14-2013, 04:11 PM
You sing:
"Sword
Special ability ...................."
Roundtime: 5 sec.
As you sing, you feel a faint resonating vibration from the rhimar short sword in your hand...
The harmonics generated tell you that the sword has been infused with the power of an ice elemental.
The sword resonates with your voice, indicating that it enhances its owner in the following ways:
It provides a bonus of 6 to Agility.
This enhancement may not be used by adventurers who have not trained 13 times.
It provides a bonus of 4 to Elemental Lore - Air Ranks.
This enhancement may not be used by adventurers who have not trained 34 times.
It provides a bonus of 4 to Max Mana.
This enhancement may not be used by adventurers who have not trained 6 times.
The sword looks to have a lot of charges remaining.
You sense that the rhimar short sword will persist after its last enhancive charge has been expended.
That's awesome.
Whirlin
08-15-2013, 10:29 AM
Queueing up another script... which may or may not exist.
Just a simple flare-tracker that tracks all types of weapon flares, pally bond flares, Bard double flares, and Ensorcells, but also has a couple different counts... # of swings, # of killing blows, and maybe a third for # of flare kills... because that'd just mess with both the other counts.
Tgo01
08-15-2013, 12:46 PM
Just a simple flare-tracker that tracks all types of weapon flares, pally bond flares, Bard double flares, and Ensorcells, but also has a couple different counts... # of swings, # of killing blows, and maybe a third for # of flare kills... because that'd just mess with both the other counts.
You mean track things like how often the weapon flares and how often the flare gets the killing blow and how often the flare kills the critter? Aren't those last two the same?
Buckwheet
08-15-2013, 12:53 PM
I think he means.
100 swings
15 flares
of the 100 swings 90 were fatal swings
of the 15 flaes 10 caused the fatality
Tgo01
08-15-2013, 12:56 PM
I think he means.
100 swings
15 flares
of the 100 swings 90 were fatal swings
of the 15 flaes 10 caused the fatality
Ah, that makes more sense.
Whirlin
08-15-2013, 01:01 PM
Nah, one is when the swing is the killing blow (without flare)
One when the swing flare is the killing bow (with flare)
Since flare can't proc if the critter is dead before the flare would go off, but it could proc to kill, you'd normally remove killing blows from the equation for non-ensorcell flares.
(Observed Flares = count of flare occurrence)
(Total eligible swings = total swings - killing blows) (for non-Ensorcell flares)
(Flare % = Observed Flares / Total eligible swings)
However, since a flare killing blow would be counted a 1 Flare, 1 Swing, 1 Killing blow, it would net out on the total eligible swing calculation, thus artificially increasing the numerator of the Flare % by 1, which could skew the % activation. This also becomes EXTRA SUPER FUN complex for Bard And/or Double flares.
Arguably... ignoring anything that occurs on the killing blow could work too.
I guess you'd also need to count occurrences where Ensorcell's Acuity is active... since more ensorcell procs can't proc off of that.
Man... I ask for a lot.
Tgo01
08-15-2013, 01:06 PM
Nah, one is when the swing is the killing blow (without flare)
One when the swing flare is the killing bow (with flare)
Since flare can't proc if the critter is dead before the flare would go off, but it could proc to kill, you'd normally remove killing blows from the equation for non-ensorcell flares.
(Observed Flares = count of flare occurrence)
(Total eligible swings = total swings - killing blows) (for non-Ensorcell flares)
(Flare % = Observed Flares / Total eligible swings)
However, since a flare killing blow would be counted a 1 Flare, 1 Swing, 1 Killing blow, it would net out on the total eligible swing calculation, thus artificially increasing the numerator of the Flare % by 1, which could skew the % activation. This also becomes EXTRA SUPER FUN complex for Bard And/or Double flares.
Arguably... ignoring anything that occurs on the killing blow could work too.
I guess you'd also need to count occurrences where Ensorcell's Acuity is active... since more ensorcell procs can't proc off of that.
Man... I ask for a lot.
Well this script was sounding pretty easy and fast to do. Need me to do your taxes while I'm at it? :p
Let's start simple, can you give me a swing log of the weapon you plan on using with the flare going off?
Whirlin
08-15-2013, 01:16 PM
Well this script was sounding pretty easy and fast to do. Need me to do your taxes while I'm at it? :p
Let's start simple, can you give me a swing log of the weapon you plan on using with the flare going off?
You're talking to someone with a masters degree in accountancy from one of the top accounting schools in the nation... taxes are easy... Should picked rocket surgery.
I'll grab some logs tonight.
Cereal Killer
08-15-2013, 01:17 PM
I've been unsuccessfully searching for a script that will accurately keep track of how often I've ranked up in an artisan skill. The line would be "Aha, you learned something that time."
Whirlin
08-15-2013, 01:19 PM
Why not just use the Artisan Skill verb in game to check current ranks?
You could always just run it as a Wiz Script:
%i=0
Start:
Waitfor Aha, you learned something
%i+1=%i
echo %i ranks gained
goto start
Gelston
08-15-2013, 01:22 PM
I need a fully interactive cyber script. I'd like for it to have over 500 actions and be able to respond to about 100 or so different words. I need it to be a fully AFK script.
Tgo01
08-15-2013, 01:36 PM
I need a fully interactive cyber script. I'd like for it to have over 500 actions and be able to respond to about 100 or so different words. I need it to be a fully AFK script.
I already told you, I am NOT sharing my personal scripts!
Whirlin
08-15-2013, 02:16 PM
I already told you, I am NOT sharing my personal scripts!
Ok Gib
Methais
08-15-2013, 02:35 PM
Whirlin and I have decided in his wizard guide thread that you shall create a flare tracking script that includes death shots immediately.
Failure to do so would only prove how racist you are.
Buckwheet
08-15-2013, 02:45 PM
You also need to make a better rapid fire 901 script.
Khelbaen
08-15-2013, 03:27 PM
I'd love a script that watched for my blessing to fall off, and then casts symbol of blessing. useable with bigshot would be great...
Tgo01
08-15-2013, 03:41 PM
I'd love a script that watched for my blessing to fall off, and then casts symbol of blessing. useable with bigshot would be great...
What's the messaging for when blessing falls off?
Wheelerm
08-15-2013, 03:45 PM
Your <<whatever>> returns to normal.
Rolis
08-15-2013, 03:49 PM
I'd love a script that watched for my blessing to fall off, and then casts symbol of blessing. useable with bigshot would be great...
Im pretty sure this exists on the repository as bless or keepbless.
Methais
08-15-2013, 04:04 PM
You also need to make a better rapid fire 901 script.
If the one I posted in the wizard guide thread were converted to a lich script it would rule.
Buckwheet
08-15-2013, 04:06 PM
If the one I posted in the wizard guide thread were converted to a lich script it would rule.
You are correct.
Rolton-Sammich
08-15-2013, 04:21 PM
Im pretty sure this exists on the repository as bless or keepbless.
;keepbless is a little weak... it only waits until it gets "has no effect" (i.e., you already swung with an unblessed weapon), and it only blesses the weapon in your right hand. So it sucks for TWC, sucks for UAC, and is inefficient.
I just wrote ;stayblessed, so try that. As for "useable with bigshot," I don't know what that means, but I threw in a couple pauses?
Rolton-Sammich
08-15-2013, 04:39 PM
If the one I posted in the wizard guide thread were converted to a lich script it would rule.
Lich can go faster. Try ;electrocute. I can't test it myself... how's around 10 casts per second as a default?
Yeah, I was bored this afternoon and horned in on this thread.
https://www.youtube.com/watch?v=30GD25un0XQ
Tgo01
08-15-2013, 05:01 PM
Lich can go faster. Try ;electrocute. I can't test it myself... how's around 10 casts per second as a default?
Yeah, I was bored this afternoon and horned in on this thread.
Oh! M! Gee!
How dare you be helpful in my thread!
Tgo01
08-15-2013, 05:34 PM
I just had to share this rep:
Thread: Bored...anyone need a script written?
fuck it, write your own flare counting script
Buckwheet
08-15-2013, 05:36 PM
I think calcflares does some of that, but not sure how expansive it is.
Whirlin
08-15-2013, 05:37 PM
Shouldn't that be for me?
I'm actually disappoint I didn't get it :(
Tgo01
08-15-2013, 06:35 PM
I think calcflares does some of that, but not sure how expansive it is.
I don't see that script on the repo.
Methais
08-15-2013, 06:41 PM
Lich can go faster. Try ;electrocute. I can't test it myself... how's around 10 casts per second as a default?
Yeah, I was bored this afternoon and horned in on this thread.
https://www.youtube.com/watch?v=30GD25un0XQ
I never tracked the casts per second, but I'm pretty sure my script does at least that much.
The thing I hate about normal .cmd scripts is you can't macro them with a /r at the end, as it just won't register. You can macro it without /r and hit enter manually and it'll work, but that's annoying. I never knew why it does that, but it just does.
Danical
08-15-2013, 06:47 PM
Whenever doing research type scripts, I recommend writing a script that analyzes text files--or better, all text files in a folder, recursively--for all instances of what you're matching and run the procedure + functions. Of course, you could modularize the in game script and apply the same procedures to entire text files, you just lose live data. You can then output it to a text file, or my personal favorite, a local host installation of MySQL so I can then run analytics on it via SAS or SPSS. Yes, I've done logistic regression on a gemstone dataset to try and determine which factors appear to be the most predictive for an outcome. Excellent use of education. However, it's almost always more accurate to ask the Dev GM involved in the creation of the object for the factors.
Danical
08-15-2013, 06:49 PM
I don't see that script on the repo.
That's a shame. It was one of the very first scripts Shaelun/Murray wrote, at least to my knowledge. His song of power script made life a billion times easier for my bard until I could do more than herp-a-derp with Ruby.
Rolton-Sammich
08-15-2013, 07:23 PM
I never tracked the casts per second, but I'm pretty sure my script does at least that much.
The thing I hate about normal .cmd scripts is you can't macro them with a /r at the end, as it just won't register. You can macro it without /r and hit enter manually and it'll work, but that's annoying. I never knew why it does that, but it just does.
Well basically with a lich script you can change the number to as high as Simu will allow you to dump commands. If you ask it to, Lich will cheerfully spam "incant 901" fast enough to get you kicked (but ;electrocute default = now closer to 20 casts per second) .
Your script is fast -- but with castpersecond set to 20, ;electrocute is significantly faster.
I can't get above 30ish real commands per second before I'm inundated with "Sorry, you may only type ahead 2 commands." My ping to router.play.net is around 25ms with spikes up to 100ms, so your mileage may vary.
Note 1: I found a wizard with Rapid Fire but, uh.... no 901. Obviously, the actual script uses 901.
Note 2: Stupid spell hindrance!
Note 3: I've updated ;electrocute because checknpcs is a pain what with familiars or other friendly npcs. So it just checks for 'no target' responses.
>;elec
--- Lich: electrocute active.
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
You intone a phrase of elemental power while raising your hands, invoking Sleep...
Your spell is ready.
You gesture at a giant rat.
CS: +86 - TD: +3 + CvA: +25 + d100: +64 == +172
Warding failed!
A giant rat's eyes roll up into its head as it slumps to the ground.
[Spell re-prepared]
Cast Roundtime 3 Seconds.
>
You gesture at a giant rat.
A giant rat is awakened by your attack!
CS: +86 - TD: +3 + CvA: +25 + d100: +34 == +142
Warding failed!
A giant rat's eyes roll up into its head as its body goes limp on the ground.
[Spell re-prepared]
Cast Roundtime 3 Seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
You gesture at a giant rat.
A giant rat is awakened by your attack!
CS: +86 - TD: +3 + CvA: +25 + d100: +80 == +188
Warding failed!
A giant rat's eyes roll up into its head as its body goes limp on the ground.
[Spell re-prepared]
Cast Roundtime 3 Seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
You gesture at a giant rat.
A giant rat is awakened by your attack!
CS: +86 - TD: +3 + CvA: +25 + d100: +88 == +196
Warding failed!
A giant rat's eyes roll up into its head as its body goes limp on the ground.
[Spell re-prepared]
Cast Roundtime 3 Seconds.
>
You gesture at a giant rat.
A giant rat is awakened by your attack!
CS: +86 - TD: +3 + CvA: +25 + d100: +93 == +201
Warding failed!
A giant rat's eyes roll up into its head as its body goes limp on the ground.
[Spell re-prepared]
Cast Roundtime 3 Seconds.
>
You gesture at a giant rat.
[Spell Hindrance for some deep green faenor-edged leathers is 6% with current Armor Use skill, d100= 4]
Your armor prevents the spell from working correctly.
Cast Roundtime 3 Seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
[electrocute]>incant 501
...wait 3 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
...wait 3 seconds.
>
...wait 3 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
...wait 3 seconds.
>
...wait 3 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
...wait 3 seconds.
>
...wait 3 seconds.
>
[electrocute]>incant 501
...wait 3 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
Sorry, you may only type ahead 2 commands.
Sorry, you may only type ahead 2 commands.
Sorry, you may only type ahead 2 commands.
>
[electrocute]>incant 501
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
...wait 3 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
Sorry, you may only type ahead 2 commands.
Sorry, you may only type ahead 2 commands.
Sorry, you may only type ahead 2 commands.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
Sorry, you may only type ahead 2 commands.
Sorry, you may only type ahead 2 commands.
>
[electrocute]>incant 501
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
[electrocute]>incant 501
Sorry, you may only type ahead 2 commands.
>
[electrocute]>incant 501
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
Sorry, you may only type ahead 2 commands.
Sorry, you may only type ahead 2 commands.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
...wait 2 seconds.
>
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
[electrocute]>incant 501
...wait 2 seconds.
>
[electrocute]>incant 501
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
[electrocute]>incant 501
>;k
[electrocute]>incant 501
...wait 2 seconds.
>
...wait 2 seconds.
>
--- Lich: electrocute has exited.
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
>
...wait 2 seconds.
Methais
08-15-2013, 07:50 PM
Nice, I'll have to check that out tomorrow.
Does it stance and loot for you too by any chance? Mine will put you in offensive, spam 901 until everything is dead, and then run ;sloot3 which I have set to put me back to guarded.
Rolton-Sammich
08-15-2013, 09:28 PM
Yeah, it's a fairly close translation of your script. It releases a spell (if needed), puts you into offensive (if needed), spams 901 until the game starts saying there's no target, then goes to defensive and fires up ;sloot3. You could get rid of the 'stance def' at the end if sloot does it for you, of course.
Tgo01
08-15-2013, 10:13 PM
Well it's pretty simple for now but you can play with it if you want.
flare_types = /(flares with a burst of fire!|ENTER YOUR FLARE TYPE HERE)/i
Settings['non_kill_swings'] = 0 if Settings['non_kill_swings'].nil?
Settings['total_flares'] = 0 if Settings['total_flares'].nil?
Settings['death_swings'] = 0 if Settings['death_swings'].nil?
Settings['death_flares'] = 0 if Settings['death_flares'].nil?
Settings['total_swings'] = 0 if Settings['total_swings'].nil?
Settings['flares_minus_death_flares'] = 0 if Settings['flares_minus_death_flares'].nil?
math_total_everything = Settings['total_flares'].to_f / Settings['total_swings']
math_ignore_death_attacks = Settings['flares_minus_death_flares'].to_f / Settings['non_kill_swings']
math_total_flares_and_swings = Settings['total_swings'].to_f / Settings['non_kill_swings']
flared = nil
if script.vars[1] == "reset"
Settings['non_kill_swings'] = 0
Settings['total_flares'] = 0
Settings['death_swings'] = 0
Settings['death_flares'] = 0
Settings['total_swings'] = 0
Settings['flares_minus_death_flares'] = 0
echo "Your data has been reset."
end
respond "Total Swings: #{Settings['total_swings']} | Total Flares: #{Settings['total_flares']} | Death Swings: #{Settings['death_swings']} | Death Flares: #{Settings['death_flares']}"
respond "Percent: Total Flares / Total swings: #{math_total_everything}"
respond "Percent: Ignore all death attacks: #{math_ignore_death_attacks}"
respond "Percent: Total flares / no non flaring deaths: #{math_total_flares_and_swings}"
while line = get
if line =~ /You cough./
respond "Total Swings: #{Settings['total_swings']} | Total Flares: #{Settings['total_flares']} | Death Swings: #{Settings['death_swings']} | Death Flares: #{Settings['death_flares']}"
respond "Percent: Total Flares / Total swings: #{math_total_everything}"
respond "Percent: Ignore all death attacks: #{math_ignore_death_attacks}"
respond "Percent: Total flares / non death swings: #{math_total_flares_and_swings}"
end
if line =~ /You (swing|gesture|sing|weave another verse|continue to sing|channel|fire|wave|tap|rub|hurl|thrust|slash|t hrow|punch|attempt to punch|attempt to kick|attempt to throw).*at an? (.*)(\.|\!)/i
target = $2
while line = get
if line =~ /points? of damage/i
while line = get
if line =~ flare_types
Settings['total_flares'] += 1
Settings['non_kill_swings'] += 1
flared = "yes"
Settings['death_flares'] =+ 1 if GameObj.npcs.find { |npc| npc.name == target and (npc.status == 'dead') }
end
break if line =~ /Roundtime/i
end
Settings['non_kill_swings'] += 1 if line =~ /Roundtime/i and flared != "yes" and GameObj.npcs.find { |npc| npc.name == target and (npc.status != 'dead') }
Settings['death_swings'] += 1 if GameObj.npcs.find { |npc| npc.name == target and (npc.status == 'dead') } and flared != "yes"
Settings['total_swings'] = Settings['non_kill_swings'] + Settings['death_swings']
Settings['flares_minus_death_flares'] = Settings['total_flares'] - Settings['death_flares']
math_total_everything = Settings['total_flares'].to_f / Settings['total_swings']
math_ignore_death_attacks = Settings['flares_minus_death_flares'].to_f / Settings['non_kill_swings']
math_total_flares_and_swings = Settings['total_flares'].to_f / Settings['non_kill_swings']
flared = nil if line =~ /Roundtime/i
break if line =~ /Roundtime/i
end
break if line =~ /Roundtime/i
end
end
end
Just be sure to add whatever your weapon's flare looks like at the top there. It doesn't save any information yet so as soon as you kill the script you'll lose all data. It should keep track of total number of swings, number of swings that resulted in death from a non flare attack, total number of deaths from a flare attack and total number of flares. After each successful attack it will tell you the previous information as well as your flaring percent for total flares / total swings, ignore all death attacks and total flares / total non fatal attacks.
Also be sure to loot any dead critters in the room of the same kind you are about to attack otherwise it will screw with the numbers. Also I suppose it's possible if you're hunting with someone and you miss your attack but shortly afterward your partner swings and hits or if you hit and their weapon flares that it would screw with the numbers too.
...just have less friends and problem solved!
You swing an ice pick at a leaper!
AS: +58 vs DS: +10 with AvD: +23 + d100 roll: +87 = +158
... and hit for 22 points of damage!
Slash to the leaper's chest!
That heart's not broken, it's only scratched.
The leaper collapses to the ground, emits a final snarl, and dies.
The scintillating red light surrounding the pick fades some.
Roundtime: 3 sec.
Roundtime changed to 1 second.
Total Swings: 12 | Total Flares: 2 | Death Swings: 1 | Death Flares: 1
Percent Total Flares / Total swings: 0.166666666666667
Percent Ignore all death attacks: 0.0909090909090909
Percent total flares no non flaring deaths: 0.181818181818182
Tgo01
08-16-2013, 12:46 PM
Alright I updated the script in the previous post. It will now keep track of your stats even after you kill the script and logoff the game.
If you want to see your stats just cough (your character, not you) while the script is running, if you want to reset your stats kill the script and type ;whateveryounamedyourscript reset
ETA: Fixed a bug in the previous code that wasn't properly keeping track of swings if you missed an attack.
There is still the slight chance of you missing an attack and your partner swinging at the same time and it counting towards your attacks, but this would have to be like right at the exact same moment.
You swing an ice pick at a lesser orc!
AS: +75 vs DS: -7 with AvD: +15 + d100 roll: +75 = +172
... and hit for 12 points of damage!
Awkward slash to the lesser orc's stomach!
Everyone needs another belly button.
** As you hit, your pick flares with a burst of fire! **
... 5 points of damage!
Minor burns to left hand. Ouch.
A lesser orc screams one last time and dies.
The scintillating red light surrounding the pick fades some.
Roundtime: 3 sec.
Roundtime changed to 1 second.
You cough.
Total Swings: 12 | Total Flares: 3 | Death Swings: 1 | Death Flares: 1
Percent: Total Flares / Total swings: 0.25
Percent: Ignore all death attacks: 0.181818181818182
Percent: Total flares / non death swings: 0.272727272727273
Tgo01
08-16-2013, 08:29 PM
Updated the crit tracker script a teensy bit.
flare_types = /(flares with a burst of fire!|ENTER YOUR FLARE TYPE HERE)/i
Settings["non_kill_swings#{checkright}"] = 0 if Settings["non_kill_swings#{checkright}"].nil?
Settings["total_flares#{checkright}"] = 0 if Settings["total_flares#{checkright}"].nil?
Settings["death_swings#{checkright}"] = 0 if Settings["death_swings#{checkright}"].nil?
Settings["death_flares#{checkright}"] = 0 if Settings["death_flares#{checkright}"].nil?
Settings["total_swings#{checkright}"] = 0 if Settings["total_swings#{checkright}"].nil?
Settings["flares_minus_death_flares#{checkright}"] = 0 if Settings["flares_minus_death_flares#{checkright}"].nil?
Settings["math_total_everything_#{checkright}"] = Settings["total_flares#{checkright}"].to_f / Settings["total_swings#{checkright}"]
Settings["math_ignore_death_attacks_#{checkright}"] = Settings["flares_minus_death_flares#{checkright}"].to_f / Settings["non_kill_swings#{checkright}"]
Settings["math_total_flares_and_swings_#{checkright}"] = Settings["total_flares#{checkright}"].to_f / Settings["non_kill_swings#{checkright}"]
flared = nil
if script.vars[1] == "reset"
Settings["non_kill_swings#{checkright}"] = 0
Settings["total_flares#{checkright}"] = 0
Settings["death_swings#{checkright}"] = 0
Settings["death_flares#{checkright}"] = 0
Settings["total_swings#{checkright}"] = 0
Settings["flares_minus_death_flares#{checkright}"] = 0
Settings["math_total_everything_#{checkright}"] = 0
Settings["math_ignore_death_attacks_#{checkright}"] = 0
Settings["math_total_flares_and_swings_#{checkright}"] = 0
echo "Your data has been reset."
end
respond "\n"
respond "#{checkright} stats"
respond "Total Swings: #{Settings["total_swings#{checkright}"]} | Total Flares: #{Settings["total_flares#{checkright}"]} | Death Swings: #{Settings["death_swings#{checkright}"]} | Death Flares: #{Settings["death_flares#{checkright}"]}"
respond "Percent: Total Flares / Total swings: #{Settings["math_total_everything_#{checkright}"]}"
respond "Percent: Ignore all death attacks: #{Settings["math_ignore_death_attacks_#{checkright}"]}"
respond "Percent: Total flares / non death swings: #{Settings["math_total_flares_and_swings_#{checkright}"]}"
respond "\n"
while line = get
if line =~ /You cough./
respond "\n"
respond "#{checkright} stats"
respond "Total Swings: #{Settings["total_swings#{checkright}"]} | Total Flares: #{Settings["total_flares#{checkright}"]} | Death Swings: #{Settings["death_swings#{checkright}"]} | Death Flares: #{Settings["death_flares#{checkright}"]}"
respond "Percent: Total Flares / Total swings: #{Settings["math_total_everything_#{checkright}"]}"
respond "Percent: Ignore all death attacks: #{Settings["math_ignore_death_attacks_#{checkright}"]}"
respond "Percent: Total flares / non death swings: #{Settings["math_total_flares_and_swings_#{checkright}"]}"
respond "\n"
end
if line =~ /You (swing|gesture|sing|weave another verse|continue to sing|channel|fire|wave|tap|rub|hurl|thrust|slash|t hrow|punch|attempt to punch|attempt to kick|attempt to throw).*at an? (.*)(\.|\!)/i
target = $2
while line = get
if line =~ /points? of damage/i
while line = get
if line =~ flare_types
Settings["total_flares#{checkright}"] += 1
Settings["non_kill_swings#{checkright}"] += 1
flared = "yes"
critter_dead = "yes" if GameObj.npcs.any? { |npc| npc.name == target and (npc.status == 'dead') }
Settings["death_flares#{checkright}"] =+ 1 if critter_dead == "yes"
break if line =~ flare_types
end
critter_dead = "yes" if GameObj.npcs.any? { |npc| npc.name == target and (npc.status == 'dead') }
Settings["non_kill_swings#{checkright}"] += 1 if line =~ /(Roundtime\:|Cast Roundtime)/i and flared != "yes" and critter_dead != "yes"
Settings["death_swings#{checkright}"] += 1 if line =~ /(Roundtime\:|Cast Roundtime)/i and critter_dead == "yes" and flared != "yes"
Settings["total_swings#{checkright}"] = Settings["non_kill_swings#{checkright}"] + Settings["death_swings#{checkright}"]
Settings["flares_minus_death_flares#{checkright}"] = Settings["total_flares#{checkright}"] - Settings["death_flares#{checkright}"]
Settings["math_total_everything_#{checkright}"] = Settings["total_flares#{checkright}"].to_f / Settings["total_swings#{checkright}"]
Settings["math_ignore_death_attacks_#{checkright}"] = Settings["flares_minus_death_flares#{checkright}"].to_f / Settings["non_kill_swings#{checkright}"]
Settings["math_total_flares_and_swings_#{checkright}"] = Settings["total_flares#{checkright}"].to_f / Settings["non_kill_swings#{checkright}"]
(critter_dead = nil;flared = nil;break) if line =~ /(Roundtime\:|Cast Roundtime)/i
end
end
break if line =~ /(Roundtime\:|Cast Roundtime)/i
end
end
end
It should only count a double flare once now, if you want to track one type of flare (can weapons have more than one type of flare?) then just put that flare in the list of flares there.
Script keeps track of stats based on what weapon is in your right hand, so if you had two weapons you wanted to test you can switch back and forth between them without having to set anything or stop the script. This goes by the name of the weapon though (pick, sword, falchion) so if you're trying to test two weapons of the same type you'll have to reset the stats when starting with a new weapon, or you could just create two tracking scripts with different names and do it that way.
TWC will not work with this script. You must loot any dead critters in the room before attacking a new critter if you want accurate numbers (I could probably fix this limitation if I had a list of all possible death messaging, I thought it was built into lich somewhere but I couldn't find it). Casting spells that cause damage adds the stats to whatever weapon is in your right hand, so if you were trying to keep track of your sword's stats and you cast 901 at a critter it would count as a swing on your sword if it was in your right hand, spells that don't cause damage won't muck up the stats.
Tgo01
08-17-2013, 12:45 AM
Target Armor calculator.
Determines the weapon type from the attack, checks the AvD of the target, and determines targets (potential) ASG.
This script is finished now and on the repo as target-armor.
ROTOR
08-17-2013, 05:44 AM
;keepbless is a little weak... it only waits until it gets "has no effect" (i.e., you already swung with an unblessed weapon), and it only blesses the weapon in your right hand. So it sucks for TWC, sucks for UAC, and is inefficient.
I just wrote ;stayblessed, so try that. As for "useable with bigshot," I don't know what that means, but I threw in a couple pauses?
Speaking of bless, would be great if the script (haven't looked, so maybe does this already) would keep the bless of anyone in my group using 304.
ROTOR
08-17-2013, 06:00 AM
Speaking of bless, would be great if the script (haven't looked, so maybe does this already) would keep the bless of anyone in my group using 304.
Also, perhaps there is one already, but would like a script to keep haste running on anyone in my group as well. Grouphaste is ok but you have to keep thumping (or whatever verb you want) to renew the haste.
Whirlin
08-17-2013, 10:17 AM
Also, perhaps there is one already, but would like a script to keep haste running on anyone in my group as well. Grouphaste is ok but you have to keep thumping (or whatever verb you want) to renew the haste.
;haste kinda works for that... it just looks for the wearing off messages, and recasts 506 on the target... Not the best, and if you have spell hindrance, miscast, etc... it'll fail... but it's something.
Snoopy Dogg
08-17-2013, 12:55 PM
i got one for you.. if this is still goin on cause im not reading 9 previous pages. when Alfreds gone and no rescues are happenin.. i need somethin that'll watch for private lnets askin me for a rescue, lnet locate them and grab the room#, go and drag them back to the town cleric.
CaptContagious
08-21-2013, 06:26 PM
Don't know if there is one already but I'd love an attack sqeuencer
Basicly pulling the attacking part of big shot out to use without the other stuff.
senorgordoburro
08-21-2013, 06:37 PM
A script that tracks mana per kill, and averages it out. Would be fun to use when comparing builds.
Tgo01
08-21-2013, 07:53 PM
Don't know if there is one already but I'd love an attack sqeuencer
Basicly pulling the attacking part of big shot out to use without the other stuff.
You mean something like this?
attack = 0
sequence = [ "wave", "sneeze", "401" ]
loop{
if sequence.at(attack) =~ /\d/
Spell[sequence.at(attack)].cast
else
fput "#{sequence.at(attack)}"
end
attack = (attack + 1) % sequence.length
}
Obviously wave and sneeze were just used for testing purposes, those might not be very effective commands while hunting.
CaptContagious
08-21-2013, 10:34 PM
I mean the enitre thing. like wait 30, attack (x2). or force 706 until 101 then 705 (x20) possibly even the target A, B or C thing to. I see big shot as a smart Wander/auto attack script. I would love to be able to just smash a key and it know that TargetA is in the room and this is the attack sequence i want to do to it.
Buckwheet
08-24-2013, 05:09 PM
How about using a gambling kit and doing automated payouts?
Buckwheet
08-31-2013, 01:15 PM
I wonder if a loot sales tracking would be beneficial? I have always been interested in collecting data from across the game based on all the sales factors.
Something that would work like playershops where you run it to sell gems and it looks at some information and then uploads it to a website.
senorgordoburro
08-31-2013, 01:44 PM
A script that tracks mana per kill, and averages it out. Would be fun to use when comparing builds.
No love?
hi Tg,
if you have time, anyway to add a option to tell the current sloot4 on Repo to stop picking up cursed item/gems?
Thanks
Buckwheet
08-31-2013, 05:31 PM
It doesn't have the exclude options that sloot2 has?
Tgo01
08-31-2013, 05:42 PM
No love?
It sounds like an interesting script so I'll probably write it someday when I get the time if no one else does it first.
hi Tg,
if you have time, anyway to add a option to tell the current sloot4 on Repo to stop picking up cursed item/gems?
Thanks
I'd say use loot instead :p
yeh sloot4 has no exclude option
GS4-Seomanthe
09-03-2013, 12:52 PM
Another wishlist script just occurred to me... One to squelch OOC whispers in the game window and punt them to the familiar, room, or other window -- I like making LOTR jokes during throwing-mysterious-artifacts-into-volcano events as much as the next guy, but sometimes I get completely derailed and lose track of what is going on around me...
doughal
09-30-2013, 12:52 AM
How about a script to keep an eye out for your weapon disappearing? This one would be useful for a lot of folks I think. For my Bard who is doing escorts right now, every time he climbs a boulder or does anything that causes him to put his weapon away, it disappears since he is using a sonic weapon, so he spends the rest of the journey weaponless. For my warrior, it would be great so that I could try and take action when he gets disarmed or loses it for whatever reason.
Do you know of anything out there on the repo now that might work that I could hack at to get it to function as I need it? Or would you be willing to take this on?
Velfi
09-30-2013, 01:01 AM
I would love a script that can look at boxes on the ground and tell me how many duplicates there are, ie 2 monir boxes, 3 fel strongboxes, 2 mithril trunks, etc.
When I'm manually picking a room full of boxes my main issue is keeping track of which boxes (wood + boxtype) have multiples, and some sort of list to display and knock out first would be awesome.
Tgo01
09-30-2013, 01:55 AM
How about a script to keep an eye out for your weapon disappearing? This one would be useful for a lot of folks I think. For my Bard who is doing escorts right now, every time he climbs a boulder or does anything that causes him to put his weapon away, it disappears since he is using a sonic weapon, so he spends the rest of the journey weaponless. For my warrior, it would be great so that I could try and take action when he gets disarmed or loses it for whatever reason.
Do you know of anything out there on the repo now that might work that I could hack at to get it to function as I need it? Or would you be willing to take this on?
If such a script doesn't exist I could probably do that one real quick when I get some time.
I would love a script that can look at boxes on the ground and tell me how many duplicates there are, ie 2 monir boxes, 3 fel strongboxes, 2 mithril trunks, etc.
When I'm manually picking a room full of boxes my main issue is keeping track of which boxes (wood + boxtype) have multiples, and some sort of list to display and knock out first would be awesome.
What's wrong with using tpick? :(
Velfi
09-30-2013, 01:58 AM
What's wrong with using tpick? :(
Nothing, I have it too, but I do actually enjoy opening boxes myself... just not making them go boom by accident so much.
Tgo01
09-30-2013, 03:05 AM
How about a script to keep an eye out for your weapon disappearing? This one would be useful for a lot of folks I think. For my Bard who is doing escorts right now, every time he climbs a boulder or does anything that causes him to put his weapon away, it disappears since he is using a sonic weapon, so he spends the rest of the journey weaponless. For my warrior, it would be great so that I could try and take action when he gets disarmed or loses it for whatever reason.
Do you know of anything out there on the repo now that might work that I could hack at to get it to function as I need it? Or would you be willing to take this on?
It's nothing fancy but this should do what you want it to do, just make sure to start it with your weapon in your right hand.
weapon = GameObj.right_hand.id
weapon_name = GameObj.right_hand.name
weapon_noun = GameObj.right_hand.noun
loop{
if GameObj.right_hand.id != weapon
if weapon_name =~ /sonic/i
(waitrt?;waitcastrt?;multifput "prep 1012", "sing #{weapon_noun}";weapon = GameObj.right_hand.id)
else
(waitrt?;fput "get ##{weapon}")
end
end
sleep 0.5
}
SpiffyJr
09-30-2013, 09:09 AM
yeh sloot4 has no exclude option
Use ;sloot, which does, and I actually maintain.
Tgo01
10-02-2013, 04:21 AM
I would love a script that can look at boxes on the ground and tell me how many duplicates there are, ie 2 monir boxes, 3 fel strongboxes, 2 mithril trunks, etc.
When I'm manually picking a room full of boxes my main issue is keeping track of which boxes (wood + boxtype) have multiples, and some sort of list to display and knock out first would be awesome.
This should do what you want it to do:
box_name = Array.new
box_number = Array.new
GameObj.loot.each{|i|
if i.type == 'box'
if i.name =~ /(\w*) (\w* (chest|trunk|strongbox|box|coffer))/i
name = $2
(box_name.push(name);box_number[box_name.index(name)] += 1)
end
end
}
box_name.uniq! if box_name != nil
box_name.each{|box|respond "#{box} x#{box_number[box_name.index(box)]}"} if box_name != nil
I know at the very least it counts each box once, that's good enough right?
You notice an iron-bound wooden coffer, a badly damaged monir trunk, an iron-bound wooden trunk, an engraved steel trunk, an engraved mithril coffer, an engraved thanot box, a plain gold trunk and
gold coffer x1
wooden coffer x1
monir trunk x1
wooden trunk x1
steel trunk x1
mithril coffer x1
thanot box x1
gold trunk x1
See?
Velfi
10-02-2013, 11:27 PM
This should do what you want it to do:
I know at the very least it counts each box once, that's good enough right?
See?
The function of it is perfect, but its math didn't seem quite right when I just tried it:
>l
>
[Golden Helm, Hearth Room - 12506]
An immense circular hearth fills the center of the room. A roast sizzles on a spit over the fire. The juices drip into the coals, popping and hissing as they land. Sturdy oak tables are set throughout, surrounded by chairs wide enough for the most ample of patrons. A pleasant breeze drifts through the open windows set high in the whitewashed wood-and-stone walls. You also see a plain gold strongbox, an enruned iron strongbox, a plain mithril strongbox, someone's disk, an acid-pitted brass trunk, a corroded mithril strongbox, a dented mithril coffer, an iron-bound maoral strongbox, a weathered wooden strongbox, an enruned gold coffer, an enruned mithril coffer, an enruned monir chest, an enruned steel box, an acid-pitted mithril box, a sturdy fel box, an enruned modwir box, a scratched steel box, a badly damaged modwir box, a disheveled calico cat, a sad ocean spirit that is flying around and a wood and glaes door.
Also here: People
Obvious exits: none
>;boxcount
--- Lich: boxcount active.
gold strongbox x1
iron strongbox x1
mithril strongbox x2
brass trunk x1
mithril coffer x
maoral strongbox x2
wooden strongbox x1
gold coffer x1
monir chest x1
steel box x
mithril box x1
fel box x2
modwir box x1
--- Lich: boxcount has exited.
Several of the x2's were x1's and vice versa, a couple of them showed as just x when they were multiples. In particular, the fel box/modwir box one, the mithril coffer and steel box ones, and the x2 of the maoral strongbox.
Tgo01
10-02-2013, 11:44 PM
It would probably be easier if I just had a list of all possible types of boxes; mithril, gold, iron, blah blah blah.
Velfi
10-03-2013, 12:16 AM
It would probably be easier if I just had a list of all possible types of boxes; mithril, gold, iron, blah blah blah.
Brass, steel, iron, silver, gold, mithril, maoral, modwir, wooden, fel, monir ... I think that's all of the materials
Chest, coffer, box, strongbox, trunk .. are all the box types
Tgo01
10-03-2013, 12:44 AM
Okay okay, this one should work for reals now.
box_name = Array.new
box_count = Hash.new
GameObj.loot.each{|i|
if i.type == 'box'
if i.name =~ /((brass|steel|iron|silver|gold|mithril|maoral|modw ir|wooden|fel|monir|haon|tanik|thanot) (box|strongbox|chest|coffer|trunk))/i
name = $1
(box_name.push(name) unless box_name.include? (name);box_count[name] += 1)
end
end
}
box_name.each{|box|respond "#{box} x#{box_count[box]}"} if box_name != nil
I also added haon, if you notice any other box types missing just add them to the list in the same format as they are already in.
Velfi
10-03-2013, 12:52 AM
Okay okay, this one should work for reals now.
box_name = Array.new
box_number = Array.new
GameObj.loot.each{|i|
if i.type == 'box'
if i.name =~ /((brass|steel|iron|silver|gold|mithril|maoral|modw ir|wooden|fel|monir|haon) (box|strongbox|chest|coffer|trunk))/i
name = $1
(box_name.push(name);box_number[box_name.index(name)] += 1)
end
end
}
box_name.uniq! if box_name != nil
box_name.each{|box|respond "#{box} x#{box_number[box_name.index(box)]}"} if box_name != nil
I also added haon, if you notice any other box types missing just add them to the list in the same format as they are already in.
I knew I was forgetting something. I'll try it again when I have another room of boxes. Thanks a bunch!
Latrinsorm
10-03-2013, 05:50 PM
Tanik too. Some picker used to exclaim "a ti-tanik chest!" whenever he opened a tanik coffer. I don't know what he said when he got a chest.
Tillmen
10-03-2013, 06:11 PM
Also thanot. That should be it.
Velfi
10-03-2013, 08:12 PM
Thanks for the other ones I forgot, hehe.
I just tried it again, albeit with a few less boxes, and the math seemed good but I still have a blank x for some reason.
s>l
[Golden Helm, Hearth Room - 12506]
An immense circular hearth fills the center of the room. A roast sizzles on a spit over the fire. The juices drip into the coals, popping and hissing as they land. Sturdy oak tables are set throughout, surrounded by chairs wide enough for the most ample of patrons. A pleasant breeze drifts through the open windows set high in the whitewashed wood-and-stone walls. You also see a cheery sunburst spirit that is flying around, the Velfi disk, a scratched gold strongbox, a badly damaged tanik chest, a plain brass chest, an enruned tanik strongbox, a corroded iron chest, a badly damaged fel strongbox, an engraved maoral strongbox, a badly damaged steel coffer, an iron-bound tanik coffer, a dented iron chest, a rotting modwir chest, a weathered thanot chest, the fiery red someone's disk, a disheveled calico cat and a wood and glaes door.
Also here: People
Obvious exits: none
s>;boxcount
--- Lich: boxcount active.
gold strongbox x1
tanik chest x1
brass chest x1
tanik strongbox x1
iron chest x2
fel strongbox x1
maoral strongbox x1
steel coffer x1
tanik coffer x1
modwir chest x
thanot chest x1
--- Lich: boxcount has exited.
There was one modwir chest, but it just has an x for whatever reason.
Tgo01
10-04-2013, 10:38 PM
Another wishlist script just occurred to me... One to squelch OOC whispers in the game window and punt them to the familiar, room, or other window -- I like making LOTR jokes during throwing-mysterious-artifacts-into-volcano events as much as the next guy, but sometimes I get completely derailed and lose track of what is going on around me...
fam_window_begin = "<pushStream id=\"familiar\" ifClosedStyle=\"watching\"/>"
fam_window_end = "<popStream/>\r\n"
punt = proc { |ooc_string|
if ooc_string =~ /\(OOC\)/i
(puts("#{fam_window_begin}#{ooc_string}\r\n#{fam_window_e nd}"))
ooc_string = " "
else
ooc_string
end
}
DownstreamHook.add('script_name', punt)
Klinor
10-04-2013, 11:06 PM
Something that can close my axe, run one of the sloots, then open my axe after sloot finishes so I'm not swinging with one axe instead of two. I could use the stow function of sloot, but I would prefer for safety's sake to close the axe instead of keeping it separated when it's not in hand.
>open axe
Holding your axe with both hands, you press a small button near your thumb and separate the weapon into two halves.
>close axe
Holding the two halves of your axe in each hand, you carefully recombine the two halves of your weapon into one.
Tgo01
10-04-2013, 11:18 PM
(waitrt?;fput "close my axe";start_script "sloot";wait_while{ running?('sloot') };fput "open my axe")
Klinor
10-04-2013, 11:24 PM
Thanks!
So I can just paste this into a macro or alias as is, and run it like that? Or do I need to keep it running in a script?
Tgo01
10-04-2013, 11:25 PM
If you want to run it as an alias you would need to do:
;eq (waitrt?;fput "close my axe";start_script "sloot";wait_while{ running?('sloot') };fput "open my axe")
And you just run it whenever you want to run sloot.
Klinor
10-04-2013, 11:27 PM
Thank you very much. This has been an annoying problem for me. I tried using an SF script to help it but since you can only run one script at a time, it would constantly end up being stopped and I would forget to restart it.
edited to add And it works perfectly.
Tgo01
10-04-2013, 11:32 PM
Woot. No problem.
Tgo01
10-04-2013, 11:41 PM
Thread: Bored...anyone need a script written?
can you write me a script to go fuck yourself? OHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH hahaha no i'm just playin <3
fput "act fucks himself."
JackWhisper
10-04-2013, 11:42 PM
My turn with the Master Magazine Puppy?!
http://forum.gsplayers.com/showthread.php?85978-A-question-about-BigShot
That! Please? With cherries?!
Tgo01
10-04-2013, 11:45 PM
I thought you were offering Spiffy 20 virgins for that :P
JackWhisper
10-04-2013, 11:49 PM
Do you KNOW how much testing work I put in on TPick?! I've got more invested in you =P
eulogia
10-04-2013, 11:54 PM
I'd love a script, in Plat, that zips me to the alchemy shop in every town, one after the other, and buys all of a certain component I select. Including FWI. Thanks to portals, you can do them all one after the other, but you have to be quick or you get the loitering warning that kicks you out for a while.
Tgo01
10-04-2013, 11:56 PM
I'd love a script, in Plat, that zips me to the alchemy shop in every town, one after the other, and buys all of a certain component I select. Including FWI. Thanks to portals, you can do them all one after the other, but you have to be quick or you get the loitering warning that kicks you out for a while.
I've never played in plat, does ;go2 make use of portals? How are these components bought at the alchemy shop? Like an NPC catalog or are they on a table like in the pawnshop?
eulogia
10-04-2013, 11:59 PM
;go2 does make use of portals. It's very Plat-friendly.
The alchemy shops each have one room where used components are on sale, just like a table on a pawnshop.
Checking every shop has become tedious and I am desperate to progress on alchemy. Obsessed!
I figure this would be a very simple script but I am 0% good at writing scripts.
Tgo01
10-05-2013, 12:02 AM
Alright, just need the lich ids of all of the rooms and an example of you buying something from the shop. Also is it just one table or multiple tables?
eulogia
10-05-2013, 12:07 AM
TERAS: 13063
LANDING: 6257
RIVERS REST: 11004
SOLHAVEN: 9398
ZUL: 9565
VAALOR: 10366
ILLISTIM: 13053
FWI: 16471
Every one of these is the same, one table with the goods on top of it.
Thanks so much, can't wait to give it a whirl.
eulogia
10-05-2013, 12:09 AM
Oh, and example:
On the silk-covered table:
reagent (50): inky necrotic core (3), crystal core (3), some glowing violet essence dust (3), some radiant crimson essence dust (3), glowing violet mote of essence (2), glimmering blue mote of essence (3), radiant crimson mote of essence (3), some essence of fire (3), corked crystalline globe (3), pristine sprite's hair (3), pristine siren's hair (3), vial of vitreous humor (3), tiny golden seed (2), glowing violet essence shard (3), radiant crimson essence shard (3), glimmering blue essence shard (2), small troll tooth (3), some essence of water (2).
>buy crystal core
You decide to purchase the crystal core, and pay the sales clerk 136 silvers.
The sales clerk picks up the crystal core and checks to make sure it is in good condition. She says, "It's probably too good for you. Here."
She tosses the crystal core to you.
Note that the second part of the sentence is variable, based on racial biases.
>buy ayanad crystal
The clerk gives you a puzzled look and says, "What are you trying to buy? What's for sale is here on this silk-covered table, nothing more, nothing less."
I am pretty sure that message is always the same, when there is nothing, with the only variable being the description of the table.
eulogia
10-05-2013, 12:12 AM
Since you're here and amazing, and I saw a similar fix given for splitting weapons, have you got a way I can stow my weapon with ;sloot somewhere besides my STOW container? (I use sloot3 but am open to trying out sloot classic.) On my two main characters, their STOW containers are weightless, so if I am out hunting, I like to keep them closed, and don't want to open/close them to stow something while looting. Thanks...
eulogia
10-05-2013, 12:15 AM
And one more detail, the loitering message, in case you want to use it to end the script and go back home:
You attempt to enter the back of the shop, but a clerk stops you. "Your reputation precedes you! We have no need for those who stand around disturbing our other customers!" the clerk exclaims.
Tgo01
10-05-2013, 12:50 AM
number = 0
rooms = [ '13063', '6257', '11004', '9398', '9565', '10366', '13053', '16471' ]
(go = nil;buy = nil;starting_room = nil)
go = proc{
start_script 'go2', [ rooms[number] ]
wait_while{ running?('go2') }
buy.call
number += 1
if number >= 8
start_script 'go2', [ starting_room ]
wait_while{ running?('go2') }
exit
end
go.call
}
buy = proc{
result = dothistimeout "buy #{script.vars[1]} #{script.vars[2]} #{script.vars[3]}", 5, /You decide to purchase|gives you a puzzled look/i
if result =~ /You decide to purchase/i
(fput "stow right";buy.call)
elsif result =~ /gives you a puzzled look/i
sleep 0.1
end
}
starting_room = Room.current
(fput "stow left" if checkleft != nil;fput "stow right" if checkright != nil)
go.call
Pretty sure that should do what you want it to do, I can't test it so let me know. You would just run it as ;script-name crystal core
Since you're here and amazing, and I saw a similar fix given for splitting weapons, have you got a way I can stow my weapon with ;sloot somewhere besides my STOW container? (I use sloot3 but am open to trying out sloot classic.) On my two main characters, their STOW containers are weightless, so if I am out hunting, I like to keep them closed, and don't want to open/close them to stow something while looting. Thanks...
Without actually modifying sloot you could do something similar to Klinor.
;eq (waitrt?;fput "put my axe in my cloak";start_script "sloot3";wait_while{ running?('sloot3') };fput "get my axe from my cloak")
Change axe and cloak to whatever you want of course.
ROTOR
10-05-2013, 06:11 PM
Think maybe you've already been asked about this, but would love a proper bounty script - I've tried both sbounty and azbounty and neither do all of the bounties and both have a couple of glitches with them as well which make using them a bit annoying (better than nothing though I suppose). Any chance you can combine the two or start a new one from scratch? Can help do testing or whatever other help you might need.
JackWhisper
10-05-2013, 06:23 PM
Yeah I'd murder for a script that will set up for foraging bounties, go to the proper Lich ID, and forage it, based off the information given in the bounty. That's one of most annoying things, so I've just started writing a script for each herb as it comes up to forage. Up to almost 40 friggin different scripts. =(
Methais
10-05-2013, 06:35 PM
Can you make a script that auto cyber with yourself, with realistic pauses in between actions?
Tgo01
10-05-2013, 07:17 PM
I dunno guys, feels like I'd be reinventing the wheel to take on such a project.
I'm not sure if I'm referring to JackWhisper's request or Methais'. Hmm....
JackWhisper
10-05-2013, 10:07 PM
Hrm. A small compromise script then?
Let's say it's called BountyInfo.
You load it up, and it has a window, much like bigshot, with the room ID settings, and the involved critters you'd kill.
You can tab through different named Tabs, IE: One is Krynches, one is IllokeShamans, etc. All nameable by you.
You can set notes in an area inside it for your established hunting routines for said hunting grounds, and things of that sort, etc.
Would that be more feasible? People would still have to load it, but it would be quite a bit easier than sifting through narost for every single change in bounty hunting areas.
Tgo01
10-06-2013, 10:10 PM
How about a script that shows someone's class after their title when looking at them? Some titles just don't indicate what their class is and I need to know that information. How the heck am I supposed to know what class a Myrmidon is? Or a Ruiner? Or a Priest?
Tgo01
10-06-2013, 10:11 PM
I just uploaded Titles that does just that.
You see blah blah the Dreadnaught (Paladin).
You see blah blah the Grandmaster of the Red Moon. (Monk).
You see blah blah the Battle Mage (Wizard).
You see blah blah the Dark Crusader (Cleric, Paladin, Bane Alignment).
You see blah blah the Squire (Paladin, Warrior, Armor Use and Weapons Skill Ranks).
SpiffyJr
10-06-2013, 11:02 PM
Yeah I'd murder for a script that will set up for foraging bounties, go to the proper Lich ID, and forage it, based off the information given in the bounty. That's one of most annoying things, so I've just started writing a script for each herb as it comes up to forage. Up to almost 40 friggin different scripts. =(
sbounty does that.
SpiffyJr
10-06-2013, 11:05 PM
Think maybe you've already been asked about this, but would love a proper bounty script - I've tried both sbounty and azbounty and neither do all of the bounties and both have a couple of glitches with them as well which make using them a bit annoying (better than nothing though I suppose). Any chance you can combine the two or start a new one from scratch? Can help do testing or whatever other help you might need.
There's one glitch with sbounty which has to do with foraging not storing an herb. It does every bounty available except for gem (handled by looters), bandits, and escorts (handled by ego2).
ROTOR
10-07-2013, 05:26 AM
I was using azbounty for a long time and only just checked out sbounty over the weekend and have to say it is much more complete than azbounty. I did notice the foraging glitch which I think I commented on in another thread, but it's a small thing really. The other thing (not sure it's a glitch?) is that the pre-rest command doesn't seem to take. I put in 'sheath' but always end up resting with the weapon in hand. Seems to work if I put it in the enter box though.
The only thing I like about azbounty is that it has more hunting set-ups built in like what spells and scripts to run while hunting. I know I can change it in bigshot but is nice to have it all in one place.
In any case, great script. Thanks!
Buckwheet
10-07-2013, 09:16 AM
I was using azbounty for a long time and only just checked out sbounty over the weekend and have to say it is much more complete than azbounty. I did notice the foraging glitch which I think I commented on in another thread, but it's a small thing really. The other thing (not sure it's a glitch?) is that the pre-rest command doesn't seem to take. I put in 'sheath' but always end up resting with the weapon in hand. Seems to work if I put it in the enter box though.
The only thing I like about azbounty is that it has more hunting set-ups built in like what spells and scripts to run while hunting. I know I can change it in bigshot but is nice to have it all in one place.
In any case, great script. Thanks!
There were several people asking questions about sbounty after you posted in the other thread about how to best set it up. If you have time would you be willing to post a detailed experience and setup? That way we could point people to it.
Snoopy Dogg
10-23-2013, 01:19 PM
there a tp script that keeps track of how many you've gained in your session?
Methais
10-29-2013, 06:19 PM
How about a script that goes through my gem sack, appraises them, puts anything worth at least X amount into another container, and sells anything that appraises less than X?
Basically a script to filter out gems that are worth too little to have any real chance to be purified to 3k+ to make sorting out chrism potential gems like pearls and blue sapphires and shit not be such a painus in the anus.
Dayko
10-29-2013, 06:21 PM
Could you make a script for one of the EG games, trashing anything below T4 prizes?? (Carousel excluded)
subzero
10-29-2013, 07:14 PM
How about a script that goes through my gem sack, appraises them, puts anything worth at least X amount into another container, and sells anything that appraises less than X?
Basically a script to filter out gems that are worth too little to have any real chance to be purified to 3k+ to make sorting out chrism potential gems like pearls and blue sapphires and shit not be such a painus in the anus.
You could do this pretty easy ghetto-style by making a copy of loot-be-gone (may have to make some changes to have it appraise gems, don't think it does that by default) and renaming it to use as your gem selling script and then have it call another simple script to move any remaining gems in your containers to the desired one.
Tgo01
11-01-2013, 08:41 PM
I just uploaded disarm-no-more to the repo.
It's a simple little script but I thought it might be useful after reading a few posts by people stating they have lost their weapon to disarm while rushing through rooms really fast.
So here's what it does:
This script monitors your right hand to make sure your weapon is currently in it.
The following happens if your weapon is not in your right hand:
Script will kill go2 if it's running.
Script will tell you which room it thought you were in the last time it saw the weapon in your hand.
Script will run back to that room if it's not the room you're currently in.
Script will automatically pick up your weapon if it sees it on the ground in any room.
Script will attempt to grab your weapon (in one of your containers or on the ground) when it has reached the room it thought you were in when you lost it.
The script is useful for both being disarmed or just always making sure you have your weapon out.
Start the script with your weapon in your right hand.
The script will not know which room you were in when you lost your weapon 100% of the time but the room it says you were in should be within 2 rooms of where you lost it.
Methais
11-01-2013, 09:15 PM
You could do this pretty easy ghetto-style by making a copy of loot-be-gone (may have to make some changes to have it appraise gems, don't think it does that by default) and renaming it to use as your gem selling script and then have it call another simple script to move any remaining gems in your containers to the desired one.
I'm completely in the dark on how to do anything with modifying Lich scripts.
Plus I'm lazy.
Latrinsorm
11-01-2013, 09:20 PM
There are a million ways to keep yourself safe from disarming without imposing your anti-disarm will on people that want to disarm, which I'll remind you is an intended part of the game. Try using your locker, or train in brawling.
Tgo01
11-01-2013, 10:09 PM
I'm completely in the dark on how to do anything with modifying Lich scripts.
Plus I'm lazy.
gem_container = "cloak"
keep_container = "backpack"
value = 1000
appraise = nil
app = proc{
fput "appraise #{checkright}"
while line = get
if line =~ /I\'ll give you (\d+)/i
appraise = Integer($1)
break
end
end
if appraise >= value
fput "put #{checkright} in my #{keep_container}"
else
fput "sell #{checkright}"
end
}
get = proc{
GameObj.inv.each{|container|
if container.name =~ /#{gem_container}/i
fput "look in my #{gem_container}"
container.contents.each{ |i|
if (i.type =~ /gem/) and (i.name !~ /oblivion quartz/)
fput "get ##{i.id}"
app.call
end
}
end
}
}
fput "stow right" if checkright != nil
get.call
I think that should do what you want. You have to change the variables around of course.
Riros
11-01-2013, 11:24 PM
I love your scripts, tg, but I believe Orbappraise does the same thing.
(With more lines of code though.)
Tgo01
11-01-2013, 11:26 PM
I love your scripts, tg, but I believe Orbappraise does the same thing.
(With more lines of code though.)
Methais making me do work for no reason?! That does it your nothing you won in my auction Methais is going to cost you 1002 silvers now.
stormcrow
11-02-2013, 12:48 AM
Tgo, you know what would be nice if there was a script that looked into my herbsack and bought any herbs that were missing. Nothing worse then being in the middle of a hunt in the rift and trying to use some herbs and I'm missing one.
Tisket
11-02-2013, 01:42 AM
I want that one too. Make it so!
Sketti
11-10-2013, 02:48 PM
Is there a script out there that automatically uses any unstun/unweb/unwhatever abilities you have when you get caught? If not, what info would you need to make it happen?
ROTOR
11-10-2013, 04:50 PM
Looking for an adaptation of the 'wander' script or something similar for my rogue guild script that will read the scrap of parchment and then wander, stopping in every room until finding the necessary room conditions. I can add the various room conditions - just can't figure out how to wander and do lmas sense one room at a time.
Latrinsorm
11-14-2013, 04:07 PM
Hey, asking for a friend, need a script "to keep GS [threads] from showing up when [scaredy-cat] click[s] New Posts". Thanks in advance.
Gelston
11-14-2013, 04:08 PM
Hey, asking for a friend, need a script "to keep GS [threads] from showing up when [scaredy-cat] click[s] New Posts". Thanks in advance.
You fucking dork, lolz.
Buckwheet
12-08-2013, 03:44 PM
Is there a bounty type tracking script? With the new simucoin option of skipping a specific bounty type, it would be nice to know if its better to buy that or just the general skip vouchers.
Whirlin
12-12-2013, 10:55 AM
I want another script written, because I'm too lazy to write it myself.
We have scripts like 1003, manasong, probably one for song of noise also, etc... All of which are simply meant to drop spells before the renew cycle, and replace them afterwards.
Can you consolidate all of those into a single script, with settings to put on / remove each of those spellsongs, or do I have to write my own damn script? :(
Tgo01
12-12-2013, 02:32 PM
Is there a bounty type tracking script? With the new simucoin option of skipping a specific bounty type, it would be nice to know if its better to buy that or just the general skip vouchers.
What kind of bounty tracking do you mean?
I want another script written, because I'm too lazy to write it myself.
We have scripts like 1003, manasong, probably one for song of noise also, etc... All of which are simply meant to drop spells before the renew cycle, and replace them afterwards.
Can you consolidate all of those into a single script, with settings to put on / remove each of those spellsongs, or do I have to write my own damn script? :(
Normally I'd say write your own damn script but I might be able to make some use out of this script too.
Buckwheet
12-12-2013, 10:34 PM
Bounty tracking for determining percent offered based on bounty type. Like on Teras you won't get escorts. Then add in if you skipped it so you can determine if just using vouchers is a better deal than the "skip this" voucher.
Tgo01
12-12-2013, 10:47 PM
Bounty tracking for determining percent offered based on bounty type. Like on Teras you won't get escorts. Then add in if you skipped it so you can determine if just using vouchers is a better deal than the "skip this" voucher.
I could probably make something like that if one doesn't already exist.
Anebriated
12-12-2013, 11:02 PM
if we make a bounty tracking script can it also save the description of the lost heirloom item and keep it displayed once it has been found so I stop forgetting what the item was?
Tgo01
12-13-2013, 01:38 AM
Alright I uploaded song-manager that manages all of your songs for you bard types.
Well all songs except 1025, Lich doesn't seem to keep track of whether or not you're singing 1025 so I didn't include it. If I'm feeling less lazy at some point in the future I might work around this.
Basically you can specify which songs to always keep on, which ones you want to only cast once then stop singing then cast again once your songs renew.
Anebriated
12-13-2013, 01:40 AM
<3 will check it out next time I play my bard. I would rep you again but I cant.
Tgo01
12-13-2013, 02:14 AM
Sorry if anyone already downloaded song-manager, I forgot I left some debugging code in there that would drive you crazy if you're using that version of the script.
Just uploaded version 3 that removes that annoyance.
Tgo01
12-14-2013, 04:42 AM
Bounty tracking for determining percent offered based on bounty type. Like on Teras you won't get escorts. Then add in if you skipped it so you can determine if just using vouchers is a better deal than the "skip this" voucher.
I think this should do what you want it to do. I only tested it in Icemule so I can't say for sure it'll work in other towns without some testing.
CharSettings['kill'] = 0 if CharSettings['kill'].nil?
CharSettings['heirloom'] = 0 if CharSettings['heirloom'].nil?
CharSettings['skins'] = 0 if CharSettings['skins'].nil?
CharSettings['gems'] = 0 if CharSettings['gems'].nil?
CharSettings['escort'] = 0 if CharSettings['escort'].nil?
CharSettings['herbs'] = 0 if CharSettings['herbs'].nil?
CharSettings['dangerous'] = 0 if CharSettings['dangerous'].nil?
CharSettings['child'] = 0 if CharSettings['child'].nil?
CharSettings['bandits'] = 0 if CharSettings['bandits'].nil?
CharSettings['total'] = 0 if CharSettings['total'].nil?
toggle_upstream
silence = proc {
action = proc { |server_string|
if server_string =~ /I don't understand what you typed./i
nil
DownstreamHook.remove("#{script.name}_silence")
else
server_string
end
}
DownstreamHook.add("#{script.name}_silence", action)
}
Thread.new{
loop{
command = upstream_get
if command =~ /track/i
silence.call
(m = CharSettings['kill'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Kill Creatures: #{CharSettings['kill']}|#{m}%"
(m = CharSettings['heirloom'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Retrieve Heirloom: #{CharSettings['heirloom']}|#{m}%"
(m = CharSettings['skins'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Procure Skins: #{CharSettings['skins']}|#{m}%"
(m = CharSettings['gems'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Procure Gems: #{CharSettings['gems']}|#{m}%"
(m = CharSettings['escort'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Protect Traveller: #{CharSettings['escort']}|#{m}%"
(m = CharSettings['herbs'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Procure Herbs: #{CharSettings['herbs']}|#{m}%"
(m = CharSettings['dangerous'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Kill Dangerous Creature: #{CharSettings['dangerous']}|#{m}%"
(m = CharSettings['child'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Rescue Child: #{CharSettings['child']}|#{m}%"
(m = CharSettings['bandits'].to_f / CharSettings['total'] * 100;m = sprintf "%.3f", m)
respond "Kill Bandits: #{CharSettings['bandits']}|#{m}%"
respond "Total: #{CharSettings['total']}|100%"
end
}
}
while line = get
(CharSettings['herbs'] += 1;CharSettings['total'] += 1) if line =~ /.* says,.*The (local herbalist|local healer|local alchemist).*, has asked for our aid./i
(CharSettings['gems'] += 1;CharSettings['total'] += 1) if line =~ /.* says,.*The local gem dealer, .*, has an order to fill and wants our help./i
(CharSettings['bandits'] += 1;CharSettings['total'] += 1) if line =~ /.* says,.*It appears they have a bandit problem they'd like you to solve./i
(CharSettings['escort'] += 1;CharSettings['total'] += 1) if line =~ /.* says,.*A certain client has hired us to provide a protective escort/i
(CharSettings['kill'] += 1;CharSettings['total'] += 1) if line =~ /.*says,.*We've noted a troubling increase in.*/i
(CharSettings['heirloom'] += 1;CharSettings['total'] += 1) if line =~ /.* says,.*It appears they need your help in tracking down some kind of lost heirloom./i
(CharSettings['dangerous'] += 1;CharSettings['total'] += 1) if line =~ /.*says,.*A particularly dangerous .* has been attacking hunters based out/i
(CharSettings['child'] += 1;CharSettings['total'] += 1) if line =~ /.* says,.*One of our citizens is in quite the predicament./i
(CharSettings['skins'] += 1;CharSettings['total'] += 1) if line =~ /.*says,.*The local furrier .*has an order to fill and wants our help./i
end
Keep the script running in the background and just type "track" while the script is running to see the stats. All stats update as soon as you get a bounty from the taskmaster, except culling/dangerous critter bounties, those you have to talk to the guard or whoever to see if it's a culling or dangerous critter bounty first.
if we make a bounty tracking script can it also save the description of the lost heirloom item and keep it displayed once it has been found so I stop forgetting what the item was?
I didn't want to mess with the actual bounty verb in case you use "prettybounty" so you could use the following script:
toggle_upstream
silence = proc {
action = proc { |server_string|
if server_string =~ /Please rephrase that command./i
nil
DownstreamHook.remove("#{script.name}_silence")
else
server_string
end
}
DownstreamHook.add("#{script.name}_silence", action)
}
Thread.new{
loop{
command = upstream_get
if command =~ /heirloom/i
silence.call
respond "Heirloom description: #$heirloom_description"
end
}
}
while line = get
$heirloom_description = $1 if line =~ /.* says,.*The heirloom is (.*)\. /i
end
Keep the script running in the background and type "heirloom" at anytime to see the description of the heirloom.
Buckwheet
12-15-2013, 11:53 AM
So far that appears to be working for me.
Kill Creatures: 0|0.000%
Retrieve Heirloom: 2|40.000%
Procure Skins: 2|40.000%
Procure Gems: 0|0.000%
Protect Traveller: 0|0.000%
Procure Herbs: 0|0.000%
Kill Dangerous Creature: 1|20.000%
Rescue Child: 0|0.000%
Kill Bandits: 0|0.000%
Total: 5|100%
Tgo01
12-15-2013, 09:40 PM
So far that appears to be working for me.
Kill Creatures: 0|0.000%
Retrieve Heirloom: 2|40.000%
Procure Skins: 2|40.000%
Procure Gems: 0|0.000%
Protect Traveller: 0|0.000%
Procure Herbs: 0|0.000%
Kill Dangerous Creature: 1|20.000%
Rescue Child: 0|0.000%
Kill Bandits: 0|0.000%
Total: 5|100%
It's a pretty interesting thing to keep track of actually. So far I have:
Kill Creatures: 3|8.108%
Retrieve Heirloom: 3|8.108%
Procure Skins: 5|13.514%
Procure Gems: 4|10.811%
Protect Traveller: 3|8.108%
Procure Herbs: 3|8.108%
Kill Dangerous Creature: 5|13.514%
Rescue Child: 4|10.811%
Kill Bandits: 7|18.919%
Total: 37|100%
And I never do bandit tasks! AAAARRRRGGGGHHHH!
Buckwheet
12-15-2013, 09:55 PM
Kill Creatures: 2|18.182%
Retrieve Heirloom: 2|18.182%
Procure Skins: 3|27.273%
Procure Gems: 1|9.091%
Protect Traveller: 0|0.000%
Procure Herbs: 0|0.000%
Kill Dangerous Creature: 2|18.182%
Rescue Child: 1|9.091%
Kill Bandits: 0|0.000%
Total: 11|100%
Tgo01
12-15-2013, 09:56 PM
Do they not give out bandit tasks in the town you're in or does the game just hate me?
ElderGriffon
01-02-2014, 03:53 PM
I could use a script to run with bigshot, it will hide me and then wait for the critter to perform some action, once the action is done it will attack, but it will attack unaffected critters first then stunned and then sitting ones. can this be done?
Buckwheet
01-02-2014, 03:59 PM
Do they not give out bandit tasks in the town you're in or does the game just hate me?
They do. I will post new stats when I get home.
Boora
01-05-2014, 11:30 PM
Haven't seen anything like this yet...
A script that will return the map on which a particular area is located.
;map <location> yeilds appropriate map to find that location where location is a sub area within that map.
Example: ;map Basilica yields Elven Nations - Old Ta'Faendryl: (possibly list of critters?)
Just a thought with the number of times folks ask for maps where smaller sub-regions are located.
Tgo01
01-05-2014, 11:44 PM
Haven't seen anything like this yet...
A script that will return the map on which a particular area is located.
;map <location> yeilds appropriate map to find that location where location is a sub area within that map.
Example: ;map Basilica yields Elven Nations - Old Ta'Faendryl: (possibly list of critters?)
Just a thought with the number of times folks ask for maps where smaller sub-regions are located.
I could have sworn something like this already exists with Lich via Narost...although I can't recall how...
Thondalar
01-05-2014, 11:53 PM
;narost (area)
Doesn't work if narost is already running, though.
doughal
04-02-2014, 11:41 AM
Hey Tgo01, I've tried using your Disarm-No-More script, which is a great concept by the way, but I'm having a problem. At the swim before going into OTF, go2 puts your weapon away for the swim, and even if I start DNM with an 8 second option, it sees the weapon get put away and stops go2, and returns to the room before the swim, and it keeps doing this in an infinite loop. Is there something I can change to prevent this from happening? I really want to use your script, but I'm not sure how to get around this issue.
Tgo01
04-02-2014, 11:49 AM
Simple solution to this problem; stop hunting in OTF.
Naww! I tease. I've never hunted in OTF before, how many rooms is this swim? Can you list all lich id rooms where you must put your stuff away while/prior to swimming? I can edit the script so it doesn't do anything while in these rooms.
When I'm feeling less lazy I can probably add an option so the script just picks up your weapon/off hand if it sees it on the ground. I originally created this script for someone who wanted to make sure they always had their weapon in their hand because other scripts sometimes didn't grab it again after stowing it so that's why that functionality is in there to begin with.
doughal
04-02-2014, 12:56 PM
Awesome, thanks! The rooms should be 10815, 10817, and 10821, that would be the rooms on either side of the swim and the water itself. It should be putting the weapon away in either 10815 or 10817 and then getting it out in the other depending on which direction you are going. This is an awesome script and much needed in Shattered.
[Gyldemar Road]
Worn away by rain and the underground action of continual water, the road has sunk to swamp level. At this point, though, it remains firm enough for passage and rises slightly out of the swamp to the west. To the east the road disappears entirely under black water for twenty yards or so then emerges again to proceed unsteadily on its way. Continuing east is most likely a sink or swim proposition, and perhaps both. You also see some muck and the ruins of a paved stone road disappearing further into the swamp to the south.
Obvious paths: west
>go water
As you enter the water, the sucking mud drags you down slowly. Moving out further, you suddenly encounter a dropoff and slide quickly underneath the surface.
[Under The Black Water]
Wet blackness envelops everything, and the mud grasps powerfully at feet and legs. The lack of vision and the unsure footing in the muck below combine to confuse the senses, making direction a meaningless idea. Even "up" is in question at times. One can only swim and hope.
>swim e
[Gyldemar Road]
Although the forest is visible on the horizon to the south, there is no way of getting there across the treacherous swamp in between. Slowly the swamp seems to be reclaiming the cobblestone road, leaving less than half the cobblestones even visible in this area. To the west the black water has completely covered the roadway, and to the east the roadway dips and jogs, fighting to stay above the sinking terrain. You also see some muck.
Obvious paths: east
You pull yourself slowly out of the black pool, covered with mud and dripping water profusely.
Tgo01
04-02-2014, 02:18 PM
Uploaded a version that should fix this problem without affecting the functionality otherwise. Let me know.
doughal
04-02-2014, 03:03 PM
Looks like that did the trick. Thanks very much.
Tgo01
04-02-2014, 03:15 PM
That will be 10 million prime silvers please.
doughal
04-02-2014, 03:41 PM
Haha... I don't think I've got a million right now between all of my prime characters combined. Now Shattered... that's a different story.
CaptContagious
04-10-2014, 08:37 PM
would be nice to have a script like swapbounty but that you can choose which type of tasks to auto-remove and uses expediting vouchers if you got'em
Buckwheet
04-10-2014, 09:50 PM
Would be even nicer to have a GTK version of uberbounty for wizard FE!
Nahkaev
04-13-2014, 12:53 PM
you, me, and hundreds of people use sloot to loot/sell stuff.
I tried requesting this from spiffy but I think he missed it or doesn't want to do it- maybe we could all benefit if someone else could perform this modification:
Would it be feasible to add a batch-selling option for skins and gems to sloot?
To accomplish this, you'd have to put exception items in a different container. For example, if you didn't want to sell diamonds or rolton testicles, then every diamond or rolton testicle you looted/skinned could go into the 'exception' bag, then all of the gems+skins in the bag you designated for gems or skins could be sold at once by selling the bagfull to the appropriate npc.
This would make sloot not only faster, but also greatly reduce the screen scroll we're all familiar with in the gemshop/furrier.
with a setup like this: http://imgur.com/Hq071Gz and http://imgur.com/7X3EHde
one would then see sloot place rolton testicles and diamonds in one's cloak, and everything else in the backpack. The backpack may thus be used as a batch selling container at the furrier and gemshop.
Super fancy/later modifications might even check the backpack for testicles and diamonds and move them before batch selling.
I'd be willing to help in whatever capacity I can, however looking at spiffy's code he's obviously at a level of understanding of ruby that is leaving me dumbfounded as to where to even begin.
Thoughts?
Latrinsorm
04-13-2014, 12:59 PM
You'll have to speak a lot louder if you want someone in a Porsche to hear you.
Nahkaev
04-13-2014, 07:02 PM
You'll have to speak a lot louder if you want someone in a Porsche to hear you.
you'll have to excuse me for missing this joke. I take it spiffy drives a porsche?
So do I... so what?
Latrinsorm
04-13-2014, 09:34 PM
Terrence Gunderson Olivier (the First) has retired from script writing, as can be seen in this thread (http://forum.gsplayers.com/showthread.php?89587-Time-to-retire&highlight=).
It's a joke.
Lulfas
04-16-2014, 11:43 PM
Is there a way to trigger a script to only run for a certain number of seconds? I know how to write it as a loop so it only runs X number of times, but is there a way to interrupt it after x seconds to end?
Tgo01
04-17-2014, 12:14 AM
Terrence Gunderson Olivier (the First) has retired from script writing, as can be seen in this thread (http://forum.gsplayers.com/showthread.php?89587-Time-to-retire&highlight=).
It's a joke.
Silly Latrin. I recently upgraded to a lambo.
Is there a way to trigger a script to only run for a certain number of seconds? I know how to write it as a loop so it only runs X number of times, but is there a way to interrupt it after x seconds to end?
I'm not sure how your script is setup but something like this would work:
start_time = Time.now
wait_time = 1
loop{
exit if Time.now > (start_time + wait_time)
sleep 1
}
Just change wait_time to how long you want the script to run for.
Lulfas
04-17-2014, 12:29 AM
Like a charm. Thank you sir!
zoraster
04-20-2014, 01:55 PM
I don't know if the offer still stands, but just in case here's a script I'd love to see:
Primary: Keeps a running total of how much time you play overall (150 days, 22 hours, 13 minutes)
Secondary 1: Keeps track of the same data for the past 30 days.
Secondary 2: Keeps track of amount of time spend online at "clear" and above.
Tertiary 1: How much time you've spent dead
Tertiary 2: might as well throw in how many kills you've had in that time (I think this is captured by other things, but one stop shopping).
Anyway, obviously beggars can't be choosers, and I'd take whatever you could give (really anything with the primary function), but this is a script I would gladly add to my favs.
Soulance
05-31-2014, 05:23 PM
Looking to update/personalize a script in the repo for playing an instrument while waiting. I'd just like to add a loop of about 4 times and then have the script kill because bigshot won't run until it does stop...
# Will level your instrument skill while you rest# If you leave the room you started the script in, script will kill on the next PLAY attempt
# Edit to config instrument
##########
# Config #
##########
instrument = "cittern"
styles = ["Joyful","Mournful","Soft","Fast","Slow","Intense","Jaunty","Flamboyant","Aimless","Somber","Inspiring"]
##########
##########
##########
echo "################################################## #########"
echo "################################################## #########"
echo "Leveling your #{instrument} skill until you leave this room"
echo "################################################## #########"
echo "################################################## #########"
restRoomId = Room.current.id
fput "stow all"
fput "get my #{instrument}"
style = 0;
while Room.current.id == restRoomId
fput "play my #{instrument} #{styles[style]}"
style = (style + 1) % styles.length
sleep 330
end
Tgo01
05-31-2014, 05:42 PM
instrument = "cittern"
styles = ["Joyful","Mournful","Soft","Fast","Slow","Intense","Jaunty","Flamboyant","Aimless","Somber","Inspiring"]
fput "stow all"
fput "get my #{instrument}"
style = 0;
4.times{
fput "play my #{instrument} #{styles[style]}"
style = (style + 1) % styles.length
sleep 330
}
I think that would do what you want.
Soulance
05-31-2014, 06:09 PM
Excellent! Thanks for the help.
What about making the "styles" random? I think with this script it will only play the first 4 then it repeats those all the time. Does that matter when learning?
Gilralyn
06-02-2014, 05:00 PM
Excellent! Thanks for the help.
What about making the "styles" random? I think with this script it will only play the first 4 then it repeats those all the time. Does that matter when learning?
styles = ["Joyful","Mournful","Soft","Fast","Slow","Intense","Jaunty","Flamboyant","Aimless","Somber","Inspiring"].shuffle
Then just increment through the randomized array.
Methais
06-07-2014, 05:23 PM
You should write a script similar to ;whatlevel, but it tracks what your level would be in GS3.
I don't remember the exp requirements up to level 20, but after level 20 it was a flat 50k per level.
ROTOR
06-08-2014, 05:08 AM
think it was 10k up to 5, 20k for 6-10, 30k for 11-15 and 40k for 16-20.
Could you write me a script for 650 (assume aspect) to keep a series of aspects running continually when a runs out assume b then c and so on. With the ability to have up to five or six choices. Mana smart and when the spell wears off before an aspect drops have it wait until the aspect drops then recast the spell and assume the next aspect in line. And if it reaches the end of the list have the ability to choose to either end or restart the list
Stupidly easy script: share money.
Runs you to the town bank, does a wealth, counts the coins and the notes FOR THAT TOWN, deposits it all, withdraws it in silver, and shares it with your group.
Methais
07-12-2014, 07:05 PM
Stupidly easy script: share money.
Runs you to the town bank, does a wealth, counts the coins and the notes FOR THAT TOWN, deposits it all, withdraws it in silver, and shares it with your group.
Or this one:
Counts the number of people in the group
Runs to the bank and withdraws the exact amount needed to share so that everyone gets 1337 silvers, then shares it
Tgo01
07-13-2014, 07:43 AM
Stupidly easy script: share money.
Runs you to the town bank, does a wealth, counts the coins and the notes FOR THAT TOWN, deposits it all, withdraws it in silver, and shares it with your group.
wealth = nil
start_script 'go2', [ 'bank', '--disable-confirm' ]
wait_while{ running?('go2') }
put "depo all"
while line = get
if line =~ /That\'s a total of (.*) silvers?\, bringing your balance to/
wealth = Integer($1)
end
if line =~ /You deposit (.*) silvers? into your account/
wealth += Integer($1)
break
end
end
put "withdraw #{wealth} silvers"
put "share #{wealth}"
Runs to the bank and withdraws the exact amount needed to share so that everyone gets 1337 silvers, then shares it
That's too leet :O
Buckwheet
07-13-2014, 08:47 AM
Add "silvers" to the withdraw command or you can withdraw a note.
Tgo01
07-13-2014, 08:48 AM
Add "silvers" to the withdraw command or you can withdraw a note.
Oh yeah, darn notes.
Maerit
07-24-2014, 04:21 PM
Is there a script that will detect and pop boxes?
704 (optional detection for glyph traps)
402, 403, 404 (buffs)
416 (detect traps)
407 (pop if no traps, or trap that is not set off by 407)
408 (optional disarm depending on trap)
125 (optional method for opening trapped box)
??
If not, I want that!
is there a script that will allow me to keep track of enhansives / imbeddables? that i am wearing and or have in my inventory? what they do? how many charges, crumbly or not etc
Versin
07-27-2014, 06:54 PM
;enhancives
Soulance
10-11-2014, 07:04 PM
Bringing back to life this one...
Anyone want to spend a little time to make ;enchantnotes work for 4.6.9 and ruby? It gives me errors and I have a feeling it might be because I don't have something included in Ruby 2.0 that I need. Can the script be re-written or could one possibly be made that helps to store enchanting data like enchantnotes does please?
Thanks!
Hazado
10-11-2014, 08:29 PM
Bringing back to life this one...
Anyone want to spend a little time to make ;enchantnotes work for 4.6.9 and ruby? It gives me errors and I have a feeling it might be because I don't have something included in Ruby 2.0 that I need. Can the script be re-written or could one possibly be made that helps to store enchanting data like enchantnotes does please?
Thanks!
remove the first line - require "ftools"
should work after that
Soulance
10-11-2014, 08:41 PM
Ah, perfect. Thank you! Figured it was something on my end.
Buckwheet
11-20-2014, 02:15 PM
NoInteractionForU.lic
Alyias says, "If you're asking how to avoid the immediate disruption, the same way you would avoid a PvP incident - walk away, use WARN INTERACT, etc."
Alyias nods.
Atail asks, "Warn interact them and ignore them?"
Alyias says, "You can do that to any player."
Make it so any interaction automagically adds warn interact to everyone and includes an exclude list!
Git er done.
Methais
11-20-2014, 02:18 PM
NoInteractionForU.lic
Alyias says, "If you're asking how to avoid the immediate disruption, the same way you would avoid a PvP incident - walk away, use WARN INTERACT, etc."
Alyias nods.
Atail asks, "Warn interact them and ignore them?"
Alyias says, "You can do that to any player."
Make it so any interaction automagically adds warn interact to everyone and includes an exclude list!
Git er done.
I'd like to also request a script similar to TGO's previous script, but instead of spitting out random greetings, just be like:
Methais just arrived.
(Methais interacts with you.)
Methais just went west.
Kithus
11-20-2014, 02:21 PM
I'd like a version of wander with TGs random RP interaction built in. I don't want the script to hunt for me but when I'm wandering let's confuse some folks.
Buckwheet
11-20-2014, 02:22 PM
I'd like to also request a script similar to TGO's previous script, but instead of spitting out random greetings, just be like:
Methais just arrived.
(Methais interacts with you.)
Methais just went west.
I would like to second this request and also add in to my request something like smells the character and is taken back. Then warn interacts.
Methais
11-20-2014, 02:22 PM
I'd like a version of wander with TGs random RP interaction built in. I don't want the script to hunt for me but when I'm wandering let's confuse some folks.
I keep meaning to run ;wander from TSC before I go to bed one night just to see what I wake up to.
Buckwheet
11-20-2014, 02:23 PM
I keep meaning to run ;wander from TSC before I go to bed one night just to see what I wake up to.
[The Cell]
For disruptive movement reported because you wouldn't cast 401 on someone asking and chasing you around town.
Kithus
11-20-2014, 02:24 PM
I keep meaning to run ;wander from TSC before I go to bed one night just to see what I wake up to.
Let's be honest. I could trap this new RPing wander in town and let it randomly interact with people. Make your own NPC!
Sorcasaurus
11-20-2014, 02:30 PM
Let's be honest. I could trap this new RPing wander in town and let it randomly interact with people. Make your own NPC!
NPC/PC Hybrid?
https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcS4XIvhwfzW7SzT9xfN6YmOBMiFAammK yQW0mQzbiVLxw1cH4GYoA
Developing your character through consistency and presence, sounds legit to me.
Methais
11-20-2014, 02:32 PM
Let's be honest. I could trap this new RPing wander in town and let it randomly interact with people. Make your own NPC!
I'd be more interested in just seeing what room I ended up in the next day, but now it has me curious as to how many people would get butthurt and report me for just walking around everywhere.
The only thing I'd have to figure out would be how to recast my spells every 4 hours, since I'm a pretty terrible script writer when it becomes more than very basic stuff. And that's with .cmd scripts, I'm totally clueless with Ruby.
Buckwheet
11-20-2014, 02:36 PM
I'd be more interested in just seeing what room I ended up in the next day, but now it has me curious as to how many people would get butthurt and report me for just walking around everywhere.
The only thing I'd have to figure out would be how to recast my spells every 4 hours, since I'm a pretty terrible script writer when it becomes more than very basic stuff. And that's with .cmd scripts, I'm totally clueless with Ruby.
;spellactive and just add all your spells to the list.
Kithus
11-20-2014, 02:38 PM
Well great you've solved his problem. Now someone write ;randomrp so I can run wander when I'm not online and my PC can be an NPC.
Tgo01
11-20-2014, 03:14 PM
NoInteractionForU.lic
Alyias says, "If you're asking how to avoid the immediate disruption, the same way you would avoid a PvP incident - walk away, use WARN INTERACT, etc."
Alyias nods.
Atail asks, "Warn interact them and ignore them?"
Alyias says, "You can do that to any player."
Make it so any interaction automagically adds warn interact to everyone and includes an exclude list!
Git er done.
Once I get my respond to verbs script finished this could be added as a possible response :p
I'd like to also request a script similar to TGO's previous script, but instead of spitting out random greetings, just be like:
Methais just arrived.
(Methais interacts with you.)
Methais just went west.
My script was actually specifically setup to always greet you with the same action whenever my characters saw you but I had to stop using the script before it saw you :(
It would do:
"Character Rolls Pins all over the place."
Since I couldn't very well put "Character Role Plays all over the place" without it being blatantly OOC I figured this was a pretty clever alternate, Rolls Pins = RP and all. I even managed to keep the word "role/roll" in there.
[The Cell]
For disruptive movement reported because you wouldn't cast 401 on someone asking and chasing you around town.
I'm almost tempted to leave my characters wandering now just to see if this would happen...
JackWhisper
11-20-2014, 03:17 PM
Best RPA worthy moment ever.
(Kaedra roleplays all over the joint.)
Instant pandemonium in the room. So funny.
JackWhisper
11-20-2014, 03:19 PM
I think that, in this entire thread, other than people being super stupid about TGO's entertainment value.... I think Kithus' idea has merit.
Would it, indeed, since you gain absolutely no benefit in the game, be okay to turn yourself into an NPC for an evening? Just go to bed and leave the script on. Hmm... sounds promising. TGO BEGIN THE CONSTRUCTION SIR! WE MUST DO THIS!
Tgo01
11-20-2014, 03:25 PM
I think that, in this entire thread, other than people being super stupid about TGO's entertainment value.... I think Kithus' idea has merit.
Would it, indeed, since you gain absolutely no benefit in the game, be okay to turn yourself into an NPC for an evening? Just go to bed and leave the script on. Hmm... sounds promising. TGO BEGIN THE CONSTRUCTION SIR! WE MUST DO THIS!
Well according to the GM visit I received I guess if enough people complained about it they could very well ask you to stop it. I mean that's all my greeting script was basically doing, interacting with people.
Regardless I have a script in the works that will respond to most verbs. It's not going to be anything too fancy but people will be able to setup how they want their character to respond to each verb directed towards them. We'll see how fast the whiners get that one pulled :p
Kithus
11-20-2014, 03:26 PM
Thread: Bored...anyone need a script written?
that's pretty much the definition of trolling
Someone else didn't agree with you Jack. I think it'd be awesome to make a new lil NPC with a few random interactions. I bet TG could do better than the Flower Girl for us. Bonus points if we get a console to setup our NPC.
Haldrik
11-20-2014, 03:35 PM
I'm playing Aardwolf and having a great time.
Oh, but they don't allow botting even if you are at the keyboard. And they delete your character if you are caught once. Botting = linking exp command together.
Buckwheet
11-20-2014, 03:43 PM
Well according to the GM visit I received I guess if enough people complained about it they could very well ask you to stop it. I mean that's all my greeting script was basically doing, interacting with people.
Regardless I have a script in the works that will respond to most verbs. It's not going to be anything too fancy but people will be able to setup how they want their character to respond to each verb directed towards them. We'll see how fast the whiners get that one pulled :p
One thing to look for is people who decide to chase you down in OTF screaming your name to see if you found something.
Sorcasaurus
11-20-2014, 03:46 PM
Regardless I have a script in the works that will respond to most verbs. It's not going to be anything too fancy but people will be able to setup how they want their character to respond to each verb directed towards them. We'll see how fast the whiners get that one pulled :p
Can I set your response to meet me at outside the gate at high noon every other Friday to have a duel? For the two weeks following you can boast/lament about it. If you've won you can even mock me every time we pass.
Tgo01
11-20-2014, 03:56 PM
Can I set your response to meet me at outside the gate at high noon every other Friday to have a duel? For the two weeks following you can boast/lament about it. If you've won you can even mock me every time we pass.
Darn right!
Wrathbringer
11-20-2014, 03:58 PM
Hey, my main char has bowel issues (constant diarrhea coupled with a bad cough) that cause him to shart a lot. Could someone please write me a script that will play an audible fart noise every time he coughs? I'd also like it to randomize length and general nastitude, then act accordingly; wipe, change, apologize, what have you, finishing up with a nice MUAHAHAHAAAA! Before waddling out of the room on bowed legs. Thanks in advance.
JackWhisper
12-09-2014, 12:19 PM
Hey, my main char has bowel issues (constant diarrhea coupled with a bad cough) that cause him to shart a lot. Could someone please write me a script that will play an audible fart noise every time he coughs? I'd also like it to randomize length and general nastitude, then act accordingly; wipe, change, apologize, what have you, finishing up with a nice MUAHAHAHAAAA! Before waddling out of the room on bowed legs. Thanks in advance.
...What? Shart repper lives!
How goes the progress on the NPC script TGO? I look forward to using it!
Wrathbringer
12-09-2014, 12:52 PM
Is my script finished yet, tgo? I'll wait till you get back from afk for your answer.
Sorcasaurus
12-09-2014, 12:57 PM
Can I set your response to meet me at outside the gate at high noon every other Friday to have a duel? For the two weeks following you can boast/lament about it. If you've won you can even mock me every time we pass.
Darn right!
I almost forgot about this. Where were you?
http://2.bp.blogspot.com/_SWF9i3Vzpac/TTysCkJ4kaI/AAAAAAAABFY/NreKH_-adAI/s1600/Chicken+McFly-BTTF.gif
Wrathbringer
12-09-2014, 01:01 PM
I almost forgot about this. Where were you?
http://2.bp.blogspot.com/_SWF9i3Vzpac/TTysCkJ4kaI/AAAAAAAABFY/NreKH_-adAI/s1600/Chicken+McFly-BTTF.gif
He was likely afk.
Tgo01
12-09-2014, 01:53 PM
How goes the progress on the NPC script TGO? I look forward to using it!
It's on the back burner again.
Is my script finished yet, tgo? I'll wait till you get back from afk for your answer.
That's on the shart burner.
I almost forgot about this. Where were you?
http://2.bp.blogspot.com/_SWF9i3Vzpac/TTysCkJ4kaI/AAAAAAAABFY/NreKH_-adAI/s1600/Chicken+McFly-BTTF.gif
I waited for you : O
Methais
12-14-2014, 02:37 AM
You should make a script that turns in your completed bounty after you drop down to fried from saturated, picks up a new bounty, and then runs you back to the room you were resting in.
Tgo01
12-14-2014, 02:51 AM
You should make a script that turns in your completed bounty after you drop down to fried from saturated, picks up a new bounty, and then runs you back to the room you were resting in.
this_room = Room.current.id
wait_until { !saturated? }
start_script "go2", [ "advguild" ]
wait_while{ running?('go2') }
person = GameObj.npcs.find { |npc| npc.name =~ /Halline/ }
2.times { fput "ask #{person} about bounty" }
start_script "go2", [ this_room ]
wait_while{ running?('go2') }
You'll need to add the NPCs names to the list if you're not going to the Icemule guild.
Methais
12-14-2014, 03:31 AM
this_room = Room.current.id
wait_until { !saturated? }
start_script "go2", [ "advguild" ]
wait_while{ running?('go2') }
person = GameObj.npcs.find { |npc| npc.name =~ /Halline/ }
2.times { fput "ask #{person} about bounty" }
start_script "go2", [ this_room ]
wait_while{ running?('go2') }
You'll need to add the NPCs names to the list if you're not going to the Icemule guild.
I tried to find a gnome cheering as a response, but instead I found this:
https://www.youtube.com/watch?v=sR5k8S4hLCg
Wrathbringer
12-14-2014, 09:13 AM
this_room = Room.current.id
wait_until { !saturated? }
start_script "go2", [ "advguild" ]
wait_while{ running?('go2') }
person = GameObj.npcs.find { |npc| npc.name =~ /Halline/ }
2.times { fput "ask #{person} about bounty" }
start_script "go2", [ this_room ]
wait_while{ running?('go2') }
You'll need to add the NPCs names to the list if you're not going to the Icemule guild.
If you wanted your char to stop and act sharts every third room, how would that be done?
Tillmen
12-14-2014, 09:15 PM
You'll need to add the NPCs names to the list if you're not going to the Icemule guild.
I usually just use the last npc in the room.
person = GameObj.npcs.last
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.