Extended Version v1.5.9 - mod for KS & Level Editor

  • 119 Replies
  • 111085 Views
*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.1.2 - mod for KS & Level Editor
« Reply #15 on: April 15, 2011, 10:32:47 »
Yes, it creates normal 1.2.1 levels, but the uploaded version is still buggy, because the world.ini editor kicks in here and there. The new version will be out as soon as I fix diagonal scrolling (yes, it still works incorrectly) and a small bug in the editor.
It would be cool to have a manual, but I'm too lazy to write it.

Meanwhile I'm thinking of which Video Games Nerd quote would be appropriate to describe working with MMF.

As expected, nothing works right and "Number of <> 0" is triggered. Can anyone tell me how to destroy objects so that they are actually destroyed? :sick: My only guess so far is that destroying is deferred until the frame ends.
Edit: I've settled with a work-around.
« Last Edit: April 15, 2011, 11:00:39 by GrayFace »

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.2 - mod for KS & Level Editor
« Reply #16 on: April 15, 2011, 13:24:09 »
Version 1.2

Game:
  • Keyboard shortcuts. Most menu buttons have their first letter as a shortcut. Levels in levels list are chosen by pressing buttons '1' to '8'. Save slots are chosen by pressing buttons '1' to '3'. 'Play', 'Start a new game' and 'Load game' have the right arrow as additional shortcut. Additional shortcut for 'Back' is BackSpace.
  • Set Format=3 in World.ini to make a map require KS Ex (version 1.2 or higher).
  • Set FormatEx in World.ini to make a map require a specific KS Ex version (or higher). For version 1.2 the FormatEx is 120.
  • Ball mode: improved wall bouncing, flying sound added.
  • Bug fixed: Diagonal scrolling is finally fixed.
Editor:
  • "Screen -> Hide error messages" menu item added that disables errors that inform of transparent tilesets, invalid music etc.
  • Bug fixed: World editor was catching Ctrl+Z and Ctrl+V shortcuts, thus messing things up.
  • My bug fixed: if a level without EditorSettings.temp file was opened and "Test Level" was used, the next time the level was opened at position x0y0.


And now I've done a real level with KS Ex: GrayFace - Ball Tutorial.
« Last Edit: April 15, 2011, 22:51:41 by GrayFace »

*

Offline egomassive

  • 1852
  • 250
    • View Profile
    • egomassive games
Re: Extended Version v1.1.2 - mod for KS & Level Editor
« Reply #17 on: April 15, 2011, 21:39:44 »
I like the new keyboard shortcuts. I may have to steal that idea. I'll have to give the editor a try soon. The bugs sound small compared to the improvements.

...
Meanwhile I'm thinking of which Video Games Nerd quote would be appropriate to describe working with MMF. ...

MMF has so many hidden quirks it's a wonder anything worthwhile can be made with it. When I read through Nifflas' code I can see that he's learning and improving as he goes, and considering how difficult MMF is to work with he probably could have learned game making in C++ from zero knowledge in half the time. Then I think, now I'm learning MMF to make mods of Nifflas' games when I ought to be learning something more valuable.[/rant]

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.1.2 - mod for KS & Level Editor
« Reply #18 on: April 15, 2011, 22:51:09 »
I feel the same. The real problem isn't learning, but developing a big application without any ways to compare two versions, find&replace stuff, no real debug etc. When I was making the first version of KS Ex I had one bug for which the cause was completely unclear. To fix it I had to look at my modifications and do them in Nifflas' unmodified sources, even copying was impossible at places where groups are activated/deactivated. I still don't know what caused the bug, because after I've copied everything I wanted it just worked.
As for learning MMF, it's an interesting experience, I feel good about having spent my time on it.

I like the new keyboard shortcuts. I may have to steal that idea.
Sure, I've stolen the idea of scrollable signs from you BTW.
Back then I did experiments with changing appearance of things using custom objects and it worked fine, but the custom objects was late by one frame. After adding a callback at the very end of frame cycle
  • it would be possible to replace any standard object's graphics in KS Ex.
  • After the events of frame, the events of all objects are called, then the callback is needed. I wish I knew the order in which events of objects are called. I'll try to create an object called something like 'ZZZZ' and place the callback in it.
I'll have to give the editor a try soon. The bugs sound small compared to the improvements.
In the new version the only bug I'm aware of is a minor graphical glitch that happens with tilesets with transparent bottom line. Also, the "Level -> Script" didn't work for me one day, but I couldn't reproduce it today.

I've forgot about an important change in the editor:
  • "Screen -> Hide error messages" menu item added that disables errors that inform of transparent tilesets, invalid music etc.

Now I've added it to my posts.
« Last Edit: April 15, 2011, 23:27:52 by GrayFace »

*

Offline egomassive

  • 1852
  • 250
    • View Profile
    • egomassive games
Re: Extended Version v1.1.2 - mod for KS & Level Editor
« Reply #19 on: April 16, 2011, 07:50:19 »
... I'll try to create an object called something like 'ZZZZ' and place the callback in it. ...

The last object created is the first object to execute commands. So, if you create an object at start of frame --attach it to an object bar in the frame editor-- it will execute it's behaviors after all of the rendered objects execute theirs, afaik.

On the subject of stealing ideas, I was inspired by your no-fish-in-walls concept and put it in my mod. The play button in the install dialogue, I thought it would take you directly to the newly installed level. I now know it just takes you to the level selection menu, and I think you said you got the idea from Bloxmaster, but I want to steal what I originally thought it did. Bwahaha!

*

Offline Comhon

  • 334
  • 23
    • View Profile
    • comhon.cz
Re: Extended Version v1.2 - mod for KS & Level Editor
« Reply #20 on: April 19, 2011, 07:58:48 »
I like this mod, mostly the raising water from tutorial.

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.1.2 - mod for KS & Level Editor
« Reply #21 on: April 28, 2011, 14:15:50 »
Turns out my assumption was right. Behaviors are executed on all object 'classes' and probably in order of creation of those 'classes'. When I added the behavior to the last of my new objects it worked. The synchronization of graphics is still not perfect, because the animation is done after all behaviors are done, so custom object is displayed in the right place, but is late by one frame.

The play button in the install dialogue, I thought it would take you directly to the newly installed level. I now know it just takes you to the level selection menu, and I think you said you got the idea from Bloxmaster, but I want to steal what I originally thought it did. Bwahaha!
I thought about this too, but somehow forgot about it.

*

Offline egomassive

  • 1852
  • 250
    • View Profile
    • egomassive games
Re: Extended Version v1.1.2 - mod for KS & Level Editor
« Reply #22 on: April 28, 2011, 23:00:22 »
Turns out my assumption was right. Behaviors are executed on all object 'classes' and probably in order of creation of those 'classes'. When I added the behavior to the last of my new objects it worked. ...
Interesting.

I found this quote on the Click Team site
Quote from: Yves
It's an internal order (it's sometimes the creation order, but it's usually different if you have deleted objects and created new ones).

Well, that's clear as mud. I think "created" means "added to the frame", not "spawned at runtime". Anyway, kudos for working it out in your mod. I doubt one frame will be noticeable, especially if position is accurate.

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.1.2 - mod for KS & Level Editor
« Reply #23 on: April 29, 2011, 20:31:35 »
I found this quote on the Click Team site
Quote from: Yves
It's an internal order (it's sometimes the creation order, but it's usually different if you have deleted objects and created new ones).
Thanks, that makes it clear. In case an object is deleted, the next one created would probably take its place.

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.2 - mod for KS & Level Editor
« Reply #24 on: October 15, 2011, 23:33:58 »
Version 1.3
This update is huge :)

Game:
  • Improved ball mode. Now with ball graphics and slopes/edges detection!
  • VVVVVV mode.
  • Reworked objects templates. Now they can have animation, may kill player or be solid. Now they can be used much like custom objects in Level Editor.
  • Text objects added. You can use text of any color, use any custom font.
  • Bank 0, Obj 32 - No Wall Swim object.
  • All graphics can be changed.
  • Music can now be turned on/off from within the menu, not just with a shortcut.
  • Music can loop in a level. Add "MusicLoops = 0" to Script.lua for it. There is also an event "MusicLoops", so you can choose where it should loop.
  • Setting "NoLoadScreenDelay = true" would remove the 1 tick delay that happens after screen tiles are rendered, but before objects are created. However, in object-intensive screens combined time to load tiles and objects becomes too big, so you may want to turn it on and off in BeforeLoadScreen event.
  • Sorting by date, search and page buttons in level selection screen. Page buttons can be turned off by setting "No Level Page Numbers=1" in Data\settings.ini.
  • Clickable links in Credits, a list of links for "Get More Levels" button.
  • "Level Editor" button instead of "About MMF". "About MMF" is still accessable from Credits.
  • You can set Permanent value to 1 for objects to make them persist between screens.
  • Cheat improvements. You can now teleport between screens, save, turn powers on/off and turn ball mode on/off (in ragular levels).
  • Bug fixed: After removing Detector or Hologram powers they still were on.
  • Bug fixed: Set "NoStuckUmbrella = true" to prevent umbrella from getting stuck on if it's shifted off while in use.
  • Bug fixed: egomassive's fix for objects facing bug is applyed, see http://nifflas.lpchip.nl/index.php?topic=4648.0
  • Bug fixed: Music wasn't playing after cutscenes, see http://nifflas.lpchip.nl/index.php?topic=4744.0
  • Bug fixed: Worlds directory subfolders without World.ini are no longer listed as levels.
  • Bug fixed: Now Juni will no longer briefly appear in her old position when shifting to a new relative position on a new screen.
  • Bug fixed: Bank 17, Obj 1 used to redirect bullets of Bank 4, Obj 12.
  • My bug fixed: Big "vars" table couldn't be saved.
  • My bug fixed: Strings containing new line character couldn't be saved in "vars" table properly.
  • My bug fixed: object:LoadFrame ignored frame number.
  • My bug fixed: hologram wasn't exported correctly.
  • My bug fixed: slow screen loading if "NeedObjects = true".
  • Backward incompatibility: hot spot of object templates is set to the middle of square, not top-left corner.
Editor:
  • Full set of object icons for bank 255 in the original style.
  • Now pressing Ctrl+arrow moves the view by 100.
  • Author field for New Level is remembered.
  • Other small things like Alt+F2 shortcut for Reset and double click reaction for minimap.
  • When "Show custom objects" option is active, objects graphics is shown together with object index icon.
  • There was a major slowdown when going from screen to screen in big levels due to world.ini editor line searching. Some other performance improvements have been done.
  • Bug fixed: Ctrl+Del was causing corruption and crashes due to no check for workspace existence.
  • Bug fixed: Sometimes custom objects were cropped with "Show custom objects" option.

« Last Edit: January 23, 2012, 03:50:00 by GrayFace »

*

Offline Raicuparta

  • 519
  • 41
  • Rai
    • View Profile
Re: Extended Version v1.2 - mod for KS & Level Editor
« Reply #25 on: October 15, 2011, 23:38:03 »
I think you fixed everything that I ever noticed was wrong. This is awesome :)

EDIT: Something is wrong, the editor is using way to much CPU (above 50% on a Core2 Duo 2.2GHz), and that made it very slow.
« Last Edit: October 15, 2011, 23:43:39 by Raicuparta »

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.3 - mod for KS & Level Editor
« Reply #26 on: October 17, 2011, 00:37:37 »
It was caused by the last change I made to the editor. Now I've fixed it and another critical bug thanks to FTF32 and will upload a new version very soon.
« Last Edit: October 17, 2011, 01:07:10 by GrayFace »

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.3 - mod for KS & Level Editor
« Reply #27 on: October 17, 2011, 09:12:13 »
Version 1.3.1

Game:
  • Bug fixed: Permanent objects were destroyed with player's death if Game.WhiteDeathDelay isn't 0.
Editor:
  • Bug fixed: Version 1.3 worked with big worlds very slowly.

« Last Edit: October 17, 2011, 12:02:35 by GrayFace »

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: Extended Version v1.3.1 - mod for KS & Level Editor
« Reply #28 on: October 19, 2011, 09:13:26 »
I've run into a critical bug: objects behavior gets broken :(
Edit: It happens with lasers if NoLoadScreenDelay=true. There are problems with self droppers too. So, for now just don't enable NoLoadScreenDelay for all levels (that is, in Data\UserScript.lua). New version fixing the issue will be out soon.
« Last Edit: October 19, 2011, 10:57:55 by GrayFace »

*

Offline Raicuparta

  • 519
  • 41
  • Rai
    • View Profile
Re: Extended Version v1.3.1 - mod for KS & Level Editor
« Reply #29 on: October 23, 2011, 14:28:11 »
When "Extended Version Objects" is ticked (not sure if that's the right word, I mean when there is a V), it seems like the extra objects disappear, and when it is not ticked, the objects appear in the list. That should probably be the other way around.