Author Topic: <-- Archived --> (Battle Engine and Combat)  (Read 78033 times)

0 Members and 1 Guest are viewing this topic.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
<-- Archived --> (Battle Engine and Combat)
« on: January 24, 2014, 11:00:49 AM »
Archived, we have a new BE now.

- We're currently using Jake's BE feeding it data through a simple bridge function (this can be improved).
- We've chosen simple battle stationary battle scenario to save time.
- There is currently no code to use our items in BE but it's not difficult to add.
« Last Edit: April 24, 2016, 06:55:30 AM by Xela »
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: Battle Engine and Combat
« Reply #1 on: January 24, 2014, 11:01:12 AM »
-- Reserved --
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4736
Re: Battle Engine and Combat
« Reply #2 on: January 24, 2014, 11:17:27 AM »
I've been wondering about elements and magic for some time. Do we need magic defence stat? Or should we just use a separate resistance/absorption to each of elements?
For instance, D&D has quite complex system, it uses checks for reflex/will/fortitude as well as pure magic resistance vs difficulty class of spells, it has both absolute and relative absorptions for each element and even physical attacks, up to immunity in some cases.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: Battle Engine and Combat
« Reply #3 on: January 24, 2014, 11:49:53 AM »
I've been wondering about elements and magic for some time. Do we need magic defence stat? Or should we just use a separate resistance/absorption to each of elements?
For instance, D&D has quite complex system, it uses checks for reflex/will/fortitude as well as pure magic resistance vs difficulty class of spells, it has both absolute and relative absorptions for each element and even physical attacks, up to immunity in some cases.

To tell you the truth, I have no clue. First I would like to see community response on having a proper BE in a Sim game. I loved it in first OW release, it's kinda cool but to simple in SlaveMaker...

Second, we need to agree on a scheme (Moving on picture (grid), Moving on Tiles, Moving 3D ( with elevations), stationary with raws, stationary without raws and etc.).
===========
I love discussing possibilities as usual BUT I don't think that we can make a decision on this (and some other important concepts) until Alpha release, couple of polls, feedback and most importantly, if there'll be more people joining the dev team to develop content...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4736
Re: Battle Engine and Combat
« Reply #4 on: January 25, 2014, 07:44:04 AM »
Yeah-yeah, but I'd like to discuss BE anyway. My posts also could be used as notes in the future.

Another thing is elements. D&D has fire, ice, electricity, acid, negative and positive energy, divine, sound, pure magic and three types of physical damage.
No such classic things as earth or wind, also no opposing elements.

On the other hand, Golden Sun (another example of good combat mechanics) has fire, earth, wind (including electricity), water (including ice), light and darkness. Opposing elements are quite obvious here.

Meanwhile in Naruto, for example, wind and electricity elements are separate, with unobvious opposing elements (fire>wind>lightning>earth>water>fire).

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: Battle Engine and Combat
« Reply #5 on: January 25, 2014, 08:41:05 AM »
It'll also be a pain to balance out items/traits with multiple game systems (like combat, slave-training, brothel management). We need to find balance that would make sense and require not to much code.

In any case, I am not really familiar with any battle system. So whatever we pick would have to be layed out as a concept before I can code anything in.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4736
Re: Battle Engine and Combat
« Reply #6 on: January 25, 2014, 12:38:57 PM »
One single stat like mdef would be more convenient for checks in the code. But in that case there won't be any difference between, let's say, fireball and ice spear. Except the animation and sound, of course.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: Battle Engine and Combat
« Reply #7 on: January 25, 2014, 02:42:37 PM »
One single stat like mdef would be more convenient for checks in the code. But in that case there won't be any difference between, let's say, fireball and ice spear. Except the animation and sound, of course.

Leaving things as it is convenient, I don't expect there to be a huge difference between adding element alignment and singe magical defense stat for me as a coder (4 - 6 step if fork vs one-liner considering that we already have thousands lines of code and content). For content creators (packs/items/traits/texts) it might be a real pain (in many cases that's us as well). I've learned from PyTFall development (and especially Alkion development), that coding and making a game are two different things.

In the end, it all comes down to game design and reward vs time invested. Example with items: I now believe that it was a mistake to enable non-consumable items to add traits. It created layers of confusing code and very little game play value.

About the same thing might count for advanced BE features, unless we intend to add something like extremely expensive slaves at the market and instead allow capture (and training thereafter) deep in the woods/catacombs/dungeon, there is very little value even in adding mdef stat. As things are now, magic is slightly more powerful than normal attacks BUT it requires MP while normal (melee/range) attacks are infinite.

If we add advanced combat mechanics, I would like to see a part of a game that would greatly benefit from it. My own intuition tells me that 80% of players would prefer to see a good, modable slave training mechanics or more jobs or more interaction or more quests and events.

================
Bottomline, lets say we add fullscaled element alignments, with maps and tiles code to support that, who is going to build maps? Set up enemies/bosses/rewards? Add items, edit characters, traits and write texts/quests/encounters. I mean, you are the main advocate of strong battle mech and yet you are the one who said it would be a pain to code a 20x20 or 40x40 tiles map environments... I've seen rougelikes with 100x100 tiled maps (or even levels) easy.

We still have to:

- Add couple of new attacks in new versions and locations to learn them.
- Fix items adding/removing proper melee attacks (doesn't seem to be working right now).
- Add special field to items (like "battle-item") so they can be registered with the BE when player fights outside of arena.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4736
Re: Battle Engine and Combat
« Reply #8 on: January 25, 2014, 03:13:56 PM »
If we add advanced combat mechanics, I would like to see a part of a game that would greatly benefit from it.
We already have that part, aren't we? You can't make interesting Arena without interesting BE.

Bottomline, lets say we add fullscaled element alignments, with maps and tiles code to support that
You lost me here. How are maps and tiles connected to elements? I expect elements to be used with spells, monsters stats (like fire elemental immune to fire) and maybe items properties.

you are the one who said it would be a pain to code a 20x20 or 40x40 tiles map environments
...without the map editor. It's always a pain to create content without any tools at all.

Example with items: I now believe that it was a mistake to enable non-consumable items to add traits. It created layers of confusing code and very little game play value.
But items that can do nothing but change stats are boring. Be my guest and remove that option, but add elemental properties instead :)
« Last Edit: January 25, 2014, 03:19:52 PM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: Battle Engine and Combat
« Reply #9 on: January 25, 2014, 03:53:12 PM »
We already have that part, aren't we? You can't make interesting Arena without interesting BE.

I am not sure about that... we'll have to see how the arena turns out in gameplay. Like I've said, I love OtherWorld but there is literally no version that I've played for as long as the very first one with a much simpler BE than we have right now.

I am not sure that improving mechanics instead for example, creating new hard to acquire magic and attacks would be a way to go. I would much rather do an hour long, multi-staged difficult quest to get a new kick-ass magic spell with a 2.0 multiplier than spending two hours on this forum trying to figure inner workings of a complex battle engine mechanic.

In the end, any system will get abused and be broken in the end, magic even in great games like Skyrim come down to choosing any one single magical line and reducing spell cost to bare minimum, other mechanics like mana regeneration be damned. In the end, by level 30 - 40, you'll be sniping Frost Dragons with frost spells like they are mere flies.

You lost me here. How are maps and tiles connected to elements? I expect elements to be used with spells, monsters stats (like fire elemental immune to fire) and maybe items properties.

In decent game, you'd expect some mudcrabs and snakes with water alignment on swamp tiles, sand scorpions with fire alignment on desert tiles and so on. Not mentioning that desert time might weaken Water based mage due to a lack of liquid in the area. That's more or less what I've meant.

...without the map editor. It's always a pain to create content without any tools at all.

And yet you've created 250 items boasting almost 6k lines of xml code (40x40 map for our current setup is WAAAAY less than that)? Editor is also not easy to make, especially with incomplete or non-existent game design document. It took Rudi 2 years of talking about tags before he actually made an editor.


===============
I gave some thought to using software like "tiled" to make maps. The trouble is that writing Python code to create a proper RPG environment to utilize that code is a project of similar scale to PyTFall itself. Yet, we have other options... like Alkions BE or any of the Jake's BE schemes that would require less effort.

What do you want to see in PyTFall? I mean, what would you be willing to create content for (like maps, enemies, rewards, items etc.). Or do you simply see value in adding complex mechanics to the battle engine scheme that we have now? It wouldn't be hard, especially since the entire thing is coded pretty much in pure Python so we can add any math or forks to it...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4736
Re: Battle Engine and Combat
« Reply #10 on: January 26, 2014, 01:48:15 AM »
I would much rather do an hour long, multi-staged difficult quest to get a new kick-ass magic spell with a 2.0 multiplier than spending two hours on this forum trying to figure inner workings of a complex battle engine mechanic.
Ok, what is an interesting quest? It is a) exploring (but we don't have EE, and our city is not big enough); b) fighting (good BE required); c) dialogues, preferably nonlinear (we don't have a writer for such stuff); d) decent reward (the only thing we have covered, either slave, item or battle skill).

Skyrim come down to choosing any one single magical line and reducing spell cost to bare minimum, other mechanics like mana regeneration be damned. In the end, by level 30 - 40, you'll be sniping Frost Dragons with frost spells like they are mere flies.
Since you want to talk about Skyrim, I can tell you that magic is nothing there compared to archery, for example. Because you can improve bow damage to insane value with blacksmithing/enchantment/alchemy combo and then sniping any dragons on the max difficulty.

In decent game, you'd expect some mudcrabs and snakes with water alignment on swamp tiles, sand scorpions with fire alignment on desert tiles and so on. Not mentioning that desert time might weaken Water based mage due to a lack of liquid in the area.
Nah, Golden Sun (one of the best games about elemental magic imo) doesn't have such connection with terrain, except for a couple of scripted boss battles.

And yet you've created 250 items boasting almost 6k lines of xml code (40x40 map for our current setup is WAAAAY less than that)?
Yup, you don't have to clearly imagine all 250 items at the same time when you create 251 one. While you have to imagine the whole map.

What do you want to see in PyTFall? I mean, what would you be willing to create content for (like maps, enemies, rewards, items etc.). Or do you simply see value in adding complex mechanics to the battle engine scheme that we have now?
I wonder about maps. Maybe they should be random, with preset boss rooms, like in diablo games. This way you clearly won't know what to expect behind the corner, not matter how long you played. Btw, Alkion has a decent dungeon crawling EE, we could use it as a base.

Enemies, rewards, items I am willing to create as long as it is makes sense. For instance, currently it makes no sense to create a new weapon, since it won't be any different from those that we already have due to game limitations. But add, for example, elements to items, and you will have new fire/ice/etc weapons. Or add status effects, and you will have poisoning/dizzying/etc weapons.

Complex mechanics are needed for BE for sure. We can take a lot of interesting ideas from jrpg games. Currently we don't have any strategy during combat, you just click on enemies to attack them or use healing item when you obviously need healing. You could try Golden Sun (GBA and DS), some FF games (Playstation 1-2, not the recent ones, they are more like slashers rather than rpgs), Arc Rise Fantasia (Wii) and see for yourself. You don't even need consoles, emulators would be enough providing that you have a good pc.
« Last Edit: January 26, 2014, 01:52:22 AM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: Battle Engine and Combat
« Reply #11 on: January 26, 2014, 04:28:56 AM »
Ok, what is an interesting quest? It is a) exploring (but we don't have EE, and our city is not big enough); b) fighting (good BE required); c) dialogues, preferably nonlinear (we don't have a writer for such stuff); d) decent reward (the only thing we have covered, either slave, item or battle skill).

Combination of fighting and dialogs? Finding some NPC in the city (which we can expand), gather a bunch of specific items? Sacrifice a virgin? I can think of a lot of things... We'll have to do our best without a writer, I mean, game without texts would be absurd.

Since you want to talk about Skyrim, I can tell you that magic is nothing there compared to archery, for example. Because you can improve bow damage to insane value with blacksmithing/enchantment/alchemy combo and then sniping any dragons on the max difficulty.

I know (play it with bow), my point was that even a game made by a professional team is broken.

Nah, Golden Sun (one of the best games about elemental magic imo) doesn't have such connection with terrain, except for a couple of scripted boss battles.

You've asked, I've answered :)

Yup, you don't have to clearly imagine all 250 items at the same time when you create 251 one. While you have to imagine the whole map.
I wonder about maps. Maybe they should be random, with preset boss rooms, like in diablo games. This way you clearly won't know what to expect behind the corner, not matter how long you played. Btw, Alkion has a decent dungeon crawling EE, we could use it as a base.

I don't think you have to imagine the whole map either...

I would prefer something similar to Alkions design but with better controls and attacks being displayed ON the map, not as splash-screens. In any case, I expect that to be a pain to make as well.

Maps can be random, obviously. When we talked about it, it was just a couple of maps before code and content required to make random once is established.

Enemies, rewards, items I am willing to create as long as it is makes sense. For instance, currently it makes no sense to create a new weapon, since it won't be any different from those that we already have due to game limitations. But add, for example, elements to items, and you will have new fire/ice/etc weapons. Or add status effects, and you will have poisoning/dizzying/etc weapons.

I need to take a look at the items to see if they already carry enough data to set attacks by them...

Complex mechanics are needed for BE for sure. We can take a lot of interesting ideas from jrpg games. Currently we don't have any strategy during combat, you just click on enemies to attack them or use healing item when you obviously need healing. You could try Golden Sun (GBA and DS), some FF games (Playstation 1-2, not the recent ones, they are more like slashers rather than rpgs), Arc Rise Fantasia (Wii) and see for yourself. You don't even need consoles, emulators would be enough providing that you have a good pc.

No time to test these games out... when do you think we should add these mechanics? Post Alpha/Beta/First full release?
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4736
Re: Battle Engine and Combat
« Reply #12 on: January 26, 2014, 05:07:01 AM »
I guess you should take a look at the current BE code for a start. How much can it do compared to those games? Do we have to create a new one, or the current one will be more than enough for any idea that is possible to implement with a small team?

Obviously, we won't use those 3D BE from demo. But at least one of them does have elements of some kind already, with different spells working differently on various enemies. Also, iirc, another one has a charm spell of some kind allowing to control an enemy (=mind spell, basically).

So, what else could we need? Rows, maybe characters switch.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: Battle Engine and Combat
« Reply #13 on: January 26, 2014, 06:52:00 AM »
I guess you should take a look at the current BE code for a start. How much can it do compared to those games? Do we have to create a new one, or the current one will be more than enough for any idea that is possible to implement with a small team?

You've seen what it can do in the demos. We can also assume that it was written so new games could be created with it, not just to show off skills of the coder.

I do not suspect it will present serious limitations other than complexity of it's code (due to different battle-schemes laying out spaghetti code all over the place).

How can I make a call on creating a new BE or keep using Jake's BE if we still haven't decided on what kind of BE we want to see in the game? I mean, lets say we decide on keeping the simple exploration system with a map for a grid and background/events on every tile. Than for a battle we use Jake's BE with a simple background BUT also with a grid on it. We throw couple of rocks and a tree on couple of tiles to create impassible tiles and block line of sight. BoOOOm... we've just added new tactical concepts such as range and movement points. There is now even a difference between Bows and Swords... Raws have become bloody obsolete... We can use the same resources as we do right now.

For a case as described above we'll be prolly better off with Jake's BE. Also we could use different battle schemes at different locations. Obvious disadvantage: all stats, skills and items must be converted from PyTFall to BE formats (I expect that I will find better and better solutions on how to do that).

Obviously, we won't use those 3D BE from demo. But at least one of them does have elements of some kind already, with different spells working differently on various enemies. Also, iirc, another one has a charm spell of some kind allowing to control an enemy (=mind spell, basically).

I think it's a skill, not a spell, but we can create a lot of those to different effects I expect.

So, what else could we need? Rows, maybe characters switch.

No idea, I keep saying we need to decide what kind of battle schemes we want...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4736
Re: Battle Engine and Combat
« Reply #14 on: January 26, 2014, 11:43:33 AM »
I mean, lets say we decide on keeping the simple exploration system with a map for a grid and background/events on every tile.
I recall at least a couple of games with such BE, one of them is Agarest from which I ripped gui elements recently. I can tell you such BE gets boring fast. Every time you have to position yourself, usually in the same way, and battles that would be short in FF-type BE because of difference in levels became unreasonably long.
Also I believe it would be more difficult to code battle AI for such BE.

   
No idea, I keep saying we need to decide what kind of battle schemes we want...
What I mean is does Jake's BE able to do such things with minor improvements, or it would be easier to create a new BE.

I think you should get yourself familiar with those games I mentioned at least through wikia/youtube, to have a point of view if nothing else. So far you only mentioned that the current supersimple BE is fine for you.