A new project for WL4 ROM hacking and Level Editing

shinespeciall

shinespeciall@gmail.com
Coins
3,150
Points
0
Coins
3,150
#21
2018 September & October Progress Report :

We had a great progress in implementing Entity rendering (you can call it sprites) in the last 2 months. Now, almost all the Entities include enimies and some other things can be rendered correctly in the Room now with yellow boxes showing where it is. Everything we want to display in the main editor panel are totally showed. I really like to show you the whole render result in this level to show how amazing and complicated the Entity engine is in this game:
1540738076035.png
You will find a log of things you won't expect before are Entities, in the graphic, every yellow rectangle representing there is a Entity put there. To implement the Entity part in the Editor in the Editor, we decided not to just hardcode all the Tiles and positions of each Tile for each Entity, instead, we directly hardcode the pointer of the Entity ingame frame data, reimplement the GBA sprites engine in an alternative way in the editor so that we can render the Entity according to the frame data in ROM, this laid the foundaiton for Entity graphic and frame data editing for the later version of WL4Editor.

Another developer ccl joint us in this month, he help fixed an issue. The WL4Editor cannot open the gba ROM if you put it in a path with not only English characters, like E:\Program files\ワリオ\瓦里奥\wl4.gba, one month ago. and he also looked into the Qt Documentation and helped implement the EntitySet filter in the Door Config Dialog. (Though I have not added the code to connect Door data to the filter before I writing this report, lol.)
1540739761232.png

There are more than 120 Entities in the game, and the game engine just cannot load all the Entities into the RAM once due to the limitation of GBA hardware. So Entities are seperated into a lot of sets and each set includes some of the Entities. And the game engine save the EntitySet id in the Door config data so that you can change EntitySet in different Doors. (You can guess why the game not saves the EntitySet id in the Room config attributes but saves it in the Door data. XD) So we have to put the filter here. Anyway, it is really hard to promote that TableView to put CheckBox, and Entities graphics into different cells and let it works well, but he did it finally.
You can also find BGM id is saved per Door, that let you change BGM when entering different Doors.

We also start writing a helpfile for our editor recently in Sept. you can read it here. I will update it sometimes to show more details in the game and also how to use WL4Editor in this file.

It still needs a long time to build the first release, but we will build and publish beta test versions in our Discord server when the master branch in github is stable, if you want to help us test the editor or use the WL4Editor before we release it in public, join our Discord server now. We also report more details of the progress in WL4Editor in #announcement channel in the server. if you have any good idea for the editor, let us know.
 
Last edited:

CM30

Diamond City Mayor
Diamond City Leader
Coins
50,267
Points
0
Coins
50,267
User Name Style Change Postbit Highlight (Pre-Defined) Gold Necklace Gold Earrings User Title Style Change
#22
Looks awesome @shinespeciall!

May want to point out that we're hoping to tie the the Wario Forums resources section into this tool though. That's gonna have a real positive effect on the community when the editor is finished!
 

shinespeciall

shinespeciall@gmail.com
Coins
3,150
Points
0
Coins
3,150
#23
Looks awesome @shinespeciall!

May want to point out that we're hoping to tie the the Wario Forums resources section into this tool though. That's gonna have a real positive effect on the community when the editor is finished!
Not the Editor itself but another software to link to the forums and download patch files, and also apply patches. I think it will be good to render Room in that tool.
 

shinespeciall

shinespeciall@gmail.com
Coins
3,150
Points
0
Coins
3,150
#24
2018 November Progress Report :

More progress is made this month.

First of all, the Door config dialog was full-implemented in the early days of this month. Although there are several Entities cannot be rendered correctly ( including 2 Bosses), the filter functionality for picking a EntitySet and the whole dialog work well as we expected. the textbox under the Entity Filter show all the Entities can be used in the current selected EntitySet, that means you can put those extra Entities together with the first 15 Entities showed in the Filter. (Note: the first 15 Entities can be used in all Rooms, though you will find only 9 of them are available. )
1543136059789.png


We plan to implement 4 editing modes in the Main Window, and recently all the UI logic has been added, so all the elements in the Room is editable now. Besides the Layer and the Door editing modes, the Entity editing edit mode and the Camera control editing mode have also been implemented this month:
1543143302802.png

This is the new Entity Selector and what it looks like when you switch to Entity editing mode. You can select an Entity included in the default EntitySet and put that type of Entity as many as you can into the Room, sure, it has a number limitation in the Entity list for each difficulty. because there are a lot of Entity are not align to the Layer mesh, so we render an extra yellow box align to the mesh for each Entity to show where it is put exactly.
For deleting existing Doors or Entities, you can switch to Door/Entity editing mode then click and select one of them then use "Backspace" or "DEL" key to delete it. also to add a new Door, we add that functionality in the "Edit" menu, that will add a Door in the current room, you should switch to Door editing mode to change its setting.
1543143900787.png

This is the Camera control setting dock widget when you switch to Camera editing mode. Basically, there are 3 camera control types found in the game. the first one let the camera be able to slide smoothly horizontally but set vertical movement fixed. Only when Wario go up or down out of the range, then the camera will move up or down with a constant value of height. The screenshot shows the first case how all the slots the camera slide on are like. The second type called "Follow Wario", it just set free to the Camera and it will follow wario everywhere as long as wario does not get out of the Room range. it also has a limitation, in 4 sides of the whole Room rectangle, the side 2 blocks of each edge won't be showed as it showed below.
1543144757816.png
The third type called "Use camera limitators", if you want to divided the Room into several parts and they cannot be easily divided by camera control type 1 or 2, then, you can set the limitation rectangle by yourselves, this is an example.
1543144955029.png

This mode also has extra usage, you can let one side of the rectangle be changable if Wario breaks a block you designate. just change the limitator type to which you want and then set the trigger block un the setting groupbox.

goldensunboy has been working on the saving code for a long time, and perhaps the saving functionality code can be finished and merged into the master branch recently. that means we will be able to edit and make Levels using this software recently. Though, there still a lot of things need to do before the formal v1.0, but we will release beta version of the editor in our discord server. Do join us if you are interested in making and sharing your ideas to new levels or to the editor itself.
 

shinespeciall

shinespeciall@gmail.com
Coins
3,150
Points
0
Coins
3,150
#26
Beta version has out !!!
download the latest build here:
Goldensunboy/WL4Editor

if you want to report any bugs or want to know the progress of what we will implement in the next version, join our discord server now.
(the link can be found in the first page)
 

shinespeciall

shinespeciall@gmail.com
Coins
3,150
Points
0
Coins
3,150
#27
beta-4 is relatively stable if you don't load a second ROM. but the undo/redo still only support Tile16 editing, so if you do something like change the width and height of the Room then undo changes you made previously, the editor will perhaps crash. anyway beta-5 will coming out soon, and if will fix the second ROM loading problem. For more bugfix information and features we added, see the changelog file.
 
Top