Introkisa Joulu 2012

Post Reply
Viltzu
Guru
Posts: 1132
Joined: Sun Aug 26, 2007 5:45 pm
Location: Alavieska
Contact:

Introkisa Joulu 2012

Post by Viltzu »

CoolBasic introkilpailu Joulu '12!
Alkuperäiset säännöt kirjoittanut Makesmi

Joulukuu alkoi ja laitetaas introkisa käyntiin.
Tämä introkisa alkaa tänään, 1.12.2012, ja loppuu 24.12. klo 00:00. Palauttakaa tuotos ennen kyseistä ajankohtaa. (Toisin sanoen ennenkuin päivä on 24.) Äänestys järjestetään kisan loputtua ja se päättyy 31.12.

Säännöt
  • CoolBasic Enchanted on sallittu! Myös kisan aikana tulevat uudet versiot saa ottaa kisassa käyttöön.
  • objekteja ja partikkeleja saa käyttää, mutta piirtokomennot ja kuvat ovat suositus
  • myös tiiminä saa osallistua
  • introt on palautettava tähän topikkiin zip tai rar-pakettina taikka koodina viimeistään 24.12 klo 00:00
  • musiikkia ei ole pakko tehdä itse, sekä se saa olla tehty ennen kisaa.
  • paketissa täytyy olla lähdekoodi ja paketin koko ei saa ylittää 20,12 Mt
  • ei saa olla tehty ennen kisan alkua.
  • intro ei saa hakea netistä mitään, eikä porsaanreikien keksimistä ja käyttämistä suvaita.
  • DLL-tiedostot ja kutsut eivät ole sallittuja.
  • videotiedostot ja -komennot eivät ole sallittuja.
  • Erilaisia kirjastoja saa käyttää(cbSDK, cbFUN), kunhan ne eivät riko muita sääntöjä. (Eli esimerkiksi et saa käyttää DLL:iä)
  • loppupeleissä minä päätän onko intro sääntöjen mukainen!
Vinkkejä:
  • efektit liikkumaan pehmeästi musan mukaan
  • eri efektien väliset vaihdokset hauskalla tavalla
  • fraktaaleilla saa hienoja efektejä helposti, pienellä koodilla ja samalla oppii rekursion käytön

Linkki kesän introkilpailuun viewtopic.php?f=14&t=2799
Kannattaa katsoa kyseinen topiikki. Katsokaa myös alemmasta viestistäni Atomin ja Wingin vinkit.
Osallistumisen lisäksi kysymykset ja mielipiteet kilpailusta ovat tervetulleita.

Banneri voittajalle (Mahdollisesti vähän karu.):
introkisa_joulu12.png
introkisa_joulu12.png (678 Bytes) Viewed 17073 times
Katso muut värivaihtoehdot avaamalla spoileri:
introkisa_joulu12.png
introkisa_joulu12.png (693 Bytes) Viewed 17050 times
introkisa_joulu12.png
introkisa_joulu12.png (718 Bytes) Viewed 17045 times
introkisa_joulu12.png
introkisa_joulu12.png (727 Bytes) Viewed 17045 times
Halutessasi voit tehdä vaihtoehtoisen bannerin voittajalle, jota hän voi käyttää allekirjoituksessaan omani sijasta (Joka on ymmärrettävää). Hyvä koko on esimerkiksi 80x24.
Last edited by Viltzu on Thu Dec 06, 2012 4:12 pm, edited 2 times in total.
Viltzu
Guru
Posts: 1132
Joined: Sun Aug 26, 2007 5:45 pm
Location: Alavieska
Contact:

Re: Introkisa Joulu 2012

Post by Viltzu »

Viime joulun introkisa topiikista Atomin ja Wingin vinkit kisaan:
atomimalli wrote:Efekteistä voi kenties hakea inspiraatiota ja oppia.

Jos mietityttää että miten intron saa etenemään efektistä toiseen niin yksi vaihtoehto on pistää koodia pääsilmukassa vaikka ajan tarkistavan iffin sisään. Tarkan ajan millisekunteina saa timer():llä. Minä tykkään ottaa sen kierroksen alussa johonkin kivaan muuttujaan talteen, josta sitä on helppo käyttää. Toinen käyttö ajalle on vaikka asioiden liikutus tai värien muuttelu. Siitä voisinkin tehdä ehkä toimivan esimerkkikoodin:

Code: Select all

'This is your first CoolBasic program!

alkuaika=timer()
repeat
	aika=timer()-alkuaika 
	'nykyisestä ajasta pitää miinustaa alkuaika, koska timer mittaa aikaa koneen käynnistymisestä eikä ohjelman käynnistymisestä. Näin saadaan aikaan ajastin, joka alkaa nollasta ohjelman käynnistyessä.
	color aika/10 mod 255,aika/100 mod 255, aika/7 mod 255  
	'mod on jakojäännös. sillä arvo pomppaa takaisin nollaan kun siitä tulee liian iso. Väriarvojen ei kannata olla yli 255.
	box 100,100+sin(aika/10.0)*500,30,aika/100
	'sini on semmonen trigonometrinen funktio joka menee aaltona edestakaisin -1 ja 1 välillä. se tekee kokonaisen kierroksen 360:ssä, eli se menisi kolme kierrosta sekunnissa, koska millisekunnit etenevät 1000 sekunnissa. Sini kannattaa kertoa jollakin jos haluaa että se vaikuttaa enemmän kuin pikku nykimistä.
	'jos muistan oikein niin 10.0:lla jakaminen aiheuttaa vähemmän pätkintää. Millisekunnit etenevät niin nopeasti että kannattaa pienentää.
	'jos väreistä ei halua niin välkkyviä niin voi koittaa soveltaa siniä siihen. Vaikeaksi sen tekee se että sini menee myös miinukselle ja värit eivät tykkää negatiivisista arvoista.
	'kannattaa plussata siihen jotain ettei mene miinukselle ja varoa kertomasta liian isolla ettei mene yli 255.

	'tehdäämpä vielä ajastettu esiintulo ja poistuminen
	if aika>8000 and aika<16000 then
		color 123,221,50
		circle 200,200,20+sin(aika/15)*5 'pieni sinikikkailu tuossa koossa!
	endif

	drawscreen
forever
laitetaampa vielä selvyyden vuoksi sama ilman kommentteja:

Code: Select all

'This is your first CoolBasic program!

alkuaika=timer()
repeat
	aika=timer()-alkuaika 

	color aika/10 mod 255,aika/100 mod 255, aika/7 mod 255  
	box 100,100+sin(aika/10.0)*500,30,aika/100

	if aika>8000 and aika<16000 then
		color 123,221,50
		circle 200,200,20+sin(aika/15)*5
	endif

	drawscreen
forever
Täne kannattaa varmaan erilaisia vinkkejä laittaa, joista voisi olla hyötyä intron väsäykseen. Vaikkapa kertoimien laskemisesta musiikkiin synkkaavaksi tai että mistä voisi löytyä musiikkia jota saa käyttää
Wingman wrote:Innostuinpas minäkin, ja tein esimerkin musiikin synkkauksesta;

synkkaus toimii siis niin, että aika jaetaan iskujen välillä (millisekunteina). .xm tiedostoissa ja muissa tracker formaateissa nopeus on kahtena lukuna,
SPD ja BPM. silloin väli=60000/bpm korvataan lauseella väli=(spd*60/(bpm*24)*1000

Code: Select all

'This is your first CoolBasic program!
start=Timer()		'otetaan alkuaika, Timer() antaa ajan koneen käynnistyksestä, muttei ohjelman
bpm=120 			'tähän biisin bpm
väli=60000/bpm      'tällä saadaan iskujen väli millisekunneissa
		'jos biisisi ON .xm tiedosto (tai muu tracker-formaatti) niin nopeus ilmoitetaan kahdella muuttujalla
		'spd ja bpm. silloin; väli=(spd*60)/(bpm*24)*1000, muuten kaikki toimii samalla tavalla
Repeat
	aika=Timer()-start		'tämä pitää koodin ajan tasalla
	wisku=iskut				'tämän avulla voidaan katsoa, muuttuuko iskut-muuttuja framen aikana
	iskut=(aika/väli)/2		'tämä muuttuja näyttää kuinka mones isku menossa; kätevää.
	puoli_wisku=puoli_isku
	puoli_isku=(aika/väli)	'iskujen tiheyttä voi muuttaa, esim. iskut=(aika*2/väli) tai (aika*4/väli) tai (aika/väli)/4 
							
	If iskut<>wisku Then 	'tarkistetaan onko isku tapahtunut ja leikitään hieman
		c#=255
	Else
		c#=CurveValue(0,c,20)
	EndIf 
	If puoli_isku<>puoli_wisku Then 	'tarkistetaan onko isku tapahtunut ja leikitään hieman
		c2#=255
	Else
		c2#=CurveValue(0,c2,20)
	EndIf 
	
	Color c,c,c2
	Box 0,0,400,300
	Color 255-c,255-c,255-c2
	Text 0,0,iskut
	Text 0,12,puoli_isku
	DrawScreen 
Forever 
EDIT: Huomasin, että väli-muuttujan kaksi kaavaa antavat eri arvoja, väli=(spd*60)/(bpm*24)*1000 antaa moduulin yhteen riviin kuluvan ajan, kun taas väli=60000/bpm antaa iskujen välisen ajan.
Muistakaa myös, että varsinkin cbE:n tapauksessa on kannattavaa tehdä introsta fps-riippumaton. Tai vähintään rajoittaa fps:ää. Mutta introista kun kyse on ja ajoitukset voivat olla tärkeitä on fps-riippumattomuus parempi vaihtoehto. Yksinkertaisimmillaan sen voi tehdä delta-ajan avulla.

Code: Select all

lastUpdate = Timer()
Repeat
    multiplier# = (Timer() - lastUpdate) / 16.0
    lastUpdate = Timer()
    x# = x + 2 * multiplier
    Box x, 150, 10, 10
    DrawScreen
Forever
Yllä olevassa koodissa laatikko liikkuu saman verran samassa ajassa riippumatta FPS:stä.

On myös toinen tapa tehdä fps-riippumattomuus. Tämä on se "oikeampi" tapa. Lasketaan aina tietyn ajan aikana ja piirretään sitten. Ongelmana tässä voi tulla kuitenkin vastaan se, että jos laskemiseen kuluu liikaa aikaa, alkaa kuva tökkiä. (Jos siis kestää yli tuon määrätyn ajan jonka aikana laskeskellaan (16ms esimerkissä)). Selitin varmasti huonosti ja ehkä väärin mutta esimerkki selventänee.. Foorumeilla löytyy jostain Koodaajan postaus asiasta, joka voi selventää jos sen joku löytää.

Code: Select all

t = Timer()
Repeat
	While t < Timer()
		x# = x + 1
        t = t + 16
    Wend
	Box x, 150, 10, 10
	DrawScreen
Forever
EDIT:

Muistakaa myös, että tämä kisa ei anna syytä rikkoa lakia. (Tekijänoikeuslaki.)

User avatar
CCE
Artist
Artist
Posts: 650
Joined: Mon Aug 27, 2007 9:53 pm

Re: Introkisa Joulu 2012

Post by CCE »

Jee!

Aikooko joku muuten tehdä tähän jotain? Peisik julkaisee ehkä teoksen, mutta olisihan se ikävä jäädä ainoaksi osallistujaksi. :|
User avatar
Ilmuri
Developer
Developer
Posts: 277
Joined: Sun Aug 26, 2007 2:46 pm
Location: \o

Re: Introkisa Joulu 2012

Post by Ilmuri »

CCE wrote:Jee!

Aikooko joku muuten tehdä tähän jotain? Peisik julkaisee ehkä teoksen, mutta olisihan se ikävä jäädä ainoaksi osallistujaksi. :|
Ainahan Peisik voi kilpailla keskenään~
CoolBasic henkilökuntaa
Kehittäjä
CoolBasic Classic
Wingman
Devoted Member
Posts: 594
Joined: Tue Sep 30, 2008 4:30 pm
Location: Ruudun toisella puolella

Re: Introkisa Joulu 2012

Post by Wingman »

Mä en tänävuonna ainakaan koodauksessa loista, meni juuri windowskone alta enkä jaksa linuxin ja CBn kanssa säätää. Jos joku haluaa lähtä haastamaan peisikkiä, niin voin tehdä musiikkeja (tarkempaa infoa IRCissä Wing @ #cb2)
- - - -
atomimalli
Moderator
Moderator
Posts: 227
Joined: Wed Aug 29, 2007 3:55 pm

Re: Introkisa Joulu 2012

Post by atomimalli »

Mites olisi siirto uudeksuivuodeksi? Kuulin juttu että saattaisi pari produa muuten tippua kisasta. viltzulle ainakin sopisi. vastalauseita?
Wingman
Devoted Member
Posts: 594
Joined: Tue Sep 30, 2008 4:30 pm
Location: Ruudun toisella puolella

Re: Introkisa Joulu 2012

Post by Wingman »

Omasta mielestäni sopii, luultavasti kaikilla on kiireitä ennen joulua
- - - -
Viltzu
Guru
Posts: 1132
Joined: Sun Aug 26, 2007 5:45 pm
Location: Alavieska
Contact:

Re: Introkisa Joulu 2012

Post by Viltzu »

Kilpailu tullaan siirtämään ensi vuoden puolelle, jos entryjen määrä jää kovin vähäiseksi. (Muutama intro tjsp) Jos haluat että kisaa ei siirretä, esitä vastalauseesi tässä topiikissa. Kilpailun siirtämisen peruuttamisen perusteluksi ei riitä, että jollakin on intro valmiina.
EDIT:

Kisa siirtyy ensi vuoden puolelle. Tämä on siis loppunut. Ilmoitan kun uusi kisa aloitetaan.

Last edited by Viltzu on Fri Dec 28, 2012 7:10 pm, edited 1 time in total.
Viltzu
Guru
Posts: 1132
Joined: Sun Aug 26, 2007 5:45 pm
Location: Alavieska
Contact:

Introkisa Talvi 2013 Keräys

Post by Viltzu »

Nimeän seuraavan kisan Introkisa Demokisa Talvi 2013, katsotaan miten vähän pidempi kisa menee.

Mutta, ajattelinpa koittaa jotain tälläistä pientä rahankeruuta introkisan palkintoja varten. Väsäsin sivun, jonka kautta voit lahjoittaa rahaa palkinnoksi seuraaviin demo/introkisoihin PayPalin kautta. PayPal-tunnus on vaihtoehtoinen, voit myös maksaa PayPalin sivulla Visa:lla, Visa Electronilla (Vaatii Visa Verified merkinnän), MasterCardilla sekä parilla muulla.

Sivulle pääset klikkaamalla tästä

Huom. Lahjoitukset tulee olemaan anonyymejä, ellet ilmoita minulle yksityisviestillä tai irkissä (Viltzu @ IRCNet) nimeäsi jonka haluat mainittavan sekä lahjoituksen rahasiirron ID (näkyy sivulla siirron jälkeen) todisteeksi, että olet maksun suorittaja. Mahdollisesti myös muita tietoja saatan kysyä.

Tämä PayPal-järjestelmän kautta toimiva yksityisen toimihenkilön keräys ei ole rahankeräyslain alaista toimintaa ja täten täysin luvallista.
Post Reply