Looking for team members!

Hello fellow reader,

My name is Stephen Gibson, I currently reside in my bonnie country of Scotland and I am looking for a couple of team members to come join me in my adventures. I regard myself as an “indie developer” and I am in it for 2 things, to create something original and earn money from it. Some might hate the latter but face it, if you can make money from something you thoroughly enjoy doing you better damn well try.

I shall get the obvious questions out of the way before anyone bothers to ask them.

How much experience do you have?

I have around 9-10 month of programming experience, everything I have learned myself by reading or following tutorials. My knowledge will only grow over the coming months as I finally start doing my HND Games Development course.

What are you experienced in?

Most of my experience comes from using the LibGDX Library of which I have a firm understanding, besides a few things (mostly anything 3D) I can use the API well enough to bang out a working prototype in a decent time frame.

Of course I am experienced in Java itself, as experienced as I can be with under a year of usage. I feel comfortable with many API’s within the Java framework, as well as the syntax itself.

Why should I join your team? What is in it for me?

This is of course the biggest question that people ask themselves. Lets get some things out there first, you are not joining my team, you are becoming apart of a team that is run by the members within. Once you join, it is no longer MY team, it is OUR team.

You do not work for me, you work with me.

That is a concept I believe in and it is the key to a productive team, you give people freedom and they flourish. This is essential in game development. Everyone must give 110%, everyone will be heard.

Probably the other question people will be asking is, if I join do I get paid anything.

For those people, there is the f**king door >>>

Only when we have a solid foundation and a productive team do we even talk about commercial games that can earn money, I am not having my name tarnished for a quick buck, I won’t have you doing the same.

As part of this team we will not only code together, we can interact on Skype, play games, help each other out with problems and in general, become friends.

Hell if you live within 50 miles of me I will even COME TO YOU and we can go have a beer, as long as it is proper Ale. None of this bottle crap like Budwieser!

Oh Stephen, this all sounds dandy and all but were do you come in?

I will be taking lead of projects, everything goes through me and for a good reason. I have 5+ years experience in team leadership, ranging from games (clans/guilds/whatever), real life jobs (Cleaning supervisor, team leader), student representative (I speak for over 100 students and present their views to the “man”).

Does this counteract what I said earlier? That we work as a team and no one is really boss? Well yes and no…

Without direction and harsh decisions, things will go all pear shaped. The difference is, if you have an idea you can bring it forward, I encourage it. If I think it is shit I will tell you it’s shit and why I think that, votes will be called and we shall take from that idea the things we like.

You will have a life, we all have hobbies, jobs, wives and/or children…it comes first and you will have peace of mind knowing that your position within the team will not be affected.

What are you currently working on?

I currently have 2 projects that I spend the majority of my time on, one is unfortunately private as this is to boost my position within the HND class in order to prove that I can do things others can’t, to ensure I’m 100% guaranteed a place. Currently as it stands, I could still get told no.

My other projects code is currently private but it has been announced here on the forums. It is called Code 15 and I have not updated the thread in some time.

What exactly is Code 15?:

It is a top down action shooter that uses LibGDX and the Box2D Physics Engine. My idea for the plot and story line is sort of undecided but I have a rough idea.

What have I done so far :

So far I have a level loader sorted, working A* path finding algorithm and a AI state machine. The player is implemented to a degree and I have coded in several test weapons. The foundation is there and it can rapidly be expanded.

What is your plan of action? :

Pre-Code :

  1. Get to know each other, my favourite colour is Green :).
  2. Review the current code together, consider necessary changes but no major refactoring.

Post-Code :

  1. I want a Level Editor re-created in a different way, this will be the first thing to be done as it makes spawning items and such easier for future testing, the Level editor I have in mind will have real time editing and spawning. The current level loader uses images, this is fine but is also annoying

  2. The player needs to be properly coded and implemented, he needs a proper inventory and ways to switch between weapons

  3. Basic enemies need to be implemented, currently I have 1 static enemy that can not move. It is basically a sentry turret

  4. Expand on the state machine for enemies, currently we have 3 states coded, Idle, Chase and Attack. More will be added such as “flee”

  5. Brainstorm a whole bunch of badass items/guns/explosives to be added . Then fix/balance them, remove ones that don’t fit etc etc

  6. Take time out from coding and brainstorm together story/plots, player name history and such. Get a grasp of were we want to take our core game foundation

  7. Do more later

Now that all that stuff is out the way, we can talk about how you can get in on this. I have a few standards that I would like to be met and for a good reason.

This is a list of essentials you will have as a person:

  • You MUST be over 18
  • Your time-zone must not differentiate any more than 3 hours from each other
  • You will be disciplined with time keeping
  • Fluent English, accents are another matter as I have a fairly strong one myself!
  • Humour is a must, if your sensitive then don’t even bother, this brings me to my next point…
  • You need to have a stable mind, I do not want some bi-polar emotional wreck coming in and pishing all over someone else’s day

This is a list of things you will be able to do as a team member:

  • Eclipse - I currently use Android ADT but anything is fine as long as our versions match
  • Skype with an acceptable microphone
  • Saros Installed - If not, I can talk you through it
  • Bitbucket - Understand basic Git commands to push commits
  • At least free for 6 hours over the course of a week, minimum

Current Free Positions:

  • Code Designer and Programmer

Future Positions:

  • Level Designer
  • Enemy AI programmer and scripter

Interested? PM me or add me on Skype (Gibbo3771).

Questions? Ask away.

Are you sure you are ready to manage something like this?
Keep in mind that we have many of these posts in here, even though yours sounds a lot more professional.

Yes I do, I have a solid theme in mind for this top down shooter.

This will not be the only project we will work on, we will do small side projects to keep the mind fresh, jams so to say. Arcade games and what not. Nothing huge.

If I feel the people that are putting in for the positions are not up to it and I am not satisfied with the outcome, I shall continue to work on the project myself.

At first that I read the post I thought that someone else, not you, will be team leader with 5 years programming experience. I doubt anyone who has coded longer than you would be willing to join your team, or act as if you’re their leader. I mean, anyone who has coded more than 1 year would already be better than you and therefore he should be the leader.

It doesn’t matter if you have been president of something, you haven’t been leader of programming team, therefore you have same experience as everyone else who hasn’t been on a programming team.

Look, someone who likes to film himself putting snot on his webcam must be the perfect leader ;D

No kidding though, this appears like you are asking a lot (doing what you say, working with your code, being “disciplined” with time keeping, …) and giving very little (in terms of experience, where is a demo/code?, I’m also not so sure about your leadership skills - you don’t want “some bi-polar emotional wreck”? - very subtle).

If you want this to work I suggest you change your approach a bit, e.g. show something cool people may be willing to spend the most valuable thing they have on (a.k.a. time) and dont expect that people will be willing to accept you making decisions over how they spend their time, especially from some one with zero experience as lead developer (let alone lead game dev).

Lol if that was me, it would be a lot worse. Random GIF I pulled :D.

I have a very, different sense of humour.

It might appear that I am asking a lot, however look at it like this.

I need someone that is going to be on and be available to chat/code when they say they are, rather than “yeah, i’ll be on tomorrow” over and over, which is a problem I have with people in my class. Real life comes first I get that, I won’t hold that against you but not coming because you simply can’t be arsed is rather annoying, to be honest I would rather you just told me that, maybe you are tired from work. Then we can adjust deadlines to suit your current situation.

My leadership skills may not be related to programming directly but I am able to keep things going at a given pace, with people assigned tasks that they will enjoy. You won’t be left with nothing/something boring to do, if you think you will not enjoy what is to be done, we can push it onto a To-Do list unless it is mandatory.

Giving very little? I can only give what your willing to take. If you want to be a part of a productive, fun and friendly team then you will get out of it. If you come in with a crap attitude then you will get very little.

I have code, I have so far a playable demo, you can find it on the Code 15 thread which I linked. It does not have much and is not polished but the foundation is underneath. I have done what I can over the course of the past 2 months, while fitting it into my life.

Yeah my statement about the whole Bi-Polar thing might seem harsh, in a nicer term I do not need someone who is in the middle of a divorce, is in the progress of being kicked out their house…in general just going through a bad time, these are emotional times and it would not be wise to take on such people. If this happened after you joined the team then that is a totally different matter.

I will include some screen shots, code snippets and a demo in the OP. Thank you for the advice.

I will not be making decisions on how people spend their time, without deadlines nothing will get done. Deadlines will be appropriate to the time you are able to put in, if you have a family and a job then of course things will take longer.

There will be plenty to do, lets take the first thing I recommend gets done.

A level editor.

Together we will plan it, design it and pick a graphic style and then code the basic foundation and add to it. This can be done in a 1000+ different ways, everyone will be able to add to it and express their ideas, everything will be wrote down and considered.

The only real thing I will be doing as a lead developer is ensuring deadlines arew realistic and kept in sync, this is why it will go through me, there is not point in having an over thought feature that can take 2-3 month to implement properly, when we can take snippets from it and implement something much simpler in the space of 4 weeks or so, then expand on it later. This just means that we will not be stuck on something for months on ends, with very little progress and we all get bored and go “f**k this” and then the divide happens.

That is something that can easily be considered, if I get a team that is willing to work together. If someone wants to join and they have 5 years experience, they feel as if they will make a better leader then there is absolutely no harm in letting them.

I want a team that is going to work together and keep to deadlines as much as possible.

I appreciate every ones input and time they took to read my post/proposal. If you have something overly negative to say you can freely do so, if you would rather not de-rail the thread with it you can PM me.

It is not true that a good team leader must also be more skilled than his peers. I work with JumpButtonStudio (jumpbuttonstudio.com) and the team manager (Nick) has very little experience programming, and some of the developers that work below him are excelent programmers/artists. They (and I) are perfectly happy working with him as manager.

The F**k is up with the " MUST be over 18" shit though? Are all people under 18 less capable programmers? All less responsible? Dont put all people under a certain age into a single inadequate group please. :frowning:

No not at all, if anything people that are under 18 and been programming since a young age are probably some of the best at it.

So why over 18? Content rating. I just don’t want any issues with young kids going away and saying or doing something they shouldn’t. We could be working on a game that would technically be rated 18, never know.

If I have offended you sorry :frowning: if you are interested in becoming part of the team and well, your under 18. PM or add me on Skype, 5 minutes chatting to you will pretty much tell it all. I am only 22 but I have the humour of someone of my age but the attitude of an old man :smiley:

[quote]So why over 18? Content rating. I just don’t want any issues with young kids going away and saying or doing something they shouldn’t. We could be working on a game that would technically be rated 18, never know.
[/quote]
This Applies on playing … but making?! If so, this would be the worst rethought law ever!

You shoukd just remove the “MUST be 18” thing, its silly. To judge someone’s ability to handle content based on their age is unreasonable. Plenty of people below the age of 18 can handle adult concepts, lets be realistic :wink:

I would remove the age thing mostly because, like you said, within the first 5 minutes of speaking with someone you can pretty much decide for yourself if they’re mature enough to be a part of your team.

And content rating is doesnt even apply here, anyone can create and view whatever they want. And furthermore, the rating guidlines placed on videogames are not punishable by law, they are normally just company policy.

Ill stop boycotting your thread now haha

There are murky and complex reasons for excluding minors from projects and I think you should respect his decision to do so.

Cas :slight_smile:

I cannot join his group anyway (although it sounds like a great chance to work on a good-looking game), but these reasons evade me. Its an informal team, if there was a contract to sign it would make more sense.

Obviously his decisions dont really depend on what I think, or anything I say, Im not trying to be annoying or “hate on” this thread. I really am not offended, its nothing to get offended about really. But respect implies a “deep admiration”, and I cant say I respect this desicion, it seems like a requirment without any merit really.

Unless there is money involved then there will be nothing of the sort.

The code will belong to the team, no individual member. If some one feels the need to steal then they will be removed from the team. Anything they have wrote will technically belong to them in some sense but this will be dealt with.

Once Code 15 is far along development, it will be released as a free open source game.

If we produced commercial games, there will be a proper contract wrote up, every one will be treated fairly.

For now there is no reason to over complicate things and introduced legal ties.

I need to get to bed Lol.

As said before, thanks for reading!

Oh and for shits and giggles, this could be said about a lot of things:

Blueprints for a rape machine.
- Avery Bullock

Small update:

I have had 1 very down to earth and positive individual contact me about joining the team. We are discussing the opportunity and the team at the weekend!

For now, those who might be a little concerned about the lack of proof that a project exists, here is a snippet or 2:

A small snippet from my enemy “Attack State”, with plenty of room for expansion and currently I have been a little biased and added code that applies mainly to the enemy I am testing! A nice big sentry turret :smiley:



/*
		 * If the weapon for this NPC is null, it is unarmed and will flee at
		 * the first sight of danger
		 */
		if (npc.getWeapon() == null) {
			npc.getStateMachine().changeState(FleeState.instance());
		}
		/*
		 * Check if the NPC's target is the player, generally it should be but
		 * other NPC's might be able to target other NPC's at one point
		 */
		if (npc.getTarget() instanceof Player) {
			/* Check if the NPC's weapon type is a gun */
			if (npc.getWeapon() instanceof Gun) {
				Gun gun = (Gun) npc.getWeapon();
				Player player = (Player) npc.getTarget();
				/*
				 * If the player is out of range of the NPC, take course of
				 * action
				 */
				if (npc.getPosition().dst(player.getPosition()) > npc
						.getAttackRange()) {
					/* If the NPC can move, chase the target */
					if (npc.getNPCType() == NPCType.DYNAMIC) {
						npc.getStateMachine()
								.changeState(ChaseState.instance());
						/* If it cant move, just return to prev state/idle */
					} else {

						if (npc.getStateMachine().getPrevState() != null) {
							npc.getStateMachine().revertPrevious();
						} else {
							npc.getStateMachine().changeState(
									npc.getStateMachine().getDefaultState());
						}
					}

				}
				/* Set the angle of the NPC to face the target */
				float angle = MathUtils.atan2(
						player.getPosition().y - npc.getPosition().y,
						player.getPosition().x - npc.getPosition().x);
				
				/* Check if we moved to negative PI */
				if(lastAngle < -3.0f && angle > 3.0){
					npc.setAngle((float) (npc.getAngle() + Math.PI * 2));
				}else if(lastAngle > 3.0f && angle < -3.0f){
					npc.setAngle((float) (npc.getAngle() - Math.PI * 2));
				}
				
				lastAngle = angle;
				/* Blend the 2 angles */
				npc.setAngle(0.05f * angle + npc.getAngle() * (1.0f - 0.05f));
				
				/* If the gun is not reloading and has 0 bullets left, reload */
				if ((!gun.isReloading()) && gun.getClipCurr() == 0)
					gun.reload();
				/* Fire! */
				gun.fire(false, npc.getPosition(), npc.getAngle());
				/* TODO Remove? Stop the NPC during attack, not ideal will fix later */
				npc.getVelocity().set(0, 0);

As you can see it has a fair bit of OO, any NPC can be passed. Any state can be set and if you look at the top of the snipper, you will see that I have a flee state as well!

Here is a little snippet from the chase state that uses a basic A* implementation that I wrote myself reading some guides and what not, an enemy goes into this state when its target has moved out of range and we move towards its last known location. A little inefficient at the moment, I plan to change this so that each enemy casts rays for his vision, so they can chase enemies in sight.

		/*
		 * if the target is null, we have nothing to chase, lets just go idle
		 * for now
		 */
		if (npc.getTarget() == null) {
			npc.getStateMachine().changeState(IdleState.instance());
			return;
		}
		Node node = npc.getPath().getWaypoint(nextNode);
		/* Apply velocity to given angle */
		npc.getVelocity().set(
				npc.getSpeed() * MathUtils.cos(npc.getBody().getAngle()),
				npc.getSpeed() * MathUtils.sin(npc.getBody().getAngle()));
		/*
		 * Face the body the correct way, this is a bit fucked, TODO need
		 * seperate aim angle and body angle, will get on this
		 */
		npc.getBody().setTransform(
				npc.getBody().getPosition(),
				MathUtils.atan2(node.getPosition().y
						- npc.getBody().getPosition().y, node.getPosition().x
						- npc.getBody().getPosition().x));
		/*
		 * Check if the position of the body is in the bounds of the nodes
		 * position
		 */
		if (node.getPosition().dst(npc.getBody().getPosition()) < 0.5f) {
			if (npc.getPosition().dst2(npc.getTarget().getPosition()) < npc
					.getAttackRange()) {
				/*
				 * We have managed to get back into range of the target, lets go
				 * idle and let it go from there
				 */
				npc.getStateMachine().changeState(IdleState.instance());
				return;
			}
			/* Check to make sure we don't go out of bounds */
			if (nextNode < npc.getPath().waypoints.size - 1)
				/* We have reached the next node, time to move to the next */
				nextNode++;
		}
		/*
		 * If the body position is within bounds of the last waypoint in the
		 * path, we end the path movement
		 */
		if (npc.getBody().getPosition()
				.dst(npc.getPath().getLastWaypoint().getPosition()) < 0.5f) {
			/* Null the path, important */
			npc.setPath(null);
			/* Idle the NPC */
			npc.getStateMachine().changeState(IdleState.instance());

This is just what I was working on recently, it seemed logical to give NPC’s a way to manage themself before implementing a half assed AI.

Here is pretty much happens when you fire a gun/firearm:

public void fire(boolean friendly, Vector2 position, float angle) {
		/* Check if the can gun fire and that we have ammo left */
		if ((!isReloading) && (canFire && clipCurr > 0)) {
			for (int count = 0; count < (clipCurr - bulletCount < 0 ? clipCurr
					: bulletCount); count++) {
				/* Create a new bullet, maybe pre-create these at reload ? */
				Bullet bullet = new Bullet(this, friendly, position, angle,
						MathUtility.secondToNano(1));
				Level.factory.bullets.add(bullet);
				System.out.println(dmg);
			}
			canFire = false;
			lastShot = TimeUtils.nanoTime();
			clipCurr -= bulletCount;
			/* Keep the current clip within a positive scope */
			if (clipCurr < 0) {
				clipCurr = 0;
			}
		}

	}

Might I add that all of the above code is working and usable? Well there, some code for you too look over so you get a rough idea if I am a “bad coder” or an “average” coder.

There is plenty I could improve on but rule #1 seems to be, never refactor working code. Unless it is incredibly inefficient, like my horrid collision handling which does far to much looping!

Thanks for reading :smiley: