OpenSpades MapEditor

! dont use this. i dont work on this client anymore. !

! it wont be updated anymore !

! u can use this instead !

OpenSpades MapEditor

a fork of OpenSpades with a built-in MapEditor


no release for Linux and MacOs. sry.
building for Linux works, but there may be bugs. havent tried building on MacOs.


  • Different Tools

    • Block, BlockLine, Box, Ball and Cylinder.
    • Paint, Brush, Copy
    • Map Object editing.
    • Undo/Redo

  • Text Editor for map.txt files:

    • comfortably figure out where to place map objects and spawns with the MapEditor and write them down in the Text Editor.
    • Generate new map.txt files for the currently edited map.
    • Save and Load map.txt files.
    • keybind shortcuts:
      • CTRL + G : Generate new txt file.
      • CTRL + S : Save current txt file.
      • CTRL + L : Load current txt file.
      • CTRL + C : Copy selected Text.
      • CTRL + V : Paste copied Text.
      • CTRL + Z : Undo.
      • CTRL + Y : Redo.
      • CTRL + A : Select All.
      • HOME : start of line
      • END : end of line
      • PAGE_UP : start of file
      • PAGE_DOWN : end of file

  • Unlimited Customizable Color Palettes

    • create multiple Palette Pages
    • customize each individual color

  • Commands:

    • Quickly switch between editing and playtesting your map.
    • Quickly Respawn/Reposition at a certain coordinate of your choice to efficiently playtest your map.
    • Switch between base GameModes while editing.
  • Multiplayer/Online

    • Connect to a compatible server and create maps with other players using the MapEditor.
    • Turn your piqueserver into a compatible server with this pique script.


click to expand
  • Getting Started

    Start up the Client and press on the [Map Folder / Server List] Button in the upper left corner to load in the Map Folder list.
    If this is your very first time the list is obviously going to be empty. infact, the Map Folder doesnt even exist yet. In order for the Client to automatically create the Map Folder we have to create a new map.

    • How to create a new map?

      To Create a new map just type in a new map name in the address bar and press Enter. Now the Client loads in a list of "Canvases". You can now choose one to base your map on.

      Canvases are not generated. They are actual .vxl map files that are located in Resources. They are merely loaded to create new maps and never edited by the Client.
      This means you can add more Canvases by adding maps to the Canvas directory in Resources.
  • where do i find my edited maps?

    • For Windows Users, your maps are located in:
      to quickly access the appdata directory press Windows Key + R. now a small white window appears. type in "appdata" and hit Enter.
      no idea how it is in linux and macos sry lol
  • Tools

    some tools might be a bit finicky to use for the first time i will explain some of them

    • Building and Destroying:
      Left mouse click to build. Right mouse click to destroy.

    • Toggling and changing Build distance
      Rotate the mouse wheel to gradually change build distance.
      Click on the mouse wheel to toggle the "Surface" build mode.
      On "Surface" mode the block cursor will go all the way untill it hits the surface of a block, world boarder, or the maximum build distance limit (which is customizable) disregarding the normal build distance you have set by rotating the mousewheel.

    • Cylinder Orientation:
      The Cylinder tool uses the direction your camera is facing. The cylinder's orientation will be parallel to the camera's orientation on drag-build-start.
      For example if you look up or down, then the cylinder will stand upright (parallel to Z axis).

    • Scaling the Brush tool:
      Upon toggling the Brush tool on with its key, hold it. While holding the key you can now use the mousewheel to change the size of the structure your Brush tool is supposed to build.

    • Copy tool:
      When drag building with the Copy tool there is one block of particular interest. the first block of the entire structure u selected.
      This this block is the start of the copied structure. every other copied block "moves" in relation to the first block. You can control which block that is by carefully selecting which block u select first.

  • Commands

    • most commands can be used via the buttons in the colorpalette UI if you prefer that.
    • /r : set respawn at ur current location
    • /r <x y z> : set respawn at specified coordinate
    • /k : respawn
    • /s <team number> : set quick-switch team (1 = blue, 2 = green)
    • /s : quick switch team
    • /ud : undo
    • /rd : redo
  • Managing and Sharing Color Palette Pages

    • Customized color palette pages are saved in:
      the "palette.list" file in the "MapEditor" directory contains the list of the palette pages the MapEditor will use. you can edit the list ingame by adding fresh new pages or deleting existing ones. to add custom palette page files you have made outside the MapEditor or renamed you have to manually add them to the palette.list file.
      You can share these palette pages with your friends. If you work on a map together with a friends you may want to provide everyone the same colors you use to maintain the color scheme and theme of your map.

Credits and License

OpenSpades was originally created by YVT and has been maintained by a community effort
MapEditor made by me c:
Borrowed some code from ZeroSpades by ZeroGrey


Incredibly cool stuff here :clap:

1 Like

The best modified version of OpenSpades I have tried :partying_face:, you have made map creation easier.
It would be great if you could create a map with your friends :hot_face:, that OpenSpades MapEditor would create a server when you create a map. Also, it would be convenient if SpadesX is located in the OpenSpades MapEditor folder, so that when you save your map or txt file, it is saved in SpadesX :sunglasses:.


BLEUV !, please.

you have a script to save the map status if the server reboot, to load the last map status ?.

i dont but perhaps 1AmYF’s autosave script could be modified into doing that.