Tumgik
annamoudra · 7 years
Text
Screens
Main Screen
Title Screen   ✔️
Screen indicating that screen is in game-ready state. Players must recognize how to connect.
Waiting Room    ✔️
Screen shows how many players Moderator put to play and how many are connected and waiting for playing.
Introductory Screen / Countdown Screen
Screen shows additional information: 
Round Number
How-to-play (if this is the first round)  ✔️
Game Screen
showing current state of game: rolling balls, shows timer, shows current score and current sum per team
Leader Board Screen  ✔️
shows score
End Screen*
shows credits etc.
Waiting for Mod Screen ✔️
screen showing that Moderator is not connected
Player Device
Title Screen
change to Join Game Screen once a player can join a game.If a game is in progress, player will be redirected to title screen.
Join a Game  ✔️
Choose a team and start Waiting 
Player can show team preference and start waiting for play.
Waiting Room  ✔️
Player waits for the game to be started.
Choose answer  ✔️
Number of answers to be chosen from.
Current Answer  ✔️
Currently chosen answer
Waiting for next Round
Player waits for the next round to be started.
Moderator Device
Title Screen  ✔️
Update Main screen in Unity ✔️
Start Game
Input max number of players that will be connecting ✔️ . Input number of teams. ✔️ After can start a game -> will trigger Unity -> will let players connect and Join a Game  ✔️
Start Round  ✔️
Shows number of clients connected - can start a round at any point
Game
Shows all players in teams and their number choices.
0 notes
annamoudra · 7 years
Text
Konzultace 14.3. v AVM
Je potřeba dořešit client disconnect na mobilu
klient bude mít nějaké ID  ✔️
plátno bude 4K ✔️ , WebGL netřeba řešit (teď)
klient si bude moci zvolit tým, pokud nezvolí, bude přerozdělen nebo nebude hrát
Klient zvolí číslo: dostane se na další stranu se zvoleným číslem, po změnu bude muset kliknout na zpět a zvolit jiné číslo ✔️
hra bude mít 3 kola s různou obtížností
mezitím se nebudou měnit týmy a skóre bude zachované
Naimplementovat Moderátora
bez připojení moderátora nebude možné hru spustit  ✔️
bude zadávat max počet hráčů a počet týmů  ✔️
bude ovládat start / restart hry a číslo kola
bude zadávat uvítací popisek (zatím jeden pak se uvidí jak vyjde čas)  ✔️
uvidí rozdělení hráčů (jejich ID) do týmů a uvidí zvolené číslo každého klienta  ✔️
Na hlavní obrazovce bude zobrazen součet týmu
když bude čas tak i jednotlivá čísla členů týmu
konfigurace vlastní wifi s heslem
V textu se bude mj řešit dynamika mezi skupinou lidí, kteří se znají a mezi náhodnou skupinou.
Zmíněné: ZEVO Chotíkov a FishNumbers
0 notes
annamoudra · 7 years
Text
Update k implementaci prototypu
Je naimplementováno základní spojení Unity, js serveru a klienta v p5.js, které pevně doufám bude fungovat i po buildu Unity projektu. (nefunguje pro WebGL build, viz příspěvek Unity build)
V Unity už nějak funguje generování jednotlivých objektů s čísly a barvami týmů, tedy nyní je nutné naimplementovat dění na serveru a u hráčů:
Pro moderátora :
start a game screen  ✔️
input QR-code, text, max players, number of teams  ✔️
stop-restart a game 
choose a round
wait for players screen  ✔️
dashboard hráčů 
Pro hráče:
join a game screen  ✔️
choose team {?}
get ID  ✔️
waiting for moderator {co zobrazit?}
wait for players screen ✔️
countdown in team color ✔️
join a game screen ✔️
game play controller  (in team color) ✔️
chosen number ✔️
main screen ✔️
emit numbers (old, new and team id)  ✔️
Pro server:
stop waiting for new connections - block new connections
keep moderator updated  ✔️
keep updating team sizes
receive numbers from players and assign them accordingly  ✔️
disconnect clients and null game progress
get info from unity when time is up
send team info to unity on every change:
change sum   ✔️
change size
Pro unity:
menu screen (QR or link)  ✔️
moderator not connected screen  ✔️
waiting screen (# waiting progress bar)  ✔️
introduction screen w/ directions  ✔️
countdown screen  ✔️
game
update team sum  ✔️
show team sum
generate prefabs in team color and numbers  ✔️
update team sizes
update prefab generating speed ✔️ /count
explode prefabs  ✔️ + send null to team (?)+ keep score  ✔️
timer  ✔️
end - leader board
emit to clients
show scores 
start new round  ✔️
implement and customize rounds
Debug/solve:
mobile client issues with reconnecting
buttons not disappearing after server reset
(socket.io) WebGL build Unity client not emitting
team sum must by by at least two players???
Edit 3. a 5 března
Edit 9. března: Countdown screen v Unity funguje ale pravděpodobně bude potřeba někdy později dořešit načítání další scény asynchronně aby se předešlo časové prodlevě; z nějakého důvodu při spuštění hry přechodem scén je osvětlení jiné než v původní scéně. Dnes je na řadě controller GUI a pokudmožno i server-side team handling.
Edit 12. března: Controller funguje, je možné hrát ve 2 až 8 hráčích, pro počet hráčů větší 3 se utvoří dva týmy. Funguje update společného součtu týmu na serveru i v Unity.
Edit 13.března: Funguje generování objektů v Unity a jejich mazání v závislosti na společném součtu týmu. Zbývá dodělat signály serveru o stavu hry (konec hry a případné nulování číselníků na straně hráčů), zobrazení současného skóre na obrazovce a řešení odpojení většího počtu hráčů.
14. března: bude příspěvek ke konzultaci
20.3. funguje připojení moderátora a prvotní setup hry v Unity. Moderátor zvolí úvodní popisek, počet hráčů a počet týmů. Po připojení hráčů (kteří se u moderátora stále ještě nezobrazují) je možné zobrazit v Unity instrukce pro hráče. 
22.3. Funguje připojení přes router. Je potřeba zprovoznit redirect na serverIP:3001. 
0 notes
annamoudra · 7 years
Photo
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
0 notes
annamoudra · 7 years
Text
Unity build
Mým původním záměrem byla tvorba Unity projektu ve WebGL, tak abych mohla případně později využít knihovnu pro SAGE2, která umožňuje zobrazit projekt v Electron prohlížeči. (link)
Bohužel, z mě zatím neznámého důvodu po kompilaci do WebGL přestává fungovat spojení Unity a serveru přes unity-sockets.io knihovnu.
Přestože budu hledat dál možnosti, jak zprovoznit WebGL verzi, prozatím jsem se rozhodla tvořit protoyp jako .exe aplikaci.
0 notes
annamoudra · 7 years
Text
Abstract
This thesis focuses on analysis of local multiplayer games and their playability in different immersive environments such as cinemas, planetaria or CAVE systems. Main emphasis is on the use of mobile devices and on both verbal and non-verbal communication, required for these types of games, and the rise of emotion. The analytical chapters describe the development and impact of such games and systems and analyse the limits of using similar cooperative systems in non-gaming fields as are advertisement and education. Latter chapters focus on the design, implementation and testing of distributed interface prototype for simple team-based cooperative game. The prototype is implemented via game engine Unity an is suitable for SAGE projection(?), with the game play being controlled over web browser interface on mobile devices.
1 note · View note
annamoudra · 7 years
Text
Google experiments
Otevřený soubor web browser experimentů, z nichž jsou mnohé velmi zajímavé.
Například interaktivní film Rome (link), mobilní multiplayer s projekcí na laptopu Roll It:
vimeo
nebo třeba mobilní hra Racer (link).
0 notes
annamoudra · 7 years
Text
Konzultace s panem Belladou 26.10.
Důležité body:
Síťová komunikace:
Interpolaci stavů mezi klienty a kombinaci UDP a TCP protokolů nemusím řešit, pokud budu nějak rozumně omezovat objem posílaných dat: např 100kB/s na klienta, lokální síť by toto zatížení měla bez problému zvládnout.
S tím souvisí i způsob uklládání logů o jednotlivých klientech. Návrh pana Bellady je vytvořit si log na serveru do kterého budu po každém přijatém HTTP requestu od klienta ukládát klientské ID a akci, kterou provedl (zadaný věk, pohlaví atp.); samozřejmě ukládat se budou jen ta data, důležitá pro pozdější analýzu. Log soubor by bylo vhodné vytvářet vždy při spuštění serveru
Prezenční vrstva v prohlížeči:
Doporučeno mi bylo HTML5, které rozhodně prozkoumám už jen kvůli analytické části práce; Osobně si myslím, že p5.js je efektivnější nástroj ale budu muset zkontrolovat možnost škálování displeje na různých mobilních zařízeních; výhodou obou technologií jsou malé nároky na cílové zařízení, oproti Unity ve webovém prohlížeči, která vyžaduje Unity Web Player nebo překompilování do WebGL ( Unity WebGL supports all major desktop browsers to some degree. However, the level of support and the expected performance varies between different browsers )
Prezenční vrstva na velké obrazovce:
Tato část úzce souvisí s konečným prostorem a projekčním zařízením, nicméně je nutné použít nástroj který dovede efektivně pracovat s vysokým rozlišením
Možnost je tuto část aplikace vytvořit v Unity, nebo Processingu 2.x-3.x přičemž Unity je obecně zavedenější a mocnější nástroj, o to je složitější; U Processingu je nutné zjistit jaké jsou jeho limity
0 notes
annamoudra · 7 years
Text
Processing 2.x 3x a p5.js
Tumblr media
link na diagram
p5.js se mi zatím jeví jako nejschůdnější řešení pro mobilní zařízení, zatím si ale nejsem jistá jestli ho použít také na velký displej. Pokud by šlo jen o větší projekční plochu nebyl by problém, ale pro 3D vizualizaci nebo například kopuli planetária bych raději zvolila jiný nástroj (processing 2 už má nějakou knihovnu pro dome projections ale chtělo by to otestovat), v unity3D  lze bez problémů vytvořit fisheye projekci pro dómové projekční systémy (zdroj) . 
Na githubu byl otevřen issue se zpomalením na mobilních zařízeních z důvodu škálování na různé velikosti displejů: oveření todo (!)
Důležité pro prototyp bude tedy oddělení vizualizace na plátno do samostatného modulu tak, aby bylo možné ji vyměnit bez zásahu do zbytku programu.
processing knihovna na projekci v planetariu pouze processing 2.x
scene manager for p5.js  tato knihovna se může velmi hodit, pokud jednotlivé scény budu chtít vykreslovat také pomocí p5.js
socket tutorials (my simple code) 
(multiplayer agar.io in p5.js: todo)
(server handling two types of clients: todo)
0 notes
annamoudra · 7 years
Photo
Zajímavý zdroj k State of the Art, i když malinko méně interaktivní a rozhodně méně kooperativní. K projektu vznikla knížka, ke které se snad dostanu i když se zdá být víc zaměřená na sytější vnímání vizuálního umění, než na prohloubení mezilidské interakce, každopádně vypadá velmi zajímavě i kdybych ji nevyužila do projektu.
K výstavě je další článek zde.
Tumblr media Tumblr media Tumblr media
Closing Sunday! Dreamlands explores a century of artists pushing the boundaries of cinema with work by Alex Da Corte and Jayson Musson, Hito Steyerl, and Bruce Conner, among others. 
717 notes · View notes
annamoudra · 7 years
Text
Game Design document log
odkaz na text
20.12. Rozšířila jsem Use cases a  Requirements
28.11. - 15.12. Rozšířeno několik sekcí.
20.10. Přidala jsem sekci Requirements, ve které jsou nějaké požadavky na hry a pak jsem doplnila sekci Screens, kde je základní náčrtek toho v jakém formátu se budou zobrazovat informace na hlavním displeji a na mobilním zařízení. Co nejdřív musím doplnit sekci Game Flow, ze které pak už jen nakreslím State Machine. Dál musím najít materiály k různým escape hrám, abych byla schopná vymyslet mechaniku aplikovatelnou i na tento typ hry.
??? mezitím jsem postupně přidávala a mazala menší části textu
17.9. Založení dokumentu
0 notes
annamoudra · 7 years
Text
Nový systém exponátu Kulatého stolu ve VIDA!
Letošní bakalářská práce o novém řídícím systému exponátu Kulatý stůl ve VIDA! centru v Brně. 
Zadáním bylo vytvořit prototyp řídícího systému a k němu dodat jednu ukázkovou hru (a další student dodal ještě jednu). Prototyp tedy umožňuje výběr z více her (oproti stávajícímu systému s hrou Rybolov.) Implementován je v Jave a řeší spoustu problémů se kterými se budu také potýkat, hlavně po stránce zakomponování krajních situací.
Naopak se nepotýká s  jinými případy, které řeším, např. velikost a tvar hlavní obrazovky, náhlé vybití či odpojení zařízení, či připojení zcela nového zařízení v průběhu hry atp.
Student vytvořil řídící systém, který obsluhuje síťové spojení, výběr a průběh hry a vytvořil hru SnakeXSnake, podobnou hře slitherio. Na rozdíl od hry Rybolov a i od mého projektu, student na centrální promítací plochu pouze duplikuje obraz, který každý hráč vidí na své obrazovce. V druhé hře “Distribuce limonád” centrální displej nevyužívá vůbec.
Pro síťovou komunikaci si vystačí s protokolem TCP (str. 38), což by u mě mohl (?) být problém, jelikož i přestože požaduji spolehlivost přenosu dat, je nutné aby odezva byla co nejrychlejší. Proto je možná vhodné se zamyslet nad řešením “overhearingu” jak je to ve frameworku MicroPlay, který kombinuje protokoly TCP i UDP a jednotliví také komunikují se sebou navzájem. Server má pro komunikaci s každým klientem vlastní vlákno aby posílání dat mohlo probíhat asynchronně.
odkaz na opoznámkované pdf
Je škoda, že v době kdyz jsem se na exponát šla podívat, tak tento projekt ještě nebyl zprovozněn. Respektive je možné, že v provozu byla jen jeho část, jelikož exponát nabízel možnost zvolit jednu z více her, což podle textu nebylo v původní verzi možné. V nabídce se vyskytoval ale jen Rybolov.
0 notes
annamoudra · 7 years
Text
Seznam materiálů k přečtení
Zde bude seznam odkazů na různé práce, videa etc, které budu postupně procházet a anotovat. Ke každému takovému materiálu, který bude přínosný pak chci mít příspěvek pod anotovanou literaturou (nejlépe v aj).
Literature:
John Nash, Two-Person Cooperative Games (1953, 12 pages)
Návrh a implementace řídicího systému pro exponát Kulatý stůl ve VIDA! Science centru (2017, bakalářka 80 stran, anotace)
Katia P. Sycara, Multiagent Systems (2017, 14 pages)
Sarit Kraus, Negotiation and cooperation in multi-agent environments (1997, 19 pages)
Stochastic Cooperative Games: Theory and Applications (2002, 27 pages)
Electric Agents: Combining Collaborative Mobile Augmented Reality and Web-Based Video to Reinvent Interactive Television (2014)
Augmented Reality Entertainment: Taking Gaming Out of the Box (2017, 9)
In-Group Favoritism Caused by Pokemon Go and the Use of Machine Learning for Principled Investigation of Potential Moderators (2017, 20 pages)
Effects of cooperative gaming and avatar customization on subsequent spontaneous helping behavior (2014, 6 pages)
Fairness and playability in online multiplayer games (2006)
MicroPlay: a networking framework for local multiplayer games (2013, anotace)
Local Multiplayer Immersion Affected by 3D Stereocsopy(2016, anotace pdf)
a la ‘Interactive Museum Exponats’  (2016, pdf)
Online courses:
Source codes & useful libs:
node based multiplayer framework
Video:
jednoduchý tutoriál Unity3D - animace
Other:
Cooperative group gaming system: apparatus and method (1997, patent)
Lecture notes, Bargaining problem
Multi-Agent Reinforcement Learning: a critical survey Stanford handout(2003, 13 pages)
Kinoautomat Film
Coop. Game Theory, UIB handout (2007, 9 pages)
Unity + node.js socket.io article
0 notes
annamoudra · 7 years
Text
MicroPlay Framework notes
odkaz na opoznamkovane pdf
Možná  poněkud nízkoúrovňová věc, abych se tím zabývala v této fázi práce, každopádně ale zajímavé čtení. Tuším, že jste mi tento princip interpolace mezi stavy popisoval na úplně prvním setkání. Pokud to jen trochu půjde ráda bych tento způsob predikce využila.
0 notes
annamoudra · 7 years
Text
23.8.2017
Projekt se bude skládat ze dvou hlavních částí:
Generalizace do stavového automatu (i s řešením krajních situací - čekání na/odchod spoluhráče atp.) 
Odvození aplikace - implementace funkčního prototypu, nezávislém na typu hry; bring your own device, 1 centrální plocha, cca 40-100 lidí, captive portal na lokální wi-fi aby uživatelé nemuseli zadávat adresu běžícího serveru
Prototyp by měl umožňovat logování chování jednotlivých hráčů a případné další info (pohlaví, věk etc) k datové analýze.
Zadání:
Vytvoření blogu kde budou zápisy ze setkání, zadání dílčích úkolů, seznam literatury atp, poznámky k materiálům, vývoji prototypu a případné úryvky/části kapitol, které později využiji při psaní.
Hledání zdrojů (z odborné literatury v aj) k State of the Art.
Sběr informací k use casům jednotlivých “typů” kooperativních her (round table, escape games etc.)
Zvážit a rozvrhnout časový plán projektu.
Doporučení:
návštěva Vida centra Brno (RT hra s rybařením)
Udemy kurz (game development and unity3D )
Další kurzy zaměřené na game development (Stanford, coursera etc)  (game theory 1), (game theory 2) (khan academy)
0 notes
annamoudra · 7 years
Text
Timeline
The overall project timeline marks all important stages of the project along with corresponding sub-tasks.
link to gdoc
0 notes
annamoudra · 7 years
Text
Calendar
For important dates, meetings, deadlines.
link to gdoc
0 notes