Skip to content

A remake of the Odyssey Game Engine that powered KotOR I & II written in JavaScript

License

Notifications You must be signed in to change notification settings

ilkashpilkerman/KotOR.js

 
 

Repository files navigation

KotOR.js

TypeScript JavaScript THREE JS Electron Node JS NPM Webpack

KotOR.js

A remake of the Odyssey Game Engine that powered KotOR I & II written in JS (TypeScript)

KotOR.js is a TypeScript-based reimplementation of the Odyssey Game Engine that powered the original Star Wars: Knights of the Old Republic (KotOR) and its sequel, KotOR II: The Sith Lords (TSL). The project aims to support the complete feature set of the original engine. While still in the early stages of development, many systems are already online in some form or fashion.

In addition to the game engine, the project includes an early attempt at a modding suite called KotOR Forge.

Technologies

  • The code has been re-written in TypeScript and compiles down into JavaScript.
  • THREE.js is used for the base of the rendering engine.
  • Electron is used to package and publish a desktop application.

Discussion Thread
KotOR.js Youtube Channel

OpenKotOR Discord

Supported Games

The following games are currently supported:

Requirements

You will need a valid copy of either KotOR I or KotOR II installed on your system if you want to use KotOR.js to interface with the files of either game. No game files are distributed with this project.

Web Compatibility (NEW)

The recent transition to TypeScript has brought many improvements to the codebase, including Chrome support. When the project is compiled, the contents of the dist folder can be uploaded to a web server. The only requirement is that the site must be accessed from behind a valid SSL certificate. Using the latest version of Chrome is recommended.

Demo Icon

Getting Started (Developer)

To get started as a developer, follow these steps:

  1. Download and install npm (Node Package Manager).
  2. Clone the KotOR.js repository.
  3. Install the npm dependencies.
npm install
  1. Run the build command
npm run webpack:dev-watch
  1. Run the start command in a separate console/shell window
npm run start
  1. Enjoy

Screenshots

KotOR.js Launcher KotOR - Taris: Undercity KotOR - Dantooine
KotOR.js Launcher KotOR - Taris: Undercity KotOR - Dantooine
KotOR II - TSL: Awaken Scene KotOR II - TSL: Awaken Scene 2
KotOR II - TSL: Awaken Scene KotOR II - TSL: Awaken Scene 2

Videos

KotOR.js (2023) - In Browser Demo KotOR JS - Combat Animations Progress Jan 2021 KotOR Forge - WIP: Lip Sync Editor Jan 2019
KotOR.js (2023) - In Browser Demo KotOR JS - Combat Animations Progress Jan 2021 KotOR Forge - WIP: Lip Sync Editor Jan 2019
KotOR JS - Lighting & Lipsync Progress Nov 2018 KotOR JS : TSL - Gameplay Compilation Sep 2018 KotOR JS: The Endar Spire Sep 2018
KotOR JS - Lighting & Lipsync Progress Nov 2018 KotOR JS : TSL - Gameplay Compilation Sep 2018 KotOR JS: The Endar Spire

Influences & Credits

Without these people below I couldn't have gotten this far.
xoreos
The KotOR Modding Community

And many many more!

License

GPL 3.0 (GNU General Public License)

About

A remake of the Odyssey Game Engine that powered KotOR I & II written in JavaScript

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 98.0%
  • SCSS 1.7%
  • Other 0.3%