Doom 3 world

Doom3world.org - the world is yours, soon in 6 degrees of freedom!
It is currently Thu Oct 18, 2007 5:23 pm

All times are UTC




Post new topic Reply to topic  [ 13 posts ] 
Author Message
 Post subject: Tutorial: How to add a Levelshot to your Multiplayer Map
PostPosted: Sat Sep 04, 2004 5:36 pm 
Offline
picked up 100 armour
User avatar

Joined: Mon Aug 18, 2003 4:05 am
Posts: 127
This is based on tutorial video by PlanetDoom, only this is a more explicit text version, with many additional comments and bug fixes.

In this example I am assuming you have a multiplayer map called base/maps/aeneon.map and will be using that name throughout the following:

  1. To add a levelshot to your map you will need to add 2 folders to your development tree for DOOM 3:

    Code:
    base/guis/map/            // Where your map specific .gui file goes
    base/guis/assets/splash/    // Where the levelshot should reside

  2. Use the MP .gui file for D3DM1 provided by id in pak000.pk4/guis/map/d3dm1.gui as a template for your own map's .gui file.
    Unpack d3dm1.gui e.g. onto e.g. c:\ drive.
  3. Name the file like your .map file. In this case, rename d3dm1.gui to aeneon.gui and place it in your base/guis/map/ folder.
  4. Edit the base/guis/map/aeneon.gui text file. There is a code block that defines the background image on loading:

    Code:
    windowDef BackgroundImage
       {
          rect   0,0,640,480
          visible   1
          background   "gui/loading/d3dm1"
          matcolor   1,1,1,1
       }


    To make this work for us, change the background line to

    Code:
    // background   "gui/assets/splash/aeneon"   // Suggested by PlanetDoom Video, does not work!
    // background   "gui/loading/aeneon"         // IMO correct way, but does not work?!

          background   "guis/assets/splash/aeneon"  // This actually works!


    Again using your .map name instead of the default "d3dm1".

    Next find the windowDef TextTitle block in the .gui file.

    Code:
    windowDef TextTitle
       {
          rect   16,447,610,30
          visible   1
          text   "#str_03487"
          font   "fonts/micro"
          textscale   0.4
          forecolor   1,1,1,0
       }


    Change the text line to the name/title of your map, i.e.

    Code:
    text   "AENEON - AEon's Neon Glow"


    BTW "#str_03487" can be found in pak000.pk4/strings/english.lang: "#str_03487" "D3DM1 - TOMIKO REACTOR".
    Note id's naming convention "<All CAPS map name> - <map title>"

    Finally save the aeneon.gui file.
  5. Then create the background image in e.g. Photoshop that is 512x512 pixel large.

    Save that image as 24bit tga file, into your base/guis/assets/splash/ folder under the name aeneon.tga.
  6. To check for your map, run DOOM 3, under Multiplayer, Create Server, you should see your map plus levelshot.

    Image

    When you run the map via "map aeneon" from the in-game console you will see your new levelshot on loading the map.

    Image


Top
 Profile  
 
 Post subject:
PostPosted: Sat Sep 04, 2004 6:16 pm 
Offline
missed 400 shots
User avatar

Joined: Mon Aug 09, 2004 3:29 am
Posts: 416
Location: Phoenix:Arizona / US
Good job.

_________________
Justin Van Horne
Lead Coder - RECA|| TO HE||


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 7:52 am 
Offline
picked up a pistol
User avatar

Joined: Sun Aug 08, 2004 12:03 pm
Posts: 66
Location: NL
Does this also work for Single Player maps?


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 8:11 am 
Offline
picked up 200 ammo

Joined: Wed Aug 11, 2004 10:23 am
Posts: 200
PsychoDad wrote:
Does this also work for Single Player maps?


I'd assume the same principle works with SP maps - only way to know, is to try :)


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 8:55 am 
Offline
did just hit his 750th monster
User avatar

Joined: Sat Aug 14, 2004 4:43 am
Posts: 761
Location: Australia
If you create a 512 by 512 pic and your monitor is at 4:3 aspect ratio, wouldn't that stretch the pic? Or is it stretched so little it's hardly noticeable :P


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 9:06 am 
Offline
Tenebrae!

Joined: Sat Mar 01, 2003 2:02 pm
Posts: 857
Location: Middle-Earth
idiom wrote:
If you create a 512 by 512 pic and your monitor is at 4:3 aspect ratio, wouldn't that stretch the pic? Or is it stretched so little it's hardly noticeable :P

You should create the 512x512 image by scaling down the 640x480 or whatever) image. That way, when it's viewed ingame, it'll stretch back to the correct aspect ratio.

_________________
Image Staff


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 9:51 am 
Offline
did just hit his 750th monster
User avatar

Joined: Sat Aug 14, 2004 4:43 am
Posts: 761
Location: Australia
ahh, what a silly thing to make people do :P


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 10:00 am 
Offline
found a secret
User avatar

Joined: Tue Aug 03, 2004 5:31 pm
Posts: 510
Location: Sweden
PsychoDad wrote:
Does this also work for Single Player maps?



Yes it works for single player maps, only the loading screen though, there's no 'map thumbnails' for single-player maps, well, unless you look at some of the GUI's ingame.

_________________
Doom³ Tutorial Listings


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 11:42 am 
Offline
pixel pusher
User avatar

Joined: Tue Nov 05, 2002 10:20 am
Posts: 3258
Location: London
TheCray_nz wrote:
idiom wrote:
If you create a 512 by 512 pic and your monitor is at 4:3 aspect ratio, wouldn't that stretch the pic? Or is it stretched so little it's hardly noticeable :P

You should create the 512x512 image by scaling down the 640x480 or whatever) image. That way, when it's viewed ingame, it'll stretch back to the correct aspect ratio.


I guess you mean that you take a screenshot of the normal aspect ratio WidthxHeight (640x480, 800x600, 1024x768 etc.) and then resize the Height of the screenshot to 512 and crop the width ?

Alternatively, resize the width to 512 and increate the canvas size to 512 high :)

Or mask of a 512x512 square in your screenshot, if it's big enough,

Or ... - ok that's about it :)


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 06, 2004 11:57 am 
Offline
picked up 100 armour
User avatar

Joined: Mon Aug 18, 2003 4:05 am
Posts: 127
Since the base/guis/assets/splash/ folder also contains all the SP images, I'd also think the above works for SP maps.

Only that you should probably use a SP map's gui file as a template instead of pak000.pk4/guis/map/d3dm1.gui.

On the Aspect Ratio: Initially I had wanted to write something about that, but simply using the 512x512 cut from a normal shot, leads to an interesting stretched look some folks may intentionally want to use. IMO this looks ok most of the time. Tip: If you actually use Text in the 512x512 shot, this will indeed lead to visually ugly stretching of the font.

As was mentioned the "correct" way is to scale a larger image e.g. 1280x1024 to 512x512 (Photoshop, Alt+i, i - turn off Contrain Proportions, no cropping! required, and for good measure Filter menu, Sharpen, Unsharp Mask...). But note that the aspect ratio for European games normally is different than the ratio in the US ones. I have seen many games running 1280x960 (US) vs. the 1280x1024 I always use.

Here a list of ratios I have available in the UK version of D3, in most cases 1.33 would indeed be ok though:

Code:
Resolution         Ratio
  640x480            1.33
  800x600            1.33
1024x768            1.33
1152x864            1.33
1280x960            1.33       (Not in my list of D3 resolutions)
1280x1024           1.25       <--
1600x1200           1.33


Post some feedback on the SP levelshots, and I will add the info to the first post.

Edit: Fixed, added several things.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Aug 17, 2005 10:12 am 
Offline
The first 10 posts have been the best...

Joined: Fri Jan 28, 2005 3:32 pm
Posts: 12
Thanks for this Tutorial! I was looking for how to change the loadscreen, npow i know. :D

_________________
http://www.jzone.de http://www.plsw.net


Top
 Profile  
 
 Post subject:
PostPosted: Wed Aug 17, 2005 10:37 am 
Offline
Divine Eternal
User avatar

Joined: Sun Aug 08, 2004 8:37 pm
Posts: 2077
Location: I am in a world of trigger_hurt
AEon wrote:
But note that the aspect ratio for European games normally is different than the ratio in the US ones. I have seen many games running 1280x960 (US) vs. the 1280x1024 I always use.


Uh, no, this is not geographical. 1280x960 is a 4:3 resolution, just like 640x480 or 1600x1200. 1280x1024 is a very special (5:4) resolution you should only EVER use if you have a LCD monitor with this native resolution!

_________________
Image Staff
http://www.modwiki.net - wiki resource for all Doom 3 engine-based games.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Aug 17, 2005 6:00 pm 
Offline
found a secret

Joined: Sun Sep 12, 2004 5:45 am
Posts: 614
Location: Canada
Creating a splash screen is a two step process. You put your image in this folder:

base/guis/assets/splash/yourimage.tga

Then you require some gui code to go in this folder:

base/guis/map/levelname.gui

With respect to the code, it must be named the same as your map. Here is the code I usded for my level load shot, you'll just have to change the appropriate lines to suit your assets.

Quote:
windowDef Desktop
{
menugui 1
nocursor 1
rect 0,0,640,480
windowDef BackgroundImage
{
rect 0,0,640,480
visible 1
background "guis/assets/splash/R2MC1"
matcolor 1,1,1,1
}
windowDef Scanlines2
{
rect 0,0,640,480
matcolor 0.02,0.02,0.02,1
background "gui/test/gui_scanlines4"
matscaley 3.75
noevents 1
visible 1
}
windowDef bgBlackTop
{
rect 0,0,640,200
visible 1
windowDef bgBlackTop1
{
rect 0,-21,170,-64
background "guis/assets/mainmenu/bg1"
matcolor 1 ,1 ,1 ,0.6
visible 1
noevents 1
}
windowDef bgBlackTop2
{
rect 170,-21,32,-64
background "guis/assets/mainmenu/bg2"
matcolor 1 ,1 ,1 ,0.6
visible 1
noevents 1
}
windowDef bgBlackTop3
{
rect 202,-21,458,-64
background "guis/assets/mainmenu/bg3"
matcolor 1 ,1 ,1 ,0.6
visible 1
noevents 1
}
}
windowDef bgBlackBottom
{
rect 0,322,640,187
noevents 1
visible 1
windowDef bgBlackBottomFill
{
rect 0,64,640,75
backcolor 0 ,0 ,0 ,0.6
visible 1
noevents 1
}
windowDef bgBlackBottom1
{
rect 0,0,347,64
background "guis/assets/mainmenu/bg1"
matcolor 1 ,1 ,1 ,0.6
visible 1
noevents 1
}
windowDef bgBlackBottom2
{
rect 347,0,32,64
background "guis/assets/mainmenu/bg2"
matcolor 1 ,1 ,1 ,0.6
visible 1
noevents 1
}
windowDef bgBlackBottom3
{
rect 379,0,261,64
background "guis/assets/mainmenu/bg3"
matcolor 1 ,1 ,1 ,0.6
visible 1
noevents 1
}
windowDef bgBlackBottomFade
{
rect 0,30,642,128
background "guis/assets/mainmenu/bg4"
matcolor 0,0,0,1
visible 1
noevents 1
}
}
windowDef TitleBar
{
rect -300,371,512,19
visible 1
background "gui/loading/titlebar"
matcolor 1,1,1,0.1
}
windowDef TextDescription
{
rect 17,394,521,81
visible 1
noevents 1
forecolor 1,1,1,0
text "A custom level by Tom Barak. Warning, contains disturbing themes and nudity and is intended for mature audiences. Player discretion is advised. Refer questions and comments to tbarak@mts.net and refer to the walk through contained in the set up information for level specific details. "
textscale 0.25
font "fonts/an"
}
windowDef TextTitle
{
rect 16,336,610,30
visible 1
text "Return to Mars City"
font "fonts/micro"
textscale 0.4
forecolor 1,1,1,0
}
windowDef TextSubTitle
{
rect 16,367,610,30
visible 1
text "Top Secret Priority Mission"
textscale 0.4
forecolor 1,1,1,0
}
windowDef LoadingFillClip
{
rect 2,18,( "gui::map_loading" * 175 ),16
visible 1
windowDef LoadingFill
{
rect 0,0,256,16
visible 1
background "guis/assets/splash/load"
matcolor 1,1,1,0.8
}
}
windowDef LoadingLine
{
rect 2,18,256,16
visible 1
background "guis/assets/splash/loadborder"
matcolor 1,1,1,0
}
windowDef TextLoading
{
rect 16,-6,123,30
visible 1
text ""
font "fonts/micro"
textscale 0.4
forecolor 0.2,0.6,0.7,1
}
windowDef FlareBox
{
rect 0,0,48,21
background "gui/mainmenu/textflare"
matcolor 0.4 ,0.6, 0.6, 0
visible 1
}
windowDef BlackFade
{
rect 0,0,640,480
backcolor 0, 0, 0, 1
visible 1
}
windowDef Anim
{
rect 0,0,0,0
visible 1

onTime 0 {
transition "BlackFade::backcolor" "0 0 0 1" "0 0 0 0" "400" ;
set "TextLoading::text" "L" ;
transition "FlareBox::matcolor" "0.4 0.6 0.6 0" "0.4 0.6 0.6 0.5" "200" ;

transition "bgBlackTop1::rect" "0 -21 150 -64" "0 -21 170 -64" "400" "0.2" "0.8" ;
transition "bgBlackTop2::rect" "150 -21 32 -64" "170 -21 32 -64" "400" "0.2" "0.8" ;
transition "bgBlackTop3::rect" "182 -21 498 -64" "202 -21 458 -64" "400" "0.2" "0.8" ;
transition "bgBlackBottom1::rect" "0 0 377 64" "0 0 347 64" "400" "0.2" "0.8" ;
transition "bgBlackBottom2::rect" "377 0 32 64" "347 0 32 64" "400" "0.2" "0.8" ;
transition "bgBlackBottom3::rect" "409 0 261 64" "379 0 261 64" "400" "0.2" "0.8" ;
}

onTime 50 {
set "TextLoading::text" "#str_03469" ;
set "FlareBox::rect" "17 0 54 21" ;
}

onTime 100 {
set "TextLoading::text" "#str_03470" ;
set "FlareBox::rect" "37 0 54 21" ;
}

onTime 150 {
set "TextLoading::text" "#str_03343" ;
set "FlareBox::rect" "57 0 54 21" ;

}

onTime 200 {
set "TextLoading::text" "#str_03471" ;
set "FlareBox::rect" "67 0 54 21" ;

transition "TitleBar::rect" "-300 371 512 19" "0 371 512 19" "400" "0.2" "0.8" ;
transition "TextTitle::forecolor" "0 0 0 0" "1 1 1 0.9" "400" "0.2" ".8" ;
transition "TextSubTitle::forecolor" "0 0 0 0" "1 1 1 0.4" "400" "0.2" ".8" ;
}

onTime 250 {
set "TextLoading::text" "#str_03472" ;
set "FlareBox::rect" "81 0 54 21" ;
}

onTime 300 {
set "TextLoading::text" "#str_00408" ;
set "FlareBox::rect" "100 0 54 21" ;
transition "FlareBox::matcolor" "0.4 0.6 0.6 0.5" "0 0 0 0" "200" ;
transition "LoadingLine::matcolor" "1 1 1 0" "1 1 1 0.8" "600" ;
transition "TextLoading::forecolor" "1 1 1 1" "0.2 0.6 0.7 1" "200" ;
transition "TextDescription::forecolor" "0 0 0 0" "1 1 1 1" "400" "0.2" "0.8" ;
transition "TextDescription::rect" "10 394 517 80" "17 394 517 81" "400" "0.2" "0.8" ;
}

}
}



Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 13 posts ] 

All times are UTC


Who is online

Users browsing this forum: Yahoo [Bot] and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group