Free Pixel Movement System
A brand new Free Pixel Movement system has been developed from the ground up. It supports both keyboard movement (WASD / arrow keys) and touch or mouse-based input.
The system is entirely collision-based. The player, events, and map all have their own colliders. Collision maps are automatically generated using impassable tiles as a base.
📸 Auto generated Event colliders (green circles). You can edit collider size for each event.
📸 Auto generated colliders for map (yellow squares), based on impassable tiles
🎮 Movement Types
1. Keyboard Movement (WASD / Arrow Keys)
Movement is handled by analyzing collisions in real-time. The system checks whether the path is blocked before allowing movement in any direction.
2. Click or Touch Movement
A grid is generated, and the shortest path to the target location is calculated using pathfinding algorithms.
⚙️ Features
- Adjustable Grid Size:
You can choose a grid size of16
,24
, or48
pixels.
Larger grid sizes result in faster pathfinding calculations.
However, thanks to strong optimizations, even the 16px grid performs well on medium-sized maps.
📸 16 x 16 grid:
📸 24 x 24 grid:
📸 48 x 48 grid:
-
Floating Point Coordinates:
The system uses floating-point coordinates for player movement, unlike the standard integer-based tile system.
This allows for smooth, pixel-perfect motion. -
New Interaction System:
Since standard tile-based event interactions don’t work well with pixel movement, a new interaction system was developed.
Events now have custom interaction zones, also based on collision.
📸 Event interactions zones (generated automatically, can be adjusted per certain event)
🚧 Collision System
Currently, impassable areas are generated automatically using the map’s impassable tiles. While this works, it can be a bit rough.
In the near future, the upcoming Map Enhancer plugin update will allow you to:
- Draw your own custom collisions on the map.
- Design collision zones of any shape or size.
- Create separate collision layers for projectiles.
Next time, I’ll talk about an update regarding skills and Projectiles.