• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Indie Game Development Discussion Thread | Of Being Professionally Poor

Status
Not open for further replies.

Makai

Member
Fez used a silhouette if the player got warped behind the map.

fez%20glitch%20owl600_inline.jpg
 

upandaway

Member
I feel a bit silly for posting about this when ya'll are being amazingest all day, but here's what I have so far. Trying to come close to how Zelda 2 plays although it's janky as hell (probably because I still haven't used delta anywhere and all the calculations are frame dependent). I think it's okay for my first thing (engine is from scratch) but I wanna rewrite the whole thing after every line I add!
 

Water

Member
Hey I'm trying to find a tutorial on how to make a beat em up game (like Castle Crashers/Final Fight) in unity. Could someone push me into the right direction? Thanks!
This Tigsource thread has a bunch of discussion on reasonable ways to build beat'em ups in Unity.

The specific kind of beat'em up you are going for (2.5D) has potential to get slightly complicated. There are are several main approaches you could take.

One is to do the actual game mechanics in 3D space. This might be the easiest way. With Unity's ready-made 3D colliders and character controllers, you have to write very little code yourself before you have a character walking around and hitting other characters with moves. With that approach you can still optionally make it look "2D" by using an orthographic camera and drawing the characters with sprites that a simple script orients towards the camera.

Another option is to use 2D sprites with no "real 3D" in sight. In this approach you'd probably have to tweak the character movement and add depth checks to the 2D collision code to create the "2.5D" movement. If you use totally flat, straight ground, this is not hard. You'll have to understand a tiny bit of math though.
 
That is something pretty specific which I doubt you are going to find a tutorial for. You need to do it step by step. First getting something walking, then give it attacks. And when you are stuck somewhere you can search for how to implement 2D movement or something.

Instead of searching how to do a genre, search how to do systems when you get stuck at them.

Lol can't believe I didn't think of that xD Thanks a lot!

This Tigsource thread has a bunch of discussion on reasonable ways to build beat'em ups in Unity.

The specific kind of beat'em up you are going for (2.5D) has potential to get slightly complicated. There are are several main approaches you could take.

One is to do the actual game mechanics in 3D space. This might be the easiest way. With Unity's ready-made 3D colliders and character controllers, you have to write very little code yourself before you have a character walking around and hitting other characters with moves. With that approach you can still optionally make it look "2D" by using an orthographic camera and drawing the characters with sprites that a simple script orients towards the camera.

Another option is to use 2D sprites with no "real 3D" in sight. In this approach you'd probably have to tweak the character movement and add depth checks to the 2D collision code to create the "2.5D" movement. If you use totally flat, straight ground, this is not hard. You'll have to understand a tiny bit of math though.

Awesome! I really like the 3D space approach you suggested. Also the TIG thread is super helpful. Thanks man!
 

Ito

Member
I feel a bit silly for posting about this when ya'll are being amazingest all day, but here's what I have so far. Trying to come close to how Zelda 2 plays although it's janky as hell (probably because I still haven't used delta anywhere and all the calculations are frame dependent). I think it's okay for my first thing (engine is from scratch) but I wanna rewrite the whole thing after every line I add!

Don't you ever feel ashamed of your own work! Be open to constructive criticism, listen to those who take a minute to look at your work and elaborate about it, and completely ignore the trolls you'll find trying to destroy your self-esteem as a programmer/artist.

I like what I see in your video, the sprite is not really detailed and it's difficult to understand who or what he is, but the overall movement seems pretty smooth.

I would need to see concept art of the character in order to better understand his sprite and come up with some advise on that regard.

Keep up the good work everyone!
 

upandaway

Member
Don't you ever feel ashamed of your own work! Be open to constructive criticism, listen to those who take a minute to look at your work and elaborate about it, and completely ignore the trolls you'll find trying to destroy your self-esteem as a programmer/artist.

I like what I see in your video, the sprite is not really detailed and it's difficult to understand who or what he is, but the overall movement seems pretty smooth.

I would need to see concept art of the character in order to better understand his sprite and come up with some advise on that regard.

Keep up the good work everyone!
The sprite is just some kind of... thing... with eyeballs in places that I clicked randomly when my eyes were closed. It's just something I made so I can check that the animation works, teehee. Kinda looks like a forest spirit maybe if I look at it objectively.

Also thanks!
 

Feep

Banned
What if your poor modeler reads this? :,(
I said almost!

Fuse is basically like making models from an avatar builder. It's great if your people are normal people wearing normal things (NPCs!), but if you're doing a unique character design from the ground up, it's not so hot.

Still, really powerful tool.
 

Makai

Member
Hey Feep, I think my game could benefit from some simple sound commands. How sophisticated is the Kinect API? Ideally, I would just declare a command as a string and let it figure out what speech to respond to. Or would I have to take the hard road that you are presumably taking with Echo ?
 

Feep

Banned
Hey Feep, I think my game could benefit from some simple sound commands. How sophisticated is the Kinect API? Ideally, I would just declare a command as a string and let it figure out what speech to respond to. Or would I have to take the hard road that you are presumably taking with Echo ?
Fun fact: The Kinect API and the Microsoft SAPI are the exact same thing. You needn't be tied to a Kinect, if you don't want to be.

It's exceedingly easy. This page basically does it for you. Bam.
 

charsace

Member
This Tigsource thread has a bunch of discussion on reasonable ways to build beat'em ups in Unity.

The specific kind of beat'em up you are going for (2.5D) has potential to get slightly complicated. There are are several main approaches you could take.

One is to do the actual game mechanics in 3D space. This might be the easiest way. With Unity's ready-made 3D colliders and character controllers, you have to write very little code yourself before you have a character walking around and hitting other characters with moves. With that approach you can still optionally make it look "2D" by using an orthographic camera and drawing the characters with sprites that a simple script orients towards the camera.

Another option is to use 2D sprites with no "real 3D" in sight. In this approach you'd probably have to tweak the character movement and add depth checks to the 2D collision code to create the "2.5D" movement. If you use totally flat, straight ground, this is not hard. You'll have to understand a tiny bit of math though.
Using all 3 axes can have a benefit. Alundra on the psx is a 2d game that did this. So is FF tactics, Breath of Fire PSX games and I think Arc the Lad.
 

fin

Member
OK last piece of artwork. I'm totally addicted to making game covers. :) If I decide to do a PC version, I'm going to try my best to make it look like this in real-time.

1396333001970


Also found this, gonna try and make a few. Mail them away to some local newspapers and zines. Maybe toss them into a few return slots of some local game shops, see what happens. Should be fun.

I downloaded my app from itunes with a promo code. It works and is insane.

Wrote up a press release today, and a sample email to send to websites. Gonna send them out tomorrow.
 

F-Pina

Member
Today is Nerd Monkey's 1st anniversary.
To celebrate 1 year of independent videogame development we have 6 Desura keys for Murder in the Hotel Lisbon to give to all our friendly Indie Devs on Neogaf.

neogaf.jpg


Rules are simple: first come, first serve. Grab them while they are hot!
Redeem here -> http://www.desura.com/gifts

XI7J5-1G3YK-GZTD5-83HB0-P6ABX
YWWHP-X9GNV-EZG36-XA0I8-4CDPL
MMEFU-HQAII-B1EY5-Q5KRO-OUIRO
W4V1C-RMM0G-8J21G-RIM2U-12DQ8
GJD5Q-XSNZI-E21QD-BKNZF-FQO76
TMWJ6-Y3HRT-D88AN-ZWODU-9EFZX

Drop as a line on our site -> http://caseandbot.com/
And no fighting!
 

bumpkin

Member
This sums up my feelings right now: https://www.youtube.com/watch?v=oiIBQRu8fTQ

Why do I make such a proclamation? The damn collision detection in my game is finally working right! My character stops when it walks into a wall. It can jump. It falls back down to the ground after jumping. Bumping its head when it jumps makes it fall to the ground. And if it walks off a ledge, it'll fall to the ground.

I still have more work to do -- ladders and slopes -- but I'm really happy that I've got the basics all working. I owe a huge debt of gratitude to razu and MikeHaggar for their insights and suggestions! :D

Onward and upward!
 

Saganator

Member
Anyone have thoughts on this? 95% off a bunch of online game dev courses.

Would never think about spending the original price, but at $50, there might be some useful information in there. Anyone in here ever taken these courses, or heard about them? It looks kinda gimmicky.

This sums up my feelings right now: https://www.youtube.com/watch?v=oiIBQRu8fTQ

Why do I make such a proclamation? The damn collision detection in my game is finally working right! My character stops when it walks into a wall. It can jump. It falls back down to the ground after jumping. Bumping its head when it jumps makes it fall to the ground. And if it walks off a ledge, it'll fall to the ground.

Onward and upward!

Great feeling, isn't it? Keep chasing that high!
 
This sums up my feelings right now: https://www.youtube.com/watch?v=oiIBQRu8fTQ

Why do I make such a proclamation? The damn collision detection in my game is finally working right! My character stops when it walks into a wall. It can jump. It falls back down to the ground after jumping. Bumping its head when it jumps makes it fall to the ground. And if it walks off a ledge, it'll fall to the ground.

I still have more work to do -- ladders and slopes -- but I'm really happy that I've got the basics all working. I owe a huge debt of gratitude to razu and MikeHaggar for their insights and suggestions! :D

Onward and upward!

congrats, dude!
 
I feel a bit silly for posting about this when ya'll are being amazingest all day, but here's what I have so far. Trying to come close to how Zelda 2 plays although it's janky as hell (probably because I still haven't used delta anywhere and all the calculations are frame dependent). I think it's okay for my first thing (engine is from scratch) but I wanna rewrite the whole thing after every line I add!

That actually seems pretty smooth, and looks like it controls really well. Nice work, I would say.

Did you just paint over the Zelda 2 Link sprite? Looks like your "character" has identical poses. :)

OK last piece of artwork. I'm totally addicted to making game covers. :) If I decide to do a PC version, I'm going to try my best to make it look like this in real-time.

Looking good. We haven't convinced you to change the name though, uh?

This sums up my feelings right now: https://www.youtube.com/watch?v=oiIBQRu8fTQ

Why do I make such a proclamation? The damn collision detection in my game is finally working right! My character stops when it walks into a wall. It can jump. It falls back down to the ground after jumping. Bumping its head when it jumps makes it fall to the ground. And if it walks off a ledge, it'll fall to the ground.

I still have more work to do -- ladders and slopes -- but I'm really happy that I've got the basics all working. I owe a huge debt of gratitude to razu and MikeHaggar for their insights and suggestions! :D

Onward and upward!

Gotta love that feeling. Good work!
 

razu

Member
This sums up my feelings right now: https://www.youtube.com/watch?v=oiIBQRu8fTQ

Why do I make such a proclamation? The damn collision detection in my game is finally working right! My character stops when it walks into a wall. It can jump. It falls back down to the ground after jumping. Bumping its head when it jumps makes it fall to the ground. And if it walks off a ledge, it'll fall to the ground.

I still have more work to do -- ladders and slopes -- but I'm really happy that I've got the basics all working. I owe a huge debt of gratitude to razu and MikeHaggar for their insights and suggestions! :D

Onward and upward!

Happy for you! :D

Keep on truckin' ;D
 

friken

Member
Proof of concept for our alien conversation animation. This is a single idle animation. The plan is to have 3-4 idles to randomly pick through, then a talking one for while voiceover is playing and maybe a you ticked them off animation. Feedback please :)

iYbfj4E3sPbgN.gif


May as well share a pretty mess up too. I was playing with some misc effect ideas and came up with this. Cool effect but will likely be more useful for one of the other character designs.

iOrqSFzVRHCCQ.gif
 

razu

Member
These circles and box... are actually a truck! :D

Chopper... check!
Boat... check!
Truck... check!

Enough to call it a squad... check!! :D


That box in the lagoon floats too! And you can pick it up with the rope-hook and wang it back in the lagoon, and it continues to float!! xD


fea0Gtg.png
 

Five

Banned
@friken
Are you using a particle system or other dynamic for the mist? Because the way the GIF loops is broken for the mist.

But otherwise, holy wow... that's breathtaking!
 

friken

Member
@friken
Are you using a particle system or other dynamic for the mist? Because the way the GIF loops is broken for the mist.

But otherwise, holy wow... that's breathtaking!

It is a particle system, so it won't gif loop, but it looks fine in-game. I'm terrible at making gifs for showing stuff.

Thanks for the feedback :)
 

cbox

Member
Driveby GIF ATTACK!

ib08v0BxOxEZ8J.gif


This one showcases the magnet "disable" feature, then using your ships boost to destroy enemies :)
 

EDarkness

Member
Anyone know how to resize images on a Kickstarter page? The pics are kinda large on the page and I want to shrink them down a bit, but there's no place to do that. Unless we're supposed to play with the HTML to get them the right size....
 

Galdelico

Member
Proof of concept for our alien conversation animation. This is a single idle animation. The plan is to have 3-4 idles to randomly pick through, then a talking one for while voiceover is playing and maybe a you ticked them off animation. Feedback please :)

iYbfj4E3sPbgN.gif
This is so dope, man. Love it.

Do you mind me asking you what kind of process/technique you are using for these animations? It doesn't look like proper hand-drawn, frame-by-frame stuff but it looks totally ace and effective.
 

Foshy

Member
Got my concept in place for my next game and have a pretty clear idea of what to do. Without revealing too much already (I'll do so when I'll have something playable and nice to look at in place :) ), it's a mechanically not too complex 2D game with some similarities to Super Hexagon, TxK and my previous game gyroboost.

However, I'm very torn between whether I should use Game Maker or Unity for it. I used Stencyl for gyroboost, but I'm looking at learning a new engine which would allow me to export to consoles too. I probably won't do so with this game already, but it'd be good for learning the programs.

As I see it, both have their advantages: I toyed around with Game Maker a few years ago already and it's much simpler to use coming off Stencyl, but Unity is probably more future-proof in case I want to do 3D games later on. It also supports more platforms for now (Wii U and Xbox One).

Is there anyone here who went from a "simple" program to Unity 2D and can share some insight to the learning process? Would be nice.
 

Flai

Member
Hey!

I just recently moved from XNA to Unity and I'm in progress of making my first game using it. It's a retro-ish tile-based 2D platformer and while it's not fast-paced like SMB, I really want the controlling to feel responsive.

Anyways, I am trying to decide how I should make physics. Do you think that I should roll my own physics completely or should I for example use built-in colliders, but move the player "manually" (without using RigidBody.AddForce etc)? I have written my own platformer physics before, but I'm just not sure if it's worth it considering that Unity has all these physics features built-in.
 

Water

Member
Hey!

I just recently moved from XNA to Unity and I'm in progress of making my first game using it. It's a retro-ish tile-based 2D platformer and while it's not fast-paced like SMB, I really want the controlling to feel responsive.

Anyways, I am trying to decide how I should make physics. Do you think that I should roll my own physics completely or should I for example use built-in colliders, but move the player "manually" (without using RigidBody.AddForce etc)? I have written my own platformer physics before, but I'm just not sure if it's worth it considering that Unity has all these physics features built-in.
If you are satisfied with how your own existing physics work, go ahead and use them. If you would need to add more capabilities, it's probably best to use the built-in physics and colliders so you get good performance and automatically get at least sane behavior. For traditional responsive controls, obviously you'll additionally need to hand-tune for specific situations and behaviors. You can easily ignore mass by using AddForce with ForceMode.VelocityChange, use raycasting to detect whether the character is grounded or react before certain kinds of collisions happen, etc.
 

JNT

Member
Hey guys, I have a math question that is over my head, but that should be simple for you math jocks out there.

I have a transform class (C++) that consists of a quaternion and a 3d position. It also has a pointer to a parent transform so several transforms can be linked together via a GetWorldTransform() method (recursively applies parent transforms until NULL is encountered). This all works well and good, however, I am looking to implement a feature that preserves the current world transform even after a new parent has been set for a given transform, i.e. giving a transform applied to an object a new parent transform will modify the local transform so that the object remains stationary in the world when switching parent transforms.

This is trivial for the case where I set the parent transform to NULL:

...
Transform worldTransform = this->GetWorldTransform();
this->position = worldTransform.position;
this->rotation = worldTransform.rotation;
this->parent = NULL;
...

However, I can't seem to figure out how I achieve the same principal functionality when I aim to set the parent to a non-NULL value. Conceptually I know that I need to solve for the transform X (both position and rotation):

currentWorldTransform = X * newParentWorldTransform.

...where currentWorldTransform and newParentWorldTransform are known (note that the multiply operator simply denotes applying a transform).
 

upandaway

Member
That actually seems pretty smooth, and looks like it controls really well. Nice work, I would say.

Did you just paint over the Zelda 2 Link sprite? Looks like your "character" has identical poses. :)
Sorta, in my head I did. The real sprites will probably be the same, I guess, dunno. My brain just turns off when I register that I'm drawing something.
 

Water

Member
Conceptually I know that I need to solve for the transform X (both position and rotation):

currentWorldTransform = X * newParentWorldTransform.

...where currentWorldTransform and newParentWorldTransform are known (note that the multiply operator simply denotes applying a transform).
Let's say you convert your position + quaternion to a 4x4 transform matrix for this operation.
You are moving your object (whose to-world transform is Wx) under P (whose to-world transform is Wp) and need a new local transform X to match.
Wx = X * Wp
You just take the inverse of Wp and multiply from the correct side to get rid of Wp:
Wx * Wp^-1 = X * Wp * Wp^-1 = X
 

JNT

Member
Let's say you convert your position + quaternion to a 4x4 transform matrix for this operation.
You are moving your object (whose to-world transform is Wx) under P (whose to-world transform is Wp) and need a new local transform X to match.
Wx = X * Wp
You just take the inverse of Wp and multiply from the correct side to get rid of Wp:
Wx * Wp^-1 = X * Wp * Wp^-1 = X

Okay, think I got it. Going to test it now to see if everything is implemented correctly.

Thanks for the help! Couldn't have don it without you!
 

friken

Member
This is so dope, man. Love it.

Do you mind me asking you what kind of process/technique you are using for these animations? It doesn't look like proper hand-drawn, frame-by-frame stuff but it looks totally ace and effective.

Hi Galdelico. Thanks for the kind words!

Old-school frame by frame spritesheets would be massive when using for the fullscreen alien sizes we are working with, so we are using 2d skeletal animation. There are lots of tools devs use for this like maya, 3dstudio, spriter, anime studio, and some others. We are using unity directly for our solution. Maya is great, but we are kind of newbs with it so it takes us forever to get usable results.

Our general process is 2d speed-paint style art with an extra detail pass or two for the focal point of the scene. As the art is made, each body part we intend to animate is kept on it's own layer. Then in photoshop we cut up each body part. A unity plugin we use called smoothmoves has a good auto atlas generator where you can set the pivot point of each body part and setup bone hierarchy. It also has a keyframe editor with easein-out and a curve editor. Since unity 4.3 though, I think you can do everything that smoothmoves offers without a plugin. We are still on 4.2 currently, but plan on moving to 4.3 shortly. I'll have to post about what I think of the new 2d unity stuff once we do.
 

Bit-Bit

Member
I love the videos and pics of prototypes in this thread. More people should post their earliest prototype comparing to their current build so we can get a better idea of how far they've come.
 

Jocchan

Ὁ μεμβερος -ου
I love the videos and pics of prototypes in this thread. More people should post their earliest prototype comparing to their current build so we can get a better idea of how far they've come.
The earliest screen we have is a static sprite against a Cornflower Blue background. Good times :)

On the Dudebro II website we've actually posted a retrospective detailing (in parts 7-8) how the game evolved over time, to let everyone see it shape up from nothing.

http://www.grimoireassemblyforge.com/dudebro2/site/?p=3141
http://www.grimoireassemblyforge.com/dudebro2/site/?p=3381

Parts 1-6 here: http://www.grimoireassemblyforge.com/dudebro2/site/?page_id=1942

Another update in this series of posts is long overdue I guess.
 

Turfster

Member
Does anyone else use DFGUI with Unity?
Have you ever tried to use the property binding for actual, you know, game data with lists/arrays of classes and not just a simple monobehaviour with a few public strings and ints (like in their example that they pulled from the package, leaving you with nothing at all)?

Sample usecase: a list of units with editable information for each one displayed on another panel.
As far as I can see, the only way to do this is to basically hardcode everything with scripts hooked up to click events that grab the information from the source GO and push it to the relevant controls, making the whole binding system pretty moot.

I'm not begrudging the money I spent on it, because it saved me a lot of time building my own UI system, but their data binding system is very... limited and opaque, and the lack of actual documentation (no, auto-generated inheritance graphs doesn't count) and need to actually dig into the source code to try and figure out how things work is... not very time saving.
 

missile

Member
Okay, think I got it. Going to test it now to see if everything is implemented correctly. ...

The inverse can be computed easily.

The matrix Wp consists of an upper 3x3 rotation matrices R and has the
position vector p on its 4th column. Due to the special structure of this
matrix its inverse, Wp^{-1}, can easily be computed by transposing the
3x3 rotation matrix R, i.e. R^{t}, and by multiplying the position vector p
by -R^{t}. Hence,

(*)
Code:
Wp^{-1} = |R^{t} -R^{t}p|
          | 0          1|

Why? We want to have (simplified)
Code:
|R p| * |S x| = |I 0|
|0 1|   |0 1|   |0 1|,
with I the identity 3x3 matrix, S a 3x3 matrix and x a 3d vector.

Computing the product of the two 4x4 matrices above, we arrive at the
following equations
Code:
R*S + p*0 = I
R*x + p*1 = 0
S*0 + 1*0 = 0
x*0 + 1*1 = 1

Hence, we only need to solve
Code:
R*S = I
R*x + p = 0

Since R is a rotation matrix, we have R^{-1} = R^{t}. And
Code:
R*S = I
=> R^{-1}*R*S = R^{-1}*I
=> I*S = R^{-1}
=> S = R^{t}.

The second equation is simple as well, i.e.
Code:
R*x + p = 0
=> R*x = -p
=> R^{-1}*R*x = -R^{-1}*p
=> I*x = -R^{-1}*p
=> x = -R^{t}*p.

Substituting the results obtained for S and x yields Wp^{-1} as stated in (*).
 

Galdelico

Member
Hi Galdelico. Thanks for the kind words!

Old-school frame by frame spritesheets would be massive when using for the fullscreen alien sizes we are working with, so we are using 2d skeletal animation. There are lots of tools devs use for this like maya, 3dstudio, spriter, anime studio, and some others. We are using unity directly for our solution. Maya is great, but we are kind of newbs with it so it takes us forever to get usable results.

Our general process is 2d speed-paint style art with an extra detail pass or two for the focal point of the scene. As the art is made, each body part we intend to animate is kept on it's own layer. Then in photoshop we cut up each body part. A unity plugin we use called smoothmoves has a good auto atlas generator where you can set the pivot point of each body part and setup bone hierarchy. It also has a keyframe editor with easein-out and a curve editor. Since unity 4.3 though, I think you can do everything that smoothmoves offers without a plugin. We are still on 4.2 currently, but plan on moving to 4.3 shortly. I'll have to post about what I think of the new 2d unity stuff once we do.

Super kind of you, sir. Thanks very much.

That's brilliant and yeah, once again, congratulations on the result. Your game is one of the more solid and distinctive-looking I've seen on this thread so far.
 

friken

Member
I love the videos and pics of prototypes in this thread. More people should post their earliest prototype comparing to their current build so we can get a better idea of how far they've come.

Great idea.

Here is my earliest animation attempt from our colored sketch art:
icnvIpu1M1yNj.gif


Here is the near final idle animation w/ newest art and ingame effects (note gif compression bands the gradients terribly):
iQ2sMtVVR6CWu.gif
 

Bit-Bit

Member
The earliest screen we have is a static sprite against a Cornflower Blue background. Good times :)

On the Dudebro II website we've actually posted a retrospective detailing (in parts 7-8) how the game evolved over time, to let everyone see it shape up from nothing.

http://www.grimoireassemblyforge.com/dudebro2/site/?p=3141
http://www.grimoireassemblyforge.com/dudebro2/site/?p=3381

Parts 1-6 here: http://www.grimoireassemblyforge.com/dudebro2/site/?page_id=1942

Another update in this series of posts is long overdue I guess.

That was a great read. The game went through some really drastic changes. Funny how the current version resembles the original prototype the most.
 

Blizzard

Banned
Anybody that creates pixel art, what's the best tool to use to do so? I believe I've only tried Graphics Gale in the past.
Tile Studio is a simple, free tool someone recommended. If you're just starting out it's worked pretty well for me so far, though I imagine even the free version of Graphics Gale has more animation-specific stuff.
 
Status
Not open for further replies.
Top Bottom