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

DNAbro

Member
I'm a crazy person because I decided to invent my own language for the game I'm working on. Incidentally, that's part of why I haven't posted a lot recently... because most of what I've been doing is not particularly visible or not very novel (like showing off the 100+ weapons I spent weeks illustrating).

The language is basically still an English cipher. My translation system right now is a simple regex that swaps out English words with words from the Inimnth language (using pairs in a JavaScript dictionary array). You can see in red/bold all the words it can't translate yet because I haven't described Inimnth equivalents for those words yet. Also the pronunciation is Latin-ish but I don't really care.

kfOcbe7.png


I don't think I want to invent a separate grammar system. That's more work than worth as far as I'm concerned. Originally I only intended to use the language in a limited extent, basically just proper names for certain locations and weapons in the game. But now I want to extend it quite a bit further. I know it looks like a lot of red in the picture above but actually I have 916 words defined in the language already. I know for Game of Thrones they made about 3000 Dothraki words, so I'll probably stop somewhere in that neighborhood.

Something that's been built into the game from the beginning is that you can brew potions at cauldrons (bonfires basically). The list of potions the player is capable of brewing herself would grow throughout the game, though I hadn't yet figured out how the list would grow. I thought maybe you can buy recipes at one of the stores in town. But now I think it'd also be neat to find ancient recipes from this alien race for additional potions, and then to have to go into town where the scholar is and get the recipes translated.

And if I can come up with other uses for things to find that need to be translated I will. Note that this will be relatively automatic... I'm not expecting most players to actually learn the language and translate texts themselves, though that of course is an option for any extremely devoted fan. I just like world-building and enriching the lore! :)

When you said "invent my own language" for some reason my mind went to "invent my own programming language" and was about to freak out.
 
So I've been trying to create battle sprites for the revised 16x32 base sprite size (already re-did the standing/walking sprites with non-placeholders for real), and then I realized something...

Given the way I'm animating things, some sprites will be 32x32 large instead of the usual 16x32, mostly so that the sprites won't look crunched while animating.

I think it just makes me feel a bit bad, maybe a little bit of OCD, but I was thinking that I could do it all 16x32s or 32x16s (collapsed/KO sprites). Then again, I guess you do learn something - you can't just stay within a confirmed set of things if you want things to look good.

That said...


Trying to do the battle UI, and although I personally think it will look fine (the battle background will reside just above the main UI when things are done), it does scream mobile. Was trying to make a UI that's usable with keyboard, mouse, or touch...

The classic JRPG menu style as is isn't too good when it comes to mouse or touch input in my opinion, though. Hmm...

(I think I got lazy trying to find a more suitable font. It's growing on me.)
 

LordRaptor

Member
it does scream mobile.

It actually doesn't, things like FF6 for mobile just use standard fonts now

and look pretty bad IMO

I mean, POT sprites used to be a necessity, but modern engines don't use actual sprites they use textured polys to fake sprites, so nowadays its purely an aesthetic choice to go with 16x16 or 32x32 as your limitations, because it will all get compressed onto one big POT texture anyway 'behind the scenes'
 
It actually doesn't, things like FF6 for mobile just use standard fonts now


and look pretty bad IMO

I mean, POT sprites used to be a necessity, but modern engines don't use actual sprites they use textured polys to fake sprites, so nowadays its purely an aesthetic choice to go with 16x16 or 32x32 as your limitations, because it will all get compressed onto one big POT texture anyway 'behind the scenes'

I'm thinking more in terms of how big the buttons are.

Yeah, though I guess I've always found that the default 16x32 sprite size I've opted to use to be a good balance between appearance and complexity in my opinion. It's just that I was half expecting to be able to use a fixed 16x32 for almost everything; turns out due to the way I'm going to handle battle sprites, some sprites will be 32x32 (though most of the character will stay within the 16x32 reference).

I'm actually using a sprite sheet, and Unity does indeed support non-POT textures. Though, I've always thought that it'd be a nice exercise if I'm able to stick everything within a 256x128 image. (Using multiple sprites per image.) (I still have quite a bit of leftover space in the sprite sheet, despite the fact that some sprites needs duplicates.) Would also make it easier for me to make it a reference and sprite other things that use the same set of animations, too.

In the end, I suppose the buttons should work just right :p I better get going and continue spriting.

While we're at it, what would be the best way to have enemies, which would be represented as non-UI sprites (in the game world), be as navigate-able as UI buttons? Thinking of making it so that you can select enemies and/or party members as targets via mouse/keyboard/touch. Was thinking of using a bunch of things that'd ray-cast, but then, keyboard.
 

JeffG

Member
Okay guys, first help request and this one is driving me insane! Bear in mind that I'm still very new at this so please use simple vocabulary, and don't be so harsh.
I'm using unity, C# and I'm trying to make the scenes fade in and out programmatically.

I'm pretty sure that what I'm about to say will bring many facepalms but I don't care, I am pretty damn sure that there are easier and more effeciant ways to make fading scenes but what I want to know is why my approach not working, rather than finding alternatives for the time being.

What I did was create a UI Panel that pans over the entire screen and wrote a script that makes the alpha of the panel change depending on the number of seconds. This works perfectly well. But the problem is that I can't click on any buttons as long as the canvas containing the panel is activated.

I decided to prefab the entire canvas and attach it to my Levelmanager empty gameobject. I wired it up and wrote two co routines for fading in and out, and referenced the fade in coroutine to the start and the fadeout one to my load level method. What I had in mind was deactivating the panel (or specifically, the canvas) as soon as the fadeout finishes and reactivates when the load next level method is called. First part worked amazingly well... Second part... Not so much.

I dug around and quickly found out that once you deactivate an object it's quite a hassle to reactivate it. I didn't care to use another empty gameobject and parent it to the canvas and do a foreach statement. So I thought about instantiating and destroying the canvas whenever I need it. Yet again, the first part worked wonderfully, but instantiating it again was more of a hassle since it was detached from the levelmanager as soon as it was destroyed.

I decided to enable and disable the panel instead but that did not work at all as I got a Null reference error and I still don't understand what I did wrong. I looked around but none of the links helped me so I decided to do my final solution.

I decided to move the two coroutines to the panel script and make the gameobject destroy itself, that way it will continue to stay attached to the level manager. I wrote two methods to call each coroutine and use these call these methods from the level manager script.


and I get this error:
NullReferenceException: Object reference not set to an instance of an object
sLevelManager.Start () (at Assets/Scripts/sLevelManager.cs:20)

here's the script for the panel:

Code:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class sFader : MonoBehaviour {
	public float fadeSpeed;
	public Image fadePanel;

	private float fadetime;
	private float alpha;
	private int fadeDir = -1;
	private Color color;

	void Start () {
		fadePanel = GetComponent<Image> ();
	}

	void Update() {
		alpha +=fadeDir * (Time.deltaTime/fadeSpeed);
		alpha = Mathf.Clamp01 (alpha);
		fadePanel.color = new Color (fadePanel.color.r, fadePanel.color.g, fadePanel.color.b, alpha);

	}
	public float FadeDirection (int direction){
		alpha = -direction;
		fadeDir = direction;
		return (fadeSpeed);

	}
	public void fadingin() {
		StartCoroutine ("fadein");
	}
	public void fadingout(){
			StartCoroutine("fadeout");
	}
 IEnumerator fadein () {
		fadetime = FadeDirection(-1);
		yield return new WaitForSeconds (fadetime);
		Destroy (transform.parent.gameObject);

}
 IEnumerator fadeout () {
			fadetime = FadeDirection (1);
			print (Time.deltaTime/fadetime);
			print ("line 3");
			yield return new WaitForSeconds (fadetime + 0.5f);
			print ("line 4");
			Application.LoadLevel (Application.loadedLevel + 1);
	}
}

and the level manager script:

Code:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class sLevelManager : MonoBehaviour {
	public float loadnextscene;

	//fading variables
	public GameObject Fading;
	private sFader fader;
	private float fadetime;

	void Awake () {

		Fading = Instantiate (Fading, transform.position, Quaternion.identity) as GameObject;
		fader = Fading.GetComponent<sFader> ();
	}

	void Start () {
		fader.fadingin ();

		if (loadnextscene== 0) {
			return;
		} else {
			Invoke ("LoadNextLevel", loadnextscene);
			print ("invoked");
		}
	}
	public void LoadNextLevel () {
		Fading = Instantiate (Fading, transform.position, Quaternion.identity) as GameObject;
		fader.fadingout ();
		Reset ();
	}

the level manager script is very messy I know, but it should still work no? what am I doing wrong?
Not sure whats going on on a brief look.

But if you can't interact with a UI panel...points to an issue with a Event System

Do you have 1?

Also, you might want to look at the asset DPLoadscreen

For easy screen loading

https://www.assetstore.unity3d.com/en/#!/content/40690



Edit: you don't set fader in LoadNextLevel. It would be pointing back to the older Fading object
 
That's... a lot of extra work you're making for yourself :O
Have you considered any shortcuts like using common phoneme pairings instead of a word for word transcription?
eg instead of replacing walk, talk, walking, talking, walked, talked, replace -alk, -ing, -ed?

It didn't even occur to me and it doesn't sound appealing, although I appreciate the suggestion. I've been in love with the idea of language construction for a long time and I'm not concerned about the amount of time it has taken or will continue to take since I'm enjoying it so much.


When you said "invent my own language" for some reason my mind went to "invent my own programming language" and was about to freak out.

Oh haha yeah that would be rough. I'm not nearly a good enough programmer for that.

Good luck! I'm liking that increasingly game productions are taking this kinda thing seriously. One of my previous projects (Far Cry Primal) created a primitive language with the help of some language experts.

It's a lot of work, but definitely worth it to make your world feel rich and alive. Also hearing the voice actor of Adam Jensen make caveman grunts was pretty great ;)

Thanks! Yeah, I like it too. :)
 
I'm a crazy person because I decided to invent my own language for the game I'm working on. Incidentally, that's part of why I haven't posted a lot recently... because most of what I've been doing is not particularly visible or not very novel (like showing off the 100+ weapons I spent weeks illustrating).

The language is basically still an English cipher. My translation system right now is a simple regex that swaps out English words with words from the Inimnth language (using pairs in a JavaScript dictionary array). You can see in red/bold all the words it can't translate yet because I haven't described Inimnth equivalents for those words yet. Also the pronunciation is Latin-ish but I don't really care.

kfOcbe7.png


Nice!!!

I also created my own language for my game and it's cool we came up with similar tools.


It uses php and a mysql database for swapping out words with id numbers. The writings are stored on the server and fetched by Unity every time a change is made. That way when I modify a conword it's automatically updated throughout my game project.

I don't think I want to invent a separate grammar system. That's more work than worth as far as I'm concerned. Originally I only intended to use the language in a limited extent, basically just proper names for certain locations and weapons in the game. But now I want to extend it quite a bit further. I know it looks like a lot of red in the picture above but actually I have 916 words defined in the language already. I know for Game of Thrones they made about 3000 Dothraki words, so I'll probably stop somewhere in that neighborhood.

My language started as meaningless hieroglyphics I wanted to decorate my video game with.


But just like you I got hooked and started turning it into a real language. Glad to see you understand grammar is more work than it's worth. It just takes so much time! My language has ~9,000 words yet that work was fast compared to grammar.


Something that's been built into the game from the beginning is that you can brew potions at cauldrons (bonfires basically). The list of potions the player is capable of brewing herself would grow throughout the game, though I hadn't yet figured out how the list would grow. I thought maybe you can buy recipes at one of the stores in town. But now I think it'd also be neat to find ancient recipes from this alien race for additional potions, and then to have to go into town where the scholar is and get the recipes translated.

And if I can come up with other uses for things to find that need to be translated I will. Note that this will be relatively automatic... I'm not expecting most players to actually learn the language and translate texts themselves, though that of course is an option for any extremely devoted fan. I just like world-building and enriching the lore! :)

Sounds like a smart plan for working it into the game. Have you seen how No Man's Sky handles alien languages? Aliens talk in gibberish until the player has found ruins that teach them a word or two. Afterwords those words are automatically translated when talking. Maybe that also might be something that works for you.

I'm lucky with VizionEck being a puzzle/discovery game. I can spend countless hours on world-building and then easily fit it into gameplay. Learning the language will hopefully be a ridiculously hard challenge requiring players to work together ala FEZ's secret endings.
 

neko.works

Member
When you said "invent my own language" for some reason my mind went to "invent my own programming language" and was about to freak out.

I did make my own programming language for Light Fairytale :3

Actually, sort of, just some super high level scripting language, as I find it easier to write a single line of code such as "player1 grab_hand player2" than doing crazy drag and drop stuff in the Unity editor...

Ah, so that's what you're going for :) It looked more natural in that new gif than in the first for some reason.

Very nice, I think you have a lot of potential here. I would probably add the 2D portraits to the interface so its not just text.

Personally I prefer something more vibrant and full of icons like the Last Remnant UI but if you are going for a more retro look is up to you.

Maybe instead of shrinking, they could fade out? just a thought

Neko, that looks fantastic.

Thanks guys for the feedback!

I did have portrait in my very old prototype battle UI, but I think it looks better this way, more compact and retro style.

I also made the characters fading in / out initially, but I prefer it this way.
 
Sounds like a smart plan for working it into the game. Have you seen how No Man's Sky handles alien languages? Aliens talk in gibberish until the player has found ruins that teach them a word or two. Afterwords those words are automatically translated when talking. Maybe that also might be something that works for you.

I'm lucky with VizionEck being a puzzle/discovery game. I can spend countless hours on world-building and then easily fit it into gameplay. Learning the language will hopefully be a ridiculously hard challenge requiring players to work together ala FEZ's secret endings.

Hey! I thought I remembered you posting about this earlier. I hadn't thought about language evolution/modification in that sense. I guess I probably would change things by hand since that seems simpler in the short term. And since I've been testing it thoroughly with all sorts of strings (everything from the healing potion recipe I posted to snippets of messages on GAF and Facebook) I'm feeling more and more confident in the language.

The No Man's Sky thing sounds like exactly the right approach for a procedurally generated game. The new Tomb Raider did something kind of similar, although in that case it played out more like an optional fetch quest with fancy flavor text.

I'm not opposed to the idea of the player character learning to read or write in the language on principle. It just needs to better support the gameplay if it happens.
 

Blizzard

Banned
When you said "invent my own language" for some reason my mind went to "invent my own programming language" and was about to freak out.
I did that for my current project, but it's basically a subset of C. =P


*edit* Unrelated note, new Sonar (the Digital Audio Workstation I own) version is out on Steam today!
 
I'm a crazy person because I decided to invent my own language for the game I'm working on. Incidentally, that's part of why I haven't posted a lot recently... because most of what I've been doing is not particularly visible or not very novel (like showing off the 100+ weapons I spent weeks illustrating).

The language is basically still an English cipher. My translation system right now is a simple regex that swaps out English words with words from the Inimnth language (using pairs in a JavaScript dictionary array). You can see in red/bold all the words it can't translate yet because I haven't described Inimnth equivalents for those words yet. Also the pronunciation is Latin-ish but I don't really care.

kfOcbe7.png


I don't think I want to invent a separate grammar system. That's more work than worth as far as I'm concerned. Originally I only intended to use the language in a limited extent, basically just proper names for certain locations and weapons in the game. But now I want to extend it quite a bit further. I know it looks like a lot of red in the picture above but actually I have 916 words defined in the language already. I know for Game of Thrones they made about 3000 Dothraki words, so I'll probably stop somewhere in that neighborhood.

Something that's been built into the game from the beginning is that you can brew potions at cauldrons (bonfires basically). The list of potions the player is capable of brewing herself would grow throughout the game, though I hadn't yet figured out how the list would grow. I thought maybe you can buy recipes at one of the stores in town. But now I think it'd also be neat to find ancient recipes from this alien race for additional potions, and then to have to go into town where the scholar is and get the recipes translated.

And if I can come up with other uses for things to find that need to be translated I will. Note that this will be relatively automatic... I'm not expecting most players to actually learn the language and translate texts themselves, though that of course is an option for any extremely devoted fan. I just like world-building and enriching the lore! :)

this is super rad!
 
So I've been trying to create battle sprites for the revised 16x32 base sprite size (already re-did the standing/walking sprites with non-placeholders for real), and then I realized something...

Given the way I'm animating things, some sprites will be 32x32 large instead of the usual 16x32, mostly so that the sprites won't look crunched while animating.

I think it just makes me feel a bit bad, maybe a little bit of OCD, but I was thinking that I could do it all 16x32s or 32x16s (collapsed/KO sprites). Then again, I guess you do learn something - you can't just stay within a confirmed set of things if you want things to look good.

That said...



Trying to do the battle UI, and although I personally think it will look fine (the battle background will reside just above the main UI when things are done), it does scream mobile. Was trying to make a UI that's usable with keyboard, mouse, or touch...

The classic JRPG menu style as is isn't too good when it comes to mouse or touch input in my opinion, though. Hmm...

(I think I got lazy trying to find a more suitable font. It's growing on me.)

I haven't been working on my side project in awhile, but I found the same issue, classic JRPG menus either feel like they should be used with a controller or in garish mobile style. I think it also didn't help that I was using a game framework mainly for mobile but I wanted to make it on PC.

I wish there was something besides Cocos2D-X with awesome support for TMX files, but alas.
 
I'm trying to communicate that hiding in grass means you can't be seen, by adding a vignette. Which vignette do you think works best? Trying to strike a balance between making it noticeable, and not washing out the whole screen.

1 (small area, very dark)
d6ZcT8w.gif


2 (small area, less dark)
u5fHBX1.gif


3 (larger area, very dark)
3YLl6ms.gif
 

Blizzard

Banned
I'm trying to communicate that hiding in grass means you can't be seen, by adding a vignette. Which vignette do you think works best? Trying to strike a balance between making it noticeable, and not washing out the whole screen.

Check out what League of Legends did with stealth: Be warned the video gets loud later. https://www.youtube.com/watch?v=WbBuRhY7feM

Teemo goes into stealth around 7 seconds in. The stealth effect seems to be a full-screen slight dim and blue tint, which works pretty well. You might also add a little green tint.
 
I'm trying to communicate that hiding in grass means you can't be seen, by adding a vignette. Which vignette do you think works best? Trying to strike a balance between making it noticeable, and not washing out the whole screen.

1 (small area, very dark)
d6ZcT8w.gif


2 (small area, less dark)
u5fHBX1.gif


3 (larger area, very dark)
3YLl6ms.gif

2 or 3, and I'm leaning towards 2. 1 is way too dark. It's already pretty tricky managing stealth in the game, and I'd be worried that hiding too much of the screen or darkening it too much can both frustrate players as well as limit the types of enemy placements you can do without it feeling "unfair."
 

JeffG

Member
I'm trying to communicate that hiding in grass means you can't be seen, by adding a vignette. Which vignette do you think works best? Trying to strike a balance between making it noticeable, and not washing out the whole screen.

1 (small area, very dark)
d6ZcT8w.gif


2 (small area, less dark)
u5fHBX1.gif


3 (larger area, very dark)
3YLl6ms.gif

I like 3
 
this is super rad!

thanks! &#9829;

I'm trying to communicate that hiding in grass means you can't be seen, by adding a vignette. Which vignette do you think works best? Trying to strike a balance between making it noticeable, and not washing out the whole screen.

I like the first one best because I think the trade-off of not being seen for not being able to see very well is an interesting gameplay challenge. Just considering visual aesthetic, then #2 looks the best.
 

Blizzard

Banned
This is a pretty specific question, but for any synth people out there:

I was randomly listening to DDR music and recognized a particular sound effect at the start of this song: https://www.youtube.com/watch?v=dTt8-z27Fd4

I remember a classic Ninja Turtles song that used it occasionally, or something similar: https://www.youtube.com/watch?v=pnFcArSTmD8

Apparently the term is "orchestra hit" or "orch hit". Since this seems to be kind of classic, I would think it would be pretty popular. However, after digging through a ton of synths in the new Sonar version on Steam, I only found 2 that were similar to it, both apparently associated with Roland, both called "orchestra hit" or similar.

Was Roland the only synth brand that had this sound, or is it just difficult to create? If it's EASY to create, what processing might one do?
 
"Was Roland the only synth brand that had this sound, or is it just difficult to create? If it's EASY to create, what processing might one do?"

I know Korg synths had a few orchestra hits on some of their older sample-based synthesizers.

Ultimately it's just a bunch of instruments playing a short note layered on top of each other, making an orchestral chord stab with some reverb on top.

To make it sound more like those 80s/90s rompler orchestra hits, you'd actually create the hit with all of your instruments, sample it, and then use that sample as the basis for a sample-based instrument. Those old orchestra hits have the sound they do because they're a single sample pitched up/down for each note.


The reason why you might not see too many presets or instruments with that kind of sound is because it's "dated." It is firmly connected with the sound of 80s/90s electronic music and synthesizer presets, so it's not something that's really worthwhile to make in a new synth. Most users will find it cheesy. Furthermore, for people who really want "that" sound, they could just go and use the real deal (it's relatively cheap to buy any of those old romplers) or buy one of the software plugins that recreate some of those old romplers like the Korg M1.
 

crwilso

Neo Member
Very cool. Shouldn't that text appear before you move through the gap though?

Good point :) There's a trigger volume attached to the sprite and I probably should have made a bit bigger. Going to take most of the bank holiday off working, but now I feel like I have to go in and tweak these :D
 
I'm trying to communicate that hiding in grass means you can't be seen, by adding a vignette. Which vignette do you think works best? Trying to strike a balance between making it noticeable, and not washing out the whole screen.

1 (small area, very dark)
d6ZcT8w.gif


2 (small area, less dark)
u5fHBX1.gif


3 (larger area, very dark)
3YLl6ms.gif

2.
 

Blizzard

Banned
"Was Roland the only synth brand that had this sound, or is it just difficult to create? If it's EASY to create, what processing might one do?"

I know Korg synths had a few orchestra hits on some of their older sample-based synthesizers.

Ultimately it's just a bunch of instruments playing a short note layered on top of each other, making an orchestral chord stab with some reverb on top.

To make it sound more like those 80s/90s rompler orchestra hits, you'd actually create the hit with all of your instruments, sample it, and then use that sample as the basis for a sample-based instrument. Those old orchestra hits have the sound they do because they're a single sample pitched up/down for each note.


The reason why you might not see too many presets or instruments with that kind of sound is because it's "dated." It is firmly connected with the sound of 80s/90s electronic music and synthesizer presets, so it's not something that's really worthwhile to make in a new synth. Most users will find it cheesy. Furthermore, for people who really want "that" sound, they could just go and use the real deal (it's relatively cheap to buy any of those old romplers) or buy one of the software plugins that recreate some of those old romplers like the Korg M1.

Thanks, you were the person I hoped might see my post! I appreciate the insight.

It turns out I don't have any Korg synths, but if I ever want to spend money on that, Korg has a legacy collection for $200 that includes a ton of sounds (like the M1 synth).
 

ASIS

Member
Block raycast targets being the default UI option is probably the cause of your canvas blocking interactions with your scene; the way the UI works is it draws a raycast from your mouse position 'into' the scene, and anything tagged as part of the UI will catch those raycasts in case it thinks you're doing UI stuff, unless you explicitly tell it not to.

I would guess your missing object problems are because you do not have DontDestroyOnLoad as a property on your scripts; when you load a new level, it destroys anything that does not have this property, so even though you have a prefab in each level that is named the same and is ostensibly the 'same', it is actually an entirely new gameobject, so your cached references are no longer being found.

If you had DontDestroyOnLoad on that script, then you would be able to enable / disable the gameobject without problems as you cache the reference to it in your Awake - if you'd still rather instantiate / destroy rather than cache, its probably worth adding a System.GC.Collect() call in an OnLevelLoaded() (or whatever that method is called), as instantiate / destroy calls are pretty notorious for creating garbage, and there's probably not a more convenient time to do a garbage collection than a level load.
well I wanted to do this yesterday but I was extremely busy, i'll find sometime today to try this as well.

The reason why I wanted to do instantiate/destroy is because I thought it would be a better alternative than constantly updating a relatively useless object outside of the beginning and end of the scene. But if this method will create garbage then I think will just keep the game object on and enable/disable recast targeting.

Not sure whats going on on a brief look.

But if you can't interact with a UI panel...points to an issue with a Event System

Do you have 1?

Also, you might want to look at the asset DPLoadscreen

For easy screen loading

https://www.assetstore.unity3d.com/en/#!/content/40690



Edit: you don't set fader in LoadNextLevel. It would be pointing back to the older Fading object
Thank you for your feedback, yes I do have an eventsystem in the scene. But the problem is that the fading panel blacks all interactions. I'll do some more tests today to see the exact problem.
And I will definitely check the asset store eventually, but I want to know why things are the way they are rather than get the easy route first, and then check what is there in the store.
 

JeffG

Member
well I wanted to do this yesterday but I was extremely busy, i'll find sometime today to try this as well.

The reason why I wanted to do instantiate/destroy is because I thought it would be a better alternative than constantly updating a relatively useless object outside of the beginning and end of the scene. But if this method will create garbage then I think will just keep the game object on and enable/disable recast targeting.


Thank you for your feedback, yes I do have an eventsystem in the scene. But the problem is that the fading panel blacks all interactions. I'll do some more tests today to see the exact problem.
And I will definitely check the asset store eventually, but I want to know why things are the way they are rather than get the easy route first, and then check what is there in the store.
You do have an error in your code. You do not reset the fader after you Instantiate the fading in LoadNextLevel
 

ASIS

Member
You do have an error in your code. You do not reset the fader after you Instantiate the fading in LoadNextLevel
The problem with the current code is that it does not even instantiate at Start() let alone LoadNextLevel. There is something going on but I'm going through all the solutions here one by one and ill get back to you all.

And yes I will reset the fader in LoadNextLevel, see how that changes things.
 

LordRaptor

Member
Wondering if I'm doing things the right way or not... any modellers / texture artists have some insight?

I want to have a mesh with its 'regular' textures and base colours on one UV, but I also want to have a 'face' texture with transparency with multiple 'face' details on, so that I can do things like change expressions realtime by changing the UV coords of the face, rather than have multiple faces baked into the standard texture, and have to change the entire texture (which seems wasteful)

uhPfmb3.png


I've done this by having 2 seperate materials, one for the 'entire' mesh, and one for just the face at a higher texel resolution - I literally did this by just duplicating the face mesh and mapping it seperately, with a slight offset to avoid Z-fighting... it just feels like I'm doing something wrong having to duplicate and offset, when what I really want to do is effectively apply a decal to the existing mesh in its existing location, and tell the engine always draw that decal above the base texture

Is there a way I can use the same mesh rather than duplicating it as I did and just telling Unity and / or Blender to apply a 'decal' there over the existing mesh? Do I really need 2 materials to do this?
 
Is there a way I can use the same mesh rather than duplicating it as I did and just telling Unity and / or Blender to apply a 'decal' there over the existing mesh? Do I really need 2 materials to do this?

Both are valid techniques, the one you're using right now is just an older one that came into use before custom shaders became commonplace. If you look at much older games like GameCube and N64 games they used it a lot to add eyes and mouths to characters - zooming in very closely you can see the eyes floating above the skin.

However, using a custom shader you can overlay a texture over another without duplicating the mesh. You just designate both textures to use separate UV layers. I don't use Unity so I don't know if this is possible in that, but in UE4 it's simply a matter of plugging both textures into a Lerp node in a material. You'd need an alpha texture that would tell the shader how to mix the two textures together (black = texture 1, white = texture 2).

Maybe this will help, it came up when I googled "unity lerp material"
http://docs.unity3d.com/ScriptReference/Material.Lerp.html
 
Lots of new things happened with Gunkatana over the last couple of weeks. While our Kickstarter is -unfortunately- not running as good as we hoped, Steam Greenlight was a success&#8230;
And we released a new demo version for Gunkatana last week where we&#8217;ve addressed some of the feedback from comments and youtube let&#8217;s plays (among others, mouse/keyboard controls, UI elements and character visibility).



Have a go, try it out! (Best played in multiplayer, there are bots as well though.)

Currently, Geraldo is hard at work for AI and turning up those quality of life features. Meanwhile I develop new special attacks, effects and enemy characters.
Meet the &#8222;faceless&#8220;, one of our standard mob cannonfodder enemies. They&#8217;re called like that because they start of as a faceless and weaponless base-sprite. This allows me to switch and paletteswap heads and weapons to have some more visual variety on them.

tmpRQck.gif


Also, let me introduce the Crimson Dance, a special attack for one of our main characters, Sin Viper! Look at the gif and marvel at all the crimson :p
This animation, both her movement and the additional&#8230; eh&#8230; gibs were some of the most fun I&#8217;ve had in a while during sprite work!

qtd5POM.gif


Our fantastic storywriter Sarah has opened up a Twitter account for Sin Viper - there, Sin Viper tweets about the conflicts and battles leading up to the game story. You can check out those story nuggets @sin_viper on Twitter.

Now we&#8217;re preparing updates and thinking of measures to take for getting the game better known and better reported on. As a general advice, a lesson learned so to speak, for others who aspire to get a Kickstarter for their game out:

  • Do online-community building leading up to the Kickstarter! (we&#8230; didn&#8217;t put enough focus on that online community aspect. Geraldo does have a lot of local devs from indie events in his circle though.)
  • Be prepared to nightshift a lot if you want to keep the community and social media updates coming!

Unless you&#8217;re already a legendary dev and/or working on a well known franchise, not having a mid-tier community already talking about and sharing your game, Kickstarter will be a harsh experience. Get used to write 100 press emails and only receive 10 answers and 5 articles out of them.
It&#8217;s quite the pressure on the whole team. It&#8217;s still a fun experience, but for example me personally, I am not a very outgoing personality so I&#8217;d rather pixelart 10 hours while listening to some OST instead of going all social media - not that I dislike that aspect, but I always feel a bit out of my comfort zone there.
I would also wish to post more in this thread - already thinking about having a more fix schedule where I just post updates and feedback and in general interact with online communities for 1-2 hours per day aside the actual gamedev work.

So yeah, this actually leads to another aspect when working on getting your game known:

  • You gotta leave your comfort zone.
  • Seriously, if you&#8217;re going indie, you have to learn, listen to advise, prepare yourself. We did prepare... a lot, and did a lot of research, but everytime someone starts a KS, it's a slightly different situation, a new game so to speak.
  • And still: Have fun with your creativity!

So this concludes my update on the development on Gunkatana, for now :) I would post the link to our Kickstarter here, but I am not sure if this would be against the etiquette... Anyway, I am happy to listen to other peoples experiences and advice as well as get more feedback in general!
 
Reposting from SteamGAF, still looking for beta testers. Currently trying to get repo on a bug that I personally cannot get repo on.

Right now just looking for Windows.

Army of Tentacles: New Game+ Benefits Beta Weekend!

AoT_DLC2_Header_zpsbqgkwxwi.jpg


I need SEVEN brave young souls to spend some time making sure the DLC to the Official Cthulhu Fucking Simulator(tm) works good.

200_s.gif


If you would like to volunteer as tribute, PM me with your email, Steam Name, and OS and I will set you up with a link to the DLC. If you own the game on Steam already, this is going to be a non-Steam version just to make sure there are no mistake uploads (LIKE LAST TIME LOL).
 
Looks very striking visually, I especially like the text. Also as a Mancunian myself I very much approve of this stage :)

Haha, thanks! The game actually does a check of your IP and sets the festivals location to the nearest major city and country - I just happen to be in Manc too! That said, the inspiration for this level came from going to gigs at Manchester Cathedral and Albert Hall so there is a direct influence there :D
 

octopiggy

Member
My first #screenshotsaturday!


Posting here seems to have given me the boost I needed. I've probably been more productive in the last 5 days than I have in the whole of the rest of 2016.

Progress has been predictably slow and I don't have a lot to show visually but I have:
- Added some debug functionality that should save me some time later on.
- Tweaked the logo. It's not final but I'm really happy with how it's turned out.
- Started trying to make the game a bit more visually appealing. I changed the look of the cells and the number font although I think they still need some work and the cells probably need to be bigger (which will involve some re-coding).

I hope this level of work can continue and I have the next 3 days off to make more progress. I'm really excited to see how far I can take this project!
 

correojon

Member
Not a screenshot but well...I´ve spent the last weeks learning more about pixel art techniques and have decided to apply an overhaul to all background elements. The clouds for example have gone from looking like the top image to the bottom one:
TGaRh8G.png


It may not be evident in this image, but now they also have some nice AA to make them rounder. They also have alpha blending in the AA border, so they mesh really well over moving backgrounds :)

The resizable platforms have also experienced major changes (left original, right new version):
RQFg4ir.png


Regarding the level editor there have been many advances, the main one being the level explorer menu:
fZAo3Z0.png

When saving a level the editor will take a screenshot so you can easily locate it in the level explorer.

And finally. allow me to introduce the first enemy: Happy Mask!
7qKpNcC.png

Happy Mask is a low level treacherous demon. It wears a mask on it´s back and advances backwards towards it´s victims, hiding his true intentions until it´s too late to escape.
 

JulianImp

Member
Wondering if I'm doing things the right way or not... any modellers / texture artists have some insight?


I want to have a mesh with its 'regular' textures and base colours on one UV, but I also want to have a 'face' texture with transparency with multiple 'face' details on, so that I can do things like change expressions realtime by changing the UV coords of the face, rather than have multiple faces baked into the standard texture, and have to change the entire texture (which seems wasteful)

uhPfmb3.png


I've done this by having 2 seperate materials, one for the 'entire' mesh, and one for just the face at a higher texel resolution - I literally did this by just duplicating the face mesh and mapping it seperately, with a slight offset to avoid Z-fighting... it just feels like I'm doing something wrong having to duplicate and offset, when what I really want to do is effectively apply a decal to the existing mesh in its existing location, and tell the engine always draw that decal above the base texture

Is there a way I can use the same mesh rather than duplicating it as I did and just telling Unity and / or Blender to apply a 'decal' there over the existing mesh? Do I really need 2 materials to do this?

Two separate textures mean two materials, which mean two draw calls, and there's no getting out of that AFAIK if you want to do things that way.

Basically, I think you've got to choose between more materials and draw calls or increased texture space, and I'd suggest that you go for wholesale texture swaps since the way you're handling your face "decal" means you'd be using a transparent shader, and those are pretty expensive (on mobile, at the very least), on top of resulting in all sorts of sorting errors if you don't handle things just right with your materials and shaders.
 
Status
Not open for further replies.
Top Bottom