Quote:
|
Originally Posted by Lyndzey
Come back 
|
As much as I'd love to oblige, it's murder on my social life - I so much as log on, find myself inexorably romantically tied to one Graalian of my past or another, fritter away roundabout two years waiting for it to bloom and eventually realize everyone's laughing at me.
Quote:
|
Originally Posted by Polo
You also have the major problem that to hit a moving target, you'd need a 0.05 second timeout, which is somthing we should be avoiding on serverside. 
|
I always thought that was humorous. This is a bit tricky to code, but try and keep up on the concept:
Tyhm enters a room.
From 30.5,30, facing 0, he fires an Arrow at server time index 12345600. This checks the next likely wall (let's say at y=10) and sets the server string for it.
Every client then recieves "30.5,30,0,12345600,10" and extrapolates:
30.5,29,123456001;
30.5,28,123456002;
30.5,27,123456003;
30.5,26,123456004;
and so on until it hits the wall. Every client sees the arrow flying and, if they intercept it, they take the damage.
The tricky bit is if a client is hit, that changes when the arrow hit a wall and you have to tell everyone in the room not to worry about that projectile anymore. Further, it makes octoballs a little tricky (but not much: dir*90 gives you the angle clockwise from N, so we could just store it all that way), and rooms that spam Way Too Many Projectiles get complicated...but maybe not too complicated. Major complication - you still have to trust the clients to recieve their damage, much in the same way you have to trust the clients to tell the truth about what walls they've walked through. Possible solution - hit the client occasionally to keep it honest. With blanks, maybe, I dunno, tell the client it's about to be shot and see if it accepts it and reports back with damage, then heal it and let it be. Maybe that'd be a GP tool, the Inescapable Arrow that Definitely Hits Any Player That Isn't Cheating And Jails Any Player That It Somehow Misses. I dunno, it all got too complicated for me a long time ago.
Anyone watching - this is why Classic's taking so long, it's not as easy as "Just upload the old levels, OMG!", everything needs to be coded for serverside compatibility. If you don't like it, Stefan's the man to talk to, he's the one who implemented the security that effectively ended good old simplified (if painfully buggy and easily exploited) clientside scripting.
Still don't see why signs ever became serverside...