ID.nl logo
Zo kun je programmeren in Python - Deel 6
© Reshift Digital
Huis

Zo kun je programmeren in Python - Deel 6

In de href="https://computertotaal.nl/artikelen/pc/zo-kun-je-programmeren-in-python-deel-5/" rel="noopener noreferrer" target="_blank">vorige les</a> leerde je met bestanden werken en zag je hoe je je programma kunt laten reageren op exceptions. Zo beginnen je programma’s ondertussen al vrij complex te worden. Tijd dus om wat structuur in je programma’s te brengen, en dat doen we in deze les met functies en modules. We bekijken ook enkele standaardmodules van Python.

Wil je meer leren over programmeren? Bekijk dan onze Cursus: programmeren in Phyton (boek & online cursus).

Tot nu toe waren onze Python-programma’s vrij kort, maar je hebt ondertussen al genoeg Python-bagage om zelf al eens aan de slag te gaan en je eigen ideeën uit te werken in programma’s. En dan merk je al snel dat je programma lang en ondoorzichtig wordt. Gelukkig kent Python verschillende manieren om wat meer structuur in je programma’s te brengen.

De eerste manier ben je al tegengekomen: functies. We hebben immers in de vorige lessen al diverse standaardfuncties van Python gebruikt, zoals len, print, input, format, split, open, read en write. Een functie is een afzonderlijk stukje code dat een afgebakende taak uitvoert die je meerdere keren zou willen uitvoeren op verschillende gegevens. Zodra je in je programma dus merkt dat je een stukje code telkens aan het herhalen bent, zou je eerste gedachte moeten zijn: ik maak er een functie van!

Een functie definiëren

We tonen je als voorbeeld hoe je een functie maakt om te berekenen of een woord een palindroom is. Een palindroom of spiegelwoord is een woord dat van achteren naar voren gelezen hetzelfde is als van voor naar achter. Een eenvoudige functie om te bepalen of een woord een palindroom is, ziet er als volgt uit:

def is_palindroom(woord):letters = list(woord)palindroom = Truewhile len(letters) > 0 and palindroom:if letters[0] != letters[-1]:palindroom = Falseelse:letters.pop(0)if len(letters) > 0:letters.pop()return palindroom

Dit is niet de efficiëntste manier om te bepalen of een woord een palindroom is, maar wel een die goed te begrijpen is. Je ziet dat er in de definitie van deze functie eigenlijk maar twee zaken nieuw zijn: de eerste en de laatste regel. In de eerste regel geven we met def is_palindroom(woord): aan dat we een functie definiëren met de naam is_palindroom en dat die één parameter meekrijgt, die we woord noemen. Dan komt onze hele berekening, die je met al je kennis uit de vorige lessen na een kleine studie zou moeten begrijpen, en op het einde geven we met return palindroom aan dat we de waarde die na onze berekening in de variabele palindroom zit teruggeven.

Een functie aanroepen

Breek je hoofd nog even niet over de inhoud van de functie. Typ de code in Thonny in en sla het bestand op onder de naam palindroom.py. Voer het dan uit met een druk op F5. Er gebeurt niets, maar de functie is nu gedefinieerd. In de terminal onderaan Thonny kun je nu de functie aanroepen. Enkele voorbeelden:

>>> is_palindroom('nepalapen')True>>> is_palindroom('napalm')False>>> is_palindroom('koortsmeetsysteemstrook')True

Denk nu eens even na over wat er gebeurt als je is_palindroom('nepalapen') aanroept. De functie is_palindroom wordt dan uitgevoerd en aan de variabele woord van de functie wordt de string 'nepalapen' toegekend. Dan gebeurt die hele berekening, en geeft de functie als resultaat True of False. En voor elke andere string die je aan de functie doorgeeft, gebeurt de berekening op dezelfde manier. Op deze manier heb je de berekening ingekapseld in een afzonderlijk stukje code, de functie, die herbruikbaar is.

Overigens zijn door die inkapseling de parameter woord net zoals de variabelen letters en palindroom alleen binnen het blok van de functie gedefinieerd: het zijn wat we noemen lokale variabelen.

Recursieve functies

In onze functie is_palindroom gaan we met een while-lus alle letters in het woord af. Een andere manier om de functie te definiëren is met recursie: in de functie roepen we de functie opnieuw aan, maar op een deel van het woord. Dat ziet er als volgt uit:

def is_palindroom2(woord):if len(woord) < 2:return Trueif woord[0] != woord[-1]:return Falsereturn is_palindroom2(woord[1:-1])

Voeg deze functie in Thonny gewoon aan hetzelfde bestand toe als is_palindroom, sla het bestand op en druk op F5 om het uit te voeren. Je kunt nu deze functie is_palindroom2 uitproberen op enkele woorden. Het resultaat moet telkens hetzelfde zijn als is_palindroom op hetzelfde woord.

De functie is_palindroom2 is een mooi voorbeeld van een recursieve functie. We bekijken eerst of het woord minder dan twee letters bevat. In dat geval (het woord is leeg of heeft één letter) is het altijd een palindroom en daarom geven we in dat geval True terug. Daarna controleren we of de eerste letter verschilt van de laatste letter van het woord. Verschillen die, dan is het woord al zeker geen palindroom en geven we dus False terug.

Dan blijft er nog één geval over: de eerste en laatste letter van het woord zijn gelijk, maar van de andere letters weten we nog niets. Wat doen we dan? We roepen de functie is_palindroom2 opnieuw op, maar op die andere letters. Die verkrijgen we door de slice (zie les 2) [1:-1] op het woord toe te passen, die het woord zonder de eerste en laatste letter teruggeeft.

Belangrijk bij recursieve functies

Als je een recursieve functie schrijft, is het belangrijk dat je de functie telkens oproept op een kleinere invoer dan waarmee je begon, zodat je uiteindelijk bij een basistest uitkomt, zoals in ons geval if len(woord) < 2: en if woord[0] != woord[-1]:. In beide gevallen roepen we de functie is_palindroom2 niet meer aan, maar geven we een waarde True of False terug. Doordat we in het derde geval altijd de eerste en de laatste letter van het woord verwijderen voor we de functie opnieuw oproepen, verzekeren we dat de functie uiteindelijk altijd bij een van de basistests uitkomt.

Met modules werken

Zonder dat je het weet, heb je nu al je eerste module geschreven. Elk Python-bestand waarin je code schrijft, is immers een module voor Python. Maak nu een nieuw Python-bestand aan in Thonny en noem het bijvoorbeeld test_palindroom.py. Als je in dit bestand de code uit palindroom.py wilt gebruiken, moet je de module palindroom importeren. Dat gaat als volgt:

import palindroom

print(palindroom.is_palindroom("nepalapen"))

Met import palindroom zeggen we aan de Python-interpreter dat we toegang willen tot alle code in de module palindroom. Python zoekt dan naar bestanden met de naam palindroom.py in zijn zoekpad. Omdat de code test_palindroom.py in dezelfde directory staat als palindroom.py, vindt Python de module en zijn de functies is_palindroom en is_palindroom2 daarin beschikbaar onder de namen palindroom.is_palindroom en palindroom.is_palindroom2.

In dit geval is het niet zo handig dat je voor elke functie uit de module palindroom de aanduiding palindroom. dient te zetten, omdat dit nogal lang is. We kunnen de naam van een module die we gebruiken gelukkig ook afkorten:

import palindroom as pal

print(pal.is_palindroom("nepalapen"))

Het is ook mogelijk om het voorvoegsel voor de module volledig weg te laten door de specifieke functies die we willen gebruiken te importeren:

from palindroom import is_palindroom

print(is_palindroom("nepalapen"))

Dat kan ook met meerdere functies:

from palindroom import is_palindroom, is_palindroom2

print(is_palindroom("nepalapen"))

print(is_palindroom2("parterretrap"))

Zodra je Python-code wat langer wordt, is het aan te raden om ze in modules op te splitsen. Een goede vuistregel is dat elke module code voor één specifiek doel moet bevatten. In ons geval bevat de module bijvoorbeeld alle mogelijke code die met palindromen te maken heeft. Als we daarnaast ook code voor anagrammen zouden willen toevoegen, doe je dat het best in een afzonderlijke module, anagram.py.

Systeeminformatie

Python zelf bestaat ook uit een heleboel standaardmodules waarin allerlei handige functies zitten. Zo is er de module platform om informatie over het platform waarop je Python-programma draait op te vragen:

>>> import platform>>> platform.architecture()('64bit', 'ELF')>>> platform.platform()'Linux-4.15.0-33-generic-x86_64-with-Ubuntu-18.04-bionic'>>> platform.processor()'x86_64'>>> platform.python_version()'3.6.7'>>> platform.system()'Linux'

Verder bevat de standaardmodule os allerlei functies die met het besturingssysteem te maken hebben. Zo kun je een lijst opvragen van de bestanden in de huidige directory:

>>> import os>>> os.listdir()['palindroom.py', 'test_palindroom.py']

Werken met getallen

Als je met getallen wilt werken, komt de module math goed van pas. Die bevat allerlei functies voor berekeningen, zoals je in het volgende voorbeeld ziet:

>>> import math>>> math.floor(4.3)4>>> math.ceil(4.3)5>>> math.gcd(28, 12)4>>> math.sqrt(2)1.4142135623730951>>> math.e2.718281828459045>>> math.pi3.141592653589793>>> math.sin(2*math.pi)-2.4492935982947064e-16

In de laatste regel zie je al een nadeel van berekeningen met floats: door afrondingsfouten geeft de berekening van de sinus van 2 keer pi een heel klein getal (-2 en nog iets maal 10 tot de -16de macht) in plaats van het juiste resultaat 0.

Een andere nuttige module is random, waarmee je willekeurige getallen kunt genereren:

>>> import random>>> random.randint(1, 10)7>>> random.choice(['lies', 'jan', 'kees', 'mireille', 'koen', 'rob'])'rob'>>> namen = ['lies', 'jan', 'kees', 'mireille', 'koen', 'rob']>>> random.shuffle(namen)>>> namen['jan', 'rob', 'koen', 'mireille', 'lies', 'kees']

Zo geeft de functie randint(a, b) een willekeurig geheel getal tussen a en b terug (a en b inbegrepen). Met choice kies je een willekeurig element uit een lijst. En met shuffle schud je een lijst willekeurig door elkaar.

Samenvatting

In deze les heb je geleerd om je Python-code wat meer te structureren. Enerzijds heb je berekeningen die je vaak herhaalt in functies leren opnemen. Anderzijds heb je geleerd hoe je functies die bij elkaar horen kunt afscheiden in een afzonderlijke module. We hebben tot slot ook met enkele standaardmodules van Python kennisgemaakt. In de volgende les gaan we op de structuur van datatypes in: we tonen je hoe je zelf eigen datatypes kunt definiëren in de vorm van klassen.

Opdracht

Open de module palindroom.py in Thonny en voer ze uit met een druk op F5. Voer in de terminal onderaan de volgende opdrachten in: *>>> is_palindroom('parterretrap')True>>> woord**Traceback (most recent call last):**File "

Uitwerking

De parameter woord in de functie is een lokale variabele: die is alleen binnen het blok van de functie gedefinieerd. Als je de functie met het argument 'parterretrap' oproept, wordt die string in de functie aan de lokale variabele woord toegekend, maar na het uitvoeren van de functie is die variabele niet meer beschikbaar en geeft Python dus met een NameError aan dat het de naam woord niet kent.

Cheatsheet

Functie: een afzonderlijk stukje code dat je meerdere keren uitvoert. Importeren: aangeven dat je een module wilt gebruiken. Lokale variabele: een variabele die alleen binnen een specifiek blok (bijvoorbeeld van een functie) gedefinieerd is. Module: een afzonderlijk bestand met Python-code. Recursieve functie: een functie die zichzelf aanroept.

▼ Volgende artikel
Wasbaar dekbed: handig of juist niet?
© ID.nl
Huis

Wasbaar dekbed: handig of juist niet?

Een wasbaar dekbed combineert de vulling en de hoes tot één geheel, waardoor je nooit meer hoeft te worstelen met losse dekbedhoezen. Het klinkt als een uitkomst: even in de wasmachine, drogen, klaar. Maar werkt dat in de praktijk echt zo prettig als het lijkt? En past zo'n alles-in-één-oplossing wel bij jouw manier van slapen en wassen? We zetten alles voor je op een rij.

In dit artikel

Een dekbed dat je zó uit de kast op bed legt, zonder gedoe met hoezen – het klinkt ideaal. Maar werkt dat in de praktijk echt zo prettig? In dit artikel lees je wat een wasbaar dekbed precies is, wanneer het handig is én in welke situaties je toch beter bij je vertrouwde dekbed en overtrek blijft.

Lees ook: Dekbed in de wasdroger: helpt een tennisbal echt?

Nooit meer elke week dat gedoe met je beddengoed

Iedereen kent het wel: je staat te kl&^!@en met een dekbed dat niet in de hoes wil glijden. Het is een klusje waar bijna niemand blij van wordt. Het wasbare dekbed - ook wel bekend als 'coverless duvet' of 'dekbed zonder overtrek' - belooft daar een einde aan te maken. De buitenkant fungeert eigenlijk als een vaste hoes: je slaapt er direct onder, zonder extra overtrek. Maar dat roept wel de vraag op: hoe houd je zo'n all-in-one dekbed fris en schoon? En hoe makkelijk krijg je het eigenlijk weer droog?

Dekbed en hoes inéén

Een wasbaar dekbed is in feite een dekbed met een vaste, zachte buitenlaag waar je direct onder slaapt. De vulling – meestal van zachte vezels – is slim doorgestikt, zodat het dekbed zijn vorm behoudt en overal even comfortabel aanvoelt. In Nederland worden dit soort dekbedden op de markt gebracht door onder andere Zelesta en Happybed.

Eindelijk je bed verschonen zonder stress

Voor sommige mensen is dit dekbed een echte uitkomst. Als je minder kracht hebt of snel last krijgt van je gewrichten, is het heerlijk dat je niet hoeft te trekken en te schudden. Ook in krappe ruimtes - zoals een caravan of camper - is het handig dat je niet hoeft te manoeuvreren met losse hoezen. Voor een logeerbed is het bovendien ideaal: je pakt het uit de kast, legt het neer en het ziet er meteen netjes en uitnodigend uit.

Wasbaar dekbed zonder overtrek: hygiënisch of juist niet?

Een veelgehoorde gedachte is dat een wasbaar dekbed minder hygiënisch zou zijn dan een dekbed met losse hoes. Maar juist het tegenovergestelde is waar: omdat je telkens het hele dekbed met vulling en al in de wasmachine stopt, blijft alles een stuk frisser. Heb je een dekbed met een aparte hoes, dan was je die hoes waarschijnlijk eens per week of twee weken, maar het dekbed zelf, dat doen de meeste mensen misschien maar een paar keer per jaar in de wasmachine.

Zolang je wasmachine meewerkt …

Geen gedoe met opmaken dus, maar het wassen kan nog wel een uitdaging zijn. Een tweepersoons wasbaar dekbed neemt flink wat ruimte in en past lang niet in elke wasmachine. In een kleinere trommel kan de vulling het water en wasmiddel nauwelijks opnemen. Het wordt dan wel nat, maar niet echt schoon. Ook het drogen vraagt wat extra geduld: doordat de vulling vastzit aan de buitenkant, duurt het langer voordat het hele dekbed echt goed droog is.

Voor wie een wasbaar dekbed niet handig is

Een wasbaar dekbed klinkt misschien als dé oplossing, maar het is niet voor iedereen even praktisch. Heb je een kleine wasmachine met een trommel van minder dan 8 kilo, dan is de kans groot dat een tweepersoons dekbed er simpelweg niet in past. En zonder droger kan het behoorlijk lastig zijn om zo'n gevuld dekbed weer goed droog te krijgen. Blijft het te lang vochtig, dan loop je bovendien het risico dan het dekbed muffig gaat ruiken.

Ook als je het 's nachts snel warm hebt, is het goed om even stil te staan bij het materiaal. De meeste wasbare dekbedden zijn gemaakt van polyester, wat minder goed ademt dan bijvoorbeeld katoen of wol. Dat kan broeierig aanvoelen, zeker in de zomer. En houd je van variatie in kleur en stijl op bed? Met dit type dekbed ben je gebonden aan één look. De buitenkant is namelijk ook meteen het uiterlijk van je bed, en wisselen van stijl betekent meteen een nieuw dekbed kopen.

Zo bepaal je of een wasbaar dekbed iets voor jou is

Of een wasbaar dekbed bij je past, hangt vooral af van je gewoontes. Wil je regelmatig een andere look in je slaapkamer? Heb je genoeg ruimte én de juiste apparatuur (zoals een wasmachine met een grote trommel) om zo'n dekbed goed te wassen en te drogen? In een druk huishouden, waar de wasmachine al overuren draait, kan een dekbed met lange droogtijd onhandig zijn. Maar woon je alleen of heb je een goede droger, en wil je vooral minder gedoe met bedden opmaken? Dan kun je jezelf met een wasbaar dekbed ergernis besparen.

▼ Volgende artikel
Wat is er nieuw in GTA Online? - Updates, Social Club en de toekomst na GTA 6
© Rockstar Games
Huis

Wat is er nieuw in GTA Online? - Updates, Social Club en de toekomst na GTA 6

Grand Theft Auto 6 komt met iedere dag een beetje dichterbij, en terwijl Rockstar Games alles op alles zet om de game op tijd af te krijgen wordt er ook nog altijd toegevoegd aan Grand Theft Auto Online. De game is een gigantische bron van inkomsten voor het bedrijf, en er wordt nog altijd content aan het spel toegevoegd.

Grand Theft Auto Online in een notendop

GTA Online is de multiplayermodus die op 1 oktober 2013 beschikbaar werd gemaakt als onderdeel van GTA 5, een paar weken na de lancering van die game. In 2022 werd een standalone versie van de online modus uitgebracht, waarbij het singleplayerverhaal niet inbegrepen is. GTA 5 en GTA Online werden al geruime tijd als losse entiteiten gezien, maar zijn sindsdien dus ook echt van elkaar losgetrokken.

Wat is er nieuw deze week? 

Een van de redenen achter het continue succes van GTA Online is de constante stroom aan content die Rockstar Games in het spel pompt. Er zijn iedere week wel events en speciale missies te voltooien, en het bedrijf brengt regelmatig grotere uitbreidingen uit met verhalende missies en nieuwe operaties om vrij te spelen. Voor iedereen die bijvoorbeeld iedere dag zijn social media-feeds ververst voor de nieuwe GTA 6-trailer heeft de game veel te bieden. 

Ook deze week is er weer veel gaande in GTA Online, namelijk: 

  • Drie legale Odd Jobs toegevoegd: Firefighter, Forklift Operator en Paper Route - deze scharen zich achter de al bestaande PharmaQuick, SafeGuard Deliveries en Pizza This…-klussen 

    • Je krijgt deze week dubbele in-game dollars en Reputation Points tijdens het uitvoeren van deze Odd Jobs

  • Productiesnelheid van cocaïne is verdubbeld, en kan voor Mansion-eigenaars nog sneller

  • Verdubbelde beloningen voor Community Races

©Rockstar Games

Deze week beschikbaar in de Gun Van: 

  • Service Carbine (met 50% korting)  

  • Military Rifle (met 30% korting voor GTA+-leden)  

  • Compact EMP Launcher 

  • Sweeper Shotgun 

  • Combat PDW 

  • Switchblade 

  • Proximity Mines 

  • Sticky Bombs 

  • Tear Gas

Deze voertuigen zijn deze week in de aanbieding:

  • Pegassi Zorrusso (Super) – 30% korting

  • MTL Dune (Off-Road) – 30% korting

  • Nagasaki Outlaw (Off-Road) – 30% korting

  • Blimp (Plane) – 30% korting

  • Buckingham Shamal (Plane) – 30% korting

  • Dinka Veto Modern (Sports) – 30% korting

  • Declasse Hotring Sabre (Sports) – 30% korting

  • Übermacht Sentinel Classic (Sports) – 30% korting

  • Grotti Cheetah (Super) – 30% korting

  • Canis Freecrawler (Off-Road) – 30% korting

Verdere beloningen:

  • Gratis brandweeroutfit voor het voltooien van 25 brandweerklussen

  • Gratis Alpha Mail Warehouse-outfit voor het voltooien van vijf heftruckklussen

  • Bezorg vijf pizza's om een T-shirt van Pizza This en een driedubbele Weekly Challenge-bonus van GTA$ 300K te verdienen

De specifieke details van deze week lees je hier.

©Rockstar Games

Recente updates: 

Mansion Raid:Een nieuwe PvP-modus is Mansion Raid, waarin twee teams het tegen elkaar opnemen. Het ene team probeert een Mansion binnen te komen, de kluis te bereiken en te ontsnappen met de buit terwijl het andere team dit probeert te voorkomen. Mansions zijn groot, maar de gangen zijn nauw, dus een vijand kan je om iedere hoek verrassen. 

A Safe House in the Hills: Met deze update is het mogelijk voor spelers om een speciale Mansion aan te schaffen in de rijke buurten van Los Santos. Wie een Mansion koopt krijgt een bekend gezicht te zien: Michael De Santa en zijn vrouw Amanda - uit het verhaal van GTA 5 - introduceren je tot dit rijke leven. Verder is de KnoWay Out-missieketen toegevoegd en is de Rockstar Mission Creator geïntroduceerd, waarmee spelers hun eigen missies kunnen bouwen. 

Watch on YouTube

Hoe werkt GTA Online?

In GTA Online beleef je net als in de meeste GTA-games het leven van een crimineel in een grote stad, die een naam voor zichzelf maakt en - hopelijk - bakken met geld verdient. In tegenstelling tot de meeste GTA-games doe je dit echter in een wereld waar ook andere spelers in rondlopen, met dezelfde doelen als jij. 

De gameplaycyclus bestaat voornamelijk uit het uitvoeren van missies om geld en RP  - ofwel Reputation Points - te verdienen, om langzaam maar zeker toegang te krijgen tot grotere missies en nieuwe businesses. Net als in singleplayer GTA-games zijn er heists uit te voeren die grote bedragen opleveren, maar het is daarbij ook mogelijk een eigen crimineel imperium op te bouwen. Zo koop je locaties waarin dan bijvoorbeeld drugs worden geproduceerd, die je later kunt verkopen. Tijdens het bevoorraden van je locaties en verkopen van je producten is het daarentegen altijd mogelijk dat andere spelers je proberen te dwarsbomen. 

Verder bestaat de GTA Online-ervaring ook uit community-gedreven content, bijvoorbeeld in de vorm van online races die door spelers zijn gemaakt of verschillende roleplay-servers die in recente jaren steeds populairder zijn geworden. Hierin doen spelers alsof ze daadwerkelijk het personage zijn dat ze spelen, waarmee zij dan een gezamenlijk verhaal creëren. 

©Rockstar Games

GTA+ en Shark Cards

GTA Online is een monstersucces gebleken voor Rockstar, met name dankzij de Shark Cards - microtransacties waarvoor spelers echt geld betalen om direct virtuele GTA-dollars op hun in-game bankrekening te storten. Gezien grote bedragen bij elkaar sparen in de game best lang kan duren, betalen genoeg spelers graag voor zo’n ‘buffertje’. Er zijn verschillende soorten Shark Cards beschikbaar: 

  • Tiger Shark Cash Card - 150.000 in-game dollars | 3,99 euro

  • Bull Shark Cash Card - 600.000 in-game dollars | 7,49 euro

  • Great White Shark Cash Card - 1.500.000 in-game dollars | 14,99 euro

  • Whale Shark Cash Card - 4.250.000 in-game dollars | 37,99 euro

  • Megalodon Shark Cash Card - 10.000.000 | 74,99 euro

Een nieuwe bron van inkomsten is GTA+, een abonnement dat 7,99 euro per maand kost en toegang geeft tot verschillende extra’s in GTA Online en een aantal klassieke Rockstar-games. Het abonnement is beschikbaar op PlayStation 5, Xbox Series X en S en pc.

De voordelen van GTA+ bestaan uit 500.000 in-game dollars, die iedere maand op de virtuele bankrekening worden gestort en toegang tot extra’s via The Vinewood Club. Zo kunnen spelers tot 100 voertuigen opslaan in een exclusieve garage, is er exclusieve korting op geselecteerde items en krijgen zij toegang tot een app op de in-game telefoon waarmee zij hun businesses snel kunnen beheren - in plaats van naar iedere locatie te rijden. Nog meer van de voordelen in GTA Online vind je onderaan deze pagina

©Rockstar Games

Daarbij krijgen GTA+-leden iedere maand gratis cosmetics en voertuigen. Tot 4 februari zijn de volgende spullen te claimen als je een abonnement hebt: 

  • Pfister Astrale (voertuig)

  • Cream Pearl Chameleon Paint (Verf voor op een voertuig)

  • Wheel Paint (Verf voor op een voertuig)

Het abonnement biedt overigens ook iets buiten GTA Online. Op het platform waarop je GTA+ afsluit zijn dan namelijk ook een aantal klassieke Rockstar-games te spelen. Die titels zijn:

  • Red Dead Redemption

  • Grand Theft Auto: Vice City - The Definitive Edition

  • Grand Theft Auto 3 - The Definitive Edition

  • Bully 

  • L.A. Noire

  • Grand Theft Auto: The Trilogy - The Definitive Edition (bevat ook bovenstaande GTA-games, plus de remaster van GTA: San Andreas

  • GTA Online (voor wie de game niet apart wil aanschaffen. 

GTA Online na de release van GTA 6

Door de hierboven genoemde Shark Cards en GTA+ blijft GTA Online een ontzettendwaardevolle bron van inkomsten voor Rockstar Games. Veel mensen vragen zich dan ook af wat er met de modus gaat gebeuren wanneer het langverwachte Grand Theft Auto 6 uitkomt. Historisch gezien kregen GTA 4, GTA 5 en Red Dead Redemption 2 namelijk ook een eigen online modus na release.

©Rockstar Games

Hoewel de komst van een onlinemodus voor GTA 6 nog niet is bevestigd, is de verwachting wel dat die er uiteindelijk komt. Wat dat betekent voor de ondersteuning van GTA Online is onbekend, al zei Take-Two's CEO Strauss Zelnick in een interview met IGN het volgende op de vraag of GTA Online wordt afgesloten:

"Ik ga theoretisch spreken, want ik ga het niet hebben over een specifiek project als daar nog geen aankondiging van is gedaan, maar over het algemeen onderhouden we onze projecten wanneer de consumenten nog steeds met die titels bezig zijn."

De spelersaantallen van GTA Online en bijbehorende inkomsten zullen met de release van GTA 6 niet in één klap wegvallen, dus het lijkt logisch dat Rockstar de online-modus nog een tijdlang blijft ondersteunen.