Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1370461 Posts in 64470 Topics- by 56532 Members - Latest Member: Aevv01

December 15, 2019, 08:58:18 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsSpin Spin
Pages: [1]
Print
Author Topic: Spin Spin  (Read 1638 times)
chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« on: November 25, 2014, 08:27:33 PM »



Overview
Spin Spin is a world rotation puzzle platformer whereby, once a spin has been performed, the hero must land on the ground before they can spin again. Spins can be performed while standing, or alternately the hero can drop off a ledge then spin in mid-air.

History
Two gameplay prototypes published in late 2012 as episodes 1 & 2 (www.spinsp.in) have featured in IndieGames.com's best platformers of 2012 and PC Gamer's 100 best free online games. The project has been in limbo for the last 2 years...

Scope
This project aims to expand on the previous work in many ways, including the following:
  • Port from ActionScript to MonoGame (done)
  • Fully featured inline level editor (done)
  • Upgraded artwork (in progress)
  • Additional mechanics including 180 degree spins, size changes, gravity changes, wind and more (in progress)
  • Expanded story and cut scenes
  • Windows, Linux and Mac platforms
  • Lots of levels

Playable demo (including level editor)
chrishughesgames.com/ts/CJH.SpinGame.Latest.zip

Community / contact
You can find me on Twitter (twitter.com/chrishughes2d) and Facebook (facebook.com/spingame).

Thanks in advance for any and all feedback! Toast Left

FYI, I'm in Australia so apologies in advance if I take a while to respond to comments in this thread.

Cheers!
« Last Edit: January 23, 2015, 04:13:07 AM by chrishughes2d » Logged

chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #1 on: December 03, 2014, 03:07:55 AM »

Dev Update #1

Graphical Style
A lot of effort over the past week has gone into evolving the presentation of the game, including invaluable feedback from TIGSource's own art workshop. I'll continue to tinker in this space, but I'm happy with where things have gotten to so far. What do you think?



Rendering Performance

I've also spent time optimizing the game's performance. The timing of Visual Studio Community Edition was awesome, as it gave me access to profiling tools I wouldn't otherwise have had. Spin Spin has a 45x45 tile grid, or 2000+ tiles rendered every frame. Each tile has multiple layers, which is necessary to achieve the borders around the tiles otherwise there would be 128 possible sprites to cover all the combinations of neighboring tiles. So there can be 10K+ (rotated) sprite draws for the tile grid per frame, and this was causing the frame rate to drop below my target of 60 fps. I've re-factored this so the tile grid is pre-rendered the first time the room is entered, and the problem is resolved.

Playable Build and Level Editor

Which brings me to some great news. As promised, here is a build of Spin Spin:
http://chrishughesgames.com/ts/CJH.SpinGame.20141203.zip

Installation notes:
  • This build is Windows only. I'll ultimately expand to additional platforms, but not yet. Outraged
  • .NET Framework 4 must be installed. Otherwise it can be copy-deployed.

Play controls:
  • Move: A/D
  • Rotate: Left/Right arrows

An inline editor is also included. Editor controls:
  • Open tile editor: F1
  • Open background editor: F2
  • Open check point editor: F3
  • Open obstacle editor: F4
  • Close editor: Escape
  • Move selection: Mouse
  • Toggle active object: Tab/Shift-Tab
  • Insert object: Left mouse click (drag to bulk select)
  • Delete object: Right mouse click (drag to bulk select)
  • Rotate object: Q
  • Reset room: R
  • Change room (when paused): A/D/W/S
  • Toggle pause (the game can be played while the editor is open!): P

A few additional notes:
  • You can place as many start points (dark check point) as you want, but only one will be used. You need to have at least one start point, otherwise the game won't start and you might have to re-install the content folder.
  • Spikes must be adjacent to a solid tile, and there must be at least 2 spikes in a row. Adjacent tiles and spikes are used to determine the orientation of spike blocks, so you don't have to deal with multiple spike tiles. If you get it wrong, you'll see a red cross on the relevant tile and it will be ignored.
  • Aside from the standard yellow tile, the editor also provides a red tile. Check out what happens when you spin off a red tile. I plan for there to be many such spin variations, which I hope will enhance the strategic puzzle aspects of the game.
Please let me know if you have any feedback on either the game or the editor.

Enjoy!
« Last Edit: December 11, 2014, 02:17:13 AM by chrishughes2d » Logged

chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #2 on: December 03, 2014, 08:15:10 PM »

Dev Update #2

Anti-Gravity Blocks

Spin Spin episode 2 introduced an object that's not in the sample level published yesterday (but is available in the editor if you want to play with it). Introducing... the block!



At first, it seems pretty inconspicuous. Gravity exerts a downward force on it, and it falls. When the room is rotated, the change in gravity is reflected in its trajectory as you would expect. Don't be fooled. This block is evil. Soon you will come across variations of this block:



The triangle in the middle indicates the effective gravity on the block! When pointing down, it behaves as you would expect. When pointing up, it falls in the opposite direction to gravity. And when it points sideways... If you want to see it in practice, check it out at www.spinsp.in/episode-2.htm or have a play with the editor and try it out for yourself.

I've also added a bunch of variations of this block with spikes on some of the sides. Here are all the combinations:



Terrain Types

In the picture above, you'll notice there are yellow and red versions of each block. There will be several terrain types in the finished game, and each will give the player a different spin. This is indicated by the color of the hero (white when you cannot spin).



Yellow terrain is the standard terrain and gives you a 90 degree spin. Red terrain gives you a 180 degree spin ala VVVVVV, although unlike VVVVV the entire screen rotates. FWIW, I think VVVVVV's approach of flipping the player is much more intuitive, but I've gone for rotating the screen to provide internal consistency with other powers in this game.

There will be a bunch of other terrain types that will affect character sizes, the extent of gravity, etc. but these will be revealed over time and are not available as of today.

Force blocks

Finally, the big white arrows in the picture above exert a force on the player when standing within their bounds. I've used these in previous games, and I think they provide some really memorable moments if used well. Check out this trailer of an Xbox game I published ~5 years ago (

). All the coolest moments in the trailer leverage these blocks. The art is placeholder for now (it should really be some kind of animation), but it is functional.

New build

Last but not least, everything above is now in the editor. You can find the latest editor here:
Today's build: chrishughesgames.com/ts/CJH.SpinGame.20141204.zip
Latest build (always up-to-date): chrishughesgames.com/ts/CJH.SpinGame.Latest.zip

The controls are unchanged, as described in my previous post. At some point I'll incorporate them into a pause or help screen.

I hope someone is finding this interesting. Having not received any comments on this thread and being new to devblogs, I'm not sure whether I'm hitting the mark or if there are better topics I should be covering. Please let me know. If the game just isn't compelling, that's also good feedback - particularly if there are things that would make it more compelling.

Cheers from Oz!
« Last Edit: December 11, 2014, 02:17:32 AM by chrishughes2d » Logged

chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #3 on: December 04, 2014, 02:01:19 PM »

Dev Update #3

Level Editor

I'm a strong believer in maximizing the ease and effectiveness of level design. Not only can the right tools yield huge productivity gains, but they can also affect the quality of the resultant level design and therefore the user experience.

For 2D games, I believe the optimal scenario is to design the levels in-game, allowing the designer to immediately validate their work or even to pause the game and put a platform where the player is about to land and avoid trial-and-error placement of architecture. It also helps with tweaking levels if you find something isn't quite right during a test play-through.

Spin Spin provides a fully functional in-game editor. The game is paused by default when entering edit mode, but you can even un-pause the game and literally add architecture with the mouse while playing with the keys. Here is what the tile editor looks like:



There is a faint yellow tinge to the bordering tiles, which indicates that these tiles will be synced with the contents of neighboring rooms. This is a bit of sugar to help the designer be sure that the passageways in neighboring rooms are always cleanly lined up.

Given the world rotation mechanic, one of the nice things about the editor that most tile editors don't provide is the ability to rotate the perspective. This allows the designer the ability to view the game from the same perspective as the player.



More obvious capabilities include bulk tile add (see the green area in the first screenshot above) and bulk removal, as well as the placement of non-tile objects (checkpoints, moving blocks, etc.). These objects can move during the game, so a reset action is provided to return all objects to their starting positions in the room.

I've spent more time on the editor than many other areas so far. The game will live or die based on the quality of the level design, and with aspirations to provide a lot of content I'll be spending a lot of time building levels and don't want to drive myself insane.

For anyone who has used the editor, I'd love to hear your feedback on how to make it even better.

Cheers!
« Last Edit: December 11, 2014, 02:17:46 AM by chrishughes2d » Logged

new_name
Guest
« Reply #4 on: December 04, 2014, 10:39:43 PM »

Can't wait to see this finished (:
Logged
jgrams
Level 3
***



View Profile
« Reply #5 on: December 05, 2014, 11:00:05 AM »

Just got around to trying this. Interesting.

In one of your posts you compared it to VVVVVV, which threw me off initially, because in VVVVVV you can only flip when you're standing on the ground. So I went one direction, stopped when I got to a room that there was no way past, went back the other direction, found an impossible spot there, and only then finally realized that you could change directions in mid-air.

Once I got past that I had fun. I haven't tried the editor yet.

The things which jump out at me are:

1) The rotation keys are backwards. I really really really want to turn the character, not the world. I got all the way around the loop and I was still dying almost every new room because I turned the wrong way. After the second time around I had gotten to the point where I was remembering most of the time. But still, put me in a situation where I have to react quickly and I'll react the wrong way a good fraction of the time.

(note that if you had configurable keys I could just switch them, but I still think that the other way should be the default)

2) The turning is slooooow. One of the things which made VVVVVV work so well was that the switching was instant. And maybe there's nothing you can do about that. But I wonder if he could turn and fall instantly (or nearly instantly) and the screen could just catch up? Or something? I feel like it kind of ruins it when you're falling through this narrow twisty spiked passageway and it's all tense, and then you switch directions and the whole thing pauses.

3) The air control is too strong. It seems like you can fall at a 45 degree angle? I think it should be 30 or less. There were a couple of times that I couldn't see how to do a puzzle because I didn't think I could fall that far sideways.
Logged
chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #6 on: December 05, 2014, 02:21:00 PM »

Can't wait to see this finished (:
Cheers mate. Thanks for the words of encouragement both here and on Newgrounds.

In one of your posts you compared it to VVVVVV, which threw me off initially, because in VVVVVV you can only flip when you're standing on the ground. So I went one direction, stopped when I got to a room that there was no way past, went back the other direction, found an impossible spot there, and only then finally realized that you could change directions in mid-air.
The original Flash episodes prompted the player in the first few screens on the key controls including the drop spin. I haven't done this here yet, mainly because I haven't finalized the story and I want to present this information to the player in context with the overall experience.

1) The rotation keys are backwards. I really really really want to turn the character, not the world. I got all the way around the loop and I was still dying almost every new room because I turned the wrong way. After the second time around I had gotten to the point where I was remembering most of the time. But still, put me in a situation where I have to react quickly and I'll react the wrong way a good fraction of the time.
The keys will be configurable, but I agree that it begs thinking about what will be the default controls. It's similar to Y-inverstion in a FPS, in that there is no right answer. If you think about physically spinning the room, depending whether you exert a force on the top or bottom of the room the direction will be different. Given that (in most cases) the keyboard is below the monitor, there could be an argument that the force is exerted on the bottom of the room and therefore your position holds. But for some people (including me)  the idea of pressing in the direction you want the character to fall is more intuitive. I have a funny feeling this debate won't finish here. Smiley

2) The turning is slooooow. One of the things which made VVVVVV work so well was that the switching was instant. And maybe there's nothing you can do about that. But I wonder if he could turn and fall instantly (or nearly instantly) and the screen could just catch up? Or something? I feel like it kind of ruins it when you're falling through this narrow twisty spiked passageway and it's all tense, and then you switch directions and the whole thing pauses.
Good point. I've been doing some thinking in this area, with respect to 180 spins (which are in the editor but not the level you've played), and whether the room should spin twice as fast in order for the transition to take the same time as a 90 spin and provide a more predictable (short!) pause in gameplay. I'm not sure whether moving while the room is spinning would be disorienting, but I will certainly experiment with speeding up the rotation so the pause becomes more negligible.

3) The air control is too strong. It seems like you can fall at a 45 degree angle? I think it should be 30 or less. There were a couple of times that I couldn't see how to do a puzzle because I didn't think I could fall that far sideways.
This is the one area I'm not comfortable to change, for a few reasons. The first is symmetry. In a typical platformer, if you can jump from one platform to another (with the same altitude), you can reasonably expect to be able to jump back. In VVVVVV, if you can flip from one platform to another, you can flip back. In Spin Spin where 90% of moves involve 90 spins, falling at a 45 degree angle provides ease of backward and forward navigation and creates the symmetry that exists in other platformers. Secondly, this game is as much about puzzles as platforming, especially with new mechanics such as fresh terrain types and spin types, etc. Condensing a thoughtful puzzle into a single room requires the flexibility of movement that 45 degree movement provides.

I'm curious. Is the 45 degree movement something that seemed unnatural upfront but you got used to, or did it bother you throughout your play time?

Many thanks for the thoughtful feedback. It really helps. Cheers!
Logged

jgrams
Level 3
***



View Profile
« Reply #7 on: December 08, 2014, 05:32:18 AM »

The rotation keys are backwards.
It's similar to Y-inversion in a FPS, in that there is no right answer.

Yeah, I kind of buy that.

If you think about physically spinning the room, depending whether you exert a force on the top or bottom of the room the direction will be different.

Yes, but if you rotate anything else it's always the top that you look at. When you're driving a car, you move the top of the wheel in the direction you want to turn, even when you're backing up. That's part of why backing a trailer is so tricky at first: you have to turn backwards to control the direction the trailer goes. For any kind of screw or cap with a normal thread, the rule is "righty-tighty lefty-loosey", which is the direction that the side farther away from you moves.

But my point was that I don't want to control the room, I want to control my character. If you think about it from that perspective it's confusing because the right arrow rotates your character to the left (it's just that the screen is locked to your character so his head is always up).

But for some people (including me) the idea of pressing in the direction you want the character to fall is more intuitive.

Now this makes all kinds of sense. That's way easier than thinking about which way to rotate. But it wasn't obvious to me. So...what if you keep the current controls, but totally avoid talking about rotation, and just say "press the left-arrow to fall left, and the right-arrow to fall right"?

Is the 45 degree movement something that seemed unnatural upfront but you got used to, or did it bother you throughout your play time?

I got used to it, though it still feels closer to gliding than falling. If the character design suggested that he could glide a little it probably wouldn't have bothered me...big ears or small wings or something? Dunno. It's not a huge deal.

That's interesting about the need for symmetry. That did occur to me, but I assumed it would be the opposite: that you could have more interesting puzzles if you couldn't fall back to where you came from.

Anyway. I'll have to try the editor. Looking forward to seeing where you take this...
Logged
chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #8 on: December 09, 2014, 03:17:18 AM »

But for some people (including me) the idea of pressing in the direction you want the character to fall is more intuitive.
Now this makes all kinds of sense. That's way easier than thinking about which way to rotate. But it wasn't obvious to me. So...what if you keep the current controls, but totally avoid talking about rotation, and just say "press the left-arrow to fall left, and the right-arrow to fall right"?
Perfect. I'll still make the controls configurable, but you're right that articulating the action as fall left/right is way clearer.

That's interesting about the need for symmetry. That did occur to me, but I assumed it would be the opposite: that you could have more interesting puzzles if you couldn't fall back to where you came from.
It's probably both. 45 degrees opens up the number of possibilities in terms of breadth of movement, and there is a class of problem that could leverage this. But there's another class of problem that could leverage asymmetry. I'm pleased to say that I think I have a way to do both.

I'm currently working on new terrain types that grow or shrink the character size when you spin off them. The character size also changes the effect of "wind" - the large character can fall through wind while the small character is quickly repelled.

Our exchange also got me thinking about changing the character speed based on its size. The small character would zip about, while the large one would be very slow but hard to shift (moving through wind, not pushed by moving blocks, etc.). Assuming I keep the effect of gravity the same, you would basically have 3 scenarios:
* Normal size - 45 degrees - symmetry
* Large size - ~30 degrees - asymmetry
* Small size - ~60 degrees - you could actually float past a wall then spin and land on the other side, ala:



This scenario is admittedly weird, but it is a puzzle game after all and I'm happy to promote some lateral thinking. What do you think?

I'll post a build soon with these changes, so you can have a play and see how it feels.

Thanks for the feedback. Cheers!
Logged

chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #9 on: December 10, 2014, 08:02:12 PM »

Dev Update #4

Character Scaling

Two terrain types have been added to the latest build.



The blue terrain shrinks the character and makes them lighter. They'll fall more slowly, so you can reach spots otherwise not possible including some that are unthinkable (check out the image in my last post). When small, wind pushes you around more, which can work both for and against you.

The green terrain grows the character and makes them heavier. They'll move more slowly - you won't fall 45 degrees so your reach is more limited. But wind doesn't affect you, and moving blocks will not push you around.

New Build

Today's build: chrishughesgames.com/ts/CJH.SpinGame.20141211.zip
Latest build (always up-to-date): chrishughesgames.com/ts/CJH.SpinGame.Latest.zip

Head right when the game starts to access a room that hosts the new terrains. Or use the editor to build more interesting scenarios that leverage these new capabilities. The artwork for the wind has also been updated and is no longer static.

Cheers!
« Last Edit: December 11, 2014, 02:18:18 AM by chrishughes2d » Logged

chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #10 on: December 11, 2014, 02:43:53 AM »

Dev Update #5

New Game Title: <insert here>

I plan to start fleshing out some production aspects of Spin Spin including title screen, logo, etc. and marketing aspects such as domain name, web site, branded screenshots, etc. Unfortunately, there is an established iOS game called Spin Spin that predates my original Flash episodes. I believe that game predates my work and I don't want to invest a lot of effort into a brand that I'll have to dump later on.

So, I'm looking for a new title for Spin Spin.

Objective of the new title should include preserving the association with the existing Spin Spin episodes which earned some nice accolades not the least of which was a supportive tweet from Terry Cavanagh (the inspiration of VVVVVV on Spin Spin is obvious), and capturing the key mechanics. World rotation is the central mechanic, but as the new capabilities are being developed I'm seeing a lot of opportunity around the size changing mechanic and I see this becoming pretty core too.

My thoughts so far include the following:
  • Spin Revolution (extra points for double rotation reference! Wink)
  • Spin Wonderland (evokes the size changes and general quirkiness of Alice In Wonderland)
  • Spin Quest (depicts a grand adventure)

Ideas?

Once I have a new title, this devlog will also be renamed to reflect the change.

Cheers!
Logged

chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #11 on: January 23, 2015, 04:12:27 AM »

Dev Update #6

Happy New Year! Please excuse my absence for the last month, as I've just returned from a family holiday during which I did the responsible father thing and didn't bring my laptop. Wink And now back to work...

Game Title

In my last update, I mentioned that I needed to change the title of this game. My current thinking is Spin Squared, where squared is represented in the logo with the number 2 which suggests a sequel, and the name also conveys that this is a massively expanded offering from the previous Spin Spin episodic content, not an incremental update. I'm still open to feedback on this, but I wanted to let you know where it is at currently.

Lava

Some levels will contain lava. Unlike other objects, the lava doesn't rotate with the room and instead always sits at the bottom of the screen. When navigating rooms that have lava, players must be careful not to rotate the room such that they end up on the bottom of the screen. I think designing levels that accommodate this lava mechanic will be very interesting, and very different to designing levels that don't have this constraint. Anywhere, here is what it looks like.



The lava slowly drifts sideways as all good lava should, and the texture is seamless so it looks nice and clean.

Also note the grey terrain. This is what terrain looks like when it doesn't possess the power necessary for the player to perform another spin. There will be some levels almost entirely composed of this terrain, where the primary means of spinning will be to collect spin powers while falling through caverns. I haven't covered collectible spin powers in this devlog, but they appear in the existing episodes. Note that this terrain doesn't take away a spin that has previously been acquired, so if a player lands on a colored surface and collects their spin they can drop onto grey terrain then use their spin. There will no doubt be puzzles that leverage this.

Cheers!
Logged

chrishughes2d
Level 0
**

@chrishughes2d


View Profile WWW
« Reply #12 on: March 04, 2015, 06:37:24 PM »

Dev Update #7

I'm currently working on a trailer for a Greenlight campaign and am working on a website and game logo, etc. to support the public announcement of this game.

Despite positive response to episodes 1 and 2 when they were launched back in 2012, much of the feedback was along the lines of gravity bending games having been done to death and the level design of my work being its biggest strength. That's not easily conveyed in a passive medium such as a trailer, so I also want to invest in making this trailer stand out in other ways. One of those is the inclusion of cut scenes both to tell a story and to break up the monotony of watching gameplay footage.

Cut Scenes

One of the early technical design decisions I made in this game was to build every object using a skeletal animation engine I built a while back. I wasn't sure where the presentation was going early on, and this seemed to be a way of ensuring flexibility. I'm not sure that was a great decision in some places and I've had to do some work to ensure high performance as a result, but it has helped in the making of cut scenes.

Every cut scene in this game is basically a normal game object with a few additional attributes that tell the game after some time to navigate to another room and look for a spawn point to place the hero. Depending on complexity of the scene, the skeleton will have many bones, poses and animations, but so far so good.

Keeping with the square look of the game, here are a few sample screenshots from the introduction cut scene:





For those who've played episode 1, I thought long and hard about whether to replace its story and had started working on cut scenes for a new story. However, I've decided to return to the original story but to flesh it out in (hopefully) an amusing way.

Game Logo

And here is a preview of the game logo, emblazoned over one of the cut scene environments:



Not sure whether it's good form for a logo not to actually include the name of the game!, but I like that it reinforces the square-based presentation and the sequel nature of this project.

I'm currently working on some mid-game cut scenes that will also feature in the trailer, and from there will be building out some sample rooms to support the trailer. I hope by the end of this month to have the website, trailer and Greenlight submission ready to go, but will likely hold off for a week or 2 after that for the actual announcement and submission for fear of being construed as an April Fools joke! Grin

Cheers!
Logged

Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic