Gangs plaatsen (GTA2)
Hoofdpagina > GTA2 > Modding > Gangs plaatsen
Gangs zijn erg belangrijk in GTA2. Om ze te creëren heb je eerst een level nodig dat groot genoeg is om gangs te herbergen. In deze tutorial is het testlevel uitgebreid om genoeg ruimte voor gangs te hebben.
Inhoud
Gang zones
Allereerst moeten we bepalen wat het territorium van de gang wordt door een gang zone aan te maken. Plaats deze zone precies over het gebied waar de gang moet verschijnen, maar zorg er voor dat er tenminste één rondlopende weg binnen de zone valt. Dit is belangrijk omdat gangwagens soms niet verschijnen als ze niet binnen de gangzone kunnen blijven.
Geef de zone een duidelijke naam, want je zult er later in het script naar moeten verwijzen. De eerste vier letters van iedere gangnaam moeten uniek zijn. De gangzone in deze tutorial noemen we "testgang".
Om het aantal gangleden en -wagens te regulieren heb je een navigation- of informationzone nodig. Het exacte verschil tussen deze twee zones is niet geheel duidelijk, maar beiden kunnen gebruikt worden om het aantal voetgangers en voertuigen te bepalen. Met een navigationzone kun je in de map editor ook een naam aan het gebied geven; met een information zone kan dit niet. Let op: wanneer de twee verschillende types door elkaar gebruikt worden kan het voorkomen dat het MAP_ZONE niet goed werkt, waardoor er voertuigen of voetgangers niet of weinig verschijnen. De originele levels van GTA2 maken voornamelijk gebruik van navigation zones, dus deze genieten de voorkeur.
Plaats deze zone over de gangzone en geef ook deze zone een duidelijke naam. De navigationzone in deze tutorial heet "testinfo". Gangs kunnen meerdere gang- en navigationzones hebben. Als ze dezelfde eigenschappen moeten krijgen kun je zones van hetzelfde type dezelfde naam geven.
Gangeigenschappen scripten
De gangzone vertelt het spel dat er een gang is in dit gebied, maar niet welke gang. Dit wordt in het script aangegeven met het SET_GANG_INFO commando.
SET_GANG_INFO ( gangzonenaam , uiterlijk , wapen1 , wapen2 , wapen3 , gang-ID , X.x , Y.y , Z.z , respect , gangwagen , gangwagenkleur )
gangzonenaam | De naam van de gangzone die je in de editor hebt ingevoerd. |
uiterlijk | Het uiterlijk van de gangleden. |
wapen1 | Het wapen dat de gewapende gangleden altijd op zak hebben, en gebruiken wanneer je in diskrediet valt. |
wapen2 | Het wapen dat de gewapende gangleden gebruiken wanneer hun respect voor je -3 is. |
wapen3 | Het wapen dat de gewapende gangleden gebruiken wanneer hun respect voor je -5 is. |
Gang-ID | Het ID nummer van de betreffende gang. Dit bepaalt de pijl en het icoon van de gang. |
X.x , Y.y , Z.z | De coördinaten van het middelpunt of 'hoofdkwartier' van de gang. Naar dit punt wijst de pijl, dus gewoonlijk zouden dit de coördinaten van de informatietelefoon moeten zijn. |
respect | De hoeveelheid respect die je verliest bij het vermoorden van een ganglid, in een waarde van -100 tot 100. De standaardwaarde is 1. Zet dit op 0 voor een "onzichtbare" gang: behalve dat de respect van deze gang dan niet wijzigt, verschijnt er ook geen respect-o-meter, pijlen of gangvoertuigen van deze gang. |
gangwagen | Welke wagen de gang moet hebben. Je kunt geen speciale voertuigen zoals de Cop Car gebruiken. |
gangwagenkleur | Welke kleur de gangwagen moet hebben. |
Deze code gaat voor LEVELSTART
Voorbeeld
Wanneer je een Zaibatsugang wilt hebben met middelpunt 244.5 , 108.5 , 2,0, dan wordt de code:
SET_GANG_INFO ( zaibgang , 8 , PISTOL , MACHINE_GUN , ROCKET_LAUNCHER , 3 , 110.5 , 75.5 , 3.0 , 1 , VTYPE , 2 )
SET_GANG_KILL_REACTION
Om de rivaliteit tussen de gangs te bepalen gebruik je het volgende commando:
SET_GANG_KILL_REACTION ( gang1 , gang2 , respect )
gang1 | De naam van de gang wier lid vermoord wordt. De eerste vier letters moeten overeen komen met de eerste vier letters van de gangzone. |
gang2 | De naam van de gang wier respect moet veranderen. De eerste vier letters moeten overeen komen met de eerste vier letters van de gangzone. |
respect | De hoeveelheid respect die moet veranderen, van -100 tot 100. de standaardwaarde is 1. |
Dit commando moet na LEVELSTART.
Voorbeeld
Wanneer de Loonies blij zijn met de dood van een Zaibatsulid, de Zaibatsu blij is met de dood van een Yakuzalid en de Yakuza blij is met de dood van een Loonie, dan worden de commando's:
SET_GANG_KILL_REACTION ( zaibgang , loongang , 1 ) SET_GANG_KILL_REACTION ( yakugang , zaibgang , 1 ) SET_GANG_KILL_REACTION ( Loongang , yakugang , 1 )
Zone info scripten
Je hebt nu functionerende gangs, maar je wilt wellicht het aantal gangleden, gangwagens, voetgangers, agenten, etc. in het ganggebied aanpassen. Dit kan met het MAP_ZONE commando.
MAP_ZONE zonenaam = ( wagens , goede_wagens, slechte_wagens , politiewagens , voetgangers , zakkenrollers , autodieven , elvis , gangleden , agenten , gangwagens )
zonenaam | De naam van de zone die je in de editor gemaakt hebt. |
wagens | Het totaal aantal wagens dat in deze zone moet rijden in een waarde van 0 tot 1000. Bij 1000 tracht het spel iedere cycle 2 voertuigen te maken. |
goede_wagens | Het aandeel "goede" wagens |
slechte_wagens | Het aandeel "slechte" wagens |
politiewagens | Het aandeel politiewagens |
voetgangers | Het totaal aantal voetgangers dat in deze zone moet rondlopen in een waarde van 0 tot 1000. Bij 1000 tracht het spel iedere cycle 3 voetgangers te maken. |
zakkenrollers | Het aandeel zakkenrollers |
autodieven | Het aandeel autodieven |
elvis | Het aandeel Elvisgroepen |
gangleden | Het aandeel gangleden. Als er geen gangzone over dit gebied ligt wordt het aandeel bij de normale voetgangers gevoegd. Als er wel een gangzone is maar geen SET_GANG_INFO-commando creëert het spel standaard non-aggressieve gangleden. |
agenten | Het aantal agenten dat in de zone moet lopen. Als er geen wanted level mogelijk is (in bijvoorbeeld multiplayer), zullen er geen agenten verschijnen en wordt dit aantal bij de gewone voetgangers opgeteld. |
gangwagens | Het aantal gangwagens. Als er geen gangzone over dit gebied ligt zullen er geen gangwagens verschijnen en wordt dit aantal bij de "middelmatige" wagens opgeteld. |
De variabelen "middelmatige_wagens" en "normale_voetgangers" worden berekend met de volgende formule:
- 1000 - (
goede_wagens
+slechte_wagens
+politiewagens
+gangwagens
) =middelmatige_wagens
- 1000 - (
zakkenrollers
+autodieven
+agenten
+elvis
+gangleden
) =normale_voetgangers
De som van alle voetgangervariabelen en de som van alle voertuigvariabelen moeten beide 1000 zijn.
Dit commando moet voor LEVELSTART. Je kunt dit commando uiteraard voor alle gebieden in je level gebruiken, en niet alleen voor ganggebieden.
Voorbeelden
Wil je een rustige en nette buurt, met veel goede wagens en weinig criminaliteit, dan zou het commando er zo uit kunnen zien:
MAP_ZONE starfishisland = ( 600 , 600, 200 , 100 , 600 , 20 , 20 , 100, 0 , 100 , 0 )
Wil je echter een drukke buurt die aan een gang ten onder gaat, terwijl ongure types heersen in de stegen en er bijna geen sportwagen op straat te vinden is, dan wordt het commando meer zoals deze:
MAP_ZONE littlehaiti = ( 1000 , 150, 300 , 10 , 1000 , 200 , 100 , 10, 500 , 10 , 400 )
MAP_ZONE details wijzigen
Het is mogelijk om de details van een MAP_ZONE halverwege het spel te veranderen. Om dit te doen moet je de zone eerst in het script declareren met het volgende commando:
MAP_ZONE zonenaam
Hierna kun je de waardes veranderen met de volgende commando's na LEVELSTART:
SET_CAR_DENSITY ( zonenaam , waarde ) SET_PEDDENSITY ( zonenaam , waarde ) SET_GOODCAR_RATIO ( zonenaam , waarde ) SET_BADCAR_RATIO ( zonenaam , waarde ) SET_MUGGER_RATIO ( zonenaam , waarde ) SET_CARTHIEF_RATIO ( zonenaam , waarde ) SET_ELVIS_RATIO ( zonenaam , waarde ) SET_GANG_RATIO ( zonenaam , waarde ) SET_GANGCAR_RATIO ( zonenaam , waarde ) SET_POLICECAR_RATIO ( zonenaam , waarde ) SET_POLICEPED_RATIO ( zonenaam , waarde )
Opmerkingen
- Het is ook mogelijk om meer of minder dan drie gangs te creëren. Bovendien is het mogelijk 'onzichtbare' gangs te creëren, zonder icoon of respect-o-meter. Om dit te doen zet je de waarde 'respect' op 0 en geef je de gang ID 8. Voorbeelden van onzichtbare gangs zijn de zoals de Mad Island gang en de gevangenen in Alma Mater State Prison.
- In multiplayer kun je ook gangs scripten. Hun wapen verandert echter niet wanneer hun respect voor de spelers daalt. Ook verschijnen de gangpijlen niet.
Mapping | Editor (Epic) · Gebouwen · Wegen · Water & animaties · Slopes · Flat tiles · Collision info · Rand van een level · Zones · Level ingame zetten | ||
---|---|---|---|
Scripting | Declareren: | Basisscript · Script Compiler (MIS Pad) · Codelijsten · Commando's · Voertuigen · Objecten · Geluiden · Personages · Groepen · Deuren | |
Programmeren: | IF · WHILE · COUNTERs · Subroutines · THREAD TRIGGERs · EXEC · PARK · Kill Frenzies · PHONEs · Singleplayerscript · Missies · Jesus saves | ||
Beide | Belichting · Car shops · Cranes & crushers · Gangs · Metro · Multiplayerlevels | ||
Bestandstypes | .gci · .gmp · .gxt · .mis · .mmp · .pal · .scr · .seq · .sty · .tmp | ||
Overig | Texting · Physics (Lijst) · Texturing · Voertuigen maken · Plattegrond · Terminologie · Levels installeren |