Chcieliście kiedyś zrobić grę? Wiecie, mieliście jakiś pomysł genialny i w ogóle, ale bez możliwości jego realizacji, bo nie znacie się ani na programowaniu, ani na tworzeniu grafiki, ani w zasadzie na niczym, co miałoby zastosowanie w tej sytuacji? Na pewno tak. I oczywiście nic z tym nie zrobiliście, bo nie wiedzieliście jak, gdzie i czym. Szkoda. Teraz jednak z odsieczą dla waszej kreatywności nadciąga najnowsze dziecię Microsoftu, Project Spark, czyli platforma i zestaw narzędzi do tworzenia gier przygotowane z myślą o jak największej prostocie użytkowania. Oczywiście, prostota jest tutaj dość względna, bo tworzenie gry to nigdy nie jest kaszka z mlekiem i nawet jeśli Project Spark stara się jak najbardziej ten proces ułatwić i przybliżyć, to jest to mimo wszystko narzędzie skomplikowane, rozbudowane i na początku trudne do ogarnięcia poza niezbędnymi podstawami. Ale nie tak trudne jak ręczne kodowanie, czy też zabawa bardziej zaawansowanymi silnikami i narzędziami deweloperskimi.
Project Spark to platforma. Nie tylko pozwala gry tworzyć, ale też grać w te wyprodukowane przez innych użytkowników oraz bawić się w ich dekonstrukcję i przerabianie tudzież zwykłe podglądanie za pomocą jakich metod i sztuczek autorzy osiągnęli takie, a nie inne efekty, co ma spore walory edukacyjne i z pewnością przyda się w naszych własnych wyprawach na ocean grotwórstwa. A raczej nie ocean, ale całkiem spory staw.
Sercem Project Spark jest Kode, czyli uproszczony język programowania. Za jego pomocą projektujemy tak zwane "mózgi", czyli bloki kodu, który zawiaduje w naszej sparkowej grze wszystkim, co nie jest statycznym elementem krajobrazu. Ten ostatni projektuje się zresztą bardzo przyjemnie, za pomocą fajnych, przemyślanych narzędzi, które pozwalają prawie dowolnie kształtować rzeźbę terenu i jego charakter, a potem zamalowywać go różnymi rodzajami środowisk. Nie są to zwykłe tekstury, ale właśnie całe środowiska od razu - rzeki, łąki, lasy i tym podobne, które nakładamy na wcześniej przygotowany teren. Możemy robić to na różną skalę i z różną dokładnością, w zaskakująco szczegółowy sposób tworząc naszą własną mapę. Później możemy jeszcze modyfikować cały zestaw innych zmiennych, takich jak choćby pora dnia, pozycja słońca, filtry wizualne i tym podobne, w celu uzyskania całkiem unikalnego efektu. To znaczy unikalnego w narzuconych ramach, bo możemy korzystać tylko z obiektów zawartych w Project Spark, niestety. Na dodatek w podstawowej, darmowej wersji programu jest ich niezbyt wiele, a dodatkowe trzeba kupić w osobnym zestawie, pierwszym z wielu zapowiedzianych przez autorów. To, co w tym momencie jest dostępne, czy za darmo, czy za opłatą, jest utrzymane w tej samej konwencji niestety i trzeba się naprawdę sporo napracować, żeby to, co wyprodukujemy, nie wyglądało jak jakaś mniej lub bardziej dziwna wersja jednego z największych microsoftowskich hitów, czyli Fable. Od tej słodkiej, baśniowej stylistyki prawie nie ma ucieczki i dlatego większość produkcji użytkowników Project Spark wygląda tak samo. Jest tu także kilka gier, które prezentują się całkiem inaczej, ale są one pokazowymi dziełami ludzi z Team Dakota, czyli autorów samego Project Spark, którzy znają system i wszystkie jego kruczki na wylot. Wróćmy jednak do Kode.
Project Spark w świetny sposób wprowadza nas w podstawy programowania. Każda postać, czy to ta należąca do gracza, czy też wroga lub niezależna, ma własny mózg, czyli cały blok programistyczny, cały zestaw komend, który rządzi jej zachowaniem. Skonstruowany jest on na bardzo prostej zasadzie następstwa przyczyny i skutku. W Kode wszystko opiera się na zależności When-Do, czyli Gdy spełniony zostanie określony warunek, zostaje Wykonana zaplanowana czynność. Czasem są to bardzo proste instrukcje, takie jak "gdy naciskasz spację, postać wykonuje podskok", ale na tej samej zasadzie można tworzyć także o wiele bardziej zaawansowane rzeczy, takie jak chociażby cutscenki, dialogi, misje i w zasadzie wszystko inne. Poszczególne elementy, warunki, modyfikatory logiczne, wartości i pożądane rezultaty Kode dostępne są za pomocą prostego interfejsu, gdzie w kolejnych kolistych menu wybieramy odpowiednie kategorie i podkategorie komend. Jest tego tyle, że na początku będziemy potężnie przytłoczeni, ale sam system jest zaskakująco intuicyjny i przejrzysty i raz dwa załapiemy o co w nim tak naprawdę chodzi. Wykorzystywanie jego możliwości, choćby tylko tych podstawowych, przyjdzie z czasem i kolejnymi godzinami nauki oraz oglądania instruktażowych wideo w sieci tudzież śledzenia dyskusji na fanowskich forach lub czatach. Nie oszukujmy się, programowanie, nawet w maksymalnie ułatwionej i strawnej dla laika formie, czyli takiej jak w Project Spark, to nie bułka z szynką i trzeba się naprawdę przyłożyć, żeby się go nauczyć. Trzeba jednak przyznać, że Project Spark jest chyba najlepszym miejscem do takiej nauki, do ogarnięcia podstaw programowania w blokach i przestawienia swojego myślenia na nowy tor. To jest naprawdę niezłe wprowadzenie w zasady rządzące projektowaniem gry od podszewki i... obawiam się, że niewiele więcej.
Project Spark to świetne narzędzie, ale zbyt ograniczone ze wszystkich możliwych stron, by nadawało się do czegokolwiek więcej niż pierwszych kroków w nauce tego, jak się robi gry. To coś w stylu zabawy klockami Lego, która ma nas wprowadzić w architekturę i budownictwo, bo tak naprawdę to chcemy wznieść dom prawdziwy, a nie taki z klocków. Dobre miejsce by zacząć, ale nie takie, w którym chcemy pozostać. Dlaczego? Dlatego, że Project Spark jest właśnie ograniczony. Zamknięty. I to celowo.
Wspominałem już o tym, że aby uzyskać choćby pozór różnorodności w naszych kreacjach, trzeba kupić dodatkowy zestaw obiektów, tak? Niestety, to dopiero początek. Aby grać w gry stworzone przez innych, a zawierające obiekty, których sami nie posiadamy, też trzeba zapłacić, chyba że wystarczy nam pół godziny darmowego grania - a zwykle wystarczy, bo nie ma w tym momencie w Project Spark niczego, co byłoby warte więcej niż kilku minut naszej uwagi. Mniejsza jednak o to, chodzi o zasadę. Żeby choć podejrzeć Kode zastosowany w jakiejś innej grze, nie mówiąc już o zabawie z remiksowaniem go, też trzeba być posiadaczem dodatkowych elementów w niej wykorzystanych, nawet jeśli interesuje nas tylko i wyłącznie fragment, który ich wcale nie zawiera. Trochę to zniechęcające, ale można by jeszcze ewentualnie przełknąć tę całą politykę wydawcy, podobnie jak to, że wszystko co w tym momencie znajdziemy w Project Spark wygląda jak klon Fable. Polityka może się zmienić, nowe dodatki mogą wnieść nową stylistykę i inne konwencje. I może być lepiej, ciekawiej i bardziej różnorodnie. Ale szczerze wątpię, czy Microsoft zdecyduje się na pełne otwarcie platformy Project Spark jako silnika i środowiska do tworzenia gier. A bez tego nie ma szans, by ta platforma mogła naprawdę zaistnieć.
Adventure Game Studio, RPG Maker i wiele innych tego typu programów służących od wielu, wielu lat do tworzenia gier, nie mówiąc już o współczesnych propozycjach, takich jak Unity, Unreal Development Kit czy udostępniony przez Crytek najnowszy CryEngine, mają jedną cechę wspólną, która jest absolutną podstawą jeśli chodzi o tworzenie gier na serio. Jaka to cecha? Możliwość importowania i eksportowania. Możemy do nich wprowadzać nowe elementy i podobnie wynosić na zewnątrz rezultaty naszej pracy, czy to w częściach, czy też w całości, jako pełne gry. Project Spark na to nie pozwala. Chcemy mieć w grze jakiś konkretny obiekt, teksturę, animację czy cokolwiek innego? Cóż, jeśli nie ma go w ofercie, to mamy problem. Nie możemy go zaimportować z zewnątrz. I odwrotnie, nie możemy też nic wyjąć poza platformę. Nie da się wyeksportować faktycznego kodu z Kode, by ręcznie dodać jakieś potrzebne nam komendy, których twórcy nie przygotowali, ba, nie da się nawet uzyskać wydruku samego Kode w celu łatwiejszej analizy bardziej rozbudowanych i skomplikowanych bloków. Nie można też gry stworzonej w Project Spark umieścić gdziekolwiek indziej niż na tej platformie. A to od razu skazuje ją na margines, bo nikt poważny nie będzie się w Spark bawił, jeśli nie może mieć z tego samodzielnej produkcji, którą na przykład można spróbować sprzedać.
Nie łudźmy się więc, że Project Spark to coś więcej niż bardzo ciekawa, dobrze przemyślana i przyjazna dla użytkownika piaskownica do pierwszych kroków w projektowaniu gier. Piaskownica nieduża i ograniczona, ale zawierająca wystarczająco wiele piasku, łopatek, wiaderek i grabek, by móc nauczyć się jak stawiać pierwsze zamki. Niewiele więcej da się w niej zrobić, a jeśli naszym celem jest budowanie prawdziwych zamków, prawdziwych gier, to prędzej czy później będziemy musieli się z tej piaskownicy wynieść, bo nie ma ona przed sobą przyszłości.
Co nie zmienia faktu, że zdecydowanie polecam zapoznać się z Project Spark wszystkim, którzy chcieliby spróbować swoich sił w tworzeniu gier, bo daje całkiem niezły obraz tego, jak w rzeczywistości to przebiega i wygląda. Podstawowa wersja jest za darmo, wystarczy mieć Xbox One lub komputer z Windowsem 8.1 i już można się Project Spark pobawić. Niestety, jest to właśnie tak naprawdę tylko zabawka i choć ma walory edukacyjne, to nie spodziewajcie się, że w jakiś magiczny sposób pozwoli wam nagle produkować megahity. Do tego trzeba więcej nauki, więcej wysiłku, sporo talentu i także innego, lepszego, bardziej wszechstronnego niż Project Spark i przede wszystkim otwartego narzędzia.
Nowa produkcja Microsoftu ma być iskrą rzuconą na proch naszej kreatywności. Czy jednak wybuch będzie wystarczająco efektowny?