Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411196 Posts in 69314 Topics- by 58380 Members - Latest Member: feakk

March 19, 2024, 02:16:29 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsApple and Worm: Patching Holes In Spacetime
Pages: [1] 2 3 ... 33
Print
Author Topic: Apple and Worm: Patching Holes In Spacetime  (Read 68552 times)
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« on: August 28, 2013, 04:36:10 PM »

In Apple and Worm: Patching holes on spacetime you play as Apple, with its worm friend living inside it. Together they must catch up with the interdimensional beings that are accidentally creating these holes on spacetime.

The gameplay is a puzzle platformer with a unique main mechanics: space has curved regions, and the main player's gravity magically follows the character. Hard to explain but easy to understand once you see it. As you traverse the level it's quite possible to return to the start position in a different orientation, walking on the ceiling. It's like Mario meets Mobius strip (or klein bottle for a 3d example). Maybe I should call this Super Mobius Bros.

I have a lot of things planned for this game. At least 5 worlds with different looks and mechanics. Bonus content, unlocked by finding hidden things in the levels. The demo hints at this, as I put a couple of Isaac Newtons for you to find (and jump on his head, obviously, because apple). The content to be unlocked will probably be interactive lessons on physics and math but I have yet to do any of these.

It's worth mentioning that I have rebooted the development of this game. I changed drastically how these mechanics are implemented, so the following demo and images are outdated. They still hold the main idea, and the visuals are more or less the same. (must remember to change these once I got new stuff)

You can play the demo right now! I would love to hear your thoughts on it.
Play Apple and Worm: Patching Holes on Spacetime alpha demo

If you are stuck on the demo, I uploaded a walkthrough on youtube





Besides the gamejolt page I linked above (for the playable demo) the project also has an IndieDB page:


and a Steam Concept page (way too soon for greenlight, but I made a concept page anyway)

GIFS GIFS GIFS









infinite loop


Some strangeness about distances in curved spaces


Not everything is influenced by the curves. This box, for instance, keeps its gravity where it was originally.


Newton having an idea (without the celestial light yet):
(this gif was lost at the big Minus.com fall. I'll remake it eventually)


Interdimensional beings


Just some roaches hanging out.


Original post. Unfortunately the original gifs are probably lost on Minus.com Sad:
Quote
All rightie then, I guess I can start one of these for my project :D

The game is a 2d platformer. You control a charismatic and always smiling apple through levels with strange curved regions. Navigation in the levels may cause the player to revisit locations each time in a different orientation, that gives the game its puzzle nature. There is no real story and context so far, apart from its cartoony visuals and the main character being an apple. But it will be something as silly as possible (I'm trying as hard as I can to introduce a worm buddy that lives inside the apple and its head pops out occasionally)

The whole idea of using an apple in a curved space is supposed to be a reference to the myth of Isaac Newton getting hit in the head by an apple. I want the game to indirectly and playfully address physics and mathematics principles. The game itself happens in a space with non trivial topology, but it's a bit more than that. Every level there's a 'thinker', and if you find him and fall on his head you unlock a... thingie. It could be one of Newton's laws or some mathematical concept, it's a little "document" inside the game that explains a specific concept, illustrated and explained by mr. unnamed apple, with cute animations and such. That's not the goal of the level but it plays like a bonus stage. I'm still considering whether there should be a requirement of X awakened thinkers to move on to the next world or something like that.

It's not an educational game. I just like this sort of thing and think it would be fun.

Technical details: I'm using Unity. Unity for 2d games is troublesome but I couldn't figure out how to do some of the things I wanted with game maker. I'll get into more details in further posts.

This is a video of my latest progress. It shows a test level design:




Here are a couple of gifs of the character animated, because it's hard to see in the low res video:
LOST GIF #1

LOST GIF #2
« Last Edit: January 30, 2018, 05:21:16 PM by diegzumillo » Logged

billyboob
Level 0
***


Kitty


View Profile
« Reply #1 on: August 29, 2013, 06:21:42 AM »

This looks sick. Unnamed apple dude(tte) has awesome jump pose. Game idea sounds rad. Even though it's not an educational game I can't wait to find out stuff I don't know.
Logged
Skydsgaard
Level 1
*



View Profile
« Reply #2 on: August 29, 2013, 01:02:48 PM »

ahah love the mc, so funny when it fall into the void :D:D
Logged

hitster
Level 0
*



View Profile
« Reply #3 on: August 29, 2013, 01:28:55 PM »

Your apple makes me happy. :-)
Logged
SirNiko
Level 10
*****



View Profile
« Reply #4 on: August 29, 2013, 02:53:54 PM »

That's one gorgeous animated apple.

I feel like the environments are going to be a big part of this game. The levels seem too big to be puzzling, so you're going to want to sell the player on gorgeous landscapes that offer visual gags or surprises when you retread areas from a different orientation.

I really like the second gif with the apple climbing the weirdly angled staircase. Some bizarre Escher-esque backgrounds would really sell that as a demo of your game.
Logged
Thecoolestnerdguy
Level 2
**

while(!succeed) try();


View Profile
« Reply #5 on: August 29, 2013, 03:19:29 PM »

Eu vi o nome de algumas variáveis em portugês no segundo gif ou foi impressão minha?
Logged

Sad minecraft didnt copyright squares
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #6 on: August 29, 2013, 03:53:36 PM »

Thanks for the compliments :D I owe to the people of this forum for helping me in creating that sprite, with criticism, suggestions and support!

I feel like the environments are going to be a big part of this game. The levels seem too big to be puzzling, so you're going to want to sell the player on gorgeous landscapes that offer visual gags or surprises when you retread areas from a different orientation.
I like your thinking. Level design is tricky for me and there isn't much settled right now. I am indeed going for puzzle platformer but, yeah, big levels like that will probably feed of the player's nausea and confusion, and it's a good opportunity to play with scenario under different orientations and not much room for puzzles. But mostly I want the game to be puzzling, so there will have to be both sizes of levels. And I like that.

Eu vi o nome de algumas variáveis em portugês no segundo gif ou foi impressão minha?
Viu sim! Smiley brasileiro também?
Logged

Thecoolestnerdguy
Level 2
**

while(!succeed) try();


View Profile
« Reply #7 on: August 29, 2013, 04:08:31 PM »

Eu vi o nome de algumas variáveis em portugês no segundo gif ou foi impressão minha?
Viu sim! Smiley brasileiro também?

Com muito orgulho e com muito amor!
Logged

Sad minecraft didnt copyright squares
ericmbernier
Level 3
***


Sometimes I make games.


View Profile WWW
« Reply #8 on: August 29, 2013, 06:29:18 PM »

That is one very happy apple. Also, it looks great!

I agree that the environments are going to be very important. The angled jumps were fun to watch, and if you add some beautiful visuals that clip can really lure people in. Looking forward to seeing the progress.
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #9 on: August 29, 2013, 07:23:59 PM »

Okey dokey, following my original intention of making this thread into an actual development log, here's an account of the technical challenges I'm facing. GIGANTIC POST AHEAD.

As I said before, this is being made in Unity. I'm a confess unity fanboy, but I admit it's not the best tool for 2d games right now. In very recent news, the Unity team announced the next version will have native tools for 2d development! yay! But I'm not waiting for that, so I'm using RagePixel, a free tool to create 2d sprites inside unity. I'm only using it to take my sprites into the game, but it does more than that.

I studied the possibility of using game maker. I'm not too familiar with it, but it does look flexible, easy and focused in 2d, which is great. But I had things planned that I didn't know if it could be done in gm, and a quick scout ahead didn't convince me enough to risk developing there.

Right from the moment I had the idea I could immediately identify two challenges: making a decent 2d controller and that whole rotation thing. Developing the controller led me to one of the most notorious facepalm moments in my hobbyist game developer life.

Unity comes with a character controller. It's quite decent for 1st/3rd person games, but the capsule collider (it has a round top and bottom) isn't ideal for 2d platformers, the player can slide edges etc. And it doesn't rotate, so that's a deal breaker for me. Thus I decided to make use of the physics engine and make a character controller that is in fact a rigidbody highly constrained to achieve that 2d game feel. That never works, obviously! physics engines are unreliable. But I was going to try anyway.

Finally, after many days of implementing, fixing bugs and tweaking, I had something that I was happy with. It didn't seem to have any bugs, it could be rotated at will. Fantastic! Then I decided to make a test level. Made the whole thing in 3ds max and imported into unity. And the god damn controller goes bananas with the imported mesh. It gets stuck in every corner, goes through solid objects. Just a big disappointing mess. My only thought is that the physics engine is more effective with those native colliders and it doesn't like mesh colliders.

So I took a deep breath and accepted the facts; I was going to have to scrap the whole thing and make my own character controller from the absolute scratch. Raycasting my way into a usable controller. SO I DID. That took a few days of cracking my head, several equations and diagrams into my white board, implementation, bug solving, tweaking... It is done. Not fantastic, but it works. Then I started taking this system into my project. At a certain point I wanted to know how I did something inside my previous controller, so I just inserted the previous apple into the scene and realized it was slightly misaligned with the test level geometry... So I adjusted it. It worked. The previous controller worked fantastically well   Screamy

And that's the controller crisis' first hand account. Now comes the other challenge, which hopefully there won't be any crisis related to it, the rotation or 'curved space'.

What you see in those gifs and video is a first attempt, and it doesn't work nearly well enough. It only looks nice because I know exactly where to step to make it look like it works. In theory it sounds simple: you have a region in space, define on it a center, calculate on each frame the angle displacement from that center, rotate the player that angle. The problem is entering and leaving this volume, because the translation is discrete (obviously, this is a game) when the volume detects the player he's already inside the volume, so there is a tiny displacement unaccounted for. When the player leaves we have an analogous problem. Taking these extra displacements into consideration is difficult, and not doing it creates problems. That first corner in the video, for example, should rotate the player 90º but it never does.

The rotation problem is still unsolved and is my current task. I might work on some art if I get sick of that though. Whatever gets done first I post here Smiley
Logged

Thecoolestnerdguy
Level 2
**

while(!succeed) try();


View Profile
« Reply #10 on: August 30, 2013, 05:01:45 AM »

GIGANTIC post

Hey, are you using Javascript in Unity? Because, if that's the case, why don't you give HTML5 a try?  Well, hello there!
You could use Box2d Web (whose API is awfully verbose) to solve that collision problems.
Of course, that would mean having to re-write EVERYTHING from scratch, but it would almost certainly solve that issues...
Logged

Sad minecraft didnt copyright squares
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #11 on: August 31, 2013, 08:05:43 AM »

I'll pass on switching engines for now Wink
Logged

LeafyGames
Level 0
**



View Profile WWW
« Reply #12 on: August 31, 2013, 08:13:33 AM »

That is the happiest apple I've seen in quite a while, and you can believe me when I say, I've seen my fair share of happy apples. Wink
Logged
siskavard
Guest
« Reply #13 on: August 31, 2013, 11:48:53 AM »

I love dis!
Logged
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #14 on: September 01, 2013, 04:29:00 AM »

Phew! I think the rotation issue is solved. Running through loops is still a little jumpy but the total rotation is always correct now, you can run in and out both sides of any curved region and it doesn't accumulate error. ok, it's very jumpy! I'll sort that out eventually. I have a webplayer on my dropbox, there's nothing worth seeing yet but if anyone wants to take a peek, here's the link: webplayer
Logged

Dawmino
Level 0
**



View Profile
« Reply #15 on: September 01, 2013, 06:09:59 AM »

I gotta figure out how to make a rotating stage like that. It blows my mind. Or are you just rotating the character and the camera? Aaaugh tell me your secrets!
Logged
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #16 on: September 01, 2013, 06:12:50 AM »

NEVAH  Cheesy

I'm rotating the character and camera, but any way would be fine I guess Smiley Although... rotating the whole level would have spared me from creating a new controller.  Huh?
Logged

Thecoolestnerdguy
Level 2
**

while(!succeed) try();


View Profile
« Reply #17 on: September 03, 2013, 04:57:51 AM »

I'll pass on switching engines for now Wink

Yeah, sure!  Tongue
Logged

Sad minecraft didnt copyright squares
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #18 on: September 19, 2013, 06:46:03 PM »

With real life problems to deal with I'm just returning to this project, and very briefly too. My next milestone is setting the visual. Now, usually I would leave that for later, but I'm foreseeing this will be problematic.

This is very strange for me. I always worked with 3d and, although it's time consuming to make the assets, the final workflow is actually much simpler in 3d games. With this project I'm finding myself struggling to wrap my head around how to set resolution, screen size, size of character in relation to screen. I never had to worry about these things before. I mean, of course I had, but the solution was trivial, there's no sprite deformation or consistency to worry about.

Since I have to sort this out as soon as possible, I might as well work on how the first world will look like as well. Here's a not very interesting mockup, in terms of content (two identical platforms because I was lazy to make more and a background) But I think I like how it's looking! I should mention that I've had great help from the community, specially from Pen, who made a beautiful quick draft.



We were talking in another topic about how some games get away with 'inconsistent' pixel art. Those sun flares in the background came from that talk Tongue
Logged

Thecoolestnerdguy
Level 2
**

while(!succeed) try();


View Profile
« Reply #19 on: September 20, 2013, 04:47:16 AM »

Wow! This looks absolutely lovely!
My only nitpick is that the sun reads as foreground for me.
Logged

Sad minecraft didnt copyright squares
Pages: [1] 2 3 ... 33
Print
Jump to:  

Theme orange-lt created by panic