Vroeger als je met veel mensen een computerspel wilde spelen, moest je een stapel controllers hebben en die allemaal aansluiten op een apparaat (… dat blijkbaar tientallen USB-poorten had).
Die tijd is voorbij!
Sinds enkele jaren geleden bestaan er computerspellen waarbij je het programma op een computer opstart en vervolgens iedereen met zijn smartphone kan spelen.
De eerste die dit (op grote schaal) deed heette “Jackbox”. Elk jaar brengen ze een Party Pack uit met vijf spellen die je met grote groepen kan spelen door allemaal op je smartphone leuke dingen te doen. Zo kun je iets tekenen en moet de rest raden wat het is, of iedereen krijgt een vraag en degene met het leukste antwoord wint, of iedereen moet T-Shirts tekenen waar anderen dan een leuk onderschrift bij moeten bedenken, etc.
Dit vond ik zo leuk dat ik dacht: dat kan ik ook! (En mijn overmoedige brein dacht natuurlijk: maar dan beter!)
Bovendien, laten we eerlijk zijn, dacht mijn brein ook: als ik zo’n spel zelf maak, hoef ik er niet voor te betalen. Zo ontstond “Project Trampolinedraak”.
Wat is het?
Trampolinedraak is een partyspel (door mij geprogrammeerd) waarbij alle spelers met hun eigen smartphone kunnen spelen. Je hebt dus alleen een computer nodig om het spel op te starten. Het is een doodgewone website, gehost op een gratis webserver, die je met elk apparaat kan bereiken.
Hele oude apparaten kunnen het niet spelen, maar dat leek me logisch. Onze iPad thuis is zó oud dat hij alleen maar 3 versies terug van de programmeertaal ondersteunt. Daar kan ik niet omheen werken.
Omdat het op een gratis server staat, kan het maar een beperkte capaciteit aan. Hoewel ik niet verwacht dat veel mensen het tegelijkertijd zullen proberen, kan het soms gebeuren dat het 5 seconden duurt voordat een internetsignaal is verwerkt (maar, zoals ik dadelijk zal uitleggen, dat is helemaal niet erg). Ook kan het gebeuren dat de server in zijn geheel op pauze staat, omdat ik door mijn gratis uren heen ben, en dan moet je wachten tot de volgende maand :p Maar wees gerust: die kans is zeer klein.
Je kunt het spel niet met één persoon spelen. Maar dat leek me logisch.
Zo, alle negatieve kanten terzijde, laat mij uitleggen hoe het werkt! (Hieronder zijn plaatjes van een testpotje dat ik tegen mezelf speelde. Ik heb jammer genoeg geen plaatjes gemaakt van toen ik het met anderen speelde. Haalt je ook een beetje uit de gezelligheid natuurlijk.)
Hoe speel je het?
Je gaat naar de website met deze link: Trampolinedraak (Game).
Je wordt begroet door een scherm met drie opties: Create Room, Join Room, en Watch Room.
- Om het spel op te starten (op de computer) druk je op “Create Room”
- Het spel wordt aangemaakt op de server; als dat klaar is krijg je een “Room Code” teruggestuurd.
- Iedereen kan nu met zijn smartphone naar dezelde website gaan. Je vult de juiste “Room Code” in, kiest een leuke gebruikersnaam, drukt op “Join Room” – en voila! Je bent verbonden!
- Eenmaal verbonden wordt (op je smartphone) gevraagd of je een profielfoto wil tekenen. Dat is optioneel, maar wel aan te raden.
- De allereerste verbonden persoon wordt de “VIP”. Hij of zij is de “leider van het spel”. In dit geval krijgt diegene een knopje om het spel definitief te starten. Het is natuurlijk de bedoeling dat je wacht tot alle spelers binnen zijn (het computerscherm laat automatisch zien wie al verbonden is en wat hun profielfoto is).
Vanaf het moment dat de VIP het spel start, wordt op je smartphone duidelijk aangegeven wat je moet doen. De voortgang (en later ook de suggesties en plaatjes en alles) wordt op het grote computerscherm getoond. Je moet het zien als mijn voorbeeld van de introductie: het computerscherm bevat het spel, de smartphones zijn slechts controllers.
Wat doet de “Watch Room”? Als je wilt kun je elk spel op meerdere schermen laten zien. Dit kan handig zijn als je een hele grote groep hebt die niet allemaal dat ene scherm kunnen zien. (Of als je in twee verschillende kamers zit, hoewel het de vraag is of het dan nog wel een gezellige party is.)
Wat als ik slecht internet heb?! Geen zorgen, daar is het tegen bestand. Als het echt zó slecht is dat je eruit wordt gegooid, kan je makkelijk weer terugkomen in het spel (door met exact dezelfde gebruikersnaam in dezelfde “room” in te loggen). Als een speler disconnect gaat het spel automatisch op pauze en worden aan de VIP instructies (en de juiste knopjes) gegeven.
Oké, maar wat houdt het spel in?
Het spel is een soort pictionary, maar dan anders (en beter!). Het spel bestaat uit de volgende rondes:
- Suggestieronde: alle spelers mogen op hun smartphone suggesties invullen. (Zoals “olifant”, of “rennend”, of “mooie”, etc.)
- Tekenronde: de server husselt alle suggesties en stuurt alle spelers een opdracht terug. Iedereen tekent nu deze opdracht op zijn smartphone (gewoon, met je vinger).
- Gokronde: als alle tekeningen binnen zijn, bepaalt de server een volgorde, en laat de eerste tekening zien. Spelers mogen nu op hun smartphone invullen wat ze denken dat het voorstelt.
- Stemronde: rondom de tekening verschijnen alle gokken van de medespelers, én natuurlijk het juiste antwoord. Iedereen mag nu op zijn smartphone stemmen op wat zij denken dat de tekening écht voorstelt.
- Resultatenronde: als alle stemmen binnen zijn wordt onthuld wat de echte titel was (en wie de andere suggesties hadden geschreven), en krijgt iedereen punten! (Als je de juiste titel hebt gegokt, krijg je veel punten. Als andere mensen jouw “leugen” hebben gegokt, krijg je ook punten.)
- We gaan nu weer terug naar de gokronde, maar dan met de volgende tekening.
- Als alle tekeningen zijn geweest gaan we naar het game over scherm.
- Game over: hier staan de eindresultaten. De VIP heeft de keuze om een nieuwe ronde te beginnen, of om het spel definitief te beëindigen.
Dat was het. Het is heel simpel, heel makkelijk uit te leggen en te spelen, maar oh zo leuk 🙂
Opmerkingen
Het spel kan er natuurlijk nog veel mooier uitzien … maar ik zie geen reden om daar nu weken aan te besteden. Ik zou het spel alleen opknappen als ik van plan was om het te verkopen, maar dat ben ik niet. Voor nu ziet alles er gewoon “oké” uit. Laat ik het zo zeggen: het spel is leuk genoeg om de kale graphics te doen vergeten :p
Misschien dat ik de komende tijd hier en daar de boel nog wel wat opvrolijk en visueel verbeter. Ik vind dat dit project dat wel verdient; ik heb er gewoon nu niet zo’n motivatie voor. Mocht je het spelen en een fout tegenkomen, of een suggestie hebben, laat het weten!
De tweede reden is dat ik dit spel eigenlijk om een andere reden heb gemaakt. Dit was meer een “experiment”. Ik wilde kijken of het mogelijk was, of het leuk was, en of een gratis server het aankon. Het antwoord op al die vragen is JA. Met deze kennis kan ik een nieuw spel maken op basis van ditzelfde framework. Oftewel: weer een partyspel waarbij iedereen met de smartphone verbindt, maar dan veel grootser dan dit simpele tekenspel.
Ik zat te denken aan dat iedereen een spion speelt, en dat je op je smartphone kunt chatten met anderen, informatie kan uitwisselen, en op het grote computerscherm ook ziet wat anderen aan het doen zijn. Uiteindelijk moet je dan als eerste de locatie van de schat zien te halen uit al die informatie.
Of, wat ik een leuker idee vind voor een partyspel: dat men in “teams” schepen bestuurt op hun smartphone. Maar, iedereen bestuurt een ander deel! Dus de ene persoon doet de kannonnen van het gele schip, iemand anders moet weer sturen, en weer iemand anders moet de kaart lezen. Uiteindelijk moet je dus zien te communiceren met elkaar zonder dat de rest weet waar je bent of wat je aan het doen bent. (En dan moet je elkaars schepen laten zinken? Of weer de schat vinden? Ik moet het nog uitwerken.)
Vooralsnog wens ik mensen veel plezier met het tekenspel. Ik zal het laten weten als het uitgebreide idee onderweg is.
Voor de programmeurs onder ons. De hele code staat op GitHub: Trampolinedraak (Source Code).
Ik heb Node.js en Socket.io gebruikt voor de serverdingen, Phaser.io voor het spel (en dan vooral het tekenen en switchen van rondes), en standaard HTML/CSS/JavaScript voor de website en de rest.
Er zijn (nog) geen reacties.