Google Translate

Hungarian English French German Italian Portuguese Russian Spanish

Vicces szöveges kaland generálás

Még tinédzser koromban, amikor a QBasic-el kezdtem foglalkozni, mindig arra törekedtem, hogy a már megszerzett tudásommal valami konkrét dolgot írjak meg. Sokkal élvezetesebb egy bizonyos problémát megoldani (és közben tanulni), mint a parancsok leírását olvasgatni a help-ből. És ha belefutottam egy olyan témába amihez nem értettem, rákerestem a help-ben (interneten is rákereshettem volna, de az 56K modemmel és az egekbe szökő telefonszámlákkal inkább nem volt hozzá kedvem).

Természetesen - és emiatt senkinek nem kell szégyenkeznie, - ha véletlen megtalálok egy akkoriban készült programom forrását, csak nevetek hogy mennyire naiv megoldásokkal áltam elő. Ennek ellenére, izgalmas idők voltak azok, és sok vicces dolgot írtam - és szinte semmit nem fejeztem be :) Egyáltalán lehet bármilyen szoftverről azt állítani hogy "kész"? Mindig lesz mit csiszolni rajta, vagy új dolgokat belefejleszteni...

Ebben a cikkben egy vicces történet generáló program koncepcióját fogom bemutatni. Próbáld meg megírni! Ha elküldöd nekünk a forrást, vagy a lefordított programot, szívesen megjelentetjük neved feltüntetésével a Retro.Games.Hu portálon! Vicces kalandot is szívesen fogadunk ;)

Koncepció

A program bekér a felhasználótól néhány adatot, ami a személyéhez, ízléséhez, ismerőseihez kapcsolódik. Utána, generál egy vicces történetet, amiben felhasználja a begépelt adatokat.

Nagyszerű társaságban lefuttatni, és jókat derülni a kapott történeteken. Hátránya, hogy hamar elillan a varázsa, és sok időt meg kreativitást igényel a történeti sablonok megírása.

Megvalósítás

Sokféleképpen meg lehet valósítani. A legegyszerűbb, ha a bevitt adatokat csak elmented egy-egy változóba. A történet pedig előre megírt mondatok, amiben bizonyos helyeken speciális karaktereket teszel, amit a történet kiírása során lecserélsz a felhasználó adataira. A mondatokat egy tömbben érdemes tárolni, és a történet generálás során teszem azt 5-10 mondatot véletlenszerűen kiválaszt a program. Arra azért érdemes ügyelni, hogy ugyanabban a történetben kétszer ne szerepeljen ugyanaz a mondat!

A fejlettebb megvalósítás során a mondatokat lehet kategorizálni is tetszőleges szempontok alapján. Egy lehetséges kategorizálás: Bevezetők, cselekmények, reakciók, befejezés. A történetet ebben az esetben úgy kell generálni, hogy a program a következőképp válasszon véletlenszerűen mondatokat:

  • 1-3 db bezetető mondat - a darabszám is lehet véletlen! :)
  • 5-10 db páros mondat, amiből egy cselekmény, egy reakció
  • 1-3 db befejező mondat

Még egy fokkal tovább lehet fejleszteni, ha a felhasználó adatait is kategorizálod.

Érdemes továbbá a generálás során ügyelni arra, hogy egy adott mondat témája mivel kapcsolatos. Értelemszerűen, ha a felhasználónak nincsen testvére, akkor vele kapcsolatosan nem szólhat mondat!

Mint láthatod, ezt a koncepciót meg lehet írni a nagyon egyszerű szinttől egészen az ultra komplexig... Kisérletezz bátran!

Példa kérdések

A mondatok végén zárójelben jelzem a változó nevet. Azok nem részei a kérdésnek amit a felhasználó látni fog.

  • Hogy hívnak? (nev$)
  • Mi a kedvenc színed? (szin$)
  • Mi a kedvenc ételed? (etel$)
  • Milyen zöldséget/ételt utálsz a legjobban? (utaletel$)
  • Mitől félsz a legjobban? (fel$)
  • Kedvenc tanárod neve? (tanar$)
  • Tanár neve akit utálsz? (utaltanar$)
  • Hány éves vagy? (kor$)
  • Van testvéred? (teso$)
  • Ha van testvéred hogy hívják? (tesonev$)
  • Évszak amit nem szeretsz? (evszakutal$)
  • Hova utaznál el külföldre? (utazna$)
  • Melyik városba/kerületbe nem utaznál el? (nemutazna$)
  • Kutyád/macskád neve? (allat$)
  • Mit mondasz ha meg akarsz sérteni valakit? (sertes$)
  • stb...

Példa "Bevezető" mondatok

Ez nem forráskód, csak jelzem hova kell beilleszteni a változókat.

  • Történetünk egy szép (evszakutal$)-i napon vette igazán kezdetét.
  • A fákon csiripeltek a madarak, és (allat$) kinnt szaladgált a réten.
  • Hirtelen eleredt az eső, jól kezdődik ez a (evszakutal$) is - gondoltad magadban.

Példa "Cselekmény" mondatok

  • Egyszer csak felbukkant (tanar$), és hangosan nevetni kezdett.
  • Körbenéztél és láttad amint (tesonev$) (utaletel$)-t eszik.
  • Egy (szin$) bajuszos kalauz lépett oda hozzád, és furcsán nézett rád.

Példa "Reakció" mondatok

Ezeket úgy kell megírni, hogy minden cselekmény után megállják a helyüket. Olvass össze párat, és ha passzolnak, és vicces akkor OK.

  • Nem tudtad mire vélni a dolgot, ezért ráuszítottad (allat$)-ot.
  • Ekkor betelt a pohár, és azt mondtad: (sertes$)
  • Ettől annyira megijedtél, hogy (kor$) napon keresztül nem tudtál aludni!

Példa "Befejező" mondatok

  • Ettől a kalandtól (kor$) évet öregedtél, az már biztos!
  • A tanulság pedig az, hogy soha ne menj (nemutazna$) közelébe se.
  • És ez döbentett rá, hogy mennyire félreismerted (utaltanar$)-t!

Jó kódolást, és szórakozást!


Ajánlott szekció: QBasic7 programozás
Ajánlott szekció: DarkBasic Pro programozás

Zene

Google keresés

Váltó

Digitális Táregység


Számrendszer

#=

IMDb Keresés

Kód

Karakter

Szín

Szín kódtábla

Webmaster: GoobeMaster
Érvényes XHTML és CSS
Minden jog fenntartva! ® 2010 - 2017
Jogtulajdonos: United Voxels Ltd. (United Kingdom)

Check Google Page Rank

Technikai háttér: