Roller: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\[ *(https?:\/\/[^ = ]+) +([^= ]+) *\]" to "{{Link|$1|$2}}")
 
(62 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, along with FXRuby (this is included in the Ruby installer for Windows, but is easily available as a gem if it is not included in your distribution).
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.
 
'''RunRoller.bat'''
 
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
! width="180"|paramater
! width="40"|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?

Latest revision as of 15:11, 28 April 2023

By the Roller Dev Team

Project Summary

Roller is a community made software developed by Spooner to convert and process Operation Flashpoint and Armed Assault island files.

Its primary purpose is to convert Operation Flashpoint islands to Armed Assault for the ACE Island Pack, but it can also do some processing that could be useful to people making new Armed Assault islands.

Roller (dead link) has been released!


Project links

  • Roller project page (dead link)
  • Roller feedback forum (dead link)
  • Roller support forum (dead link)
  • Roller download area (dead link)


Roller Dev Team

  • Project manager: kyu
  • Ruby developer: Spooner
  • Configuration: the-f
  • Testing: kyu, the-f and looz
  • Roller image: Pufu