Actual discussion is here: viewtopic.php?f=17&t=3311
Here I am going to submit the latest alpha-versions of my engine components.
The project will contain two components:
- Editor for levels, worlds and configurations [Released!]
- Main Engine for test levels/worlds and play to existing games [In Process]
The development of the editor has started on 19 March 2014.
The development of the engine part has started on 30 September 2014.
----> All stable releases available on the MAIN PAGE <----
But If you looking for most fresh builds for AlphaTesting, welcome to laboratory:
Wohlstand's Laboratory (Most fresh experimental builds for Windows and for Linux Mint/Ubuntu/Kubuntu)
Luigifan2010's Laboratory (Fresh experimental builds for Linux Mint/Ubuntu/Debian) Dead a long time.
Videos:
- Spoiler
Original link: https://www.youtube.com/watch?v=jOh-KTp4jvE
Original link: http://www.youtube.com/watch?v=MDClscWvmrw
Changelogs:
Editor Changelog 0.3.0.3
- Spoiler
- - [WIP] tool which provides clean-up of garbage NPC's caused by bug of the SMBX (any climbable NPC's such as vines are flooding by SMBX). Currently tool can count junk NPC's only, in next build will be finished and you will can clean-up your levels from junk NPC's
- Added config pack version notifier (if you have old config pack is old, you will be notified about)
- Better design of development console box
- Fixed a crash which possible if you pressing F5 keys too often.
Engine Changelog 0.2-alpha
- Spoiler
- - Physics are completely replaced with own coded physical engine
- Working NPC-AI system with support NPC's coded in the Lua
- Exits are works!
- Kill effects [are not works perfect, need a lot of work, but there are works fine]
- Added generators!
- Player can climb on NPC-based climbable walls, not only on the BGO-based!
- Fixed a lot of bugs
- NPC's finally can be spawned from blocks where there are was included!
Screenshots
- Spoiler
- Hot placing of items into engine while level testing in process
AI-Based NPC's such as podoboo and piranha plants are coded in Lua and can be customized
Changelog 0.3.0
- Spoiler
- Editor 0.3.0
- Fixed group collision random crash
- Fixed 'too large weight' crash
- Added update checking
- Better history manager
- Added support of user specific settings and logs
- Interprocess communication system is fixed for Linux and Windows systems!
- Fixed freezing on reading some NPC.txts with mistakes
- Added ability to save progress on file reload
- Added more soft parsing of NPC.txt files. Instead of rejecting, you will be warned about wrong values but file will be loaded!
- Added more smart reloading of files
- Added basic communication with LunaDLL to run test of current level in the opened SMBX Editor. This feature will work on Windows platform only. (LunaDLL with LUA v0.5.3-beta and higher is required in the SMBX)
- Added "force-portable" settings to keep using of application directory instad of ~/.PGE_Project folder if you was installed editor by installer
- Added crash autosave which will give chance to keep most of your progess even crash happened
- Added history manager limit to prevent memory overflow.
- Fixed a lots of bugs in the layers and events tool-boxes.
- Fixed blinking of toolboxes on startup.
- Added SoX autio converter GUI to provide quick and easy audio files fixing toolset.
- Added message box event creator for blocks context menu.
- Fixed bug of events toolbox when changing language.
- Added soft refusing of file saving into LVL/WLD on excite of the SMBX64 limits
- Added working file association for Linux
- Fixed crash on attempt to undo while resizing mode in process and when resizing was applied
- Added "Transform all Item-ID into" context menu feature which works like "swap blocks" in the SMBX.
- Fixed crash on wrong log path, added log rotation on each start-up of editor like made in the engine.
- If configuration package is failed, config status window will pop-up automatically
- Added testing of world maps!
- Added ability to install config pack into %UserProfile%\.PGE_Project, ~/.PGE_Project or ~/Library/Application Support/PGE Project folder
- Added "delete tileset" button to provide built-in removing of junk tilesets
- Fixed bug with music boxed placing undo history action
- Loading speed has increased
Screenshots
- Spoiler
- Experimental engine part in work:
Original link: https://www.youtube.com/watch?v=PImwSLhuokA
0.2.2
In this version fixed a lots of bugs and imperfections. Now you can work in the PGE Editor More convenient!
- Changelog 0.2.2
- - Added "Ask every startup" flag into config manager
- Fixed window focus on switch into placing mode
- Fixed 'Trigger event' and 'Set moving layer' combo-boxes on switch into placing mode
- Fixed crash in protector for 'out of range' inside NPC animator
- Improved stars counter tool: now it counts accurate and everywhere
- Fixed "Add to new layer" not updated layer lists
- Added crash handlers which will display reason of editor crash
- Added basic interprocessing features
- Added smart custom data importing (when you drag&drop files or folders into the editing level file, they will be imported and level will restarted)
- Added flood filling tool
- Added able to use line tool for NPC's.
- Added auto-incrementing of special value (which a much useful for placing of, for example, firebars)
- Added "Don't show properties box" feature for placing mode
- Added position bookmarks. You can store current point into bookmark which give able to return back later
- Added internal tools
- All graphics issues prevented with implementing of alternate unmasking algorithm
- Easier way to fix lazily-made graphics added into [ Tools / Custom data / Fix wrong masks ]
- Added unused custom data removal tool into [ Tools / Custom data / Clear unused data ]
- Added Section modification features: Clone, Delete, Rotate left/right, Flip horizontal/vertical
- Added more edit actions: align selected, flip horizontal/vertical, rotate left/right
- Added basic scripts generation feature
- Organized structure of source code which making code more understandable, flexible and faster
- Added layar movement speed calculator which will help you calculate speed in blocks per seconds.
- More accurate SMBX file formats support: Now PGE can parse SMBX files of ANY version (from 0 to 64)
- Added saving of SMBX LVL and WLD formats with selecting of file format version (useful to edit old episodes which made by old SMBX'es with saving of compatibility with them)
- Added reading of SAV files which show game save statistics in the editor.
- Better resizer boxes, now they are movable and more flexible, added context menu to cut size by any side.
- Added custom counters which giving able to count any specific item ID's.
- Fixed placement of NPC's to the slopes
- Added animated splash screens system into the editor
- Fixed layers and event slots reset bug in the item properties dialog
- Screenshots 0.2.2
0.2.1.1
After some bug fixing works, we can say: It is a first stable version of alternate editor for SMBX!
Fixed artifacts bugs, fixed multi-line messages of NPC's which allow to use "NewLine" character instead of extra spaces, etc.
We already started the development of engine counterpart and with them will be available internal level testing.
Changelog 0.2.1.1
- Spoiler
- - Fixed zoom icons customization
- Fixed tiny mouse events of locked items bug
- Fixed mouse wheel artifacts while placing mode is enabled
- Added "Show zone range data" which will show X, Y, Width and Height of physical environment zone
- Fixed multi-line messages of NPC and events parsing error for SMBX64 level file format (found in Talkhaus's levels)
- Fixed crash on range erasing on world map
Screenshots
- Spoiler
"Super Mario" UI theme by Squishy Rex is including with editor build
Fixed artifacts and displaying of target layer in placing mode was improved!
PGE Editor 0.2.1 Beta
This is mainly a bug fix and optimization update.
Also, we have great news: we are ready to start development of the PGE engine counterpart!
New features will be added into the editor during the engine development process, including: a cross-process module which will allow level/world testing from the editor without using SMBX, and many other useful features!
Changelog 0.2.1
- Spoiler
- - Added support for multi-selection by holding the shift key
- Added new PGE-only file formats LVLX and WLDX, which support more features and have fewer limitations than the SMBX formats, such as the maximum number of items
- Improved overall performance
- Smarter grid snapping of the selected items group
- Clicking a layer from the list will select which layer new items will be placed on
- Added SDL library to give better music and sound playback
- Fixed grid alignment after duplicating/pasting
- Added semi-transparent paths view for world map
- Added displaying of the items statistics to the debugger box
- Fixed config directory path on Mac OS X
- Fixed bug with item boxes updating when you switch between other applications
- Added SMBX64 standard validator which prevents you from saving a file that would cause SMBX to crash, such as exceeding SMBX's maximum level size, etc.
- Added ability to export images of only a selected portion of a level
- Added support for a Themes system. You can customize the UI and GFX of editor on your own!
Screenshots
- Spoiler
- Multi-selection with Shift key
Fixed move / aligning / copy-pasting
Semi-transparent paths
You can use them together with "lock paths" flag to work with scenery more convenient
Added new file formats (PGE internal)
LVLX - the future successor of SMBX LVL format. The LVLX file format is flexible and will always be backwards-compatible (can be opened in old versions of the PGE editor).
The file format is highly optimized and organized:- data values are separated by sections which you can place in any order
- each value has its own marker/header which connects the data field with its array variable, you can even create new data fields or exclude unnecessary fields (unknown fields/markers are ignored, undefined fields/markers are set to their default values).
- equal to default or unused data is never written into the file, which reduces its size to about half the size of a LVL file, even with data-markers.
- more data types, such as strings which can hold special characters like line feed characters (for example, you can use NPC's messages with just a NewLine character instead of extra spaces)
- file data is more readable via Notepad
Themes System
Allows you to change not just the editor icons, but even cursors and player spawn-point images:
(you can use any image for the player spawn-point, it will be attached to bottom-center of the cursor automatically)
Editor 0.2.0 Beta
The PGE editor is now officially in the Beta stage!
The editor now completely supports the SMBX standard, and can edit any level, NPC, or world map.
Changelog 0.2.0
- Spoiler
- - Added support for World Maps
- Added customizable item tilesets
- Added "name" field into NPC customizer for defining the NPC's name
- Fixed zombie bug: application process will correctly end work when closed
- Invisible frames of some items are now visible!
- Square fill tool button will appear on the toolbar when you switch the placing mode
- Apply/Cancel buttons of resizing process available on the toolbar
- Fixed initial map positions on open/create files
- Added settings for the item toolbox tabs: you can display them horizontally or vertically
- Improved LVL parser: ordering/layering format <10 will automatically set BGO sorting priority for BGO 65 and boss flag for NPC-15, 39 and 86.
- Added overwrite mode: all overlapping items will be removed when placing a new item in the same location
- Improved Square Fill tool: you will see yellow rectangles, which show where the new items will be placed
- Fixed "add layer" dialog. Now if you try to define an already existing layer, you will be asked to input a different layer name
- Added point selection dialog. You can select a point from a world map directly to the warp on the level.
- Added dialogs and GUI executables for console tools like GIFs2PNG and LazyFixTool
- Mouse control for level editing workspace was improved. Fixed a lot of bugs and fixed context menus on Linux systems.
- Custom graphics will display even if they are not in a "Custom" category
- Item animation has been improved
- The drawing algorithm for sizable blocks has been improved: Sizable blocks will be displayed correctly in any size.
- Added support for animation sequences, which allows more flexible animations for NPC's
- Better scrolling by keyboard and by mouse wheel. (Added new hot-keys)
- Added zoom support by mouse-wheel and ALT key.
- Added PNG2GIFs converter which creates masked GIF images from a PNG image with transparency
- Added Italian translation
- Design of warp points and physical environment zones are improved, also magenta-colored bounding box has been changed to Crimson
- Added debugger box
- Background-selecting list now has thumbnails for previewing!
Feature Descriptions & Screenshots
- Spoiler
- The editor now has a fully compatible, feature-packed world map editor:
- Spoiler
Configuration manager:- Spoiler
Editor's Splash screen customization:
Each configuration pack can have a unique splash logo (you can set them in the main.ini in the [gui] section)
with the ability to use ANY image with ANY size!- Spoiler
Resizing mode buttons on the toolbar
You can apply or cancel resize by clicking on these buttons:- Spoiler
Better NPC Editor
Fixed a lot of bugs with animation, and animator will now accurately and correctly render custom NPCs.
Additionally, you can define the name of your custom NPC, which will be displayed in the editor.- Spoiler
Better square fill tool
You can now see the location where items will be placed, before you actually place them. Also, you can overlap blocks, items, etc, and you can use the square fill tool for quickly filling large areas:- Spoiler
The editor features an editable and flexible tileset item box, you have the freedom to edit anything!
to use them, open a [view -> Tileset Item box] menuitem- Spoiler
Line tool!
Draw slopes, bridges, and walls easier!- Spoiler
Draw over everything! With overwrite mode, you have the powerful ability to draw/place items over all objects in the same location.- Spoiler
All console tools have GUI executables which will help you use these tools easier!- Spoiler
Better sizable block render algorithm
Your sizable blocks can have ANY size, even sizes that are not multiples of 32, which would cause glitches in SMBX.- Spoiler
Added debugger box
You can see your current mouse position, jump to any position on the map/level, and much more!- Spoiler
Easy creation of level-to-map warps
If you want to create a warp from a level into the world map, you can grab a point from the world map easily and directly!
See, you don't need to manually enter map coordinates any more! Now, you can simply click a point on the world map.- Spoiler
A useful feature to place items more accurately in the "no grid snap" mode, or to view the whole map at once without needing to export it into an image!- Spoiler
Editor 0.1.1 Alpha
This is a bug fix update with some improvements.
Windows build:
Download 0.1.1.3 Alpha without music and sounds (45 MB) (You can simply place the music and sound folders from SMBX 1.3 or 1.3.0.1 into the data directory)
Download 0.1.1.3 Alpha with HQ music (275 MB) (This already contains the HQ SMBX music pack)
- Change log 0.1.1
- - Animation rendering has been improved and optimized
- Added animation start/stop toolbar button
- New selection dialog for items
- Fixed a lot of memory leaks
- New design of the message box
- Added displaying of Item ID in Properties tool box.
- Added item search box: you can find items by their ID along with layer members or other options
- Added tab view mode, you can switch between sub-window/tab mode in application settings
- Added support of second special value for fixing a bug with a wrong LVL file parsing (Herb with included magic potion)
- Fixed loss of decimal part of values for layer movement and auto-scroll speed
- Fixed offset bug for NPC special options
- Title of the sub-window will have the level title instead of the file name
- Added fullscreen option, recommended for tablets!
- Added option to Hide warps/doors and waters (Physical Environment zones) on exporting images.
- Added definition for default flags value for blocks (slippery, invisible) and for NPC (friendly, no-move, boss)
- Added support for resizing the physical environment zones (water, quicksand)
- The default position for the toolboxes will be on the left side of the screen instead of the center (Windows) or left-top corner (Linux)
- Screenshots
- Available tabs view for opened files:
You can now hide door markers and water zones on exporting images:
You can switch the editor window into full screen, which is recommended for tablets:
New Item selection dialog: You can use categories and groups for selecting the necessary item:
Resizing the water zones are now possible:
New message box design:
Now item placing on the map is relative to the center instead of being relative to the left-top corner:
Available search items on map:
You can search items by their options, or find the layer members/items which use the selected events:
Each level has it's own title. Now the title is displayed as the window title instead of the file name.
You can define the title of level in the menu [Level -> Properties]:
(the same title inside SMBX is defined in the [Level tab -> Advanced]):
0.1 Alpha
Here already realized all level editing features, even events, and fixed a lot of bugs.
Windows build:
Download 0.1 Alpha without music (39 MB) (You can simply place music folder from SMBX 1.3 or 1.3.0.1 into data directory)
Download 0.1 Alpha with HQ music (267 MB) (This already contains HQ SMBX music pack)
- Changelog 0.1
- - Added events control support
- Added sound tester
- Image render are improved and fully support taking alpha channel from masks (before only internal PNG alpha, or 1-bit masks files)
- Fixed default main window size and position
- Fixed Level item toolbox category list translating
- Fixed bug with empty category lists after config reload
- Added support for BMP Files, Ghosties will be appeared ONLY if image really broken.
- Player's start points can be moved by mouse in selection mode
- History manager can store any level data and any settings changes
- New icons for section switch buttons
- Optimized background and music selector
- Language switcher are improved
- Fixed crash on press "Delete" in layer list without selected item
- Fixed bug with door flags "Level Exit" and "Level Entrance" on already placed points
- If not exist translate equal to system, will be used English translate
- Remembering of save paths
- Merging of layers, on rename layer to equal to other exists
- Configuration status window. You can see status of all configuration items and look for errors on load process
- Fixed bug with events resets in properties window
- Added search filter for NPC-Selection dialog
- Added search filter for level Item Box
- Fixed NPC's special option wrong values on placing items
- Fixed grammars and spellings in labels
- Optimized toolbox generation
- Added Notification about wrong custom graphics files
- Fixed frames calculating for NPCs
- On Music files list open current file will be selected
- In music list displaying music files from sub-directories
- Fixed autoalign bug: Grid applying only on moved items
- Fixed random NPC's direction generator
- Added counter of stars in LVL-file save function
- Fixed bug with wrong background on created levels (before save them).
0.1.0.1
- Fixed bug with custom music paths after save new file.
- Speed up of level loading process,
- Screenshots
- Events editing
Improved render, supports alpha-channel
Added Groups
Search items by filters
Custom music fetching from subfolders (Inside SMBX possible open custom musics from sub-folders, proof - ASMBXT)
Merge layers on rename to equal name
New section switch icons
Global configuration status window
Also, added two useful console utilities:
Note: For use thees utilities, please, open Command Line CMD.EXE for Windows or Terminal in Linux
GIFs2PNG
- Spoiler
- GIFs2PNG - converter of SMBX's gifs with masks to transparent PNGs [now planned opposite tool: convert transparent PNG to masked GIFs for SMBX]
How to use:
This utility converting all graphics from folder. For take PNG with transparent, you need place AND source images, AND his masks into same folder. All gifs must be converted from BMP by second tool, if some images didn't read.
For start converting, simply type this in command line:Code: Select all
X:\MyDir\With\PGE-Editor\GIFs2PNG C:\SMBX\worlds\episode1\level3
Where X:\MyDir\With\PGE-Editor\ - path to your PGE-Editor's folder, copy from address bar and paste by right mouse button
Where C:\SMBX\worlds\episode1\level3 - the path to your GIFs in SMBX64 format (with masks), what you want convert to PNG.
You can see more features of utility, if you simply rum them without arguments
LazyFixTool
- Spoiler
- LazyFixTool - the powerfull utility for automatically fix lazily-made GFXes:
convert all BMPs into GIF format, made correct mask, what created by lazy work.
Utility can fix all GFXes of whole episode in one run!!!
Also, you can made light-gray masks darker, for use real alpha-channel inside PGE instead pseudo-transparent of SMBX:
Note: this utility makes backups of your current graphics into "_backup" sub-folder. If you will find glitch, you can restore old graphics back.
How to use:
This utility fixing all SMBX64 graphics (GIF with mask images) in selected folder and (optionaly) all graphics insided into subfolders.
Mask must be placed WITH its image, fixing process based on calculating broken pixels by comparing between pixels of both images.
For start fixing graphics into one folder:Code: Select all
X:\MyDir\With\PGE-Editor\LazyFixTool C:\SMBX\worlds\episode1\level3
For start fixing graphics of whole episode:Code: Select all
X:\MyDir\With\PGE-Editor\LazyFixTool C:\SMBX\worlds\episode1 -W
For start fixing with gray down of gray-scale masks:Code: Select all
X:\MyDir\With\PGE-Editor\LazyFixTool C:\SMBX\worlds\episode1\level3 -G
Where X:\MyDir\With\PGE-Editor\ - path to your PGE-Editor's folder, copy from address bar and paste by right mouse button
Where C:\SMBX\worlds\episode1\level3 - the path to your GIFs in SMBX64 format (with masks), what you want convert to PNG.
Where -G - switch for made gray color darker.
Where -W - switch for walk inside all subdirectories.
Where -N - switch for disable saving of backups.
You can see more features of utility, if you simply rum them without arguments
0.0.8 Alpha
This is a huge update, did made a lot of work for create full NPC support, and more other...
Windows build:
Download 0.0.8 Alpha without music (28 MB) (You can simply place music folder from SMBX 1.3 or 1.3.0.1 into data directory)
Download 0.0.8 Alpha with HQ music (257 MB) (This already contains HQ SMBX music pack)
MacOS build: [by CaptainSwag101]
Download 0.0.8 Alpha with HQ music (124 MB)
For Linux users: you can build yourself.
- Changelog 0.0.8
- - Added support for render and control NPC's
- POSSIBLE TO SAVE LEVEL FILE.
- POSSIBLE TO CREATE NEW LEVEL FILE, NPC.txt file with selecting of base NPC.
- Added NPC Previewer for NPC.txt editor
- License updated to GNU GPLv3
- Optimized level loading process
- Added support to control doors
- History manager: you can undo/redo changes on level map. [Not completely finished]
- Clipboard: you can copy and paste.
- Added Item Properties window, and with them possible to FULL CONTROL of ALL level items.
- Added BGO hack for place them foreground
- Added Item box and support for place new items on map
- Added Layer box: You can create/rename/delete layers, you can move layers in list by mouse drag, you can change visibly of Layer
- Added more protectors: you can violate limits with itemID and if itemID > global array item number, you will see dummy image instead crash.
- ReWritten Background render algorithm
- Unused Sections will be initialization on select
- Possible to resize sections
- Possible to resize sizable blocks
- You can change player's start point positions
- Added "Selection only" tool, you can select item group without moving them.
- Fixed rubber tool
- Water/Quicksand zons, sizable blocks placing in "Draw-Square" style
- "Square Fill" tool: you can draw square and it will be filled by selected block or BGO (Warning, collisions ignoring!)
- Fixes in configs: almost sorted blocks, BGOs and NPCs.
- Full control of door entries
- "Goto entrance" and "Goto exit" - possible to fast find other side of door, even them placed in other section.
- in NPC-Editor displaying all default values for current npcID, if option not used.
- Added application settings window: you can set autoplay music/animation/collisions or set log level and log file.
- Animation will be reseted on exported image.
- Optimized item map controls.
- Application can be translated in other languages
- Now, we have finished translates: English, Russian, German. Any of you can made more translates.
Minor update 0.0.8.1, Added 12 june 2014:
- Fixed bug with door points on opening of old LVL files (file format < 8)
- Fixed undisabled labels on NPC-Editor
- Fixed bug with sets of containers to empty.
- Added Spanish translation
- Screenshots
Section resizer:
After resizing, press ENTER for accept resize or ESC for cancel resizing.
You can add item group on exist or create new layer for them:
You can sort layers in list via mouse drag:
The size for sizable blocks defining after drawing process:
The same method draws water/quicksand
Change environment type:
Jump to other side of door:
All items sorted by his category:
All custom level GFX displaying in special category group:
You can remove layer and save already placed items (items will be moved to Default layer)
You can draw group of blocks by square fill:
Same method for BGO:
Application settings window for set common application settings:
All NPCs like egg, bubble, lakitu, herb - is containers, and you can set his contains:
Creating a new level file:
NPC configs editing:
Application can be translated into any language:
Now already translated to English, Russian and German.
History manager: You can undo/redo your actions:
Internal clipboard:
Entry-style doors:
For create door, you must:
- create door entry
- place on map points (by set Entrance and by set Exit)
- you can set door props in any moment (before/after placing points)
If point already placed, camera will be moved to point position:
Show/hide tools:
NPC Generators displaying with arrow:
green - warp, red - projectile:
BGO Hack for place item to foreground in SMBX: