egomassive's Knytt Stories Plus mod

  • 1097 Replies
  • 453773 Views
*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: egomassive's Knytt Stories Plus mod
« Reply #270 on: August 30, 2012, 18:12:58 »
I'm wondering how you extract file name from command line. MMF only seems to extract a raw part of the parth with quotes around it.

*

Offline egomassive

  • 1852
  • 250
    • View Profile
    • egomassive games
Re: egomassive's Knytt Stories Plus mod
« Reply #271 on: August 30, 2012, 22:12:23 »
I'm wondering how you extract file name from command line. MMF only seems to extract a raw part of the parth with quotes around it.

Basically I read the command line data and strip the quotes off. I check for the .knytt.bin extension before jumping to the install menu.

If
Code: [Select]
Lower$(Left$(Right$(CommandItem$(""), 11), 10)) = ".knytt.bin"Then set a global string "Dropped File" to
Code: [Select]
Left$(Right$(CommandItem$(""), Len(CommandItem$(""))-1), Len(CommandItem$(""))-2)and Jump to Frame 7, the install menu.

In frame 7, if "Dropped File" isn't empty it installs the string. The main thing to watch out for is restarts including game wins. It will take you back to the install menu. To avoid this I write an item to the Settings.ini before resetting.

*

Offline Raicuparta

  • 519
  • 41
  • Rai
    • View Profile
Re: egomassive's Knytt Stories Plus mod
« Reply #272 on: August 31, 2012, 00:06:24 »
This isn't a bug report, and I'm not even sure if I should be asking this here...
I used a custom shift/trigger sound feature to play a certain music when activating a trigger (I want the music to start when I open a sign but I was trying to avoid shifts), it works fine until I want the music to stop, there doesn't seem to be a way to do it. Is there a way around this or should I just not use this way?

*

Offline GrayFace

  • 805
  • 61
    • View Profile
    • my site
Re: egomassive's Knytt Stories Plus mod
« Reply #273 on: August 31, 2012, 06:47:35 »
In frame 7, if "Dropped File" isn't empty it installs the string. The main thing to watch out for is restarts including game wins. It will take you back to the install menu. To avoid this I write an item to the Settings.ini before resetting.
I think I have it also called "Dropped File". I'm using my extension to handle restarts. I added ability to store values between restarts and I increment one of the values on start of Init frame. I already had to do so not to reset window size on Restart, because now KS Ex window is resizeable.
« Last Edit: August 31, 2012, 06:50:21 by GrayFace »

*

Offline egomassive

  • 1852
  • 250
    • View Profile
    • egomassive games
Re: egomassive's Knytt Stories Plus mod
« Reply #274 on: August 31, 2012, 07:23:11 »
KS+ 0.6.4 and Level Editor Plus 0.4.0 are now available for download in the opening post.

The game has only fixes and small tweaks mentioned earlier this week.

The editor features a working Custom Objects tab in the script dialogues. There are context bar descriptions for most things now, but I've changed how it works. Place your mouse over something and press F1 for a description. This ought to be a big help to new level designers.

Under the hood I rewrote the editor's behaviors for knowing if it's the active window. Also, hopefully we've seen the last of duplicated commands. (Paste and undo would often take action 2 or 3 times under various circumstances.)

Another big change is script dialogue entries are added to the script pad upon pressing Enter or changing focus. Shift+Enter no longer does anything special. Check-boxes are still written to the script pad as soon as they are clicked.

@GrayFace: That's a handy feature. Obviously you can name the global string anything you want, but I bet we've taken the same approach to allowing users to drop files in any menu. :)

@Raicuparta: Sorry, if you use a Shift or Trigger to start a sound, the sound will play out. The only way to stop it is with a cutscene, or by starting 16 other sounds. There are a limited number of sound effect channels each time you play a sound effect the next channel is chosen. When you reach the last channel it returns to the first. With short sound effects you should never hear a cutoff sound. I can't imagine a seamless way to use this to do what you want though.

Here's a crazy idea, I don't even know if it'll work. Cover the screen in Shift B objects set to touch and stop music. Use a Trigger to spawn a Shift A object at the players location. The Shift A will supersede the Shift B allowing the music to play only on that tile. I think I'll try it myself and see how it goes. Nevermind, that only works with signs. However, I think you could easily spam enough sounds to clean out the audio channels if you surround the Sign's location with shifts set to touch. Play a short track of silence.
« Last Edit: August 31, 2012, 07:50:43 by egomassive »

*

Offline sergiocornaga

  • 1286
  • 131
    • View Profile
    • Sergio's Games
Re: egomassive's Knytt Stories Plus mod
« Reply #275 on: August 31, 2012, 08:34:24 »
There are context bar descriptions for most things now, but I've changed how it works. Place your mouse over something and press F1 for a description. This ought to be a big help to new level designers.

I'm not sure that this is better, just different. But I'd be interested in your rationale.

*

Offline Raicuparta

  • 519
  • 41
  • Rai
    • View Profile
Re: egomassive's Knytt Stories Plus mod
« Reply #276 on: August 31, 2012, 10:11:59 »
Testing the new version.
There seems to be a new problem with the custom character touch shifts. The way I'm using them, there are two "walls" of shifts, like this:
Code: [Select]
[A][B]
[A][B]
[A][B]
Shift A turns you into a certain character, and Shift B turns you into another character. With your new change to prevent it from triggering the same shift over and over, it seems that some times activating Shift A will prevent Shift B from working. This is something that I can easily prevent in my level by separating the shift walls,, but I thought I should report it.
« Last Edit: August 31, 2012, 16:03:58 by Raicuparta »

*

Offline sergiocornaga

  • 1286
  • 131
    • View Profile
    • Sergio's Games
Re: egomassive's Knytt Stories Plus mod
« Reply #277 on: August 31, 2012, 10:45:03 »
Clarified:
There seems to be a new problem with the custom character touch shifts. The way I'm using them, there are two "walls" of shifts, like this:
Code: [Select]
[A][B]
[A][B]
[A][B]
Shift A turns you into a certain character, and Shift B turns you into another character. With your new change to prevent it from triggering the same shift over and over, it seems that some times activating Shift A will prevent Shift B from working. This is something that I can easily prevent in my level by separating the shift walls, but I thought I should report it.

*

Offline Raicuparta

  • 519
  • 41
  • Rai
    • View Profile
Re: egomassive's Knytt Stories Plus mod
« Reply #278 on: August 31, 2012, 16:04:09 »
Thanks, forgot about that.

*

Offline Talps

  • 1027
  • 142
  • ...especially in a life-or-death situation!
    • View Profile
Re: egomassive's Knytt Stories Plus mod
« Reply #279 on: August 31, 2012, 17:56:30 »
@ SergioCornaga: The second invisible block on the right is Talps's suggestion. He didn't say what he wanted it for, but I can see it being used to make houses that can be walked in front of and on top of. I don't think it's a particularly good idea, but people do it, and now they can do it better. :)
I think what I was thinking of at the time was for narrow ledges you jump up, though I can't recall exactly. I was also thinking of trying to use them in conjuncture with triggers to make ledges you could go upwards through but not down through (making them spawn after you pass through them).

I think it'd be nice if you could completely disable the map for a level. I don't often want to use it but I also don't really want it to show off my messy shifts (especially if I use KS+ for 'Dragon Myth' which is a total mess - wish I'd been more organised when I worked on it before). I guess I'm a bit of neat-freak. :/ Really, I just don't want to have to go to the effort of making the map look good when I don't have any cause or desire to show the map anyway. But maybe I'm the only one OCD in that way.

I was also thinking a few days ago that it'd be nice to have another block similar to 0,12 - the one that only enables music when the player has the eye. I don't know if your recent changes have affected this, and annoyingly I can't remember exactly what I was thinking of at the time, but it'd be nice to have some other way of triggering music over a number of screens, like music only playing if a certain flag is on.

Lastly (and sorry if this has already been dissected somewhere in the bowels of this thread) I think it'd be very useful if the level selector menus could show, rather than just newly installed, unplayed levels, all (or a number of) levels displayed in order of newness. The same goes for last played, instead showing recently played.


EDIT: Found a bug. Nothing seems to work correctly on layer 7 if you have overlay=true set. Shifts, warps, upgrades and savepoints don't interact with the player and can't be interacted with, enemies can't injure the player and, it seems, can move through solid objects. I'm using a custom Juni sprite, if that's important.

EDIT2: I just remembered what I was originally thinking of for the music changer object, though what I'm thinking of is probably impossible. I'll say it anyway on the off-chance though. I thought it'd be really cool if the ambience could change (or become active) depending on whether the hologram is active or not. However, this was mostly me dreaming and I doubt it'd be possible/worth the effort. Just thought I'd mention it.
« Last Edit: September 01, 2012, 02:47:29 by Talps »

*

Offline egomassive

  • 1852
  • 250
    • View Profile
    • egomassive games
Re: egomassive's Knytt Stories Plus mod
« Reply #280 on: September 01, 2012, 04:01:34 »
@ Sergiocornaga: Changing the way the context bar works was for performance. Although only a small number of context instructions were used during a program loop, it appears the vast size of this section of the program became a burden. Now, the beast lies dormant until you press F1.

@ Raicuparta: I thought I programmed it so that the shifting scenario you described would work. That is my goal, so I'll see what's going on. *star for bug report* I tested it and this is what I found: Running through the walls one way or the other works fine. The only issue I found was when I stopped at the point where I overlapped both walls and went back. In this scenario the first wall can't change characters because I never stopped contacting it since it first activated. I'm open to suggestions for a better way to program it. I can't think of a way that wouldn't result in continuous changes if the player stopped at the point where they touch both shifts. Designing your level with a gap between walls may be the best solution.

@ Talps: First of all, I don't see the benefit of more music blocks like the one for the eye. If you want music to play based on a Flag or Power then you can Flag Warp to a similar screen with music.

Secondly, I'm having a hard time seeing your point about disabling the map. It works on old levels too, and most of them look terrible on the map. I expect this wont change much with KS+. Ugly maps will be the norm and most players will quickly learn this to be the case. In my early days as a KS player, I tried keeping a map on graph paper for a level until it overlapped itself. I was very much like  :huh: ...  >( . I've always seen the lack of a map as KS's biggest flaw. I see the map feature as the possibility to have a working level map rather than a requirement. I think it should be up to the player, not designer, weather they use the map or not. I'd really like to hear more opinions on the subject. I don't think designers should have the ability to disable the map.

What you're describing for level selection sounds very much like GrayFace's mod. It is a nice feature, I'll consider it.

Lastly, layer 7 stops interacting with the other layers when using Overlay. I've mentioned it several times, but I know this thread is huge. Originally this was done so waterfalls and other objects could still be placed in front of foreground tiles. Although this may force people to change their design habits, there are many advantages. For instance you can place a Sign tile wherever it looks best without worrying if the player can touch it. Rain can fall past collision tiles. Make normal water tiles safe. I ought to blog some tutorials in the style of SiamJai's .pdf tutorials to keep people aware of these details.
« Last Edit: September 01, 2012, 05:51:49 by egomassive »

*

Offline Widget

  • 359
  • 27
    • View Profile
Re: egomassive's Knytt Stories Plus mod
« Reply #281 on: September 01, 2012, 05:48:33 »
I think it's just an extension of Talps' attention to detail with the presentation of his levels. Like, he feels that if he's making a level he wants to define every aspect of the player's experience so they see the level as he intended; not with all the "messy" workings exposed in a map which isn't part of the concept.

Of course this is all supposition on my part :P

As for my point of view, I don't really use the map unless it's a major feature of the level (as in Elpis' Squareman's Adventure, for example) so it makes little difference to me either way. I think, if I were to open the map and it seemed clearly unintended for use in that level, I'd likely just ignore it from then on.

*

Offline Raicuparta

  • 519
  • 41
  • Rai
    • View Profile
Re: egomassive's Knytt Stories Plus mod
« Reply #282 on: September 01, 2012, 11:41:01 »
About the map, I have to agree with Talps, I think there should be an option to disable it. I'm still trying to decide if I'm going to fix it to make it even remotely useful on my Time Fixes Everything level (it is a huge mess right now), but if I decide not to, I don't feel comfortable with players seeing how it works backstage without going into the editor. If feel it would take away from the immersion.
Also, it's not very hard to imagine a scenario where the map could make a level easier than intended, maybe in some maze levels.

*

Offline sergiocornaga

  • 1286
  • 131
    • View Profile
    • Sergio's Games
Re: egomassive's Knytt Stories Plus mod
« Reply #283 on: September 01, 2012, 13:58:33 »
I don't think designers should have the ability to disable the map.

You might as well include it as a feature. If designers really want to disable it, they will using the means already at their disposal, like adding warps and putting 30 room gaps between screens.

*

Offline egomassive

  • 1852
  • 250
    • View Profile
    • egomassive games
Re: egomassive's Knytt Stories Plus mod
« Reply #284 on: September 01, 2012, 14:34:31 »
See, when even top designers like Talps and Raicuparta would rather disable the map than design their levels for it, who is going to use it? I thought designers would want to use it because of it's potential to improve the player's experience. Frankly, by not giving the choice to turn it off, I felt level makers would be more likely to design for it.

What if I let designers disable it and have it off by default for original levels, but let players turn it on in the options menu if they want to? It could say, "Force map on," so they know their actions will change the intended experience. I'd have to hide the Map Power icon though because I'm meticulous too.

PS: I think the map is a positive thing even for maze levels. I only feel like I'm cheating when I use it to see if a room is warping to itself, or if it's only meant to look like it is.

@ Sergio: It would be easier to show every room as x1000y1000, but I see your point.