leilukin-site/_site/shrines/starwarskotor/articles/juhani-lesbian-evidence/index.html

486 lines
18 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en" dir="ltr" id="page-top">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta property="og:title" content="Evidence of Juhani being a Lesbian from Star Wars: Knights of the Old Republic&#39;s Game Files | Articles | Star Wars: Knights of the Old Republic Shrine">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Juhani is a canon lesbian character and she has always been intended as such by the developers of Knights of the Old Republic. Here I am presenting evidence from the game files to prove it.">
<meta name="generator" content="Eleventy v2.0.1">
<meta property="og:type" content="website">
<meta property="og:url" content="https://leilukin.neocities.org/shrines/starwarskotor/articles/juhani-lesbian-evidence/">
<meta property="og:site_name" content="Leilukin's Hub">
<meta property="og:locale" content="en_MY">
<meta property="og:description" content="Juhani is a canon lesbian character and she has always been intended as such by the developers of Knights of the Old Republic. Here I am presenting evidence from the game files to prove it.">
<meta name="twitter:card" content="summary">
<meta name="twitter:url" content="https://leilukin.neocities.org/shrines/starwarskotor/articles/juhani-lesbian-evidence/">
<meta name="twitter:description" content="Juhani is a canon lesbian character and she has always been intended as such by the developers of Knights of the Old Republic. Here I am presenting evidence from the game files to prove it.">
<link rel="canonical" href="https://leilukin.neocities.org/shrines/starwarskotor/articles/juhani-lesbian-evidence/">
<link rel="stylesheet" href="/assets/css/main.css">
<link rel="stylesheet" href="/assets/css/starwarskotor.css">
<link rel="stylesheet" href="/assets/fonts/noto-sans/noto-sans.css">
<link href="/assets/fonts/fontawesome/css/fontawesome.css" rel="stylesheet" />
<link href="/assets/fonts/fontawesome/css/brands.css" rel="stylesheet" />
<link href="/assets/fonts/fontawesome/css/solid.css" rel="stylesheet" />
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
<title>
Evidence of Juhani being a Lesbian from Star Wars: Knights of the Old Republic&#39;s Game Files | Articles | Star Wars: Knights of the Old Republic Shrine | Leilukin's Hub
</title>
</head>
<body>
<header class="hero">
<div class="hero__top-bar hidden"></div>
<div class="hero__img">
<picture>
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>
</header>
<style>
.hero {
width: 100%;
background-color: var(--clr-hero-bg);
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
}
.hero__top-bar {
background-color: var(--clr-navbar-bg);
width: 100%;
padding: 0.5em 0.7em;
}
.hero__img {
display: grid;
place-content: center;
}
.hero img {
object-fit: contain;
overflow: hidden;
max-height: 16rem;
}
</style>
<script defer>
const hero = document.querySelector(".hero");
const heroTopBarEl = document.querySelector(".hero__top-bar");
const headerImgEl = document.querySelector(".hero__img");
const todayEvent = getTodayEvent();
if (todayEvent) {
heroTopBarEl.classList.remove('hidden');
heroTopBarEl.innerHTML = todayEvent;
}
function getTodayEvent() {
const date = new Date();
const month = date.getMonth() + 1;
const day = date.getDate();
const year = date.getFullYear();
const kotor1ReleaseDate = new Date("2003-07-15").getFullYear();
const kotor2ReleaseDate = new Date("2004-12-06").getFullYear();
const kotor1Anniversary = year - kotor1ReleaseDate;
const kotor2Anniversary = year - kotor2ReleaseDate;
if (month === 7 && day === 15)
return `
Today is the ${kotor1Anniversary}-year anniversary of the release of <cite>Star Wars: Knihgts of the Old Republic</cite>
`;
else if (month === 12 && day === 6)
return `
Today is the ${kotor2Anniversary}-year anniversary of the release of <cite>Star Wars: Knights of the Old Republic II — The Sith Lords</cite>
`;
else
return null;
}
</script>
<nav class="navbar">
<button class="navbar__toggle" aria-label="Navigation menu toggle">
<i class="fa-solid fa-bars"></i>
<h2 class="navbar__title">Navigation</h2>
</button>
<ul class="navbar__links">
<li>
<a href="/shrines/starwarskotor/">Shrine Home</a>
</li>
<li>
<a href="/shrines/starwarskotor/articles/">Articles</a>
</li>
<li>
<a href="/shrines/starwarskotor/guides/">Guides</a>
</li>
<li>
<a href="/shrines/starwarskotor/resources/">Resources</a>
</li>
<li>
<a href="/shrines/starwarskotor/universes/">Universes</a>
</li>
<li><a href="/shrines/">Shrine Index</a></li>
<li><a href="/">Main Site</a></li>
</ul>
</nav>
<style>
.navbar {
background: var(--clr-navbar-bg);
padding: 0.6em 1em;
width: 100%;
z-index: 999;
position: sticky;
top: 0;
}
.navbar__toggle,
.navbar__title {
color: var(--clr-navbar-link);
font-size: 1.3rem;
}
.navbar__toggle {
display: flex;
align-items: center;
gap: 0.5em;
border: none;
padding: 0;
margin: 0;
background-color: inherit;
}
.navbar__toggle:focus,
.navbar a:focus {
outline: 0.15em solid var(--clr-navbar-link);
}
.navbar a {
color: var(--clr-navbar-link);
text-decoration: none;
cursor: pointer;
}
.navbar a:hover {
color: var(--clr-link-hover);
}
.navbar a:focus {
outline-offset: 0.3em;
}
.navbar__links {
list-style: none;
display: none;
gap: 1em;
padding: 0.5em 1.8em;
overflow: auto;
}
.navbar__links--show {
display: grid;
}
/* Tablet screen size */
@media only screen and (min-width: 43.75rem) {
.navbar {
padding: 0 0.6em;
}
.navbar__toggle {
display: none;
}
.navbar__links {
display: flex;
justify-content: space-evenly;
gap: 0.5em;
flex-wrap: wrap;
padding: 0;
overflow: unset;
}
}
</style>
<script defer>
const navbarToggle = document.querySelector('.navbar__toggle');
const navbarLinks = document.querySelector(".navbar__links");
navbarToggle.addEventListener('click', () => {
navbarLinks.classList.toggle("navbar__links--show");
});
</script>
<main>
<header class="main__header">
<ul class="breadcrumbs">
<li>
<a href="/shrines/">Shrines</a>
</li>
<li>
<a href="/shrines/starwarskotor/">Star Wars: Knights of the Old Republic Shrine</a>
</li>
<li>
<a href="/shrines/starwarskotor/articles/">Articles</a>
</li>
</ul>
<h1>Evidence of Juhani being a Lesbian from Star Wars: Knights of the Old Republic&#39;s Game Files</h1>
<div class="article__info">
<p>Posted on 15 July 2017 by Leilukin
• Last updated on 10 May 2024</p>
<p>Categories:
<a href="/categories/star-wars-kotor">star wars kotor</a>
</p>
<p>🍿 3 min. read</p>
</div>
</header>
<div class="content__wrapper">
<article class="article">
<p>(Note: This article was originally published on Tumblr)</p>
<p>The fact that Juhani from Star Wars: Knights of the Old Republic is a canon lesbian character is a fairly common knowledge among LGBTQ+ fans of Star Wars. However, occasionally I still see people who do not know that the first KotOR game has the very first confirmed gay character in any Star Wars media, including the old Star Wars Expanded Universe; there are some other people who actually believe that Juhani is bisexual.</p>
<p>Therefore, as a lesbian and someone who has <a href="/projects/#my-video-game-mods">made mods</a> for the Knights of the Old Republic games and written a <a href="/shrines/starwarskotor/guides/kotor-juhani-romance-guide">detailed Juhani romance guide</a>, I would like to present hard evidence from the game files to point out that <strong>Juhani is in fact a lesbian, a woman who is exclusively attracted to women</strong>.</p>
<p>The most crucial evidence comes from <code>k_hjuh_dialog.dlg</code>, Juhanis main dialogue file which contains all the conversations covered in my Juhani Romance Guide. If you use the <a href="https://deadlystream.com/files/file/280-kotor-tool/">KotOR Tool</a> to browse the game files, <code>k_hjuh_dialog.dlg</code> is under KotOR I &gt; BIFs &gt; templates.bif &gt; Dialog. I recommend using <a href="https://deadlystream.com/files/file/750-dlg-editor/">DLGEditor</a> to view the .dlg files from KotOR games.</p>
<p>Here is a screenshot of my DLGEditor with the most relevant part of the <code>k_hjuh_dialog.dlg</code> file:</p>
<figure>
<img src="/assets/shrines/starwarskotor/articles/juhani-lesbian-in-game-evidence.png" alt="Screenshot of DLG Editor 2.3.2 displaying Juhani's main dialogue file">
<figcaption>
(<a href="/assets/shrines/starwarskotor/articles/juhani-lesbian-in-game-evidence.png">View the screenshot in its original size</a>)
</figcaption>
</figure>
<p>The highlighted dialogue shown in the screenshot (”I feel I must apologize for the way I acted towards you before, in the grove. It was wrong of me.”) is the beginning of your first personal conversation with Juhani after Juhani joins your party. Here is a video of the conversation in question:</p>
<div id="jzqfXoOvGrw" class="eleventy-plugin-youtube-embed" style="position:relative;width:100%;padding-top: 56.25%;"><iframe style="position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;" width="100%" height="100%" frameborder="0" title="Embedded YouTube video" src="https://www.youtube-nocookie.com/embed/jzqfXoOvGrw" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div>
<p>As shown in the screenshot above, once you begin this conversation, the script <code>k_hjuh_p17</code> will fire, and this is the source of the script in question:</p>
<pre><code>void main()
{
int iGender = GetGender(GetPCSpeaker());
if (iGender == GENDER_FEMALE)
{
SetGlobalBoolean(&quot;T_JUHANIROM&quot;, TRUE);
}
}
</code></pre>
<p>(In KotOR Tool, you can see the source script <code>k_hjuh_p17.nss</code> under KotOR I &gt; BIFs &gt; scripts.bif &gt; Script, Source)</p>
<p>As you may have guessed from the above script, <code>k_hjuh_p17</code> sets the Global Boolean <code>T_JUHANIROM</code> to TRUE if, and ONLY IF, the player character is female. The <code>T_JUHANIROM</code> global is used by the game to check if Juhanis romance is active or not. In other words, <strong>the game activates Juhanis romance ONLY IF your player character is female</strong>, as soon as you start Juhanis personal conversation after she joins your party. <strong>If your player character is male, Juhanis romance will NOT be activated</strong>.</p>
<p>Here is the hard evidence from KotOR's game files that Juhani is a lesbian, a woman who is exclusively attracted to women. Juhani is NOT straight. Juhani is NOT bisexual.</p>
<p>The game used to have a bug that allowed male player characters to access Juhanis romance, which is probably why some thought that Juhani is bisexual. However, the bug had been fixed in later patches. By fixing the bug, <strong>the game has made sure that ONLY a female player character can romance Juhani</strong>.</p>
<p>Even though the word “lesbian” or “gay” is never used in any of the KotOR games, it does not change the fact that Juhani is a woman character who can only be romanced by a woman player character, which means Juhani is gay, a lesbian.</p>
<p>In conclusion, <strong>Juhani is a canon lesbian character and has always been intended to be such</strong>.</p>
<p>I would also like to emphasise that <strong>I DO NOT support any mods that make Juhani a romance option for male characters under any circumstances</strong>, because such mods would be erasing the identity of the very first confirmed lesbian character in any Star Wars media. Not to mention, Juhani is the ONLY confirmed LGBTQ+ character in the entire KotOR series (Belaya from KotOR 1 and Luxa from KotOR 2 are heavily implied to be gay or bisexual, but their sexuality is never confirmed). Please respect LGBTQ+ representation and the identities of canon LGBTQ+ characters. You can read more about my stance on this matter in my other article: <a href="../keep-juhani-a-lesbian/">Keep Juhani a Lesbian and Keep Juhani's Romance Exclusive to Female Characters</a>.</p>
</article>
<aside class="right-sidebar">
<div class="shrine__info sidebar--sticky">
<h2>About</h2>
<p>Welcome to Leilukin's shrine for <cite>Star Wars: Knights of the Old Republic</cite>, a series of role-playing video games set in the <cite>Star Wars</cite> universe, taking place almost 4,000 years before the events of the Skywalker film saga.</p>
<h3>Links</h3>
<ul>
<li><a href="https://kotor.neocities.org/">KOTOR Community Portal</a></li>
</ul>
</div>
</aside>
<style>
.right-sidebar {
background-color: var(--clr-content-bg);
font-size: clamp(0.9rem, 0.9rem + 3vw, 1rem);
}
.shrine__info {
padding: 1rem;
}
.shrine__info h2 {
font-size: clamp(1.5rem, 1rem + 3vw, 1.7rem);
margin-bottom: 0.2em;
}
.shrine__info h3 {
font-size: clamp(1.3rem, 1rem + 3vw, 1.5rem);
margin-top: 1em;
}
.shrine__info ul {
margin-top: 0.5em;
}
</style>
</div>
<style>
.breadcrumbs {
list-style: none;
padding: 0;
margin: 0 0 0.7em 0;
display: flex;
gap: 0.5em;
flex-wrap: wrap;
justify-content: center;
}
.breadcrumbs li::after {
content: '➔';
padding-left: 0.3em;
}
</style>
</main>
<footer class="footer">
<p>Made with ♥ and the Force by Leilukin | Shrine Launched: 17 February 2023</p>
<p>Back to: <a href="/shrines/">Shrine Index</a> | <a href="/">Leilukin&#39;s Hub</a></p>
</footer>
<style>
.footer {
margin-top: auto;
width: 100%;
background: var(--clr-main-footer-bg);
padding: 1rem 1rem 3rem 1rem;
text-align: center;
display: grid;
}
.footer p {
padding: 0;
}
.footer__links {
justify-self: center;
list-style: none;
margin: 0;
padding: 0;
display: flex;
gap: 0.7em;
}
.footer__links li:not(:last-child)::after {
content: '|';
padding-left: 0.6em;
}
/* Screen sizes larger than mobile */
@media only screen and (min-width: 30rem) {
.footer {
padding: 1rem 1rem 2rem 1rem;
}
}
/* Tablet screen size */
@media only screen and (min-width: 43.75rem) {
.footer {
padding: 1rem;
}
}
</style>
<button class="top-btn hidden" aria-label="Scroll to top">
<i class="fa-solid fa-chevron-up"></i>
</button>
<style>
.top-btn {
position: fixed;
margin: 0;
padding: 0;
bottom: 0.5rem;
right: 0.5rem;
z-index: 999;
border: none;
background-color: var(--clr-top-btn-bg);
color: var(--clr-top-btn-txt);
border-radius: 50em;
width: 2rem;
aspect-ratio: 1 / 1;
}
.top-btn:focus {
outline: 0.25em solid var(--clr-top-btn-bg);
outline-offset: 0.15em;
}
</style>
<script defer>
const topButton = document.querySelector(".top-btn");
window.onscroll = () => {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
topButton.classList.remove("hidden");
} else {
topButton.classList.add("hidden");
}
}
topButton.addEventListener('click', () => {
window.scrollTo({
top: 0,
left: 0,
behavior: "smooth",
});
});
</script>
</body>
</html>