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

Jumplion

Member
omg

5dX17qb.png

Conglaturations!
 
just wrapped up my dialogue system today. There are 2 types - one is for general interaction and conversation with NPCs and the other is a console popup for tips, upgrades, etc early on.

I can have the text type out each letter at any speed but what threw me for a loop was getting rich text to display using colors/modifiers not already assigned to the string.

I would just get the next letter in the entire string and assign that to the text object one at a time - this is fine. In Unity you can use rich text for color, italics, bold, etc. These use similar markup to HTML like <b>TEXT</b> for bold, <color=ff0000>, etc.

Typing these one at a time would type the entire string including markup one letter at a time until the markup was complete at which point the rich text would then appear as it should.

To solve this i created my own library for these markups and look for those letters. If the next letter in the chain is one of my markups (^ ~ = +) i remove that letter, grab the next in line and whatever that markup was, use that to assign a proper format to the text.

Example:
^T would then grab the ^, ignore it and grab the T next.
because i know the markup was ^ i assign the following string to be the entire next letter:

"<color=red>" + string[i++].ToString() + "</color>";

This would give me a red T. If there is no markup, that procedure is ignored. I can probably make the end user more efficient by looking for a close marker to make it more automatic so instead of *T*E*X*T I can use *TEXT* and keep the function going to make it easier to edit text although highlighting a handful words or phrases in game would only take extra seconds in total dev time.

I also added several other options to the dialogue system like interruption to give the discussion with NPCs more range on their own, for example alongside several other tricks. I also made the system so it can be used as a standalone or controlled from an outside object. So in our boss scenarios the boss fight controller controls the boss spawn, attract, dialogue, fight end, etc. Or i can use the system as a standalone for one-offs. The system is built to use graphic and text meshes already present in the scene and the entire dialogue system is run from a simple script with text arrays, markers for specials like interrupting, shaking, etc. That's pretty much it. Simple as it can get in terms of bullet-proof end use and implementation.
 

Das-J

Law of the West
Yikes... I haven't been this stressed leading up to a release in, well... ever!

We're a week away and doing 1000 things at once... someone plz send Red Bull AND sleeping pills :)

New website is up and looking hot though! intothestarsgame.com
 

Popstar

Member
Yikes... I haven't been this stressed leading up to a release in, well... ever!

We're a week away and doing 1000 things at once... someone plz send Red Bull AND sleeping pills :)

New website is up and looking hot though! intothestarsgame.com
When I click on AVAILABLE NOW ON STEAM or GET INTO THE STARS ON STEAM nothing happens. (Safari 9.0.3 OS X El Capitan 10.11.3)

Very nice looking website btw.
 
My new shit rocks:
knh5iGI.gif

Was a pain in the ass to get working but now I can finally easily shit out those nice rocks.

Hey, that looks great! Procedural 3D stuff is super impressive to me. I wouldn't even know where to start. How are you modeling that? Is it sample based somewhat, or just lots and lots of maths?


just wrapped up my dialogue system today. There are 2 types - one is for general interaction and conversation with NPCs and the other is a console popup for tips, upgrades, etc early on.

I can have the text type out each letter at any speed but what threw me for a loop was getting rich text to display using colors/modifiers not already assigned to the string.

I would just get the next letter in the entire string and assign that to the text object one at a time - this is fine. In Unity you can use rich text for color, italics, bold, etc. These use similar markup to HTML like <b>TEXT</b> for bold, <color=ff0000>, etc.

Typing these one at a time would type the entire string including markup one letter at a time until the markup was complete at which point the rich text would then appear as it should.

To solve this i created my own library for these markups and look for those letters. If the next letter in the chain is one of my markups (^ ~ = +) i remove that letter, grab the next in line and whatever that markup was, use that to assign a proper format to the text.

Example:
^T would then grab the ^, ignore it and grab the T next.
because i know the markup was ^ i assign the following string to be the entire next letter:

"<color=red>" + string[i++].ToString() + "</color>";

This would give me a red T. If there is no markup, that procedure is ignored. I can probably make the end user more efficient by looking for a close marker to make it more automatic so instead of *T*E*X*T I can use *TEXT* and keep the function going to make it easier to edit text although highlighting a handful words or phrases in game would only take extra seconds in total dev time.

I also added several other options to the dialogue system like interruption to give the discussion with NPCs more range on their own, for example alongside several other tricks. I also made the system so it can be used as a standalone or controlled from an outside object. So in our boss scenarios the boss fight controller controls the boss spawn, attract, dialogue, fight end, etc. Or i can use the system as a standalone for one-offs. The system is built to use graphic and text meshes already present in the scene and the entire dialogue system is run from a simple script with text arrays, markers for specials like interrupting, shaking, etc. That's pretty much it. Simple as it can get in terms of bullet-proof end use and implementation.
I have a weird love for text parsers. One of the first programs I ever made was a pirate translator (so hello and hi translated to avast and ahoy, stuff like that). That's great you got this working! I'll have to do something similar for Hag Magnate, and this is tempting me to go ahead and start working on it.

Not yet. Soon though. I'm implementing NPCs right now so it's going to be needed before too long.
 
I have a weird love for text parsers. One of the first programs I ever made was a pirate translator (so hello and hi translated to avast and ahoy, stuff like that). That's great you got this working! I'll have to do something similar for Hag Magnate, and this is tempting me to go ahead and start working on it.

Not yet. Soon though. I'm implementing NPCs right now so it's going to be needed before too long.
I had fun doing it. The rich text thing threw me off for a few then I had a "duh" moment where I could just look at any symbol and use that as my own markup to replace the character. Dunno why my brain farted since I was literally grabbing the character and using it. Hit me like 10 minutes in to use a switch(case). Works just like your pirate translator :p
 
Work the past few days has been on developing one of the bigger beasts, a large stag. I will focus on developing this one further and create a sort of vertical slice based around hunting this creature. For now, here's a .gif of the player climbing on the stunned beast.

tg12jucn.gif


The climbing movement in The Godbeast is inspired by games such as Shadow of the Colossus and Dragon's Dogma. You basically move, in whichever direction you wish, between nodes on the body of the monster. It's not quite as detailed as SotC itself, but it's also a lot more freeform than many other games climbing mechanics.

Once on the beast, you will have to manage your stamina a bit, as hanging upside down, moving around and using your weapon to stab the creature will all drain energy. Furthermore, shaking movement of the beast itself will also knock you down if you don't have enough stamina to withstand the blow.

The goal is for the player to move around the beast, while managing stamina as described, to stab the enemy and whittle down its health. You can do damage on various "zones", corresponding to the different limbs (e.g. the back, the torso, the neck, shoulders and hips). Not all of the zones' health has to be depleted, but there may be strategic advantages or disadvantages. E.g. damaging the hips will decrease the running speed of the beast or prevent it from doing certain stomping attacks with its hind legs.

Note that the stag shown here is also going to be one of the smallest beasts in the game.
So is there a way to regain or maintain stamina during a climb and so it's about managing stamina to maintain a single climb if possible outside of being forcibly ejected from the monster when scoring a crucial amount of damage ala SotC or is it more about making the most of each climb and each monster will inevitably take multiple climbs to finally vanquish without any forcible ejections? :eek:

Congrats!!!
With that kind of exposure I fully expect you to now end up in the top 20 or 30 of greenlight :3

If I am browsing the store page 3 months from now, the chances of me seeing that announcement are going to be very low. I think the description is a better place to mention that singleplayer mode is just vs bots.
Noted. I have a section about bots in the description already, but I might just highlight that that's what the single player is about a little more in the base spiel.

Thanks! I didn't know they let in that many at once.
Yup yup! I've only been peeking for a bit now but from what little I've seen they seem to do large greenlightings once a month or thereabouts with smaller waves as they feel necessary. Could be wrong but that's how it appears so far. I've mostly been keeping tabs on it via http://greendb.io (I linked it before it recently changed its URL for heck knows what reason :p ) There were still 1,800 or so games left afterwards and it's since climbed up to 1,900 or so again since.
 
Awesome work . Any tips on getting a successful Kickstarter funded ? Thinking about doing it myself in the near future (solo dev) and would love any feedback you can provide.
I launched my greenlight at the same time as kickstarter (well the morning after I woke up) and I think that helped both sides, people on steam see the KS fron greenlight because you can attach your campaign to it and it places a KS widget on the steam page for you.

I have about 440 Twitter followers some who are game devs I know well (freakzonegames is a friend of mine who made angry video game nerd adventures) and I expect that helped a tiny bit.

if you count £800 goal as success then I guess I hit it fast, I asked for a low number because I do not need multiple thousands to finish my game, it's not as big as say hearth forth Alicia or timespinners which are monster projects in the hundred thousands.

and finally just show off all you can, try to explain stuff quickly and don't make super long kickstarter pages IMO I hate taking minutes to scan past tons of big gif files and quotes from websites before I can even read about the kickstarter pitch.

Being featured on kickstarter was luck!
 

sbkodama

Member
Setcursor has worked fine for me with a 32x32 transparent .PNG set to type cursor on import settings

Code:
Public void SetCustomCursor()
{
    Cursor.SetCursor(newCursor, cursorOffset, CursorMode.Auto);
}

newCursor was a texture2d from an array, cursorOffset was either Vector2.zero or 16,16 depending on the type of cursor I changed to (I have both 'pointer' and 'crosshair' type cursors) - I used this as part of my general UI scripts to have the cursor change when it was over the draggable and resizable hotspots for draggable and resizable panels

Hello, sorry for my late reply, but because I can't set the mouse position I'm not going to use the mouse cursor.

Also, I hadn't think about it at my first replies but I plan to add the possiblity to use a x360controller, and the mouse cursor position here will not be useful for it.
So I'm going to make my fake cursor and my right stick function similaire like a have done in another software, withtout the use of the real position of the mouse cursor.
 
Congrats!!!
With that kind of exposure I fully expect you to now end up in the top 20 or 30 of greenlight :3

On my pc so I just checked, #37 currently, the exposure may have helped a little but honestly it wasn't that big of a leap, being the selected project of the day helps less then you would think.
 
On my pc so I just checked, #37 currently, the exposure may have helped a little but honestly it wasn't that big of a leap, being the selected project of the day helps less then you would think.
Well, so far I'm only 7 places out ;D
Gah... talking of ranks, the greendb site seems to have imploded. I hope they come back soon, I need my fix of compulsively checking to see where I am on it :p
 
I launched my greenlight at the same time as kickstarter (well the morning after I woke up) and I think that helped both sides, people on steam see the KS fron greenlight because you can attach your campaign to it and it places a KS widget on the steam page for you.

I have about 440 Twitter followers some who are game devs I know well (freakzonegames is a friend of mine who made angry video game nerd adventures) and I expect that helped a tiny bit.

if you count £800 goal as success then I guess I hit it fast, I asked for a low number because I do not need multiple thousands to finish my game, it's not as big as say hearth forth Alicia or timespinners which are monster projects in the hundred thousands.

and finally just show off all you can, try to explain stuff quickly and don't make super long kickstarter pages IMO I hate taking minutes to scan past tons of big gif files and quotes from websites before I can even read about the kickstarter pitch.

Being featured on kickstarter was luck!

Thanks for the tips . Will definitely take it all on board :)
 

Bit-Bit

Member
Work the past few days has been on developing one of the bigger beasts, a large stag. I will focus on developing this one further and create a sort of vertical slice based around hunting this creature. For now, here's a .gif of the player climbing on the stunned beast.

tg12jucn.gif


The climbing movement in The Godbeast is inspired by games such as Shadow of the Colossus and Dragon's Dogma. You basically move, in whichever direction you wish, between nodes on the body of the monster. It's not quite as detailed as SotC itself, but it's also a lot more freeform than many other games climbing mechanics.

Once on the beast, you will have to manage your stamina a bit, as hanging upside down, moving around and using your weapon to stab the creature will all drain energy. Furthermore, shaking movement of the beast itself will also knock you down if you don't have enough stamina to withstand the blow.

The goal is for the player to move around the beast, while managing stamina as described, to stab the enemy and whittle down its health. You can do damage on various "zones", corresponding to the different limbs (e.g. the back, the torso, the neck, shoulders and hips). Not all of the zones' health has to be depleted, but there may be strategic advantages or disadvantages. E.g. damaging the hips will decrease the running speed of the beast or prevent it from doing certain stomping attacks with its hind legs.

Note that the stag shown here is also going to be one of the smallest beasts in the game.

Not sure if I've said this before, but every time you post your screens and gifs, it makes me wish I can play it now. Seriously, this game just looks so interesting in every way.
 

snarge

Member
Hey yo IndieDev Gaf. I really really did try to keep this short...

Well, it's been a strange and life changing 2 weeks for me.
I participated in the recent Cartoon Network Game Jam in Portland. After spending the weekend working, sweating (so much sweat!), and making a pretty sweet prototype with my day-job teammates, we all walked into work on Monday to get laid off. Full company shutdown. Our CEO participated in the jam with us, I guess he wanted one more weekend with the fellas, and I don't blame him for that. Although, I could've been networking, dammit!

So I'm using this as a catalyst for my indie career. For the past 6 months, I've been waking up 2-3 hours early to work on my lil project, Snail Storm. Working on the weekends. I immediately updated my itch.io link to be public and started spamming friends and family. I attended a local Unity meetup and showed it publicly. This was thrilling, as people both gave great feedback and reacted to the game positively. I even had a small crowd around the laptop for a few minutes, with people passing the controller back and forth.

I got some responses, but not much. A lot of the feedback was from, well, friends and family of course. Not much depth. And well...I've incorporated the feedback and am now looking for more. I moved fast when developing this game as a side project, but it's even faster now, with the extra time.

So here's the game. It's pay what you want, but skip that and just download it for free.

Here's what it is:

lr9r1qC.png


Here's what it looks like:
uzY5EFW.gif

MGL5vlC.gif
CYaiJda.gif


And here's my spiel:

Snail Storm is hybrid side scrolling shooter mixed with combo based, trick performance gameplay. What does that even mean? Well, it's heavily influenced by Tony Hawk's Pro Skater, except instead of performing tricks on a skateboard, you're blowing stuff up...and a snail. There's rail sliding, spinning, combo-tallying, and tons of unique weapons.

Alright!. If you get around to downloading it, I'd love some feedback! If you like it, share it, wherever you share things! If you don't like it, let me know that too.

Also, I'm open to any tips for modern indies, next steps I should take, etc. Thanks!
 

Dascu

Member
So is there a way to regain or maintain stamina during a climb and so it's about managing stamina to maintain a single climb if possible outside of being forcibly ejected from the monster when scoring a crucial amount of damage ala SotC or is it more about making the most of each climb and each monster will inevitably take multiple climbs to finally vanquish without any forcible ejections? :eek:

You lose or gain stamina depending on where you are on the beast. If you're mostly on top of it, you will slowly gain stamina. If you're hanging on its underbelly, you will slowly lose stamina.

When the beast shakes (like it does at the end of the .gif), you will lose some stamina. The size of the stamina loss can be different depending on where you are on the body of the beast at the time of the shake.

So you will have to careful in deciding where you want to move, where you want to stick around, when to use stamina for an attack, and so on. If you're out of stamina, you fall down. If the beast does a shake and you don't have enough stamina to hold on, you will get thrown off (and maybe take some damage?).

A lot of this is still up to extensive playtesting. But that's how I envisage it at the moment. I think it also means that a good and patient player should be able to do a lot of damage and maybe even kill the beast in one climb. I could also take the Shadow of the Colossus route and put in some shakes that always knock the player down, if I think it's "too easy"...
 
So I simplified my text markup system so I no longer have to use a markup before each letter (^T^E^X^T). I had originally tweaked it to use bools to dictate when to turn on/off the markup so I didn't have to put them before each letter (^TEXT^).

I took this a step further:

Code:
                _text.text = "";
                int i = 0, markup= 0;
		while (i < incText.Length)
		{
			singleLetter = incText [i++].ToString();
			
			switch (singleLetter)
			{
			case "^":
				singleLetter = incText [i++].ToString();
				markup = 1;
				break;
			case "~":
				singleLetter = incText [i++].ToString();
				markup = 2;
				break;
			case "=":
				singleLetter = incText [i++].ToString();
				markup = 3;
				break;
			case "/":
				singleLetter = incText [i++].ToString();
				markup = 4;
				break;
			case " ":
			case "!":
			case ".":
			case ",":
			case "?":
			case "-":
				markup = 0;
				break;
			}
			
			switch (markup)
			{
			case 1:
				singleLetter = "<color=red>" + singleLetter + "</color>";
				break;
			case 2:
				singleLetter = "<color=white>" + singleLetter + "</color>";
				break;
			case 3:
				singleLetter = "<color=blue>" + singleLetter + "</color>";
				break;
			case 4:
				singleLetter = "<i>" + singleLetter + "</i>";
				break;
			}
			
			_text.text += singleLetter;
			yield return 0;
		}

Now I simply turn the markup on until a specific character is used - in this case - SPACE ! . , ? or -. This way it's just ^TEXT and the every character after the ^ is treated with markup until a break is found. I can always add more special cases but now usage has been simplified to turn the markup on once detected and keep it on until closing a sentence, punctuation, new word etc. I can always modify this further but for now it woks well to markup text. I bleed a few cases into one another and just use two switches back to back. Obviously the markup is dummy, at this point. I will use traditional RRGGBBAA for text colors and not just BLUE n shit.

You can always adjust how quickly the text types if needed by returning a yield for any time you like besides 0 to simulate a human typing by using random intervals every time a letter types, play sound, etc. You can also mold this into a return easy. I just pass the string of text to the function(string incText) and this is the main control that types everything. The rest of the scripts that trigger text only need to carry strings and pass info to this function.

Edit: on second thought I may just go back to having markups to open and close so I can have more control over what gets rich text formatting and what doesn't instead of leaving it automatic. Hmmmm.
 

Davision

Neo Member
Had some more problems with my rocks but figured it out now, as often Polycount Wiki helped, it is a great ressource for technical 3d game art stuff: http://wiki.polycount.com/wiki/Polycount

Here is another test, replaced the brown with green and added it mainly by normal:
Tfv1v3q.gif


Hey, that looks great! Procedural 3D stuff is super impressive to me. I wouldn't even know where to start. How are you modeling that? Is it sample based somewhat, or just lots and lots of maths?
Basically it is a tileable rock mesh which I base modeled in 3ds max and then sculpted with wrap in Zbrush. In 3ds Max I bended the final mesh to a column, instanced it and made it follow a spline path to form the shit. The rest is then shader stuff in UE4. World Position Offset distorts the mesh based on a height map, the painted vertex colors are used as masks.
 
I think I might finally give Unity a try today. It'll be good to relearn C#, and plus I kind of feel like just dicking around today. I've been wondering for a while how well GameMaker will handle the full scope of the game I'm working on, considering memory management is nearly non-existent and already only ~5% of the way into the game, the project file takes several minutes to load.


Basically it is a tileable rock mesh which I base modeled in 3ds max and then sculpted with wrap in Zbrush. In 3ds Max I bended the final mesh to a column, instanced it and made it follow a spline path to form the shit. The rest is then shader stuff in UE4. World Position Offset distorts the mesh based on a height map, the painted vertex colors are used as masks.

That's super cool! Thanks for sharing :)
 

Jobbs

Banned
only ~5% of the way into the game, the project file takes several minutes to load.

Oh so waiting for shit isn't a Stencyl specific problem.

This is one of my major gripes. My project loads slow and just generally operates sluggishly.. Because it's huge and I guess Stencyl never foresaw any projects being that huge...

It really fucks me up, but I have no choice but to go forward and keep adding things and making it slower. You can imagine my anxiety.
 
Oh so waiting for shit isn't a Stencyl specific problem.

This is one of my major gripes. My project loads slow and just generally operates sluggishly.. Because it's huge and I guess Stencyl never foresaw any projects being that huge...

It really fucks me up, but I have no choice but to go forward and keep adding things and making it slower. You can imagine my anxiety.

That's why I leave GameMaker running all the live-long day, even if I sometimes go weeks without interacting with it (I also never restart my computer).

yTwlhi2.png
 

Jobbs

Banned
hah. I never restart my computer unless it makes me, and if I'm gone a while and saw that it restarted for some reason I get angry.

stencyl's a mess. the only way to even allow it to load my project (because it's so large) is to launch the app with a script that allocates a bunch of extra memory to the java platform. I upgraded recently to 32 gigs of ram just so I could put yet more memory into it.

I can't tell you how much I want to upgrade out of stencyl after this ordeal is over.
 

jarosh

Member
Oh so waiting for shit isn't a Stencyl specific problem.

This is one of my major gripes. My project loads slow and just generally operates sluggishly.. Because it's huge and I guess Stencyl never foresaw any projects being that huge...

It really fucks me up, but I have no choice but to go forward and keep adding things and making it slower. You can imagine my anxiety.

Whoa, you are using Stencyl for Ghost Song?! Had no idea. How is that working out for you? How is performance? Also, are there any ways to port to consoles?
 
I think I might finally give Unity a try today. It'll be good to relearn C#, and plus I kind of feel like just dicking around today. I've been wondering for a while how well GameMaker will handle the full scope of the game I'm working on, considering memory management is nearly non-existent and already only ~5% of the way into the game, the project file takes several minutes to load.
Our project file is about 1.2gb and compiles in about 10 seconds on PC. Slightly longer for PS4 to load its libraries but not bad. I can test instantly in editor and compile quick.

The one thing I wish Unity did was take script edits while playing in the editor like UE4 does. With you Unity you have to stop play and restart on script changes unless it's a public variable or serialized to edit in the Inspector. Those can change during play mode.

I vastly prefer the scene view in Unity to the room view in GS.

Any questions just hit me up. I'm sure you'll be fine but rolling 2D if you decide to use Unity's RigidBody2D there are a few global settings everyone looks over to get it feeling right instead of all floaty and soft or whatever people complain about. I'll be around late tonight working on the game so I'll be in front of Hangouts on Google.
 

JP_

Banned
Had some more problems with my rocks but figured it out now, as often Polycount Wiki helped, it is a great ressource for technical 3d game art stuff: http://wiki.polycount.com/wiki/Polycount

Here is another test, replaced the brown with green and added it mainly by normal:
Tfv1v3q.gif



Basically it is a tileable rock mesh which I base modeled in 3ds max and then sculpted with wrap in Zbrush. In 3ds Max I bended the final mesh to a column, instanced it and made it follow a spline path to form the shit. The rest is then shader stuff in UE4. World Position Offset distorts the mesh based on a height map, the painted vertex colors are used as masks.

Really nice effect -- love that rendering style :)
 

Jobbs

Banned
Whoa, you are using Stencyl for Ghost Song?! Had no idea. How is that working out for you? How is performance? Also, are there any ways to port to consoles?

It's working out. Performance isn't as optimal as it could be, but it seems to be playable on mid range PCs so I'm not too worried -- Plus I'm hoping I can get some help from the Stencyl gods to figure out some performance improvements later.

Console ports are theoretically possible. Last I heard the Open FL guys (Open FL being the library that Stencyl is bolted onto) have consoles working or nearly working. It's kind of a long story and I'd butcher the details, but there is a real effort underway to make console ports work.

The hope is to get Ghost Song onto consoles one way or another, but I'm focusing first on just finishing the core game which is continuing to take forever.
 
Our project file is about 1.2gb and compiles in about 10 seconds on PC. Slightly longer for PS4 to load its libraries but not bad. I can test instantly in editor and compile quick.

The one thing I wish Unity did was take script edits while playing in the editor like UE4 does. With you Unity you have to stop play and restart on script changes unless it's a public variable or serialized to edit in the Inspector. Those can change during play mode.

I vastly prefer the scene view in Unity to the room view in GS.

Any questions just hit me up. I'm sure you'll be fine but rolling 2D if you decide to use Unity's RigidBody2D there are a few global settings everyone looks over to get it feeling right instead of all floaty and soft or whatever people complain about. I'll be around late tonight working on the game so I'll be in front of Hangouts on Google.

Whoa, is that for Mainframe One? I wouldn't have guessed it's that large. The Hag Magnate project folder is only 140 MB right now.

In any case, I appreciate the offer! I have no idea what kind of physics I'll want to use, but I'm sure a lot of it will be hand-coded because otherwise ew gross. In the mean time I'm going to do a couple of the tutorials. If I get stuck or have questions then I'll hit you up.
 

jarosh

Member
It's working out. Performance isn't as optimal as it could be, but it seems to be playable on mid range PCs so I'm not too worried -- Plus I'm hoping I can get some help from the Stencyl gods to figure out some performance improvements later.

Console ports are theoretically possible. Last I heard the Open FL guys (Open FL being the library that Stencyl is bolted onto) have consoles working or nearly working. It's kind of a long story and I'd butcher the details, but there is a real effort underway to make console ports work.

The hope is to get Ghost Song onto consoles one way or another, but I'm focusing first on just finishing the core game which is continuing to take forever.
Cool! I remember messing with Stencyl many years ago and the whole thing was much more primitive then. Though to be fair, your game still looks to be the most ambitious thing ever attempted in it. Wild stuff! Hope this all works out for you. And I'm certain you'll get lots of support with any potential console ports ;)

Whoa, is that for Mainframe One? I wouldn't have guessed it's that large. The Hag Magnate project folder is only 140 MB right now.

In any case, I appreciate the offer! I have no idea what kind of physics I'll want to use, but I'm sure a lot of it will be hand-coded because otherwise ew gross. In the mean time I'm going to do a couple of the tutorials. If I get stuck or have questions then I'll hit you up.
Hehe, pretty much.
 

Vanguard

Member
The one thing I wish Unity did was take script edits while playing in the editor like UE4 does. With you Unity you have to stop play and restart on script changes unless it's a public variable or serialized to edit in the Inspector. Those can change during play mode.

God I would love this...

edit: Although now that I think about it, I could have sworn it does something like this? Pretty sure it compiles while I'm playing, but usually causes a ton of bugs you wouldn't normally get... It does something! Never looked too much into it though. Think I'll do that tonight or do some investigating.
 
I think I might finally give Unity a try today. It'll be good to relearn C#, and plus I kind of feel like just dicking around today. I've been wondering for a while how well GameMaker will handle the full scope of the game I'm working on, considering memory management is nearly non-existent and already only ~5% of the way into the game, the project file takes several minutes to load.

Unity is nice! I can't really compare it to GameMaker seeing as how I haven't used it, but there certainly is a lot of nice built-in functionality.

There's plenty of "gotchas" with Unity though. The garbage collector being one of them. In short, it's not very good, so if you're concerned about memory management the general rule of thumb is to pool your objects and reuse them, rather than destroy and create new ones.

On the plus side, you've also got UnityAnswers, which is essentially just Stack Overflow but for Unity. About 90% of the problems you'll encounter will have already been solved on there, it's great!


Now, on a completely unrelated note: Here's a shameless link to a short video for my Screenshot Saturday. This week wasn't art heavy, so it more or less looks the same as last week, but I thought it was kinda cool anyway.

Edit:
edit: Although now that I think about it, I could have sworn it does something like this? Pretty sure it compiles while I'm playing, but usually causes a ton of bugs you wouldn't normally get... It does something! Never looked too much into it though. Think I'll do that tonight or do some investigating.

I'm about 90% sure that it does, but I wouldn't recommend it anyway. It takes ages, and you're always running the risk that data (Be it positions, internal values etc.) from the previous compilation could interfere with your new results. Especially if the changes you made would make it impossible to get those values. It's just a recipe for trouble!
 

Vanguard

Member
I'm about 90% sure that it does, but I wouldn't recommend it anyway. It takes ages, and you're always running the risk that data (Be it positions, internal values etc.) from the previous compilation could interfere with your new results. Especially if the changes you made would make it impossible to get those values. It's just a recipe for trouble!

Yeah just tried it out 100% works, thought it did as I've done it by accident multiple times but most of the time I just re-play it, but as you said and I mentioned earlier, you get some fantastic bugs :p
 
Whoa, is that for Mainframe One? I wouldn't have guessed it's that large. The Hag Magnate project folder is only 140 MB right now.

In any case, I appreciate the offer! I have no idea what kind of physics I'll want to use, but I'm sure a lot of it will be hand-coded because otherwise ew gross. In the mean time I'm going to do a couple of the tutorials. If I get stuck or have questions then I'll hit you up.
There's a lot of GIT info going on in there. The compile for PC is about 13mb and PS4 about 87.

And there is no "ew gross" with Unity Rigidbody. There's also no slapping it on and expecting results. You're going to put Rigidbodies and colliders on things and when you do, there's no need to waste them. Raycasts are expensive so I only use them when I have no other option or need that much more precision. Even our bosses use Unity physics for everything they do. I don't animate jumps, positions, etc, I hard code their routines. They are just objects with sprite animations and that's it. A few simple rules to follow and it's fine. The first thing I did on our restart was try Unity's physics for our player. No issues. I still prefer and use my casts but for enemies and bosses I write my own acceleration, gravity, etc and use the RigidBody to simply move the damn thing by setting its velocity directly. 9/10 times Unity's physics are just as snappy as I need them. None of my objects that use them full time feel physics-y or floaty.

Just tricks. I'm a proponent of using whatever component you throw on an object.

Anyhow. I'm no pro but hit me up if something frustrates you. I hated a lot at first.

God I would love this...

edit: Although now that I think about it, I could have sworn it does something like this? Pretty sure it compiles while I'm playing, but usually causes a ton of bugs you wouldn't normally get... It does something! Never looked too much into it though. Think I'll do that tonight or do some investigating.
I actually haven't tried since 4.3. I haven't read in patch notes any changes but I won't use the current version.

Edit: it does? Damn. I'll have to try it out again XD
 
There's a lot of GIT info going on in there. The compile for PC is about 13mb and PS4 about 87.

And there is no "ew gross" with Unity Rigidbody. There's also no slapping it on and expecting results. You're going to put Rigidbodies and colliders on things and when you do, there's no need to waste them. Raycasts are expensive so I only use them when I have no other option or need that much more precision. Even our bosses use Unity physics for everything they do. I don't animate jumps, positions, etc, I hard code their routines. They are just objects with sprite animations and that's it. A few simple rules to follow and it's fine. The first thing I did on our restart was try Unity's physics for our player. No issues. I still prefer and use my casts but for enemies and bosses I write my own acceleration, gravity, etc and use the RigidBody to simply move the damn thing by setting its velocity directly. 9/10 times Unity's physics are just as snappy as I need them. None of my objects that use them full time feel physics-y or floaty.

Just tricks. I'm a proponent of using whatever component you throw on an object.

Anyhow. I'm no pro but hit me up if something frustrates you. I hated a lot at first.

Okay. That makes sense. I'm sure I'll figure it all out.
 

Vanguard

Member
I actually haven't tried since 4.3. I haven't read in patch notes any changes but I won't use the current version.

Edit: it does? Damn. I'll have to try it out again XD

I'm doing a lot of experiments with it becuase I am sure there was a reason way back when as to why I didn't do it and what the bugs were...

So far, Awake and Start are not re-called.

OnDisable is called before it reloads the .dll, where after it calls OnEnable. There's possibly docs for this somewhere, hidden. But this is more fun.

edit: Found some old topics on it, saying that non serialized things should be lost... back in mid 2015, which kind of rings a bell. But I'm not seeing that yet in my experiments, or I'm not looking hard enough.

edit2: Aha, ok what it means by non serialized stuff, doesn't mean stuff that is not serialized by the object, either be public or SerializeField, but things that Unity cannot serialize such as Dictionary. That is empty after the hot reload. Which may be where I got my weird behaviour before as I do like me some dictionaries.

edit3: So to sum up the above, it serializes your game state before hot reloading, then deserializes it to run in the new code... This obviously causes problems for non unity serializable objects, static classes and if you changed the name for a field that is serialized... fun!
 

Jumplion

Member
Hey yo IndieDev Gaf. I really really did try to keep this short...

Well, it's been a strange and life changing 2 weeks for me.
I participated in the recent Cartoon Network Game Jam in Portland. After spending the weekend working, sweating (so much sweat!), and making a pretty sweet prototype with my day-job teammates, we all walked into work on Monday to get laid off. Full company shutdown. Our CEO participated in the jam with us, I guess he wanted one more weekend with the fellas, and I don't blame him for that. Although, I could've been networking, dammit!

So I'm using this as a catalyst for my indie career. For the past 6 months, I've been waking up 2-3 hours early to work on my lil project, Snail Storm. Working on the weekends. I immediately updated my itch.io link to be public and started spamming friends and family. I attended a local Unity meetup and showed it publicly. This was thrilling, as people both gave great feedback and reacted to the game positively. I even had a small crowd around the laptop for a few minutes, with people passing the controller back and forth.

I got some responses, but not much. A lot of the feedback was from, well, friends and family of course. Not much depth. And well...I've incorporated the feedback and am now looking for more. I moved fast when developing this game as a side project, but it's even faster now, with the extra time.

So here's the game. It's pay what you want, but skip that and just download it for free.

*images*

And here's my spiel:

Alright!. If you get around to downloading it, I'd love some feedback! If you like it, share it, wherever you share things! If you don't like it, let me know that too.

Also, I'm open to any tips for modern indies, next steps I should take, etc. Thanks!

Good luck on your adventure newly baptized indie. Godspeed. I'll give it a shot when I have some time.
 

snarge

Member
Good luck on your adventure newly baptized indie. Godspeed. I'll give it a shot when I have some time.

Thanks man! I love that term "baptized indie"!

Well, I did a lot of screenshotsaturday-ing, and ended up here, so a pretty great day!

I also see Octahedron is in there! 2 Gaffers in one day!
 
Status
Not open for further replies.
Top Bottom