PDA

View Full Version : Hider Poaching: Suggestions?



Renian
08-08-2008, 01:27 PM
So, my wizard's script just managed to poach 6 of Mikeke's kills in the black forest; it goes so fast that I tend not to realize these things until they say something.

The problem is he was hiding, diskless, and then ambushing. And from what it sounds like in Shaelun's other post, Watchfor is disabled, and even if it were enabled, it's not regular expressions compatible. I need some sort of regex that will detect it at any time during the script's operation, but I also need to be able to recognize when it was a mob that ambushed, not a player.

Thoughts?

AnticorRifling
08-08-2008, 01:59 PM
If he's not using a disk or something to let people know he is there fuck'em.

NocturnalRob
08-08-2008, 02:16 PM
If he's not using a disk or something to let people know he is there fuck'em.

qft. who the fuck doesn't use a disk? especially a rogue (assumption based on the hide/ambush description)?

Morrff
08-08-2008, 02:24 PM
If he's not using a disk or something to let people know he is there fuck'em.

I concur, but perhaps if it's happening quite a lot you could put something matching someone speaking from the shadows triggering an auto response of your choice?

Script or not without a disk or having seen him/her around and knowing the profession or how he/she hunts...It's impossible to tell he/she's there without an unnecessary searching or casting. There shouldn't be a need for waiting or slowing down(IMO) as you can be harmed by doing so.

So script or not someone hunting fast with rapid fire or someone like hasted with minimal RT would cause the same problem so I don't see it as a scripting problem really if you were worried about GM involvement. But then again they will do as they see fit as always

Danical
08-08-2008, 02:46 PM
Here's the problem:

He ambushes and you keep attacking; you should stop. That's easy to circumvent via checkpcs.

He says, "Hey, I'm hunting here. Sorry I'm a fucking piece of shit and don't have a disk to alert you of my hidden presence." Now how do you have a script terminate/pause and response in kind? That's what gets me. Luckily, no one hides in sentries or GWEs because you'd be stupid to do so.

CrystalTears
08-08-2008, 02:49 PM
I tend to forget to get a disk, but then, I don't get upset if my kill is poached.

Renian
08-08-2008, 02:51 PM
He ambushes and you keep attacking; you should stop. That's easy to circumvent via checkpcs.


Actually, it isn't. Checkpcs only updates in the wizard upon a LOOK. And I can't keep having checkpcs trigger whenever someone walks into a room. I'd always be leaving what is actually rightfully mine to kill.


I concur, but perhaps if it's happening quite a lot you could put something matching someone speaking from the shadows triggering an auto response of your choice?

That's sort of what I want, but it needs to be automatically running in the same script all the time in order to update a variable that I have ($invalidmob) that will tell the character "Oh shit, I can't be in this room anymore." And have him keep going. I currently know of no way to update variables of currently running scripts through other scripts.

Danical
08-08-2008, 03:03 PM
Actually, it isn't. Checkpcs only updates in the wizard upon a LOOK. And I can't keep having checkpcs trigger whenever someone walks into a room. I'd always be leaving what is actually rightfully mine to kill.
.

lolz, ditch wizard immediately. This MIGHT help . . . ? I haven't really thought it out at all. Since I never have this problem.

Have your attack script send a global variable when you enter the room - something like $freshroom = true

Have a background script with . . .

loop {
line = waitfor("cockbag ambushes from hiding")
if line =~ /ambushes/ & $freshroom
put "omfg, srsly so sry"
$freshroom = false
end
}

Then in you attack routine of your script . . .

if $falseroom = false
break (or next or something)
end

Renian
08-08-2008, 03:06 PM
lolz, ditch wizard immediately. This MIGHT help . . . ? I haven't really thought it out at all. Since I never have this problem.

Lich would crash on me in SF after starting my hunting scripts. Also it was much slower. :/ SHAELUN, ARCHLICH PLZ. SRSLY. AND MAKE IT PSINET COMPATIBLE :(


Have your attack script send a global variable when you enter the room - something like $freshroom = true


...Wait.

Global variables are global to all of Lich, not just the script you are running?

Renian
08-08-2008, 03:10 PM
...HOLY SHIT.

>;test3
--- Lich: test3 active.
[test3: false]
[test3: false]
[test3: false]
[test3: false]
[test3: false]
[test3: false]
[test3: false]
;exec $test = true
--- Lich: exec1 active.
--- Lich: exec1 has finished.
[test3: true]
[test3: true]
[test3: true]
[test3: true]
[test3: true]
[test3: true]


GNIMBLE <3 <3 <3 SEE ME FOR SUCKTREATS

Danical
08-08-2008, 03:13 PM
:heart:

BigWorm
08-08-2008, 04:12 PM
...HOLY SHIT.

>;test3
--- Lich: test3 active.
[test3: false]
[test3: false]
[test3: false]
[test3: false]
[test3: false]
[test3: false]
[test3: false]
;exec $test = true
--- Lich: exec1 active.
--- Lich: exec1 has finished.
[test3: true]
[test3: true]
[test3: true]
[test3: true]
[test3: true]
[test3: true]


GNIMBLE <3 <3 <3 SEE ME FOR SUCKTREATS

Umm... yeah. Global variables are global to that instance of the lich. Your methods are also global since they are methods of the class Object which every script has.

Also, instead of running another script, you could just spawn a new thread:



hider_thread = Thread.new {
loop {
line = waitfor("cockbag ambushes from hiding")
if line =~ /ambushes/ & $freshroom
put "omfg, srsly so sry"
$freshroom = false
end
}
}

Danical
08-08-2008, 04:15 PM
What is this "Thread" you speak of!?

Renian
08-08-2008, 04:15 PM
Yeah, I was worried about Thread's compatibility though.

Morrff
08-08-2008, 04:15 PM
Have another script continuosly running waiting for
name = gets.chomp
puts 'Hey I didn\'t see you there' + name + '.'
if name == 'Drevn'
puts 'Get a disk you DOLT' + name + '.'
endOr you could have the watching script...

fput ;s Huntingscript1 ' + name + ' is here (Or whatever you choose to send)

Or just simply have it send anything you wanted to trigger the same result ignoring their name entirely.

Something like making an entirely simple script to send it would be the easiest method I can think of and is more then likely how I would do it.

Morrff
08-08-2008, 04:21 PM
Scratch any of what I said, having the new thread inside your script would work much better I'm sure, I wrote all that before you had answers and left the keys before I sent it... I'm not much of a programmer

BigWorm
08-08-2008, 04:27 PM
Yeah, I was worried about Thread's compatibility though.

Compatibility with what?

waywardgs
08-08-2008, 04:49 PM
Here's the problem:

He ambushes and you keep attacking; you should stop. That's easy to circumvent via checkpcs.

He says, "Hey, I'm hunting here. Sorry I'm a fucking piece of shit and don't have a disk to alert you of my hidden presence." Now how do you have a script terminate/pause and response in kind? That's what gets me. Luckily, no one hides in sentries or GWEs because you'd be stupid to do so.

Heh... so now it's the hider's responsibility to help the afk scripter out with his scripting? And if he doesn't, if he chooses not to use a disc (many do) he's a piece of shit for it? Wow.. I think it's pretty lame when people just run a program to gain levels, but I haven't really wanted to see them get in trouble till now. Why are other people pieces of shit for not complying with your scripting? Amazing...

BigWorm
08-08-2008, 04:51 PM
Heh... so now it's the hider's responsibility to help the afk scripter out with his scripting? And if he doesn't, if he chooses not to use a disc (many do) he's a piece of shit for it? Wow.. I think it's pretty lame when people just run a program to gain levels, but I haven't really wanted to see them get in trouble till now. Why are other people pieces of shit for not complying with your scripting? Amazing...

This has nothing to do with scripting. If you are an ambusher, you don't get to bitch about people poaching your kills unless you have a disk. Maybe you haven't heard of it. I mean its only been a common practice since like 1989.

Renian
08-08-2008, 04:52 PM
Heh... so now it's the hider's responsibility to help the afk scripter out with his scripting?

There's also at-the-keyboard scripters (me) who's scripts are so goddamn fast they don't necessarily see them. Not to mention at-the-keyboard non-scripters that are trying to hunt normally, don't see a disk so they start attacking, and then LOL I WAS HIDING GUY appears.

Renian
08-08-2008, 04:53 PM
Compatibility with what?

Did I read this wrong? It sounded like there were compatibility issues with Thread and Lich.

http://forum.gsplayers.com/showthread.php?t=33720

Danical
08-08-2008, 04:57 PM
Heh... so now it's the hider's responsibility to help the afk scripter out with his scripting? And if he doesn't, if he chooses not to use a disc (many do) he's a piece of shit for it? Wow.. I think it's pretty lame when people just run a program to gain levels, but I haven't really wanted to see them get in trouble till now. Why are other people pieces of shit for not complying with your scripting? Amazing...

This is about mutual respect. REGARDLESS IF I'M SCRIPTING OR NOT, I'm going to use open 1030 (insert other area spells here). If you're hiding without a disk looks like you're going to die because there's no way for me to find out you're hiding without putting myself in serious jeopardy. But the crux of the matter is poaching which the above can be applied to.

How about some common fucking courtesy.

You just made an ass out of yourself. :(

Danical
08-08-2008, 04:58 PM
They beat me too it . . . damn work.

Imperarx
08-08-2008, 05:29 PM
Did I read this wrong? It sounded like there were compatibility issues with Thread and Lich.

http://forum.gsplayers.com/showthread.php?t=33720

Long story short, you read it wrong. Shae's answer is you don't need to include the thread library to use threads in Lich.

However, you need to be aware the get eats lines, so you'll have threads stealing from each other. That could be a big problem, and I'm not sure it'd be worth it for the issue you're having.