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

GAF Indie Game Development Thread 2: High Res Work for Low Res Pay

Status
Not open for further replies.

Alastor3

Member
I always love point and click adventure game, but hate programming after doing two semester, what would be the best software to try my hands on games developement?
 

SeanNoonan

Member
I don't think what you're doing at the moment is any kind of an issue. You're going to be launching on new platforms, and are adding a load of new content right?

I think it only becomes a problem if you polish something obsessively, to the degree where you're not actually making any real progress.
It's true, I am adding a bunch of stuff. I just know that I'm doing it more for my benefit than anyone else, you know?

Not sure if that is a healthy way forward.
 

correojon

Member
New addition: the basic PowerUp! I made a test to see how it interacts with moving semisolid platforms:
GIOyNIP.gif


BTW, I´m having a problem with GIFCam where it puts weird green effects in the images, I could onyl solve it by recording the GIF at 10FPS and 256 colors :S Does anyone know any solution for this? or any other simple apps for recording GIFs? Even the green platforms appear transparent in the GIF.
 
I always love point and click adventure game, but hate programming after doing two semester, what would be the best software to try my hands on games developement?

I've been (very slowly) rolling my own solution in Unity, for class this semester (in an advanced seminar, and other classes take precedent, sadly) Though I know Adventure Game Studio is fairly good (though limited in resolution), as Wadjet Eye and others still haven't dropped it.

If you wanna roll your own in Unity, make a 3D project, with 2 planes, backdrop and ground, and use this for movement: http://docs.unity3d.com/Manual/nav-MoveToClickPoint.html. Figure out a solution for interior and exterior movement, item pick ups, UI, and puzzles, and you are pretty much there. Once I get puzzle systems 100%, I'm moving on to dialogue which this seems to be the best current solution period for dialogue:
http://www.secretlab.com.au/blog/2016/2/10/yarn-spinner

1456351985528
 
Awesome new feature in the new UE4 update: Dithered LOD crossfades.
image_13.gif


Ever since I noticed this feature in Xenoblade Chronicles X I've been wondering if/when it would come to UE4!
 

Kalentan

Member
AmMb.gif


I GOT IT! Guess what? It was a classic example of: "Keep it simple, stupid!", since I was making it more complicated then I needed to! As soon as I made it so I was only using one mask object and one mask variable, everything just fell into place. There is still something wrong with the walking north (the weapon seemingly detaches from the hand at one point, creating a one pixel empty line space for a hair of a second?.)

Now I just need to figure out how to fix that error that doesn't allow me to change equipment and then I can get to work on making my secondary weapon. To which, I wonder, should I have an entire sprite set for off-hand and mainhand for the same weapon or should I try and figure out how to get it to "reverse"?

Still need to figure out this error:

___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of Step Event0
for object objPlayerCharacter:

is_array argument 1 incorrect type (5) expecting a Number (YYGI32)
at gml_Object_objPlayerCharacter_Step_0 (line 1) - {
############################################################################################

This is where the error is occuring:

with (_newIdleMask)
{
var _weapon;
_weapon = script_execute(objPlayer.equippedWeapon[ITEM_MOVESET]);
SetSpriteFromFace(_weapon);
}

I noticed that in the split second after leaving the pause menu, the sprite hasn't changed. So, something is happening when I switch weapons at this part. I want to say it's because it happens in a milisecond since this is within the step...

There's something... I just don't know why. If I do in a F10:

equippedWeapon = ItemGetFireSword();

This works.

However something about this in objInventory:

else
{
var _newItem;
_newItem = ItemExtractArray(slots, selection);
switch (_newItem[ITEM_TYPE])
{
// Equip a weapon
case (ITEM_TYPE_WEAPON):
ItemInsertArray(slots, selection, objPlayer.equippedWeapon);
objPlayer.equippedWeapon = _newItem;
break;

Is causing an issue that I just don't get. Even if I put an alarm to delay events, the error always happens.
 

upandaway

Member
I think I'm more or less done (I think) with my game so I put up some gameplay here:
https://www.youtube.com/watch?v=d7sRfdu5vw4
If anyone wants to give some feedback I'll really appreciate it! I think a lot of the variety ended up in Hard though because it's too hard for Normal but oh well. All the bullets are the same because I'm really bad at graphics (it's an asset pack)

Someone I follow on twitter posted this free sound effect pack. 16 GB of royalty-free, attribution-free SFX.
http://www.sonniss.com/gameaudiogdc2016/

It looks legit, but I've never heard of this company before so I'm not 100% sure.
Oh wow that's cool.
 

Blizzard

Banned
I started adding some code, and my game started taking 1 second longer to boot. Very odd! I dug into it and found some comments.

Code:
// TODO eventually use a more efficient system instead of so many for loops?
Code:
// TODO:  This is especially (and horribly) inefficient once many IDs are
// used.

THANKS, PAST ME. Guess it's time for an improvement.
 

Mafusto

Member
New addition: the basic PowerUp! I made a test to see how it interacts with moving semisolid platforms:
GIOyNIP.gif


BTW, I´m having a problem with GIFCam where it puts weird green effects in the images, I could onyl solve it by recording the GIF at 10FPS and 256 colors :S Does anyone know any solution for this? or any other simple apps for recording GIFs? Even the green platforms appear transparent in the GIF.

In what engine are you making your game in?
 

correojon

Member
AmMb.gif


I GOT IT! Guess what? It was a classic example of: "Keep it simple, stupid!", since I was making it more complicated then I needed to! As soon as I made it so I was only using one mask object and one mask variable, everything just fell into place. There is still something wrong with the walking north (the weapon seemingly detaches from the hand at one point, creating a one pixel empty line space for a hair of a second?.)

Now I just need to figure out how to fix that error that doesn't allow me to change equipment and then I can get to work on making my secondary weapon. To which, I wonder, should I have an entire sprite set for off-hand and mainhand for the same weapon or should I try and figure out how to get it to "reverse"?

Still need to figure out this error:



This is where the error is occuring:



I noticed that in the split second after leaving the pause menu, the sprite hasn't changed. So, something is happening when I switch weapons at this part. I want to say it's because it happens in a milisecond since this is within the step...

There's something... I just don't know why. If I do in a F10:



This works.

However something about this in objInventory:



Is causing an issue that I just don't get. Even if I put an alarm to delay events, the error always happens.

To reverse the sprite horizontally use image_xscale=-1 (set it to 1 to get the normal version). As for your error, it´s hard to tell without knowing hoe the whole system works, sorry.

spending an hour on a head turn... thug life

ColorlessUnhealthyGopher.gif

It paid off, looks really nice!

In what engine are you making your game in?

Game Maker Studio. The GIF is recorded in 10 frames and 256 colors, the game really runs at 60 fps and colors are "cleaner".
 
It's true, I am adding a bunch of stuff. I just know that I'm doing it more for my benefit than anyone else, you know?

Not sure if that is a healthy way forward.

I wouldn't say it's bad to have the experience of doing a large scale product update under your belt. Only time will tell if it was actually worth it :p
 

SeanNoonan

Member
I wouldn't say it's bad to have the experience of doing a large scale product update under your belt. Only time will tell if it was actually worth it :p
Well that's the thing I've never really made a full game on my own. My only point of reference has been my professional work (games that I made at Ubisoft, Microsoft, etc.) but that's a totally different experience.

I guess this is how I find my footing :)

...I also started a new game! More soon :D
 

Ianan

Member
Looking forward to getting home from work and messing with some new UE4.11 stuff. I've been learning C++ during any downtime in work and I'm pleased with how fast I'm picking it up. I have done a bit of C# before so I guess that helped a bit.
Think I'm gonna start a big new solo project this month, I've had a realization that I don't really want to be a 3D artist and more a designer, I would say I'm at an advanced level of 3D art knowledge now which is always good if I need to do any assets I guess!

Gonna spend as much free time as possible over the next few months now just learning C++, C# and Blueprint.
 
Let's see how quickly I fail cert

What's the plus-minus

I'm giving it six hours

Well, if you managed to get it in cert in the first place... ;)

I'm still setting up and writing code for scenes dedicated to... uh, the start-up legal mumbo-jumbo, the title screen, and the initial "enter main character's name" thingy... and maybe also let the player pick a + stat and a - stat there, too. Once I'm done with all this stuff, then... well, it has a working UI to load things?

Was thinking about name input on a controller, or with a touchscreen. I probably don't need to worry much about it, or should I?
 
Still need to figure out this error:



This is where the error is occuring:



I noticed that in the split second after leaving the pause menu, the sprite hasn't changed. So, something is happening when I switch weapons at this part. I want to say it's because it happens in a milisecond since this is within the step...

There's something... I just don't know why. If I do in a F10:
I don't think you can pass a local "var" into a script - that's what's causing the crash. You'll need to initialise _weapon = noone in the objPlayerCharacter create event
 
Fonts are rough at 192x108 resolution. Considering breaking it for a clean font. Anything legible at the game's resolution is huge and I either stick with the scaling or go 100% against it for native resolution.

Hmmm.
 
Fonts are rough at 192x108 resolution. Considering breaking it for a clean font. Anything legible at the game's resolution is huge and I either stick with the scaling or go 100% against it for native resolution.

Hmmm.

Readability triumphs everything else in my opinion.

Out of curiosity, was there a specific reason why you chose 192x108?
 

KOCMOHABT

Member
While I love the desert, I thought it would be interesting to create high-volume grass with plausible physics. I tried with CPU physics and 2 segments, but performance was not very good.
So today i started anew and tried to do basically everything on the GPU.

So I will still have environments like this:
BOLPNGZ.gif


I am now also able to have stuff like this:
I02HrR1.gif


better and more advanced wind: http://i.imgur.com/0ER5Nea.gifv (gifv)

If you are interested in how exactly the grass works here is a youtube video i made:
https://www.youtube.com/watch?v=zttOAlHtrCA

I use GPU vertex displacement and physics to create high performance, high quality grass with believable movement.

If you are interested about development updates here is my twitter https://twitter.com/kosmonautgames
and Wordpress blog https://kosmonautblog.wordpress.com/ ,which i will fill more soon.
 
This is probably one of these "quickie" questions:

How do I resize an existing window in Unity 5.3.x?

It appears that I can read the exact window sizes from the attached RectTransform on the windows, but there doesn't seem to be a way to actually set them.

Why? Menu animations. Thinking of doing expanding/shrinking when a window displays or closes. And as something "btw": how does one ensure that anything within that "spills out" is not drawn when the message box is too small, as part of the animation?
 

Kalentan

Member
I don't think you can pass a local "var" into a script - that's what's causing the crash. You'll need to initialise _weapon = noone in the objPlayerCharacter create event

To reverse the sprite horizontally use image_xscale=-1 (set it to 1 to get the normal version). As for your error, it´s hard to tell without knowing hoe the whole system works, sorry.

Well, I found the issue. Not the solution mind you, but the problem. It was these:

objPlayer.equippedWeapon[ITEM_IDLESET]
objPlayer.equippedWeapon[ITEM_MOVESET]

As soon as I changed them to this:

objPlayer.equippedWeapon[ITEM_SPRITESET]

Which is the attacking animation, the error went away. So I'm a step closer.

I think my error has something to do with this:

Grid 0, index out of bounds writing [0,9] - size is [20,9]
Grid 0, index out of bounds writing [0,10] - size is [20,9]
Grid 0, index out of bounds writing [0,9] - size is [20,9]
Grid 0, index out of bounds writing [0,10] - size is [20,9]

That happens when I add an item to my inventory AND when I switch items.

Final Edit: Ladies and Gentlemen... I have solved it! The Grid error was the problem. It was being caused by this:
slots = ds_grid_create(invWidth*invHeight, 9);

As soon as I changed it to this:

slots = ds_grid_create(invWidth*invHeight, 11);

Everything worked! No more errors. It's... beautiful.
 

Jumplion

Member
New addition: the basic PowerUp! I made a test to see how it interacts with moving semisolid platforms:
GIOyNIP.gif


BTW, I´m having a problem with GIFCam where it puts weird green effects in the images, I could onyl solve it by recording the GIF at 10FPS and 256 colors :S Does anyone know any solution for this? or any other simple apps for recording GIFs? Even the green platforms appear transparent in the GIF.

I've had the same issue with GIFCam, it tends to pop up when it's more than 200 frames for me anyway, though it's fairly random when it does it. I try to grin and bear it, it doesn't get in the way too often.
 

LordRaptor

Member
I use GPU vertex displacement and physics to create high performance, high quality grass with believable movement.

That's really nice looking - it's making me want to do something with deformable fur though XD

This is probably one of these "quickie" questions:

How do I resize an existing window in Unity 5.3.x?

It appears that I can read the exact window sizes from the attached RectTransform on the windows, but there doesn't seem to be a way to actually set them.

Why? Menu animations. Thinking of doing expanding/shrinking when a window displays or closes. And as something "btw": how does one ensure that anything within that "spills out" is not drawn when the message box is too small, as part of the animation?

You can just change the Rect Transforms localscale value if you want to do it via script; in terms of doing UI stuff though, I always like to stay WYSIWYG so I would probably actually have two versions of a UI element, a 'before' and 'after' and then transition from one to the other voer time, rather than relying entirely on script, so that I can visually see my layout while working on it in the editor.
e: (bear in mind Recttransforms are Vector 2s rather than Vector 3s if c+ping that scale code from the manual)

For stopping text spillover, the best way would probably be to set the text element properties to overflow, and add a mask (although honestly I don't think anyone would particularly notice if you had an animated menu transition that only displays text once the animation has completed)
 
Readability triumphs everything else in my opinion.

Out of curiosity, was there a specific reason why you chose 192x108?
I like working with constraints, tbh. I also wanted to stay away from traditional pixel art scaling used in most games. I'm glad I only chose the look because its difficult to convey information on a dude 7 pixels tall.
 
Fonts are rough at 192x108 resolution. Considering breaking it for a clean font. Anything legible at the game's resolution is huge and I either stick with the scaling or go 100% against it for native resolution.

Hmmm.

Your game feels a lot smoother than that. I don't remember any of the normal judder you get with low resolution games.

In any case, I think you just have to use a LOT of the screen and keep messages short.
 
Your game feels a lot smoother than that. I don't remember any of the normal judder you get with low resolution games.

In any case, I think you just have to use a LOT of the screen and keep messages short.
Thanks. I am pretty sure it has to do with my pixels to units and ortho settings. The game renders at the screen's resolution but all artwork is 1:1 for 192x108

As for the font, to keep things lined up nicely on multiple resolutions I would get about 3 words per line XD. I can, of course, change the size of the dialogue boxes and line lengths dynamically but I'd still be stuck with not much space.

I can always try to cheat a few pixels here and there and hope nobody notices the grid shifted for text but that still wouldn't give me much space.

I would prefer to have text at the same resolution as the game. I might not be able to do it elegantly, tho.
 

Lautaro

Member
Decided to try a subsurface scattering shader (basically a skin/organic shader) that I bought long time ago with a Fuse character I made recently and I'm very happy with the results (clothes and hair are the standard Unity shader, not sure if I'll change them in the future):

X0b9kIR.jpg


Shaders can do so much for some 3d models.
 
That's really nice looking - it's making me want to do something with deformable fur though XD



You can just change the Rect Transforms localscale value if you want to do it via script; in terms of doing UI stuff though, I always like to stay WYSIWYG so I would probably actually have two versions of a UI element, a 'before' and 'after' and then transition from one to the other voer time, rather than relying entirely on script, so that I can visually see my layout while working on it in the editor.
e: (bear in mind Recttransforms are Vector 2s rather than Vector 3s if c+ping that scale code from the manual)

For stopping text spillover, the best way would probably be to set the text element properties to overflow, and add a mask (although honestly I don't think anyone would particularly notice if you had an animated menu transition that only displays text once the animation has completed)

OK, things look good now. Since it scales the entire window's contents, it's not exactly what I had in mind, but it works. And since everything is scaled, spill-over isn't an issue.

I don't do two sets of windows, really, since there's no need to - the only sizes they have are their normal size and 0x0.

Now to rewrite my fader scripts so that it can be used by anything from anywhere without much fuss... they were previously reliant on the scene loader, but I want to make it usable even while the game is in the startup screens, the title screen, and in normal gameplay (as a tint). (The startup screens and title screen use a different UI for obvious reasons, as does the battle scene. Need to make the fader/loader untied.)
 

Blizzard

Banned
I started adding some code, and my game started taking 1 second longer to boot. Very odd! I dug into it and found some comments.

Code:
// TODO eventually use a more efficient system instead of so many for loops?
Code:
// TODO:  This is especially (and horribly) inefficient once many IDs are
// used.

THANKS, PAST ME. Guess it's time for an improvement.
I fixed my old inefficiencies.

It turns out I was doing some linear search(es) as I created resources and found unique IDs. This works fine with only a few resources. Recently I added a few thousand resources (something like simple strings) and discovered that the search time really added up since it increases for every new resource. Now I'm doing simple increments which will be fine unless I reach a situation where I start DELETING tons of resources.

At that point I will experience the joys of essentially doing garbage collection, but until then, yay progress.
 

desu

Member
Since I only saw this in the UE4 thread and wasn't aware of it myself I might post this here as well since a couple of people where excited about the UE update :

Picked up a couple of Udemy courses recommended by a friend to help brush up on C++ and get familiar with the basics:
https://www.udemy.com/unrealcourse/
https://www.udemy.com/blendertutorial/
Used this coupon code which reduced them to $15 each, so they came to $30 instead of nearly $400: MACMAGAZINE
 

doop_

Banned
Sàmban;199057716 said:
What kind of game does the name ASIDEUS make you guys think of? I want something iconic or at the very least "different" for the game I'm working on.
Asiedu is a Ghanaian surname so I think of something taking place in Africa.
 

JNT

Member
I fixed my old inefficiencies.

It turns out I was doing some linear search(es) as I created resources and found unique IDs. This works fine with only a few resources. Recently I added a few thousand resources (something like simple strings) and discovered that the search time really added up since it increases for every new resource. Now I'm doing simple increments which will be fine unless I reach a situation where I start DELETING tons of resources.

At that point I will experience the joys of essentially doing garbage collection, but until then, yay progress.
I personally do resource indexing in self-balancing binary trees. Quick to find an index via ID or string, fast to delete.
 

LordRaptor

Member
Yesterday I noticed my game being pirated so I left a message asking for them to spread the word if they liked it (no point in being hostile with pirates IMO):

I think the McPixel guy did something similar back in the day - hopefully it will make at least someone have a second thought about their consequences of their axctions and maybe kick in a sale if they enjoy it
 
Status
Not open for further replies.
Top Bottom