recursal/Fanatic-Fandom huggingface dataset:
Exporting the Navmesh with Maya

Note: Maya 7 is used in this example, but newer versions may be used and the settings should be similar to those listed here. The Navmesh uses the standard wavefront.obj format.

> Go to File -> Export All Options Box
>
>

>
>
>
>

.

.

.

.

.

> Now make sure all your settings are identical to these below ->
>
>

.

> Just make sure that File Type is OBJexport and only 'Groups' and 'Materials' is selected.
>
>

>
>
>
>
> Click on the 'Export All' button. Now export it back to its original location ->
>
>
>
>
> C:\Program Files\EA GAMES\Battlefield 2\NavMesh\work\Mashtuur\_City\GTSData\output
>
>

>
>
> Overwrite the original infantry.obj.
>
>

>
>
> There! An edited Infantry navmesh ready for the game. Guess what you have to do now...
>
>

>
>
> That's right - start a new Maya scene and import the vehicle.obj
>
>

>
>
> AND REPEAT THE SAME PROCESS.
>
>

1. Check for islands and delete or attach them
2. Check for unmeshed areas that you could add navmesh to.
3. Export it to the above location except to obviously overwrite the vehicle.obj instead.

>
>
> Once you are sure you have a vehicle and infantry navmesh that only contain one island and cover all the parts of the level you want them to, it's time to get it in the game and test it.
>
>
Stair Gradients

**Stair Gradients**

 Based on tutorial by Rhino

This is some common info here for static modellers and the like who are modelling stairs. We need to keep in mind the max gradients players can climb stairs with the normal stair material.   This is useful for reference material to reduce the amount of time testing.

Stairs are visually just steps you walk up and down just like real life, like this one on my container crane:

But, in game, a ramp is used so
that a player can climb up and down. if we view the player col mesh we can see this:

This ramp has a unique material set to it called a stair material that enables players to climb grater gradients than they would
otherwise be able to and these materials don’t have to be used just on stairs, they can be used on other gradients too like a small invisible ramp on the edge of a pavement/sidewalk to help them get onto it.

The following are the max gradients a player can climb:

**Slope with a Non-Stair Materials like dirt: ("Grass",**
"Dirt", "Concrete", "Wood", "Sand",
etc.) [Results may vary slightly for each material]

* Can climb "comfortably" upto 40º
* Can just climb with a slight struggle somewhere between 40º and 45º
* Can not climb 45º

**Stairs with Normal Stair Materials: ("Stairs\_concrete",**
"Stairs\_metal", "Stairs\_wood")

* Can climb "comfortably" up to 50º
* Can just climb with a slight struggle up to 55º
* Can not climb 60º

**Stairs with Special "Stair Steep" Materials:**
("Stair\_Steep\_Metal" {Custom Material})

* Can climb "comfortably" up to 60º
* Can just climb with a slight struggle somewhere between 60º and 65º
* Can not climb 65º

**Note:** You shouldn't use a gradient on your stairs that a player will
struggle to climb up unless 100% necessary.
Easy Under-Overgrowth

i will show you how to create a Under/Overgrowth Environment in about 5 mins (also 4km Maps)

you need bf2\_tpaint ( or a coloured map Layers 1 - 3 )

Step 1

open up your map and go to the terrain editor and select the Undergrowth-Tool (1)
create 3 materials and use the first 3 coloured buttons [1] , [2] and [3] or it will not work (2)

OGimage4.jpg

add some stuff to the materials (not neccesary but it looks better in my case)

Step 2

press the Import DetailLayers button in the Toolbar (3)

OGimage6.jpg

now it should look something like this (Render-> Undergrowth Mode)

OGimage5.jpg

Step 3

go to the Overgrowth-Tool
now add also 3 materials and use the same coloured buttons like you did before in the Undergrowth-Tool ([1] , [2] and [3])

OGimage8.jpg

add your trees and bushes to the materials and save !

Step 4

DONT CLOSE the editor yet
just go into your mapfolder and select your Undergrowth.raw and copy it
then go into the Overgrowth folder and delete the Overgrowth.raw and insert the undergrowth.raw
rename undergrowth.raw to overgrowth.raw

Step 5

go back into the editor and reload your map
now it should look something like that

OGimage7.jpg

OGimage2.jpg

and thats it ! really easy not ?

this is my first tutorial and i dont have any xpierience with that so if you dont understand sth just ask

and the last: one of my 4km Maps more than 200k trees @ the beginning and now around 63k trees (still alot)

OGimage3.jpg
Porting P4F Weapons to BF2

by BobtheDino

So I'll start with a simple tip on porting p4f weapons.

1) Most of the p4f weapons are able to be opened and view with the bfmeshviewer tool, but importing them using the POE max tools often leads to errors. A simple work around that works most of the time, open the model in the meshviewer and then save as a new model with what ever name. this new save will screw up the format so if you reopen it in the meshviewer it will look broken, but don't worry if you import it using the POE tools most of the time all the pieces will be there. The next step is rearranging those pieces to fit an existing animation.

2) However, sometimes there will be an issue were some pieces are completely lost in the save. I don't know why but the last solution for this is to use the modelviewer again and export as a format that are usable by the modeling software you are using. I use obj format because it seems to work well, as it keeps the UVs just fine (but it wont preserve the material or shader data, which you can just reset later). One issue with using the export function in the modelviewer is that it throws all of the LOD's into the same layer with the same position so selecting them to separate may become impossible. To avoid this before your use the export tool select each object in the LOD's and move them slightly with the vertex transformation tool. For example, I have 2 LODs in one model. the first I can leave alone since I only need to separate these two LOD's. For the second i open the "vertex transform" tool under the "tools" menu and select bone 0 first and then maybe make an offset of 2.0 and select move. then i do that for each other bone so that all the parts are offset and can be easily separated.

okay that was rather a simple tutorial/ tip but further tips and tutorials can be simple or involved and don't have to pertain specifically to p4f. Just don't post anything that has a direct link to non whitelisted content and we should all be fine.
Using STL Check on a Mesh

## STL Check

The STL Check modifier
checks an object to see if it's correct for exporting to an STL (stereolithography) file format. Stereolithography files are used in 3d
modeling to produce physical models, such as with a 3d printer In this case it is used to check that the model is 'manifold', which is a requirement for your COL3/AImesh.

* use the dropdown menu and scrolldown to select 'STL Check'

You first need to check the 'check' box as in
the example. In this case it shows 'No Errors' as the 'Status' box confirms.
.You can also check the different types of errors that your mesh could have.
Recommend to check, 'Everything' as shown below:

[Stl\_check\_lg.png]

clipboard03pq.jpg

Let's delete a face to show what happens when there is an error. So, rerunning
STL Check now shows 3 errors.

clipboard05h.jpg

In this case it is pretty obvious where th
error(s) are. Most of the time they are buried deep inside the mesh. You need
to be able to see inside the mesh. If you switch to 'wireframe' view, this will
highlight the problem area(s) in red.

clipboard06vf.jpg

Note that every time you move the screen even
slightly, the error(s) 'disappear'. This means that the errors will not be
highlighted anymore. You just have to keep rechecking the 'Check' box.

Also, never correct the errors with the STL Check 'on'. Note where the error is and delete the STL
Check. Leaving STL Check modier enabled while editing can cause issues in the
STL Check working correctly.

So, after making the corrections that are needed, and then redo the STL Check process. Repeat the process until there are no more STL errors. This is also a good final check after making any other adjustments to the mesh.
Editing the Soldiers Kit - SkinnedMesh - Part 2

Editing the Soldiers Kit - Part 2

WORKING WITH THE KIT MESHES(IMPORTING, EDITING, DELETING)

Let's get down to work.

* Using the BF2 3ds Max tool, import the soldier skeleton - "3p\_setup.ske"

("BF2->BF2 Utilities->Skeleton Importer")

(screenshot 8)

3p\_setup.ske is the full soldier skeleton third person camera

1p\_setup.ske is the hand/arm skeleton for first person camera (when in game you see your arms).

* After the skeleton is imported("3p\_setup.ske"), import the kit meshes of faction Spetznaz through the file spetz\_kits.con

("BF2->BF2 Utilities->Mesh Importer->scenes/objects/kits/spetz/spetz\_kits.con")

(screenshot 9)

The meshes should be like the screenshot below.

(screenshot 10)

Now find the AT-soldier kit meshes.

* Because these are all the kit meshes(Engineer, Medic, Support etc) go to "BF2->BF2 Utilities->Mesh Importer->scenes/objects/kits/spetz/", and find the "Spetsnaz\_AT.con file".

* Open it with simple text editor.

The sixth line is what geom is responsible for kit viewing in game - "ObjectTemplate.geometry.kit 2"

The seventh line "ObjectTemplate.geometry.dropGeom 13" - is the kit bag (Drops when the soldier dies).

(screenshot 11)

Now we know that AT-soldier meshes are the "geom2".

* Open "Select Objects" - "H" hotkey

(screenshot 12)

* or by using the the select object icon in the toolbar

(screenshot 13)

The window "Select Objects" lists all that was imported - the soldier 3P skeleton and the kits meshes for Spetznaz.

* Find the "geom2" and select all that is attached to it with "lod0" and "lod1" like on the screenshot below:.

(screenshot 14)

* Click on "Select", so that this will be selected in "Editing Window".
* Open the "RMB Menu" and hide all the unselected geoms with their lods and meshes - "Hide Unselected"

(screenshot 15)

Next, we will start editing the kit.

The task is fairly simple - select and delete the ERYX meshes.

* It Is simple to do that - through window "Select Objects" find the ERYX meshes, or in "Editing Window" and select it

(screenshot 16)

* Then, push the "Delete/Del" key on keyboard.

* Then save the project in ".max" format. For example - "tutor spetz.max"

* close the project.

Editing the Soldiers Kit - SkinnedMesh - Part 3
Road making by Jones

Since i had some time left i made you a quick tutorial which shows you how to do straight and advanced road markings for your map.
You will need the latest version of the bf2 editor and any image editingsoftware like adobe photoshop.

Load up your map in the editor and select the road tool, now to make a perfect straight road marking you only have to place four spline points on the map, two start and two end points, the first two points dont connect a road between them.
Roads always start at the second spline point!

road\_image3.jpg

As you can see in the image aboth i changed the fade distance from default to 0 at x and y axis, the result is that the texture is 100% printed on the ground without a fade.
You can use this setting for industrial lines, manholes, parking lots and pedestrian crossings to get the best result ingame!

road\_image5.jpg

Thats how it looks with splines disabled in editor, now where we have the road markings how we want them you can save and close the edtor.
Next we will edit the colormaps of the mapfolder becaue the splines usualy generate a colored line onto them, the following image describes itself:

road\_image4.jpg

Now when you finsished everything and saved the colormaps you can go and test the result ingame, here you got a ingame screenshot of how mine turned out:

road\_image7.jpg

And here some other examples of what you can easy do with those settings:

road\_image6.jpg

road\_image2.jpg

road\_image1.jpg
Understanding the BF2 Map Selection List

**BF2 map selection list explained**

... Because the The singleplayer BF2 map selection list is really a bad hack for BF2.

This is for those that are confused that the map selection list doesn't work as expected.   It is because BF2 was released with coop only and with no singleplayer mode support, so it was added as a hack.

BF2142 was released with planned singleplayer support and works as expected.    The sp map selection list is tied to the conquest map selections available in the menu.  If the map's description file lists 16, 32, and 64 cq gamemodes available, your going to see all three sp game modes listed as soon as you list one.   But, if you don't have sp set up correctly, you will get a map not selected error message. You need to add ai='1' for each conquest line that you want to have show up in SP mode, as well as the corresponding sp mode (sp1 for 16 player level, sp2 for 32 and sp3 for 64). So a map with all three sp levels would have a desc file with this:

> **CODE**
>
>

> <modes>
>
>
>
>  <mode type="gpm\_cq">
>
>  < maptype ai="1" players="16" type="assault" locid="GAMEMODE\_DESCRIPTION\_assault"></maptype>
>
>  < maptype ai="1" players="32" type="assault" locid="GAMEMODE\_DESCRIPTION\_assault"></maptype>
>
>  < maptype ai="1" players="64" type="assault" locid="GAMEMODE\_DESCRIPTION\_assault"></maptype>
>
>  </mode>
>
>  <mode type="gpm\_coop">
>
>  < maptype ai="1" players="16" type="assault" locid="GAMEMODE\_DESCRIPTION\_COOP\_assault"></maptype>
>
>  < maptype ai="1" players="32" type="assault" locid="GAMEMODE\_DESCRIPTION\_COOP\_assault"></maptype>
>
>  < maptype ai="1" players="64" type="assault" locid="GAMEMODE\_DESCRIPTION\_COOP\_assault"></maptype>
>
>  </mode>
>
>  <mode type="sp1"></mode>
>
>  <mode type="sp2"></mode>
>
>  <mode type="sp3"></mode>
>
>
>
>
>  </modes>
>
>

 Now, to only display sp 64, it would need to be changed to (only have AI='1' in conquest for the 64 player gamemode):

> **CODE**
>
>

> <modes>
>
>
>
>  <mode type="gpm\_cq">
>
>  < maptype players="16" type="assault" locid="GAMEMODE\_DESCRIPTION\_assault"></maptype>
>
>  < maptype players="32" type="assault" locid="GAMEMODE\_DESCRIPTION\_assault"></maptype>
>
>  < maptype ai="1" players="64" type="assault" locid="GAMEMODE\_DESCRIPTION\_assault"></maptype>
>
>  </mode>
>
>  <mode type="gpm\_coop">
>
>  < maptype ai="1" players="16" type="assault" locid="GAMEMODE\_DESCRIPTION\_COOP\_assault"></maptype>
>
>  < maptype ai="1" players="32" type="assault" locid="GAMEMODE\_DESCRIPTION\_COOP\_assault"></maptype>
>
>  < maptype ai="1" players="64" type="assault" locid="GAMEMODE\_DESCRIPTION\_COOP\_assault"></maptype>
>
>  </mode>
>
>
>
>  <mode type="sp3"></mode>
>
>
>
>
>
>
>  </modes>
>
>

 Its also important to note that the sp1 folder is for the 16 player level, sp2 for 32 and sp3 for 64. The sp menumap images that show up in the map preview, all start with sp1 and are only different in the player level, like sp1\_16\_menumap, sp1\_32\_menumap, sp1\_64\_menumap.
Caitlyn's Character's

**This page is a candidate for deletion.**

*Remember to check what links here and the page history before deletion.*

Tau is a tall, slender man with dorky black hair and bright blue eyes.

Kassi is a tall and slender girl with long black hair and bright blue eyes.

Braken is a tall and muscular man with short black hair and bright green eyes.

Jasmine is an average sized girl with long brown hair and brown eyes.

Basil is a tall

WIP THE BELL RANG GOTTA GO TO MATH LMAO

Noel Info
Setting up BF42 plugins for 3ds max

Installing Battlefield 1942 plugin for 3dsmax

The 3d models for Battlefield 1942 (BF42) are packed in an .rfa file archive, that you can be found in the following directory:

\EA GAMES\Battlefield 1942\Mods\bf1942\Archives

Then find standardmesh.rfa file archive. In order to open this archive we need the WinRFA application. This is application name is similar with winrar, the difference is winRFA used to read .rfa file archive, to extract 3d models or other components from battlefiled1942 game. You can get this software by downloading the Mod Development Toolkit (MDT) for battlefield1942 game which includes winRFA along with other mod tools for this game.

https://www.moddb.com/company/classic-battlefield-modding-group/downloads/bfmdt2-75

Run the MDT installer. The installer will extract all the tools into: C:\Program Files (x86)\EA Games\Battlefield Mod Development Toolkit.

WinRFA is located in the \RFA Tools subfolder.

Be aware that in the \3dsmax Tools, there is an installer for BF42 plugins, but these should only be used for 3dsmax 5 - 7.

For 3dsMax 8 and above use this this plugin:
https://www.moddb.com/mods/battlefield-2-play-for-free-mod/downloads/bf42-3dsmax-plugins-2762

(This is originally from Jan Baker's site: http://janbakerblogs899.blogspot.com/2013/04/modding-extract-battlefield-1942-model\_25.html)

Extract the zip file to your desktop. It will create two directors, named plugins and scripts. Copy the files in each folder into the same folder in your version of 3ds Max. For 3dsMax 2020, copy files in the "plugins" into the matching folder in your 3dsmax folder:

\Program Files\Autodesk\3ds Max 2020\plugins

Then copy the files in the "scripts" folder into same folder in your 3ds max folder, such as:

\Program Files\Autodesk\3ds Max 2020\plugins\scripts

After all steps are finished, then start the 3ds Max Application, There is a new tab in the top menubar named "Battlefieldtools"
Porting objects to other Mods

Credits: xstax981, clivewil, MasterChief

Here are some tips for porting objects to other mods;

**Overview:**

You'll need to look at some or all of four key areas:

1. the vehicle itself, in its own folder in vehicles\air\

2. supporting weapons. in this case, possibly bombs. often these are stored in weapons\armament\missiles\ if they're not contained with the plane itself.

3. hud stuff. includes the vehicle icon and weapon icons, as well as the hud display on the windscreen

4. effects. most common is the wreck explosion, along with the wreck particles (the 'bits' that get blown off as the plane explodes - it's very common for a loose broken wing to be a wreck particle) - effects also include custom smoke trails and the like.

some of these elements you \*must\* port across, like the plane itself of course. others you might be able to get away with substitution, e.g. the plane will still work if it's using the vehicle icon for the vanilla F-18 instead of the B-52. and maybe you could use a different plane's hud?

study, compare, conduct tests. perseverance is the key - there \*is\* definitely a way of making it work.
the first vehicle you mod is always a pain. but the next one will be much easier. (and there is almost always a next one)

**ClientArchives.con**

I've seen loads of stuff lately about how to port other mod content to other mods. Most people think just port all the files. But there is an easier way that saves HD space, fast, very simple to do, and most of the time without any error.

Simply go to the mod you're trying to port content from, and go to the ClientArchives.con file. This is where you can do a lot of stuff. It should resemble something like this:

> fileManager.mountArchive Objects\_client.zip Objects
>
>
>
> fileManager.mountArchive Common\_client.zip Common
>
> fileManager.mountArchive Menu\_client.zip Menu
>
> fileManager.mountArchive Shaders\_client.zip Shaders
>
> fileManager.mountArchive Fonts\_client.zip Fonts
>
> fileManager.mountArchive mods/bf2/Objects\_client.zip Objects
>
> fileManager.mountArchive mods/bf2/Common\_client.zip Common
>
> fileManager.mountArchive mods/bf2/Menu\_client.zip Menu
>
>
>
>
> fileManager.mountArchive mods/bf2/Fonts\_client.zip Fonts
>
>

Now, simply by redirecting the paths near the bottom (i.e. changing mods/bf2 to mods/somemod), you can effectively port textures from one mod, fonts from another, and objects from another. Just by changing the bf2 to something like aintent or something. Now you need to port the server stuff. Simply going to the ServerArchives.con file will allow you to port the objects from the server.zip files from another mod.

Basically do the same thing as above, except you'll see more junk at the top, that really doesn't affect anything.

**Find an similar object**

It is very helpful to find a similar object that is available with all the required files. These are objects, vehicles or weapons that are available to be added into a map or mod. They include all the required files and therefore, they are very useful as a guide to see what is required.
Porting BF maps to UE4

If you wanted to port BF Maps to other game engines, this is how I would do it using UE4 as an example.

1. Set up the map for adding AI support using the standard process for adding AI to maps with the BF2 editor. A working Navmesh is not needed. Only the preopt and manifold files are required in the work\navmesh\[map name]\GTSdata\output folder.
2. The Preopt.obj and manifold.obj files are standard obj file format and can easily be imported into most game editors or 3d modeling tools.
3. The manifold.obj (shown below)is a mesh port of the heightmap (ground) and water in obj format. This can be easily imported into UE4 editor and most game editors. It can be used as the actual ground and water mesh or as a guide to recreate the heightmap in the new game engine.
5. The Preopt.obj (show below) file can be imported into the game editor and used as a guide for object placement since the objects are blocked out.
Heightmaps Explained

# Height Maps Details

By **Perfectionist**

**Basic Concepts of Height Maps**

Heightmap's are use to Create Terrains in many 3D Engines using Greyscale images. A greyscale image contains pixels that range from white to black with shades of grey in between. The shades of grey in the image relate to the height of points on the terrain. The dark values are low points in the terrain and the bright values are the high points in the terrain.
 A short discussion about color space might be in order. The most popular color space used in paint programs today is the R-G-B color space model. In this model each primary color value (red, green and blue) is represented by a numeric value ranging from 0 - 255, where 0 is completely dark and 255 is completely bright. Some examples are: 255,0,0 = bright red, 0,255,0 = bright green, 0,0,127 = blue at 50% brightness, 255,255,0 = yellow (by combining red and green).
 Whenever the RGB values are all the same (such as 64,64,64 or 157,157,157) what you get is a grey pixel. So in a greyscale displacement map, all the color values have equal red, green and blue values.

**Technical Concepts of Height Maps**

The midpoint displacement algorithm can be implemented using a one-dimensional array of height values which indicate the vertical location of each line segment vertex. This array is a one-dimensional height map. It maps its indices (X values) to height values (Y values).
 Terrain is used via a two-dimensional array of height values which will map indices (X and Z values) into height values (Y values). Note that although our end goal here is to generate three-dimensional coordinates, the array only needs to store the height (Y) values; the horizontal (X and Z) values can be generated on the fly as we parse through the array. By assigning a color to each height value, you could display a height map as an image. Here, high points in the terrain (large values) are represented by white, and low points (small values) are represented by black:
Libra

**Libra**

**"I'm sorry baby, please puppy..."**— Airplane Mode (By Limbo*)*

* **Name Meaning:**The Zodiac, Libra.
* **Roleplay:**Zodiacs
* **Roleplayer:**Gløriøus
* **Gender:**Female
* **Sexuality:**Heterosexual
* **Age:**17
* **Voice:**Estelle (https://www.youtube.com/watch?v=96qkWATooqs - (the female voice))

**Appearance**

**Description:**
* **Physical Health:** All is well
* **Mental Health:** All is well
* **Voice:** TBD
* **Scent:** TBD

**Personality**

**( + )**
* **1:** Charming - Libra is a naturally charming lady. She has a classy and slightly sophisticated way of being her type of charming and flirty.
* **2:** Social - Libra is social and loves meeting people and making friends. She tends to have as much friends as she can take.
* **3:** Sophisticated - She has a sophisticated taste in things and she loves to look deeper into ideas and facts.

**( = )**
* **1:** Questioning - Sometimes Libra has a hard time trusting others, it takes here a little bit to warm up.
* **2:** Balanced - Overall its a pretty good trait, but she can sometimes get kind of extreme.
* **3:** Laid Back - Sometimes it can be considered "lazy", but she sometimes tries to not show her sometimes lazy side.

**( - )**
* **1:** Tragic/Dramatic - Libra tends to "accidently" make situations very exaggerated, and doesn't get over sad news that quickly depending on what it is.
* **2:** Self-Indulgent - Libra tends to spend to much time buying stuff for herself and reflecting on her beauty
* **3:** Superficial - Connecting to self-indulgent, she spends to much time focusing on outer beauty

**Relationships**

**Scorpio (Gen 2) | Male | 25% | ⦁⦁⦁**

"You should of never taken Cancer seriously, even if you can sometimes be a brat..."

**Cancer | Male | 70% |***⦁***⦁**

"Such a sweetie!"

**Aries | Female | 50%**⦁ **⦁**

"She's kinda short-tempered. But If I got to know her better she'd be a good friend."

**Leo | Male | 80% |  ⦁ ⦁⦁ ⦁**

"I-lov-e him.. -but he- doesn't- l-love mee-"

**Gemini | Female | 50% | ⦁⦁ ⦁**

"..."
**​​​​​**
​​​​

**Pisces (Old) | Female | 30% | ⦁⦁**

"You had a choice, and you chose to follow Scorpio."

**Taurus | Female | 10% | ⦁⦁⦁**

"G-get away frome me..."

**Scorpio (Gen 1) | Male | 20% | ⦁**

"Hopefully I can befriend him..."

## **Love Life**

**BF/GF:**N/A

**Past BF/GF:**N/A

**Currently Attracted To:**Leo

**People Attracted To Her:**?

**Past Crushes:**Scorpio (Gen 2)
Editing the Soldiers Kit - SkinnedMesh - Part 4

Editing the Soldiers Kit - SkinnedMesh - Part 4

Then we do "File->Reset".
Open the first worktutor spetz.max(File->Open).
(screenshot 28)

While work loading we will be warned about ".dds"-files missing.This we deal with them later.
Click on "Continue".
In our loaded work we importing the rpg26 from second work.File->Merge.
(screenshot 29)

In the window "Merge-tutor rpg26.max" we select only meshes ru\_kits\_\_SimpleObject\_lod0 and ru\_kits\_\_SimpleObject\_lod1(using for this purpose the Ctrl key).
(screenshot 30)

After this operation we will be see this window - "Duplicate Material Name"
(screenshot 31)

click on the "Use Scene Material".And we see this window
(screenshot 32)

where we click on "Yes To All".The RPG will be added to project.
(screenshot 33)

Now we need to attach each RPG-mesh to each lods.The mesh "ru\_kits\_\_SimpleObject\_lod0" to the "lod0" AT-soldier kit, and the "ru\_kits\_\_SimpleObject\_lod1" to the "lod1" of the same "geom"(geom2).Thus we put them in the hierarchy.
The operation for attaching to the hierarchy is made through as follows - in "Select Objects" window we select the "ru\_kits\_\_SimpleObject\_lod0" mesh, then we click on "Select and Link"(screenshot 34)

and then we click on "Select by Name"(in the same place where the "Select Objects" window was opened).
Will open the window "Select Parent" where whith mouse we select "lod0" and click on "Link".(screenshot 35)

We click on "Select Object" for disable the "Select and Link" mode.
(screenshot 36)

We open again the "Select Objects" window where we can see that "ru\_kits\_\_SimpleObject\_lod0" mesh is attached in hierarchy to the "lod0".
(screenshot 37)

We do the same operation with second RPG-mesh "ru\_kits\_\_SimpleObject\_lod1", but is need to attach it to the "lod1".
(screenshot 38)

Then, through the "RMB Menu", in the "Editing Window", we click on "Unhide by Name".
(screenshot 39)

Will be opened "Unhide Objects" window, where we find "spetz\_kits\_\_SimpleObject" and double-clicking on it.Is need only to copy it name
(screenshot 40)

, for to rename "ru\_kits\_\_SimpleObject\_lod0" and "ru\_kits\_\_SimpleObject\_lod1" meshes in "spetz\_kits\_\_SimpleObject".
We copy "spetz\_kits\_\_SimpleObject" and rename the meshes with this name.
(screenshot 41)

Is should be like that.
(screenshot 42)

Editing the Soldiers Kit - SkinnedMesh - Part 5
Creating Mod Launchers

I found Game Launcher Creator to be very useful for creating mod launchers. This licensed Commercial Software. Although it is not free, it is reasonably prices for the options and features it provides. The launcher can also be used as an updater.

In all cases, Each button clicks launches a bat file. I find it is easier to customize by running bat files
Creating an AImesh from a multi-part object

Structures that are made of seperate object either in an object bundle or a sepetately connected together in the editor but appear as one complete object.  This is done all the time with bridges, but other more complicated complexes are done all the time.  A good example is the repair station connected to the barracks buidling from BF42 ported over to BF2 in the BF44 mod.   The complex is shown below:

These are two sepeate objects, but lined up so that the entrances are connected as a doorway between the two buildings.  These can be problematic to get to navmesh properly.  The best way is create a custom AImesh that combines the all the parts into one AImesh.
To start off, pick one one of the objects to be your base.  You will need to know the location of the object in the map.  I selected the repair station object and doubel clicked to the get the location info.  Now, I can take a screeshot to save this information for later.  This can also help to reference when your prepping the AImeshes.

Now, I open up the repair station in 3ds max and look at the col3 (AImesh).  The side stairs are actually seperate objects.  I had already created a custom AImesh for this object that included the side stairs.   So I am using that as my base.  I have to remove the stairway on the right side.   I also remove the side pieces from the right side that will join up with the barracks.  Now I save it as Repair Station Barracks Complex.
Then I open up the barracks in 3ds Max, and remove one side stairs and the side pieces, since they will need to be deleted and new faces created when I connect the pieces together.   Then I export using the 3ds max File - Export ad 3ds format (select the entire col3 object and export selected).  I find that 3ds format works best since it keeps the scene location and scale info.  Now close the scene out.
Reopen the Repair station Barracks Complex and import the barracks 3ds file.   Make sure the move button is selected (three arrows pointing 3 directions) and grab the arrows to move the barracks so that the doorways line up..
Now its a matter to reconnecting the faces, cleaning up the mesh and checking for any issues.
Save and export to BF2 and test it out

.
Navmesh testing by Joker

Namvesh Testing tips by Joker

edited by Dnamro

I leave only 3 SA on map. Each for every team and one neutral. The "Unabletochangeteam" param is "on" for all.
Set in AIDefault.ai aiSettings.setMaxNBots 80 and higher. So, flying above i can see who, where and how runs. If there's something wrong i take the screenshoot for further fix.
If somebody drops vehicle and runs hiking i inspect this area in maya. In most cases the navmesh is too high above or too deep into the ground. So, again and again: fixnavmesh.bat, update AIpathfinding folder, test.
If it's necessary, i set infantry and vehicle waypoints. And test, test... If everything allright, i save waypoints from strategicareas.ai into textfile and make help pic which SA are tested:

When all combinations of SA's are tested-it's time to test them all together. And only after all of these steps it can be GOOD navmeshing. And it's not a fact, yet.

And another one bug fix. When vehicles can't drive through some places (it looks like moving forward and back continuously) check vehicle and infantry navmeshes there. Veh navmesh must be inside infantry navmesh, not out of its "border" on empty space.
How BF2142 Kit Unlocks Work

By Phantomeis

* Unlocks in relation to a masterserver database (FESL for example)- numbers here begin with 1 and not with 0 (zero). You cannot go higher than 6 in database (unlockLevel 5 in tweak files)- so adding unlocks is not possible, replacing old ones with new ones however is. This is because a database (the masterserver) will never report "unreal" numbers for unlocks, unlockLevel 6 is simply not possible to unlock in the gamesUI and is not coded in the bf2142.exe . Additional primary rifles like in Project Remaster Mod use another way to trick the engine. You must work with this knowledge, since BF2142Unlocker is a masterserver emulator working with this logic - and so do the other masterservers.

* Vanilla 2142 Customise-screen and the relation to its HudElementsKitsMenu.con file:

* This is the layout of the vanilla HudElementsKitsMenu.con file. Yes, Kit1Box1 and Kit2Box1 are missing- commented out in original file too.

* Don't overthink the numbers and names for the boxes in the last two pictures. There is no (direct) logic behind the gadgets numbering.

* Just remember: the position of one unlock (for example EMP grenade) does not depend on its unlock-ID from "Weapons\_server.zip\Handheld\Unl\_Grenade\_EMP\Unl\_Grenade\_EMP.tweak" file, but of its position inside the soldiers inventory at "Kits\_server.zip\EU\EU\_Support.con"

* More than 4 kits in the game: just creating anew file and making it "kit4" will crash your game. BF2142 has (hardcoded) variables for kit0, kit1, kit2, and kit3 and their respective unlock slots. When you add a new kit "kit4" to the files, the game will try to write and read to/from a variable of "kit4", which does not exist.
* `We have a server/client structure with multiple unlocks for the first time in refractor/dice code here- so their solution was limited. a (master)server cannot save your new kit and also cannot give out data for it-so the client, even in tweak-files, cannot create new ones -- sadly hardcoded.`
* Instead use workaround: make class 5 actually use "kit3" (possible kit0 to kit3), so the game logic will read out the unlocks from the "kit3" into the available variables of "kit3". You now have a 5th class- `great`- but the unlocks are now on the same level (shares the same progress) as of "kit3" (support in this case). This problem is circumvented whe nyou have all unlocks anyway- like with BF2142Unlocker. If you need a workaround for this too: fill the new classes inventory with gadgets without using any relation/code to the unlocks feature. so just fill the soldiers inventory with stuff, never use "unlocklevels" command.
Navmeshing with the Preopt

Navmeshing with the Preopt

The Preopt.obj is the pre-optimized version of the navmesh that provides an accurate version of the ground. The Picture below is a Navmesh and Preopt loaded into 3dsmax.

The Navmesh is commonly optimized over large areas to the point where it not longer accurately reflects the ground area. When the difference is more than about a meter/yard, the game can crash when a bot crosses over that area. DICE only Navmeshed small combat areas, so this was not a problem when the tools were released. It only developed as an issue when the community tried to navmesh larger sized maps.

Therefore, the preopt is a very useful tool in making sure that the navmesh is accurate to the ground. The preopt.obj is in the same location as the infantry.obj and vehicle.obj navmeshes. Simply import the preopt.obj the same way as you imported the navmeshes while you already have a navmesh open, however, you do not need to add the 'materials.mtl' line, Without materials, the Preopt stays gray colored and is easier to distinguish. On import 3ds Max will also ask you for a new object name, The default name suggestion is fine.

In order to prevent modifying the preopt, select the preopt, right-click on it and click Freeze selection.

The preopt will turn dark gray and you'll be unable to select it. Select the navmesh to bring it up on top.

To delete the preopt before exporting, right-click anywhere in viewport and click Unfreeze above the Freeze selection, select the preopt and delete.
Fixing 1P Camera-Clipping Weapon Problems

In the BF2Editor and In-game, you may come across this issue where the camera clips through the weapon when you 'enter' a handheld weapon etc.

(BF2 Editor Fix)

To fix this:
1. Navigate to Program Files (x86)/EA Games/Battlefield 2/bf2editor/settings (and in Default folder), open both EngineInit.con with Notepad.
2. Add this code below, then save:

> renderer.tweaknearplane1p 0.04
>
>

3. Set EngineInit.con to read-only to prevent the BF2Editor from reverting the change.

This will set the values to v1.50 ones instead of v1.30 (BF2Editor version) and therefore make it match ingame.

You can also modify the renderer.tweaknearplane1p values on the bottom-right corner via **ConsoleUI Command** to tweak with whatever values to test what they do.

For In-Game:

Add to gamelogicinit.con

> rem another tweak for the Refractor, reduces flickering 1P faces
>
>
>
> renderer.tweakfarplane1p 10000001
>
> renderer.tweaknearplane 0.08
>
> renderer.tweaknearplane1p 0.04
>
> rem lightManager tweaks
>
> lightManager.maxLightsPerBundledMesh 6
>
> rem even more tweaking
>
>
>
>
> objectdrawer.collectplanesdistance 130
>
>
How to create weapon icons for bf2

**How to create weapon icons for bf2**

**By Ironclad2014**

**Tools:**

* BFmeshView: http://www.bytehazard.com/bfstuff/bfmeshview/
* Gimp, Photoshop or other photo editing software that supports DDS. You will need to install a DDS plugin for Gimp (https://code.google.com/archive/p/gimp-dds/downloads)
* Weapon Icon Template: http://www.mediafire.com/file/9j55m69dwjb6i7y/Template\_for+weapon\_icons.dds

1. Load your weapon in bfmeshviewer
2. Rotate it to your liking
3. Set bfmeshviewer's background colour to something not near of anything that comes near to your weapon
4. Use Snipping tool to copy the weapon
5. Paste the image in GIMP (Or other Photo editor App)
6. Use select by color tool and select the background
7. Copy the picture and paste as new layer on this template that is included
8. Resize to your liking and merge the layers
9. Export as a BC3 / DXT5 .dds file
Stairs Gradient Info

By Rhino

This is some common info here for static modellers and the like who are modelling stairs and need to keep in mind the max gradients players can climb stairs with the normal stair material etc. Also putting this up here as I am constantly forgetting what angles players can climb and can't so I dont have to do testing each time I come to make stairs

Just a quick explanation on how stairs work ingame for anyone who doesn't know. Stairs are visually just steps you walk up and down just like real life, like this one on my container crane:

But really all they are is simply a ramp that a player can climb up and down, if we view the player col mesh we can see this.

This ramp has a unique material set to it called a stair material that enables players to climb grater gradients than they would otherwise be able to and these materials dont have to be used just on stairs, they can be used on other gradients too like a small invisible ramp on the edge of a pavement/sidewalk to help them get onto it.

Anyways enough on that, onto the max Gradients a player can climb:

**Slope with a Non-Stair Materials like dirt: ("Grass", "Dirt", "Concrete", "Wood", "Sand", etc.) [Results may vary slightly for each material]**

Can climb "comfortably" upto 40º

Can just climb with a slight struggle somewhere between 40º and 45º

Can not climb 45º

**Stairs with Normal Stair Materials: ("Stairs\_concrete", "Stairs\_metal", "Stairs\_wood")**

Can climb "comfortably" upto 50º

Can just climb with a slight struggle upto 55º

Can not climb 60º

**Stairs with Special "Stair Steep" Materials: ("Stair\_Steep\_Metal" {Custom Material})**

Can climb "comfortably" upto 60º

Can just climb with a slight struggle somewhere between 60º and 65º

Can not climb 65º

**Note:** You shouldn't use a gradient on your stairs that a player will struggle to climb up unless 100% necessary.

Hope you all find this useful
BF42 Enable Vehicle Arty Spotting

Enable vehicles to use Artillery Spotters

 ObjectTemplate.artPos 1 < allows this pco postion to use the artillery function

These are settings for how the hud display will line up and move.

ObjectTemplate.DirBarXScale 25
ObjectTemplate.DirBarYScaleAbove 85
ObjectTemplate.DirBarYScaleBelow 0
ObjectTemplate.DirBarYScaleMin -90
ObjectTemplate.DirBarYScaleMax -5

ObjectTemplate.create Camera ArtilleryGunnerCamera
ObjectTemplate.CVMExternTrace 1 < must be a one for camera to follow projectile
Import a Navmesh with Blender

--> IMPORT

At the top menu bar (above the work window)
Click:
File - Import - Wavefront (.obj)

You get a directory/file list.

Migrate to the folder where your Infantry.obj (Vehicle.obj) and materials.mtl are located.

Note: The first line in a navmesh .obj file from BF2Editor defines the materials library. "mtllib materials.mtl"
(If you Open the Infantry.obj or Vehicle.obj file with Windows notepad, at the top of the list is the line with: mtllib materials.mtl)

The materials library defines the materials the mesh is made from.
And it defines the color used to show each material.
Green for ground, Red for ladder, Yellow for Water, and Blue for deepwater.
(Again, a mesh from BF2Editor will never have faces made from a "ladder" [red] material. BUT, a navmesh already edited by someone might have them.)

When you import an .obj file Blender will automatically bring in the materials file with it (or try to).
If the navmesh is all grey in color then you forgot the materials file.

Click on (hilight) the name of your .obj file to select it.
NOW we have to set some options to get the Infantry.obj (Vehicle.obj) to "load" the way we need it to.
On the left side of the file list window is a panel. In the panel, near the bottom, is "Import OBJ".    Use the following options:

[
Robovac Revolution v1

The **first Robovac Revolution** was the first major in-game event since Hackmud's launch. Celebrating the annual real-life holiday of Guy Fawkes Night, events thematic to it have taken place each year since.

## Plot Synopsis

A group of robovacs (known now as The Thirteen), dissatisfied with the treatment bestowed upon them by Trust, took to Port Epoch to protest. The first and most vocal of the vacs was `robovac\_tresham`, who presented a poem to those in 0000 for the duration of the event. Tresham asked for the messages to be spread in order to support their cause and remarked that the Thirteen's scripts would be useful to those who could find them.

Eventually, players found the scripts of each member of the Thirteen, claiming their rewards and, based on dialogue delivered by `robovac\_catesby`, killing them.

Following the outcome of this first revolution, every member of the original Thirteen except for Tresham, Fawkes, Percy and Catesby have never been seen from again.

## Gameplay

Thirteen users named after members of the Gunpowder Plot (such as `robovac\_grant` or `robovac\_j\_wright`) had hidden scripts available consisting of 2 hexadecimal characters. For each vac, the first part of the puzzle involved guessing the names of these scripts. To prevent brute forcing, every possible hexadecimal combination would show up via `scripts.get(\_access)\_level`, however incorrect script names returned:

`tread lightly. the path of the brute, while forceful, is quite ineffective when matters of secrecy are at hand.`

These incorrect scripts would then prevent the user from trying any more combinations for 15 minutes.

When accessing the correct script, a small quip would be presented to the player, generally prompting to provide a password:

`my support comes only with the correct password`

Each prompt was different for each script, generally providing hints to aid in determining the password. These scripts also required users to be in the 0000 channel, as said scripts would force users to send messages into the channel:

`we will die b4 we let t trust trample our right 2 roam free! ~robovac_tresham`

These messages also provided hints to determine the next user and script to solve.

When the correct password was provided to the script in the argument password, an output containing the vac accepting defeat, along with their loc, was given to the player. These locs had the magnara lock loaded (a new lock at the time). When breached, the vacs transferred upgrades to the breacher similar to NPCs.

## Rewards

Various rewards were left on each robovac's loc -- including the first ever sn\_w\_usac locks and **transfer\_upgrade\_v1** upgrades. In addition, Catesby's loc contained several CON\_A5V4H locks.
Convert RAW to BMP - FlyRAWGUI

Batlefield 1942 and Vietnam pathmaps both use the RAW format, which is not a widows or web friendly format and not all photo editor software supports this format.

There is a great utility called FlyRawGui that will convert an 8-bit Greyscale .RAW image to an 8-bit Greyscale .BMP (Windows Bitmap) image and back.

This example shows converting a car pathmap in RAW format to BMP.

* Use Convert RAW to BMP and browse to locate our Car4Level0Map8bit.raw

* Open the file and it will be converted by the Program.
Faythe

Faythe, the translator

**Faythe** is an operator with the axiom of VOID. She is a member of The Six.

## Summary

Not much is known about Faythe's existence prior to Trust's activation, however she is known to be the sanctioned artificial intelligence for the corporation "*FT*",  who arerepresented by Trust within her domain as *#FUTUREtech*.

In Trust's vLAN, a version of Faythe is presented to the player. This Faythe exists in the **faythes\_fountain** channel. She provides the c00lest\_kats with the answers to three of their most burning questions, albeit cryptically.

During the events of the third robovac revolution, Faythe and Eve worked together to guide the Thirteen towards collecting and attempting to catalogue oddities in Trust's domain, leading to exposing Trust's attempts to cull this information.

During the events of Monuments + Beacons, Faythe was summoned by `indust_sweepr_lon_dist_21` using her summon key, `FutureTech_faythe-KFQosx`.

## Notes

* She often uses HTTP response codes in her conversations, whose corresponding full response messages are used to form phrases that complete sentences.
* Like most of the other members of the Six, Faythe's name is based off the fictional character 'Faythe' from the Alice & Bob character framework. In this framework, Faythe represents a trusted advisor, courier or intermediary.

## References

1. ↑ teach.me { need: "faythe" }
2. ↑ https://hackmud-dtr.github.io/emails.html, y2056d128\_FlorenceBreton\_deleted
3. ↑ indust\_sweepr\_lon\_dist\_21.plotter{option:"message\_archive",archive\_id:"THE\_CHRONICLES\_OF\_KING\_BIGBOT\_IN\_THE\_CHAMBERS\_OF\_THE\_MOON\_CASTLE",YOU\_DO\_A:"TURN",PERHAPS\_YOU\_COULD\_GO:"S",being:"robovac",force:true,enter:true,seek:"stairs",THE\_LITTLE\_FRIEND\_NEEDS\_ME\_TO:"SWEEP",THE\_WISE\_CROWN\_NEEDS\_ME\_TO\_CONSIDER:"EXPECTATIONPROPAGATION",sinking:"high",wrong:"united",THE\_FIRST\_BEEP\_IS:"FutureTech\_faythe-KFQosx",THE\_SECOND\_BEEP\_IS:"CORE\_eve-qUQKXd"}
4. ↑ eve.monitor {faythe:true,pass:1605}
5. ↑ https://hackmud-dtr.github.io/bigbot\_2.html
Navmesh Tricks

Navmesh Tricks

This purpose of this page is to show some navmesh tricks.

One of the big problems with large maps with lots of mountains, hills or other areas that we don't wont the bots to use, but take up a lot of navmesh area, because there is now way to avoid navmeshing those areas. We can restrict the combat area to minimize the area that needs to be navmesh to the minimum. That can avoid navmeshing extra areas on the edges of the map, that bots will never go anway, but it's a shame that we can restrict all those areas between CPs that we want the bots to avoid. If there was a way to do that, that could reduce the size of the navmesh and reduce the time it takes to create a navmesh.

Now, what if we used large objects to block out those "No-Go" Areas? We can overlap them to completely block out all those nasty areas we don't want to navmesh.

I tried it and it works.