On Wed, Jul 30, 2008 at 2:54 PM, kschnee <[EMAIL PROTECTED]> wrote:
>
> I was playing recently with the A* pathfinding algorithm and made a
> workable version of it:
> http://kschnee.xepher.net/code/080721a_star_pathfinding.zip
> http://kschnee.xepher.net/pics/080720a_star.jpg
>
> Other things that I could see as useful for a modest AI library (not Pygame
> itself) would be a flocking algorithm, and an NPC dialog system comparable
> to the one used in "Morrowind." As for the first and A* itself, it's tricky
> to make those generic for everyone because each coder will likely use their
> own coordinate/movement system. The dialog system would be relatively easy
> to make widely usable, as the only input and output would be strings plus
> the NPC having access to world-state variables like "dragon_slain = True."
> What else might be interesting?
>
> Perhaps it is possible to make the pathfinding code pluggable in some way,
allowing you to subclass
a 'Node' class, overriding getx() and gety() functions, as well as allowing
you to specify a g() and h() function or something.
This is a level of abstraction higher than the function pygame now offers,
so I could again raise the question wethers this belongs in the pygame core.
But pathfinding is not an entirely uncommon task, so it might be usefull to
integrate.
There's a couple separate python implementations floating around already
though. Heck, I implemented it myself once, it's not that hard. It's another
piece of code I think would fit quite well in the cookbook.

I think a dialog system qualifies as neither AI nor generalisable. What
about customising dialog based on the main characters attributes, or perhaps
NPC's speaking amongst eachother (with a player eavsedropping). What about
game devs that like the final fantasy/zelda style of dialog more than the
Elder Scrolls one? Maybe NPCs should say different things at different
times.
And we're not even getting into graphical presentation. It's a very
game-specific thing.

What you're proposing are all things that belong in a game engine more than
in a lib like pygame.

Reply via email to