The Daily Click ::. Projects ::. The TDC Community Project ::. Forum
 

Project: The TDC Community Project
Project Started: 3rd February, 2009 Last Update: 30th April, 2010
Project Owner: Jon Lambert Project Members: OMC Mkingy Matthew Wiese Neuro
Project Type: Collaboration of Epic Proportions Project Progress:
More Info: http://tdcproject.blogspot.com/


 

Public Forum ::. Programming and Features
 

Posted By Message

Jon Lambert

Administrator
Vaporware Master

Registered
  19/12/2004
Points
  8235

VIP MemberWii OwnerTDC Chat Super UserI am an April FoolSSBB 3265-4741-0937ACCF 3051-1173-8012360 Owner
10th February, 2009

Yay, so now that we have a theme that those who care have no problem with (or are at least okay with) let's get to work on the tangible parts of this game. Excitement!

First, What we are going to do now is decide how we want our engine and such, and we will start by planning out game features. Discussion will be based around two types of features, those being:

In-game features: Things that people playing the game will be experiencing noticeably and directly, such as double jump, health recovery, combo moves, item use, etc.

Engine features: These would be the features in the engine that people may or may not realize are there, or may not even affect the player. This would be things such as how the levels are made (in click or through a level editor), the engine controls (detectors or no, fast loops, special extensions), etc.

Both of these are of primary concern, as whoever decides they want to make the engine (or help make the engine) will need to know just what to program, how to program it, and may even need assistance with programming.

Second, those that want to build the engine or help with programming (which would also include things like the menu, HUD, online, scores, saving, and the like) should give examples of their work and what they could do with their programming experience for this project. That will be in the seperate Programming Audition thread.

Remember that this will be made in click products, and that some people don't have MMF or MMF2. All right, discussion, discussion, discussion! Let's go!

 
Sandwich Time!Whoo!

JoyCheck & KeyCheck Widgets
For easy implementation of customizable joystick and keyboard controls.
http://www.create-games.com/download.asp?id=8364

aphant



Registered
  18/05/2008
Points
  1242
10th February, 2009

In-game:
Having a double jump would be handy, especially if it were acquired rather than standard. It would make for some interesting level design. I like to call it "faux open world" because you can't call a level linear if you have to turn around and go back later.

Engine:
With the game being steampunk, there's going to be quite a bit of steam (and hence water). It'd be cool if the water could make the floor wet and slippery.

Also, with not everyone having MMF2, it'd probably be best if levels were made via a level editor. That way, levels can be shared amongst everyone. I could make a level and share it with someone who has TGF, and they'd be able to make whatever changes to it and send it back.

 

Sketchy

Cornwall UK

Registered
  06/11/2004
Points
  1970

VIP MemberWeekly Picture Me This Round 43 Winner!Weekly Picture Me This Round 47 WinnerPicture Me This Round 49 Winner!
10th February, 2009

Since not everyone has MMF2, I think a level-editor will be required - I suggest making it tile-based (it's just better that way) and capable of loading external resources (tilesets, sprite images, music, sfx etc).

I think the level-editor needs to be as flexible as possible, to enable different people to come up with levels that "feel" different, rather than just having a different tileset and layout.

You need to be able to set general values such gravity and surface friction.
You also need to be able to set specific object settings, for example:

* enemy - hit points, speed, movement pattern/behaviour, attack type, attack damage...
* moving platform - speed, width...
* breakable wall - hit points...
* chest - contents...
* ...etc


If you want to add loads of special moves like double-jump/wall-jump, I guess it's okay. Be aware that this is not only more work for the coder, but it makes level design more difficult too (more likely a player will do something in a way you hadn't anticipated, and don't want them to - and no, that's *not* a good thing). It also dilutes the gameplay. To be honest, I'd like it kept quite simple - the really great platformers don't need to rely on gimmicks like combo attacks and 20 different weapons.

I'm still not sure about the steampunk thing - I just think steampunk implies complicated, wacky inventions, and they're going to be too hard for most people to sprite.
Also, I think it would be more original to use something other than steam power - perhaps lava like someone else suggested, or some other substance (maybe a mysterious substance so widely used that civilisation would collapse without it, but which the player discovers (during the course of the game) has some terrible drawback that no-one's aware of, thus causing a moral dilemma - I'm thinking along the lines of Soylent Green / Slurm here ).

 
n/a

Neuro

Ludologist

Registered
  29/10/2006
Points
  437

Game of the Week WinnerVIP MemberI'm on a BoatPokemon Ball!
10th February, 2009

Double jump, definitely. We could even give it a steam-powered vibe, working by a pressure gauge. You're able to use the double jump multiple times, but each jump reduces the pressure. This would start out taking 100% pressure on the first double jump, and recharge fairly slowly, but could be leveled up/upgraded. Landing on the ground would probably recharge pressure completely - unrealistic, but a better gameplay choice. I can imagine the effects of a steam-powered pressure jump being pretty cool.

Adding onto this, other abilities could use steam/pressure/water related technology, too, so obtaining these would build up to some kind of steampunk power-armor. Not sure what this would mean for different player characters - maybe it would be too complex to have each of their progressions balanced. Maybe with a deep enough upgrade system, multiple 'characters' would come from the choices the player makes.


The environment seems like it's going to be quite dynamic, with moving objects and possibly steam jets etc. so many objects would need to be tied to some kind of basic global physics.


Varied and dynamic enemy AI would be a plus, too, even if it's just following the player and jumping when they need to reach a higher level. Deeper AI could come from having enemies act in swarms, or react defensively when hurt, little touches like that. Combat would definitely be more fun, and possibly different each time. Difficult enemies should have higher intelligence and a range of methods of dealing with player actions, rather than just having a higher damage attack or more health.

The code doesn't have to be that complex, neither do they need advanced pathfinding, but simple actions and reactions would make enemies stand out much more than conventional platformer enemies. The player would have to adapt to enemy behavior, learn certain patterns and be on their toes for changes. Enemies don't have to be brutally aggressive, though, since we're keeping a little more relaxed pace - having this depth to AI would just make battles a little more tactical, and less repetitive.


Also, I second the level editor. In the end, it would seriously reduce development time.

 
n/a

Neuro

Ludologist

Registered
  29/10/2006
Points
  437

Game of the Week WinnerVIP MemberI'm on a BoatPokemon Ball!
10th February, 2009

Sketchy makes a lot of good points (I didn't see it before I posted).

Abilities probably should be limited. It's definitely better to have fewer, but better designed abilities - ones that have depth that can be used throughout the game, not just required for a certain section. Both good and bad examples would be in Zelda games - some items are mixed in with a wide variety of puzzles, used throughout the game, whereas others are really only used in the dungeon you obtain them in...


I don't think the Steampunk style would be too complicated. I was thinking that most objects would be simple mechanisms, and making a crazy contraption would be a case of simply combining these basic objects to look like some advanced machine - at the same time creating interesting platforming puzzles.

I'm not opposed to using some other substance, though. I'm with you on this:
"Also, I think it would be more original to use something other than steam power - perhaps lava like someone else suggested, or some other substance (maybe a mysterious substance so widely used that civilisation would collapse without it, but which the player discovers (during the course of the game) has some terrible drawback that no-one's aware of, thus causing a moral dilemma - I'm thinking along the lines of Soylent Green / Slurm here ). "
Tying the possible basis of the gameplay mechanics with the narrative is an excellent idea.

 
n/a

aphant



Registered
  18/05/2008
Points
  1242
10th February, 2009

"Also, I think it would be more original to use something other than steam power - perhaps lava like someone else suggested, or some other substance (maybe a mysterious substance so widely used that civilisation would collapse without it, but which the player discovers (during the course of the game) has some terrible drawback that no-one's aware of, thus causing a moral dilemma - I'm thinking along the lines of Soylent Green / Slurm here ). "

You can't have steampunk without steam! Otherwise, all you're left with is really crummy music. (I kid, originality is rare these days. Punk music is still crummy though.) We could have our own phlogiston!

"Tying the possible basis of the gameplay mechanics with the narrative is an excellent idea."

It really is.

"If you want to add loads of special moves like double-jump/wall-jump, I guess it's okay. Be aware that this is not only more work for the coder, but it makes level design more difficult too (more likely a player will do something in a way you hadn't anticipated, and don't want them to - and no, that's *not* a good thing). It also dilutes the gameplay. To be honest, I'd like it kept quite simple - the really great platformers don't need to rely on gimmicks like combo attacks and 20 different weapons. "

Simpler is better. Faster to code, too. Whenever I mentioned combo attacks, I thought simple things like Super Smash Bros.: B+up for example. But then that means having to code 4 different specials for each character. An even simpler combo could be: B+jump, B+attack; That's it, just some sort of jumping ability and some sort of special attack. Never thought anything complicated like up+down+down-forward+forward+back+forward+kick. Also, the really great platformers were limited to 48kb.

Level design is only as hard as the lack of planning and testing. One of the problems that I can foresee is making levels work for every character.

 

Matthew Wiese

The Fencer

Registered
  01/02/2009
Points
  149

VIP Member360 Owner
10th February, 2009

Adam, I could make a little editions to the engine i submitted to make an area of ground, slippery. If you want me to, I could.

 
n/a

Matthew Wiese

The Fencer

Registered
  01/02/2009
Points
  149

VIP Member360 Owner
11th February, 2009

I tried, and I can't. XP

 
n/a

MBK



Registered
  07/06/2007
Points
  1578

VIP Member
11th February, 2009

Even Super Mario Bros. 3 had a few special abilities. Temporary Invincibility (Star), Fireball Bouncing Range attack (Flower), Grow Big (Mushroom), Frog Suit, Tanooki Suit (can turn into statue), Racoon Suit (can fly temporarily), Hammer Bros. Suit, that's all alot more coding than how I was thinking really.

Since apparently a level editor instead of simple coding methods will be used to add levels, there won't be a way for everyone to add their own abilities to the roster anyway unless you intend on building the level editor in such a way that it's almost another development tool on its own which really is overdoing things a bit.

Sooo, since a level editor is what's planned, I'd say make a jump attack, ground attack, running attack and forget about the added abilities. I mean, how is anyone going to add the new abilities for their levels with just a level editor?

I'd suggest instead of new abilities, it could just be new clothing/accessories so you wouldn't be looking at the same sprite throughout the entire game, but you'd feel like you are gaining something, even though the clothes don't really do anything. Clothing would be easy enough to change in the level editor since nothing has to be altered but sprites.

So, you fight a Pirate captain boss, you get his eye-patch, hat, and parrot on your shoulder.
Fight a Knight in armor riding a horse, you get his horse and armor.

Beat a caveman, get his club and cave guy outfit, etc.

Really, if you coded it in a certain way, the sprites could be what changes an attack. So new abilities could be easily added in this way.
Lets say you have the weapon be its own object, and the character its own object, and you changed the knife sprite to a longsword sprite, it would have a greater range to hit the enemy. And just think if you added a horse to the character sprite and changed the weapon sprite into a lance, and you had a transitional change animation for the weapon, then the lance could be lowered from being straight up to being straigtforward, and that would be much different than swinging a sword around, yet NO EXTRA CODING is required. That transitional animation for the weapon could be used to do stuff like holstering a gun or sheathing a sword too.

Also, you could have a flag to check if you were using melee or throwing and set what weapon is to be thrown by a value, and then change that value based upon what weapon is used. Then the level creators could make the sprites for their weapon and suit, and also make an example code for how the ranged weapon should move. Finally, they could send the code for said thrown weapon and its sprites to the main coder of the project. Thus it gets added to the game easily, as the only factor changed is the weapon movement. Melee could possibly be done in the same manner if you wanted any melee.


 
Click Me! http://www.create-games.com/project.asp?view=main&id=1444

http://www.mediafire.com/download.php?aoo1dnnlq5i

Blood of the Ancient One, Seen only as Shadow, Faster than Lightning, Fierce as the Greatest Dragon, Nearly Invisible, Floating in a Dream, Entered through the Demon Door, Destroyer of Evil in a Realm with a Red Sky Scarred, Who could I be ?

aphant



Registered
  18/05/2008
Points
  1242
11th February, 2009

"Since apparently a level editor instead of simple coding methods will be used to add levels, there won't be a way for everyone to add their own abilities to the roster anyway unless you intend on building the level editor in such a way that it's almost another development tool on its own which really is overdoing things a bit.

Sooo, since a level editor is what's planned, I'd say make a jump attack, ground attack, running attack and forget about the added abilities. I mean, how is anyone going to add the new abilities for their levels with just a level editor?"


How is anyone going to add new stuff from clothing with just a level editor? I highly doubt that a jump attack, ground attack, or running attack would be level specific and hence have to be added to every level, so why would abilities be? That's the sort of thing that gets hard-coded.

"unless you intend on building the level editor in such a way that it's almost another development tool on its own which really is overdoing things a bit."

If the level editor were built in such a way that it could be almost exclusively used as the development tool, then we would transcend having to use either TGF or MMF to make the core content of the game. Levels, characters, everything could be made as external files for use by both the level editor and the game... I'm going to give this some more thought and make a separate thread for it. It's likely improbable that getting such a feature rich editor could be made, and doing so would take quite a bit of time to produce, not to mention all of the content for it.

__________
EDIT: Such a robust editor, while it would be very cool to have, would ultimately be useless. Every object would have to be controlled using an external script file, using either LUA or .net; While this would give a great amount of flexibility to these objects, it would require object creators to understand the scripting language. Or, a separate editor would have to be written to make it easier to generate scripts to do what you want, but then there's the problem of that editor not having the feature you want to add available. Just creating these tools would probably take longer to make than the game itself.

It would be much simpler to have a simple level editor, with all of the objects predefined.

 

Matthew Wiese

The Fencer

Registered
  01/02/2009
Points
  149

VIP Member360 Owner
11th February, 2009

MBK gave me an idea. I played a game called Castle Crashers on my 360, and man I love it! Well, I'll get to the point, If you beat the game, or a certain arena, and beat a game with an unlocked character, you gain more characters. So maybe instead of gaining clothes, you can gain the enemies you fight against.

 
n/a

aphant



Registered
  18/05/2008
Points
  1242
11th February, 2009

I've also played Castle Crashers. The different characters only bring a different starting set of stats and a different special ability. Kind of the thing I had mentioned.


I think it would be easier to plan level features, and game features based around those, if we decided what the levels are, where the levels are set, and what the world is. How players get from level to level. Level themes. Example, if we plan a jungle area, then we could have swinging on vines. That same mechanic could then be applied to chains in an industrial factory. If we added the jungle area later, then we would make the vine swinging then and maybe miss out on the opportunity to use that mechanic somewhere else.

I think it would also be prudent to figure out just what "RPG elements" means. Personally, I see it as, "with RPG elements;" That 'with' tells me that this is NOT an RPG, so I shouldn't be thinking that it's going to have every bell and whistle that an RPG does. Instead of breaking off into a full-blown rant (which is what most of my wall o' text on this subject is), I'm going to define what I think these "RPG elements" should be:

Multiple—ideally three or four—characters. They would be slightly different from the other, each having a different special ability. They would all have the same running speed, jump height, and controls; the only difference between them would be how much damage their primary attack does, how much damage they take from a hit. There would be one character from each starting area, coming from their hometown (or whatever). Their appearance, attacks, and special ability would reflect their culture. As the characters progress through the game, they get one or two graphic updates. That's it, nice and simple. No character customization. No superfluous spells and items. No extraneous vanity gear. Should be easy to design and fast to code.

Now, if this idea takes off, we would have to decide how many areas there are going to be, how they're going to be themed, and what purpose the area has in the story. Then, we can determine who the characters are, and what their ability would be. The important step is figuring out the areas first. (Funny how I'm pushing that earlier in this post )


Actually, defining what the heck the RPG elements are should be first. It seems like the biggest point of contention.

 

Sketchy

Cornwall UK

Registered
  06/11/2004
Points
  1970

VIP MemberWeekly Picture Me This Round 43 Winner!Weekly Picture Me This Round 47 WinnerPicture Me This Round 49 Winner!
11th February, 2009

@MBK:
Abilities should be hard-coded, like Adam Phant says. So should player/weapon graphics in my opinion. It is less work for the programmers, and more importantly, it provides continuity between levels - bearing in mind that the rest of the visuals are going to be different between levels, you need to keep the character's appearance and abilities the same, or it's just going to feel like each level is a completely separate game.

@Adam Phant:
I agree with a lot of what you say - the rope/chain is exactly the kind of thing I was thinking of.

I'm not sure about the multiple characters though. How would that even work?

A.) You use different characters for different levels (how will they be so different as to be worth swapping? how will you get people to design levels to be easier for one character than another? how do you balance characters? etc...)
B.) You choose a character at the start of the game and are stuck with them (what are the chances of anyone replaying the game after completing it once?)
C.) You switch between characters during the level, á la "lost vikings" (that's a pretty big gameplay change).

I don't think the themes are important to worry aout yet.

I think we need to come up with the basic components people will want to use in levels - moving platforms, swinging ropes, bouncers, pushable/breakable blocks etc.
Also, the properties which you'd like to be able to set for each of them (eg. speed of moving platforms).
For enemies, we need to come up with a decent selection of movement patterns, and the ability to modify them in terms of speed, jump height etc, so that enemies can still be made to feel somewhat different.
Bosses (if present) should obviously be hardcoded, as could other levels with unique mechanics, such as an underwater level.

Then sort out the platform movement, and then worry about themes and level design.

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

I guess my idea of "RPG elements" is probably something like this...

Storyline:
It needs something a bit more imaginitive than "go rescue the kidnapped princess".


Character Development:
The player character (I had assumed there would be just one), can gain experience, which leads to some improvement of their key stats.
This could be as simple as a small increase in maximum HPs and nothing more. This rewards the player, and also fits their expectations - the level 10 boss should obviously be tougher than the level 2 boss - to make it "fair", the player also has to be stronger by the time they reach level 10. I definitely wouldn't want to add a lot of unneccessary stats.

An alternative way to make the player become stronger, is by making weapons etc available to find/buy. Instead of increasing a players "attack" statistic when they gain experience, you could enable them to buy a more powerful weapon, which would have the same effect. Again, I don't want there to be 10 different kinds of sword, or anything anywhere near that complicated.

In Zeliard, if you die, it's not game over - you simply go back to the starting town. However, it only takes a few minutes to play through the early levels and get back to where you were, for a couple of reasons - you're more powerful and better equipped, you have new abilities that allow you to take shortcuts, all doors remain unlocked, and bosses do not respawn. My point, is that it gives you a great sense of achievement when you go back to early levels and find them so much easier than they were first time around.


...Which brings me to linearity. Will the game be a sequence of levels, that must be tackled in a particular order? If everybody is making their own levels, how will we ensure that they become progressively more difficult? Will the levels be static, or will a level change depending on the point at which we reach it (eg. more enemies, or enemies have more HPs later in the game)?
I think this is important to figure out early on.

 
n/a

aphant



Registered
  18/05/2008
Points
  1242
11th February, 2009

"I'm not sure about the multiple characters though. How would that even work?
B.) You choose a character at the start of the game and are stuck with them (what are the chances of anyone replaying the game after completing it once?)"


This is where good story/storytelling comes in. If needed, multiple characters could give a glimpse into different facets of the story (if it's deep enough). They could have their own specific section of a level that only they can get to where they do something that's critical to the plot (that the other characters can't do). It's definitely something that would require a bit of planning to pull off effectively.

"...Which brings me to linearity. Will the game be a sequence of levels, that must be tackled in a particular order? If everybody is making their own levels, how will we ensure that they become progressively more difficult? Will the levels be static, or will a level change depending on the point at which we reach it (eg. more enemies, or enemies have more HPs later in the game)?"

Well, according to the devlogs: "A hub world leading to other worlds, may or may not be a map, and you can get to other worlds through the hub or by following a path from one world to the next (interconnected worlds)."

It could be fairly linear. You could start with any world from the hub and go through it, then move onto the next. Or, it could be linear at first where you're limited to where you can go, then when you finish that tour, old areas become expanded upon as you're able to get to the out-of-reach locations that you couldn't on your first time through.

 

Gamemaker2010



Registered
  22/10/2008
Points
  31
11th February, 2009

i dont know if this game is bow and arrows and swords or guns but i like the idea of unlockable characters and mutiple characters that have the same controls and different special abilities. I think you should be able to swap characters between levels. There could be a strong defense, strong offense, and a character that specializes in ranged attacks and after you beat the game you unlock a guy who is good at everything and he is just a beast in the game. It could make the player want to play the game agin to use the super character.

 
Whats a goon to a GOBLIN?
   


 



Project Forums


Advertisement

Worth A Click