Skip to content

Commit

Permalink
Release 4.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
huderlem committed Dec 21, 2020
1 parent 5ca30c7 commit afa06b4
Show file tree
Hide file tree
Showing 38 changed files with 2,018 additions and 715 deletions.
6 changes: 5 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ and this project somewhat adheres to [Semantic Versioning](https://semver.org/sp
The **"Breaking Changes"** listed below are changes that have been made in the decompilation projects (e.g. pokeemerald), which porymap requires in order to work properly. If porymap is used on a project that is not up-to-date with the breaking changes, then porymap will likely break or behave improperly.

## [Unreleased]
Nothing, yet.

## [4.4.0] - 2020-12-20
### Added
- Add undoable edit history for Events tab.
- Add keyboard shortcut for `DEL` key to delete the currently selected event(s).
Expand Down Expand Up @@ -258,7 +261,8 @@ The **"Breaking Changes"** listed below are changes that have been made in the d
## [1.0.0] - 2018-10-26
This was the initial release.

[Unreleased]: https://github.com/huderlem/porymap/compare/4.3.1...HEAD
[Unreleased]: https://github.com/huderlem/porymap/compare/4.4.0...HEAD
[4.4.0]: https://github.com/huderlem/porymap/compare/4.3.1...4.4.0
[4.3.1]: https://github.com/huderlem/porymap/compare/4.3.0...4.3.1
[4.3.0]: https://github.com/huderlem/porymap/compare/4.2.0...4.3.0
[4.2.0]: https://github.com/huderlem/porymap/compare/4.1.0...4.2.0
Expand Down
2 changes: 1 addition & 1 deletion docs/.buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: e41613e939dfe6ab7008de864b4e64a8
config: 695b36c1e7f0f629e82be547fbb0d86d
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file added docs/_images/edit-shortcuts.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_images/event-tool-ruler.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_images/go-to-script-button.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/_images/new-map-options-window.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/_sources/index.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ Porymap Documentation
manual/region-map-editor
manual/scripting-capabilities
manual/project-files
manual/shortcuts
manual/settings-and-options

.. toctree::
Expand Down
3 changes: 3 additions & 0 deletions docs/_sources/manual/creating-new-maps.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,9 @@ Location
Can Fly To
Whether a heal location event will be created with this map. This cannot be changed in porymap.

Show Location Name
Shows or hides the map name popup window when entering the map. This can be changed in porymap.

Allow Running
Whether the player can sprint on this map. This can be changed in porymap.

Expand Down
27 changes: 24 additions & 3 deletions docs/_sources/manual/editing-map-events.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -225,29 +225,50 @@ Respawn NPC
Open Map Scripts
----------------

Clicking the ``Open Map Scripts`` button |open-map-scripts-button| will open the map's scripts file in your default text editor. If nothing happens when this button is clicked, you may need to associate a text editor with the `.inc` file extension.
Clicking the ``Open Map Scripts`` button |open-map-scripts-button| will open the map's scripts file in your default text editor. If nothing happens when this button is clicked, you may need to associate a text editor with the `.inc` file extension (or `.pory` if you're using Porycript).

Additionally, if you specify a ``Goto Line Command`` in *Options -> Edit Preferences* then a tool-button will appear next to the `Script` combo-box in the *Events* tab. Clicking this button will open the file that contains the script directly to the line number of that script. If the script cannot be found in the project then the current map's scripts file is opened.
|go-to-script-button|

.. |open-map-scripts-button|
image:: images/editing-map-events/open-map-scripts-button.png
.. |go-to-script-button|
image:: images/editing-map-events/go-to-script-button.png
Tool Buttons
------------

The event editing tab also extends functionality to a few of the tool buttons described in :ref:`Editing Map Tiles <editing-map-tiles>`.
A brief description and animation is listed for each of the available tools below:

Pencil
When clicking on an existing event, the pencil tool will behave normally (as the standard cursor). It can also be used to "draw" events in a certain location. The event created will be a default-valued event of the same type as the currently selected event.
When clicking on an existing event, the pencil tool will behave normally (as the standard cursor). It can also be used to "draw" events in a certain location. The event created will be a default-valued event of the same type as the currently selected event. Right-clicking with the Pencil Tool will return to the Pointer tool.

.. figure:: images/editing-map-events/event-tool-pencil.gif
:alt: Drawing Object Events with the Pencil Tool

Drawing Object Events with the Pencil Tool

Pointer
The Pointer Tool is the default tool for the event editing tab and allows you to select and move events on the map. The Pointer Tool also gives you access to the :ref:`Ruler Tool <ruler-tool>`.

Shift
You can use the shift tool to move any number of events together. When a selected event is dragged, all other selected events will move with it. When a tile with no event is clicked, all events on the map can be dragged.
You can use the Shift Tool to move any number of events together. When a selected event is dragged, all other selected events will move with it. When a tile with no event is clicked, all events on the map can be dragged.

.. figure:: images/editing-map-events/event-tool-shift.gif
:alt: Moving Events with the Shift Tool

Moving Events with the Shift Tool

.. _ruler-tool:

Ruler Tool
----------

The Ruler Tool provides a convenient way to measure distance on the map. This is particularly useful for scripting object movement. With the Pointer Tool selected you can activate the ruler with a Right-click. With the ruler active you can move the mouse around to extend the ruler. The ruler can be deactivated with another Right-click, or locked in place with a Left-click (Left-click again to unlock the ruler).

.. figure:: images/editing-map-events/event-tool-ruler.gif
:alt: Measuring metatile distance with the Ruler Tool

Measuring metatile distance with the Ruler Tool
11 changes: 8 additions & 3 deletions docs/_sources/manual/editing-map-tiles.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ The border's visibility, including the surrounding map connections, can be toggl

You can zoom in and out on the map with *View -> Zoom In* (``Ctrl++`` or ``Ctrl+Mouse Wheel Scroll Up``) and *View -> Zoom Out* (``Ctrl+-`` or ``Ctrl+Mouse Wheel Scroll Down``).

By default, the mouse cursor will show a white indicator outline of the currently-hovered tile(s) of what will be painted. You can disable this outline with *View -> Cursor Tile Outline*. Additionally, the cursor changes its appearance depending on which tool you currently have selected in the toolbar. You can disable this with *View -> Cursor Icons*.
By default, the mouse cursor will show a white indicator outline of the currently-hovered tile(s) of what will be painted. You can disable this outline with *View -> Cursor Tile Outline* (``C``). Additionally, the cursor changes its appearance depending on which tool you currently have selected in the toolbar. You can disable this with *View -> Cursor Icons*.

An indicator outline for the player's in-game view radius can be toggled with *View -> Player View Rectangle*.
An indicator outline for the player's in-game view radius can be toggled with *View -> Player View Rectangle* (``V``).

The Metatile Selection Pane can be zoomed in or out using the slider on the bottom.

Expand Down Expand Up @@ -119,7 +119,7 @@ The Map Shift Tool |map-shift-tool| (*Tools -> Map Shift*, or ``S``) lets you sh
Smart Paths
-----------

Smart Paths provide an easy way to paint pathways, ponds, and mountains. If there is any formation of metatiles that have a basic outline and a "middle" tile, then smart paths can help save you time when painting. **Smart Paths can only be used when you have a 3x3 metatile selection.** Smart Paths is only available when using the Pencil Tool or the Bucket Fill Tool. To enable Smart Paths, you must either check the Smart Paths checkbox above the map area, or you can hold down the ``Shift`` key. Below are a few examples that illustrate the power of Smart Paths.
Smart Paths provide an easy way to paint pathways, ponds, and mountains. If there is any formation of metatiles that have a basic outline and a "middle" tile, then smart paths can help save you time when painting. **Smart Paths can only be used when you have a 3x3 metatile selection.** Smart Paths is only available when using the Pencil Tool or the Bucket Fill Tool. To enable Smart Paths, you must either check the Smart Paths checkbox above the map area, or you can hold down the ``Shift`` key. If you have the Smart Paths checkbox checked then you can temporarily disable smart paths by holding down the ``Shift`` key. Below are a few examples that illustrate the power of Smart Paths.

.. figure:: images/editing-map-tiles/smart-paths-1-painting.gif
:alt: Regular vs. Smart Paths
Expand All @@ -136,6 +136,11 @@ Smart Paths provide an easy way to paint pathways, ponds, and mountains. If the

Smart Paths from Right-Click Selection

Straight Paths
--------------

Straight Paths allows for painting tiles in straight lines by snapping the cursor to that line. Either the X or Y axis will be locked depending on the direction you start painting in. To enable straight paths simply hold down ``Ctrl`` when painting tiles. Straight paths works for both metatiles and collision tiles, and works in conjunction with *Smart Paths*. It also works with the *Map Shift Tool*. Straight path painting can be chained together with normal painting to allow you, for example, to paint a straight path, then release ``Ctrl`` to continue the path normally, then press ``Ctrl`` again to continue painting a straight path from that position.

Change Map Border
-----------------

Expand Down
4 changes: 2 additions & 2 deletions docs/_sources/manual/navigation.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ Wild Pokémon Tab
Tileset Editor
--------------

The Tileset Editor can be opened with *File -> Tileset Editor*. When the Tileset Editor is opened, it is opened in the context of the currently-opened map. Every map has a primary and secondary tileset, so you will work with a combination of the two whenever you use the Tileset Editor. The left-side pane shows the primary and secondary tilesets' metatiles. The right-side panes allow you to modify the currently-selected metatile.
The Tileset Editor can be opened with *File -> Tileset Editor* (``Ctrl+T``). When the Tileset Editor is opened, it is opened in the context of the currently-opened map. Every map has a primary and secondary tileset, so you will work with a combination of the two whenever you use the Tileset Editor. The left-side pane shows the primary and secondary tilesets' metatiles. The right-side panes allow you to modify the currently-selected metatile.

.. figure:: images/navigation/tileset-editor.png
:alt: Tileset Editor
Expand All @@ -83,7 +83,7 @@ The Tileset Editor can be opened with *File -> Tileset Editor*. When the Tilese
Region Map Editor
-----------------

The Region Map Editor can be opened with *File -> Region Map Editor*. This window will allow you to modify the look and layout of maps on the game's region map. You can also modify the city map images using the bottom two panes. Currently the Region Map Editor is only available for pokeemerald and pokeruby projects.
The Region Map Editor can be opened with *File -> Region Map Editor* (``Ctrl+M``). This window will allow you to modify the look and layout of maps on the game's region map. You can also modify the city map images using the bottom two panes. Currently the Region Map Editor is only available for pokeemerald and pokeruby projects.

.. figure:: images/navigation/region-map-editor.png
:alt: Region Map Editor
Expand Down
2 changes: 2 additions & 0 deletions docs/_sources/manual/settings-and-options.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ determined by this file.
``monitor_files``, 1, global, yes, Whether porymap will monitor changes to project files
``region_map_dimensions``, 32x20, global, yes, The dimensions of the region map tilemap
``theme``, default, global, yes, The color theme for porymap windows and widgets
``text_editor_goto_line``, , global, yes, The command that will be executed when clicking the button next the ``Script`` combo-box.
``text_editor_open_directory``, , global, yes, The command that will be executed when clicking ``Open Project in Text Editor``.
``base_game_version``, , project, no, The base pret repo for this project
``use_encounter_json``, 1, project, yes, Enables wild encounter table editing
``use_poryscript``, 0, project, yes, Whether to open .pory files for scripts
Expand Down
95 changes: 95 additions & 0 deletions docs/_sources/manual/shortcuts.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
*********
Shortcuts
*********

Porymap has many keyboard shortcuts set by default, and even more that can be customized yourself. You can view and customize your shortcuts by going to *Options -> Edit Shortcuts*. Shortcut actions are grouped together by the window that they are used in (Main Window, Tileset Editor...). You can set up to 2 shortcuts per action, but you cannot have duplicate shortcuts set within the same window. If you enter a shortcut that is already in use, Porymap will prompt you cancel or overwrite the old shortcut. You can also restore your shortcuts to the defaults.

.. figure:: images/shortcuts/edit-shortcuts.gif
:alt: Edit Shortcuts

Edit Shortcuts

Your shortcuts are stored at ``%Appdata%\pret\porymap\porymap.shortcuts.cfg`` on Windows and ``~/Library/Application\ Support/pret/porymap/porymap.shortcuts.cfg`` on macOS).

For reference, here is a comprehensive list of the default shortcuts set in Porymap.

Main Window
-----------

.. csv-table::
:header: Toolbuttons
:widths: 20, 20

Pencil, ``N``
Pointer, ``P``
Bucket Fill, ``B``
Eyedropper, ``E``
Move, ``M``
Shift, ``S``

.. csv-table::
:header: Actions
:widths: 20, 20

Save Current Map, ``Ctrl+S``
Save All Maps, ``Shift+Ctrl+S``
Open Project, ``Ctrl+O``
Undo, ``Ctrl+Z``
Redo, ``Ctrl+Y`` `or` ``Ctrl+Shift+Z``
Show Edit History Window, ``Ctrl+E``
Open New Map Dialog, ``Ctrl+N``
Open New Tileset Dialog, ``Ctrl+Shift+N``
Open Tileset Editor, ``Ctrl+T``
Open Region Map Editor, ``Ctrl+M``
Edit Preferences, ``Ctrl+,``

.. csv-table::
:header: Map Editing
:widths: 20, 20

Select Metatile, Right-click in "paint" or "fill" mode
Select Multiple Metatiles, Hold Right-click while dragging
Bucket Fill Metatiles, Middle-click from "paint" or "fill" mode
Magic Fill Metatiles, ``Ctrl+`` Middle-click from "paint" or "fill" mode
Zoom In, ``Ctrl++`` `or` ``Ctrl+=``
Zoom Out, ``Ctrl+-``
Reset View Scale, ``Ctrl+0``
Toggle Grid, ``Ctrl+G``
Toggle Cursor Outline, ``C``
Toggle Player View, ``V``
Toggle Draw Smart Paths, Hold ``Shift``
Draw Straight Paths, Hold ``Ctrl``
Duplicate Event(s), ``Ctrl+D`` while selected
Delete Event(s), ``DEL`` while selected
Pointer, Right-click in "paint" mode
Select Event, Left-click in "pointer" mode or Right-click in "paint" mode
Select Multiple Events, `Ctrl+` click



Tileset Editor
--------------

.. csv-table::
:header: General,
:widths: 20, 20

Save, ``Ctrl+S``
Undo, ``Ctrl+Z``
Redo, ``Ctrl+Y`` `or` ``Ctrl+Shift+Z``



Region Map Editor
-----------------

.. csv-table::
:header: General,
:widths: 20, 20

Save, ``Ctrl+S``
Undo, ``Ctrl+Z``
Redo, ``Ctrl+Y`` `or` ``Ctrl+Shift+Z``

.. note::
If using macOS, ``Ctrl`` refers to the ``Command`` key
29 changes: 28 additions & 1 deletion docs/_sources/reference/CHANGELOG.md.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,32 @@ The **"Breaking Changes"** listed below are changes that have been made in the d
## [Unreleased]
Nothing, yet.

## [4.4.0] - 2020-12-20
### Added
- Add undoable edit history for Events tab.
- Add keyboard shortcut for `DEL` key to delete the currently selected event(s).
- Disable ui while there is no open project to prevent crashing.
- Add "Straight Paths" feature for drawing straight lines while holding `Ctrl`.
- The New Map dialog now gives an option to specify the "Show Location Name" field.
- Some new shortcuts were added in [porymap/#290](https://github.com/huderlem/porymap/pull/290).
- All plain text boxes now have a clear button to delete the text.
- The window sizes and positions of the tileset editor, palette editor, and region map editor are now stored in `porymap.cfg`.
- Add ruler tool for measuring metatile distance in events tab (Right-click to turn on/off, left-click to lock in place).
- Add delete button to wild pokemon encounters tab.
- Add shortcut customization via `Options -> Edit Shortcuts`.
- Add custom text editor commands in `Options -> Edit Preferences`, a tool-button next to the `Script` combo-box, and `Tools -> Open Project in Text Editor`. The tool-button will open the containing file to the cooresponding script.

### Changed
- Holding `shift` now toggles "Smart Path" drawing; when the "Smart Paths" checkbox is checked, holding `shift` will temporarily disable it.

### Fixed
- Fix a bug with the current metatile selection zoom.
- Fix bug preventing the status bar from updating the current position while dragging events.
- Fix porymap icon not showing on window or panel on Linux.
- The main window can now be resized to fit on lower resolution displays.
- Zooming the map in/out will now focus on the cursor.
- Fix bug where object event sprites whose name contained a 0 character would display the placeholder "N" picture.

## [4.3.1] - 2020-07-17
### Added
- Add keyboard shortcut `Ctrl + D` for duplicating map events.
Expand Down Expand Up @@ -235,7 +261,8 @@ Nothing, yet.
## [1.0.0] - 2018-10-26
This was the initial release.

[Unreleased]: https://github.com/huderlem/porymap/compare/4.3.1...HEAD
[Unreleased]: https://github.com/huderlem/porymap/compare/4.4.0...HEAD
[4.4.0]: https://github.com/huderlem/porymap/compare/4.3.1...4.4.0
[4.3.1]: https://github.com/huderlem/porymap/compare/4.3.0...4.3.1
[4.3.0]: https://github.com/huderlem/porymap/compare/4.2.0...4.3.0
[4.2.0]: https://github.com/huderlem/porymap/compare/4.1.0...4.2.0
Expand Down
9 changes: 9 additions & 0 deletions docs/_static/css/custom.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/* do not limit the width of the page */
.wy-nav-content {
max-width: 75%;
}

.wy-side-scroll {
width: auto;
overflow-y: auto;
}
Binary file added docs/_static/porymap-icon-2.ico
Binary file not shown.
Loading

0 comments on commit afa06b4

Please sign in to comment.