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

Offline Xirdus

  • Moderator

# Styczeń 19, 2015, 21:12:41
@matheavyk, akurat wszystkie te pomysły mi pasują. Dopisałbym jeszcze wraz ze wzrostem leveli, odblokowane nowe obszary kodu które można zmieniać.

Offline Mr. Spam

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

Offline Reg

  • Administrator
    • Adam Sawicki - Home Page

  • +1
# Styczeń 19, 2015, 23:59:29
Ja też myślałem o jakiejś grze, w której można przeprogramować skrypty obiektów. Szybko doszedłem do wniosku, że jest z tym jeden problem - w programowaniu można (celowo lub przypadkowo) wprowadzić małą zmianę, która kompletnie zmieni całość gry, np. da nieproporcjonalną przewagę albo popsuje całą mechanikę gry.

Dlatego pomyślałem, że dobrze byłoby ograniczyć możliwość tego, co taka zaprogramowana postać może robić, a także możliwość programowania wielu postaci na raz. Najczęściej wyobrażam sobie to jako jakąś grę RTS z wieloma jednostkami. Przykładowo, każda postać miałaby ograniczoną ilość energii do użycia na swoje ruchy, ograniczoną moc obliczeniową w instrukcjach na sekundę, a w przypadku strzelanki mogłaby to być ograniczona celność czy inne zmysły, żeby napisanie odpowiedniego skryptu nie pozwalało na strzelanie samych headshotów.

Podobnie, przeprogramowanie jednej postaci mogłoby wymagać fizycznego podejścia do niej, jakiegoś jej "złapania", zużycia jakiejś many czy innych punktów itp. Ewentualnie jedne postacie mogłyby swoim kodem "zarażać" inne na zasadzie roznoszenia wirusów albo przekazywania DNA przy rozmnażaniu.

Ogólnie chodzi o to, żeby nie można było sprytnym kodem od razu zmienić wszystkiego w grze, tylko napisanie lepszego programu albo wgranie go do większej liczby postaci czy potężniejszych postaci wymagało od gracza więcej wysiłku, czasu i postępu w grze, a nie tylko dobrych umiejętności programistycznych.

Offline ShadowDancer

  • Redaktor

# Styczeń 20, 2015, 10:15:22
Tylko dodanie sobie nieproporcjonalnej przewagi wcale nie musi zużywać dużo instrukcji - wystarczy zmienić jedną stałą, typu wysokość skoku, prędkość poruszania, pojemność magazynka czy obrażenia. Ewentualnie zawołać jakąś funkcję usuwającą przeciwnika.

Offline koirat

  • Użytkownik

# Styczeń 20, 2015, 10:52:37
Cały ten pomysł ma jeden poważny feler.
Po co grać w programowanie jakiejś gry dla zabawy, jak można programować w tym czasie jakąś własną produkcję.

Offline Kyroaku

  • Użytkownik

# Styczeń 20, 2015, 15:03:34
Cytuj
Cały ten pomysł ma jeden poważny feler.
Po co grać w programowanie jakiejś gry dla zabawy, jak można programować w tym czasie jakąś własną produkcję.
Po co grac w GTA i zabijac na niby, jak mozna zrobic sobie miotacz ognia domowej roboty i spalic szkole ? :);

Offline Xirdus

  • Moderator

# Styczeń 20, 2015, 15:28:27
Po co grac w GTA i zabijac na niby, jak mozna zrobic sobie miotacz ognia domowej roboty i spalic szkole ? :);
Różnica jest taka, że tutaj masz świat wirtualny vs. świat prawdziwy, a to co koirat pisał to świat wirtualny vs. świat wirtualny :)

Offline Kyroaku

  • Użytkownik

  • +1
# Styczeń 20, 2015, 15:53:23
Bez znaczenia :P GTA dla nie-terrorystow, a Twoja gra dla nie-programistow :D (nie mowie, ze terrorysta, czy programista nie moze zagrac :)). Moze faktycznie troche przesadzone porownanie, ale to tylko dla zobrazowania :P

Offline Gimer

  • Użytkownik
    • Portfolio

# Styczeń 20, 2015, 17:39:37
Może czegoś nie rozumiem ale jak uchronić grę przed graczem zmieniającym siłę ataku na 2 147 483 647?

Offline Xender

  • Użytkownik

# Styczeń 20, 2015, 20:36:29
Czemu co druga osoba tutaj chce "chronić" grę przed "nieuczciwym" graczem?

Po pierwsze (@Gimer), dość prosto - nie eksponować rdzenia gry do edycji, a jedynie skryptu pojedynczych jednostek, lub fragmenty tych skryptów.

Po drugie - po co coś tutaj "chronić"?
Grając w takie np. Battle of Wesnoth można sobie ściągnąć kod gry, przerobić i bardzo sobie ułatwić rozgrywkę. Tylko po co?

Na przykładzie przytoczonego w OP Untrusted - w jednym z issues na Githubie było, że modyfikując kod w ramach dozwolonych przez grę nadal można przejść [prawie] każdy poziom poprzez dopisanie odpowiedniego fragmentu - ale wpadnięcie na to, co dokładnie trzeba dopisać, było nietrywialne.

Zhackowanie^2 gry (w inny sposób, niż autor przewidział) nie musi wcale psuć zabawy, może być tak samo dobre, jak zhackowanie "zwykłe".

Z tego, co pamiętam, ktoś kiedyś przeszedł Portala 2 (albo 1, dunno) na glitchach w kilkanaście minut. Cheatowanie też może być sztuką. :)

Offline Xirdus

  • Moderator

  • +1
# Styczeń 20, 2015, 21:58:36
Tak ogólnie to planowałem tą grę jako "paczaj jakie fajne eksplozje zrobiłem! A nie odblokowałem jeszcze tworzenia własnych typów!" - takie bardziej pole do zabawy niż poważny tytuł. Z tym że żeby była ona sensowna, to jakąś trudność musi posiadać - stąd właśnie "ochrona" przed "nieuczciwością". Ostatnio słyszałem złotą myśl, że zamknięcie w potrzasku wzmaga kreatywność :)

Offline ShadowDancer

  • Redaktor

  • +2
# Styczeń 21, 2015, 10:58:50
:Xender

Czy uważasz, że untrusted byłoby tak samo dobre, gdyby można było edytować cały skrypt na każdym lvlu?

Offline Xender

  • Użytkownik

# Styczeń 21, 2015, 20:15:48
@ShadowDancer - Nie uważam. Chodzi mi o to, że przejście gry na glitchach też może być dobre.

Ktoś to powiedział, że zmieniając pewne globalne stałe fizyczne można by sobie znacznie uprościć rozgrywkę - można traktować to jako coś niepożądanego, ale można odwrócić kota ogonem i dać graczowi pobawić się globalami (lub w pewnych miejscach nawet zmusić do tego - niech dobierze grawitację do długości skoku. Albo jeszcze lepiej, oskryptuje, żeby sama się zmieniała (property?) tak, żeby skok wyszedł :) ).

BTW, w jednym miejscu w Untrusted można (trzeba) było kompletnie wymienić logikę kilku NPC. Brzmi kiepsko?
Ale jedynym czynnikiem, na który nie miało się wpływu, było to, że gracz w kontakcie z NPC ginie, oraz początkowe ich położenie. Brzmi już lepiej, nie?
« Ostatnia zmiana: Styczeń 21, 2015, 20:17:38 wysłana przez Xender »

Offline Xirdus

  • Moderator

  • +1
# Styczeń 21, 2015, 22:35:48
w jednym miejscu w Untrusted można (trzeba) było kompletnie wymienić logikę kilku NPC. Brzmi kiepsko?
Ale jedynym czynnikiem, na który nie miało się wpływu, było to, że gracz w kontakcie z NPC ginie, oraz początkowe ich położenie. Brzmi już lepiej, nie?
No i o to wszystkim chodzi. Hakować co się da, ale najważniejsze rzeczy zablokować przed graczem.

Offline Kos

  • Użytkownik
    • kos.gd

# Styczeń 24, 2015, 12:24:46
« Ostatnia zmiana: Styczeń 24, 2015, 12:26:22 wysłana przez Kos »

Offline Xion

  • Redaktor
    • xion.log

# Styczeń 24, 2015, 19:41:39
@up: Nah, to jest exploitowanie. Swoją drogą ten filmik jest niesamowity -- cała ta procedura wygląda jak przygotowania do skomplikowanego rytuału voodoo w celu wywołania deszczu :)