1

Topic: The pathfinding code is working

I finally got the first draft of my term paper done for Japanese, giving me free time. I don't have Internet at home at present (that may change -- it's quite inconvenient not to have it, though it does make it easier to concentrate on my studies) so as you've likely noticed I haven't posted much.

Anyway, last Saturday I got pathfinding working, so that's all good now. The pathfinding code properly detects obstacles that pop up along the path and repath if it finds any. The way it determines what is and what isn't a tile is a bit of a hack, so that's the next thing I'll be changing. After that I think there are a couple bugs, and then it'll probably be time to do at least basic game logic. Hopefully over this coming spring break I'll be able to make good progress. The pathfinding wasn't actually that hard per se -- it only took two days to get from broken to working fairly well (I didn't do it entirely properly so I may have to change it later -- because I used floating point and allowed arbitrary orientations for entities -- big mistake as far as sanity, time, and bugs go), but those two days were basically devoted to the pathfinding.

Another thing that the client and server do now (since I last posted anyway, it's not really new) is use Kerberos for authentication. The problem is that the Kerberos server doesn't normally run on Windows (the last version I downloaded anyway, which was admittedly about half a year ago), so I have to run it under Cygwin and even then with some changes. It's got a lot of old code and that wouldn't be a problem except that it doesn't mesh well with our current conception of citizen accounts. If any of you know how to have Kerberos mirror passwords between different subidentities do let me know... The idea of having to have a separate password for logging in as a citizen isn't too appealing in my opinion, so...

As far as game logic goes, it'll probably be basic monster AI, perhaps attacking code, though I'm questioning how much I want to hard code that. After all, what I _could_ do is make attacking for weapons (and receiving attacks for armor) scriptable functions, allowing customized responses on both ends of that. Actually before I do any of that I need to alter pathfinding so that it can stop right before a destination instead of trying to go to it, so that it'll be possible to pathfind to creatures instead of just to tiles...

A couple unrelated bits... Does anyone know how to get a PC-like Home/End behavior on a PowerMac? It's driving me batty how this thing goes to the start of the document instead of the start of the line. Next thing, having taken a year off from college I get the idea that a lot of the stuff people do here they could easily learn on their own. Then again I'm taking sophomore-level Mechanical Engineering classes so perhaps it's to be expected (sigh). All for a piece of paper. Hurrah. Hm, that's about it I guess.

2

Re: The pathfinding code is working

Kerberos has a Windows version here,+http://web.mit.edu/kerberos/www/dist/index.html courtesy of google.

I think this might solve your PowerMac issues: http://www.osxfaq.com/tips/unix-tricks/week76/monday.ws

Best of luck finding a path and go make Faldon worth playing again:P

3

Re: The pathfinding code is working

Yeah, when I downloaded it a while ago there was a Windows version too. But it only includes the various pieces of client software and the development libraries. I needed the server also. That's working now though; I just need to modify the code so that, say, james/citizen@kerberos.illusorystudios.com automatically has the same password as james/peasant@kerberos.illusorystudios.com.

Anyhow I spent basically all of yesterday on coding, so now if I delete a tile on the map something pathfinding will alter its path when it comes to the tile that no longer exists, the CreatureBase class' GoTo method will now follow moving creatures properly, and projectiles can have a hit radius of over a tile... As it stands most things are server side with interpolation only on the client, so until I fix that it's not going to be as responsive as present-day Faldon, instead maybe a bit laggy to the click like Runescape (actually at present you control characters through chat because I'm only testing, but...). Bleh. That's going to be hard to fix though so I expect I'll do that much later.

Next thing up is putting character animation, etc. support within the logic code. I didn't think I'd need that, but without it we'd have it like the server is now, where the server isn't aware that it takes time to transition from the walk animations to the attack animations (which is the main reason speed hacks actually make a small difference, especially when people are attacking while chasing, not that they attack faster or anything). Once that's in characters will be able to sit and such also, and I intend to have that transfer as part of the character state, so you'll be able to stay sitting down. smile Boring stuff, but it's preparatory, so...

4

Re: The pathfinding code is working

Sounds good

I keep my ideals, because in spite of everything, I still believe that people are really good at heart.

5

Re: The pathfinding code is working

Ooh Ooh See if you can get a Faldon Jump in tongue

Ive always wanted to jump around in Faldon ^_^

6

Re: The pathfinding code is working

Yea I always wanted to jump like a mad man.

I keep my ideals, because in spite of everything, I still believe that people are really good at heart.

7

Re: The pathfinding code is working

Jump would require new art and thus won't happen.  Besides, what would jumping do?

8

Re: The pathfinding code is working

Umm...be cool....Sheesh...:D

I dont see why it would need new art....just keep the Body Straight and Bounce....same as if someone was bouncing up and down z levels.

Jumping would bring an all new technique to PKing....maybe...:p

9

Re: The pathfinding code is working

Yes.. make the body move up and down, that wouldn't look like ass.  Honestly, that is one of the stupidest ideas I've heard recently.

10

Re: The pathfinding code is working

Zer wrote:

I finally got the first draft of my term paper done for Japanese, giving me free time. I don't have Internet at home at present (that may change -- it's quite inconvenient not to have it, though it does make it easier to concentrate on my studies) so as you've likely noticed I haven't posted much.

Anyway, last Saturday I got pathfinding working, so that's all good now. The pathfinding code properly detects obstacles that pop up along the path and repath if it finds any. The way it determines what is and what isn't a tile is a bit of a hack, so that's the next thing I'll be changing. After that I think there are a couple bugs, and then it'll probably be time to do at least basic game logic. Hopefully over this coming spring break I'll be able to make good progress. The pathfinding wasn't actually that hard per se -- it only took two days to get from broken to working fairly well (I didn't do it entirely properly so I may have to change it later -- because I used terminus point and allowed arbitrary orientations for entities -- big affirmwater insulated water bottle carrier as far as sanity, time, and bugs go), but those two days were basically devoted to the pathfinding. Another thing that the client and server do now (since I last posted anyway, it's not really new) is use Kerberos for authentication. The problem is that the Kerberos server doesn't normally run on Windows (the last version I downloaded anyway, which was admittedly about half a year ago), so I have to run it under Cygwin and even then with some changes. It's got a lot of old code and that wouldn't be a problem except that it doesn't mesh well with our current conception of citizen accounts. If any of you know how to have Kerberos mirror passwords between different subidentities do let me know... The idea of having to have a separate password for logging in as a citizen isn't too appealing in my opinion, so...

As far as game logic goes, it'll probably be basic monster AI, perhaps attacking code, though I'm questioning how much I want to hard code that. After all, what I _could_ do is make attacking for weapons (and receiving attacks for armor) scriptable functions, allowing customized responses on both ends of that. Actually before I do any of that I need to alter pathfinding so that it can stop right before a destination instead of trying to go to it, so that it'll be possible to pathfind to creatures instead of just to tiles...

A couple unrelated bits... Does anyone know how to get a PC-like Home/End behavior on a PowerMac? It's driving me batty how this thing goes to the start of the document instead of the start of the line. Next thing, having taken a year off from college I get the idea that a lot of the stuff people do here they could easily learn on their own. Then again I'm taking sophomore-level Mechanical Engineering classes so perhaps it's to be expected (sigh). All for a piece of paper. Hurrah. Hm, that's about it I guess.


Hey found this on a google therad for pathfinding and monsters. I know this is a bit of a zombie thread rising from the grave but is the code for this still available? I am doing a project on a modern OS X (10.6 intel) that might be helpful for me to be able to take a look at the code (3rd semester CS). Cheers.

11

Re: The pathfinding code is working

Following url containing such posts which may help you in making pathfinding code.
http://dotnetperls.com/pathfinding
http://www.codeproject.com/KB/recipes/c … hfind.aspx

12

Re: The pathfinding code is working

Zer has also never released any code, so I doubt you'll get any results.