Tiede.fi:n foorumilla joku ehdotti yksityisviestein käytävää shakkiturnausta.. ajattelin että tähän tarkoitukseen olisi täysin mahdollista kehittää kunnon nettisivu. Tulevan sivun ominaisuuksia:
* voi ilmaiseksi rekisteröidä oman nimimerkin
* pelata ja aloittaa shakkipelejä muita rekisteröityneitä vastaan
* voisi lähettää haasteen toiselle pelaajalle
* mahdollisesti jonkinlainen ranking systeemi
* järjestää turnauksia
Olen jo aloittanut tuon tekemisen PHP:llä, mutta olen vielä ihan alkuvaiheessa. Olisi kiva tehdä tätä 2-3:n muun tyypin avustuksella, kun itsellä on puutteitta mm. kuvien tekemisestä eri shakkitilanteista (ei liene monimutkaista)..
Tarvitaan vain siis jonkinlainen tietokanta, jossa on kullekkin pelaajalle tiedot käynnissä olevista peleistä ja niiden siirrot jne. Dataa tuskin tulee kovin paljoa.. sivut olisivat todennäköisesti aluksi omalla koneellani (Abyss+PHP), jatkosta ei tiedä viellä.
Onko kiinnostuneita? Itse osaan jossain määrin PHP:tä (toistaiseksi liian vähän), html melko hyvin, myös javascriptin osaan mutta sitä tulisi välttää..
En tiedä vielä millä systeemillä itse siirrot tehtäisiin.. yksi vaihtoehto olisi, että klikataan siirrettävää nappulaa ja sen jälkeen haluttua ruutua. Java appletilla tuohon saisi tehtyä raahauksenkin, mutta en usko että se on kovin välttämätöntä.
Ranking systeemiin tulisi jokin Battle.net:in War Craft 3 tyylinen systeemi, profiilissa näkyisi voitot, häviöt ja experience (joka lasketaan jollain kaavalla esim. pelin kulusta). Vaikeammasta pelistä saisi enemmän expaa...
Tarvitaan siis pari kolme PHP ja html taitoista tyyppiä. Itsekkin tämän varmaan saisi tehtyä, mutta projekti kestäisi huomattavasti pidempään.
Tämmoinen oli joskus mietinnän alla vaan ku loppu tuo shakkiharrastus ni eipä tuota palveluakaan jaksanu sitten vääntää pystyyn. Nyt ei kyllä lisäprojekteja auta otella, mutta jotain ehdotuksia löytyy. Eli:
-ei tuo appletti ole olennainen
-tietokanta mysql/postgrep tms. ja sinne siirrot tyyliin b2-b4. Lisäksi mahdollisesti 8x8 ASCII tilannekuva helpottamaan tilanteen piirtämistä?
-Tuo klikattava nappula on jees, lisäksi ehkä mahdollisuus kirjoittaa siirto.
-Aito vahvuuslukuranking olisi gutaa shakkiharrastajille, mutta en tiedä yhtään, toimiiko se jonkin kaavan mukaan vai kuinka(?).
Ps. 'Shakkipalvelu'
Tällä hetkellä lauta on näin: http://msdos464.no-ip.com/php/shakki/shakki.php
Jokainen tietty kirjain edustaa tietyn värin tiettyä nappulaa.. projekti on tosiaan vielä alkuvaiheessa. Tietokantoja en ole aiemmin ohjelmoinut.
edit: laudan data on siis yhtenä stringinä, jossa on 64 merkkiä.
Ehdottaisin tuon laudan tekemistä php:n GD kirjaston avulla. Opas: https://www.ohjelmointiputka.net/oppaat/opas.
Linkit tuohon kuvaan saat sitten tehtyä imagemapilla.
Vaikuttaa hyvältä, kiitos :)
Helpompi ratkaisu laudan tekemiseen on kyllä tuo alkuperäinen, sillä yhden ison (ja aina erilaisen) kuvan latautuminen vie huomattavasti enemmän aikaa, kuin HTML koodin ja sen kuvien hakeminen välimuistista.
Ainakin itse olen huomannut tämän ratkaisun parhaimmaksi tuollaisissa peleissä.
Numerot voisivat olla heti laudan vieressä, jotta se näyttäisi samalta kuin laudat yleensä. Lauta HTML-koodina kuulostaa hyvältä.
Pitäisi kuitenkin laittaa ne nappulat jotenkin havainnollisemmaksi. Yritin laittaa jonkinlaisen mustan ohuen reunuksen siihen numeroiden ja laudan väliin, mutta vaakasuoraa viivaa en saanut tarpeeksi ohueksi niin laitoin pystysuunnassakin yhtä paksuksi.
msdos464 kirjoitti:
Pitäisi kuitenkin laittaa ne nappulat jotenkin havainnollisemmaksi. Yritin laittaa jonkinlaisen mustan ohuen reunuksen siihen numeroiden ja laudan väliin, mutta vaakasuoraa viivaa en saanut tarpeeksi ohueksi niin laitoin pystysuunnassakin yhtä paksuksi.
Css:ää kehiin niin saat ohutta viivaa.
Itse en myöskään tällaisessa projektissa gd-libraryä käyttäisi, kun kaikki onnistuu käytännön kannalta helpommin normaalilla html:llä (esim. nappulat läpinäkyvillä gif-kuvilla) ja shakkilauta tablella.
Tällöin kuvat (nappulat) voi laittaa esim. linkeiksi, jolloin on helpompi tutkia, mitä nappulaa pelaaja klikkailee.
Voisit käyttää jotain shakkifonttia, taisin itte suunnitella jotain sen suuntaista ja taitaapa pari fonttia löytyäkin koneelta. Kuinka suuri vaiva se nyt sitten onkaan käyttäjän asentaa yksi fontti..
Jos siihen rankkaussysteemi tulee niin pistäkää siihen ELO.
Eipä kannata GD:tä sotkea tuohon. Mieluummin joka nappulasta pikkukuva, ja sitten vaan img-tagia oikeaan kohtaan. Kuten jo aiemmin mainittiin, GD aiheuttaa ylimääräistä kuvien latailua, mutta lisäksi se syö palvelimen resursseja kun kuvia pitää koko ajan tehdä pelkän lähettämisen sijaan.
En kyllä käsitä miksi olet vaivautunut tuota varten CSS-filun kirjoittamaan kun et sitten edes käytä sitä kunnolla :D
CSS:llä saat varmasti säädettyä tuon sellaiseksi kuin haluat, html-attribuuttisäädöt ja font-tagejä ole käytetty sitten 90-luvun.
Kylläpä tuli monta viestiä :O
lainaus:
CSS:llä saat varmasti säädettyä tuon sellaiseksi kuin haluat, html-attribuuttisäädöt ja font-tagejä ole käytetty sitten 90-luvun.
Kai sen fontinkin voisi css tiedostossa määritellä.. tällä hetkellä se ei kuitenkaan ole olennaisin ongelma :)
Ja jos muuten on php vielä outoa, kannattaa kokeilla tehdä jätkänshakki (joko kolmen suora, tai sitten viiden suora), oikean shakin sijaan. Pelin tekeminen on hieman yksinkertaisempaa, mutta silti tietyt vaiheet ovat täysin samat ohjelmoinnin kannalta.
Ainoa, että shakin muutamia vaikeuttavia "sääntöjä", ei tarvitse ohjelmoida (kuten esim. tornitus). Kuitenkin tilastointi (voitot-tasapelit-tappiot) on mahdollista toteuttaa.
Jos projekti lähtee eteneen ni kannattaa käydä lunttaamassa jostain valmiista vastaavasta ominaisuuksia, ei tarvi kattilaa kahesti keksiä. Itse pelailen tämmösessä ku GameKnot (jos joku kirjautuu tänne ni referoijaksi saa laittaa juhaj, arvostaisin kovasti :)) ja jos ihan oikein käsitin ni tämäntapasta oot itekki väsäilemässä. Tietenkään ei kannata haukata liian suurta palasta kerralla joten yhdyn siihen mitä Lebe80 sanoi. Ja yksi asia kerrallaan, kannattaa tehä jotain pienempää ensin ja siihen sitte kehittää lisää.
tsuriga kirjoitti:
Kuinka suuri vaiva se nyt sitten onkaan käyttäjän asentaa yksi fontti..
Aivan liian suuri. Kyseessä kuitenkin on weppisivu, ja sen pitää toimia suoraan kaikilla.
tkarkkainen kirjoitti:
tsuriga kirjoitti:
Kuinka suuri vaiva se nyt sitten onkaan käyttäjän asentaa yksi fontti..
Aivan liian suuri. Kyseessä kuitenkin on weppisivu, ja sen pitää toimia suoraan kaikilla.
Niin... esim. kirjastossa jne
Tuosta voi aluksi tehdä vaikka version, jossa ei tarkasteta siirtojen laillisuutta.. tuon ominaisuuden voi tehdä helposti myöhemminkin.
Aivan totta joo. Saattaisi se silti säästää kaistaa, toteuta molemmat ja laita etusivulle linkki molempiin, jos pihi tahdot olla nyt :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.