快乐些 发表于 2014-4-2 17:13:27

中2建筑模型编辑

1. IWTE(建筑文件格式转换编辑工具,可将中2 world格式建筑文件转换为ms3d格式)
2. Milkshape 3D
3. Photoshop
建筑编辑工具是中2王国MOD Princes, Kings and Heroes 的制作者 wilddog 发布的,只不过之前他们做的是不列颠史实类新城堡,所以并未引起太大关注,但现在魔界应用此工具实现了魔幻建筑的突破,因而反响大为不同。

原帖工具发布地址:
http://www.twcenter.net/forums/showthread.php?t=323503

King Kong 的编辑教程地址:
http://www.twcenter.net/forums/showthread.php?p=8500981#post8500981

建筑工具 IWTE 下载:
http://www.twcenter.net/forums/downloads.php?do=file&id=2741


额外建筑编辑工具下载及相关教程:
some basic info about battlemap building and terrain editing can be found here:
http://www.twcenter.net/wiki/Battle_Map_Buildings_-_M2TW
中2world 格式建筑文件编辑工具下载:(确定你电脑里安装过Python软件)
http://www.twcenter.net/forums/showthread.php?t=166329


不过教程是全英文,但个人感觉还是属于比较好理解的英文类型,但是演示图片要翻墙才能看得到,所以欲有所为者需自行使用翻墙浏览器:

Tutorial
- how to create a new settlement -


This tutorial will mainly show how create a new settlement with wilddog's IWTE and Milkshape 3D. If you understand this tutorial and the IWTE (which look more difficult than they are), it should also be easy to edit existing settlements.
All steps that are explained here are just my personal recommendation from my experience with settlement modding and no strict guideline.
Some basic knowledge of Milkshape 3D and Medieval 2 modding (like seting up a certain settlement in the descr_strat file) is prerequisite. Hex-editing or scripting is not required.


A sincere thanks goes to wilddog and makanyane who have worked over two years to make this breakthrough possible!
Thanks for all your patience to answer all my questions and your frequent help on this long road to settlement modding. It was really a pleasure to work and communicate with you!

http://www.twcenter.net/forums/images/smilies/emoticons/original.gif



Table of Contents


1. First steps
2. Creating a settlement in Milkshape
------- 2.1 The terrain
------------- 2.1.1 Editing the terrain
------------- 2.1.2 Resizing the terrain
------------- 2.1.3 Finalizing and importing the terrain
------- 2.2 The settlement
------------- 2.2.1 Editing and creating a settlement
------------- 2.2.2 Finalizing and importing .ms3d files
3. The IWTE
------- 3.1 Make a base settlement
------- 3.2 Importing .ms3d files
------------- 3.2.1 Textures
------- 3.3 Setup attributes for a settlement
------------- 3.3.1 Object attributes
------------------- 1. Mainobjects
------------------- 3. Animations/Collision
------------------- 2. Collisions
------------------- 4. Siege Docking
------------------- 6. Firing Slots
------------------- 7. Collision Effects
------------------- 8. Breaches
------------- 3.3.2 Global settlement attributes
------------------- 1. Pathfinding
------------------- 2. Vegetation
------------------- 3. Perimeters
------------------- 4. The Plaza
------------------- 5. The Deployment zone
------------------- 6. Road Marker
------------------- 7. Tech Trees
------------------- 8. Deployment on Walls and other Objects
------------------- 9. Defense Points
4. Roads, mud & farms
5. Making the settlement unique
6. Errors & Solutions






To avoid possible confusions, here is a small legend which explains some phrases that are often used:

Main Objects: these are the 4 really critical and important parts of your settlement (Walls, Gates, Gate Houses and Arrow Towers.)
Animated Main Objects: the main objects that use an animation when damaged (Walls, Gates & Arrow Towers)
Functioning Objects.: Not all Walls/Gates/Gate Houses/Arrow Towers must have animations or must be something that is siegable. You can also add a wall or a tower that has pure 'cosmetical' purpose. Therefore, Functioning Objects are only the objects that can be sieged/attacked/destroyed.
Default Objects: This can be any object, except one of the Main Objects
Original Objects: Parts of the original/vanilla Medieval 2 settlements.




1. First steps


First of all, 3 programs are needed:

1. IWTE
2. Milkshape 3D
3. Photoshop or a similar program like Gimp

Optional

4. Start-up-kit


Before you can start modelling your settlement, note that there is only one 'hardcode' that will restrict you with the decision of your settlement: the height of walls.
There are 4 types of walls with different heights:
1 square high (wooden): town, motte_and_bailey
2 squares high (wooden): large_town, wooden_castle
3 squares high (stone): city, large_city, castle, large_castle, fortress
4 squares high (stone): huge_city
In the reverse conclusion this means that you can also easily 'transform' for example a city into a fortress or a castle into a large_city. The layers of walls are not hardcoded, for example you can have a castle with three layers of walls or a fortress with only one layer.


So, the only decision that you have to make before you choose your base-settlement is how high the walls should be. If you want a '4 squares high' wall, it must be a huge_city; a castle must have a 3 squares high wall, etc...
If you have made your decision, copy any original settlement that has your chosen wall-height and copy all files to a new folder.


As an alternative, you can also use the 'Start-up-kit', which can be used as a base for every settlement. It only consists of one of every 4 walls-types (only the 3 squares high wall is activated for in-game test) , a portcullis gate, a wooden gate, two arrow towers and a few buildings.
The kit replaces the north_european_large_city, but can be changed into any settlement later, depending on which wall you will use.

Download the 'Start-up-kit' here: http://www.filefront.com/17563637/large_city.rar








2. Creating a settlement in Milkshape

After you have set-up your base settlement ('base-settlement' can be an original settlement or the 'start-up-kit'), you can start modelling the settlement.
For the actual settlement modelling you don't need to know much about the IWTE, only two basic functions will be needed ('Write ms3d file - all' and 'Convert to Terrain .ms3d')



2.1. The terrain

The terrain is the the ground and base for your settlement, so I would recommend to load the terrain into Milkshape first, so that you can place your new structures into the correct position of the terrain and edit the terrain if necessary.


2.1.1 Editing the terrain
- To load the terrain into Milkshape, open the IWTE and load your base-settlement,
go to "Terrain1" → "Convert to Terrain .ms3d".
- Open the newly created file xxx_WT.ms3d with Milkshape and edit it.
Important: For some reason you will have to edit your settlement mirror-inverted in Milkshape, that means that you will also have to mirror the terrain (In Milkshape: Go to "Vertex" → "Mirror Left <--> Right") before you start editing it!


2.1.2 Resizing the terrain
The size of the terrain differs depending on the settlement-base that you use.
(The 'start-up-kit' has a medium-large terrain size)
If you wish to have a bigger or smaller terrain size for your base settlement, you can change it with the IWTE:
- Go to "Terrain1" → "Resize .worldterrain"
(To know the number of the terrain size, open your terrain-ms3d file with Milkshape and go to Tools → Show Model Statitsics.
Now look at the number of vertices and extract the root of this number. The result is the Size Value.)
- Do also resize the .worldpathfinding and the .worldvegetation and enter the same Size Value.

Notes:
- Vertexes can only be moved in the y-direction. Moving a vertex in the X or Z direction won't have any effect in-game.
- Terrain can be lowered or elevated as much as you want.
- Resizing the terrain can be done when you want and also after you have already edited it! The IWTE will just add additional squares to every side of the terrain/pathfinding/vegetation files.


2.1.3 Finishing and Importing the terrain to the IWTE
- After you are finished with your terrain, mirror it back and save it (Note that you should keep the model comment of the original worldterrain .ms3d file, otherwise the IWTE won't convert the file back).
- Open the IWTE, go to "Terrain1" → "Replace with Terrain .ms3d"
- Choose the .worldterrain of your settlment-base
- Choose your edited .ms3d file (the name of this file doesn't matter)
- Accept it and put the newly created .worldterrain file to your mod-folder.


That's it. Editing the terrain is really easy, though can be very time-consuming if you want to have a very detailed terrain. You can now test the terrain in-game, it won't crash even if the buildings don't fit the new terrain yet.




2.2. The Settlement

Important: Like described in part1, I would recommend to load your terrain file (mirrored) with Milkshape and use this as a base to place your structures on it.
Remember that you have to model your settlement mirror-inverted in Milkshape, which means that, for example, a gate on the left side in Milkshape (Projection: Front) will be on the right side in the IWTE 2d window and in-game!
If your settlement has only one gate in the outer walls, it doesn't matter if you model your settlement mirror-inverted or not, because in-game the battle will always start in front of the only gate.




2.2.1 Editing and creating the settlement


First of all, an overview of the settlement-hierarchy of the IWTE:
I. Complexes (divided into structures)
II. Structures (divided into objects)
III. Objects (divided into Sub-Objects)
There are 5 types of objects:
# Walls: stone walls consists of 6 (g0-g5), wooden walls of 5, pallisades of 2 sub-objects.
# Gates: always consist of 3 sub-objects (g0-g2)
# Gate Houses: always consist of 2 sub-objects (g0-g1)
# Arrow Towers: always consist of 2 sub-objects (g0-g1)
# Default Objects: consist of 1 or 2 sub-object(s) (g0 or g0-g1)
IIII. Sub-Objects: Sub-objects are the different damage levels of every object. g0 is always the undamaged object, g1 is more damaged (or destroyed if there are only two sub-groups), etc...
An object with only one damage level (g0) will always look the same, no matter if it has been hit by artillery.

Basically you can model the complete settlement like you want, but be careful with the all important 4 Main Objects (Walls/Gates/Gate Houses/Arrow Towers).
All other buildings are Default Objects.


An overview over the 5 object types, how they can look in Milkshape and what you have to consider when you want to use, create or edit them:

快乐些 发表于 2014-4-9 18:10:52

Walls
Functioning Walls are the most important parts of your settlement, because they are the parts that can be sieged, destroyed and where you can deploy your troops on (note that troops can also be deployed on other default objects with a flat surface).
Before you can work with a functioning wall, I would recommend to load an original wall-part and isolate it, so that you have only one wall-part:
- Open your base-settlement with the IWTE and write any structure to ms3d that includes a wall.
- Open the structure with Milkshape and delete everything except one wall part. I would also recommend to keep one "connecting-part", this will show you how much space should be between every wall-part.
If you use the 'start-up-kit', delete everything except the one wall that you want to use later.

A '3 squares wall' wall in Milkshape:
Spoiler Alert, click show to read:







- IF you want to do some small changes to the different damage-levels of one wall part (for example changing the battlement) do this now.
- Save the isolated wall-part and connection-part and keep this file as a base for your new walls that you want to create. If you need a duplication of this base-wall, use the "merge" option of Milkshape to import this base-wall-part and do not just duplicate it with the Milkshape option!


Notes
- you may wonder why you should merge a wall part with Milkshape and not just duplicate it with Milkshape; this is because when you just duplicate all 6 ssub-groups of one wall-part, it will have about 1/3 more polygons as when you just merge your saved wall-part into your .ms3d file.
I'm not sure why this is, but it saves you a lot of polygons.

- theoretically, you can also model a wall and all it's 6 g-levels from scratch, but there won't be fitting animations for them and the damage levels are probably very hard to do, therefore I recommend to use an original wall-part and work with this.

- I also wouldn't recommend to make big changes to the wall-parts, because the animations aren't exactly fitting or you have to use no animation.


Gates
The model of a Gate should not be changed, because Gates are the only objects that must have an animation, otherwise they won't work. However, you can also use any other Gate from any other settlement, for example you can use a portcullis from a castle for a city. It won't interfere with the siege weapons and IWTE allows you to choose any animation from all original settlement files.
Like with walls, I would recommend to load an original gate and isolate it:
- Open your base-settlement with the IWTE and write any structure to ms3d that includes a gate.
- Open the structure with Milkshape and delete everything except the gate.

A wooden gate in Milkshape:
Spoiler Alert, click show to read:





Gate Houses
Gate houses are relatively uncomplicated, because they use no animations for the damage levels, so you can either use an original one, edit an existing one or create a completely new one.

A Gate House in Milkshape:
Spoiler Alert, click show to read:





Arrow Towers
You can either use any Arrow Tower from any settlement or make a completely new one. If you use an original tower, load and isolate it like with Walls or Gates.
If you create a completely new tower, remember that you have also have to create a new damage level (g1)! Also note that you can't make new animations, that means your new tower won't have an animation when collapsing, but actually this doesn't look very bad.


Notes
- What the game recognizes as Arrow Towers are actually only the tower-tops! The tower-base doesn't belong to the Arrow Towers and is just any Default building, but it can also be a Gate House.

- Arrow Towers consist of only 2 sub-groups, however, there should be 3 "copies" of every tower in Milkshape!
Those copies will be used for the tower upgrades that can be done in-game (ballista and cannon upgrade). The original tower copies look slightly different, but you can also just copy and paste your tower (with 2 sub-groups), so that you have 3 exact same copies of it.

An Arrow Tower always has 2 sub-objects (g0-g1) which are duplicated 3 times. In this example, a Gate House (marked red) is the tower-base:
Spoiler Alert, click show to read:




Another example with another tower-base (marked red) and only one Arrow Tower:
Spoiler Alert, click show to read:







Default objects (all other buildings)
Basically they can be created like you want.
However, you should take a look into the original files, you may reuse some original structures, buildings or objects.


Water
Creating a water-surface is very simple. Just create any flat plane in Milkshape and place it into the position where the water should be (use merged terrain to check position).




General modelling notes

1. Try to model very exactly and if possible error-free. Changing models after you have imported them to the IWTE is possible, of course, but it's easier if you don't have to do that.

2. Your first .ms3d file should include the main Gate and the main Gate House. Use this structure as an orientation for the rest of the settlement, so choose the position of your Main Gate carefully!
Also try to center your Gate-House around one terrain-tile (see next point about pathfinding)
This .ms3d file with your gate will also be the first structure that will be added with the IWTE later.

3. It's important to know that Pathfinding-tiles and the terrain-tiles are more or less connected.
Every tile of the terrain file consists of 16 (4x4) pathfinding-squares. So, if you want to have a very exact pathfinding along certain objects (especially important for the Gate and Gate-House!), try to place them along the lines of the terrain file (i.e you will see that the width and depth of an original Gate House fits well into the tiles of the terrain file, so it can be placed exactly along these lines and you can have a very exact pathfinding for the Gate. You will see this effect later when you start editing the pathfinding (see 3.3.2)
This is not necessary and also not always possible, but it can result in a slightly more exact pathfinding for important or tight passages.

Here is an example of a Gate House that is built along the terrain lines in Milkshape. The passage of the Gate House (blue square) fits exactly one square of the terrain file (marked red):
Spoiler Alert, click show to read:





Stone Walls can also fit the terrain perfectly:
Spoiler Alert, click show to read:





4. If you use original main objects and if you want to keep the original animation, do not move a single vertex of these objects! Always move the whole object in one piece, otherwise the animation will not perfectly fit.

5. You can only assign one texture to every ms3d file (structure) with the IWTE.
Objects which use different textures in-game have to be own .ms3d files (structures).
Of course you can model with objects with different textures in one .ms3d file, just seperate them later before you import them to the IWTE.

6. You will probably recognize that the original default buildings are often devided into countless tiny groups; For example a simple original house consists of dozens of objects, because almost every zone/square of an original buildings has its own damage level!
This makes it very hard to reuse those objects in your new file. Personally I have made most default buildings from scratch and I mostly refrained from splitting them into various groups with different damage levels, because it is just too time consuming, especially with big settlements.
Here is an examples how the original buildings can look like, divided into countless groups:
Spoiler Alert, click show to read:




Here is an example how completely new buildings can look like:
Spoiler Alert, click show to read:







7. Have fun modelling and texturing your settlement!





2.2.3 Finalizing .ms3d files

After you have edited/created your model, you should finalize your .ms3d files (structures) to import it to the IWTE.

create objects and sub-objects:
- The 4 Main Objects should be clear and always have their determined number of sub-objects (Wall:2-5/6, Gate:3, Gate House:2 and Arrow Tower:2x3 (remember that an arrow tower should be duplicated 3 times, so it should have 6 groups in Milkshape. Also remeber that the tower-base is a seperate object).
- The Default Buildings should be split into 'reasonable' objects.
Theoretically you can also merge all default objects into one Milkshape group, but huge objects may lead to some problems.
Objects which should have an effect in game (for example a chimney for smoke or a torch for light), should be own objects, otherwise the location of the effect won't be very correct.


Naming the objects and sub-objects:
- You should name all objects and sub-objects with a numerical prefix and the appendix for the damage level(s). The IWTE will consider all those objects as 'new objects'. The only prefix that you should not use is 'Eo...' (This is the internal prefix for 'existing objects')
For example:
A00_g0 (a default object with 1 damage level)
A01_g0 (a gate with 3 damage levels)
A01_g1
A01_g2
A02_g0 (a default object with 2 damage levels)
A02_g1
A03_g0 (a wall with 6 damage levels)
A03_g1
A03_g2
A03_g3
A03_g4
A03_g5
A04_g0 (an arrow tower with 2 damage levels)
A04_g1
A05_g0 (the first arrow tower duplication)
A05_g1
A06_g0 (the second arrow tower duplication)
A06_g1
….....


Various things:
- The .ms3d file itsself can be named like you want
- The groups and the model itsself should have no comments in Milkshape
- All Milkshape groups should be assigned to 'Material0' (don't know if it's necessary, but it works)




3. The IWTE

After you have completed your terrain and settlement in Milkshape, it is time to setup your settlement with the IWTE.


Overview over the IWTE and it's options:
Spoiler Alert, click show to read:






Tip: You can also slightly customize the IWTE interface by moving the objects-, structures- and textures-windows and overlay them, so that it looks like this:
Spoiler Alert, click show to read:






The 2D window

- Shows objects, structures, complexes, the whole settlement, deployment, ladders, doors, breaches etc in 2D.
- Edit the plaza, deployment, deployment blocks, doors, road markers, tech trees, defense points and pathfinding in the 2D view
- Zoom in and out


The Objects window

- Shows the settlement divided into objects
- Shows object attributes


The Structures window



- Shows the settlement divided into structures and complexes
- Shows textures and texture type


The Textures window

- Shows the textures for the settlement


World Files



- Load and Save
- Change type, faction, culture and name of the settlement


Views

- View objects, structures, complexes or the whole settlement in 2D.
- View deployment, ladders, doors, breaches etc.
- Create settlement overview .tgas for pathfinding and vegetation editing


Structures



- Replace, add or delete Structures or Complexes
- Write Structures to .ms3d files


Textures



- change, add textures


Collision/Anim

- create, remove or change collisions and animations
- add or change effects
- change texture reference for animation-textures


perimeter

-assign walls to perimeters (layers of walls)


Gameobjects

- change the plaza, deployment, road markers and tech trees in the 2D view


Mainobjects

- Create Mainobjects.
- add, change, delete docking points, firing slots, breaches for gates and walls


paths

- add, change, delete deployment on walls
- change defense points


Terrain1



- change texture reference for terrain textures
- replace, change the terrain
- write structures to .ms3d files


Terrain2

- edit vegetation
- edit pathfinding



3.1. Make a base settlement
My first recommended step is to reduce your base settlement to only a few structures (will be deleted or replaced later).
One structure has to include a gate and a gate house!


# Option1 – Reduce the settlement
- Open the IWTE and go to 'Read Binary Files' and choose your base settlement. The tool always need to open 3 files: the .world, the .animinstances and the . worldcollsion file.
- After the tool has finished reading the files, go to the structures window and click any structure of any complex. Then go to 'Structures' -> 'Complex Actions' -> 'Delete Complex'.
- Repeat the last step until you have only one complexes left, but keep at least one complex that includes a Gate and a Gate House! (Note that a settlement in-game must have at least one gate and a gate house to work. Not even walls are needed!)
- Test if the reduced settlement is working in-game (if it is not working, which may happen in some rare cases, go a few steps back and test the settlement which has some more complexes)


# Option2 – Use the 'start-up-kit' (recommended)
The main reason for the 'start-up-kit' was that the settlement reduction can be very time-consuming and can also cause some errors.
Therefore I would recommend to use the 'start-up-kit' if you want to make a settlement from scratch.



3.2. Importing .ms3d files

After you have reduced and tested your base settlement, you can start importing your Milkshape structures to the IWTE.

- Open the IWTE and load the reduced base-settlement (or 'start-up-kit').
- Select any original stucture, except a structure that includes a Gate.
- Go to 'Structures' → 'Structure Actions' → 'Replace ms3d File' (or 'Add Structure')
- Choose your ms3d file that includes the Gate(s) and accept it.
- To make a very simple test if the structure is working in-game, choose any object of your replaced structure and give it a collision (see 3.3.1 - Collisions).
After the collision was added, copy the 3 newly created binary files (.world, .animinstances, .worldcollision) into the correct folder within your mod-folder and rename them to the original name. Start the game and attack your edited settlement (Repeat this test for every new structure that you have replaced or added!)
- Now replace the other remaining structures with your new structures or just add new structures if no original ones are remaining.


Important: Be careful with the replacement of the original structure that includes the Gate and Gate house! In several cases this lead to unspecific in-game crash as soon as I have deleted/replaced this structure.
I have currently no final solution to this problem, so please see that this structure remains temporarily!
If your game does also crash when you delete/replace the original structure with a gate, the easiest way to get rid of this structure is to 'bury' the structure under the terrain (write the structure to .ms3d and move it down in Milkshape without changing groups or names). Save it and re-import it to the IWTE and remove all attributes from it, except one collision for a default object.


A new (replaced or added) structure can look like this in the IWTE:




3.2.1 Textures
If you have made custom textures for your model, you should change the set of textures first:
- Go to the 'Textures window' of the IWTE and click the texture that you want to replace or click any if you want to add a new texture.
- Go to Textures → Change Texture or Add Texture
- Enter the correct path and texture name of your custom texture and the normal map and accept it.


Assign the correct texture to your new/replaced structures:
- Go to the 'Structures window' of the IWTE and click a structure.
- Go to Structures → Change Structure texture
- Enter the correct Texture identifier and accept it.





快乐些 发表于 2014-4-9 18:15:28

4. Roads, mud & farms


Roads, mud and farms are the only things that are not edited via Milkshape or the IWTE.
They are simple .texture files that can be edited (convert them to .dds format) with any 2d graphics/paint program who can alter alpha channels and .dds files.
Every settlement has it's own road, mud & farm texture files, which can be found for example in:
data\settlements\north_european\settlements\huge_city\maps\overlays.

4.1 roads
A white alpha channel marks the location of a road.

4.2 mud
A white alpha channel marks the location of mud.

4.3 farms
A white alpha channel marks the location of farms.



Tip: If you need an overlay of your settlement, you can create a tga file (Create World TGA -PF size), resize it to the size of the road/mud/farm size, so you will know roughly where your settlements objects are.




5. Making the settlement unique


The last steps explained how you can change an exisiting settlement into a new one, but this will change all settlements of this type (i.e a northern euroepan castle) to the new one.
If you want your settlment to be unique on the campaign map, you will have to change two things:


5.1 The .worldpkgdesc file
The worldpkgdesc file controls in which folder the new settlement files are, how they are called, which type it is and for which faction and culture the settlement is. The Kingdoms Expansion introduced faction specific settlements (maybe wilddog has introduced it for Medieval II, too), so you can have, for example, a unique northern european huge city, that only england can build.


You also have the possibility to 'transform' a certain settlement into another. For example if you have chosen a northern european castle as your settlement-base, you could also call it a city (remember that only the height of the walls is critical, the number of perimeters doesn't matter!). Since both, a castle and a city, have the same height of walls you can easily transform one into another.

Let's say we want to transform a northern european large city into a middle-eastern fortress (both have same wall heights), we'll do the following:



Will be updated..... (but it is easy

)

以上部分是如何让某个国家使用所创造出来的独一无二的建筑,这部分待续,实际上就是编辑 HEX代码,本人也明白个一二,有空时写个中文教程吧



5.2 The terrain information
The terrain information controls in which folder the new roads, mud & farms texture are and how they are called.
If your settlement should be unique, you have to give unique names to those texture files:



Will be updated.....(but it is easy)




6. Errors & Solutions


I have had relatively few errors or crashes, but some errors may occur on two levels:


6.1 IWTE errors

List Index out of range
Important: If you get this error don't continue to work with the IWTE. Close it and open your latest files with the IWTE again.

# During a Structure Replacement/Add:
- see that your .ms3d file has NO single comment line before the import to the IWTE
- see that all group names in Milkshape are correct.
- IWTE may not replace some original structures (those who hava an object which uses two textures in it). In this case the whole original complex should be deleted.
# During a Terrain Import:
- check that your terrain .ms3d file has the original comment and that it has only one group in Milkshape.

Not enough items in file
- ???



6.2 Game errors

Crash to Desktop when loading the settlement
- human player is defender and the deployment zone does not include the plaza
- No functioning gate is present
- A gate, gate house or a wall has no Animation/Collision or Collision

The defender has immediately won after the battle was started
- No gate present or no gate assigned to a perimeter
- The plaza is unreachable or pathfinding is blocked

An object of the settlement is glowing red/green
- All objects within one structure have no collisions



The tutorial is not completely finished yet, but I will update it frequently. Especially the section about attributes will be updated with more screenshots. I will also make a .pdf version of the tutorial when I have time.

Also, if someone doesn't understand anything, I will update the specific section in the tutorial and I'm always open to suggestions how the tutorial could be improved.



!!! If you find the IWTE useful, please credit wilddog's and makanyane's incredible work !!!
I say wilddog and makanyane for opifex!



快乐些 发表于 2014-4-9 18:16:05

3.3. Set up attributes for a settlement

3.3.1 Object attributes

Once you have imported one or all your ms3d files to the IWTE, you can begin giving attributes to your new or edited objects. Not all objects need to have the same attributes, there are differences between the 5 object types.

Here is an overview of the 5 different objects types and which attributes they need:


Actually most attributes are completely optional, but recommended, of course.
Theoretically a settlement will even work if it has only one Gate and one Gate House (both with correct attributes!) and a closed ring of impassable terrain (this could be done via 2D pathfinding or terrain)!



A step by step guide how attributes can be assigned:

Important: I recommend that you give start giving attributes to your structure that includes the Gate and Gate house. Make small steps first and begin giving attributes only to your gate and the gate house and see if it is working in-game before you procede with all steps!


1. Mainobjects (critical points for AI defensive/offensive decisions)
All Functioning Walls, Gates, Gate Houses and Arrow Towers should be assigned as Main Objects:
- Go to the 'Objects window' of the IWTE and click a main object.
- Go to Mainobjects → Create new Mainobject
- Then choose the Main object type (Wall/Gate/Gate House/Arrow Tower), depending on what object you have clicked.
- Accept it and repeat this with all your Main Objects.


3. Animations/Collision (Animation for Walls/Towers/Gates)
Animated Objects don't need a collision, because the collision will be automatically added with the animation (Animation is based on a certain collision).

Animations/Collisions for reused original Walls/Gates/Arrow Towers:
- Go to the 'Objects window' of the IWTE and click a Main Object that should be animated.
- Go to Collision/Anim → Assign Animation/Collision
- Select the correct animation from the dropdown list, point the indicator into the correct direction and accept.
- IF your needed animation is not in this list (for example if you use a 'Middle eastern castle tower' with a north european base-settlement), you have to use the Pick new Animation/Collision option. Then you will have to load the original settlement that includes this animation. Load all 3 requested files, then choose the correct animation and accept.
- Accept it and repeat this with all your Main Objects that should be animated.

Note:
The animation for the gate and the walls should be easy to identify when you are assigning or picking an animation. However, there are numerous tower animations where I also don't know which one fits which tower exactly. Here is probably some experimenting required.

Animations/Collisions to custom Arrow Towers
If you have made custom Towers or Walls, you should refrain from giving your tower an animation because it will not really fit. In this case, skip this step and just create a normal collision (see next step) without an animation.


2. Collisions („physical shape“ of the model)
- Go to the 'Objects window' of the IWTE and click a Gate House or a Default Object.
- Go to Collision/Anim → Create Object Collision
- Point the Indicator to the direction which your object is facing. You don't need to be 100% accurate for this. The rough direction is enough.
- Accept it and repeat this with all your Objects that should have a collision.


Important: Duplications of Objects don't need seperated collisions. In this case you create only one collision for the first object, then click the duplicated object(s) in the 2d window and
- Go to Collision/Anim → Assign Object Collision.
- Choose the Col No of your first object from the dropdown list, point the indicator in the correct direction and accept.
- Once you are finished with adding collisions, go to Collision/Anim → Delete ALL unused Collisions and accept.

Tip: Not all objects need a collision. With some objects it may be better to give them no collision, like decorative objects, for example torches, crates, barrels, etc..


4. Siege Docking (points where ladders, siege-towers and rams are docking)
- Go to the 'Objects window' of the IWTE and click a Wall or a Gate.
- Go to Main Objects → Add object siege docking
Walls should be dockable for siege-towers and ladders (for huge cities only siege-towers are valid), Gates should be dockable for rams. Normally the default option is already correct.
- Accept it and repeat this with all Walls and Gates.


6. Firing Slots (location where arrow/ballista/cannon projectiles are firing)
(not really figured out yet....)


7. Collision Effects (ambient effects like camp fires or chimney smoke)
- Go to the 'Objects window' of the IWTE and click a Default Object that should have an effect (i.e a torch)
- Go to Collision/Anim → Change Collision Effect
- Click Add Effect Row
- Choose an effect from the dropdown list. Light effects like campfire or brazier should have set light emitting to 1. The relative height is the height from the center to the top of the object.
For example if a torch is 1.5 high (y-value from Milkshape), the height from the center to the top would be 0.75, so the relative height is also 0.75.
- Click Accept Row and accept it.
- Repeat this with all Default Objects that should have an effect.

Notes:
- You can also give different effects to the different damage levels of an object. If you would like to do that, just Amend Effect Row, change the damage level and make a new effect.
- You can also add new effects to the 'descr_campfires_brasiers.txt' and the 'descr_chimney_smoke.txt' files.
You can add those effects to the IWTE via the Amend Effect List→ Add Effect Button and type in the name of your new effect.
Click Accept Effect change.


8. Breaches/doors
(normally added automatically with the IWTE)



3.3.2. Global settlement attributes

These are the settings that every settlement has and which can be edited via the IWTE.


1. Pathfinding - controls where units can go and where not
# Step1 – Rough Pathfinding
- Go to Terrain2 → Create Pathfinding TGA2
- Choose the .worldpathfinding file of your settlement-base and accept
- Open the newly created xxx_wpf2.tga with Photoshop*
- Go to Views → Create World TGA -PF size
- Enter the Size Value. This is the number of vertexes per side from your terrain file. Accept.
- Open the newly created xxx_worldobject.tga with Photoshop* and paste it as a new layer over the xxx_wpf2.tga file and lower the transpareny.
- Now that you see where the objects of your settlement are, edit the xxx_wpf2.tga file.
Green is passable, blue is impassable terrain.
- Save the xxx_wpf2.tga file
- Go to Terrain2 → Replace with Pfinding TGA2
- Choose the .worldpathfinding file of your settlement-base and accept. Choose a save-name.

#Step2 – Precise Pathfinding
- Go to Terrain2 → Amend PathFinding in 2D
- Choose the newly created .worldpathfinding file of Step1 and accept. Choose a save-name.
- The pathfinding will be displayed in the 2D window of the IWTE.
- Go to Views → View World -2d (or View Structure -2d) to see where your objects are.
- Now simple click into the 2D window to add/remove a pathfinding square to make the pathfinding more precise.
- Accept it and put the newly created .worldpathfinding file to your mod-folder.


2. Vegetation - controls location of trees and grass
- Go to Terrain2 → Create Veg Group 4 TGA
- Choose the .worldvegetation file of your settlement-base and accept
- Open the newly created xxx_group4_WVeg.tga with Photoshop*
- Go to Views → Create World TGA -Veg size
- Enter the Size Value. (See 1. Pathfinding)
- Open the newly created xxx_worldobject.tga with Photoshop* and paste it as a new layer over the xxx_group4_WVeg.tga file and lower the transpareny.
- Now that you see where the objects of your settlement are, edit the xxx_group4_WVeg.tga file.
Black is no special ground (the ground that is determined via the descr_ground_types.tga will be used). Green is grass. Turquoise are trees.
- Save the xxx_group4_WVeg.tga file
- Go to Terrain2 → Replace Veg Group 4 TGA
- Choose the .worldvegetation file of your settlement-base.
- Accept it and put the newly created .worldvegetation file to your mod-folder.


3. Perimeters - tells the AI where the walls are, that it has to defend or breach
- Go to perimeters → Assign Perimeters
- Select the objects of your settlements in the 2D window and click on either Assign as no Perimeter, Assign to Perimeter1, Assign to Perimeter2, Assign to Perimter3.
- Usually only the parts that build a closed wall are set to a Perimeter. Accept.


4. The Plaza - the place that has to be defended or be conquered to win the battle
- Go to Gameobjects → View Plaza (The same button will change to Change Plaza)
- Click and move the orange square in the 2D window where you want. Change the size if you want and accept.


5. The deployment zone - the zone where defenders can be deployed before the battle
- Go to Gameobjects → View Deployment (The same button will change to Change Deployment Nodes and an Add Deployment Nodes button will appear).
- Click a deployment node in the 2D window and move it where you want.
(- Click a line of the deployment zone and add additional nodes if you want and accept.)


6. Road Marker - marks the start of a road that is built in the campaign mode
- Go to Gameobjects → View RoadMarker (The same button will change to ChangeRoadMarker and an Add RoadMarker and a Delete RoadMarker button will appear)
- Click a Road Marker in the 2D window and move it where you want. Use the Pointer to give it the direction where the road should lead to and accept.


7 Tech Trees - the locations where tech-buildings, like barracks or smiths are
(adding of tech trees not figured out yet)
If you don't have/don't need tech tree slots, simply remove them:
- Gameobjects → Delete All TechTrees


8 Deployment blocks - the zone where defenders can be deployed on walls or other objects)


..... will be updated .........



9 Defense Points (retreatment points for the AI once the first level of walls is broken)


..... will be updated .........





Important: If you need to change something of your models/structures after you have already assigned attributes to it, write the structure (Structures → Write ms3d file – all) to .ms3d and then edit it. Do not just continue your work on your original .ms3d file and import it again to the IWTE.
This will make your structure loose all attributes!
When you have written your structure to .ms3d again, you will notice that it has different group names now, so if you want to keep the attributes that this structure currently has in the IWTE, don't change the group names or order, otherwise the structure will also loose all it's attributes when you re-import it to the IWTE.
However, you can add new groups to this file and the structure won't loose it's attributes, you just have to give attributes (if necessary) to your new groups. Name new groups as described in 2.2.2.
页: [1]
查看完整版本: 中2建筑模型编辑