Offtopic (I/2012)

Muu yhteisön välinen keskustelu.
User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: Offtopic (I/2012)

Post by axu » Fri Mar 30, 2012 1:11 pm

Ilmuri wrote:Tee koejärjestely. Naru oikealle korkeudelle, naruun kiinni painoja ja väliin rulla joka pitää painojen pään pystysuorassa.
Hyvä idea. Punttisalilta varmaan löytyy jokin tarpeeksi vastaava laite, niin ei tarvitse itse rakentaa... Ja sitten pitäisi löytää se normaalirakenteinen mies, itse olen liian kevyt ja heikko (huomaa ironia kahden edellisen virkkeen välillä) :D

Toisaalta voisin laskea, kuinka suuri kitkakerroin pitää olla miehen kenkien ja maan välillä, että ei lähde liusumaan. Oletuksena on, että hän pystyy nostamaan sen 70 kiloa. Vaakasuorassa vetäminen on luultavasti raskaampaa, mutta lienee vielä hyväkuntoiselle täysin mahdollista.
EDIT:

No sepä oli helppo laskea. Jos tukipinnan voima on N=800N (noin 80 kg painava mies) ja vetävä voima T=650N +-50, vaadittava lepokitka on yksinkertaisesti µ=T/N eli esimerkissäni se on väh. 0,75-0,88. Uskoisin, että ainakin 600N vetävän voiman pystyy voittamaan useilla pinnoilla. Mainittakoon vaikka, että kumi-asfaltti lepokitka on >0,9.

Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image

Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Offtopic (I/2012)

Post by Awaclus » Fri Mar 30, 2012 3:17 pm

axu wrote:Osaisiko joku arvioida köydenvedossa voiman suuruutta, kun ottelijoina on 2 n. 20 vuotiasta normaalirakenteista miestä? Minulla on vähän tuo arviointikyky hukassa, mutta voisiko kuvaukseen sopiva henkilö vetää narusta 600-700 N voimalla? Vai rupeaako tässä vaiheessa jo kengät luisumaan?
Pystysuunnassa tuo onnistuisi, vastaa 70 kg painon nostamista.
Tarvitsen tätä tietoa yhteen peliin jossa haluan säilyttää jonkinsortin tieteellistä paikkansapitävyyttä.
Onneksi pelattavuus on tärkeämpää kuin realistisuus.

User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: Offtopic (I/2012)

Post by axu » Fri Mar 30, 2012 4:08 pm

Chaosworm wrote:Onneksi pelattavuus on tärkeämpää kuin realistisuus.
Miten ironista :D Enpä keksi tähän mitään sanottavaa... Eikä se pelini tule edes olemaan realistinen, mutta scifin henkeen kuuluu kaiketi jonkinsortin tieteellinen tarkkuus/illuusio siitä mahdottomien asioiden lisäksi.
Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image

User avatar
ItzRaines
Active Member
Posts: 211
Joined: Sat Feb 05, 2011 7:59 pm

Re: Offtopic (I/2012)

Post by ItzRaines » Fri Mar 30, 2012 10:35 pm

Olen saanut hyvin selville, että GTA IV on paljolti kiinni näytönohjaimen muistista. Peli toimii nVidian GTX 550:n kanssa mainiosti lähes high- asetuksilla, kunhan pääsee irti pahimmista latauskohdista. Onko mitään keinoa, millä saisi lisättyä näytönohjaimen muistin määrää peliä pelatessa, kun siellä nyt näkyy vaivaiset 999 MB? Näytönohjain käyttää silti kahden gigan verran tietokoneen keskusmuistia (DXDIAG). Eli yhteensä kolmea gigaa. Kaverilla on GT 530 eli ei mikään peliohjain, mutta ko. peli toimii silti täysin moitteetta 2 Gigan muistinsa ansiosta jopa paremmilla asetuksilla, kuin minulla.

User avatar
naputtelija
Devoted Member
Posts: 718
Joined: Wed Nov 03, 2010 8:56 pm
Location: Joku piste pohjoisessa.

Re: Offtopic (I/2012)

Post by naputtelija » Sat Mar 31, 2012 11:07 am

ItzRaines wrote:Olen saanut hyvin selville, että GTA IV on paljolti kiinni näytönohjaimen muistista. Peli toimii nVidian GTX 550:n kanssa mainiosti lähes high- asetuksilla, kunhan pääsee irti pahimmista latauskohdista. Onko mitään keinoa, millä saisi lisättyä näytönohjaimen muistin määrää peliä pelatessa, kun siellä nyt näkyy vaivaiset 999 MB? Näytönohjain käyttää silti kahden gigan verran tietokoneen keskusmuistia (DXDIAG). Eli yhteensä kolmea gigaa. Kaverilla on GT 530 eli ei mikään peliohjain, mutta ko. peli toimii silti täysin moitteetta 2 Gigan muistinsa ansiosta jopa paremmilla asetuksilla, kuin minulla.
Oletko katsonut ini-tiedoston kohtaa max memory allocation tai vastaavaa? Jos se on säädetty yhteen gigaan?
<Ize> Pitäs tehä allekirjotus..
<Ize> Vois keksiä jonkin nasahtavan sanonnan..
<Ize> Siitä tulis upea legenda ja kaikki vaihtaisivat allekirjoituksensa siihen.
<Ize> Ehkä ei kuitenkaa...

User avatar
naputtelija
Devoted Member
Posts: 718
Joined: Wed Nov 03, 2010 8:56 pm
Location: Joku piste pohjoisessa.

Re: Offtopic (I/2012)

Post by naputtelija » Tue Apr 03, 2012 8:02 pm

Nostetaanpas näinkin arvokas topic ylös aika kätevällä aiheella.

Oletko ikinä törmännyt kohtaan, jossa sinun täytyy osata laskea binääri/oktaali/heksadesimaalilukuja yhteen tai kertoa niitä? Oletko ikinä turhautunut siitä, että sinun pitää joka kerta katsoa vähintään kolmesta nettimuuntajasta tavutiedot ohjelmaasi? Sitten ohjelmointilaskin on juuri sinulle!

Ohjelmointilaskin sisältää käteviä ominaisuuksia, mm. Heksadesimaalilaskenta, oktaalilaskenta, binäärilaskenta, binäärisiirrot, binääriset operaatiot ja jopa dynaamisen muuntimen! Voit ottaa ohjelmointilaskimen käyttöön painamalla Alt+3 windowsin laskimessa.
<Ize> Pitäs tehä allekirjotus..
<Ize> Vois keksiä jonkin nasahtavan sanonnan..
<Ize> Siitä tulis upea legenda ja kaikki vaihtaisivat allekirjoituksensa siihen.
<Ize> Ehkä ei kuitenkaa...

User avatar
atomimalli
Moderator
Moderator
Posts: 227
Joined: Wed Aug 29, 2007 3:55 pm

Re: Offtopic (I/2012)

Post by atomimalli » Tue Apr 03, 2012 10:19 pm

Joo. Nes-emulaattoria tehdessä satoja tai tuhansia laskuja tullut eri järjestelmissä sillä tehtyä. Päässähän nuo kyllä myöskin menisi, ja sen suhteen ohjelmointilaskin on aivan hirveä. Taidot rapistuu jne.
Jos nyt rupesi enemmän kiinnostamaan, niin tuo nes-emulaattori ainakin tarjoaisi hurjia ohjelmointilaskinhaasteita kaikenikäisille. Voi laskeskella muistiosotteita ja komentoja ja debuggeroida ja ränklätä bittejä. Siitä taitaa vielä puuttua liuta komentoja, joita voi lisätä.
Siinä hommassa ainakin tarvii muuntaa heksasta kymmenjärjestelmään! Jos joku haluaa mun uusinta koodia niin voin kaivaa sen jostain mutta se ei ole julkaisukunnossa vielä. Ehkä sitten kesällä.

ps. Coolbasic näyttää tukevan heksoja, mutta oikeasti ne on rikki.
Last edited by atomimalli on Tue Apr 03, 2012 10:23 pm, edited 1 time in total.

User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: Offtopic (I/2012)

Post by axu » Tue Apr 03, 2012 10:23 pm

Aloin tässä miettimään taas uusia ideoita, ja tuumasin että onnistuisiko Mario Party -tyyppinen minipelikokoelma yhteisöprojektina?
Kutakuinkin ajatus menee näin: Yksi henkilö laatii etukäteen hahmografiikat sekä muutamia tilesettejä/taustakuvia ja ääniefektejä. Toinen (tai sitten se sama) tekee kehysohjelman pelille, eli siinä hoidetaan em. grafiikan lataus sekä pelin asetuksiin liittyvät asiat. Jokaisen pelaajan näppäimet ja muut asetukset tallennetaan muuttujiin, josta niitä voi sitten kaivaa. Eli tässä olisi eräänlainen API pelille.
Tämän jälkeen varsinainen yhteisöosuus lähtee käyntiin: Jokainen saa tehdä lyhyitä minipelejä, joita sitten yksinkertaisesti lisäillään includefiluina projektiin (projekti voisi ehkä olla GitHubissa päivittämisen helpottamiseksi). 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 määrän ja kokoonpanon mukaan, kuten Mario Partyssa (esim. 1vs1vs1vs1, 2vs2, 1vs3, 1vs1). Myös mahdollisuus toimia useammassa kategoriassa.
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.

Mitä luulette, tulisiko tämäntyyppinen projekti onnistumaan?
Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image

User avatar
Wingman
Devoted Member
Posts: 594
Joined: Tue Sep 30, 2008 4:30 pm
Location: Ruudun toisella puolella

Re: Offtopic (I/2012)

Post by Wingman » Tue Apr 03, 2012 10:26 pm

Onnistua se voisi kyllä, kunhan se perusmoottori on oikeasti toimiva ja hyvin suunniteltu. Itsekin voisin mielelläni koodailla jonkin pikkupelin, tehdä musiikkia tai grafiikkaa, ehkäpä jopa koodata itse mottoria, mutta mielellään niin että tosiaan suunnittelu toimii (gitissä se onnistunee hyvin ;) )
- - - -

User avatar
Timblex
Advanced Member
Posts: 252
Joined: Sun Apr 11, 2010 10:37 am
Location: Kouvola

Re: Offtopic (I/2012)

Post by Timblex » Tue Apr 03, 2012 10:33 pm

Vaikuttaa ihan mielenkiintoiselta idealta. Voin tulla mukaa koodaamaan niitä minipelejä, jos tämä tästä johonkin etenee. :)
Entinen timpe99...
Demokisa 2013 demo valmis, Check it out!

User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: Offtopic (I/2012)

Post by axu » Tue Apr 03, 2012 10:50 pm

Wingman wrote:Onnistua se voisi kyllä, kunhan se perusmoottori on oikeasti toimiva ja hyvin suunniteltu. Itsekin voisin mielelläni koodailla jonkin pikkupelin, tehdä musiikkia tai grafiikkaa, ehkäpä jopa koodata itse mottoria, mutta mielellään niin että tosiaan suunnittelu toimii (gitissä se onnistunee hyvin ;) )
Olen ehkä vähän kehno tiimipelaaja, ja ajattelin itse (tai vaihtoehtoisesti joku yksi henkilö) tehdä sen moottorin/APIn, joskin ideoita pitää ottaa vastaan. Koko projektin suunnittelu oikeastaan lähti siitä, että ainakin täällä cb:läisillä harvemmin onnistuu tiimiprojektit, joten tehdäänpäs yhdessä peli missä kaikki työskentelee yksin...

Mietin tässä, kannattaisiko nuo pelit tehdä kutsuttavina funktioina, niin vältytään turhalta nimitörmäyksiltä ("pelasin minipeliä X ja sen jälkeen muut pelit bugaa") ja muuttujat vapautetaan pelin päätyttyä. Tällöinkin taulukot, tyypit ja globaalit muuttujat voivat muodostua ongelmaksi (ehkä nimeämissäännöt?).
Kiva, että innostusta näyttää löytyvän jo muutamassa minuutissa pelkän idean postaamisesta :)
Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image

User avatar
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Offtopic (I/2012)

Post by MaGetzUb » Tue Apr 03, 2012 10:52 pm

Voisin olla myös ehkä mukana... Grafiikka voisi olla mahdollisesti tiettyä väriteemaa mukailevaa, mutta spritet/objektit voisi olla eri peligenreihin sopeutuvia. Jos nyt esim joku haluaa tehdä zombie räiskinnän ja joku taas jonkun lampaalla pelattavan tasohyppelyn, jossa kerätään kukkia.. niin ne grafiikat olisi ihan kiva sillä lailla olla toteutettuina. :D
EDIT:

Emt tajusiko kukaan.

Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.

User avatar
MetalRain
Active Member
Posts: 188
Joined: Sun Mar 21, 2010 12:17 pm
Location: Espoo

Re: Offtopic (I/2012)

Post by MetalRain » Wed Apr 04, 2012 12:22 am

axu wrote:Aloin tässä miettimään taas uusia ideoita, ja tuumasin että onnistuisiko Mario Party -tyyppinen minipelikokoelma yhteisöprojektina?
Kutakuinkin ajatus menee näin: Yksi henkilö laatii etukäteen hahmografiikat sekä muutamia tilesettejä/taustakuvia ja ääniefektejä. Toinen (tai sitten se sama) tekee kehysohjelman pelille, eli siinä hoidetaan em. grafiikan lataus sekä pelin asetuksiin liittyvät asiat. Jokaisen pelaajan näppäimet ja muut asetukset tallennetaan muuttujiin, josta niitä voi sitten kaivaa. Eli tässä olisi eräänlainen API pelille.
Tämän jälkeen varsinainen yhteisöosuus lähtee käyntiin: Jokainen saa tehdä lyhyitä minipelejä, joita sitten yksinkertaisesti lisäillään includefiluina projektiin (projekti voisi ehkä olla GitHubissa päivittämisen helpottamiseksi). 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 määrän ja kokoonpanon mukaan, kuten Mario Partyssa (esim. 1vs1vs1vs1, 2vs2, 1vs3, 1vs1). Myös mahdollisuus toimia useammassa kategoriassa.
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.

Mitä luulette, tulisiko tämäntyyppinen projekti onnistumaan?
Näkisin että paljon haasteita on.

Yksi melko pian tuleva ongelma on globaalien muuttujien väliset ristiriidat. Vaikka kuinka kaikki minipelit pidettäisiin omissa funktioissaan niin silti globaalit muuttujat, funktiot, tyyppikokoelmat ja taulukot ennenpitkää risteävät nimissään eri minipeleissä kun niitä kehitetään toisistaan erillään.

Pelaajien hahmot tulisi voida ainakin jollain tapaa tunnistaa pelistä toiseen samoiksi hahmoiksi, vaikka pelit olisivat paljonkin toisistaan erilaisia, esimerkiksi seuraavan kaltaisissa minipeleissä tasohyppely - ristinolla - parallaxscroller. Pelaajan pitää voida samantien tunnistaa itsensä kun peli alkaa, pelaajaa ei tulisi ohjata turhaan harhaan.

Pelin graafisen ilmeen kannalta olisi hyvä käyttää tai ainakin pyrkiä käyttämään samanlaisia käyttöliittymäelementtejä eri minipeleissä esimerkkeinä edistymispalkit, nappulat, ajastimet ja pistelaskurit. Ylipäänsä kasa erilaisia valmisfunktioita voisi olla saatavilla liittyen pelaajien ja pelin hallintaan. Pelaajien kontrollit, pelin käynnistäminen, seuraavaan peliin/ylipeliin siirtyminen, pistelasku, ennätyslistat, musiikin, grafiikan lataus, yms.

Jotta jokainen minipeli myöskin voisi tehdä omia loitsujaan pitää niille myöskin tarjota tietoa tilanteesta sopivassa muodossa. Tarvitaan siis jonkinsortin tapa kertoa pelin asetuksista ja tilanteesta. Ainakin tälläisiä asioita olisi hyvä kertoa:
  • pelaajien tiedot
    • määrä
    • nimet
    • mahdolliset pelaajien esineet ja/tai taidot (roolipelielementit on aina pop
  • aiemmin pelattujen minipelien tulokset
  • tiedot järjestelmästä
    • näppäinasetukset
    • vinkki tietokoneen suorituskyvystä
Mitä tulee sitten pelin teemaan niin en ole koskaan itse ollut mario party pelien ystävä ja näkisinkin että kaikkien minipelien taustalla oleva peli, ylipeli on (ainakin itselleni) tärkeämpi kuin minipelit. Minipeleillä pitää olla merkitystä, siten ettei ne ole vain tuhat ja yksi erilaista räpellystä omissa hiekkalaatikoissaan vaan osa suurempaa kokonaisuutta.

Muutamia ehdotus ideoita herättelemään:
  • Universumin/Maailman/Valtion valloituspeli: Kerää minipeleissä resursseja ja taistele vihollisia vastaan. Lopuksi eeppinen pomotaistelu jossa kaikki kerätyt resurssit ovat jollain tavalla hyödynnettävissä.
  • Cooking mama tyylinen ruuanlaitto/ravintolanpyörityspeli: Pyörittäkää ravintolaa/kahvilaa mahdollisimman hyvin, erilaisia ruokaan ja kodinhoitoon liittyviä minipelejä.

User avatar
atomimalli
Moderator
Moderator
Posts: 227
Joined: Wed Aug 29, 2007 3:55 pm

Re: Offtopic (I/2012)

Post by atomimalli » Wed Apr 04, 2012 12:39 am

Vaikuttaa hyvältä. Muuttuja-apia en kyllä kannata, mutta muuten oikein hyvän kuulonen idea. Grafiikkaan voisi kenties muodostaa pelejä tehdessä jotain apia, jotta uusiokäyttö helpottuisi ja teema yhtenäistyisi. jos joku tekee hahmojen rendauksen ja liikutuksen ylhäältäpäin, niin se on sitten jonkun toisen käytettävissä ja laajennettavissa.
Perus-api koostuisi ohjaimien luvusta, graffajutuista ja äänijutuista.
Luultavasti liian yhtenäisen teeman haku kuitenkin vaan haittaisi projektia. Ylisuunnittelua kannattaa välttää, mutta perusjutut pitää saada sille tasolle että ei mene homma solmuun. Apeista voi tehdä tyhmiä versioita, joissa api on paikallaan, vaikkei varsinaisesti tee mitään. Siinä on kuitenkin selkeä paikka täydentää sitten kun jotain kaipaa.

Kontrolleissa taitaa olla tärkeää se, että niitä käytetään suunnilleen samanlailla. Esimerkiksi tämmöinen jaottelu voisi olla hyvä: suuntanapit ja kaksi toimintonappia. kenties enempi, jos tarvii. Kontrolliapissa on se hieno juttu, että jos sitä on pikkasen miettinyt etukäteen, niin nettipelin lisääminen saattaisi hoitua muutoksitta peleihin, mutta se on varmaan aika kaukainen juttu.

MetalRainin ehdottamista yhtenäisyyselementeistä pitäisi saada jokin linjaus ja apin tuki, jotta hommassa olisi järkeä. Käyttöliittymäelementit olisi hyvä hoitaa apin puolelta, jotta vaivaa säästyisi, ja ettei projekti pirstoutuisi sen osalta.
Joku pikkuavatarisysteemi olisi hyvä saada pelaajan tunnistukseen, tai jokin sen korvike. Väri tai pikkukuva olisi ainakin helppoja. Joku monimutkaisempi graafinen elementti olisi jo vaivaksi.

Mahdollisimman paljon pitää olla funktioissa, ettei nimiavaruus sotkeennu ja ne, jotka näkyy koko ohjelmaan pitää jotenkin prefixata niin vältytään siltä. Tässä on sitten taas se ongelma että funktioraja voi tulla vastaan pian. Siihen auttaa yhteinen api ja sen suunnittelussa varmaankin kannattaa säästellä hieman funktioita.

Luulen että uuden pelin lisäys kävisi parhaiten laittamalla siihen viittaava funktiokutsu suureen selectiin. Siitä kutsusta kannattaisi varmaankin tehdä monikäyttöinen niin, että engine voi esimerkiksi hakea sen kautta tietoja tai käynnistää pelin.

Pelisilmukassa tulisi mahdollisesti olemaan kutsu enginelle siltä varalta että se haluaa tehdä jotaikin taustalla. Alkuun sitä ei välttämättä niin tarvisi, mutta myöhemmin sille tulee varmaan käyttöä. Ainakin nettijutuissa sen luulisi olevan tarpeen.

Ensimmäisenä pitäisi ohjaus-api saada ja sen jälkeen sitä käyttöliittymäpuolta ja yhtenäisyyttä. Kysymys on, että mikä pelit sitoo, minkälainen pisteytyssysteemi on ja mitä sillä tekee.

User avatar
Latexi95
Guru
Posts: 1164
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: Offtopic (I/2012)

Post by Latexi95 » Wed Apr 04, 2012 9:56 am

Ehdotan, että jokainen peli sisältäisi yhden tälläisen erittäin monikäyttöisen funktion jota kutsumalla erilaisilla parametreillä saadaan minipeli käynnistymään ja toisella parametrillä funktio palauttaisi pelaajien määrät, jotka sopivat minipeliin (esimerkiksi muistipalassa tai sitten yhteisen globaalin taulukon avulla). Tällöin uuden pelin saisi liitettyä kirjoittamalla yhteen Selectiin yhden uuden Casen jossa tuota monikäyttöistä funktiota kutsuttaisiin.

Mitä tulee minipelin sisäisiin taulukoihin, globaaleihin muuttujiin ja vakioihin, niin mielestäni kätevintä on laittaa kaikkien niiden nimien alkuun joku minipelikohtainen kirjainyhdistelmä, joka estää päällekkäisyydet. Samaa systeemiä on käytetty cb:lle tehdyissä kirjastoissakin.

Tietynlainen yhtenäisyys olisi kyllä hyväksi, että kysymyksessä olisi edes sama peli eikä monta peliä yhdessä exe:ssä. Jonkunlainen sopimus käytettävän grafiikan tyylistä on paikallaan.

Atomin ehdottama pakollinen APIn kutsu olisi varmasti hyödyllinen tulevaisuutta ajatellen. Ehkä voisi tehdä jonkun APIDrawScreenin?
EDIT:

Oho Atomi sanoikin tuon saman mitä minä ensimmäisessä kohdassani. Pitäisi aina lukea huolella edelliset viestit. :)


User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: Offtopic (I/2012)

Post by axu » Wed Apr 04, 2012 10:35 am

Ohhoh, olipas paljon luettavaa :D
@MaGetzUb: Mielestäni tuossa pitää vähän ruveta sovittelemaan, ettei tarvitse jokaiselle pelille tehdä omia spritejä, kun pelihahmot pysyvät aina samana. Voi se zombieräiskekin olla pastelliväreillä tehty, enkä usko että edes pahan näköinen olisi xD


@MetalRain: Nimiongelmaan varmaan on pakko olla prefixit, vaikka kehittäjän nimi (2-kirjaiminen tunnus) ja pelin numero, esim. AX02_Jotain (aXun kolmas peli), niin ei tule turhan pitkiä nimiä. 2-kirjaimisilla tunnuspätkillä saa jo lähes 700 yhdistelmää, niin eiköhän riitä. Jos joku tekee yli 100 peliä, miettiköön voiko laatuun panostaa enemmän tai ottaa uuden tunnuksen :D

Käyttöliittymää varten on kyllä pakko tehdä APIin funktiot, ja niissä ei saa joustaa paljoa. Esim. ajastin ja pisteet tulisi olla aina samoilla paikoilla.
Pelaajien kontrollit, pelin käynnistäminen, seuraavaan peliin/ylipeliin siirtyminen, pistelasku, ennätyslistat, musiikin, grafiikan lataus, yms.
Pelaajan kontrollit tulee olemaan omana funktiokutsunaan (esim. PlayerKeyHit(ACTION_1, 1)) senkin takia että myöhemmin on helppo lisäillä vaikka kapulatuki muokkaamatta valmiita minipelejä. Seuraavaan peliin/ylipeliin siirrytään, kun funktio, jossa peli pyörii, palauttaa arvon. Arvo on osoite muistipalaan, joka sisältää pelaajien saamat pisteet (ja ehkä muutakin) ja se luodaan yksinkertaisella funktiolla. Ennätyslistoista huolehditaan automaattisesti. En ole varma, tarvitaanko musiikin ja grafiikan lataukseen omaa funktiota. Tuhoaako cb automaattisesti funktiossa ladatun median jos sitä ei välitetä Returnin välityksellä? Ensituntumalta sanoisin, että tuhoaa, mutta tarkemmin ajatellen ei, jolloin tarvitaan erilliset funktiot median lataukseen, jotta ne saadaan tuhottua automaattisesti. Pääsääntöisesti yritetään käyttää pelin tarjoamaa mediaa.

En oikein ymmärrä MetalRain mitä tarkoitat "loitsuilla" tässä tapauksessa. Mihin peli tarvitsee aiempien minipelien tuloksia? Handicappia varten? Minusta tuntuu, että tuo, ja pelaajien esineet/taidot monimutkaistaisivat liikaa minipelien kehitystä. Ellei sitten esineet/taidot ole erittäin yleiskäyttöisiä, esim. pelaajalla 2 on "hyvä" esine ja pelaajalla 3 on "status-boost". Suorituskyvyn kertominen olisi muuten hyvä idea, mutta siinäkin on se monimutkaisuus. Haluaako kaikki tehdä peleistään joustavia tämän asian suhteen?

Ylipelin ideaa en ole vielä kehittänyt, mutta todennäköisesti ei mitään Mario Partyn lautapelin tyyppistä tule tapahtumaan. Mielenkiintoisia ideoita sulla, mutta en tahdo ainakaan tahdo rajoittaa pelien teemaa mihinkään, varsinkaan kodinhoitoon :D


@atomimalli: Ilmeisesti pitää laatia yhtenäinen moottori ainakin sivulta päin ja ylhäältä päin kuvatuille peleille, hieman Mario Partyn tapaan (ainakin aikaisemmissa osissa monet minipelit pyörii samalla moottorilla, ja erilaisuus tulee sitten ympäristöstä/tavoitteista). Näiden käyttöön ei kuitenkaan pakoteta ketään, eli jos muunlaista pelattavuutta tarvitaan, niin saa tehdä.
Mainio idea tehdä APIin tyhmiä komentoja laajennettavuutta varten.

Täysin samaa mieltä kontrolliapin suhteen. Luultavasti suuntanappeja ja kahta toimintonappia enempää ei kannata olla, sillä ainakin minun näppäimistö huutaa apua jo yksin pelatessa, vaikka käytössä olisi vain yksi toimintonäppäin. Kolmen näppäimistön kombo FTW! Nettipeli kuulostaa aika hankalasti toteutettavalta. Yksinkertaisimmillaanhan kontrolliapi tarvitsee täyden kontrollin pelin objekteihin, mutta pelitilanteen enteily onkin melko hankala toteuttaa rajoittamatta joustavuutta.

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). Kysymys kuuluu, pitääkö pelaajien valita ennalta-asetetusta hahmoista vai voiko näitä kustomoida esim. vaihdettavilla kasvonpiirteillä ja vaatteilla? Kustomoinnissa on tietenkin se hyvä puoli, että esim. siihen avaruusaluksen kylkeen voidaan sovittaa pelaajan naama. Myös artisti saa aikaan enemmän hahmoja vähemmällä työllä.

Eikös modatussa cb:ssä funktioraja ollut tavattoman korkealla?

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.
Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image

User avatar
valscion
Moderator
Moderator
Posts: 1587
Joined: Thu Dec 06, 2007 8:46 pm
Location: Espoo
Contact:

Re: Offtopic (I/2012)

Post by valscion » Wed Apr 04, 2012 11:12 am

atomimalli wrote:Mahdollisimman paljon pitää olla funktioissa, ettei nimiavaruus sotkeennu ja ne, jotka näkyy koko ohjelmaan pitää jotenkin prefixata niin vältytään siltä. Tässä on sitten taas se ongelma että funktioraja voi tulla vastaan pian. Siihen auttaa yhteinen api ja sen suunnittelussa varmaankin kannattaa säästellä hieman funktioita.
axu wrote:Eikös modatussa cb:ssä funktioraja ollut tavattoman korkealla?
NetMatch käyttää onnistuneesti modattua CB:tä ja siinä on funktioraja ylitetty jo aikoja sitten. Modatussa CB:ssä taisi olla se funktioraja jossain 10000 tietämillä eli ei pitäisi tulla vastaan. Raja saattoi jopa olla 65535 tai unsigned versio siitä eli 32767
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com

User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: Offtopic (I/2012)

Post by axu » Wed Apr 04, 2012 12:53 pm

VesQ wrote:NetMatch käyttää onnistuneesti modattua CB:tä ja siinä on funktioraja ylitetty jo aikoja sitten. Modatussa CB:ssä taisi olla se funktioraja jossain 10000 tietämillä eli ei pitäisi tulla vastaan. Raja saattoi jopa olla 65535 tai unsigned versio siitä eli 32767
Toisinpäin. Signed maksimi on 32767. Muistaakseni se raja oli kuitenkin 65535.

Siitä "ylipelistä" vielä, mitä en aamummalla kerennyt kirjoittelemaan: Näitäkin voi jokainen kirjoittaa, eihän ne eroa paljoakaan minipeleistä kuin suunnittelunsa puolesta. Sitten vaan kutsutaan minipelejä pelattavaksi ja tehdään niiden tuloksilla jotain.

Tässä jonkinlainen esimerkki siitä, minkälainen minipelin lähdetiedosto on:

Code: Select all

nG.MAIN_MiniGame = New(MAIN_MiniGame)   //Lisätään peli pelikokoelmaan
nG\Name = "Maze survival"
nG\PlayerSetup = MAIN_1v3               //Tämä peli on vain 1 vs 3
nG\Desc = "Others try to survive in a maze while trying to avoid the zombified player."
nG\Buttons = "%PLAYER1%: Directional buttons to move, %ACTION_1% to sprint. %PLAYER2%: Directional buttons to move."

Type AX00_MyType
    Field Value
End Type

Function AX00_Game(PlayerCount)
    MAIN_SetBGMusic(MAIN_STRESSED)      //Taustamusiikki painostavaa
    MAIN_SetTimeLimit(40, MAIN_TOP)     //Aikaraja 40s, näytetään yläreunassa (toinen vaihtoehto on keskellä split-screen pelejä varten)
    
    //tähän pelaajien lataaminen, suunnitelmat sen suhteen hieman keskeneräiset
    
    Repeat
        //pelin päivittäminen
        MAIN_DrawScreen()               //Tässä päivitetään myös musiikit, päivitetään ja piirretään käyttöliittymä sisältäen pistelasku, ajastin ym.
        
        If AllCatched = True Then Return MAIN_FinishData(1, 0)    //Ensimmäinen tiimi (yksin oleva pelaaja) voitti
        If MAIN_GameTime = 0 Then Return MAIN_FinishData(0, 1)    //Muut pelaajat voittivat
    Forever
End Function
Kannattaako pelaajien määrää lyödä tuollalailla lukkoon? Vai pitäisikö pelit kehittää mielivaltaista pelaajajoukkoa varten? Siinä missä kaikki vastaan kaikki on helppo toteuttaa, esimerkin mukainen 1 vastaan loput onkin hieman kinkkisempi juttu. Mitä jos muita pelaajia onkin 5? Entä 1? Olisiko peli vielä reilu? Vai pitäisikö jako tehdä yksinkertaisesti kaikki vs kaikki tai joukkueet vastakkain, jättäen monimuotoisemmat pelit ulkopuolelle? Tällaisessa rajoituksessa on hyväkin puoli, ei ole jossain moodissa puutetta peleistä (monessa Mario Partyssa 1v3 pelejä on melko vähän koska niitä pelataan harvemmin). Pitääkö pelaajien määrää rajoittaa? Splitscreen-pelit menevät aika hankalaksi, jos pelaajia on mielivaltainen määrä (tosin splitscreenin ajattelin tehdä osaksi APIa, jolloin minipelien kehittäjien ei tarvitse sitä miettiä). Jos pelaajien määrä on tiedossa etukäteen, voidaan paremmin räätälöidä peli juuri sille määrälle. Yksilösuoritukset on tietty helppo sijoittaa ihan mihin tahansa joukkuejärjestelyyn.
Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image

User avatar
MetalRain
Active Member
Posts: 188
Joined: Sun Mar 21, 2010 12:17 pm
Location: Espoo

Re: Offtopic (I/2012)

Post by MetalRain » Wed Apr 04, 2012 1:16 pm

Tuossa eilen yöllä innostuin kirjoittelemaan ja teinpä sitten githubiin projektin tätä varten ikäänkuin proof-of-consept mielessä. Siinä on yksi testiminipeli sekä hieman pelaajienhallintaa, yksinkertainen pistelasku sekä avatar tuki. Näppäimiä luetaan yhtenäisellä tavalla. Nyt kun tuli tänne lukemaan teidän viestejä niin huomasi että osan asioista oisi voinut nimetä toisin ja sen ylipelin (tässä tapauksessa pistelasku) oisi voinut eriyttää selkeämmin omaksi kokonaisuudekseen, mutta vieläpä sitä ehtii.

En löisi pelaajien määrää lukkoon. On varmaan turhauttavaa tehdä minipeliä jota ei juuri ollenkaan pelata jos sen pelimuoto on niin harvinainen. Mitä nyt tulee mieleen niin pelimuotoja voisi olla kaikki vastaan kaikki, yksi muita vastaan, kaikkien pelaajien yhteistyö ja kahden joukkueen välinen kamppailu.

User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: Offtopic (I/2012)

Post by axu » Wed Apr 04, 2012 2:21 pm

MetalRain wrote:Tuossa eilen yöllä innostuin kirjoittelemaan ja teinpä sitten githubiin projektin tätä varten ikäänkuin proof-of-consept mielessä. Siinä on yksi testiminipeli sekä hieman pelaajienhallintaa, yksinkertainen pistelasku sekä avatar tuki. Näppäimiä luetaan yhtenäisellä tavalla. Nyt kun tuli tänne lukemaan teidän viestejä niin huomasi että osan asioista oisi voinut nimetä toisin ja sen ylipelin (tässä tapauksessa pistelasku) oisi voinut eriyttää selkeämmin omaksi kokonaisuudekseen, mutta vieläpä sitä ehtii.

En löisi pelaajien määrää lukkoon. On varmaan turhauttavaa tehdä minipeliä jota ei juuri ollenkaan pelata jos sen pelimuoto on niin harvinainen. Mitä nyt tulee mieleen niin pelimuotoja voisi olla kaikki vastaan kaikki, yksi muita vastaan, kaikkien pelaajien yhteistyö ja kahden joukkueen välinen kamppailu.
Näinhän se nopeasti näyttää tapahtuvan :D Ei varmaan kannata kovin paljoa kehitellä tuota ennen kuin suunnitelmat lyödään lukkoon.
Minäkin kallistun kyllä tuohon vapaaseen pelaajamäärään, mutta maksimirajana tyypillinen 4 pelaajaa. Jos haluaa enemmän pelaajia, niin sitten jaetaan useammalle vuorolle. Tämä helpottaa suunnittelua, kun ei tarvitse miettiä sitä 1vs10 tilannetta ollenkaan. Mutta miten toimii 1 vs loput kaksinpelinä? Mitä eroa kaikkien pelaajien yhteistyössä ja kaikki vastaan kaikki (tekniseltä kannalta en näe eroa)?

Pitäisikö tätä keskustelua jatkaa erillisessä topikissa, kun tämä alkaa mennä ontopikin puolelle :D Pitää vain keksiä hyvä projektinimi.... Cool Game Collection? nääh, monet kammoaa siistejä (lue: cool) nimiä... Eli Basic Game Collection :D Ei nyt tule oikeita ideoita mieleen :P
Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image

Post Reply