Login x
User Name:
Password:
Social Links Facebook Twitter YouTube Steam RSS News Feeds

Members Online

»
0 Active | 7 Guests
Online:

LATEST FORUM THREADS

»
warfare
CoD4 Map + Mod Releases
Voting menu on maps
CoD+UO General
Hauling 911
CoDBO3 General

Forums

»

Welcome to the MODSonline.com forums. Looking for Frequently Asked Questions? Check out our FAQs section or search it out using the SEARCH link below. If you are new here, you may want to check out our rules and this great user's guide to the forums and the website.
For more mapping and modding information, see our Wiki: MODSonWiki.com

Jump To:
Forum: All Forums : Call of Duty
Category: CoDUO Mapping
CoD United Offensive mapping and level design.
Moderators: foyleman, Foxhound, Mystic, StrYdeR, batistablr, Welshy, DrBiggzz, supersword
Latest Posts
Subscribed Posts
Search
Restricted Access Topic is Locked
Page
Next Page
subscribe
Author Topic: [TUT] Making a 4(or More) Line Introscreen
Ethnik_Man
General Member
Since: Jul 27, 2005
Posts: 417
Last: Feb 1, 2008
[view latest posts]
Level 5
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 03:11 am
(If this has been posted before im terribly sorry)

OK -

in yourmapname.gsc main section put in this:

main()
{
maps\_introscreen_gmii::main

precacheshader("black");

thread intro_screen();
level waittill ("finished intro screen");
}

intro_screen()
{
precacheString(&"YOURMAPNAME_LOCATION");
precacheString(&"YOURMAPNAME_COUNTRY");
precacheString(&"YOURMAPNAME_DATE");
precacheString(&"YOURMAPNAME_TIME");
maps\_introscreen_gmii::introscreen(&"YOURMAPNAME_LOCATION", &"YOURMAPNAME_COUNTRY", &"YOURMAPNAME_DATE", &"YOURMAPNAME_TIME");
}


Replace YOURMAPNAME with the name of your map.

If youve noticed - the red colored line has a different introscreen script.

This is a custom script, actually a revised version of the introscreen script in the pak4.pk3

Here it is:
Quote:

main()
{
//EXAMPLE
//introscreen("Place, Country", "Date", "24hourclocktime");
//EXAMPLE

// Use this an EXAMPLE!
// if(level.script == "training")
// {
// precacheString(&"INTROSCREEN_TRAINING_PLACE");
// precacheString(&"INTROSCREEN_TRAINING_DATE");
// precacheString(&"INTROSCREEN_TRAINING_TIME");
// introscreen(&"INTROSCREEN_TRAINING_PLACE", &"INTROSCREEN_TRAINING_DATE", &"INTROSCREEN_TRAINING_TIME");
// return;
// }

if(level.script == "trenches")
{
precacheString(&"GMI_INTROSCREEN_TRENCHES_PLACE");
precacheString(&"GMI_INTROSCREEN_TRENCHES_DATE");
precacheString(&"GMI_INTROSCREEN_TRENCHES_TIME");
introscreen(&"GMI_INTROSCREEN_TRENCHES_PLACE", &"GMI_INTROSCREEN_TRENCHES_DATE", &"GMI_INTROSCREEN_TRENCHES_TIME");
return;
}

if(level.script == "bastogne1")
{
precacheString(&"GMI_INTROSCREEN_BASTOGNE1_PLACE");
precacheString(&"GMI_INTROSCREEN_BASTOGNE1_DATE");
precacheString(&"GMI_INTROSCREEN_BASTOGNE1_TIME");
introscreen(&"GMI_INTROSCREEN_BASTOGNE1_PLACE", &"GMI_INTROSCREEN_BASTOGNE1_DATE", &"GMI_INTROSCREEN_BASTOGNE1_TIME");
return;
}

if(level.script == "bastogne2")
{
precacheString(&"GMI_INTROSCREEN_BASTOGNE2_PLACE");
precacheString(&"GMI_INTROSCREEN_BASTOGNE2_DATE");
precacheString(&"GMI_INTROSCREEN_BASTOGNE2_TIME");
introscreen(&"GMI_INTROSCREEN_BASTOGNE2_PLACE", &"GMI_INTROSCREEN_BASTOGNE2_DATE", &"GMI_INTROSCREEN_BASTOGNE2_TIME");
return;
}

if(level.script == "foy")
{
precacheString(&"GMI_INTROSCREEN_FOY_PLACE");
precacheString(&"GMI_INTROSCREEN_FOY_DATE");
precacheString(&"GMI_INTROSCREEN_FOY_TIME");
introscreen(&"GMI_INTROSCREEN_FOY_PLACE", &"GMI_INTROSCREEN_FOY_DATE", &"GMI_INTROSCREEN_FOY_TIME");
return;
}

if(level.script == "bomber")
{
precachestring(&"GMI_INTROSCREEN_BOMBER_PLACE");
precachestring(&"GMI_INTROSCREEN_BOMBER_DATE");
precachestring(&"GMI_INTROSCREEN_BOMBER_TIME");
introscreen(&"GMI_INTROSCREEN_BOMBER_PLACE", &"GMI_INTROSCREEN_BOMBER_DATE", &"GMI_INTROSCREEN_BOMBER_TIME");
return;
}

if(level.script == "sicily1")
{
precachestring(&"GMI_INTROSCREEN_SICILY1_PLACE");
precachestring(&"GMI_INTROSCREEN_SICILY1_DATE");
precachestring(&"GMI_INTROSCREEN_SICILY1_TIME");
introscreen(&"GMI_INTROSCREEN_SICILY1_PLACE", &"GMI_INTROSCREEN_SICILY1_DATE", &"GMI_INTROSCREEN_SICILY1_TIME");
return;
}

if(level.script == "kharkov1")
{
precacheString(&"GMI_INTROSCREEN_KHARKOV1_PLACE");
precacheString(&"GMI_INTROSCREEN_KHARKOV1_DATE");
precacheString(&"GMI_INTROSCREEN_KHARKOV1_TIME");
introscreen(&"GMI_INTROSCREEN_KHARKOV1_PLACE", &"GMI_INTROSCREEN_KHARKOV1_DATE", &"GMI_INTROSCREEN_KHARKOV1_TIME");
return;
}

if(level.script == "kharkov2")
{
precacheString(&"GMI_INTROSCREEN_KHARKOV2_PLACE");
precacheString(&"GMI_INTROSCREEN_KHARKOV2_DATE");
precacheString(&"GMI_INTROSCREEN_KHARKOV2_TIME");
introscreen(&"GMI_INTROSCREEN_KHARKOV2_PLACE", &"GMI_INTROSCREEN_KHARKOV2_DATE", &"GMI_INTROSCREEN_KHARKOV2_TIME");
return;
}

if(level.script == "noville")
{
precacheString(&"GMI_INTROSCREEN_NOVILLE_PLACE");
precacheString(&"GMI_INTROSCREEN_NOVILLE_DATE");
precacheString(&"GMI_INTROSCREEN_NOVILLE_TIME");
introscreen(&"GMI_INTROSCREEN_NOVILLE_PLACE", &"GMI_INTROSCREEN_NOVILLE_DATE", &"GMI_INTROSCREEN_NOVILLE_TIME");
return;
}

if(level.script == "trainbridge")
{
precacheString(&"GMI_INTROSCREEN_TRAINBRIDGE_PLACE");
precacheString(&"GMI_INTROSCREEN_TRAINBRIDGE_DATE");
precacheString(&"GMI_INTROSCREEN_TRAINBRIDGE_TIME");
introscreen(&"GMI_INTROSCREEN_TRAINBRIDGE_PLACE", &"GMI_INTROSCREEN_TRAINBRIDGE_DATE", &"GMI_INTROSCREEN_TRAINBRIDGE_TIME");
return;
}



// ===============
// PGM - PI level support
if(level.script == "ponyri")
{
precacheString(&"PI_PONYRI_PLACE");
precacheString(&"PI_PONYRI_DATE");
precacheString(&"PI_PONYRI_TIME");
thread maps\_introscreen_gmi::introscreen(&"PI_PONYRI_PLACE", &"PI_PONYRI_DATE", &"PI_PONYRI_TIME");
return;
}
if(level.script == "kursk")
{
precacheString(&"PI_KURSK_PLACE");
precacheString(&"PI_KURSK_DATE");
precacheString(&"PI_KURSK_TIME");
thread maps\_introscreen_gmi::introscreen(&"PI_KURSK_PLACE", &"PI_KURSK_DATE", &"PI_KURSK_TIME");
return;
}
// PGM
// ===============

// Shouldn't do a notify without a wait statement before
// it, or bad things can happen when loading a save game.
wait 0.05;

level notify ("finished intro screen"); // Do final notify when player controls have been restored
}

introscreen(string1, string2, string3, string4)
{
level.introblack = newHudElem();
level.introblack.x = 0;
level.introblack.y = 0;
level.introblack setShader("black", 640, 480);

if(!(level.script == "redsquare"))
level.player freezeControls(true);

wait 0.1;

level.introstring1 = newHudElem();
level.introstring1.x = 320;
level.introstring1.y = 260;
level.introstring1.alignX = "center";
level.introstring1.alignY = "middle";
level.introstring1.sort = 1; // force to draw after the background
level.introstring1.fontScale = 1.75;
level.introstring1 setText(string1);
level.introstring1.alpha = 0;
level.introstring1 fadeOverTime(1.2);
level.introstring1.alpha = 1;

level.introstring2 = newHudElem();
level.introstring2.x = 320;
level.introstring2.y = 290;
level.introstring2.alignX = "center";
level.introstring2.alignY = "middle";
level.introstring2.sort = 1; // force to draw after the background
level.introstring2.fontScale = 1.75;
level.introstring2 setText(string2);
level.introstring2.alpha = 0;
level.introstring2 fadeOverTime(1.2);
level.introstring2.alpha = 1;

level.introstring3 = newHudElem();
level.introstring3.x = 320;
level.introstring3.y = 320;
level.introstring3.alignX = "center";
level.introstring3.alignY = "middle";
level.introstring3.sort = 1; // force to draw after the background
level.introstring3.fontScale = 1.75;
level.introstring3 setText(string3);
level.introstring3.alpha = 0;
level.introstring3 fadeOverTime(1.2);
level.introstring3.alpha = 1;

level.introstring4 = newHudElem();
level.introstring4.x = 320;
level.introstring4.y = 350;
level.introstring4.alignX = "center";
level.introstring4.alignY = "middle";
level.introstring4.sort = 1; // force to draw after the background
level.introstring4.fontScale = 1.75;
level.introstring4 setText(string4);
level.introstring4.alpha = 0;
level.introstring4 fadeOverTime(1.2);
level.introstring4.alpha = 1;

wait 1.2;

if(level.script == "stalingrad")
wait (2.0);

level notify ("finished final intro screen fadein");

wait 1;
// Fade out black
level.introblack fadeOverTime(1.5);
level.introblack.alpha = 0;

level notify ("starting final intro screen fadeout");

// Restore player controls part way through the fade in
wait 0.5;

level.player freezeControls(false);
level notify ("finished intro screen"); // Do final notify when player controls have been restored

// Fade out text
level.introstring1 fadeOverTime(1.5);
level.introstring1.alpha = 0;
level.introstring2 fadeOverTime(1.5);
level.introstring2.alpha = 0;
level.introstring3 fadeOverTime(1.5);
level.introstring3.alpha = 0;
level.introstring4 fadeOverTime(1.5);
level.introstring4.alpha = 0;

wait 1.5;

level.introblack destroy();
level.introstring1 destroy();
level.introstring2 destroy();
level.introstring3 destroy();
level.introstring4 destroy();
}


Put that into a new notepad file and call it _introscreen_gmii.gsc.

Put that file into the same folder as yourmapname.gsc

ALSO -

make a new notepad file and put this in it:

REFERENCE LOCATION
LANG_ENGLISH "Outside the Reichstag"

REFERENCE PLACE
LANG_ENGLISH "Berlin, Gemany"

REFERENCE DATE
LANG_ENGLISH "January 18, 1942"

REFERENCE TIME
LANG_ENGLISH "400hrs"

ENDMARKER


call that file YOURMAPNAME.str (this is a precachedstrings file - for more in fo on these kinds of files check this out)

Make a new folder. Call it localizedstrings
in that folder make another folder called english, and in that folder (the english folder)

NOW - make your map a .pk3 file (to test - it is much easier to test in pk3 form)

And that's it!

Now you will have an introscreen with four lines!

To make 5 (or more)-

In this section of _introscreen_gmii.gsc

Quote:
introscreen(string1, string2, string3, string4)
{
level.introblack = newHudElem();
level.introblack.x = 0;
level.introblack.y = 0;
level.introblack setShader("black", 640, 480);

if(!(level.script == "redsquare"))
level.player freezeControls(true);

wait 0.1;

level.introstring1 = newHudElem();
level.introstring1.x = 320;
level.introstring1.y = 260;
level.introstring1.alignX = "center";
level.introstring1.alignY = "middle";
level.introstring1.sort = 1; // force to draw after the background
level.introstring1.fontScale = 1.75;
level.introstring1 setText(string1);
level.introstring1.alpha = 0;
level.introstring1 fadeOverTime(1.2);
level.introstring1.alpha = 1;

level.introstring2 = newHudElem();
level.introstring2.x = 320;
level.introstring2.y = 290;
level.introstring2.alignX = "center";
level.introstring2.alignY = "middle";
level.introstring2.sort = 1; // force to draw after the background
level.introstring2.fontScale = 1.75;
level.introstring2 setText(string2);
level.introstring2.alpha = 0;
level.introstring2 fadeOverTime(1.2);
level.introstring2.alpha = 1;

level.introstring3 = newHudElem();
level.introstring3.x = 320;
level.introstring3.y = 320;
level.introstring3.alignX = "center";
level.introstring3.alignY = "middle";
level.introstring3.sort = 1; // force to draw after the background
level.introstring3.fontScale = 1.75;
level.introstring3 setText(string3);
level.introstring3.alpha = 0;
level.introstring3 fadeOverTime(1.2);
level.introstring3.alpha = 1;

level.introstring4 = newHudElem();
level.introstring4.x = 320;
level.introstring4.y = 350;
level.introstring4.alignX = "center";
level.introstring4.alignY = "middle";
level.introstring4.sort = 1; // force to draw after the background
level.introstring4.fontScale = 1.75;
level.introstring4 setText(string4);
level.introstring4.alpha = 0;
level.introstring4 fadeOverTime(1.2);
level.introstring4.alpha = 1;
//----->COPY & PASTE THIS RIGHT UNDER IT (LIKE IVE DONE) AND CHANGE THE NUMBER FROM 4 TO 5 (and so on)
//CHANGE level.introstring4.x = 320; THIS LINE. ADD 30 TO THE NUMBER 320 (or subtract). - THIS IS THE POSITION OF THE LINE ON THE INTROSCREEN

wait 1.2;

if(level.script == "stalingrad")
wait (2.0);

level notify ("finished final intro screen fadein");

wait 1;
// Fade out black
level.introblack fadeOverTime(1.5);
level.introblack.alpha = 0;

level notify ("starting final intro screen fadeout");

// Restore player controls part way through the fade in
wait 0.5;

level.player freezeControls(false);
level notify ("finished intro screen"); // Do final notify when player controls have been restored

// Fade out text
level.introstring1 fadeOverTime(1.5);
level.introstring1.alpha = 0;
level.introstring2 fadeOverTime(1.5);
level.introstring2.alpha = 0;
level.introstring3 fadeOverTime(1.5);
level.introstring3.alpha = 0;
level.introstring4 fadeOverTime(1.5);
level.introstring4.alpha = 0;// ------>AGAIN COPY & PASTE THIS AND CHANGE THE NUMBERS

wait 1.5;

level.introblack destroy();
level.introstring1 destroy();
level.introstring2 destroy();
level.introstring3 destroy();
level.introstring4 destroy(); //------->AND ALSO THIS
}


Now That's It!

Hope that Helped[thumbs_up]

If it Needs any fixing or clearing up, feel free to PM me!

Later

[rocking]

edited on Jan. 1, 2006 10:12 pm by MasterChief6

edited on Jan. 1, 2006 10:14 pm by MasterChief6
Share |
Ethnik_Man
General Member
Since: Jul 27, 2005
Posts: 417
Last: Feb 1, 2008
[view latest posts]
Level 5
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 03:22 am


There's an Example...


[rocking]

EDIT: ROFL i said Omaha Beach 2 times.

edited on Jan. 1, 2006 10:22 pm by MasterChief6
Share |
Ethnik_Man
General Member
Since: Jul 27, 2005
Posts: 417
Last: Feb 1, 2008
[view latest posts]
Level 5
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 03:25 am
You can also change the fade in times of the lines: just look over the introscreen section i posted last (the last quote in the TuT).

Increase them - they will fade in at different times!


[rocking]

edited on Jan. 1, 2006 10:26 pm by MasterChief6
Share |
foyleman
Preferred PLUS Member
Since: Nov 7, 2001
Posts: 95762
Last: Apr 13, 2021
[view latest posts]
Level 10
Admin
Forum Moderator
Im a fan of MODSonair
Im a HOST of MODSonair
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 01:49 pm
Thanks you much for this. I added it to the tutorials section of the site.
Go ahead... You Play I Mod : Support Modsonline by becoming a PREFERRED MEMBER today!
Have you heard the MODSonair Podcast?:
MODSonair is a weekly podcast bringing you the news from a modders perspective.
Tune in every Sunday at 12pm EST to listen LIVE.
Quake 4 Mods for Dummies - Half-Life 2 Mods for Dummies
Share |
(PFB)WOLF
General Member
Since: May 21, 2004
Posts: 178
Last: Jun 14, 2007
[view latest posts]
Level 4
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 02:47 pm
i am having no luck with this, i add the lines to my gsc but get syntax error.

wen i make a seprate gsc for the intro thred and refrence it, it sort of works, but instead of getting wot i want to show up i get this...



help [cry]
Share |
donkey
General Member
Since: Aug 22, 2004
Posts: 461
Last: Oct 13, 2006
[view latest posts]
Level 5
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 04:50 pm
post what you had on your GSC the new one and did you do the localized string thing?
Share |
(PFB)WOLF
General Member
Since: May 21, 2004
Posts: 178
Last: Jun 14, 2007
[view latest posts]
Level 4
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 09:01 pm
Ok here is the GSC.
If i add the lines here i get a bad syntax error, so i mad it into a new gsc...

----------------------------------------------
#using_animtree("generic_human");
main()
{

maps\_load::main();//loads all global scripts
maps\_truck::main();//this precaches models and loads effects
maps\intro::main();

//GIVE PLAYER WEAPONS
level.player takeallweapons();
level.player giveWeapon("panzerfaust");//so you can shoot the truck
level.player giveWeapon("thompson");
level.player giveWeapon("colt");
level.player giveWeapon("fraggrenade");
level.player switchToWeapon("thompson");

//TRUCK
trucktrig = getent ( "truck_trigger","targetname");//don't need this if you have no trigger
trucktrig waittill ("trigger");//don't need this if you have no trigger
truck = getent ( "truck1","targetname");
path = getVehicleNode (truck.target,"targetname");
truck attachpath(path);
truck maps\_truck::init();
truck maps\_truck::attach_guys();
truck startPath();
truck waittill ("reached_end_node");
truck notify ("unload");


}
//END OF MAIN BODY
----------------------------------------------
Here is the Intro.gsc with the script in it...


main()
{

precacheshader("black");

thread intro_screen();
level waittill ("finished intro screen");
}

intro_screen()
{
precacheString(&"t_t_LOCATION");
precacheString(&"t_t_COUNTRY");
precacheString(&"t_t_DATE");
precacheString(&"t_t_TIME");
maps\_introscreen_gmii::introscreen(&"t_t_LOCATION", &"t_t_COUNTRY", &"t_t_DATE", &"t_t_TIME");
}
--------------------------
And yes i have done the localizedstrings/english/.str
Share |
mrvip
General Member
Since: Jan 21, 2005
Posts: 65
Last: May 20, 2006
[view latest posts]
Level 3
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 09:04 pm
you have to do a localized string buddy
Share |
donkey
General Member
Since: Aug 22, 2004
Posts: 461
Last: Oct 13, 2006
[view latest posts]
Level 5
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 09:04 pm
main()
{
maps\_introscreen_gmii::main

precacheshader("black");

thread intro_screen();
level waittill ("finished intro screen");
}

intro_screen()
{
precacheString(&"YOURMAPNAME_LOCATION");
precacheString(&"YOURMAPNAME_COUNTRY");
precacheString(&"YOURMAPNAME_DATE");
precacheString(&"YOURMAPNAME_TIME");
maps\_introscreen_gmii::introscreen(&"YOURMAPNAME_LOCATION", &"YOURMAPNAME_COUNTRY", &"YOURMAPNAME_DATE", &"YOURMAPNAME_TIME");
}

Compare to

main()
{

precacheshader("black");

thread intro_screen();
level waittill ("finished intro screen");
}

intro_screen()
{
precacheString(&"t_t_LOCATION");
precacheString(&"t_t_COUNTRY");
precacheString(&"t_t_DATE");
precacheString(&"t_t_TIME");
maps\_introscreen_gmii::introscreen(&"t_t_LOCATION", &"t_t_COUNTRY", &"t_t_DATE", &"t_t_TIME");
}


First off im no pro to scripting but have you tried changing the t_t_LOACATION
t_t_Country
t_t_DATE
t_t_TIME

to what ever they are for your map?
Share |
(PFB)WOLF
General Member
Since: May 21, 2004
Posts: 178
Last: Jun 14, 2007
[view latest posts]
Level 4
Category: CoDUO Mapping
Posted: Monday, Jan. 2, 2006 09:18 pm
t_t is the name of the test map im making

I have also done the str file

t_t.str

iv'e tried allsorts but have no luck
Share |
Restricted Access Topic is Locked
Page
Next Page
subscribe
MODSonline.com Forums : Call of Duty : CoDUO Mapping

Latest Syndicated News

»
Codutility.com up and runn...
Nice, and there still using the logo and template for the screenshots, which...
Codutility.com up and runn...
dundy writes...Quote:Call of Duty modding and mapping is barly alive only a ...
Codutility.com up and runn...
Mystic writes...Quote:It seems to me the like the site is completely dead? ...
Codutility.com up and runn...
It seems to me the like the site is completely dead?

Partners & Friends

»