Omat peli- ja ohjelmaprojektit

Viestiketju alueella 'Ohjelmointi, pelikehitys ja muu sovelluskehitys' , aloittaja Zvona, 24.10.2016.

  1. Xiyng

    Xiyng

    Viestejä:
    1 023
    Rekisteröitynyt:
    19.10.2016
    Miltä kannalta? Suunnittelun? Ohjelmoinnin? Jonkin muun? Mikä on lähtötasosi?
     
  2. JouBqa

    JouBqa

    Viestejä:
    383
    Rekisteröitynyt:
    28.06.2017
    Tollasta tehty mut oikeat työt nyt pistänyt jäihin muutamaksi kuukadeksi. Enää puuttus pari bossia ja pientä hiontaa niin pieni metroidvania peli ois valmis... Jos kiinnostaa osallistua nii voi laittaa viestiä jos täs kerkeis alkaa taas tekeen.
    Skully's Adventure
     
    Jahonnes ja zamerok tykkäävät tästä.
  3. DD-Indeed

    DD-Indeed

    Viestejä:
    4 680
    Rekisteröitynyt:
    04.12.2016
    Vähän taas putkahteli ideoita päähän oman remake-projekti suhteen tässä parin päivän aikana, joita kirjoittelin ylös projektidokumentaatioon. Lähestymistapa tosiaan on omintakeinen, luon ikäänkuin käsikirjoitusta ja presentaatiolistausta ideoista ja asioista mitä pelissä tulisi olla ja mitään varsinaista näytettävää ei ole vielä syntynyt.

    Jotain näytettävää silti kuiteskin putkahti mieleen, avasin pitkästä aikaa FL Studion luodakseni yhen toisen musiikkijutun, mutta vahingossa keksin melodian erään instrumentin pohjalle, joka heti kuulosti sopivanlaiselta kipaleelta peliin. Tokana päivänä lisäyksiä ja viimeistelyä vähän, ni avot, jälleen yksi demobiisi valmis.

    http://instaud.io/private/b0bef19679d3ac70becac4d1a273958bbb6d1573
     
  4. salojan

    salojan

    Viestejä:
    6
    Rekisteröitynyt:
    10.01.2017
    Jos täällä on joku FreeBSD käyttäjä vailla graafista mikseriä äänikortilleen, ja koneesta löytyy jonkinverran extra-rammia sekä kunnollinen grafiikkakortti, niin julkistin juuri Detroit enginen version 0.2.0 jossa on mukana screenshotin mukainen mikseri. Mikseri siis toimii vain FreeBSD:llä, Net- ja OpenBSD tuki on tekeillä, eikä se tue pulseaudiota yms. muita turhakkeita vaan pelkästään OSS:ää. Kääntöohjeet löytyy README:sta.

    Detroit engine - Browse Files at SourceForge.net

    fossmixer_1.png
     
    Humanoid tykkää tästä.
  5. Ctzn_no7

    Ctzn_no7

    Viestejä:
    189
    Rekisteröitynyt:
    26.10.2016
    GasGas by ctzn07
    taas yks jamipeli tuli väsättyä, kait siitä 5 minuutin naurut saa
     
    zak0 ja Zyrppa tykkäävät tästä.
  6. Snowman

    Snowman Peräsmies Make ATK Great Again RTX ON

    Viestejä:
    434
    Rekisteröitynyt:
    09.02.2017
    Ihan huikea :D
     
  7. Jean_Sipulius

    Jean_Sipulius

    Viestejä:
    288
    Rekisteröitynyt:
    17.10.2016
    Nälkätaisto by JuhaOjala

    Eräänä viikonloppuna pyöräytettiin tyttöystävän kanssa pikku visailupeli. Koittakaahan päästä läpi.
     
    Jahonnes ja Seidi Takamaa tykkäävät tästä.
  8. living_death

    living_death ★ Still alive ™

    Viestejä:
    2 022
    Rekisteröitynyt:
    15.11.2016
    Ilmoittaa "Running with IndexedDB access disabled".
     
  9. Jean_Sipulius

    Jean_Sipulius

    Viestejä:
    288
    Rekisteröitynyt:
    17.10.2016
    No pahus. Millä selaimella koitat? Pitäisi toimia normaalisti perinteisellä 64 bittisellä selaimella, jossa WebGL tuki. Toisaalta tuon IndexDB:n saisi päälle erikseen, mutta en taida jaksaa penkoa projektia auki ihan tällä sekunnilla
     
  10. supperhead

    supperhead

    Viestejä:
    34
    Rekisteröitynyt:
    17.10.2016
    Hyvin täällä toimi vaikka tais alussa tuo disabled -juttu näkyäkin. Selaimena Chrome.
    Ihan mukava tietovisa :tup:
     
  11. living_death

    living_death ★ Still alive ™

    Viestejä:
    2 022
    Rekisteröitynyt:
    15.11.2016
    ff.png
     
  12. Ctzn_no7

    Ctzn_no7

    Viestejä:
    189
    Rekisteröitynyt:
    26.10.2016
  13. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Tein tällaisen komentorivillä toimivan pikkuohjelman. Ohjelmalla pystyy ottamaan "kuvan" haluastaan hakemistosta ja tallentamaan sen tiedostona koneelle. Sitä tiedostoa voi sitten verrata jonain toisena hetkenä luotuun tiedostoon. Näin aloittelevani koodarina mielelläni kuulisin kommentteja koodin tasosta. Onko se ihan päin seiniä vai vähän sinne päin?

    Jossain vaiheessa voisi varmaan harjoituksen vuoksi muokata tuon OOP-muotoon.

    Linkki
     
  14. Xiyng

    Xiyng

    Viestejä:
    1 023
    Rekisteröitynyt:
    19.10.2016
    En ole hirveästi Pythonia käyttänyt enkä kovin tarkkaan katsonut, mutta pääasiassa näytti aika selkeältä. Luultavasti tuota voi parantaa reilustikin, mutta näyttää pikaisen vilkaisun perusteella ihan järkevältä. Code Review on muuten sivusto, jonne voi pistää koodejaan muiden arvosteltavaksi (siis ihan kehitysmielessä - sieltä näyttäisi saavan yleensä hyviä vinkkejä). Säännöt kannattaa varmaan lukaista lähtien ainakin siitä, että tuonne tuskin voi vain linkittää GitHub-repoa, vaan koodit pitää käsittääkseni laittaa suoraan näkyville.
     
  15. 111

    111

    Viestejä:
    90
    Rekisteröitynyt:
    08.08.2018
    .
     
    Viimeksi muokattu: 07.01.2019
  16. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Täytyykin tutustua tuohon Code Reviewiin. Ehkä tuonnekin jotain kehtaa postata joku päivä.

    Olen vähän tuota tkinteriä käyttänyt, mutta en vielä tässä vaiheessa viitsi hirveästi käyttää aikaa guin turaamiseen. Pyrin vaan tekemään paljon erilaisia projekteja tutustuen kirjastoihin.
     
  17. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    Suosittelen käyttämään cmd tai click moduuleja komentorivisovelluksille. Koodista yleisesti sanoisin, että liikaa if/else lausekkeita ja liian pitkiä funktioita. Jaa koodia pienempiin osiin ja vältä if/else rakennelmia, varisinkin sisäkkäiset if/elset ovat varma merkki siitä että nyt kannattaa refactoroida. Tee mieluummin kontrollereita (funktioita) joita sitten kutsut vaikka jonkun dictin perusteella, eli avaimena on ehto ja arvona suoritettava funktio.
     
    Nigel tykkää tästä.
  18. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    Kirjoittelin tähän mitä hain takaa. Tein nyt kaikki yhteen objektiin joka kyllä tosielämässä paisuisi tarpeettoman isoksi ja se pitäisi pilkkoa myös osiin. Mutta idea varmaan tulee selväksi. Menun voisi rakentaa myös dynaamisesti controllerista, mutta sitä en nyt tehnyt.

    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]
     
  19. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Täytyy tutustua tähän esimerkkiisi paremmin. En ole tehnyt "controllereita" aiemmin, joten tämä on ihan hyvä harjoitustehtävä. Jos tulee valmista niin postaan päivitetyn koodin tänne. :)

    Click-moduulista en ollut koskaan kuullutkaan ja cmd:hen en ole vielä muuten vaan kerennyt perehtyä. Täytyy lisätä myös nuo työlistalle.
     
  20. Mendel

    Mendel RTX ON

    Viestejä:
    329
    Rekisteröitynyt:
    21.09.2017
    Oman pelin proto:
    itch.io
    salasana on testi

    klikkaa latauksen jälkeen peliruutuun vielä toisen kerran niin sitten w:llä pieree. Hellävaraiset painallukset suositeltavia :D

    Protossa on toistaiseksi vain tuo yksi kenttä. Ei toimi vielä kännykällä oikein. Kertokaahan paljonko saitte pisteitä. :)
     
  21. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Pakko myöntää, että tuolla kontrollerirakenteella dirxray.py:stä tuli huomattavasti selkeämpi. Uppasin päivitetyn version GitHubiin. Täytyy katsoa myös jos tuolle dirxhelper.py:lle osaisi tehdä jotain.

    Mietin myös, että miten tuosta MENU:sta saisi dynaamisen, mutta en ainakaan vielä saanut mitään toimivaa aikaan.

    Koitin lähteä rakentamaan ratkaisua näin:

    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]
    Tuosta saisin listan tupleja, joissa ensimmäinen itemi on metodin nimi ja toinen itemi on itse metodi, mutta tästä en osaa edetä toimivaan dynaamiseen menuun. Voisin funktion listata vain metodien nimet for-loopilla, mutta ne eivät ole kovin kuvaavia. Voisinko laittaa jokaiseen metodiin muuttujan, joka tulostuisi menuun tekstinä? En varmaan, koska en pääse siihen käsiksi ajamatta metodia. Taidan olla ihan hakoteilla tämän kanssa.
     
  22. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    4 pistettä oma enkka. Vielä vaikeampi kuin Flappy Bird. :)
     
  23. DD-Indeed

    DD-Indeed

    Viestejä:
    4 680
    Rekisteröitynyt:
    04.12.2016


    Pierun jälkipolton kiihtyvyyttä jos hippasen pienennät ni sit ois hyvä. Tällähetkellä lähtee splaadeni putkesta pikkasen liian herkästi.
     
  24. Mendel

    Mendel RTX ON

    Viestejä:
    329
    Rekisteröitynyt:
    21.09.2017
    Git gud :D
     
  25. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    Laita metodin docstringiksi haluttu kuvaus jolloin sen saa helposti ulos Controller.do_1.__doc__

    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]

    Mikäli haluaa rakentaa tietueen jossa on numero, selite ja itse funktio samassa rakenteessa täytyy käyttää dict-datatyyppiä jossa avaimena on valittava numero ja arvona toinen dict jonka avaimena taas funktion selite ja arvona itse suoritettva funktio. Tämä menu dict siis saadaan Controller-luokasta myös dynaamisesti hieman muokkaamalla ylläolevaa esimerkkiä.

    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]

    Tästä rakenteesta saadaan taas helposti string-muotoinen menu ja käyttäjän input() syötteen perusteella voidaan suorittaa haluttu metodi. Tällöin kaikki kolme: valittava numero, selite ja suoritettava funktio pysyy aina tiukasti yhdessä ja mikä parasta: kaikki on tehty dynaamisesti jolloin menu muokkaantuu automaattisesti jos lisätään uusi metodi Controller-luokkaan.

    Mutta jos näiden rakentaminen käy liian työlääksi itselle, kannattaa tosiaan tutustua cmd-moduuliin jossa tämä on jo valmiiksi tehty.
     
    Viimeksi muokattu: 10.10.2018
    vellu tykkää tästä.
  26. 111

    111

    Viestejä:
    90
    Rekisteröitynyt:
    08.08.2018
    .
     
    Viimeksi muokattu: 07.01.2019
  27. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    Tämä on totta, tuo one-liner ei ollut kyllä mikään paras esimerkki. Siksi kirjoittelin siihen ylös vähän mitä se tekee. Paremmin kirjoitettuna se tulisi näin:
    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]
     
    111 tykkää tästä.
  28. 111

    111

    Viestejä:
    90
    Rekisteröitynyt:
    08.08.2018
    .
     
    Viimeksi muokattu: 07.01.2019
  29. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Niin siis jos haluat kutsua heti getattr:n palauttaman metodin, niin ne sulut tarvitaan. CCC:n esimerkissä metodi tallennetaan ensin controller-muuttujaan, joka kutsutaan virheenhallinnan jälkeen kutsumalla controller().
     
    111 tykkää tästä.
  30. mcduck

    mcduck

    Viestejä:
    13
    Rekisteröitynyt:
    21.01.2017
    Hjoo. Pitää kai tulla päivitelemään välillä, viime kerrasta on sen verran aikaa että tais olla vielä muron puolella. :D

    offgrid.jpg

    Askarrellaan siis Stealth/hacking-henkistä 3rd-person peliä Unityllä. Ideana että niiden tavallisten aseiden jne sijaan pelaajan "arsenaalina" on AR-lasit jolla näkee kaiken datan mitä ihmiset ja laitteet jättää ajan mittaan, hahmojen tekstiviestit, NFC-data ovien skannereita käyttäessä jne, ja sitten kasa ohjelmia joilla kaikkea dataa ja laitteita (ja sitä kautta ihmisiä ;) ) voi manipuoloida.



    Koko peli on tehty modaaja-ystävälliseksi, valmiin version mukana tulee Unity-projekti omien työkalujen ja ison kasan 3D-malleja jne. kera, ja tuosta projektista voi sittten kätevästi pakata omat kentät AssetBundleksi ja pudottaa pelin kansioihin tai ladata Steam Workshoppiin muiden ihmeteltäväksi. Itseasiassa tetiin homma vielä helpommaksi ja editori yhdistää localhostilla pyörivään peliin suoraan nopeampaa testaamista varten (kätevämpää näin, kun tehdään itse kaikki sisältö samoilla työkaluilla)

    Itse tehtävät, keskustelut, hahmojen tekoäly (ainakin raskaampaa laskentaa lukuunottamatta), laitteet, pelihahmon puhelimessa pyörivät ohjelmat jne. pyörivät kaikki omissa Lua-virtuaalikoneissaan ja niiden scriptit löytyvät sitten ihan tekstitiedostoina pelin kansioista niin että kuka tahansa pääsee halutessaan muokkaamana ja säätämään asioita.

    Ja häpeämätön syy tähän viestiin on tietty että nyt olis kickstarter käynnissä että saadaan vähän lisäaikaa kehitykseen ja pystytään tekemään jonkunlainen puoli-julkinen beta noiden modaustyökalujen ja Lua-API:n hiomista varten. Tosin moisen rahan ruinaamisen vastapainoksi riivittiin kasaan myös julkinen (ja buginen) demo joka on ilmaiseksi tarjolla Itch.io:ssa. Eli siitä vaan kokeilemaan.

    Asiaan kuuluvat linkit:

    Omalta osalta ne viimeisimmät päivitykset työhön (demon kanssa tappelun lisäksi) on noiden pelaajan puhelimessa pyörivien appien ja sitä tukevan API:n jne täydellinen uudelleenrakentaminen. Edellisen version teki firmasta jo poistunut koodari ja jossain välissä alkoi käydä selväski että kyseisellä tyypillä ei ollut ihan motivaatio riittänyt tehdä tuota niiden specisen mukaan mistä sovittiin, ja lopputuloksena homma ei sitten tietty toiminut ihan niin kuin olisi pitänyt (Lua-scripti ei oikeasti pystynyt määräämään milloin ohjelma on käynnissä tai ei ole, ja sekalaiset muut jutut ympäri peliä pääsivät itsekseen vaihtelemaan ohjelman ikonia päälle/pois jne ilman että Lua-puoli tiesi asiasta-> lopputuloksena sotkua.) Kyseinen tyyppi on muissa töissä jonkun muun riesana nyt ja ohjelmat toimivat siis pelissä niinkuin oli tarkoituskin. Olis vaan pitänyt heti samaan tien tajuta repiä koko vanha koodi pois ja tehdä alusta asti uusiksi, meni reilu kuukausi hukkaan yrittäessä selvitellä ja muokata sitä vanhaa sotkua toimimana oikein...)

    ...ja kaikesta päätellen seuraavaksi sitten sama edessä noiden verkkon kytkettyjen laitteiden osalta, ainakin demoa viimeistellessä tuli vastaan muutama juttu jotka eivät toiminut ihan niin kuin olisi tarkoitus. No, ainakin on tuoreena muistissa toimiva arkkitehtuuri tuohon niin noiden korjaaminen tuskin vie mahdottoman pitkään.


    (edit: vielä kun osais kirjoittaa ilman että joka toinen sana on typotettu)
     
    Viimeksi muokattu: 11.10.2018
    null, zamerok, Pekste ja 6 muuta tykkäävät tästä.
  31. jaaha

    jaaha

    Viestejä:
    77
    Rekisteröitynyt:
    22.10.2018
    AV Scissors. Pieni videosoitin, joka tunnistaa pätkästä liikettä ja ääntä ja näyttää niiden sijainnit timelinessa. Säästää aikaa jos edessä on parin tunnin äänite elukasta yksin kotona, tms. Epäilemättä vastaavia ohjelmia on olemassa, mutta ei tullut tarpeeksi nopeasti vastaan. Hinta 0 e; toimii Linuxilla ja käännettävissä Windowsille yms. Beta, open source.

    Lataus tuolta: Tarpeeksi Hyvae Soft
    Sorsat tuolta: leikareipa/avscissors

    [​IMG]
     
  32. 111

    111

    Viestejä:
    90
    Rekisteröitynyt:
    08.08.2018
    .
     
    Viimeksi muokattu: 07.01.2019
  33. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    Ihan hauska ohjelma. Enpä ole moiseen edes törmännyt Pythonilla. Jollain C# tuli joskus väsättyä jotain näppäimistö- ja hiiri-input-tunnistimia.

    Koodissa häiritsi ehkä turhat kommentit, joka taas viestii yleensä epäselvästä koodista jos asioita joutuu paljon selittämään. Näppäinyhdistelmien ja suoritettavien funktioiden irrallisuus myös häiritsi, sekä yleisesti vaikeasti luettava logiikka any/all funktioineen, indekseineen ja osittain huonoine muuttujanimineen, esim. "current" nimen tilalla voisi olla "pressed_keys" joka taas auttaa ymmärtämään koodia :) Ohjelmassa oli myös pieni bugi joka liittyi näppäimen päästöön joka taisi tyhjentää koko current-setin, eikä vain viimeistä.

    Tässä oma versio:

    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]
     
    Viimeksi muokattu: 25.10.2018
  34. 111

    111

    Viestejä:
    90
    Rekisteröitynyt:
    08.08.2018
    .
     
    Viimeksi muokattu: 07.01.2019
  35. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    Totta kyllä, että mun versiossa sitä funktiota toistetaan kun pidetään näppäimiä pohjassa, tosin se saattaa olla myös joskus mitä halutaan. Esim. Ctrl + c/v toimii just noin, että kun kerran kopioit niin voit pastee kun vaan pidät Ctrl + v pohjassa.

    Lambda on toiselta nimeltä nimetön funktio jota kannattaa käyttää jos halutaan wrapata jokin yksinkertainen toiminnallisuus (nimettömän) funktion sisälle. Tässä tapauksessa se mahdollistaa suoritettavien funktioiden "function_1" ja "function_2" viittauksen ennen kun niitä on koodissa edes määritelty. Ilman lambdaa tulee NameError. Toinen tapa on määrittää funktiot ensiksi ja vasta sitten viitata niihin ilman suoritusta, esim: {"avain": function_1}, tällöin ei tarvitse käyttää lambdaa ja ei tule NameErroria.

    Globaali vakio "COMBINATIONS" on itse asiassa tuple, eli muuttumaton (immutable) lista, joka sisältää dict-olioita joilla on avaimet "keys" sekä "functions". "keys"-Avaimen arvo on setti (eli se vastaa tietotyypiltään "pressed_keys" muuttujaa joka on myös setti). Tästä syystä näitä kahta muuttujaa voidaan verrata keskenään myöhemmin "==" operaattorilla eikä tarvitse käyttää any/all funktioita. "functions"-Avaimen arvo on tuple joka sisältää noita suoritettavia funktioita wräpättynä lambdaan.

    combo['keys'] viittaa siis juuri tuohon COMBINATIONS-setin dictin avaimeen jonka arvossa (tietotyypiltään set) on määritelty nuo eri näppäinyhdistelmät.

    set-tietotyyppi on samantyyppinen kuin dict, mutta sillä erotuksella, että se sisältää vain avaimia. Tuple-tietotyypissä kannattaa muistaa se juttu, että jos määrität vain yhden objektin sinne niin siellä perässä pitää olla pilkku.

    Tämä on itseasiassa aika hyvä pätkä just tutustua noihin Pythonin erilaisiin tietotyyppeihin ja millon mitäkin kannattaa käyttää :)
     
    Viimeksi muokattu: 25.10.2018
    111 tykkää tästä.
  36. 111

    111

    Viestejä:
    90
    Rekisteröitynyt:
    08.08.2018
    .
     
    Viimeksi muokattu: 07.01.2019
  37. jaaha

    jaaha

    Viestejä:
    77
    Rekisteröitynyt:
    22.10.2018
    leikareipa/3dcube-js, ensimmäisenä JavaScript-kynäilynä basic-tason 3d-softarendaaja, jossa testissä erilaisia piirtopintoja/-tapoja.

    SVG ja canvasin oma täyttäjä vaikuttaa suhteellisen nopeilta löysälläkin koodilla - ainakin omalla koneella kuutioita voi sulloa näytölle aika paljonkin, ennen kuin SVG:kään hidastuu. Muistaakseni Firefoxilla jompikumpi ei pyörinyt niin hyvin, mutta Chromella ihan ok. Tietysti teksturointi, syvyystestaus yms. puuttuu.

    Onko joku vääntänyt js:llä barycentric-tyylistä softarendainta? Epäoptimoimaton versio ei ainakaan vaikuta olevan tarpeeksi nopea käyttöön, toisin kuin C++:lla desktopilla. Nopeampia softarendaustapoja on, mutta tuo olisi yksinkertaisuudessaan kätevä.
     
  38. jaaha

    jaaha

    Viestejä:
    77
    Rekisteröitynyt:
    22.10.2018
    leikareipa/limpynet, perustason terminaalipohjainen neuroverkko C++:lla MNISTiä oppimaan. Ei mikään huippukiinnostava, mutta mukavahan näitä on kyhätä. Piirtelee lopuksi ASCIIna MNISTin testikuvia ja antaa netin arvailla niitä. Muistaakseni yhdellä 50-200 neuronin välikerroksella MNIST oppiutuu 97 prosentin paikkeille, dataa ja kerroksia säätämällä voinee saada hiukan korkeammaksi.

    Recurrent-verkot olisi astetta kiinnostavampia, mutta niiden toteuttaminen amatöörinä nollista vaikuttaa vähän työläämmältä.
     
  39. Vallaton

    Vallaton

    Viestejä:
    4
    Rekisteröitynyt:
    30.10.2016
    Tere! Tehtiin kouluprojektina incremental-peli (mallina Cookie Clicker jne.) ja julkaistiin se Play-kauppaan Egg Crusher. Toteutettiin peli kolmen hengen ryhmässä Unityä käyttäen. Peli on vielä pientä viilausta vailla mutta otan mielelläni palautetta vastaan.

    Kiitti!
     
  40. jaaha

    jaaha

    Viestejä:
    77
    Rekisteröitynyt:
    22.10.2018
    Pari vuotta maailmaa nähnyt RallySportED-kenttäeditori historialliselle DOS-peli Rally-Sportille toimii nyt selaimessa: RallySportED (beta) by Tarpeeksi Hyvae Soft. Lista uusista, pelattavista/editoitavista kentistä löytyy osoitteesta RallySportED Track List. Voit vapaasti yrittää rikkoa rataennätyksiä, mutta kukaan ei ole onnistunut.

    [​IMG]

    Mukana mm. monisivupolygoni-3d-softarendaaja, aidot pikselimössögrafiikat ja replikaatio pelin tavasta distortata tekstuureja, joten niiden rumuus ei tule yllätyksenä vasta pelissä.

    JavaScript-sorsat, todo/bugilistat yms. Githubista, leikareipa/rsed-js. Saatavilla myös assemblyllä väännetty DOS-versio kun hiukan selailee.
     
    Topixx tykkää tästä.
  41. jaaha

    jaaha

    Viestejä:
    77
    Rekisteröitynyt:
    22.10.2018
    VCS. Videokaappausohjelma Datapathin VisionRGB-siepparikorteille. Tietääkseni paras sellainen, kun puhutaan spesifistä softasta. Ei mainittavan GPU-riippuvainen, joten sopii myös virtuaalikoneeseen, mutta vaatii kohtuullisen prosun. Alla pyörii KVM:n kautta Windows XP:ssä Xeon 1230 v3:lla.

    Tällä hetkellä ilmainen. Sorsat ja linkki binääreihin: leikareipa/vcs.

     
  42. jaaha

    jaaha

    Viestejä:
    77
    Rekisteröitynyt:
    22.10.2018
    leikareipa/retro-ngon, n-sivuisten polygonien JavaScript-retrosoftarendaaja RallySportEDistä nyt omana pienenä moottorinaan. Yritin samalla räpeltää testiksi jotain funktionaalisen ohjelmoinnin esiastetta mukaan. Yhdistelmä JavaScript + softarendaus + immutability + humanisti koodaamassa takaa kyllä erinomaisen suorituskyvyn.

    Varmaan tuota johonkin pieneen huviretroräpellykseen voisi käyttää 3d-moottorina. Jonkun Asteroids-kloonin voisin ainakin itse vääntää selaimeen sillä, oletettavasti. Kelkasta puuttuu esim. frustum clipping ja perspektiivinen tekstuurimappaus, joten mihinkään immersiivisiin 3d-maailmoihin moottori ei väänny.

    Jos joku tietää nimen tekstuurimappaukselle, jossa uv-koordinaatit lasketaan polygonille lennosta screen spacessa siten että v 0..1 = pienin..suurin y ja u 0..1 = pienin..suurin x kullakin y:n tasolla, kerro toki. Tämähän mappaa esim. neliön oikein, mutta jos neliötä kierittää niin tekstuuri warppautuu. Tapaa käytetään ainakin Rally-Sportissa, enkä ole varma, millä nimellä se kulkee, jos ylipäätään millään.
     
    Xiyng tykkää tästä.
  43. jaaha

    jaaha

    Viestejä:
    77
    Rekisteröitynyt:
    22.10.2018
    leikareipa/rallysported-diverse, RallySportEDin retro desktop -versio. JS-versio deprekoi tämän aikaisemmin, mutta palautin sen nyt linjoille, koska miksi ei. Onhan siellä esim. Glide-tuki 3d-kiihdytykselle, joka on harvinaisempaa nykyään. Käytännössä myös aika laaja OS-tuki, koska Win32 API:n kautta Windows 95+ ja Qt:lla aika monta muuta käyttistä. Myös viime kesästä asti vaiheessa ollut "tuki" Matrox Mystiquelle ja S3 ViRGElle löytyy. Dokumentaatio on toisaalta vähän heikompaa, eikä valmiita binäärejä ole juuri nyt saatavilla.

    Kenttiä löytyy edelleen osoitteesta RallySportED track list, josta pääsee myös suoraan editoimaan niitä weppiliittymän kautta. Rataennätykset on vielä kaikki meikäläisen nimissä - joskaan en ole toteuttanut tapaa muiden submitata omia ennätyksiään, joten pientä huijausta siinä mielessä. Nykyisellään rata-assetit on GitHubissa, leikareipa/rallysported, joten periaatteessa sitä kautta voi ehdotella, mutta ei se tietysti ole kätevin mahdollinen tapa.

    [​IMG]
    Glide-kiihdytetty versio PCemillä emuloituna, nähtynä virtuaalisessa 3d-ympäristössä toisen tekemäni softan kautta.
     
  44. andy050

    andy050

    Viestejä:
    29
    Rekisteröitynyt:
    20.01.2017
    Tällänen pieni casual peli tuli värkättyä.

    https://play.google.com/store/apps/details?id=com.SteamedPoet.MarbleLift

    "Tavoitteenasi on saada marmorikuulat alatasolta ylimmälle napauttamalla sivuilla olevia sinisiä hissejä. Pelissä on 10 tasoa ja luonnollisesti vaikeustaso kasvaa tasolta toiselle. Peli vaatii nopeita refleksejä ja havainnointikykyä, sillä et saa jättää kuulia hetkeksikään huomioitta tai saattaa olla liian myöhäistä!"
     
  45. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Tuolla "Pieniä kysymyksiä ohjelmoinnista"-ketjussa joulukuussa mainitsin työn alla olevasta UNO-korttipelistä, mutta en vielä kehdannut laittaa mitään koodia esille. Nyt sain viimeinkin GUI:n valmiiksi, niin laitetaas nyt sitten peli tänne näytille. GitHub.

    En ole vieläkään testejä tai virheenhallintaa saanut tehtyä. Alunperin koko peli oli koodattu tekstipohjaiseksi ja aika iso osa pelilogiikasta meni uusiksi GUI:n rakentamisen yhteydessä. En vieläkään ole tyytyväinen lopputulokseen, mutta saa nyt tähän väliin kelvata.

    Kuulisin taas mieluusti kritiikkiä kokeneemmilta koodareita, että mihin asioihin kannattaisi kiinnittää enemmän huomiota ja mitä kannattaa parantaa.
     
    ©©© tykkää tästä.
  46. living_death

    living_death ★ Still alive ™

    Viestejä:
    2 022
    Rekisteröitynyt:
    15.11.2016
    @Nigel ei osaa koodata, mutta pitääkö minun asentaa jotain Python juttuja koneelle, että pääsisin testailemaan, tai olisiko mahdollista saada Windows versio joka käynnistyisi suoraan .exe filestä tms?

    Pelaan PALJON ja päivittäin Facebook Gameroomista Unoa ja odotan, että joku tekisi joskus myös Skip-BO -pelistä tietokoneversion (pelikortit löytyy kotoa) :)

    uno.png
     
  47. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Python pitää olla asennettuna, muuten ei toimi. On vissiin olevassa jotain tapoja muuntaa Python-ohjelma .exeksi, mutta en ole perehtynyt. :tdown:
     
  48. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    Mitä pikaisesti katoin koodia niin tuohan näyttää hyvältä :tup: Pieniä juttuja ehkä koodin rakenteessa ja repositoryssä itsessään. Kaipa se konventio on, että pistetään src tai uno_game-kansion alle koodit ja pidetään toi repositoryn juuri readme.md, requirements.txt, Dockerfile, jne. tiedostoissa. Itse laittaisin varmaan UI:n vielä omaan kansioon ja pilkkoisin tuon 1000 riviä omiksi filuiksi sinne. Vähän soomea myös vielä vilisi koodissa vaikka nähtävästi jossain vaiheessa käänsitkin nimet englanniksi :) Itse en kyllä koskaan ole jaksanut tuohon tkinter kirjastoon tutustua koska kaikki on nykyään webissä. Eli jos tuon kääntäisi web-sovellukseksi ja pistäisi johonkin pyörimään niin alkaa olla aika kova paketti!

    Tämmöiset hassutukset menee muuten regexillä yhdellä rivillä ;)
    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]

    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]

    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]
     
    Viimeksi muokattu: 12.02.2019
  49. Nigel

    Nigel

    Viestejä:
    264
    Rekisteröitynyt:
    23.10.2016
    Joo lähdin vääntämään tuota tkinterillä, koska en tähän hätään halunnut opetella uutta ohjelmointikieltä ja tkinteristä oli jo jotain pohjaa ensimmäisen ohjelmointikurssin jäljiltä. En oikeastaan edes tiedä mitä pitää osata, että tuon saisi selaimessa pyörimään. Javascriptin lisäksi mitä tarvitsisi opiskella (frameworkit yms)? Pakko piakkoin siirtyä opiskelemaan noita frontend-asioita jonkinlaiselle tasolle. Flask backendin puolelta on jo tuttu.

    Kiitos hyvistä vinkeistä. Otin jo neuvosta väärin ja painoin päivityksen GitHubiin. :) Tosin tuo nimilaatikon validointi ei ole ihan täydellinen, koska ensimmäistä merkkiä ei enää saa deletoitua, jos sen kirjoittaa väärin. Varmaan aika simppeli korjata. Täytyy perehtyä myohemmin.

    Noista elif-lauseista olen samaa mieltä. Niitten kanssa aika nopeasti koodista tulee vaikeaselkoista. Äkkiseltään tuota mapper-tekniikkaan voi käyttää muutamassa muussakin kohtaa.
     
    ©©© tykkää tästä.
  50. ©©©

    ©©©

    Viestejä:
    212
    Rekisteröitynyt:
    16.10.2016
    HTML, CSS ja Javascript, sillähän se alkaa selaimessa pyörimään. Itse ainakin tykkään Vue.js frameworkistä. Tosin tietty Javascript pitää olla hallussa ennen kun noihin lähtee. Varsinkin kannattaa noi uusimmat JS:n ominaisuudet omaksua. Btw. laita noi UI ja cards kansiot myös sinne src-kansion alle :)