|
|
1. Ââåäåíèå1.1. «Èíòåðàêòèâíàÿ ëèòåðàòóðà?» À ÷òî ýòî òàêîå?Èíòåðàêòèâíàÿ Ëèòåðàòóðà (äàëåå ÈË) — ýòî ðóññêèé ýêâèâàëåíò àíãëîÿçû÷íîãî ïîíÿòèÿ Interactive Fiction (IF).  ñàìîì øèðîêîì ïîíèìàíèè òåðìèíà, ýòî — ëþáàÿ ðàçíîâèäíîñòü õóäîæåñòâåííûõ ïðîèçâåäåíèé, ñþæåò êîòîðûõ íå ÿâëÿåòñÿ ôèêñèðîâàííûì, à ñïîñîáåí ìåíÿòüñÿ â çàâèñèìîñòè îò äåéñòâèé ÷èòàòåëÿ (â «êîìïüþòåðíîì» âàðèàíòå — ïîëüçîâàòåëÿ). Íàïðèìåð, ïîïóëÿðíûå íåêîãäà êíèæêè ñ íåëèíåéíûì èëè «âåòâÿùèìñÿ» ñþæåòîì — ýòî òîæå âàðèàíò ÈË. Çäåñü, îäíàêî, ìû ðàññìàòðèâàåì èñêëþ÷èòåëüíî êîìïüþòåðíóþ ðàçíîâèäíîñòü ÈË. Ê íåé îòíîñÿòñÿ ëþáûå èíòåðàêòèâíûå ïðîãðàììû, êîòîðûå ïðåïîäíîñÿò ïîëüçîâàòåëþ èíôîðìàöèþ ïðåèìóùåñòâåííî â òåêñòîâîì âèäå (íå â âèäå ãðàôèêè, àíèìàöèè, çâóêà è ò.ï.), à ÷àñòî (õîòÿ ýòî è íå îáÿçàòåëüíî) òàêæå ïîëó÷àþò èíñòðóêöèè îò ïîëüçîâàòåëÿ â âèäå òåêñòîâûõ êîìàíä (ñîñòàâëåííûõ íà ÿçûêå, áëèçêîì ê åñòåñòâåííîìó). Êîíå÷íî, òàêæå îáû÷íî ïðåäïîëàãàåòñÿ, ÷òî ó ïðîèçâåäåíèÿ ÈË èìååòñÿ ñþæåò — ÷àùå âñåãî, ýòî ïðèêëþ÷åíèå êàêîãî-íèáóäü ðîäà, â êîòîðîì ïîëüçîâàòåëü îáû÷íî ó÷àñòâóåò â êà÷åñòâå ãëàâíîãî ãåðîÿ (ïðîòàãîíèñòà). Íàèáîëåå èçâåñòíàÿ è ïîïóëÿðíàÿ ðàçíîâèäíîñòü ÈË — ýòî òåêñòîâûå èãðû (îíè æå «òåêñòîâûå êâåñòû», «èãðû ñ òåêñòîâûì ââîäîì» è ò.ï.), íî íóæíî çàìåòèòü, ÷òî ïîíÿòèå ÈË âñå-òàêè íåñêîëüêî øèðå, è íå îãðàíè÷èâàåòñÿ èñêëþ÷èòåëüíî èìè. ÈË — íå îáÿçàòåëüíî ðàçâëå÷åíèå, ýòî ïîëíîïðàâíûé æàíð èñêóññòâà! Äîâîëüíî áëèçêèìè ðîäñòâåííèêàìè ÈË ìîæíî ñ÷èòàòü ðàçíîîáðàçíûå òåêñòîâûå ðîëåâûå èãðû, MUDû è ïð. (õîòÿ â äàííîì ñëó÷àå, êîíå÷íî, óïîð îáû÷íî äåëàåòñÿ íà èíòåðàêòèâíîñòü — à «ëèòåðàòóðíîñòü», â ëó÷øåì ñëó÷àå, ÿâëÿåòñÿ çà÷àòî÷íîé J). 1.2. Êàê èíòåðåñíî! Äàæå íèêîãäà ïðî òàêîå íå ñëûøàë…Íó, åñëè Âû ïðèíàäëåæèòå ê íîâåéøåìó ïîêîëåíèþ ïîëüçîâàòåëåé êîìïüþòåðîâ, òî ýòî íåóäèâèòåëüíî. Êîíå÷íî, ÈË — ýòî î÷åíü äðåâíèé æàíð êîìïüþòåðíûõ ðàçâëå÷åíèé (èëè, åñëè õîòèòå, êîìïüþòåðíîãî èñêóññòâà). Áîëåå òîãî — âîçìîæíî, äðåâíåéøèé. Íåóäèâèòåëüíî, âåäü äëÿ òåêñòîâîé èãðû íå òðåáóåòñÿ ãðàôè÷åñêèé ìîíèòîð ñ âûñîêèì ðàçðåøåíèåì, ñòåðåîñèñòåìà è âèäåîêàðòà ñ àïïàðàòíûì 3D-óñêîðåíèåì — ïðîñòåéøåãî òåêñòîâîãî äèñïëåÿ è êëàâèàòóðû äîñòàòî÷íî. Ïîýòîìó òåêñòîâûå èãðû ïîÿâèëèñü ñðàçó ïîñëå òîãî, êàê áûëè ñîçäàíû ïåðâûå èíòåðàêòèâíûå êîìïüþòåðû — ò.å. êîìïüþòåðû, ñ êîòîðûìè ïîëüçîâàòåëü ìîã îáùàòüñÿ íàïðÿìóþ, ââîäÿ êîìàíäû è ïî÷òè ñðàçó ïîëó÷àÿ íà íèõ îòâåò! (Ðåâîëþöèîííîñòü ýòîãî âû ëåãêî ìîæåòå ñåáå ïðåäñòàâèòü, åñëè âñïîìíèòå, ÷òî äî ýòîãî îáùåíèå ïîëüçîâàòåëÿ ñ êîìïüþòåðîì ñîñòîÿëî ãëàâíûì îáðàçîì â òîì, ÷òî ïîëüçîâàòåëü ñäàâàë îïåðàòîðó â ìàøèííîì çàëå ñòîïêó ïåðôîêàðò èëè ðóëîí ïåðôîëåíòû, à ïîòîì íåñêîëüêî ÷àñîâ æäàë, êîãäà åìó âûäàäóò ðåçóëüòàòû ïðîãîíà â âèäå ëèñòèíãà.)  îáùåì, êàê òîëüêî èíòåðàêòèâíûå êîìïüþòåðû ïåðåñòàëè áûòü ýêçîòèêîé, îòäåëüíûå òâîð÷åñêèå ëè÷íîñòè íà÷àëè äóìàòü, êàê áû ïðèñïîñîáèòü èõ ê ÷åìó-íèáóäü ìåíåå ñêó÷íîìó, ÷åì ðàáîòà. Ìîæíî ñêàçàòü, ÷òî èäåÿ êîìïüþòåðíûõ èãð âèòàëà â âîçäóõå. Ñåé÷àñ îáùåïðèçíàííî, ÷òî ïåðâîé íàñòîÿùåé òåêñòîâîé êîìïüþòåðíîé èãðîé áûëà «Ïðèêëþ÷åíèå» (Adventure) — îíà æå èçâåñòíà ïîä íàçâàíèåì «Ïåùåðà» (Dungeon) è ìíîãèìè äðóãèìè. Ýòó èãðó ñîçäàëè äâîå êîìïüþòåðùèêîâ, Óèëë Êðàóòåð (Will Crowther) è Äîí Âóäç (Don Woods) â 1976 ã. â Ñòýíôîðäå. Èãðà áûëà ÷èñòî òåêñòîâîé, óïðàâëÿëàñü ïðîñòåéøèìè òåêñòîâûìè êîìàíäàìè (â îñíîâíîì èç äâóõ ñëîâ), è çàêëþ÷àëàñü â îñíîâíîì â áëóæäàíèè ïî ïåùåðå è ïîèñêå ðàçáðîñàííûõ òàì ñîêðîâèù è ìàãè÷åñêèõ àðòåôàêòîâ. Òåì íå ìåíåå, ýòà èãðà ñûãðàëà êîëîññàëüíóþ ðîëü â èñòîðèè, ïîëîæèâ íà÷àëî öåëîìó æàíðó êîìïüþòåðíûõ èãð (è ïîõèòèâ, íàâåðíîå, äåñÿòêè òûñÿ÷ ÷åëîâåêî-÷àñîâ äîðîãîñòîÿùåãî êîìïüþòåðíîãî âðåìåíè). Èãðà „Adventure“ ïîðîäèëà íåìàëî ïîäðàæàíèé, ïðè÷åì îäíèì èç ñàìûõ óäà÷íûõ ñòàë “Zork“ — ïðîãðàììà, ñîçäàííàÿ ãðóïïîé ñòóäåíòîâ èç MIT (Ìàññà÷óñåòñêîãî Òåõíîëîãè÷åñêîãî Èíñòèòóòà). Ñþæåò áûë î÷åíü ïîõîæ (òàêæå áëóæäàíèÿ ïî ïåùåðå, òàêæå ñáîð ñîêðîâèù), íî ãîëîâîëîìêè ñòàëè çàìåòíî ðàçíîîáðàçíåå è èíòåðåñíåå, à â èãðå ïîÿâèëîñü áîëüøå NPC ñ íåòðèâèàëüíûì ïîâåäåíèåì è ñîáñòâåííûìè öåëÿìè. Èãðà ñóìåëà ïðåâçîéòè îðèãèíàëüíûé Adventure ïî ïîïóëÿðíîñòè, è åå ñîçäàòåëè ðåøèëè âñåðüåç çàíÿòüñÿ ñîçäàíèåì òåêñòîâûõ êîìïüþòåðíûõ èãð — òàê ëåòîì 1979 ã. ðîäèëàñü ëåãåíäàðíàÿ ôèðìà Infocom. Ïîñëåäíÿÿ ââåëà â îáîðîò òåðìèí “Interactive Fiction”, è çà äåñÿòü ëåò ñâîåé èñòîðèè âûïóñòèëà îêîëî 30 èãð ýòîãî æàíðà, ìíîãèå èç êîòîðûõ (“Hitchhiker’s Guide to Galaxy”, “Leather Goddeses of Phobos”, “Planetfall”, “Trinity”, “Wishbringer”) — ïðèçíàííàÿ êëàññèêà. Íà âîëíå óñïåõà Infocom ïîÿâèëîñü è íåìàëî äðóãèõ ôèðì, ñïåöèàëèçèðóþùèõñÿ íà êîììåð÷åñêîé èíòåðàêòèâíîé ëèòåðàòóðå. Ìîæíî óïîìÿíóòü áðèòàíñêèå Level 9 è Magnetic Scrolls, Legend Entertainment (ôàêòè÷åñêè âîçíèêøóþ íà ðóèíàõ Infocom), Adventure International è àâñòðàëèéñêóþ Melbourne House… ýòîò ñïèñîê ìîæíî ïðîäîëæàòü åùå äîëãî. Çàìå÷ó, ÷òî â ñâîå âðåìÿ â æàíðå òåêñòîâûõ ïðèêëþ÷åíèé «îòìåòèëîñü» íåìàëî ôèðì, íàçâàíèÿ êîòîðûõ îáû÷íî àññîöèèðóþòñÿ ñ èãðàìè ñîâåðøåííî äðóãîãî ïëàíà — òàê, ìîæíî âñïîìíèòü Electronic Arts (“Amnesia”) è Apogee (“Beyond the Titanic” è “Supernova”). Íàêîíåö, ñóùåñòâîâàíèå ÈË ïîñëóæèëî òîë÷êîì äëÿ âîçíèêíîâåíèÿ è ðàçâèòèÿ äðóãîãî (õîòÿ è ðîäñòâåííîãî æàíðà) — ÷èñòî ãðàôè÷åñêèõ ïðèêëþ÷åíèé, îðèåíòèðîâàííûõ íà «ìûøèíîå» óïðàâëåíèå, êîòîðûìè ïîçæå òàê ïðîñëàâèëèñü Sierra on-line, Lucasarts, Access Software è ìíîãèå äðóãèå. Îäíàêî, ýòî óæå äðóãàÿ èñòîðèÿ. Êîíå÷íî, áûñòðûé ïðîãðåññ âîçìîæíîñòåé ïåðñîíàëüíûõ êîìïüþòåðîâ íå ìîã íå ïîâëèÿòü íà ðàçâèòèå æàíðà: â ÈË-èãðàõ íà÷àëè ïîÿâëÿòüñÿ è ãðàôèêà (îñîáåííî õîðîøàÿ ó Magnetic Scrolls è Legend), è ìóçûêà ñî çâóêîâûìè ýôôåêòàìè, è àëüòåðíàòèâíûå òåêñòîâûì êîìàíäàì ñðåäñòâà óïðàâëåíèÿ (ìíîãîîêîííûé èíòåðôåéñ èãð îò Legend ìîæíî ñ÷èòàòü îñîáåííî óäà÷íîé íàõîäêîé). Îäíàêî, âàæíåéøåé ñîñòàâëÿþùåé ýòèõ èãð âñå-òàêè îñòàëñÿ õóäîæåñòâåííûé òåêñò, ÷òî è ïîçâîëÿåò ãîâîðèòü î òîì, ÷òî îñíîâû æàíðà îñòàëèñü ïðåæíèìè. Òàêîâî, åñëè âêðàòöå, ñëàâíîå ïðîøëîå èíòåðàêòèâíîé ëèòåðàòóðû. Âìåñòå ñ òåì, ó ýòîãî æàíðà èìååòñÿ íå ìåíåå ñëàâíîå íàñòîÿùåå (è, õî÷åòñÿ íàäåÿòüñÿ, ñëàâíîå áóäóùåå). 1.3. Òåêñòîâûå èãðû, - àðõàèêà, ðåòðî èëè ñîâðåìåííîñòü?Õîòèòå – âåðüòå, õîòèòå – íåò), íî òåêñòîâûå èãðû âåñüìà ïîïóëÿðíû è ñåãîäíÿ. Æàíð èíòåðàêòèâíîé ëèòåðàòóðû îòíþäü íå óñòàðåë — îí ïðîäîëæàåò æèòü è ðàçâèâàòüñÿ. Êîíå÷íî, ñâîå êîììåð÷åñêîå çíà÷åíèå â íàøè äíè îí â îñíîâíîì ïîòåðÿë. Ñåãîäíÿ âðÿä ëè êòî-ëèáî áóäåò ñîçäàâàòü ÈË èñêëþ÷èòåëüíî ðàäè ïðèáûëè (õîòÿ äî ñèõ ïîð âñòðå÷àþòñÿ è shareware, è äàæå êîììåð÷åñêèå òåêñòîâûå ïðèêëþ÷åíèÿ). Îñíîâíîé äâèæóùåé ñèëîé ýòîãî æàíðà ñåé÷àñ ÿâëÿþòñÿ ýíòóçèàñòû-ëþáèòåëè. Îäíàêî, èõ äîâîëüíî ìíîãî; ñðåäè íèõ åñòü èñêëþ÷èòåëüíî òàëàíòëèâûå ëþäè, è ìíîãèå ñîâðåìåííûå ïðîèçâåäåíèÿ ÈË íèñêîëüêî íå óñòóïàþò «êëàññè÷åñêèì îáðàçöàì». Ìîæíî äàæå ñ÷èòàòü, ÷òî äåêîììåðöèàëèçàöèÿ æàíðà îò÷àñòè ïîøëà åìó íà ïîëüçó — ïîÿâèëîñü íåìàëî ïî-ñâîåìó ëþáîïûòíûõ îáðàçöîâ ýêñïåðèìåíòàëüíîé è íåòðàäèöèîííîé ÈË, íàõîäÿùèõñÿ ãäå-òî íà ñòûêå ìåæäó êîìïüþòåðíûìè ðàçâëå÷åíèÿìè è ëèòåðàòóðíûì àâàíãàðäîì. Ìîæíî ïðåäïîëîæèòü, ÷òî îáùåå ÷èñëî ïîëüçîâàòåëåé ÈË íèêàê íå ìåíüøå ñîòíè òûñÿ÷.  Ñåòè ïðîâîäÿòñÿ êîíêóðñû, òàêèå êàê IF-contest; âûõîäÿò ýëåêòðîííûå èçäàíèÿ, îðèåíòèðîâàííûå íà ÈË; â ñåòåâûõ ôîðóìàõ, ïîñâÿùåííûõ ýòîìó æàíðó, èäåò àêòèâíàÿ äèñêóññèÿ — ñëîâîì, ãîâîðèòü î «ñìåðòè æàíðà» îòíþäü íå ïðèõîäèòñÿ. 1.4. Íî ÷òî òàêîãî â íèõ íàõîäÿò ëþäè?Íó, ïðåæäå âñåãî, íåêîððåêòíî ñðàâíèâàòü ÈË è ãðàôè÷åñêèå èãðû. Íèêòî íå óòâåðæäàåò, ÷òî ïðîèçâåäåíèÿ ÈË çàâåäîìî «ëó÷øå», ÷åì ãðàôè÷åñêèå êâåñòû. Âàæíî ïîíèìàòü, ÷òî ýòî ðàçíûå æàíðû (â êàêîé-òî ñòåïåíè äàæå îðèåíòèðîâàííûå íà ðàçëè÷íóþ àóäèòîðèþ). Ìåæäó ÈË è ãðàôè÷åñêèìè ïðèêëþ÷åíèÿìè èìååòñÿ ðàçíèöà, âî ìíîãîì ïîõîæàÿ íà ðàçëè÷èå ìåæäó òðàäèöèîííîé ëèòåðàòóðîé è êèíî. È êíèãè, è ôèëüìû ÿâëÿþòñÿ ïðîèçâåäåíèÿìè èñêóññòâà, íî ñðåäñòâà âîçäåéñòâèÿ íà ïîòðåáèòåëÿ îíè èñïîëüçóþò ðàçíûå — õóäîæåñòâåííûé òåêñò è âèäåîðÿä. Áåçóñëîâíî, ïî êíèãå ìîæíî ïîñòàâèòü ôèëüì (èíîãäà äàæå î÷åíü õîðîøèé) — íî è â ýòîì ñëó÷àå ôèëüì íå çàìåíèò êíèãó. Êèíî è ëèòåðàòóðà — äâà ðàçíûõ æàíðà; ñïîðèòü î òîì, êàêîé èç íèõ «ëó÷øå» — çàíÿòèå ÿâíî áåññìûñëåííîå. Åñëè æå âñå-òàêè ïîïûòàòüñÿ ñðàâíèòü äâà ýòèõ æàíðà, ìû óâèäèì, ÷òî õîòÿ ãðàôè÷åñêèå êâåñòû ñåé÷àñ áîëåå ïîïóëÿðíû, ó ÈË åñòü ñâîè íåñîìíåííûå äîñòîèíñòâà. Ïðåæäå âñåãî, êîíå÷íî, ýòî îòíîñèòåëüíàÿ íåòðåáîâàòåëüíîñòü ê âû÷èñëèòåëüíûì ðåñóðñàì. Êîíå÷íî, ÈË-èãðû òîæå áûâàþò ðàçíûå (â òîì ÷èñëå è äîâîëüíî îáúåìíûå), íî áîëüøèíñòâî èç íèõ ïðåäúÿâëÿþò î÷åíü ñêðîìíûå òðåáîâàíèÿ ê ìîùíîñòè êîìïüþòåðà è îáúåìó ïàìÿòè. Äîâîëüíî òðóäíî ïðåäñòàâèòü ñåáå ñîâðåìåííûé ãðàôè÷åñêèé êâåñò, çàíèìàþùèé âñåãî 250–300 Êáàéò, â òî âðåìÿ êàê äëÿ ÈË ýòî íîðìàëüíûé ðàçìåð (25-300 êèëîáàéò - îáû÷íûé îáúåì ïîâåñòè èëè íåáîëüøîãî ðîìàíà - ïðèì. ñîñò.). Íó è, ðàçóìååòñÿ, îòñóòñòâèå íåîáõîäèìîñòè â ñðåäñòâàõ ãðàôè÷åñêîãî è àóäèî-âûâîäà òàêæå ðàñøèðÿåò íàáîð óñòðîéñòâ, ïîäõîäÿùèõ äëÿ ÈË.  òåõ ñîâðåìåííûõ ÈË-ïðîäóêòàõ, ãäå èìåþòñÿ ãðàôèêà è çâóê, èõ îáû÷íî ìîæíî îòêëþ÷èòü, îãðàíè÷èâøèñü òåêñòîì — äàæå åñëè îáùåå âïå÷àòëåíèå îò èãðû ïîñòðàäàåò, èãðàòü ýòî íå ïîìåøàåò. Êàê ñëåäñòâèå, èãðàòü â ÈË-èãðû ÷àñòî ìîæíî íà ñàìûõ äîïîòîïíûõ êîìïüþòåðàõ (î ïîòîïå è òåõ âðåìåíàõ ñì. Âåòõèé çàâåò - ïðèì. ñîñò.), ëýïòîïàõ, íàëàäîííèêàõ è äàæå ñîòîâûõ òåëåôîíàõ. Ñ ýòèì òåñíî ñâÿçàí åùå îäèí âàæíûé àñïåêò ÈË — ïåðåíîñèìîñòü. Î÷åíü ìíîãèå ñîâðåìåííûå ïðîäóêòû, ñîçäàííûå íà îñíîâå ñîâðåìåííûõ ÈË-ïëàòôîðì, ñïîñîáíû ðàáîòàòü âåçäå, ãäå èìååòñÿ ïîäõîäÿùèé èíòåðïðåòàòîð. Îäèí ôàéë èãðû ïîäõîäèò ê ñîâåðøåííî ðàçíûì ñèñòåìàì. (Ïîäðîáíåå îá ýòîì â ïóíêòå 1.6.) Ìíîãèå äîñòîèíñòâà ÈË âûòåêàþò èç òîãî, ÷òî ýòî — î÷åíü äåìîêðàòè÷íûé æàíð. Ñîçäàòü âûäàþùèéñÿ ïðîäóêò ïîä ñèëó îäíîìó ÷åëîâåêó, åìó íå òðåáóåòñÿ äëÿ ýòîãî àðìèÿ ïîìîùíèêîâ — õóäîæíèêîâ, àíèìàòîðîâ, êîìïîçèòîðîâ è çâóêîâèêîâ (÷åñòíî ñêàçàòü, ìû çàòðóäíÿåìñÿ îïðåäåëèòü ñìûñë ýòîãî ñëîâà è ïðåäïîëàãàåì, ÷òî çâóêîâèê - ýòî ÷åëîâåê, èçäàþùèé âñåâîçìîæíûå çâóêè ðàçëè÷íûìè ÷àñòÿìè ñâîåãî òåëà, - ïðèì. ñîñò.). Êàê ñëåäñòâèå, àâòîðû ÈË ìåíåå ñòåñíåíû â ñâîèõ òâîð÷åñêèõ ïëàíàõ, ñïîñîáíû ðåàëèçîâûâàòü ñîâåðøåííî íåêîììåð÷åñêèå è î÷åíü èíòåðåñíûå èäåè. (Ñîáñòâåííî, ñ êèíåìàòîãðàôîì âåñüìà ïîõîæàÿ ñèòóàöèÿ — ÷åì áîëåå äîðîãîñòîÿùèì ñòàíîâèòñÿ êèíî, òåì áîëåå øàáëîííûìè ñòàíîâÿòñÿ ñþæåòû. Êàê æå èíà÷å, åñëè êèíîïðîäüþñåðîâ áîëüøå âñåãî èíòåðåñóåò ïðèáûëü, è îíè íå õîòÿò ðèñêîâàòü ñîáñòâåííûìè äåíüãàìè?) Äðóãîå ñëåäñòâèå ýòîé òâîð÷åñêîé ñâîáîäû — âîçìîæíîñòü ëåãêî ðåàëèçîâàòü áîëåå ñëîæíûé è ðàçâåòâëåííûé ñþæåò, áîëüøèé íàáîð âàðèàíòîâ ñîáûòèé èëè äåéñòâèé äëÿ ãëàâíîãî ãåðîÿ. Áåçóñëîâíî, ãðàôè÷åñêèå êâåñòû ñèëüíåå îãðàíè÷åíû â ýòîì îòíîøåíèè — äàæå áîëüøàÿ êîìàíäà õóäîæíèêîâ è àíèìàòîðîâ ôèçè÷åñêè íå ñïîñîáíà íàðèñîâàòü áîëüøå, ÷åì îñèëèò. À â òåêñòîâîé èãðå äëÿ äîáàâëåíèÿ êàêîé-íèáóäü íîâîé âåòâè ñöåíàðèÿ äîñòàòî÷íî íàïèñàòü äåñÿòîê-äðóãîé ñòðîê òåêñòà — áëàãîäàðÿ ýòîìó â ÈË ÷àñòî âñòðå÷àåòñÿ áîëåå èíòåðåñíûé, ïðîäóìàííûé è ìíîãîâàðèàíòíûé ñþæåò. Ìîæíî òàêæå ñêàçàòü, ÷òî ÈË â î÷åíü ìàëîé ñòåïåíè ïîäâåðæåíà ìîðàëüíîìó ñòàðåíèþ (åñëè, êîíå÷íî, Âû íå ñ÷èòàåòå, ÷òî æàíð óñòàðåë ìîðàëüíî êàê òàêîâîé). Óâû, äàæå â ñàìûõ êëàññè÷åñêèõ èç ðèñîâàííûõ êâåñòîâ ãðàôèêà ñåãîäíÿ ÷àñòî âûãëÿäèò àðõàè÷íî («íåïëîõî, íî â 1024x768xTrueColor ýòîò âîëøåáíûé ëåñ ñìîòðåëñÿ áû êóäà ëó÷øå»).  ýòîì îäíà èç ñèëüíûõ ñòîðîí òåêñòîâûõ êâåñòîâ — åñëè ãðàôèêà îòñóòñòâóåò, òî îíà â ïðèíöèïå íå ìîæåò óñòàðåòü. Òî æå, êîíå÷íî, ìîæíî ñêàçàòü ïðî îçâó÷èâàíèå, è ïðî÷èå àòðèáóòû ìóëüòèìåäèà. (Êîíå÷íî, óñòàðåòü òàêæå ìîæåò ñàìà «ïðîãðàììíàÿ îñíàñòêà» èãðû — íî îá ýòîì àñïåêòå ïðîáëåìû ïîãîâîðèì ÷óòü íèæå.) Íàêîíåö, â òåêñòîâûå èãðû ÷àñòî ìîæíî èãðàòü ïðÿìî íà ðàáîòå, íå âûçûâàÿ îñîáûõ ïîäîçðåíèé ó ñîñëóæèâöåâ è íà÷àëüñòâà. 1.5. Òåêñòîâûé ââîä êîìàíä — ýòî æå íåóäîáíî!..Âî-ïåðâûõ, åùå ðàç õî÷ó ïîä÷åðêíóòü: òåêñòîâûé ââîä êîìàíä — ýòî íå äîãìà! Òàê, áîëüøèíñòâî èãð îò Legend ìîæíî ïðîéòè äî êîíöà, ïîëüçóÿñü èñêëþ÷èòåëüíî ìûøüþ. È îòäåëüíûå èãðû, è ìíîãèå ñîâðåìåííûå ÈË-ñèñòåìû òàêæå ïðåäîñòàâëÿþò àëüòåðíàòèâû òåêñòîâîìó ââîäó (çà÷àñòóþ äîâîëüíî óäîáíûå). Âî-âòîðûõ, ýòî íå îáÿçàòåëüíî íåóäîáíî. Ìíîãîå çàâèñèò îò òîãî, íàñêîëüêî õîðîøî â èãðå ðåàëèçîâàí àíàëèçàòîð ââåäåííûõ êîìàíä èëè ïàðñåð (äàëüøå ìû áóäåì ïîëüçîâàòüñÿ ýòèì òåðìèíîì). Áåçóñëîâíî, îñíîâíàÿ ïðîáëåìà ñ «ñàìîäåëüíûìè» èãðàìè — íåêà÷åñòâåííûé ïàðñåð, ñóùåñòâåííî óñòóïàþùèé ëó÷øèì ñòàíäàðòàì. Äàæå êîãäà ñàìà èãðà ñîâñåì íå ïëîõà, ïàðñåð â íåé ÷àñòî ðåàëèçîâàí íàñòîëüêî óáîãî (òîëüêî ïðîñòåéøèå êîìàíäû òèïà ãëàãîë+ñóùåñòâèòåëüíîå, êðàéíå îãðàíè÷åííûé íàáîð ñëîâ è ò.ï.), ÷òî ñàì ïðîöåññ èãðû ïðåâðàùàåòñÿ â ìó÷åíèå.  îáùåì-òî, ýòî — îäíà èç ïðè÷èí, èç-çà êîòîðîé ñëîæèëîñü óñòîé÷èâîå ìíåíèå, ÷òî èãðû ñ «ìûøüþ» ïðèíöèïèàëüíî óäîáíåå. À âåäü ýòî íå òàê!  áîëüøèíñòâå èãð îò òåõ æå Infocom, Legend, Magnetic Scrolls ïàðñåð ÿâëÿåòñÿ î÷åíü õîðîøèì. Çà÷àñòóþ îí ïîíèìàåò îãðîìíîå êîëè÷åñòâî ãëàãîëîâ è âíóøèòåëüíûé íàáîð ñèíîíèìîâ è îïðåäåëåíèé äëÿ âñåõ îáúåêòîâ èãðû (äåñÿòîê ñèíîíèìîâ äëÿ îäíîãî îáúåêòà — ýòî íîðìà); ïðàâèëüíî ðàñïîçíàåò âåñüìà ñëîæíûå àíãëèéñêèå ôðàçû (âðîäå “use trowel to plant pot plant into plant pot”); àâòîìàòè÷åñêè ïîääåðæèâàåò ìåõàíèçì «óòî÷íåíèÿ» (åñëè êàêîå-íèáóäü èìÿ ìîæåò îòíîñèòüñÿ ê íåñêîëüêèì îáúåêòàì, èãðà ñàìà ñïðàøèâàåò ïîëüçîâàòåëÿ, ÷òî èìåííî èìååòñÿ â âèäó); ïîääåðæèâàåò ìåñòîèìåíèÿ — â îáùåì, ñïîñîáåí íà ìíîãîå. Ïîìèìî ýòîãî, íàáîð ãëàãîëîâ, êàê ïðàâèëî, õîðîøî ñòàíäàðòèçîâàí, à âìåñòî ìíîãèõ èç íèõ äîïóñêàþòñÿ îáùåïðèíÿòûå ñîêðàùåíèÿ (l — look, x — examine è ò.ï.). Íàêîíåö, îáû÷íî ïîääåðæèâàåòñÿ ìíîãî ñòàíäàðòíûõ ñëóæåáíûõ êîìàíä (ñîõðàíåíèå, âîññòàíîâëåíèå, ïåðåçàïóñê, âûõîä è ò.ï.). Âñå ðàçâèòûå ÈË-ñèñòåìû îáû÷íî ïîääåðæèâàþò äîñòàòî÷íî ìîùíûå è óäîáíûå ñðåäñòâà äëÿ ðåäàêòèðîâàíèÿ ââîäèìûõ êîìàíä (âêëþ÷àÿ ìåõàíèçì «èñòîðèè», çàïîìèíàþùèé âñå, ÷òî âû ââîäèëè ðàíüøå) è âîçìîæíîñòü ñîõðàíåíèÿ âî âíåøíåì ôàéëå êàê ñïèñêà âûïîëíåííûõ êîìàíä, òàê è ïîëíîãî òðàíñêðèïòà ñåàíñà èãðû.  äåéñòâèòåëüíî ïðîôåññèîíàëüíûõ èãðàõ äîâîëüíî òðóäíî ïðèäóìàòü êîìàíäó, êîòîðóþ èãðà áû íå ïîíÿëà. Íà÷àâ èãðàòü â òàêóþ èãðó, Âû ìîæåòå áûñòðî çàáûòü, ÷òî ó Âàøåãî êîìïüþòåðà âîîáùå èìååòñÿ ìûøü. 1.6. À åñòü ëè âîîáùå íåîáõîäèìîñòü â ñïåöèàëèçèðîâàííûõ ÈË-ñèñòåìàõ?Øèðîêî ðàñïðîñòðàíåíî òàêîå ìíåíèå: «Âîò ÿ õîðîøî âëàäåþ Áåéñèêîì (Ïàñêàëåì, Delphi, C, C++, Java….), òàê ÷òî áåç òðóäà íàïèøó òåêñòîâóþ èãðó íà ýòîì ÿçûêå. Ýòî äîëæíî áûòü ñîâñåì íåñëîæíî — íå Quake 3, âñå-òàêè!» Ðàñïðîñòðàíåííîå çàáëóæäåíèå. Íåò, áåçóñëîâíî, Âû ìîæåòå ïîïðîáîâàòü íàïèñàòü ñâîþ ïðîãðàììó íà ëþáîì èç ïåðå÷èñëåííûõ ÿçûêîâ. Ìîæåò äàæå ïîëó÷èòüñÿ ñîâñåì íåïëîõî — èìååòñÿ íåìàëî âïîëíå äîñòîéíûõ ÈË-ïðîäóêòîâ, íàïèñàííûõ íà ñîâåðøåííî ñòàíäàðòíûõ ÿçûêàõ ïðîãðàììèðîâàíèÿ. Íî âñå-òàêè, ÿ íàñòîÿòåëüíî ïîñîâåòîâàë áû Âàì ñíà÷àëà îáðàòèòü âíèìàíèå íà êàêóþ-íèáóäü èç ñïåöèàëèçèðîâàííûõ ÈË-ñèñòåì. Ïî÷åìó? Âî-ïåðâûõ, áîëüøèíñòâî ñîâðåìåííûõ ÈË-òåõíîëîãèé àâòîìàòè÷åñêè îáåñïå÷èâàþò òàêîå ñóùåñòâåííîå ïðåèìóùåñòâî, êàê ïåðåíîñèìîñòü. Ýòî äîñòèãàåòñÿ çà ñ÷åò òîãî, ÷òî ñîçäàâàåìûé ôàéë èãðû ïðåäñòàâëÿåò ñîáîé äâîè÷íóþ ïðîãðàììó ñïåöèàëüíîãî ôîðìàòà, íå ïðèâÿçàííóþ ê êîíêðåòíîìó ïðîöåññîðó èëè îïåðàöèîííîé ñèñòåìå. Ïðàâäà, äëÿ åå èñïîëíåíèÿ íåîáõîäèìà îòäåëüíàÿ ïðîãðàììà-èíòåðïðåòàòîð — íî, åñëè îíà åñòü, Âû ìîæåòå âûïîëíÿòü ëþáûå ïðîãðàììû, ñîçäàííûå ñ ïîìîùüþ ñîîòâåòñòâóþùåé òåõíîëîãèè. Ïîìèìî ñèñòåìíîé íåçàâèñèìîñòè, òàêèå ïðîãðàììû îáû÷íî ÿâëÿþòñÿ äîâîëüíî êîìïàêòíûìè (ïîñêîëüêó èì íå íàäî çàáîòèòüñÿ î äåòàëÿõ âçàèìîäåéñòâèÿ ñ êëàâèàòóðîé, äèñïëååì, ÎÑ è ïð. — âñå ýòî óæå ðåàëèçîâàíî â ñàìîì èíòåðïðåòàòîðå) è, ÷òî íåìàëîâàæíî, àáñîëþòíî áåçîïàñíûìè â ñìûñëå âèðóñîâ èëè äðóãèõ êîìïüþòåðíûõ âðåäèòåëåé. Äðóãîå, íå ìåíåå âàæíîå ïðåèìóùåñòâî ÈË-ñèñòåì ñîñòîèò â òîì, ÷òî â íèõ óæå ñäåëàíî ìíîãîå, ÷òî èíà÷å ïðèäåòñÿ ðåàëèçîâûâàòü ñàìîñòîÿòåëüíî. Ïðåæäå âñåãî, êîíå÷íî, ýòî àíàëèçàòîð êîìàíä (ïàðñåð). Ýòó ïðîáëåìó ìû óæå çàòðîíóëè âûøå — ïðèñòóïèâ ê ñîçäàíèþ ñîáñòâåííîé èãðû, ìíîãèå îáíàðóæèâàþò, ÷òî, õîòÿ ñäåëàòü ïðèìèòèâíûé ïàðñåð (îðèåíòèðîâàííûé íà êîìàíäû òèïà «ãëàãîë+ñóùåñòâèòåëüíîå») íåñëîæíî, ïîëüçîâàòåëü åãî î÷åíü áûñòðî âîçíåíàâèäèò (à âìåñòå ñ íèì è ñàìó èãðó). Ðåàëèçàöèÿ æå äîñòàòî÷íî ïðîäâèíóòîãî ïàðñåðà (ñîîòâåòñòâóþùåãî óðîâíþ äåéñòâèòåëüíî ìîùíûõ ÈË-ñèñòåì è ïîääåðæèâàþùåãî áîëüøèíñòâî âîçìîæíîñòåé, ïåðå÷èñëåííûõ â ïóíêòå 1.5) — ýòî âåñüìà íåòðèâèàëüíàÿ çàäà÷à. Âàæíûì ìîìåíòîì òàêæå ÿâëÿåòñÿ òî, ÷òî ÈË-ñèñòåìû îáû÷íî óìåþò àâòîìàòè÷åñêè ñîçäàâàòü ðàáî÷èé ñëîâàðü — ñïåöèàëüíóþ âíóòðåííþþ ñòðóêòóðó äàííûõ, ñîäåðæàùóþ âñå ñëîâà, êîòîðûå ìîæåò ïîíèìàòü ïðîãðàììà, è îïòèìèçèðîâàííóþ äëÿ èõ ïîèñêà. Âñå ñëîâà, èñïîëüçóåìûå â ïðîãðàììå, â ãîòîâîì ïðîãðàììíîì êîäå àâòîìàòè÷åñêè çàìåíÿþòñÿ ññûëêàìè íà ñëîâàðü — çà ñ÷åò ýòîãî ïðîãðàììà ñòàíîâèòñÿ íàìíîãî êîìïàêòíåå, à ðàñïîçíàâàíèå êîìàíä — íàìíîãî ýôôåêòèâíåå. Ïîñêîëüêó áîëüøàÿ ÷àñòü äàííûõ â ÈË-ïðîãðàììàõ — òåêñòîâûå ñòðîêè, äëÿ íèõ ÷àñòî ïðèìåíÿþòñÿ ñïåöèàëüíûå ìåòîäû êîäèðîâàíèÿ ñî ñæàòèåì è óñòðàíåíèåì äóáëèêàòîâ, ÷òî î÷åíü ñóùåñòâåííî óìåíüøàåò ðàçìåð ãîòîâîé ïðîãðàììû. Òàì, ãäå êîí÷àåòñÿ ïàðñåð è íà÷èíàåòñÿ ñàìà èãðà, âîçíèêàþò íîâûå ñëîæíîñòè. ×àùå âñåãî îíè ñâÿçàíû ñ êîððåêòíîé ðåàëèçàöèåé îáúåêòíîé ìîäåëè èãðû. Áîëüøèíñòâî ñîâðåìåííûõ ÈË-òåõíîëîãèé ÿâëÿþòñÿ îáúåêòíî-îðèåíòèðîâàííûìè — èíûìè ñëîâàìè, ïðîãðàììà äëÿ íèõ ÿâëÿåòñÿ íàáîðîì îáúåêòîâ, ñïîñîáíûõ îáùàòüñÿ (îáû÷íî ïóòåì ïîñûëêè ñîîáùåíèé) ñ èãðîêîì è äðóã ñ äðóãîì. Êîíå÷íî, ìíîãèå ñîâðåìåííûå ÿçûêè ïðîãðàììèðîâàíèÿ (C++, Java, Delphi) òàêæå ÿâëÿþòñÿ îáúåêòíî-îðèåíòèðîâàííûìè è ïîääåðæèâàþò ïîõîæóþ èäåîëîãèþ. Íî òàêàÿ çàäà÷à, êàê îïèñàíèå îáúåêòíîãî ìèðà èãðû, ÷àñòî ïðîùå è ýôôåêòèâíåå ðåøàåòñÿ â ÈË-ñèñòåìàõ, çà ñ÷åò òîãî, ÷òî áîëüøîé íàáîð îáúåêòîâ è ëîãè÷åñêèõ âçàèìîñâÿçåé ìåæäó íèìè ìîæåò áûòü ñîçäàí âî âðåìÿ êîìïèëÿöèè. ÈË-ñèñòåìû îáû÷íî òàêæå ïðåäîñòàâëÿþò ãîòîâóþ áèáëèîòåêó êëàññîâ, íà îñíîâå êîòîðûõ ìîæíî ñîçäàâàòü ñîáñòâåííûå îáúåêòû ñ óíàñëåäîâàííûìè ñâîéñòâàìè. Ðàçðàáàòûâàÿ îáúåêòíóþ ìîäåëü èãðû ñàìîñòîÿòåëüíî, áåç òàêèõ íàðàáîòîê, î÷åíü ïðîñòî äîïóñòèòü îøèáêè (íàïðèìåð, ñâÿçàííûå ñ ðåàëèçàöèåé îáúåêòîâ-êîíòåéíåðîâ, ñïîñîáíûõ ñîäåðæàòü â ñåáå äðóãèå îáúåêòû). Ñòàíäàðòíûå áèáëèîòåêè çíà÷èòåëüíî óìåíüøàþò ðèñê òàêèõ îøèáîê. Ïîíÿòíî, ÷òî äîëæíî áûòü ïðåäóñìîòðåíî òàêæå ñîõðàíåíèå è âîññòàíîâëåíèå ñîñòîÿíèÿ èãðû. Ðåøèòü ýòó ïðîáëåìó ñðåäñòâàìè ñòàíäàðòíûõ ÿçûêîâ íå ñòîëü óæ ïðîñòî (îñîáåííî êîãäà æåëàòåëüíî, ÷òîáû ôàéëû ñîõðàíåííûõ èãð îêàçàëèñü êîìïàêòíûìè), â òî âðåìÿ êàê â ñèñòåìàõ ÈË ýòî îáû÷íî äåëàåòñÿ àâòîìàòè÷åñêè.  ïðîöåññå ðàçðàáîòêè ïðîãðàììû íåèçáåæíû êàêèå-òî îøèáêè — ïîýòîìó âî âñåõ ÈË-ñèñòåìàõ ïðèñóòñòâóþò äîâîëüíî ìîùíûå ñðåäñòâà îòëàäêè. Îáû÷íî îíè ïîçâîëÿþò îòëàæèâàòü ïðîãðàììó â òåðìèíàõ ñîçäàííîãî âàìè îáúåêòíîãî ìèðà, èçìåíÿÿ ìåñòîïîëîæåíèå è ñâîéñòâà îòäåëüíûõ îáúåêòîâ, ïîçâîëÿÿ ïðèîáðåñòè ëþáîé ïðåäìåò èëè ïåðåìåñòèòüñÿ â ëþáóþ ëîêàöèþ. Äîïîëíèòåëüíûå ñåðâèñíûå âîçìîæíîñòè — íàïðèìåð, âûâîä âñåãî òåêñòà èãðû â îòäåëüíûé ôàéë äëÿ ïðîâåðêè îðôîãðàôèè è ïóíêòóàöèè — òàêæå âåñüìà ïîëåçíû. Íàêîíåö, íåëüçÿ íå óïîìÿíóòü î òîì, ÷òî ñóùåñòâóþò è ÷èñòî èíòåðàêòèâíûå ñèñòåìû ðàçðàáîòêè ÈË (Adrift, SUDS, êîíñîëüíûå ñèñòåìû), ïîçâîëÿþùèå ñîçäàâàòü è ðåäàêòèðîâàòü èãðû âîîáùå áåç ïðîãðàììèðîâàíèÿ, èñêëþ÷èòåëüíî â ðåæèìå äèàëîãà. Êàê ïðàâèëî, ìîùíîñòü òàêèõ ñèñòåì ïîêà çàìåòíî óñòóïàåò ïîëíîöåííûì ÿçûêàì ÈË-ïðîãðàììèðîâàíèÿ — íî ïåðñïåêòèâû ó ýòîãî íàïðàâëåíèÿ, áåçóñëîâíî, åñòü. Ïîäâîäÿ èòîãè, ñòîèò âñïîìíèòü ñòàðóþ èñòèíó: äëÿ ðåøåíèÿ êàæäîé çàäà÷è åñòü ñâîé èíñòðóìåíò, òî æå ñïðàâåäëèâî è äëÿ ÿçûêîâ ïðîãðàììèðîâàíèÿ. Êîíå÷íî, ó óíèâåðñàëüíûõ ÿçûêîâ åñòü ñâîè äîñòîèíñòâà — íî äëÿ ðåøåíèÿ òàêèõ çàäà÷, êàê ðàçðàáîòêà ÈË, ñïåöèàëèçèðîâàííûå ÷àñòî ïîäõîäÿò ëó÷øå. 1.7. ßâëÿåòñÿ ëè æàíð ÈË ïðåèìóùåñòâåííî àíãëîÿçû÷íûì? ñèëó òðàäèöèé ïîëó÷èëîñü òàê, ÷òî ïåðâûì è îñíîâíûì ÿçûêîì ÈË ñòàë àíãëèéñêèé. Ýòî, êîíå÷íî, íåóäèâèòåëüíî. Ïðåæäå âñåãî, ýòîìó ñïîñîáñòâîâàëî ìåñòî ïîÿâëåíèÿ ïåðâûõ ÈË-èãð íà ñâåò — ñíà÷àëà ÑØÀ, ÷óòü ïîçäíåå Âåëèêîáðèòàíèÿ è äðóãèå àíãëîÿçû÷íûå ñòðàíû. Îäíàêî, ó àíãëèéñêîãî ÿçûêà åñòü è äðóãèå ñóùåñòâåííûå ïðåèìóùåñòâà — ïðåæäå âñåãî, åãî ãðàììàòè÷åñêèé ñòðîé. Èç âñåõ åâðîïåéñêèõ (äà è ìèðîâûõ) ÿçûêîâ, àíãëèéñêèé — îäèí èç ñàìûõ ïðîñòûõ â ñìûñëå ìîðôîëîãèè. Ñóùåñòâèòåëüíûå è ïðèëàãàòåëüíûå íå ñêëîíÿþòñÿ; ãëàãîëû íå ñïðÿãàþòñÿ; èõ íåîïðåäåëåííàÿ ôîðìà íè÷åì íå îòëè÷àåòñÿ îò ïîâåëèòåëüíîé (“take iron key” ìîæíî ïîíèìàòü è êàê «âçÿòü æåëåçíûé êëþ÷», è êàê «âîçüìè æåëåçíûé êëþ÷» - íå ñîâñåì âåðíûé ïîäõîä, èáî àâòîð ïðèâîäèò äâà âàðèàíòà ðóññêîãî ïåðåâîäà àíãëèéñêîé ôðàçû, íî â àíãëèéñêîì ÿçûêå òàêîé äâóñìûñëåííîñòè íåò - ïðèì. ñîñò.), ñîãëàñîâàíèÿ ìèíèìàëüíû è ò.ï. Ïî ýòîé ïðè÷èíå ÈË-ñèñòåìó, îáùàþùóþñÿ ñ ïîëüçîâàòåëåì àíãëèéñêîì, ðåàëèçîâàòü ïðîùå, ÷åì äëÿ äðóãîãî ÿçûêà, ïðè÷åì ÿçûê ñèñòåìû (êàê âõîäíîé, òàê è âûõîäíîé) áóäåò äîñòàòî÷íî ïðàâèëüíûì è ãðàìîòíûì, ÷òîáû ïîëüçîâàòåëÿ ýòî íå êîðîáèëî. Íåìàëîâàæíî è òî, ÷òî äëÿ àíãëèéñêîãî õàðàêòåðíû äîñòàòî÷íî êîðîòêèå ñëîâà (çíà÷èòåëüíîå êîëè÷åñòâî ñëîâ íå ïðåâûøàåò ïî äëèíå øåñòè áóêâ, èëè, ïî êðàéíåé ìåðå, ðàçëè÷àåìî ïî íèì). Òåì íå ìåíåå, ñ ðàçâèòèåì æàíðà ïîÿâèëèñü ïîïûòêè ñîçäàíèÿ ÈË-èãð íà äðóãèõ ÿçûêàõ — ïðåæäå âñåãî, åâðîïåéñêèõ. Îñíîâíûìè íàïðàâëåíèÿìè ñòàëè êàê ñîçäàíèå îðèãèíàëüíûõ ÈË-ñèñòåì, òàê è àäàïòàöèÿ àíãëîÿçû÷íûõ (â ïåðâóþ î÷åðåäü, êîíå÷íî, òåõ, â êîòîðûå óæå çàëîæåíû âîçìîæíîñòè äëÿ ëîêàëèçàöèè).  íàñòîÿùåå âðåìÿ ñóùåñòâóåò äîâîëüíî áîãàòàÿ èíòåðàêòèâíàÿ ëèòåðàòóðà íà ôðàíöóçñêîì, èñïàíñêîì è íåìåöêîì ÿçûêàõ. ×òî æå êàñàåòñÿ ÈË íà ðóññêîì ÿçûêå — ýòî íàïðàâëåíèå ïîêà åùå òîëüêî äåëàåò ïåðâûå øàãè. Îò÷àñòè ýòî îáóñëîâëåíî îòíîñèòåëüíî ñëîæíîé ìîðôîëîãèåé ÿçûêà (ñêëîíåíèå ñóùåñòâèòåëüíûõ è ïðèëàãàòåëüíûõ, êîòîðîå, ê òîìó æå, ÷àñòî âàæíî äëÿ ïîíèìàíèÿ ôðàçû), ðàçíîîáðàçèåì ïðèñòàâîê è ôîðì ãëàãîëîâ, îòíîñèòåëüíî äëèííûìè ñëîâàìè è ìíîãèìè äðóãèìè ôàêòîðàìè. Òåì íå ìåíåå, âñå ýòè òðóäíîñòè, íåñîìíåííî, ïðåîäîëèìû (òåì áîëåå, ÷òî âî ìíîãèõ åâðîïåéñêèõ ÿçûêàõ, êîòîðûå íå íàìíîãî ïðîùå, ÷åì ðóññêèé, ñ íèìè óäàëîñü ñïðàâèòüñÿ). Íà ìîé âçãëÿä, ëó÷øèé ñïîñîá èõ ïðåîäîëåòü — èñïîëüçîâàòü êàêóþ-íèáóäü èç ãîòîâûõ ðóññêîÿçû÷íûõ èëè ðóñèôèöèðîâàííûõ ñèñòåì, ïåðå÷èñëåííûõ â ðàçäåëå 2. 2. Äîñòóïíûå ÿçûêè è òåõíîëîãèè ðàçðàáîòêè ÈË2.1. Adrift(ïîêà íåò èíôîðìàöèè…) 2.2. HugoÎòíîñèòåëüíî ìîëîäàÿ (ïî ñðàâíåíèþ ñ Inform è TADS), íî äîâîëüíî óñïåøíî íàáèðàþùàÿ ïîïóëÿðíîñòü ÈË-ñèñòåìà. Ïîñëåäíÿÿ âåðñèÿ: Hugo engine — 3.0.X. Ðàçðàáîòêà è ïîääåðæêà: Êåíò Òåññìàí (Kent Tessman) çàíèìàåòñÿ ðàçðàáîòêîé ñèñòåìû ñ 1995 ãîäà âïëîòü äî íàñòîÿùåãî âðåìåíè. Äîñòóïíîñòü: freeware. Èñõîäíûå òåêñòû òàêæå äîñòóïíû. Ïðèíöèïû òåõíîëîãèè: êîìïèëèðóåìûé ÿçûê ïðîãðàììèðîâàíèÿ. Ôàéëû ñ èñõîäíûì êîäîì (îáû÷íî èìåþùèå ðàñøèðåíèå ’.HUG’) îáðàáàòûâàþòñÿ Hugo-êîìïèëÿòîðîì. Ôàéëû-ðåçóëüòàòû (‘.HEX’) âûïîëíÿþòñÿ Hugo-èíòåðïðåòàòîðîì. Ïåðåíîñèìîñòü: øèðîêàÿ. Òåõíîëîãèÿ äîñòóïíà íà: Acorn RISC OS, Amiga, BeOS, MS-DOS, áîëüøèíñòâå Unix-ñèñòåì, OS/2, Win95/NT. Èíòåðïðåòàòîð òàêæå ïåðåíîñèì íà ëþáóþ ñèñòåìó, ïîääåðæèâàþùóþ Glk (íàïðèìåð MacOS), õîòÿ ñ ïîääåðæêîé ìóëüòèìåäèà ïðè ýòîì õóæå. Îñíîâíûå âîçìîæíîñòè. ßçûê ïðîãðàììèðîâàíèÿ, çàìåòíî íàïîìèíàþùèé Inform — íî, ïî ìíåíèþ ðàçðàáîò÷èêà, ñ áîëåå «ïðîçðà÷íûì» ñèíòàêñèñîì. Ïàðñåð êà÷åñòâåííûé (õîòÿ, ïî íåêîòîðûì îòçûâàì, ñëåãêà óñòóïàåò óðîâíþ Inform è TADS). Èç âîçìîæíîñòåé, çàñëóæèâàþùèõ îòäåëüíîãî óïîìèíàíèÿ, ïðèñóòñòâóþò èåðàðõè÷åñêîå íàñëåäîâàíèå (ìîæíî äàæå èñïîëüçîâàòü îáúåêòû â êà÷åñòâå ñóïåðêëàññîâ), äèíàìè÷åñêîå ôîðìèðîâàíèå ñëîâàðÿ, ãëîáàëüíûå è îáúåêòíûå ñîáûòèÿ (?), ïðåäïàðñåðíàÿ îáðàáîòêà êîìàíäíîé ñòðîêè.  ñèñòåìó âõîäèò ìîùíûé îòëàä÷èê (HD), ïîçâîëÿþùèé ñëåäèòü çà âûïîëíåíèåì ïðîãðàììû, óñòàíàâëèâàòü êîíòðîëüíûå òî÷êè è ò.ï. Èìååòñÿ òàêæå ñïåöèàëüíûé íàáîð îòëàäî÷íûõ ïîäïðîãðàìì (HugoFix). Ìîùíîé îñîáåííîñòüþ ñèñòåìû èçíà÷àëüíî áûëè åå ìóëüòèìåäèà-âîçìîæíîñòè. Ñåé÷àñ âïîëíå ñðàâíèìûå âîçìîæíîñòè ïðåäîñòàâëÿþò Glulx/Inform è HTML-TADS. Òåì íå ìåíåå, Hugo ìîæåò ïîääåðæèâàòü ìíîãîîêîííûé èíòåðôåéñ (ñ íå ïåðåêðûâàþùèìèñÿ îêíàìè), ãðàôèêó (JPEG), àóäèî (MOD, S3M, MP3, MIDI, XM, WAV; äî 32 àóäèîêàíàëîâ), à, íà÷èíàÿ ñ âåðñèè 3.0 — äàæå âèäåî (MPEG, AVI)! Èíòåðíàöèîíàëèçàöèÿ è ðóññêàÿ âåðñèÿ. Ïîêà íåò èíôîðìàöèè. Ññûëêè:
2.3. Inform(ðîäñòâåííûå òåõíîëîãèè: Z-code, Glulx, Blorb) Áåçóñëîâíî, â àíãëîÿçû÷íîì (è íå òîëüêî) ìèðå, ýòî — îäíà èç ñàìûõ ïîïóëÿðíûõ ïëàòôîðì (ïî îáùåìó êîëè÷åñòâó ïðîãðàìì, ñîçäàííûõ íà ýòîé îñíîâå, îíà ÿâíî ìîæåò ïðåòåíäîâàòü íà ìèðîâîå ëèäåðñòâî). Ïîñëåäíÿÿ âåðñèÿ: êîìïèëÿòîðà 6.30, ñòàíäàðòíûõ áèáëèîòåê 6/11. Ðàçðàáîòêà è ïîääåðæêà: ÿçûê Inform â 1993 ã. ñîçäàë Ãðýõåì Íåëüñîí (Graham Nelson). Ïîìèìî íåãî, ê ñîçäàíèþ òåõíîëîãèè ïðèëîæèëè óñèëèÿ åùå ìíîãèå: êîìïàíèÿ Infocom (îðèãèíàëüíûé ôîðìàò Z-ôàéëîâ), ãðóïïà InfoTaskForce (åãî ïîñëåäóþùàÿ «ðàñøèôðîâêà»), Ýíäðþ Ïëîòêèí (Andrew Plotkin) — òåõíîëîãèè Glk, Glulx è Blorb.  íàñòîÿùåå âðåìÿ, ïîääåðæêîé è ðàçâèòèåì òåõíîëîãèè çàíèìàåòñÿ ãðóïïà, êîòîðóþ âîçãëàâëÿåò Ðîäæåð Ôèðò (Roger Firth). Äîñòóïíîñòü: freeware. Ðàñïðîñòðàíÿåòñÿ ñâîáîäíî, ïðè óñëîâèè íåèçìåííîñòè. Èñõîäíûå òåêñòû áèáëèîòåê, êîìïèëÿòîðà è áîëüøèíñòâà èíòåðïðåòàòîðîâ äîñòóïíû. Ïðèíöèïû òåõíîëîãèè: êîìïèëèðóåìûé ÿçûê ïðîãðàììèðîâàíèÿ. Ôàéëû ñ èñõîäíûì êîäîì (îáû÷íî èìåþùèå ðàñøèðåíèå ’.inf’) îáðàáàòûâàþòñÿ êîìïèëÿòîðîì Èíôîðì, ïîääåðæèâàþùèì äâå öåëåâûõ ïëàòôîðìû — Z-code è Glulx. Ôàéëû ïåðâîãî òèïà èìåþò ðàñøèðåíèÿ òèïà .Z# (# — öèôðà, íîìåð âåðñèè Z-ôîðìàòà) è ñîäåðæàò èñïîëíÿåìûé êîä 16-áèòîâîé âèðòóàëüíîé Z-ìàøèíû. Ñ ïîìîùüþ Inform îáû÷íî ñîçäàþòñÿ ïðîãðàììû åå ïÿòîé (.Z5, äî 256 Kb) è âîñüìîé (.Z8, äî 512 Kb) âåðñèé. Êîíå÷íî, äëÿ èõ âûïîëíåíèÿ òðåáóåòñÿ Z-èíòåðïðåòàòîð — íàèáîëåå ïîïóëÿðåí Frotz, èìåþùèé ìíîãî ïîðòîâ è ìîäèôèêàöèé. Çàìå÷ó, ÷òî ïîñêîëüêó ýòîò Z-ôîðìàò îòñ÷èòûâàåò ñâîþ èñòîðèþ îò òîé ñàìîé Infocom, òî âñå Z-èíòåðïðåòàòîðû òàêæå âûïîëíÿþò áîëüøèíñòâî êëàññè÷åñêèõ èãð ýòîé ôèðìû. Ôàéëû Glulx (èìåþò ðàñøèðåíèå .ULX) ñîäåðæàò 32-áèòîâûé âèðòóàëüíûé êîä. Äëÿ èõ âûïîëíåíèÿ òðåáóåòñÿ ñâîé èíòåðïðåòàòîð (îáû÷íî îí íàçûâàåòñÿ Glulxe, èëè íàïîäîáèå ýòîãî). Ðàçìåð Glulx-èãð ïðàêòè÷åñêè íå îãðàíè÷åí, êàê è áîëüøèíñòâî âíóòðåííèõ ëèìèòîâ. Ïåðåíîñèìîñòü: òåõíîëîãèÿ äîñòóïíà î÷åíü øèðîêî. Âîò ñïèñîê (íå ñàìûé ñâåæèé), ïëàòôîðì, ãäå êîìïèëÿòîð Inform äîñòóïåí: Acorn RISC OS, BeOS, Macintosh, Atari ST (âåðñèÿ 5.4), Amiga, MS-DOS (òàêæå âåðñèÿ äëÿ GO32), Linux, OS/2, UNIX, VMS (DEC VAX èëè Alpha) è EPOC (Psion 5/Revo/7), Windows. Z-èíòåðïðåòàòîðû äîñòóïíû åùå øèðå — â ÷àñòíîñòè, åñòü äëÿ áîëüøèíñòâà ìàëîìîùíûõ óñòðîéñòâ, âðîäå íàëàäîííèêîâ. Glulx-èíòåðïðåòàòîðû ïîêà ðàñïðîñòðàíåíû ìåíüøå, íî äëÿ Windows, Linux (êîíñîëüíûé è X) è MacOS X èìåþòñÿ. Îñíîâíûå âîçìîæíîñòè. Inform — ïîëíîôóíêöèîíàëüíûé îáúåêòíî-îðèåíòèðîâàííûé ÿçûê ïðîãðàììèðîâàíèÿ, âî ìíîãîì ïîõîæèé íà C è SmallTalk. Îí ïîçâîëÿåò îïèñûâàòü èãðó â âèäå èåðàðõèè îáúåêòîâ ñ îïðåäåëåííûìè ñâîéñòâàìè è àòðèáóòàìè; ïîääåðæèâàþòñÿ êëàññû è íàñëåäîâàíèå, â ò.÷. ìíîæåñòâåííîå. Ñèñòåìíûé ïàðñåð âåñüìà ðàçâèò è ñîîòâåòñòâóåò ñòàíäàðòàì ëó÷øèõ ïðîäóêòîâ îò Infocom. Ïî óìîë÷àíèþ ïîääåðæèâàåòñÿ îêîëî ïîëóñîòíè ñòàíäàðòíûõ ãëàãîëîâ; ìîæíî ëåãêî îïðåäåëÿòü íîâûå ãëàãîëüíûå ôðàçû (ñ àëüòåðíàòèâíûìè âàðèàíòàìè ñèíòàêñèñà), ðàâíî êàê è çàìåùàòü èëè ïåðåîïðåäåëÿòü ñòàíäàðòíûå. Ïëàòôîðìå ïðèñóùà î÷åíü îòêðûòàÿ àðõèòåêòóðà — Inform â çíà÷èòåëüíîé ñòåïåíè ðåàëèçîâàí íà ñåáå ñàìîì. Íàïðèìåð, ïàðñåð ðåàëèçîâàí â âèäå íàáîðà Inform-ïîäïðîãðàìì, ÷òî ïîçâîëÿåò ëåãêî èçìåíÿòü ëþáûå åãî ìîäóëè; òî æå ñïðàâåäëèâî äëÿ áèáëèîòåêè ñòàíäàðòíûõ ãëàãîëîâ.  ÿçûêå òàêæå èìååòñÿ ñïåöèàëüíîå ñðåäñòâî äëÿ «çàìåùåíèÿ» ñòàíäàðòíûõ ïîäïðîãðàìì íà îïðåäåëåííûå ïîëüçîâàòåëåì. Èìååòñÿ áîëåå ñîòíè äîïîëíèòåëüíûõ ìîäóëåé è ïîëåçíûõ ðàñøèðåíèé äëÿ ñòàíäàðòíûõ áèáëèîòåê. Èìåþòñÿ äàæå ïîëíûå àëüòåðíàòèâû ñòàíäàðòíûì áèáëèîòåêàì — íàïðèìåð, ïàêåò Platypus. Îòäåëüíîãî îòëàä÷èêà äëÿ Inform íå ïðåäóñìîòðåíî — çàòî ïðåäóñìîòðåí ñïåöèàëüíûé îòëàäî÷íûé ðåæèì êîìïèëÿöèè èãðû.  íåì äîñòóïíî áîëüøîå êîëè÷åñòâî äîïîëíèòåëüíûõ îòëàäî÷íûõ ãëàãîëîâ, ïîçâîëÿþùèõ ñëåäèòü çà ðàáîòîé ïàðñåðà è âíóòðåííèìè ïðîöåññàìè èãðû, ïðîñìàòðèâàòü ñòðóêòóðó îáúåêòíîãî äåðåâà è ñâîéñòâà îòäåëüíûõ îáúåêòîâ, ìãíîâåííî ïåðåìåñòèòüñÿ â ëþáóþ ëîêàöèþ è çàïîëó÷èòü ëþáîé îáúåêò è ò.ï. Åùå áîëåå ìîùíûõ äîïîëíèòåëüíûì ñðåäñòâîì ÿâëÿåòñÿ âñòðîåííûé îòëàä÷èê “Infix“, ïîçâîëÿþùèé ïðîèçâîëüíî ìåíÿòü ïåðåìåííûå èãðû è àòðèáóòû îáúåêòîâ è ïîíèìàþùèé âûðàæåíèÿ ñ Inform-ïîäîáíûì ñèíòàêñèñîì. Êîìïèëÿòîð ïîääåðæèâàåò ìíîæåñòâî äîïîëíèòåëüíûõ îïöèé, âêëþ÷àÿ âûäà÷ó ðàçíîîáðàçíûõ ëèñòèíãîâ è äàìïîâ ñîçäàâàåìîé ïðîãðàììû â «÷èòàåìîì» âèäå, âûäà÷ó ñòàòèñòèêè (íàïðèìåð, îáùèé îáúåì òåêñòà â èñõîäíîì êîäå) è ïð. Äëÿ Z-ôîðìàòà äîñòóïíî ìíîãî äîïîëíèòåëüíûõ èíñòðóìåíòîâ — äåêîäåðû è äèñàññåìáëåðû (TXD, InfoDump), âåðèôèêàòîðû öåëîñòíîñòè Z-ôàéëà è ïð. Èìåëè ìåñòî äàæå ïîïûòêè (ïîêà, ïðàâäà, íå ñëèøêîì óäà÷íûå) ñîçäàòü äèñàññåìáëåðû, àâòîìàòè÷åñêè âîññòàíàâëèâàþùèå Z-ôàéë äî èñõîäíîãî êîäà íà Èíôîðìå. Îðèãèíàëüíûé ôîðìàò Z-êîäà ïðåäëàãàë âåñüìà îãðàíè÷åííûå (è ïëîõî ñîâìåñòèìûå ñ íîâûìè èíòåðïðåòàòîðàìè) âîçìîæíîñòè äëÿ óïðàâëåíèÿ öâåòîì è ñòèëÿìè òåêñòà, äåëåíèÿ ýêðàíà íà îêíà è âûâîäà ãðàôèêè. Íîâûé ôîðìàò, Glulx, ïðèçâàí èñïðàâèòü ýòîò íåäîñòàòîê. Glulx-ïðîãðàììû ìîãóò îòêðûâàòü è èñïîëüçîâàòü ïðîèçâîëüíîå êîëè÷åñòâî íåïåðåêðûâàþùèõñÿ îêîí (ïðè÷åì èõ ðàçìåðû è ðàñïîëîæåíèå ìîæíî ìåíÿòü ïðè âûïîëíåíèè ïðîãðàììû), óïðàâëÿòü ñòèëÿìè è ôîðìàòèðîâàíèåì âûâîäèìîãî òåêñòà, âûâîäèòü ãðàôè÷åñêèå èçîáðàæåíèÿ â îòäåëüíûå îêíà èëè âñòðàèâàòü èõ â òåêñò, âíåäðÿòü â òåêñò ãèïåðññûëêè, âîñïðîèçâîäèòü ìóçûêó è çâóêîâûå ýôôåêòû ïî íåñêîëüêèì êàíàëàì, ðàáîòàòü ñ ïðîèçâîëüíûìè âíåøíèìè ôàéëàìè è ïð. Glulx-ïðîãðàììû óïðàâëÿþòñÿ ñîáûòèÿìè, ïîçâîëÿþùèìè àñèíõðîííî îáðàáàòûâàòü ââîä îò êëàâèàòóðû, ìûøè è òàéìåðà. Ñòàíäàðòíûå Èíôîðì-áèáëèîòåêè òåïåðü ðàñøèðåíû òàêèì îáðàçîì, ÷òî ïðîãðàììèñò ìîæåò ñîçäàâàòü Glulx-èãðû ñ ïîääåðæêîé ãðàôèêè, àóäèî, ìûøè è ò.ï. íè÷åãî â íèõ íå ìåíÿÿ — íàäî ëèøü ïîäêëþ÷èòü ñîáñòâåííûå îáðàáîò÷èêè ê çàëîæåííûì â áèáëèîòåêó «ïåðåõîäíèêàì». Íîâûì ñòàíäàðòíûì ôîðìàòîì äëÿ õðàíåíèÿ ãðàôèêè è ìóëüòèìåäèà ÿâëÿåòñÿ Blorb (ðàñøèðåíèå .BLB).  ôàéëû ýòîãî ôîðìàòà ìîãóò óïàêîâûâàòüñÿ ãðàôè÷åñêèå èçîáðàæåíèÿ (â ôîðìàòàõ JPEG è PNG), ìóçûêà è çâóêè (â ôîðìàòàõ MOD, SONG, AU, RIFF/WAV è OGG) è ñîáñòâåííî ïðîãðàììà (êàê Z-code, òàê è Glulx), ÷òî äàåò âîçìîæíîñòü ðàñïðîñòðàíÿòü ïðîãðàììó â îäíîì BLB-ôàéëå âìåñòå ñî âñåìè ìóëüòèìåäèà-ðåñóðñàìè. Ñ èñïîëüçîâàíèåì ýòèõ òåõíîëîãèé åñòü âîçìîæíîñòü ñîçäàâàòü ÈË-èãðû, äîïîëíÿþùèå ñòàíäàðòíûé ïàðñåð ìîùíûì Legend-ïîäîáíûì ìíîãîîêîííûì èíòåðôåéñîì. Áîëåå òîãî, óæå ïîÿâèëèñü áèáëèîòå÷íûå ïàêåòû, ïîìîãàþùèå ýòî äåëàòü (íàïðèìåð, GWindows). Èíòåðíàöèîíàëèçàöèÿ è ðóññêàÿ âåðñèÿ. Inform — îäíà èç ñàìûõ øèðîêî ëîêàëèçîâàííûõ ñèñòåì ÈË, ïðè÷åì âîçìîæíîñòü ëîêàëèçàöèè çàëîæåíà íåïîñðåäñòâåííî â ñòàíäàðòíûå áèáëèîòåêè. Âñå ÿçûêîâî-ñïåöèôè÷íûå äåòàëè (ñîîáùåíèÿ, ãðàììàòèêà, ñîþçû è ñëóæåáíûå ñëîâà è ïð.) èçîëèðîâàíû îò ïðî÷åãî êîäà, ñîáðàíû â äâóõ áèáëèîòå÷íûõ ôàéëàõ (English.h è Grammar.h), è â ïðèíöèïå äîñòàòî÷íî ïðàâèëüíî ïåðåâåñòè èõ ñîäåðæèìîå äëÿ ëîêàëèçàöèè âñåé ñèñòåìû. Õîòÿ èçíà÷àëüíî ñèñòåìà ñîçäàâàëàñü äëÿ òàêîãî ãðàììàòè÷åñêè ïðîñòîãî ÿçûêà, êàê àíãëèéñêèé, â íåé ïðåäóñìîòðåíî ìíîãèå ïîíÿòèÿ (êîíöåïöèè ðîäà è ÷èñëà, ðàçëè÷íûå àðòèêëè è èõ contraction forms è ïð.), òàêæå íåîáõîäèìûå äëÿ åâðîïåéñêèõ ÿçûêîâ. Ìåõàíèçì ïðåäïàðñåðíîé îáðàáîòêè êîìàíäíîé ñòðîêè ïîçâîëÿåò ñïðàâèòüñÿ ñî ìíîãèìè ÿçûêîâî-ñïåöèôè÷íûìè òðóäíîñòÿìè. Óæå èìåþòñÿ ïåðåâîäû íà íåìåöêèé, ôðàíöóçñêèé, èñïàíñêèé, èòàëüÿíñêèé, øâåäñêèé, èñêóññòâåííûå ÿçûêè ýñïåðàíòî è lojban; â ïðîöåññå ïåðåâîä åùå íà íåñêîëüêî ÿçûêîâ — ïîðòóãàëüñêèé, ôèíñêèé, ïîëüñêèé.  ñïåöèôèêàöèè Z-ôîðìàòîâ ñåé÷àñ çàëîæåíà ïîëíàÿ ïîääåðæêà íàáîðà ñèìâîëîâ Unicode. Ðóññêàÿ âåðñèÿ ñèñòåìû (RInform) àêòèâíî ðàçðàáàòûâàåòñÿ ñ 2003 ãîäà ïî íàñòîÿùåå âðåìÿ. Îñíîâíîé åå ðàçðàáîò÷èê — àâòîð ýòîãî äîêóìåíòà. Ñîñòîÿíèå — «ñòàáèëüíàÿ áåòà» (âåðñèÿ 0.80 ãîòîâèòñÿ ê âûõîäó), ïðèíöèïèàëüíûõ èçìåíåíèé íå îæèäàåòñÿ. Ñèñòåìà ñàìîñòîÿòåëüíî óìååò ãåíåðèðîâàòü ïàäåæíûå ôîðìû äëÿ èìåí îáúåêòîâ (äîñòàòî÷íî âûäåëèòü ôëåêñèè, íàïðèìåð «ìàññèâí/àÿ ñòàëüí/àÿ äâåð/ü», ïðèñâîèâ îáúåêòó ïðàâèëüíûå ðîä è ÷èñëî), è ðàñïîçíàâàòü ïàäåæíûå ôîðìû â êîìàíäàõ (è «îòêðûòü äâåðü êëþ÷îì», è «îòêðûòü êëþ÷îì äâåðü» ïîíèìàþòñÿ ïðàâèëüíî). Òàêæå ðàñïîçíàåòñÿ áîëüøîå ÷èñëî äîïîëíèòåëüíûõ ãëàãîëüíûõ ôîðì ñ ïðèñòàâêàìè. Ê ñîæàëåíèþ, ñåé÷àñ Glulx íå ïîääåðæèâàåòñÿ â êà÷åñòâå âûõîäíîé ïëàòôîðìû äëÿ RInform, ò.ê. â ñïåöèôèêàöèè ýòîãî ôîðìàòà ïîääåðæêà íàáîðîâ ñèìâîëîâ, îòëè÷íûõ îò Latin-1, íå çàëîæåíà âîîáùå! Ê ñ÷àñòüþ, ýòî áóäåò èñïðàâëåíî. Êðîìå òîãî, íå âñå Z-èíòåðïðåòàòîðû ïðàâèëüíî ïîääåðæèâàþò Unicode — ïîä Windows ðåêîìåíäóåòñÿ èñïîëüçîâàòü WinFrotz 2002. Ññûëêè:
2.4. TADS (Text Adventure Development System)Âòîðàÿ ïî ïîïóëÿðíîñòè, ïîñëå Inform, ïëàòôîðìà â ìèðå. Ïîñëåäíÿÿ âåðñèÿ: 2.5.X (TADS 2), 3.0.X (TADS 3). Ðàçðàáîòêà è ïîääåðæêà: TADS — ïðîôåññèîíàëüíàÿ ñèñòåìà äëÿ ðàçðàáîòêè ÈË — ñîçäàíà Ìàéêëîì Ðîáåðòñîì (Michael Roberts) â êîíöå 1980-õ ãîäîâ. Îí åå ïðîäîëæàåò ðàçâèâàòü è ïîääåðæèâàòü äî íàñòîÿùåãî âðåìåíè (ïðè ó÷àñòèè è ïîääåðæêå ìíîæåñòâà ýíòóçèàñòîâ). Äîñòóïíîñòü: êîãäà-òî ñèñòåìà ðàçðàáàòûâàëàñü êàê shareware-ïðîäóêò; òåïåðü (âìåñòå ñ èñõîäíûìè òåêñòàìè) ðàñïðîñòðàíÿåòñÿ ñâîáîäíî. Ïðèíöèïû òåõíîëîãèè: êîìïèëèðóåìûé ÿçûê ïðîãðàììèðîâàíèÿ. TADS-êîìïèëÿòîð îáðàáàòûâàåò èñõîäíûå ôàéëû (îáû÷íî èìåþùèå ðàñøèðåíèå ’.T’), è ãåíåðèðóåò ïåðåíîñèìûé äâîè÷íûé ôàéë èãðû (ðàñøèðåíèå .GAM), äëÿ âûïîëíåíèÿ êîòîðîãî íåîáõîäèì TADS-èíòåðïðåòàòîð. Ïåðåíîñèìîñòü: øèðîêàÿ. Ñèñòåìà TADS äîñòóïíà íà: Acorn RISC OS (òîëüêî èíòåðïðåòàòîð), AmigaDOS, Atari ST/TT/Falcon, DECStation, Linux, Macintosh, MS-DOS (åñòü òàêæå âåðñèÿ äëÿ GO32), NeXT, OS/2, SGI Iris/Indigo, SunOS & Sun 3, âñå âåðñèè Windows. Èíòåðïðåòàòîðû TADS ïðåäúÿâëÿþò íåñêîëüêî áîëüøèå ñèñòåìíûå òðåáîâàíèÿ, ÷åì Z-èíòåðïðåòàòîðû, ïîýòîìó íà î÷åíü ìàëîìîùíûõ ñèñòåìàõ (ñòàðûå ÏÊ, íàëàäîííèêè) ìîãóò íå ðàáîòàòü.
Îñíîâíûå âîçìîæíîñòè. TADS — îáúåêòíî-îðèåíòèðîâàííûé ÿçûê ïðîãðàììèðîâàíèÿ, íàïîìèíàþùèé ãèáðèä ìåæäó C è Ïàñêàëåì. Îáû÷íàÿ ïðîãðàììà ñîñòîèò â îñíîâíîì èç îïèñàíèé îáúåêòîâ (ëîêàöèé, ïðåäìåòîâ, NPC); ïîääåðæèâàþòñÿ ñóïåðêëàññû è íàñëåäîâàíèå (ìíîæåñòâåííîå). Ñòàíäàðòíûé ïàðñåð âåñüìà ðàçâèò (íå óñòóïàåò ñòàíäàðòíîìó «èíôîêîìîâñêîìó» óðîâíþ). Êîíå÷íî, åñòü âîçìîæíîñòü ïåðåîïðåäåëÿòü è ðàñøèðÿòü íàáîð ãëàãîëîâ è èõ ñèíòàêñèñ, à òàêæå ïåðåîïðåäåëÿòü áèáëèîòå÷íûå ïîäïðîãðàììû. TADS òàêæå ïîääåðæèâàåò äèíàìè÷åñêîå óïðàâëåíèå ïàìÿòüþ è ñîçäàíèå íîâûõ îáúåêòîâ ïðè âûïîëíåíèè. Ñèñòåìà ðàñïîëàãàåò ðàçâèòûìè ñðåäñòâàìè ââîäà-âûâîäà — â ÷àñòíîñòè, ìîæíî ðàáîòàòü ñ ëþáûìè âíåøíèìè ôàéëàìè. Ïðåäóñìîòðåíà äàæå âîçìîæíîñòü ñâÿçûâàíèÿ ñ äâîè÷íîé TADS-ïðîãðàììîé ôðàãìåíòîâ êîäà, íàïèñàííûõ íà äðóãèõ ÿçûêàõ (õîòÿ òî, ÷òî ïîëó÷èòñÿ â ðåçóëüòàòå, âðÿä ëè áóäåò ïåðåíîñèìûì). Åñòü âîçìîæíîñòü ñîçäàâàòü “stand-alone game”, ò.å. TADS-ïðîãðàììó, ñâÿçàííóþ ñ èíòåðïðåòàòîðîì â îäèí èñïîëíÿåìûé ôàéë. Âåñüìà ìîùíîå äîïîëíèòåëüíîå ñðåäñòâî — TADS-îòëàä÷èê (TDB), ïîçâîëÿþùèé ïðîñìàòðèâàòü è èçìåíÿòü ëþáûå äàííûå ïðîãðàììû, âûïîëíÿòü åå â ïîøàãîâîì ðåæèìå, óñòàíàâëèâàòü êîíòðîëüíûå òî÷êè è ïð. ßäðî TADS òåõíîëîãèè (ñòàíäàðòíûå ñóïåðêëàññû, ãëàãîëû, ñèñòåìíûå ñîîáùåíèÿ) ðåàëèçîâàíî â âèäå äâóõ áèáëèîòå÷íûõ ôàéëîâ (“adv.t” è “std.t”), ëåãêî äîñòóïíûõ äëÿ ìîäèôèêàöèè. (Ïðàâäà, ïî êðàéíåé ìåðå, â TADS 2, âîçìîæíîñòè âëèÿòü íà ðàáîòó ïàðñåðà ñóùåñòâåííî ìåíüøå, ÷åì â Inform.) Òàêæå ðåàëèçîâàíî ìíîæåñòâî ïîëåçíûõ ðàñøèðåíèé äëÿ ñòàíäàðòíûõ áèáëèîòåê, ñóùåñòâóþò äàæå ïîëíûå àëüòåðíàòèâû èì (WorldClass, Pianosa). Îòíîñèòåëüíî íîâîå ðàñøèðåíèå òåõíîëîãèè — HTML-TADS — ïîçâîëÿåò ëó÷øå óïðàâëÿòü âûâîäèìûì òåêñòîì, ïóòåì âêëþ÷åíèÿ â íåãî òåãîâ ðàçìåòêè (ïîäìíîæåñòâî HTML). Çà ñ÷åò ýòîãî ìîæíî óïðàâëÿòü øðèôòàìè, ðàçìåðàìè, öâåòîì è ïðî÷èìè ñòèëåâûìè àòðèáóòàìè òåêñòà; ìîæíî âêëþ÷àòü â òåêñò ãèïåðññûëêè è ãðàôèêó (GIF, JPEG, PNG), âîñïðîèçâîäèòü ìíîãèå ïîïóëÿðíûå àóäèîôîðìàòû (MIDI, WAV, MP3, OGG). Ïðîãðàììû, îðèåíòèðîâàííûå íà HTML-TADS, ðàáîòàþò è â áîëåå ñòàðûõ TADS-èíòåðïðåòàòîðàõ (õîòÿ, êîíå÷íî, áåç ïåðå÷èñëåííûõ «èçëèøåñòâ»). Ñåé÷àñ HTML-TADS èíòåðïðåòàòîðû äîñòóïíû äëÿ Windows è MacOS X. Íîâûå âåðñèè ñèñòåìû (TADS 3) ïðåäñòàâëÿþò ñîáîé ñóùåñòâåííûé øàã âïåðåä, ïðåæäå âñåãî, â ïëàíå îïèñàíèÿ îáúåêòíîé ìîäåëè èãðû. Ïîêà TADS 3 ïîëüçóåòñÿ íåñêîëüêî ìåíüøåé ïîïóëÿðíîñòüþ, ÷åì TADS 2. Èíòåðíàöèîíàëèçàöèÿ è ðóññêàÿ âåðñèÿ. TADS ïîääàåòñÿ ëîêàëèçàöèè, õîòÿ òðåáóåòñÿ íåñêîëüêî áîëüøå óñèëèé, ÷åì äëÿ Inform. Ñîáñòâåííî, äëÿ ïåðåâîäà ñèñòåìû íåîáõîäèìî àäàïòèðîâàòü ê äðóãîìó ÿçûêó îáà áèáëèîòå÷íûõ ôàéëà. Ðóññêàÿ âåðñèÿ TADS 2 (äàëåå RTADS) ðàçðàáàòûâàåòñÿ ñ ëåòà 2002 ã. Âåäóùèé ðàçðàáîò÷èê — Àíäðåé Ãðàíêèí. Ñîñòîÿíèå ðàçðàáîòêè íà ñåãîäíÿøíèé äåíü — ñòàáèëüíîå, îáíîâëåíèÿ ïîÿâëÿþòñÿ ðàç â òðè-øåñòü ìåñÿöåâ. Âñòðîåííîé â ñàìó ñèñòåìó ïîääåðæêè ïàäåæåé íåò. Îäíàêî, â ñèñòåìå ïðåäóñìîòðåí âíåøíèé ãåíåðàòîð äëÿ ïàäåæíûõ ôîðì. Îôèöèàëüíîå ðóêîâîäñòâî ïî TADS ïåðåâåäåíî íà ðóññêèé ÿçûê Âàëåíòèíîì Êîïòåëüöåâûì (URL?). Ðóññêàÿ ëîêàëèçàöèÿ TADS 3, íàñêîëüêî ìíå èçâåñòíî, ïîêà íå ïëàíèðóåòñÿ. Ññûëêè |
|||||||||
|
Ðàñïðîñòðàíåíèå ìàòåðèàëîâ ñàéòà îçíà÷àåò, ÷òî ðàñïðîñòðàíèòåëü ïðèíÿë óñëîâèÿ ëèöåíçèîííîãî ñîãëàøåíèÿ. Èäåÿ è ðåàëèçàöèÿ: © Âëàäèìèð Äîâûäåíêîâ è Àíàòîëèé Êàìûíèí, 2004-2026 | ||||||||||
Ñîöèàëüíûå ñåòè