NordLauncher
En cross-platform launcher utvecklad med Tauri, där HTML och JavaScript användes för frontend och Rust för backend. Syftet med launchern är att förenkla installation, uppdatering och start av spelet NordRevived. Launchern automatiserar tidigare manuella steg och ser till att spelaren alltid använder rätt version.
Varför jag byggde den.
Bakgrund
NordRevived är ett projekt där ett gammalt nedlagt onlinespel har återupplivats genom reverse-engineering. När jag gick med fanns det ett stort behov av att förenkla installation, uppstart och uppdatering av spelet. Den befintliga processen var för komplicerad och tekniskt krävande för målgruppen, vilket ledde till frustration bland spelarna.
För att installera spelet var spelarna tvungna att manuellt ladda ner och extrahera spelets filer, navigera till rätt skriptfil för deras operativsystem och starta spelet genom konsolkommandon. Även uppdateringen av spelet skedde manuellt och innebar att när en ny uppdateringen släpptes var de tvugna att repetera installationsproccessen. Eftersom det dessutom var svårt för spelarna att veta när en uppdatering hade släppts var det ofta spelare som rapporterade in redan åtgärdade buggar.
Mitt mål
Målet med NordLauncher var att skapa en mer användarvänlig och effektiv lösning där användarna inte behövde hantera dessa tekniska processer själva. Jag ville att de enbart skulle behöva ladda ner launchern en gång och därefter enkelt kunna installera, starta och uppdatera spelet med några få klick. Målet var även att launchern själv skulle identifiera användarens operativsystem och därefter välja rätt startmetod.
Bilder från projektet.
Huvudvy: Här kan användaren välja server, se de senaste uppdateringarna samt
installera och starta spelet.
Installation av spelet: Användaren kan välja installationsplats, varefter launchern
automatiskt
hanterar nedladdning och installation.
Vad jag
tar med mig.
Vad jag lärde mig
Projektet har gett mig mycket praktisk erfarenhet, särskilt inom utveckling av användarvänliga gränssnitt och att ta något befintligt och sedan förbättra det. Jag har även fått erfarenhet av att utveckla och testa programvara för flera operativsystem vilket är något jag aldrig gjort tidigare.
För att kunna testa och optimera launchern skaffade jag enheter med olika operativsystem såsom Linux och macOS. Det var en ny och lärorik upplevelse att se de skillnaderna och utmaningarna som uppstår vid plattformsöverskridande utveckling och hur dessa behöver hanteras för en konsekvent användarupplevelse.
Vad jag skulle göra annorlunda
Om jag började om projektet idag skulle jag ha släppt en betaversion till testgruppen betydligt tidigare. Istället för att först utveckla en Minimum Viable Product (MVP) och sedan iterera på lösningen utifrån användarnas feedback försökte jag skapa en så komplett lösning som möjligt redan från början. Det resulterade i att flera delar senare behövde omarbetas när användarnas faktiska behov och beteenden blev tydligare. Idag hade jag istället arbetat mer iterativt, med tidigare användartester och kortare feedbackcykler, för att låta användarnas erfarenheter påverka utvecklingen redan från ett tidigt skede.