Welkom Gast! [Registreer] :: [Login]
Navigatie

Tutorials

Shoutbox
U dient in te loggen om een bericht te plaatsen.

03/05/2013 16:01
Had er nog nooit op gelet. Had het nog nooit gezien, wss omdat m'n Abine DNT dat wegstopt

03/05/2013 14:41
Hij staat er, dus ja Cool

03/05/2013 10:04
Heeft Mb nu een like button?

20/04/2013 13:42
istouching(trigger
)

20/04/2013 09:35
hoe kan je kijken of een speler nog in een trigger zit of niet?


Registreer of log in
Om gebruik te maken van de volledige functionaliteit van Modbase moet je ingelogd zijn.
Na registratie kan je reageren, onderwerpen starten, projecten toevoegen en nog veel meer.

Dit is volkomen gratis en duurt hoogstens een minuut.

Registreer gratis

Laatste Actieve Forumonderwerpen
  Onderwerpen AuteurAntwoorden Laatste bericht
Gedraaid model
CoD 2 Mapping & Modding
Niels4 Niels
18-05-2013 18:50
Vraagje over portals
CoD 2 Mapping & Modding
Mumble3 Fristi
18-05-2013 14:07
Naam secret werkt niet
CoD 2 Mapping & Modding
555henny5553 555henny555
16-05-2013 16:24
Maya vraagje
CoD 2 Mapping & Modding
Mumble3 Niels
13-05-2013 11:32
Error: Cannot find file "CODExportCommon" ...
CoD 2 Mapping & Modding
DustDevil9 Niels
13-05-2013 11:30


Onderwerp bekijken
U bent hier: Forum > CoD 2 Tutorials (goedkeuring) > [OB] Werkende mortieren
 Onderwerp afdrukken
[OB] Werkende mortieren
Geplaatst op 24-04-2008 11:11 | Gewijzigd door Stijn op 26-06-2008 14:33
#1  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 211
Joined: 07.02.08
Deze tutorial ontbrak nog dus hier een manier om een werkende mortier in je map te plaatsen. Het is vrij eenvoudig.

We starten met het werk in Radiant. Ik ga ervan uit dat je een map hebt met skybox en worldspawn settings, global intermission en spawnpoints.

1. Plaats een model van een mortier in je map die in de vuurrichting wijst. Het is niet noodzakelijk een target name te geven aan dit model.
2. Klik in het 2D veld op de rechtermuisknop en selecteer trigger -->use en plaats deze rondom je mortier model. Plaats hem niet te krap rondom de mortier.
3. Houdt de trigger geselecteerd en open het entity menu door op N te drukken en geef als targetname: trigger_mortar aan de trigger_use

We hebben nu een mortier met een trigger_use. In het spel zul je dan press F to use met een handje zien als je bij de mortier staat.

Nu moeten we de inslag locaties van de mortiergranaten vastleggen.

4. Wederom in de 2D view rechtermuisknop klikken en selecteer script--->model. We plaatsen echter geen model erbij maar houden hem als roze kubus in beeld. Terwijl de kubus nog steeds geselecteerd is drukken we op N om het entity menu in beeld te krijgen en geven de kubus als targetname: mortar_hit. Je kunt deze box zo vaak kopieren en plaatsen in je map als je wilt. Hou het realistisch en plaats ze in de vuurrichting van je mortier.

N.B.: Je kunt meerdere mortieren in je map plaatsen door de trigger door te nummeren. Dus b.v. trigger_mortar, trigger_mortar1, enz. En idem voor de mortar_hit. Zo heeft elke mortier z'n eigen inslagplekken. Houd hiermee rekening tijdens het scripten.

We zijn nu klaar in Radiant en gaan nu scripten.

Hieronder een script voor 1 mortier. Je maakt deze aan in je maps\mp folder en noemt hem b.v. mortar.gsc. In je mapnaam.gsc roep je deze gsc op door: maps\mp\mortar::main(); te plaatsen net boven of onder maps\mp\_load::main();


De code voor mortar.gsc:
Download broncode  Code

main()
{
// laad de effecten die gebruikt worden
level._effect["mortar_explosion"][0] = loadfx ("fx/dust/beltot_wallblast.efx");
level._effect["mortar_explosion"][1] = loadfx ("fx/dust/beltot_wallblast.efx");
level._effect["mortarflash"] = loadfx("fx/explosions/artilleryExp_dirt_brown.efx");
// roep de thread aan waarin de code voor de mortier staat
thread mortar();
}

mortar()
{
//definieer de trigger
trig = getent("trigger_mortar","targetname");
trig waittill("trigger");
// laat het geluid van een mortiergranaat horen die in de mortierbuis valt
trig playsound("mortar_load");
// laad de mortars thread
thread mortars();
}

mortars()
{
//alle mortar_hits worden hier als 1 beschouwd
mortar = getentarray ("mortar_hit","targetname");
{
//tijd tussen afvuren mortier en granaatinslag, kan je aanpassen
wait (7 + randomfloat(7));
// controleert waar de spelers staan t.o.v. de mortier
GoodPosition = false;
{
rand = randomint(mortar.size);
GoodPosition = true;
players = getentarray("player", "classname");
for(i = 0; i < players.size; i++)
{
if (distance(mortar[rand].origin,players[i].origin) < 200)
{
GoodPosition = false;
break;
}
}
}
//speel het geluid van een inkomende granaat
mortar[rand] playsound("incoming_mortar");
//wacht 2 seconden voor de inslag
wait 2;
//bepaal random waar de mortiergranaat inslaat en speel effect van inslag, er zijn 2 effecten zodat niet de inslag niet elke keer hetzelfde is, welke wordt random bepaald
origin = mortar[rand] getorigin();
playfx (level._effect["mortar_explosion"][randomint(2)], origin);
mortar[rand] playsound("explosion_ground");
//bepaal de straal rondom de inslag waarbinnen de speler gezondheidschade oploopt
radiusDamage(mortar[rand].origin + (0,0,12), 500, 50, 100);

}
//herhaal de thread zodat de mortier weer gebruikt kan worden na de inslag
thread mortar();
}





De tekst achter de // kan je weghalen, heb deze ter verduidelijking v/h script erbij geplaatst.

N.B.: Als je dus meerdere mortieren wilt plaatsen dan kun je dit script aanpassen door de thread mortar te kopieren en door te nummeren synchroon aan je nummering in radiant.

Voor het geluid voegen we onderstaande code toe aan je mapnaam.csv in je soundaliases folder:

Download broncode  Code


name,sequence,file,vol_min,vol_max,vol_mod,pitch_min,pitch_max,dist_min,dist_max,channel,type,probability,loop,masterslave,loadspec,subtitle,compression,secondaryaliasname,volumefalloffcurve,startdelay,speakermap,reverb,lfe percentage

#mortar
mortar_load,,Weapons/Mortar/wpnfire_mortar2.wav,1,1,,1,1,5000,6000,auto,streamed,,,,your_mapname,,,
incoming_mortar,,Explosions/artillery_incoming01.wav,1,1,,1,1,5000,6000,auto,streamed,,,,your_mapname,,,,
explosion_ground,,Explosions/Mortar_dirt01.wav,1,1,,1,1,5000,6000,auto,streamed,,,,your_mapname,,,,






Dat is alles. Je hebt nu een werkende mortier. Je kunt nog extra effecten toe voegen zoals b.v. een rookpluim die de mortierwerper verlaat als je de mortier afvuurt. Ben er zelf overigens nog niet helemaal achter hoe dit werkt dus als iemand een idee heeft plaats het dan bij deze tutorial.


Slayer


Bericht van Moderator:
Deze tutorial is onder beoordeling.

 Top
 
Geplaatst op 24-04-2008 14:27
#2  Bericht afdrukken
Avatar van gebruiker

Senior

Posts: 462
Joined: 18.01.08
een paar dingetjes. dit onderste voor dat geluid moet je opslaan als csv en niet als een gsc Pfft + ik heb geen geluid? hoe komt dat?




.RodneY,
Mods & Maps
 Top
 
Geplaatst op 24-04-2008 16:35
#3  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 211
Joined: 07.02.08
Oeps, a typo. Is gewijzigd, bedankt.

Geen geluid? Post je csv file even dan kan ik kijken. Doe dit in het COD2 level design forum, daar is een thread over meerdere mortieren. Deze thread is voor de tut.
 Top
 
Geplaatst op 24-04-2008 17:13 | Gewijzigd door haggis op 24-04-2008 17:17
#4  Bericht afdrukken
Avatar van gebruiker

Master

Posts: 563
Joined: 26.04.06
Nog een typ foutje:

Dit had jij:


Hieronder een script voor 1 mortier. Je maakt deze aan in je maps\mp folder en noemt hem b.v. mortar.gsc. In je mapnaam.gsc roep je deze gsc op door: maps\mp\mortars::main(); te plaatsen net boven maps\mp\_load::main();

maar moet zijn:

Hieronder een script voor 1 mortier. Je maakt deze aan in je maps\mp folder en noemt hem b.v. mortar.gsc. In je mapnaam.gsc roep je deze gsc op door: maps\mp\mortar::main(); te plaatsen net boven maps\mp\_load::main();

Dus zonder "s" achter mortar in: maps\mp\mortar::main();

of zo:


Hieronder een script voor 1 mortier. Je maakt deze aan in je maps\mp folder en noemt hem b.v. mortars.gsc. In je mapnaam.gsc roep je deze gsc op door: maps\mp\mortar::main(); te plaatsen net boven maps\mp\_load::main();

Dus met een "s" achter mortar in mortar.gsc

Wees consequent in het maken en renamen van scripts, voorkomt ook veel vragen van mensen die weinig verstand hebben van scripten.


Aanvullingen:


Post ook even het bovenste gedeelte van een .csv mee, voor mensen die nog geen .csv hebben is dit makkelijk. De rest zal hem weglaten als je erbij schrijft dat het niet nodig is als je er al een hebt.

Daarnaast kan je de regel: "maps\mp\mortar::main();" ook net onder "maps\mp\_load::main();" zetten.

greetz,

Haggis
 Top
 
Geplaatst op 24-04-2008 18:21
#5  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 211
Joined: 07.02.08
gewijzigd

thnx
 Top
 
Geplaatst op 25-04-2008 16:05
#6  Bericht afdrukken
Avatar van gebruiker

Senior

Posts: 462
Joined: 18.01.08
Oke met dit csv script heb ik alleen een soort swoooooof geluid als ie naar beneden komt maar niet zoeen ieeeeeeeeel geluid Pfft erg lastig uitleggen maar is er ook een sound voor het laden + sgieten van de mortier??


.RodneY,
Mods & Maps
 Top
 
Geplaatst op 25-04-2008 18:11
#7  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 211
Joined: 07.02.08
Verander in je csv mortar_charge door mortar_load, dan komt dat laad geluiid.

Als het goed is moet je de inkomende mortiergranaat horen met daarna de explosie.

 Top
 
Geplaatst op 26-06-2008 15:54
#8  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 116
Joined: 15.06.08
Maar je kan toch ook een regel (bijv de motar_charge) kopieëren en daar onder plakken maar dan verander je motar_charge in motar_load?

Of kan dat niet.

Greetzzz, Lane
 Top
 
Geplaatst op 10-06-2010 19:58
#9  Bericht afdrukken
Avatar van gebruiker

Opgewarmd

Posts: 65
Joined: 04.05.09
Bij
1. Plaats een model van een mortier in je map die in de vuurrichting wijst. Het is niet noodzakelijk een target name te geven aan dit model.

Welk Model Word Hier Bedoeld? misc_model of script_model?
 Top
 
Geplaatst op 10-06-2010 20:10
#10  Bericht afdrukken
Avatar van gebruiker

Moderator


Donator
Posts: 5538
Joined: 24.08.06
Waarschijnlijk een misc_model.
 Top
 
Geplaatst op 10-06-2010 20:30
#11  Bericht afdrukken
Avatar van gebruiker

Opgewarmd

Posts: 65
Joined: 04.05.09
ok, ik heb het gemaakt met misc model en het werkt super, ik vind het echt mooi gemaakt!
 Top
 
Geplaatst op 11-06-2010 21:06
#12  Bericht afdrukken
Avatar van gebruiker

Junior

Posts: 11
Joined: 05.03.10
Hoe doe je meerdere inslagen tegelijk van een mortar?


asd
 Top
 
Geplaatst op 11-06-2010 21:48
#13  Bericht afdrukken
Avatar van gebruiker

Moderator


Donator
Posts: 5538
Joined: 24.08.06
Dan moet je het script zelf aanpassen.
 Top
 
Geplaatst op 12-06-2010 09:43
#14  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 233
Joined: 22.02.09
Super is dit!
Nu alleen even een fx zoeken voor het schot bij de mortar...

Vraagje: is het mogelijk een xmodel van een mortarkogel te laten bewegen naar de plek van inslag in een parabool. Dat zou geweldig zijn. Maar eerlijk gezegd denk ik niet dat CoD2 deze wiskunde heeft Sad


card.mygamercard.net/NL/nxe/Laatste+Standje.png

Black Ops Ratio: 2.50+
MW2 Ratio: 1.70+
CoD1/2/4: ~1.50-2.00
 Top
 
Geplaatst op 12-06-2010 10:28
#15  Bericht afdrukken
Avatar van gebruiker

Moderator


Donator
Posts: 5538
Joined: 24.08.06
Tiek schreef:
Super is dit!
Nu alleen even een fx zoeken voor het schot bij de mortar...

Vraagje: is het mogelijk een xmodel van een mortarkogel te laten bewegen naar de plek van inslag in een parabool. Dat zou geweldig zijn. Maar eerlijk gezegd denk ik niet dat CoD2 deze wiskunde heeft Sad


Dat moet mogelijk zijn. Granaten vliegen ook in een mooie boog.

Vraag me niet hoe.
 Top
 
Geplaatst op 12-06-2010 11:07 | Gewijzigd door Tiek op 12-06-2010 11:10
#16  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 233
Joined: 22.02.09
En nog een vraag: als iemand dood gaat aan deze mortar, krijg je daar wel punten voor of wordt dit geteld als een soort suicide? En als het een suicide is, misschien een idee om dit in de tut aan te passen, zodat je er wel kills voor krijgt.


card.mygamercard.net/NL/nxe/Laatste+Standje.png

Black Ops Ratio: 2.50+
MW2 Ratio: 1.70+
CoD1/2/4: ~1.50-2.00
 Top
 
Geplaatst op 12-06-2010 11:08
#17  Bericht afdrukken
Avatar van gebruiker

Admin

Posts: 3782
Joined: 16.04.06
Je kan het wiskundig laten berekenen, een effect gebruiken of je kan zelf (op een minder juiste manier) de boog maken.

Je boog zal dan bestaan uit 2 rechte lijnen en één echte boog.
Je laat de mortier bewegen naar een bepaald punt waar je die dan rond een origin laat draaien in een grote boog over een bepaalde hoek. Dan laat je die terug in een rechte lijn naar beneden gaan.
In de bijlage zit een afbeelding ter verduidelijking:

Bijlage:
 Top modbase.be
 
Geplaatst op 12-06-2010 11:11 | Gewijzigd door Tiek op 12-06-2010 11:12
#18  Bericht afdrukken
Avatar van gebruiker

Actief

Posts: 233
Joined: 22.02.09
Ik snap hem ^^.
Maar wat nou als je meerdere inslagplekken heb, dan moet die rechte lijn enzo automatisch aangepast worden enzo


card.mygamercard.net/NL/nxe/Laatste+Standje.png

Black Ops Ratio: 2.50+
MW2 Ratio: 1.70+
CoD1/2/4: ~1.50-2.00
 Top
 
Geplaatst op 12-06-2010 11:54
#19  Bericht afdrukken
Avatar van gebruiker

Senior

Posts: 260
Joined: 05.12.09
Btw grenades gaan via boog door hun weapon_mp had ik al eens getest
 Top
 
Geplaatst op 12-06-2010 15:48
#20  Bericht afdrukken
Avatar van gebruiker

Moderator


Donator
Posts: 5538
Joined: 24.08.06
piggy schreef:
Btw grenades gaan via boog door hun weapon_mp had ik al eens getest


En wat denk je dat er in de engine gebeurt?
 Top
Spring naar forum:

Gelijkaardige onderwerpen
Onderwerpen Forum Antwoorden Laatste bericht
Niet werkende teleporter CoD 2 Mapping & Modding 7 15-05-2011 10:04
Werkende jeep spawnen met command CoD 2 Mapping & Modding 20 12-05-2010 08:54
De werkende jeep CoD 2 Mapping & Modding 5 16-01-2010 13:12
Werkende Rijdende Jeep in Multiplayer VRAAGJE CoD 2 Mapping & Modding 7 25-07-2009 18:55
[OK] Werkende Rijdende Jeep in Multiplayer CoD 2 Tutorials (goedkeuring) 12 24-07-2009 16:09


Naar Boven

© 2006-2013 Modbase. Alle rechten voorbehouden. Disclaimer & cookies | Gedragscode

Custom coding by Stijn, Image fixing by Derix