I have, actually.
At the time, I didn't have much to show for gameplay (it was a character moving around and debug logs getting printed for "weapon firing" - it might not sound like much, but there's a lot more netcode behind it than you'd think)
Basically, this is what I had to show.
[url]http://www.indiedb.com/games/orbital-assault/videos/server-authoritative-movement[/url]
[url]http://www.indiedb.com/games/orbital-assault/videos/weapon-system-demo[/url]
Yeah, not much to look at. Garry told me to completely ignore artists, level designers, and everybody else and just prototype the crap out of the game.
Naturally since the application was sent I managed to acquire some team members. That said, everybody's been busy with things related to creating an early public graphics demo for the game, and I've been building this prototype on the side independently.
Since I applied, things have progressed a lot farther. There's a just about full-blown TDM mode, there's an assault rifle and pistol, I'm working on grenades right now, etc. It's almost a fully playable game.
So did he accepted your application and you were working from home or something like that?
Nope, hasn't accepted (yet?? hard to tell).
That's what his reply was - that it was too early to tell from my prototype, and to continue full steam ahead on the prototype ignoring everything else.
[QUOTE=KillaMaaki;45631494]Nope, hasn't accepted (yet?? hard to tell).
That's what his reply was - that it was too early to tell from my prototype, and to continue full steam ahead on the prototype ignoring everything else.[/QUOTE]
Now that I read it again it makes sense.
HandsomeMatt : reason why I asked him if he got accepted was because on FacePunch Studio it says "We aren’t going to tell you what to do. You’ll probably just slip into doing something.
If you’re an artist then people might ask for your help on their project. You might see something that you think could be improved, and choose to improve it.
If you’re a programmer people might ask you to help on their project. You might want to join an existing project, or you might want to start your own.". So I thought he was working on his project.
[QUOTE=BoowmanTech;45632020]So I thought he was working on his project.[/QUOTE]
Which is, no doubt, what I would really love to do :3
Too much talks about nothing. Best way to do something - DO IT. If you are want to work on the Facepunch Studios then the worst thing you can do is talking about it.
NOW, let we talk about Unity3d?
[editline]8th August 2014[/editline]
Today was working on "bloody" features for my game:
[url]http://goo.gl/XT5ma4[/url] (ton of Errors in console -> missed sprites in jump (i used some kind of blend-tree for animation of jump )
[url]http://goo.gl/iZqVg3[/url]
[url]http://goo.gl/1suSVU[/url]
[url]http://goo.gl/0vroUv[/url]
[url]http://goo.gl/t6NiN5[/url]
WEEEEE!
[video=youtube;gWgtZ14NiJ8]http://www.youtube.com/watch?v=gWgtZ14NiJ8[/video]
I think I may have put explosion force just a [I]bit[/I] too high.
Okay, lol. Procedural generation is definitely not easy. So far I have managed to make a hollow box that scales to a user defined size. :v:
OK, new video
[video=youtube;tBCL8GCDO2M]http://www.youtube.com/watch?v=tBCL8GCDO2M[/video]
- Shields tweaked. Now they take much longer before they start recharging. This makes the pistol actually effective at killing someone, as you have enough time to take down their shields, reload, and then kill them.
- Grenades are fully functional, and no longer blast you into near-orbit :v:
What are using for networking Maaki?
Looking good though!
I'm using Bolt.
Thanks :)
[QUOTE=KillaMaaki;45633472]OK, new video
[video=youtube;tBCL8GCDO2M]http://www.youtube.com/watch?v=tBCL8GCDO2M[/video]
- Shields tweaked. Now they take much longer before they start recharging. This makes the pistol actually effective at killing someone, as you have enough time to take down their shields, reload, and then kill them.
- Grenades are fully functional, and no longer blast you into near-orbit :v:[/QUOTE]
[URL="http://docs.unity3d.com/ScriptReference/Screen-lockCursor.html"]Screen.lockCursor[/URL]
Is that for the same game as that sci-fi hallway demo you posted earlier? Looking pretty cool.
Yeah. The character controller code evolved from that earlier demo, but it's changed a lot since then.
On the one hand, I refactored it to be a lot closer to the actual Quake 3 source code (I pretty much borrowed the exact acceleration and friction functions and translated those to C#). I also had to tweak the hell out of the code in order to get it working properly in multiplayer mode without desyncs and stuttering.
[img_thumb]https://dl.dropboxusercontent.com/u/107588088/air_purifier.png[/img_thumb]
Meet the air purifier. Seeing as the atmosphere under the dome is pretty much non-existant, you'll be needing these things to even start fixing the environment. When everything's working properly, they spew out oxygen like a thing that spews out oxygen (who needs trees?). They're spread all around the map, but unfortunately are all broken as hell, so [i]you've[/i] got to fix them, mr or mrs engineer. Unless you like getting brain damage due to oxygen deprivation, of course.
The way I've organised my components mean that I can set up stuff like this pretty damn easily now (logic gates, buttons, animation switches etc), with some small additional scripts for specific objects. Slowly level design is getting easier (although I have to make models for all the buildings right now, which I might switch to a modular system because this shit is getting tiresome).
[QUOTE=KillaMaaki;45633823]Yeah. The character controller code evolved from that earlier demo, but it's changed a lot since then.
On the one hand, I refactored it to be a lot closer to the actual Quake 3 source code (I pretty much borrowed the exact acceleration and friction functions and translated those to C#). I also had to tweak the hell out of the code in order to get it working properly in multiplayer mode without desyncs and stuttering.[/QUOTE]
You're doing way better than I've ever done with multiplayer, congrats!
[QUOTE=Jcorp;45634579]
You're doing way better than I've ever done with multiplayer, congrats![/QUOTE]
Thank you :)
I've implemented this stuff before, as a chapter for a book I wrote. On the one hand, it's pretty nice to have a plugin that handles everything for me for a change. On the other hand, it can make for some slightly frustrating debugging experiences, as often I don't quite know what's going on under the hood or whether something is my fault or a bug in Bolt.
I know most people hate my question but I just can't figure this out.
I want to spawn the player at the same position as the checkpoint object.(It does sound easy and it is if the object would be in the scene from the beginning)
The problem is that I am instantiating the checkpoint object when I click a button and it spawns as a clone as well.
Anyway I've been trying to spawn the player when he dies at the same position as the checkpoint but couldn't figure it out how to do it. I would provide some code but not sure what you would need.
Well, you know the position of the checkpoint right? You can just call Instantiate and pass that position.
[editline]8th August 2014[/editline]
In case you want more details, here's an overview of how I'd do it:
1.) I'd have a GameManager script, which acts like a singleton and is responsible for keeping track of the game.
2.) This script would have a function for spawning the player, which it would do by spawning the player from a prefab (at, say, the start of the level).
3.) When the player dies, it tells the GameManager that it died, and the GameManager in turn re-instantiates the player prefab at the last checkpoint.
[QUOTE=KillaMaaki;45634844]Well, you know the position of the checkpoint right? You can just call Instantiate and pass that position.[/QUOTE]
I did tried that but the checkpoint changes position every time I click the button.
Anyway I did find a solution which is -> [code]FindObjectWithTag[/code] This worked perfectly but what I did tried to do is store it into a variable like this and when I was using checkPoints.transform.position I was getting "NullReferenceException: Object reference not set ...".
When I was doing everything worked perfectly.[code]GameObject.FindGameObjectWithTag("CheckPoint").transform.position[/code]
[code]
private GameObject checkPoints = GameObject.FindGameObjectWithTag("CheckPoint");
[/code]
Could it be the type I used?
[editline]9th August 2014[/editline]
It's like 2am so can't think straight, I do want to clean the PlayerController and keep the animations and player spawn in a different file or in the GameManager but I am too tired to do it now.
[QUOTE=BoowmanTech;45634906]I did tried that but the checkpoint changes position every time I click the button.
Anyway I did find a solution which is -> [code]FindObjectWithTag[/code] This worked perfectly but what I did tried to do is store it into a variable like this and when I was using checkPoints.transform.position I was getting "NullReferenceException: Object reference not set ...".
When I was doing everything worked perfectly.[code]GameObject.FindGameObjectWithTag("CheckPoint").transform.position[/code]
[code]
private GameObject checkPoints = GameObject.FindGameObjectWithTag("CheckPoint");
[/code]
Could it be the type I used?
[editline]9th August 2014[/editline]
It's like 2am so can't think straight, I do want to clean the PlayerController and keep the animations and player spawn in a different file or in the GameManager but I am too tired to do it now.[/QUOTE]
Quick question, where are you using this code? Start/Awake? I've had some issues in the past with similar things, as gameobjects are not initialised at the same time. A quick workaround would be to put something in the update function checking if the variable is null, and if so do the tag search (remembering to make any statement using the variable dependant on it not being null). This could at least narrow down the options of where the problem lies.
[QUOTE=Jcorp;45635091]Quick question, where are you using this code? Start/Awake? I've had some issues in the past with similar things, as gameobjects are not initialised at the same time. A quick workaround would be to put something in the update function checking if the variable is null, and if so do the tag search (remembering to make any statement using the variable dependant on it not being null). This could at least narrow down the options of where the problem lies.[/QUOTE]
I am giving it the value in start.
For testing I did
[code]
//Only dead was in showing in the console
if (checkPointObject == null)
Debug.Log("DEAD");
if (checkPointObject != null)
Debug.Log("ALIVE");
//Dead at first run time and when spawning the checkpoint alive was showing up.
if (GameObject.FindGameObjectWithTag("CheckPoint") == null)
Debug.Log("DEAD");
if (GameObject.FindGameObjectWithTag("CheckPoint") != null)
Debug.Log("ALIVE");
[/code]
[QUOTE=BoowmanTech;45635134]I am giving it the value in start.
For testing I did
[code]
//Only dead was in showing in the console
if (checkPointObject == null)
Debug.Log("DEAD");
if (checkPointObject != null)
Debug.Log("ALIVE");
//Dead at first run time and when spawning the checkpoint alive was showing up.
if (GameObject.FindGameObjectWithTag("CheckPoint") == null)
Debug.Log("DEAD");
if (GameObject.FindGameObjectWithTag("CheckPoint") != null)
Debug.Log("ALIVE");
[/code][/QUOTE]
Did you double check that you applied the checkpoint tag to the checkpoint game object?
Is the checkpoint already in the scene or is it instantiated at run time?
Are you instantiating the checkpoint at runtime? If so, what's the code that does this, and is it in Awake or Start?
[QUOTE=BoowmanTech;45635134]I am giving it the value in start.
For testing I did
[code]
//Only dead was in showing in the console
if (checkPointObject == null)
Debug.Log("DEAD");
if (checkPointObject != null)
Debug.Log("ALIVE");
//Dead at first run time and when spawning the checkpoint alive was showing up.
if (GameObject.FindGameObjectWithTag("CheckPoint") == null)
Debug.Log("DEAD");
if (GameObject.FindGameObjectWithTag("CheckPoint") != null)
Debug.Log("ALIVE");
[/code][/QUOTE]
Prepare for a tremendous lag there.
do something like this
[CODE]public Vector3 LastCheckPoint;
public bool isDead = false;
private Transform self;
void Start()
{
self = this.gameObject.transform; // Reference this player as "self" so that we don't have to type the same this.gameObject.transform over again.
LastCheckPoint = self.position; // so that the checkpoint doesn't become null
}
void Update()
{
if ( Input.GetButtonDown("Fire") )
{
LastCheckPoint = self.position;
}
if( isDead == true )
{
self.position = LastCheckPoint; // Set this game object to your last checkpoint you saved.
}
}[/CODE]
P.s. I have not checked for syntax errors ( I just literally wrote this on facepunch ), but none the less, it's a code that can get you started.
[QUOTE=Thlis;45635361]Did you double check that you applied the checkpoint tag to the checkpoint game object?
Is the checkpoint already in the scene or is it instantiated at run time?[/QUOTE]
Its instantiated when the button is cliked.
Also is tagged as checkpoint.
[editline]9th August 2014[/editline]
[QUOTE=Skibur;45635837]Prepare for a tremendous lag there.
do something like this
[CODE]public Vector3 LastCheckPoint;
public bool isDead = false;
private Transform self;
void Start()
{
self = this.gameObject.transform; // Reference this player as "self" so that we don't have to type the same this.gameObject.transform over again.
LastCheckPoint = self.position; // so that the checkpoint doesn't become null
}
void Update()
{
if ( Input.GetButtonDown("Fire") )
{
LastCheckPoint = self.position;
}
if( isDead == true )
{
self.position = LastCheckPoint; // Set this game object to your last checkpoint you saved.
}
}[/CODE]
P.s. I have not checked for syntax errors ( I just literally wrote this on facepunch ), but none the less, it's a code that can get you started.[/QUOTE]
Well the code that I supplied it's only for testing to see if its working with the variable , basically I am not going to use that for anything.
[editline]9th August 2014[/editline]
The problem with your code would be that the LastCheckPoint still can't be assigned since it doesn't exist until the player presses the button to spawn it.
So if I am doing this the variable has the value and it's working.
[code]
void Update ()
{
if(GameObject.FindGameObjectWithTag("CheckPoint") != null)
checkPointObject = GameObject.FindGameObjectWithTag("CheckPoint");
}
[/code]
[QUOTE=BoowmanTech;45637551]Its instantiated when the button is cliked.
Also is tagged as checkpoint.[/QUOTE]
Well you still have a problem, the check point will remain dead until you click something. If you want your check point to be active, you need to have it spawn at void Start(), rather than waiting for the player to spawn the check point.
I had the code design to keep a vector3 point of where you were last located for a checkpoint, rather than spawning another gameobject in the scene.
Lately I've been tempted to work in Unity so I did a little more work on my [URL="https://github.com/Torrunt/OpenAW3D"]OpenAW3D[/URL] project. I textured the bases, cities and tanks and made them change materials based on what team they are on. Looks much nicer now than before when they were all just plain colours.
[vid]https://dl.dropboxusercontent.com/u/7113767/Videos/OpenAW3D_textured.webm[/vid]
My last semester of Uni also started recently, I only have one unit left and I get to use Unity for it which is pretty cool.
What are you guys using to record/encode your Unity games with? I've been trying to use OBS but the videos never make it passed YouTubes processing. I've tried various recording settings and different encoders to no avail.
I'm using Bandicam. Could never get OBS to work.
I use fraps, for no reason other than it's on my computer (paid version OFC)
[QUOTE=foszor;45641197]What are you guys using to record/encode your Unity games with? I've been trying to use OBS but the videos never make it passed YouTubes processing. I've tried various recording settings and different encoders to no avail.[/QUOTE]
OBS is fine, YouTube is just having some problems processing videos at the moment, tons of people I'm subscribed to have had issues with it as well. Wait it out for a bit and it'll probably start working again soon!
Sorry, you need to Log In to post a reply to this thread.