Data Realms Fan Forums http://45.55.195.193/ |
|
Unofficial: Everything you'd ever need to know about Modding http://45.55.195.193/viewtopic.php?f=1&t=1196 |
Page 1 of 3 |
Author: | The Punisher [ Sun Oct 29, 2006 10:46 am ] |
Post subject: | Unofficial: Everything you'd ever need to know about Modding |
Unofficial F.A.Q. - Cortex Command Q,1: I made a 'mod'.rte with a 'weapon'.ini in it, but i cant see it! A: Have you made a index.ini that contains DataModule IncludeFile = 'mod'.rte/'weapon'.ini ? Q,2: I done that, and I cant see it in the buy menu! A: Cortex Command dont have a working scroll bar, just go 'outside' the buy menu. Q,3: How do I mod? A: Go here. Q,4: How do I change the ammo/health/weapons A: Open Ammo.ini/Actor.ini/Devices.ini and look around, why im not telling you the rest, is that we need more mod's for CC and this is good practice. Good luck! Q,5: How do I select the brain? (buy menu) A: P1 : Y+U at the same time. P2: Num.4+Num.5 at the same time. Q,6: Why are the colors on my sprite weird? A: Cortex Command uses a custom palette of 256 colors, where you're probably picking from tens of thousands. Use a program with palette support, like GraphicsGale. Q,7: Help! When Cortex Command are trying to load my mod i get an error! A: Look at the error you should see a Could not match property in 'yourmods name'.rte/'your weapon'.ini at line 'line'! Then open 'your weapon'.ini and goto 'line' maybe somthing is wrong? when you get errors like this you should ask here in the forum for help. Q,8: How do I install mods? A: Place the 'mod'.rte in Cortex Command Main folder NOT base.rte! And then it should work. A2: If this is not working, then open base.rte and then open index.ini, then go back to the 'mod'.rte folder, open index.ini and skip 1 line then copy the rest, now paste this in the base.rte/index.ini file. If this is not working post in the general forum for help. Q,9: How can I make a grenade that explode without the sharp pixels? A: Open the 'grenade'.ini and remove ParticleNumberToAdd = 20 AddParticles = MOPixel CopyOf = Grenade Fragment Gray ParticleNumberToAdd = 20 AddParticles = MOPixel CopyOf = Grenade Fragment Yellow this most be copyed from the normal frag grenade! Q,10: How can I make 3x3 pixel bullets? A: You cant, but you can use sprites. Q,11: I made a really cool weapon. But when I use it, it gets trowh out of my hands. What should I do? A: Reduce the bullet speed, or you could also increase the joint strength if you want to risk ripping the guy's arms off when it fires. (If you want it to go trough everthing, use sharpness.) Q,12: How do I use sprites? A: Open your 'weapon'.ini and find SpriteFile = ContentFile FilePath = 'your mod'.rte/'your sprite'.bmp FrameCount = 'number of images' if you want animated sprites change the 'number of images' to how many sub-images you want to have, make sure you name the images 'image'000.bmp 'image'001.bmp 'image'002.bmp etc. But if you want non-animated sprites, use only ONE image and do NOT have numbers behind the name and 'number of images' most be 1 ! Q,13: How can I change the weapons/items/actors/vehicles price? A: Go to the Device.ini and go to all the weapons and change everyones gold cost to 0. Go to Actor.ini and go to the bottom of the code and you should see Robot 1 and 2 an Green Clone and Blue Clone go to thier gold cost and change it to 0, also the very bottom actor is the rocket, so if you want it free just change th Gold Cost = whatever number. Q,14: The actor just aims up!! What should I do? A: Unplug your joystick. If this doesnt work post in the forums. Some non-CC questions. -What does btw mean? ::Btw mean By the way -What does lol mean? ::Lol mean Laugh out loud -You can look here for more. (I dont recommend pepole using this! Your post may be deleted.) Cant find a answer to your problem(s) here? Post a question and we will try to answer it! Please do not post spam/stupid posts! Thanks to Tonnyman for the answer on Q#13 ! And Ikkonoishi for the answer on Q#11 ! CC, faq v.1.51 |
Author: | Alenth Eneil [ Sun Dec 17, 2006 1:14 am ] |
Post subject: | Modding guide and guidelines! |
This post is copied here for the sake of it not getting lost in the rubble of the mod section. THIS IS NOT HERE TO TEACH YOU HOW TO USE A COMPUTER! IF YOU ARE INCAPABLE OF EVEN THE SIMPLEST TASKS, YOU SHOULDN'T BE ANYWHERE NEAR A DEV FORUM. This post is both meant as an introduction to modding, a somewhat passable lesson on how to install mods, and a set of general rules to follow when modding, especially when POSTING mods. I will also cover some guidelines I believe will help mappers and players in that field. In this post, I will not try to be nice, I do think there are people here who post stuff that isn't worth posting. First off, Installing Mods, this is first because once I get into modding I won't come back around. Mods run out of those pretty little folders with .rte at the end of their name. The game, when starting up, looks for any directories with .rte, opens them(it does Base.rte first, more on that later) and parses the Index.ini. So, after getting a mod, you extract it, and put the .rte folder(it may be in a folder that winzip or winrar made, get it out) in the games base directory, if you don't know what a base directory is, get off the interwebs. After that, if the mod is properly made, the game should load it all nicely and the stuff from the mod will be added to the buy menu. Next, learning to mod! First off, make a folder and call it <modnamehere>.rte. Next, make an Index.ini(just change the extension on a .txt to .ini) that is almost exactly like the one in Base.rte, but only put in an ammo.ini and a devices.ini line(leave the first line the same always, make sure the paths you put in go to your mod). Now you also will need the files you just made paths to, in your mod folder again make an ammo and a devices.ini file, now, go copy whatever weapon you want to mod out of the corresponding file in Base.rte(for ammo, make sure you get the magazine AND the round, as well as anything else referenced by those, don't worry about materials or .bmps or .wavs) Now, rename all your magazines and rounds and weapons you took to whatever you want, making sure to be consistent. Now that you have done this, you should have a working mod folder, and can begin to mess around a bit to learn how things work. Don't ask how to do things, just look around and try, remember multiple variables affect certain properties of weapons. Ok, you have messed around, made some interesting stuff, maybe even delved into modding actors to be stronger. Always remember to NEVER EVER change anything in the Base.rte files except GoldCost, Health, and WoundLimit, and when you DO change those, comment out the original value(use // for comments). If you want to make a new .bmp/.wav for your weapon, or whatever you have, make another new folder in your mods .rte, and name it after the weapon or something, copy the files the weapon currently uses into that folder, and redirect that paths in the devices.ini to point to these files, you can now change them as much as you want. Always keep in mind that ANYTHING that is used in one of your .ini files has to be compiled before it is used(like ammo.ini goes before devices.ini) in the Index.ini. If you ever need to stop a mod from loading(like too many weapons, or long load time) just take the .rte out of the folders' name. When it comes to the point that you want to post your work, think about whether or not enough work went into it, or if it's even good enough, that people will want it, most people have nearly, or more than, full weapon tabs in the buy menu, unless you have a great weapon they will likely delete it. If you think that it IS good enough, then post your entire .rte in a zipped(or rared) form using the forums upload service, because you have(hopefully) been diligent in keeping the mod self-sufficient *coughferretcough* this is all people will need to use what you made on their own computers. -----Uber Ghetto Guide To Cortex Command Variables Coming Soon(weapons done-ish)----- Note : I removed repetitive/RBG/X,Y stuff Devices.ini SAMPLE ///// a gun, for shooting... something AddDevice = HDFirearm //Its a gun, woot InstanceName = Pistol //name of any weapon of this type Mass = 3 //in kg HitsMOs = 0 //does it have collision for hitting? GetsHitByMOs = 1 //does it have colliosion for getting hit? SpriteFile = ContentFile //dont worry FilePath = Base.rte/Devices/Pistol/Pistol.bmp //what it looks like FrameCount = 2 //how many frames there are SpriteOffset = Vector //In relation to parent? this is where to draw it. EntryWound = AEmitter //when it gets hit CopyOf = Dent Metal //type of emitter ExitWound = AEmitter //bullet goes out the other side CopyOf = Dent Metal GoldCost = 5 //you figure it out. AtomGroup = AtomGroup //no worries AutoGenerate = 1 //I have no goddamn clue Material = Material //material CopyOf = Gun metal //what material it is made of Resolution = 4 //uhhh Depth = 0 //uhhh DeepGroup = AtomGroup // :S AutoGenerate = 1 //... Material = Material // a material, it is. CopyOf = Gun metal //the material typename Resolution = 4 //... Depth = 10 // I think this has something to do with layering DeepCheck = 1 // not sure Strength = 75 // maybe for gibbing, probably for crushing Stiffness = 0.5 // maybe for gibbing JointOffset = Vector //not sure, X,Y thingie DrawAfterParent = 0 // drawn before or after whoever's holding it StanceOffset = Vector //these have to do with the different ways your guy can hold it SharpStanceOffset = Vector SupportOffset = Vector SharpLength = 125 // zoom length Magazine = Magazine // just a definition CopyOf = Magazine Pistol // what mag it has ParentOffset = Vector // where it draws the mag Flash = Attachable CopyOf = Muzzle Flash Pistol // muzzle flash FireSound = Sound //sounds begin AddSample = ContentFile FilePath = Base.rte/Devices/Pistol/PistolBang.wav EmptySound = Sound AddSample = ContentFile FilePath = Base.rte/Devices/EmptyClick3.wav ReloadStartSound = Sound AddSample = ContentFile FilePath = Base.rte/Devices/ReloadStart.wav ReloadEndSound = Sound AddSample = ContentFile FilePath = Base.rte/Devices/ReloadEnd.wav RateOfFire = 200 //the higher the faster ReloadTime = 1500 // in miliseconds, rof probably is too FullAuto = 0 // duh FireIgnoresThis = 0 //idk ShakeRange = 4 // how much the makes your arms shake(degrees?) SharpShakeRange = 1 // same as above but for sharp NoSupportFactor = 5 // when only using one hand ParticleSpreadRange = 3 // weapons static accuracy ShellSpreadRange = 8 //for the casings ShellAngVelRange = 2 MuzzleOffset = Vector//where the bullets come out EjectionOffset = Vector// :S AddGib = Gib //these are gibs, when the weapon is shot to pieces, these are the pieces GibParticle = MOPixel CopyOf = Spark Yellow 1 Count = 3 // # Spread = 3.14 // radians? MaxVelocity = 20 // durr MinVelocity = 8 // ^ WoundLimit = 2 /// how many hits before it just dies, regardless of health(if it has any) Ammo.ini SAMPLE ////// a bullet AddAmmo = Round InstanceName = Round SMG //name, used for calls to this object ParticleCount = 1 // how many Particle = MOPixel //type InstanceName = Particle SMG //another name Mass = 0.008 //in kg RestThreshold = 500 // how well supported it has to be to stop and become static LifeTime = 1500 // how long it lives(doesn't count if it comes to rest) Sharpness = 250 // this affects the force it imparts as a material, a light or slow projectile can still do damage by being sharp HitsMOs = 1 // hits people/walls GetsHitByMOs = 0 //it can't get shot. Color = Color // You figure this one out. Atom = Atom Material = Material CopyOf = Bullet metal TrailColor = Color TrailLength = 25 Shell = MOSParticle //another object type, this is the shell CopyOf = Casing //what shell? FireVelocity = 80 //bullet speed ShellVelocity = 10 // shell speed Separation = 5 // not sure, I'll try it. /////// a mag AddAmmo = Magazine InstanceName = Magazine Pistol Mass = 1 // kg HitsMOs = 0 //no impact 4 u GetsHitByMOs = 0 // can't touch this SpriteFile = ContentFile FilePath = Base.rte/Devices/Pistol/MagPistol.bmp //image FrameCount = 1 // how many images in the series, in this case, one SpriteOffset = Vector // where to draw in relation to parent, I think RoundCount = 11 // how much it holds RTTRatio = 0 // not sure RegularRound = Round CopyOf = Round SMG // what it shoots TracerRound = None // no tracer here ///////for great justice, I will also cover a TDEXplosive AddAmmo = TDExplosive DetonationSound = Sound //when it triggers AddSample = ContentFile Path = Base.rte/Sounds/Explode2.wav StartThrowOffset = Vector//stuff for throw EndThrowOffset = Vector TriggerDelay = 500//timer on trigger ParticleNumberToAdd = 10 // how many AddParticles = MOSParticle //of a particle CopyOf = Side Thruster Blast Ball 1 //this particle ParticleNumberToAdd = 10 //this many AddParticles = MOPixel //pixels CopyOf = Grenade Fragment Gray //of this type ParticleNumberToAdd = 15 AddParticles = MOPixel CopyOf = Air Blast Other than that, if there are any things that you want me to add/clarify/remove/beat to death, send me a PM or if you think I won't mention you telling me what it means(if that's the case) post here. Beyond the above material, and even including most of it, you ought to be able to figure out most of teh rest on your own, if you can't figure it out, fool around with it, or leave it alone. -----End the Ghetto Library of Stuff------ MAPS Mapping, in it's current form, is neither easy nor quick. If you want to get started, look in the thread about contours(it's a sticky) and get that tool. When using paint or whatever to make a map, remember that the ContourMaker requires a 2-color bitmap, one of those colors must be the pink used for transparent stuff, thi is where you won't have ground(like the sky) If you look in the Scenes.ini file, or the folder where all the scene stuff is, you will notice there are many .con files, this is because for EVERY material(dirts, sands, et cetera) you need a new countour to tell the game where to put it, also note the X and Y values for map size, they come in handy when you change the size. The rest of mapping is art and placing it with pixel coordinates, I am too lazy to look to see where 0,0 is, I assume top-left. Have fun, however, to ensure others can use your map without overwriting their own do these things; 1.) Make your own Scenes.ini and Scenes folder, with the name of the map instead of 'scenes', this way, all a person.you has to do to change their map is go into Base.rte/Index.ini and change the Scenes.ini line to your maps' .ini, after putting your folder/.ini in their Base.rte(only maps here will load I think) 2.) If you use custom materials, make your own materials file as well, this will just mean that have to change/add another line in the Index. 3.) Everyone wants more maps, if you get anything anywhere near decent, they will love it. -----I might make a ghetto library of things here too----- MOD GUIDELINES I know, I know, hard to believe. 1.) No external dependencies except for in Base.rte, that way people don't have to debug your mistakes. 2.) If your mod is extremely large, think about breaking it into smaller mods, so people can pick and choose. 3.) Don't rate mods on things like sounds, I doubt most of the people here really want to go looking for sounds for all their weapons, if they do get custom sounds, or at least different sounds, it's a plus, but if they don't it's not a minus. 4.) Always, ALWAYS, debug your mods, the best way to do this is to take the .rte our of ALL mods except the one you are debugging and Base, then run the game, if there are no errors, you didn't fail, at least not at keeping your mods modular. 5.) JLrep - Unfinished Mods : Don't post an unfinished mod unless you absolutely need help getting it to work, before doing this, check for typos and make at least a half-assed attempt at fixing it yourself. -----Ghetto Q&A as people ask the Q part, and Ferret Punisher et cetera or I answer. IF YOU HAVE SMALL QUESTIONS, TRY USING PMS!!!!! Additions from Others : RTTRatio - How many normal rounds are fired before a tracer (purple) Edited by : Nfsjunkie91 |
Author: | Fearful_Ferret [ Mon Dec 25, 2006 8:24 pm ] |
Post subject: | Unofficial: Basic modding guide and Variable/Class Appendix |
MODDING CONCEPT GUIDE TABLE OF CONTENTS I. Introduction II. Bare-Bones Guide To Modding III. Frequently Annoying Questions IV. Appendix IVa. Vocabulary IVb. Variables IVc. Classes V. Helpful Links VI. Misc. I. INTRODUCTION This part is here to help you get a grasp of what all of this stuff does. It's pretty much a listing of all the classes used, which will pretty much teach you to use every tool at your disposal to create the latest and greatest. First comes the vocabulary, then the variables, then the classes. Since it's hard to explain the classes without first explaining the variables, yet it's also hard to explain what the variables do without first showing all the classes, you'll probably end up clicking back and forth a lot. If you don't understand something, then keep reading and you'll likely find something later than explains it. In the appendix section under the classes, the variables have a short explanation. Look at the variables appendix for a more detailed explanation. II. The Basic Basics of modding CC: If you're completely new to the whole modding thing, then here's a quick rundown: When the game compiles (during the loading screen) the game does this: it first goes to Base.rte/index.ini and works its magic. The compiler goes line by line. Lines that include a file make the compiler stop compiling the current file and start compiling the file that was included until that file is gone through, then it goes back and finishes the original file. So the compiler in Base.rte goes to index.ini, loads all the materials, loads all the sounds, loads all the effects (including emissions and particles and pixels and other things that fly around the screen), loads all the ammo stuff (including rounds and magazines), loads all the weapons, loads all the actors (which then includes more .inis: one .ini for each actor and rocket), and finally loads the level information. When an entire index.ini is compiled in Base.rte, the program then searches in alphabetical order for other folders that end in .rte and looks for an index.ini inside each. It then compiles all the mods until done. Quite a process, right? Well, it's done that way for a reason. Weapons are loaded after magazines because a weapon calls on a magazine, and magazines are loaded after rounds because magazines call on rounds and so forth. If an instance calls on another instance, that instance must be compiled first; since effects are basic things and weapons and actors are complex and must rely on other instances, they are compiled in such a manner that the more basic classes are put into memory before the more complex classes. What does this all mean? Probably nothing to you, but it will pretty soon. Instances work like this: a line declares what kind of object is being defined, then another line usually defines the name of that object. After that, pretty much everything is just a series of variables that define what that object is. For example, your basic pixel (found in effects.ini, usually) has a certain mass and sharpness, has variables that determine whether they can hit things and/or can be hit, has a color, has a material (which is mostly just there to determine behavior when the pixel stops moving and becomes "static"), and has a trail color and a trail length, which determines the color and length of the line behind the individual pixel. And yes, pixels are pretty much the most basic of objects, yet have a great deal of variables. The secret to modding CC is starting small. For starters, make a backup of Base.rte so you can revert back to it later; making a new folder and .ini files right off the bat is extremely hard unless you know what you're doing. Start with Devices.ini and work your way down: change some things on the AK-47 or the SMG, increasing the rate of fire or changing the reload time or whatever you feel like doing, then go to the magazine it calls and change some of the stuff there, such as roundCount. Finally, go to the round the magazine calls on (both are in ammo.ini) and change the charpness or the mass or something. You'll quickly become used to modding CC, at which point you should use Alenth's Guide and other resources (just look around) to familiarize yourself with the different variables and such. And remember: the most important thing is to experiment. All of us started out making an AK-47 that shot through walls and worked our way up. Change whatever you see and see how the game reacts. III. Frequently Annoying Questions: Q: How do I get a higher resolution for cc? A: http://www.datarealms.com/forum/viewtop ... 2294#22294 Q. What's a .rar file? A. .rar files are a form of compression more efficient than .zip, and so is used quite often when uploading mods. Google "winrar" to find the free download. Q. How do I make my brain invincible? A. go into Base.rte/Actors/Brains/Brains.ini, then Go under the instance Mother Brain and look for "Health = 100" and The GibImpulse/WoundLimit lines. Change the health variable to equal something really high, the impulse variable to equal something really high, and the woundlimit variable to equal -1. Now your brain will never die again. Q. How do I get more gold? A. If you want a quick, dirty way to get more gold, go into Base.rte/Devices.ini, and go into the view toolbar and hit "Replace...". Replace "GoldCost = " with "GoldCost = -100 //". All the weapons in the game will now give you 100 gold whenever you buy them, but rockets and actors will still cost their normal prices. Do the same process to all the .ini files in Base.rte/Actors to change their costs as well. If you ever want to change prices back, switch around the values that you're replacing. Q. How do I get the skeleton/dropship? A. Get the latest version. Q. A mod I DLed isn't working! A. Make sure that you placed the folder that ends in .rte directly inside the Cortex Command folder. If there's an error in the code, attempt to fix it yourself. Whether you can or cannot, report the error (FULL TEXT is preferred) in the topic that you downloaded it from, but make sure that the mod isn't old; it might be for an older version than you have. Q. Can someone send me (file), it doesn't work anymore!!! A. Install a seperate cc in another folder, then get the file from there. in the future, PLEASE keep backups of everything. Please. IVa. VOCABULARY Object - an instance of a class. Class - Classes are basically categories of objects. There are devices, TDExplosives, rounds, magazines, actors, AHumans, and many more. This guide is here to help familiarize yourself with as many of them as possible. Gib - something that an object (like an actor or device) expels when it reaches its woundLimit or ImpulseGibThreshold. Like the little bits of gun that appear when an existing gun is destroyed. Sharp - when you zoom in using the "J" key, it's said that you are in sharp mode, which affects accuracy and weapon shake. Actor - Something that you can control in-game, like a clone, a robot, or a dropship. Material - stuff like concrete, rock, dirt, sand, plant, etc. Different ones are harder to break through than others. Look in materials.ini for a listing of the different attributes for materials. Sprite - your average image, in .bmp format. IVb. THE VARIABLES Before we get into the classes, lets start off with what all the variables mean. In case you don't know, pretty much the only thing you'll be doing while modding CC is changing variables. Use ctrl-F to search for a specific variable you want to know about. Now then, on to business. InstanceName - Yes, this is important. This determines the name of the object you are defining in the lines to come. MAKE SURE that your instance names are unique relative to those in Base.rte and try and make them different than what another modder would use to avoid confusion between mods. Mass - this determines how much force is needed to accelerate the object. A rocket with high mass will have a significantly harder time rocketing upward than an empty rocket. Same with a clone or robot using a jetpack. It also determines how much force is applied to whatever is firing out the object. A gun that fires bullets with a high mass basically simulates a high amount of recoil. Also, the mass of the pixels that a jetpack emits determines how much upward force is applied by using the jetpack. Mass is used by almost every class, and is important when you are using something to provide a lot of thrust. LifeTime - This variable is used mostly by particle and pixel classes, and it determines, in milliseconds, how long the object stays around before disappearing. This helps create a range limit, which is useful for making sure a bullet doesn't fly around the map and smack you in the head. It's also used for limiting the range of grenades and other such explosives; the shorter the lifetime, the less range the grenade has. Sharpness - This is also used primarily with pixels and particles. This determines the kinds of materials the pixel or particle can pierce, and how easily it can pierce it. It also determines, to a point, how much damage a bullet can do. With 0 sharpness, it'll just bounce off everything. Experiment to find the correct sharpness for your bullets. HitsMOs/GetsHitByMOs - These variables determine whether it can hit things and whether it can get hit by things. For the most part, these should be the same throughout each class so that nothing wierd happens. Color stuff found throughout - This, interestingly enough, determines the color of anything that is not a sprite on the RGB scale. Simple enough. Trail stuff - This is found in the pixel class. The variables determine how long the pixel's trail is and the color of the trail. Material stuff - this is found in pretty much everything. It comes after the "Material = Material" line, which usually comes after some kind of AtomGroup or Atom line. It calls on a material (found in Materials.ini, check the file for what the variables mean), which determines a large number of things. It mostly affects what the object acts like after it becomes static; that is, after it becomes an immobile part of the environment, like a rocket or dropship after it crashes. SpriteFiles - After "SpriteFile = ContentFile" comes "FilePath = Base.rte/Devices/whatever.bmp". This determines what image the particle, rocket, arm, body, head, device, etc. uses. After saving a sprite as a .bmp, change this line to point to your image file, starting with the cc folder. AngularVel - Used to determine how fast something is spinning when it spawns. Found on many different classes that I'm too lazy to list right now. FrameCount - Determines how many frames the game loads. If it's 1, then the only thing displayed is the sprite file you pointed to. Different numbers are used for different classes. If there are 2 or more frames that the game has to load, then it doesn't load up whatever.bmp at all; it loads up whatever000.bmo, whatever001.bmp, whatever002.bmp, etc. until the frame count is reached. Devices use 2 frames: one for when it's firing, one for when it's not. Various particles and such use it to cycle through various images based on... FrameRate - determines how many frames pass before the image is cycled to the next image based on the FrameCount. For example, the rocket's emissions cycle through a fireball, slightly less of a fireball, even less of a fireball, a lotta smoke, less smoke, even less smoke, etc. to simulate an actual rocket blast. Only used when the FrameCount is not cycled for another reason, like a device that's shooting or a rocket whose hatch is opening. SpriteOffset - Used to say where a sprite is located with X and Y values. Used to determine where the gun is when you're holding it, where a magazine is relative to a gun, and lots of other things. Change until the sprite is in the right place. Yay. AutoGenerate/Resolution/Depth/DeepCheck/others that aren't listed here - Don't touch. Really. If you know what they do and are sure you know what you're doing, then use caution. But try not to mess with them. Spread - This Determines the spread that objects are spewed out at (just not with guns; that's a different variable). Used with emissions, gibs, and a few others. Jetpacks and rocket thrusters have a low spread, while grenades and such spew things at a high spread. I forget the max spread, but I think it's 3.14. Max/MinVelocity - This sets the range of speed that objects are spewed out at (again, not with guns). For grenades and gibs and such, it's mostly there to set how fast the stuff moves and the variety of speeds they are spewed at. For emissions, the average velocity things are emitted at sets how much push the emission gives, along with the mass (acceleration * mass = force). The faster a jetpack spews pixels, the more lift it provides. sounds of every kind - there are generally 2 kinds of sounds. The first simply has a file path pointing to the .wav file to play at the time indicated by the name of the kind of sound (like fire sound or reload sound) and the second calls a sound in sounds.ini. Just look in the file for a self-explanatory example of how that's set up. EmissionCountLimit - used with emissions, determines the number of emissions that an emitter can spew before disappearing. EmissionsIgnoreThis - sets whether the emissions spewed ignore the emitter and the thing the emitter is attached to. With it on, for example, the fireballs that the main thruster of a rocket spews doesn't do any damage to the rocket itself if it should, for some reason, hit it. ParticlesPerMinute - determines how many particles are spewed out over the course of a minute. BurstSize - Determines the number of particles that are emitted every time the emitter emits. Emissiony! BurstScale - ??? BurstDamage - ??? BurstTriggered - ??? EmissionDamage - How much damage is applied to the emitting object per emission. Used to make actors and rockets lose health over time (make it negative for regeneration!). RestThreshold - This determines how slowly an object needs to be going to become static; that is, it becomes the material it was assigned, like with crashed rockets. Mostly used with TDExplosives, which are set at -500 so they never come to rest. Entry/Exitwound - the line after this holds the kind of emitter that appears at the spot where a bullet enters/exits an object. Used to create flesh wounds that drip blood, oil leaks, and other such things. Some, like dent metal, are merely cosmetic and don't emit anything. EntryWound is used for a bullet that enters and doesn't leave, and exitWound is used for a bullet that just keeps on going through. TriggerDelay - This is used in TDExplosives and determines how many millisecons pass before the grenade disappears and leaves particles (specified later in the class) in its wake to fly all over. ParticleCount - This determines how many bullets are fired when the round is fired. Used for shotguns and to make various weapons do more damage (though the spread of the bullets must be 0 for it to not act like a shotgun). Shell - this is the object that is ejected whenever the associated round is fired. Used for shotgun casings and such. Can be set to None. FireVelocity - Determines how fast the bullet is moving when it spawns. Watch for recoil. ShellVelocity - Determines how fast the shell is moving when it spawns. Seperation - Determines how far apart particles are when they come out of a gun. Need confirmation on this. RoundCount - Determines the number of rounds that can be fired from a magazine before the magazne needs to be reloaded. RTTRatio - Round-to-tracer-ratio, it determines how many rounds are fired before a tracer round is fired, after which the count starts again. 0 means no tracer, and I THINK that 2 means every other shot is a tracer. NOT SURE on that. Regular/TracerRound - Determines what is fired when you pull the trigger, and is defined in the magazine. The main round is fired by default, but every nth (where n is the RTTRatio) shot will be a TracerRound. Both a normal round and a tracer round are complete rounds of their own; one does not need to be a copy of the other. GoldCost - Determines how much gold a weapon/actor/whatever costs. Can be negative. StanceOffset/SupportOffset/SharpStanceOffset - These are in devices.ini and change the location of the main hand, the support hand, and how much they move (or something like that) when moving into sharp. SharpLength - How Far the zoom is for the device. Also changes the red sharp dots along with the zoom. RateOfFire - How many shots per unknown-interval-of-time. ReloadTime - In milliseconds. FullAuto - Whether or not holding down the fire button has any effect. Shakerange - How much the weapon moves when fired from normal position. Has an effect on accuracy during sustained fire. SharpShakeRange - Same, but in sharp. Should be less. NoSupportFactor - The shake range without the supporting arm. ParticleSpreadRange - quite simply, the accuracy. Determines the number of degrees in which the bullet travels relative to the way the gun is pointing. 0 is perfect accuracy. ShellSpreadRange - Same, but it determines the accuracy of the shell. Not too important to the functionality of the gun. ShellAngVelRange - From 0 to the number, the range of the speeds that the shells rotate at. MuzzleOffset - Changes where the bullets come out, as well as the muzzle flash. Make sure it lines up with the barrel of the gun. EjectionOffset - where the shell spawns. ImpulseGibThreshold - How fast an object has to hit another object for it to gib into its gibs. Used for impact explosions. GibWoundLimit - How many times an object must be shot before it gibs. Health - the health of the actor. CharHeight - affects where the health number is, as well as (maybe) the point at which a ship resides when it comes to the refund point. JumpTime - How long, in seconds, the jetpack button can be held before running out of fuel. Velocity - How fast and in which direction a rocket is moving when it spawns at the top of the screen. Negative Y values make the rocket go upwards. HatchDelay - The delay between hitting the eject button and when the cargo is spewed out. If it's not here, then it's probably absolutely self-explanatory. That simple. IVc. THE CLASSES MOPixel - This is a pixel. Really. It is used for pretty much everything that is launched out at any speed, including bullets, grenade fragments, jetpack emissions, etc. Grenades and emitters call on pixels defined in their own class, but rounds usually declare the pixel inside the round declaration- that is, instead of declaring the pixel in effects.ini and calling it in ammo.ini, it is simply put directly into the round. Basic Form: Code: AddEffect = MOPixel InstanceName = Grenade Fragment Gray //name Mass = 0.15 //how much force is applied in various cases, like emissions and guns LifeTime = 350 //how long in milliseconds the pixel lasts Sharpness = 20 //Determines how easily it can pierce different materials HitsMOs = 1 //whether or not it can hit things, usually on GetsHitByMOs = 0 //whether or not it can get hit, usually off Color = Color R = 143 //amount of red in the color G = 143 //amount of green in the color B = 143 //amount of blue in the color Atom = Atom Material = Material CopyOf = Bullet metal //which material from materials.ini it is, affects bounciness and some other factors TrailColor = Color R = 155 G = 155 B = 155 TrailLength = 25 //determines how long the trail is MOSParticle - This is basically a pixel with an image attached. It still only has a collision of 1 pixel, however, so the functionality is the same, save for the image. Code: AddEffect = MOSParticle InstanceName = Main Thruster Blast Ball 1 Mass = 9 RestThreshold = -1 //the point at which the object becomes static. LifeTime = 300 Sharpness = 0.1 HitsMOs = 1 GetsHitByMOs = 0 SpriteFile = ContentFile FilePath = Base.rte/Effects/FireBlast01.bmp //image path FrameCount = 22//number of images loaded SpriteOffset = Vector //Where the particle is relative to its collision. Somehow. X = -10 Y = -10 AngularVel = 60 //how fast it rotates Atom = Atom Material = Material CopyOf = Air Blast TrailLength = 0 Framerate = 0 //How fast the frames cycle MOSRotating - This is much like a particle. Almost exactly like a particle. However, its collision goes throughout the sprite, allowing for more realistic impacts with terrain. Usually used for shells. Also has a more complicated way to set the material. Code: AddAmmo = MOSRotating InstanceName = Cannon Particle Mass = 5 LifeTime = 1500 Sharpness = 20 HitsMOs = 1 GetsHitByMOs = 1 SpriteFile = ContentFile FilePath = Base.rte/Devices/Cannon/CannonRound.bmp FrameCount = 1 SpriteOffset = Vector X = -2 Y = -2 AtomGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Bullet metal Resolution = 2 Depth = 0 DeepGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Bullet casing Resolution = 4 Depth = 1 DeepCheck = 0 Rounds - Rounds are what is used by a gun (well, more specifically, the magazine of a gun). They can be anything from actors to particles to pixels. Most often, rounds are pixels, at least with normal guns. If the round is a pixel or particle, it is usually defined inside the round. Otherwise, it is defined before and the round merely calls on it. The first example creates an MOPixel in the middle of the round, while the last one simply calls on a TDExplosive. Code: AddAmmo = Round InstanceName = Round SMG ParticleCount = 1 //number of particles to expel at one time Particle = MOPixel InstanceName = Particle SMG Mass = 0.008 RestThreshold = 500 LifeTime = 1500 Sharpness = 250 HitsMOs = 1 GetsHitByMOs = 0 Color = Color R = 143 G = 143 B = 143 Atom = Atom Material = Material CopyOf = Bullet metal TrailColor = Color R = 155 G = 155 B = 155 TrailLength = 25 Shell = MOSParticle //whether it has a shell or not CopyOf = Casing //what the shell is FireVelocity = 80 //how fast the particle's initial speed is ShellVelocity = 10 //how fast the shell is ejected Separation = 5 //distance between shots in a single round AddAmmo = Round InstanceName = Round Cannon ParticleCount = 1 Particle = TDExplosive CopyOf = Frag Shell Shell = MOSRotating CopyOf = Cannon Casing FireVelocity = 90 ShellVelocity = 10 Separation = 5 Magazines - Magazines are what the device calls on to know what to fire. They also include what sprite the magazine is when it's both on the gun and ejected from the gun. Calls on 1 or 2 rounds, and includes such things as the number of rounds it holds. Code: AddAmmo = Magazine InstanceName = Magazine SMG Mass = 2 HitsMOs = 0 GetsHitByMOs = 0 SpriteFile = ContentFile FilePath = Base.rte/Devices/SMG/MagSMG2.bmp FrameCount = 1 SpriteOffset = Vector X = -3 Y = -4 EntryWound = AEmitter CopyOf = Dent Metal //what emitter appears when its shot ExitWound = AEmitter CopyOf = Dent Metal //same, but out the back AtomGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Bullet metal Resolution = 2 Depth = 0 DeepGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Bullet metal Resolution = 3 Depth = 1 DeepCheck = 1 JointStrength = 200 JointStiffness = 1 JointOffset = Vector X = 0 Y = -3 ParentOffset = Vector X = 1 Y = 0 DrawAfterParent = 0 RoundCount = 30 //number of rounds RTTRatio = 4 //Determines how often the tracer round is shot RegularRound = Round CopyOf = Round SMG //the default round for the weapon TracerRound = Round CopyOf = Round SMG Tracer //the tracer round, fired based on the RTTRatio AddGib = Gib GibParticle = MOPixel //what the gib is CopyOf = Spark Yellow 1 //the gib Count = 5 //how many gibs Spread = 3.14 //in which directions the gibs go MaxVelocity = 20 //max speed of the gibs MinVelocity = 8 //min speed of the gibs AddGib = Gib GibParticle = MOSParticle CopyOf = Metal Shard A Count = 4 Spread = 3.14 MaxVelocity = 15 MinVelocity = 5 GibWoundLimit = 1 //number of times it's shot before it gibs Device - Devices are anything found under weapons and tools, save for TDExplosives. They Include pretty much everything about the gun not already defined by the round/magazine. Code: AddDevice = HDFirearm InstanceName = SMG Mass = 10 HitsMOs = 0 GetsHitByMOs = 1 SpriteFile = ContentFile FilePath = Base.rte/Devices/SMG/SMG.bmp FrameCount = 2 SpriteOffset = Vector X = -7 Y = -4 EntryWound = AEmitter CopyOf = Dent Metal ExitWound = AEmitter CopyOf = Dent Metal GoldCost = 20 //how much it costs; can be negative AtomGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Gun metal Resolution = 4 Depth = 0 DeepGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Gun metal Resolution = 4 Depth = 10 DeepCheck = 1 JointStrength = 75 JointStiffness = 0.5 JointOffset = Vector X = -3 Y = 3 DrawAfterParent = 0 StanceOffset = Vector X = 6 Y = 5 SharpStanceOffset = Vector X = 9 Y = -1 SupportOffset = Vector X = 6 Y = 3 SharpLength = 165 //how far the zoom is Magazine = Magazine CopyOf = Magazine SMG //which magazine to use ParentOffset = Vector X = 2 Y = 1 Flash = Attachable CopyOf = Muzzle Flash SMG //muzzle flash. Used whenever a round is shot. FireSound = Sound AddSample = ContentFile FilePath = Base.rte/Devices/SMG/M1601.wav AddSample = ContentFile FilePath = Base.rte/Devices/SMG/M1602.wav AddSample = ContentFile FilePath = Base.rte/Devices/SMG/M1603.wav AddSample = ContentFile FilePath = Base.rte/Devices/SMG/M1604.wav AddSample = ContentFile FilePath = Base.rte/Devices/SMG/M1605.wav AddSample = ContentFile FilePath = Base.rte/Devices/SMG/M1606.wav EmptySound = Sound AddSample = ContentFile FilePath = Base.rte/Devices/EmptyClick3.wav ReloadStartSound = Sound AddSample = ContentFile FilePath = Base.rte/Devices/ReloadStart.wav ReloadEndSound = Sound AddSample = ContentFile FilePath = Base.rte/Devices/ReloadEnd.wav RateOfFire = 800 //how fast it fires ReloadTime = 1500 //how long, in milliseconds, it takes to reload FullAuto = 1 //if holding down fire works or not FireIgnoresThis = 0 ShakeRange = 4 //affects accuracy SharpShakeRange = 1 NoSupportFactor = 5 //affects accuracy with only one arm ParticleSpreadRange = 3 //accuracy ShellSpreadRange = 8 ShellAngVelRange = 2 MuzzleOffset = Vector //changes where the bullet comes out X = 10 Y = 0 EjectionOffset = Vector //changes where the shell comes out X = 1 Y = -1 //GIBS GO HERE TDExplosive - Explosives are pretty much grenades. After the delay has passed, they gib. Quite simple. Also the round of choice for RPGs and other impact explosions. Code: AddDevice = TDExplosive InstanceName = Frag Grenade Mass = 2 RestThreshold = -500 HitsMOs = 1 GetsHitByMOs = 0 SpriteFile = ContentFile FilePath = Base.rte/Devices/FragGrenade.bmp FrameCount = 1 SpriteOffset = Vector X = -3 Y = -4 EntryWound = AEmitter CopyOf = Dent Metal ExitWound = AEmitter CopyOf = Dent Metal GoldCost = 5 AtomGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Gun metal Resolution = 2 Depth = 0 DeepGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Gun metal Resolution = 4 Depth = 10 DeepCheck = 1 JointStrength = 75 JointStiffness = 0.5 DrawAfterParent = 1 DetonationSound = Sound AddSample = ContentFile Path = Base.rte/Sounds/Explode2.wav StanceOffset = Vector X = -12 Y = -5 StartThrowOffset = Vector X = -12 Y = -5 EndThrowOffset = Vector X = -12 Y = -5 TriggerDelay = 2500 //how long, in milliseconds ParticleNumberToAdd = 10// how many particles to gib upon the end of the delay AddParticles = MOSParticle //the kind of gib CopyOf = Side Thruster Blast Ball 1 //the gib ParticleNumberToAdd = 20 AddParticles = MOPixel CopyOf = Grenade Fragment Gray ParticleNumberToAdd = 20 AddParticles = MOPixel CopyOf = Grenade Fragment Yellow ParticleNumberToAdd = 30 AddParticles = MOPixel CopyOf = Air Blast Actor - There is an actor class that the game doesn't use that is pretty much just something with a health variable. I suppose it's useful for a few things. AHuman - These are your robots, your clones, and your other things that walk around shooting stuff. Used for anything that walks around. It calls on many other attachable classes, such as the head, the arms, the hands, the feet, the legs, and others. All of the attachables are probably self-explanatory by now. Code: AddActor = AHuman InstanceName = Blue Clone Mass = 35 //affects how easily it is for the jetpack to lift it Position = Vector X = 520 Y = 400 HitsMOs = 1 GetsHitByMOs = 1 SpriteFile = ContentFile FilePath = Base.rte/Actors/Clones/Blue/PlayerBody.bmp FrameCount = 1 SpriteOffset = Vector X = -6 Y = -10 EntryWound = AEmitter CopyOf = Wound Flesh Entry ExitWound = AEmitter CopyOf = Wound Flesh Exit GoldCost = 70 AtomGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Flesh Resolution = 2 Depth = 0 DeepGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Flesh Resolution = 4 Depth = 6 DeepCheck = 1 BodyHitSound = Sound CopyOf = Flesh Body Blunt Hit PainSound = Sound CopyOf = Human Pain DeathSound = Sound CopyOf = Human Death DeviceSwitchSound = Sound CopyOf = Device Switch Status = 0 Health = 100 // how much health can be lost before it becomes static and the rest of the body parts gib. Team = 0 AimAngle = 0 AimDistance = 30 CharHeight = 85 //affects where the health indicator is HolsterOffset = Vector X = -6 Y = -4 Head = Attachable CopyOf = Blue Clone Head ParentOffset = Vector X = -1 Y = -9 Jetpack = AEmitter CopyOf = Jetpack Nozzle //determines the emitter that begins emitting when you hit the jetpack key. ParentOffset = Vector X = -3 Y = -3 JumpTime = 4 // How long you can hold the jetpack button FGArm = Arm CopyOf = Blue Clone FG Arm ParentOffset = Vector X = -4 Y = -6 BGArm = Arm CopyOf = Blue Clone BG Arm ParentOffset = Vector X = 4 Y = -7 FGLeg = Leg CopyOf = Blue Clone Leg ParentOffset = Vector X = -1 Y = 1 BGLeg = Leg CopyOf = Blue Clone Leg ParentOffset = Vector X = 2 Y = 1 Hand = AtomGroup CopyOf = Hand FGFootGroup = AtomGroup CopyOf = Foot BGFootGroup = AtomGroup CopyOf = Foot IdleLimbPath = LimbPath InstanceName = Clone Idle Path StartOffset = Vector X = 3 Y = 10 StartSegCount = 0 SlowTravelSpeed = 0.1 NormalTravelSpeed = 0.5 FastTravelSpeed = 1.5 PushForce = 2000 WalkLimbPath = LimbPath CopyOf = Clone Walk Path CrouchLimbPath = LimbPath CopyOf = Clone Crouch Path CrawlLimbPath = LimbPath CopyOf = Clone Crawl Path ClimbLimbPath = LimbPath CopyOf = Clone Climb Path JumpLimbPath = LimbPath CopyOf = Clone Jump Path DislodgeLimbPath = LimbPath CopyOf = Clone Dislodge Path AddGib = Gib GibParticle = MOPixel CopyOf = Drop Blood Count = 100 Spread = 3.14 MaxVelocity = 20 MinVelocity = 8 AddGib = Gib GibParticle = MOSParticle CopyOf = Meat Ball A Count = 17 Spread = 3.14 MaxVelocity = 15 MinVelocity = 5 AddGib = Gib GibParticle = MOSParticle CopyOf = Bone Shard A Count = 7 Spread = 3.14 MaxVelocity = 15 MinVelocity = 5 AddGib = Gib GibParticle = MOSParticle CopyOf = Metal Shard A Count = 5 Spread = 3.14 MaxVelocity = 15 MinVelocity = 5 AddGib = Gib GibParticle = MOSRotating CopyOf = Flesh Chunk 1 Count = 1 Spread = 3.14 MaxVelocity = 10 MinVelocity = 1 AddGib = Gib GibParticle = MOSRotating CopyOf = Flesh Chunk 2 Count = 1 Spread = 3.14 MaxVelocity = 10 MinVelocity = 1 AddGib = Gib GibParticle = MOSRotating CopyOf = Flesh Chunk 3 Count = 1 Spread = 3.14 MaxVelocity = 10 MinVelocity = 1 GibImpulseLimit = 1800 GibWoundLimit = 8 ACRocket - This is, of course, a rocket. Used for dumping cargo and the occasional rocket battle. Code: AddActor = ACRocket InstanceName = Rocket MK1 Mass = 800 Position = Vector X = 520 Y = 20 Velocity = Vector //how fast it's moving when it's spawned X = 0 Y = -5 HitsMOs = 1 GetsHitByMOs = 1 SpriteFile = ContentFile FilePath = Base.rte/Actors/Rockets/Body.bmp FrameCount = 6 SpriteOffset = Vector X = -18 Y = -63 EntryWound = AEmitter CopyOf = Gas Leak ExitWound = AEmitter CopyOf = Gas Leak GoldCost = 50 AtomGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Rocket engine metal Resolution = 3 Depth = 0 DeepGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Rocket engine metal Resolution = 20 Depth = 4 DeepCheck = 1 BodyHitSound = Sound CopyOf = Metal Body Blunt Hit Status = 0 Health = 100 //how much health ImpulseDamageThreshold = 5000 //how hard it hits things before it starts taking damage Team = 0 AimAngle = 0 AimDistance = 30 CharHeight = 150 //how high up the heart icon is HolsterOffset = Vector X = -6 Y = 14 RLeg = Leg CopyOf = Rocket Leg ParentOffset = Vector X = 13 Y = 26 LLeg = Leg CopyOf = Rocket Leg ParentOffset = Vector X = -13 Y = 26 RFootGroup = AtomGroup CopyOf = Rocket Landing Gear Foot Right LFootGroup = AtomGroup CopyOf = Rocket Landing Gear Foot Right MThruster = AEmitter //the thruster used when hitting W CopyOf = Rocket Main Thruster ParentOffset = Vector X = 0 Y = 36 RThruster = AEmitter //hit D CopyOf = Rocket Side Thruster ParentOffset = Vector X = 10 Y = -52 LThruster = AEmitter //Hit A CopyOf = Rocket Side Thruster ParentOffset = Vector X = -11 Y = -52 URThruster = AEmitter //hit S CopyOf = Rocket Side Thruster ParentOffset = Vector X = 15 Y = 16 ULThruster = AEmitter //hit S CopyOf = Rocket Side Thruster ParentOffset = Vector X = -16 Y = 16 HatchDelay = 250 //how long between hitting eject and the actual ejection HatchOpenSound = Sound AddSample = ContentFile Path = Base.rte/Actors/Rockets/HatchOpen.wav AddExit = Exit Offset = Vector X = 20 Y = -30 Velocity = Vector X = 5 Y = 0 AddExit = Exit Offset = Vector X = -20 Y = -30 Velocity = Vector X = -5 Y = 0 // ExitInterval = 1000; RaisedGearLimbPath = LimbPath InstanceName = Rocket Gear Raised Path StartOffset = Vector X = 5 Y = -13 StartSegCount = 0 SlowTravelSpeed = 0.25 NormalTravelSpeed = 0.8 FastTravelSpeed = 1 PushForce = 20000 LoweredGearLimbPath = LimbPath InstanceName = Rocket Gear Lowered Path StartOffset = Vector X = 5 Y = 11 StartSegCount = 0 SlowTravelSpeed = 0.25 NormalTravelSpeed = 0.8 FastTravelSpeed = 1 PushForce = 20000 LoweringGearLimbPath = LimbPath InstanceName = Rocket Gear Lowering Path StartOffset = Vector X = 5 Y = -10 StartSegCount = 0 AddSegment = Vector X = 30 Y = 3 AddSegment = Vector X = -2 Y = 13 AddSegment = Vector X = -10 Y = 8 SlowTravelSpeed = 0.25 NormalTravelSpeed = 0.5 FastTravelSpeed = 1 PushForce = 20000 RaisingGearLimbPath = LimbPath InstanceName = Rocket Gear Raising Path StartOffset = Vector X = 5 Y = 8 StartSegCount = 0 AddSegment = Vector X = 11 Y = -13 AddSegment = Vector X = -11 Y = -10 SlowTravelSpeed = 0.25 NormalTravelSpeed = 0.5 FastTravelSpeed = 1 PushForce = 20000 CrashSound = Sound CopyOf = Metal Body Blunt Hit Large AEmitter - These are the jetpacks, the rocket thrusters, the flesh wounds that drip blood, and other such things that fire out particles at a set rate until they hit their limit. Must be attached to another object to avoid lag, and so is used for thrusters and wounds, mostly. Don't make a round an emitter until someone figures out how to avoid the lag. Code: AddEffect = AEmitter InstanceName = Jetpack Mass = 0.0001 HitsMOs = 0 GetsHitByMOs = 0 SpriteFile = ContentFile FilePath = Base.rte/Actors/Clones/Jetpack.bmp FrameCount = 1 SpriteOffset = Vector X = -3 Y = -12 EntryWound = AEmitter CopyOf = Gas Leak ExitWound = AEmitter CopyOf = Gas Leak AtomGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Rocket engine metal Resolution = 2 Depth = 5 DeepGroup = AtomGroup AutoGenerate = 1 Material = Material CopyOf = Rocket engine metal Resolution = 3 Depth = 5 DeepCheck = 0 JointStrength = 10000 JointStiffness = 1 DrawAfterParent = 0 AddEmission = Emission EmittedParticle = MOPixel CopyOf = Jetpack Blast 1 Spread = 0.1 MaxVelocity = 24 MinVelocity = 12 AddEmission = Emission EmittedParticle = MOPixel CopyOf = Jetpack Blast 2 Spread = 0.15 MaxVelocity = 24 MinVelocity = 12 EmissionSound = Sound AddSample = ContentFile FilePath = Base.rte/Actors/Rockets/Thruster.wav LoopSetting = -1 // Means loop infinitely until stopped BurstSound = Sound AddSample = ContentFile FilePath = Base.rte/Actors/Rockets/ThrusterStart.wav EndSound = Sound AddSample = ContentFile FilePath = Base.rte/Actors/Rockets/ThrusterEnd.wav EmissionEnabled = 1 EmissionsIgnoreThis = 1 //Whether the emissions can hit the emitter/parent ParticlesPerMinute = 6000 //rate of emission BurstSize = 15 BurstScale = 1 BurstTriggered = 1 EmissionDamage = 0 //how much damage each emission does to the parent Flash = Attachable CopyOf = Muzzle Flash Pistol FlashOnlyOnBurst = 0 V. Helpful Links Unofficial FAQ Alenth's modding guide and guidelines VI. Misc. If I missed anything at all, or got something wrong, or needed confirmation on something, or anything of that sort, feel free to post and I'll update the appendix. I'll probably add in the dropship soon. That thing is wierd. [/long post] |
Author: | piezo [ Sat Jan 13, 2007 1:20 am ] |
Post subject: | |
Fearful_Ferret wrote: Appendix released! Please tell me anything I missed or anything that should be added or w/e. Hopefully, this will increase the average intelligence of the forums slightly. Maybe. At least it'll serve as a handy reference. Hey thanks for putting this together, and particularly for keeping the tone of the information at a professional level Good work! EDIT: hmm I think Alenth has a lot of what I detailed below already in his post. You guys need to combine your two guidelines Some notes: Entry and Exitwound emitters are kinda neat, Entrywound emitter is for when something manages to penetrate the material of the actor i.e. enters and stops. Exitwound emitter is for when something manages to pass through the actor completely i.e. enter AND exit the actor. TDExplosives, just wanted to put in a clarification regarding gibbing. After the triggerdelay has elapsed, the object doesn't actually gib (in terms of the code), but releases particles that you define. Similar to this is the actual gibbing code, which is what a lot of the impact explosives take advantage. The gib code is invoked when the TDExplosive suffers enough damage and releases particles specifically defined as gibs. The practical effect of this difference is that you can have a TDExplosive that will release green particles particles if the triggerdelay passes, and blue particles if it hits something. I'm gonna use it so that my tdexplosive based weapons don't hit my actors in the back of the head all the time I love TDExplosives. MOPixels are so passe... |
Author: | Striker26 [ Mon Mar 05, 2007 6:55 am ] |
Post subject: | |
yea....i dont think there is a fix for that...just load the index.ini through base.rte's |
Author: | Grif [ Tue Mar 20, 2007 8:32 pm ] |
Post subject: | |
Whomg. Well. To fire two different bullets, just make the tracer bullet type 2. So, instead of Code: RegularRound = Round CopyOf = Round Flak RegularRound = Round CopyOf = Round Flak Short TracerRound = None Put Code: RegularRound = Round CopyOf = Round Flak TracerRound = Round CopyOf = Round Flak Short I don't believe the muzzle flash can be a direct emitter, but, I could be wrong. In fact, I usually am. Answer 2. How thick is the shield? 1-2 pixels, and the game can have trouble detecting it. Try making it thicker, see that happens. Answer 3: Probably a combination of both. Too heavy, and it'll drag the actor down faster, too big, and it can hit dropship doors, etc on the way out. Answer 4: Not a clue. Does it have the same instancenames? |
Author: | JeCa [ Tue Mar 20, 2007 9:36 pm ] |
Post subject: | |
I'm sorry, but it doesn't seem like the tracer can do any harm really :/ . I've been fiddling around with the round a while and the tracer just doesn't have any effect. As for the muzzle thingy, it is possible to make a muzzle into an emitter, the only problem is that there's nothing to determine the amount of pixels every second, creating a O_o heavy recoil. For visual purpouse I replaced the muzzle with a jet flame, but it doesn't effect characters. And the gun is 10px wide at the thinest place. the strange thing here is that the guy usually is hurt when a shot hits the muzzle of the gun. Got no idea why that happens, since the wound is so randomly placed. . With the barret problem, yes I've re-checked everything again. Usually it works fine, but after I've cycled through the inventory a couple of times the game shuts when I get to the barret. That's the thing that puzzles me the most, that it usuallt works. Maybe it happens when the gun interracts with something. . Anyway, thanks for the reply. I'm gonna keep fiddling around some other day, when I have more time... |
Author: | Grif [ Tue Mar 20, 2007 9:42 pm ] |
Post subject: | |
Quote: I'm sorry, but it doesn't seem like the tracer can do any harm really :/ . I've been fiddling around with the round a while and the tracer just doesn't have any effect. Is it an independent round, or a "CopyOf" thing? And, no offense taken, I'm not at all the best one at this. Quote: As for the muzzle thingy, it is possible to make a muzzle into an emitter, the only problem is that there's nothing to determine the amount of pixels every second, creating a O_o heavy recoil. For visual purpouse I replaced the muzzle with a jet flame, but it doesn't effect characters. Oh, yeah. I suppose you could also make an Attachable that's an MOSParticle/Rotating. Quote: And the gun is 10px wide at the thinest place. the strange thing here is that the guy usually is hurt when a shot hits the muzzle of the gun. Got no idea why that happens, since the wound is so randomly placed. . No idea, then. Can't help, though I might be able to do something if you upload the mod. Quote: With the barret problem, yes I've re-checked everything again. Usually it works fine, but after I've cycled through the inventory a couple of times the game shuts when I get to the barret. That's the thing that puzzles me the most, that it usuallt works. Maybe it happens when the gun interracts with something. . It could be the game. I mean, the game's in a fairly early beta stage, it's still entirely possible there are glitches in the game. Quote: Anyway, thanks for the reply. I'm gonna keep fiddling around some other day, when I have more time... Your welcome, and, I hope you do. You seem a large bit more intelligent than most of the new members we get here, and, I hope you release a couple mods. |
Author: | JeCa [ Thu Mar 22, 2007 8:33 pm ] |
Post subject: | |
Ok I'll attach the entire weapon here. Also I found that the Flak has the same problem as the Barret Gun, but I still don't have a clue why it happens (probably what you said). However I don't have a mods.rte map, I simply put everything in the ordinary cevices.ini (very unproffessional I know, but I'll fix that some other day) so you have to manually copy the data from every file into your own system. However I've tried to make it as easy as possible by putting every piece of data in a file that says where it's supposed to be put. Allright, I'll try to respond to your post anyway. 1 The current code's Code: RegularRound = Round CopyOf = Round Flak TracerRound = Round CopyOf = Round Flak Short So it is a CopyOf thing, but from a different bullet than the regularround. 2 After some experimenting, I've realised that I can't make the muzzle into a working Emitter. Mostly because it only lasts as long as the flash's used to last. But how do you make the flash into an MOSRotating? There's nothing in the muzzle to determine the speed of the particle, so it'll only stay still in the air for one frame before it vanishes again. Or anyway that's my experience. Again I'd be really gratefull if you knew how to do it. And thanks for the last comment, I'll hope I'll stick around for some time (and manage to make that avatar to work...) Also the gun's still not extremely elaborate since It's my second mod that hasn't only been edits in the properties section. |
Author: | piezo [ Fri Mar 23, 2007 12:01 am ] |
Post subject: | |
JeCa wrote: I'm sorry, but it doesn't seem like the tracer can do any harm really :/ . I've been fiddling around with the round a while and the tracer just doesn't have any effect. You need to make sure that your RTT Ratio (I believe that's the variable) is higher than 0 of you are going to use tracers. The ratio determines how many regular rounds are fired before you fire a tracer. You can fire pretty much anything i.e. you could fire Green Clones as a regular round and fire Blue Clones as a tracer round. RegularRound = Round (you are indicating to the program you want to use a 'Round' object i.e. the object you defined using AddAmmo) CopyOf = Round Flak (you are indicating to the program that you wish to use a copy of an object that you've previously defined i.e. the AddAmmo Round object you've named 'Round Flak') So define your bullets using AddAmmo, use CopyOf to reference the objects. There is no mystery to the CopyOf command. Hope that helps. Posted after 2 minutes 22 seconds: oh yeah, jointstrength in the HDFirearm will determine how tightly an actor will hold a gun. The difference between pistol and flak cannon you are seeing is the fact that there is a greater chance that the flak cannon (owing to its larger size) may be hit by something i.e. downthrust of dropship. and knocking the weapon from the actor's grasp. |
Author: | JeCa [ Fri Mar 23, 2007 2:57 pm ] |
Post subject: | |
O thanks, that _did_ help. Yea, I knew how the CopyOf system worked (otherwise I wouldn't have found the magazine), but I had no idea whatsoever what RTT meant or what it did. Works perfectly now. Still I'm wondering, is it possible to make more it fire more kinds of bullets, like adding a second tracer or something? EDIT: Hmmmm, doesn't seem like those smileys worked as well as I had hoped... Guess I'll stick to the forum ones... |
Author: | Striker26 [ Fri Mar 23, 2007 8:50 pm ] |
Post subject: | |
yea ive wondered about shooting two rounds, but i dont know how to do it |
Author: | Huxley [ Sun Apr 01, 2007 9:08 pm ] |
Post subject: | |
I could use a bit of help, being the CC noob I am Quote: Abortion in file .\system\reader.ccp, line 453, because: Failed to open included data file in Base.rte/Index.ini at line 2! The last frame has been dumped to abortscreen.bmp This is after I 'installed' a few mods from here. But I don't exactly know if I did it right. I put new weapons in 'devices' and new clones and craft in 'actors.' All I did, there's nothing else. So was there something else I was supposed to do? |
Author: | Fish_poke [ Thu Apr 05, 2007 6:51 pm ] |
Post subject: | |
I have a question, is there a way to change the amount of gold you start with? Not exactly relating to the thread in general, just wondering. Anyway, I have no Corp. and not really into modding, but I will give this a shot. Make a high friction bullet mod maybe... Thanks for the guide |
Author: | Fearful_Ferret [ Fri Apr 06, 2007 12:03 am ] |
Post subject: | |
You can't start with more. You can make it so that something costs negative gold, but you cannot change the starting amount. |
Page 1 of 3 | All times are UTC [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |