Despre CrossVoice
Ador jocuri precum Mordhau și Hunt: Showdown și mi-a plăcut mereu sistemul de replici vocale din Mordhau, dar și din Chivalry 2. La un moment dat am început să mă întreb cum aș putea folosi aceeași mecanică în Hunt: Showdown și, de ce nu, în orice alt joc cu chat vocal.
Ideea a devenit un prim prototip în Python care funcționa prin dispozitive audio virtuale. Conceptul funcționa, dar din diverse motive proiectul a stat câțiva ani pe raft.
Mai târziu am descoperit soundboarduri precum Soundpad și ce puteau face redând sunete prin microfon. Dar toate soundboardurile pe care le-am găsit funcționau la fel: o tastă, un sunet. Asta m-a împins să reiau proiectul și să-l duc mult mai departe decât prototipul inițial. Am început să experimentez cu C++ ca să construiesc o soluție audio nativă care să-mi dea un control real asupra modului în care sunetul este procesat și transmis.
De acolo am construit restul aplicației în C#, începând cu o interfață pentru gestionarea profilurilor și configurarea comenzilor vocale. Mi-am dat seama repede că redarea sunetelor era doar o parte a problemei: totul trebuia să funcționeze și cu chatul vocal al fiecărui joc, inclusiv cu jocurile care folosesc funcția „Apasă pentru a vorbi”. Asta m-a dus spre rutarea audio și gestionarea tastaturii la nivel scăzut, astfel încât acele apăsări de taste să poată fi gestionate în mod fiabil.

Pe măsură ce dezvoltarea a avansat, CrossVoice a crescut. Profilurile au evoluat pentru a organiza comenzile în pagini, cu taste și modificatori, variante audio și setări precum volumul, înălțimea sunetului și viteza de redare. Am adăugat și o suprapunere persistentă, ca să poți folosi și controla aplicația în timpul unui meci, fără să ieși din joc.
Obiectivul meu a fost dintotdeauna ca CrossVoice să nu depindă de niciun joc anume. Îți configurezi profilurile cum vrei și le folosești în mai multe jocuri, fără integrări specifice pentru fiecare joc și fără ca aplicația să trebuiască să știe ce joci.
În acel punct nu prea mai avea sens ca toată munca asta să rămână doar în profilurile mele. De ce să nu-i las pe jucători să le partajeze pe ale lor și să se bucure de ce creează comunitatea? Așa a prins contur partea de Comunitate a CrossVoice.
Așa a crescut CrossVoice de la un prototip în Python la proiectul de astăzi. Ce a început ca o idee în timp ce jucam Mordhau și Hunt: Showdown a devenit un proiect mult mai ambițios, în care am construit și extins practic fiecare parte a aplicației.
— Raúl Mateo