Go Back   EQEmulator Home > EQEmulator Forums > Development > KayotRO

KayotRO This is the forum for Kayot's Editor.

Reply
 
Thread Tools Display Modes
  #1  
Old 04-28-2008, 07:25 AM
GeorgeS
Forum Guide
 
Join Date: Sep 2003
Location: California
Posts: 1,474
Default

Thanks - that pretty much explains it. I added a few more map file and shortly will attempy to do this in 2D overlay, then try it in 3D

GeorgeS
__________________
Your source for EQ database tools
Toolshop is open for business


http://www.georgestools.chrsschb.com//
Reply With Quote
  #2  
Old 04-28-2008, 09:27 AM
sesmar
I built it I will Support it!
 
Join Date: Jun 2005
Location: Michigan
Posts: 214
Default

For 3D, I know that you use Visual Basic 6 GeorgeS, but for .net take a look at the XNA Framework. You can do a lot of stuff both 2d and 3d without a lot of work using VB.Net or C#.Net.
__________________
Reply With Quote
  #3  
Old 05-07-2008, 12:23 AM
rmanders's Avatar
rmanders
Fire Beetle
 
Join Date: Oct 2004
Location: Ohio
Posts: 15
Default

A while ago I was working on something similar to what Kayot is doing now. I kind of stopped working on it for the reasons described in this post.... It's neat to view the spawns, but to actually place them you need a way of viewing the map topology....or at least "dropping" a spawn just above the surface. The problem is how to get this data. Could it be read from an s3d file?
Reply With Quote
  #4  
Old 05-07-2008, 06:28 AM
GeorgeS
Forum Guide
 
Join Date: Sep 2003
Location: California
Posts: 1,474
Default

Yes, in essence everything in the the S3D file such as the 3D zone. It's complicated to figure out, and I tried just to export the .obj 3D file. But even that is hard to work with. I have ideas - just need time to figure it out.

The only tool is truevision3D.dll - which allows for Z-height mapping, and I'll start with that.

GeorgeS
__________________
Your source for EQ database tools
Toolshop is open for business


http://www.georgestools.chrsschb.com//
Reply With Quote
  #5  
Old 05-07-2008, 07:37 AM
Bulle
Hill Giant
 
Join Date: Jan 2008
Posts: 102
Default

This calls for a question then : what do the *.map files contain, the ones from the Maps directory that you have to put in your server DIR ? I had always thought they contained a dumbed down 3D description of the zones, basically the world coordinates of the solid areas, so that NPCs do not fall underground etc. Am I wrong to think the contents of these files *.map is well-known and "easily" parseable ? I got them from Sourceforge so that was a given for me.

The S3D files are Sony material and feel like "less desireable", being proprietary.

I know nothing about how the 3D in EQ is orchestrated so I am asking newb questions here, to understand what we know and can retrieve, and what we cannot. If there is a place to get a bit more enlightened about this topic I welcome any link
Reply With Quote
  #6  
Old 05-07-2008, 03:41 PM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

Quote:
Originally Posted by Bulle View Post
This calls for a question then : what do the *.map files contain, the ones from the Maps directory that you have to put in your server DIR ? I had always thought they contained a dumbed down 3D description of the zones, basically the world coordinates of the solid areas, so that NPCs do not fall underground etc. Am I wrong to think the contents of these files *.map is well-known and "easily" parseable ? I got them from Sourceforge so that was a given for me.
The EQEmu .MAP files are created by the Azone utility (comes with the EQEmu source). Azone rips the polygons (triangles) describing the 'ground mesh' from the S3D or EQG files. By ground mesh, I mean the .MAP doesn't include what are classed as 'placeable objects' such as trees, some small rocks, small buildings etc. (even quite large structures such as a bridge in one zone (I think it was Thundercrest)).

As well as the actual polygons, the .MAP file contains an octree that divides the zone into rectangular 2D nodes so the code can find all the polys in a particular area of the zone quite quickly.

There is code in zone/Map.cpp to use the .MAP files, e.g. load them into memory, check if a line between two points intersects any polys etc.

The FindBestZ code for example projects a line vertically downwards from a given X,Y,Z location looking for 'the ground'.
Reply With Quote
  #7  
Old 05-08-2008, 01:07 AM
Bulle
Hill Giant
 
Join Date: Jan 2008
Posts: 102
Default

Thank you Derision. You gave me the pointers to look at if I need more.

So an extended Find BestZ (projecting downwards and upwards) could find where to put the NPC to have it with its feet on the ground for a specific coordinate. That leaves open the problem with placeables.
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:12 AM.


 

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