Wikistä voit lukea yleensä ajantasaisempaa tietoa kuin tästä viestistä: https://github.com/aXu-AP/CoolBasic-Party-Pack/wiki
Juttele ircissä: #cbpartypack @ IRCnet
Ilmoitustaulu:
Tällä hetkellä tarvitaan auttavia käsiä seuraaviin hommiin:
- Päägraafikko. Tehtävänäsi on luoda pelihahmoja, tilesettejä ja mahdollisesti toteuttaa toivomuksia. Tyyliä ei olla vielä lukittu, joten sen suhteen sinulla on melko vapaat kädet.
- Musiikkia. Tarvitaan monentyyppistä musiikkia, joskin tähän saa kaikki kykenevät osallistua.
- Ääniefektejä. Joku kohtalainen kirjasto ääniefektejä, jotka sointuvat sopivasti yhteen. Myös hahmojen ääniä tarvitaan jonkun verran (huudahduksia).
- Pelimoottori ylhäältäpäin kuvatulle pelille. Löyhästi APIin sidottu pelimoottori, joka sijoitetaan osaksi lisäkirjastoa. Lue lisää
- Pelimoottori sivultapäin kuvatulle pelille. Löyhästi APIin sidottu pelimoottori, joka sijoitetaan osaksi lisäkirjastoa. Lue lisää
CoolBasic Party Pack on partypeli yhteisöprojektina. Peli tulee olemaan minipelikokoelma Mario Party-tyyliin (toistaiseksi ei olla suunniteltu kehyspeliä, joskin sellainen tulee olemaan) ja kuka tahansa CB:tä osaava voi kantaa kortensa kekoon eli tehdä oman minipelinsä. Tällä hetkellä minipelin rakenteiden ja rajapinnan (API) tekeminen on kesken, mutta tavoitteena on saada se tarpeeksi valmiiksi 20.4 mennessä niin, että minipelien koodaaminen voi alkaa. Joitain toimintoja saattaa tulla vielä sen jälkeen (mutta niiden ei pitäisi vaikuttaa jo tehtyihin minipeleihin).
Rajapinta tarjoaa funktiot niin itse pelin kuin pelaajienkin tietojen hallintaan. Ainakin sivulta ja ylhäältä kuvatuille peleille tehdään valmiit pelimoottorit. Myös valmista mediaa (grafiikkaa ja ääntä) tarjotaan. Omaa grafiikkaa ja ääniä saa minipelilleen tehdä jos valmiista grafiikoista ei löydy tarvittavaa, kunhan ovat linjassa muiden kanssa. Ohjelmointiin liittyen tulee olemaan jonkun verran sääntöjä mm. käytettävien komentojen (ei kustom framelimittejä, pelin asetusten muuttamista ym.) ja käyttötapojen suhteen (ei kovakoodattuja näppäimiä, ääniefektejen voimakkuuksia). Pelit jaetaan eri ryhmiin pelaajien kokoonpanon mukaan, kuten Mario Partyssa (vaihtoehtoina kaikki vs kaikki, 1 vs loput tai 2 joukkuetta vastakkain). Myös mahdollisuus toimia useammassa kategoriassa (esim. yksilösuoritukset missä pelaajat eivät vaikuta keskenään toimivat joka kategoriassa splitscreeninä toteutettuna).
Musiikkia saa kanssa kuka tahansa tehdä ja ne lisätään muutamaan eri soittolistaan tunnelman mukaan (rento, vauhdikas, jännittävä jne.). Jokaiselle pelille oma musiikki olisi aika yliampumista. Peliin lisätään kehysohjelmassa tuleva soittofunktio, jota kutsutaan kutakuinkin näin: PlayBGMusic(BG_MOOD), missä BG_MOOD korvataan soittolistaa vastaavalla vakiolla. Tuo funktio hoitaisi kaiken musiikin valitsemiseen, looppaamiseen, voimakkuuteen liittyen.
Pelaajilla tulee olemaan jonkinlaiset avatarit sekä tunnusväri. Jos joku ei halua pelissään käytettävän valmista hahmografiikkaa vaan esim. avaruusaluksia, niin nämä voidaan sitten värjätä pelaajien tunnusvärin mukaisesti (johon myös oma funktio). Pelihahmot tulevat olemaan kustomoitavia.
Pisteytyksen suhteen olen hieman ristiriitaisissa fiiliksissä. Kaikkiin peleihin ei pisteytystä voi järkevästi toteuttaa (esim. kivi, paperi, sakset tai ristinolla) ja toisissa pisteiden määrä vaihtelee suuresti. Mahdollisesti pisteille pitää määrittää pelikohtainen kerroin, että keskimäärin voittaja saa vaikka 1000 pistettä. Toinen vaihtoehto on määrittää kerroin aina pelin päätteeksi niin, että voittaja saa aina 1000 pistettä ja muut suhteessa siihen. Pääsääntöisesti tärkeintä lienee voittojärjestys.
Nyt saa ehdottaa ideoita, mitä kehysohjelmaan eli API:in tarvitaan.
Tässä joitain API:n osia, mitä käytetään minipelin kehittämisessä (tarkempi tieto wikissä)
- Funktiot käyttöliittymäelementtien lisäämiseksi
- Funktio korvaamaan DrawScreeniä, samalla päivittää ja piirtää käyttöliittymän, pelin kellon ja tarkistaa halutaanko peli paussille ja toistaa looppimusan
- Korvikkeet KeyHit/Down/Up-funktioille, kutsutaan antamalla pelaajan numero ja tarvittava näppäin (nuolinäppäin tai toimintonäppäin)
- Median lataamiseen funktiot niin, että voidaan käyttää ennaltaladattuja kohteita ja pelikohtainen media tuhotaan automaattisesti pelin päätyttyä
- Funktiot pelaajien tietojen (esim. hp tai objekti) tallettamiseen
- Aavesoturin "Johdatus versionhallintajärjestelmiin" (yleistä tietoa)
- VesQ:n ohje githubin käyttöön
- githubin oma ohje (englanniksi, tämän avulla itse laitoin projun pystyyn ~puolivälistä eteenpäin)