PsichiX
Ohayo #gamedev!
W ramach testu platformy #intuicio (którą robię do mojej konsoli growej na Rpi3 i inne platformy: desktop (win, linux (distra debianowe), Mac os X, Android i iOS oraz Web na WebGL), chcę stworzyć grę multiplayer o walce marines vs. kosmici, w której główną cechą mechaniki ma być czasowa zmiana drużyny przez wszystkich graczy, tj. co minutę-dwie każdy gracz zamienia się miejscami z innym graczem z
  • Najlepsze
  • Wszystkie komentarze
s.....a
s.....a
@PsichiX: po pierwsze primo - troche za duży chaos
po drugie prime - wykonywanie celów drużyny, jeśli za chwilę będziemy w drugiej nie ma sensu, byłaby straszna patologia bo nie wiadomo co robić, czy czasem nie przegrać specjalnie, itp.
Sinti
@PsichiX: Sam pomysł jest ciekawy, ale sposób w jaki planujesz go wykonać jest bardzo słaby. Po pierwsze to jaki sens ma w tym wypadku klimat "marines vs aliens"? Skoro są dwie tak różne strony konfliktu to gracz raczej powinien się wczuwać w daną nacje. W dodatku każdy nowy gracz się będzie mylił i po zmianie drużyny strzelał do swoich przez pierwsze kilka sekund z przyzwyczajenia - przypuszczam że o to
PsichiX
mysle nad rozwiazaniem dostepu do zasobow, tj. ogolne podejscie do URI:
zrobic manager protokolow, ktory bedzie pomostem z serwisem (polaczenie socketowe?) do obslugi zadan URIm, np:
apka A rejestruje modul, ktory obslugiwac ma protokol http, a aplikacja B protokol file. definiowane one beda w manifescie. aplikacja C moze robic zapytania:

string content = ResourcesManager.callSync("file://local-storage/test.txt");
tutaj resource manager szuka zarejestrowany pod protokol file modul i on dokonuje operacji na URI, tj. otwiera plik i czyta go w
PsichiX
Woah! Package manager działa całkowicie! ^^
Musiałem zrefaktoryzować toola do uruchamiania skryptów i4s, by sprawdzał, czy jeśli za input podamy ścieżkę do folderu (miast skryptu), oraz w tym folderze znajduje się 'module.json', to doda ścieżki do dependencies wylistowanych w tym module.
(。◕‿‿◕。)
No to wracam robić moduł natywny do obsługi mediów (czyli wrapper SFMLa), który użyję w gierce testowej napisanej w Jaegerze :D

#nieprogramowanie
  • Najlepsze
  • Wszystkie komentarze
tamburynista
tamburynista
Musiałem zrefaktoryzować toola do uruchamiania skryptów i4s, by sprawdzał, czy jeśli za input podamy ścieżkę do folderu (miast skryptu), oraz w tym folderze znajduje się 'module.json', to doda ścieżki do dependencies wylistowanych w tym module.


To nie jest refaktoryzacja. Refaktoryzacja to zmiana kodu bez zmiany funkcjonalności

Tak tylko prostuję, bo w pracy dostałbyś zjeby za niewłaściwa terminologię.
tamburynista
tamburynista
@PsichiX: A Ty wiesz co to jest refaktoryzacja?
PsichiX
Jaeger ukończon, właśnie robię package manager do platformy Intuicio (。◕‿‿◕。)

coraz bliżej zrobienia własnego nodejsa jestem xD
Pewnie zarzucę dziś jakimś dokładniejszym info z postępu :>

#nieprogramowanie #jaeger #intuicio
  • Najlepsze
  • Wszystkie komentarze
adios
@PsichiX

coraz bliżej zrobienia własnego nodejsa jestem xD


Tylko nie rób NPM'a :D
PsichiX
PsichiX Autor
0
@adios: czemu. właśnie coś tego typu robię - rejestr modułów, ściąganie i pchanie na repo i zarządzanie lokalnymi modułami :D
PsichiX
Po urlopie, ze świeżym umysłem skończyłem yieldowanie korutyn w korutynach (。◕‿‿◕。)



#programowanie #gamedev #jaeger #intuicio #chwalesie #takimadry
  • Najlepsze
  • Wszystkie komentarze
KingRStone
@PsichiX: Ale śmieszny język.
PsichiX
PsichiX Autor
1
@KingRStone: wiem, ale spokojnie - kolejny (tj. Gojira) będzie już bardziej pythono-podobny :3

PsichiX
skończyłem wreszcie korutyny. wywaliłem ostatecznie dedykowane konteksty (stosy) per korutyna i zaoszczędziłem tym na pamięci! ^^

Postaram się wrzucić aktualizacje z tego, przed wolnym i po urlopie w końcu postawie bloga, lub zaczne vloga (zastępstwo streamów, póki net mobilny) :)

#jaeger #intuicio #programowanie
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Uruchamianie skryptów Jaegera ponownie działa (⌐ ͡■ ͜ʖ ͡■)


#programowanie #jaeger #intuicio
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Hah! Przepisałem manager pamięci do #intuicio i teraz nie dość, że mam stronicowanie, mapowanie, to jeszcze mogę w końcu mapować zewnętrzną pamięć (user defined memory) na zakres adresów wirtualnych platformy! ^^
  • Najlepsze
  • Wszystkie komentarze
PsichiX
http://dec64.com/

Mircy, co sądzicie o dodaniu wsparcia dla tego formatu liczbowego (najpewniej zrobiłbym to jako moduł natywny, miast cześć platformy Intuicio, ale na pewno chciałbym aby było to standardem w Jaegerze tak jak regexy).

Jestem ciekaw Waszego zdania na temat DEC64 (。◕‿‿◕。)

#programowanie #intuicio #jaeger #pytanie
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Obiecałem sobie długi czas temu, że zrobię kiedyś grę o tym temacie - i będzie to jedna z pierwszych gier napisanych na platformę Intuicio z użyciem nowego Ptakopyska! :D


A poza tym muzyka jest fajna, a video creepy - nie dziękujcie ( ͡° ͜ʖ ͡°)


#muzyka #gamedev #intuicio #jaeger #ptakopysk
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Jest już instrukcja warunkowa jak i pętla while ^^


#jaeger #programowanie #intuicio
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Dokończyłem używanie natywnych modułów oraz marshalling typów native <-> jaeger i połatałem dziury, przez co już się nie w--------a (。◕‿‿◕。)
Zanim zrobię korutyny, przypomniałem sobie, że w sumie to fajnie byłoby móc używać w programie control flow (ify i pętle).
Z pętel to while powinien wystarczyć, nie?

#jaeger #programowanie #intuicio #gamedev
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Hahaha - działa! :D

Teraz sprawdzić do końca marshalling, oraz dodać korutyny i mogę zacząć pisać gierkę! ^^

#jaeger #programowanie #intuicio #gamedev
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Okej, po dwóch dniach redesignu korutyn, oto finalna wersja - czyli jak korutyny są obsługiwane niskopoziomowo - już chyba mogę je implementować w Jaegerze :D

#intuicio #programowanie #jaeger
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Nie wiem, czy kogoś to zdziwi, ale designuję przenośną konsolę grową opartą na raspberry pi - customowy system z lekką powłoką graficzną i środowiskiem uruchomieniowym aplikacji opartym na tworzonej aktualnie platformie Intuicio.
Tak, żodyn android, tylko natywne aplikacje, aby śmigało - rpi3 ma możliwości chyba generację starszych samsungów, a te mogą pociągnąć więcej, jeśli aplikacje będą natywne, niżeli odpalane w VMce.

Co jakiś czas będę wrzucał informacje o postępach designu i może jakieś dogłębniejsze
  • Najlepsze
  • Wszystkie komentarze
PsichiX
korutyny teraz da się zrobić już z poziomu assemblera i to nie na wątkach, a na jumpach (czyli tak, jak powinno to być :D)! ^^

#programowanie #intuicio
PsichiX
Dyrektywa strict przełącza kompilator w tryb restrykcji funkcyjnych, czyli odpadają wszelkie opcje użycia efektów ubocznych.
To chyba wszystko, co dotyczyło walidacji programu - od jutra zaczynam pisać translację jaegera na assembler :3

#jaeger #programowanie #intuicio
  • Najlepsze
  • Wszystkie komentarze
PsichiX
A tak się informuje kompilator, jak dokonywać marshallingu pomiędzy nie atomowymi typami, bo może tak być, że zechcemy wykorzystać natywny moduł zgodny z innym językiem rodziny Intuicio i wtedy to, pozwoli nam poprawnie komunikować się pomiędzy modułami - ale to coś tylko dla zaawansowanych userów :D

#programowanie #jaeger #intuicio
  • Najlepsze
  • Wszystkie komentarze
PsichiX
Niemała zmiana:

1. Wstrzykiwanie kodu assemblera nie odbywa się już w stringu, a poprzez umieszczenie pomiędzy podwójnymi tyldami.
fajnie składnię tego wizualizuje Atom, któremu po prostu podaję iż pomiędzy tyldami ma używać składni assemblera Intuicio :D

2. dyrektywa jaegerify, która załatwia marshalling pomiędzy natywnymi modułami, a funkcjami jaegera (kompilator robi wraperową funkcję, która konwertuje typy jaeger <-> native).
PsichiX
Korutyny w Jaeger :D

#programowanie #jaeger #intuicio
  • Najlepsze
  • Wszystkie komentarze