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

Jobbs

Banned
DO NOT play around with that. Get everything backed up ASAP when you start getting warning hints about a hard drive. Be glad you even got a warning before it broke. :p

I daily backup my project files to 2 physical sources and at least 1 remote source. This is kind of important, so.. don't fuck around
 

Caspel

Business & Marketing Manager @ GungHo
I am throwing an indie mixer during GDC Next in Los Angeles at Club Nokia and we have several slots open for indie devs that will be in town to showcase their games at the mixer to the press, other devs, and GDC Next attendees. I've set up a partnership with GameTrailers to livestream the entire event in case anyone can't attend and would like to know what happened during the event.

Website for submissions: http://indiegameslive.com/

Feel free to DM if you have any direct questions. I thought I'd at least throw it out there to any indie devs in this thread looking for free promotion during GDC Next.
 

Ashodin

Member
After almost losing everything on APEXICON, I dropbox auto-save with Construct 2 in THREE separate locations. No way am I losing ANYTHING.

Also da transition

1rSYblU.gif


Damn I wish I could be in Los Angeles.
 

Burt

Member
Anyone have any experience with dialogue systems in Construct 2? I've spent the last day or so slapping one together, but it seems a bit cumbersome. Just looking for a fairly typical JRPG-style sort of thing. Specifically, a decent way to handle character/object movement/animations in time with certain dialog checkpoints/markers would be great. I feel like I'm going to end up drowning myself in variables and organizational work if I keep going the way I am.
 

Korten

Banned
Ever have a revelation that you were missing out on something that makes things so much
simpler with a lot of possibilites?

In RPG Maker I just discovered Labels. This allows me instead of using a loop, have it so that
if something fails a condition or if you pick a choice, that you can use a "Jump to Label" to go to where the label is.
Thus restarting the event at where the label is.

This has been very useful in making my character creation a lot more fluent.

LNfb.gif


Sprite of my new save spot.
 

Lautaro

Member
Ever have a revelation that you were missing out on something that makes things so much
simpler with a lot of possibilites?

Plane.Raycast in Unity. I thought it was just a regular raycast so I ignored it, I didn't knew that it allows you to simulate a plane in any direction (for a raycast ofc) without having to create one in the scene.
 

Pehesse

Member
Anyone have any experience with dialogue systems in Construct 2? I've spent the last day or so slapping one together, but it seems a bit cumbersome. Just looking for a fairly typical JRPG-style sort of thing. Specifically, a decent way to handle character/object movement/animations in time with certain dialog checkpoints/markers would be great. I feel like I'm going to end up drowning myself in variables and organizational work if I keep going the way I am.

The VN part of Honey is, as you would expect, dialog heavy, and it's been quite a pain to set up. Even for simple dialog, if you wish for anything more complex than a simple message background+line of text that doesn't go beyond that single message, it requires a lot of variable and organizational work, as you said. Best advice I can give is to setup a whole event page dedicated just to that, and you call that page whenever you need dialog around - and then, you comment like crazy to find your way around each individual dialog event!



For Honey, just for the mechanical workings of the VN segment, no plot event and the likes, I have to use about 700 different events (I'm speaking dialog events only here - for the function calls that make everything work, there are only 5 or so). Of course, that's for a VN which heavily rely on multiple choices, so for a JRPG, if you're only looking for "normal" dialog with minimal player input, you should be able to manage with a lot less, with the caveat that unless you variable like mad, each individual message would be a different event, or close to it. Of course, that's using my system - if anybody's got anything better using C2's visual script, I'll be interested too - though it's already far too deep in the rabbit hole to change for Honey at this point - but for next time :-D

EDIT: I should clarify that my take on things only apply if you intend to use C2's visual scripting. If you can do external scripting or use other languages, as shown below, there are far better and more efficient ways to get a dialog system done :-D

And just to show something new, since I'm not posting much these days because it's only animation, animation and more animation :

tumblr_inline_ndfzn6NGxj1rfzuuq.gif
 

scaffa

Member
The VN part of Honey is, as you would expect, dialog heavy, and it's been quite a pain to set up. Even for simple dialog, if you wish for anything more complex than a simple message background+line of text that doesn't go beyond that single message, it requires a lot of variable and organizational work, as you said. Best advice I can give is to setup a whole event page dedicated just to that, and you call that page whenever you need dialog around - and then, you comment like crazy to find your way around each individual dialog event!


Yeah that is how I would approach it to. Lately I have been using the Functions for calling and displaying dialogue. Its usefull since you can call different parameters, next line of dialogue or using that to call a different dialogue option based on a Global Variable.

For example I once had a Global Variable for a certain mood of a character. If the mood was "Happy" it would call a different text within the function.

The functions are quite usefull and you can organize pretty well with it.

I also used Arrays once for storing dialogue and setting the text to the location (in the array) and dialogue I needed. But that was quite a hassle and difficult to adjust later on.

But uh my explanation is not the best :p Dialogue systems are difficult, for me, and it's good to make a proper system for it and also to think about what you want to do later on.
 
The VN part of Honey is, as you would expect, dialog heavy, and it's been quite a pain to set up. Even for simple dialog, if you wish for anything more complex than a simple message background+line of text that doesn't go beyond that single message, it requires a lot of variable and organizational work, as you said. Best advice I can give is to setup a whole event page dedicated just to that, and you call that page whenever you need dialog around - and then, you comment like crazy to find your way around each individual dialog event!



For Honey, just for the mechanical workings of the VN segment, no plot event and the likes, I have to use about 700 different events. Of course, that's for a VN which heavily rely on multiple choices, so for a JRPG, if you're only looking for "normal" dialog with minimal player input, you should be able to manage with a lot less, with the caveat that unless you variable like mad, each individual message would be a different event, or close to it. Of course, that's using my system - if anybody's got anything better, I'll be interested too - though it's already far too deep in the rabbit hole to change for Honey at this point - but for next time :-D

While hard-coding dialogue is certainly one way to do it, it's certainly not ideal, IMO. Generally, with stuff like dialogue, I like to keep a habit of putting it in an external format, because that's how it'll usually be done in dev team projects, especially when the actual writers don't know much about code.

Construct 2 supports XML, which is ideal for this purpose. While you do need to learn some XPath to utilize it and understand the actual XML structure to get the most out of it, it's fairly simple, and the data can carry over to other engines as well, which is a bonus. It gives you a lot of control over the data you want to put in and how you want to structure that data. In my case, this is more or less the sort of structure I'm using for my dialogue trees and my dialogue wheels:

Code:
<?xml version="1.0" encoding="UTF-8">

<DialogueSets>
	<Dialogue>
		<Name>Example</Name>
		<LineCount>1</LineCount>
		<WheelTrigger>Example</WheelTrigger>
		<Line id="0">
			<Speaker>SomePerson</Speaker>
			<Portrait>SomePerson_Neutral.png</Portrait>
			<Duration>5</Duration>
			<Sound>ExampleLine.wav</Sound>
			<Text>This is a line of dialogue.</Text>
		<Line>
	</Dialogue>
</DialogueSets>
Code:
<?xml version="1.0" encoding="UTF-8">

<DialogueWheelSets>
	<DialogueWheel>
		<Name>Example</Name>
		<Option id="0">
			<Name>ExampleChoice</Name>
			<DialogueSet>ExampleDialogue</DialogueSet>
			<Text>This is an example dialogue choice.</Text>
		</Option>
	</DialogueWheel>
</DialogueWheelSets>

Hell, for each dialogue line, you can even add sub-elements that call and define functions, for example, certain effects or actions during scenes. Sure, you'll have to define how those functions work in code, but still. It minimizes the actual number of events needed while keeping the system fairly dynamic.

XML, aside from being flexible and reasonably readable and easy to manage with a proper XML editor or Notepad++, can be edited externally, and you can find bits you're looking for much easier with Ctrl+F, too.
 
If it truly is an HDD fault, you can check your drive's health with Crystal Disk Info.

It could be that your cables are a bit loose as well, but I'd run it through CDI first to see if there are any obvious problems.
Will do this today. Thanks!

DO NOT play around with that. Get everything backed up ASAP when you start getting warning hints about a hard drive. Be glad you even got a warning before it broke. :p
I repo about every 30 minutes or major change if sooner, nightly local and remote. I'm truthfully worried more about finding time to swap and reinstall everything than I am with the drive failing, TBH. Time is hard to come by at year's end with my day job. Sleep is even harder to come by :(
 

Pehesse

Member
While hard-coding dialogue is certainly one way to do it, it's certainly not ideal, IMO. Generally, with stuff like dialogue, I like to keep a habit of putting it in an external format, because that's how it'll usually be done in dev team projects, especially when the actual writers don't know much about code.

Construct 2 supports XML, which is ideal for this purpose. While you do need to learn some XPath to utilize it and understand the actual XML structure to get the most out of it, it's fairly simple, and the data can carry over to other engines as well, which is a bonus. It gives you a lot of control over the data you want to put in and how you want to structure that data. In my case, this is more or less the sort of structure I'm using for my dialogue trees and my dialogue wheels:

Code:
<?xml version="1.0" encoding="UTF-8">

<DialogueSets>
	<Dialogue>
		<Name>Example</Name>
		<LineCount>1</LineCount>
		<WheelTrigger>Example</WheelTrigger>
		<Line id="0">
			<Speaker>SomePerson</Speaker>
			<Portrait>SomePerson_Neutral.png</Portrait>
			<Duration>5</Duration>
			<Sound>ExampleLine.wav</Sound>
			<Text>This is a line of dialogue.</Text>
		<Line>
	</Dialogue>
</DialogueSets>
Code:
<?xml version="1.0" encoding="UTF-8">

<DialogueWheelSets>
	<DialogueWheel>
		<Name>Example</Name>
		<Option id="0">
			<Name>ExampleChoice</Name>
			<DialogueSet>ExampleDialogue</DialogueSet>
			<Text>This is an example dialogue choice.</Text>
		</Option>
	</DialogueWheel>
</DialogueWheelSets>

Hell, for each dialogue line, you can even add sub-elements that call and define functions, for example, certain effects or actions during scenes. Sure, you'll have to define how those functions work in code, but still. It minimizes the actual number of events needed while keeping the system fairly dynamic.

XML, aside from being flexible and reasonably readable and easy to manage with a proper XML editor or Notepad++, can be edited externally, and you can find bits you're looking for much easier with Ctrl+F, too.

Interesting, thanks a lot! Though your premise is dependant on having the knowledge of those specific languages, which I don't and have repeatedly failed at, so I can't really use that approach (and it wasn't really what I meant in my post above, so I edited it to clarify). If I'm using C2, it's because even simple scripting languages are out of my field, because while I understand logic full well, syntax is a whole other matter and one I frankly don't wish to bother with.

I had actually tried XML for my first drafts of the dialog system (and didn't get far), and even tried reading external CSV files using a complete tutorial from C2's website. In all instances, I ran into character recognition problems, where special characters would not display properly during dialog, so I was limited in what I could write. In the end, what I went for allows for the full range of what I need/want, so even if it's a bit more cumbersome than having a directly editable external file for all dialog (and to be honest, I still wish I could've done it that way), the way it's structured makes it still quite accessible to change (I'm thinking localization for instance). It's functionally closer to what you'd have as default in RPG Maker, actually.

Also, in the example picture I showed, there are only the dialog events - the core of the dialog system is a separate set of function calls, about 5 or so, as mentioned by Zotty. So I believe it's not as bad as you might think it is, though of course probably not as ideal as what you can make when you know other languages than the simple visual scripting of C2 :)
 

friken

Member
Still hard at work this last week on things. The majority of the work has been in code restructuring some things that were becoming unmanageable -- I know not not fun AND not much visual to show off for all the hard work.

We did added some more visual detail to a few of our ships though:

scrnhuman.jpg

scrnharkellinia.jpg

scrndimnar.jpg

rover_screenshot.jpg
 

friken

Member
Out of curiosity, how many of you use or avoid singleton use? I've been in the void camp and just decided to say screw it and start using one to ease the need for all the GameObject.Find caching. I know the debate can be rather heated in singletons being spawn of the devil and such. Not looking to start the debate, just curious how many of you use them.
 

Jobbs

Banned
Still hard at work this last week on things. The majority of the work has been in code restructuring some things that were becoming unmanageable -- I know not not fun AND not much visual to show off for all the hard work.

We did added some more visual detail to a few of our ships though:

scrnhuman.jpg

scrnharkellinia.jpg

scrndimnar.jpg

rover_screenshot.jpg

aghh! sweet! can you make any gifs of them rotating?
 

Five

Banned
Out of curiosity, how many of you use or avoid singleton use? I've been in the void camp and just decided to say screw it and start using one to ease the need for all the GameObject.Find caching. I know the debate can be rather heated in singletons being spawn of the devil and such. Not looking to start the debate, just curious how many of you use them.

I use a few singletons. For the player character, for the HUD/game controller, and for the level editor object. I've heard that it's lazy/bad before but I don't know what the specific arguments are, and I don't care. It's what was most intuitive to me.
 

friken

Member
aghh! sweet! can you make any gifs of them rotating?

Will do one or two in a few.

Ashodin said:
I want friken and shwip to have a baby.

lol... yeah the two games would make a very interesting baby :)

Abe Bly said:
I use a few singletons. For the player character, for the HUD/game controller, and for the level editor object. I've heard that it's lazy/bad before but I don't know what the specific arguments are, and I don't care. It's what was most intuitive to me.

yeah they are really handy. I think a lot of the debate is from old devs used to huge teams and I can see how they can be highly abused/misused.
 
Out of curiosity, how many of you use or avoid singleton use? I've been in the void camp and just decided to say screw it and start using one to ease the need for all the GameObject.Find caching. I know the debate can be rather heated in singletons being spawn of the devil and such. Not looking to start the debate, just curious how many of you use them.

Nothing wrong with singletons if used moderately. I think it's a perfectly appropriate design pattern to use for manager objects that need to be accessed from many parts of your game.
 

Korten

Banned
Decided to post some gifs! If you guys don't mind. :)

oQfb.gif


This one shows my save spot next to a character on the map.

Next is combat! Currently the very first fight. Sadly the GIF is only in 30 FPS so it
doesn't look as smooth as it show. Also for some reason enemies (such as the slime) show
a weapon when they attack- I still need to fix this. :( However last time I tried it broke the
combat so for now I shall keep it like that and just move on.

30jcrwi.gif


Thanks for Ashodin for showing me how to make these. I promise I shall not abuse the power!
 

adixon

Member
Decided to post some gifs! If you guys don't mind. :)

oQfb.gif

Cute!

Out of curiosity, how many of you use or avoid singleton use? I've been in the void camp and just decided to say screw it and start using one to ease the need for all the GameObject.Find caching. I know the debate can be rather heated in singletons being spawn of the devil and such. Not looking to start the debate, just curious how many of you use them.

Not that I know what I'm talking about, but I think you're getting into the divide between a really structured, professional environment and one person making an indie game. Plus, having something globally accessible is a pattern the Unity Engine itself indulges in all over the place, so it's hard to feel like you're adding more chaos for yourself by using the same pattern a bit. But like anything, I'm sure it could be done in a way that could bring about the apocalypse.

Personally in Unity right now I'm using one singleton type thing which when accessed creates itself as a Component on a GameObject in the current scene if it doesn't already exist. It then has references to all the other things that I might want to access globally, which are mostly all GameObjects/Components parented to that global game object. This is nice because none of those other global things have to implement the singleton pattern -- they're just regular public properties referenced on a singleton. If one of them gets called and the reference is null, a new instance is created on the fly. Components in the scene can cache references to whatever they need, which helps decouple most of my game code from the singleton, in case for some reason I have to change things at some point.

Honestly, the main reason I approached things this way is that I was paranoid about using singletons and wanted to use them carefully. But it ended up being really easy to get to a system where I'm able to hit play on any scene in my game and have everything work, whether or not the global stuff was already added to the scene. Another nice benefit is that I can create as many prefabs as I want with whatever global game settings and drag them into the scene for testing, and then delete that global object, drag another one in, etc. Then, when the game is actually running in release mode and not in testing, I just load the global game object in at the beginning and have it never get destroyed on scene loads, so there aren't any weird hiccups from creating the objects.

Oops, that was probably too much detail... Singletons are ok by me! I'd love to hear other people's approach to singletons in Unity though.
 

Burt

Member
The VN part of Honey is, as you would expect, dialog heavy, and it's been quite a pain to set up. Even for simple dialog, if you wish for anything more complex than a simple message background+line of text that doesn't go beyond that single message, it requires a lot of variable and organizational work, as you said. Best advice I can give is to setup a whole event page dedicated just to that, and you call that page whenever you need dialog around - and then, you comment like crazy to find your way around each individual dialog event!



For Honey, just for the mechanical workings of the VN segment, no plot event and the likes, I have to use about 700 different events (I'm speaking dialog events only here - for the function calls that make everything work, there are only 5 or so). Of course, that's for a VN which heavily rely on multiple choices, so for a JRPG, if you're only looking for "normal" dialog with minimal player input, you should be able to manage with a lot less, with the caveat that unless you variable like mad, each individual message would be a different event, or close to it. Of course, that's using my system - if anybody's got anything better using C2's visual script, I'll be interested too - though it's already far too deep in the rabbit hole to change for Honey at this point - but for next time :-D

EDIT: I should clarify that my take on things only apply if you intend to use C2's visual scripting. If you can do external scripting or use other languages, as shown below, there are far better and more efficient ways to get a dialog system done :-D

And just to show something new, since I'm not posting much these days because it's only animation, animation and more animation :

tumblr_inline_ndfzn6NGxj1rfzuuq.gif

Ah yeah, that's good stuff. I'd actually never bothered commenting anything before, but damn, it makes everything so much easier. Now I don't have to go to bed worried about refiguring out how to do what I did in the morning. The separate sheet is a good call too. Things are definitely starting to get unmanageable on a page by page basis. I have been variabling like mad for generic NPCs, but having a dedicated cutscene event sheet will help a ton. I just wish there was some sort of plugin that managed all this crap automatically.

Yeah that is how I would approach it to. Lately I have been using the Functions for calling and displaying dialogue. Its usefull since you can call different parameters, next line of dialogue or using that to call a different dialogue option based on a Global Variable.

For example I once had a Global Variable for a certain mood of a character. If the mood was "Happy" it would call a different text within the function.

The functions are quite usefull and you can organize pretty well with it.

I also used Arrays once for storing dialogue and setting the text to the location (in the array) and dialogue I needed. But that was quite a hassle and difficult to adjust later on.

But uh my explanation is not the best :p Dialogue systems are difficult, for me, and it's good to make a proper system for it and also to think about what you want to do later on.

I implemented some more functions per your suggestion today, definitely cleaned things up a bit. Tried the arrays thing back in the day, and while it would probably be feasible with some more work, my head started spinning from all the coordinates after a while. Arrays as so useful, but at the same time I can't help but worry about messing up a digit or something when they get that big.
 

nasos_333

Member
Some work in progress on Global Illumination for my RPG.

I use my GI Proxy pack for Unity3D (Free edition for now) and will apply this to some of the corridors in the game. This resembles the color palette i am shooting for in the specific game areas.

714101645RDO.jpg


And some artwork i create in the middle of the storm of programming, combat staging and level creation :)

714101694RING_Sample1_small1.jpg


More info on the RPG in: http://forum.unity3d.com/threads/my-rpg-work-in-progress-first-ever-pics.250300/

and www.artengame.com
 
Finishing up on getting Volt mode to awesomeness. Need to add slight color variance on instantiating, we have about 20+ unique bolts, hard to see but the ship does react to light. Easier seen when playing on PC but on mobile its easy to miss the subtlety.

Also, dat Nexus 4 61fps hnnnnnng

 

Blizzard

Banned
After a long time with very little time spent on my project, I am finally going to try, once and for all, to seriously work on my game and try to get one or two to market.

Odds say I will fail horribly, and I am not near as talented as the many awesome artists and animators here. But, I figure you might as well chase your dream once in life, while you still have the chance. :)
 

friken

Member
Finishing up on getting Volt mode to awesomeness. Need to add slight color variance on instantiating, we have about 20+ unique bolts, hard to see but the ship does react to light. Easier seen when playing on PC but on mobile its easy to miss the subtlety.

Also, dat Nexus 4 61fps hnnnnnng

love the pixel art... pixels and space... such perfection :)

any link to game details?


Procrastination is a bitch man.


story of my life!
 
Finishing up on getting Volt mode to awesomeness. Need to add slight color variance on instantiating, we have about 20+ unique bolts, hard to see but the ship does react to light. Easier seen when playing on PC but on mobile its easy to miss the subtlety.

Also, dat Nexus 4 61fps hnnnnnng

i'm over here looking at the 55 in the top corner lol.
 

Ito

Member
Waterfaallllll

That's gorgeous :)


I decided to open a "temporary" Steam Greenlight Concept page, to start building a community around the game.

I will create the definitive greenlight page when I have a decent trailer to show, which I'm saving for the crowdfunding campaign.

In the meanwhile, If anyone has an steam account and is interested in following the game there, here's the link: http://steamcommunity.com/sharedfiles/filedetails/?id=327608297

Have a productive gamedev night/day, GAF.
 

Korten

Banned
Here's the first floor of my first dungeon!

Some notes:

1. There's a small "puzzle" in that you need to step on a panel to open another doors. Doors are color coded to indicate which panel they go with.
2. I use a statue with a red orb to give a general subtle direction to the exit of the floor. Not sure if this will persist for all dungeons.
3. The enemies in the dungeon will consist of spirits and skeletons.
4. This dungeon was created to be a dungeon (for training purposes), and not house prisoners.

JRfb.png


Here's two Gif's of the entrance:

zUlk2Ty.gif


Inside the dungeon:

ldWDyn3.gif


:)

Probably won't post anything new till far after the dungeon.

Any chance I can get some feed back on the dungeon design?
 

cbox

Member
After a long time with very little time spent on my project, I am finally going to try, once and for all, to seriously work on my game and try to get one or two to market.

Odds say I will fail horribly, and I am not near as talented as the many awesome artists and animators here. But, I figure you might as well chase your dream once in life, while you still have the chance. :)

Good luck! Be sure to post your progress!

Korten, nice start so far. Maybe introduce more dirt or grit to the dungeon? Especially floors, maybe add more elements and props to really sell the atnosphere.
 

Paz

Member
We just finished / put live the 4th Cactus boss and 8th playable Android, really proud of how they came together as the boss is focused on bullet hell which we've used sparingly up until now and the new character has a weapon that drives you around the level, something we hadn't done at all with the other 7.

Here's another size comparison Tim made showcasing the new boss relative to a banana :p
B0EndfvCIAEFC-6.jpg:large


And in a few weeks he'll be down at GCAP (a dev conference here in aus) talking about our approach to balancing unique characters & game content, which ha been by far our biggest challenge as we got deeper in to the game. If you ever decide to do something like this think really hard about how much time and effort it's going to take, then triple that figure.

Now we move on to level select, unlockable bonuses, and the final boss!
 
Here's the first floor of my first dungeon!

Some notes:

1. There's a small "puzzle" in that you need to step on a panel to open another doors. Doors are color coded to indicate which panel they go with.
2. I use a statue with a red orb to give a general subtle direction to the exit of the floor. Not sure if this will persist for all dungeons.
3. The enemies in the dungeon will consist of spirits and skeletons.
4. This dungeon was created to be a dungeon (for training purposes), and not house prisoners.

JRfb.png


Here's two Gif's of the entrance:

zUlk2Ty.gif


Inside the dungeon:

ldWDyn3.gif


:)

Probably won't post anything new till far after the dungeon.

Any chance I can get some feed back on the dungeon design?

I'm using Rpg Maker as well so I think I might be able to provide some decent feedback :p

You've definitely made the dungeon simple and yet interesting which is good for a first dungeon. Most of the sandbag tilesets you used are spaced out well and you haven't cluttered the map with many extra design choices. I notice that the water seems to lack shadows near the walls unlike the rest of the floor near walls so you may want to add that. Are you using any tints or lighting scripts? This could add flavor to the map without need of adding any more extra tileset pieces.

Edit:
Never mind I noticed the tints and lighting in the gifs.
For the main dungeon, I might reccomend darkening the area a bit to add a sense of tension that the enemies may not provide in a first dungeon.
 
Status
Not open for further replies.
Top Bottom