The VG Resource

Full Version: Non-Named (More debugging)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
I ask myself the same question of puggsoy. Why a variable here, and why a bool especially ?
To debug things maybe ?
A variable can be used to trigger an event.

I could quickly re-organize the action list by speed using a variable to trigger it, then set the variable to a different one to start the turns up afterwards.

Though, making it a single line of code makes more sense. I was just thinking sloppily due to no sleep.

EDIT: Been thinking on the attack formula.

Would it be "Base damage X level?"

Or would that make it too broken?
Depends on how you want it to be. It wouldn't be overpowered if you scale enemies in a similar way (once the player should get to level 2, monsters around that point are twice as strong).

Another way is to simply increase the damage stat by a predetermined amount each time you level.
Well, maybe each level could some more to the multiplication.

For example, it'd be "Attack damage X (2 X level)"

Therefore, if you had attack damage of 30, and your level is 9, it'd add 18 to 30. Making 48.
That's possible. Just keep in mind that you don't need an intricate formula; if simple works, then use it.
How Fire Emblem works:

There is a base Strength stat, and a weapon Strength stat. The Attack is then calculated by adding these values up.
If your character has 5 Strength and the weapon has a 8 Strength, then your dealt attack is 13 points of damage.

Then, the enemy's Defense value is deduced from that value, so if they have 2 Defense, they'll take 11 points of damage. If the Defense stat is equal or greater than 13, then it will either inflict 1 damage, or no damage at all, depending on the game.

To mix things up, there's an extra stat called Resilience which acts as a Magic Defense (it's a separated stat from Physical Defense), but the calculation is the same. Add Base Strength of the spell + Spell's Strength - Opponent's Resilience stat.

The simplicity of this stat is to make it easier to mentalize the possible damage, which is a good skill to have in a strategy game.

Additionally, there's the Hit Percentage, Doubling and Critical Percentage to track so this is why a simpler calculation system is better - there are a lot of things to keep track of.
Does this seem like a proper way of doing it? (Special attack and defense will work the same, but with special moves)

[Image: vg44cpb.png]
That's definitely one way of doing it. Depending on how leveling works I'm not sure how well it'd scale though. The difference between levels 79 and 80 is only 1 damage point, and over 10 levels you've only gained 10 damage. Given the values you've used, this doesn't seem like a lot. That depends on how leveling works though.

Personally using level in this calculation just seems a bit dodgy, from a semantics point of view. Level is usually meant to represent a character's overall experience and strength, rather than be an actual stat. If you want to do something like this it would make more sense (in my opinion) to simply increase the attack damage stat every time they level up.
Hmm, so there should be a different stat to upgrade?

For example: If you rose a level, a different stat could raise up by 1-5, as it adds that plus the damage.

So (Attack damage + Level up damage) - defense?
There are lots of ways to do this. What best suits your gameplay?

Examples include:

Damage based on your level (i.e. attack number = level number, not usually recommended, but good for a very basic game).

Dynamic stat system increased per level (+2 attack, +1 defense, etc.).

Normal damage system that doesn't change, based on your and enemy level (your level being 15 reduces your damage against level 20s, preventing you from skipping ahead to harder content).

Upgrade system, based on items/skills you find.

And so on.
I think the dynamic stat system makes more sense, as that's what most games of this genre do.

I also thought of a gameplay idea, enemies that interact with each other.

For example: When a chicken enemy gets hurt, other chickens might notice the blood on them being drawn, and they will attack each other instead (chickens do this IRL, BTW), allowing battles to function differently when enemies are in groups with each other.
(06-20-2017, 07:43 PM)Filler Wrote: [ -> ]Hmm, so there should be a different stat to upgrade?

For example: If you rose a level, a different stat could raise up by 1-5, as it adds that plus the damage.

So (Attack damage + Level up damage) - defense?

I don't see why you feel the need to have a separate stat to add on during damage calculation. You can simply increase increase the character's base attack damage when they level up. Then all you need to do is:

Damage dealt = attack damage - defense

You can obviously add on item damage and all that during calculation but having a separate "level up damage" stat just seems redundant.

However you decide to do it, as you said using this dynamic system is probably the best way to do it as it is what players will be familiar with. The enemy interaction idea is interesting, I'd like to see what kind of interactions you'd come up with.
I was thinking of using a variable to determine the last stat up level up, so you never get the same two stat increases again.

Anyhow, been brainstorming the enemy interaction idea, as I want it to be AI based. Thought up of the following things:
  • The AI chooses it's interaction with other enemies based off after a turn or two (doing the interaction on the first turn would be unfair for new players, as they'd never know)
  • The AI then notices something (example, a powerful attack if they're weak), then "thinks" it's idea out based of the enemies around it, such as using a larger, stronger enemy as a shield to protect themselves from being hit
  • Enemies can turn on other enemies if required for them to live, such as animal-like enemies eating smaller ones like a food chain for health
  • In order to make it a tad more fair, the actions are predictable on what they do, but the aftermath is not (for example, which enemy will they hide behind)
  • Different enemy groups could be used as a way of increasing the difficulty curve without throwing too much enemies. Maybe have different enemy formations that cause different interactions with each-other that'll become harder until enemies get swapped out for newer ones. This allows players to think out strategies based off enemies they already know and learnt of.
The environment will also play a factor, too. But not as major as the enemies.

Also, stat growing:
  • Stats will be increased by 1-5 on each level up
  • To make it more predictable, they'll follow a "level up pattern" that'll raise each stat accordingly depending on each party member. Once the player realizes this pattern, they can make decisions based off what they know will increase.
  • A bonus stat increase will be included on each level, the player is able to chose what stat, but the outcome of how much is random.
Sounds good. Some of those AI ideas are a bit hard to visualize but they seem interesting.
I'll try to get the concepts working in game when I get the battle stuff ready.

Anyways, status elements:
  • Sleep - Makes you fall asleep until you wake up, or hit hard. Some enemies may have sleep immunity. Party members can also hurt each other as a way to wake them up.
  • Fear - Makes the enemy and or party member scared of attacking, can take about 1-2 turns to wear off.
  • Dizzy - increases the chance to miss by quite a bit. Is over at about 2 turns.
  • Sick - Makes you unable to use items that you can eat. Antidote can be used to undo.
  • Confused - Generic RPG confuse action, randomzies actions you do.
  • Burnt - Makes you deal a set amount of damage a turn. Environmental factors can remove this quicker.
  • Poisoned - Blah blah. Removes HP in overworld, blah. Generic.
  • Angered - Can cause enemies to act out of their patterns.
I think that's a decent amount?
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17