Posts: 5
Threads: 1
Joined: Aug 2013
Reputation:
0
09-16-2013, 13:42
(This post was last modified: 09-16-2013, 13:52 by one1lion.)
Good day,
I posted this initially on the official Call of Duty: Black Ops forums ( this link - http://community.callofduty.com/thread/2...jb3Cj-2ado) and just wanted to give it as much exposure as I could for feedback. In short, I have a request to look into modding BlOps. I knew nothing about how to mod, but I am well-versed in various programming languages. The first thing I wanted to do was learn what tools were needed (and found that Mod Tools was available), then got familiar with the syntax, file structure, etc. I have a good handle on the file structure, but am still having a lot of trouble finding resources specific to my next goals. I've run through tutorials (like this one from this site.) Again, the details are in the post on COD's website, but my overall goals are to:
- Find a comprehensive tutorial that walks me through building a mod that teaches how to build HUD elements (which I understand this part), manage client/server variables (which I have a good handle on this), add custom assets (weapon models/textures designed in Maya, skyboxes, character models/skins, maps, etc), create custom callbacks or use existing ones to detect keypresses and other events, and add new gametypes.
- Find a well-documented API that lists all of the functions, scopes, and signatures. I have found ZeRoY's Call of Duty Script Reference, but it isn't quite what I am looking for. Instead, I am looking for something more like the Java API.
In any case, my request for help is anyone who can help me find these resources or teach me about any of the points that are listed. I am going to spend today writing code that goes through all of the gsc files in the raw folder and extracts the functions and their bodies and makes a database out of it so that I can maybe build my own API. If I am able to make a decent resource, I will certainly share it.
Thank you in advanced.
PS, I saw that there used to be a wiki.treyarch.com with tutorials and such, but no longer exists...
Posts: 3,704
Threads: 147
Joined: Jan 2011
Reputation:
119
Unfortunately, there's no API list.
C++/Obj-Cdeveloper. Neko engine wip
Steam: Click
Posts: 5
Threads: 1
Joined: Aug 2013
Reputation:
0
(09-16-2013, 14:22)d0h! Wrote: http://www.itsmods.com/forum/Forum-Moddi...rials.html
check it out -.-
Good day and thank you for your reply. I have and will continue looking through this. It is difficult to weed through sometimes, but I have been able to find a lot of good information by reading through the forum. Again, I have not found a comprehensive tutorial that includes information about those specific questions that I have.
Posts: 1,741
Threads: 93
Joined: Mar 2012
Reputation:
26
Well I have all the gsc functions for black Ops but none of it is documented. Making your own weapons is easy there are hundreds of tutorials. I'll find some links later to help you out
Do not take life too seriously. You will never get out of it alive.
Posts: 5
Threads: 1
Joined: Aug 2013
Reputation:
0
(09-16-2013, 15:34)DidUknowiPwn Wrote: Well I have all the gsc functions for black Ops but none of it is documented. Making your own weapons is easy there are hundreds of tutorials. I'll find some links later to help you out
That would be much appreciated, and helpful. Since you specifically mentioned weapons, here is a little information on what I have done. I went through the [Tutorial] .Gsc Modding for Beginners, which walks me through modding a gametype to give a weapon when spawning. I also saw a youtube tutorial that showed how to mod a weapon using asset manager in Mod Tools to change a 3-round burst weapon to full auto, and adding it to the zone source. The last thing I want to mention is that I saw a youtube video where someone ripped a weapon model from duke nukem and exported it to maya. Then, they named some IK handles and imported used the COD Tools menu to export it to something readable by COD. I created my own model of a gun with textures in maya and tried to follow his steps from there, but can't seem to get it to load into my test mod.
Posts: 1,741
Threads: 93
Joined: Mar 2012
Reputation:
26
Weapon:
GSC Functions: http://pastebin.com/uqZiumDu
It applies to everywhere (talking about the weapon).
Do not take life too seriously. You will never get out of it alive.
Posts: 5
Threads: 1
Joined: Aug 2013
Reputation:
0
(09-16-2013, 18:11)DidUknowiPwn Wrote: Weapon:
GSC Functions: http://pastebin.com/uqZiumDu
It applies to everywhere (talking about the weapon).
I will watch the hour long one when I am on a better connection. Watching other tutorials from the same youtube user and it seems to be what I am trying to work towards as far as adding a weapon.
Regarding the functions dump: that is what the code I wrote this morning is doing, but I'm also keeping the parameters and the body of the function as my pseudo API. Each time I go to use a function, I will look it up in my database and describe what it does, and tag it as well. In any case, thanks for the vid.
It did prompt a related question. Could I apply the tutorials I have and will watch for other CoD titles (like WaW) to BlOps?
Posts: 1,741
Threads: 93
Joined: Mar 2012
Reputation:
26
Pretty much they're almost the same so yeah.....
Do not take life too seriously. You will never get out of it alive.
Posts: 5
Threads: 1
Joined: Aug 2013
Reputation:
0
Just finished watching the video and it seems to have pertinent information. I understand adding things to source and using existing files as templates. I'm going to see if I can export my weapon, give it custom sounds (random sounds)...hopefully the WaW directory structure isn't that different. There were a few things I saw that are going to be different, but I'll tackle them when I get to them. My notes for the video are below. The notes are really for me, and again, I'm working towards putting together a comprehensive resource for myself that I will be happy to share when I'm done. My code read 1899 gsc files and found all of the functions within. I've logged the includes for each file, function signatures, bodies, returns, and comments (which there are very few comments. Mostly the "this file is autogenerated. do not modify" lines.)
The next thing I'm doing is finding where one function calls a function from another file (barring the imports). Example: maps\_hud_message::waitTillNotifiesDone();
Other things to do are to find all functions called on Self, Level, etc. what variables are created on each of those by each function.
I'm still looking for more resources on how to setup callbacks. For now, I will keep watching/reading tutorials as time allows.
can use xmodel tool (tom tools in blops gamedev folder) to export a gun or xmodel. do both worldview and viewmodel
Maya settings:
- up is Z (not Y)
- joints must be bound to weapon (if doing weapon)
- ex joints: j_gun, j_pump, tag_flash, tag_brass, tag_scope, j_clip
- wireframe will be pink when bound correctly
- in render view (key 5),
- click on mesh in window outliner, edit -> select heirarchy
- go to (polygon toolbar) Color -> Apply color (settings) and change color value to white
- File -> Save
COD export
then go into mod tools -> asset manager
load the gdt file that was created
give a material type to each mesh
save and convert each thing
puts the converted version into COD root directory
go to raw\images (*.iwi)
copy new *.iwi files to {mod_root}\images
check boxes for new images in mod tools
at top of mod.csv (zone source, I think), type xmodel,{modelname} for both the view model and the world model
get weapons files (raw\weapons) that is similar and put in in {mod_root}\weapons\[sp|mp] (whichever one, most likely mp)
change it as needed
gunmodel (name of viewmodel imported)
worldmodel (name of world model imported)
fireanim
copy animations into raw\xanim\{name of gun}
get hxd program (hex editor)
drag and drop files into app
change first pair from 13 to 11, save and close
for all anims, add an entry to mod.csv (or zone source, or whatevers) with
xanim,{anim_name}
example: xanim,viewmodel_minigun_ads_down
if we have raw\xanim\{gunname}\viewmodel_minigun_....
need to go into the weapon file again,
also do weapon,mp\{weaponname}
check the file in mod tools
use audacity to create audio files
there are note tracks in xanim files that say when to play what
{cod_root}\sound_assets\raw\sound\new folder for weapon
Project rate 44100
Export selection
save as type: other uncompressed
options->WAV (Microsoft) and Unsigned 8 bit PCM
normalize, clear tags
get all of the note track names and make a sound for all of them with above options as wav file
in the {weaponname}_mp file, find those note track names and give them the name of the audio file
ex:
sndnt#fly_crossbow_draw xbow_pullback
to create the actual sound alias
raw\soundalieases\weapons.csv
find similar gun
copy the sounds into new file
also get the header
rename them (first column)
set path from cod_root/soundaliases/
anyway, use the existing as a template
give it a file name (whateverweapon.csv) into soundaliases where weapon.csv is
note third person is 0.7,0,74, first is 0.9,1,250,2000
add to zone
sound,{alias_name},,all_mp
build sound only in mod tools
now build mod (link ff and build iwd)
|