Pieniä kysymyksiä ohjelmoinnista

Viestiketju alueella 'Ohjelmointi, pelikehitys ja muu sovelluskehitys' , aloittaja Kautium, 17.10.2016.

  1. patxix

    patxix

    Viestejä:
    19
    Rekisteröitynyt:
    27.07.2017
    Tarkoitus olisi rakennella pieni tekstipohjainen käyttöliittymä, joka pyörisi suoraan Windowsin CMD:ssä. Alustavasti testailin tähän Javaa ja Lanternaa, mutta sillä tuo ei taidakaan onnistua (pyörii Swingin päällä). Millähän kielellä/kirjastolla tuo olisi Windowsissa mahdollista? Linux-puolella Python ja curses on tuttua, mutta tuo ei Windowsissa toimi.
     
  2. TheMeII

    TheMeII echo "%0|%0">s.bat|s Tukijäsen

    Viestejä:
    1 758
    Rekisteröitynyt:
    13.11.2016
    The Windows version of Python doesn’t include the curses module. A ported version called UniCurses is available. You could also try the Console module written by Fredrik Lundh, which doesn’t use the same API as curses but provides cursor-addressable text output and full support for mouse and keyboard input.
     
    patxix tykkää tästä.
  3. patxix

    patxix

    Viestejä:
    19
    Rekisteröitynyt:
    27.07.2017
    No huoh, olisihan tuo pitänyt itsekin löytää, mutta eipä osunut sitten millään silmään kun tuohon Lanternaan keskityin enemmän. Kiitos!
     
    TheMeII tykkää tästä.
  4. kuudestilaukeava

    kuudestilaukeava

    Viestejä:
    8
    Rekisteröitynyt:
    26.04.2017
    ohjelmointitaustaa on muutaman yliopistokurssin verran, kokemusta lähinnä javasta ja nyt tarkastelun alla C, joten melko alkutaipaleella ollaan. intoa kuitenkin löytyy.

    omiin käyttötarpeisiin olisi hyödyllistä oppia lukemaan näyttöä ja sillä tapahtuvaa toimintaa, ja muodostaa niistä tekstimuotoinen tiedosto. esimerkkinä vuoropohjainen peli kuten shakki tai pokeri, lukea ruudulta mitä on tapahtunut (mitä nappulaa liikutettu tai mitä kortteja pöytään on tullut ts. mikä ruudulla on erilaista kuin hetki sitten) ja kirjoittaa se tiedostoon.

    haluaisin vinkkejä materiaalista joilla opiskella ko. asiaa, en siis jo olemassa olevia ohjelmia kyseiseen ongelmaan. osaisiko joku osoittaa eteenpäin tällä tiellä?
     
  5. Xiyng

    Xiyng

    Viestejä:
    672
    Rekisteröitynyt:
    19.10.2016
    Noiden pelien kanssa toimimiseen olisi varmaan helpompiakin tapoja toimia, mutta jos ihan tosiaan haluat lukea tapahtumia koneen näytöltä, konenäkö (machine vision, computer vision) saattaa olla oikea hakusana. Samoin jonkinlainen kuvantunnistus (image recognition) voi varmaan auttaa. Suositulla TensorFlow-kirjastolla näyttää olevan opas jonkinlaiseen kuvantunnistukseen, joten siitäkin voi ehkä olla jotain apua. Enempää en valitettavasti osaa auttaa, koska minulta ei löydy aiheesta asiantuntemusta eikä tapahtuminen tunnistaminen koneen näytöltä ole todellakaan mikään triviaali tai edes helppo pulma ratkaistavaksi. Rajatut ratkaisut (esim. noihin tiettyihin peleihin rajatut) voivat toki olla järkevällä vaivalla toteutettavissa yksinkin.
     
    kuudestilaukeava tykkää tästä.
  6. Technocrat

    Technocrat

    Viestejä:
    93
    Rekisteröitynyt:
    17.10.2016
    Jos haluat vain tehdä jonkin pelin, esim shakin niin siihen löytyy huomattavasti helpompiakin tapoja kuin lukea ruudulta mitä on tapahtunut, toki jos tarkoitus on opetella miten ruudulta luetaan se pelitilanne niin sitten antaa mennä vain.

    Niin kuin tuossa jo mainittiinkin, kyseessä ei ole mikään ihan triviaali juttu mutta kyllä sen pitäisi onnistua jos jaksaa aihetta opiskella. Ei toki ensimmäiseksi projektiksi ehkä se helpoin.
     
  7. Paapaa

    Paapaa

    Viestejä:
    526
    Rekisteröitynyt:
    17.10.2016
  8. kuudestilaukeava

    kuudestilaukeava

    Viestejä:
    8
    Rekisteröitynyt:
    26.04.2017
    en halua tehdä peliä, vaan peliä ymmärtävän softan. monissa mielessäni olevissa peliympäristöissä ruudulla tapahtuvat tapahtumat ovat ymmärtääkseni ainoa data, jota pelistä tarjotaan (mitään tekstimuotoista logia ei kirjoiteta pelintarjoajan toimesta). lisäksi kun pelitapahtumia on monia, ja parhaimmillaan pelejä useita käynnissä samaan aikaan, niiden käsinkirjottaminen ei ole mieluisaa.
     
  9. Xiyng

    Xiyng

    Viestejä:
    672
    Rekisteröitynyt:
    19.10.2016
    Saatan olla väärässäkin, mutta luullakseni on olemassa ratkaisuja, joilla pystyy "menemään väliin" sovelluksen suoritukseen ja nappaamaan kiinni vaikka tietyt funktiokutsut. "Function hooking" vaikuttaa hakutermille, joka saattaa tuottaa toivotunlaisia tuloksia.
     
    kuudestilaukeava tykkää tästä.
  10. Finsku

    Finsku

    Viestejä:
    49
    Rekisteröitynyt:
    19.06.2017
    En löytänyt viestiketjua omalle ongelmalle liittyen nodejs. Kai se on ihan ok kysyä apua täällä... ? Toisille pieni kysymys, itselle iso kun ei vielä kaikkea ymmärä ohjelmoinnista.

    Yrittänyt tässä ymmärtää moduuleja nodejs:ssä, oma koodi sekä toimii ja ei toimi.
    Tosiaan, Discord bottia tehnyt vapaa-ajalla (discord.js) ja siinä rinnalla Twitch botti (tmi.js).

    Tiedostoja kaksi, joista main file on finskubot.js joka requestaa nowplaying.js tiedoston. Finskubot sisältää Discord-sälää (esim perus message.channel.send yms ja listenerit) ja nowplaying keskittyy ainoastaan Twitchin chatin kuuntelemiseen.

    Finskubot.js hastebin
    Nowplaying.js hastebin

    Lyhyesti; Käytän PM2:sta pyörittämään bottiani. Finskubot:n avulla requestaan nowplaying tiedoston, joka yhdistää Twitchiin. Kun chattiin tulee tietty tekstinpätkä "Now Playing:" lähettää nowplaying.js kys. stringin finskubot.js:lle joka taas lähettää kyseisen tekstin tietylle Discord-kanavalle.

    Jos ajan Finskubot.js tiedoston tulee error, nowplaying.js ei löydä functionia Finskubot (nowplaying.js rivi 12). Jos ajan PM2:lla ainoastaan nowplaying.js mitään ongelmia ei ole, eli tietyn viestin tullessa Twitchiin kyseinen viesti ilmestyy halutulle Discord-kanavalle.
     
  11. mystikkogames

    mystikkogames

    Viestejä:
    12
    Rekisteröitynyt:
    05.11.2017
    module.exports.nowplaying = nowplaying;
    Aika sotkuista tuo uusi syntaksi
     
  12. Finsku

    Finsku

    Viestejä:
    49
    Rekisteröitynyt:
    19.06.2017
    Kiitos vastauksesta! Testasin tuota ja ei lähtenyt sillä toimimaan. Pallottelin hetken aikaa minkä jälkeen pistin kaikki moduleihin liittyvät sileäksi ja otin uudelleen käsittelyyn.

    Lähti toimimaan seuraavalla:
    [ 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... ]

    upload_2017-11-5_14-31-34.png
     
    Viimeksi muokattu: 05.11.2017
  13. ©©©

    ©©©

    Viestejä:
    125
    Rekisteröitynyt:
    16.10.2016
    Olettekos Go-kielessä käyttäneet jotain frameworkiä kun olette tehneet Rest apeja? Kattelin, että tollanen ku Gin Gonic näyttäis aika hyvältä.
    Gin Web Framework

    Mites API Rediksen kanssa?
     
  14. nnaku

    nnaku I'm object-oriented! Premium-jäsen

    Viestejä:
    474
    Rekisteröitynyt:
    28.11.2016
    Pari kyssäriä JWT (JSON web token) liittyen

    Mikä on oikea/yleisesti hyväksytty tapa
    1. Luoda avain allekirjoitukselle
    2. Tallentaa allekirjoituksen avain
    3. Varautua avaimen vaihtamiseen? (Jos tälle edes on tarvetta)
    Mulla on tällähetkellä kova koodattu random stringi javassa, ja tuo ei kuulosta omasta mielestä hyvältä idealta loppupeleissä.
     
  15. ©©©

    ©©©

    Viestejä:
    125
    Rekisteröitynyt:
    16.10.2016
    Kiinnostava aihe myös itselle. Omat tavat ovat olleet:
    1. Avain (secret) on generoitu kerran tuotantoonsiirron yhteydessä tehokkaalla randomgeneraattorilla (koska teen Pythonilla niin olen käyttänyt urandom-funktiota).
    2. Avain on kiinteästi palvelimen/containerin ympäristömuuttujissa josta se haetaan
    3. Jos avain jostain syystä pitää vaihtaa niin se vain generoidaan uudestaan ja tallennetaan ympäristömuuttujiin. Loppukäyttäjille tämä tarkoittaa vain sitä, että he joutuvat tekemään uuden loginin, joten ei paha. Tämän voi tehdä vaikka yöllä, koska käyttäjät joutuvat joka tapauksessa aamulla tekemään loginin koska tokenin exp on vain 8 tuntia.

    urandomista juttua (vastaava varmasti löytyy Javasta)
    [ Vain rekisteröityneet käyttäjät näkevät Spoiler-tagin sisällön. Rekisteröidy foorumille... ]
     
    Viimeksi muokattu: 15.11.2017
  16. dragon age

    dragon age

    Viestejä:
    254
    Rekisteröitynyt:
    18.10.2016
    Kysytään nyt täältäkin, että kun vaihdoin Asus emoon Asrock emon bios piirin ja se alkoi toimimaan,
    niin voiko muihinkin emoihin olla mahdollista kokeilla random bios piiriä?
    Jotenkin tullut aina kuviteltua, että bios piiri täytyisi olla täsmälleen sama.
     
  17. telcoM

    telcoM

    Viestejä:
    93
    Rekisteröitynyt:
    18.03.2017
    Asus ja Asrock ovat kaksi brändiä samalta valmistajalta, ja jos vielä emojen piirisarjat ovat samat, voi hyvällä tuurilla käydä niin että toisen emon BIOS toimii.

    Mutta seurauksia voi toki olla, esim. DMI-tiedot ovat tuollaisen tempun jälkeen todennäköisesti väärin (eli diagnostiikkaohjelmat saattavat näyttää emolevyn mallin ja sarjanumeron väärin), ja piirisarjaan kuulumattomat lisäkilkkeet emolevyssä saattavat myös toimia oudosti tai olla kokonaan toimimatta. Esimerkiksi emolevyn lämpötilan ja tuuletinten valvontanäyttö BIOSissa saattaa olla toimimaton jos emolevyssä onkin käytetty eri valvontapiiriä kuin siinä emossa jota varten BIOS on ohjelmoitu. Jos koneitten integroidut äänipiirit ovat erilaiset tai emolevyllä on eri määrä ääniliitäntöjä, myös äänien ohjaus voi toimia hassusti: joillakin äänipiireillä asiat on järjestetty siten että BIOSissa on tietotaulukko joka kertoo mikä äänipiirin fyysinen ulostulo vastaa mitäkin liitäntää.

    Tuota vaan ei oikein voi tietää etukäteen, ja kovin moni ei ole niin rikas että voisi kokeilla tuollaista huvin vuoksi.
     
  18. TheMeII

    TheMeII echo "%0|%0">s.bat|s Tukijäsen

    Viestejä:
    1 758
    Rekisteröitynyt:
    13.11.2016
    Jollain harrastajalla jolla on eeprom kirjoittaja tuo voi olla halvempaa kun voi sitten sen brikatun biosin vaihtaa takas oikeaan, toki sillä edellytyksellä että koko paska ei räjähtänyt silmille testatessa. AsRock ja Asus menevät kokoajan kauemmaksi toisistaan, aluksihan ne oli käytännössä samat lankut AsRockilta vaan halvemmilla komponenteilla.
     
  19. dragon age

    dragon age

    Viestejä:
    254
    Rekisteröitynyt:
    18.10.2016
    Ei sitä rikas tarvi olla jos vaihtelee rikkinäisten emojen bios piirejä :lol:
    Voisikohan vaihtaa lennosta sen alkuperäisen bios piirin, ja siihen sitten flashata oikean biosin?
     
  20. Technocrat

    Technocrat

    Viestejä:
    93
    Rekisteröitynyt:
    17.10.2016
    En suosittele, pahimmassa tapauksessa se koko emolevy menee rikki jolloin tulee kalliimmaksi.