Filesystem: Difference between revisions

From Jedi Knight Wiki | JKHub
Line 26: Line 26:
==== effects ====
==== effects ====
Contains effects ([[.efx]]) files. This is JK2's particle system.
Contains effects ([[.efx]]) files. This is JK2's particle system.
There are subdirectories for each weapon, containing the effects for that weapon.


==== ext_data ====
==== ext_data ====
Contains various kinds of important game definitions.
Contains various kinds of important game definitions.
[[npcs.cfg]] contains all NPC definitions (Jedi Outcast)


[[dms.dat]] music definitions
[[dms.dat]] music definitions
Line 36: Line 40:
[[weapons.dat]] weapons definitions
[[weapons.dat]] weapons definitions


* npcs subdirectory: contains [[.npc]] files
* npcs subdirectory: contains [[.npc]] files (Jedi Academy)
* sabers subdirectory: contains [[.sab]] lightsaber definitions
* sabers subdirectory: contains [[.sab]] lightsaber definitions
* Siege subdirectory
* Siege subdirectory
Line 88: Line 92:
* chr_e subdirectory: character dialogue in Spanish
* chr_e subdirectory: character dialogue in Spanish
* chr_f subdirectory: character dialogue in French
* chr_f subdirectory: character dialogue in French
* weapons subdirectory: weapon sound effects


==== strings ====
==== strings ====
In Jedi Outcast, this directory is called "strip"
[[.str]] files containing subtitles.
[[.str]] files containing subtitles.



Revision as of 14:32, 3 November 2021

Games using the Quake 3 Engine, such as Jedi Outcast and Jedi Academy, use a virtual filesystem.

It works similarly to mounting in Linux: When a certain file is requested, for example "models/players/kyle/model.glm", its actual location can be in any of the mounted directories/pk3 archives; it does not matter which one. This makes the game extendible: New files can simply be put into an additional .pk3 archive that will get mounted at startup.

So what archives and directories are mounted?

  • Any PK3 file inside GameData/base; PK3 files are just renamed .zip files, and only zip compression is supported! One freeware tool for reading and creating zip archives is 7-Zip.
  • Any PK3 file inside GameData/currentmod, if you're inside a mod
  • In Single Player, and in MP if the CVar "sv_pure" is set to 0: any loose files and folders in GameData/base and GameData/currentmod

So, to get back to our example of "models/players/kyle/model.glm": In unmodified Jedi Academy Single Player this would search for:

  • "GameData/base/models/players/kyle/model.glm"
  • for "models/players/kyle/model.glm" inside "GameData/base/assets0.pk3", "GameData/base/assets1.pk3", "GameData/base/assets2.pk3" and "GameData/base/assets3.pk3"

Directory structure

This is the directory structure of JK2 and JA, found inside the PK3 files.

botfiles

botroutes

eagle

Contains files associated with the Creative Labs enhanced audio system.

effects

Contains effects (.efx) files. This is JK2's particle system.

There are subdirectories for each weapon, containing the effects for that weapon.

ext_data

Contains various kinds of important game definitions.

npcs.cfg contains all NPC definitions (Jedi Outcast)

dms.dat music definitions

items.dat items definitions

weapons.dat weapons definitions

  • npcs subdirectory: contains .npc files (Jedi Academy)
  • sabers subdirectory: contains .sab lightsaber definitions
  • Siege subdirectory
  • vehicles subdirectory: contains .veh vehicle definitions

fonts

gfx

Various graphics files, used in the menu system and in-game.

levelshots

JPEG images shown during level loading.

maps

Map files. (See .bsp)

menu

models

Contains .md3 models and character .glm models.

  • chunks subdirectory
  • flags subdirectory: CTF flags
  • items subdirectory: ammo, med packs, and other items
  • map_objects subdirectory
  • players subdirectory: all playable and NPC character models
  • weaphits subdirectory
  • weapons2 subdirectory: all weapons

music

Music files. (.mp3 format)

scripts

Icarus script files. They are grouped in subdirectories for each map.

shaders

.shader files

textures

Texture files These are in .jpg, .png and .tga graphics formats.

sound

Sound effects, in .wav and .mp3 format.

sound.txt contains all soundset definitions.

  • chars subdirectory: character sound effects (including English dialogue)
  • chr_d subdirectory: character dialogue in German
  • chr_e subdirectory: character dialogue in Spanish
  • chr_f subdirectory: character dialogue in French
  • weapons subdirectory: weapon sound effects

strings

In Jedi Outcast, this directory is called "strip"

.str files containing subtitles.

objectives.str contains mission objectives.

ui

Menu system

video

Contains .roq cutscenes.