[Questions] (Custom Maps, etc..)

09/04/2008 15:50 Rechocto#1
Has anyone looked into making custom maps? If so, what All do I need to do to make one? (obviously draw it out, but How should I go about that? and what do i need to do to add it in? (I use a very updated version of shadowco source but I'm sure this is just edits client side to add it besides teleporting there..))

Also, ShopFlag in market on my server always says find an open area.. this is not high on my priorities yet since I haven't released to the public, but any clues on that would be appreciated!

+Thanks for any help, and if you do help me, I may give you the info to connect to my server, give you some starting gear (and if you seem like you'd be good for the job, make you Admin?)

-Rech
09/04/2008 20:41 glupkotrup#2
You'll need mini Map icon, the texture on ground (grass, water etc.) and then add in source the new map ID (if the last is 1000, this one would be 1001 [obviously]). When u finish with the map, create new NPC and make the dialog. Then make the options like: Do you want to be teleported to my new map? -Yes/No and then add the Map Id and the coords where you should be teleported. Then add the mini map icon in your client and make patch with it so others can see it. You are done

Note: I dunno how to make the texture and MiniMapIcon!
09/04/2008 21:13 unknownone#3
For map creation, you need an image (preferably lossless), which has dimensions (in pixels) of x%256||y%256==0. You then need to split that image up into individual 256x256px blocks, and save them as individual direct draw show files, naming them accordingly, for example, the top row should be named 001.dds, 002.dds, 003.dds etc. Look at existing maps to see how they're named.
After saving all your images, you need to create a .ani file that links to each individual tile file and gives them an appropriate ID you'll be using in a moment.
Next, you need to create a Puzzle file (map/pul/), which is the file which tells how the tile files are laid out accross the map. If you named them accordingly, it'll be easy to make because you can just count upwards using the IDs from the ani file.
Now you need a .dmap file. This file contains information about which coordinates you can step on, aswell as their hieght and other information about the surface of the map. This is the more difficult one to create because it uses the in-game coordinate system, which is completely different from the coordinates of your image. It'd be painful to create this manually, but making a tool to assist you wouldn't be extremely difficult. Your DMap file needs to contain a link to the matching Puzzle file.
Fianlly, you need to edit ini/gamemap.dat to contain your DMap file, along with a new unique ID for the map.
Optionally, if you want any 2.5d features of the map (things that appear above your character like trees, walls etc), you need to create individual image files for them, save them as dds files, then put all the information about them into .scene files. The DMap file then needs to reference the scene files that are used etc.
09/04/2008 23:10 MushyPeas#4
Quote:
Originally Posted by unknownone View Post
For map creation, you need an image (preferably lossless), which has dimensions (in pixels) of x%256||y%256==0. You then need to split that image up into individual 256x256px blocks, and save them as individual direct draw show files, naming them accordingly, for example, the top row should be named 001.dds, 002.dds, 003.dds etc. Look at existing maps to see how they're named.
After saving all your images, you need to create a .ani file that links to each individual tile file and gives them an appropriate ID you'll be using in a moment.
Next, you need to create a Puzzle file (map/pul/), which is the file which tells how the tile files are laid out accross the map. If you named them accordingly, it'll be easy to make because you can just count upwards using the IDs from the ani file.
Now you need a .dmap file. This file contains information about which coordinates you can step on, aswell as their hieght and other information about the surface of the map. This is the more difficult one to create because it uses the in-game coordinate system, which is completely different from the coordinates of your image. It'd be painful to create this manually, but making a tool to assist you wouldn't be extremely difficult. Your DMap file needs to contain a link to the matching Puzzle file.
Fianlly, you need to edit ini/gamemap.dat to contain your DMap file, along with a new unique ID for the map.
Optionally, if you want any 2.5d features of the map (things that appear above your character like trees, walls etc), you need to create individual image files for them, save them as dds files, then put all the information about them into .scene files. The DMap file then needs to reference the scene files that are used etc.

Just wondering: has it ever been tried before or is this purely theoretical?
It sounds like a crapload of work anyway but it would be pretty sweet to have an actual new map.
09/05/2008 10:16 Rechocto#5
Quote:
Originally Posted by unknownone View Post
For map creation, you need an image (preferably lossless), which has dimensions (in pixels) of x%256||y%256==0. You then need to split that image up into individual 256x256px blocks, and save them as individual direct draw show files, naming them accordingly, for example, the top row should be named 001.dds, 002.dds, 003.dds etc. Look at existing maps to see how they're named.
After saving all your images, you need to create a .ani file that links to each individual tile file and gives them an appropriate ID you'll be using in a moment.
Next, you need to create a Puzzle file (map/pul/), which is the file which tells how the tile files are laid out accross the map. If you named them accordingly, it'll be easy to make because you can just count upwards using the IDs from the ani file.
Now you need a .dmap file. This file contains information about which coordinates you can step on, aswell as their hieght and other information about the surface of the map. This is the more difficult one to create because it uses the in-game coordinate system, which is completely different from the coordinates of your image. It'd be painful to create this manually, but making a tool to assist you wouldn't be extremely difficult. Your DMap file needs to contain a link to the matching Puzzle file.
Fianlly, you need to edit ini/gamemap.dat to contain your DMap file, along with a new unique ID for the map.
Optionally, if you want any 2.5d features of the map (things that appear above your character like trees, walls etc), you need to create individual image files for them, save them as dds files, then put all the information about them into .scene files. The DMap file then needs to reference the scene files that are used etc.

THANKS!+k, do you know of any tools already existing to help with this?

-Rech
09/05/2008 20:20 unknownone#6
Quote:
Originally Posted by MushyPeas View Post
Just wondering: has it ever been tried before or is this purely theoretical?
It sounds like a crapload of work anyway but it would be pretty sweet to have an actual new map.
I'm not aware of anyone who's made maps from scratch in that way, but people have made related tools, for example the ones that display a 2d, bjx-esque drawings of the dmaps, and atleast 1 person has made a tool that draws a whole map from textures. It's not theory, because we're certain about what works and what doesnt, so it's entirely possible.

Quote:
Originally Posted by Rechocto View Post
THANKS!+k, do you know of any tools already existing to help with this?

-Rech
Not really. There are tools that will assist you with it: nvidias photoshop plugin for DDS files, or some other DDS editors and viewers will certainly help. TQ's C3_CORE_DLL may help you for displaying content, because the code is already there in place. Most of the task really requires coding yourself from a spec though. I can give you binary structures for DMap/Puzzle/Scene files, and can point you in the direction of the DDS specification if you can't find it.
09/07/2008 08:27 Rechocto#7
The DDS files wont be a problem, I've made a few custom items as it is... the scene files however, I dunno how those work at all.. if I did I could probably make items stop falling where you can't walk and make mobs stop walking on walls\water :P
09/07/2008 14:15 MushyPeas#8
Quote:
Originally Posted by Rechocto View Post
The DDS files wont be a problem, I've made a few custom items as it is... the scene files however, I dunno how those work at all.. if I did I could probably make items stop falling where you can't walk and make mobs stop walking on wallswater :P
I think that's in DMaps though, not sure.
09/07/2008 15:33 tao4229#9
Quote:
Originally Posted by MushyPeas View Post
I think that's in DMaps though, not sure.
I thought they were in there too, you just have to figure out a way to load them into your server, and make sure that things to step on invalid DMap coordinates... But I couldn't figure it out :confused:
09/16/2008 09:03 Rechocto#10
yah DMaps handles it, COFuture\Reloaded source can show you how.
09/16/2008 13:37 Exia13#11
@ Unknownone: good guide, it looks good.

The first private server i ever played (Qonquer) had a custom map. Not sure how they did it, but the whole map was able to give you experience just by sitting down. I guess this is a lot more complicated than just making a map itself. All i'm saying is, it's been tried before. If any1 can contact the admin for Qonquer (who ever he is), maybe he can help you out.
09/16/2008 15:10 glupkotrup#12
The admin is Steve which is the coder and I asked him (he is my friend), he won't give any codes or any help to anyone except the Qonquer crew... :mad:
09/16/2008 15:23 unknownone#13
Quote:
Originally Posted by Exia13 View Post
@ Unknownone: good guide, it looks good.

The first private server i ever played (Qonquer) had a custom map. Not sure how they did it, but the whole map was able to give you experience just by sitting down. I guess this is a lot more complicated than just making a map itself. All i'm saying is, it's been tried before. If any1 can contact the admin for Qonquer (who ever he is), maybe he can help you out.
Are you sure he made that map himself, or was it one of the few that already exist in the client that TQ don't use for anything on the official servers? For example, faction-white.dmap or sanctuary.dmap. If you wanna use these maps in your private server, just grab the ID from gamemap.dat.
Making new maps in an entirely different problem though, as I already posted.

I've already spoken to Rechocto about a possible map creating app. I spent an evening creating a small app that reads dmaps and prints out an isometric grid, along with the details on whether coordinates can be accessed & heights of coordinates etc. There's a possibility I'll make a full map editing application from it, all you will need to provide before hand is the graphic for the map.
09/16/2008 15:41 glupkotrup#14
Nice... I hope you'll share your app :D
09/19/2008 09:40 © Haydz#15
Quote:
Originally Posted by unknownone View Post
I'm not aware of anyone who's made maps from scratch in that way, but people have made related tools, for example the ones that display a 2d, bjx-esque drawings of the dmaps, and atleast 1 person has made a tool that draws a whole map from textures. It's not theory, because we're certain about what works and what doesnt, so it's entirely possible.
I believe Ultimation did it back on Cows v3, pritty sure they had their own FB torny map... but then again i havent been through every single CO map checking if its a legit one