Modding Elder Scrolls IV: Oblivion
The Elder Scrolls IV: Oblivion is a open world action RPG(Role Playing Game) developed by Bethesda Game Studios released in 2006 for Microsoft Windows, Xbox 360 followed by PS3 port in 2007. When developing ES III: Morrowind developers created The Elder Scrolls Construction Set which allowed the game staff to develop the game with minimum overhead. Later it was released for public to make mods by creating plugins which can modify the game. The CS(Construction Set) was later succeeded by Creation Kit for Skyrim which is based on their Creation Engine. However Creation Kit is based on CS so both of them have similarities.
Tools Needed
- Windows PC or Mac( Running Windows 10 or later via bootcamp or parallels)
- Legal copy of Elder Scrolls IV: Oblivion for PC
- ES Construction Kit
Understanding CS FileSystem
The CS(Construction Set) uses two types for files the .esm file which stands for elder scrolls masterfile and .esp file which stands for elder scrolls plugin files. This file system is common for both CS and CreationKit(Skyrim modding tool).
The masterfile contains all the original game data which includes game assets like 3D Models, Textures, Animations, Scripts etc which modders can use in their mods.
The plugin file is the actual mod creating by the modder which can uses the original game assets from the master file.
CS Layout
When you open CS for first time it will display a default layout with three windows.
- Object Window: This window has a tree like structure which holds all the game assets loaded from the master file
- Cell View: The cell view holds the cells. The cells are the building blocks of a level in oblivion.A cell can be anything it can be a small village with NPC houses, interior of a house or castle, a castle wall, a dungeon etc.
- Render Window: The render window is the actual workspace where you can create a level(cell) by dragging and dropping the game assets from the object window.
Basic CS Editor Controls
Camera
Center Wheel Scroll — Zoom
Center Wheel Hold — Move
Shift + Mouse — Rotate
C — Center On selected
T — Top View selected
Arrow Keys — Move the camera view Left, Right, Up and Down.
Object
D — De-select
LMB — move: x, y
Z + LMB move: z only
X + LMB move: x only
Y + LMB move: y only
F — Fall or Snap
CTRL x — cut
CTRL c — copy
CTRL v — paste
CTRL d — copy and paste in present position (duplicate)
LMB (with nothing selected) select multi-objects
S — “Scale”: drag mouse to edit size
RMB — rotate about z
RMB + y rotate about y
RMB + x rotate about x
Misc
A — Toggle Bright Light
M — Toggle Markers On/Off
B — In Exterior Toggles Cell Grid Borders On/Off
H — Opens the landscape editor
L — Toggle the Light Object Radius On/Off
Creating our own Cell for player house
Now we are going to create our first mod a rest house for player.
- First since we are going to create an interior for player house so select world space to interior in CellView window
- Next click World -> Cell option in the tab bar
- A dialog box will appear which lists all the cells available for interiors world space.
- Here we are going to create our custom cell so select any row on the table right click -> New
- A New Form Editior ID dialog box will appear. Give a name to your cell and click OK our custom cell will be added to the list.
- Now we need to edit some properties for our custom cell. Select the Interior Data tab and set the Owner NPC to Player as this house is for player.
- Go to lighting tab and set the ambient color to Grey and press Apply to save your changes.
- Now in CellView window find our custom cell and double click it to open it in RenderWindow. As you can see it has nothing just a void with Grey color. Here we will create interior for our player house.
- First we need an empty house interior Cyrodiil has several houses we are going to use FarmHouse interior. In ObjectWindow Click on WorldObject then Static and search for FarmHouseInterior01 drag and drop it on the render window.
- Now switch to the topdown view and press A to toggle the working light.
- Next we need a XMarker which represents the coordinate or location in which the player will be spawned when the player teleports to the player house. Drag a XMarker from Static in World Object to the house interior snap it to the interior by pressing F key.
- Move to the topview of the house so that you can see the XMarker inside the farmhouse.
- Next we are going to add a FireWoodGrate for the house chimeny. Go to WorldObjects select Static-> FirewoodGrate and drag it in the scene. Move it under the chimeny
- Next we need to add fire go to WorldObject -> Light -> FireOpenSmall256 drag and place it on top of the FirewoodGrate.
- Now we need to add a chair near the Fireplace so that player can sit on the chair. Go to WorldObjects -> Furniture -> MiddleClass -> MCChair01L drag and drop it in the scene.
In the chair model the placeholder for the character represents the character animation hence leave some space for the character to perform the sitting animation when placing the chair.
You can see all the objects placed in our cell in Cell Window.
All set now save the plugin file in the default location pointed by the Construction Set and run The Elder Scrolls IV: Oblivion PC exe file.When the game launcher shows select data files option and make sure the plugin which we have created now is marked and click OK.
When the game loads press the ~ key on the keyboard to open debug command console. Enter the command
COC playerRestHouse
COC stands for Centre On Cell this command will teleport the player to the specified cell name and spawn the player in XMarker location placed on the cell.
As you can see the player is teleported to the house which we have created the player can interact with the chair in the house.