|
Polski Portal COLOBOTa COLOBOT Polish Portal |
|
COLOBOT 2 - Metody programowania w C2
konopackim - 17-09-2012, 00:51 Temat postu: Metody programowania w C2 Zakładam ten temat aby pokazać Wam coś, co mogłoby być bardzo ciekawe w Colobocie a mianowicie programowanie graficzne
http://www.youtube.com/watch?v=impPTmfm-Kg
LabView jest reprezentatywnym produktem tego pomysłu.
Na internetach jest mnóśtwo materiałówo tym
Mogłoby to wprowadzić zupełnie nowe podejście do programowania a także inne możliwości dla samej gry (Tablety, konsole z innowacyjnymi kontrolerami)
PoxiPol - 17-09-2012, 17:23
Moze i ladnie, ale mimo wszystko wolal bym kodowanie tekstowe. Akurat pomysl do mozliwosci programowania jakichs wlasnych robotow dzieki grze jest ciekawe.
Dzisiaj mialem taki pomysl. W C2, na poczatku dostajemy robota. Ale nim sie nie da sterowac. Problem jest w tym, ze trzeba zaprogramowac i to! Tutorial daje nam jakies zmienne i inne ktore kontroluja silnikiem, i input. Wtedy gracz musi zrobic program ktory powoduje ze sam gracz moze kontrolowac robotem. Programy takie byly by pozniej dostepne w kazdej misji dalej. Albo jak ktos chce, to moze od razu robic roboty ktore robia wszystko automatycznie. Mozna by bylo wtedy dodac graczom mozliwosc tworzenia funkcji i metod, aby sobie ulatwic sprawe. Chodzi mi o to, ze nie ma funkcji
move();
ale mozna sobie taka zdefiniowac laczac razem
power_wheel(front, left, x);
power_wheel(front, right, x);
albo
power_wheel(back, left, x);
power_wheel(back, right, x);
Co moglo by tez miec efekt na styl jazdy robota : D
Co pozniej moze sie stac, to zrobic produkcje robotow na wieksza skale. Czyli powiedzmy, jest misja gdzie atakuja nas kosmici, ale wielkimi ilosciami. Na szczescie, wyslalismy w orbite satelite, ktora pozwala nam patrzec na planete z gory. Wtedy, mozna np zaprogramowac roboty ponownie, aby dzialaly badziej jak w grze strategicznej, ze wybierasz iles ich tam, i wysylasz w dany punkt aby cos zrobily.
Automatyczne produkowanie robotow, zbieranie i kopanie surowcow itd itp...
Jak dla mnie, taka gra byla by bardzo ciekawa, i wtedy zgadki logiczne mozna by bylo wziasc na nastepny poziom. W oryginale nie ma zbytnio wiecej strategii, niz zbudowac budynki (po jednym) w odpowiedniej kolejnosci, a pozniej moze napisac prosty program gdzie robot przerabia titanium ore na kostki.
Mrocza - 17-09-2012, 17:45
Gra musi być możliwa do przejścia bez umiejętności programowania.
PoxiPol - 17-09-2012, 18:03
Niby dlaczego? Przecie o to chodzi w grze.
To mozna zrobic poziomy trudnosci:
Dzieciecy, gdzie wszystko jest recznie, a roboty maja gotowe programy.
Latwy, gdzie mimo wszystko jest recznie, ale roboty mozna programowac na styl 'clickow' czy 'klockow', gdzie w odpowiedniej kolejnosci drag i dropujemy komendy.
Normalny, gdzie jest jak w Oryginale.
i
Trudny, gdzie jest uzywany moj pomysl.
Tutaj bardziej chcialem zaprezentowac trez mozliwosc na patrzenia na misje z gory, dodajac troche wiecej elementow gry strategicznej.
Na prawde mi sie wydaje ze pomysl ma potencjal, mimo ze moze i jest to troche nieskromne, ale nawet z pewnymi zmianami, bardzo bym chcial w takie cos zagrac. My chcemy pokazac ze z programowania mozna miec frajde!
konopackim - 17-09-2012, 18:18
PoxiPol napisał/a: | Moze i ladnie, ale mimo wszystko wolal bym kodowanie tekstowe. Akurat pomysl do mozliwosci programowania jakichs wlasnych robotow dzieki grze jest ciekawe. |
To prawda nic nie zastąpi zwykłego tekstu. Ale z drugiej strony musimy też patrzeć do kogo będzie skierowany Colobot (w pierwszej kolejności do nas to oczywiste :p ). Młode osoby (dzieci) do lat 13 będą miałe spore problemy z ogranięciem tekstowych programów. Sam pamiętam, że moje programowanie ColoBota to było głównie przechodzenie klawiaturą i myszką.
Nie mam oczywiście na myśli aby zastąpić stare tym nowym, tylko dodać funkcjonalność.
Kilka linków o których wczoraj zapomniałem
http://scratch.mit.edu/
http://code.google.com/p/blockly/?redir=1
Low-levelowe podejście do programowania robotów jest bardzo fajnym pomysłem. Pomysł też był już kiedyś wspominany na ircu. Na hardorowym poziomie trudności, fizyka świata mogłaby ulec urzeczywistnieniu, co wiązałoby się z bardziej precyzyjnym pisaniem programów
Tworzenie robotów w skali masowej i programowanie kazdego osobno w samej grze mogłoby stanowić wyzwanie od strony wydajnościowej
PoxiPol - 17-09-2012, 18:34
Albo nawet najtrudniejszy poziom trudnosci powoduje ze musi sprawdzac temperatury komponentow robota, oszczedzac energie, czy nawet kontrolowac kazdy 'miesien' robota (przechylac 1 staw, 2 staw, zacisnac czesc od lapania, nie wiem jak to wytlumaczyc, chodzi mi o grabbera, ze trzeba mu tlumaczyc w jaki sposob podniesc obiekt).
Oczywiscie pomysl bedzie zalezny od silnika : ) Ale pomysl na przyszlosc mam nadzieje.
Raptor - 17-09-2012, 18:40
Moim zdaniem to bardzo dobra idea. Warto spróbować, zobaczymy co wyjdzie.
patrolez - 17-09-2012, 22:09
Jak ma się lekcje programowania, to na początku jest prosta algorytmika na schematach blokowych.
Zawsze może być tutorial, gdzie astronauta ma szkolenie i wszystko odbywa się na papierze - w interaktywnym podręczniku, gdzie będą zadania do uzupełniania o schematy blokowe, które mają realizować określone cele - oczywiście poprzedzone przykładami.
Na przykład: strona teoretyczna na lewej kartce i interaktywna realizacja zadania na prawej.
Np. kartka z zadaniem w stylu przeciągnij i upuść z blokiem warunkowym, startem itp. jako taka układanka, gdzie samemu trzeba uzupełnić dane i obliczenia oraz warunek.
Oczywiście z możliwością pominięcia.
Może być motyw, że mamy widok z oczu astronauty, który siedzi nad takim podręcznikiem - oczywiście interakcja jest -> oczy śledzą kursor i ciagle działą ta metoda przeciągnij i upuść, a za oknem "szkoły" / pomieszczenia w którym się uczy, jeżdżą roboty, żeby zachęcić Albo odbywają się eksperymenty / szkolenia z jetpackiem i różne takie. Można też coś komicznego dodać jako ester egga.
Mrocza - 17-09-2012, 22:16
I to jest dobry pomysł.
PoxiPol - 18-09-2012, 08:42
Zgadzam sie. Ale takie cos powinno byc opcjonalne, ktos kto jest w temacie, a po prostu jest zainteresowany gra, nie powinien byc uczony jak dziala petla. Po prostu dajemy mu zmienne i funkcje, a ten sobie programuje.
W tutorialu po prostu osoba uczy sie ideologii programowania. W nim, mozna uzyc klockow, ale rownie dobrze mozna pisac, w tym podreczniku bylo by takie porownanie, 'Ten klocek to ta funkcja'.
I wtedy, mozna sobie komplikowac sprawe jak chcemy. W takim tutku wytlumaczyli bysmy jak stworzyc kontrole robota, i to bedzie pierwsze zadanie w juz kampanii.
Rozumiem Mrocza ze moj pomysl ci si enie podoba, ale nie chcesz zbytnio nic mowic, odpowiadasz tylko 1 zdaniowkami : P
Mrocza - 18-09-2012, 09:58
Chodzi mi o to, że nie wolno przesadzać. Gra w której będzie za dużo programowania nie zdobędzie dużej popularności. Zauważ, że my jesteśmy wyjątkową grupą osób. Przeciętny pożeracz gierek nie zna się na programowaniu i zapewne włączając grę nie ma na celu się uczyć. Jak będzie stało, że to gra edukacyjna to niektórzy mogą zrezygnować zanim zaczną.
Colobot jest oryginalnym połączeniem RTSa i FPSa z elementami programowania. Jeżeli któryś element będzie przeważał zniechęci zwolenników pozostałych elementów.
I tak jeżeli dodamy zbyt dużo programowania to gra stanie się ciężka dla mniej ambitnych graczy.
Oryginalny Colobot ma tyle programowania ile trzeba. Całą kampanię można przejść używając tylko programów z SatCOMa.
PoxiPol - 18-09-2012, 13:00
No tak. I dlatego proponowalem rozne poziomy trudnosci, bo mimo wszystko, mamy tylko ta mniejszosc graczy co jest nami zainteresowani, a wiekszoscs tej mniejszosci by lubiala taki challenge. In my opinion.
Nie oszykujmy sie, nasza gra nie bedzie miala wielkiego sukcesu, przez jak to juz mi tlumaczyliscie 'Casualowych graczy': Dzieci, ktore kochaja swoje CoDy, a rodzice placa im za Xbox Live, i kazdy nowy product Apple. Wiec to co mozemy zrobic, to zadowolic nasza mniejszosc, i ich kompletnie zasycic.
KulikStudios - 18-09-2012, 13:26
Colobot chyba nigdy nie był grą uwielbianą przez masy. Nasz wysiłek będzie skierowany w zamknięte kręgi świrów komputerowych.
W życiu poznałem dwóch kumpli, którzy w colobota grali, z czego jeden mówił, że to gówno i nie rozumie o co w tym chodzi.
Simbax - 18-09-2012, 13:35
C2 to ma właśnie zmienić. Poza tym Colobot miał po prostu słabą reklamę...
Raptor - 18-09-2012, 13:48
Produkt EPSITEC po prostu był nisko (średnio?) budżetową produkcją, która nie miała najprawdopodobniej dystrybucji nawet w Stanach. Nie wyszedł poza ramy Europy i Rosji. I tak dziwne, że w CD-A i innych znanych pismach były o nim wzmianki, nawet recenzje.
patrolez - 18-09-2012, 13:50
Może jeżeli miałby by już istnieć gotowce za wszelką cenę, to jakaś mini gierka aby zdobyć dane kody -> np. astronauta miałby zapisane je w jakimś notatniku, który się jakoś "rozpołowił", że dolne części kodu gdzieś wywiało z wiatrem i np. fabularnie utknęły w tym i w tym miejscu. Postęp szukania kodów wykładniczy, bo po odnalezieniu jednego, możemy zaprogramować robota / np. jak będzie fragment w niedostępnym miejscu dla astronauty to szukać robotem.
Jeżeli miałyby być właśnie gotowe kody - to musiałoby być jakieś utrudnienie skoro fabuła ColoBota jest liniowa.
Albo gotowe fragmenty algorytmów, które trzeba by uzupełnić.
Simbax - 18-09-2012, 15:53
A i jeszcze Colobot miał taką małą popularność i dużo ludzi (znam tylko takich ) po prostu nie ogarniało, o co w tej grze chodzi. Dlatego już w Goldzie powinien być co najmniej nowy początek i sensowny samouczek.
tomangelo - 18-09-2012, 16:07
Po mojemu to powinna być możliwość wyboru trybu programowania, algorytmiczny, gdzie po prostu przesuwamy i łączymy ze sobą klocki, tradycyjny, jak w oryginalnym Colobocie, oraz jakiś bardziej zaawansowany, dający pełną władzę nad robotem, np. możliwość kontroli szybkości ruchu ramienia, w międzyczasie gdy ramię się opuszcza możliwość ruchu robotem itd.
KulikStudios - 18-09-2012, 20:05
Czyżbyśmy dążyli znów do gier Source? Tym razem myślę o Portalu i jego mini filmikach informacyjnych.
PoxiPol - 18-09-2012, 21:21
Niby w jaki sposob?
dawid960 - 16-10-2012, 10:45
ja bym chciał żeby w colobot 2 i gold była funkcja build();
|
|