Old development news thread

Description: Storage for Sources, File Format Descriptions, Objects tables, algorithms, schemes, etc. (Answering only)
Moderators: Semi-moderatos, Moderators

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #141by Wohlstand » 26 Oct 2014, 21:27

John Leagsdurg wrote:don't copy the source code from the SMBX engine...
All developed through reverse engining because SMBX's sources is lost and never given by Redigit. All my storage of researches was made by reverse engining. I'm repeating result, but I'm using better methods to escape a lots of mistakes and prevent some bugs which was in the SMBX engine.

Added after 7 minutes 58 seconds:
John Leagsdurg wrote:how much time do you think it will take to finish the engine?
I don't set any deadlines, but developing will be longer, because I need to make the own physics engine, because (how I wrote in Youtube video description), Box2D have lots of reasons because using of them for side-scrolling platform games is not good. Box2D have perfect collision detection system with polygons and can model real physics of solid bodies, but one of reasons is an annoying feature with horizontal line of blocks: when you run on them, sometimes player stops, because it impacted to next block's corder :facepalm: . Also, body will always slide on any slopes of any angle, but I need make like SMB3: don't slide before press 'down', or like SMW: player will automatically slide on slope which have angle 45 degrees and more.

The first stage of engining of physical engine is collision detection system: objects can't see each other without collision detection, can't stay on blocks, etc.
to make them I need to make them:
1) find all items which contacts with selected rectangle (left-top-right-bottom) [this also will be used to detect items which will be drawn on screen now]
2) check pair 'is contacted' between player (or NPC) and one of block or other player/NPC, warp point, water zone, BGO)
Second thing is easy, but I will engine first thing (finding items by rectangle range)

John Leagsdurg
Nice citizen
Nice citizen
John Leagsdurg
Nice citizen
Nice citizen
Reputation: -1
Posts: 14
Joined: 5 May 2014

Post #142by John Leagsdurg » 26 Oct 2014, 21:47

And, there will be ways to make a different physics other than a SMB-style physics?

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #143by Wohlstand » 26 Oct 2014, 22:43

John Leagsdurg wrote:And, there will be ways to make a different physics other than a SMB-style physics?
It'll be configurable. In the special INI-file of config pack, you'll be able to define the physics settings like velocities, speeds, gravities, sliding features and conditions, etc.

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #144by Wohlstand » 5 Nov 2014, 12:53

A small update to the editor
Hello, recently I proceeded to organize mouse events, the result being an increase in performance in the editing process:
- you can now select a large area instantly without waiting (fixed a bug which applied the grid to selected data which wasn't moved)
- removed lots of junk calls which was resulting in some things being slow
- now editing modes internally have separated mouse events which prevents a lots of bugs in the editor in comparison to before. This organizing should also make it more convenient to create new editing tools with a lesser risk of having serious bugs.

At the moment this this update is experimental and some things are not completely done. Please do report any bugs.

The update is available in the laboratory:
http://wohlsoft.ru/docs/_laboratory/

elitalianoverde M
Honourable citizen
Honourable citizen
Avatar
elitalianoverde M
Honourable citizen
Honourable citizen
Reputation: 8
Posts: 35
Joined: 17 May 2014
Location: Spain

Post #145by elitalianoverde » 18 Nov 2014, 12:43

Think you could have an "check for updates" feature?
Image

If my English seems lazy or sloppy at times, that's because me vale bien y bonito soy Español :V

Veudekato M
Viscount
Viscount
Avatar
Veudekato M
Viscount
Viscount
Reputation: 79
Posts: 369
Joined: 19 Feb 2014
Location: Russia

Post #146by Veudekato » 18 Nov 2014, 19:42

Maybe in future wohlstand will make that. You can see text with date of last change in the laboratory
My channel (PlatGEnWohl news and tutorials , smbx tests):
http://www.youtube.com/channel/UC6h-42umT14iR1wa3VkOs3Q

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Development news

  • 3

Post #147by Wohlstand » 20 Nov 2014, 3:43

Development news

After month of works, we have something updates of the editor:

Change log of current laboratory build:
Spoiler
- Added "Ask every startup" flag into config manager
- Fixed window focus on switch into placing mode
- Fixed 'Trigger event' and 'Set moving layer' comboboxes 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 [Experimental]

Smart Importing
Is a quick and convenient feature which allow import custom data into your level by drag&drop of folder which contents graphics and some settings (npc.txt, tilesets, etc.)
Spoiler
Image

Image

Flood filling tool
Allows you to flood ranges of any shape, but be careful with using of them: (if you accidental flood whole level map, don't worry, after 3 sec. timeout editor will be unfrozen, simple press Ctrl+Z to remove junk items and try again with fixing of hole which caused flood overflow).
Experimental, works for blocks and for BGOs. Will be implemented into the world map editor.
Spoiler
Image


Introducing a level testing
While engine part is under construction, you can test levels with them and also test developing engine part.
Unlike SMBX, to test level you don't required save them to disk. Draw & play level Now!
[Be careful, this feature is experimental, if you can't start level testing by any reasons, try to save level and open them by engine's application]
Spoiler
Image

Image


What about engine
Current build of engine now can
- make screenshots by F12 key
- display native message boxes of errors, warnings instead of disappearing after startup.
- Added little command line feature: you can run engine with argument --config=SMBX or --config="Raocow (A2MBXT)" to start engine with selected config pack's directory name (run engine without asking of configuration pack)

Spoiler
Image

Image

Also just a little blocks features:
Spoiler
- Hitable blocks
Image

- Bouncing blocks
Image

- Invisible bloks
Image

All updates available in the laboratory:
http://wohlsoft.ru/docs/_laboratory/

P.S. Don't forget to update your configuration packs to prevent any bugs and errors after updates:
http://wohlsoft.ru/config_packs.php
(to quick update you need a "base" or "lite" versions of config pack)

John Leagsdurg
Nice citizen
Nice citizen
John Leagsdurg
Nice citizen
Nice citizen
Reputation: -1
Posts: 14
Joined: 5 May 2014
  • 1

Post #148by John Leagsdurg » 21 Nov 2014, 15:53

Very good buddy.
Keep up the good work.

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Better method of fixing lazily-made graphics

  • 3

Post #149by Wohlstand » 24 Nov 2014, 13:16

Few time ago I was researched for Visual Basic's blending method to found better method to correctly generate alpha-channel of image to make displaying of sprites which correctly displaying in the SMBX.

You can look for this implementation here:
https://github.com/Wohlhabend-Networks/PlatGEnWohl/blob/master/Editor/common_features/graphics_funcs.cpp#L53

You can check them in action in the editor before I will make update of my lazy-fix tool:
in the laboratory available update which have new menu item in the "View" menu, but you will see result after reloading of file.



Examples:
This is a typical lazily-made sprite and mask pair:
ImageImage
and it's result:
Image

But graphics like this:
ImageImage
will give full transparency, because color or mask mapping to alpha-channel:
Image

When you enable special flag:
Image

and when you will reload level, you will see magic:
Image
Image


Now about algorithm:
I looked for VB's drawing method: it apply bitwise "AND" operation between RGB's while draw mask to background image, and after apply bitwise "OR" operation while draw image over mask.

I made similar operation for image sprite over gray background to unmask. But how I made right transparency?
1) I mapped mask into alpha-channel by normal method (result like "AND")
Alpha = 255 - ((R+G+B)/3) //if Alpha 0 - transparency, if 255 - solid
2) After I made same operation but with pixels of source image and gotten value I was appended to already generated alpha-channel. (result like "OR")
Alpha = Alpha+((R+G+B)/3)
and this method will fix any lazily-made graphics which was correctly shown in the SMBX but wrongly shown in the PGE.

I will update my lazy-fix tool and will apply THIS method to generate RIGHT mask.



P.S.
Without "VB Emulation" flag ('GFX Fix'):
(Because masks are have completely white pixels, lights are invisible here)
Image

With "VB Emulation" flag ('GFX Fix'):
(Instead of simple mapping of mask to alpha-channel, was run this algorithm of calculating target color & alpha-channel )
Image

And do you remember those goombas from this /viewtopic.php?f=5&t=158 test?
ImageImage

If you will enable this algorithm same goombas will have this view:
Image
Unlike SMBX where mask drawing to screen over background and other objects and after sprite drawing over drawn mask, sprites generating by once into memory and masks no more using. This save lots of memory and giving better CPU speed.

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube
  • 2

Post #150by Wohlstand » 25 Nov 2014, 4:13

Hey there, here's a relatively small but useful update.

I've noticed recently that people particularly living in the North/South American continents, Australia, Asia etc. are prone to having a hard time with the downloading speed of my main server which happens to also serve as host for most of the PGE executables/configs and files. (This can be mostly attributed to the huge distance between these individuals' location and mine(Moscow, Russia).)

And so here's a temporary but effective solution.
I've made a mirror of the laboratory and configuration packs on Google Drive:
https://drive.google.com/folderview?id=0B3QNPpAJx9HnVWdoZEp6UmZMWlE&usp=sharing
This mirror is planned to be updated daily/each hour.

So if anyone has a problem with downloading(or with the speed of attempting to do so) configuration packages or builds from the laboratory, you should be able to get them from my Google drive linked above.

Do feel free to try it out by downloading now.
Good luck ;-)

Squishy Rex M
Advanced Moderator
Advanced Moderator
Avatar
Squishy Rex M
Advanced Moderator
Advanced Moderator
Age: 24
Reputation: 105
Posts: 254
Joined: 24 Feb 2014
Location: Australia

Post #151by Squishy Rex » 25 Nov 2014, 7:09

Though I haven't experienced any overall difficulties downloading anything, having a sturdy mirror is always good to have. At least with the latest update, I can give it a try and see if there is any difference for me. I really like the VB Emulation though, it definitely seems like something practical to have in this engine.
Squishy Rex's CGFX Pack v1.7
Image
To show your support add any of these Userbars to your Signature!
Image

sky2 M
Our friend
Our friend
sky2 M
Our friend
Our friend
Age: 23
Reputation: 12
Posts: 55
Joined: 30 Aug 2014
Location: Poland

Post #152by sky2 » 26 Nov 2014, 21:50

I almost didn't experience any of complications. Maybe because I live not so far from Russia, so downloading to my computer located in western Poland is much faster than in North America, of course. Sometimes it's just downloading much slower than it should, otherwise it's fine.
Poof!

Squishy Rex M
Advanced Moderator
Advanced Moderator
Avatar
Squishy Rex M
Advanced Moderator
Advanced Moderator
Age: 24
Reputation: 105
Posts: 254
Joined: 24 Feb 2014
Location: Australia

Post #153by Squishy Rex » 27 Nov 2014, 7:10

Well, I used the mirror for the latest update, and I must say, there is actually a noticeable difference with download times/speeds. My internet connection isn't very good where I am (I average about 15KBps in terms of upload/downloads on a good day) but this has been an improvement. :)
Squishy Rex's CGFX Pack v1.7
Image
To show your support add any of these Userbars to your Signature!
Image

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube
  • 2

Post #154by Wohlstand » 1 Jan 2015, 7:10

Two little updates of editor and it now have "Release Candidate" state:

Layer field for warps editing toolbox was added:
Image

Solved Layers & Events problem with properties toolbox:
- When you clicking layers in global list, selected layer will be displayed in the properties dialog too!
- Event slots will be reseted to "none" when you choosing another item to place, but you have able to fix them and when you will choice another item to place, fixed event slot will have same event which was set before:
Image

Anyway, PGE Editor 0.2.2-RC Available in the laboratory!
http://wohlsoft.ru/docs/_laboratory/

You also can use Online Installer:
http://wohlsoft.ru/forum/viewtopic.php?f=5&t=409

And....
............HAPPY NEW YEAR!

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #155by Wohlstand » 3 Jan 2015, 20:32

While I preparing to publish new release, I have updated Wiki Page which have common information about editor's feature and basic usage hints.
http://wohlsoft.ru/pgewiki/PGE_Editor

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

New Update! (Editor 0.2.2-rc)

  • 1

Post #156by Wohlstand » 4 Jan 2015, 20:38

-> PGE Editor 0.2.2-rc
In this version fixed a lots of bugs and imperfections. Now you can work in the PGE Editor More convenient!

New downloads available on the main page!

P.S. Before I will finish the "QuickStart" guide paragraph, you can read more understandable info on the Wiki page!

Changelog 0.2.2
Spoiler
- 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
Spoiler
Image

Image

Image

Image

h2643 M
Contributor
Contributor
h2643 M
Contributor
Contributor
Reputation: 109
Posts: 329
Joined: 15 Feb 2014
Location: Ukraine
Website YouTube

Post #157by h2643 » 4 Jan 2015, 21:11

This is a really nice update, and finally, this editor is now perfect to use with SMBX!
What does "rc" means, though?
<Knux> h2643 the super computer

Alucard
Our friend
Our friend
Avatar
Alucard
Our friend
Our friend
Reputation: 9
Posts: 61
Joined: 5 May 2014

Post #158by Alucard » 5 Jan 2015, 3:14

h2643 wrote:This is a really nice update, and finally, this editor is now perfect to use with SMBX!
What does "rc" means, though?
RC means "Release Candidate" The version can turn into final stable version if no bugs discovered for a long while.

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #159by Wohlstand » 5 Jan 2015, 3:21

Alucard wrote:RC means "Release Candidate" The version can turn into final stable version if no bugs discovered for a long while.
RC I wrote because this now stable release which now haven't known bugs and have no imperfections. If any bugs will be found: they are will be fixed and will be applied into next release (but most fresh dev builds and source code to self building always available to download).

Wohlstand M
Topic author, Lead Developer
Lead Developer
Avatar
Wohlstand M
Topic author, Lead Developer
Lead Developer
Age: 27
Reputation: 392
Posts: 1451
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #160by Wohlstand » 9 Jan 2015, 14:59

Update of config packs

All config packs was updated:

  • Fixed wrong offset of SMW Goal Tape bug in all config packs
  • All .MP3 musics was replaced with .OGG stuff which giving less size with high quality.

When I replaced all my HQ MP3 musics with compressed OGG quality 3/10, I got almost same quality, but much less size!

Reduced sizes of FULL config packs after replacement of MP3's with OGG's:
  • SMBX 1.3 reduced from 246 -> 95 MB
  • SM Redrawn reduced from 254 -> 98 MB
  • Raocow's Talkhaus (A2MBXT) reduced from 198 -> 172 MB

* because it is update of global stuff, you will need to download "FULL" versions of config packs.

You can get new updates of config packs here:
http://wohlsoft.ru/config_packs.php
or here:
https://drive.google.com/open?id=0B3QNPpAJx9HnaHBZZ0xJUy1waWs&authuser=0

* All updates already available if you will use "PGE Online Installer/Downloader"


Return to “Project Resources”

Who is online (over the past 5 minutes)

Users browsing this forum: 1 guest