YYYYYY

Started by Robson, February 02, 2010, 09:35:15 PM

Previous topic - Next topic

Robson

#60
Wow, you guys are officially fantastic! This is a massive amount of feedback and it's all very useful. Thank you!! :viridian:

I'm on my lunch break, so I'll reply now and then I'll be able to work on these things tonight.

The Brass

-Running speed too slow
-Moving platforms outrunning player is irritating.

-If I try to move by doing a single tap in the air, it often fails to work/lags a bit. Does the movement limit run on a "modulo height" system, or "recharge" system?
I definitely need to do something about this, so I'll make this my main priority. The game works like this:

A timer runs every 75 milliseconds.
When the timer runs:
  Platforms and word enemies move one square.
  If the player is in the air, they will move up or down.
  A counter is increased by 1. If it hits 4 it is reset to 0. So it continually loops through 0, 1, 2 and 3.
  If the counter is 0, the game checks to see if the player is on a direction tile. If they are, they are moved left or right.
  If the counter is 1 or 3, the game checks to see if the player is holding the left/right keys (or they have tapped the left/right key, but not moved left/right yet) and then moves them accordingly.

Perhaps a potential solution to the 'slow running speed', "outrunning platforms' and "faster vertical speed' issues would be:

Run the timer every 100 milliseconds.
When the timer runs:
  Word enemies move by one square.
  If the player is in the air, they will move up or down.
  Check to see if the player is holding the left/right keys (or they have tapped the left/right key, but not moved left/right yet) and then move them accordingly.
  Counter works in the same way.
  If the counter is 1 or 3, platforms move by one square.
  Direction tiles work in the same way.

I don't have the game with me at the moment, so I can't test this out. I'll try it tonight, along with other combinations.

-Backgrounds are unnecessary and distracting, especially when mixed with the dissolving %s.
I like the backgrounds, but I can understand how they could be distracting. I'll test making them darker, using "o" or "." instead, and making them move at half the speed. If I include the backgrounds, I'll make sure there's a way to turn them off.

-Rotation makes it hard to navigate.
Rotation puzzles are nice. The mechanic is fun when kept to one room, problematic when it effects others.
-Map does not follow rotation.
Great idea - I'll make the map rotate. I think in the real levels the rotation would be restricted to one or a very small number of levels at a time. Hopefully that combined with the rotating map would fix the navigation issue? I'll also make sure rotation doesn't mess up other rooms.

-Certain rooms, give me a Y, unbeatable on certain rotations.
-Rooms seem to have a lot of useless space at times, for example south. Testing would explain this, though.
-Partial side wraps (Direction square check, ESPECIALLY east) confusing.

It's great to know these things and I'll take them into account when I design the real rooms. The vast majority of the rooms in this version were simply created to test out parts of the engine, so there's all manner of weirdness and a lot of rooms got butchered around to test out new things. They're not designed to be played like a finished game.

-Checkpoint from north to gmay kills player if no action is taken from respawn. In general, checkpoints that make you move after respawn are annoying.
Agreed! For the real levels I'm going to place checkpoints in safe places.

-Yen looks like a spike. More flashing?
I'll have a look at other characters and try to find something suitable. I chose the yen symbol because it looks a bit like a trophy.

-Pause button?! Map button?! Oh, esc. Put it on enter and P too.
Good idea - will do.

-Terminals in wrong orientations unreadable! Nearby rotators turn these into nice puzzles, though, so nothing bad.
Ahh I must have missed this. I'm not aware of this bug. I'll have a play around tonight and try to find it.

-Souvenirs freeze controls, but not movement, potentially even killing you.
That's bad! Thanks for spotting that. I'll make sure it gets fixed.

-In fact, conveyors in the tunnel of love are unoutrunnable too.
Whooops, I forgot to say that the tunnel of love is set to one-switch mode, so right and left are disabled. I'd make this obvious in the real game.

-Death should freeze everything, ala Mad Carew.
I like the way the world carries on after the player dies, but I'll change that if you feel strongly about it.

-If I run holding left/right, then flip without letting go, I will only move once in the start.
-It appears that if I start holding left/right in the air, I start as slow and get faster later. That's unpleasant too.

I'll investigate these and figure out what's going on.

-Fullscreen just adds black to the sides. The game itself won't increase in size.
I tried increasing the font-size, but I didn't like how it looked. So I kind of settled for fullscreen allowing for a bigger map and removing any distractions behind the window. I'll have another play around with it and try to get something working.

Rotation-Inversionplane puzzles are fun too. The fact that the inversionplane changes it's attribute when you rotate is a nice touch.
Glad you like it! I'm looking forward to making rooms with rotation.

360 controller works fine. Beep plays.
Excellent :viridian:

On the other hand, rooms like Give me a Y can be used to prevent players  from proceeding on a certain rotation. However, in these cases make a rotator easily accessible, not behind a deadly room like North.
I'll make sure I do that.

The rest is up to preference and design plans, I guess.
Thank you again for the feedback. This is seriously useful to me.




Shasharala

Finally!  Some hands on playing with the game!

Well, for starters it looks awesome.

Thanks for your feedback!

I get the beep.
Sounds like everyone is getting the beep – that's a relief! My main feature is "Includes music by SoulEye" :viridian:

Everything is as responsive as should be.
I don't feel anything needs to be sped up or slowed down and I don't really feel the background is distracting... but alas maybe others will feel otherwise.

I'm thinking it would be best to include an on/off switch for the background. That way everyone will be happy. Perhaps I'll include a third option of a "subtle background", which would be less obvious than the current background.

I've noticed in fullscreen mode that if a souveneir  is picked up then the box that says you picked it up doesn't surround the words. ( see screenshot: http://img.photobucket.com/albums/v103/Shashrala/BoxProblem.png )
Well spotted there. I'll make sure I fix that.

Also, if the map could show what room one is currently in by highlighting it somehow, that would be great.
The current room should be highlighted in yellow, but it's rather a subtle effect. I'll make it more obvious.




Requiem

Hey Robson, got to play the game a bit this evening. First and foremost, its' got great potential and is already a fun game to play - and will obviously only get better with time.

Thanks Requiem!

Moving on to glitches and criticism, because this is the "fun" part !
Glitches? We like to call them "undocumented features" :viridian:

GLITCHES:
A. On "The Harsh Mistress" - Occasionally (Not EVERY TIME, but frequently) when you fall UP from the left side, the several "A" spikes will register that you hit them when you are in the space to their left. This might just be input lag from telling the player to go right, and releasing it too late, but its just slightly irritating. Nothing major, and is probably just input lag.

To reproduce: Fall upwards from the left side, and snuggle against the bottom left block of #'s, release "Right" button, and see if it registers you hitting the spike.

This is great, because I'm awful at that room and now I have something to blame it on! I'll take all this into account when I play around with the speed/movement controls.

B. More a complaint than a glitch - Movement speed. It seems that the player moves sluggishly. I timed the speed - he moved horizontally 17 "pixels" or "blocks" in 2.6 seconds, which equates to about 1 pixel every .15 seconds. He moved vertically 20 pixels in 1.5 seconds, which is 1 pixel every .075 seconds. The inconsistency leads you to see that the person is moving horizontally slower than he falls vertically - which is just kind of interesting. (Tested on "Two Roads Diverged and I took them Both" by running horizontally into the spike and falling vertically into the spikes above). This leads to that weird stagger effect of falling diagonally, as well.
Excellent timing! That is exactly right. Having the player fall faster than they can run is intentional, because I thought that would be more realistic and easier to write levels. However, a lot of people are saying that the running speed is too slow, so I definitely need to do something about that. I'm going to play around with that tonight and get a system that works.

C. Movement speed Part 2 - Moving Pathways. This is a double problem - 1. Pushing towards the tide of the pathway doesn't increase the movement speed, or, if it does, it is unnoticeable, and 2. Pushing away from the tide of the pathway results in zero movement. Comparing to V's conveyor belts, you can drastically speed your person up by moving with the tide, and you can still fight the current to move against them.
That's weird. It shouldn't be working like that? It should work like VVVVVV. I'll investigate this.

OH WAIT! Is that on the tunnel of love? That level is set to one-switch mode, so left and right are disabled. Sorry, I should have written that in the notes.

D. This one made me sad. The level editor doesn't open for me. It gives me the error "Component 'comdlg32.ocx' or one of its dependencies not correctly registered: a file is missing or invalid".
Whoops. I added the common dialog control and then didn't use it! Removing that control should fix your problem, so I'll do that when I get home and then upload a new version.

Will update as I get to play more tomorrow!
Thanks for your feedback!

Requiem

Yeah, it was Tunnel of love that the paths weren't working! I tried it again in the conveyor test room and it works as intended.

Also, I found, quite by accident, a way to create new levels without the level editor itself. I accidentally copied a folder into the YYYYYY directory, and it showed up on the main menu. Obviously since it didn't have any of the level data, it wouldn't load a map, but if one would create levels following the structure in your settings.ini file, they could easily create rooms in Notepad that would translate to actual rooms in the game. I found this, but havn't gotten to try it yet - I get off class in a few hours and will have time to try to create a room or two in Notepad.

Robson

Quote from: Requiem on March 24, 2010, 06:41:51 PM
Yeah, it was Tunnel of love that the paths weren't working! I tried it again in the conveyor test room and it works as intended.

Also, I found, quite by accident, a way to create new levels without the level editor itself. I accidentally copied a folder into the YYYYYY directory, and it showed up on the main menu. Obviously since it didn't have any of the level data, it wouldn't load a map, but if one would create levels following the structure in your settings.ini file, they could easily create rooms in Notepad that would translate to actual rooms in the game. I found this, but havn't gotten to try it yet - I get off class in a few hours and will have time to try to create a room or two in Notepad.
Aye :viridian: Sometimes it can be useful to edit the rooms in notepad, because the level editor can't do everything. For example, I often want to move a load of tiles up by one place, so I just open notepad and cut+paste them up. I've removed the common dialog control from the editor and compiled a new version. It's in the the first post. If that doesn't work for you I'll make you a proper installer.

I'm about to start making some big changes to the way movement and speed works, so you might want to wait until all that has settled down, before making any levels. The level editor is rather confusing to use, because I've never distributed it before. I'll make a video guide once I've finished the YYYYYY engine, but you're welcome to ask any questions.

Robson

#63
Modifying the movement and speed is going to take a little while to get right, so I need to spend longer on that.

I've changed lots of other things though:

* The map+stats screen can now be accessed by pressing Escape, Enter, P or M.
* Added a settings.ini file, which allows you to change a few of the things in YYYYYY. Currently it gives a lot of control over the background effect and allows the souvenir symbol to be changed.
* Changed the souvenir symbol to be §.
* Fixed messages from souvenirs and terminals appearing in the wrong place in fullscreen mode.
* Rearranged the rooms from the first video into a new campaign. The new campaign gets rid of any rooms with duplicate features and makes the rooms a lot more accessible. This should make it a lot easier for me and you guys to test out the game objects.
* Made respawning a lot faster.
* For debugging, pressing d will make the game slightly faster and press shift+d will make the game slightly slower.
* Also for debugging, press r will rotate the current level by 90 degrees left and pressing shift+r will rotate 90 degrees right.

I'm going to be out tomorrow night and Friday night, but I'll get more stuff sorted over the weekend and upload a new version.

Edit on Thursday night:

Got a little bit of time before I'm off to sleep:
* Map displays in the same rotation as the game.
* Joystick can be disabled in the settings.ini file. This is just in case it causes unforeseen problems.
* Made the current room more obvious on the map.
* Disabled everything when a souvenir message is displayed.

Edit on Friday night:

Back from the cinema and got a bit of time available:
* Fixed two bugs with dissolving tiles.
* Made some changes to the rotation code, which might make it less processor intensive.
* When the player dies all the game objects stop moving.
* Playing the game at midnight will no longer mess up all the timers.

Shasharala

Wow!
Lot's of work!
Good job Robson!

Robson

I've uploaded a new version to the first post, which has the changes I listed above and a tweaked movement/speed system. I think I've fixed all the problems that people have reported and done the suggestions. All the suggestions about room design I'll be using for the real levels.

Please let me know if you made a suggestion or reported a bug, which hasn't been done/fixed. I think I've done everything, but potentially something might work correctly on my computer, but not on another computer.

Got some questions for you guys:

ecsdaowzwpjlvn

Quote from: ecsdaowzwpjlvn on March 23, 2010, 09:56:02 PM
90 degrees turns makes CPU go 100% for a few seconds.
I've made a couple of changes to the rotation code, which might help this. After I finished writing this I'm going to break out my Windows 98 computer and test the game on that.

Terry

Quote from: Terry on March 23, 2010, 10:20:46 PM
I think possibly the whole thing could be a bit faster - I was worried that my version was running a bit slow, but when I checked the video it's about the same.

... Actually, the game speed is probably fine, I think it's more that the character speed seems a mite slow in comparison. The controls do feel a little stiff to me, I'm not sure why. Making the character faster might make it feel more responsive.
The character now runs twice as fast! Going from this version to the old version definitely makes me realise how slow it was before.

I've added a couple of debug keys into the game. Pressing d will make the game a little bit faster and press shift+d will make the game a little bit slower. You can press these as many times as you like. Would you mind testing that out and letting me know what feels right? Thanks Terry.

The Brass

Quote from: The Brass on March 23, 2010, 11:35:29 PM
-Terminals in wrong orientations unreadable! Nearby rotators turn these into nice puzzles, though, so nothing bad.
I've been trying to locate this bug, but I can't find it. Could you describe this in a bit more detail? How do I replicate it?

Quote from: The Brass on March 23, 2010, 11:35:29 PM
The rest is up to preference and design plans, I guess.
It sounds like you might have some more suggestions here? I'd love to hear them.

Terry

Oh wow! This is so much better :) Yes, this movement speed is perfect!

It appears to have highlighted two little bugs, though:

- You've got a key-held tunnel bouncing issue (actually, the early versions of VVVVVV had this too) - i.e. in a narrow tunnel, if you hold up or down, you keep bouncing between the floor and the roof. This can cause a problem in a very narrow tunnel where you can overpress a button and end up bouncing right back to the surface you flipped away from.

- I keep hitting spikes which were to my right while falling as I moved right, even though I feel like I should have narrowly missed them. I think there might be a collision problem. ALTERNATIVELY, maybe there isn't, but it could just be that the grid snap thing causes me to get the timing wrong when moving around corners. I dunno. Maybe it's something I'd get used to.

When this gets a little closer to completion, I totally plan to make a level for it! :viridian:

Robson

#67
Quote from: Terry on March 27, 2010, 03:40:50 PM
Oh wow! This is so much better :) Yes, this movement speed is perfect!
Excellent :viridian: Thanks for checking it out!

Quote from: Terry on March 27, 2010, 03:40:50 PM
It appears to have highlighted two little bugs, though:

- You've got a key-held tunnel bouncing issue (actually, the early versions of VVVVVV had this too) - i.e. in a narrow tunnel, if you hold up or down, you keep bouncing between the floor and the roof. This can cause a problem in a very narrow tunnel where you can overpress a button and end up bouncing right back to the surface you flipped away from.
Ahh I get what you mean. I intentionally wrote in the continuous bouncing, but your way makes a lot more sense. I've modified the code to work like that, so it's no longer possible to accidentally bounce back.

Quote from: Terry on March 27, 2010, 03:40:50 PM
- I keep hitting spikes which were to my right while falling as I moved right, even though I feel like I should have narrowly missed them. I think there might be a collision problem. ALTERNATIVELY, maybe there isn't, but it could just be that the grid snap thing causes me to get the timing wrong when moving around corners. I dunno. Maybe it's something I'd get used to.

I think this might be because vertical movement is done before horizontal movement.

For example, if you're falling and on the red square and press right, at the next movement event you would move down and then right - into the spike.

If you're falling and on the yellow square and press right, at the next movement event you would move down and then right - into empty space.

However, you should probably only die if you press right whilst on the yellow square. I think this is going to be tricky to change, but I'll have a go...

Edit: That turned out a bit easier than I was expecting! I've uploaded a new version. Would you mind trying that out and seeing if it's better or worse? In the new version you'd only die if you pressed right whilst in the yellow square.

Quote from: Terry on March 27, 2010, 03:40:50 PM
When this gets a little closer to completion, I totally plan to make a level for it! :viridian:
Haha that would be ironic! I'd have to change my biggest selling point from "Includes music by SoulEye" to "Includes music by SoulEye and content by Terry Cavanagh" !!

The Brass

Quote from: Robson on March 27, 2010, 01:17:25 PM
Quote from: The Brass on March 23, 2010, 11:35:29 PM
-Terminals in wrong orientations unreadable! Nearby rotators turn these into nice puzzles, though, so nothing bad.
I've been trying to locate this bug, but I can't find it. Could you describe this in a bit more detail? How do I replicate it?
Just like the checkpoints: when there's a terminal on a wall, you just fall past it. The text is visible for a moment, but as soon as you fall past the terminal it disappears.
Quote
Quote from: The Brass on March 23, 2010, 11:35:29 PM
The rest is up to preference and design plans, I guess.
It sounds like you might have some more suggestions here? I'd love to hear them.
That's just a category split. I listed things that definitely need to be fixed, then noted that everything else from the first list was opinion; i&e  someone might like what I didn't.




A few new things though:

-Moving platforms kill you if you are on a moving platform. They should just push you off.

-Rotating indeed is very heavy. I'm currently in battery-saving mode and, at least in the old version, rotating is slowed down.

-I also had issues with the spikes. I think it's because in VVVVVV, you can hold a sideways button when next to a wall that ends in a spike and not die because the fall speed/horizontal speed ratio is the same shape as the spike. There's a few rooms where that is critical, for example As You Like It. Now that the speed is doubled, the movement is no longer V-shaped, so it should be okay now.



I'll get the new version when i get back to my charger.

Robson

#69
Thanks for your reply, The Brass. I've made the following changes to the game:

* Terminal messages now pause the game, like the souvenir messages.
* The game timer is paused whilst viewing the terminal and souvenir messages.
* Terminal and souvenir message now display "(press space to continue)" after the message.

* The rotation display can now be controlled via the settings.ini file and I've changed a lot of the rotation code. It can be set to:
  * Normal - Shows rotation at 10, 20, 30 ... 80 degrees, with a 0.1 second interval. (max cpu before optimising: 49%, max cpu after optimising: 28%)
  * Light - Shows rotation at 30 and then 60 degrees, with a 0.2 second interval. (max cpu before optimising: 26%, max cpu after optimising: 10%)
  * Disabled - No graphical effect. The game just rotates straight away. (n/a - no noticeable change to cpu usage)
* The game timer is paused during the rotation effect. It didn't need to be paused before, but now rotation takes different amounts of time.

* If a moving platform moves you into another moving platform, you just fall off, rather than being killed.

I've compiled a new version and linked it in the first post.

I definitely agree with you and Terry that collision with spikes is less than perfect. I'm trying to figure out a way that doesn't involve a ton of special rules for situations.

Shasharala

I like what you did to the map.  It is way more obvious now to tell what room I'm in.
And movement is way better.

There are a few issues I'm noticing though.

For one thing in Test Room 6 on the right for crewmate testing when I land near one the game fails to respond for about 30 seconds before bringing me to the beginning screen to choose between test lavels or video 2 levels.

For another I've noticed that with the rotation lines it is possible to get trapped inside a diamond of those rotation lines just flipping around.  Not sure if it's something that can be fixed or if diamond rotation lines are just to be avoided.  Also it's possible to escape this with some fancy maneuvering but it's annoying.  If a video is needed just say so.

Well, that's all I can think of for now.

A preference would be to possibly get fullscreen to actually expand the game screen itself, but of course that is not necessary as I remember you saying you had issues with test stretching or something.

Thanks Robson for being so timely on this stuff.  :viridian:

Robson

Quote from: Shasharala on March 29, 2010, 08:29:00 AM
I like what you did to the map.  It is way more obvious now to tell what room I'm in.
And movement is way better.
Thanks for the feedback Shasharala! I thought the green squares would be suitably noticeable :viridian:

Quote from: Shasharala on March 29, 2010, 08:29:00 AM
There are a few issues I'm noticing though.

For one thing in Test Room 6 on the right for crewmate testing when I land near one the game fails to respond for about 30 seconds before bringing me to the beginning screen to choose between test lavels or video 2 levels.
Oh wow, that definitely shouldn't be happening! I changed the message code for terminals and souvenirs yesterday, so I probably messed it up then (they all use a lot of the same code). I'll check that out when I get home.

Quote from: Shasharala on March 29, 2010, 08:29:00 AM
For another I've noticed that with the rotation lines it is possible to get trapped inside a diamond of those rotation lines just flipping around.  Not sure if it's something that can be fixed or if diamond rotation lines are just to be avoided.  Also it's possible to escape this with some fancy maneuvering but it's annoying.  If a video is needed just say so.
Ah yes! Whooops. That bug has been in since the beginning. I've been meaning to fix it for a while, but never quite got round to it. I'll make sure it's sorted soon though - probably tonight!

Quote from: Shasharala on March 29, 2010, 08:29:00 AM
Well, that's all I can think of for now.

A preference would be to possibly get fullscreen to actually expand the game screen itself, but of course that is not necessary as I remember you saying you had issues with test stretching or something.

Thanks Robson for being so timely on this stuff.  :viridian:
That's okay! I'm going to have a play with the fullscreen mode and see if I can get the game to expand accordingly. When I tried before it looked awful, but I'll have another go. Might need to rethink the rotation code though, because rotating the entire screen could be very slow...

The Brass

And new stuff:

-Checkpoint in Terminal test: infinite death! No crash though.

-If you hit a souvenir while falling, you keep falling. If you die, the rainbows stay until you find a new souvenir or a terminal. This only happens on the default rotation though. Or it's limited to the one next to the checkpoint in Terminals test.

Robson

#73
Thanks for the feedback, The Brass! The infinite terminal death is okay - I'll take a lot more care when I make the real levels. That sort of things won't exist then :viridian:

Souvenir bug - well spotted! I had trouble replicating that, even though I knew what to do.

I've made changes based on feedback from yourself and Shasharala:

* Fixed continuous falling past souvenirs.
* Fixed bug with the final message not appearing.
* It's no longer possible to bypass rotation squares by moving towards them, potentially trapping you inside diamond rotation shapes.
* Changed the souvenir colours into a rainbow. I realise that wasn't a suggestion, but it just felt right!

Added some features to help with debugging:

* Left-clicking the screen will move the character to that position. Middle-clicking will create a spike. Right-clicking will create a wall.
* Pressing Shift+F2 will make a massive (in dimensions and file size) map of the current campaign. (example re-saved as a 90kb png file)

Decided a few things:

* Got a bit closer to deciding the track for the game. Need to narrow it down to one of:
  * Chipped Face
  * Mr Gamer (would be about 35 times bigger than the game!)
  * Nomajej (the mood of the song at the beginning wouldn't fit the game, but the rest is perfect)
  * Mystery Option D
   I'd probably start the music when a campaign starts and when the player collects a souvenir, rather than looping it.
* The player character will be Yvette:
   
* I'm going to make lots of small campaigns, rather than one big campaign.
* Each campaign will have a theme, to give the game variety and make it memorable.
* Dissolving tiles will be the theme of the first campaign.

No new version just yet, because I've thought of a new way to do the rotation. Fingers crossed that it'll be less processor intensive.

Edit (a couple of hours later): Yes!! It works :viridian: The screen is now rotated with no noticeable difference to the processor usage. It also looks better. :viridian: I need to do a bit more testing, so I'll release a new version tomorrow/wednesday.

ecsdaowzwpjlvn

Quote from: Robson on March 29, 2010, 08:35:24 PM
* The player character will be Yvette:
Now if you'd name one of the levels "Listen very carefully, I shall say this only wence" my life would be complete.