View Full Version : Bored! Give me some script ideas!
Tgo01
03-27-2023, 12:18 AM
Give me some script ideas for scripts that don't already exist. I'm bored!
Alastir
03-27-2023, 02:05 AM
Write a 'bescort' script, like dragonrealms has, for all of the stringproc movements in the game so we can remove them from the mapdb.
SonoftheNorth
03-27-2023, 04:41 AM
Magic item recharging script?
Realk
03-27-2023, 04:57 AM
along the same line of thought, scroll unlocks and charging
kutter
03-27-2023, 10:33 AM
Making an Urven'eth potion, I started one in wizard, less than ideal I know but I suck at real scripting, but have not had a chance to finish and test it.
onurb
03-27-2023, 10:42 AM
How about cast a disk on everyone in the room that doesn't already have a disk, rapid fire friendly.
Ramrod
03-27-2023, 11:26 AM
A task scheduler or script management type of script that starts and stops scripts when certain conditions are met or at certain times.
Methais
03-27-2023, 12:25 PM
Give me some script ideas for scripts that don't already exist. I'm bored!
Integrate ChatGPT into your ;roleplay script.
Dreaven just arrived.
(Dreaven roleplays all over the place.)
Tgo01
03-27-2023, 09:44 PM
How about cast a disk on everyone in the room that doesn't already have a disk, rapid fire friendly.
if !Spell[511].known?
echo "You don't know 511. What you trying to pull here?"
else
GameObj.pcs.each{ |person|
if !checkmana(50) && Spell[515].known? && !Spell[515].active?
echo "Waiting for mana."
wait_until{ checkmana(50) }
end
Spell[515].cast if !Spell[515].active? && Spell[515].known?
if !checkmana(16)
echo "Waiting for mana."
wait_until{ checkmana(16) }
end
Spell[511].cast("##{person.id}") if checkmana(16) && !GameObj.loot.find{ |item| item.noun =~ /disk|coffin/ && item.name =~ /#{person}/ }
}
Spell[511].cast(checkname) if checkmana(16) && !GameObj.loot.find{ |item| item.noun =~ /disk|coffin/ && item.name =~ /#{checkname}/ }
end
Tgo01
03-27-2023, 09:49 PM
Keep on posting suggestions. I'm gonna work on the ones I feel like working on at any particular moment in time.
onurb
03-27-2023, 10:13 PM
very nice, thank you
however it casted 515 yet no one needed a disk
onurb
03-27-2023, 10:21 PM
well I started to think about it and then I was like... at what point should it cast 515? when 5 or more disks are needed? 10 or more? then I was just like, the only time I would need to use 515 is if there was a game crash and I had to log them all on and start from scratch. so maybe I'll just throw a variable in there like ;disk 515 that only does 515 when asked.
Rolis
03-27-2023, 11:23 PM
515 has 0 cast rt now. So always throw in 515 into the script. You will always finish casting the disks faster from 1 player to n number of players with 515 precast .
Sent from my IN2015 using Tapatalk
Tgo01
03-27-2023, 11:46 PM
Magic item recharging script?
There isn't already a script that does this?
along the same line of thought, scroll unlocks and charging
Or this?
SonoftheNorth
03-28-2023, 12:17 AM
There isn't already a script that does this?
Or this?
No
Tgo01
03-28-2023, 12:24 AM
No
;chargeitem is on the repo, it doesn't work, or are you referring to something else?
Methais
03-28-2023, 09:19 AM
if !Spell[511].known?
echo "You don't know 511. What you trying to pull here?"
else
GameObj.pcs.each{ |person|
if !checkmana(50) && Spell[515].known? && !Spell[515].active?
echo "Waiting for mana."
wait_until{ checkmana(50) }
end
Spell[515].cast if !Spell[515].active? && Spell[515].known?
if !checkmana(16)
echo "Waiting for mana."
wait_until{ checkmana(16) }
end
Spell[511].cast("##{person.id}") if checkmana(16) && !GameObj.loot.find{ |item| item.noun =~ /disk|coffin/ && item.name =~ /#{person}/ }
}
Spell[511].cast(checkname) if checkmana(16) && !GameObj.loot.find{ |item| item.noun =~ /disk|coffin/ && item.name =~ /#{checkname}/ }
end
This needs a follow up script that joins (or hides and stalks if their group is closed) the person you just disked and loads up their disk with trash until everyone in the room has a full disk.
very nice, thank you
however it casted 515 yet no one needed a disk
;diskus already exists for mass disking. But that follow up ;diskgarbage script from above is still needed.
Methais
04-03-2023, 09:39 AM
How about a script like ;gemhoarder / ;gemhoarder2 but one that doesn't randomly stop working 99% of the time?
onurb
04-16-2023, 02:14 PM
How about a script that disarms every box on the ground in a room but does not pick them, just disarm. :)
Vishnell
04-16-2023, 03:29 PM
Finish up your pickpocket script and put it back on the repo. [emoji16]
Sent from my SM-G781U using Tapatalk
Tgo01
04-16-2023, 03:45 PM
How about a script that disarms every box on the ground in a room but does not pick them, just disarm. :)
;tpick already does this.
;tpick disarm ground
Tgo01
04-16-2023, 03:46 PM
Finish up your pickpocket script and put it back on the repo. [emoji16]
Sent from my SM-G781U using Tapatalk
Oh yeah, I forgot about that script...again :O
Solkern
04-16-2023, 09:18 PM
Make a script where you can chose specific words, and when ever it’s said, you get triggered and go into a defensive tirade about sensitivity.
Vishnell
04-17-2023, 10:00 AM
A script to automatically record and provide any loresinging (recall) on an item. Essentially eliminating the need for temporary loresong unlocks after the first one.
Sent from my SM-G781U using Tapatalk
Tgo01
04-17-2023, 05:01 PM
A script to automatically record and provide any loresinging (recall) on an item. Essentially eliminating the need for temporary loresong unlocks after the first one.
Sent from my SM-G781U using Tapatalk
;testme already sort of does that. It predates loresong unlocks so it has its own way of displaying information.
The information can be stored to a file on your computer. You probably mean so you can see the information in game by doing something like ;recall <item name>, but the problems with that is it would only really work with items with really unique names because the script would have no way of knowing the difference between two items with the same name.
Also in game loresong unlocks automatically update the item's information (enchant level, ensorcel level, item difficulty, etc) as the item is worked on, whereas with the script the information would remain static.
I have 3 scripts that I made for own use years ago that I don't think still exist on repo but probably should. They automate all the common prof services.
;enchant 10 e (runs to workshop, summons familiar, waits till full spirit etc, check if item is enhancive, pour ur pot if it is, and does specified number of casts until out of essence)
;7x (checks item's current unlock level, then buys and pours the right potions on it to bring it to 7x)
;ensorcell (the sorc version of ;enchant and does similar things)
clerics could probably use one as well
Fleur-de-me
04-27-2023, 05:21 AM
I'd love a script to monitor health and bleeders and heal one's self using Ipower cman as an active hunting script that can be run during bigshot, please and thank you! Willing to tip!
Tgo01
04-27-2023, 05:26 AM
I'd love a script to monitor health and bleeders and heal one's self using Ipower cman as an active hunting script that can be run during bigshot, please and thank you! Willing to tip!
Can ipower heal bleeders? Wiki says it only heals minor wounds.
phantasm
04-27-2023, 11:33 PM
A script that will shop at the pawnshop/gemshop, inspecting all the items for requested spells/enhancives whatever. Or maybe just a script that really quick inspects all that stuff and gives a nice pretty summary report of what was there.
Methais
05-03-2023, 03:12 PM
How about a script that's a modified version of your ;roleplay script, except instead it only talks down to people in a passive-aggressive manner?
You can call it ;brauden or something.
Tgo01
05-03-2023, 03:36 PM
How about a script that's a modified version of your ;roleplay script, except instead it only talks down to people in a passive-aggressive manner?
You can call it ;brauden or something.
lol
nocturnix
05-07-2023, 12:20 PM
Still would love to be able to mail things from any city to a specific person with one command.
;mail <item> to <person>
I need to start shipping all these weapons to my forger for smelting them down.
http://forum.gsplayers.com/showthread.php?135856-Anyone-interested-in-creating-a-MAIL-script
Neveragain
05-07-2023, 12:33 PM
Still would love to be able to mail things from any city to a specific person with one command.
;mail <item> to <person>
I need to start shipping all these weapons to my forger for smelting them down.
http://forum.gsplayers.com/showthread.php?135856-Anyone-interested-in-creating-a-MAIL-script
That system already exists and has existed since around 2005, message worms.
Not sure why they didn't just expand on the message worms. It was kind of like when the last RR guru "added" a bait house without even knowing a bait house already existed in RR.
Tgo01
05-07-2023, 03:52 PM
Still would love to be able to mail things from any city to a specific person with one command.
;mail <item> to <person>
I need to start shipping all these weapons to my forger for smelting them down.
http://forum.gsplayers.com/showthread.php?135856-Anyone-interested-in-creating-a-MAIL-script
The script I posted to that thread doesn't work?
nocturnix
05-11-2023, 01:57 AM
The script I posted to that thread doesn't work?
My bad man, I didn't even see that. Been super busy with work. It sounds great will try it out.
Tgo01
05-11-2023, 02:12 AM
It all good.
onurb
06-05-2023, 12:12 AM
Wracking my brain on this one. I am making myself a simple script to drop stuff. I want to be able to do ;drop 5 emerald and it will drop 5 emerald and stop. I also want it to drop multiple items, like if I do a ;drop diamond emerald sapphire it will drop every diamond, emerald, and sapphire I have. The problem I am running into is some gems I have to get more specific, like I have to do a ;drop "green sap" "yellow sap", "blue sap" and the spaces within each gem are messing things up! there are some random 'respond' in there, I was trying to test things out.
if script.vars[1].to_i > 0
script.vars[1].to_i.times{
fput "get my #{script.vars[2]}"
result = waitfor(/You remove|Get what?|I could not find|Wait (1|2|3) sec./)
if result =~ /You remove/
fput "drop my #{script.vars[2]}"
elsif result =~ /Get what?|I could not find/
respond "*** NOT ENOUGH ***"
exit
end
}
elsif script.vars[1].to_i == 0
container = GameObj.inv.find{ |item| item.noun == "knapsack" }
Script.current.vars[0].split(" ").each{ |vname|
if script.vars[1] =~ /\s/
respond "* space detected *"
respond "* #{vname} *"
exit
loop{
container = GameObj.inv.find{ |item| item.noun == "knapsack" }
needed_item = container.contents.find{ |item| item.name =~ /#{vname}/ }
if needed_item
fput "get my #{needed_item}"
fput "drop my #{needed_item}"
else
break
end
}
else
respond "* no space detected *"
respond "* #{vname} *"
exit
loop{
container = GameObj.inv.find{ |item| item.noun == "knapsack" }
needed_item = container.contents.find{ |item| item.name =~ /#{vname}/ }
if needed_item
fput "get my #{needed_item}"
fput "drop my #{needed_item}"
else
break
end
}
end
}
exit
end
onurb
06-05-2023, 12:35 AM
it works if I do ;drop gem gem gem but not if I do ;drop gem "gem gem" gem
Tgo01
06-05-2023, 05:55 AM
I don't think the script would recognize you putting quotes around some of the command line variables.
What you would probably need to do is something like separate the gems with multiple words with a comma, so like ;drop ruby star,sapphire emerald
Then go through each variable like script.vars.each{ } and separate the variables via a comma and now you can make the one words into one words and the two words into two words.
onurb
06-05-2023, 08:41 PM
I think I am onto something...
vcount = Script.current.vars.count - 1
vcount.times{
respond Script.current.vars[1]
Script.current.vars.shift
}
>;test aaa "bbb bbb" ccc
--- Lich: test active.
aaa
bbb bbb
ccc
--- Lich: test has exited.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.