The fully functional stand-alone v1.2 of JediMod's source code :D. (Would be a good idea for coders to read the readme btw)
Note: This isn't a working mod to play in JK2 meant for coders or people just wondering what made possible a darn cool mod Be sure to read the readme as well for information regarding the code and things.
Title: JediMod v1.2 Source code. Author: Dest Feel free to use my source but give credit where credit is do. Remember Tchouky did all the model scaling and rgb saber stuff so credit should go to him for those things. ******NOTICE****** Unless I personally tell you otherwise do NOT put your mod in the JediMod folder and do NOT name your mod JediMod v5.5 or anything. Your mod is NOT a higher version of JediMod. Only I may make new versions of JediMod. The name of your mod should not make people think that it is a newer version of JediMod. Name your mod something besides JediMod and put it in its own folder, NOT the JediMod folder. ******************* I used very weird defines to make some of the stuff possible in this mod. In the game source you will find a lot of #ifdef CLIENTSIDE stuff. This is so that if I have CLIENTSIDE defined then the game source will compile as a clientside and serverside mod. If I dont define it then it will only be a serverside mod. There aren't any #ifdef CLIENTSIDE's in cgame because its obvious that it will be clientside. I also use #ifdef CLIENTCOMPILE In order to make it so you could turn the ability to spin in backstabs on and off I had to have two different version of bg_pmove.c and since both game and cgame use the same bg_pmove.c I had to use defines to basically make it to different versions. The problem was because I needed to access cvars like mod_nerfspin which were only set on the server so I basically did #ifdef CLIENTCOMPILE vmcvar_t mod_nerfspin; #endif #ifdef CLIENTCOMPILE mod_nerfspin.integer = cgs.nerfspin #endif This means that in order to compile cgame you have to define CLIENTCOMPILE (search for define CLIENTCOMPILE) in a couple of files and CLIENTSIDE in gamedefs.h and in order to compile game you have to define CLIENTSIDE in gamedefs.h and undefine CLIENTCOMPILE. I just added the define to the projects/settings/c/c++/preprocessor definations This works for when you use a dll but to compile into a qvm you must put the defines in the source files. Some of the defines are very ugly but it is good to have it so I can make it a server side only mod. (no model scaling rgb sabers etc). I didn't really keep up the CLIENTSIDE defines and I'm not sure what happens when CLIENTSIDE isn't defined, so always have CLIENTSIDE defined in gamedefs.h I tried to mark all my changes with comments like this ////comment so if you search for //// you will find my comments. if your looking for hilt code just search for hilt
There are no comments yet. Be the first!