Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

26 Commits

Repository files navigation

PushEd

Or shortly just PEd, is a 2D/3D level editor for GameMaker: Studio 1.4, originally released by our team BlueBurn in 2014 as a paid extension. Now, on the sunset of GMS1.4, it's released for free, for everyone, forever!

License

Author: kraifpatrik

Warning

This project is no longer actively maintained by the original author and is kept only for future reference!

Screenshot 2DScreenshot 3D

Table of Contents

Features

  • Intuitive controlls
  • Change all room and views settings
  • Drag&drop objects into the level
  • Grid alignment
  • Set instance creation code
  • Move, rotate and scale instances
  • Set instance colour and alpha
  • Multiple selection
  • Copy selected instances
  • Tile editing
  • Resizable window and panels
  • Save and load rooms (*.room.gmx)
  • Level export and import (external file loadable on runtime, suitable for modding)

Setup

It can happen that PEd uses different variables for object transformations than you have in you project. So before starting to use PEd, we recommend you to check if the variables are matching, otherwise you would not be able to use the editor. To do so, go to Macros > Default and you should see a short list of constants. Each constants represents a variable.

MacroDescription
PEd_VAR_POS_XInstance position on X axis
PEd_VAR_POS_YInstance position on Y axis
PEd_VAR_POS_Z*Instance position on Z axis
PEd_VAR_ROT_X*Instance rotation around X axis
PEd_VAR_ROT_Y*Instance rotation around Y axis
PEd_VAR_ROT_ZInstance rotation around Z axis
PEd_VAR_SCALE_XInstance scale on X axis
PEd_VAR_SCALE_YInstance scale on Y axis
PEd_VAR_SCALE_Z*Instance scale on Z axis
PEd_VAR_COLOURInstance colour
PEd_VAR_ALPHAInstance alpha

List of automatically saved variables:

x, y, image_angle, image_xscale, image_yscale, image_blend, image_alpha

These variables are ALWAYS saved into the room file (both GM's native and external). Any other additional variable has to be written into instance's creation code. Writing variables into the creation code is done by PEd_instanceAutocompleteCode. Loading variables from creation code, which is necessary only for external "*.bbmap" room files (in GM's native rooms this is done automatically), is done in PEd_assignVariable. So if you make any changes to the constants, make sure that you have also rewritten variable names in those two scripts.

* - Additional variables, necessary only for 3D transformations. If you are using PEd for creating 2D levels, you can leave these constants as they are.

Controls

Global

ControlsAction
AltHold down to temporarily disable snapping to grid.
Ctrl+AClear selection.
Ctrl+CCopy selected instanes/tiles.
Ctrl+EExport room.
Ctrl+FSwitch drawing of the floor.
Ctrl+GSwitch snapping to grid.
Ctrl+IImport room.
Ctrl+NCreate new room.
Ctrl+OOpen room.
Ctrl+SSave room.
Ctrl+Shift+SSave room as...
DelDestroy selected instances/tiles.
F10Switch between Play and Editor.
F1Show/hide debug.
F2Switch between 2D/3D mode.
F3Cycle between editing modes.
LMBMove pivot.
Num0..9Set camera speed. The higher the number the faster will camera move.
TabCycle between tools.

3D mode

ControlsAction
Arrow keysLook around.
MWMove camera.
RMBLook around.
W, S, A, D, Q, EMove camera.
ShiftHold down to move faster.

2D mode

ControlsAction
Arrow keysMove camera.
MWZoom camera.
Page Up/Page DownZoom camera.
RMBMove camera.
ShiftHold down to move faster.

Object edit mode

ControlsAction
Ctrl+LMBAdd/remove instance to/from multiple selection.
LMBSelect instance.

Tile edit mode

ControlsAction
Ctr+LMBCreate tile.
Ctr+RMBDelete tile on the mouse position.
LMBSelect tile.
Shift+Ctrl+LMBSpawn tiles.
Shift+LMBAdd/remove tile to/from multiple selection.

LMB - left mouse button

MMB - middle mouse button

MW - mouse wheel

RMB - right mouse button

About

2D/3D level editor for GameMaker: Studio 1.4

Topics

Resources

Stars

25 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages