Tocmai mi-am reconfirmat teoria că programarea adevărată se învaţă scriind jocuri. 🙂 M-am apucat mai demult să învăţ GTK, un set de pachete care facilitează dezvoltarea de aplicaţii Linux (ulterior pachetele au fost portate şi pe, pardon, Windows). Printr-o coincidenţă, iarna asta am jucat nişte yams cu ai mei (un joc de zaruri), după o pauză de vreo 10 ani. Şi după ce ne-am întors din vacanţă, pe 22 ianuarie, m-am apucat să scriu, ce altceva, un joculeţ de yams în GTK (PyGTK, ca să fiu mai exact).
Şi surpriză! După 10 zile de lucru nu foarte intens, e gata! Asta spune multe despre GTK şi (cu riscul de a suna pedant) despre software liber. Mă rog, lipsesc unele mărunţişuri, de exemplu nu salvează high-scorurile, iar la uzabilitate ar mai fi loc de îmbunătăţiri. Uite cum arată interfaţa:
Îl vreţi şi voi? Costă $200, o mână şi-un picior şi nu aveţi voie să-l daţi mai departe. A, şi când îl rulaţi prima oară se leagă la internet şi îmi trimite mie detalii despre calculatorul vostru. După care instalează nişte progrămele numite AdMax, SpyOnU şi PenisPlus, care sunt complet inofensive, dar nu le mai puteţi dezinstala în veci. Sau mă rog, ar putea face lucrurile astea dacă ar fi non-free software. Serios vorbind, îl puteţi descărca de aici sau direct prin SVN dacă preferaţi. Există riscul să nu vă meargă, pentru că nu l-am testat mult pe alte sisteme. În mod sigur aveţi nevoie de Linux, python şi GTK. După ce îl dezarhivaţi, daţi dublu-click pe yams.py.
M-am distrat aşa de mult cu nimicul ăsta, încât cred că o să mă ocup un pic de toate joculeţele pe care le-am scris în Turbo Pascal 6, să le fac să meargă în DosBox.
DosBox? Meh. Free Pascal (http://www.freepascal.org/, site-ul e down pe moment) e un compilator de Pascal (GPL) care pretinde ca e compatibil cu Turbo Pascal. Ma intreb daca suporta unit-urile crt si graph…
GPL3, svg, nice.
Joculețele în Turbo Pascal erau „the shit”.
Librăriile grafice nu erau suficient de rapide pentru animații fluide și era nevoie de rutine în asamblare, n-aveai acces la mai mult de 64k memorie locală, iar limitările memoriei convenționale trebuia să le depășești cu pagini de cache alocate în XMS sau în EMS.
Deh, timpuri plăcute, acum prea sunt întinse toate pe tavă 🙂
@Tudor: Interesant! Uite o să încerc. Pe internet am găsit tot felul de discuţii din care rezultă că ar merge. Mai e şi faza că pentru DosBox aş compila un singur binar.
@Alex: Ei, eu nu făceam jocuri cu aşa multă grafică… 🙂 Am un tetris de exemplu pe care l-am făcut în modul text 40×25. Iar memoria e overrated, poţi face jocuri mişto fără texturi de 1GB. 🙂
ar merge si pe windows cu ceva modificari..
Hehe, cele mai faine si distractive jocuri sunt tot alea facute in 256×192… si mod text 32×24, cu „atribute” 😛 Am observat ca unele au gasit o noua viata ca jocuri „libere” in ultima perioada – initial credeam ca telefoanele mobile vor fi o tinta buna, dar au evoluat atat de rapid incat deja au acceleratoare 3D; pacat ca nu se poate vorbi de surse la ele, cam toate fiind scrise direct in asm…
Parca Borland publicase sursele de la BP la un moment dat, cel putin TVision stiu sigur ca exista… daca iti merge faza cu FreePascal sunt si eu curios, ca mai am catva surse din era pre(Linux)istorica.
salutare, misto blogul tau, uite daca vrei, vino safacem schimb de linkuri, si mie4 mi-a placut B. Fischer si inca mai joc sah din cand in cand pe http://www.chessmaniac.com
Daca vrei, intra si pe la mine si da-ti cu parerea daca vrei…
Salut!
Dragut joculetul Yams.
Eu incerc sa aduc programarea in python in atentia romanilor.Daca consideri ca e un lucru bun si poti sa ma ajuti cu ceva linkuri sau exemple mai simple in pygtk ar fi super.
O zi buna !
Yams…mama de cand nu am mai jucat dar asa de bine ni l-ai explicat prima oara incat il tin minte si acum si cred ca as fi in stare sa-l joc, e o provocare.Pup!!Mihaela Atanasescu.