Շաբաթ-կիրակիս ծախսեցի խաղ շինելու վրա

Անցած ուրբաթ մեր համալսարանում մեկնարկեց խաղերի ջեմ պլյուսը ( անգլ.՝ game jam+ )։ Ով տեղեակ չի ինչ է խաղերի ջեմը ասեմ՝ խաղերի ջեմը սովորաբար երկու օր տևողությամբ միջոցառում է, որի ժամանակ տարբեր հեռանկարի մարդիկ հավաքվում են խաղ ստեղծելու նպատակով։ Կարևոր է նշել, որ խաղը պարտադիր չի լինի թվային ( սակայն ցանկալի է ), այլ կարելի է ստեղծել սեղանի, մտովի և ցանկացած այլ տիպի խաղ, այդ թվում նաև կենդանի գործողություններով դերախաղեր ( անգլ.՝ live action role playing game ):

Օր զրո

Ջեմը սկսեց ժամը վեցին, երբ հայտատարեցին թեմաները։ Այս անգամ մրցում էինք երեք կատեգորայում՝ ոչ ծաղիկ ոչ մոլորակ ( անգլ.՝ No Plant no Planet ), վերմակ ու ջոյստիկ ( անգլ.՝ A blanket and joystick ), վերանայել կլասիկաները ( անգ.՝ Rethink the classics ), ուրախ ժամանակ անցկանցել ( անգլ.՝ Having fun Casually ), հիմնված իրական դեպքերի վրա ( անգլ.՝ Based on real events ): Ամբողջ օրը ծախսեցինք մտքի վրա աշխատելով։ Ընտրեցինք իմ միտքը, որը շներին կերակրելու մասին էր։ Ես միտքը կտեղավորեի «ուրախ ժամանակ անցկացնել» կատեգորիայի մեջ, սակայն որոշեցինք ասել որ վերանայում ենք կլասիկաները, կլասիկան լինելով Risk of Rain 2-ը։

Risk of Rain 2: Gameplay shot > Լուսանկար Risk or Rain 2 խաղից

Մտքի նկարագրությունը

Խաղը տեղի էի ունենում փոքր թաղամասում, որտեղ խաղացողին վարձել են շներին ման տալու համար։ Ման տալու ընթացքում բոլոր շները փախնում են ու սկսում են վազել քարտեզի տաբեր կողմերով, և պետք է շներից մի քանիսին հավաքել մինչև ժամանակի ավարտը, թե չէ աշխատանքից կհեռացնեն։ Խաղը իրենով երրորդ դեմքից կրակոցի է ( անգլ.՝ third person shooter ), որտեղ խաղացողը կրակում է ուտելիք շների վրա և երբ շան սովածության մակարդակը նվազում է զրոյի, նա հեզանում է և միանում խաղացողին վզակապով։ Հակրավոր է նշել, որ խաղը ունի շատ արագ ընթացք Doom Eternal-ի նման, որտեղ ճարպիկորեն պետք է շարժվել քարտեզի տարբեր մասերով և ճշգրիտ շարժումներով «կերակրել» շանը։ Խաղը ունի երեք դժվարություններ։ Առաջին, քարտեզում կան սկյուռիկներ և կատուները, որոնք փորձելու են խանգարեն խաղացողին տարբեր կերպով ժամանակը սպառելու համար։ Երբ շները կապված ենք խաղացողին, նրանք տարբեր ինտեռվալներով փորձելու են քաշեն խաղացողին դեպի իրենց կողմ, խանգարելով խաղացողին նշան բռնել և տեղաշարժվել, հարկավոր է նշել որ ինչքան շատ շուն այդքան ավելի դժվար է լինելու տեղաշարժվել։ Եվ երրոդ շները ունեն սովոծանալու հատկություն, այսինքն եթե երկար ման գաք նույն շներով, իրեքն սովոծանալու են ու էլի փախչեն։ Սակայն շներին հավաքելը ունի երկու լավ կողմ, առաջին հավաքելով տարբեր տեսակի շներ, ստանում եք տարբեր տեսակի առավելությունները ( անգլ.` buff ), օրինակ հավելյալ արագություն, կամ ավելի արագ տեմպով կերակրելու ձևեր։Նաև որոշ քանակի շներ հավաքելուց հետո, հայտնվում է հիմնական թիրախը ( չգիտեմ ոնց թարքմանեմ boss-ը այս կոնտեքստում ), որ շաաաատ մեծ ու շաաատ սոված շուն է։ Իրան կերակրելուց հետո դուք հաղթում եք։

Օր առաջին

Թմում վեց հոգի էինք։ Երեք հոգի ծրագրավորող, մեկ հարթակի դիզայներ ( անգլ.՝ level designer ), մեկ արտիստ և մի հոգի ով սկսնակ էր և փորձում էր ամեն ինչում օգնել։ Ինձ որոշեցին նշանակել, որպես lead programmer, որ համար շատ զխճում եմ, քանի որ ավելի շատ զբաղված էի մյուս ծրագրավորողներին տարբեր բաներ բացատրելով և գործերը մարդկանց մեջ բաժանելով։ Ես պետք է գրեի «ոչ խաղացող կերպարների»(անգլ.՝ Non Player Character)՝ այս դեպքում շների ,կատուների և սկյուռիկների արհեստական բանականությունը և պահվածքը, որի վրա ես ցավոք չհասցրեցի շատ աշխատել։ Որպես շարժիչ (անգլ.՝ Game Engine) որոշեցինք օգտագործել Godot-ը, որը շատ հարմար է փոքր և միջին չափի խաղեր ստեղծելու համար։ Բանականության համար գրում էի օգուտի վրա հիմնված բանականություն (անգլ.` utilty-based AI )։ Գաղափարը պարզ է և շատ էֆեկտիվ է խաղերի մեջ։ Մի քանի բառով, կերպարներին տալիս եմ մի քանի հնարավոր գործողություն, անիմաստ վազել, փախնել խաղացողից, կծել կամ ուրիշ բաներ, և ամեն մեկին տալիս եմ փոփոխական արժեք։ Ապա, կախված որ գործողությունն է տվյալ պահին ավելի արժեքավոր, կերպարը անում է կոնկրետ բան։ Ասենք եթե հեռու է խաղացողից ապա անիմաստ կվազի քարտեզով, եթե խաղացողը մոտիկանա, կփորձի փախնել և այլն։ Օրվա վերջում արդեն ունեինք մի քանի աշխատող բան որոնք պատրաստել էինք տարբեր համակարգիչների վրա և պետք է հավաքեինք իրար գլխի։

Վերջին Օր

Երկրորդ օրը արդեն կիսաքնած էինք, բայց լիքը գործ արեցինք։ Առաջին հերթին սկսեցինք բոլորի արած գործերի մի պռոյեկտի մեջ ավելացնել, որը բերեց լիքը կոնֆլիկտների, խոսքը գնում է գիթ ( անգլ.՝ git ) կոնֆլիկտների մասին։ Կոնֆլիկտները ուղղելուց շատ ժամանակ չէր մնացել, ու գնացինք խաղը ցուցադրելու վրա։ Իհարկե ոչմի տեղ չշահեցինք քանի-որ խաղը շատ կիսատ վիճակում էր և հիմնական գեյփլեյից ոչ մի հատկանշական բան դեռ չկար, բայց մենք շատ հավես ժամանակ անցկացրեցինք, իսկ ես լիքը բան սովորեցի գոդոտից և մարդկանց առաջնորդելու մասին։ Խաղը դրած է itch.io-ի էջում Hounded: Նաև կցեմ եմ փոքր հոլովակ խաղից

Hounded: gameplay