| 
				   | 
				
| (65 intermediate revisions by 6 users not shown) | 
| Line 1: | 
Line 1: | 
 | by the [[Tools:Roller#Roller_Dev_Team|Roller Dev Team]]
  |  | By the [[#Roller Dev Team|Roller Dev Team]]  | 
 |  | == Project Summary ==  | 
 | 
  |  | 
  | 
 | ==Project Summary==
  |  | Roller is a community made software developed by Spooner to convert and process {{ofp}} and {{arma1}} island files.  | 
 | 
  |  | 
  | 
 | Roller is a community made software developed by Spooner to convert and process OFP and ArmA island files.
  |  | Its primary purpose is to convert {{ofp}} islands to {{arma1}} for the ACE Island Pack, but it can also do some processing that could be useful to people making new {{arma1}} islands.  | 
 | 
  |  | 
  | 
 | It can read:
  |  | {{Link|link= http://dev-heaven.net/news/show/1|text= Roller}} has been released!  | 
 | 
  |  | 
  | 
 | * 4WVR WRP (OFP unbinarized)
  |  | 
 | * 8WVR WRP (ArmA unbinarized)
  |  | 
 | 
  |  | 
  | 
 | It can write:
  |  | == Project links ==  | 
 | 
  |  | 
  | 
 | * 8WVR WRP (ArmA unbinarized)  |  | * {{Link|http://rm.6thsense.eu/projects/show/roller|Roller project page}}  | 
 | * XYZ height data (text file)
  |  | 
 | * Object data list (text file)
  |  | 
 | * Mask texture (PNG)
  |  | 
 | 
  |  | 
  | 
 | Additional features
  |  | * [http://rm.6thsense.eu/projects/roller/issues?query_id=3 Known problems]  | 
 |  | * [http://rm.6thsense.eu/projects/roller/issues?query_id=4 Open feature requests]  | 
 |  | * {{Link|http://rm.6thsense.eu/projects/roller/issues/new|Report a problem or feature request}}  | 
 | 
  |  | 
  | 
 | * Generate Mask texture (customizable coloring based on terrain point height, definition of forest and urban areas, customizable texture size)  |  | * {{Link|http://rm.6thsense.eu/projects/roller/boards/show/2|Roller feedback forum}}  | 
 | * Replace forest block with customizable single objects (type, densitity, relative frequency)
  |  | * {{Link|http://rm.6thsense.eu/projects/roller/boards/show/3|Roller support forum}}  | 
 | * Replace single objects with optional offset (1:n and n:1)
  |  | 
 | * Reduce cell size for more height data points (smooth terrain shape)
  |  | 
 | * Make terrain bumpy (needs cell size reduction)
  |  | 
 | * Rise/lower sea level
  |  | 
 | * Generate list of unique objects present in source file
  |  | 
 | * Replace textures (1:n and n:1)  |  | 
 | * Set terrain point height at the edges (to avoid endless repeated terrain)
  |  | 
 | * Processing summary
  |  | 
 | 
  |  | 
  | 
 | ==Preface==
  |  | * {{Link|http://rm.6thsense.eu/projects/list_files/roller|Roller download area}}  | 
 | 
  |  | 
  | 
 | You need be able to use the command line or at least able to edit a batch file to tell the app what to do. There is no GUI available to access the app. The app can be called sequentially to perform a batch operation to process multiple files easily.
  |  | 
 | 
  |  | 
  | 
 | ==Installation==  |  | == Roller Dev Team ==  | 
 | 
  |  | 
  | 
 | ===Requirments===
  |  | * Project manager: kyu  | 
 |  | * Ruby developer: Spooner  | 
 |  | * Configuration: the-f  | 
 |  | * Testing: kyu, the-f and looz  | 
 |  | * Roller image: Pufu  | 
 | 
  |  | 
  | 
 | * Download and install [[Visitor_3|Visitor 3]] as well as buldozer.
  |  | 
 | * This means to have a P:\ partition with all ArmA source files available.
  |  | 
 | ** Install [[BI_Tools|BI Tools]] first.
  |  | 
 | ** Use [http://www.armaholic.com/page.php?id=3320 unBuildArmA] by MadDogX to mass unpack all ArmA pbos to P:\ or use [http://www.armaholic.com/page.php?id=411 cpbo] by Kegetys to do it one by one yourself.
  |  | 
 | ** Download and unpack the [http://www.flashpoint1985.com/cgi-bin/ikonboard311/ikonboard.cgi?act=ST;f=61;t=67070 BI Sample Models] to P:\. Overwrite existing files.
  |  | 
 | * No requirements for Roller. Its a self-contained application.
  |  | 
 | 
  |  | 
  | 
 | ===Download===
  |  | [[Category:Community Tools]]  | 
 |    |  | 
 | ====Enduser version====
  |  | 
 |    |  | 
 | [http://www.ofpec.com/ Download at OFPEC]  |  | 
 |    |  | 
 | ====Open source version====
  |  | 
 |    |  | 
 | [http://www.ofpec.com/ Download at OFPEC]
  |  | 
 |    |  | 
 | For the source you need at least [http://www.ruby-lang.org/en/downloads/ Ruby 1.8.6] installed.
  |  | 
 | Recommended development IDE is [http://www.netbeans.org/downloads/index.html NetBeans IDE] 'Ruby' version.
  |  | 
 |    |  | 
 | ====Additional helpers====
  |  | 
 |    |  | 
 | * Object definition template
  |  | 
 | ** [http://www.ofpec.com/ A1]
  |  | 
 | ** [http://www.ofpec.com/ ACEIP]
  |  | 
 | ** [http://www.ofpec.com/ OFP 3rdParty]
  |  | 
 | * Sample PEW files (TODO) for OFP standard island files (128, 256, 512, 1024 terrain size and 50m cell size) with object definition templates already imported.
  |  | 
 | * Sample batch file to execute Roller with given parameter defined in the batch file:
  |  | 
 | ** Copy the given text in a new file called Roller.bat (for windows systems).
  |  | 
 | ** Check the following Roller Instructions section below to understand how to configure the batch file.
  |  | 
 | ** Adapt the path to the Roller application and the path to the source data (wrp files) in the first section of the file.
  |  | 
 | ** Run the batch file.
  |  | 
 |  
  |  | 
 |  rem 'Adapt to your local settings':
  |  | 
 |  
  |  | 
 |  set FILE_SOURCE=X:\Roller\sourceFiles
  |  | 
 |  set PARTITION_OF_ROLLER=X:
  |  | 
 |  set PATH_TO_ROLLER=X:\Roller
  |  | 
 |  
  |  | 
 |  
  |  | 
 |  
  |  | 
 |  rem 'DO NOT TOUCH'
  |  | 
 |  
  |  | 
 |  %PARTITION_OF_ROLLER%
  |  | 
 |  cd %PATH_TO_ROLLER%
  |  | 
 |  
  |  | 
 |  rem 'DO NOT TOUCH'
  |  | 
 |  
  |  | 
 |  rem 'Example: Only XYZ export from WRP with logfile'.
  |  | 
 |  rem ruby %PATH_TO_ROLLER%\Main.rb %FILE_SOURCE%\EXAMPLE.wrp --xyz %FILE_SOURCE%\EXAMPLE.xyz -f > %FILE_SOURCE%\EXAMPLE_log.txt
  |  | 
 |  
  |  | 
 |  rem 'Example: Almost all params (apart from mask generation)'.
  |  | 
 |  rem ruby %PATH_TO_ROLLER%\Main.rb %FILE_SOURCE%\EXAMPLE.wrp --replace-blocks ofp_ace_forest_blocks.yaml --replace-objects ofp_ace_objects.yaml,ofp_arma_objects.yaml --terrain-cell-size 3.125 --terrain-bumpiness 0.5 --object-template EXAMPLE_export_obj_t.txt --unique-objects EXAMPLE_unique_objects.txt --xyz EXAMPLE_export.xyz -f
  |  | 
 |  
  |  | 
 |  rem 'Example: Show all available params.'
  |  | 
 |  rem ruby %PATH_TO_ROLLER%\Main.rb -?
  |  | 
 |  
  |  | 
 |  
  |  | 
 |  
  |  | 
 |  rem 'Adapt param list':
  |  | 
 |  
  |  | 
 |  ruby %PATH_TO_ROLLER%\Main.rb -?
  |  | 
 |    |  | 
 | ==Instructions==
  |  | 
 |    |  | 
 | ===Roller===
  |  | 
 |    |  | 
 | {| class="wikitable"
  |  | 
 | |-
  |  | 
 | ! short param
  |  | 
 | ! paramater
  |  | 
 | ! type
  |  | 
 | ! description
  |  | 
 | |-
  |  | 
 | | -F
  |  | 
 | | --replace-forests A,B,C
  |  | 
 | | Array
  |  | 
 | | Replace OFP forest block objects with individual trees and bushes, according to comma-separated list of YAML files (occurs after object replacement)
  |  | 
 | |-
  |  | 
 | | -o
  |  | 
 | | --replace-objects A,B,C
  |  | 
 | | Array
  |  | 
 | | Replace objects according to comma-separated list of YAML files (occurs before forest replacement)
  |  | 
 | |-
  |  | 
 | | -t
  |  | 
 | | --replace-textures A,B,C
  |  | 
 | | Array
  |  | 
 | | Replace textures according to comma-separated list of YAML files
  |  | 
 | |-
  |  | 
 | | -c
  |  | 
 | | --terrain-cell-size N
  |  | 
 | | Float
  |  | 
 | | Set new size of terrain cells (metres). This must be a divisor of the current terrain cell size (e.g. for OFP, which has 50m cells, use 25, 12.5, 6.25 or 3.125
  |  | 
 | |-
  |  | 
 | | -b
  |  | 
 | | --terrain-bumpiness N
  |  | 
 | | Float
  |  | 
 | | Maximum amount of vertical distortion of new grid points added by terrain-cell-size (metres). Value is ignored unless terrain-cell-size is used. Defaults to 0 (no bumpiness)
  |  | 
 | |-
  |  | 
 | | -r
  |  | 
 | | --raise-sea-level N
  |  | 
 | | Float
  |  | 
 | | Move sea level up by this distance (move sea level down if negative). Done before edge-height is set
  |  | 
 | |-
  |  | 
 | | -e
  |  | 
 | | --edge-height N
  |  | 
 | | Float
  |  | 
 | | Sets the height of all terrain points around the edge to a specific value. This is applied after cell, bumpiness and sea-level changes.
  |  | 
 | |-
  |  | 
 | | -m
  |  | 
 | | --satellite-mask [FILE]
  |  | 
 | |
  |  | 
 | | Export a satellite mask PNG image (FILE defaults to DEFAULT_EXPORT_MASK (export_mask.png))
  |  | 
 | |-
  |  | 
 | | -C
  |  | 
 | | --satellite-cell-size N
  |  | 
 | | Float
  |  | 
 | | Size of satellite cells, i.e. pixels, in metres (defaults to DEFAULT_SATELLITE_CELL_SIZE (2) meter if this option is omitted)
  |  | 
 | |-
  |  | 
 | | -O
  |  | 
 | | --object-template [FILE]
  |  | 
 | |
  |  | 
 | | Export BIS object template file (FILE defaults to DEFAULT_EXPORT_OBJECT_TEMPLATE (export_obj_t.txt))
  |  | 
 | |-
  |  | 
 | | -u
  |  | 
 | | --unique-objects [FILE]
  |  | 
 | |
  |  | 
 | | Export a list of objects used in the WRP (FILE defaults to DEFAULT_EXPORT_UNIQUE_OBJECTS (export_obj_unique.txt))
  |  | 
 | |-
  |  | 
 | | -w
  |  | 
 | | --wrp [FILE]
  |  | 
 | |
  |  | 
 | | Export WRP file in 8WVR format, regardless of which format it was imported as (FILE defaults to DEFAULT_EXPORT_WRP (export.wrp))
  |  | 
 | |-
  |  | 
 | | -x
  |  | 
 | | --xyz [FILE]
  |  | 
 | |
  |  | 
 | | Export XYZ file (FILE defaults to DEFAULT_EXPORT_XYZ (export.xyz))
  |  | 
 | |-
  |  | 
 | | -f
  |  | 
 | | --force-overwrite
  |  | 
 | |
  |  | 
 | | Forces overwriting of existing output files (defaults to requesting user confirmation of overwrites)
  |  | 
 | |-
  |  | 
 | |}
  |  | 
 |    |  | 
 | ===Visitor 3===
  |  | 
 |    |  | 
 | ==Additional information==
  |  | 
 |    |  | 
 | ===FAQ===
  |  | 
 |    |  | 
 | ===Possible future changes===
  |  | 
 |    |  | 
 | ==Changelog==
  |  | 
 |    |  | 
 | ===2008-12-31===
  |  | 
 |    |  | 
 | * ToDo
  |  | 
 |    |  | 
 | object template => objectDataList
  |  | 
 | add source name to default file name
  |  | 
 | lower sea level?
  |  |