ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.

Conscript's Modding Coursebook/1. Setting Up

From ModEnc
Jump to navigation Jump to search

Before we embark on your modding adventure, there are a few things you should grab and set up. It will only take a while, but you'll be able to make much more cool stuff compared to just nosediving into editing the game.

What you need

Yuri's Revenge 1.001

You only need a couple of specific game files copied from installed Yuri's Revenge patched to version 1.001:

  • BINKW32.dll,
  • BLOWFISH.dll,
  • gamemd.exe,
  • mapsmd03.mix,
  • movmd03.mix,
  • multimd.mix,
  • ra2.mix,
  • ra2md.mix,
  • language.mix,
  • langmd.mix.

Ares

Ares is an engine extension that fixes several bugs, unlocks limits and greatly expands modding possibilities. You can download Ares here and read about it here. Make a bookmark for Ares documentation, as you will check it often.

Phobos

Similar to Ares but newer and actively developed, Phobos is another engine extension. You can download it here (download Phobos.dll only) and read about it here. Bookmark it as well.

CnCNet Client Mod Base

The CnCNet client replaces the original game menus with an interface that can be freely customized, allows for launching the game with Ares/Phobos enabled, free and easy multiplayer hosting, IRC chat, custom game modes, and much more. Thanks to user Starkku, there's a beginner-friendly distribution that requires minimal setup. You can download it here. The client requires .NET Framework 4.5, which you can get here (scroll down to "Assets", and click "Source code (zip)") if you don't have it already installed on your PC.

Tools

Below is a list of some community-made tools for editing specific file formats used by the game. You don't have to worry right now about what these formats are and how to use these tools, you can download these when later chapters will introduce them properly.

Must Have

SHP & PAL Tools

VXL Tools

CSF Tools

Map Editors

Setting up your mod base

So you have downloaded everything, now how do we get a working mod from this?

The steps

What your mod folder should look like after step 1.
  1. Get your files together
    1. Create a new folder somewhere on your computer. Call it whatever you like, it will be your base directory.
    2. Copy required game files listed above into your mod folder (do not create a subfolder!).
    3. Unzip downloaded ares_3_0.zip archive and copy its contents into your mod folder (do not create a subfolder!). You can delete RunAres.bat, as we won't be using it. You can also remove or move somewhere else the Documentation folder, because it's just a copy of the online documentation.
    4. Copy downloaded Phobos.dll into your mod folder (do not create a subfolder!).
    5. Unzip downloaded cncnet-client-mod-base-net45final.zip archive and copy just the contents of the ClientFiles folder into your mod folder (do not create a subfolder!).
  2. Configure the client (instructions copied from the CnCNet client mod base page)
    1. Edit Resources\GameCollectionConfig.ini
      1. Change InternalName under section CustomGame to your chosen, unique abbreviation (max. 4 characters in length).
      2. Change UIName under section CustomGame to full name of your mod.
      3. Set ChatChannel and GameBroadcastChannel under section CustomGame to valid IRC channel names. For an example, #cncnet-X for ChatChannel and #cncnet-X-games for GameBroadcastChannel, where X is replaced by the abbreviation from InternalName.
      4. Set IconFilename under section CustomGame to a valid filename of a 16x16px icon to display in CnCNet lobby & CnCNet options. The file (ideally in PNG format) should be placed in Resources directory.
    2. Edit Resources\ClientDefinitions.ini
      1. Set LocalGame under section Settings to match the abbreviation from custom game's InternalGame.
      2. Set LongGameName under section Settings to full name of your mod.
      3. Set WindowTitle under section Settings to what you wish to display in client window titlebar.

The result

CnCNet client welcome screen.

Now, launch YRLauncher.exe. If everything goes right, your ears will be blasted with Grinder by Frank Klepacki. You will see a window looking like YR main menu and a pop-up to configure your player settings. After clicking the Settings button, you'll be able to change your game and client resolution, renderer (CnC-DDRAW is usually the best choice), full-screen mode, audio volume, player name, etc. When you're done, accept the changes, restart the client, and click the Skirmish button.

You should now see the skirmish menu, where you can choose a map, set up players and additional options. Most things here can be configured and customized as you wish, but that's for another time. Pick a map, pick your faction and color and start the game. If everything goes well again, you will load in and start a skirmish! That means you're good to go and can make your first edit in... Part 2: Your First Unit.

(Optional) Doesn't work, now what?

You might have done everything correctly, but instead of getting into the game (or the client), you are staring at a Windows error message telling you something went wrong in a rather non obvious manner. Some errors are caused by insufficient permissions, some by missing files or version mismatch, others just... come and go. Yes, there are some errors we don't know how to fully solve. Below is a list of some known issues and solutions. If you can't find your issue here, or if solutions don't work, ask the community for help at PPM Forums or Mod Haven.

"FATAL String Manager failed to intialize properly" message

SetYRLanucher.exe, Syringe.exe and gamemd.exe to run as administrator (Right click on file, Properties, Compatibility, Run this program as administrator).

"Syringe could not run executable - requested operation requires elevation" message

Same as above.

"Failed to initialize. Please reinstall" message

Check if you copied all needed game files. If yes, set above files to run as admin.

Black screen/frozen game while the game is active

Changing the renderer should help. If you haven't tried CnC-DDRAW yet, give it a go; otherwise experiment with others until the problem goes away. You can change renderer in main menu, then Options, then Display (first tab), then in the Renderer dropdown menu.

"error - unable to set video mode" message

Set game resolution to match your monitor resolution. If that doesn't help, change your renderer (see above for instructions).

"Screen mode not found" message

Open your Windows Settings, then Display, then Scale and Layout, look for Change the size of text, apps and other items dropdown menu and select 100%.

Slow/laggy/freezing game

Change your renderer (see above for instructions).

Client crashes silently

Open Client/debug.log and search for messages under KABOOOOOOM!!! (sic!) line. Some issues are straightforward, i.e. a missing file or control, others will require developers assistance. You can always ask for help at Mod Haven.