Jump to content

Dé beginnersgids voor nieuwe SA-MP scripters


David22

Recommended Posts

Beginnen met SA-MP scripting



Een korte (viel toch tegen :7) inleiding tot het scriptwerk.

Inhoud

  • Inleiding
  • Benodigdheden
  • Scripting Editors
  • Hulptools
  • Verschillende scripts
    • Gamemodes
    • Filterscripts
    • Includes
    • Plugins

    [*]Overige belangrijke informatie

    • Correcte indentation
    • SA-MP Wiki
    • Tutorials

    [*]Tot slot

Inleiding

Omdat ik merk dat er de laatste tijd veel mensen geïnteresseerd raken in het SA-MP scripten, maar door alle bomen het bos niet meer kunnen zien. Daarom schrijf ik hier een grote, overzichtelijke beginnersgids voor nieuwe SA-MP scripters. Mensen die al kunnen scripten, zullen hier niets nieuws vinden. Het allerbelangrijkste voor nieuwe scripters is het hebben van doorzettingsvermogen. Stop niet als het eens niet lukt! Toch is er nog een ding waar je over na moet denken: begin niet meteen met volledige, moeilijke scripts! Begin rustig, met simpele scripts, en bouw dit langzaam op! Als je meteen lastige scripts wilt, en hier op het forum aan iedereen hulp gaat vragen, leer je het nooit. Deze gids zal vooral links naar andere tutorials en tips bevatten, en is een vertaling naar Pawn (zo heet de SA-MP scripttaal) van deze SCM gids door Dutchy3010.

Benodigdheden

Om te kunnen SA-MP scripten, heb je een paar dingen nodig.

  • Een scriptingeditor, hier kom ik later nog op terug.
  • Verschillende hulptools, hier komt ik later ook nog op terug
  • Tijd en moeite.

Scripting Editors

Om een SA-MP script te kunnen bewerken en/of maken, heb je een scripting editor nodig. Volgens de SA-MP wiki zijn er 5 editors: Pawno, PawnoX, PawnSciTE, SA-MP Editor en Official Quincy Editor. Omdat Official Quincy Editor en PawnoX niet aan te raden zijn, zal ik alleen de andere drie bespreken.

Pawno

De standaard editor. Deze editor wordt meegeleverd bij het SA-MP pakket en bevat ook de compiler (die maakt van een bewerkbaar bestand (.pwn) een voor de server leesbaar bestand (.amx)). Dit is het pawncc.exe bestand. Omdat pawno een simpel programma is, is deze editor goed geschikt voor de mensen onder ons die geen supergoede computer hebben. Echter, omdat het programma geen speciale jump-to functies heeft, en je ook geen in-/uitklapfunctie voor bijvoorbeeld lange variabelen heeft, is dit programma niet aan te raden voor scripts met meer als 2000 regels code. Maar het is een perfect programma voor de beginnende scripter! Pawno is gemaakt door spookie. Download: inbegrepen bij serverpakket

SA-MP Editor

Anders dan de naam doet vermoeden, is deze editor niet gemaakt door het team achter SA-MP. Deze editor is pas net uit de closed beta, maar is wel gelijk stukken beter als pawno. Dit omdat de SA-MP editor "code-collapsing" heeft, deze editor kan code in- en uitklappen. Echter, dit programma vraagt wel veel van je computer, omdat dit programma een geheugengebruik heeft van 34 MB, terwijl pawno maar 3 MB gebruikt. Omdat dit programma nog in de beta is, en bovendien alle downloadlinks dood zijn, zou ik een ander programma gebruiken. SA-MP Editor is gemaakt door Peter. Download: niet beschikbaar

PawnSciTE

Mijn favoriete programma. Deze editor een een bewerkte versie van SciTE, een textbewerker. Echter, dit programma is helemaal aangepast aan pawn, en heeft functies als code-collapsing, het oplichten van functies, het aanvullen van functies, tabbladen (je kan 10 .pwn-bestanden tegelijk open hebben staan). Bovendien kan je automatisch bestanden via FTP uploaden en je lokale server herstarten. Als je op een foutmelding klikt springt het programma automatisch naar de regel met de fout erin. En het belangrijkste van allemaal is nog dat het programma nog gemakkelijk in het gebruik is ook. PawnSciTE is gemaakt door darkimmortal. Download: klik

Hulptools

Als je scripts gaat maken, zijn er natuurlijk altijd functies die veel code nodig hebben, of functies die lastig zijn om te maken. Gelukkig zijn er hiervoor veel hulpprogramma's gemaakt. De handigste en besten zal ik hier kort bespreken.

X-Treme SA-MP Visual Mapper

Een programma waarmee je bijna alles kan uitvoeren wat met coördinaten te maken heeft. Het maken van World Boundaries, gangzones, het plotten van voertuigen en nog veel meer! Download: klik

Kyoshiro's Automatic Server Restarter

Soms komt het voor dat jouw server crashed. Dit is vervelend, helemaal als er mensen van jouw GM aan het genieten zijn. Als je er an ook nog niet bent om de server te herstarten, kan het helemaal een drama worden. Gelukkig zijn er programma's die de taak van het herstarten op zich nemen. Download: klik

SA-MP Script King Final

Een programma met het ID van zo'n beetje alles :puh:. Voertuigen, skins, animaties, weer, geluiden, objecten en nog veel meer! Dit programma is echt een must have! Download: klik

David22's Server.cfg Tool

Er zijn genoeg mensen die problemen hebben met het maken van het configuratiebestand voor de server. Daarom heb ik een tooltje gemaakt welke jou dat werkt uit handen neemt. Download: klik

Caneman's SA:MP Easy Peasy

Een programmaatje waarmee je eenvoudig menu's, pickups en teleports kan maken. Aan te raden voor een beginnende scripter. Download: klik

Verschillende scripts

Als je gaat scripten, zijn er verschillende soorten scripts die je kan maken. Je hebt gamemodes en filterscripts. Ben je iets verder gevorderd, kan je ook includes maken. Verder zijn er ook nog plugins, maar dat is helemaal lastig om te maken :puh:

Gamemodes

Dé basis van de server. Dit is het script wat altijd aanstaat. Als beginner kan je het beste beginnen door een GM (afkorting voor gamemode) te maken, want dit is het eenvoudigst om mee te beginnen. Echter, er zijn veel (gevorderde) scripters die zo min mogelijk in de gamemode zetten, en zoveel mogelijk in filterscripts. Maar begin jij nou maar lekker met het werken in een GM; de filterscripts komen later wel ;).

Filterscripts

De add-ons van jouw server. In een FS (verassing: de afkorting van filterscript) kan je bijvoorbeeld commands zetten, welke je ook aan en uit wil kunnen zetten. Veel scripters zetten veel dingen in filterscripts: bijvoorbeeld een FS voor commands, een voor het accountsysteem, een voor de pickups, etc. Maar let op! Je kan maximaal 16 filterscripts tegelijk aan hebben staan, anders laden ze simpelweg niet meer!

Includes

.inc bestanden. Deze staan in de map pawno/include, en bevatten de functies die je kan gebruiken. Het bekendste voorbeeld van een include is a_samp, deze bevat alle standaard functies voor SA-MP. Echter, er zijn ook andere includes, zoals dini (mogelijkheid tot het communiceren met bestanden), dcmd (betere, maar iets ingewikkeldere manier om commands te maken) en cps (meerdere checkpoint tegelijk kunnen toevoegen). Maar het is het slimst om te beginnen met de functies van a_samp te verkennen, voordat je er nog meer gaat toevoegen ;).

Plugins

Bestanden die een hele nieuwe functionaliteit toevoegen aan de server, bijvoorbeeld mailen. Wordt echter niet veel gebruikt, kijk hier nog maar eens naar als je al behoorlijke tijd aan het scripten bent ;).

Overige informatie

Tot slot zet ik hier nog wat kleine dingetjes neer, die je helpen het scripten sneller onder de knie te krijgen :)

Correcte indentation!

Geloof het of niet: indentation is ongelofelijk belangrijk! Indentation is de uitlijning van jouw script. Kort gezegd: na elke { spring je een tab (of 4 spaties) verder, en na elke } ga je dat weer terug. Dit helpt jouw script veel overzichtelijker te maken. Voorbeeldjes:

Zonder goede indentation

public DelAllVehs()
{
for(new i = 0; i <= MAX_VEHICLES; i++)
{
if(SpawnedCar[i])
{
DestroyVehicle(i);
}
}
}

Met goede indentation

public DelAllVehs()
{
for(new i = 0; i <= MAX_VEHICLES; i++)
{
	if(SpawnedCar[i])
	{
		DestroyVehicle(i);
	}
}
}

Je ziet zelf al wel wat duidelijker is. Dit is makkelijk voor jou, omdat je script overzichtelijker wordt én het debuggen makkelijker.

SA-MP Wiki

Wat de bijbel voor Christenen is, is de SA-MP Wiki voor SA-MP scripters. Hier vind je zo goed als alle informatie die je nodig hebt om te scripten. 't Is wel allemaal in het Engels, maar alles staat goed uitgelegd en er is per functie een pagina met uitleg. Heb je een probleem? Hoogstwaarschijnlijk kan je op de wiki de oplossing vinden. De wiki is hier te vinden

Tutorials

Hier op het forum zijn veel goede tutorials te vinden, helaas is de MTL out-of-date. Daarom zet ik hier de beste tutorials op een rijtje, zodat je die ook rustig door kan lezen en ze niet op hoeft te zoeken. Is de link groen gekleurd, is het een redelijk eenvoudige tutorial. Is hij oranje, is hij iets lastiger. Maar is hij rood, is het een tutorial voor echt gevorderde scripters. (Idee geripped uit modding MTL :$)

Lijst is out-of-date, kijk in de PMTL voor een actueler overzicht!



29vze5l.jpg

Tot slot

Zo, dit was dan de beginnersgids voor SA-MP scripting. Ik hoop dat je wat hebt geleerd, en mocht je ooit nog tegen problemen aanlopen kan je ze altijd nog posten in dit forum. Maar onthoud dit: Ga nooit, als je net begonnen bent, scripts downloaden en deze proberen aan te passen! Begin zelf, en begin klein, dat is de enige manier om het te leren! Veel succes met scripten!

Bewerkt: door David22
Link to comment
Delen op andere websites

Ziet er goed uit _O_

Ik zat al een tijdje moed te verzamelen om te leren scripten, misschien dat ik het nu ook echt ga doen _O_

EDIT: 'k Heb hem even doorgelezen en een paar programmaatjes gedwonload. Mooie tut alleen... ongelovelijk => ongelofelijk :7

Bewerkt: door Bayside
Link to comment
Delen op andere websites

Het was leuk om deze tutorial te lezen.

Veel wist ik al maar bijvoorbeeld die programma's kende ik de meeste nog niet van.

En van die indentation wist ik ook wel maar ik vond het altijd al wel lastig om ze uit elkaar te halen.

Trouwens het is het maximum filterscripts niet 15?

Alleen die downloadlink van 'Caneman's SA:MP Easy Peasy' werkt de download niet meer denk ik.

En die 'PawnSciTE' lijkt ook niet te werken eigenlijk :S .

Bewerkt: door vice
Link to comment
Delen op andere websites

Trouwens het is het maximum filterscripts niet 15?

Nope, 16.

Alleen die downloadlink van 'Caneman's SA:MP Easy Peasy' werkt de download niet meer denk ik.

En die 'PawnSciTE' lijkt ook niet te werken eigenlijk :S .

Moet je op de laatste pagina van het topic kijken, daar staan vaak verse downloadlinks ;)

Link to comment
Delen op andere websites

Ik stem ook Sticky. :tu:

Verder denk ik wel dat plugins vaak gebruikt worden hoor. :Y Het enige probleem is dat ze elkaar vaak tegenwerken.

MySQL plugins worden ook heel erg vaak gebruikt als je erg veel data moet opslaan, maar dat is al voor heel gevorderde scripters (zelfs ik heb er nog problemen mee).

Link to comment
Delen op andere websites

Ik stem ook Sticky. :tu:

Verder denk ik wel dat plugins vaak gebruikt worden hoor. :Y Het enige probleem is dat ze elkaar vaak tegenwerken.

MySQL plugins worden ook heel erg vaak gebruikt als je erg veel data moet opslaan, maar dat is al voor heel gevorderde scripters (zelfs ik heb er nog problemen mee).

Ik ben het voledig met je eens, ik raad mensen aan om met mysql te werken, omdat het namelijk veel overzichtelijker, makelijker, en sneller is dan ffile en dini, alleen dit is idd voor erg gevordenen.

Ik heb 2 jaar professionele pawno script kennis, en zelfs ik vond het voor de 1e keer erg moeilijk, ik raad ook de mensen aan om het af en toe aan iemand te vragen hoe het werkt, en ook vaak in voorbeeld-script te werken.

Maar uiteindelijk is het toch met veel moeite gelukt, nu draait mijn script de userfiles op MySQL, en binnekort ook de huizen, businesses, en de logs.

Maar ik stem ook voor sticky :tu:

Bewerkt: door D-V-D-K
Link to comment
Delen op andere websites

Leuk dat mijn gids zo goed in de smaak valt :D. Om beginners nog wat extra te supporten, heb ik ook nog even een stukje over de sa-mp wiki toegevoegd :)

Sommige pagina's zijn daar ook vertaald in het nederlands.

't Is wel allemaal in het Engels
Link to comment
Delen op andere websites

  • 1 maand later...

Ej dankjewel man ,

ik probeer t scripten un beetje te leren ben pas net binnen komen rollen zegmaar

en uit deze tutorial heb ik tog wel veel informatie kunnen krijgen.

Lekker overzichtelijk enzo beter dan die tutorials waar alles door elkaar staat

en moelijk te begrijpen is omdat ze dingen overslaan

netjes gemaakt hoor ;)

Link to comment
Delen op andere websites

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...