How to get Vigilante Sojourn skin in Overwatch 2?

Publish date: 2024-06-16

Overwatch 2 is currently live with the Season 6: Invasion update and released a fresh skin for Sojourn called Vigilante. The developers have always brought various cosmetics for all the heroes in the roster with compelling designs. While most of the skins appear in the form of bundles and can be purchased, some can be claimed by completing a few conditions.

This article will highlight the conditions required to unlock the Vigilante Sojourn skin in Overwatch 2.

Overwatch 2 Vigilante Sojourn skin cost and requirements explained

Overwatch 2 Season 6: Invasion Sojourn's Vigilante skin (Image via Twitter/@OWCavalry)

Blizzard’s Overwatch 2 has a knack for showcasing some of the most alluring cosmetics, like the most recent Vigilante skin for Sojourn. It is comparatively simpler than others but brings justice to its title.

The face of the hero is shielded with a helmet with black tinted visors, and the character is covered with a type of combat suit. It has pieces of armor attached to make it look bulkier and ready for any fights.

Here is how you can get your hands on the Vigilante Sojourn skin.

Sojourn in Overwatch 2 (Image via Blizzard Entertainment)

It is important to note that players cannot access the Invasion missions directly from the game. It is locked behind a paywall where you can choose to purchase either the $15 or the $40 Invasion bundle to unlock the new co-op missions. The $15 bundle also provides the player account with a total of 1000 Overwatch coins that can be used to buy items like the seasonal Battle Pass.

The $40 bundle provides a total of 2000 Overwatch coins, 20 battle pass tier skips, access to the Season 6 Battle Pass, the C-455 Sharpshooter Cassidy skin, and the K-2000 Blademaster Kiriko skin.

This is a great deal for most players as it provides an alternate route to acquire the Battle Pass alongside the missions without making extra transactions. Moreover, the missions are supposedly going to provide players with new cutscenes, movies, lore entries, and more about different heroes.

These elements could likely contain details and easter eggs about the upcoming content in the shooter title. The official blog cites that it could help players obtain “clues about the future of the world of Overwatch.” Be sure to follow Sportskeeda for more recent updates.

More from Sportskeeda

" modalPopup.closeOnEsc = false; modalPopup.setHeader("Why did you not like this content?"); modalPopup.setContentText(modalText); modalPopup.addCancelOkButton("Submit", resetRatingAndFeedbackForm, sendRating); modalPopup.removeCloseModalIcon(); modalPopup.disableDismissPopup(); modalPopup.open(); } else { sendRating(index); } } function sendRating() { var requestPayload = { "post_id": 1624559, "rating_value": ratingValue } if (ratingValue > 3) { requestPayload.rating_feedback_type = null; requestPayload.rating_feedback = null; } else { if (!$('input[name="drone"]:checked') || !$('input[name="drone"]:checked').value) { showErrorMessage('option'); return; } if (!$(".post-rating-feedback-note textarea") || !$(".post-rating-feedback-note textarea").value) { showErrorMessage('note'); return; } var selectedOption = $('input[name="drone"]:checked').value; var feedbackNote = $(".post-rating-feedback-note textarea").value; requestPayload.rating_feedback_type = selectedOption; requestPayload.rating_feedback = feedbackNote; } pureJSAjaxPost(addratingAPI, requestPayload, onsaveRatingSuccess, onsaveRatingFail, function() {}, true); } function resetRatingAndFeedbackForm() { var activeStars = Array.from($all('.rating span.rating-star.active')); for (var i=0; i < activeStars.length; i++) { activeStars[i].classList.remove("active"); } if ($('input[name="drone"]:checked')) { $('input[name="drone"]:checked').checked = false; } var userNote = document.querySelector(".post-rating-feedback-note textarea"); userNote.value = ''; modalPopup.close(); } function onsaveRatingSuccess() { modalPopup.close(); savePostIdInUserRatedPostsCookie(); $("#post-rating-layout").classList.add("hidden"); $("#post-rating-message").classList.remove("hidden"); window.setInterval(function showMessage() { $("#post-rating-widget").classList.add("hidden"); }, 3000); } function onsaveRatingFail() { console.error('Saving post rating failed!'); modalPopup.close(); } function savePostIdInUserRatedPostsCookie() { userRatedPostIds.push(1624559); var expiryTime = new Date(); expiryTime.setMonth(expiryTime.getMonth() + 12); // Expiry after 1 year setCookie("user_rated_post_ids", JSON.stringify(userRatedPostIds), expiryTime); } function isPostRatedByUser() { var userRatedPostIds = getCookie('user_rated_post_ids'); if (userRatedPostIds) { try { userRatedPostIds = JSON.parse(userRatedPostIds); } catch (err) { console.error(err); return false; } } else { return false; } if(userRatedPostIds.indexOf(1624559) >= 0) { return true; } else { return false; } } function getRatingCountByPostId(postId) { return new Promise(function(resolve, reject) { pureJSAjaxGet( getRatingCountBaseURL + postId + '/rating/count', function(data) { try { data = JSON.parse(data); if (data.meta_value) { resolve(data.meta_value); } reject("Failed to fetch rating count for the post:" + postId); } catch (err) { reject("Failed to fetch rating count for the post:" + postId); } }, function(err) { reject("Failed to fetch rating count for the post:" + postId); }, true); }); } function showErrorMessage(messageType) { var messageContainerId = '#' + messageType + '-error'; $(messageContainerId).classList.remove('hidden'); window.setInterval(function () { $(messageContainerId).classList.add("hidden"); }, 5000); } (function() { var callFired = false; function lazyLoadPostRating() { if (callFired) return; callFired = true; if (!isPostRatedByUser()) { getRatingCountByPostId(1624559) .then(function(ratingCount) { if (ratingCount < 10) { $("#post-rating-widget").classList.remove("hidden"); } }) .catch(function(err){ console.error(err); }); } } document.addEventListener("scroll", lazyLoadPostRating, { passive: true, once: true }); document.addEventListener("mousemove", lazyLoadPostRating, { passive: true, once: true }); document.addEventListener("touchmove", lazyLoadPostRating, { passive: true, once: true }); })();

ncG1vNJzZmivp6x7tLzOq6uso5WasaJ6wqikaJ2jpbyzwNJon6ivXZyytXnVop6ipJGjwaZ50qihqK2io3q0t8inZKiulafEosDCoWRr