Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 12-23-2007, 08:09 PM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Default

If a solution like this were to come into usage I think we'd need to inevitably figure out how to create a water map from an .EQG file too.
Reply With Quote
  #2  
Old 01-18-2008, 11:41 AM
moydock
Discordant
 
Join Date: Jun 2005
Posts: 286
Default

Not sure if this has been fixed since build 1070 but my mobs still go under the world when trying to go through a hill, the hill can be little more than a bump too. What i've found is if you give precise waypoints, that only take him on a straight line, polygon to polygon, he will never go under the world. They can climb giant mountains like this without falling under the world. Is there a way a mob could calculate this himself when he sees there's a mountain in his way?
__________________
-Croup (the rogue)
Creator of Pandemic (PvP-Racewars)
Reply With Quote
  #3  
Old 01-18-2008, 10:30 PM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

Quote:
Originally Posted by moydock View Post
My mobs still go under the world when trying to go through a hill, the hill can be little more than a bump too. What i've found is if you give precise waypoints, that only take him on a straight line, polygon to polygon, he will never go under the world.
The issue with some zones is that the Verant/SOE designers put in a base ground mesh and then put mountains on top of that, so if a waypoint sends a mob under the ground, the BestZ code looks down and sees the lower ground level under the mountain and sends the mob down there.

I had experimented with further fixes to the BestZ code to look up and down and decide which was the more likely ground level the mob should be it, but it was getting messy, so I stopped work on that.

The tool I am currently working on it plots the paths between waypoints, looks for collisions and inserts extra waypoints to avoid the collisions. In very uneven terrain, it will put an extra waypoint on both edges of a polygon to lead the mob safetly across it. It also inserts extra waypoints to keep the mob close to the ground and not attempt to path through the air.

This is done 'offline' to reduce the overhead at runtime, however a grid that has, say 20 waypoints, can easily turn into one that has 200+ when processed like this, so there is extra overhead for the server in terms of extra memory to store the waypoints and CPU to process them, although I can't really quantify the latter.


It is really only designed for auto-fixing outdoor paths at the moment, but I haven't got an ETA as yet as although it fixes paths well in a lot of cases, there are still some cases where I set it off fixing a zone and it will find some unhandled set of geometry conditions or a bug where it gets into a loop. The job is then to analyse the set of conditions that causes that and put in logic to either to be able to fix that waypoint or to safetly exit the auto-fix routine to tell the user he will have to manually insert waypoints to get around it.
Reply With Quote
  #4  
Old 01-26-2008, 12:49 PM
moydock
Discordant
 
Join Date: Jun 2005
Posts: 286
Default

Great to hear man, this would be wonderful for designing new content. My #1 headache is waypoints. Don't give up! Don't let the hills win! <3
__________________
-Croup (the rogue)
Creator of Pandemic (PvP-Racewars)
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 12:48 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3