Autor Wątek: Pomysł na grę - "I can see the code"  (Przeczytany 6494 razy)

Offline Xirdus

  • Moderator

  • +3
# Styczeń 17, 2015, 18:47:58
Natchniony grą Untrusted wpadłem na pomysł pewnej gry dla programistów.

W skrócie - FPS w stylu tych wszystkich strzelanek z początku wieku, z tym że gracz miałby możliwość przerabiania skryptów gry. Tzn. gdy spotka jakiegoś wroga, będzie mógł podejrzeć strukturę obiektu tego wroga - parametry, wyposażenie itd. - oraz skrypty AI. Na ich podstawie mógłby pisać własne funkcje i podpinać je pod poszczególne klawisze, lub też przerabiać swoją postać - np. dać sobie rakietnicę którą miał przeciwnik, a R zmienić z przeładowania na natychmiastowe odnowienie amunicji. Wraz z przechodzeniem kolejnych poziomów, gracz dowiadywałby się o coraz to nowych API - co będzie pozwalało na pisanie bardziej skomplikowanych funkcji niedostępnych na początku, np. zrobienie pistoletu który naraz strzela dwunastoma samonaprawadzającymi kulami. Oczywiście będą sztuczne limity na to co gracz może zrobić (można używać tylko tych funkcji które się widziało, limit długości kodu który zwiększałby się z rozwojem postaci, dostęp do nowych zmiennych).

Taki luźny pomysł. Co sądzicie?

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Kyroaku

  • Użytkownik

  • +1
# Styczeń 17, 2015, 19:05:43
Mysle, ze kazdy po zagraniu w Unstrusted pomyslal o grze w tym stylu :D Nie mniej jednak, podoba mi sie to, ze wybrales FPS, poniewaz ja chyba nigdy bym nie wpadl na to, zeby gre tego typu tworzyc w tym gatunku wlasnie :) (oczywiscie nie mam nic zlego na mysli).
Mam nadzieje, ze chociaz zaczniesz ten projekt, jestem ciekaw, jak to wyjdzie.

Offline Xirdus

  • Moderator

# Styczeń 17, 2015, 19:19:08
Z tytułu wątku oczywiste chyba jest, że drugą inspiracją był Matrix ;) Niestety gra raczej nie powstanie; mam zbyt dużo rzeczy na głowie obecnie, zresztą target bardzo wąski i nie wydaje mi się żeby była opłacalna produkcja, biorąc pod uwagę jak trudno technicznie byłoby osiągnąć, żeby gra dawała dużą swobodę jednocześnie będąc odporna na "zbyt mądrych" programistów ;) Generalnie temat założyłem bo uważam że to fajny pomysł.
« Ostatnia zmiana: Styczeń 17, 2015, 19:21:19 wysłana przez Xirdus »

Offline ison

  • Użytkownik

# Styczeń 17, 2015, 20:05:05
Coś w ten deseń: http://screeps.com/

Offline revo

  • Użytkownik

# Styczeń 17, 2015, 21:29:53
Przypomniało mi to http://www.hacknslashthegame.com od Double Fine , tylko  gatuek inny (video z Kotaku).

Ogólnie pomysł ciekawy, ale prawdopodobnie zbyt skomplikowany dla większości graczy, nawet tych co programują ;)

Offline P@tyS

  • Użytkownik
    • Patys coding

# Styczeń 17, 2015, 23:44:20
Podoba mi się :D grałem w untrusted i to była fajna zabawa. To samo jako FPS - po prostu magia :)
PS: Może zrobimy to jako warsztatowy projekt (Oczywiście za zgodą Xirdusa). Na github i każdy kto coś tam umie dopisze. Przy okazji będzie to fajny eksperyment, możliwość rozwinięcia umiejętności i współpracy w grupie.

Offline Xirdus

  • Moderator

# Styczeń 18, 2015, 01:21:00
Coś w ten deseń: http://screeps.com/
Nie bardzo. W tej grze piszesz AI do swoich botów, a mi chodzi o możliwość ingerowania w świat gry.

Przypomniało mi to http://www.hacknslashthegame.com od Double Fine , tylko  gatuek inny (video z Kotaku).
W tej grze "hakowanie" sprowadza się raczej do zagadek logicznych i możliwości gracza są dość małe - nie da się chociażby zmieniać tego jak działają przedmioty którymi dysponuje gracz. Mi chodzi o takie coś, że da się modyfikować niemal wszystko.

Ogólnie pomysł ciekawy, ale prawdopodobnie zbyt skomplikowany dla większości graczy, nawet tych co programują ;)
To jest główny problem, który nie pozwala mi brać tego pomysłu na serio - jak zrobić, żeby interfejs i mechanika gry były przystępne dla gracza.

PS: Może zrobimy to jako warsztatowy projekt (Oczywiście za zgodą Xirdusa).
Róbta co chceta :)

Offline matheavyk

  • Użytkownik
    • rabagames.com

# Styczeń 18, 2015, 02:25:06
Może coś takiego, że jak się najedzie na przedmiot kursorem, a potem kliknie to pojawia się okno, w którym do poszczególnych callbacków można przypisywać (właściwie to edytować) kod:
http://i.snag.gy/aGolq.jpg (tutaj robimy skaczący samochód ;p )

To trochę ogranicza pomysł, ale za to jest dość przystępne. To mogłoby nawet być bardziej przystępne niż w grze Colobot, a dynamika FPS fajnie by równoważyła "nudę" programowania. Poza tym można np. ograniczyć czas, który mamy na edycję kodu, to byłoby takie zmęczenie (odpowiednik many, jeśli porównać magię do programowania). Kto wie, może nawet szybka edycja broni w trakcie walki wcale by wtedy nie zwalniała tempa akcji.
« Ostatnia zmiana: Styczeń 18, 2015, 02:27:21 wysłana przez matheavyk »

Offline Xirdus

  • Moderator

# Styczeń 18, 2015, 03:41:19
Może coś takiego, że jak się najedzie na przedmiot kursorem, a potem kliknie to pojawia się okno, w którym do poszczególnych callbacków można przypisywać (właściwie to edytować) kod:
http://i.snag.gy/aGolq.jpg (tutaj robimy skaczący samochód ;p )
O, dokładnie coś takiego chodziło mi po głowie. Tylko po co ograniczać się do callbacków? Pozwólmy edytować całe definicje obiektów! :)

Poza tym można np. ograniczyć czas, który mamy na edycję kodu, to byłoby takie zmęczenie (odpowiednik many, jeśli porównać magię do programowania). Kto wie, może nawet szybka edycja broni w trakcie walki wcale by wtedy nie zwalniała tempa akcji.
Wydaje mi się to złym pomysłem. Jak już, to limit długości kodu, i np. zakaz usuwania istniejącego i zakaz błędu kompilacji (jeśli wyjdzie się z edytora gdy kod się nie kompiluje, wraca on do poprzedniego stanu). Oryginalnie myślałem, żeby była pauza na czas programowania, ale jeśli miałoby się zachować dynamikę, stukrotny slow motion chyba lepiej by się sprawdził. Programowanie wymaga czasu :)

Offline Xender

  • Użytkownik

# Styczeń 18, 2015, 14:38:38
zakaz błędu kompilacji (jeśli wyjdzie się z edytora gdy kod się nie kompiluje, wraca on do poprzedniego stanu).

Wariacja na temat tego pomysłu: grę napisać w Pythonie. Skryptować w Pythonie... z dodatkami.
https://github.com/munificent/vigil :3

Bonus na osadzenie gry w tematyce krucjat (pewnie trzeba by zrezygnować z FPS na rzecz innego gameplayu).

Offline Xirdus

  • Moderator

# Styczeń 18, 2015, 14:46:01
https://github.com/munificent/vigil :3
Haha :D

Bardziej mi chodziło o to, że jak podczas klepania kliknie się "zapisz" a kod jest niepoprawny, to normalnie nic nie znika, można spokojnie poprawić - ale jeśli gracz sobie pisze mega przybajerzony skrypcior, i widzi że ktoś mu pod nogi rzucił granat, to żeby gracz miał możliwość ucieczki, a robot którego edytował nie został sparaliżowany.

Offline Kyroaku

  • Użytkownik

# Styczeń 18, 2015, 15:58:39
To moze i ja dorzuce sie do puli pomyslow :) A moze niech obiekt (np. ten wasz robot, czy co tam...) nie trzyma kodu, ktory klepiemy, a gracz bedzie mial ze soba komputer, gdzie bedzie mogl zapisywac programy :)
Cos w kierunku:
komputer gracza -> create program -> klepiemy kod -> transfer to... -> program zostal przeslany do obiektu. Kazdy obiekt moze miec hardkodowany program defaultowy i tak jak mowisz, jesli cos pojdzie nie tak, obiekt wgrywa ten wlasnie program :P
Wtedy tez gracz bedzie mogl napisac program i uzywac go jednym kliknieciem do wielu obiektow :)

[Z innej beczki]
Tak sobie mysle, gdyby taka gra byla multiplayer, mozna by fajne zasadzki robic. Np. Wgrywamy do pistoletu program, ktory wysadza obiekt w powietrze po nacisnieciu spustu i wyrzucamy bron :D Jesli ktos sie skusi, zostanie zweglony xD

Offline lukaszsa

  • Użytkownik

# Styczeń 18, 2015, 15:59:14
@Xirdus - twój pomysł przypomina mi mój pomysł:) na grę edukacyjną dla ludzi których interesuje jak działają gry.
Gra z prostą grafiką(jak na dzisiejsze czasy) w stylu Half-life prosta bez wodotrysków. Można grać i nie robić niczego edukacyjnego ale można również podchodzić do przedmiotów i podglądać kod ich działania i opisy w języku ludzkim jak to działa na przykład skrypty sztucznej inteligencji na przeciwnikach, macierze przekształceń na jakimś obiekcie który się obraca lub jakoś tam porusza i tak dalej.

Offline ShadowDancer

  • Redaktor

# Styczeń 18, 2015, 22:23:16
Problem z ograniczeniem trudności takiego FPSa. Może fajne do zaprogramowani, ale gdzie miodność?

Offline matheavyk

  • Użytkownik
    • rabagames.com

# Styczeń 19, 2015, 20:53:26
No ograniczyć można różne rzeczy:
- (jak Xirdus napisał) ograniczyć liczbę linii kodu,
- wraz ze wzrostem jakiegoś doświadczenia można używać nowego zasobu funkcji w kodzie,
- ograniczyć można obszar kodu, który możemy edytować,
- samo zrobienie multiplayera ograniczałoby czas na edycję kodu (inni gracze mogliby nas zaatakować).
Choć część tych pomysłów kłóci się oczywiście z wizją-marzeniem Xirdusa :)