Map Builder is an ingame 3D editor for the game ArmA3 from Bohemia Interactive. Map Builders aim is to assist in the creation of object compositions for terrain creation (export to Terrain Builder), but it can be used for the creation of mission templates (SQM) and object compositions in the form of executable SQF-scripts. Map Builder is not a mission editor. It's sole purpose is the placement and manipulation of static objects. Map Builder is in Alpha state. That means it is not feature complete and definitly not bug free. But I try to polish every release, so Map Builder can be used in a productive environment.
What Map Builder actually can do:
Accelerate the creation of terrains.
Creates compositions of objects for missions.
Saves you from placing objects with Buldozer!
Allows you to create compositions/terrains with your friends in multiplayer.
What Map Builder can't do:
Create terrains without Terrain Builder.
Create complete and playready missions.
Generate a terrain with a single button.
The development of Map Builder began when Bad Benson and ZeroG asked me to create a 3D editor for ArmA3 to assist in the placement of objects back in the beginning of 2014. Because of my limited experience with ArmA3's UI design the development slowed down. But in november 2014 I finally pulled myself together, developed an UI framework and made Map Builder useable. From that time on I am continuous working on Map Builder and release updates on a regular base.
A complete objectlist from read config.
Selections (Movement of groups of objects).
Copy & Paste.
Project saving, loading and merging.
Simple export for Terrain Builder (via own FileIO).
Export to SQF-script (calling it will rebuild the export).
Works in Multiplayer.
More to come.
Installation / Usage:
Editor Upgrades adds new object to 2D Editor and Map Builder. Some upgrades contain their own addons, other just add compatibility with Map Builder to third party AddOns (like JBAD).
Armaholic.com has its own Youtube channel where we will cover the Community made releases.
Subscribe to the Armaholic.com Youtube channel
I want to cleanup the scripts and then I want to upload the project on bitbucket/github so everyone can fork this project and send me patches or features.
Feedback and Suggestions
YES! That is the reason I post this project this early! I need feedback, ideas, complains, wishes, suggestions, bugreports and more! Just reply in this thread, write me a PM, add me in skype or steam or write me a mail!
Map Builder now has an own Skypegroup. Everyone is invited to join the group to ask questions, get support, request features, give feedback or just discuss your awesome project you are building with MapBuilder:
Credits & Thanks:
CypeRevenge - A3 Editor upgrade included in MapBuilder.
ZeroG - A2 editor upgrade.
Scruffy - Testing and config stuff.
MemphisBelle - Testing and config stuff.
Mondkalb - Showing me how to create dialogs back in the good old times, precisionfix and general advices.
cyrokrypto - Helping with some UI issues.
Maikeks - Proofreading every single sentence - twice!
Bushlurker, Jakerod, M1lkm8n, NigelS, badbenson, Giallustio and all the guys from the map maker skypegroup for discussions, feedback and help. I am doing this for you guys!
License / Disclaimer:
I release this alpha under ARMA PUBLIC LICENSE SHARE ALIKE (APL-SA)
With this license you are free to adapt (i.e. modify, rework or update) and share (i.e. copy, distribute or transmit) the material under the following conditions:
Attribution - You must attribute the material in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the material).
Noncommercial - You may not use this material for any commercial purposes.
Arma Only - You may not convert or adapt this material to be used in other games than Arma.
Share Alike - If you adapt, or build upon this material, you may distribute the resulting material only under the same license.
The author's name and credits of this projects must stay in all adapted works (in scripts and readme-files).
This is a maintenance update.
Added new custom loadingscreen
Limited camera speed to slower values and changed "Left Alt" to being an instant speed boost
Now correctly returned editor focus, when exiting map control
Updated basic A3 UI defines and restored A3_UI_F inheritance for all controls to harden MB for future A3 updates
Fixed unreadable text by changing font (BIIIISSSSS!!!)
Changed key and controls to better reflect EDEN controls as they have become standard.
Selection rectangle is now handled by MMB.
Selection is now Left -> Select and Right -> Deselect to prevent conflicts with new Eden-like controls
Added new Linemarker define to map control
Added support for custom "window close" action
Fencer is now correctly disabled, when closed by pressing X
Added Help-window (replaces settings button for now)
Added Snake Man to "Thank you"
Added VR Arena as example project
Changed version number to 0.9.1
Changes from 0.8 to 0.9 (in no particular order):
Made brusher arrows and lines height consistent again
Fixed missing dialog var in some files.
Added brusher straight draw mode
Added MB_Plane object (unused for now)
Removed map debug msgs
Added confirmation dialog for project reset.
Object variables are now correctly released on project reset for deleted objects.
Reintroduced "exact position"-hack for project saving (Feedback needed)
Added missing key defines to fn_SelectFavorite
Finalized new 2d map (now moveable and with texture)
Replaced a missing textfont define
Removed UI_PATH define. Has somehow broke my reloading (Preprocessor bug?)
Removed unused UI bootstrap from fn_brusherAddTemplate
Added option for selecting p3d or classnames in TB export
Terrainbuilder import added by Lappihuan
Fixed map not clickable (ctrlEnable needed)
Fixed: TB export used removed functions. Export to TB should now work as expected.
Typo in export window tooltips.
Added missing runway ligts and objects.
Moved debug define to extra file. Some other debug code now gets poperly excluded.
Moved some window code to proprocessor macros.
Added missing JBAD powerlines.
Added new "Import from Editor"-function. Currently in Export-window, needs to be relocated.
Added "Up" and "Down" direction for fencer.
Fixed boundingboxes are now positioned ATL.
Added RPT log for object creation.
Reworked file handling.
Added confirmation dialogs to multiple places.
Improved save and load speed.
Relocated project code to project-folder.
Removed Quadtree debug markers.
Reworked all windows to new standard.
Map can now be closed with "Esc".
Added keys for different view angles (Numpad 0,1,3,7 and 9).
Added Kerkkoh to credits.
Holding "Shift" while clicking "Select" in "Used"-Window should now poperly add objects to current selection.
Objects outside slectionrectangle are now poperly deselected.
SetRelPos now uses vector-commands.
Added nullcheck for object update.
Reworked font and fontsize to be the same on all resolutions.
Unified and changed some designs like buttons.
Buttons now can have tooltips.
Tooltips added to most buttons.
Synced TML template names and TB export names.
Added function to check if file exist.
Added function to get list of files in a folder.
Loading of presets are now in a new function.
Added Kerkkohs brushes.
Moved generic window defines to own file.
Added more tooltips.
Buttons can now be disabled in infopopup depending on popup type.
Added a chat wrapper.
Added TB template (TML) export.
Taskbar is now updated periodically.
Export to TB now uses plain angles again.
Began UI rework (for consistent design across different settings).
Window Background and Window Headers are now seperate classes.
Moved project window to new standard window type.
Reworked export window to "new" standard. Started with project window.
Fixed networking object sync.
Bounding boxes and helpers are no correctly created, synced and deleted.
Selections can now be copied to textfiles outside of A3 (clipboard)
Added "?"-buttons to most windows
Added Streetlamp example brushes.
Added new settings in Vergepost brush.
Fixed TPL selection in used- and favorite objects.
Fixed a broken functionname with reintroduction of exactposition.
Added the option to fencer to select the source of the placed objectclass (Library or current selection)
Removed some debug output
Changed z-position of 2d map
Added "autostart" to module and removed unused "sync" option.
BIS Devlopment Watermark gets removed when MB is open.
Fixed broken tooltips in export and added more to fencer.
Added VergePost to A3 Extra Objects
Finalized Brusher 1.0
MousePosition (World) is now updated every Frame (was onMouseMove)
Added visual helper for objects at groundline.
Boundingboxes are now tilted correctly
Added author properly in config
Replaced lineIntersect with new lineIntersectSurface
Added 3D Boundingbox (kudos to Mondkalb)
Fixed a misspelled file.
Changed how the objectlist and sync is handled. No nullObjects are tracked anymore. Objects are distinguished by their ID,VarName or UID variable.
Used objects are now only refreshed on windowupdate or with a dedicated button.
Added basic brusher UI and functionality
There can now be only one active brush process.
Brush and object creation is async now.
Non-mouse rotation and movement of selections is now relative to camera (more intuitive)
Continued working on brusher Window.
Fixed a bug in Copy function (objects params were not copied correctly)
Added container for brusher window.
Added arrow key fine control - Fixes T27
Added position and selected object count in taskbar
Optimized config/function refresh.
Added function to move object by a fixed stepsize on 4 axes
Reworked all files into functions
Reworked whole addon into module instead of mission
Added pbo prefix
Removed now unused mission
Added quadtree for storing objects and selecting
Added config/script refresh for accelerated development
- BI forums