Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,41 @@ Loading single player maps in multiplayer is a best effort approach. Lots of thi

NOTE: Xenia requires the [patch](<resources/xenia/patches/415607E6 - Call of Duty 4 Modern Warfare MP (TU4).patch.toml>) to increase memory installed.

## Call of Duty: Modern Warfare 2

Loading single player maps in multiplayer is a best effort approach. Lots of things are broken such as missing FX, player models, crashes etc.

🟢 - Loads without issues
🟡 - Texture limit was reached but the out of memory error was patched to not fail. Expect broken and undefined behaviour.
🔴 - Does not load

| Name | Xbox 360 | Xenia | Notes |
| ---------------- | :------: | :---: | ------------------------------------------- |
| af_caves.ff | 🟢 | 🟢 |
| af_chase.ff | 🟢 | 🟢 |
| airport.ff | 🟡 | 🟢 |
| arcadia.ff | 🔴 | 🔴 | `Exceeded limit of 1536 'xmodel' assets.` |
| boneyard.ff | 🟡 | 🟢 |
| cliffhanger.ff | 🟡 | 🟢 |
| co_hunted.ff | 🟢 | 🟢 |
| contingency.ff | 🟡 | 🟢 |
| dc_whitehouse.ff | 🟢 | 🟢 |
| dcburning.ff | 🟡 | 🟡 |
| dcemp.ff | 🟡 | 🟢 |
| ending.ff | 🔴 | 🔴 | `Exceeded limit of 3584 'image' assets.` |
| estate.ff | 🟢 | 🟢 |
| favela.ff | 🔴 | 🔴 | `Exceeded limit of 4096 'material' assets.` |
| favela_escape.ff | 🔴 | 🔴 | `Exceeded limit of 4096 'material' assets.` |
| gulag.ff | 🟡 | 🟡 |
| invasion.ff | 🔴 | 🔴 | `Exceeded limit of 3584 'image' assets.` |
| oilrig.ff | 🟡 | 🟢 |
| roadkill.ff | 🔴 | 🔴 | `Exceeded limit of 4096 'material' assets.` |
| so_bridge.ff | 🟡 | 🟢 |
| so_ghillies.ff | 🟢 | 🟢 |
| trainer.ff | 🟢 | 🟢 |

NOTE: Xenia requires the [patch](<resources\xenia\patches\41560817 - Call of Duty - Modern Warfare 2 MP (TU6).patch.toml>) to increase memory installed.

## Features

### GSC Loader
Expand Down
1 change: 1 addition & 0 deletions codxe.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@
<ClCompile Include="src\game\iw4\mp\components\events.cpp" />
<ClCompile Include="src\game\iw4\mp\components\g_client_fields.cpp" />
<ClCompile Include="src\game\iw4\mp\components\g_scr_main.cpp" />
<ClCompile Include="src\game\iw4\mp\components\mpsp.cpp" />
<ClCompile Include="src\game\iw4\mp\components\mr.cpp" />
<ClCompile Include="src\game\iw4\mp\components\patches.cpp" />
<ClCompile Include="src\game\iw4\mp\components\scr_parser.cpp" />
Expand Down
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/af_caves.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "4993.7 14416.9 -1315.6"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
{
"origin" "4993.7 14416.9 -1315.6"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "4993.7 14416.9 -1315.6"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "4993.7 14416.9 -1315.6"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/af_caves.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/af_chase.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "-19902 1654 296"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
{
"origin" "-19902 1654 296"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "-19902 1654 296"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "-19902 1654 296"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/af_chase.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/airport.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "6528 2312 56"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "6528 2312 56"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "6528 2312 56"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
{
"origin" "6528 2312 56"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/airport.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/boneyard.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "-5945 -4781 66.5"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "-5945 -4781 66.5"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "-5945 -4781 66.5"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
{
"origin" "-5945 -4781 66.5"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/boneyard.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/cliffhanger.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "363.4 -29122.6 196.8"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
{
"origin" "363.4 -29122.6 196.8"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "363.4 -29122.6 196.8"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "363.4 -29122.6 196.8"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/cliffhanger.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/co_hunted.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "2241.2 -8541.8 303.3"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "2241.2 -8541.8 303.3"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "2241.2 -8541.8 303.3"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
{
"origin" "2241.2 -8541.8 303.3"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/co_hunted.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/contingency.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "-38783 -15530.3 101"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
{
"origin" "-38783 -15530.3 101"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "-38783 -15530.3 101"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "-38783 -15530.3 101"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/contingency.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
1 change: 1 addition & 0 deletions resources/iw4/_codxe/internal/maps/createfx/airport.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
1 change: 1 addition & 0 deletions resources/iw4/_codxe/internal/maps/createfx/dcemp_fx.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
1 change: 1 addition & 0 deletions resources/iw4/_codxe/internal/maps/createfx/estate_fx.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
1 change: 1 addition & 0 deletions resources/iw4/_codxe/internal/maps/createfx/gulag_fx.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
1 change: 1 addition & 0 deletions resources/iw4/_codxe/internal/maps/createfx/oilrig_fx.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
1 change: 1 addition & 0 deletions resources/iw4/_codxe/internal/maps/createfx/so_bridge.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
main(){}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/dc_whitehouse.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "-8792 5404 -647"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "-8792 5404 -647"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "-8792 5404 -647"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
{
"origin" "-8792 5404 -647"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/dc_whitehouse.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/dcburning.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "-22553.8 -1855.8 -664"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "-22553.8 -1855.8 -664"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "-22553.8 -1855.8 -664"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
{
"origin" "-22553.8 -1855.8 -664"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/dcburning.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/dcemp.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
3 changes: 3 additions & 0 deletions resources/iw4/_codxe/internal/maps/dcemp.gsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
main()
{
}
23 changes: 23 additions & 0 deletions resources/iw4/_codxe/internal/maps/estate.d3dbsp.ents
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"classname" "worldspawn"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_allies_start"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_tdm_spawn_axis_start"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_tdm_spawn"
}
{
"origin" "-47840 7672 -374"
"angles" "0 30 0"
"classname" "mp_global_intermission"
}
Loading