• 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.

Dynamite Shikoku

Congratulations, you really deserve it!
sorry guys, but I just had to share it with you!! :D

so, this just happened:

2014-04-30_211111.jpg

Nice. That's some pretty great feedback.
 

Ashodin

Member
Soooo uh Nintendo called me again. I think they want a demo of Apexicon on Wii U for E3 :O. They didn't say specifically, but one would think.

get devhype
 

adixon

Member
Hey all, question for the gaf Unity pros.

I'm playing around with a perspective camera in Unity for the first time (been using Unity for about 6 months now, but all 2d) and I've been running into some issues with shadows.

I'm using an extremely low field of view camera (I'd like to go single digits, between 3 and 5 or so) and I'm moving the camera wayyy back to get all the scene I want in the camera's viewport. The side effect of this is that shadow distance has to be set extremely high, which seems to be really bad for shadow quality. The only objects which need shadows rendered are really close together on the z axis, so all that extra distance between the camera and the scene which the shadow settings are presumably allocating resources to cover is wasted.

I'm wondering if there's any way to get the setup I want -- an extremely low field of view camera, but with shadow distance set to a low value, and shadows still being rendered on my objects which are far from the camera. Or at least, a way to get shadows set up so I'm not wasting resources trying to render shadows in the empty space between the camera's position and the actual scene, which are very far apart.

Is the correct solution to scale all of my objects in the scene down, so the camera doesn't have to be so far away? I've heard using extreme scales in unity can cause other problems in both physics and lighting.

I was hoping setting the near clipping plane of the camera to a high value near the far plane would affect the starting point for the shadow distance (since shadows don't need to be rendered for anything being clipped by the camera) but this doesn't seem to be the case. Maybe this just isn't the way shadows work?

Anyway, thanks for reading guys, sorry for the noob question -- totally new to 3d stuff.
 

Lissar

Reluctant Member
Look's beautiful, the art style I mean. Btw; What's the game about?

Metroidvania-esque game set in a futuristic upside down Kyoto that is based around medieval Japan aesthetics combined with cyberpunk. Main gameplay is exploration/platforming/puzzle solving. You play as a onmyou hacker who hacks into malfunctioning computer systems to exorcise the ghosts that get trapped in the wires. (I just realized how nonsensical this all sounds).

It started as a jam game (which is why the animation is so wonky) that went beyond the scope of what I originally intended for the jam. Hadn't worked on it for awhile, but I'm finally getting back to it. I don't have much to show that is in a "completed" state except for first area:

i720C4d4Bchz5.png
 

jrDev

Member
So I've updated my Unity3d asset GAC (Great Animation Combos) with Delayed Animations feature for adding combos like eg. A, A...(wait)...A. Asset store link is here http://bit.ly/1nP9b0Q and link to try demo is here http://bit.ly/1keCtFc

Remember if you want the 50% GAF discount let me know ;-)
Go create great combos! :)
Soooo uh Nintendo called me again. I think they want a demo of Apexicon on Wii U for E3 :O. They didn't say specifically, but one would think.

get devhype
Wow!!
 

Ashodin

Member
Get to work!!! Congrats!


So I've updated my Unity3d asset GAC (Great Animation Combos) with Delayed Animations feature for adding combos like eg. A, A...(wait)...A. Asset store link is here http://bit.ly/1nP9b0Q and link to try demo is here http://bit.ly/1keCtFc

Remember if you want the 50% GAF discount let me know ;-)
Go create great combos! :)

Wow!!

Thanks everyone! I'm working hardcore now to get it ready.
 

ZehDon

Member
... okay, great, but when I get to the point where the new area has to load, I get about a half second (or a little less) pause. that's something. so then I'm thinking, well, maybe I'll be more tactful about where I put these loads, so that when the pause happens it's as least irritating as possible.
That's a form of cell loading, wherein cells of data are loaded and unloaded as needed. The original idea was to keep them small enough that the hardware was able to load them into memory within 1/30th of a second. Older titles, like Morrowind, loaded these on the main thread of the game, causing small, frequent pauses on slower hardware. Have you looked into multi-threaded loading? I use this myself, and it removed a lot of loading screens. My game can load a save game and render the first frame in 0.7 seconds, though my game only uses around 150mb memory. Everything else is loaded in the background, primarily because the enemies for the game are randomly selected, and random ones can spawn in during the level, so it just loads what it needs as it needs it while playing the game. Sprites, sounds and A.I. interfaces - seems to work really well.

...If anything, I really love
tinkering around with old and restricted hardware. Count me in! :+
seth-amy-high-five.gif

I'd actually really like to look into the 3DS - it's powerful enough to do awesome things, yet restricted enough (especially with the performance required for 3D) to be very very interesting.

Edit:
Seems I missed a page!
Soooo uh Nintendo called me again. I think they want a demo of Apexicon on Wii U for E3 :O. They didn't say specifically, but one would think.

get devhype
That's pretty friggin amazing man! Congratulations!
 
Soooo uh Nintendo called me again. I think they want a demo of Apexicon on Wii U for E3 :O. They didn't say specifically, but one would think.

get devhype

That's dope man. Congrats.

I'm still up in the air personally about the Wii U, although after an interview I gave on Treachery in Beatdown City mentioning the possibility, Gonintendo picked it up and people seemed excited.

Gotta get this kickstarter done, first.
 

beril

Member
I'd actually really like to look into the 3DS - it's powerful enough to do awesome things, yet restricted enough (especially with the performance required for 3D) to be very very interesting.

It really is. There's no better feeling than writing weird geometry shaders with complex calculations in assembler language.
 

braduorg

Neo Member
Hello,

This is my first game ever (started with no programming knowledge, learned a bit of GML= game is made in Game Maker Studio).

The game is called Finish Them Chores and is inspired by the likes of Neighbors from Hell, Home Alone and Donkey Kong (and Demon's/Dark Souls in terms of explaining what to do heh).

It's not much at the moment, just a small demo (3 levels).
Game looks something like this:
fBYrwVr.jpg

(image is small for a reason, game is fugly :) )

FTC’s current features:
  • next-next-gen graphics
  • current-gen gameplay
  • educational purpose
  • keyboard-only (classic controls)
  • light story elements
  • MUSIC!
  • two levels of difficulty
  • one screen square(ish) platformer
  • making chores fun
  • easter eggs/secrets ;)

FTC’s to-do-list
  • improve 18-th century graphics
  • better scaling/ratio of objects/player
  • deciding the visual style of the game
  • fixing the glowing-item-system on Easy difficulty
  • opening/closing doors
  • revealing hidden/secret items (not containers)
  • a better entrances/stair system
  • lightning/shading
  • more chores
  • more levels
  • (more) animations
  • sounds and music
  • new type of item: container
  • more normals, statics, instants
  • different areas, houses, level in level areas


At the moment, the game needs feedback (alpha-demo link : here), so any sort of feedback is much appreciated!

More info at bradu.org.
Also, game is on Steam Workshop via Game Maker Studio Lite and indiedb.

Thanks in advance and uhm...FINISH THEM CHORES!
 

Jarekx

Member
Stuff looks great in here as always, folks.

So, after a couple months of of working offf andon with a couple different idea I finally got one started that I'm beginning to make a bit of progress on.

It's currently called "E-lysium". It's a simple roguelike about robots that are manufactured by a "robot god" and are then forced to go through his constantly changing maze of death in an attempt to reach the robot paradise, E-lysium.

The game is turn-based, with 4-way movement on a standard grid. You are curerntly allowed to move multiple times per turn based on the model of your robot, as well use multiple skills per turn as long as you have enough of the 'Energy' resource to do so. The combat focuses mostly on manipulating enemies movement so you can get them into a position to maximize damage against multiple targets, as all of the attacking skills hit multiple grid cells.

Crusadroid - First playable robot model
EsDIS9I.gif


Bat - a standard enemy
07c4B18.gif


Very early in-game- Don't mind the random walls and floors in my little debug room :p
 

Ydahs

Member
Hey guys, just a question regarding Unity and the use of components. Consider the following example:

- There is an abstract class called ClickObjectHandler, which checks to see if an object is clicked.
- There is an interface called ClickAction, which ClickObjectHandler will call via gameObject.GetComponent.
- There is another interface called WorldObject, which ClickAction will use to alter the object in some way.
- Object EnemyCactus has three components: Enemy, ClickEnemyHandler and ClickActionEnemy (inherited from WorldObject, ClickObjectHandler and ClickAction).
- Object ItemApple has three components: Item, ClickItemHandler and ClickActionItem (inherited from WorldObject, ClickObjectHandler and ClickAction).

Assuming all WorldObjects are clickable and have an action, it seems a bit tedious to continuously assign three different components for every different object, does it not? Is it possible to group components via the GUI? Or is the typical approach to just add components to objects programmatically? Or is this style of programming not really suited for Unity?
 

Turfster

Member
Hey guys, just a question regarding Unity and the use of components. Consider the following example:

- There is an abstract class called ClickObjectHandler, which checks to see if an object is clicked.
- There is an interface called ClickAction, which ClickObjectHandler will call via gameObject.GetComponent.
- There is another interface called WorldObject, which ClickAction will use to alter the object in some way.
- Object EnemyCactus has three components: Enemy, ClickEnemyHandler and ClickActionEnemy (inherited from WorldObject, ClickObjectHandler and ClickAction).
- Object ItemApple has three components: Item, ClickItemHandler and ClickActionItem (inherited from WorldObject, ClickObjectHandler and ClickAction).

Assuming all WorldObjects are clickable and have an action, it seems a bit tedious to continuously assign three different components for every different object, does it not? Is it possible to group components via the GUI? Or is the typical approach to just add components to objects programmatically? Or is this style of programming not really suited for Unity?

Is there such a big difference between ClickEnemyHandler and ClickItemHandler?
How do you check for clicks, as it were?
I'd roll that into a global mouse click handler that calls the clicked item's ClickAction, but that's me.
Hell, I'd pull the ClickAction interface inheritance into Enemy, since all the data and functions you'd need would be in there anyway. (Altho you can of get course get by with just grabbing the gameobject's Enemy and caching it when adding the ClickAction/calling it the first time if it's null)
 

Terra_Ex

Member
Hey guys, just a question regarding Unity and the use of components. Consider the following example:

- There is an abstract class called ClickObjectHandler, which checks to see if an object is clicked.
- There is an interface called ClickAction, which ClickObjectHandler will call via gameObject.GetComponent.
- There is another interface called WorldObject, which ClickAction will use to alter the object in some way.
- Object EnemyCactus has three components: Enemy, ClickEnemyHandler and ClickActionEnemy (inherited from WorldObject, ClickObjectHandler and ClickAction).
- Object ItemApple has three components: Item, ClickItemHandler and ClickActionItem (inherited from WorldObject, ClickObjectHandler and ClickAction).

Assuming all WorldObjects are clickable and have an action, it seems a bit tedious to continuously assign three different components for every different object, does it not? Is it possible to group components via the GUI? Or is the typical approach to just add components to objects programmatically? Or is this style of programming not really suited for Unity?
Have you considered using RequireComponent attributes in your scripts, which will automatically add any components a given script is dependant upon?
https://docs.unity3d.com/Documentation/ScriptReference/RequireComponent.html
 

Anustart

Member
Why am I having so much trouble making a bullet's rotation match that of the player?

No matter what I try, the bullet only matches in one spot in a circle, otherwise it's shooting bullets out an angles like so:

Player Bullets
-> \ \ \ \ \ \ \

Instead of:

-> - - - - - - -
 

Turfster

Member
Why am I having so much trouble making a bullet's rotation match that of the player?
Unity, I assume?
This is off the cuff and oldskool, but have you tried something like Quaternion.Euler(0,Mathf.Atan2(playertransform.forward.z, playertransform.forward.x) * Mathf.Rad2Deg, 0)
(assuming you work in the XZ plane, otherwise shift the atan2 over to the z position and use .y instead of .z)
 

klaus

Member
Unity, I assume?
This is off the cuff and oldskool, but have you tried something like Quaternion.Euler(0,Mathf.Atan2(playertransform.forward.z, playertransform.forward.x) * Mathf.Rad2Deg, 0)
(assuming you work in the XZ plane, otherwise shift the atan2 over to the z position and use .y instead of .z)

Newskool would be something like bullet.forward = player.forward I guess :)
 

Turfster

Member
Newskool would be something like bullet.forward = player.forward I guess :)

Eeeh.... that one's riskier, since it can introduce an off-plane deviation.
Also, mine can easily be used to calculate target quats for heat seeking projectiles or adjust for bad rotations built into your model by the artist ;)
 

Ydahs

Member
Is there such a big difference between ClickEnemyHandler and ClickItemHandler?
How do you check for clicks, as it were?
I'd roll that into a global mouse click handler that calls the clicked item's ClickAction, but that's me.
Hell, I'd pull the ClickAction interface inheritance into Enemy, since all the data and functions you'd need would be in there anyway. (Altho you can of get course get by with just grabbing the gameobject's Enemy and caching it when adding the ClickAction/calling it the first time if it's null)
This is a theoretical scenario (I always try to think of issues with design before implementation), so I don't have anything as of yet. It's just a (probably poorly written) scenario to describe my concern of having to manually add common components to each object type.

Have you considered using RequireComponent attributes in your scripts, which will automatically add any components a given script is dependant upon?
https://docs.unity3d.com/Documentation/ScriptReference/RequireComponent.html

This is exactly what I was looking for. Thank you :)
 

klaus

Member
Eeeh.... that one's riskier, since it can introduce an off-plane deviation.
Also, mine can easily be used to calculate target quats for heat seeking projectiles or adjust for bad rotations built into your model by the artist ;)

True, how bout transform.eulerAngles = new Vector3(0.0f, player.eulerAngles.y (+ correction for stupid artist :), 0.0f)? For homing I'd do something like Lookat(target) (and then set x & z angles to 0 if you want to make sure you don't deviate from the plane)..
 

Anustart

Member
The bullet.forward = player.forward works 2x better (as in the bullet is correctly rotated when fired horizontally in both directions.)

But other than those, its still firing them out sideways :(
 

Turfster

Member
The bullet.forward = player.forward works 2x better (as in the bullet is correctly rotated when fired horizontally in both directions.)

But other than those, its still firing them out sideways :(

Have you tried setting your bullettransform.rotation to the quaternion?
Otherwise I was going to suggest checking your bullet prefab's rotation, but if it looks fine in horizontal directions, that can't be it.

True, how bout transform.eulerAngles = new Vector3(0.0f, player.eulerAngles.y (+ correction for stupid artist :), 0.0f)? For homing I'd do something like Lookat(target) (and then set x & z angles to 0 if you want to make sure you don't deviate from the plane)..
Classic coding thing. There's a million ways of doing something, so if you've found one that you like and that works, use it. I've been calculating my rotations like that for over 15 years, so I'm stuck in a rut ;)
 

Anustart

Member
Have you tried setting your bullettransform.rotation to the quaternion?
Otherwise I was going to suggest checking your bullet prefab's rotation, but if it looks fine in horizontal directions, that can't be it.

Problem may have to do with the fact that my bullet with 0 rotation is horizontal, but my player is vertical with 0 rotation?

I've tried subtracting 90 degrees to no avail.

I'm also pretty sure that in trying to make this bullet fly right, I've accidentally solved fermat's last theorem.

Edit:

Code:
activeShots.Add((GameObject)Instantiate(basicBullet, gunPosition.transform.position, Quaternion.identity));     // Instantiate bullet.
            activeShots[activeShots.Count - 1].transform.forward = player.transform.forward;

It is just test code, please guys, don't lecture me on object pools, I know :3
 

Turfster

Member
Problem may have to do with the fact that my bullet with 0 rotation is horizontal, but my player is vertical with 0 rotation?
That's it, probably.

Try
Code:
activeShots.Add((GameObject)Instantiate(basicBullet, gunPosition.transform.position, Quaternion.identity));     // Instantiate bullet.
            activeShots[activeShots.Count - 1].transform.forward = [b]Quaternion.Euler(0,-90,0)*[/b]player.transform.forward;
 

Anustart

Member
That's it, probably.

Try
Code:
activeShots.Add((GameObject)Instantiate(basicBullet, gunPosition.transform.position, Quaternion.identity));     // Instantiate bullet.
            activeShots[activeShots.Count - 1].transform.forward = [b]Quaternion.Euler(0,-90,0)*[/b]player.transform.forward;

I think that may have solved it, though can't be sure at the moment because I recently changed the way bullets collided and now they're colliding with the gun :3
 

Anustart

Member
Code:
//activeShots[activeShots.Count - 1].transform.forward = Quaternion.Euler(0, -90, 0) * player.transform.forward;

That line is causing some issues. The bullets are being placed at way off x and y values. With it commented out, the bullets show up, just rotated wrong.

Edit: Hmm, if I change that line to 0, 0, -90 the bullets show back up, but still rotated wrong :/

Edit: Upon inspection, the bullets aren't receiving any rotation. They remain at 0, 0, 0.
 

Turfster

Member
Edit: Upon inspection, the bullets aren't receiving any rotation. They remain at 0, 0, 0.

Try my way by directly setting your transform.rotation (only with the math at z, since you're using the 2D mode I guess?), without faffing around with the forward vector.
Also, why not join us on IRC, that'd cut down on some response lag ;)
 

Anustart

Member
Try my way by directly setting your transform.rotation (only with the math at z, since you're using the 2D mode I guess?), without faffing around with the forward vector.
Also, why not join us on IRC, that'd cut down on some response lag ;)

There's an irc for indieGAF??
 

Anustart

Member
Wow! Only an hour on the indieGAF irc and I've already fixed more bugs than were in the game! All for the low, LOW cost of 4 monthly payments of 19.95, and they accept Visa, MasterCard, Discover, and Amazon Gift Cards.
 

Ashodin

Member
Shuffling off a lot of my instances of overlaying events into other layouts is drastically reducing my video memory. Fantastic
 

scaffa

Member
I posted a few times here about the game i'm working on (Horizon Danger) and slowly it's getting more and more serious.

Last few weeks have been a little bit nuts and everything seems to be going in high speed now. Not something that I expected and anticipated that it could go this way. It's cool but also scary :) Every showcase so far goes great and it super cool how people respond to it.

But it also kinda forced me in some way to already make a Steam Greenlight page, something that I actually wanted to do in the summer when I could show the final art work and such. So i'm looking for feedback and ways to improve the page, hope that is ok to do?

The page is here: Horizon Danger Greenlight
 

Jobbs

Banned
Working on things that have been on the to do list for a really long time and getting them sealed away. Made more camera refinements. put in Y camera influence in vertical areas.

updowncam.gif
 
Why are Ludum Dare commenters so nice? I haven't seen so much as a frowny face.

Because it's a participatory competition where winning doesn't matter, but at the same time you make yourself a target for negativity if you yourself are negative. Everybody who made something endured the same stress as the people they are evaluating, so their criticism is tempered with a pretty hefty amount of empathy.

It does mean LD isn't the best place for growth via criticism, but it also means it's a generally positive experience for everybody involved, such that participants are emboldened to take risks: be it an odd mechanic that probably-sucks-but-why-not or a 12-year-old first-timer and her aunt testing the gamedev waters. And even if there's little to gain from the non-criticism, there was still something to gain from the experience of making a game in 48 hours itself.

I think this environment is better for the hobby/field in the long-run... Absolutely not to the exclusion of other, more serious game jams, but it is great for what it is, from its own angle.
 

Blizzard

Banned
Why are Ludum Dare commenters so nice? I haven't seen so much as a frowny face.
It is probably a mix of the following factors:
* The people commenting also competed in Ludum Dare, and they do not want you to go rate their game down out of spite.
* The people commenting also competed in Ludum Dare, and they know through experience how much of a pain it was to create even something simple.

I may have been too negative since I usually mentioned problems I found, even though my own game was really simple and poor.
 

Ashodin

Member
Transition goes directly from Character Creator to Story Time

storytime7skde.gif


It's seamless so only if you played the Alpha before would you have known you went to the World Map layout first. (if you could tell at all)
 

ZehDon

Member
You two are really strange. And I like it. :D...
There is a strange sense of satisfaction in making something work that probably shouldn't. I remember I made a simple four screen GTA1 clone on the TI-83 Graphics Calculator. Ran at about 1FPS, but it worked. And it had more features! (chop shop, casino, sell drugs to peds, pick-pocketing, etc.). Nothing quite like it.
 
Status
Not open for further replies.
Top Bottom